1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/DiagnosticoDetalhe-Dgihpmma.css"])))=>i.map(i=>d[i]); 2var xE=Object.defineProperty;var wE=(a,e,o)=>e in a?xE(a,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[e]=o;var ha=(a,e,o)=>wE(a,typeof e!="symbol"?e+"":e,o);import{g as Qd,R as j,r as h,j as l,a as Vt,b as Kg,c as Yg,u as qi,d as eo,N as te,L as po,e as IE,B as DE,f as OE,h as B,i as ME}from"./vendor-react-CO7PoREX.js";import{X as $t,U as pt,F as ss,C as Kd,B as Ht,L as qs,a as Ls,b as Ai,A as Yd,c as _u,d as Di,G as Tt,T as NE,e as Jd,f as zE,S as jE,g as Us,h as kE,i as Bs,M as Fs,j as _E,k as Jg,l as Xd,m as Qo,n as Xg,o as Zd,p as qE,q as el,r as Pt,s as Zg,t as LE,u as UE,N as eh,v as ah,w as oh,x as ih,y as BE,z as Ic,D as Wt,E as FE,H as Dc,I as GE,J as th,K as rh,O as VE,P as $E,Q as HE,R as sh,V as WE,W as QE,Y as KE}from"./vendor-icons-CbEPf7Uj.js";import{u as Li,a as Gs,b as al,Q as YE,c as JE}from"./vendor-query-BrmcFX9b.js";var XE=typeof Element<"u",ZE=typeof Map=="function",eC=typeof Set=="function",aC=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Gr(a,e){if(a===e)return!0;if(a&&e&&typeof a=="object"&&typeof e=="object"){if(a.constructor!==e.constructor)return!1;var o,i,t;if(Array.isArray(a)){if(o=a.length,o!=e.length)return!1;for(i=o;i--!==0;)if(!Gr(a[i],e[i]))return!1;return!0}var r;if(ZE&&a instanceof Map&&e instanceof Map){if(a.size!==e.size)return!1;for(r=a.entries();!(i=r.next()).done;)if(!e.has(i.value[0]))return!1;for(r=a.entries();!(i=r.next()).done;)if(!Gr(i.value[1],e.get(i.value[0])))return!1;return!0}if(eC&&a instanceof Set&&e instanceof Set){if(a.size!==e.size)return!1;for(r=a.entries();!(i=r.next()).done;)if(!e.has(i.value[0]))return!1;return!0}if(aC&&ArrayBuffer.isView(a)&&ArrayBuffer.isView(e)){if(o=a.length,o!=e.length)return!1;for(i=o;i--!==0;)if(a[i]!==e[i])return!1;return!0}if(a.constructor===RegExp)return a.source===e.source&&a.flags===e.flags;if(a.valueOf!==Object.prototype.valueOf&&typeof a.valueOf=="function"&&typeof e.valueOf=="function")return a.valueOf()===e.valueOf();if(a.toString!==Object.prototype.toString&&typeof a.toString=="function"&&typeof e.toString=="function")return a.toString()===e.toString();if(t=Object.keys(a),o=t.length,o!==Object.keys(e).length)return!1;for(i=o;i--!==0;)if(!Object.prototype.hasOwnProperty.call(e,t[i]))return!1;if(XE&&a instanceof Element)return!1;for(i=o;i--!==0;)if(!((t[i]==="_owner"||t[i]==="__v"||t[i]==="__o")&&a.$$typeof)&&!Gr(a[t[i]],e[t[i]]))return!1;return!0}return a!==a&&e!==e}var oC=function(e,o){try{return Gr(e,o)}catch(i){if((i.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw i}};const iC=Qd(oC);var tC=function(a,e,o,i,t,r,s,n){if(!a){var c;if(e===void 0)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var d=[o,i,t,r,s,n],u=0;c=new Error(e.replace(/%s/g,function(){return d[u++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}},rC=tC;const qu=Qd(rC);var sC=function(e,o,i,t){var r=i?i.call(t,e,o):void 0;if(r!==void 0)return!!r;if(e===o)return!0;if(typeof e!="object"||!e||typeof o!="object"||!o)return!1;var s=Object.keys(e),n=Object.keys(o);if(s.length!==n.length)return!1;for(var c=Object.prototype.hasOwnProperty.bind(o),d=0;d<s.length;d++){var u=s[d];if(!c(u))return!1;var m=e[u],g=o[u];if(r=i?i.call(t,m,g,u):void 0,r===!1||r===void 0&&m!==g)return!1}return!0};const nC=Qd(sC);var nh=(a=>(a.BASE="base",a.BODY="body",a.HEAD="head",a.HTML="html",a.LINK="link",a.META="meta",a.NOSCRIPT="noscript",a.SCRIPT="script",a.STYLE="style",a.TITLE="title",a.FRAGMENT="Symbol(react.fragment)",a))(nh||{}),Nn={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}}
2,Lu=Object.values(nh),Vs={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},ch=Object.entries(Vs).reduce((a,[e,o])=>(a[o]=e,a),{}),Ta="data-rh",yi={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},Si=(a,e)=>{for(let o=a.length-1;o>=0;o-=1){const i=a[o];if(Object.prototype.hasOwnProperty.call(i,e))return i[e]}return null},cC=a=>{let e=Si(a,"title");const o=Si(a,yi.TITLE_TEMPLATE);if(Array.isArray(e)&&(e=e.join("")),o&&e)return o.replace(/%s/g,()=>e);const i=Si(a,yi.DEFAULT_TITLE);return e||i||void 0},dC=a=>Si(a,yi.ON_CHANGE_CLIENT_STATE)||(()=>{}),zn=(a,e)=>e.filter(o=>typeof o[a]<"u").map(o=>o[a]).reduce((o,i)=>({...o,...i}),{}),lC=(a,e)=>e.filter(o=>typeof o.base<"u").map(o=>o.base).reverse().reduce((o,i)=>{if(!o.length){const t=Object.keys(i);for(let r=0;r<t.length;r+=1){const n=t[r].toLowerCase();if(a.indexOf(n)!==-1&&i[n])return o.concat(i)}}return o},[]),uC=a=>console&&typeof console.warn=="function"&&console.warn(a),Zi=(a,e,o)=>{const i={};return o.filter(t=>Array.isArray(t[a])?!0:(typeof t[a]<"u"&&uC(`Helmet: ${a} should be of type "Array". Instead found type "${typeof t[a]}"`),!1)).map(t=>t[a]).reverse().reduce((t,r)=>{const s={};r.filter(c=>{let d;const u=Object.keys(c);for(let g=0;g<u.length;g+=1){const p=u[g],f=p.toLowerCase();e.indexOf(f)!==-1&&!(d==="rel"&&c[d].toLowerCase()==="canonical")&&!(f==="rel"&&c[f].toLowerCase()==="stylesheet")&&(d=f),e.indexOf(p)!==-1&&(p==="innerHTML"||p==="cssText"||p==="itemprop")&&(d=p)}if(!d||!c[d])return!1;const m=c[d].toLowerCase();return i[d]||(i[d]={}),s[d]||(s[d]={}),i[d][m]?!1:(s[d][m]=!0,!0)}).reverse().forEach(c=>t.push(c));const n=Object.keys(s);for(let c=0;c<n.length;c+=1){const d=n[c],u={...i[d],...s[d]};i[d]=u}return t},[]).reverse()},mC=(a,e)=>{if(Array.isArray(a)&&a.length){for(let o=0;o<a.length;o+=1)if(a[o][e])return!0}return!1},pC=a=>({baseTag:lC(["href"],a),bodyAttributes:zn("bodyAttributes",a),defer:Si(a,yi.DEFER),encode:Si(a,yi.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:zn("htmlAttributes",a),linkTags:Zi("link",["rel","href"],a),metaTags:Zi("meta",["name","charset","http-equiv","property","itemprop"],a),noscriptTags:Zi("noscript",["innerHTML"],a),onChangeClientState:dC(a),scriptTags:Zi("script",["src","innerHTML"],a),styleTags:Zi("style",["cssText"],a),title:cC(a),titleAttributes:zn("titleAttributes",a),prioritizeSeoTags:mC(a,yi.PRIORITIZE_SEO_TAGS)}),dh=a=>Array.isArray(a)?a.join(""):a,gC=(a,e)=>{const o=Object.keys(a);for(let i=0;i<o.length;i+=1)if(e[o[i]]&&e[o[i]].includes(a[o[i]]))return!0;return!1},jn=(a,e)=>Array.isArray(a)?a.reduce((o,i)=>(gC(i,e)?o.priority.push(i):o.default.push(i),o),{priority:[],default:[]}):{default:a,priority:[]},Uu=(a,e)=>({...a,[e]:void 0}),hC=["noscript","script","style"],Oc=(a,e=!0)=>e===!1?String(a):String(a).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),lh=a=>Object.keys(a).reduce((e,o)=>{const i=typeof a[o]<"u"?`${o}="${a[o]}"`:`${o}`;return e?`${e} ${i}`:i},""),fC=(a,e,o,i)=>{const t=lh(o),r=dh(e);return t?`<${a} ${Ta}="true" ${t}>${Oc(r,i)}</${a}>`:`<${a} ${Ta}="true">${Oc(r,i)}</${a}>`},vC=(a,e,o=!0)=>e.reduce((i,t)=>{const r=t,s=Object.keys(r).filter(d=>!(d==="innerHTML"||d==="cssText")).reduce((d,u)=>{const m=typeof r[u]>"u"?u:`${u}="${Oc(r[u],o)}"`;return d?`${d} ${m}`:m},""),n=r.innerHTML||r.cssText||"",c=hC.indexOf(a)===-1;return`${i}<${a} ${Ta}="true" ${s}${c?"/>":`>${n}</${a}>`}`},""),uh=(a,e={})=>Object.keys(a).reduce((o,i)=>{const t=Vs[i];return o[t||i]=a[i],o},e),bC=(a,e,o)=>{const i={key:e,[Ta]:!0},t=uh(o,i);return[j.createElement("title",t,e)]},Vr=(a,e)=>e.map((o,i)=>{const t={key:i,[Ta]:!0};return Object.keys(o).forEach(r=>{const n=Vs[r]||r;if(n==="innerHTML"||n==="cssText"){const c=o.innerHTML||o.cssText;t.dangerouslySetInnerHTML={__html:c}}else t[n]=o[r]}),j.createElement(a,t)}
2),ta=(a,e,o=!0)=>{switch(a){case"title":return{toComponent:()=>bC(a,e.title,e.titleAttributes),toString:()=>fC(a,e.title,e.titleAttributes,o)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>uh(e),toString:()=>lh(e)};default:return{toComponent:()=>Vr(a,e),toString:()=>vC(a,e,o)}}},AC=({metaTags:a,linkTags:e,scriptTags:o,encode:i})=>{const t=jn(a,Nn.meta),r=jn(e,Nn.link),s=jn(o,Nn.script);return{priorityMethods:{toComponent:()=>[...Vr("meta",t.priority),...Vr("link",r.priority),...Vr("script",s.priority)],toString:()=>`${ta("meta",t.priority,i)} ${ta("link",r.priority,i)} ${ta("script",s.priority,i)}`},metaTags:t.default,linkTags:r.default,scriptTags:s.default}},yC=a=>{const{baseTag:e,bodyAttributes:o,encode:i=!0,htmlAttributes:t,noscriptTags:r,styleTags:s,title:n="",titleAttributes:c,prioritizeSeoTags:d}=a;let{linkTags:u,metaTags:m,scriptTags:g}=a,p={toComponent:()=>[],toString:()=>""};return d&&({priorityMethods:p,linkTags:u,metaTags:m,scriptTags:g}=AC(a)),{priority:p,base:ta("base",e,i),bodyAttributes:ta("bodyAttributes",o,i),htmlAttributes:ta("htmlAttributes",t,i),link:ta("link",u,i),meta:ta("meta",m,i),noscript:ta("noscript",r,i),script:ta("script",g,i),style:ta("style",s,i),title:ta("title",{title:n,titleAttributes:c},i)}},Mc=yC,hr=[],ol=!!(typeof window<"u"&&window.document&&window.document.createElement),Nc=class{constructor(a,e){ha(this,"instances",[]);ha(this,"canUseDOM",ol);ha(this,"context");ha(this,"value",{setHelmet:a=>{this.context.helmet=a},helmetInstances:{get:()=>this.canUseDOM?hr:this.instances,add:a=>{(this.canUseDOM?hr:this.instances).push(a)},remove:a=>{const e=(this.canUseDOM?hr:this.instances).indexOf(a);(this.canUseDOM?hr:this.instances).splice(e,1)}}});this.context=a,this.canUseDOM=e||!1,e||(a.helmet=Mc({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},SC=parseInt(j.version.split(".")[0],10),zc=SC>=19,EC={},mh=j.createContext(EC),Lo,ph=(Lo=class extends h.Component{constructor(o){super(o);ha(this,"helmetData");zc?this.helmetData=null:this.helmetData=new Nc(this.props.context||{},Lo.canUseDOM)}render(){return zc?j.createElement(j.Fragment,null,this.props.children):j.createElement(mh.Provider,{value:this.helmetData.value},this.props.children)}},ha(Lo,"canUseDOM",ol),Lo),ei=(a,e)=>{const o=document.head||document.querySelector("head"),i=o.querySelectorAll(`${a}[${Ta}]`),t=[].slice.call(i),r=[];let s;return e&&e.length&&e.forEach(n=>{const c=document.createElement(a);for(const d in n)if(Object.prototype.hasOwnProperty.call(n,d))if(d==="innerHTML")c.innerHTML=n.innerHTML;else if(d==="cssText"){const u=n.cssText;c.appendChild(document.createTextNode(u))}else{const u=d,m=typeof n[u]>"u"?"":n[u];c.setAttribute(d,m)}c.setAttribute(Ta,"true"),t.some((d,u)=>(s=u,c.isEqualNode(d)))?t.splice(s,1):r.push(c)}),t.forEach(n=>{var c;return(c=n.parentNode)==null?void 0:c.removeChild(n)}),r.forEach(n=>o.appendChild(n)),{oldTags:t,newTags:r}},jc=(a,e)=>{const o=document.getElementsByTagName(a)[0];if(!o)return;const i=o.getAttribute(Ta),t=i?i.split(","):[],r=[...t],s=Object.keys(e);for(const n of s){const c=e[n]||"";o.getAttribute(n)!==c&&o.setAttribute(n,c),t.indexOf(n)===-1&&t.push(n);const d=r.indexOf(n);d!==-1&&r.splice(d,1)}for(let n=r.length-1;n>=0;n-=1)o.removeAttribute(r[n]);t.length===r.length?o.removeAttribute(Ta):o.getAttribute(Ta)!==s.join(",")&&o.setAttribute(Ta,s.join(","))},CC=(a,e)=>{typeof a<"u"&&document.title!==a&&(document.title=dh(a)),jc("title",e)},Bu=(a,e)=>{const{baseTag:o,bodyAttributes:i,htmlAttributes:t,linkTags:r,metaTags:s,noscriptTags:n,onChangeClientState:c,scriptTags:d,styleTags:u,title:m,titleAttributes:g}=a;jc("body",i),jc("html",t),CC(m,g);const p={baseTag:ei("base",o),linkTags:ei("link",r),metaTags:ei("meta",s),noscriptTags:ei("noscript",n),scriptTags:ei("script",d),styleTags:ei("style",u)},f={},v={};Object.keys(p).forEach(b=>{const{newTags:S,oldTags:A}=p[b];S.length&&(f[b]=S),A.length&&(v[b]=p[b].oldTags)}),e&&e(),c(a,f,v)},et=null,TC=a=>{et&&cancelAnimationFrame(et),a.defer?et=requestAnimationFrame(()=>{Bu(a,()=>{et=null})}):(Bu(a),et=null)},PC=TC,Fu=class extends h.Component{constructor(){super(...arguments);ha(this,"rendered",!1)}shouldComponentUpdate(e){return!nC(e,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:e}=this.props.context;e.remove(this),this.emitChange()}emitChange(){const{helmetInstances:e,setHelmet:o}=this.props.context;let i=null;const t=pC(e.get().map(r=>{const{context:s,...n}=r.props;return n}));ph.canUseDOM?PC(t):Mc&&(i=Mc(t)),o(i)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:e}=this.props.context;e.add(this),this.emitChange()}render(){return this.init(),null}},$r=[],Gu=a=>{const e={};for(const o of Object.keys(a))e[ch[o]||o]=a[o];return e},Do=a=>{const e={};for(const o of Object.keys(a)){const i=Vs[o];e[i||o]=a[o]}return e},Vu=(a,e)=>{if(!ol)return;const o=document.getElementsByTagName(a)[0];if(!o)return;const i="data-rh-managed",t=o.getAttribute(i),r=t?t.split(","):[],s=Object.keys(e);for(const n of r)s.includes(n)||o.removeAttribute(n);for(const n of s){const c=e[n];c==null||c===!1?o.removeAttribute(n):c===!0?o.setAttribute(n,""):o.setAttribute(n,Str
2ing(c))}s.length>0?o.setAttribute(i,s.join(",")):o.removeAttribute(i)},kn=()=>{const a={},e={};for(const o of $r){const{htmlAttributes:i,bodyAttributes:t}=o.props;i&&Object.assign(a,Gu(i)),t&&Object.assign(e,Gu(t))}Vu("html",a),Vu("body",e)},RC=class extends h.Component{componentDidMount(){$r.push(this),kn()}componentDidUpdate(){kn()}componentWillUnmount(){const a=$r.indexOf(this);a!==-1&&$r.splice(a,1),kn()}resolveTitle(){const{title:a,titleTemplate:e,defaultTitle:o}=this.props;return a&&e?e.replace(/%s/g,()=>Array.isArray(a)?a.join(""):a):a||o||void 0}renderTitle(){const a=this.resolveTitle();if(a===void 0)return null;const e=this.props.titleAttributes||{};return j.createElement("title",Do(e),a)}renderBase(){const{base:a}=this.props;return a?j.createElement("base",Do(a)):null}renderMeta(){const{meta:a}=this.props;return!a||!Array.isArray(a)?null:a.map((e,o)=>j.createElement("meta",{key:o,...Do(e)}))}renderLink(){const{link:a}=this.props;return!a||!Array.isArray(a)?null:a.map((e,o)=>j.createElement("link",{key:o,...Do(e)}))}renderScript(){const{script:a}=this.props;return!a||!Array.isArray(a)?null:a.map((e,o)=>{const{innerHTML:i,...t}=e,r=Do(t);return i&&(r.dangerouslySetInnerHTML={__html:i}),j.createElement("script",{key:o,...r})})}renderStyle(){const{style:a}=this.props;return!a||!Array.isArray(a)?null:a.map((e,o)=>{const{cssText:i,...t}=e,r=Do(t);return i&&(r.dangerouslySetInnerHTML={__html:i}),j.createElement("style",{key:o,...r})})}renderNoscript(){const{noscript:a}=this.props;return!a||!Array.isArray(a)?null:a.map((e,o)=>{const{innerHTML:i,...t}=e,r=Do(t);return i&&(r.dangerouslySetInnerHTML={__html:i}),j.createElement("noscript",{key:o,...r})})}render(){return j.createElement(j.Fragment,null,this.renderTitle(),this.renderBase(),this.renderMeta(),this.renderLink(),this.renderScript(),this.renderStyle(),this.renderNoscript())}},wc,bse=(wc=class extends h.Component{shouldComponentUpdate(a){return!iC(Uu(this.props,"helmetData"),Uu(a,"helmetData"))}mapNestedChildrenToProps(a,e){if(!e)return null;switch(a.type){case"script":case"noscript":return{innerHTML:e};case"style":return{cssText:e};default:throw new Error(`<${a.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(a,e,o,i){return{...e,[a.type]:[...e[a.type]||[],{...o,...this.mapNestedChildrenToProps(a,i)}]}}mapObjectTypeChildren(a,e,o,i){switch(a.type){case"title":return{...e,[a.type]:i,titleAttributes:{...o}};case"body":return{...e,bodyAttributes:{...o}};case"html":return{...e,htmlAttributes:{...o}};default:return{...e,[a.type]:{...o}}}}mapArrayTypeChildrenToProps(a,e){let o={...e};return Object.keys(a).forEach(i=>{o={...o,[i]:a[i]}}),o}warnOnInvalidChildren(a,e){return qu(Lu.some(o=>a.type===o),typeof a.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${Lu.join(", ")} are allowed. Helmet does not support rendering <${a.type}> elements. Refer to our API for more information.`),qu(!e||typeof e=="string"||Array.isArray(e)&&!e.some(o=>typeof o!="string"),`Helmet expects a string as a child of <${a.type}>. Did you forget to wrap your children in braces? ( <${a.type}>{\`\`}</${a.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(a,e){let o={};return j.Children.forEach(a,i=>{if(!i||!i.props)return;const{children:t,...r}=i.props,s=Object.keys(r).reduce((c,d)=>(c[ch[d]||d]=r[d],c),{});let{type:n}=i;
2switch(typeof n=="symbol"?n=n.toString():this.warnOnInvalidChildren(i,t),n){case"Symbol(react.fragment)":e=this.mapChildrenToProps(t,e);break;case"link":case"meta":case"noscript":case"script":case"style":o=this.flattenArrayTypeChildren(i,o,s,t);break;default:e=this.mapObjectTypeChildren(i,e,s,t);break}}),this.mapArrayTypeChildrenToProps(o,e)}render(){const{children:a,...e}=this.props;let o={...e},{helmetData:i}=e;if(a&&(o=this.mapChildrenToProps(a,o)),i&&!(i instanceof Nc)){const t=i;i=new Nc(t.context,!0),delete o.helmetData}return zc?j.createElement(RC,{...o}):i?j.createElement(Fu,{...o,context:i.value}):j.createElement(mh.Consumer,null,t=>j.createElement(Fu,{...o,context:t}))}},ha(wc,"defaultProps",{defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1}),wc);const xC=function(){const e=typeof document<"u"&&document.createElement("link").relList;return e&&e.supports&&e.supports("modulepreload")?"modulepreload":"preload"}(),wC=function(a){return"/"+a},$u={},V=function(e,o,i){let t=Promise.resolve();if(o&&o.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),n=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));t=Promise.allSettled(o.map(c=>{if(c=wC(c),c in $u)return;$u[c]=!0;const d=c.endsWith(".css"),u=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${u}`))return;const m=document.createElement("link");if(m.rel=d?"stylesheet":xC,d||(m.as="script"),m.crossOrigin="",m.href=c,n&&m.setAttribute("nonce",n),document.head.appendChild(m),d)return new Promise((g,p)=>{m.addEventListener("load",g),m.addEventListener("error",()=>p(new Error(`Unable to preload CSS for ${c}`)))})}))}function r(s){const n=new Event("vite:preloadError",{cancelable:!0});if(n.payload=s,window.dispatchEvent(n),!n.defaultPrevented)throw s}return t.then(s=>{for(const n of s||[])n.status==="rejected"&&r(n.reason);return e().catch(r)})},IC=1,DC=1e6;let _n=0;function OC(){return _n=(_n+1)%Number.MAX_SAFE_INTEGER,_n.toString()}const qn=new Map,Hu=a=>{if(qn.has(a))return;const e=setTimeout(()=>{qn.delete(a),gt({type:"REMOVE_TOAST",toastId:a})},DC);qn.set(a,e)},MC=(a,e)=>{switch(e.type){case"ADD_TOAST":return{...a,toasts:[e.toast,...a.toasts].slice(0,IC)};case"UPDATE_TOAST":return{...a,toasts:a.toasts.map(o=>o.id===e.toast.id?{...o,...e.toast}:o)};case"DISMISS_TOAST":{const{toastId:o}=e;return o?Hu(o):a.toasts.forEach(i=>{Hu(i.id)}),{...a,toasts:a.toasts.map(i=>i.id===o||o===void 0?{...i,open:!1}:i)}}case"REMOVE_TOAST":return e.toastId===void 0?{...a,toasts:[]}:{...a,toasts:a.toasts.filter(o=>o.id!==e.toastId)}}},Hr=[];let Wr={toasts:[]};function gt(a){Wr=MC(Wr,a),Hr.forEach(e=>{e(Wr)})}function NC({...a}){const e=OC(),o=t=>gt({type:"UPDATE_TOAST",toast:{...t,id:e}}),i=()=>gt({type:"DISMISS_TOAST",toastId:e});return gt({type:"ADD_TOAST",toast:{...a,id:e,open:!0,onOpenChange:t=>{t||i()}}}),{id:e,dismiss:i,update:o}}function zC(){const[a,e]=h.useState(Wr);return h.useEffect(()=>(Hr.push(e),()=>{const o=Hr.indexOf(e);o>-1&&Hr.splice(o,1)}),[a]),{...a,toast:NC,dismiss:o=>gt({type:"DISMISS_TOAST",toastId:o})}}function U(a,e,{checkForDefaultPrevented:o=!0}={}){return function(t){if(a==null||a(t),o===!1||!t.defaultPrevented)return e==null?void 0:e(t)}}function Wu(a,e){if(typeof a=="function")return a(e);a!=null&&(a.current=e)}function $s(...a){return e=>{let o=!1;const i=a.map(t=>{const r=Wu(t,e);return!o&&typeof r=="function"&&(o=!0),r});if(o)return()=>{for(let t=0;t<i.length;t++){const r=i[t];typeof r=="function"?r():Wu(a[t],null)}}}}function ne(...a){return h.useCallback($s(...a),a)}function jC(a,e){const o=h.createContext(e),i=r=>{const{children:s,...n}=r,c=h.useMemo(()=>n,Object.values(n));return l.jsx(o.Provider,{value:c,children:s})};i.displayName=a+"Provider";function t(r){const s=h.useContext(o);if(s)return s;if(e!==void 0)return e;throw new Error(`\`${r}\` must be used within \`${a}\``)}return[i,t]}function Ze(a,e=[]){let o=[];function i(r,s){const n=h.createContext(s),c=o.length;o=[...o,s];const d=m=>{var S;const{scope:g,children:p,...f}=m,v=((S=g==null?void 0:g[a])==null?void 0:S[c])||n,b=h.useMemo(()=>f,Object.values(f));return l.jsx(v.Provider,{value:b,children:p})};d.displayName=r+"Provider";function u(m,g){var v;const p=((v=g==null?void 0:g[a])==null?void 0:v[c])||n,f=h.useContext(p);if(f)return f;if(s!==void 0)return s;throw new Error(`\`${m}\` must be used within \`${r}\``)}return[d,u]}const t=()=>{const r=o.map(s=>h.createContext(s));return function(n){const c=(n==null?void 0:n[a])||r;return h.useMemo(()=>({[`__scope${a}`]:{...n,[a]:c}}),[n,c])}};return t.scopeName=a,[i,kC(t,...e)]}function kC(...a){const e=a[0];if(a.length===1)return e;const o=()=>{const i=a.map(t=>({useScope:t(),scopeName:t.scopeName}));return function(r){const s=i.reduce((n,{useScope:c,scopeName:d})=>{const m=c(r)[`__scope${d}`];return{...n,...m}},{});return h.useMemo(()=>({[`__scope${e.scopeName}`]:s}),[s])}};return o.scopeName=e.scopeName,o}function Fo(a){const e=qC(a),o=h.forwardRef((i,t)=>{const{children:r,...s}=i,n=h.Children.toArray(r),c=n.find(UC);if(c){const d=c.props.children,u=n.map(m=>m===c?h.Children.count(d)>1?h.Children.only(null):h.isValidElement(d)?d.props.children:null:m);return l.jsx(e,{...s,ref:t,children:h.isValidElement(d)?h.cloneElement(d,void 0,u):null})}return l.jsx(e,{...s,ref:t,children:r})});return o.displayName=`${a}.Slot`,o}var _C=Fo("Slot");function qC(a){const e=h.forwardRef((o,i)=>{const{children:t,...r}=o;if(h.isValidElement(t)){const s=FC(t),n=BC(r,t.props);return t.type!==h.Fragment&&(n.ref=i?$s(i,s):s),h.cloneElement(t,n)}return h.Children.count(t)>1?h.Children.only(null):null});return e.displayName=`${a}.SlotClone`,e}var gh=Symbol("radix.slottable");function LC(a){const e=({children:o})=>l.jsx(l.Fragment,{children:o});return e.displayName=`${a}.Slottable`,e.__radixId=gh,e}function UC(a){return h.isValidElement(a)&&typeof a.type=="function"&&"__radixId"in a.type&&a.type.__radixId===gh}function BC(a,e){const o={...e};for(const i in e){const t=a[i],r=e[i];/^on[A-Z]/.test(i)?t&&r?o[i]=(...n)=>{const c=r(...n);return t(...n),c}:t&&(o[i]=t):i==="style"?o[i]={...t,...r}
vendor: 10,530 bytes, line 2
2:i==="className"&&(o[i]=[t,r].filter(Boolean).join(" "))}return{...a,...o}}function FC(a){var i,t;let e=(i=Object.getOwnPropertyDescriptor(a.props,"ref"))==null?void 0:i.get,o=e&&"isReactWarning"in e&&e.isReactWarning;return o?a.ref:(e=(t=Object.getOwnPropertyDescriptor(a,"ref"))==null?void 0:t.get,o=e&&"isReactWarning"in e&&e.isReactWarning,o?a.props.ref:a.props.ref||a.ref)}function Hs(a){const e=a+"CollectionProvider",[o,i]=Ze(e),[t,r]=o(e,{collectionRef:{current:null},itemMap:new Map}),s=v=>{const{scope:b,children:S}=v,A=j.useRef(null),y=j.useRef(new Map).current;return l.jsx(t,{scope:b,itemMap:y,collectionRef:A,children:S})};s.displayName=e;const n=a+"CollectionSlot",c=Fo(n),d=j.forwardRef((v,b)=>{const{scope:S,children:A}=v,y=r(n,S),E=ne(b,y.collectionRef);return l.jsx(c,{ref:E,children:A})});d.displayName=n;const u=a+"CollectionItemSlot",m="data-radix-collection-item",g=Fo(u),p=j.forwardRef((v,b)=>{const{scope:S,children:A,...y}=v,E=j.useRef(null),C=ne(b,E),P=r(u,S);return j.useEffect(()=>(P.itemMap.set(E,{ref:E,...y}),()=>void P.itemMap.delete(E))),l.jsx(g,{[m]:"",ref:C,children:A})});p.displayName=u;function f(v){const b=r(a+"CollectionConsumer",v);return j.useCallback(()=>{const A=b.collectionRef.current;if(!A)return[];const y=Array.from(A.querySelectorAll(`[${m}]`));return Array.from(b.itemMap.values()).sort((P,R)=>y.indexOf(P.ref.current)-y.indexOf(R.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:s,Slot:d,ItemSlot:p},f,i]}var GC=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],J=GC.reduce((a,e)=>{const o=Fo(`Primitive.${e}`),i=h.forwardRef((t,r)=>{const{asChild:s,...n}=t,c=s?o:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),l.jsx(c,{...n,ref:r})});return i.displayName=`Primitive.${e}`,{...a,[e]:i}},{});function il(a,e){a&&Vt.flushSync(()=>a.dispatchEvent(e))}function Ce(a){const e=h.useRef(a);return h.useEffect(()=>{e.current=a}),h.useMemo(()=>(...o)=>{var i;return(i=e.current)==null?void 0:i.call(e,...o)},[])}function VC(a,e=globalThis==null?void 0:globalThis.document){const o=Ce(a);h.useEffect(()=>{const i=t=>{t.key==="Escape"&&o(t)};return e.addEventListener("keydown",i,{capture:!0}),()=>e.removeEventListener("keydown",i,{capture:!0})},[o,e])}var $C="DismissableLayer",kc="dismissableLayer.update",HC="dismissableLayer.pointerDownOutside",WC="dismissableLayer.focusOutside",Qu,hh=h.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),Ui=h.forwardRef((a,e)=>{const{disableOutsidePointerEvents:o=!1,onEscapeKeyDown:i,onPointerDownOutside:t,onFocusOutside:r,onInteractOutside:s,onDismiss:n,...c}=a,d=h.useContext(hh),[u,m]=h.useState(null),g=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,p]=h.useState({}),f=ne(e,R=>m(R)),v=Array.from(d.layers),[b]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),S=v.indexOf(b),A=u?v.indexOf(u):-1,y=d.layersWithOutsidePointerEventsDisabled.size>0,E=A>=S,C=KC(R=>{const I=R.target,x=[...d.branches].some(w=>w.contains(I));!E||x||(t==null||t(R),s==null||s(R),R.defaultPrevented||n==null||n())},g),P=YC(R=>{const I=R.target;[...d.branches].some(w=>w.contains(I))||(r==null||r(R),s==null||s(R),R.defaultPrevented||n==null||n())},g);return VC(R=>{A===d.layers.size-1&&(i==null||i(R),!R.defaultPrevented&&n&&(R.preventDefault(),n()))},g),h.useEffect(()=>{if(u)return o&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(Qu=g.body.style.pointerEvents,g.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(u)),d.layers.add(u),Ku(),()=>{o&&d.layersWithOutsidePointerEventsDisabled.size===1&&(g.body.style.pointerEvents=Qu)}},[u,g,o,d]),h.useEffect(()=>()=>{u&&(d.layers.delete(u),d.layersWithOutsidePointerEventsDisabled.delete(u),Ku())},[u,d]),h.useEffect(()=>{const R=()=>p({});return document.addEventListener(kc,R),()=>document.removeEventListener(kc,R)},[]),l.jsx(J.div,{...c,ref:f,style:{pointerEvents:y?E?"auto":"none":void 0,...a.style},onFocusCapture:U(a.onFocusCapture,P.onFocusCapture),onBlurCapture:U(a.onBlurCapture,P.onBlurCapture),onPointerDownCapture:U(a.onPointerDownCapture,C.onPointerDownCapture)})});Ui.displayName=$C;var QC="DismissableLayerBranch",fh=h.forwardRef((a,e)=>{const o=h.useContext(hh),i=h.useRef(null),t=ne(e,i);return h.useEffect(()=>{const r=i.current;if(r)return o.branches.add(r),()=>{o.branches.delete(r)}},[o.branches]),l.jsx(J.div,{...a,ref:t})});fh.displayName=QC;function KC(a,e=globalThis==null?void 0:globalThis.document){const o=Ce(a),i=h.useRef(!1),t=h.useRef(()=>{});return h.useEffect(()=>{const r=n=>{if(n.target&&!i.current){let c=function(){vh(HC,o,d,{discrete:!0})};const d={originalEvent:n};n.pointerType==="touch"?(e.removeEventListener("click",t.current),t.current=c,e.addEventListener("click",t.current,{once:!0})):c()}else e.removeEventListener("click",t.current);i.current=!1},s=window.setTimeout(()=>{e.addEventListener("pointerdown",r)},0);return()=>{window.clearTimeout(s),e.removeEventListener("pointerdown",r),e.removeEventListener("click",t.current)}},[e,o]),{onPointerDownCapture:()=>i.current=!0}}function YC(a,e=globalThis==null?void 0:globalThis.document){const o=Ce(a),i=h.useRef(!1);return h.useEffect(()=>{const t=r=>{r.target&&!i.current&&vh(WC,o,{originalEvent:r},{discrete:!1})};return e.addEventListener("focusin",t),()=>e.removeEventListener("focusin",t)},[e,o]),{onFocusCapture:()=>i.current=!0,onBlurCapture:()=>i.current=!1}}function Ku(){const a=new CustomEvent(kc);document.dispatchEvent(a)}function vh(a,e,o,{discrete:i}){const t=o.originalEvent.target,r=new CustomEvent(a,{bubbles:!1,cancelable:!0,detail:o});e&&t.addEventListener(a,e,{once:!0}),i?il(t,r):t.dispatchEvent(r)}var JC=Ui,XC=fh,we=globalThis!=null&&globalThis.document?h.useLayoutEffect:()=>{},ZC="Portal",Qt=h.forwardRef((a,e)=>{var n;const{container:o,...i}=a,[t,r]=h.useState(!1);we(()=>r(!0),[]);const s=o||t&&((n=globalThis==null?void 0:globalThis.document)==null?void 0:n.body);return s?Kg.createPortal(l.jsx(J.div,{...i,ref:e}),s):null});Qt.displayName=ZC;function eT(a,e){return h.useReducer((o,i)=>e[o][i]??o,a)}var $e=a=>{const{present:e,children:o}=a,i=aT(e),t=typeof o=="function"?o({present:i.isPresent}):h.Children.only(o),r=ne(i.ref,oT(t));return typeof o=="function"||i.isPresent?h.cloneElement(t,{ref:r}):null};$e.displayName="Presence";function aT(a){const[e,o]=h.useState(),i=h.useRef(null),t=h.useRef(a),r=h.useRef("none"),s=a?"mounted":"unmounted",[n,c]=eT(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return h.useEffect(()=>{const d=fr(i.current);r.current=n==="mounted"?d:"none"},[n]),we(()=>{const d=i.current,u=t.current;if(u!==a){const g=r.current,p=fr(d);a?c("MOUNT"):p==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(u&&g!==p?"ANIMATION_OUT":"UNMOUNT"),t.current=a}},[a,c]),we(()=>{if(e){let d;const u=e.ownerDocument.defaultView??window,m=p=>{const v=fr(i.current).includes(p.animationName);if(p.target===e&&v&&(c("ANIMATION_END"),!t.current)){const b=e.style.animationFillMode;e.style.animationFillMode="forwards",d=u.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=b)})}},g=p=>{p.target===e&&(r.current=fr(i.current))};return e.addEventListener("animationstart",g),e.addEventListener("animationcancel",m),e.addEventListener("animationend",m),()=>{u.clearTimeout(d),e.removeEventListener("animationstart",g),e.removeEventListener("animationcancel",m),e.removeEventListener("animationend",m)}}else c("ANIMATION_END")},[e,c]),{isPresent:["mounted","unmountSuspended"].includes(n),ref:h.useCallback(d=>{i.current=d?getComputedStyle(d):null,o(d)},[])}}function fr(a){return(a==null?void 0:a.animationName)||"none"}function oT(a){var i,t;let e=(i=Object.getOwnPropertyDescriptor(a.props,"ref"))==null?void 0:i.get,o=e&&"isReactWarning"in e&&e.isReactWarning;return o?a.ref:(e=(t=Object.getOwnPropertyDescriptor(a,"ref"))==null?void 0:t.get,o=e&&"isReactWarning"in e&&e.isReactWarning,o?a.props.ref:a.props.ref||a.ref)}var iT=Yg[" useInsertionEffect ".trim().toString()]||we;function Ya({prop:a,defaultProp:e,onChange:o=()=>{},caller:i}){const[t,r,s]=tT({defaultProp:e,onChange:o}),n=a!==void 0,c=n?a:t;{const u=h.useRef(a!==void 0);h.useEffect(()=>{const m=u.current;m!==n&&console.warn(`${i} is changing from ${m?"controlled":"uncontrolled"} to ${n?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),u.current=n},[n,i])}const d=h.useCallback(u=>{var m;if(n){const g=rT(u)?u(a):u;g!==a&&((m=s.current)==null||m.call(s,g))}else r(u)},[n,a,r,s]);return[c,d]}function tT({defaultProp:a,onChange:e}){const[o,i]=h.useState(a),t=h.useRef(o),r=h.useRef(e);return iT(()=>{r.current=e},[e]),h.useEffect(()=>{var s;t.current!==o&&((s=r.current)==null||s.call(r,o),t.current=o)},[o,t]),[o,i,r]}function rT(a){return typeof a=="function"}var bh=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),sT="VisuallyHidden",Ws=h.forwardRef((a,e)=>l.jsx(J.span,{...a,ref:e,style:{...bh,...a.style}}));Ws.displayName=sT;var nT=Ws,tl="ToastProvider",[rl,cT,dT]=Hs("Toast"),[Ah,Ase]=Ze("Toast",[dT]),[lT,Qs]=Ah(tl),yh=a=>{const{__scopeToast:e,label:o="Notification",duration:i=5e3,swipeDirection:t="right",swipeThreshold:r=50,children:s}=a,[n,c]=h.useState(null),[d,u]=h.useState(0),m=h.useRef(!1),g=h.useRef(!1);return o.trim()||console.error(`Invalid prop \`label\` supplied to \`${tl}\`. Expected non-empty \`string\`.`),l.jsx(rl.Provider,{scope:e,children:l.jsx(lT,{scope:e,label:o,duration:i,swipeDirection:t,swipeThreshold:r,toastCount:d,viewport:n,onViewportChange:c,onToastAdd:h.useCallback(()=>u(p=>p+1),[]),onToastRemove:h.useCallback(()=>u(p=>p-1),[]),isFocusedToastEscapeKeyDownRef:m,isClosePausedRef:g,children:s})})};yh.displayName=tl;var Sh="ToastViewport",uT=["F8"],_c="toast.viewportPause",qc="toast.viewportResume",Eh=h.forwardRef((a,e)=>{const{__scopeToast:o,hotkey:i=uT,label:t="Notifications ({hotkey})",...r}=a,s=Qs(Sh,o),n=cT(o),c=h.useRef(null),d=h.useRef(null),u=h.useRef(null),m=h.useRef(null),g=ne(e,m,s.onViewportChange),p=i.join("+").replace(/Key/g,"").replace(/Digit/g,""),f=s.toastCount>0;h.useEffect(()=>{const b=S=>{var y;i.length!==0&&i.every(E=>
2S[E]||S.code===E)&&((y=m.current)==null||y.focus())};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[i]),h.useEffect(()=>{const b=c.current,S=m.current;if(f&&b&&S){const A=()=>{if(!s.isClosePausedRef.current){const P=new CustomEvent(_c);S.dispatchEvent(P),s.isClosePausedRef.current=!0}},y=()=>{if(s.isClosePausedRef.current){const P=new CustomEvent(qc);S.dispatchEvent(P),s.isClosePausedRef.current=!1}},E=P=>{!b.contains(P.relatedTarget)&&y()},C=()=>{b.contains(document.activeElement)||y()};return b.addEventListener("focusin",A),b.addEventListener("focusout",E),b.addEventListener("pointermove",A),b.addEventListener("pointerleave",C),window.addEventListener("blur",A),window.addEventListener("focus",y),()=>{b.removeEventListener("focusin",A),b.removeEventListener("focusout",E),b.removeEventListener("pointermove",A),b.removeEventListener("pointerleave",C),window.removeEventListener("blur",A),window.removeEventListener("focus",y)}}},[f,s.isClosePausedRef]);const v=h.useCallback(({tabbingDirection:b})=>{const A=n().map(y=>{const E=y.ref.current,C=[E,...TT(E)];return b==="forwards"?C:C.reverse()});return(b==="forwards"?A.reverse():A).flat()},[n]);return h.useEffect(()=>{const b=m.current;if(b){const S=A=>{var C,P,R;const y=A.altKey||A.ctrlKey||A.metaKey;if(A.key==="Tab"&&!y){const I=document.activeElement,x=A.shiftKey;if(A.target===b&&x){(C=d.current)==null||C.focus();return}const M=v({tabbingDirection:x?"backwards":"forwards"}),N=M.findIndex(T=>T===I);Ln(M.slice(N+1))?A.preventDefault():x?(P=d.current)==null||P.focus():(R=u.current)==null||R.focus()}};return b.addEventListener("keydown",S),()=>b.removeEventListener("keydown",S)}},[n,v]),l.jsxs(XC,{ref:c,role:"region","aria-label":t.replace("{hotkey}",p),tabIndex:-1,style:{pointerEvents:f?void 0:"none"},children:[f&&l.jsx(Lc,{ref:d,onFocusFromOutsideViewport:()=>{const b=v({tabbingDirection:"forwards"});Ln(b)}}),l.jsx(rl.Slot,{scope:o,children:l.jsx(J.ol,{tabIndex:-1,...r,ref:g})}),f&&l.jsx(Lc,{ref:u,onFocusFromOutsideViewport:()=>{const b=v({tabbingDirection:"backwards"});Ln(b)}})]})});Eh.displayName=Sh;var Ch="ToastFocusProxy",Lc=h.forwardRef((a,e)=>{const{__scopeToast:o,onFocusFromOutsideViewport:i,...t}=a,r=Qs(Ch,o);return l.jsx(Ws,{"aria-hidden":!0,tabIndex:0,...t,ref:e,style:{position:"fixed"},onFocus:s=>{var d;const n=s.relatedTarget;!((d=r.viewport)!=null&&d.contains(n))&&i()}})});Lc.displayName=Ch;var Kt="Toast",mT="toast.swipeStart",pT="toast.swipeMove",gT="toast.swipeCancel",hT="toast.swipeEnd",Th=h.forwardRef((a,e)=>{const{forceMount:o,open:i,defaultOpen:t,onOpenChange:r,...s}=a,[n,c]=Ya({prop:i,defaultProp:t??!0,onChange:r,caller:Kt});return l.jsx($e,{present:o||n,children:l.jsx(bT,{open:n,...s,ref:e,onClose:()=>c(!1),onPause:Ce(a.onPause),onResume:Ce(a.onResume),onSwipeStart:U(a.onSwipeStart,d=>{d.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:U(a.onSwipeMove,d=>{const{x:u,y:m}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","move"),d.currentTarget.style.setProperty("--radix-toast-swipe-move-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-move-y",`${m}px`)}),onSwipeCancel:U(a.onSwipeCancel,d=>{d.currentTarget.setAttribute("data-swipe","cancel"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-end-y")}),onSwipeEnd:U(a.onSwipeEnd,d=>{const{x:u,y:m}=d.detail.delta;d.currentTarget.setAttribute("data-swipe","end"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-x"),d.currentTarget.style.removeProperty("--radix-toast-swipe-move-y"),d.currentTarget.style.setProperty("--radix-toast-swipe-end-x",`${u}px`),d.currentTarget.style.setProperty("--radix-toast-swipe-end-y",`${m}px`),c(!1)})})})});Th.displayName=Kt;var[fT,vT]=Ah(Kt,{onClose(){}}),bT=h.forwardRef((a,e)=>{const{__scopeToast:o,type:i="foreground",duration:t,open:r,onClose:s,onEscapeKeyDown:n,onPause:c,onResume:d,onSwipeStart:u,onSwipeMove:m,onSwipeCancel:g,onSwipeEnd:p,...f}=a,v=Qs(Kt,o),[b,S]=h.useState(null),A=ne(e,T=>S(T)),y=h.useRef(null),E=h.useRef(null),C=t||v.duration,P=h.useRef(0),R=h.useRef(C),I=h.useRef(0),{onToastAdd:x,onToastRemove:w}=v,L=Ce(()=>{var q;(b==null?void 0:b.contains(document.activeElement))&&((q=v.viewport)==null||q.focus()),s()}),M=h.useCallback(T=>
2{!T||T===1/0||(window.clearTimeout(I.current),P.current=new Date().getTime(),I.current=window.setTimeout(L,T))},[L]);h.useEffect(()=>{const T=v.viewport;if(T){const q=()=>{M(R.current),d==null||d()},O=()=>{const _=new Date().getTime()-P.current;R.current=R.current-_,window.clearTimeout(I.current),c==null||c()};return T.addEventListener(_c,O),T.addEventListener(qc,q),()=>{T.removeEventListener(_c,O),T.removeEventListener(qc,q)}}},[v.viewport,C,c,d,M]),h.useEffect(()=>{r&&!v.isClosePausedRef.current&&M(C)},[r,C,v.isClosePausedRef,M]),h.useEffect(()=>(x(),()=>w()),[x,w]);const N=h.useMemo(()=>b?Oh(b):null,[b]);return v.viewport?l.jsxs(l.Fragment,{children:[N&&l.jsx(AT,{__scopeToast:o,role:"status","aria-live":i==="foreground"?"assertive":"polite","aria-atomic":!0,children:N}),l.jsx(fT,{scope:o,onClose:L,children:Vt.createPortal(l.jsx(rl.ItemSlot,{scope:o,children:l.jsx(JC,{asChild:!0,onEscapeKeyDown:U(n,()=>{v.isFocusedToastEscapeKeyDownRef.current||L(),v.isFocusedToastEscapeKeyDownRef.current=!1}),children:l.jsx(J.li,{role:"status","aria-live":"off","aria-atomic":!0,tabIndex:0,"data-state":r?"open":"closed","data-swipe-direction":v.swipeDirection,...f,ref:A,style:{userSelect:"none",touchAction:"none",...a.style},onKeyDown:U(a.onKeyDown,T=>{T.key==="Escape"&&(n==null||n(T.nativeEvent),T.nativeEvent.defaultPrevented||(v.isFocusedToastEscapeKeyDownRef.current=!0,L()))}),onPointerDown:U(a.onPointerDown,T=>{T.button===0&&(y.current={x:T.clientX,y:T.clientY})}),onPointerMove:U(a.onPointerMove,T=>{if(!y.current)return;const q=T.clientX-y.current.x,O=T.clientY-y.current.y,_=!!E.current,z=["left","right"].includes(v.swipeDirection),D=["left","up"].includes(v.swipeDirection)?Math.min:Math.max,K=z?D(0,q):0,X=z?0:D(0,O),Y=T.pointerType==="touch"?10:2,ae={x:K,y:X},re={originalEvent:T,delta:ae};_?(E.current=ae,vr(pT,m,re,{discrete:!1})):Yu(ae,v.swipeDirection,Y)?(E.current=ae,vr(mT,u,re,{discrete:!1}),T.target.setPointerCapture(T.pointerId)):(Math.abs(q)>Y||Math.abs(O)>Y)&&(y.current=null)}),onPointerUp:U(a.onPointerUp,T=>{const q=E.current,O=T.target;if(O.hasPointerCapture(T.pointerId)&&O.releasePointerCapture(T.pointerId),E.current=null,y.current=null,q){const _=T.currentTarget,z={originalEvent:T,delta:q};Yu(q,v.swipeDirection,v.swipeThreshold)?vr(hT,p,z,{discrete:!0}):vr(gT,g,z,{discrete:!0}),_.addEventListener("click",D=>D.preventDefault(),{once:!0})}})})})}),v.viewport)})]}):null}),AT=a=>{const{__scopeToast:e,children:o,...i}=a,t=Qs(Kt,e),[r,s]=h.useState(!1),[n,c]=h.useState(!1);return ET(()=>s(!0)),h.useEffect(()=>{const d=window.setTimeout(()=>c(!0),1e3);return()=>window.clearTimeout(d)},[]),n?null:l.jsx(Qt,{asChild:!0,children:l.jsx(Ws,{...i,children:r&&l.jsxs(l.Fragment,{children:[t.label," ",o]})})})},yT="ToastTitle",Ph=h.forwardRef((a,e)=>{const{__scopeToast:o,...i}=a;return l.jsx(J.div,{...i,ref:e})});Ph.displayName=yT;var ST="ToastDescription",Rh=h.forwardRef((a,e)=>{const{__scopeToast:o,...i}=a;return l.jsx(J.div,{...i,ref:e})});Rh.displayName=ST;var xh="ToastAction",wh=h.forwardRef((a,e)=>{const{altText:o,...i}=a;return o.trim()?l.jsx(Dh,{altText:o,asChild:!0,children:l.jsx(sl,{...i,ref:e})}):(console.error(`Invalid prop \`altText\` supplied to \`${xh}\`. Expected non-empty \`string\`.`),null)});wh.displayName=xh;var Ih="ToastClose",sl=h.forwardRef((a,e)=>{const{__scopeToast:o,...i}=a,t=vT(Ih,o);return l.jsx(Dh,{asChild:!0,children:l.jsx(J.button,{type:"button",...i,ref:e,onClick:U(a.onClick,t.onClose)})})});sl.displayName=Ih;var Dh=h.forwardRef((a,e)=>{const{__scopeToast:o,altText:i,...t}=a;return l.jsx(J.div,{"data-radix-toast-announce-exclude":"","data-radix-toast-announce-alt":i||void 0,...t,ref:e})});function Oh(a){const e=[];return Array.from(a.childNodes).forEach(i=>{if(i.nodeType===i.TEXT_NODE&&i.textContent&&e.push(i.textContent),CT(i)){const t=i.ariaHidden||i.hidden||i.style.display==="none",r=i.dataset.radixToastAnnounceExclude==="";if(!t)if(r){const s=i.dataset.radixToastAnnounceAlt;s&&e.push(s)}else e.push(...Oh(i))}}),e}function vr(a,e,o,{discrete:i}){const t=o.originalEvent.currentTarget,r=new CustomEvent(a,{bubbles:!0,cancelable:!0,detail:o});e&&t.addEventListener(a,e,{once:!0}),i?il(t,r):t.dispatchEvent(r)}var Yu=(a,e,o=0)=>{const i=Math.abs(a.x),t=Math.abs(a.y),r=i>t;return e==="left"||e==="right"?r&&i>o:!r&&t>o};function ET(a=()=>{}){const e=Ce(a);we(()=>{let o=0,i=0;return o=window.requestAnimationFrame(()=>i=window.requestAnimationFrame(e)),()=>{window.cancelAnimationFrame(o),window.cancelAnimationFrame(i)}},[e])}function CT(a){return a.nodeType===a.ELEMENT_NODE}function TT(a){const e=[],o=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const t=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||t?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;o.nextNode();)e.push(o.currentNode);return e}function Ln(a){const e=document.activeElement;return a.some(o=>o===e?!0:(o.focus(),document.activeElement!==e))}var PT=yh,Mh=Eh,Nh=Th,zh=Ph,jh=Rh,kh=wh,_h=sl;function qh(a){var e,o,i="";
vendor: 8,529 bytes, line 2
2if(typeof a=="string"||typeof a=="number")i+=a;else if(typeof a=="object")if(Array.isArray(a)){var t=a.length;for(e=0;e<t;e++)a[e]&&(o=qh(a[e]))&&(i&&(i+=" "),i+=o)}else for(o in a)a[o]&&(i&&(i+=" "),i+=o);return i}function Lh(){for(var a,e,o=0,i="",t=arguments.length;o<t;o++)(a=arguments[o])&&(e=qh(a))&&(i&&(i+=" "),i+=e);return i}const Ju=a=>typeof a=="boolean"?`${a}`:a===0?"0":a,Xu=Lh,Yt=(a,e)=>o=>{var i;if((e==null?void 0:e.variants)==null)return Xu(a,o==null?void 0:o.class,o==null?void 0:o.className);const{variants:t,defaultVariants:r}=e,s=Object.keys(t).map(d=>{const u=o==null?void 0:o[d],m=r==null?void 0:r[d];if(u===null)return null;const g=Ju(u)||Ju(m);return t[d][g]}),n=o&&Object.entries(o).reduce((d,u)=>{let[m,g]=u;return g===void 0||(d[m]=g),d},{}),c=e==null||(i=e.compoundVariants)===null||i===void 0?void 0:i.reduce((d,u)=>{let{class:m,className:g,...p}=u;return Object.entries(p).every(f=>{let[v,b]=f;return Array.isArray(b)?b.includes({...r,...n}[v]):{...r,...n}[v]===b})?[...d,m,g]:d},[]);return Xu(a,s,c,o==null?void 0:o.class,o==null?void 0:o.className)},nl="-",RT=a=>{const e=wT(a),{conflictingClassGroups:o,conflictingClassGroupModifiers:i}=a;return{getClassGroupId:s=>{const n=s.split(nl);return n[0]===""&&n.length!==1&&n.shift(),Uh(n,e)||xT(s)},getConflictingClassGroupIds:(s,n)=>{const c=o[s]||[];return n&&i[s]?[...c,...i[s]]:c}}},Uh=(a,e)=>{var s;if(a.length===0)return e.classGroupId;const o=a[0],i=e.nextPart.get(o),t=i?Uh(a.slice(1),i):void 0;if(t)return t;if(e.validators.length===0)return;const r=a.join(nl);return(s=e.validators.find(({validator:n})=>n(r)))==null?void 0:s.classGroupId},Zu=/^\[(.+)\]$/,xT=a=>{if(Zu.test(a)){const e=Zu.exec(a)[1],o=e==null?void 0:e.substring(0,e.indexOf(":"));if(o)return"arbitrary.."+o}},wT=a=>{const{theme:e,prefix:o}=a,i={nextPart:new Map,validators:[]};return DT(Object.entries(a.classGroups),o).forEach(([r,s])=>{Uc(s,i,r,e)}),i},Uc=(a,e,o,i)=>{a.forEach(t=>{if(typeof t=="string"){const r=t===""?e:em(e,t);r.classGroupId=o;return}if(typeof t=="function"){if(IT(t)){Uc(t(i),e,o,i);return}e.validators.push({validator:t,classGroupId:o});return}Object.entries(t).forEach(([r,s])=>{Uc(s,em(e,r),o,i)})})},em=(a,e)=>{let o=a;return e.split(nl).forEach(i=>{o.nextPart.has(i)||o.nextPart.set(i,{nextPart:new Map,validators:[]}),o=o.nextPart.get(i)}),o},IT=a=>a.isThemeGetter,DT=(a,e)=>e?a.map(([o,i])=>{const t=i.map(r=>typeof r=="string"?e+r:typeof r=="object"?Object.fromEntries(Object.entries(r).map(([s,n])=>[e+s,n])):r);return[o,t]}):a,OT=a=>{if(a<1)return{get:()=>{},set:()=>{}};let e=0,o=new Map,i=new Map;const t=(r,s)=>{o.set(r,s),e++,e>a&&(e=0,i=o,o=new Map)};return{get(r){let s=o.get(r);if(s!==void 0)return s;if((s=i.get(r))!==void 0)return t(r,s),s},set(r,s){o.has(r)?o.set(r,s):t(r,s)}}},Bh="!",MT=a=>{const{separator:e,experimentalParseClassName:o}=a,i=e.length===1,t=e[0],r=e.length,s=n=>{const c=[];let d=0,u=0,m;for(let b=0;b<n.length;b++){let S=n[b];if(d===0){if(S===t&&(i||n.slice(b,b+r)===e)){c.push(n.slice(u,b)),u=b+r;continue}if(S==="/"){m=b;continue}}S==="["?d++:S==="]"&&d--}const g=c.length===0?n:n.substring(u),p=g.startsWith(Bh),f=p?g.substring(1):g,v=m&&m>u?m-u:void 0;return{modifiers:c,hasImportantModifier:p,baseClassName:f,maybePostfixModifierPosition:v}};return o?n=>o({className:n,parseClassName:s}):s},NT=a=>{if(a.length<=1)return a;const e=[];let o=[];return a.forEach(i=>{i[0]==="["?(e.push(...o.sort(),i),o=[]):o.push(i)}),e.push(...o.sort()),e},zT=a=>({cache:OT(a.cacheSize),parseClassName:MT(a),...RT(a)}),jT=/\s+/,kT=(a,e)=>{const{parseClassName:o,getClassGroupId:i,getConflictingClassGroupIds:t}=e,r=[],s=a.trim().split(jT);let n="";for(let c=s.length-1;c>=0;c-=1){const d=s[c],{modifiers:u,hasImportantModifier:m,baseClassName:g,maybePostfixModifierPosition:p}=o(d);let f=!!p,v=i(f?g.substring(0,p):g);if(!v){if(!f){n=d+(n.length>0?" "+n:n);continue}if(v=i(g),!v){n=d+(n.length>0?" "+n:n);continue}f=!1}const b=NT(u).join(":"),S=m?b+Bh:b,A=S+v;if(r.includes(A))continue;r.push(A);const y=t(v,f);for(let E=0;E<y.length;++E){const C=y[E];r.push(S+C)}n=d+(n.length>0?" "+n:n)}return n};function _T(){let a=0,e,o,i="";for(;a<arguments.length;)(e=arguments[a++])&&(o=Fh(e))&&(i&&(i+=" "),i+=o);return i}const Fh=a=>{if(typeof a=="string")return a;let e,o="";for(let i=0;i<a.length;i++)a[i]&&(e=Fh(a[i]))&&(o&&(o+=" "),o+=e);return o};function qT(a,...e){let o,i,t,r=s;function s(c){const d=e.reduce((u,m)=>m(u),a());return o=zT(d),i=o.cache.get,t=o.cache.set,r=n,n(c)}function n(c){const d=i(c);if(d)return d;const u=kT(c,o);return t(c,u),u}return function(){return r(_T.apply(null,arguments))}}const be=a=>{const e=o=>o[a]||[];return e.isThemeGetter=!0,e},Gh=/^\[(?:([a-z-]+):)?(.+)\]$/i,LT=/^\d+\/\d+$/,UT=new Set(["px","full","screen"]),BT=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,FT=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,GT=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,VT=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,$T=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Fa=a=>Ei(a)||UT.has(a)||LT.test(a),ro=a=>Bi(a,"length",ZT),Ei=a=>!!a&&!Number.isNaN(Number(a)),Un=a=>Bi(a,"number",Ei),at=a=>!!a&&Number.isInteger(Number(a)),HT=a=>a.endsWith("%")&&Ei(a.slice(0,-1)),se=a=>Gh.test(a),so=a=>BT.test(a),WT=new Set(["length","size","percentage"]),QT=a=>Bi(a,WT,Vh),KT=a=>Bi(a,"position",Vh),YT=new Set(["image","url"]),JT=a=>Bi(a,YT,aP),XT=a=>Bi(a,"",eP),ot=()=>!0,Bi=(a,e,o)=>{const i=Gh.exec(a);return i?i[1]?typeof e=="string"?i[1]===e:e.has(i[1]):o(i[2]):!1},ZT=a=>FT.test(a)&&!GT.test(a),Vh=()=>!1,eP=a=>VT.test(a),aP=a=>$T.test(a),oP=()=>{const a=be("colors"),e=be("spacing"),o=be("blur"),i=be("brightness"),t=be("borderColor"),r=be("borderRadius"),s=be("borderSpacing"),n=be("borderWidth"),c=be("contrast"),d=be("grayscale"),u=be("hueRotate"),m=be("invert"),g=be("gap"),p=be("gradientColorStops"),f=be("gradientColorStopPositions"),v=be("inset"),b=be("margin"),S=be("opacity"),A=be("padding"),y=be("saturate"),E=be("scale"),C=be("sepia"),P=be("skew"),R=be("space"),I=be("translate"),x=()=>["auto","contain","none"],w=()=>["auto","hidden","clip","visible","scroll"],L=()=>["auto",se,e],M=()=>[se,e],N=()=>["",Fa,ro],T=()=>["auto",Ei,se],q=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],O=()=>["solid","dashed","dotted","double","none"],_=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],z=()=>["start","end","center","between","around","evenly","stretch"],D=()=>["","0",se],K=()=>["auto","avoid","all","avoid-page","page","left","right","column"],X=()=>[Ei,se];return{cacheSize:500,separator:":",theme:{colors:[ot],spacing:[Fa,ro],blur:["none","",so,se],brightness:X(),borderColor:[a],borderRadius:["none","","full",so,se],borderSpacing:M(),borderWidth:N(),contrast:X(),grayscale:D(),hueRotate:X(),invert:D(),gap:M(),gradientColorStops:[a],gradientColorStopPositions:[HT,ro],inset:L(),margin:L(),opacity:X(),padding:M(),saturate:X(),scale:X(),sepia:D(),skew:X(),space:M(),translate:M()},classGroups:{aspect:[{aspect:["auto","square","video",se]}],container:["container"],columns:[{columns:[so]}],"break-after":[{"break-after":K()}],"break-before":[{"break-before":K()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...q(),se]}],overflow:[{overflow:w()}],"overflow-x":[{"overflow-x":w()}],"overflow-y":[{"overflow-y":w()}],overscroll:[{overscroll:x()}],"overscroll-x":[{"overscroll-x":x()}],"overscroll-y":[{"overscroll-y":x()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[v]}],"inset-x":[{"inset-x":[v]}],"inset-y":[{"inset-y":[v]}],start:[{start:[v]}],end:[{end:[v]}],top:[{top:[v]}
vendor: 4,767 bytes, line 2
2],right:[{right:[v]}],bottom:[{bottom:[v]}],left:[{left:[v]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",at,se]}],basis:[{basis:L()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",se]}],grow:[{grow:D()}],shrink:[{shrink:D()}],order:[{order:["first","last","none",at,se]}],"grid-cols":[{"grid-cols":[ot]}],"col-start-end":[{col:["auto",{span:["full",at,se]},se]}],"col-start":[{"col-start":T()}],"col-end":[{"col-end":T()}],"grid-rows":[{"grid-rows":[ot]}],"row-start-end":[{row:["auto",{span:[at,se]},se]}],"row-start":[{"row-start":T()}],"row-end":[{"row-end":T()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",se]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",se]}],gap:[{gap:[g]}],"gap-x":[{"gap-x":[g]}],"gap-y":[{"gap-y":[g]}],"justify-content":[{justify:["normal",...z()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...z(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...z(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[A]}],px:[{px:[A]}],py:[{py:[A]}],ps:[{ps:[A]}],pe:[{pe:[A]}],pt:[{pt:[A]}],pr:[{pr:[A]}],pb:[{pb:[A]}],pl:[{pl:[A]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[R]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[R]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",se,e]}],"min-w":[{"min-w":[se,e,"min","max","fit"]}],"max-w":[{"max-w":[se,e,"none","full","min","max","fit","prose",{screen:[so]},so]}],h:[{h:[se,e,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[se,e,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[se,e,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[se,e,"auto","min","max","fit"]}],"font-size":[{text:["base",so,ro]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",Un]}],"font-family":[{font:[ot]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",se]}],"line-clamp":[{"line-clamp":["none",Ei,Un]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Fa,se]}],"list-image":[{"list-image":["none",se]}],"list-style-type":[{list:["none","disc","decimal",se]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[a]}],"placeholder-opacity":[{"placeholder-opacity":[S]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[a]}],"text-opacity":[{"text-opacity":[S]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...O(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Fa,ro]}],"underline-offset":[{"underline-offset":["auto",Fa,se]}],"text-decoration-color":[{decoration:[a]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:M()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",se]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",se]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[S]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...q(),KT]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",QT]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},JT]}],"bg-color":[{bg:[a]}],"gradient-from-pos":[{from:[f]}
2],"gradient-via-pos":[{via:[f]}],"gradient-to-pos":[{to:[f]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[r]}],"rounded-s":[{"rounded-s":[r]}],"rounded-e":[{"rounded-e":[r]}],"rounded-t":[{"rounded-t":[r]}],"rounded-r":[{"rounded-r":[r]}],"rounded-b":[{"rounded-b":[r]}],"rounded-l":[{"rounded-l":[r]}],"rounded-ss":[{"rounded-ss":[r]}],"rounded-se":[{"rounded-se":[r]}],"rounded-ee":[{"rounded-ee":[r]}],"rounded-es":[{"rounded-es":[r]}],"rounded-tl":[{"rounded-tl":[r]}],"rounded-tr":[{"rounded-tr":[r]}],"rounded-br":[{"rounded-br":[r]}],"rounded-bl":[{"rounded-bl":[r]}],"border-w":[{border:[n]}],"border-w-x":[{"border-x":[n]}],"border-w-y":[{"border-y":[n]}],"border-w-s":[{"border-s":[n]}],"border-w-e":[{"border-e":[n]}],"border-w-t":[{"border-t":[n]}],"border-w-r":[{"border-r":[n]}],"border-w-b":[{"border-b":[n]}],"border-w-l":[{"border-l":[n]}],"border-opacity":[{"border-opacity":[S]}],"border-style":[{border:[...O(),"hidden"]}],"divide-x":[{"divide-x":[n]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[n]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[S]}
vendor: 4,467 bytes, line 2
2],"divide-style":[{divide:O()}],"border-color":[{border:[t]}],"border-color-x":[{"border-x":[t]}],"border-color-y":[{"border-y":[t]}],"border-color-s":[{"border-s":[t]}],"border-color-e":[{"border-e":[t]}],"border-color-t":[{"border-t":[t]}],"border-color-r":[{"border-r":[t]}],"border-color-b":[{"border-b":[t]}],"border-color-l":[{"border-l":[t]}],"divide-color":[{divide:[t]}],"outline-style":[{outline:["",...O()]}],"outline-offset":[{"outline-offset":[Fa,se]}],"outline-w":[{outline:[Fa,ro]}],"outline-color":[{outline:[a]}],"ring-w":[{ring:N()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[a]}],"ring-opacity":[{"ring-opacity":[S]}],"ring-offset-w":[{"ring-offset":[Fa,ro]}],"ring-offset-color":[{"ring-offset":[a]}],shadow:[{shadow:["","inner","none",so,XT]}],"shadow-color":[{shadow:[ot]}],opacity:[{opacity:[S]}],"mix-blend":[{"mix-blend":[..._(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":_()}],filter:[{filter:["","none"]}],blur:[{blur:[o]}],brightness:[{brightness:[i]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":["","none",so,se]}],grayscale:[{grayscale:[d]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[m]}],saturate:[{saturate:[y]}],sepia:[{sepia:[C]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[o]}],"backdrop-brightness":[{"backdrop-brightness":[i]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[d]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[m]}],"backdrop-opacity":[{"backdrop-opacity":[S]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[C]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[s]}],"border-spacing-x":[{"border-spacing-x":[s]}],"border-spacing-y":[{"border-spacing-y":[s]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",se]}],duration:[{duration:X()}],ease:[{ease:["linear","in","out","in-out",se]}],delay:[{delay:X()}],animate:[{animate:["none","spin","ping","pulse","bounce",se]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[E]}],"scale-x":[{"scale-x":[E]}],"scale-y":[{"scale-y":[E]}],rotate:[{rotate:[at,se]}],"translate-x":[{"translate-x":[I]}],"translate-y":[{"translate-y":[I]}],"skew-x":[{"skew-x":[P]}],"skew-y":[{"skew-y":[P]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",se]}],accent:[{accent:["auto",a]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",se]}],"caret-color":[{caret:[a]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":M()}],"scroll-mx":[{"scroll-mx":M()}],"scroll-my":[{"scroll-my":M()}],"scroll-ms":[{"scroll-ms":M()}],"scroll-me":[{"scroll-me":M()}],"scroll-mt":[{"scroll-mt":M()}],"scroll-mr":[{"scroll-mr":M()}],"scroll-mb":[{"scroll-mb":M()}],"scroll-ml":[{"scroll-ml":M()}],"scroll-p":[{"scroll-p":M()}],"scroll-px":[{"scroll-px":M()}],"scroll-py":[{"scroll-py":M()}],"scroll-ps":[{"scroll-ps":M()}],"scroll-pe":[{"scroll-pe":M()}],"scroll-pt":[{"scroll-pt":M()}],"scroll-pr":[{"scroll-pr":M()}],"scroll-pb":[{"scroll-pb":M()}],"scroll-pl":[{"scroll-pl":M()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",se]}],fill:[{fill:[a,"none"]}],"stroke-w":[{stroke:[Fa,ro,Un]}],stroke:[{stroke:[a,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","
2none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},iP=qT(oP);function $(...a){return iP(Lh(a))}const tP=PT,$h=h.forwardRef(({className:a,...e},o)=>l.jsx(Mh,{ref:o,className:$("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",a),...e}));$h.displayName=Mh.displayName;const rP=Yt("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full",{variants:{variant:{default:"border bg-background text-foreground",destructive:"destructive group border-destructive bg-destructive text-destructive-foreground"}},defaultVariants:{variant:"default"}}),Hh=h.forwardRef(({className:a,variant:e,...o},i)=>l.jsx(Nh,{ref:i,className:$(rP({variant:e}),a),...o}));Hh.displayName=Nh.displayName;const sP=h.forwardRef(({className:a,...e},o)=>l.jsx(kh,{ref:o,className:$("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors group-[.destructive]:border-muted/40 hover:bg-secondary group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 group-[.destructive]:focus:ring-destructive disabled:pointer-events-none disabled:opacity-50",a),...e}));sP.displayName=kh.displayName;const Wh=h.forwardRef(({className:a,...e},o)=>l.jsx(_h,{ref:o,className:$("absolute right-2 top-2 rounded-md p-1 text-foreground
2/50 opacity-0 transition-opacity group-hover:opacity-100 group-[.destructive]:text-red-300 hover:text-foreground group-[.destructive]:hover:text-red-50 focus:opacity-100 focus:outline-none focus:ring-2 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",a),"toast-close":"",...e,children:l.jsx($t,{className:"h-4 w-4"})}));Wh.displayName=_h.displayName;const Qh=h.forwardRef(({className:a,...e},o)=>l.jsx(zh,{ref:o,className:$("text-sm font-semibold",a),...e}));Qh.displayName=zh.displayName;const Kh=h.forwardRef(({className:a,...e},o)=>l.jsx(jh,{ref:o,className:$("text-sm opacity-90",a),...e}));Kh.displayName=jh.displayName;function nP(){const{toasts:a}=zC();return l.jsxs(tP,{children:[a.map(function({id:e,title:o,description:i,action:t,...r}){return l.jsxs(Hh,{...r,children:[l.jsxs("div",{className:"grid gap-1",children:[o&&l.jsx(Qh,{children:o}),i&&l.jsx(Kh,{children:i})]}),t,l.jsx(Wh,{})]},e)}),l.jsx($h,{})]})}var am=["light","dark"],cP="(prefers-color-scheme: dark)",dP=h.createContext(void 0),lP={setTheme:a=>{},themes:[]},uP=()=>{var a;return(a=h.useContext(dP))!=null?a:lP};h.memo(({forcedTheme:a,storageKey:e,attribute:o,enableSystem:i,enableColorScheme:t,defaultTheme:r,value:s,attrs:n,nonce:c})=>{let d=r==="system",u=o==="class"?`var d=document.documentElement,c=d.classList;${`c.remove(${n.map(f=>`'${f}'`).join(",")})`};`:`var d=document.documentElement,n='${o}',s='setAttribute';`,m=t?am.includes(r)&&r?`if(e==='light'||e==='dark'||!e)d.style.colorScheme=e||'${r}'`:"if(e==='light'||e==='dark')d.style.colorScheme=e":"",g=(f,v=!1,b=!0)=>{let S=s?s[f]:f,A=v?f+"|| ''":`'${S}'`,y="";return t&&b&&!v&&am.includes(f)&&(y+=`d.style.colorScheme = '${f}';`),o==="class"?v||S?y+=`c.add(${A})`:y+="null":S&&(y+=`d[s](n,${A})`),y},p=a?`!function(){${u}${g(a)}}()`:i?`!function(){try{${u}var e=localStorage.getItem('${e}');if('system'===e||(!e&&${d})){var t='${cP}',m=window.matchMedia(t);if(m.media!==t||m.matches){${g("dark")}}else{${g("light")}}}else if(e){${s?`var x=${JSON.stringify(s)};`:""}${g(s?"x[e]":"e",!0)}}${d?"":"else{"+g(r,!1,!1)+"}"}${m}}catch(e){}}()`:`!function(){try{${u}var e=localStorage.getItem('${e}');if(e){${s?`var x=${JSON.stringify(s)};`:""}${g(s?"x[e]":"e",!0)}}else{${g(r,!1,!1)};}${m}}catch(t){}}();`;return h.createElement("script",{nonce:c,dangerouslySetInnerHTML:{__html:p}})});var mP=a=>{switch(a){case"success":return hP;case"info":return vP;case"warning":return fP;case"error":return bP;default:return null}},pP=Array(12).fill(0),gP=({visible:a,className:e})=>j.createElement("div",{className:["sonner-loading-wrapper",e].filter(Boolean).join(" "),"data-visible":a},j.createElement("div",{className:"sonner-spinner"},pP.map((o,i)=>j.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${i}`})))),hP=j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},j.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),fP=j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},j.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),vP=j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},j.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),bP=j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},j.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),AP=j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},j.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),j.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),yP=()=>{let[a,e]=j.useState(document.hidden);return j.useEffect(()=>{let o=()=>{e(document.hidden)};return document.addEventListener("visibilitychange",o),()=>window.removeEventListener("visibilitychange",o)},[]),a},Bc=1,SP=class{constructor(){this.subscribe=a=>(this.subscribers.push(a),()=>{let e=this.subscribers.indexOf(a);this.subscribers.splice(e,1)}),this.publish=a=>
2{this.subscribers.forEach(e=>e(a))},this.addToast=a=>{this.publish(a),this.toasts=[...this.toasts,a]},this.create=a=>{var e;let{message:o,...i}=a,t=typeof(a==null?void 0:a.id)=="number"||((e=a.id)==null?void 0:e.length)>0?a.id:Bc++,r=this.toasts.find(n=>n.id===t),s=a.dismissible===void 0?!0:a.dismissible;return this.dismissedToasts.has(t)&&this.dismissedToasts.delete(t),r?this.toasts=this.toasts.map(n=>n.id===t?(this.publish({...n,...a,id:t,title:o}),{...n,...a,id:t,dismissible:s,title:o}):n):this.addToast({title:o,...i,dismissible:s,id:t}),t},this.dismiss=a=>(this.dismissedToasts.add(a),a||this.toasts.forEach(e=>{this.subscribers.forEach(o=>o({id:e.id,dismiss:!0}))}),this.subscribers.forEach(e=>e({id:a,dismiss:!0})),a),this.message=(a,e)=>this.create({...e,message:a}),this.error=(a,e)=>this.create({...e,message:a,type:"error"}),this.success=(a,e)=>this.create({...e,type:"success",message:a}),this.info=(a,e)=>this.create({...e,type:"info",message:a}),this.warning=(a,e)=>this.create({...e,type:"warning",message:a}),this.loading=(a,e)=>this.create({...e,type:"loading",message:a}),this.promise=(a,e)=>{if(!e)return;let o;e.loading!==void 0&&(o=this.create({...e,promise:a,type:"loading",message:e.loading,description:typeof e.description!="function"?e.description:void 0}));let i=a instanceof Promise?a:a(),t=o!==void 0,r,s=i.then(async c=>{if(r=["resolve",c],j.isValidElement(c))t=!1,this.create({id:o,type:"default",message:c});else if(CP(c)&&!c.ok){t=!1;let d=typeof e.error=="function"?await e.error(`HTTP error! status: ${c.status}`):e.error,u=typeof e.description=="function"?await e.description(`HTTP error! status: ${c.status}`):e.description;this.create({id:o,type:"error",message:d,description:u})}else if(e.success!==void 0){t=!1;let d=typeof e.success=="function"?await e.success(c):e.success,u=typeof e.description=="function"?await e.description(c):e.description;this.create({id:o,type:"success",message:d,description:u})}}).catch(async c=>{if(r=["reject",c],e.error!==void 0){t=!1;let d=typeof e.error=="function"?await e.error(c):e.error,u=typeof e.description=="function"?await e.description(c):e.description;this.create({id:o,type:"error",message:d,description:u})}}).finally(()=>{var c;t&&(this.dismiss(o),o=void 0),(c=e.finally)==null||c.call(e)}),n=()=>new Promise((c,d)=>s.then(()=>r[0]==="reject"?d(r[1]):c(r[1])).catch(d));return typeof o!="string"&&typeof o!="number"?{unwrap:n}:Object.assign(o,{unwrap:n})},this.custom=(a,e)=>{let o=(e==null?void 0:e.id)||Bc++;return this.create({jsx:a(o),id:o,...e}),o},this.getActiveToasts=()=>this.toasts.filter(a=>!this.dismissedToasts.has(a.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}},Qe=new SP,EP=(a,e)=>{let o=(e==null?void 0:e.id)||Bc++;return Qe.addToast({title:a,...e,id:o}),o},CP=a=>a&&typeof a=="object"&&"ok"in a&&typeof a.ok=="boolean"&&"status"in a&&typeof a.status=="number",TP=EP,PP=()=>Qe.toasts,RP=()=>Qe.getActiveToasts(),Ee=Object.assign(TP,{success:Qe.success,info:Qe.info,warning:Qe.warning,error:Qe.error,custom:Qe.custom,message:Qe.message,promise:Qe.promise,dismiss:Qe.dismiss,loading:Qe.loading},{getHistory:PP,getToasts:RP});function xP(a,{insertAt:e}={}){if(typeof document>"u")return;let o=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",e==="top"&&o.firstChild?o.insertBefore(i,o.firstChild):o.appendChild(i),i.styleSheet?i.styleSheet.cssText=a:i.appendChild(document.createTextNode(a))}xP(`:where(html[dir="ltr"]),:where([data-sonner-toaster][dir="ltr"]){--toast-icon-margin-start: -3px;--toast-icon-margin-end: 4px;--toast-svg-margin-start: -1px;--toast-svg-margin-end: 0px;--toast-button-margin-start: auto;--toast-button-margin-end: 0;--toast-close-button-start: 0;--toast-close-button-end: unset;--toast-close-button-transform: translate(-35%, -35%)}:where(html[dir="rtl"]),:where([data-sonner-toaster][dir="rtl"]){--toast-icon-margin-start: 4px;--toast-icon-margin-end: -3px;--toast-svg-margin-start: 0px;--toast-svg-margin-end: -1px;--toast-button-margin-start: 0;--toast-button-margin-end: auto;--toast-close-button-start: unset;--toast-close-button-end: 0;--toast-close-button-transform: translate(35%, -35%)}:where([data-sonner-toaster]){position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1: hsl(0, 0%, 99%);--gray2: hsl(0, 0%, 97.3%);--gray3: hsl(0, 0%, 95.1%);--gray4: hsl(0, 0%, 93%);--gray5: hsl(0, 0%, 90.9%);--gray6: hsl(0, 0%, 88.7%);--gray7: hsl(0, 0%, 85.8%);--gray8: hsl(0, 0%, 78%);--gray9: hsl(0, 0%, 56.1%);--gray10: hsl(0, 0%, 52.3%);--gray11: hsl(0, 0%, 43.5%);--gray12: hsl(0, 0%, 9%);--border-radius: 8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:none;z-index:999999999;transition:transform .4s ease}:where([data-sonner-toaster][data-lifted="true"]){transform:translateY(-10px)}@media (hover: none) and (pointer: coarse){:where([data-sonner-toaster][data-lifted="true"]){transform:none}}:where([data-sonner-toaster][data-x-position="right"]){right:var(--offset-right)}:where([data-sonner-toaster][data-x-position="left"]){left:var(--offset-left)}:where([data-sonner-toaster][data-x-position="center"]){left:50%;transform:translate(-50%)}:where([data-sonner-toaster][data-y-position="top"]){top:var(--offset-top)}:where([data-sonner-toaster][data-y-position="bottom"]){bottom:var(--offset-bottom)}:where([data-sonner-toast]){--y: translateY(100%);--lift-amount: calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);filter:blur(0);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:none;overflow-wrap:anywhere}:where([data-sonner-toast][data-styled="true"]){padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px #0000001a;width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}:where([data-sonner-toast]:focus-visible){box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast][data-y-position="top"]){top:0;--y: translateY(-100%);--lift: 1;--lift-amount: calc(1 * var(--gap))}:where([data-sonner-toast][data-y-position="bottom"]){bottom:0;--y: translateY(100%);--lift: -1;--lift-amount: calc(var(--lift) * var(--gap))}:where([data-sonner-toast]) :where([data-description]){font-weight:400;line-height:1.4;color:inherit}:where([data-sonner-toast]) :where([data-title]){font-weight:500;line-height:1.5;color:inherit}:where([data-sonner-toast]) :where([data-icon]){display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}:where([data-sonner-toast][data-promise="true"]) :where([data-icon])>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}:where([data-sonner-toast]) :where([data-icon])>*{flex-shrink:0}:where([data-sonner-toast]) :where([data-icon]) svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}:where([data-sonner-toast]) :where([data-content]){display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;cursor:pointer;outline:none;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}:where([data-sonner-toast]) :where([data-button]):focus-visible{box-shadow:0 0 0 2px #0006}:where([data-sonner-toast]) :where([data-button]):first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}:where([data-sonner-toast]) :where([data-cancel]){color:var(--normal-text);background:rgba(0,0,0,.08)}:where([data-sonner-toast][data-theme="dark"]) :where([data-cancel]){background:rgba(255,255,255,.3)}:where([data-sonner-toast]) :where([data-close-button]){position:absolute;
2left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast] [data-close-button]{background:var(--gray1)}:where([data-sonner-toast]) :where([data-close-button]):focus-visible{box-shadow:0 4px 12px #0000001a,0 0 0 2px #0003}:where([data-sonner-toast]) :where([data-disabled="true"]){cursor:not-allowed}:where([data-sonner-toast]):hover :where([data-close-button]):hover{background:var(--gray2);border-color:var(--gray5)}:where([data-sonner-toast][data-swiping="true"]):before{content:"";position:absolute;left:-50%;right:-50%;height:100%;z-index:-1}:where([data-sonner-toast][data-y-position="top"][data-swiping="true"]):before{bottom:50%;transform:scaleY(3) translateY(50%)}:where([data-sonner-toast][data-y-position="bottom"][data-swiping="true"]):before{top:50%;transform:scaleY(3) translateY(-50%)}:where([data-sonner-toast][data-swiping="false"][data-removed="true"]):before{content:"";position:absolute;inset:0;transform:scaleY(2)}:where([data-sonner-toast]):after{content:"";position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}:where([data-sonner-toast][data-mounted="true"]){--y: translateY(0);opacity:1}:where([data-sonner-toast][data-expanded="false"][data-front="false"]){--scale: var(--toasts-before) * .05 + 1;--y: translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}:where([data-sonner-toast])>*{transition:opacity .4s}:where([data-sonner-toast][data-expanded="false"][data-front="false"][data-styled="true"])>*{opacity:0}
2:where([data-sonner-toast][data-visible="false"]){opacity:0;pointer-events:none}:where([data-sonner-toast][data-mounted="true"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}:where([data-sonner-toast][data-removed="true"][data-front="true"][data-swipe-out="false"]){--y: translateY(calc(var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="true"]){--y: translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}:where([data-sonner-toast][data-removed="true"][data-front="false"][data-swipe-out="false"][data-expanded="false"]){--y: translateY(40%);opacity:0;transition:transform .5s,opacity .2s}:where([data-sonner-toast][data-removed="true"][data-front="false"]):before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y, 0px)) translate(var(--swipe-amount-x, 0px));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{0%{transform:var(--y) translate(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translate(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{0%{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width: 600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-theme=light]{--normal-bg: #fff;--normal-border: var(--gray4);--normal-text: var(--gray12);--success-bg: hsl(143, 85%, 96%);--success-border: hsl(145, 92%, 91%);--success-text: hsl(140, 100%, 27%);--info-bg: hsl(208, 100%, 97%);--info-border: hsl(221, 91%, 91%);--info-text: hsl(210, 92%, 45%);--warning-bg: hsl(49, 100%, 97%);--warning-border: hsl(49, 91%, 91%);--warning-text: hsl(31, 92%, 45%);--error-bg: hsl(359, 100%, 97%);--error-border: hsl(359, 100%, 94%);--error-text: hsl(360, 100%, 45%)}[data-sonner-toaster][data-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg: #000;--normal-border: hsl(0, 0%, 20%);--normal-text: var(--gray1)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg: #fff;--normal-border: var(--gray3);--normal-text: var(--gray12)}[data-sonner-toaster][data-theme=dark]{--normal-bg: #000;--normal-bg-hover: hsl(0, 0%, 12%);--normal-border: hsl(0, 0%, 20%);--normal-border-hover: hsl(0, 0%, 25%);--normal-text: var(--gray1);--success-bg: hsl(150, 100%, 6%);--success-border: hsl(147, 100%, 12%);--success-text: hsl(150, 86%, 65%);--info-bg: hsl(215, 100%, 6%);--info-border: hsl(223, 100%, 12%);--info-text: hsl(216, 87%, 65%);--warning-bg: hsl(64, 100%, 6%);--warning-border: hsl(60, 100%, 12%);--warning-text: hsl(46, 87%, 65%);--error-bg: hsl(358, 76%, 10%);--error-border: hsl(357, 89%, 16%);
2--error-text: hsl(358, 100%, 81%)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success],[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info],[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning],[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error],[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size: 16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:nth-child(1){animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}to{opacity:.15}}@media (prefers-reduced-motion){[data-sonner-toast],[data-sonner-toast]>*,.sonner-loading-bar{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)} 3`);function br(a){return a.label!==void 0}var wP=3,IP="32px",DP="16px",om=4e3,OP=356,MP=14,NP=20,zP=200;
3function fa(...a){return a.filter(Boolean).join(" ")}function jP(a){let[e,o]=a.split("-"),i=[];return e&&i.push(e),o&&i.push(o),i}var kP=a=>{var e,o,i,t,r,s,n,c,d,u,m;let{invert:g,toast:p,unstyled:f,interacting:v,setHeights:b,visibleToasts:S,heights:A,index:y,toasts:E,expanded:C,removeToast:P,defaultRichColors:R,closeButton:I,style:x,cancelButtonStyle:w,actionButtonStyle:L,className:M="",descriptionClassName:N="",duration:T,position:q,gap:O,loadingIcon:_,expandByDefault:z,classNames:D,icons:K,closeButtonAriaLabel:X="Close toast",pauseWhenPageIsHidden:Y}=a,[ae,re]=j.useState(null),[he,Ie]=j.useState(null),[G,ue]=j.useState(!1),[me,de]=j.useState(!1),[le,pe]=j.useState(!1),[_e,ea]=j.useState(!1),[Ro,ao]=j.useState(!1),[xo,Ji]=j.useState(0),[Yo,Ou]=j.useState(0),Xi=j.useRef(p.duration||T||om),Mu=j.useRef(null),wo=j.useRef(null),bE=y===0,AE=y+1<=S,aa=p.type,Jo=p.dismissible!==!1,yE=p.className||"",SE=p.descriptionClassName||"",gr=j.useMemo(()=>A.findIndex(oe=>oe.toastId===p.id)||0,[A,p.id]),EE=j.useMemo(()=>{var oe;return(oe=p.closeButton)!=null?oe:I},[p.closeButton,I]),Nu=j.useMemo(()=>p.duration||T||om,[p.duration,T]),On=j.useRef(0),Xo=j.useRef(0),zu=j.useRef(0),Zo=j.useRef(null),[CE,TE]=q.split("-"),ju=j.useMemo(()=>A.reduce((oe,ge,ye)=>ye>=gr?oe:oe+ge.height,0),[A,gr]),ku=yP(),PE=p.invert||g,Mn=aa==="loading";Xo.current=j.useMemo(()=>gr*O+ju,[gr,ju]),j.useEffect(()=>{Xi.current=Nu},[Nu]),j.useEffect(()=>{ue(!0)},[]),j.useEffect(()=>{let oe=wo.current;if(oe){let ge=oe.getBoundingClientRect().height;return Ou(ge),b(ye=>[{toastId:p.id,height:ge,position:p.position},...ye]),()=>b(ye=>ye.filter(ma=>ma.toastId!==p.id))}},[b,p.id]),j.useLayoutEffect(()=>{if(!G)return;let oe=wo.current,ge=oe.style.height;oe.style.height="auto";let ye=oe.getBoundingClientRect().height;oe.style.height=ge,Ou(ye),b(ma=>ma.find(pa=>pa.toastId===p.id)?ma.map(pa=>pa.toastId===p.id?{...pa,height:ye}:pa):[{toastId:p.id,height:ye,position:p.position},...ma])},[G,p.title,p.description,b,p.id]);let oo=j.useCallback(()=>{de(!0),Ji(Xo.current),b(oe=>oe.filter(ge=>ge.toastId!==p.id)),setTimeout(()=>{P(p)},zP)},[p,P,b,Xo]);j.useEffect(()=>{if(p.promise&&aa==="loading"||p.duration===1/0||p.type==="loading")return;let oe;return C||v||Y&&ku?(()=>{if(zu.current<On.current){let ge=new Date().getTime()-On.current;Xi.current=Xi.current-ge}zu.current=new Date().getTime()})():Xi.current!==1/0&&(On.current=new Date().getTime(),oe=setTimeout(()=>{var ge;(ge=p.onAutoClose)==null||ge.call(p,p),oo()},Xi.current)),()=>clearTimeout(oe)},[C,v,p,aa,Y,ku,oo]),j.useEffect(()=>{p.delete&&oo()},[oo,p.delete]);function RE(){var oe,ge,ye;return K!=null&&K.loading?j.createElement("div",{className:fa(D==null?void 0:D.loader,(oe=p==null?void 0:p.classNames)==null?void 0:oe.loader,"sonner-loader"),"data-visible":aa==="loading"},K.loading):_?j.createElement("div",{className:fa(D==null?void 0:D.loader,(ge=p==null?void 0:p.classNames)==null?void 0:ge.loader,"sonner-loader"),"data-visible":aa==="loading"},_):j.createElement(gP,{className:fa(D==null?void 0:D.loader,(ye=p==null?void 0:p.classNames)==null?void 0:ye.loader),visible:aa==="loading"})}return j.createElement("li",{tabIndex:0,ref:wo,className:fa(M,yE,D==null?void 0:D.toast,(e=p==null?void 0:p.classNames)==null?void 0:e.toast,D==null?void 0:D.default,D==null?void 0:D[aa],(o=p==null?void 0:p.classNames)==null?void 0:o[aa]),"data-sonner-toast":"","data-rich-colors":(i=p.richColors)!=null?i:R,"data-styled":!(p.jsx||p.unstyled||f),"data-mounted":G,"data-promise":!!p.promise,"data-swiped":Ro,"data-removed":me,"data-visible":AE,"data-y-position":CE,"data-x-position":TE,"data-index":y,"data-front":bE,"data-swiping":le,"data-dismissible":Jo,"data-type":aa,"data-invert":PE,"data-swipe-out":_e,"data-swipe-direction":he,"data-expanded":!!(C||z&&G),style:{"--index":y,"--toasts-before":y,"--z-index":E.length-y,"--offset":`${me?xo:Xo.current}px`,"--initial-height":z?"auto":`${Yo}px`,...x,...p.style},onDragEnd:()=>{pe(!1),re(null),Zo.current=null},onPointerDown:oe=>{Mn||!Jo||(Mu.current=new Date,Ji(Xo.current),oe.target.setPointerCapture(oe.pointerId),oe.target.tagName!=="BUTTON"&&(pe(!0),Zo.current={x:oe.clientX,y:oe.clientY}))},onPointerUp:()=>{var oe,ge,ye,ma;if(_e||!Jo)return;Zo.current=null;let pa=Number(((oe=wo.current)==null?void 0:oe.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),io=Number(((ge=wo.current)==null?void 0:ge.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Io=new Date().getTime()-((ye=Mu.current)==null?void 0:ye.getTime()),ga=ae==="x"?pa:io,to=Math.abs(ga)/Io;if(Math.abs(ga)>=NP||to>.11){Ji(Xo.current),(ma=p.onDismiss)==null||ma.call(p,p),Ie(ae==="x"?pa>0?"right":"left":io>0?"down":"up"),oo(),ea(!0),ao(!1);return}pe(!1),re(null)},onPointerMove:oe=>{var ge,ye,ma,pa;if(!Zo.current||!Jo||((ge=window.getSelection())==null?void 0:ge.toString().length)>0)return;let io=oe.clientY-Zo.current.y,Io=oe.clientX-Zo.current.x,ga=(ye=a.swipeDirections)!=null?ye:jP(q);!ae&&(Math.abs(Io)>1||Math.abs(io)>1)&&re(Math.abs(Io)>Math.abs(io)?"x":"y");let to={x:0,y:0};ae==="y"?(ga.includes("top")||ga.includes("bottom"))&&(ga.includes("top")&&io<0||ga.includes("bottom")&&io>0)&&(to.y=io):ae==="x"&&(ga.includes("left")||ga.includes("right"))&&(ga.includes("left")&&Io<0||ga.includes("right")&&Io>0)&&(to.x=Io),(Math.abs(to.x)>0||Math.abs(to.y)>0)&&ao(!0),(ma=wo.current)==null||ma.style.setProperty("--swipe-amount-x",`${to.x}px`),(pa=wo.current)==null||pa.style.setProperty("--swipe-amount-y",`${to.y}px`)}},EE&&!p.jsx?j.createElement("button",{"aria-label":X,"data-disabled":Mn,"data-close-button":!0,onClick:Mn||!Jo?()=>{}:()=>{var oe;oo(),(oe=p.onDismiss)==null||oe.call(p,p)},className:fa(D==null?void 0:D.closeButton,(t=p==null?void 0:p.classNames)==null?void 0:t.closeButton)},(r=K==null?void 0:K.close)!=null?r:AP):null,p.jsx||h.isValidElement(p.title)?p.jsx?p.jsx:typeof p.title=="function"?p.title():p.title:j.createElement(j.Fragment,null,aa||p.icon||p.promise?j.createElement("div",{"data-icon":"",className:fa(D==null?void 0:D.icon,(s=p==null?void 0:p.classNames)==null?void 0:s.icon)}
3,p.promise||p.type==="loading"&&!p.icon?p.icon||RE():null,p.type!=="loading"?p.icon||(K==null?void 0:K[aa])||mP(aa):null):null,j.createElement("div",{"data-content":"",className:fa(D==null?void 0:D.content,(n=p==null?void 0:p.classNames)==null?void 0:n.content)},j.createElement("div",{"data-title":"",className:fa(D==null?void 0:D.title,(c=p==null?void 0:p.classNames)==null?void 0:c.title)},typeof p.title=="function"?p.title():p.title),p.description?j.createElement("div",{"data-description":"",className:fa(N,SE,D==null?void 0:D.description,(d=p==null?void 0:p.classNames)==null?void 0:d.description)},typeof p.description=="function"?p.description():p.description):null),h.isValidElement(p.cancel)?p.cancel:p.cancel&&br(p.cancel)?j.createElement("button",{"data-button":!0,"data-cancel":!0,style:p.cancelButtonStyle||w,onClick:oe=>{var ge,ye;br(p.cancel)&&Jo&&((ye=(ge=p.cancel).onClick)==null||ye.call(ge,oe),oo())},className:fa(D==null?void 0:D.cancelButton,(u=p==null?void 0:p.classNames)==null?void 0:u.cancelButton)},p.cancel.label):null,h.isValidElement(p.action)?p.action:p.action&&br(p.action)?j.createElement("button",{"data-button":!0,"data-action":!0,style:p.actionButtonStyle||L,onClick:oe=>{var ge,ye;br(p.action)&&((ye=(ge=p.action).onClick)==null||ye.call(ge,oe),!oe.defaultPrevented&&oo())},className:fa(D==null?void 0:D.actionButton,(m=p==null?void 0:p.classNames)==null?void 0:m.actionButton)},p.action.label):null))};function im(){if(typeof window>"u"||typeof document>"u")return"ltr";let a=document.documentElement.getAttribute("dir");return a==="auto"||!a?window.getComputedStyle(document.documentElement).direction:a}function _P(a,e){let o={};return[a,e].forEach((i,t)=>{let r=t===1,s=r?"--mobile-offset":"--offset",n=r?DP:IP;function c(d){["top","right","bottom","left"].forEach(u=>{o[`${s}-${u}`]=typeof d=="number"?`${d}px`:d})}typeof i=="number"||typeof i=="string"?c(i):typeof i=="object"?["top","right","bottom","left"].forEach(d=>{i[d]===void 0?o[`${s}-${d}`]=n:o[`${s}-${d}`]=typeof i[d]=="number"?`${i[d]}px`:i[d]}):c(n)}),o}var qP=h.forwardRef(function(a,e){let{invert:o,position:i="bottom-right",hotkey:t=["altKey","KeyT"],expand:r,closeButton:s,className:n,offset:c,mobileOffset:d,theme:u="light",richColors:m,duration:g,style:p,visibleToasts:f=wP,toastOptions:v,dir:b=im(),gap:S=MP,loadingIcon:A,icons:y,containerAriaLabel:E="Notifications",pauseWhenPageIsHidden:C}=a,[P,R]=j.useState([]),I=j.useMemo(()=>Array.from(new Set([i].concat(P.filter(Y=>Y.position).map(Y=>Y.position)))),[P,i]),[x,w]=j.useState([]),[L,M]=j.useState(!1),[N,T]=j.useState(!1),[q,O]=j.useState(u!=="system"?u:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),_=j.useRef(null),z=t.join("+").replace(/Key/g,"").replace(/Digit/g,""),D=j.useRef(null),K=j.useRef(!1),X=j.useCallback(Y=>{R(ae=>{var re;return(re=ae.find(he=>he.id===Y.id))!=null&&re.delete||Qe.dismiss(Y.id),ae.filter(({id:he})=>he!==Y.id)})},[]);return j.useEffect(()=>Qe.subscribe(Y=>{if(Y.dismiss){R(ae=>ae.map(re=>re.id===Y.id?{...re,delete:!0}:re));return}setTimeout(()=>{Kg.flushSync(()=>{R(ae=>{let re=ae.findIndex(he=>he.id===Y.id);return re!==-1?[...ae.slice(0,re),{...ae[re],...Y},...ae.slice(re+1)]:[Y,...ae]})})})}),[]),j.useEffect(()=>{if(u!=="system"){O(u);return}if(u==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?O("dark"):O("light")),typeof window>"u")return;let Y=window.matchMedia("(prefers-color-scheme: dark)");try{Y.addEventListener("change",({matches:ae})=>{O(ae?"dark":"light")})}catch{Y.addListener(({matches:re})=>{try{O(re?"dark":"light")}catch(he){console.error(he)}})}},[u]),j.useEffect(()=>{P.length<=1&&M(!1)},[P]),j.useEffect(()=>{let Y=ae=>{var re,he;t.every(Ie=>ae[Ie]||ae.code===Ie)&&(M(!0),(re=_.current)==null||re.focus()),ae.code==="Escape"&&(document.activeElement===_.current||(he=_.current)!=null&&he.contains(document.activeElement))&&M(!1)};return document.addEventListener("keydown",Y),()=>document.removeEventListener("keydown",Y)},[t]),j.useEffect(()=>{if(_.current)return()=>{D.current&&(D.current.focus({preventScroll:!0}),D.current=null,K.current=!1)}},[_.current]),j.createElement("section",{ref:e,"aria-label":`${E} ${z}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},I.map((Y,ae)=>{var re;let[he,Ie]=Y.split("-");return P.length?j.createElement("ol",{key:Y,dir:b==="auto"?im():b,tabIndex:-1,ref:_,className:n,"data-sonner-toaster":!0,"data-theme":q,"data-y-position":he,"data-lifted":L&&P.length>1&&!r,"data-x-position":Ie,style:{"--front-toast-height":`${((re=x[0])==null?void 0:re.height)||0}px`,"--width":`${OP}px`,"--gap":`${S}px`,...p,..._P(c,d)},onBlur:G=>{K.current&&!G.currentTarget.contains(G.relatedTarget)&&(K.current=!1,D.current&&(D.current.focus({preventScroll:!0}),D.current=null))},onFocus:G=>{G.target instanceof HTMLElement&&G.target.dataset.dismissible==="false"||K.current||(K.current=!0,D.current=G.relatedTarget)},onMouseEnter:()=>M(!0),onMouseMove:()=>M(!0),onMouseLeave:()=>{N||M(!1)},onDragEnd:()=>M(!1),onPointerDown:G=>{G.target instanceof HTMLElement&&G.target.dataset.dismissible==="false"||T(!0)},onPointerUp:()=>T(!1)},P.filter(G=>!G.position&&ae===0||G.position===Y).map((G,ue)=>{var me,de;return j.createElement(kP,{key:G.id,icons:y,index:ue,toast:G,defaultRichColors:m,duration:(me=v==null?void 0:v.duration)!=null?me:g,className:v==null?void 0:v.className,descriptionClassName:v==null?void 0:v.descriptionClassName,invert:o,visibleToasts:f,closeButton:(de=v==null?void 0:v.closeButton)!=null?de:s,interacting:N,position:Y,style:v==null?void 0:v.style,unstyled:v==null?void 0:v.unstyled,classNames:v==null?void 0:v.classNames,cancelButtonStyle:v==null?void 0:v.cancelButtonStyle,actionButtonStyle:v==null?void 0:v.actionButtonStyle,removeToast:X,toasts:P.filter(le=>le.position==G.position),heights:x.filter(le=>le.position==G.position),setHeights:w,expandByDefault:r,gap:S,loadingIcon:A,expanded:L,pauseWhenPageIsHidden:C,swipeDirections:a.swipeDirections})})):null}))});const LP=({...a})=>{const{theme:e="system"}=uP();return l.jsx(qP,{theme:e,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...a}
vendor: 12,923 bytes, line 3
3)};var UP=Yg[" useId ".trim().toString()]||(()=>{}),BP=0;function sa(a){const[e,o]=h.useState(UP());return we(()=>{o(i=>i??String(BP++))},[a]),e?`radix-${e}`:""}const FP=["top","right","bottom","left"],fo=Math.min,Ke=Math.max,ns=Math.round,Ar=Math.floor,ja=a=>({x:a,y:a}),GP={left:"right",right:"left",bottom:"top",top:"bottom"},VP={start:"end",end:"start"};function Fc(a,e,o){return Ke(a,fo(e,o))}function Ja(a,e){return typeof a=="function"?a(e):a}function Xa(a){return a.split("-")[0]}function Fi(a){return a.split("-")[1]}function cl(a){return a==="x"?"y":"x"}function dl(a){return a==="y"?"height":"width"}const $P=new Set(["top","bottom"]);function Na(a){return $P.has(Xa(a))?"y":"x"}function ll(a){return cl(Na(a))}function HP(a,e,o){o===void 0&&(o=!1);const i=Fi(a),t=ll(a),r=dl(t);let s=t==="x"?i===(o?"end":"start")?"right":"left":i==="start"?"bottom":"top";return e.reference[r]>e.floating[r]&&(s=cs(s)),[s,cs(s)]}function WP(a){const e=cs(a);return[Gc(a),e,Gc(e)]}function Gc(a){return a.replace(/start|end/g,e=>VP[e])}const tm=["left","right"],rm=["right","left"],QP=["top","bottom"],KP=["bottom","top"];function YP(a,e,o){switch(a){case"top":case"bottom":return o?e?rm:tm:e?tm:rm;case"left":case"right":return e?QP:KP;default:return[]}}function JP(a,e,o,i){const t=Fi(a);let r=YP(Xa(a),o==="start",i);return t&&(r=r.map(s=>s+"-"+t),e&&(r=r.concat(r.map(Gc)))),r}function cs(a){return a.replace(/left|right|bottom|top/g,e=>GP[e])}function XP(a){return{top:0,right:0,bottom:0,left:0,...a}}function Yh(a){return typeof a!="number"?XP(a):{top:a,right:a,bottom:a,left:a}}function ds(a){const{x:e,y:o,width:i,height:t}=a;return{width:i,height:t,top:o,left:e,right:e+i,bottom:o+t,x:e,y:o}}function sm(a,e,o){let{reference:i,floating:t}=a;const r=Na(e),s=ll(e),n=dl(s),c=Xa(e),d=r==="y",u=i.x+i.width/2-t.width/2,m=i.y+i.height/2-t.height/2,g=i[n]/2-t[n]/2;let p;switch(c){case"top":p={x:u,y:i.y-t.height};break;case"bottom":p={x:u,y:i.y+i.height};break;case"right":p={x:i.x+i.width,y:m};break;case"left":p={x:i.x-t.width,y:m};break;default:p={x:i.x,y:i.y}}switch(Fi(e)){case"start":p[s]-=g*(o&&d?-1:1);break;case"end":p[s]+=g*(o&&d?-1:1);break}return p}const ZP=async(a,e,o)=>{const{placement:i="bottom",strategy:t="absolute",middleware:r=[],platform:s}=o,n=r.filter(Boolean),c=await(s.isRTL==null?void 0:s.isRTL(e));let d=await s.getElementRects({reference:a,floating:e,strategy:t}),{x:u,y:m}=sm(d,i,c),g=i,p={},f=0;for(let v=0;v<n.length;v++){const{name:b,fn:S}=n[v],{x:A,y,data:E,reset:C}=await S({x:u,y:m,initialPlacement:i,placement:g,strategy:t,middlewareData:p,rects:d,platform:s,elements:{reference:a,floating:e}});u=A??u,m=y??m,p={...p,[b]:{...p[b],...E}},C&&f<=50&&(f++,typeof C=="object"&&(C.placement&&(g=C.placement),C.rects&&(d=C.rects===!0?await s.getElementRects({reference:a,floating:e,strategy:t}):C.rects),{x:u,y:m}=sm(d,g,c)),v=-1)}return{x:u,y:m,placement:g,strategy:t,middlewareData:p}};async function Rt(a,e){var o;e===void 0&&(e={});const{x:i,y:t,platform:r,rects:s,elements:n,strategy:c}=a,{boundary:d="clippingAncestors",rootBoundary:u="viewport",elementContext:m="floating",altBoundary:g=!1,padding:p=0}=Ja(e,a),f=Yh(p),b=n[g?m==="floating"?"reference":"floating":m],S=ds(await r.getClippingRect({element:(o=await(r.isElement==null?void 0:r.isElement(b)))==null||o?b:b.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(n.floating)),boundary:d,rootBoundary:u,strategy:c})),A=m==="floating"?{x:i,y:t,width:s.floating.width,height:s.floating.height}:s.reference,y=await(r.getOffsetParent==null?void 0:r.getOffsetParent(n.floating)),E=await(r.isElement==null?void 0:r.isElement(y))?await(r.getScale==null?void 0:r.getScale(y))||{x:1,y:1}:{x:1,y:1},C=ds(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:n,rect:A,offsetParent:y,strategy:c}):A);return{top:(S.top-C.top+f.top)/E.y,bottom:(C.bottom-S.bottom+f.bottom)/E.y,left:(S.left-C.left+f.left)/E.x,right:(C.right-S.right+f.right)/E.x}}const eR=a=>({name:"arrow",options:a,async fn(e){const{x:o,y:i,placement:t,rects:r,platform:s,elements:n,middlewareData:c}=e,{element:d,padding:u=0}=Ja(a,e)||{};if(d==null)return{};const m=Yh(u),g={x:o,y:i},p=ll(t),f=dl(p),v=await s.getDimensions(d),b=p==="y",S=b?"top":"left",A=b?"bottom":"right",y=b?"clientHeight":"clientWidth",E=r.reference[f]+r.reference[p]-g[p]-r.floating[f],C=g[p]-r.reference[p],P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(d));let R=P?P[y]:0;(!R||!await(s.isElement==null?void 0:s.isElement(P)))&&(R=n.floating[y]||r.floating[f]);const I=E/2-C/2,x=R/2-v[f]/2-1,w=fo(m[S],x),L=fo(m[A],x),M=w,N=R-v[f]-L,T=R/2-v[f]/2+I,q=Fc(M,T,N),O=!c.arrow&&Fi(t)!=null&&T!==q&&r.reference[f]/2-(T<M?w:L)-v[f]/2<0,_=O?T<M?T-M:T-N:0;return{[p]:g[p]+_,data:{[p]:q,centerOffset:T-q-_,...O&&{alignmentOffset:_}},reset:O}}}),aR=function(a){return a===void 0&&(a={}),{name:"flip",options:a,async fn(e){var o,i;const{placement:t,middlewareData:r,rects:s,initialPlacement:n,platform:c,elements:d}=e,{mainAxis:u=!0,crossAxis:m=!0,fallbackPlacements:g,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:v=!0,...b}=Ja(a,e);if((o=r.arrow)!=null&&o.alignmentOffset)return{};const S=Xa(t),A=Na(n),y=Xa(n)===n,E=await(c.isRTL==null?void 0:c.isRTL(d.floating)),C=g||(y||!v?[cs(n)]:WP(n)),P=f!=="none";!g&&P&&C.push(...JP(n,v,f,E));const R=[n,...C],I=await Rt(e,b),x=[];let w=((i=r.flip)==null?void 0:i.overflows)||[];if(u&&x.push(I[S]),m){const T=HP(t,s,E);x.push(I[T[0]],I[T[1]])}if(w=[...w,{placement:t,overflows:x}],!x.every(T=>T<=0)){var L,M;const T=(((L=r.flip)==null?void 0:L.index)||0)+1,q=R[T];if(q&&(!(m==="alignment"?A!==Na(q):!1)||w.every(z=>z.overflows[0]>0&&Na(z.placement)===A)))return{data:{index:T,overflows:w},reset:{placement:q}};let O=(M=w.filter(_=>_.overflows[0]<=0).sort((_,z)=>_.overflows[1]-z.overflows[1])[0])==null?void 0:M.placement;if(!O)switch(p){case"bestFit":{var N;const _=(N=w.filter(z=>{if(P){const D=Na(z.placement);return D===A||D==="y"}return!0}).map(z=>[z.placement,z.overflows.filter(D=>D>0).reduce((D,K)=>D+K,0)]).sort((z,D)=>z[1]-D[1])[0])==null?void 0:N[0];_&&(O=_);break}case"initialPlacement":O=n;break}if(t!==O)return{reset:{placement:O}}}return{}}}};function nm(a,e){return{top:a.top-e.height,right:a.right-e.width,bottom:a.bottom-e.height,left:a.left-e.width}}function cm(a){return FP.some(e=>a[e]>=0)}const oR=function(a){return a===void 0&&(a={}),{name:"hide",options:a,async fn(e){const{rects:o}=e,{strategy:i="referenceHidden",...t}=Ja(a,e);switch(i){case"referenceHidden":{const r=await Rt(e,{...t,elementContext:"reference"}),s=nm(r,o.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:cm(s)}}}case"escaped":{const r=await Rt(e,{...t,altBoundary:!0}),s=nm(r,o.floating);return{data:{escapedOffsets:s,escaped:cm(s)}}}default:return{}}}}},Jh=new Set(["left","top"]);async function iR(a,e){const{placement:o,platform:i,elements:t}=a,r=await(i.isRTL==null?void 0:i.isRTL(t.floating)),s=Xa(o),n=Fi(o),c=Na(o)==="y",d=Jh.has(s)?-1:1,u=r&&c?-1:1,m=Ja(e,a);let{mainAxis:g,crossAxis:p,alignmentAxis:f}=typeof m=="number"?{mainAxis:m,crossAxis:0,alignmentAxis:null}:{mainAxis:m.mainAxis||0,crossAxis:m.crossAxis||0,alignmentAxis:m.alignmentAxis};return n&&typeof f=="number"&&(p=n==="end"?f*-1:f),c?{x:p*u,y:g*d}:{x:g*d,y:p*u}}const tR=function(a){return a===void 0&&(a=0),{name:"offset",options:a,async fn(e){var o,i;const{x:t,y:r,placement:s,middlewareData:n}=e,c=await iR(e,a);return s===((o=n.offset)==null?void 0:o.placement)&&(i=n.arrow)!=null&&i.alignmentOffset?{}:{x:t+c.x,y:r+c.y,data:{...c,placement:s}}}}},rR=function(a){return a===void 0&&(a={}),{name:"shift",options:a,async fn(e){const{x:o,y:i,placement:t}=e,{mainAxis:r=!0,crossAxis:s=!1,limiter:n={fn:b=>{let{x:S,y:A}=b;return{x:S,y:A}}},...c}=Ja(a,e),d={x:o,y:i},u=await Rt(e,c),m=Na(Xa(t)),g=cl(m);let p=d[g],f=d[m];if(r){const b=g==="y"?"top":"left",S=g==="y"?"bottom":"right",A=p+u[b],y=p-u[S];p=Fc(A,p,y)}if(s){const b=m==="y"?"top":"left",S=m==="y"?"bottom":"right",A=f+u[b],y=f-u[S];f=Fc(A,f,y)}const v=n.fn({...e,[g]:p,[m]:f});return{...v,data:{x:v.x-o,y:v.y-i,enabled:{[g]:r,[m]:s}}}}}},sR=function(a){return a===void 0&&(a={}),{options:a,fn(e){const{x:o,y:i,placement:t,rects:r,middlewareData:s}=e,{offset:n=0,mainAxis:c=!0,crossAxis:d=!0}=Ja(a,e),u={x:o,y:i},m=Na(t),g=cl(m);let p=u[g],f=u[m];const v=Ja(n,e),b=typeof v=="number"?{mainAxis:v,crossAxis:0}:{mainAxis:0,crossAxis:0,...v};if(c){const y=g==="y"?"height":"width",E=r.reference[g]-r.floating[y]+b.mainAxis,C=r.reference[g]+r.reference[y]-b.mainAxis;p<E?p=E:p>C&&(p=C)}if(d){var S,A;const y=g==="y"?"width":"height",E=Jh.has(Xa(t)),C=r.reference[m]-r.floating[y]+(E&&((S=s.offset)==null?void 0:S[m])||0)+(E?0:b.crossAxis),P=r.reference[m]+r.reference[y]+(E?0:((A=s.offset)==null?void 0:A[m])||0)-(E?b.crossAxis:0);f<C?f=C:f>P&&(f=P)}return{[g]:p,[m]:f}}}},nR=function(a){return a===void 0&&(a={}),{name:"size",options:a,async fn(e){var o,i;const{placement:t,rects:r,platform:s,elements:n}=e,{apply:c=()=>{},...d}=Ja(a,e),u=await Rt(e,d),m=Xa(t),g=Fi(t),p=Na(t)==="y",{width:f,height:v}=r.floating;let b,S;m==="top"||m==="bottom"?(b=m,S=g===(await(s.isRTL==null?void 0:s.isRTL(n.floating))?"start":"end")?"left":"right"):(S=m,b=g==="end"?"top":"bottom");const A=v-u.top-u.bottom,y=f-u.left-u.right,E=fo(v-u[b],A),C=fo(f-u[S],y),P=!e.middlewareData.shift;let R=E,I=C;if((o=e.middlewareData.shift)!=null&&o.enabled.x&&(I=y),(i=e.middlewareData.shift)!=null&&i.enabled.y&&(R=A),P&&!g){const w=Ke(u.left,0),L=Ke(u.right,0),M=Ke(u.top,0),N=Ke(u.bottom,0);p?I=f-2*(w!==0||L!==0?w+L:Ke(u.left,u.right)):R=v-2*(M!==0||N!==0?M+N:Ke(u.top,u.bottom))}await c({...e,availableWidth:I,availableHeight:R});const x=await s.getDimensions(n.floating);return f!==x.width||v!==x.height?{reset:{rects:!0}}:{}}}};function Ks(){return typeof window<"u"}function Gi(a){return Xh(a)?(a.nodeName||"").toLowerCase():"#document"}function Xe(a){var e;return(a==null||(e=a.ownerDocument)==null?void 0:e.defaultView)||window}function La(a){var e;return(e=(Xh(a)?a.ownerDocument:a.document)||window.document)==null?void 0:e.documentElement}function Xh(a){return Ks()?a instanceof Node||a instanceof Xe(a).Node:!1}function Pa(a){return Ks()?a instanceof Element||a instanceof Xe(a).Element:!1}function _a(a){return Ks()?a instanceof HTMLElement||a instanceof Xe(a).HTMLElement:!1}function dm(a){return!Ks()||typeof ShadowRoot>"u"?!1:a instanceof ShadowRoot||a instanceof Xe(a).ShadowRoot}const cR=new Set(["inline","contents"]);function Jt(a){const{overflow:e,overflowX:o,overflowY:i,display:t}=Ra(a);return/auto|scroll|overlay|hidden|clip/.test(e+i+o)&&!cR.has(t)}const dR=new Set(["table","td","th"]);function lR(a){return dR.has(Gi(a))}const uR=[":popover-open",":modal"];function Ys(a){return uR.some(e=>{try{return a.matches(e)}catch{return!1}})}const mR=["transform","translate","scale","rotate","perspective"],pR=["transform","translate","scale","rotate","perspective","filter"],gR=["paint","layout","strict","content"];function ul(a){const e=ml(),o=Pa(a)?Ra(a):a;return mR.some(i=>o[i]?o[i]!=="none":!1)||(o.containerType?o.containerType!=="normal":!1)||!e&&(o.backdropFilter?o.backdropFilter!=="none":!1)||!e&&(o.filter?o.filter!=="none":!1)||pR.some(i=>(o.willChange||"").includes(i))||gR.some(i=>(o.contain||"").includes(i))}function hR(a){let e=vo(a);for(;_a(e)&&!Oi(e);){if(ul(e))return e;if(Ys(e))return null;e=vo(e)}return null}function ml(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}const fR=new Set(["html","body","#document"]);function Oi(a){return fR.has(Gi(a))}function Ra(a){return Xe(a).getComputedStyle(a)}function Js(a){return Pa(a)?{scrollLeft:a.scrollLeft,scrollTop:a.scrollTop}:{scrollLeft:a.scrollX,scrollTop:a.scrollY}}function vo(a){if(Gi(a)==="html")return a;const e=a.assignedSlot||a.parentNode||dm(a)&&a.host||La(a);return dm(e)?e.host:e}function Zh(a){const e=vo(a);return Oi(e)?a.ownerDocument?a.ownerDocument.body:a.body:_a(e)&&Jt(e)?e:Zh(e)}function xt(a,e,o){var i;e===void 0&&(e=[]),o===void 0&&(o=!0);const t=Zh(a),r=t===((i=a.ownerDocument)==null?void 0:i.body),s=Xe(t);if(r){const n=Vc(s);return e.concat(s,s.visualViewport||[],Jt(t)?t:[],n&&o?xt(n):[])}return e.concat(t,xt(t,[],o))}function Vc(a){return a.parent&&Object.getPrototypeOf(a.parent)?a.frameElement:null}function ef(a){const e=Ra(a);let o=parseFloat(e.width)||0,i=parseFloat(e.height)||0;const t=_a(a),r=t?a.offsetWidth:o,s=t?a.offsetHeight:i,n=ns(o)!==r||ns(i)!==s;return n&&(o=r,i=s),{width:o,height:i,$:n}}function pl(a){return Pa(a)?a:a.contextElement}function Ci(a){const e=pl(a);if(!_a(e))return ja(1);const o=e.getBoundingClientRect(),{width:i,height:t,$:r}=ef(e);let s=(r?ns(o.width):o.width)/i,n=(r?ns(o.height):o.height)/t;return(!s||!Number.isFinite(s))&&(s=1),(!n||!Number.isFinite(n))&&(n=1),{x:s,y:n}}const vR=ja(0);function af(a){const e=Xe(a);
vendor: 6,166 bytes, line 3
3return!ml()||!e.visualViewport?vR:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function bR(a,e,o){return e===void 0&&(e=!1),!o||e&&o!==Xe(a)?!1:e}function Go(a,e,o,i){e===void 0&&(e=!1),o===void 0&&(o=!1);const t=a.getBoundingClientRect(),r=pl(a);let s=ja(1);e&&(i?Pa(i)&&(s=Ci(i)):s=Ci(a));const n=bR(r,o,i)?af(r):ja(0);let c=(t.left+n.x)/s.x,d=(t.top+n.y)/s.y,u=t.width/s.x,m=t.height/s.y;if(r){const g=Xe(r),p=i&&Pa(i)?Xe(i):i;let f=g,v=Vc(f);for(;v&&i&&p!==f;){const b=Ci(v),S=v.getBoundingClientRect(),A=Ra(v),y=S.left+(v.clientLeft+parseFloat(A.paddingLeft))*b.x,E=S.top+(v.clientTop+parseFloat(A.paddingTop))*b.y;c*=b.x,d*=b.y,u*=b.x,m*=b.y,c+=y,d+=E,f=Xe(v),v=Vc(f)}}return ds({width:u,height:m,x:c,y:d})}function gl(a,e){const o=Js(a).scrollLeft;return e?e.left+o:Go(La(a)).left+o}function of(a,e,o){o===void 0&&(o=!1);const i=a.getBoundingClientRect(),t=i.left+e.scrollLeft-(o?0:gl(a,i)),r=i.top+e.scrollTop;return{x:t,y:r}}function AR(a){let{elements:e,rect:o,offsetParent:i,strategy:t}=a;const r=t==="fixed",s=La(i),n=e?Ys(e.floating):!1;if(i===s||n&&r)return o;let c={scrollLeft:0,scrollTop:0},d=ja(1);const u=ja(0),m=_a(i);if((m||!m&&!r)&&((Gi(i)!=="body"||Jt(s))&&(c=Js(i)),_a(i))){const p=Go(i);d=Ci(i),u.x=p.x+i.clientLeft,u.y=p.y+i.clientTop}const g=s&&!m&&!r?of(s,c,!0):ja(0);return{width:o.width*d.x,height:o.height*d.y,x:o.x*d.x-c.scrollLeft*d.x+u.x+g.x,y:o.y*d.y-c.scrollTop*d.y+u.y+g.y}}function yR(a){return Array.from(a.getClientRects())}function SR(a){const e=La(a),o=Js(a),i=a.ownerDocument.body,t=Ke(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),r=Ke(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let s=-o.scrollLeft+gl(a);const n=-o.scrollTop;return Ra(i).direction==="rtl"&&(s+=Ke(e.clientWidth,i.clientWidth)-t),{width:t,height:r,x:s,y:n}}function ER(a,e){const o=Xe(a),i=La(a),t=o.visualViewport;let r=i.clientWidth,s=i.clientHeight,n=0,c=0;if(t){r=t.width,s=t.height;const d=ml();(!d||d&&e==="fixed")&&(n=t.offsetLeft,c=t.offsetTop)}return{width:r,height:s,x:n,y:c}}const CR=new Set(["absolute","fixed"]);function TR(a,e){const o=Go(a,!0,e==="fixed"),i=o.top+a.clientTop,t=o.left+a.clientLeft,r=_a(a)?Ci(a):ja(1),s=a.clientWidth*r.x,n=a.clientHeight*r.y,c=t*r.x,d=i*r.y;return{width:s,height:n,x:c,y:d}}function lm(a,e,o){let i;if(e==="viewport")i=ER(a,o);else if(e==="document")i=SR(La(a));else if(Pa(e))i=TR(e,o);else{const t=af(a);i={x:e.x-t.x,y:e.y-t.y,width:e.width,height:e.height}}return ds(i)}function tf(a,e){const o=vo(a);return o===e||!Pa(o)||Oi(o)?!1:Ra(o).position==="fixed"||tf(o,e)}function PR(a,e){const o=e.get(a);if(o)return o;let i=xt(a,[],!1).filter(n=>Pa(n)&&Gi(n)!=="body"),t=null;const r=Ra(a).position==="fixed";let s=r?vo(a):a;for(;Pa(s)&&!Oi(s);){const n=Ra(s),c=ul(s);!c&&n.position==="fixed"&&(t=null),(r?!c&&!t:!c&&n.position==="static"&&!!t&&CR.has(t.position)||Jt(s)&&!c&&tf(a,s))?i=i.filter(u=>u!==s):t=n,s=vo(s)}return e.set(a,i),i}function RR(a){let{element:e,boundary:o,rootBoundary:i,strategy:t}=a;const s=[...o==="clippingAncestors"?Ys(e)?[]:PR(e,this._c):[].concat(o),i],n=s[0],c=s.reduce((d,u)=>{const m=lm(e,u,t);return d.top=Ke(m.top,d.top),d.right=fo(m.right,d.right),d.bottom=fo(m.bottom,d.bottom),d.left=Ke(m.left,d.left),d},lm(e,n,t));return{width:c.right-c.left,height:c.bottom-c.top,x:c.left,y:c.top}}function xR(a){const{width:e,height:o}=ef(a);return{width:e,height:o}}function wR(a,e,o){const i=_a(e),t=La(e),r=o==="fixed",s=Go(a,!0,r,e);let n={scrollLeft:0,scrollTop:0};const c=ja(0);function d(){c.x=gl(t)}if(i||!i&&!r)if((Gi(e)!=="body"||Jt(t))&&(n=Js(e)),i){const p=Go(e,!0,r,e);c.x=p.x+e.clientLeft,c.y=p.y+e.clientTop}else t&&d();r&&!i&&t&&d();const u=t&&!i&&!r?of(t,n):ja(0),m=s.left+n.scrollLeft-c.x-u.x,g=s.top+n.scrollTop-c.y-u.y;return{x:m,y:g,width:s.width,height:s.height}}function Bn(a){return Ra(a).position==="static"}function um(a,e){if(!_a(a)||Ra(a).position==="fixed")return null;if(e)return e(a);let o=a.offsetParent;return La(a)===o&&(o=o.ownerDocument.body),o}function rf(a,e){const o=Xe(a);if(Ys(a))return o;if(!_a(a)){let t=vo(a);for(;t&&!Oi(t);){if(Pa(t)&&!Bn(t))return t;t=vo(t)}return o}let i=um(a,e);for(;i&&lR(i)&&Bn(i);)i=um(i,e);return i&&Oi(i)&&Bn(i)&&!ul(i)?o:i||hR(a)||o}const IR=async function(a){const e=this.getOffsetParent||rf,o=this.getDimensions,i=await o(a.floating);return{reference:wR(a.reference,await e(a.floating),a.strategy),floating:{x:0,y:0,width:i.width,height:i.height}}};function DR(a){return Ra(a).direction==="rtl"}const OR={convertOffsetParentRelativeRectToViewportRelativeRect:AR,getDocumentElement:La,getClippingRect:RR,getOffsetParent:rf,getElementRects:IR,getClientRects:yR,getDimensions:xR,getScale:Ci,isElement:Pa,isRTL:DR};function sf(a,e){return a.x===e.x&&a.y===e.y&&a.width===e.width&&a.height===e.height}function MR(a,e){let o=null,i;const t=La(a);function r(){var n;clearTimeout(i),(n=o)==null||n.disconnect(),o=null}function s(n,c){n===void 0&&(n=!1),c===void 0&&(c=1),r();const d=a.getBoundingClientRect(),{left:u,top:m,width:g,height:p}=d;if(n||e(),!g||!p)return;const f=Ar(m),v=Ar(t.clientWidth-(u+g)),b=Ar(t.clientHeight-(m+p)),S=Ar(u),y={rootMargin:-f+"px "+-v+"px "+-b+"px "+-S+"px",threshold:Ke(0,fo(1,c))||1};let E=!0;function C(P){const R=P[0].intersectionRatio;if(R!==c){if(!E)return s();R?s(!1,R):i=setTimeout(()=>{s(!1,1e-7)},1e3)}R===1&&!sf(d,a.getBoundingClientRect())&&s(),E=!1}try{o=new IntersectionObserver(C,{...y,root:t.ownerDocument})}catch{o=new IntersectionObserver(C,y)}o.observe(a)}return s(!0),r}function NR(a,e,o,i){i===void 0&&(i={});const{ancestorScroll:t=!0,ancestorResize:r=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:n=typeof IntersectionObserver=="function",animationFrame:c=!1}=i,d=pl(a),u=t||r?[...d?xt(d):[],...xt(e)]:[];u.forEach(S=>{t&&S.addEventListener("scroll",o,{passive:!0}),r&&S.addEventListener("resize",o)});const m=d&&n?MR(d,o):null;let g=-1,p=null;s&&(p=new ResizeObserver(S=>{let[A]=S;A&&A.target===d&&p&&(p.unobserve(e),cancelAnimationFrame(g),g=requestAnimationFrame(()=>{var y;(y=p)==null||y.observe(e)})),o()}),d&&!c&&p.observe(d),p.observe(e));let f,v=c?Go(a):null;c&&b();function b(){const S=Go(a);
vendor: 6,785 bytes, line 3
3v&&!sf(v,S)&&o(),v=S,f=requestAnimationFrame(b)}return o(),()=>{var S;u.forEach(A=>{t&&A.removeEventListener("scroll",o),r&&A.removeEventListener("resize",o)}),m==null||m(),(S=p)==null||S.disconnect(),p=null,c&&cancelAnimationFrame(f)}}const zR=tR,jR=rR,kR=aR,_R=nR,qR=oR,mm=eR,LR=sR,UR=(a,e,o)=>{const i=new Map,t={platform:OR,...o},r={...t.platform,_c:i};return ZP(a,e,{...t,platform:r})};var BR=typeof document<"u",FR=function(){},Qr=BR?h.useLayoutEffect:FR;function ls(a,e){if(a===e)return!0;if(typeof a!=typeof e)return!1;if(typeof a=="function"&&a.toString()===e.toString())return!0;let o,i,t;if(a&&e&&typeof a=="object"){if(Array.isArray(a)){if(o=a.length,o!==e.length)return!1;for(i=o;i--!==0;)if(!ls(a[i],e[i]))return!1;return!0}if(t=Object.keys(a),o=t.length,o!==Object.keys(e).length)return!1;for(i=o;i--!==0;)if(!{}.hasOwnProperty.call(e,t[i]))return!1;for(i=o;i--!==0;){const r=t[i];if(!(r==="_owner"&&a.$$typeof)&&!ls(a[r],e[r]))return!1}return!0}return a!==a&&e!==e}function nf(a){return typeof window>"u"?1:(a.ownerDocument.defaultView||window).devicePixelRatio||1}function pm(a,e){const o=nf(a);return Math.round(e*o)/o}function Fn(a){const e=h.useRef(a);return Qr(()=>{e.current=a}),e}function GR(a){a===void 0&&(a={});const{placement:e="bottom",strategy:o="absolute",middleware:i=[],platform:t,elements:{reference:r,floating:s}={},transform:n=!0,whileElementsMounted:c,open:d}=a,[u,m]=h.useState({x:0,y:0,strategy:o,placement:e,middlewareData:{},isPositioned:!1}),[g,p]=h.useState(i);ls(g,i)||p(i);const[f,v]=h.useState(null),[b,S]=h.useState(null),A=h.useCallback(z=>{z!==P.current&&(P.current=z,v(z))},[]),y=h.useCallback(z=>{z!==R.current&&(R.current=z,S(z))},[]),E=r||f,C=s||b,P=h.useRef(null),R=h.useRef(null),I=h.useRef(u),x=c!=null,w=Fn(c),L=Fn(t),M=Fn(d),N=h.useCallback(()=>{if(!P.current||!R.current)return;const z={placement:e,strategy:o,middleware:g};L.current&&(z.platform=L.current),UR(P.current,R.current,z).then(D=>{const K={...D,isPositioned:M.current!==!1};T.current&&!ls(I.current,K)&&(I.current=K,Vt.flushSync(()=>{m(K)}))})},[g,e,o,L,M]);Qr(()=>{d===!1&&I.current.isPositioned&&(I.current.isPositioned=!1,m(z=>({...z,isPositioned:!1})))},[d]);const T=h.useRef(!1);Qr(()=>(T.current=!0,()=>{T.current=!1}),[]),Qr(()=>{if(E&&(P.current=E),C&&(R.current=C),E&&C){if(w.current)return w.current(E,C,N);N()}},[E,C,N,w,x]);const q=h.useMemo(()=>({reference:P,floating:R,setReference:A,setFloating:y}),[A,y]),O=h.useMemo(()=>({reference:E,floating:C}),[E,C]),_=h.useMemo(()=>{const z={position:o,left:0,top:0};if(!O.floating)return z;const D=pm(O.floating,u.x),K=pm(O.floating,u.y);return n?{...z,transform:"translate("+D+"px, "+K+"px)",...nf(O.floating)>=1.5&&{willChange:"transform"}}:{position:o,left:D,top:K}},[o,n,O.floating,u.x,u.y]);return h.useMemo(()=>({...u,update:N,refs:q,elements:O,floatingStyles:_}),[u,N,q,O,_])}const VR=a=>{function e(o){return{}.hasOwnProperty.call(o,"current")}return{name:"arrow",options:a,fn(o){const{element:i,padding:t}=typeof a=="function"?a(o):a;return i&&e(i)?i.current!=null?mm({element:i.current,padding:t}).fn(o):{}:i?mm({element:i,padding:t}).fn(o):{}}}},$R=(a,e)=>({...zR(a),options:[a,e]}),HR=(a,e)=>({...jR(a),options:[a,e]}),WR=(a,e)=>({...LR(a),options:[a,e]}),QR=(a,e)=>({...kR(a),options:[a,e]}),KR=(a,e)=>({..._R(a),options:[a,e]}),YR=(a,e)=>({...qR(a),options:[a,e]}),JR=(a,e)=>({...VR(a),options:[a,e]});var XR="Arrow",cf=h.forwardRef((a,e)=>{const{children:o,width:i=10,height:t=5,...r}=a;return l.jsx(J.svg,{...r,ref:e,width:i,height:t,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:a.asChild?o:l.jsx("polygon",{points:"0,0 30,0 15,10"})})});cf.displayName=XR;var ZR=cf;function df(a){const[e,o]=h.useState(void 0);return we(()=>{if(a){o({width:a.offsetWidth,height:a.offsetHeight});const i=new ResizeObserver(t=>{if(!Array.isArray(t)||!t.length)return;const r=t[0];let s,n;if("borderBoxSize"in r){const c=r.borderBoxSize,d=Array.isArray(c)?c[0]:c;s=d.inlineSize,n=d.blockSize}else s=a.offsetWidth,n=a.offsetHeight;o({width:s,height:n})});return i.observe(a,{box:"border-box"}),()=>i.unobserve(a)}else o(void 0)},[a]),e}var hl="Popper",[lf,Vi]=Ze(hl),[ex,uf]=lf(hl),mf=a=>{const{__scopePopper:e,children:o}=a,[i,t]=h.useState(null);return l.jsx(ex,{scope:e,anchor:i,onAnchorChange:t,children:o})};mf.displayName=hl;var pf="PopperAnchor",gf=h.forwardRef((a,e)=>{const{__scopePopper:o,virtualRef:i,...t}=a,r=uf(pf,o),s=h.useRef(null),n=ne(e,s);return h.useEffect(()=>{r.onAnchorChange((i==null?void 0:i.current)||s.current)}),i?null:l.jsx(J.div,{...t,ref:n})});gf.displayName=pf;var fl="PopperContent",[ax,ox]=lf(fl),hf=h.forwardRef((a,e)=>{var G,ue,me,de,le,pe;const{__scopePopper:o,side:i="bottom",sideOffset:t=0,align:r="center",alignOffset:s=0,arrowPadding:n=0,avoidCollisions:c=!0,collisionBoundary:d=[],collisionPadding:u=0,sticky:m="partial",hideWhenDetached:g=!1,updatePositionStrategy:p="optimized",onPlaced:f,...v}=a,b=uf(fl,o),[S,A]=h.useState(null),y=ne(e,_e=>A(_e)),[E,C]=h.useState(null),P=df(E),R=(P==null?void 0:P.width)??0,I=(P==null?void 0:P.height)??0,x=i+(r!=="center"?"-"+r:""),w=typeof u=="number"?u:{top:0,right:0,bottom:0,left:0,...u},L=Array.isArray(d)?d:[d],M=L.length>0,N={padding:w,boundary:L.filter(tx),altBoundary:M},{refs:T,floatingStyles:q,placement:O,isPositioned:_,middlewareData:z}=GR({strategy:"fixed",placement:x,whileElementsMounted:(..._e)=>NR(..._e,{animationFrame:p==="always"}),elements:{reference:b.anchor},middleware:[$R({mainAxis:t+I,alignmentAxis:s}),c&&HR({mainAxis:!0,crossAxis:!1,limiter:m==="partial"?WR():void 0,...N}),c&&QR({...N}),KR({...N,apply:({elements:_e,rects:ea,availableWidth:Ro,availableHeight:ao})=>{const{width:xo,height:Ji}=ea.reference,Yo=_e.floating.style;Yo.setProperty("--radix-popper-available-width",`${Ro}px`),Yo.setProperty("--radix-popper-available-height",`${ao}px`),Yo.setProperty("--radix-popper-anchor-width",`${xo}px`),Yo.setProperty("--radix-popper-anchor-height",`${Ji}px`)}}),E&&JR({element:E,padding:n}),rx({arrowWidth:R,arrowHeight:I}),g&&YR({strategy:"referenceHidden",...N})]}),[D,K]=bf(O),X=Ce(f);we(()=>{_&&(X==null||X())},[_,X]);const Y=(G=z.arrow)==null?void 0:G.x,ae=(ue=z.arrow)==null?void 0:ue.y,re=((me=z.arrow)==null?void 0:me.centerOffset)!==0,[he,Ie]=h.useState();return we(()=>{S&&Ie(window.getComputedStyle(S).zIndex)},[S]),l.jsx("div",{ref:T.setFloating,"data-radix-popper-content-wrapper":"",style:{...q,transform:_?q.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:he,"--radix-popper-transform-origin":[(de=z.transformOrigin)==null?void 0:de.x,(le=z.transformOrigin)==null?void 0:le.y].join(" "),...((pe=z.hide)==null?void 0:pe.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:a.dir,children:l.jsx(ax,{scope:o,placedSide:D,onArrowChange:C,arrowX:Y,arrowY:
vendor: 7,971 bytes, line 3
3ae,shouldHideArrow:re,children:l.jsx(J.div,{"data-side":D,"data-align":K,...v,ref:y,style:{...v.style,animation:_?void 0:"none"}})})})});hf.displayName=fl;var ff="PopperArrow",ix={top:"bottom",right:"left",bottom:"top",left:"right"},vf=h.forwardRef(function(e,o){const{__scopePopper:i,...t}=e,r=ox(ff,i),s=ix[r.placedSide];return l.jsx("span",{ref:r.onArrowChange,style:{position:"absolute",left:r.arrowX,top:r.arrowY,[s]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[r.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[r.placedSide],visibility:r.shouldHideArrow?"hidden":void 0},children:l.jsx(ZR,{...t,ref:o,style:{...t.style,display:"block"}})})});vf.displayName=ff;function tx(a){return a!==null}var rx=a=>({name:"transformOrigin",options:a,fn(e){var b,S,A;const{placement:o,rects:i,middlewareData:t}=e,s=((b=t.arrow)==null?void 0:b.centerOffset)!==0,n=s?0:a.arrowWidth,c=s?0:a.arrowHeight,[d,u]=bf(o),m={start:"0%",center:"50%",end:"100%"}[u],g=(((S=t.arrow)==null?void 0:S.x)??0)+n/2,p=(((A=t.arrow)==null?void 0:A.y)??0)+c/2;let f="",v="";return d==="bottom"?(f=s?m:`${g}px`,v=`${-c}px`):d==="top"?(f=s?m:`${g}px`,v=`${i.floating.height+c}px`):d==="right"?(f=`${-c}px`,v=s?m:`${p}px`):d==="left"&&(f=`${i.floating.width+c}px`,v=s?m:`${p}px`),{data:{x:f,y:v}}}});function bf(a){const[e,o="center"]=a.split("-");return[e,o]}var Xs=mf,vl=gf,bl=hf,Al=vf,[Zs,yse]=Ze("Tooltip",[Vi]),en=Vi(),Af="TooltipProvider",sx=700,$c="tooltip.open",[nx,yl]=Zs(Af),yf=a=>{const{__scopeTooltip:e,delayDuration:o=sx,skipDelayDuration:i=300,disableHoverableContent:t=!1,children:r}=a,s=h.useRef(!0),n=h.useRef(!1),c=h.useRef(0);return h.useEffect(()=>{const d=c.current;return()=>window.clearTimeout(d)},[]),l.jsx(nx,{scope:e,isOpenDelayedRef:s,delayDuration:o,onOpen:h.useCallback(()=>{window.clearTimeout(c.current),s.current=!1},[]),onClose:h.useCallback(()=>{window.clearTimeout(c.current),c.current=window.setTimeout(()=>s.current=!0,i)},[i]),isPointerInTransitRef:n,onPointerInTransitChange:h.useCallback(d=>{n.current=d},[]),disableHoverableContent:t,children:r})};yf.displayName=Af;var wt="Tooltip",[cx,an]=Zs(wt),Sf=a=>{const{__scopeTooltip:e,children:o,open:i,defaultOpen:t,onOpenChange:r,disableHoverableContent:s,delayDuration:n}=a,c=yl(wt,a.__scopeTooltip),d=en(e),[u,m]=h.useState(null),g=sa(),p=h.useRef(0),f=s??c.disableHoverableContent,v=n??c.delayDuration,b=h.useRef(!1),[S,A]=Ya({prop:i,defaultProp:t??!1,onChange:R=>{R?(c.onOpen(),document.dispatchEvent(new CustomEvent($c))):c.onClose(),r==null||r(R)},caller:wt}),y=h.useMemo(()=>S?b.current?"delayed-open":"instant-open":"closed",[S]),E=h.useCallback(()=>{window.clearTimeout(p.current),p.current=0,b.current=!1,A(!0)},[A]),C=h.useCallback(()=>{window.clearTimeout(p.current),p.current=0,A(!1)},[A]),P=h.useCallback(()=>{window.clearTimeout(p.current),p.current=window.setTimeout(()=>{b.current=!0,A(!0),p.current=0},v)},[v,A]);return h.useEffect(()=>()=>{p.current&&(window.clearTimeout(p.current),p.current=0)},[]),l.jsx(Xs,{...d,children:l.jsx(cx,{scope:e,contentId:g,open:S,stateAttribute:y,trigger:u,onTriggerChange:m,onTriggerEnter:h.useCallback(()=>{c.isOpenDelayedRef.current?P():E()},[c.isOpenDelayedRef,P,E]),onTriggerLeave:h.useCallback(()=>{f?C():(window.clearTimeout(p.current),p.current=0)},[C,f]),onOpen:E,onClose:C,disableHoverableContent:f,children:o})})};Sf.displayName=wt;var Hc="TooltipTrigger",Ef=h.forwardRef((a,e)=>{const{__scopeTooltip:o,...i}=a,t=an(Hc,o),r=yl(Hc,o),s=en(o),n=h.useRef(null),c=ne(e,n,t.onTriggerChange),d=h.useRef(!1),u=h.useRef(!1),m=h.useCallback(()=>d.current=!1,[]);return h.useEffect(()=>()=>document.removeEventListener("pointerup",m),[m]),l.jsx(vl,{asChild:!0,...s,children:l.jsx(J.button,{"aria-describedby":t.open?t.contentId:void 0,"data-state":t.stateAttribute,...i,ref:c,onPointerMove:U(a.onPointerMove,g=>{g.pointerType!=="touch"&&!u.current&&!r.isPointerInTransitRef.current&&(t.onTriggerEnter(),u.current=!0)}),onPointerLeave:U(a.onPointerLeave,()=>{t.onTriggerLeave(),u.current=!1}),onPointerDown:U(a.onPointerDown,()=>{t.open&&t.onClose(),d.current=!0,document.addEventListener("pointerup",m,{once:!0})}),onFocus:U(a.onFocus,()=>{d.current||t.onOpen()}),onBlur:U(a.onBlur,t.onClose),onClick:U(a.onClick,t.onClose)})})});Ef.displayName=Hc;var dx="TooltipPortal",[Sse,lx]=Zs(dx,{forceMount:void 0}),Mi="TooltipContent",Cf=h.forwardRef((a,e)=>{const o=lx(Mi,a.__scopeTooltip),{forceMount:i=o.forceMount,side:t="top",...r}=a,s=an(Mi,a.__scopeTooltip);return l.jsx($e,{present:i||s.open,children:s.disableHoverableContent?l.jsx(Tf,{side:t,...r,ref:e}):l.jsx(ux,{side:t,...r,ref:e})})}),ux=h.forwardRef((a,e)=>{const o=an(Mi,a.__scopeTooltip),i=yl(Mi,a.__scopeTooltip),t=h.useRef(null),r=ne(e,t),[s,n]=h.useState(null),{trigger:c,onClose:d}=o,u=t.current,{onPointerInTransitChange:m}=i,g=h.useCallback(()=>{n(null),m(!1)},[m]),p=h.useCallback((f,v)=>{const b=f.currentTarget,S={x:f.clientX,y:f.clientY},A=fx(S,b.getBoundingClientRect()),y=vx(S,A),E=bx(v.getBoundingClientRect()),C=yx([...y,...E]);n(C),m(!0)},[m]);return h.useEffect(()=>()=>g(),[g]),h.useEffect(()=>{if(c&&u){const f=b=>p(b,u),v=b=>p(b,c);return c.addEventListener("pointerleave",f),u.addEventListener("pointerleave",v),()=>{c.removeEventListener("pointerleave",f),u.removeEventListener("pointerleave",v)}}},[c,u,p,g]),h.useEffect(()=>{if(s){const f=v=>{const b=v.target,S={x:v.clientX,y:v.clientY},A=(c==null?void 0:c.contains(b))||(u==null?void 0:u.contains(b)),y=!Ax(S,s);A?g():y&&(g(),d())};return document.addEventListener("pointermove",f),()=>document.removeEventListener("pointermove",f)}},[c,u,s,d,g]),l.jsx(Tf,{...a,ref:r})}),[mx,px]=Zs(wt,{isInside:!1}),gx=LC("TooltipContent"),Tf=h.forwardRef((a,e)=>{const{__scopeTooltip:o,children:i,"aria-label":t,onEscapeKeyDown:r,onPointerDownOutside:s,...n}=a,c=an(Mi,o),d=en(o),{onClose:u}=c;return h.useEffect(()=>(document.addEventListener($c,u),()=>document.removeEventListener($c,u)),[u]),h.useEffect(()=>{if(c.trigger){const m=g=>{const p=g.target;p!=null&&p.contains(c.trigger)&&u()};return window.addEventListener("scroll",m,{capture:!0}),()=>window.removeEventListener("scroll",m,{capture:!0})}},[c.trigger,u]),l.jsx(Ui,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:r,onPointerDownOutside:s,onFocusOutside:m=>m.preventDefault(),onDismiss:u,children:l.jsxs(bl,{"data-state":c.stateAttribute,...d,...n,ref:e,style:{...n.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[l.jsx(gx,{children:i}),l.jsx(mx,{scope:o,isInside:!0,children:l.jsx(nT,{id:c.contentId,role:"tooltip",children:t||i})})]})})});Cf.displayName=Mi;var Pf="TooltipArrow",hx=h.forwardRef((a,e)=>{const{__scopeTooltip:o,...i}=a,t=en(o);return px(Pf,o).isInside?null:l.jsx(Al,{...t,...i,ref:e})});hx.displayName=Pf;function fx(a,e){const o=Math.abs(e.top-a.y),i=Math.abs(e.bottom-a.y),t=Math.abs(e.right-a.x),r=Math.abs(e.left-a.x);switch(Math.min(o,i,t,r)){case r:return"left";case t:return"right";case o:return"top";case i:return"bottom";default:throw new Error("unreachable")}}function vx(a,e,o=5){const i=[];switch(e){case"top":i.push({x:a.x-o,y:a.y+o},{x:a.x+o,y:a.y+o});break;case"bottom":i.push({x:a.x-o,y:a.y-o},{x:a.x+o,y:a.y-o});break;case"left":i.push({x:a.x+o,y:a.y-o},{x:a.x+o,y:a.y+o});break;case"right":i.push({x:a.x-o,y:a.y-o},{x:a.x-o,y:a.y+o});break}return i}function bx(a){const{top:e,right:o,bottom:i,left:t}=a;return[{x:t,y:e},{x:o,y:e},{x:o,y:i},{x:t,y:i}]}function Ax(a,e){const{x:o,y:i}=a;let t=!1;for(let r=0,s=e.length-1;r<e.length;
3s=r++){const n=e[r],c=e[s],d=n.x,u=n.y,m=c.x,g=c.y;u>i!=g>i&&o<(m-d)*(i-u)/(g-u)+d&&(t=!t)}return t}function yx(a){const e=a.slice();return e.sort((o,i)=>o.x<i.x?-1:o.x>i.x?1:o.y<i.y?-1:o.y>i.y?1:0),Sx(e)}function Sx(a){if(a.length<=1)return a.slice();const e=[];for(let i=0;i<a.length;i++){const t=a[i];for(;e.length>=2;){const r=e[e.length-1],s=e[e.length-2];if((r.x-s.x)*(t.y-s.y)>=(r.y-s.y)*(t.x-s.x))e.pop();else break}e.push(t)}e.pop();const o=[];for(let i=a.length-1;i>=0;i--){const t=a[i];for(;o.length>=2;){const r=o[o.length-1],s=o[o.length-2];if((r.x-s.x)*(t.y-s.y)>=(r.y-s.y)*(t.x-s.x))o.pop();else break}o.push(t)}return o.pop(),e.length===1&&o.length===1&&e[0].x===o[0].x&&e[0].y===o[0].y?e:e.concat(o)}var Ex=yf,Cx=Sf,Tx=Ef,Rf=Cf;const Px=Ex,yr=Cx,Sr=Tx,st=h.forwardRef(({className:a,sideOffset:e=4,...o},i)=>l.jsx(Rf,{ref:i,sideOffset:e,className:$("z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...o}));st.displayName=Rf.displayName;var Ma=function(){return Ma=Object.assign||function(e){for(var o,i=1,t=arguments.length;i<t;i++){o=arguments[i];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},Ma.apply(this,arguments)};function $i(a,e){var o={};for(var i in a)Object.prototype.hasOwnProperty.call(a,i)&&e.indexOf(i)<0&&(o[i]=a[i]);if(a!=null&&typeof Object.getOwnPropertySymbols=="function")for(var t=0,i=Object.getOwnPropertySymbols(a);t<i.length;t++)e.indexOf(i[t])<0&&Object.prototype.propertyIsEnumerable.call(a,i[t])&&(o[i[t]]=a[i[t]]);return o}function Rx(a,e,o,i){function t(r){return r instanceof o?r:new o(function(s){s(r)})}return new(o||(o=Promise))(function(r,s){function n(u){try{d(i.next(u))}catch(m){s(m)}}function c(u){try{d(i.throw(u))}catch(m){s(m)}}function d(u){u.done?r(u.value):t(u.value).then(n,c)}d((i=i.apply(a,e||[])).next())})}function xx(a,e,o){if(o||arguments.length===2)for(var i=0,t=e.length,r;i<t;i++)(r||!(i in e))&&(r||(r=Array.prototype.slice.call(e,0,i)),r[i]=e[i]);return a.concat(r||Array.prototype.slice.call(e))}const wx=a=>a?(...e)=>a(...e):(...e)=>fetch(...e);class Sl extends Error{constructor(e,o="FunctionsError",i){super(e),this.name=o,this.context=i}toJSON(){return{name:this.name,message:this.message,context:this.context}}}class Ix extends Sl{constructor(e){super("Failed to send a request to the Edge Function","FunctionsFetchError",e)}}class gm extends Sl{constructor(e){super("Relay Error invoking the Edge Function","FunctionsRelayError",e)}}class hm extends Sl{constructor(e){super("Edge Function returned a non-2xx status code","FunctionsHttpError",e)}}var Wc;(function(a){a.Any="any",a.ApNortheast1="ap-northeast-1",a.ApNortheast2="ap-northeast-2",a.ApSouth1="ap-south-1",a.ApSoutheast1="ap-southeast-1",a.ApSoutheast2="ap-southeast-2",a.CaCentral1="ca-central-1",a.EuCentral1="eu-central-1",a.EuWest1="eu-west-1",a.EuWest2="eu-west-2",a.EuWest3="eu-west-3",a.SaEast1="sa-east-1",a.UsEast1="us-east-1",a.UsWest1="us-west-1",a.UsWest2="us-west-2"})(Wc||(Wc={}));class Dx{constructor(e,{headers:o={},customFetch:i,region:t=Wc.Any}={}){this.url=e,this.headers=o,this.region=t,this.fetch=wx(i)}setAuth(e){this.headers.Authorization=`Bearer ${e}`}invoke(e){return Rx(this,arguments,void 0,function*(o,i={}){var t;let r,s;try{const{headers:n,method:c,body:d,signal:u,timeout:m}=i;let g={},{region:p}=i;p||(p=this.region);const f=new URL(`${this.url}/${o}`);p&&p!=="any"&&(g["x-region"]=p,f.searchParams.set("forceFunctionRegion",p));let v;d&&(n&&!Object.prototype.hasOwnProperty.call(n,"Content-Type")||!n)?typeof Blob<"u"&&d instanceof Blob||d instanceof ArrayBuffer?(g["Content-Type"]="application/octet-stream",v=d):typeof d=="string"?(g["Content-Type"]="text/plain",v=d):typeof FormData<"u"&&d instanceof FormData?v=d:(g["Content-Type"]="application/json",v=JSON.stringify(d)):d&&typeof d!="string"&&!(typeof Blob<"u"&&d instanceof Blob)&&!(d instanceof ArrayBuffer)&&!(typeof FormData<"u"&&d instanceof FormData)?v=JSON.stringify(d):v=d;let b=u;m&&(s=new AbortController,r=setTimeout(()=>s.abort(),m),u?(b=s.signal,u.addEventListener("abort",()=>s.abort())):b=s.signal);const S=yield this.fetch(f.toString(),{method:c||"POST",headers:Object.assign(Object.assign(Object.assign({},g),this.headers),n),body:v,signal:b}).catch(C=>{throw new Ix(C)}),A=S.headers.get("x-relay-error");
3if(A&&A==="true")throw new gm(S);if(!S.ok)throw new hm(S);let y=((t=S.headers.get("Content-Type"))!==null&&t!==void 0?t:"text/plain").split(";")[0].trim(),E;return y==="application/json"?E=yield S.json():y==="application/octet-stream"||y==="application/pdf"?E=yield S.blob():y==="text/event-stream"?E=S:y==="multipart/form-data"?E=yield S.formData():E=yield S.text(),{data:E,error:null,response:S}}catch(n){return{data:null,error:n,response:n instanceof hm||n instanceof gm?n.context:void 0}}finally{r&&clearTimeout(r)}})}}const xf=3,fm=a=>Math.min(1e3*2**a,3e4),Ox=[520,503],wf=["GET","HEAD","OPTIONS"];var vm=class extends Error{constructor(a){super(a.message),this.name="PostgrestError",this.details=a.details,this.hint=a.hint,this.code=a.code}toJSON(){return{name:this.name,message:this.message,details:this.details,hint:this.hint,code:this.code}}};function bm(a,e){return new Promise(o=>{if(e!=null&&e.aborted){o();return}const i=setTimeout(()=>{e==null||e.removeEventListener("abort",t),o()},a);function t(){clearTimeout(i),o()}e==null||e.addEventListener("abort",t)})}function Mx(a,e,o,i){return!(!i||o>=xf||!wf.includes(a)||!Ox.includes(e))}var Nx=class{constructor(a){var e,o,i,t,r;this.shouldThrowOnError=!1,this.retryEnabled=!0,this.method=a.method,this.url=a.url,this.headers=new Headers(a.headers),this.schema=a.schema,this.body=a.body,this.shouldThrowOnError=(e=a.shouldThrowOnError)!==null&&e!==void 0?e:!1,this.signal=a.signal,this.isMaybeSingle=(o=a.isMaybeSingle)!==null&&o!==void 0?o:!1,this.shouldStripNulls=(i=a.shouldStripNulls)!==null&&i!==void 0?i:!1,this.urlLengthLimit=(t=a.urlLengthLimit)!==null&&t!==void 0?t:8e3,this.retryEnabled=(r=a.retry)!==null&&r!==void 0?r:!0,a.fetch?this.fetch=a.fetch:this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}stripNulls(){if(this.headers.get("Accept")==="text/csv")throw new Error("stripNulls() cannot be used with csv()");return this.shouldStripNulls=!0,this}setHeader(a,e){return this.headers=new Headers(this.headers),this.headers.set(a,e),this}retry(a){return this.retryEnabled=a,this}then(a,e){var o=this;if(this.schema===void 0||(["GET","HEAD"].includes(this.method)?this.headers.set("Accept-Profile",this.schema):this.headers.set("Content-Profile",this.schema)),this.method!=="GET"&&this.method!=="HEAD"&&this.headers.set("Content-Type","application/json"),this.shouldStripNulls){const s=this.headers.get("Accept");s==="application/vnd.pgrst.object+json"?this.headers.set("Accept","application/vnd.pgrst.object+json;nulls=stripped"):(!s||s==="application/json")&&this.headers.set("Accept","application/vnd.pgrst.array+json;nulls=stripped")}const i=this.fetch;let r=(async()=>{let s=0;for(;;){const d={};o.headers.forEach((m,g)=>{d[g]=m}),s>0&&(d["X-Retry-Count"]=String(s));let u;try{u=await i(o.url.toString(),{method:o.method,headers:d,body:JSON.stringify(o.body,(m,g)=>typeof g=="bigint"?g.toString():g),signal:o.signal})}catch(m){if((m==null?void 0:m.name)==="AbortError"||(m==null?void 0:m.code)==="ABORT_ERR"||!wf.includes(o.method))throw m;if(o.retryEnabled&&s<xf){const g=fm(s);s++,await bm(g,o.signal);continue}throw m}if(Mx(o.method,u.status,s,o.retryEnabled)){var n,c;const m=(n=(c=u.headers)===null||c===void 0?void 0:c.get("Retry-After"))!==null&&n!==void 0?n:null,g=m!==null?Math.max(0,parseInt(m,10)||0)*1e3:fm(s);await u.text(),s++,await bm(g,o.signal);continue}return await o.processResponse(u)}})();return this.shouldThrowOnError||(r=r.catch(s=>{var n;let c="",d="",u="";const m=s==null?void 0:s.cause;if(m){var g,p,f,v;const A=(g=m==null?void 0:m.message)!==null&&g!==void 0?g:"",y=(p=m==null?void 0:m.code)!==null&&p!==void 0?p:"";c=`${(f=s==null?void 0:s.name)!==null&&f!==void 0?f:"FetchError"}: ${s==null?void 0:s.message}`,c+=` 4 5Caused by: ${(v=m==null?void 0:m.name)!==null&&v!==void 0?v:"Error"}: ${A}`,y&&(c+=` (${y})`),m!=null&&m.stack&&(c+=` 6${m.stack}`)}else{var b;c=(b=s==null?void 0:s.stack)!==null&&b!==void 0?b:""}const S=this.url.toString().length;return(s==null?void 0:s.name)==="AbortError"||(s==null?void 0:s.code)==="ABORT_ERR"?(u="",d="Request was aborted (timeout or manual cancellation)",S>this.urlLengthLimit&&(d+=`. Note: Your request URL is ${S} characters, which may exceed server limits. If selecting many fields, consider using views. If filtering with large arrays (e.g., .in('id', [many IDs])), consider using an RPC function to pass values server-side.`)):((m==null?void 0:m.name)==="HeadersOverflowError"||(m==null?void 0:m.code)==="UND_ERR_HEADERS_OVERFLOW")&&(u="",d="HTTP headers exceeded server limits (typically 16KB)",S>this.urlLengthLimit&&(d+=`. Your request URL is ${S} characters. If selecting many fields, consider using views. If filtering with large arrays (e.g., .in('id', [200+ IDs])), consider using an RPC function instead.`)),{success:!1,error:{message:`${(n=s==null?void 0:s.name)!==null&&n!==void 0?n:"FetchError"}: ${s==null?void 0:s.message}`,details:c,hint:d,code:u},data:null,count:null,status:0,statusText:""}}
6)),r.then(a,e)}async processResponse(a){var e=this;let o=null,i=null,t=null,r=a.status,s=a.statusText;if(a.ok){var n,c;if(e.method!=="HEAD"){var d;const g=await a.text();if(g!=="")if(e.headers.get("Accept")==="text/csv")i=g;else if(e.headers.get("Accept")&&(!((d=e.headers.get("Accept"))===null||d===void 0)&&d.includes("application/vnd.pgrst.plan+text")))i=g;else try{i=JSON.parse(g)}catch{if(o={message:g},i=null,e.shouldThrowOnError)throw new vm({message:g,details:"",hint:"",code:""})}}const u=(n=e.headers.get("Prefer"))===null||n===void 0?void 0:n.match(/count=(exact|planned|estimated)/),m=(c=a.headers.get("content-range"))===null||c===void 0?void 0:c.split("/");u&&m&&m.length>1&&(t=parseInt(m[1])),e.isMaybeSingle&&Array.isArray(i)&&(i.length>1?(o={code:"PGRST116",details:`Results contain ${i.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},i=null,t=null,r=406,s="Not Acceptable"):i.length===1?i=i[0]:i=null)}else{const u=await a.text();try{o=JSON.parse(u),Array.isArray(o)&&a.status===404&&(i=[],o=null,r=200,s="OK")}catch{a.status===404&&u===""?(r=204,s="No Content"):o={message:u}}if(o&&e.shouldThrowOnError)throw new vm(o)}return{success:o===null,error:o,data:i,count:t,status:r,statusText:s}}returns(){return this}overrideTypes(){return this}},zx=class extends Nx{throwOnError(){return super.throwOnError()}select(a){let e=!1;const o=(a??"*").split("").map(i=>/\s/.test(i)&&!e?"":(i==='"'&&(e=!e),i)).join("");return this.url.searchParams.set("select",o),this.headers.append("Prefer","return=representation"),this}order(a,{ascending:e=!0,nullsFirst:o,foreignTable:i,referencedTable:t=i}={}){const r=t?`${t}.order`:"order",s=this.url.searchParams.get(r);return this.url.searchParams.set(r,`${s?`${s},`:""}${a}.${e?"asc":"desc"}${o===void 0?"":o?".nullsfirst":".nullslast"}`),this}limit(a,{foreignTable:e,referencedTable:o=e}={}){const i=typeof o>"u"?"limit":`${o}.limit`;return this.url.searchParams.set(i,`${a}`),this}range(a,e,{foreignTable:o,referencedTable:i=o}={}){const t=typeof i>"u"?"offset":`${i}.offset`,r=typeof i>"u"?"limit":`${i}.limit`;return this.url.searchParams.set(t,`${a}`),this.url.searchParams.set(r,`${e-a+1}`),this}abortSignal(a){return this.signal=a,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){return this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:a=!1,verbose:e=!1,settings:o=!1,buffers:i=!1,wal:t=!1,format:r="text"}={}){var s;const n=[a?"analyze":null,e?"verbose":null,o?"settings":null,i?"buffers":null,t?"wal":null].filter(Boolean).join("|"),c=(s=this.headers.get("Accept"))!==null&&s!==void 0?s:"application/json";return this.headers.set("Accept",`application/vnd.pgrst.plan+${r}; for="${c}"; options=${n};`),r==="json"?this:this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(a){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${a}`),this}};const Am=new RegExp("[,()]");var ci=class extends zx{throwOnError(){return super.throwOnError()}eq(a,e){return this.url.searchParams.append(a,`eq.${e}`),this}neq(a,e){return this.url.searchParams.append(a,`neq.${e}`),this}gt(a,e){return this.url.searchParams.append(a,`gt.${e}`),this}gte(a,e){return this.url.searchParams.append(a,`gte.${e}`),this}lt(a,e){return this.url.searchParams.append(a,`lt.${e}`),this}lte(a,e){return this.url.searchParams.append(a,`lte.${e}`),this}like(a,e){return this.url.searchParams.append(a,`like.${e}`),this}likeAllOf(a,e){return this.url.searchParams.append(a,`like(all).{${e.join(",")}}`),this}likeAnyOf(a,e){return this.url.searchParams.append(a,`like(any).{${e.join(",")}}`),this}ilike(a,e){return this.url.searchParams.append(a,`ilike.${e}`),this}ilikeAllOf(a,e){return this.url.searchParams.append(a,`ilike(all).{${e.join(",")}}`),this}ilikeAnyOf(a,e){return this.url.searchParams.append(a,`ilike(any).{${e.join(",")}}`),this}regexMatch(a,e){return this.url.searchParams.append(a,`match.${e}`),this}regexIMatch(a,e){return this.url.searchParams.append(a,`imatch.${e}`),this}is(a,e){return this.url.searchParams.append(a,`is.${e}`),this}isDistinct(a,e){return this.url.searchParams.append(a,`isdistinct.${e}`),this}in(a,e){const o=Array.from(new Set(e)).map(i=>typeof i=="string"&&Am.test(i)?`"${i}"`:`${i}`).join(",");return this.url.searchParams.append(a,`in.(${o})`),this}notIn(a,e){const o=Array.from(new Set(e)).map(i=>typeof i=="string"&&Am.test(i)?`"${i}"`:`${i}`).join(",");return this.url.searchParams.append(a,`not.in.(${o})`),this}contains(a,e){return typeof e=="string"?this.url.searchParams.append(a,`cs.${e}`):Array.isArray(e)?this.url.searchParams.append(a,`cs.{${e.join(",")}}`):this.url.searchParams.append(a,`cs.${JSON.stringify(e)}`),this}containedBy(a,e){return typeof e=="string"?this.url.searchParams.append(a,`cd.${e}`):Array.isArray(e)?this.url.searchParams.append(a,`cd.{${e.join(",")}}`):this.url.searchParams.append(a,`cd.${JSON.stringify(e)}`),this}rangeGt(a,e){return this.url.searchParams.append(a,`sr.${e}`),this}rangeGte(a,e){return this.url.searchParams.append(a,`nxl.${e}`),this}rangeLt(a,e){return this.url.searchParams.append(a,`sl.${e}`),this}rangeLte(a,e){return this.url.searchParams.append(a,`nxr.${e}`),this}rangeAdjacent(a,e){return this.url.searchParams.append(a,`adj.${e}`),this}overlaps(a,e){return typeof e=="string"?this.url.searchParams.append(a,`ov.${e}`):this.url.searchParams.append(a,`ov.{${e.join(",")}}`),this}textSearch(a,e,{config:o,type:i}={}){let t="";i==="plain"?t="pl":i==="phrase"?t="ph":i==="websearch"&&(t="w");const r=o===void 0?"":`(${o})`;return this.url.searchParams.append(a,`${t}fts${r}.${e}`),this}match(a){return Object.entries(a).filter(([e,o])=>
6o!==void 0).forEach(([e,o])=>{this.url.searchParams.append(e,`eq.${o}`)}),this}not(a,e,o){return this.url.searchParams.append(a,`not.${e}.${o}`),this}or(a,{foreignTable:e,referencedTable:o=e}={}){const i=o?`${o}.or`:"or";return this.url.searchParams.append(i,`(${a})`),this}filter(a,e,o){return this.url.searchParams.append(a,`${e}.${o}`),this}},jx=class{constructor(a,{headers:e={},schema:o,fetch:i,urlLengthLimit:t=8e3,retry:r}){this.url=a,this.headers=new Headers(e),this.schema=o,this.fetch=i,this.urlLengthLimit=t,this.retry=r}cloneRequestState(){return{url:new URL(this.url.toString()),headers:new Headers(this.headers)}}select(a,e){const{head:o=!1,count:i}=e??{},t=o?"HEAD":"GET";let r=!1;const s=(a??"*").split("").map(d=>/\s/.test(d)&&!r?"":(d==='"'&&(r=!r),d)).join(""),{url:n,headers:c}=this.cloneRequestState();return n.searchParams.set("select",s),i&&c.append("Prefer",`count=${i}`),new ci({method:t,url:n,headers:c,schema:this.schema,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}insert(a,{count:e,defaultToNull:o=!0}={}){var i;const t="POST",{url:r,headers:s}=this.cloneRequestState();if(e&&s.append("Prefer",`count=${e}`),o||s.append("Prefer","missing=default"),Array.isArray(a)){const n=a.reduce((c,d)=>c.concat(Object.keys(d)),[]);if(n.length>0){const c=[...new Set(n)].map(d=>`"${d}"`);r.searchParams.set("columns",c.join(","))}}return new ci({method:t,url:r,headers:s,schema:this.schema,body:a,fetch:(i=this.fetch)!==null&&i!==void 0?i:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}upsert(a,{onConflict:e,ignoreDuplicates:o=!1,count:i,defaultToNull:t=!0}={}){var r;const s="POST",{url:n,headers:c}=this.cloneRequestState();if(c.append("Prefer",`resolution=${o?"ignore":"merge"}-duplicates`),e!==void 0&&n.searchParams.set("on_conflict",e),i&&c.append("Prefer",`count=${i}`),t||c.append("Prefer","missing=default"),Array.isArray(a)){const d=a.reduce((u,m)=>u.concat(Object.keys(m)),[]);if(d.length>0){const u=[...new Set(d)].map(m=>`"${m}"`);n.searchParams.set("columns",u.join(","))}}return new ci({method:s,url:n,headers:c,schema:this.schema,body:a,fetch:(r=this.fetch)!==null&&r!==void 0?r:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}update(a,{count:e}={}){var o;const i="PATCH",{url:t,headers:r}=this.cloneRequestState();return e&&r.append("Prefer",`count=${e}`),new ci({method:i,url:t,headers:r,schema:this.schema,body:a,fetch:(o=this.fetch)!==null&&o!==void 0?o:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}delete({count:a}={}){var e;const o="DELETE",{url:i,headers:t}=this.cloneRequestState();return a&&t.append("Prefer",`count=${a}`),new ci({method:o,url:i,headers:t,schema:this.schema,fetch:(e=this.fetch)!==null&&e!==void 0?e:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}};function It(a){"@babel/helpers - typeof";return It=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},It(a)}function kx(a,e){if(It(a)!="object"||!a)return a;var o=a[Symbol.toPrimitive];if(o!==void 0){var i=o.call(a,e||"default");if(It(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(a)}function _x(a){var e=kx(a,"string");return It(e)=="symbol"?e:e+""}function qx(a,e,o){return(e=_x(e))in a?Object.defineProperty(a,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):a[e]=o,a}function ym(a,e){var o=Object.keys(a);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(a);e&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(a,t).enumerable})),o.push.apply(o,i)}return o}function Er(a){for(var e=1;e<arguments.length;e++){var o=arguments[e]!=null?arguments[e]:{};e%2?ym(Object(o),!0).forEach(function(i){qx(a,i,o[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):ym(Object(o)).forEach(function(i){Object.defineProperty(a,i,Object.getOwnPropertyDescriptor(o,i))})}return a}var Lx=class If{constructor(e,{headers:o={},schema:i,fetch:t,timeout:r,urlLengthLimit:s=8e3,retry:n}={}){this.url=e,this.headers=new Headers(o),this.schemaName=i,this.urlLengthLimit=s;const c=t??globalThis.fetch;r!==void 0&&r>0?this.fetch=(d,u)=>{const m=new AbortController,g=setTimeout(()=>m.abort(),r),p=u==null?void 0:u.signal;if(p){if(p.aborted)return clearTimeout(g),c(d,u);const f=()=>{clearTimeout(g),m.abort()};return p.addEventListener("abort",f,{once:!0}),c(d,Er(Er({},u),{},{signal:m.signal})).finally(()=>{clearTimeout(g),p.removeEventListener("abort",f)})}return c(d,Er(Er({},u),{},{signal:m.signal})).finally(()=>clearTimeout(g))}:this.fetch=c,this.retry=n}from(e){if(!e||typeof e!="string"||e.trim()==="")throw new Error("Invalid relation name: relation must be a non-empty string.");return new jx(new URL(`${this.url}/${e}`),{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}schema(e){return new If(this.url,{headers:this.headers,schema:e,fetch:this.fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}rpc(e,o={},{head:i=!1,get:t=!1,count:r}={}){var s;let n;const c=new URL(`${this.url}/rpc/${e}`);let d;const u=p=>p!==null&&typeof p=="object"&&(!Array.isArray(p)||p.some(u)),m=i&&Object.values(o).some(u);m?(n="POST",d=o):i||t?(n=i?"HEAD":"GET",Object.entries(o).filter(([p,f])=>f!==void 0).map(([p,f])=>[p,Array.isArray(f)?`{${f.join(",")}}`:`${f}
6`]).forEach(([p,f])=>{c.searchParams.append(p,f)})):(n="POST",d=o);const g=new Headers(this.headers);return m?g.set("Prefer",r?`count=${r},return=minimal`:"return=minimal"):r&&g.set("Prefer",`count=${r}`),new ci({method:n,url:c,headers:g,schema:this.schemaName,body:d,fetch:(s=this.fetch)!==null&&s!==void 0?s:fetch,urlLengthLimit:this.urlLengthLimit,retry:this.retry})}};class Ux{constructor(){}static detectEnvironment(){var e;if(typeof WebSocket<"u")return{type:"native",wsConstructor:WebSocket};const o=globalThis;if(typeof globalThis<"u"&&typeof o.WebSocket<"u")return{type:"native",wsConstructor:o.WebSocket};const i=typeof global<"u"?global:void 0;if(i&&typeof i.WebSocket<"u")return{type:"native",wsConstructor:i.WebSocket};if(typeof globalThis<"u"&&typeof o.WebSocketPair<"u"&&typeof globalThis.WebSocket>"u")return{type:"cloudflare",error:"Cloudflare Workers detected. WebSocket clients are not supported in Cloudflare Workers.",workaround:"Use Cloudflare Workers WebSocket API for server-side WebSocket handling, or deploy to a different runtime."};if(typeof globalThis<"u"&&o.EdgeRuntime||typeof navigator<"u"&&(!((e=navigator.userAgent)===null||e===void 0)&&e.includes("Vercel-Edge")))return{type:"unsupported",error:"Edge runtime detected (Vercel Edge/Netlify Edge). WebSockets are not supported in edge functions.",workaround:"Use serverless functions or a different deployment target for WebSocket functionality."};const t=globalThis.process;if(t){const r=t.versions;if(r&&r.node){const s=r.node,n=parseInt(s.replace(/^v/,"").split(".")[0]);return n>=22?typeof globalThis.WebSocket<"u"?{type:"native",wsConstructor:globalThis.WebSocket}:{type:"unsupported",error:`Node.js ${n} detected but native WebSocket not found.`,workaround:"Provide a WebSocket implementation via the transport option."}:{type:"unsupported",error:`Node.js ${n} detected without native WebSocket support.`,workaround:`For Node.js < 22, install "ws" package and provide it via the transport option: 7import ws from "ws" 8new RealtimeClient(url, { transport: ws })`}}}return{type:"unsupported",error:"Unknown JavaScript runtime without WebSocket support.",workaround:"Ensure you're running in a supported environment (browser, Node.js, Deno) or provide a custom WebSocket implementation."}}static getWebSocketConstructor(){const e=this.detectEnvironment();if(e.wsConstructor)return e.wsConstructor;let o=e.error||"WebSocket not supported in this environment.";throw e.workaround&&(o+=` 9 10Suggested solution: ${e.workaround}`),new Error(o)}static isWebSocketSupported(){try{const e=this.detectEnvironment();return e.type==="native"||e.type==="ws"}catch{return!1}}}const Bx="2.108.2",Fx=`realtime-js/${Bx}`,Gx="1.0.0",Df="2.0.0",Vx=Df,$x=1e4,Hx=100,uo={closed:"closed",errored:"errored",joined:"joined",joining:"joining",leaving:"leaving"},Of={close:"phx_close",error:"phx_error",join:"phx_join",reply:"phx_reply",leave:"phx_leave",access_token:"access_token"},Qc={connecting:"connecting",open:"open",closing:"closing",closed:"closed"};class Wx{constructor(e){this.HEADER_LENGTH=1,this.USER_BROADCAST_PUSH_META_LENGTH=6,this.KINDS={userBroadcastPush:3,userBroadcast:4},this.BINARY_ENCODING=0,this.JSON_ENCODING=1,this.BROADCAST_EVENT="broadcast",this.allowedMetadataKeys=[],this.allowedMetadataKeys=e??[]}encode(e,o){if(e.event===this.BROADCAST_EVENT&&!(e.payload instanceof ArrayBuffer)&&typeof e.payload.event=="string")return o(this._binaryEncodeUserBroadcastPush(e));let i=[e.join_ref,e.ref,e.topic,e.event,e.payload];return o(JSON.stringify(i))}_binaryEncodeUserBroadcastPush(e){var o;return this._isArrayBuffer((o=e.payload)===null||o===void 0?void 0:o.payload)?this._encodeBinaryUserBroadcastPush(e):this._encodeJsonUserBroadcastPush(e)}_encodeBinaryUserBroadcastPush(e){var o,i;const t=(i=(o=e.payload)===null||o===void 0?void 0:o.payload)!==null&&i!==void 0?i:new ArrayBuffer(0);return this._encodeUserBroadcastPush(e,this.BINARY_ENCODING,t)}_encodeJsonUserBroadcastPush(e){var o,i;const t=(i=(o=e.payload)===null||o===void 0?void 0:o.payload)!==null&&i!==void 0?i:{},s=new TextEncoder().encode(JSON.stringify(t)).buffer;return this._encodeUserBroadcastPush(e,this.JSON_ENCODING,s)}_encodeUserBroadcastPush(e,o,i){var t,r;const s=e.topic,n=(t=e.ref)!==null&&t!==void 0?t:"",c=(r=e.join_ref)!==null&&r!==void 0?r:"",d=e.payload.event,u=this.allowedMetadataKeys?this._pick(e.payload,this.allowedMetadataKeys):{},m=Object.keys(u).length===0?"":JSON.stringify(u);if(c.length>255)throw new Error(`joinRef length ${c.length} exceeds maximum of 255`);if(n.length>255)throw new Error(`ref length ${n.length} exceeds maximum of 255`);if(s.length>255)throw new Error(`topic length ${s.length} exceeds maximum of 255`);if(d.length>255)throw new Error(`userEvent length ${d.length} exceeds maximum of 255`);if(m.length>255)throw new Error(`metadata length ${m.length} exceeds maximum of 255`);const g=this.USER_BROADCAST_PUSH_META_LENGTH+c.length+n.length+s.length+d.length+m.length,p=new ArrayBuffer(this.HEADER_LENGTH+g);let f=new DataView(p),v=0;f.setUint8(v++,this.KINDS.userBroadcastPush),f.setUint8(v++,c.length),f.setUint8(v++,n.length),f.setUint8(v++,s.length),f.setUint8(v++,d.length),f.setUint8(v++,m.length),f.setUint8(v++,o),Array.from(c,S=>
10f.setUint8(v++,S.charCodeAt(0))),Array.from(n,S=>f.setUint8(v++,S.charCodeAt(0))),Array.from(s,S=>f.setUint8(v++,S.charCodeAt(0))),Array.from(d,S=>f.setUint8(v++,S.charCodeAt(0))),Array.from(m,S=>f.setUint8(v++,S.charCodeAt(0)));var b=new Uint8Array(p.byteLength+i.byteLength);return b.set(new Uint8Array(p),0),b.set(new Uint8Array(i),p.byteLength),b.buffer}decode(e,o){if(this._isArrayBuffer(e)){let i=this._binaryDecode(e);return o(i)}if(typeof e=="string"){const i=JSON.parse(e),[t,r,s,n,c]=i;return o({join_ref:t,ref:r,topic:s,event:n,payload:c})}return o({})}_binaryDecode(e){const o=new DataView(e),i=o.getUint8(0),t=new TextDecoder;switch(i){case this.KINDS.userBroadcast:return this._decodeUserBroadcast(e,o,t)}}_decodeUserBroadcast(e,o,i){const t=o.getUint8(1),r=o.getUint8(2),s=o.getUint8(3),n=o.getUint8(4);let c=this.HEADER_LENGTH+4;const d=i.decode(e.slice(c,c+t));c=c+t;const u=i.decode(e.slice(c,c+r));c=c+r;const m=i.decode(e.slice(c,c+s));c=c+s;const g=e.slice(c,e.byteLength),p=n===this.JSON_ENCODING?JSON.parse(i.decode(g)):g,f={type:this.BROADCAST_EVENT,event:u,payload:p};return s>0&&(f.meta=JSON.parse(m)),{join_ref:null,ref:null,topic:d,event:this.BROADCAST_EVENT,payload:f}}_isArrayBuffer(e){var o;return e instanceof ArrayBuffer||((o=e==null?void 0:e.constructor)===null||o===void 0?void 0:o.name)==="ArrayBuffer"}_pick(e,o){return!e||typeof e!="object"?{}:Object.fromEntries(Object.entries(e).filter(([i])=>o.includes(i)))}}var fe;(function(a){a.abstime="abstime",a.bool="bool",a.date="date",a.daterange="daterange",a.float4="float4",a.float8="float8",a.int2="int2",a.int4="int4",a.int4range="int4range",a.int8="int8",a.int8range="int8range",a.json="json",a.jsonb="jsonb",a.money="money",a.numeric="numeric",a.oid="oid",a.reltime="reltime",a.text="text",a.time="time",a.timestamp="timestamp",a.timestamptz="timestamptz",a.timetz="timetz",a.tsrange="tsrange",a.tstzrange="tstzrange"})(fe||(fe={}));const Sm=(a,e,o={})=>{var i;const t=(i=o.skipTypes)!==null&&i!==void 0?i:[];return e?Object.keys(e).reduce((r,s)=>(r[s]=Qx(s,a,e,t),r),{}):{}},Qx=(a,e,o,i)=>{const t=e.find(n=>n.name===a),r=t==null?void 0:t.type,s=o[a];return r&&!i.includes(r)?Mf(r,s):Kc(s)},Mf=(a,e)=>{if(a.charAt(0)==="_"){const o=a.slice(1,a.length);return Xx(e,o)}switch(a){case fe.bool:return Kx(e);case fe.float4:case fe.float8:case fe.int2:case fe.int4:case fe.int8:case fe.numeric:case fe.oid:return Yx(e);case fe.json:case fe.jsonb:return Jx(e);case fe.timestamp:return Zx(e);case fe.abstime:case fe.date:case fe.daterange:case fe.int4range:case fe.int8range:case fe.money:case fe.reltime:case fe.text:case fe.time:case fe.timestamptz:case fe.timetz:case fe.tsrange:case fe.tstzrange:return Kc(e);default:return Kc(e)}},Kc=a=>a,Kx=a=>{switch(a){case"t":return!0;case"f":return!1;default:return a}},Yx=a=>{if(typeof a=="string"){const e=parseFloat(a);if(!Number.isNaN(e))return e}return a},Jx=a=>{if(typeof a=="string")try{return JSON.parse(a)}catch{return a}return a},Xx=(a,e)=>{if(typeof a!="string")return a;const o=a.length-1,i=a[o];if(a[0]==="{"&&i==="}"){let r;const s=a.slice(1,o);try{r=JSON.parse("["+s+"]")}catch{r=s?s.split(","):[]}return r.map(n=>Mf(e,n))}return a},Zx=a=>typeof a=="string"?a.replace(" ","T"):a,Nf=a=>{const e=new URL(a);return e.protocol=e.protocol.replace(/^ws/i,"http"),e.pathname=e.pathname.replace(/\/+$/,"").replace(/\/socket\/websocket$/i,"").replace(/\/socket$/i,"").replace(/\/websocket$/i,""),e.pathname===""||e.pathname==="/"?e.pathname="/api/broadcast":e.pathname=e.pathname+"/api/broadcast",e.href};var ht=a=>typeof a=="function"?a:function(){return a},ew=typeof self<"u"?self:null,di=typeof window<"u"?window:null,Da=ew||di||globalThis,aw="2.0.0",ow=1e4,iw=1e3,Oa={connecting:0,open:1,closing:2,closed:3},He={closed:"closed",errored:"errored",joined:"joined",joining:"joining",leaving:"leaving"},Ha={close:"phx_close",error:"phx_error",join:"phx_join",reply:"phx_reply",leave:"phx_leave"},Yc={longpoll:"longpoll",websocket:"websocket"},tw={complete:4},Jc="base64url.bearer.phx.",Cr=class{constructor(a,e,o,i){this.channel=a,this.event=e,this.payload=o||function(){return{}},this.receivedResp=null,this.timeout=i,this.timeoutTimer=null,this.recHo
vendor: 4,960 bytes, line 10
10oks=[],this.sent=!1,this.ref=void 0}resend(a){this.timeout=a,this.reset(),this.send()}send(){this.hasReceived("timeout")||(this.startTimeout(),this.sent=!0,this.channel.socket.push({topic:this.channel.topic,event:this.event,payload:this.payload(),ref:this.ref,join_ref:this.channel.joinRef()}))}receive(a,e){return this.hasReceived(a)&&e(this.receivedResp.response),this.recHooks.push({status:a,callback:e}),this}reset(){this.cancelRefEvent(),this.ref=null,this.refEvent=null,this.receivedResp=null,this.sent=!1}destroy(){this.cancelRefEvent(),this.cancelTimeout()}matchReceive({status:a,response:e,_ref:o}){this.recHooks.filter(i=>i.status===a).forEach(i=>i.callback(e))}cancelRefEvent(){this.refEvent&&this.channel.off(this.refEvent)}cancelTimeout(){clearTimeout(this.timeoutTimer),this.timeoutTimer=null}startTimeout(){this.timeoutTimer&&this.cancelTimeout(),this.ref=this.channel.socket.makeRef(),this.refEvent=this.channel.replyEventName(this.ref),this.channel.on(this.refEvent,a=>{this.cancelRefEvent(),this.cancelTimeout(),this.receivedResp=a,this.matchReceive(a)}),this.timeoutTimer=setTimeout(()=>{this.trigger("timeout",{})},this.timeout)}hasReceived(a){return this.receivedResp&&this.receivedResp.status===a}trigger(a,e){this.channel.trigger(this.refEvent,{status:a,response:e})}},zf=class{constructor(a,e){this.callback=a,this.timerCalc=e,this.timer=void 0,this.tries=0}reset(){this.tries=0,clearTimeout(this.timer)}scheduleTimeout(){clearTimeout(this.timer),this.timer=setTimeout(()=>{this.tries=this.tries+1,this.callback()},this.timerCalc(this.tries+1))}},rw=class{constructor(a,e,o){this.state=He.closed,this.topic=a,this.params=ht(e||{}),this.socket=o,this.bindings=[],this.bindingRef=0,this.timeout=this.socket.timeout,this.joinedOnce=!1,this.joinPush=new Cr(this,Ha.join,this.params,this.timeout),this.pushBuffer=[],this.stateChangeRefs=[],this.rejoinTimer=new zf(()=>{this.socket.isConnected()&&this.rejoin()},this.socket.rejoinAfterMs),this.stateChangeRefs.push(this.socket.onError(()=>this.rejoinTimer.reset())),this.stateChangeRefs.push(this.socket.onOpen(()=>{this.rejoinTimer.reset(),this.isErrored()&&this.rejoin()})),this.joinPush.receive("ok",()=>{this.state=He.joined,this.rejoinTimer.reset(),this.pushBuffer.forEach(i=>i.send()),this.pushBuffer=[]}),this.joinPush.receive("error",i=>{this.state=He.errored,this.socket.hasLogger()&&this.socket.log("channel",`error ${this.topic}`,i),this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.onClose(()=>{this.rejoinTimer.reset(),this.socket.hasLogger()&&this.socket.log("channel",`close ${this.topic}`),this.state=He.closed,this.socket.remove(this)}),this.onError(i=>{this.socket.hasLogger()&&this.socket.log("channel",`error ${this.topic}`,i),this.isJoining()&&this.joinPush.reset(),this.state=He.errored,this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.joinPush.receive("timeout",()=>{this.socket.hasLogger()&&this.socket.log("channel",`timeout ${this.topic}`,this.joinPush.timeout),new Cr(this,Ha.leave,ht({}),this.timeout).send(),this.state=He.errored,this.joinPush.reset(),this.socket.isConnected()&&this.rejoinTimer.scheduleTimeout()}),this.on(Ha.reply,(i,t)=>{this.trigger(this.replyEventName(t),i)})}join(a=this.timeout){if(this.joinedOnce)throw new Error("tried to join multiple times. 'join' can only be called a single time per channel instance");return this.timeout=a,this.joinedOnce=!0,this.rejoin(),this.joinPush}teardown(){this.pushBuffer.forEach(a=>a.destroy()),this.pushBuffer=[],this.rejoinTimer.reset(),this.joinPush.destroy(),this.state=He.closed,this.bindings=[]}onClose(a){this.on(Ha.close,a)}onError(a){return this.on(Ha.error,e=>a(e))}on(a,e){let o=this.bindingRef++;return this.bindings.push({event:a,ref:o,callback:e}),o}off(a,e){this.bindings=this.bindings.filter(o=>!(o.event===a&&(typeof e>"u"||e===o.ref)))}canPush(){return this.socket.isConnected()&&this.isJoined()}push(a,e,o=this.timeout){if(e=e||{},!this.joinedOnce)throw new Error(`tried to push '${a}' to '${this.topic}' before joining. Use channel.join() before pushing events`);let i=new Cr(this,a,function(){return e},o);return this.canPush()?i.send():(i.startTimeout(),this.pushBuffer.push(i)),i}leave(a=this.timeout){this.rejoinTimer.reset(),this.joinPush.cancelTimeout(),this.state=He.leaving;let e=()=>{this.socket.hasLogger()&&this.socket.log("channel",`leave ${this.topic}`),this.trigger(Ha.close,"leave")},o=new Cr(this,Ha.leave,ht({}),a);return o.receive("ok",()=>e()).receive("timeout",()=>e()),o.send(),this.canPush()||o.trigger("ok",{}),o}onMessage(a,e,o){return e}filterBindings(a,e,o){return!0}isMember(a,e,o,i){return this.topic!==a?!1:i&&i!==this.joinRef()?(this.socket.hasLogger()&&this.socket.log("channel","dropping outdated message",{topic:a,event:e,payload:o,joinRef:i}),!1):!0}joinRef(){return this.joinPush.ref}rejoin(a=this.timeout){this.isLeaving()||(this.socket.leaveOpenTopic(this.topic),this.state=He.joining,this.joinPush.resend(a))}
10trigger(a,e,o,i){let t=this.onMessage(a,e,o,i);if(e&&!t)throw new Error("channel onMessage callbacks must return the payload, modified or unmodified");let r=this.bindings.filter(s=>s.event===a&&this.filterBindings(s,e,o));for(let s=0;s<r.length;s++)r[s].callback(t,o,i||this.joinRef())}replyEventName(a){return`chan_reply_${a}`}isClosed(){return this.state===He.closed}isErrored(){return this.state===He.errored}isJoined(){return this.state===He.joined}isJoining(){return this.state===He.joining}isLeaving(){return this.state===He.leaving}},us=class{static request(a,e,o,i,t,r,s){if(Da.XDomainRequest){let n=new Da.XDomainRequest;return this.xdomainRequest(n,a,e,i,t,r,s)}else if(Da.XMLHttpRequest){let n=new Da.XMLHttpRequest;return this.xhrRequest(n,a,e,o,i,t,r,s)}else{if(Da.fetch&&Da.AbortController)return this.fetchRequest(a,e,o,i,t,r,s);throw new Error("No suitable XMLHttpRequest implementation found")}}static fetchRequest(a,e,o,i,t,r,s){let n={method:a,headers:o,body:i},c=null;return t&&(c=new AbortController,setTimeout(()=>c.abort(),t),n.signal=c.signal),Da.fetch(e,n).then(d=>d.text()).then(d=>this.parseJSON(d)).then(d=>s&&s(d)).catch(d=>{d.name==="AbortError"&&r?r():s&&s(null)}),c}static xdomainRequest(a,e,o,i,t,r,s){return a.timeout=t,a.open(e,o),a.onload=()=>{let n=this.parseJSON(a.responseText);s&&s(n)},r&&(a.ontimeout=r),a.onprogress=()=>{},a.send(i),a}static xhrRequest(a,e,o,i,t,r,s,n){a.open(e,o,!0),a.timeout=r;for(let[c,d]of Object.entries(i))a.setRequestHeader(c,d);return a.onerror=()=>n&&n(null),a.onreadystatechange=()=>{if(a.readyState===tw.complete&&n){let c=this.parseJSON(a.responseText);n(c)}},s&&(a.ontimeout=s),a.send(t),a}static parseJSON(a){if(!a||a==="")return null;try{return JSON.parse(a)}catch{return console&&console.log("failed to parse JSON response",a),null}}static serialize(a,e){let o=[];for(var i in a){if(!Object.prototype.hasOwnProperty.call(a,i))continue;let t=e?`${e}[${i}]`:i,r=a[i];typeof r=="object"?o.push(this.serialize(r,t)):o.push(encodeURIComponent(t)+"="+encodeURIComponent(r))}return o.join("&")}static appendParams(a,e){if(Object.keys(e).length===0)return a;let o=a.match(/\?/)?"&":"?";return`${a}${o}${this.serialize(e)}`}},sw=a=>{let e="",o=new Uint8Array(a),i=o.byteLength;for(let t=0;t<i;t++)e+=String.fromCharCode(o[t]);return btoa(e)},ai=class{constructor(a,e){e&&e.length===2&&e[1].startsWith(Jc)&&(this.authToken=atob(e[1].slice(Jc.length))),this.endPoint=null,this.token=null,this.skipHeartbeat=!0,this.reqs=new Set,this.awaitingBatchAck=!1,this.currentBatch=null,this.currentBatchTimer=null,this.batchBuffer=[],this.onopen=function(){},this.onerror=function(){},this.onmessage=function(){},this.onclose=function(){},this.pollEndpoint=this.normalizeEndpoint(a),this.readyState=Oa.connecting,setTimeout(()=>this.poll(),0)}normalizeEndpoint(a){return a.replace("ws://","http://").replace("wss://","https://").replace(new RegExp("(.*)/"+Yc.websocket),"$1/"+Yc.longpoll)}endpointURL(){return us.appendParams(this.pollEndpoint,{token:this.token})}closeAndRetry(a,e,o){this.close(a,e,o),this.readyState=Oa.connecting}ontimeout(){this.onerror("timeout"),this.closeAndRetry(1005,"timeout",!1)}isActive(){return this.readyState===Oa.open||this.readyState===Oa.connecting}poll(){const a={Accept:"application/json"};this.authToken&&(a["X-Phoenix-AuthToken"]=this.authToken),this.ajax("GET",a,null,()=>this.ontimeout(),e=>{if(e){var{status:o,token:i,messages:t}=e;if(o===410&&this.token!==null){this.onerror(410),this.closeAndRetry(3410,"session_gone",!1);return}this.token=i}else o=0;switch(o){case 200:t.forEach(r=>{setTimeout(()=>this.onmessage({data:r}),0)}),this.poll();break;case 204:this.poll();break;case 410:this.readyState=Oa.open,this.onopen({}),this.poll();break;
10case 403:this.onerror(403),this.close(1008,"forbidden",!1);break;case 0:case 500:this.onerror(500),this.closeAndRetry(1011,"internal server error",500);break;default:throw new Error(`unhandled poll status ${o}`)}})}send(a){typeof a!="string"&&(a=sw(a)),this.currentBatch?this.currentBatch.push(a):this.awaitingBatchAck?this.batchBuffer.push(a):(this.currentBatch=[a],this.currentBatchTimer=setTimeout(()=>{this.batchSend(this.currentBatch),this.currentBatch=null},0))}batchSend(a){this.awaitingBatchAck=!0,this.ajax("POST",{"Content-Type":"application/x-ndjson"},a.join(` 11`),()=>this.onerror("timeout"),e=>{this.awaitingBatchAck=!1,!e||e.status!==200?(this.onerror(e&&e.status),this.closeAndRetry(1011,"internal server error",!1)):this.batchBuffer.length>0&&(this.batchSend(this.batchBuffer),this.batchBuffer=[])})}close(a,e,o){for(let t of this.reqs)t.abort();this.readyState=Oa.closed;let i=Object.assign({code:1e3,reason:void 0,wasClean:!0},{code:a,reason:e,wasClean:o});this.batchBuffer=[],clearTimeout(this.currentBatchTimer),this.currentBatchTimer=null,typeof CloseEvent<"u"?this.onclose(new CloseEvent("close",i)):this.onclose(i)}ajax(a,e,o,i,t){let r,s=()=>{this.reqs.delete(r),i()};r=us.request(a,this.endpointURL(),e,o,this.timeout,s,n=>{this.reqs.delete(r),this.isActive()&&t(n)}),this.reqs.add(r)}},nw=class nt{constructor(e,o={}){let i=o.events||{state:"presence_state",diff:"presence_diff"};this.state={},this.pendingDiffs=[],this.channel=e,this.joinRef=null,this.caller={onJoin:function(){},onLeave:function(){},onSync:function(){}},this.channel.on(i.state,t=>{let{onJoin:r,onLeave:s,onSync:n}=this.caller;this.joinRef=this.channel.joinRef(),this.state=nt.syncState(this.state,t,r,s),this.pendingDiffs.forEach(c=>{this.state=nt.syncDiff(this.state,c,r,s)}),this.pendingDiffs=[],n()}),this.channel.on(i.diff,t=>{let{onJoin:r,onLeave:s,onSync:n}=this.caller;this.inPendingSyncState()?this.pendingDiffs.push(t):(this.state=nt.syncDiff(this.state,t,r,s),n())})}onJoin(e){this.caller.onJoin=e}onLeave(e){this.caller.onLeave=e}onSync(e){this.caller.onSync=e}list(e){return nt.list(this.state,e)}inPendingSyncState(){return!this.joinRef||this.joinRef!==this.channel.joinRef()}static syncState(e,o,i,t){let r=this.clone(e),s={},n={};return this.map(r,(c,d)=>{o[c]||(n[c]=d)}),this.map(o,(c,d)=>{let u=r[c];if(u){let m=d.metas.map(v=>v.phx_ref),g=u.metas.map(v=>v.phx_ref),p=d.metas.filter(v=>g.indexOf(v.phx_ref)<0),f=u.metas.filter(v=>m.indexOf(v.phx_ref)<0);p.length>0&&(s[c]=d,s[c].metas=p),f.length>0&&(n[c]=this.clone(u),n[c].metas=f)}else s[c]=d}),this.syncDiff(r,{joins:s,leaves:n},i,t)}static syncDiff(e,o,i,t){let{joins:r,leaves:s}=this.clone(o);return i||(i=function(){}),t||(t=function(){}),this.map(r,(n,c)=>{let d=e[n];if(e[n]=this.clone(c),d){let u=e[n].metas.map(g=>g.phx_ref),m=d.metas.filter(g=>u.indexOf(g.phx_ref)<0);e[n].metas.unshift(...m)}i(n,d,c)}),this.map(s,(n,c)=>{let d=e[n];if(!d)return;let u=c.metas.map(m=>m.phx_ref);d.metas=d.metas.filter(m=>u.indexOf(m.phx_ref)<0),t(n,d,c),d.metas.length===0&&delete e[n]}),e}static list(e,o){return o||(o=function(i,t){return t}),this.map(e,(i,t)=>o(i,t))}static map(e,o){return Object.getOwnPropertyNames(e).map(i=>o(i,e[i]))}static clone(e){return JSON.parse(JSON.stringify(e))}},Tr={HEADER_LENGTH:1,META_LENGTH:4,KINDS:{push:0,reply:1,broadcast:2},encode(a,e){if(a.payload.constructor===ArrayBuffer)return e(this.binaryEncode(a));{let o=[a.join_ref,a.ref,a.topic,a.event,a.payload];return e(JSON.stringify(o))}},decode(a,e){if(a.constructor===ArrayBuffer)return e(this.binaryDecode(a));{let[o,i,t,r,s]=JSON.parse(a);return e({join_ref:o,ref:i,topic:t,event:r,payload:s})}},binaryEncode(a){let{join_ref:e,ref:o,event:i,topic:t,payload:r}=a,s=this.META_LENGTH+e.length+o.length+t.length+i.length,n=new ArrayBuffer(this.HEADER_LENGTH+s),c=new DataView(n),d=0;c.setUint8(d++,this.KINDS.push),c.setUint8(d++,e.length),c.setUint8(d++,o.length),c.setUint8(d++,t.length),c.setUint8(d++,i.length),Array.from(e,m=>c.setUint8(d++,m.charCodeAt(0))),Array.from(o,m=>c.setUint8(d++,m.charCodeAt(0))),Array.from(t,m=>c.setUint8(d++,m.charCodeAt(0))),Array.from(i,m=>c.setUint8(d++,m.charCodeAt(0)));var u=new Uint8Array(n.byteLength+r.byteLength);return u.set(new Uint8Array(n),0),u.set(new Uint8Array(r),n.byteLength),u.buffer},binaryDecode(a){let e=new DataView(a),o=e.getUint8(0),i=new TextDecoder;switch(o){case this.KINDS.push:return this.decodePush(a,e,i);case this.KINDS.reply:return this.decodeReply(a,e,i);case this.KINDS.broadcast:return this.decodeBroadcast(a,e,i)}},decodePush(a,e,o){let i=e.getUint8(1),t=e.getUint8(2),r=e.getUint8(3),s=this.HEADER_LENGTH+this.META_LENGTH-1,n=o.decode(a.slice(s,s+i));s=s+i;let c=o.decode(a.slice(s,s+t));s=s+t;let d=o.decode(a.slice(s,s+r));s=s+r;let u=a.slice(s,a.byteLength);return{join_ref:n,ref:null,topic:c,event:d,payload:u}},decodeReply(a,e,o){let i=e.getUint8(1),t=e.getUint8(2),r=e.getUint8(3),s=e.getUint8(4),n=this.HEADER_LENGTH+this.META_LENGTH,c=o.decode(a.slice(n,n+i));n=n+i;let d=o.decode(a.slice(n,n+t));n=n+t;let u=o.decode(a.slice(n,n+r));n=n+r;let m=o.decode(a.slice(n,n+s));n=n+s;let g=a.slice(n,a.byteLength),p={status:m,response:g};return{join_ref:c,ref:d,topic:u,event:Ha.reply,payload:p}},decodeBroadcast(a,e,o){let i=e.getUint8(1),t=e.getUint8(2),r=this.HEADER_LENGTH+2,s=o.decode(a.slice(r,r+i));r=r+i;let n=o.decode(a.slice(r,r+t));r=r+t;let c=a.slice(r,a.byteLength);return{join_ref:null,ref:null,topic:s,event:n,payload:c}}},cw=class{constructor(a,e={}){this.stateChangeCallbacks={open:[],close:[],error:[],message:[]},this.channels=[],this.sendBuffer=[],this.ref=0,this.fallbackRef=null,this.timeout=e.timeout||ow,this.transport=e.transport||Da.WebSocket||ai,this.conn=void 0,this.primaryPassedHealthCheck=!1,this.longPollFallbackMs=e.longPollFallbackMs,this.fallbackTimer=null;let o=null;try{o=Da&&Da.sessionStorage}catch{}this.sessionStore=e.sessionStorage||o,this.establishedConnections=0,this.defaultEncoder=Tr.encode.bind(Tr),this.defaultDecoder=Tr.decode.bind(Tr),this.closeWasClean=!0,this.disconnecting=!1,this.binaryType=e.binaryType||"arraybuffer",this.connectClock=1,this.pageHidden=!1,this.encode=void 0,this.decode=void 0,this.transport!==ai?(this.encode=e.encode||this.defaultEncoder,this.decode=e.decode||this.defaultDecoder):(this.encode=this.defaultEncoder,this.decode=this.defaultDecoder);let i=null;di&&di.addEventListener&&(di.addEventListener("pagehide",t=>{this.conn&&(this.disconnect(),i=this.connectClock)}),di.addEventListener("pageshow",t=>{i===this.connectClock&&(i=null,this.connect())}),di.addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"?this.pageHidden=!0:(this.pageHidden=!1,!this.isConnected()&&!this.closeWasClean&&this.teardown(()=>this.connect()))})),this.heartbeatIntervalMs=e.heartbeatIntervalMs||3e4,this.autoSendHeartbeat=e.autoSendHeartbeat??!0,this.heartbeatCallback=e.heartbeatCallback??(()=>{}),this.rejoinAfterMs=t=>e.rejoinAfterMs?e.rejoinAfterMs(t):[1e3,2e3,5e3][t-1]||1e4,this.reconnectAfterMs=t=>e.reconnectAfterMs?e.reconnectAfterMs(t):[10,50,100,150,200,250,500,1e3,2e3][t-1]||5e3,this.logger=e.logger||null,!this.logger&&e.debug&&(this.logger=(t,r,s)=>{console.log(`${t}: ${r}`,s)}),this.longpollerTimeout=e.longpollerTimeout||2e4,this.params=ht(e.params||{}),this.endPoint=`${a}/${Yc.websocket}`,this.vsn=e.vsn||aw,this.heartbeatTimeoutTimer=null,this.heartbeatTimer=null,this.heartbeatSentAt=null,this.pendingHeartbeatRef=null,this.reconnectTimer=new zf(()=>{if(this.pageHidden){this.log("Not reconnecting as page is hidden!"),this.teardown();return}this.teardown(async()=>{e.beforeReconnect&&await e.beforeReconnect(),this.connect()})},this.reconnectAfterMs),this.authToken=e.authToken}getLongPollTransport(){return ai}replaceTransport(a){this.connectClock++,this.closeWasClean=!0,clearTimeout(this.fallbackTimer),this.reconnectTimer.reset(),this.conn&&(this.conn.
vendor: 4,363 bytes, line 11
11close(),this.conn=null),this.transport=a}protocol(){return location.protocol.match(/^https/)?"wss":"ws"}endPointURL(){let a=us.appendParams(us.appendParams(this.endPoint,this.params()),{vsn:this.vsn});return a.charAt(0)!=="/"?a:a.charAt(1)==="/"?`${this.protocol()}:${a}`:`${this.protocol()}://${location.host}${a}`}disconnect(a,e,o){this.connectClock++,this.disconnecting=!0,this.closeWasClean=!0,clearTimeout(this.fallbackTimer),this.reconnectTimer.reset(),this.teardown(()=>{this.disconnecting=!1,a&&a()},e,o)}connect(a){a&&(console&&console.log("passing params to connect is deprecated. Instead pass :params to the Socket constructor"),this.params=ht(a)),!(this.conn&&!this.disconnecting)&&(this.longPollFallbackMs&&this.transport!==ai?this.connectWithFallback(ai,this.longPollFallbackMs):this.transportConnect())}log(a,e,o){this.logger&&this.logger(a,e,o)}hasLogger(){return this.logger!==null}onOpen(a){let e=this.makeRef();return this.stateChangeCallbacks.open.push([e,a]),e}onClose(a){let e=this.makeRef();return this.stateChangeCallbacks.close.push([e,a]),e}onError(a){let e=this.makeRef();return this.stateChangeCallbacks.error.push([e,a]),e}onMessage(a){let e=this.makeRef();return this.stateChangeCallbacks.message.push([e,a]),e}onHeartbeat(a){this.heartbeatCallback=a}ping(a){if(!this.isConnected())return!1;let e=this.makeRef(),o=Date.now();this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:e});let i=this.onMessage(t=>{t.ref===e&&(this.off([i]),a(Date.now()-o))});return!0}transportName(a){switch(a){case ai:return"LongPoll";default:return a.name}}transportConnect(){this.connectClock++,this.closeWasClean=!1;let a;this.authToken&&(a=["phoenix",`${Jc}${btoa(this.authToken).replace(/=/g,"")}`]),this.conn=new this.transport(this.endPointURL(),a),this.conn.binaryType=this.binaryType,this.conn.timeout=this.longpollerTimeout,this.conn.onopen=()=>this.onConnOpen(),this.conn.onerror=e=>this.onConnError(e),this.conn.onmessage=e=>this.onConnMessage(e),this.conn.onclose=e=>this.onConnClose(e)}getSession(a){return this.sessionStore&&this.sessionStore.getItem(a)}storeSession(a,e){this.sessionStore&&this.sessionStore.setItem(a,e)}connectWithFallback(a,e=2500){clearTimeout(this.fallbackTimer);let o=!1,i=!0,t,r,s=this.transportName(a),n=c=>{this.log("transport",`falling back to ${s}...`,c),this.off([t,r]),i=!1,this.replaceTransport(a),this.transportConnect()};if(this.getSession(`phx:fallback:${s}`))return n("memorized");this.fallbackTimer=setTimeout(n,e),r=this.onError(c=>{this.log("transport","error",c),i&&!o&&(clearTimeout(this.fallbackTimer),n(c))}),this.fallbackRef&&this.off([this.fallbackRef]),this.fallbackRef=this.onOpen(()=>{if(o=!0,!i){let c=this.transportName(a);return this.primaryPassedHealthCheck||this.storeSession(`phx:fallback:${c}`,"true"),this.log("transport",`established ${c} fallback`)}clearTimeout(this.fallbackTimer),this.fallbackTimer=setTimeout(n,e),this.ping(c=>{this.log("transport","connected to primary after",c),this.primaryPassedHealthCheck=!0,clearTimeout(this.fallbackTimer)})}),this.transportConnect()}clearHeartbeats(){clearTimeout(this.heartbeatTimer),clearTimeout(this.heartbeatTimeoutTimer)}onConnOpen(){this.hasLogger()&&this.log("transport",`connected to ${this.endPointURL()}`),this.closeWasClean=!1,this.disconnecting=!1,this.establishedConnections++,this.flushSendBuffer(),this.reconnectTimer.reset(),this.autoSendHeartbeat&&this.resetHeartbeat(),this.triggerStateCallbacks("open")}heartbeatTimeout(){if(this.pendingHeartbeatRef){this.pendingHeartbeatRef=null,this.heartbeatSentAt=null,this.hasLogger()&&this.log("transport","heartbeat timeout. Attempting to re-establish connection");try{this.heartbeatCallback("timeout")}catch(a){this.log("error","error in heartbeat callback",a)}this.triggerChanError(new Error("heartbeat timeout")),this.closeWasClean=!1,this.teardown(()=>this.reconnectTimer.scheduleTimeout(),iw,"heartbeat timeout")}}resetHeartbeat(){this.conn&&this.conn.skipHeartbeat||(this.pendingHeartbeatRef=null,this.clearHeartbeats(),this.heartbeatTimer=setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs))}teardown(a,e,o){if(!this.conn)return a&&a();const i=this.conn;this.waitForBufferDone(i,()=>{e?i.close(e,o||""):i.close(),this.waitForSocketClosed(i,()=>{this.conn===i&&(this.conn.onopen=function(){},this.conn.onerror=function(){},this.conn.onmessage=function(){}
11,this.conn.onclose=function(){},this.conn=null),a&&a()})})}waitForBufferDone(a,e,o=1){if(o===5||!a.bufferedAmount){e();return}setTimeout(()=>{this.waitForBufferDone(a,e,o+1)},150*o)}waitForSocketClosed(a,e,o=1){if(o===5||a.readyState===Oa.closed){e();return}setTimeout(()=>{this.waitForSocketClosed(a,e,o+1)},150*o)}onConnClose(a){this.conn&&(this.conn.onclose=()=>{}),this.hasLogger()&&this.log("transport","close",a),this.triggerChanError(a),this.clearHeartbeats(),this.closeWasClean||this.reconnectTimer.scheduleTimeout(),this.triggerStateCallbacks("close",a)}onConnError(a){this.hasLogger()&&this.log("transport","error",a);let e=this.transport,o=this.establishedConnections;this.triggerStateCallbacks("error",a,e,o),(e===this.transport||o>0)&&this.triggerChanError(a)}triggerChanError(a){this.channels.forEach(e=>{e.isErrored()||e.isLeaving()||e.isClosed()||e.trigger(Ha.error,a)})}connectionState(){switch(this.conn&&this.conn.readyState){case Oa.connecting:return"connecting";case Oa.open:return"open";case Oa.closing:return"closing";default:return"closed"}}isConnected(){return this.connectionState()==="open"}remove(a){this.off(a.stateChangeRefs),this.channels=this.channels.filter(e=>e!==a)}off(a){for(let e in this.stateChangeCallbacks)this.stateChangeCallbacks[e]=this.stateChangeCallbacks[e].filter(([o])=>a.indexOf(o)===-1)}channel(a,e={}){let o=new rw(a,e,this);return this.channels.push(o),o}push(a){if(this.hasLogger()){let{topic:e,event:o,payload:i,ref:t,join_ref:r}=a;this.log("push",`${e} ${o} (${r}, ${t})`,i)}this.isConnected()?this.encode(a,e=>this.conn.send(e)):this.sendBuffer.push(()=>this.encode(a,e=>this.conn.send(e)))}makeRef(){let a=this.ref+1;return a===this.ref?this.ref=0:this.ref=a,this.ref.toString()}sendHeartbeat(){if(!this.isConnected()){try{this.heartbeatCallback("disconnected")}catch(a){this.log("error","error in heartbeat callback",a)}return}if(this.pendingHeartbeatRef){this.heartbeatTimeout();return}this.pendingHeartbeatRef=this.makeRef(),this.heartbeatSentAt=Date.now(),this.push({topic:"phoenix",event:"heartbeat",payload:{},ref:this.pendingHeartbeatRef});try{this.heartbeatCallback("sent")}catch(a){this.log("error","error in heartbeat callback",a)}this.heartbeatTimeoutTimer=setTimeout(()=>this.heartbeatTimeout(),this.heartbeatIntervalMs)}flushSendBuffer(){this.isConnected()&&this.sendBuffer.length>0&&(this.sendBuffer.forEach(a=>a()),this.sendBuffer=[])}onConnMessage(a){this.decode(a.data,e=>{let{topic:o,event:i,payload:t,ref:r,join_ref:s}=e;if(r&&r===this.pendingHeartbeatRef){const n=this.heartbeatSentAt?Date.now()-this.heartbeatSentAt:void 0;this.clearHeartbeats();try{this.heartbeatCallback(t.status==="ok"?"ok":"error",n)}catch(c){this.log("error","error in heartbeat callback",c)}this.pendingHeartbeatRef=null,this.heartbeatSentAt=null,this.autoSendHeartbeat&&(this.heartbeatTimer=setTimeout(()=>this.sendHeartbeat(),this.heartbeatIntervalMs))}this.hasLogger()&&this.log("receive",`${t.status||""} ${o} ${i} ${r&&"("+r+")"||""}`.trim(),t);for(let n=0;n<this.channels.length;n++){const c=this.channels[n];c.isMember(o,i,t,s)&&c.trigger(i,t,r,s)}this.triggerStateCallbacks("message",e)})}triggerStateCallbacks(a,...e){try{this.stateChangeCallbacks[a].forEach(([o,i])=>{try{i(...e)}catch(t){this.log("error",`error in ${a} callback`,t)}})}catch(o){this.log("error",`error triggering ${a} callbacks`,o)}}leaveOpenTopic(a){let e=this.channels.find(o=>o.topic===a&&(o.isJoined()||o.isJoining()));e&&(this.hasLogger()&&this.log("transport",`leaving duplicate topic "${a}"`),e.leave())}};class ft{constructor(e,o){const i=lw(o);this.presence=new nw(e.getChannel(),i),this.presence.onJoin((t,r,s)=>{const n=ft.onJoinPayload(t,r,s);e.getChannel().trigger("presence",n)}),this.presence.onLeave((t,r,s)=>{const n=ft.onLeavePayload(t,r,s);e.getChannel().trigger("presence",n)}),this.presence.onSync(()=>{e.getChannel().trigger("presence",{event:"sync"})})}get state(){return ft.transformState(this.presence.state)}static transformState(e){return e=dw(e),Object.getOwnPropertyNames(e).reduce((o,i)=>{const t=e[i];return o[i]=Kr(t),o},{})}static onJoinPayload(e,o,i){const t=Em(o),r=Kr(i);return{event:"join",key:e,currentPresences:t,newPresences:r}}static onLeavePayload(e,o,i){const t=Em(o),r=Kr(i);return{event:"leave",key:e,currentPresences:t,leftPresences:r}}}function Kr(a){return a.metas.map(e=>(e.presence_ref=e.phx_ref,delete e.phx_ref,delete e.phx_ref_prev,e))}function dw(a){return JSON.parse(JSON.stringify(a))}function lw(a){return(a==null?void 0:a.events)&&{events:a.events}}function Em(a){return a!=null&&a.metas?Kr(a):[]}var Cm;(function(a){a.SYNC="sync",a.JOIN="join",a.LEAVE="leave"})(Cm||(Cm={}));class uw{get state(){return this.presenceAdapter.state}constructor(e,o){this.channel=e,this.presenceAdapter=new ft(this.channel.channelAdapter,o)}}function mw(a){if(a instanceof Error)return a;
11if(typeof a=="string")return new Error(a);if(a&&typeof a=="object"){const e=a;if(typeof e.code=="number"){const o=typeof e.reason=="string"&&e.reason?` (${e.reason})`:"";return new Error(`socket closed: ${e.code}${o}`,{cause:a})}return new Error("channel error: transport failure",{cause:a})}return new Error("channel error: connection lost")}class pw{constructor(e,o,i){const t=gw(i);this.channel=e.getSocket().channel(o,t),this.socket=e}get state(){return this.channel.state}set state(e){this.channel.state=e}get joinedOnce(){return this.channel.joinedOnce}get joinPush(){return this.channel.joinPush}get rejoinTimer(){return this.channel.rejoinTimer}on(e,o){return this.channel.on(e,o)}off(e,o){this.channel.off(e,o)}subscribe(e){return this.channel.join(e)}unsubscribe(e){return this.channel.leave(e)}teardown(){this.channel.teardown()}onClose(e){this.channel.onClose(e)}onError(e){return this.channel.onError(e)}push(e,o,i){let t;try{t=this.channel.push(e,o,i)}catch{throw new Error(`tried to push '${e}' to '${this.channel.topic}' before joining. Use channel.subscribe() before pushing events`)}if(this.channel.pushBuffer.length>Hx){const r=this.channel.pushBuffer.shift();r.cancelTimeout(),this.socket.log("channel",`discarded push due to buffer overflow: ${r.event}`,r.payload())}return t}updateJoinPayload(e){const o=this.channel.joinPush.payload();this.channel.joinPush.payload=()=>Object.assign(Object.assign({},o),e)}canPush(){return this.socket.isConnected()&&this.state===uo.joined}isJoined(){return this.state===uo.joined}isJoining(){return this.state===uo.joining}isClosed(){return this.state===uo.closed}isLeaving(){return this.state===uo.leaving}updateFilterBindings(e){this.channel.filterBindings=e}updatePayloadTransform(e){this.channel.onMessage=e}getChannel(){return this.channel}}function gw(a){return{config:Object.assign({broadcast:{ack:!1,self:!1},presence:{key:"",enabled:!1},private:!1},a.config)}}var Tm;(function(a){a.ALL="*",a.INSERT="INSERT",a.UPDATE="UPDATE",a.DELETE="DELETE"})(Tm||(Tm={}));var mi;(function(a){a.BROADCAST="broadcast",a.PRESENCE="presence",a.POSTGRES_CHANGES="postgres_changes",a.SYSTEM="system"})(mi||(mi={}));var Wa;(function(a){a.SUBSCRIBED="SUBSCRIBED",a.TIMED_OUT="TIMED_OUT",a.CLOSED="CLOSED",a.CHANNEL_ERROR="CHANNEL_ERROR"})(Wa||(Wa={}));class vt{get state(){return this.channelAdapter.state}set state(e){this.channelAdapter.state=e}get joinedOnce(){return this.channelAdapter.joinedOnce}get timeout(){return this.socket.timeout}get joinPush(){return this.channelAdapter.joinPush}get rejoinTimer(){return this.channelAdapter.rejoinTimer}constructor(e,o={config:{}},i){var t,r;if(this.topic=e,this.params=o,this.socket=i,this.bindings={},this.subTopic=e.replace(/^realtime:/i,""),this.params.config=Object.assign({broadcast:{ack:!1,self:!1},presence:{key:"",enabled:!1},private:!1},o.config),this.channelAdapter=new pw(this.socket.socketAdapter,e,this.params),this.presence=new uw(this),this._onClose(()=>{this.socket._remove(this)}),this._updateFilterTransform(),this.broadcastEndpointURL=Nf(this.socket.socketAdapter.endPointURL()),this.private=this.params.config.private||!1,!this.private&&(!((r=(t=this.params.config)===null||t===void 0?void 0:t.broadcast)===null||r===void 0)&&r.replay))throw new Error(`tried to use replay on public channel '${this.topic}'. It must be a private channel.`)}subscribe(e,o=this.timeout){var i,t,r;if(this.socket.isConnected()||this.socket.connect(),this.channelAdapter.isClosed()){const{config:{broadcast:s,presence:n,private:c}}=this.params,d=(t=(i=this.bindings.postgres_changes)===null||i===void 0?void 0:i.map(p=>p.filter))!==null&&t!==void 0?t:[],u=!!this.bindings[mi.PRESENCE]&&this.bindings[mi.PRESENCE].length>0||((r=this.params.config.presence)===null||r===void 0?void 0:r.enabled)===!0,m={},g={broadcast:s,presence:Object.assign(Object.assign({},n),{enabled:u}),postgres_changes:d,private:c};this.socket.accessTokenValue&&(m.access_token=this.socket.accessTokenValue),this._onError(p=>{e==null||e(Wa.CHANNEL_ERROR,mw(p))}),this._onClose(()=>e==null?void 0:e(Wa.CLOSED)),this.updateJoinPayload(Object.assign({config:g},m)),this._updateFilterMessage(),this.channelAdapter.subscribe(o).receive("ok",async({postgres_changes:p})=>{if(this.socket._isManualToken()||this.socket.setAuth(),p===void 0){e==null||e(Wa.SUBSCRIBED);return}this._updatePostgresBindings(p,e)}).receive("error",p=>{this.state=uo.errored;const f=Object.values(p).join(", ")||"error";e==null||e(Wa.CHANNEL_ERROR,new Error(f,{cause:p}))}).receive("timeout",()=>{e==null||e(Wa.TIMED_OUT)})}return this}_updatePostgresBindings(e,o){var i;const t=this.bindings.postgres_changes,r=(i=t==null?void 0:t.length)!==null&&i!==void 0?i:0,s=[];for(let n=0;n<r;n++){const c=t[n],{filter:{event:d,schema:u,table:m,filter:g}}=c,p=e&&e[n];if(p&&p.event===d&&vt.isFilterValueEqual(p.schema,u)&&vt.isFilterValueEqual(p.table,m)&&vt.isFilterValueEqual(p.filter,g))s.push(Object.assign(Object.assign({},c),{id:p.id}));else{this.unsubscribe(),this.state=uo.errored,o==null||o(Wa.CHANNEL_ERROR,new Error("mismatch between server and client bindings for postgres changes"));return}}this.bindings.postgres_changes=s,this.state!=uo.errored&&o&&o(Wa.SUBSCRIBED)}presenceState(){return this.presence.state}async track(e,o={}){return await this.send({type:"presence",event:"track",payload:e},o.timeout||this.timeout)}async untrack(e={}){return await this.send({type:"presence",event:"untrack"},e)}on(e,o,i){const t=this.channelAdapter.isJoined()||this.channelAdapter.isJoining(),r=e===mi.PRESENCE||e===mi.POSTGRES_CHANGES;if(t&&r)throw this.socket.log("channel",`cannot add \`${e}\` callbacks for ${this.topic} after \`subscribe()\`.`),new Error(`cannot add \`${e}\` callbacks for ${this.topic} after \`subscribe()\`.`);return this._on(e,o,i)}async httpSend(e,o,i={}){var t;if(o==null)return Promise.reject(new Error("Payload is required for httpSend()"));const r=o instanceof ArrayBuffer||ArrayBuffer.isView(o),s={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":r?"application/octet-stream":"application/json"};this.socket.accessTokenValue&&(s.Authorization=`Bearer ${this.socket.accessTokenValue}`);const n=new URL(this.broadcastEndpointURL);n.pathname+=`/${encodeURIComponent(this.subTopic)}/events/${encodeURIComponent(e)}`,this.private&&n.searchParams.set("private","true");const c={method:"POST",headers:s,body:r?o:JSON.stringify(o)},d=await this._fetchWithTimeout(n.toString(),c,(t=i.timeout)!==null&&t!==void 0?t:this.timeout);if(d.status===202)return{success:!0};if(d.status===404)return Promise.reject(new Error("httpSend() requires Realtime server v2.97.0 or newer; the endpoint returned 404. Update your Supabase CLI to a recent version, or upgrade the Realtime server in your self-hosted setup. See https://github.com/supabase/supabase-js/blob/master/packages/core/realt
11ime-js/migrations/httpsend-server-version.md"));let u=d.statusText;try{const m=await d.json();u=m.error||m.message||u}catch{}return Promise.reject(new Error(u))}async send(e,o={}){var i,t;if(!this.channelAdapter.canPush()&&e.type==="broadcast"){console.warn("Realtime send() is automatically falling back to REST API. This behavior will be deprecated in the future. Please use httpSend() explicitly for REST delivery.");const{event:r,payload:s}=e,n={apikey:this.socket.apiKey?this.socket.apiKey:"","Content-Type":"application/json"};this.socket.accessTokenValue&&(n.Authorization=`Bearer ${this.socket.accessTokenValue}`);const c={method:"POST",headers:n,body:JSON.stringify({messages:[{topic:this.subTopic,event:r,payload:s,private:this.private}]})};try{const d=await this._fetchWithTimeout(this.broadcastEndpointURL,c,(i=o.timeout)!==null&&i!==void 0?i:this.timeout);return await((t=d.body)===null||t===void 0?void 0:t.cancel()),d.ok?"ok":"error"}catch(d){return d instanceof Error&&d.name==="AbortError"?"timed out":"error"}}else return new Promise(r=>{var s,n,c;const d=this.channelAdapter.push(e.type,e,o.timeout||this.timeout);e.type==="broadcast"&&!(!((c=(n=(s=this.params)===null||s===void 0?void 0:s.config)===null||n===void 0?void 0:n.broadcast)===null||c===void 0)&&c.ack)&&r("ok"),d.receive("ok",()=>r("ok")),d.receive("error",()=>r("error")),d.receive("timeout",()=>r("timed out"))})}updateJoinPayload(e){this.channelAdapter.updateJoinPayload(e)}async unsubscribe(e=this.timeout){return new Promise(o=>{this.channelAdapter.unsubscribe(e).receive("ok",()=>o("ok")).receive("timeout",()=>o("timed out")).receive("error",()=>o("error"))})}teardown(){this.channelAdapter.teardown()}async _fetchWithTimeout(e,o,i){const t=new AbortController,r=setTimeout(()=>t.abort(),i),s=await this.socket.fetch(e,Object.assign(Object.assign({},o),{signal:t.signal}));return clearTimeout(r),s}_on(e,o,i){const t=e.toLocaleLowerCase(),r=this.channelAdapter.on(e,i),s={type:t,filter:o,callback:i,ref:r};return this.bindings[t]?this.bindings[t].push(s):this.bindings[t]=[s],this._updateFilterMessage(),this}_onClose(e){this.channelAdapter.onClose(e)}_onError(e){this.channelAdapter.onError(e)}_updateFilterMessage(){this.channelAdapter.updateFilterBindings((e,o,i)=>{var t,r,s,n,c,d,u;const m=e.event.toLocaleLowerCase();if(this._notThisChannelEvent(m,i))return!1;const g=(t=this.bindings[m])===null||t===void 0?void 0:t.find(p=>p.ref===e.ref);if(!g)return!0;if(["broadcast","presence","postgres_changes"].includes(m))if("id"in g){const p=g.id,f=(r=g.filter)===null||r===void 0?void 0:r.event;return p&&((s=o.ids)===null||s===void 0?void 0:s.includes(p))&&(f==="*"||(f==null?void 0:f.toLocaleLowerCase())===((n=o.data)===null||n===void 0?void 0:n.type.toLocaleLowerCase()))}else{const p=(d=(c=g==null?void 0:g.filter)===null||c===void 0?void 0:c.event)===null||d===void 0?void 0:d.toLocaleLowerCase();return p==="*"||p===((u=o==null?void 0:o.event)===null||u===void 0?void 0:u.toLocaleLowerCase())}else return g.type.toLocaleLowerCase()===m})}_notThisChannelEvent(e,o){const{close:i,error:t,leave:r,join:s}=Of;return o&&[i,t,r,s].includes(e)&&o!==this.joinPush.ref}_updateFilterTransform(){this.channelAdapter.updatePayloadTransform((e,o,i)=>{if(typeof o=="object"&&"ids"in o){const t=o.data,{schema:r,table:s,commit_timestamp:n,type:c,errors:d}=t;return Object.assign(Object.assign({},{schema:r,table:s,commit_timestamp:n,eventType:c,new:{},old:{},errors:d}),this._getPayloadRecords(t))}return o})}copyBindings(e){if(this.joinedOnce)throw new Error("cannot copy bindings into joined channel");for(const o in e.bindings)for(const i of e.bindings[o])this._on(i.type,i.filter,i.callback)}static isFilterValueEqual(e,o){return(e??void 0)===(o??void 0)}_getPayloadRecords(e){const o={new:{},old:{}};return(e.type==="INSERT"||e.type==="UPDATE")&&(o.new=Sm(e.columns,e.record)),(e.type==="UPDATE"||e.type==="DELETE")&&(o.old=Sm(e.columns,e.old_record)),o}}class hw{constructor(e,o){this.socket=new cw(e,o)}get timeout(){return this.socket.timeout}get endPoint(){return this.socket.endPoint}get transport(){return this.socket.transport}get heartbeatIntervalMs(){return this.socket.heartbeatIntervalMs}get heartbeatCallback(){return this.socket.heartbeatCallback}set heartbeatCallback(e){this.socket.heartbeatCallback=e}get heartbeatTimer(){return this.socket.heartbeatTimer}get pendingHeartbeatRef(){return this.socket.pendingHeartbeatRef}get reconnectTimer(){return this.socket.reconnectTimer}get vsn(){return this.socket.vsn}get encode(){return this.socket.encode}get decode(){return this.socket.decode}get reconnectAfterMs(){return this.socket.reconnectAfterMs}get sendBuffer(){return this.socket.sendBuffer}get stateChangeCallbacks(){return this.socket.stateChangeCallbacks}connect(){this.socket.connect()}disconnect(e,o,i,t=1e4){return new Promise(r=>{setTimeout(()=>r("timeout"),t),this.socket.disconnect(()=>{e(),r("ok")},o,i)})}push(e){this.socket.push(e)}log(e,o,i){this.socket.log(e,o,i)}makeRef(){return this.socket.makeRef()}onOpen(e){this.socket.onOpen(e)}onClose(e){this.socket.onClose(e)}onError(e){this.socket.onError(e)}onMessage(e){this.socket.onMessage(e)}isConnected(){return this.socket.isConnected()}isConnecting(){return this.socket.connectionState()==Qc.connecting}isDisconnecting(){return this.socket.connectionState()==Qc.closing}connectionState(){return this.socket.connectionState()}endPointURL(){return this.socket.endPointURL()}sendHeartbeat(){this.socket.sendHeartbeat()}getSocket(){return this.socket}}const Pm={HEARTBEAT_INTERVAL:25e3,RECONNECT_DELAY:10,HEARTBEAT_TIMEOUT_FALLBACK:100},fw=[1e3,2e3,5e3,1e4],vw=1e4;function bw(){const a=new Map;return{get length(){return a.size},clear(){a.clear()},getItem(e){return a.has(e)?a.get(e):null},key(e){var o;return(o=Array.from(a.keys())[e])!==null&&o!==void 0?o:null},removeItem(e){a.delete(e)},setItem(e,o){a.set(e,String(o))}}}function Aw(){try{if(typeof globalThis<"u"&&globalThis.sessionStorage)return globalThis.sessionStorage}catch{}return bw()}const yw=` 12 addEventListener("message", (e) => { 13 if (e.data.event === "start") { 14 setInterval(() => postMessage({ event: "keepAlive" }), e.data.interval); 15 } 16 });`;class Sw{get endPoint(){return this.socketAdapter.endPoint}get timeout(){return this.socketAdapter.timeout}get transport(){return this.socketAdapter.transport}get heartbeatCallback(){return this.socketAdapter.heartbeatCallback}get heartbeatIntervalMs(){return this.socketAdapter.heartbeatIntervalMs}get heartbeatTimer(){return this.worker?this._workerHeartbeatTimer:this.socketAdapter.heartbeatTimer}get pendingHeartbeatRef(){return this.worker?this._pendingWorkerHeartbeatRef:this.socketAdapter.pendingHeartbeatRef}get reconnectTimer(){return this.socketAdapter.reconnectTimer}get vsn(){return this.socketAdapter.vsn}get encode(){return this.socketAdapter.encode}get decode(){return this.socketAdapter.decode}get reconnectAfterMs(){return this.socketAdapter.reconnectAfterMs}get sendBuffer(){return this.socketAdapter.sendBuffer}get stateChangeCallbacks(){return this.socketAdapter.stateChangeCallbacks}constructor(e,o){var i;if(this.channels=new Array,this.accessTokenValue=null,this.accessToken=null,this.apiKey=null,this.httpEndpoint="",this.headers={},this.params={}
16,this.ref=0,this.serializer=new Wx,this._manuallySetToken=!1,this._authPromise=null,this._workerHeartbeatTimer=void 0,this._pendingWorkerHeartbeatRef=null,this._pendingDisconnectTimer=null,this._disconnectOnEmptyChannelsAfterMs=0,this._resolveFetch=r=>r?(...s)=>r(...s):(...s)=>fetch(...s),!(!((i=o==null?void 0:o.params)===null||i===void 0)&&i.apikey))throw new Error("API key is required to connect to Realtime");this.apiKey=o.params.apikey;const t=this._initializeOptions(o);this.socketAdapter=new hw(e,t),this.httpEndpoint=Nf(e),this.fetch=this._resolveFetch(o==null?void 0:o.fetch)}connect(){if(!(this.isConnecting()||this.isDisconnecting()||this.isConnected())){this.accessToken&&!this._authPromise&&this._setAuthSafely("connect"),this._setupConnectionHandlers();try{this.socketAdapter.connect()}catch(e){const o=e.message;throw o.includes("Node.js")?new Error(`${o} 17 18To use Realtime in Node.js, you need to provide a WebSocket implementation: 19 20Option 1: Use Node.js 22+ which has native WebSocket support 21Option 2: Install and provide the "ws" package: 22 23 npm install ws 24 25 import ws from "ws" 26 const client = new RealtimeClient(url, { 27 ...options, 28 transport: ws 29 })`):new Error(`WebSocket not available: ${o}`)}this._handleNodeJsRaceCondition()}}endpointURL(){return this.socketAdapter.endPointURL()}async disconnect(e,o){return this._cancelPendingDisconnect(),this.isDisconnecting()?"ok":await this.socketAdapter.disconnect(()=>{clearInterval(this._workerHeartbeatTimer),this._terminateWorker()},e,o)}getChannels(){return this.channels}async removeChannel(e){const o=await e.unsubscribe();return o==="ok"&&e.teardown(),o}async removeAllChannels(){const e=this.channels.map(async i=>{const t=await i.unsubscribe();return i.teardown(),t}),o=await Promise.all(e);return await this.disconnect(),o}log(e,o,i){this.socketAdapter.log(e,o,i)}connectionState(){return this.socketAdapter.connectionState()||Qc.closed}isConnected(){return this.socketAdapter.isConnected()}isConnecting(){return this.socketAdapter.isConnecting()}isDisconnecting(){return this.socketAdapter.isDisconnecting()}channel(e,o={config:{}}){const i=`realtime:${e}`,t=this.getChannels().find(r=>r.topic===i);if(t)return t;{const r=new vt(`realtime:${e}`,o,this);return this._cancelPendingDisconnect(),this.channels.push(r),r}}push(e){this.socketAdapter.push(e)}async setAuth(e=null){this._authPromise=this._performAuth(e);try{await this._authPromise}finally{this._authPromise=null}}_isManualToken(){return this._manuallySetToken}async sendHeartbeat(){this.socketAdapter.sendHeartbeat()}onHeartbeat(e){this.socketAdapter.heartbeatCallback=this._wrapHeartbeatCallback(e)}_makeRef(){return this.socketAdapter.makeRef()}_remove(e){this.channels=this.channels.filter(o=>o.topic!==e.topic),this.channels.length===0&&(this.log("transport","no channels remaining, scheduling disconnect"),this._schedulePendingDisconnect())}_schedulePendingDisconnect(){if(this._cancelPendingDisconnect(),this._disconnectOnEmptyChannelsAfterMs===0){this.log("transport","disconnecting immediately - no channels"),this.disconnect();return}
29this._pendingDisconnectTimer=setTimeout(()=>{this._pendingDisconnectTimer=null,this.channels.length===0&&(this.log("transport","deferred disconnect fired - no channels, disconnecting"),this.disconnect())},this._disconnectOnEmptyChannelsAfterMs),this.log("transport",`deferred disconnect scheduled in ${this._disconnectOnEmptyChannelsAfterMs}ms`)}_cancelPendingDisconnect(){this._pendingDisconnectTimer!==null&&(this.log("transport","pending disconnect cancelled - channel activity detected"),clearTimeout(this._pendingDisconnectTimer),this._pendingDisconnectTimer=null)}async _performAuth(e=null){let o,i=!1;if(e)o=e,i=!0;else if(this.accessToken)try{o=await this.accessToken()}catch(t){this.log("error","Error fetching access token from callback",t),o=this.accessTokenValue}else o=this.accessTokenValue;i?this._manuallySetToken=!0:this.accessToken&&(this._manuallySetToken=!1),this.accessTokenValue!=o&&(this.accessTokenValue=o,this.channels.forEach(t=>{const r={access_token:o,version:Fx};o&&t.updateJoinPayload(r),t.joinedOnce&&t.channelAdapter.isJoined()&&t.channelAdapter.push(Of.access_token,{access_token:o})}))}async _waitForAuthIfNeeded(){this._authPromise&&await this._authPromise}_setAuthSafely(e="general"){this._isManualToken()||this.setAuth().catch(o=>{this.log("error",`Error setting auth in ${e}`,o)})}_setupConnectionHandlers(){this.socketAdapter.onOpen(()=>{(this._authPromise||(this.accessToken&&!this.accessTokenValue?this.setAuth():Promise.resolve())).catch(o=>{this.log("error","error waiting for auth on connect",o)}),this.worker&&!this.workerRef&&this._startWorkerHeartbeat()}),this.socketAdapter.onClose(()=>{this.worker&&this.workerRef&&this._terminateWorker()}),this.socketAdapter.onMessage(e=>{e.ref&&e.ref===this._pendingWorkerHeartbeatRef&&(this._pendingWorkerHeartbeatRef=null)})}_handleNodeJsRaceCondition(){this.socketAdapter.isConnected()&&this.socketAdapter.getSocket().onConnOpen()}_wrapHeartbeatCallback(e){return(o,i)=>{o=="sent"&&this._setAuthSafely(),e&&e(o,i)}}_startWorkerHeartbeat(){this.workerUrl?this.log("worker",`starting worker for from ${this.workerUrl}`):this.log("worker","starting default worker");const e=this._workerObjectUrl(this.workerUrl);this.workerRef=new Worker(e),this.workerRef.onerror=o=>{this.log("worker","worker error",o.message),this._terminateWorker(),this.disconnect()},this.workerRef.onmessage=o=>{o.data.event==="keepAlive"&&this.sendHeartbeat()},this.workerRef.postMessage({event:"start",interval:this.heartbeatIntervalMs})}_terminateWorker(){this.workerRef&&(this.log("worker","terminating worker"),this.workerRef.terminate(),this.workerRef=void 0)}_workerObjectUrl(e){let o;if(e)o=e;else{const i=new Blob([yw],{type:"application/javascript"});o=URL.createObjectURL(i)}return o}_initializeOptions(e){var o,i,t,r,s,n,c,d,u,m,g,p;this.worker=(o=e==null?void 0:e.worker)!==null&&o!==void 0?o:!1,this.accessToken=(i=e==null?void 0:e.accessToken)!==null&&i!==void 0?i:null;const f={};f.timeout=(t=e==null?void 0:e.timeout)!==null&&t!==void 0?t:$x,f.heartbeatIntervalMs=(r=e==null?void 0:e.heartbeatIntervalMs)!==null&&r!==void 0?r:Pm.HEARTBEAT_INTERVAL,this._disconnectOnEmptyChannelsAfterMs=(s=e==null?void 0:e.disconnectOnEmptyChannelsAfterMs)!==null&&s!==void 0?s:2*((n=e==null?void 0:e.heartbeatIntervalMs)!==null&&n!==void 0?n:Pm.HEARTBEAT_INTERVAL),f.transport=(c=e==null?void 0:e.transport)!==null&&c!==void 0?c:Ux.getWebSocketConstructor(),f.params=e==null?void 0:e.params,f.logger=e==null?void 0:e.logger,f.heartbeatCallback=this._wrapHeartbeatCallback(e==null?void 0:e.heartbeatCallback),f.sessionStorage=(d=e==null?void 0:e.sessionStorage)!==null&&d!==void 0?d:Aw(),f.reconnectAfterMs=(u=e==null?void 0:e.reconnectAfterMs)!==null&&u!==void 0?u:A=>fw[A-1]||vw;let v,b;const S=(m=e==null?void 0:e.vsn)!==null&&m!==void 0?m:Vx;switch(S){case Gx:v=(A,y)=>y(JSON.stringify(A)),b=(A,y)=>y(JSON.parse(A));break;case Df:v=this.serializer.encode.bind(this.serializer),b=this.serializer.decode.bind(this.serializer);break;default:throw new Error(`Unsupported serializer version: ${f.vsn}`)}if(f.vsn=S,f.encode=(g=e==null?void 0:e.encode)!==null&&g!==void 0?g:v,f.decode=(p=e==null?void 0:e.decode)!==null&&p!==void 0?p:b,f.beforeReconnect=this._reconnectAuth.bind(this),(e!=null&&e.logLevel||e!=null&&e.log_level)&&(this.logLevel=e.logLevel||e.log_level,f.params=Object.assign(Object.assign({},f.params),{log_level:this.logLevel})),this.worker){if(typeof window<"u"&&!window.Worker)throw new Error("Web Worker is not supported");this.workerUrl=e==null?void 0:e.workerUrl,f.autoSendHeartbeat=!this.worker}return f}async _reconnectAuth(){await this._waitForAuthIfNeeded(),this.isConnected()||this.connect()}}
29var Dt=class extends Error{constructor(a,e){var o;super(a),this.name="IcebergError",this.status=e.status,this.icebergType=e.icebergType,this.icebergCode=e.icebergCode,this.details=e.details,this.isCommitStateUnknown=e.icebergType==="CommitStateUnknownException"||[500,502,504].includes(e.status)&&((o=e.icebergType)==null?void 0:o.includes("CommitState"))===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function Ew(a,e,o){const i=new URL(e,a);if(o)for(const[t,r]of Object.entries(o))r!==void 0&&i.searchParams.set(t,r);return i.toString()}async function Cw(a){return!a||a.type==="none"?{}:a.type==="bearer"?{Authorization:`Bearer ${a.token}`}:a.type==="header"?{[a.name]:a.value}:a.type==="custom"?await a.getHeaders():{}}function Tw(a){const e=a.fetchImpl??globalThis.fetch;return{async request({method:o,path:i,query:t,body:r,headers:s}){const n=Ew(a.baseUrl,i,t),c=await Cw(a.auth),d=await e(n,{method:o,headers:{...r?{"Content-Type":"application/json"}:{},...c,...s},body:r?JSON.stringify(r):void 0}),u=await d.text(),m=(d.headers.get("content-type")||"").includes("application/json"),g=m&&u?JSON.parse(u):u;if(!d.ok){const p=m?g:void 0,f=p==null?void 0:p.error;throw new Dt((f==null?void 0:f.message)??`Request failed with status ${d.status}`,{status:d.status,icebergType:f==null?void 0:f.type,icebergCode:f==null?void 0:f.code,details:p})}return{status:d.status,headers:d.headers,data:g}}}}function Pr(a){return a.join("�")}var Pw=class{constructor(a,e=""){this.client=a,this.prefix=e}async listNamespaces(a){const e=a?{parent:Pr(a.namespace)}:void 0;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces`,query:e})).data.namespaces.map(i=>({namespace:i}))}async createNamespace(a,e){const o={namespace:a.namespace,properties:e==null?void 0:e.properties};return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces`,body:o})).data}async dropNamespace(a){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${Pr(a.namespace)}`})}async loadNamespaceMetadata(a){return{properties:(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${Pr(a.namespace)}`})).data.properties}}async namespaceExists(a){try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${Pr(a.namespace)}`}),!0}catch(e){if(e instanceof Dt&&e.status===404)return!1;throw e}}async createNamespaceIfNotExists(a,e){try{return await this.createNamespace(a,e)}catch(o){if(o instanceof Dt&&o.status===409)return;throw o}}};function oi(a){return a.join("�")}var Rw=class{constructor(a,e="",o){this.client=a,this.prefix=e,this.accessDelegation=o}async listTables(a){return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables`})).data.identifiers}async createTable(a,e){const o={};return this.accessDelegation&&(o["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables`,body:e,headers:o})).data.metadata}async updateTable(a,e){const o=await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables/${a.name}`,body:e});return{"metadata-location":o.data["metadata-location"],metadata:o.data.metadata}}async dropTable(a,e){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables/${a.name}`,query:{purgeRequested:String((e==null?void 0:e.purge)??!1)}})}async loadTable(a){const e={};return this.accessDelegation&&(e["X-Iceberg-Access-Delegation"]=this.accessDelegation),(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables/${a.name}`,headers:e})).data.metadata}async tableExists(a){const e={};this.accessDelegation&&(e["X-Iceberg-Access-Delegation"]=this.accessDelegation);try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${oi(a.namespace)}/tables/${a.name}`,headers:e}),!0}catch(o){if(o instanceof Dt&&o.status===404)return!1;throw o}}async createTableIfNotExists(a,e){try{return await this.createTable(a,e)}catch(o){if(o instanceof Dt&&o.status===409)return await this.loadTable({namespace:a.namespace,name:e.name});throw o}}},xw=class{constructor(a){var i;let e="v1";a.catalogName&&(e+=`/${a.catalogName}`);const o=a.baseUrl.endsWith("/")?a.baseUrl:`${a.baseUrl}/`;this.client=Tw({baseUrl:o,auth:a.auth,fetchImpl:a.fetch}),this.accessDelegation=(i=a.accessDelegation)==null?void 0:i.join(","),this.namespaceOps=new Pw(this.client,e),this.tableOps=new Rw(this.client,e,this.accessDelegation)}async listNamespaces(a){return this.namespaceOps.listNamespaces(a)}async createNamespace(a,e){return this.namespaceOps.createNamespace(a,e)}async dropNamespace(a){await this.namespaceOps.dropNamespace(a)}async loadNamespaceMetadata(a){return this.namespaceOps.loadNamespaceMetadata(a)}async listTables(a){return this.tableOps.listTables(a)}
29async createTable(a,e){return this.tableOps.createTable(a,e)}async updateTable(a,e){return this.tableOps.updateTable(a,e)}async dropTable(a,e){await this.tableOps.dropTable(a,e)}async loadTable(a){return this.tableOps.loadTable(a)}async namespaceExists(a){return this.namespaceOps.namespaceExists(a)}async tableExists(a){return this.tableOps.tableExists(a)}async createNamespaceIfNotExists(a,e){return this.namespaceOps.createNamespaceIfNotExists(a,e)}async createTableIfNotExists(a,e){return this.tableOps.createTableIfNotExists(a,e)}};function Ot(a){"@babel/helpers - typeof";return Ot=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ot(a)}function ww(a,e){if(Ot(a)!="object"||!a)return a;var o=a[Symbol.toPrimitive];if(o!==void 0){var i=o.call(a,e||"default");if(Ot(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(a)}function Iw(a){var e=ww(a,"string");return Ot(e)=="symbol"?e:e+""}function Dw(a,e,o){return(e=Iw(e))in a?Object.defineProperty(a,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):a[e]=o,a}function Rm(a,e){var o=Object.keys(a);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(a);e&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(a,t).enumerable})),o.push.apply(o,i)}return o}function Z(a){for(var e=1;e<arguments.length;e++){var o=arguments[e]!=null?arguments[e]:{};e%2?Rm(Object(o),!0).forEach(function(i){Dw(a,i,o[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):Rm(Object(o)).forEach(function(i){Object.defineProperty(a,i,Object.getOwnPropertyDescriptor(o,i))})}return a}var on=class extends Error{constructor(a,e="storage",o,i){super(a),this.__isStorageError=!0,this.namespace=e,this.name=e==="vectors"?"StorageVectorsError":"StorageError",this.status=o,this.statusCode=i}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}};function tn(a){return typeof a=="object"&&a!==null&&"__isStorageError"in a}var Xc=class extends on{constructor(a,e,o,i="storage"){super(a,i,e,o),this.name=i==="vectors"?"StorageVectorsApiError":"StorageApiError",this.status=e,this.statusCode=o}toJSON(){return Z({},super.toJSON())}},jf=class extends on{constructor(a,e,o="storage"){super(a,o),this.name=o==="vectors"?"StorageVectorsUnknownError":"StorageUnknownError",this.originalError=e}};function ms(a,e,o){const i=Z({},a),t=e.toLowerCase();for(const r of Object.keys(i))r.toLowerCase()===t&&delete i[r];return i[t]=o,i}function Ow(a){const e={};for(const[o,i]of Object.entries(a))e[o.toLowerCase()]=i;return e}const Mw=a=>a?(...e)=>a(...e):(...e)=>fetch(...e),Nw=a=>{if(typeof a!="object"||a===null)return!1;const e=Object.getPrototypeOf(a);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in a)&&!(Symbol.iterator in a)},Zc=a=>{if(Array.isArray(a))return a.map(o=>Zc(o));if(typeof a=="function"||a!==Object(a))return a;const e={};return Object.entries(a).forEach(([o,i])=>{const t=o.replace(/([-_][a-z])/gi,r=>r.toUpperCase().replace(/[-_]/g,""));e[t]=Zc(i)}),e},zw=a=>!a||typeof a!="string"||a.length===0||a.length>100||a.trim()!==a||a.includes("/")||a.includes("\\")?!1:/^[\w!.\*'() &$@=;:+,?-]+$/.test(a),xm=a=>{if(typeof a=="object"&&a!==null){const e=a;if(typeof e.msg=="string")return e.msg;if(typeof e.message=="string")return e.message;if(typeof e.error_description=="string")return e.error_description;if(typeof e.error=="string")return e.error;if(typeof e.error=="object"&&e.error!==null){const o=e.error;if(typeof o.message=="string")return o.message}}return JSON.stringify(a)},jw=async(a,e,o,i)=>{if(a!==null&&typeof a=="object"&&"json"in a&&typeof a.json=="function"){const t=a;let r=parseInt(String(t.status),10);Number.isFinite(r)||(r=500),t.json().then(s=>{const n=(s==null?void 0:s.statusCode)||(s==null?void 0:s.code)||r+"";e(new Xc(xm(s),r,n,i))}).catch(()=>{const s=r+"";e(new Xc(t.statusText||`HTTP ${r} error`,r,s,i))})}else e(new jf(xm(a),a,i))},kw=(a,e,o,i)=>{const t={method:a,headers:(e==null?void 0:e.headers)||{}};if(a==="GET"||a==="HEAD"||!i)return Z(Z({},t),o);if(Nw(i)){var r;const s=(e==null?void 0:e.headers)||{};let n;for(const[c,d]of Object.entries(s))c.toLowerCase()==="content-type"&&(n=d);
29t.headers=ms(s,"Content-Type",(r=n)!==null&&r!==void 0?r:"application/json"),t.body=JSON.stringify(i)}else t.body=i;return e!=null&&e.duplex&&(t.duplex=e.duplex),Z(Z({},t),o)};async function it(a,e,o,i,t,r,s){return new Promise((n,c)=>{a(o,kw(e,i,t,r)).then(d=>{if(!d.ok)throw d;if(i!=null&&i.noResolveJson)return d;if(s==="vectors"){const u=d.headers.get("content-type");if(d.headers.get("content-length")==="0"||d.status===204)return{};if(!u||!u.includes("application/json"))return{}}return d.json()}).then(d=>n(d)).catch(d=>jw(d,c,i,s))})}function kf(a="storage"){return{get:async(e,o,i,t)=>it(e,"GET",o,i,t,void 0,a),post:async(e,o,i,t,r)=>it(e,"POST",o,t,r,i,a),put:async(e,o,i,t,r)=>it(e,"PUT",o,t,r,i,a),head:async(e,o,i,t)=>it(e,"HEAD",o,Z(Z({},i),{},{noResolveJson:!0}),t,void 0,a),remove:async(e,o,i,t,r)=>it(e,"DELETE",o,t,r,i,a)}}const _w=kf("storage"),{get:Mt,post:Ea,put:ed,head:qw,remove:El}=_w,Je=kf("vectors");var Hi=class{constructor(a,e={},o,i="storage"){this.shouldThrowOnError=!1,this.url=a,this.headers=Ow(e),this.fetch=Mw(o),this.namespace=i}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(a,e){return this.headers=ms(this.headers,a,e),this}async handleOperation(a){var e=this;try{return{data:await a(),error:null}}catch(o){if(e.shouldThrowOnError)throw o;if(tn(o))return{data:null,error:o};throw o}}};let _f;_f=Symbol.toStringTag;var Lw=class{constructor(a,e){this.downloadFn=a,this.shouldThrowOnError=e,this[_f]="StreamDownloadBuilder",this.promise=null}then(a,e){return this.getPromise().then(a,e)}catch(a){return this.getPromise().catch(a)}finally(a){return this.getPromise().finally(a)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}async execute(){var a=this;try{return{data:(await a.downloadFn()).body,error:null}}catch(e){if(a.shouldThrowOnError)throw e;if(tn(e))return{data:null,error:e};throw e}}};let qf;qf=Symbol.toStringTag;var Uw=class{constructor(a,e){this.downloadFn=a,this.shouldThrowOnError=e,this[qf]="BlobDownloadBuilder",this.promise=null}asStream(){return new Lw(this.downloadFn,this.shouldThrowOnError)}then(a,e){return this.getPromise().then(a,e)}catch(a){return this.getPromise().catch(a)}finally(a){return this.getPromise().finally(a)}getPromise(){return this.promise||(this.promise=this.execute()),this.promise}async execute(){var a=this;try{return{data:await(await a.downloadFn()).blob(),error:null}}catch(e){if(a.shouldThrowOnError)throw e;if(tn(e))return{data:null,error:e};throw e}}};const Bw={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},wm={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1};var Fw=class extends Hi{constructor(a,e={},o,i){super(a,e,i,"storage"),this.bucketId=o}async uploadOrUpdate(a,e,o,i){var t=this;return t.handleOperation(async()=>{let r;const s=Z(Z({},wm),i);let n=Z(Z({},t.headers),a==="POST"&&{"x-upsert":String(s.upsert)});const c=s.metadata;if(typeof Blob<"u"&&o instanceof Blob?(r=new FormData,r.append("cacheControl",s.cacheControl),c&&r.append("metadata",t.encodeMetadata(c)),r.append("",o)):typeof FormData<"u"&&o instanceof FormData?(r=o,r.has("cacheControl")||r.append("cacheControl",s.cacheControl),c&&!r.has("metadata")&&r.append("metadata",t.encodeMetadata(c))):(r=o,n["cache-control"]=`max-age=${s.cacheControl}`,n["content-type"]=s.contentType,c&&(n["x-metadata"]=t.toBase64(t.encodeMetadata(c))),(typeof ReadableStream<"u"&&r instanceof ReadableStream||r&&typeof r=="object"&&"pipe"in r&&typeof r.pipe=="function")&&!s.duplex&&(s.duplex="half")),i!=null&&i.headers)for(const[g,p]of Object.entries(i.headers))n=ms(n,g,p);const d=t._removeEmptyFolders(e),u=t._getFinalPath(d),m=await(a=="PUT"?ed:Ea)(t.fetch,`${t.url}/object/${u}`,r,Z({headers:n},s!=null&&s.duplex?{duplex:s.duplex}:{}));return{path:d,id:m.Id,fullPath:m.Key}})}async upload(a,e,o){return this.uploadOrUpdate("POST",a,e,o)}async uploadToSignedUrl(a,e,o,i){var t=this;const r=t._removeEmptyFolders(a),s=t._getFinalPath(r),n=new URL(t.url+`/object/upload/sign/${s}`);return n.searchParams.set("token",e),t.handleOperation(async()=>{let c;const d=Z(Z({},wm),i);let u=Z(Z({},t.headers),{"x-upsert":String(d.upsert)});const m=d.metadata;if(typeof Blob<"u"&&o instanceof Blob?(c=new FormData,c.append("cacheControl",d.cacheControl),m&&c.append("metadata",t.encodeMetadata(m)),c.append("",o)):typeof FormData<"u"&&o instanceof FormData?(c=o,c.has("cacheControl")||c.append("cacheControl",d.cacheControl),m&&!c.has("metadata")&&c.append("metadata",t.encodeMetadata(m))):(c=o,u["cache-control"]=`max-age=${d.cacheControl}`,u["content-type"]=d.contentType,m&&(u["x-metadata"]=t.toBase64(t.encodeMetadata(m))),(typeof ReadableStream<"u"&&c instanceof ReadableStream||c&&typeof c=="object"&&"pipe"in c&&typeof c.pipe=="function")&&!d.duplex&&(d.duplex="half")),i!=null&&i.headers)for(const[g,p]of Object.entries(i.headers))u=ms(u,g,p);return{path:r,fullPath:(await ed(t.fetch,n.toString(),c,Z({headers:u},d!=null&&d.duplex?{duplex:d.duplex}:{}))).Key}})}async createSignedUploadUrl(a,e){var o=this;return o.handleOperation(async()=>{let i=o._getFinalPath(a);const t=Z({},o.headers);e!=null&&e.upsert&&(t["x-upsert"]="true");const r=await Ea(o.fetch,`${o.url}/object/upload/sign/${i}`,{},{headers:t}),s=new URL(o.url+r.url),n=s.searchParams.get("token");if(!n)throw new on("No token returned by API");return{signedUrl:s.toString(),path:a,token:n}})}async update(a,e,o){return this.uploadOrUpdate("PUT",a,e,o)}async move(a,e,o){var i=this;return i.handleOperation(async()=>await Ea(i.fetch,`${i.url}/object/move`,{bucketId:i.bucketId,sourceKey:a,destinationKey:e,destinationBucket:o==null?void 0:o.destinationBucket},{headers:i.headers}))}async copy(a,e,o){var i=this;return i.handleOperation(async()=>({path:(await Ea(i.fetch,`${i.url}/object/copy`,{bucketId:i.bucketId,sourceKey:a,destinationKey:e,destinationBucket:o==null?void 0:o.destinationBucket},{headers:i.headers})).Key}))}async createSignedUrl(a,e,o){var i=this;return i.handleOperation(async()=>{let t=i._getFinalPath(a);const r=typeof(o==null?void 0:o.transform)=="object"&&o.transform!==null&&Object.keys(o.transform).length>0;let s=await Ea(i.fetch,`${i.url}/object/sign/${t}
29`,Z({expiresIn:e},r?{transform:o.transform}:{}),{headers:i.headers});const n=new URLSearchParams;o!=null&&o.download&&n.set("download",o.download===!0?"":o.download),(o==null?void 0:o.cacheNonce)!=null&&n.set("cacheNonce",String(o.cacheNonce));const c=n.toString();return{signedUrl:encodeURI(`${i.url}${s.signedURL}${c?`&${c}`:""}`)}})}async createSignedUrls(a,e,o){var i=this;return i.handleOperation(async()=>{const t=await Ea(i.fetch,`${i.url}/object/sign/${i.bucketId}`,{expiresIn:e,paths:a},{headers:i.headers}),r=new URLSearchParams;o!=null&&o.download&&r.set("download",o.download===!0?"":o.download),(o==null?void 0:o.cacheNonce)!=null&&r.set("cacheNonce",String(o.cacheNonce));const s=r.toString();return t.map(n=>Z(Z({},n),{},{signedUrl:n.signedURL?encodeURI(`${i.url}${n.signedURL}${s?`&${s}`:""}`):null}))})}download(a,e,o){const i=typeof(e==null?void 0:e.transform)=="object"&&e.transform!==null&&Object.keys(e.transform).length>0?"render/image/authenticated":"object",t=new URLSearchParams;e!=null&&e.transform&&this.applyTransformOptsToQuery(t,e.transform),(e==null?void 0:e.cacheNonce)!=null&&t.set("cacheNonce",String(e.cacheNonce));const r=t.toString(),s=this._getFinalPath(a),n=()=>Mt(this.fetch,`${this.url}/${i}/${s}${r?`?${r}`:""}`,{headers:this.headers,noResolveJson:!0},o);return new Uw(n,this.shouldThrowOnError)}async info(a){var e=this;const o=e._getFinalPath(a);return e.handleOperation(async()=>Zc(await Mt(e.fetch,`${e.url}/object/info/${o}`,{headers:e.headers})))}async exists(a){var e=this;const o=e._getFinalPath(a);try{return await qw(e.fetch,`${e.url}/object/${o}`,{headers:e.headers}),{data:!0,error:null}}catch(t){if(e.shouldThrowOnError)throw t;if(tn(t)){var i;const r=t instanceof Xc?t.status:t instanceof jf?(i=t.originalError)===null||i===void 0?void 0:i.status:void 0;if(r!==void 0&&[400,404].includes(r))return{data:!1,error:t}}throw t}}getPublicUrl(a,e){const o=this._getFinalPath(a),i=new URLSearchParams;e!=null&&e.download&&i.set("download",e.download===!0?"":e.download),e!=null&&e.transform&&this.applyTransformOptsToQuery(i,e.transform),(e==null?void 0:e.cacheNonce)!=null&&i.set("cacheNonce",String(e.cacheNonce));const t=i.toString(),r=typeof(e==null?void 0:e.transform)=="object"&&e.transform!==null&&Object.keys(e.transform).length>0?"render/image":"object";return{data:{publicUrl:encodeURI(`${this.url}/${r}/public/${o}`)+(t?`?${t}`:"")}}}async remove(a){var e=this;return e.handleOperation(async()=>await El(e.fetch,`${e.url}/object/${e.bucketId}`,{prefixes:a},{headers:e.headers}))}async list(a,e,o){var i=this;return i.handleOperation(async()=>{const t=Z(Z(Z({},Bw),e),{},{prefix:a||""});return await Ea(i.fetch,`${i.url}/object/list/${i.bucketId}`,t,{headers:i.headers},o)})}async listV2(a,e){var o=this;return o.handleOperation(async()=>{const i=Z({},a);return await Ea(o.fetch,`${o.url}/object/list-v2/${o.bucketId}`,i,{headers:o.headers},e)})}encodeMetadata(a){return JSON.stringify(a)}toBase64(a){return typeof Buffer<"u"?Buffer.from(a).toString("base64"):btoa(a)}_getFinalPath(a){return`${this.bucketId}/${a.replace(/^\/+/,"")}`}_removeEmptyFolders(a){return a.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}applyTransformOptsToQuery(a,e){return e.width&&a.set("width",e.width.toString()),e.height&&a.set("height",e.height.toString()),e.resize&&a.set("resize",e.resize),e.format&&a.set("format",e.format),e.quality&&a.set("quality",e.quality.toString()),a}};const Gw="2.108.2",Xt={"X-Client-Info":`storage-js/${Gw}`};var Vw=class extends Hi{constructor(a,e={},o,i){const t=new URL(a);i!=null&&i.useNewHostname&&/supabase\.(co|in|red)$/.test(t.hostname)&&!t.hostname.includes("storage.supabase.")&&(t.hostname=t.hostname.replace("supabase.","storage.supabase."));const r=t.href.replace(/\/$/,""),s=Z(Z({},Xt),e);super(r,s,o,"storage")}async listBuckets(a){var e=this;return e.handleOperation(async()=>{const o=e.listBucketOptionsToQueryString(a);return await Mt(e.fetch,`${e.url}/bucket${o}`,{headers:e.headers})})}async getBucket(a){var e=this;return e.handleOperation(async()=>await Mt(e.fetch,`${e.url}/bucket/${a}`,{headers:e.headers}))}async createBucket(a,e={public:!1}){var o=this;return o.handleOperation(async()=>await Ea(o.fetch,`${o.url}/bucket`,{id:a,name:a,type:e.type,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:o.headers}))}async updateBucket(a,e){var o=this;return o.handleOperation(async()=>await ed(o.fetch,`${o.url}/bucket/${a}`,{id:a,name:a,public:e.public,file_size_limit:e.fileSizeLimit,allowed_mime_types:e.allowedMimeTypes},{headers:o.headers}))}async emptyBucket(a){var e=this;return e.handleOperation(async()=>await Ea(e.fetch,`${e.url}/bucket/${a}
29/empty`,{},{headers:e.headers}))}async deleteBucket(a){var e=this;return e.handleOperation(async()=>await El(e.fetch,`${e.url}/bucket/${a}`,{},{headers:e.headers}))}listBucketOptionsToQueryString(a){const e={};return a&&("limit"in a&&(e.limit=String(a.limit)),"offset"in a&&(e.offset=String(a.offset)),a.search&&(e.search=a.search),a.sortColumn&&(e.sortColumn=a.sortColumn),a.sortOrder&&(e.sortOrder=a.sortOrder)),Object.keys(e).length>0?"?"+new URLSearchParams(e).toString():""}},$w=class extends Hi{constructor(a,e={},o){const i=a.replace(/\/$/,""),t=Z(Z({},Xt),e);super(i,t,o,"storage")}async createBucket(a){var e=this;return e.handleOperation(async()=>await Ea(e.fetch,`${e.url}/bucket`,{name:a},{headers:e.headers}))}async listBuckets(a){var e=this;return e.handleOperation(async()=>{const o=new URLSearchParams;(a==null?void 0:a.limit)!==void 0&&o.set("limit",a.limit.toString()),(a==null?void 0:a.offset)!==void 0&&o.set("offset",a.offset.toString()),a!=null&&a.sortColumn&&o.set("sortColumn",a.sortColumn),a!=null&&a.sortOrder&&o.set("sortOrder",a.sortOrder),a!=null&&a.search&&o.set("search",a.search);const i=o.toString(),t=i?`${e.url}/bucket?${i}`:`${e.url}/bucket`;return await Mt(e.fetch,t,{headers:e.headers})})}async deleteBucket(a){var e=this;return e.handleOperation(async()=>await El(e.fetch,`${e.url}/bucket/${a}`,{},{headers:e.headers}))}from(a){var e=this;if(!zw(a))throw new on("Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.");const o=new xw({baseUrl:this.url,catalogName:a,auth:{type:"custom",getHeaders:async()=>e.headers},fetch:this.fetch}),i=this.shouldThrowOnError;return new Proxy(o,{get(t,r){const s=t[r];return typeof s!="function"?s:async(...n)=>{try{return{data:await s.apply(t,n),error:null}}catch(c){if(i)throw c;return{data:null,error:c}}}}})}},Hw=class extends Hi{constructor(a,e={},o){const i=a.replace(/\/$/,""),t=Z(Z({},Xt),{},{"Content-Type":"application/json"},e);super(i,t,o,"vectors")}async createIndex(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/CreateIndex`,a,{headers:e.headers})||{})}async getIndex(a,e){var o=this;return o.handleOperation(async()=>await Je.post(o.fetch,`${o.url}/GetIndex`,{vectorBucketName:a,indexName:e},{headers:o.headers}))}async listIndexes(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/ListIndexes`,a,{headers:e.headers}))}async deleteIndex(a,e){var o=this;return o.handleOperation(async()=>await Je.post(o.fetch,`${o.url}/DeleteIndex`,{vectorBucketName:a,indexName:e},{headers:o.headers})||{})}},Ww=class extends Hi{constructor(a,e={},o){const i=a.replace(/\/$/,""),t=Z(Z({},Xt),{},{"Content-Type":"application/json"},e);super(i,t,o,"vectors")}async putVectors(a){var e=this;if(a.vectors.length<1||a.vectors.length>500)throw new Error("Vector batch size must be between 1 and 500 items");return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/PutVectors`,a,{headers:e.headers})||{})}async getVectors(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/GetVectors`,a,{headers:e.headers}))}async listVectors(a){var e=this;if(a.segmentCount!==void 0){if(a.segmentCount<1||a.segmentCount>16)throw new Error("segmentCount must be between 1 and 16");if(a.segmentIndex!==void 0&&(a.segmentIndex<0||a.segmentIndex>=a.segmentCount))throw new Error(`segmentIndex must be between 0 and ${a.segmentCount-1}`)}return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/ListVectors`,a,{headers:e.headers}))}async queryVectors(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/QueryVectors`,a,{headers:e.headers}))}async deleteVectors(a){var e=this;if(a.keys.length<1||a.keys.length>500)throw new Error("Keys batch size must be between 1 and 500 items");return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/DeleteVectors`,a,{headers:e.headers})||{})}},Qw=class extends Hi{constructor(a,e={},o){const i=a.replace(/\/$/,""),t=Z(Z({},Xt),{},{"Content-Type":"application/json"},e);super(i,t,o,"vectors")}async createBucket(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/CreateVectorBucket`,{vectorBucketName:a},{headers:e.headers})||{})}async getBucket(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/GetVectorBucket`,{vectorBucketName:a},{headers:e.headers}))}async listBuckets(a={}){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/ListVectorBuckets`,a,{headers:e.headers}))}async deleteBucket(a){var e=this;return e.handleOperation(async()=>await Je.post(e.fetch,`${e.url}/DeleteVectorBucket`,{vectorBucketName:a},{headers:e.headers})||{})}},Kw=class extends Qw{constructor(a,e={}){super(a,e.headers||{},e.fetch)}from(a){return new Yw(this.url,this.headers,a,this.fetch)}async createBucket(a){var e=()=>super.createBucket,o=this;return e().call(o,a)}async getBucket(a){var e=()=>super.getBucket,o=this;return e().call(o,a)}async listBuckets(a={}){var e=()=>super.listBuckets,o=this;return e().call(o,a)}async deleteBucket(a){var e=()=>super.deleteBucket,o=this;return e().call(o,a)}},Yw=class extends Hw{constructor(a,e,o,i){super(a,e,i),this.vectorBucketName=o}async createIndex(a){var e=()=>super.createIndex,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName}))}async listIndexes(a={}){var e=()=>super.listIndexes,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName}))}async getIndex(a){var e=()=>super.getIndex,o=this;return e().call(o,o.vectorBucketName,a)}async deleteIndex(a){var e=()=>super.deleteIndex,o=this;return e().call(o,o.vectorBucketName,a)}index(a){return new Jw(this.url,this.headers,this.vectorBucketName,a,this.fetch)}},Jw=class extends Ww{constructor(a,e,o,i,t){super(a,e,t),this.vectorBucketName=o,this.indexName=i}async putVectors(a){var e=()=>super.putVectors,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName,indexName:o.indexName}))}async getVectors(a){var e=()=>super.getVectors,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName,indexName:o.indexName}))}async listVectors(a={}){var e=()=>super.listVectors,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName,indexName:o.indexName}))}async queryVectors(a){var e=()=>super.queryVectors,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName,indexName:o.indexName}))}async deleteVectors(a){var e=()=>super.deleteVectors,o=this;return e().call(o,Z(Z({},a),{},{vectorBucketName:o.vectorBucketName,indexName:o.indexName}))}},Xw=class extends Vw{constructor(a,e={},o,i){super(a,e,o,i)}from(a){return new Fw(this.url,this.headers,a,this.fetch)}get vectors(){return new Kw(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new $w(this.url+"/iceberg",this.headers,this.fetch)}};const Lf="2.108.2",Qa=30*1e3,ct=3,Gn=ct*Qa,Zw=2*Qa,eI="http://localhost:9999",aI="supabase.auth.token",oI={"X-Client-Info":`gotrue-js/${Lf}`},ad="X-Supabase-Api-Version",Uf={"2024-01-01":{timestamp:Date.parse("2024-01-01T00:00:00.0Z"),name:"2024-01-01"}},iI=/^([a-z0-9_-]{4})*($|[a-z0-9_-]{3}$|[a-z0-9_-]{2}$)$/i,tI=10*60*1e3;
29class Nt extends Error{constructor(e,o,i){super(e),this.__isAuthError=!0,this.name="AuthError",this.status=o,this.code=i}toJSON(){return{name:this.name,message:this.message,status:this.status,code:this.code}}}function F(a){return typeof a=="object"&&a!==null&&"__isAuthError"in a}class rI extends Nt{constructor(e,o,i){super(e,o,i),this.name="AuthApiError",this.status=o,this.code=i}}function sI(a){return F(a)&&a.name==="AuthApiError"}class Ca extends Nt{constructor(e,o){super(e),this.name="AuthUnknownError",this.originalError=o}}class Ua extends Nt{constructor(e,o,i,t){super(e,i,t),this.name=o,this.status=i}}class Ne extends Ua{constructor(){super("Auth session missing!","AuthSessionMissingError",400,void 0)}}function Rr(a){return F(a)&&a.name==="AuthSessionMissingError"}class ii extends Ua{constructor(){super("Auth session or user missing","AuthInvalidTokenResponseError",500,void 0)}}class xr extends Ua{constructor(e){super(e,"AuthInvalidCredentialsError",400,void 0)}}class wr extends Ua{constructor(e,o=null){super(e,"AuthImplicitGrantRedirectError",500,void 0),this.details=null,this.details=o}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{details:this.details})}}function nI(a){return F(a)&&a.name==="AuthImplicitGrantRedirectError"}class Im extends Ua{constructor(e,o=null){super(e,"AuthPKCEGrantCodeExchangeError",500,void 0),this.details=null,this.details=o}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{details:this.details})}}class cI extends Ua{constructor(){super("PKCE code verifier not found in storage. This can happen if the auth flow was initiated in a different browser or device, or if the storage was cleared. For SSR frameworks (Next.js, SvelteKit, etc.), use @supabase/ssr on both the server and client to store the code verifier in cookies.","AuthPKCECodeVerifierMissingError",400,"pkce_code_verifier_not_found")}}class od extends Ua{constructor(e,o){super(e,"AuthRetryableFetchError",o,void 0)}}function Dm(a){return F(a)&&a.name==="AuthRetryableFetchError"}class Om extends Ua{constructor(e="Refresh result discarded: session state changed mid-flight (e.g., concurrent signOut)"){super(e,"AuthRefreshDiscardedError",409,void 0)}}function dI(a){return F(a)&&a.name==="AuthRefreshDiscardedError"}class Mm extends Ua{constructor(e,o,i){super(e,"AuthWeakPasswordError",o,"weak_password"),this.reasons=i}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{reasons:this.reasons})}}class ps extends Ua{constructor(e){super(e,"AuthInvalidJwtError",400,"invalid_jwt")}}const gs="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_".split(""),Nm=` 30\r=`.split(""),lI=(()=>{const a=new Array(128);for(let e=0;e<a.length;e+=1)a[e]=-1;for(let e=0;e<Nm.length;e+=1)a[Nm[e].charCodeAt(0)]=-2;for(let e=0;e<gs.length;e+=1)a[gs[e].charCodeAt(0)]=e;return a})();function zm(a,e,o){if(a!==null)for(e.queue=e.queue<<8|a,e.queuedBits+=8;e.queuedBits>=6;){const i=e.queue>>e.queuedBits-6&63;o(gs[i]),e.queuedBits-=6}else if(e.queuedBits>0)for(e.queue=e.queue<<6-e.queuedBits,e.queuedBits=6;e.queuedBits>=6;){const i=e.queue>>e.queuedBits-6&63;o(gs[i]),e.queuedBits-=6}}function Bf(a,e,o){const i=lI[a];if(i>-1)for(e.queue=e.queue<<6|i,e.queuedBits+=6;e.queuedBits>=8;)o(e.queue>>e.queuedBits-8&255),e.queuedBits-=8;else{if(i===-2)return;throw new Error(`Invalid Base64-URL character "${String.fromCharCode(a)}"`)}}function jm(a){const e=[],o=s=>{e.push(String.fromCodePoint(s))},i={utf8seq:0,codepoint:0},t={queue:0,queuedBits:0},r=s=>{pI(s,i,o)};for(let s=0;s<a.length;s+=1)Bf(a.charCodeAt(s),t,r);return e.join("")}function uI(a,e){if(a<=127){e(a);return}else if(a<=2047){e(192|a>>6),e(128|a&63);return}else if(a<=65535){e(224|a>>12),e(128|a>>6&63),e(128|a&63);return}else if(a<=1114111){e(240|a>>18),e(128|a>>12&63),e(128|a>>6&63),e(128|a&63);return}throw new Error(`Unrecognized Unicode codepoint: ${a.toString(16)}`)}function mI(a,e){for(let o=0;o<a.length;o+=1){let i=a.charCodeAt(o);if(i>55295&&i<=56319){const t=(i-55296)*1024&65535;i=(a.charCodeAt(o+1)-56320&65535|t)+65536,o+=1}uI(i,e)}}function pI(a,e,o){if(e.utf8seq===0){if(a<=127){o(a);return}for(let i=1;i<6;i+=1)if(!(a>>7-i&1)){e.utf8seq=i;break}if(e.utf8seq===2)e.codepoint=a&31;else if(e.utf8seq===3)e.codepoint=a&15;else if(e.utf8seq===4)e.codepoint=a&7;else throw new Error("Invalid UTF-8 sequence");e.utf8seq-=1}else if(e.utf8seq>0){if(a<=127)throw new Error("Invalid UTF-8 sequence");e.codepoint=e.codepoint<<6|a&63,e.utf8seq-=1,e.utf8seq===0&&o(e.codepoint)}}function Ti(a){const e=[],o={queue:0,queuedBits:0},i=t=>{e.push(t)};for(let t=0;t<a.length;
30t+=1)Bf(a.charCodeAt(t),o,i);return new Uint8Array(e)}function gI(a){const e=[];return mI(a,o=>e.push(o)),new Uint8Array(e)}function ko(a){const e=[],o={queue:0,queuedBits:0},i=t=>{e.push(t)};return a.forEach(t=>zm(t,o,i)),zm(null,o,i),e.join("")}function hI(a){return Math.round(Date.now()/1e3)+a}function fI(){return Symbol("auth-callback")}const qe=()=>typeof window<"u"&&typeof document<"u",Oo={tested:!1,writable:!1},Ff=()=>{if(!qe())return!1;try{if(typeof globalThis.localStorage!="object")return!1}catch{return!1}if(Oo.tested)return Oo.writable;const a=`lswt-${Math.random()}${Math.random()}`;try{globalThis.localStorage.setItem(a,a),globalThis.localStorage.removeItem(a),Oo.tested=!0,Oo.writable=!0}catch{Oo.tested=!0,Oo.writable=!1}return Oo.writable};function vI(a){const e={},o=new URL(a);if(o.hash&&o.hash[0]==="#")try{new URLSearchParams(o.hash.substring(1)).forEach((t,r)=>{e[r]=t})}catch{}return o.searchParams.forEach((i,t)=>{e[t]=i}),e}const Gf=a=>a?(...e)=>a(...e):(...e)=>fetch(...e),bI=a=>typeof a=="object"&&a!==null&&"status"in a&&"ok"in a&&"json"in a&&typeof a.json=="function",li=async(a,e,o)=>{await a.setItem(e,JSON.stringify(o))},va=async(a,e)=>{const o=await a.getItem(e);if(!o)return null;try{return JSON.parse(o)}catch{return null}},xe=async(a,e)=>{await a.removeItem(e)};class rn{constructor(){this.promise=new rn.promiseConstructor((e,o)=>{this.resolve=e,this.reject=o})}}rn.promiseConstructor=Promise;function Ir(a){const e=a.split(".");if(e.length!==3)throw new ps("Invalid JWT structure");for(let i=0;i<e.length;i++)if(!iI.test(e[i]))throw new ps("JWT not in base64url format");return{header:JSON.parse(jm(e[0])),payload:JSON.parse(jm(e[1])),signature:Ti(e[2]),raw:{header:e[0],payload:e[1]}}}async function AI(a){return await new Promise(e=>{setTimeout(()=>e(null),a)})}function yI(a,e){return new Promise((i,t)=>{(async()=>{for(let r=0;r<1/0;r++)try{const s=await a(r);if(!e(r,null,s)){i(s);return}}catch(s){if(!e(r,s)){t(s);return}}})()})}function SI(a){return("0"+a.toString(16)).substr(-2)}function EI(){const e=new Uint32Array(56);if(typeof crypto>"u"){const o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~",i=o.length;let t="";for(let r=0;r<56;r++)t+=o.charAt(Math.floor(Math.random()*i));return t}return crypto.getRandomValues(e),Array.from(e,SI).join("")}async function CI(a){const o=new TextEncoder().encode(a),i=await crypto.subtle.digest("SHA-256",o),t=new Uint8Array(i);return Array.from(t).map(r=>String.fromCharCode(r)).join("")}async function TI(a){if(!(typeof crypto<"u"&&typeof crypto.subtle<"u"&&typeof TextEncoder<"u"))return console.warn("WebCrypto API is not supported. Code challenge method will default to use plain instead of sha256."),a;const o=await CI(a);return btoa(o).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}async function Mo(a,e,o=!1){const i=EI();let t=i;o&&(t+="/recovery"),await li(a,`${e}-code-verifier`,t);const r=await TI(i);return[r,i===r?"plain":"s256"]}const PI=/^2[0-9]{3}-(0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-9]|3[0-1])$/i;function RI(a){const e=a.headers.get(ad);if(!e||!e.match(PI))return null;try{return new Date(`${e}T00:00:00.0Z`)}catch{return null}}function xI(a){if(!a)throw new Error("Missing exp claim");const e=Math.floor(Date.now()/1e3);if(a<=e)throw new Error("JWT has expired")}function wI(a){switch(a){case"RS256":return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case"ES256":return{name:"ECDSA",namedCurve:"P-256",hash:{name:"SHA-256"}};default:throw new Error("Invalid alg claim")}}const II=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;function Ga(a){if(!II.test(a))throw new Error("@supabase/auth-js: Expected parameter to be UUID but is not")}function Aa(a){if(!a.passkey)throw new Error("@supabase/auth-js: the passkey API is experimental and disabled by default. Enable it by passing `auth: { experimental: { passkey: true } }` to createClient (or to the GoTrueClient constructor).")}function Vn(){const a={};return new Proxy(a,{get:(e,o)=>{if(o==="__isUserNotAvailableProxy")return!0;if(typeof o=="symbol"){const i=o.toString();if(i==="Symbol(Symbol.toPrimitive)"||i==="Symbol(Symbol.toStringTag)"||i==="Symbol(util.inspect.custom)")return}throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Accessing the "${o}" property of the session object is not supported. Please use getUser() instead.`)},set:(e,o)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Setting the "${o}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)},deleteProperty:(e,o)=>{throw new Error(`@supabase/auth-js: client was created with userStorage option and there was no user stored in the user storage. Deleting the "${o}" property of the session object is not supported. Please use getUser() to fetch a user object you can manipulate.`)}})}function DI(a,e){return new Proxy(a,{get:(o,i,t)=>{if(i==="__isInsecureUserWarningProxy")return!0;
30if(typeof i=="symbol"){const r=i.toString();if(r==="Symbol(Symbol.toPrimitive)"||r==="Symbol(Symbol.toStringTag)"||r==="Symbol(util.inspect.custom)"||r==="Symbol(nodejs.util.inspect.custom)")return Reflect.get(o,i,t)}return!e.value&&typeof i=="string"&&(console.warn("Using the user object as returned from supabase.auth.getSession() or from some supabase.auth.onAuthStateChange() events could be insecure! This value comes directly from the storage medium (usually cookies on the server) and may not be authentic. Use supabase.auth.getUser() instead which authenticates the data by contacting the Supabase Auth server."),e.value=!0),Reflect.get(o,i,t)}})}function km(a){return JSON.parse(JSON.stringify(a))}const zo=a=>{if(typeof a=="object"&&a!==null){const e=a;if(typeof e.msg=="string")return e.msg;if(typeof e.message=="string")return e.message;if(typeof e.error_description=="string")return e.error_description;if(typeof e.error=="string")return e.error}return JSON.stringify(a)},OI=[500,501,502,503,504,520,521,522,523,524,525,526,527,528,529,530];async function _m(a){var e;if(!bI(a))throw new od(zo(a),0);if(OI.includes(a.status))throw new od(zo(a),a.status);let o;try{o=await a.json()}catch(r){throw new Ca(zo(r),r)}let i;const t=RI(a);if(t&&t.getTime()>=Uf["2024-01-01"].timestamp&&typeof o=="object"&&o&&typeof o.code=="string"?i=o.code:typeof o=="object"&&o&&typeof o.error_code=="string"&&(i=o.error_code),i){if(i==="weak_password")throw new Mm(zo(o),a.status,((e=o.weak_password)===null||e===void 0?void 0:e.reasons)||[]);if(i==="session_not_found")throw new Ne}else if(typeof o=="object"&&o&&typeof o.weak_password=="object"&&o.weak_password&&Array.isArray(o.weak_password.reasons)&&o.weak_password.reasons.length&&o.weak_password.reasons.reduce((r,s)=>r&&typeof s=="string",!0))throw new Mm(zo(o),a.status,o.weak_password.reasons);throw new rI(zo(o),a.status||500,i)}const MI=(a,e,o,i)=>{const t={method:a,headers:(e==null?void 0:e.headers)||{}};return a==="GET"?t:(t.headers=Object.assign({"Content-Type":"application/json;charset=UTF-8"},e==null?void 0:e.headers),t.body=JSON.stringify(i),Object.assign(Object.assign({},t),o))};async function Q(a,e,o,i){var t;const r=Object.assign({},i==null?void 0:i.headers);r[ad]||(r[ad]=Uf["2024-01-01"].name),i!=null&&i.jwt&&(r.Authorization=`Bearer ${i.jwt}`);const s=(t=i==null?void 0:i.query)!==null&&t!==void 0?t:{};i!=null&&i.redirectTo&&(s.redirect_to=i.redirectTo);const n=Object.keys(s).length?"?"+new URLSearchParams(s).toString():"",c=await NI(a,e,o+n,{headers:r,noResolveJson:i==null?void 0:i.noResolveJson},{},i==null?void 0:i.body);return i!=null&&i.xform?i==null?void 0:i.xform(c):{data:Object.assign({},c),error:null}}async function NI(a,e,o,i,t,r){const s=MI(e,i,t,r);let n;try{n=await a(o,Object.assign({},s))}catch(c){throw console.error(c),new od(zo(c),0)}if(n.ok||await _m(n),i!=null&&i.noResolveJson)return n;try{return await n.json()}catch(c){await _m(c)}}function ia(a){var e;let o=null;kI(a)&&(o=Object.assign({},a),a.expires_at||(o.expires_at=hI(a.expires_in)));const i=(e=a.user)!==null&&e!==void 0?e:typeof(a==null?void 0:a.id)=="string"?a:null;return{data:{session:o,user:i},error:null}}function qm(a){const e=ia(a);return!e.error&&a.weak_password&&typeof a.weak_password=="object"&&Array.isArray(a.weak_password.reasons)&&a.weak_password.reasons.length&&a.weak_password.message&&typeof a.weak_password.message=="string"&&a.weak_password.reasons.reduce((o,i)=>o&&typeof i=="string",!0)&&(e.data.weak_password=a.weak_password),e}function mo(a){var e;return{data:{user:(e=a.user)!==null&&e!==void 0?e:a},error:null}}function zI(a){return{data:a,error:null}}function jI(a){const{action_link:e,email_otp:o,hashed_token:i,redirect_to:t,verification_type:r}=a,s=$i(a,["action_link","email_otp","hashed_token","redirect_to","verification_type"]),n={action_link:e,email_otp:o,hashed_token:i,redirect_to:t,verification_type:r},c=Object.assign({},s);return{data:{properties:n,user:c},error:null}}function Lm(a){return a}function kI(a){return!!a.access_token&&!!a.refresh_token&&!!a.expires_in}const $n=["global","local","others"];class _I{constructor({url:e="",headers:o={},fetch:i,experimental:t}){this.url=e,this.headers=o,this.fetch=Gf(i),this.experimental=t??{},this.mfa={listFactors:this._listFactors.bind(this),deleteFactor:this._deleteFactor.bind(this)},this.oauth={listClients:this._listOAuthClients.bind(this),createClient:this._createOAuthClient.bind(this),getClient:this._getOAuthClient.bind(this),updateClient:this._updateOAuthClient.bind(this),deleteClient:this._deleteOAuthClient.bind(this),regenerateClientSecret:this._regenerateOAuthClientSecret.bind(this)},this.customProviders={listProviders:this._listCustomProviders.bind(this),createProvider:this._createCustomProvider.bind(this),getProvider:this._getCustomProvider.bind(this),updateProvider:this._updateCustomProvider.bind(this),deleteProvider:this._deleteCustomProvider.bind(this)},this.passkey={listPasskeys:this._adminListPasskeys.bind(this),deletePasskey:this._adminDeletePasskey.bind(this)}}
30async signOut(e,o=$n[0]){if($n.indexOf(o)<0)throw new Error(`@supabase/auth-js: Parameter scope must be one of ${$n.join(", ")}`);try{return await Q(this.fetch,"POST",`${this.url}/logout?scope=${o}`,{headers:this.headers,jwt:e,noResolveJson:!0}),{data:null,error:null}}catch(i){if(F(i))return{data:null,error:i};throw i}}async inviteUserByEmail(e,o={}){try{return await Q(this.fetch,"POST",`${this.url}/invite`,{body:{email:e,data:o.data},headers:this.headers,redirectTo:o.redirectTo,xform:mo})}catch(i){if(F(i))return{data:{user:null},error:i};throw i}}async generateLink(e){try{const{options:o}=e,i=$i(e,["options"]),t=Object.assign(Object.assign({},i),o);return"newEmail"in i&&(t.new_email=i==null?void 0:i.newEmail,delete t.newEmail),await Q(this.fetch,"POST",`${this.url}/admin/generate_link`,{body:t,headers:this.headers,xform:jI,redirectTo:o==null?void 0:o.redirectTo})}catch(o){if(F(o))return{data:{properties:null,user:null},error:o};throw o}}async createUser(e){try{return await Q(this.fetch,"POST",`${this.url}/admin/users`,{body:e,headers:this.headers,xform:mo})}catch(o){if(F(o))return{data:{user:null},error:o};throw o}}async listUsers(e){var o,i,t,r,s,n,c;try{const d={nextPage:null,lastPage:0,total:0},u=await Q(this.fetch,"GET",`${this.url}/admin/users`,{headers:this.headers,noResolveJson:!0,query:{page:(i=(o=e==null?void 0:e.page)===null||o===void 0?void 0:o.toString())!==null&&i!==void 0?i:"",per_page:(r=(t=e==null?void 0:e.perPage)===null||t===void 0?void 0:t.toString())!==null&&r!==void 0?r:""},xform:Lm});if(u.error)throw u.error;const m=await u.json(),g=(s=u.headers.get("x-total-count"))!==null&&s!==void 0?s:0,p=(c=(n=u.headers.get("link"))===null||n===void 0?void 0:n.split(","))!==null&&c!==void 0?c:[];return p.length>0&&(p.forEach(f=>{const v=parseInt(f.split(";")[0].split("=")[1].substring(0,1)),b=JSON.parse(f.split(";")[1].split("=")[1]);d[`${b}Page`]=v}),d.total=parseInt(g)),{data:Object.assign(Object.assign({},m),d),error:null}}catch(d){if(F(d))return{data:{users:[]},error:d};throw d}}async getUserById(e){Ga(e);try{return await Q(this.fetch,"GET",`${this.url}/admin/users/${e}`,{headers:this.headers,xform:mo})}catch(o){if(F(o))return{data:{user:null},error:o};throw o}}async updateUserById(e,o){Ga(e);try{return await Q(this.fetch,"PUT",`${this.url}/admin/users/${e}`,{body:o,headers:this.headers,xform:mo})}catch(i){if(F(i))return{data:{user:null},error:i};throw i}}async deleteUser(e,o=!1){Ga(e);try{return await Q(this.fetch,"DELETE",`${this.url}/admin/users/${e}`,{headers:this.headers,body:{should_soft_delete:o},xform:mo})}catch(i){if(F(i))return{data:{user:null},error:i};throw i}}async _listFactors(e){Ga(e.userId);try{const{data:o,error:i}=await Q(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/factors`,{headers:this.headers,xform:t=>({data:{factors:t},error:null})});return{data:o,error:i}}catch(o){if(F(o))return{data:null,error:o};throw o}}async _deleteFactor(e){Ga(e.userId),Ga(e.id);try{return{data:await Q(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/factors/${e.id}`,{headers:this.headers}),error:null}}catch(o){if(F(o))return{data:null,error:o};throw o}}async _listOAuthClients(e){var o,i,t,r,s,n,c;try{const d={nextPage:null,lastPage:0,total:0},u=await Q(this.fetch,"GET",`${this.url}/admin/oauth/clients`,{headers:this.headers,noResolveJson:!0,query:{page:(i=(o=e==null?void 0:e.page)===null||o===void 0?void 0:o.toString())!==null&&i!==void 0?i:"",per_page:(r=(t=e==null?void 0:e.perPage)===null||t===void 0?void 0:t.toString())!==null&&r!==void 0?r:""},xform:Lm});if(u.error)throw u.error;const m=await u.json(),g=(s=u.headers.get("x-total-count"))!==null&&s!==void 0?s:0,p=(c=(n=u.headers.get("link"))===null||n===void 0?void 0:n.split(","))!==null&&c!==void 0?c:[];return p.length>0&&(p.forEach(f=>{const v=parseInt(f.split(";")[0].split("=")[1].substring(0,1)),b=JSON.parse(f.split(";")[1].split("=")[1]);d[`${b}Page`]=v}),d.total=parseInt(g)),{data:Object.assign(Object.assign({},m),d),error:null}}catch(d){if(F(d))return{data:{clients:[]},error:d};throw d}}async _createOAuthClient(e){try{return await Q(this.fetch,"POST",`${this.url}/admin/oauth/clients`,{body:e,headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _getOAuthClient(e){try{return await Q(this.fetch,"GET",`${this.url}/admin/oauth/clients/${e}`,{headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _updateOAuthClient(e,o){try{return await Q(this.fetch,"PUT",`${this.url}/admin/oauth/clients/${e}`,{body:o,headers:this.headers,xform:i=>({data:i,error:null})})}catch(i){if(F(i))return{data:null,error:i};throw i}}async _deleteOAuthClient(e){try{return await Q(this.fetch,"DELET
30E",`${this.url}/admin/oauth/clients/${e}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(o){if(F(o))return{data:null,error:o};throw o}}async _regenerateOAuthClientSecret(e){try{return await Q(this.fetch,"POST",`${this.url}/admin/oauth/clients/${e}/regenerate_secret`,{headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _listCustomProviders(e){try{const o={};return e!=null&&e.type&&(o.type=e.type),await Q(this.fetch,"GET",`${this.url}/admin/custom-providers`,{headers:this.headers,query:o,xform:i=>{var t;return{data:{providers:(t=i==null?void 0:i.providers)!==null&&t!==void 0?t:[]},error:null}}})}catch(o){if(F(o))return{data:{providers:[]},error:o};throw o}}async _createCustomProvider(e){try{return await Q(this.fetch,"POST",`${this.url}/admin/custom-providers`,{body:e,headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _getCustomProvider(e){try{return await Q(this.fetch,"GET",`${this.url}/admin/custom-providers/${e}`,{headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _updateCustomProvider(e,o){try{return await Q(this.fetch,"PUT",`${this.url}/admin/custom-providers/${e}`,{body:o,headers:this.headers,xform:i=>({data:i,error:null})})}catch(i){if(F(i))return{data:null,error:i};throw i}}async _deleteCustomProvider(e){try{return await Q(this.fetch,"DELETE",`${this.url}/admin/custom-providers/${e}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(o){if(F(o))return{data:null,error:o};throw o}}async _adminListPasskeys(e){Aa(this.experimental),Ga(e.userId);try{return await Q(this.fetch,"GET",`${this.url}/admin/users/${e.userId}/passkeys`,{headers:this.headers,xform:o=>({data:o,error:null})})}catch(o){if(F(o))return{data:null,error:o};throw o}}async _adminDeletePasskey(e){Aa(this.experimental),Ga(e.userId),Ga(e.passkeyId);try{return await Q(this.fetch,"DELETE",`${this.url}/admin/users/${e.userId}/passkeys/${e.passkeyId}`,{headers:this.headers,noResolveJson:!0}),{data:null,error:null}}catch(o){if(F(o))return{data:null,error:o};throw o}}}function Um(a={}){return{getItem:e=>a[e]||null,setItem:(e,o)=>{a[e]=o},removeItem:e=>{delete a[e]}}}globalThis&&Ff()&&globalThis.localStorage&&globalThis.localStorage.getItem("supabase.gotrue-js.locks.debug");
30class qI extends Error{constructor(e){super(e),this.isAcquireTimeout=!0}}function LI(){if(typeof globalThis!="object")try{Object.defineProperty(Object.prototype,"__magic__",{get:function(){return this},configurable:!0}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__}catch{typeof self<"u"&&(self.globalThis=self)}}function Vf(a){if(!/^0x[a-fA-F0-9]{40}$/.test(a))throw new Error(`@supabase/auth-js: Address "${a}" is invalid.`);return a.toLowerCase()}function UI(a){return parseInt(a,16)}function BI(a){const e=new TextEncoder().encode(a);return"0x"+Array.from(e,i=>i.toString(16).padStart(2,"0")).join("")}function FI(a){var e;const{chainId:o,domain:i,expirationTime:t,issuedAt:r=new Date,nonce:s,notBefore:n,requestId:c,resources:d,scheme:u,uri:m,version:g}=a;{if(!Number.isInteger(o))throw new Error(`@supabase/auth-js: Invalid SIWE message field "chainId". Chain ID must be a EIP-155 chain ID. Provided value: ${o}`);if(!i)throw new Error('@supabase/auth-js: Invalid SIWE message field "domain". Domain must be provided.');if(s&&s.length<8)throw new Error(`@supabase/auth-js: Invalid SIWE message field "nonce". Nonce must be at least 8 characters. Provided value: ${s}`);if(!m)throw new Error('@supabase/auth-js: Invalid SIWE message field "uri". URI must be provided.');if(g!=="1")throw new Error(`@supabase/auth-js: Invalid SIWE message field "version". Version must be '1'. Provided value: ${g}`);if(!((e=a.statement)===null||e===void 0)&&e.includes(` 31`))throw new Error(`@supabase/auth-js: Invalid SIWE message field "statement". Statement must not include '\\n'. Provided value: ${a.statement}`)}const p=Vf(a.address),f=u?`${u}://${i}`:i,v=a.statement?`${a.statement} 32`:"",b=`${f} wants you to sign in with your Ethereum account: 33${p} 34 35${v}`;let S=`URI: ${m} 36Version: ${g} 37Chain ID: ${o}${s?` 38Nonce: ${s}`:""} 39Issued At: ${r.toISOString()}`;if(t&&(S+=` 40Expiration Time: ${t.toISOString()}`),n&&(S+=` 41Not Before: ${n.toISOString()}`),c&&(S+=` 42Request ID: ${c}`),d){let A=` 43Resources:`;for(const y of d){if(!y||typeof y!="string")throw new Error(`@supabase/auth-js: Invalid SIWE message field "resources". Every resource must be a valid string. Provided value: ${y}`);A+=` 44- ${y}`}S+=A}return`${b} 45${S}`}class De extends Error{constructor({message:e,code:o,cause:i,name:t}){var r;super(e,{cause:i}),this.__isWebAuthnError=!0,this.name=(r=t??(i instanceof Error?i.name:void 0))!==null&&r!==void 0?r:"Unknown Error",this.code=o}toJSON(){return{name:this.name,message:this.message,code:this.code}}}class hs extends De{constructor(e,o){super({code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:o,message:e}),this.name="WebAuthnUnknownError",this.originalError=o}}function GI({error:a,options:e}){var o,i,t;const{publicKey:r}=e;if(!r)throw Error("options was missing required publicKey property");if(a.name==="AbortError"){if(e.signal instanceof AbortSignal)return new De({message:"Registration ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:a})}else if(a.name==="ConstraintError"){if(((o=r.authenticatorSelection)===null||o===void 0?void 0:o.requireResidentKey)===!0)return new De({message:"Discoverable credentials were required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT",cause:a});if(e.mediation==="conditional"&&((i=r.authenticatorSelection)===null||i===void 0?void 0:i.userVerification)==="required")return new De({message:"User verification was required during automatic registration but it could not be performed",code:"ERROR_AUTO_REGISTER_USER_VERIFICATION_FAILURE",cause:a});if(((t=r.authenticatorSelection)===null||t===void 0?void 0:t.userVerification)==="required")return new De({message:"User verification was required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT",cause:a})}else{if(a.name==="InvalidStateError")return new De({message:"The authenticator was previously registered",code:"ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED",cause:a});if(a.name==="NotAllowedError")return new De({message:a.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:a});if(a.name==="NotSupportedError")return r.pubKeyCredParams.filter(n=>n.type==="public-key").length===0?new De({message:'No entry in pubKeyCredParams was of type "public-key"',code:"ERROR_MALFORMED_PUBKEYCREDPARAMS",cause:a}):new De({message:"No available authenticator supported any of the specified pubKeyCredParams algorithms",code:"ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG",cause:a});if(a.name==="SecurityError"){const s=window.location.hostname;if($f(s)){if(r.rp.id!==s)return new De({message:`The RP ID "${r.rp.id}
45" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:a})}else return new De({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:a})}else if(a.name==="TypeError"){if(r.user.id.byteLength<1||r.user.id.byteLength>64)return new De({message:"User ID was not between 1 and 64 characters",code:"ERROR_INVALID_USER_ID_LENGTH",cause:a})}else if(a.name==="UnknownError")return new De({message:"The authenticator was unable to process the specified options, or could not create a new credential",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:a})}return new De({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:a})}function VI({error:a,options:e}){const{publicKey:o}=e;if(!o)throw Error("options was missing required publicKey property");if(a.name==="AbortError"){if(e.signal instanceof AbortSignal)return new De({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:a})}else{if(a.name==="NotAllowedError")return new De({message:a.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:a});if(a.name==="SecurityError"){const i=window.location.hostname;if($f(i)){if(o.rpId!==i)return new De({message:`The RP ID "${o.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:a})}else return new De({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:a})}else if(a.name==="UnknownError")return new De({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:a})}return new De({message:"a Non-Webauthn related error has occurred",code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:a})}class $I{createNewAbortSignal(){if(this.controller){const o=new Error("Cancelling existing WebAuthn API call for new one");o.name="AbortError",this.controller.abort(o)}const e=new AbortController;return this.controller=e,e.signal}cancelCeremony(){if(this.controller){const e=new Error("Manually cancelling existing WebAuthn API call");e.name="AbortError",this.controller.abort(e),this.controller=void 0}}}const id=new $I;function Bm(a){if(!a)throw new Error("Credential creation options are required");if(typeof PublicKeyCredential<"u"&&"parseCreationOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseCreationOptionsFromJSON=="function")return PublicKeyCredential.parseCreationOptionsFromJSON(a);const{challenge:e,user:o,excludeCredentials:i}=a,t=$i(a,["challenge","user","excludeCredentials"]),r=Ti(e).buffer,s=Object.assign(Object.assign({},o),{id:Ti(o.id).buffer}),n=Object.assign(Object.assign({},t),{challenge:r,user:s});if(i&&i.length>0){n.excludeCredentials=new Array(i.length);for(let c=0;c<i.length;c++){const d=i[c];n.excludeCredentials[c]=Object.assign(Object.assign({},d),{id:Ti(d.id).buffer,type:d.type||"public-key",transports:d.transports})}}return n}function Fm(a){if(!a)throw new Error("Credential request options are required");if(typeof PublicKeyCredential<"u"&&"parseRequestOptionsFromJSON"in PublicKeyCredential&&typeof PublicKeyCredential.parseRequestOptionsFromJSON=="function")return PublicKeyCredential.parseRequestOptionsFromJSON(a);const{challenge:e,allowCredentials:o}=a,i=$i(a,["challenge","allowCredentials"]),t=Ti(e).buffer,r=Object.assign(Object.assign({},i),{challenge:t});if(o&&o.length>0){r.allowCredentials=new Array(o.length);for(let s=0;s<o.length;s++){const n=o[s];r.allowCredentials[s]=Object.assign(Object.assign({},n),{id:Ti(n.id).buffer,type:n.type||"public-key",transports:n.transports})}}return r}function Gm(a){var e;if("toJSON"in a&&typeof a.toJSON=="function")return a.toJSON();const o=a;return{id:a.id,rawId:a.id,response:{attestationObject:ko(new Uint8Array(a.response.attestationObject)),clientDataJSON:ko(new Uint8Array(a.response.clientDataJSON))},type:"public-key",clientExtensionResults:a.getClientExtensionResults(),authenticatorAttachment:(e=o.authenticatorAttachment)!==null&&e!==void 0?e:void 0}}function Vm(a){var e;if("toJSON"in a&&typeof a.toJSON=="function")return a.toJSON();const o=a,i=a.getClientExtensionResults(),t=a.response;return{id:a.id,rawId:a.id,response:{authenticatorData:ko(new Uint8Array(t.authenticatorData)),clientDataJSON:ko(new Uint8Array(t.clientDataJSON)),signature:ko(new Uint8Array(t.signature)),userHandle:t.userHandle?ko(new Uint8Array(t.userHandle)):void 0},type:"public-key",clientExtensionResults:i,authenticatorAttachment:(e=o.authenticatorAttachment)!==null&&e!==void 0?e:void 0}}function $f(a){return a==="localhost"||/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(a)}function fs(){var a,e;return!!(qe()&&"PublicKeyCredential"in window&&window.PublicKeyCredential&&"credentials"in navigator&&typeof((a=navigator==null?void 0:navigator.credentials)===null||a===void 0?void 0:a.create)=="function"&&typeof((e=navigator==null?void 0:navigator.credentials)===null||e===void 0?void 0:e.get)=="function")}async function Hf(a){try{const e=await navigator.credentials.create(a);return e?e instanceof PublicKeyCredential?{data:e,error:null}:{data:null,error:new hs("Browser returned unexpected credential type",e)}:{data:null,error:new hs("Empty credential response",e)}}catch(e){return{data:null,error:GI({error:e,options:a})}}}async function Wf(a){try{const e=await navigator.credentials.get(a);return e?e instanceof PublicKeyCredential?{data:e,error:null}:{data:null,error:new hs("Browser returned unexpected credential type",e)}:{data:null,error:new hs("Empty credential response",e)}}catch(e){return{data:null,error:VI({error:e,options:a})}}}const HI={hints:["security-key"],authenticatorSelection:{authenticatorAttachment:"cross-platform",requireResidentKey:!1,userVerification:"preferred",residentKey:"discouraged"},attestation:"direct"},WI={userVerification:"preferred",hints:["security-key"],attestation:"direct"};function vs(...a){const e=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),o=t=>t instanceof ArrayBuffer||ArrayBuffer.isView(t),i={};for(const t of a)if(t)for(const r in t){const s=t[r];
45if(s!==void 0)if(Array.isArray(s))i[r]=s;else if(o(s))i[r]=s;else if(e(s)){const n=i[r];e(n)?i[r]=vs(n,s):i[r]=vs(s)}else i[r]=s}return i}function QI(a,e){return vs(HI,a,e||{})}function KI(a,e){return vs(WI,a,e||{})}class YI{constructor(e){this.client=e,this.enroll=this._enroll.bind(this),this.challenge=this._challenge.bind(this),this.verify=this._verify.bind(this),this.authenticate=this._authenticate.bind(this),this.register=this._register.bind(this)}async _enroll(e){return this.client.mfa.enroll(Object.assign(Object.assign({},e),{factorType:"webauthn"}))}async _challenge({factorId:e,webauthn:o,friendlyName:i,signal:t},r){var s;try{const{data:n,error:c}=await this.client.mfa.challenge({factorId:e,webauthn:o});if(!n)return{data:null,error:c};const d=t??id.createNewAbortSignal();if(n.webauthn.type==="create"){const{user:u}=n.webauthn.credential_options.publicKey;if(!u.name){const m=i;if(m)u.name=`${u.id}:${m}`;else{const p=(await this.client.getUser()).data.user,f=((s=p==null?void 0:p.user_metadata)===null||s===void 0?void 0:s.name)||(p==null?void 0:p.email)||(p==null?void 0:p.id)||"User";u.name=`${u.id}:${f}`}}u.displayName||(u.displayName=u.name)}switch(n.webauthn.type){case"create":{const u=QI(n.webauthn.credential_options.publicKey,r==null?void 0:r.create),{data:m,error:g}=await Hf({publicKey:u,signal:d});return m?{data:{factorId:e,challengeId:n.id,webauthn:{type:n.webauthn.type,credential_response:m}},error:null}:{data:null,error:g}}case"request":{const u=KI(n.webauthn.credential_options.publicKey,r==null?void 0:r.request),{data:m,error:g}=await Wf(Object.assign(Object.assign({},n.webauthn.credential_options),{publicKey:u,signal:d}));return m?{data:{factorId:e,challengeId:n.id,webauthn:{type:n.webauthn.type,credential_response:m}},error:null}:{data:null,error:g}}}}catch(n){return F(n)?{data:null,error:n}:{data:null,error:new Ca("Unexpected error in challenge",n)}}}async _verify({challengeId:e,factorId:o,webauthn:i}){return this.client.mfa.verify({factorId:o,challengeId:e,webauthn:i})}async _authenticate({factorId:e,webauthn:{rpId:o=typeof window<"u"?window.location.hostname:void 0,rpOrigins:i=typeof window<"u"?[window.location.origin]:void 0,signal:t}={}},r){if(!o)return{data:null,error:new Nt("rpId is required for WebAuthn authentication")};try{if(!fs())return{data:null,error:new Ca("Browser does not support WebAuthn",null)};const{data:s,error:n}=await this.challenge({factorId:e,webauthn:{rpId:o,rpOrigins:i},signal:t},{request:r});if(!s)return{data:null,error:n};const{webauthn:c}=s;return this._verify({factorId:e,challengeId:s.challengeId,webauthn:{type:c.type,rpId:o,rpOrigins:i,credential_response:c.credential_response}})}catch(s){return F(s)?{data:null,error:s}:{data:null,error:new Ca("Unexpected error in authenticate",s)}}}async _register({friendlyName:e,webauthn:{rpId:o=typeof window<"u"?window.location.hostname:void 0,rpOrigins:i=typeof window<"u"?[window.location.origin]:void 0,signal:t}={}},r){if(!o)return{data:null,error:new Nt("rpId is required for WebAuthn registration")};try{if(!fs())return{data:null,error:new Ca("Browser does not support WebAuthn",null)};const{data:s,error:n}=await this._enroll({friendlyName:e});if(!s)return await this.client.mfa.listFactors().then(u=>{var m;return(m=u.data)===null||m===void 0?void 0:m.all.find(g=>g.factor_type==="webauthn"&&g.friendly_name===e&&g.status!=="unverified")}).then(u=>u?this.client.mfa.unenroll({factorId:u==null?void 0:u.id}):void 0),{data:null,error:n};const{data:c,error:d}=await this._challenge({factorId:s.id,friendlyName:s.friendly_name,webauthn:{rpId:o,rpOrigins:i},signal:t},{create:r});return c?this._verify({factorId:s.id,challengeId:c.challengeId,webauthn:{rpId:o,rpOrigins:i,type:c.webauthn.type,credential_response:c.webauthn.credential_response}}):{data:null,error:d}}catch(s){return F(s)?{data:null,error:s}:{data:null,error:new Ca("Unexpected error in register",s)}}}}LI();const JI={url:eI,storageKey:aI,autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,headers:oI,flowType:"implicit",debug:!1,hasCustomAuthorizationHeader:!1,throwOnError:!1,lockAcquireTimeout:5e3,skipAutoInitialize:!1,experimental:{}},ti={};class zt{get jwks(){var e,o;return(o=(e=ti[this.storageKey])===null||e===void 0?void 0:e.jwks)!==null&&o!==void 0?o:{keys:[]}}set jwks(e){ti[this.storageKey]=Object.assign(Object.assign({},ti[this.storageKey]),{jwks:e})}get jwks_cached_at(){var e,o;return(o=(e=ti[this.storageKey])===null||e===void 0?void 0:e.cachedAt)!==null&&o!==void 0?o:Number.MIN_SAFE_INTEGER}set jwks_cached_at(e){ti[this.storageKey]=Object.assign(Object.assign({},ti[this.storageKey]),{cachedAt:e})}constructor(e){var o,i,t;this.userStorage=null,this.memoryStorage=null,this.stateChangeEmitters=new Map,this.autoRefreshTicker=null,this.autoRefreshTickTimeout=null,this.visibilityChangedCallback=null,this.refreshingDeferred=null,this.lastRefreshFailure=null,this._sessionRemovalEpoch=0,this.initializePromise=null,this.detectSessionInUrl=!0,this.hasCustomAuthorizationHeader=!1,this.suppressGetSessionWarning=!1,this.lock=null,this.lockAcquired=!1,this.pendingInLock=[],this.broadcastChannel=null,this.logger=console.log;const r=Object.assign(Object.assign({},JI),e);if(this.storageKey=r.storageKey,this.instanceID=(o=zt.nextInstanceID[this.storageKey])!==null&&o!==void 0?o:0,zt.nextInstanceID[this.storageKey]=this.instanceID+1,this.logDebugMessages=!!r.debug,typeof r.debug=="function"&&(this.logger=r.debug),this.instanceID>0&&qe()){const s=`${this._logPrefix()} Multiple GoTrueClient instances detected in the same browser context. It is not an error, but this should be avoided as it may produce undefined behavior when used concurrently under the same storage key.`;console.warn(s),this.logDebugMessages&&console.trace(s)}if(this.persistSession=r.persistSession,this.autoRefreshToken=r.autoRefreshToken,this.experimental=(i=r.experimental)!==null&&i!==void 0?i:{},this.admin=new _I({url:r.url,headers:r.headers,fetch:r.fetch,experimental:this.experimental}),this.url=r.url,this.headers=r.headers,this.fetch=Gf(r.fetch),this.detectSessionInUrl=r.detectSessionInUrl,this.flowType=r.flowType,this.hasCustomAuthorizationHeader=r.hasCustomAuthorizationHeader,this.throwOnError=r.throwOnError,this.lockAcquireTimeout=r.lockAcquireTimeout,r.lock!=null&&(this.lock=r.lock),this.jwks||(this.jwks={keys:[]},this.jwks_cached_at=Number.MIN_SAFE_INTEGER),this.mfa={verify:this._verify.bind(this),enroll:this._enroll.bind(this),unenroll:this._unenroll.bind(this),challenge:this._challenge.bind(this),listFactors:this._listFactors.bind(this),challengeAndVerify:this._challengeAndVerify.bind(this),getAuthenticatorAssuranceLevel:this._getAuthenticatorAssuranceLevel.bind(this),webauthn:new YI(this)}
45,this.oauth={getAuthorizationDetails:this._getAuthorizationDetails.bind(this),approveAuthorization:this._approveAuthorization.bind(this),denyAuthorization:this._denyAuthorization.bind(this),listGrants:this._listOAuthGrants.bind(this),revokeGrant:this._revokeOAuthGrant.bind(this)},this.passkey={startRegistration:this._startPasskeyRegistration.bind(this),verifyRegistration:this._verifyPasskeyRegistration.bind(this),startAuthentication:this._startPasskeyAuthentication.bind(this),verifyAuthentication:this._verifyPasskeyAuthentication.bind(this),list:this._listPasskeys.bind(this),update:this._updatePasskey.bind(this),delete:this._deletePasskey.bind(this)},this.persistSession?(r.storage?this.storage=r.storage:Ff()?this.storage=globalThis.localStorage:(this.memoryStorage={},this.storage=Um(this.memoryStorage)),r.userStorage&&(this.userStorage=r.userStorage)):(this.memoryStorage={},this.storage=Um(this.memoryStorage)),qe()&&globalThis.BroadcastChannel&&this.persistSession&&this.storageKey){try{this.broadcastChannel=new globalThis.BroadcastChannel(this.storageKey)}catch(s){console.error("Failed to create a new BroadcastChannel, multi-tab state changes will not be available",s)}(t=this.broadcastChannel)===null||t===void 0||t.addEventListener("message",async s=>{this._debug("received broadcast notification from other tab or client",s),(s.data.event==="TOKEN_REFRESHED"||s.data.event==="SIGNED_IN")&&(this.lastRefreshFailure=null);try{await this._notifyAllSubscribers(s.data.event,s.data.session,!1)}catch(n){this._debug("#broadcastChannel","error",n)}})}r.skipAutoInitialize||this.initialize().catch(s=>{this._debug("#initialize()","error",s)})}isThrowOnErrorEnabled(){return this.throwOnError}_returnResult(e){if(this.throwOnError&&e&&e.error)throw e.error;return e}_logPrefix(){return`GoTrueClient@${this.storageKey}:${this.instanceID} (${Lf}) ${new Date().toISOString()}`}_debug(...e){return this.logDebugMessages&&this.logger(this._logPrefix(),...e),this}async initialize(){return this.initializePromise?await this.initializePromise:(this.initializePromise=(async()=>this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._initialize()):await this._initialize())(),await this.initializePromise)}async _initialize(){var e;try{let o={},i="none";if(qe()&&(o=vI(window.location.href),this._isImplicitGrantCallback(o)?i="implicit":await this._isPKCECallback(o)&&(i="pkce")),qe()&&this.detectSessionInUrl&&i!=="none"){const{data:t,error:r}=await this._getSessionFromURL(o,i);if(r){if(this._debug("#_initialize()","error detecting session from URL",r),nI(r)){const c=(e=r.details)===null||e===void 0?void 0:e.code;if(c==="identity_already_exists"||c==="identity_not_found"||c==="single_identity_not_deletable")return{error:r}}return{error:r}}const{session:s,redirectType:n}=t;return this._debug("#_initialize()","detected session in URL",s,"redirect type",n),await this._saveSession(s),setTimeout(async()=>{n==="recovery"?await this._notifyAllSubscribers("PASSWORD_RECOVERY",s):await this._notifyAllSubscribers("SIGNED_IN",s)},0),{error:null}}return await this._recoverAndRefresh(),{error:null}}catch(o){return F(o)?this._returnResult({error:o}):this._returnResult({error:new Ca("Unexpected error during initialization",o)})}finally{await this._handleVisibilityChange(),this._debug("#_initialize()","end")}}async signInAnonymously(e){var o,i,t;try{const r=await Q(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{data:(i=(o=e==null?void 0:e.options)===null||o===void 0?void 0:o.data)!==null&&i!==void 0?i:{},gotrue_meta_security:{captcha_token:(t=e==null?void 0:e.options)===null||t===void 0?void 0:t.captchaToken}},xform:ia}),{data:s,error:n}=r;if(n||!s)return this._returnResult({data:{user:null,session:null},error:n});const c=s.session,d=s.user;return s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(r){if(F(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async signUp(e){var o,i,t;try{let r;if("email"in e){const{email:u,password:m,options:g}=e;let p=null,f=null;this.flowType==="pkce"&&([p,f]=await Mo(this.storage,this.storageKey)),r=await Q(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,redirectTo:g==null?void 0:g.emailRedirectTo,body:{email:u,password:m,data:(o=g==null?void 0:g.data)!==null&&o!==void 0?o:{},gotrue_meta_security:{captcha_token:g==null?void 0:g.captchaToken},code_challenge:p,code_challenge_method:f},xform:ia})}else if("phone"in e){const{phone:u,password:m,options:g}=e;r=await Q(this.fetch,"POST",`${this.url}/signup`,{headers:this.headers,body:{phone:u,password:m,data:(i=g==null?void 0:g.data)!==null&&i!==void 0?i:{},channel:(t=g==null?void 0:g.channel)!==null&&t!==void 0?t:"sms",gotrue_meta_security:{captcha_token:g==null?void 0:g.captchaToken}},xform:ia})}else throw new xr("You must provide either an email or phone number and a password");const{data:s,error:n}=r;if(n||!s)return await xe(this.storage,`${this.storageKey}-code-verifier`),this._returnResult({data:{user:null,session:null},error:n});const c=s.session,d=s.user;return s.session&&(await this._saveSession(s.session),await this._notifyAllSubscribers("SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(r){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(r))return this._returnResult({data:{user:null,session:null},error:r});throw r}}async signInWithPassword(e){try{let o;if("email"in e){const{email:r,password:s,options:n}=e;o=await Q(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{email:r,password:s,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:qm})}else if("phone"in e){const{phone:r,password:s,options:n}=e;o=await Q(this.fetch,"POST",`${this.url}/token?grant_type=password`,{headers:this.headers,body:{phone:r,password:s,gotrue_meta_security:{captcha_token:n==null?void 0:n.captchaToken}},xform:qm})}else throw new xr("You must provide either an email or phone number and a password");const{data:i,error:t}=o;if(t)return this._returnResult({data:{user:null,session:null},error:t});if(!i||!i.session||!i.user){const r=new ii;return this._returnResult({data:{user:null,session:null},error:r})}return i.session&&(await this._saveSession(i.session),await this._notifyAllSubscribers("SIGNED_IN",i.session)),this._returnResult({data:Object.assign({user:i.user,session:i.session},i.weak_password?{weakPassword:i.weak_password}:null),error:t})}catch(o){if(F(o))return this._returnResult({data:{user:null,session:null},error:o});throw o}}async signInWithOAuth(e){var o,i,t,r;return await this._handleProviderSignIn(e.provider,{redirectTo:(o=e.options)===null||o===void 0?void 0:o.redirectTo,scopes:(i=e.options)===null||i===void 0?void 0:i.scopes,queryParams:(t=e.options)===null||t===void 0?void 0:t.queryParams,skipBrowserRedirect:(r=e.options)===null||r===void 0?void 0:r.skipBrowserRedirect})}async exchangeCodeForSession(e){return await this.initializePromise,this.lock!=null?this._acquireLock(this.lockAcquireTimeout,async()=>this._exchangeCodeForSession(e)):this._exchangeCodeForSession(e)}async signInWithWeb3(e){const{chain:o}=e;switch(o){case"ethereum":return await this.signInWithEthereum(e);case"solana":return await this.signInWithSolana(e);default:throw new Error(`@supabase/auth-js: Unsupported chain "${o}"`)}}async signInWithEthereum(e){var o,i,t,r,s,n,c,d,u,m,g;let p,f;if("message"in e)p=e.message,f=e.signature;else{const{chain:v,wallet:b,statement:S,options:A}=e;let y;if(qe())if(typeof b=="object")y=b;else{const x=window;if("ethereum"in x&&typeof x.ethereum=="object"&&"request"in x.ethereum&&typeof x.ethereum.request=="function")y=x.ethereum;else throw new Error("@supabase/auth-js: No compatible Ethereum wallet interface on the window object (window.ethereum) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'ethereum', wallet: resolvedUserWallet }) instead.")}else{if(typeof b!="object"||!(A!=null&&A.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");y=b}
45const E=new URL((o=A==null?void 0:A.url)!==null&&o!==void 0?o:window.location.href),C=await y.request({method:"eth_requestAccounts"}).then(x=>x).catch(()=>{throw new Error("@supabase/auth-js: Wallet method eth_requestAccounts is missing or invalid")});if(!C||C.length===0)throw new Error("@supabase/auth-js: No accounts available. Please ensure the wallet is connected.");const P=Vf(C[0]);let R=(i=A==null?void 0:A.signInWithEthereum)===null||i===void 0?void 0:i.chainId;if(!R){const x=await y.request({method:"eth_chainId"});R=UI(x)}const I={domain:E.host,address:P,statement:S,uri:E.href,version:"1",chainId:R,nonce:(t=A==null?void 0:A.signInWithEthereum)===null||t===void 0?void 0:t.nonce,issuedAt:(s=(r=A==null?void 0:A.signInWithEthereum)===null||r===void 0?void 0:r.issuedAt)!==null&&s!==void 0?s:new Date,expirationTime:(n=A==null?void 0:A.signInWithEthereum)===null||n===void 0?void 0:n.expirationTime,notBefore:(c=A==null?void 0:A.signInWithEthereum)===null||c===void 0?void 0:c.notBefore,requestId:(d=A==null?void 0:A.signInWithEthereum)===null||d===void 0?void 0:d.requestId,resources:(u=A==null?void 0:A.signInWithEthereum)===null||u===void 0?void 0:u.resources};p=FI(I),f=await y.request({method:"personal_sign",params:[BI(p),P]})}try{const{data:v,error:b}=await Q(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"ethereum",message:p,signature:f},!((m=e.options)===null||m===void 0)&&m.captchaToken?{gotrue_meta_security:{captcha_token:(g=e.options)===null||g===void 0?void 0:g.captchaToken}}:null),xform:ia});if(b)throw b;if(!v||!v.session||!v.user){const S=new ii;return this._returnResult({data:{user:null,session:null},error:S})}return v.session&&(await this._saveSession(v.session),await this._notifyAllSubscribers("SIGNED_IN",v.session)),this._returnResult({data:Object.assign({},v),error:b})}catch(v){if(F(v))return this._returnResult({data:{user:null,session:null},error:v});throw v}}async signInWithSolana(e){var o,i,t,r,s,n,c,d,u,m,g,p;let f,v;if("message"in e)f=e.message,v=e.signature;else{const{chain:b,wallet:S,statement:A,options:y}=e;let E;if(qe())if(typeof S=="object")E=S;else{const P=window;if("solana"in P&&typeof P.solana=="object"&&("signIn"in P.solana&&typeof P.solana.signIn=="function"||"signMessage"in P.solana&&typeof P.solana.signMessage=="function"))E=P.solana;else throw new Error("@supabase/auth-js: No compatible Solana wallet interface on the window object (window.solana) detected. Make sure the user already has a wallet installed and connected for this app. Prefer passing the wallet interface object directly to signInWithWeb3({ chain: 'solana', wallet: resolvedUserWallet }) instead.")}else{if(typeof S!="object"||!(y!=null&&y.url))throw new Error("@supabase/auth-js: Both wallet and url must be specified in non-browser environments.");E=S}const C=new URL((o=y==null?void 0:y.url)!==null&&o!==void 0?o:window.location.href);if("signIn"in E&&E.signIn){const P=await E.signIn(Object.assign(Object.assign(Object.assign({issuedAt:new Date().toISOString()},y==null?void 0:y.signInWithSolana),{version:"1",domain:C.host,uri:C.href}),A?{statement:A}:null));let R;if(Array.isArray(P)&&P[0]&&typeof P[0]=="object")R=P[0];else if(P&&typeof P=="object"&&"signedMessage"in P&&"signature"in P)R=P;else throw new Error("@supabase/auth-js: Wallet method signIn() returned unrecognized value");if("signedMessage"in R&&"signature"in R&&(typeof R.signedMessage=="string"||R.signedMessage instanceof Uint8Array)&&R.signature instanceof Uint8Array)f=typeof R.signedMessage=="string"?R.signedMessage:new TextDecoder().decode(R.signedMessage),v=R.signature;else throw new Error("@supabase/auth-js: Wallet method signIn() API returned object without signedMessage and signature fields")}else{if(!("signMessage"in E)||typeof E.signMessage!="function"||!("publicKey"in E)||typeof E!="object"||!E.publicKey||!("toBase58"in E.publicKey)||typeof E.publicKey.toBase58!="function")throw new Error("@supabase/auth-js: Wallet does not have a compatible signMessage() and publicKey.toBase58() API");f=[`${C.host} wants you to sign in with your Solana account:`,E.publicKey.toBase58(),...A?["",A,""]:[""],"Version: 1",`URI: ${C.href}`,`Issued At: ${(t=(i=y==null?void 0:y.signInWithSolana)===null||i===void 0?void 0:i.issuedAt)!==null&&t!==void 0?t:new Date().toISOString()}`,...!((r=y==null?void 0:y.signInWithSolana)===null||r===void 0)&&r.notBefore?[`Not Before: ${y.signInWithSolana.notBefore}`]:[],...!((s=y==null?void 0:y.signInWithSolana)===null||s===void 0)&&s.expirationTime?[`Expiration Time: ${y.signInWithSolana.expirationTime}`]:[],...!((n=y==null?void 0:y.signInWithSolana)===null||n===void 0)&&n.chainId?[`Chain ID: ${y.signInWithSolana.chainId}`]:[],...!((c=y==null?void 0:y.signInWithSolana)===null||c===void 0)&&c.nonce?[`Nonce: ${y.signInWithSolana.nonce}`]:[],...!((d=y==null?void 0:y.signInWithSolana)===null||d===void 0)&&d.requestId?[`Request ID: ${y.signInWithSolana.requestId}`]:[],...!((m=(u=y==null?void 0:y.signInWithSolana)===null||u===void 0?void 0:u.resources)===null||m===void 0)&&m.length?["Resources",...y.signInWithSolana.resources.map(R=>`- ${R}`)]:[]].join(` 46`);const P=await E.signMessage(new TextEncoder().encode(f),"utf8");if(!P||!(P instanceof Uint8Array))throw new Error("@supabase/auth-js: Wallet signMessage() API returned an recognized value");v=P}}try{const{data:b,error:S}=await Q(this.fetch,"POST",`${this.url}/token?grant_type=web3`,{headers:this.headers,body:Object.assign({chain:"solana",message:f,signature:ko(v)},!((g=e.options)===null||g===void 0)&&g.captchaToken?{gotrue_meta_security:{captcha_token:(p=e.options)===null||p===void 0?void 0:p.captchaToken}}:null),xform:ia});if(S)throw S;if(!b||!b.session||!b.user){const A=new ii;return this._returnResult({data:{user:null,session:null},error:A})}return b.session&&(await this._saveSession(b.session),await this._notifyAllSubscribers("SIGNED_IN",b.session)),this._returnResult({data:Object.assign({},b),error:S})}catch(b){if(F(b))return this._returnResult({data:{user:null,session:null},error:b});throw b}}async _exchangeCodeForSession(e){const o=await va(this.storage,`${this.storageKey}-code-verifier`),[i,t]=(o??"").split("/");try{if(!i&&this.flowType==="pkce")throw new cI;const{data:r,error:s}=await Q(this.fetch,"POST",`${this.url}/token?grant_type=pkce`,{headers:this.headers,body:{auth_code:e,code_verifier:i},xform:ia});if(await xe(this.storage,`${this.storageKey}-code-verifier`),s)throw s;if(!r||!r.session||!r.user){const n=new ii;return this._returnResult({data:{user:null,session:null,redirectType:null},error:n})}return r.session&&(await this._saveSession(r.session),await this._notifyAllSubscribers(t==="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",r.session)),this._returnResult({data:Object.assign(Object.assign({},r),{redirectType:t??null}),error:s})}catch(r){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(r))return this._returnResult({data:{user:null,session:null,redirectType:null},error:r});throw r}}async signInWithIdToken(e){try{const{options:o,provider:i,token:t,access_token:r,nonce:s}
46=e,n=await Q(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,body:{provider:i,id_token:t,access_token:r,nonce:s,gotrue_meta_security:{captcha_token:o==null?void 0:o.captchaToken}},xform:ia}),{data:c,error:d}=n;if(d)return this._returnResult({data:{user:null,session:null},error:d});if(!c||!c.session||!c.user){const u=new ii;return this._returnResult({data:{user:null,session:null},error:u})}return c.session&&(await this._saveSession(c.session),await this._notifyAllSubscribers("SIGNED_IN",c.session)),this._returnResult({data:c,error:d})}catch(o){if(F(o))return this._returnResult({data:{user:null,session:null},error:o});throw o}}async signInWithOtp(e){var o,i,t,r,s;try{if("email"in e){const{email:n,options:c}=e;let d=null,u=null;this.flowType==="pkce"&&([d,u]=await Mo(this.storage,this.storageKey));const{error:m}=await Q(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{email:n,data:(o=c==null?void 0:c.data)!==null&&o!==void 0?o:{},create_user:(i=c==null?void 0:c.shouldCreateUser)!==null&&i!==void 0?i:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},code_challenge:d,code_challenge_method:u},redirectTo:c==null?void 0:c.emailRedirectTo});return this._returnResult({data:{user:null,session:null},error:m})}if("phone"in e){const{phone:n,options:c}=e,{data:d,error:u}=await Q(this.fetch,"POST",`${this.url}/otp`,{headers:this.headers,body:{phone:n,data:(t=c==null?void 0:c.data)!==null&&t!==void 0?t:{},create_user:(r=c==null?void 0:c.shouldCreateUser)!==null&&r!==void 0?r:!0,gotrue_meta_security:{captcha_token:c==null?void 0:c.captchaToken},channel:(s=c==null?void 0:c.channel)!==null&&s!==void 0?s:"sms"}});return this._returnResult({data:{user:null,session:null,messageId:d==null?void 0:d.message_id},error:u})}throw new xr("You must provide either an email or phone number.")}catch(n){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(n))return this._returnResult({data:{user:null,session:null},error:n});throw n}}async verifyOtp(e){var o,i;try{let t,r;"options"in e&&(t=(o=e.options)===null||o===void 0?void 0:o.redirectTo,r=(i=e.options)===null||i===void 0?void 0:i.captchaToken);const{data:s,error:n}=await Q(this.fetch,"POST",`${this.url}/verify`,{headers:this.headers,body:Object.assign(Object.assign({},e),{gotrue_meta_security:{captcha_token:r}}),redirectTo:t,xform:ia});if(n)throw n;if(!s)throw new Error("An error occurred on token verification.");const c=s.session,d=s.user;return c!=null&&c.access_token&&(await this._saveSession(c),await this._notifyAllSubscribers(e.type=="recovery"?"PASSWORD_RECOVERY":"SIGNED_IN",c)),this._returnResult({data:{user:d,session:c},error:null})}catch(t){if(F(t))return this._returnResult({data:{user:null,session:null},error:t});throw t}}async signInWithSSO(e){var o,i,t,r,s;try{let n=null,c=null;this.flowType==="pkce"&&([n,c]=await Mo(this.storage,this.storageKey));const d=await Q(this.fetch,"POST",`${this.url}/sso`,{body:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},"providerId"in e?{provider_id:e.providerId}:null),"domain"in e?{domain:e.domain}:null),{redirect_to:(i=(o=e.options)===null||o===void 0?void 0:o.redirectTo)!==null&&i!==void 0?i:void 0}),!((t=e==null?void 0:e.options)===null||t===void 0)&&t.captchaToken?{gotrue_meta_security:{captcha_token:e.options.captchaToken}}:null),{skip_http_redirect:!0,code_challenge:n,code_challenge_method:c}),headers:this.headers,xform:zI});return!((r=d.data)===null||r===void 0)&&r.url&&qe()&&!(!((s=e.options)===null||s===void 0)&&s.skipBrowserRedirect)&&window.location.assign(d.data.url),this._returnResult(d)}catch(n){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(n))return this._returnResult({data:null,error:n});throw n}}async reauthenticate(){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._reauthenticate()):await this._reauthenticate()}async _reauthenticate(){try{return await this._useSession(async e=>{const{data:{session:o},error:i}=e;if(i)throw i;if(!o)throw new Ne;const{error:t}=await Q(this.fetch,"GET",`${this.url}/reauthenticate`,{headers:this.headers,jwt:o.access_token});return this._returnResult({data:{user:null,session:null},error:t})})}catch(e){if(F(e))return this._returnResult({data:{user:null,session:null},error:e});throw e}}async resend(e){try{const o=`${this.url}/resend`;if("email"in e){const{email:i,type:t,options:r}=e;let s=null,n=null;this.flowType==="pkce"&&([s,n]=await Mo(this.storage,this.storageKey));const{error:c}=await Q(this.fetch,"POST",o,{headers:this.headers,body:{email:i,type:t,gotrue_meta_security:{captcha_token:r==null?void 0:r.captchaToken},code_challenge:s,code_challenge_method:n},redirectTo:r==null?void 0:r.emailRedirectTo});return c&&await xe(this.storage,`${this.storageKey}-code-verifier`),this._returnResult({data:{user:null,session:null},error:c})}else if("phone"in e){const{phone:i,type:t,options:r}=e,{data:s,error:n}=await Q(this.fetch,"POST",o,{headers:this.headers,body:{phone:i,type:t,gotrue_meta_security:{captcha_token:r==null?void 0:r.captchaToken}}});return this._returnResult({data:{user:null,session:null,messageId:s==null?void 0:s.message_id},error:n})}throw new xr("You must provide either an email or phone number and a type")}catch(o){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(o))return this._returnResult({data:{user:null,session:null},error:o});throw o}}async getSession(){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>this._useSession(async e=>e)):await this._useSession(async e=>e)}async _acquireLock(e,o){this._debug("#_acquireLock","begin",e);try{if(this.lockAcquired){const i=this.pendingInLock.length?this.pendingInLock[this.pendingInLock.length-1]:Promise.resolve(),t=(async()=>(await i,await o()))();return this.pendingInLock.push((async()=>{try{await t}catch{}})()),t}return await this.lock(`lock:${this.storageKey}`,e,async()=>{this._debug("#_acquireLock","lock acquired for storage key",this.storageKey);try{this.lockAcquired=!0;const i=o();for(this.pendingInLock.push((async()=>{try{await i}catch{}})()),await i;this.pendingInLock.length;){const t=[...this.pendingInLock];await Promise.all(t),this.pendingInLock.splice(0,t.length)}return await i}finally{this._debug("#_acquireLock","lock released for storage key",this.storageKey),this.lockAcquired=!1}})}finally{this._debug("#_acquireLock","end")}}async _useSession(e){this._debug("#_useSession","begin");try{const o=await this.__loadSession();return await e(o)}finally{this._debug("#_useSession","end")}}async __loadSession(){this._debug("#__loadSession()","begin"),this.lock!=null&&!this.lockAcquired&&this._debug("#__loadSession()","used outside of an acquired lock!",new Error().stack);try{let e=null;const o=await va(this.storage,this.storageKey);if(this._debug("#getSession()","session from storage",o),o!==null&&(this._isValidSession(o)?e=o:(this._debug("#getSession()","session from storage is not val
46id"),await this._removeSession())),!e)return{data:{session:null},error:null};const i=e.expires_at?e.expires_at*1e3-Date.now()<Gn:!1;if(this._debug("#__loadSession()",`session has${i?"":" not"} expired`,"expires_at",e.expires_at),!i){if(this.userStorage){const s=await va(this.userStorage,this.storageKey+"-user");s!=null&&s.user?e.user=s.user:e.user=Vn()}if(this.storage.isServer&&e.user&&!e.user.__isUserNotAvailableProxy){const s={value:this.suppressGetSessionWarning};e.user=DI(e.user,s),s.value&&(this.suppressGetSessionWarning=!0)}return{data:{session:e},error:null}}const{data:t,error:r}=await this._callRefreshToken(e.refresh_token);if(r){if(!!(e.expires_at&&e.expires_at*1e3>Date.now())){const n=await va(this.storage,this.storageKey);if(n&&n.refresh_token===e.refresh_token)return this._returnResult({data:{session:e},error:null})}return this._returnResult({data:{session:null},error:r})}return this._returnResult({data:{session:t},error:null})}finally{this._debug("#__loadSession()","end")}}async getUser(e){if(e)return await this._getUser(e);await this.initializePromise;let o;return this.lock!=null?o=await this._acquireLock(this.lockAcquireTimeout,async()=>await this._getUser()):o=await this._getUser(),o.data.user&&(this.suppressGetSessionWarning=!0),o}async _getUser(e){try{return e?await Q(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:e,xform:mo}):await this._useSession(async o=>{var i,t,r;const{data:s,error:n}=o;if(n)throw n;return!(!((i=s.session)===null||i===void 0)&&i.access_token)&&!this.hasCustomAuthorizationHeader?{data:{user:null},error:new Ne}:await Q(this.fetch,"GET",`${this.url}/user`,{headers:this.headers,jwt:(r=(t=s.session)===null||t===void 0?void 0:t.access_token)!==null&&r!==void 0?r:void 0,xform:mo})})}catch(o){if(F(o))return Rr(o)&&(await this._removeSession(),await xe(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({data:{user:null},error:o});throw o}}async updateUser(e,o={}){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._updateUser(e,o)):await this._updateUser(e,o)}async _updateUser(e,o={}){try{return await this._useSession(async i=>{const{data:t,error:r}=i;if(r)throw r;if(!t.session)throw new Ne;const s=t.session;let n=null,c=null;this.flowType==="pkce"&&e.email!=null&&([n,c]=await Mo(this.storage,this.storageKey));const{data:d,error:u}=await Q(this.fetch,"PUT",`${this.url}/user`,{headers:this.headers,redirectTo:o==null?void 0:o.emailRedirectTo,body:Object.assign(Object.assign({},e),{code_challenge:n,code_challenge_method:c}),jwt:s.access_token,xform:mo});if(u)throw u;return s.user=d.user,await this._saveSession(s),await this._notifyAllSubscribers("USER_UPDATED",s),this._returnResult({data:{user:s.user},error:null})})}catch(i){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(i))return this._returnResult({data:{user:null},error:i});throw i}}async setSession(e){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._setSession(e)):await this._setSession(e)}async _setSession(e){try{if(!e.access_token||!e.refresh_token)throw new Ne;const o=Date.now()/1e3;let i=o,t=!0,r=null;const{payload:s}=Ir(e.access_token);if(s.exp&&(i=s.exp,t=i<=o),t){const{data:n,error:c}=await this._callRefreshToken(e.refresh_token);if(c)return this._returnResult({data:{user:null,session:null},error:c});if(!n)return{data:{user:null,session:null},error:null};r=n}else{const{data:n,error:c}=await this._getUser(e.access_token);if(c)return this._returnResult({data:{user:null,session:null},error:c});r={access_token:e.access_token,refresh_token:e.refresh_token,user:n.user,token_type:"bearer",expires_in:i-o,expires_at:i},await this._saveSession(r),await this._notifyAllSubscribers("SIGNED_IN",r)}return this._returnResult({data:{user:r.user,session:r},error:null})}catch(o){if(F(o))return this._returnResult({data:{session:null,user:null},error:o});throw o}}async refreshSession(e){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._refreshSession(e)):await this._refreshSession(e)}async _refreshSession(e){try{return await this._useSession(async o=>{var i;if(!e){const{data:s,error:n}=o;if(n)throw n;e=(i=s.session)!==null&&i!==void 0?i:void 0}if(!(e!=null&&e.refresh_token))throw new Ne;const{data:t,error:r}=await this._callRefreshToken(e.refresh_token);return r?this._returnResult({data:{user:null,session:null},error:r}):t?this._returnResult({data:{user:t.user,session:t},error:null}):this._returnResult({data:{user:null,session:null},error:null})})}catch(o){if(F(o))return this._returnResult({data:{user:null,session:null},error:o});throw o}}async _getSessionFromURL(e,o){var i;try{if(!qe())throw new wr("No browser detected.");
46if(e.error||e.error_description||e.error_code)throw new wr(e.error_description||"Error in URL with unspecified error_description",{error:e.error||"unspecified_error",code:e.error_code||"unspecified_code"});switch(o){case"implicit":if(this.flowType==="pkce")throw new Im("Not a valid PKCE flow url.");break;case"pkce":if(this.flowType==="implicit")throw new wr("Not a valid implicit grant flow url.");break;default:}if(o==="pkce"){if(this._debug("#_initialize()","begin","is PKCE flow",!0),!e.code)throw new Im("No code detected.");const{data:y,error:E}=await this._exchangeCodeForSession(e.code);if(E)throw E;const C=new URL(window.location.href);return C.searchParams.delete("code"),window.history.replaceState(window.history.state,"",C.toString()),{data:{session:y.session,redirectType:(i=y.redirectType)!==null&&i!==void 0?i:null},error:null}}const{provider_token:t,provider_refresh_token:r,access_token:s,refresh_token:n,expires_in:c,expires_at:d,token_type:u}=e;if(!s||!c||!n||!u)throw new wr("No session defined in URL");const m=Math.round(Date.now()/1e3),g=parseInt(c);let p=m+g;d&&(p=parseInt(d));const f=p-m;f*1e3<=Qa&&console.warn(`@supabase/gotrue-js: Session as retrieved from URL expires in ${f}s, should have been closer to ${g}s`);const v=p-g;m-v>=120?console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued over 120s ago, URL could be stale",v,p,m):m-v<0&&console.warn("@supabase/gotrue-js: Session as retrieved from URL was issued in the future? Check the device clock for skew",v,p,m);const{data:b,error:S}=await this._getUser(s);if(S)throw S;const A={provider_token:t,provider_refresh_token:r,access_token:s,expires_in:g,expires_at:p,refresh_token:n,token_type:u,user:b.user};return window.location.hash="",this._debug("#_getSessionFromURL()","clearing window.location.hash"),this._returnResult({data:{session:A,redirectType:e.type},error:null})}catch(t){if(F(t))return this._returnResult({data:{session:null,redirectType:null},error:t});throw t}}_isImplicitGrantCallback(e){return typeof this.detectSessionInUrl=="function"?this.detectSessionInUrl(new URL(window.location.href),e):!!(e.access_token||e.error||e.error_description||e.error_code)}async _isPKCECallback(e){const o=await va(this.storage,`${this.storageKey}-code-verifier`);return!!(e.code&&o)}async signOut(e={scope:"global"}){return await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>await this._signOut(e)):await this._signOut(e)}async _signOut({scope:e}={scope:"global"}){return await this._useSession(async o=>{var i;const{data:t,error:r}=o;if(r&&!Rr(r))return this._returnResult({error:r});const s=(i=t.session)===null||i===void 0?void 0:i.access_token;if(s){const{error:n}=await this.admin.signOut(s,e);if(n&&!(sI(n)&&(n.status===404||n.status===401||n.status===403)||Rr(n)))return this._returnResult({error:n})}return e!=="others"&&(await this._removeSession(),await xe(this.storage,`${this.storageKey}-code-verifier`)),this._returnResult({error:null})})}onAuthStateChange(e){const o=fI(),i={id:o,callback:e,unsubscribe:()=>{this._debug("#unsubscribe()","state change callback with id removed",o),this.stateChangeEmitters.delete(o)}};return this._debug("#onAuthStateChange()","registered callback with id",o),this.stateChangeEmitters.set(o,i),(async()=>(await this.initializePromise,this.lock!=null?await this._acquireLock(this.lockAcquireTimeout,async()=>{this._emitInitialSession(o)}):await this._emitInitialSession(o)))(),{data:{subscription:i}}}async _emitInitialSession(e){return await this._useSession(async o=>{var i,t;try{const{data:{session:r},error:s}=o;if(s)throw s;await((i=this.stateChangeEmitters.get(e))===null||i===void 0?void 0:i.callback("INITIAL_SESSION",r)),this._debug("INITIAL_SESSION","callback id",e,"session",r)}catch(r){await((t=this.stateChangeEmitters.get(e))===null||t===void 0?void 0:t.callback("INITIAL_SESSION",null)),this._debug("INITIAL_SESSION","callback id",e,"error",r),Rr(r)?console.warn(r):console.error(r)}})}async resetPasswordForEmail(e,o={}){let i=null,t=null;this.flowType==="pkce"&&([i,t]=await Mo(this.storage,this.storageKey,!0));try{return await Q(this.fetch,"POST",`${this.url}/recover`,{body:{email:e,code_challenge:i,code_challenge_method:t,gotrue_meta_security:{captcha_token:o.captchaToken}},headers:this.headers,redirectTo:o.redirectTo})}catch(r){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(r))return this._returnResult({data:null,error:r});throw r}}async getUserIdentities(){var e;try{const{data:o,error:i}=await this.getUser();if(i)throw i;return this._returnResult({data:{identities:(e=o.user.identities)!==null&&e!==void 0?e:[]},error:null})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async linkIdentity(e){return"token"in e?this.linkIdentityIdToken(e):this.linkIdentityOAuth(e)}async linkIdentityOAuth(e){var o;try{const{data:i,error:t}=await this._useSession(async r=>{var s,n,c,d,u;const{data:m,error:g}=r;if(g)throw g;const p=await this._getUrlForProvider(`${this.url}/user/identities/authorize`,e.provider,{redirectTo:(s=e.options)===null||s===void 0?void 0:s.redirectTo,scopes:(n=e.options)===null||n===void 0?void 0:n.scopes,queryParams:(c=e.options)===null||c===void 0?void 0:c.queryParams,skipBrowserRedirect:!0});return await Q(this.fetch,"GET",p,{headers:this.headers,jwt:(u=(d=m.session)===null||d===void 0?void 0:d.access_token)!==null&&u!==void 0?u:void 0})});if(t)throw t;return qe()&&!(!((o=e.options)===null||o===void 0)&&o.skipBrowserRedirect)&&window.location.assign(i==null?void 0:i.url),this._returnResult({data:{provider:e.provider,url:i==null?void 0:i.url},error:null})}catch(i){if(F(i))return this._returnResult({data:{provider:e.provider,url:null},error:i});throw i}}async linkIdentityIdToken(e){return await this._useSession(async o=>{var i;try{const{error:t,data:{session:r}}=o;if(t)throw t;const{options:s,provider:n,token:c,access_token:d,nonce:u}=e,m=await Q(this.fetch,"POST",`${this.url}/token?grant_type=id_token`,{headers:this.headers,jwt:(i=r==null?void 0:r.access_token)!==null&&i!==void 0?i:void 0,body:{provider:n,id_token:c,access_token:d,nonce:u,link_identity:!0,gotrue_meta_security:{captcha_token:s==null?void 0:s.captchaToken}},xform:ia}),{data:g,error:p}=m;return p?this._returnResult({data:{user:null,session:null},error:p}):!g||!g.session||!g.user?this._returnResult({data:{user:null,session:null},error:new ii}):(g.session&&(await this._saveSession(g.session),await this._notifyAllSubscribers("USER_UPDATED",g.session)),this._returnResult({data:g,error:p}))}catch(t){if(await xe(this.storage,`${this.storageKey}-code-verifier`),F(t))return this._returnResult({data:{user:null,session:null},error:t});throw t}})}async unlinkIdentity(e){try{return await this._useSession(async o=>{var i,t;const{data:r,error:s}=o;if(s)throw s;
46return await Q(this.fetch,"DELETE",`${this.url}/user/identities/${e.identity_id}`,{headers:this.headers,jwt:(t=(i=r.session)===null||i===void 0?void 0:i.access_token)!==null&&t!==void 0?t:void 0})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _refreshAccessToken(e){const o="#_refreshAccessToken()";this._debug(o,"begin");try{const i=Date.now();return await yI(async t=>(t>0&&await AI(200*Math.pow(2,t-1)),this._debug(o,"refreshing attempt",t),await Q(this.fetch,"POST",`${this.url}/token?grant_type=refresh_token`,{body:{refresh_token:e},headers:this.headers,xform:ia})),(t,r)=>{const s=200*Math.pow(2,t);return r&&Dm(r)&&Date.now()+s-i<Qa})}catch(i){if(this._debug(o,"error",i),F(i))return this._returnResult({data:{session:null,user:null},error:i});throw i}finally{this._debug(o,"end")}}_isValidSession(e){return typeof e=="object"&&e!==null&&"access_token"in e&&"refresh_token"in e&&"expires_at"in e}async _handleProviderSignIn(e,o){const i=await this._getUrlForProvider(`${this.url}/authorize`,e,{redirectTo:o.redirectTo,scopes:o.scopes,queryParams:o.queryParams});return this._debug("#_handleProviderSignIn()","provider",e,"options",o,"url",i),qe()&&!o.skipBrowserRedirect&&window.location.assign(i),{data:{provider:e,url:i},error:null}}async _recoverAndRefresh(){var e,o;const i="#_recoverAndRefresh()";this._debug(i,"begin");try{const t=await va(this.storage,this.storageKey);if(t&&this.userStorage){let s=await va(this.userStorage,this.storageKey+"-user");!this.storage.isServer&&Object.is(this.storage,this.userStorage)&&!s&&(s={user:t.user},await li(this.userStorage,this.storageKey+"-user",s)),t.user=(e=s==null?void 0:s.user)!==null&&e!==void 0?e:Vn()}else if(t&&!t.user&&!t.user){const s=await va(this.storage,this.storageKey+"-user");s&&(s!=null&&s.user)?(t.user=s.user,await xe(this.storage,this.storageKey+"-user"),await li(this.storage,this.storageKey,t)):t.user=Vn()}if(this._debug(i,"session from storage",t),!this._isValidSession(t)){this._debug(i,"session is not valid"),t!==null&&await this._removeSession();return}const r=((o=t.expires_at)!==null&&o!==void 0?o:1/0)*1e3-Date.now()<Gn;if(this._debug(i,`session has${r?"":" not"} expired with margin of ${Gn}s`),r){if(this.autoRefreshToken&&t.refresh_token){const{error:s}=await this._callRefreshToken(t.refresh_token);s&&(dI(s)?this._debug(i,"refresh discarded by commit guard",s):this._debug(i,"refresh failed",s))}}else if(t.user&&t.user.__isUserNotAvailableProxy===!0)try{const{data:s,error:n}=await this._getUser(t.access_token);!n&&(s!=null&&s.user)?(t.user=s.user,await this._saveSession(t),await this._notifyAllSubscribers("SIGNED_IN",t)):this._debug(i,"could not get user data, skipping SIGNED_IN notification")}catch(s){console.error("Error getting user data:",s),this._debug(i,"error getting user data, skipping SIGNED_IN notification",s)}else await this._notifyAllSubscribers("SIGNED_IN",t)}catch(t){this._debug(i,"error",t),console.error(t);return}finally{this._debug(i,"end")}}async _callRefreshToken(e){var o,i;if(!e)throw new Ne;if(this.refreshingDeferred)return this.refreshingDeferred.promise;if(this.lastRefreshFailure&&this.lastRefreshFailure.refreshToken===e&&Date.now()<this.lastRefreshFailure.expiresAt)return this._debug("#_callRefreshToken()","returning cached failure (cooldown active)"),this.lastRefreshFailure.result;const t="#_callRefreshToken()";this._debug(t,"begin");try{this.refreshingDeferred=new rn;const r=await va(this.storage,this.storageKey),{data:s,error:n}=await this._refreshAccessToken(e);if(n)throw n;if(!s.session)throw new Ne;const c=await va(this.storage,this.storageKey);if(r!==null&&(c===null||c.refresh_token!==r.refresh_token)){this._debug(t,"commit guard: storage changed since refresh started, discarding rotated tokens",{startedWith:"present",nowHolds:c?"replaced":"cleared"});const g={data:null,error:new Om};return this.refreshingDeferred.resolve(g),g}const u=this._sessionRemovalEpoch;if(await this._saveSession(s.session),this._sessionRemovalEpoch!==u){this._debug(t,"commit guard (post-save): _removeSession ran during _saveSession, und
46oing write"),await xe(this.storage,this.storageKey),this.userStorage&&await xe(this.userStorage,this.storageKey+"-user");const g={data:null,error:new Om};return this.refreshingDeferred.resolve(g),g}await this._notifyAllSubscribers("TOKEN_REFRESHED",s.session);const m={data:s.session,error:null};return this.lastRefreshFailure=null,this.refreshingDeferred.resolve(m),m}catch(r){if(this._debug(t,"error",r),F(r)){const s={data:null,error:r};if(!Dm(r)){const n=await va(this.storage,this.storageKey);!!(n!=null&&n.expires_at&&n.expires_at*1e3>Date.now())?this._debug(t,"proactive refresh failed, access token still valid â preserving session"):await this._removeSession()}return this.lastRefreshFailure={refreshToken:e,result:s,expiresAt:Date.now()+Zw},(o=this.refreshingDeferred)===null||o===void 0||o.resolve(s),s}throw(i=this.refreshingDeferred)===null||i===void 0||i.reject(r),r}finally{this.refreshingDeferred=null,this._debug(t,"end")}}async _notifyAllSubscribers(e,o,i=!0){const t=`#_notifyAllSubscribers(${e})`;this._debug(t,"begin",o,`broadcast = ${i}`);try{this.broadcastChannel&&i&&this.broadcastChannel.postMessage({event:e,session:o});const r=[],s=Array.from(this.stateChangeEmitters.values()).map(async n=>{try{await n.callback(e,o)}catch(c){r.push(c)}});if(await Promise.all(s),r.length>0){for(let n=0;n<r.length;n+=1)console.error(r[n]);throw r[0]}}finally{this._debug(t,"end")}}async _saveSession(e){this._debug("#_saveSession()",e),this.suppressGetSessionWarning=!0,await xe(this.storage,`${this.storageKey}-code-verifier`);const o=Object.assign({},e),i=o.user&&o.user.__isUserNotAvailableProxy===!0;if(this.userStorage){!i&&o.user&&await li(this.userStorage,this.storageKey+"-user",{user:o.user});const t=Object.assign({},o);delete t.user;const r=km(t);await li(this.storage,this.storageKey,r)}else{const t=km(o);await li(this.storage,this.storageKey,t)}}async _removeSession(){this._sessionRemovalEpoch+=1,this._debug("#_removeSession()"),this.lastRefreshFailure=null,this.suppressGetSessionWarning=!1,await xe(this.storage,this.storageKey),await xe(this.storage,this.storageKey+"-code-verifier"),await xe(this.storage,this.storageKey+"-user"),this.userStorage&&await xe(this.userStorage,this.storageKey+"-user"),await this._notifyAllSubscribers("SIGNED_OUT",null)}_removeVisibilityChangedCallback(){this._debug("#_removeVisibilityChangedCallback()");const e=this.visibilityChangedCallback;this.visibilityChangedCallback=null;try{e&&qe()&&(window!=null&&window.removeEventListener)&&window.removeEventListener("visibilitychange",e)}catch(o){console.error("removing visibilitychange callback failed",o)}}async _startAutoRefresh(){await this._stopAutoRefresh(),this._debug("#_startAutoRefresh()");const e=setInterval(()=>this._autoRefreshTokenTick(),Qa);this.autoRefreshTicker=e,e&&typeof e=="object"&&typeof e.unref=="function"?e.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(e);const o=setTimeout(async()=>{await this.initializePromise,await this._autoRefreshTokenTick()},0);this.autoRefreshTickTimeout=o,o&&typeof o=="object"&&typeof o.unref=="function"?o.unref():typeof Deno<"u"&&typeof Deno.unrefTimer=="function"&&Deno.unrefTimer(o)}async _stopAutoRefresh(){this._debug("#_stopAutoRefresh()");const e=this.autoRefreshTicker;this.autoRefreshTicker=null,e&&clearInterval(e);const o=this.autoRefreshTickTimeout;this.autoRefreshTickTimeout=null,o&&clearTimeout(o)}async startAutoRefresh(){this._removeVisibilityChangedCallback(),await this._startAutoRefresh()}async stopAutoRefresh(){this._removeVisibilityChangedCallback(),await this._stopAutoRefresh()}async dispose(){var e;this._removeVisibilityChangedCallback(),await this._stopAutoRefresh(),(e=this.broadcastChannel)===null||e===void 0||e.close(),this.broadcastChannel=null,this.stateChangeEmitters.clear()}async _autoRefreshTokenTick(){if(this._debug("#_autoRefreshTokenTick()","begin"),this.lock!=null){try{await this._acquireLock(0,async()=>{try{const e=Date.now();try{return await this._useSession(async o=>{const{data:{session:i}}=o;if(!i||!i.refresh_token||!i.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const t=Math.floor((i.expires_at*1e3-e)/Qa);this._debug("#_autoRefreshTokenTick()",`access token expires in ${t} ticks, a tick lasts ${Qa}ms, refresh threshold is ${ct} ticks`),t<=ct&&await this._callRefreshToken(i.refresh_token)})}catch(o){console.error("Auto refresh tick failed with error. This is likely a transient error.",o)}}finally{this._debug("#_autoRefreshTokenTick()","end")}})}catch(e){if(e instanceof qI)this._debug("auto refresh token tick lock not available");else throw e}return}if(this.refreshingDeferred!==null){this._debug("#_autoRefreshTokenTick()","refresh already in flight, skipping");return}try{const e=Date.now();try{await this._useSession(async o=>{const{data:{session:i}}=o;if(!i||!i.refresh_token||!i.expires_at){this._debug("#_autoRefreshTokenTick()","no session");return}const t=Math.floor((i.expires_at*1e3-e)/Qa);this._debug("#_autoRefreshTokenTick()",`access token expires in ${t} ticks, a tick lasts ${Qa}ms, refresh threshold is ${ct} ticks`),t<=ct&&await this._callRefreshToken(i.refresh_token)})}catch(o){console.error("Auto refresh tick failed with error. This is likely a transient error.",o)}}finally{this._debug("#_autoRefreshTokenTick()","end")}}async _handleVisibilityChange(){if(this._debug("#_handleVisibilityChange()"),!qe()||!(window!=null&&window.addEventListener))return this.autoRefreshToken&&this.startAutoRefresh(),!1;try{this.visibilityChangedCallback=async()=>{try{await this._onVisibilityChanged(!1)}catch(e){this._debug("#visibilityChangedCallback","error",e)}},window==null||window.addEventListener("visibilitychange",this.visibilityChangedCallback),await this._onVisibilityChanged(!0)}catch(e){console.error("_handleVisibilityChange",e)}}async _onVisibilityChanged(e){const o=`#_onVisibilityChanged(${e})`;if(this._debug(o,"visibilityState",document.visibilityState),document.visibilityState==="visible"){if(this.autoRefreshToken&&this._startAutoRefresh(),!e)if(await this.initializePromise,this.lock!=null)await this._acquireLock(this.lockAcquireTimeout,async()=>
46{if(document.visibilityState!=="visible"){this._debug(o,"acquired the lock to recover the session, but the browser visibilityState is no longer visible, aborting");return}await this._recoverAndRefresh()});else{if(document.visibilityState!=="visible"){this._debug(o,"visibilityState is no longer visible, skipping recovery");return}await this._recoverAndRefresh()}}else document.visibilityState==="hidden"&&this.autoRefreshToken&&this._stopAutoRefresh()}async _getUrlForProvider(e,o,i){const t=[`provider=${encodeURIComponent(o)}`];if(i!=null&&i.redirectTo&&t.push(`redirect_to=${encodeURIComponent(i.redirectTo)}`),i!=null&&i.scopes&&t.push(`scopes=${encodeURIComponent(i.scopes)}`),this.flowType==="pkce"){const[r,s]=await Mo(this.storage,this.storageKey),n=new URLSearchParams({code_challenge:`${encodeURIComponent(r)}`,code_challenge_method:`${encodeURIComponent(s)}`});t.push(n.toString())}if(i!=null&&i.queryParams){const r=new URLSearchParams(i.queryParams);t.push(r.toString())}return i!=null&&i.skipBrowserRedirect&&t.push(`skip_http_redirect=${i.skipBrowserRedirect}`),`${e}?${t.join("&")}`}async _unenroll(e){try{return await this._useSession(async o=>{var i;const{data:t,error:r}=o;return r?this._returnResult({data:null,error:r}):await Q(this.fetch,"DELETE",`${this.url}/factors/${e.factorId}`,{headers:this.headers,jwt:(i=t==null?void 0:t.session)===null||i===void 0?void 0:i.access_token})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _enroll(e){try{return await this._useSession(async o=>{var i,t;const{data:r,error:s}=o;if(s)return this._returnResult({data:null,error:s});const n=Object.assign({friendly_name:e.friendlyName,factor_type:e.factorType},e.factorType==="phone"?{phone:e.phone}:e.factorType==="totp"?{issuer:e.issuer}:{}),{data:c,error:d}=await Q(this.fetch,"POST",`${this.url}/factors`,{body:n,headers:this.headers,jwt:(i=r==null?void 0:r.session)===null||i===void 0?void 0:i.access_token});return d?this._returnResult({data:null,error:d}):(e.factorType==="totp"&&c.type==="totp"&&(!((t=c==null?void 0:c.totp)===null||t===void 0)&&t.qr_code)&&(c.totp.qr_code=`data:image/svg+xml;utf-8,${c.totp.qr_code}`),this._returnResult({data:c,error:null}))})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _verify(e){const o=async()=>{try{return await this._useSession(async i=>{var t;const{data:r,error:s}=i;if(s)return this._returnResult({data:null,error:s});const n=Object.assign({challenge_id:e.challengeId},"webauthn"in e?{webauthn:Object.assign(Object.assign({},e.webauthn),{credential_response:e.webauthn.type==="create"?Gm(e.webauthn.credential_response):Vm(e.webauthn.credential_response)})}:{code:e.code}),{data:c,error:d}=await Q(this.fetch,"POST",`${this.url}/factors/${e.factorId}/verify`,{body:n,headers:this.headers,jwt:(t=r==null?void 0:r.session)===null||t===void 0?void 0:t.access_token});return d?this._returnResult({data:null,error:d}):(await this._saveSession(Object.assign({expires_at:Math.round(Date.now()/1e3)+c.expires_in},c)),await this._notifyAllSubscribers("MFA_CHALLENGE_VERIFIED",c),this._returnResult({data:c,error:d}))})}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}};return this.lock!=null?this._acquireLock(this.lockAcquireTimeout,o):o()}async _challenge(e){const o=async()=>{try{return await this._useSession(async i=>{var t;const{data:r,error:s}=i;if(s)return this._returnResult({data:null,error:s});const n=await Q(this.fetch,"POST",`${this.url}/factors/${e.factorId}/challenge`,{body:e,headers:this.headers,jwt:(t=r==null?void 0:r.session)===null||t===void 0?void 0:t.access_token});if(n.error)return n;const{data:c}=n;if(c.type!=="webauthn")return{data:c,error:null};switch(c.webauthn.type){case"create":return{data:Object.assign(Object.assign({},c),{webauthn:Object.assign(Object.assign({},c.webauthn),{credential_options:Object.assign(Object.assign({},c.webauthn.credential_options),{publicKey:Bm(c.webauthn.credential_options.publicKey)})})}),error:null};case"request":return{data:Object.assign(Object.assign({},c),{webauthn:Object.assign(Object.assign({},c.webauthn),{credential_options:Object.assign(Object.assign({},c.webauthn.credential_options),{publicKey:Fm(c.webauthn.credential_options.publicKey)})})}),error:null}}})}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}};return this.lock!=null?this._acquireLock(this.lockAcquireTimeout,o):o()}async _challengeAndVerify(e){const{data:o,error:i}=await this._challenge({factorId:e.factorId});return i?this._returnResult({data:null,error:i}):await this._verify({factorId:e.factorId,challengeId:o.id,code:e.code})}async _listFactors(){var e;const{data:{user:o},error:i}=await this.getUser();if(i)return{data:null,error:i};const t={all:[],phone:[],totp:[],webauthn:[]};for(const r of(e=o==null?void 0:o.factors)!==null&&e!==void 0?e:[])t.all.push(r),r.status==="verified"&&t[r.factor_type].push(r);return{data:t,error:null}}async _getAuthenticatorAssuranceLevel(e){var o,i,t,r;if(e)try{const{payload:p}=Ir(e);let f=null;p.aal&&(f=p.aal);let v=f;const{data:{user:b},error:S}=await this.getUser(e);if(S)return this._returnResult({data:null,error:S});((i=(o=b==null?void 0:b.factors)===null||o===void 0?void 0:o.filter(E=>E.status==="verified"))!==null&&i!==void 0?i:[]).length>0&&(v="aal2");const y=p.amr||[];return{data:{currentLevel:f,nextLevel:v,currentAuthenticationMethods:y},error:null}}catch(p){if(F(p))return this._returnResult({data:null,error:p});throw p}const{data:{session:s},error:n}
46=await this.getSession();if(n)return this._returnResult({data:null,error:n});if(!s)return{data:{currentLevel:null,nextLevel:null,currentAuthenticationMethods:[]},error:null};const{payload:c}=Ir(s.access_token);let d=null;c.aal&&(d=c.aal);let u=d;((r=(t=s.user.factors)===null||t===void 0?void 0:t.filter(p=>p.status==="verified"))!==null&&r!==void 0?r:[]).length>0&&(u="aal2");const g=c.amr||[];return{data:{currentLevel:d,nextLevel:u,currentAuthenticationMethods:g},error:null}}async _getAuthorizationDetails(e){try{return await this._useSession(async o=>{const{data:{session:i},error:t}=o;return t?this._returnResult({data:null,error:t}):i?await Q(this.fetch,"GET",`${this.url}/oauth/authorizations/${e}`,{headers:this.headers,jwt:i.access_token,xform:r=>({data:r,error:null})}):this._returnResult({data:null,error:new Ne})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _approveAuthorization(e,o){try{return await this._useSession(async i=>{const{data:{session:t},error:r}=i;if(r)return this._returnResult({data:null,error:r});if(!t)return this._returnResult({data:null,error:new Ne});const s=await Q(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:t.access_token,body:{action:"approve"},xform:n=>({data:n,error:null})});return s.data&&s.data.redirect_url&&qe()&&!(o!=null&&o.skipBrowserRedirect)&&window.location.assign(s.data.redirect_url),s})}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}}async _denyAuthorization(e,o){try{return await this._useSession(async i=>{const{data:{session:t},error:r}=i;if(r)return this._returnResult({data:null,error:r});if(!t)return this._returnResult({data:null,error:new Ne});const s=await Q(this.fetch,"POST",`${this.url}/oauth/authorizations/${e}/consent`,{headers:this.headers,jwt:t.access_token,body:{action:"deny"},xform:n=>({data:n,error:null})});return s.data&&s.data.redirect_url&&qe()&&!(o!=null&&o.skipBrowserRedirect)&&window.location.assign(s.data.redirect_url),s})}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}}async _listOAuthGrants(){try{return await this._useSession(async e=>{const{data:{session:o},error:i}=e;return i?this._returnResult({data:null,error:i}):o?await Q(this.fetch,"GET",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:o.access_token,xform:t=>({data:t,error:null})}):this._returnResult({data:null,error:new Ne})})}catch(e){if(F(e))return this._returnResult({data:null,error:e});throw e}}async _revokeOAuthGrant(e){try{return await this._useSession(async o=>{const{data:{session:i},error:t}=o;return t?this._returnResult({data:null,error:t}):i?(await Q(this.fetch,"DELETE",`${this.url}/user/oauth/grants`,{headers:this.headers,jwt:i.access_token,query:{client_id:e.clientId},noResolveJson:!0}),{data:{},error:null}):this._returnResult({data:null,error:new Ne})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async fetchJwk(e,o={keys:[]}){let i=o.keys.find(n=>n.kid===e);if(i)return i;const t=Date.now();if(i=this.jwks.keys.find(n=>n.kid===e),i&&this.jwks_cached_at+tI>t)return i;const{data:r,error:s}=await Q(this.fetch,"GET",`${this.url}/.well-known/jwks.json`,{headers:this.headers});if(s)throw s;return!r.keys||r.keys.length===0||(this.jwks=r,this.jwks_cached_at=t,i=r.keys.find(n=>n.kid===e),!i)?null:i}async getClaims(e,o={}){try{let i=e;if(!i){const{data:p,error:f}
46=await this.getSession();if(f||!p.session)return this._returnResult({data:null,error:f});i=p.session.access_token}const{header:t,payload:r,signature:s,raw:{header:n,payload:c}}=Ir(i);if(!(o!=null&&o.allowExpired))try{xI(r.exp)}catch(p){throw new ps(p instanceof Error?p.message:"JWT validation failed")}const d=!t.alg||t.alg.startsWith("HS")||!t.kid||!("crypto"in globalThis&&"subtle"in globalThis.crypto)?null:await this.fetchJwk(t.kid,o!=null&&o.keys?{keys:o.keys}:o==null?void 0:o.jwks);if(!d){const{error:p}=await this.getUser(i);if(p)throw p;return{data:{claims:r,header:t,signature:s},error:null}}const u=wI(t.alg),m=await crypto.subtle.importKey("jwk",d,u,!0,["verify"]);if(!await crypto.subtle.verify(u,m,s,gI(`${n}.${c}`)))throw new ps("Invalid JWT signature");return{data:{claims:r,header:t,signature:s},error:null}}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}}async signInWithPasskey(e){var o,i,t;Aa(this.experimental);try{if(!fs())return this._returnResult({data:null,error:new Ca("Browser does not support WebAuthn",null)});const{data:r,error:s}=await this._startPasskeyAuthentication({options:{captchaToken:(o=e==null?void 0:e.options)===null||o===void 0?void 0:o.captchaToken}});if(s||!r)return this._returnResult({data:null,error:s});const n=Fm(r.options),c=(t=(i=e==null?void 0:e.options)===null||i===void 0?void 0:i.signal)!==null&&t!==void 0?t:id.createNewAbortSignal(),{data:d,error:u}=await Wf({publicKey:n,signal:c});if(u||!d)return this._returnResult({data:null,error:u??new Ca("WebAuthn ceremony failed",null)});const m=Vm(d);return this._verifyPasskeyAuthentication({challengeId:r.challenge_id,credential:m})}catch(r){if(F(r))return this._returnResult({data:null,error:r});throw r}}async registerPasskey(e){var o,i;Aa(this.experimental);try{if(!fs())return this._returnResult({data:null,error:new Ca("Browser does not support WebAuthn",null)});const{data:t,error:r}=await this._startPasskeyRegistration();if(r||!t)return this._returnResult({data:null,error:r});const s=Bm(t.options),n=(i=(o=e==null?void 0:e.options)===null||o===void 0?void 0:o.signal)!==null&&i!==void 0?i:id.createNewAbortSignal(),{data:c,error:d}=await Hf({publicKey:s,signal:n});if(d||!c)return this._returnResult({data:null,error:d??new Ca("WebAuthn ceremony failed",null)});const u=Gm(c);return this._verifyPasskeyRegistration({challengeId:t.challenge_id,credential:u})}catch(t){if(F(t))return this._returnResult({data:null,error:t});throw t}}async _startPasskeyRegistration(){Aa(this.experimental);try{return await this._useSession(async e=>{const{data:{session:o},error:i}=e;if(i)return this._returnResult({data:null,error:i});if(!o)return this._returnResult({data:null,error:new Ne});const{data:t,error:r}=await Q(this.fetch,"POST",`${this.url}/passkeys/registration/options`,{headers:this.headers,jwt:o.access_token,body:{}});return r?this._returnResult({data:null,error:r}):this._returnResult({data:t,error:null})})}catch(e){if(F(e))return this._returnResult({data:null,error:e});throw e}}async _verifyPasskeyRegistration(e){Aa(this.experimental);try{return await this._useSession(async o=>{const{data:{session:i},error:t}=o;if(t)return this._returnResult({data:null,error:t});if(!i)return this._returnResult({data:null,error:new Ne});const{data:r,error:s}=await Q(this.fetch,"POST",`${this.url}/passkeys/registration/verify`,{headers:this.headers,jwt:i.access_token,body:{challenge_id:e.challengeId,credential:e.credential}});return s?this._returnResult({data:null,error:s}):this._returnResult({data:r,error:null})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _startPasskeyAuthentication(e){var o;Aa(this.experimental);try{const{data:i,error:t}=await Q(this.fetch,"POST",`${this.url}/passkeys/authentication/options`,{headers:this.headers,body:{gotrue_meta_security:{captcha_token:(o=e==null?void 0:e.options)===null||o===void 0?void 0:o.captchaToken}}});return t?this._returnResult({data:null,error:t}):this._returnResult({data:i,error:null})}catch(i){if(F(i))return this._returnResult({data:null,error:i});throw i}}async _verifyPasskeyAuthentication(e){Aa(this.experimental);try{const{data:o,error:i}=await Q(this.fetch,"POST",`${this.url}/passkeys/authentication/verify`,{headers:this.headers,body:{challenge_id:e.challengeId,credential:e.credential},xform:ia});return i?this._returnResult({data:null,error:i}):(o.session&&(await this._saveSession(o.session),await this._notifyAllSubscribers("SIGNED_IN",o.session)),this._returnResult({data:o,error:null}))}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _listPasskeys(){Aa(this.experimental);try{return await this._useSession(async e=>{const{data:{session:o},error:i}=e;if(i)return this._returnResult({data:null,error:i});if(!o)return this._returnResult({data:null,error:new Ne});const{data:t,error:r}=await Q(this.fetch,"GET",`${this.url}/passkeys`,{headers:this.headers,jwt:o.access_token,xform:s=>({data:s,error:null})});return r?this._returnResult({data:null,error:r}):this._returnResult({data:t,error:null})})}catch(e){if(F(e))return this._returnResult({data:null,error:e});throw e}}async _updatePasskey(e){Aa(this.experimental);try{return await this._useSession(async o=>{const{data:{session:i},error:t}=o;if(t)return this._returnResult({data:null,error:t});if(!i)return this._returnResult({data:null,error:new Ne});const{data:r,error:s}=await Q(this.fetch,"PATCH",`${this.url}/passkeys/${e.passkeyId}`,{headers:this.headers,jwt:i.access_token,body:{friendly_name:e.friendlyName}});return s?this._returnResult({data:null,error:s}):this._returnResult({data:r,error:null})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}async _deletePasskey(e){Aa(this.experimental);try{return await this._useSession(async o=>{const{data:{session:i},error:t}=o;if(t)return this._returnResult({data:null,error:t});if(!i)return this._returnResult({data:null,error:new Ne});const{error:r}
46=await Q(this.fetch,"DELETE",`${this.url}/passkeys/${e.passkeyId}`,{headers:this.headers,jwt:i.access_token,noResolveJson:!0});return r?this._returnResult({data:null,error:r}):this._returnResult({data:null,error:null})})}catch(o){if(F(o))return this._returnResult({data:null,error:o});throw o}}}zt.nextInstanceID={};const XI=zt,ZI="2.108.2";let dt="",bs;if(typeof Deno<"u"){var Hn;dt="deno",bs=(Hn=Deno.version)===null||Hn===void 0?void 0:Hn.deno}else if(typeof document<"u")dt="web";else if(typeof navigator<"u"&&navigator.product==="ReactNative")dt="react-native";else{var Wn;dt="node",bs=typeof process<"u"?(Wn=process.version)===null||Wn===void 0?void 0:Wn.replace(/^v/,""):void 0}const Qf=[`runtime=${dt}`];bs&&Qf.push(`runtime-version=${bs}`);const e0={"X-Client-Info":`supabase-js/${ZI}; ${Qf.join("; ")}`},a0={headers:e0},o0={schema:"public"},i0={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},t0={},r0={enabled:!1,respectSamplingDecision:!0};function s0(a,e,o,i){function t(r){return r instanceof o?r:new o(function(s){s(r)})}return new(o||(o=Promise))(function(r,s){function n(u){try{d(i.next(u))}catch(m){s(m)}}function c(u){try{d(i.throw(u))}catch(m){s(m)}}function d(u){u.done?r(u.value):t(u.value).then(n,c)}d((i=i.apply(a,[])).next())})}let Qn=null;const n0="@opentelemetry/api";function c0(){return Qn===null&&(Qn=import(n0).catch(()=>null)),Qn}function d0(){return s0(this,void 0,void 0,function*(){try{const a=yield c0();if(!a||!a.propagation||!a.context)return null;const e={};a.propagation.inject(a.context.active(),e);const o=e.traceparent;return o?{traceparent:o,tracestate:e.tracestate,baggage:e.baggage}:null}catch{return null}})}function l0(a){if(!a||typeof a!="string")return null;const e=a.split("-");if(e.length!==4)return null;const[o,i,t,r]=e;if(o.length!==2||i.length!==32||t.length!==16||r.length!==2)return null;const s=/^[0-9a-f]+$/i;return!s.test(o)||!s.test(i)||!s.test(t)||!s.test(r)||i==="00000000000000000000000000000000"||t==="0000000000000000"?null:{version:o,traceId:i,parentId:t,traceFlags:r,isSampled:(parseInt(r,16)&1)===1}}function u0(a,e){if(!a||!e||e.length===0)return!1;let o;if(a instanceof URL)o=a;else try{o=new URL(a)}catch{return!1}for(const i of e)try{if(typeof i=="string"){if(m0(o.hostname,i))return!0}else if(i instanceof RegExp){if(i.test(o.hostname))return!0}else if(typeof i=="function"&&i(o))return!0}catch{continue}return!1}function m0(a,e){if(e===a)return!0;if(e.startsWith("*.")){const o=e.slice(2);if(a.endsWith(o)&&(a===o||a.endsWith("."+o)))return!0}return!1}function p0(a){const e=[];try{const o=new URL(a);e.push(o.hostname)}catch{}return e.push("*.supabase.co","*.supabase.in"),e.push("localhost","127.0.0.1","[::1]"),e}function jt(a){"@babel/helpers - typeof";return jt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jt(a)}function g0(a,e){if(jt(a)!="object"||!a)return a;var o=a[Symbol.toPrimitive];if(o!==void 0){var i=o.call(a,e||"default");if(jt(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(a)}function h0(a){var e=g0(a,"string");return jt(e)=="symbol"?e:e+""}function f0(a,e,o){return(e=h0(e))in a?Object.defineProperty(a,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):a[e]=o,a}function $m(a,e){var o=Object.keys(a);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(a);e&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(a,t).enumerable})),o.push.apply(o,i)}return o}function Re(a){for(var e=1;e<arguments.length;e++){var o=arguments[e]!=null?arguments[e]:{};e%2?$m(Object(o),!0).forEach(function(i){f0(a,i,o[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(o)):$m(Object(o)).forEach(function(i){Object.defineProperty(a,i,Object.getOwnPropertyDescriptor(o,i))})}return a}const v0=a=>a?(...e)=>a(...e):(...e)=>fetch(...e),b0=()=>Headers,A0=(a,e,o,i,t)=>{const r=v0(i),s=b0(),n=(t==null?void 0:t.enabled)===!0,c=(t==null?void 0:t.respectSamplingDecision)!==!1,d=n?p0(e):null;return async(u,m)=>{var g;const p=(g=await o())!==null&&g!==void 0?g:a;let f=new s(m==null?void 0:m.headers);if(f.has("apikey")||f.set("apikey",a),f.has("Authorization")||f.set("Authorization",`Bearer ${p}`),d){const v=await y0(u,d,c);v&&(v.traceparent&&!f.has("traceparent")&&f.set("traceparent",v.traceparent),v.tracestate&&!f.has("tracestate")&&f.set("tracestate",v.tracestate),v.baggage&&!f.has("baggage")&&f.set("baggage",v.baggage))}return r(u,Re(Re({},m),{},{headers:f}))}};
46async function y0(a,e,o){if(!u0(typeof a=="string"||a instanceof URL?a:a.url,e))return null;const i=await d0();if(!i||!i.traceparent)return null;if(o){const t=l0(i.traceparent);if(t&&!t.isSampled)return null}return i}function Hm(a){return typeof a=="boolean"?{enabled:a}:a}function S0(a){return a.endsWith("/")?a:a+"/"}function E0(a,e){var o,i,t,r,s,n;const{db:c,auth:d,realtime:u,global:m}=a,{db:g,auth:p,realtime:f,global:v}=e,b=Hm(a.tracePropagation),S=Hm(e.tracePropagation),A={db:Re(Re({},g),c),auth:Re(Re({},p),d),realtime:Re(Re({},f),u),storage:{},global:Re(Re(Re({},v),m),{},{headers:Re(Re({},(o=v==null?void 0:v.headers)!==null&&o!==void 0?o:{}),(i=m==null?void 0:m.headers)!==null&&i!==void 0?i:{})}),tracePropagation:{enabled:(t=(r=b==null?void 0:b.enabled)!==null&&r!==void 0?r:S==null?void 0:S.enabled)!==null&&t!==void 0?t:!1,respectSamplingDecision:(s=(n=b==null?void 0:b.respectSamplingDecision)!==null&&n!==void 0?n:S==null?void 0:S.respectSamplingDecision)!==null&&s!==void 0?s:!0},accessToken:async()=>""};return a.accessToken?A.accessToken=a.accessToken:delete A.accessToken,A}function C0(a){const e=a==null?void 0:a.trim();if(!e)throw new Error("supabaseUrl is required.");if(!e.match(/^https?:\/\//i))throw new Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(S0(e))}catch{throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}var T0=class extends XI{constructor(a){super(a)}},P0=class{constructor(a,e,o){var i,t;this.supabaseUrl=a,this.supabaseKey=e;const r=C0(a);if(!e)throw new Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",r),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",r),this.storageUrl=new URL("storage/v1",r),this.functionsUrl=new URL("functions/v1",r);const s=`sb-${r.hostname.split(".")[0]}-auth-token`,n={db:o0,realtime:t0,auth:Re(Re({},i0),{},{storageKey:s}),global:a0,tracePropagation:r0},c=E0(o??{},n);if(this.settings=c,this.storageKey=(i=c.auth.storageKey)!==null&&i!==void 0?i:"",this.headers=(t=c.global.headers)!==null&&t!==void 0?t:{},c.accessToken)this.accessToken=c.accessToken,this.auth=new Proxy({},{get:(u,m)=>{throw new Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(m)} is not possible`)}});else{var d;this.auth=this._initSupabaseAuthClient((d=c.auth)!==null&&d!==void 0?d:{},this.headers,c.global.fetch)}this.fetch=A0(e,a,this._getAccessToken.bind(this),c.global.fetch,c.tracePropagation),this.realtime=this._initRealtimeClient(Re({headers:this.headers,accessToken:this._getAccessToken.bind(this),fetch:this.fetch},c.realtime)),this.accessToken&&Promise.resolve(this.accessToken()).then(u=>this.realtime.setAuth(u)).catch(u=>console.warn("Failed to set initial Realtime auth token:",u)),this.rest=new Lx(new URL("rest/v1",r).href,{headers:this.headers,schema:c.db.schema,fetch:this.fetch,timeout:c.db.timeout,urlLengthLimit:c.db.urlLengthLimit}),this.storage=new Xw(this.storageUrl.href,this.headers,this.fetch,o==null?void 0:o.storage),c.accessToken||this._listenForAuthEvents()}get functions(){return new Dx(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(a){return this.rest.from(a)}schema(a){return this.rest.schema(a)}rpc(a,e={},o={head:!1,get:!1,count:void 0}){return this.rest.rpc(a,e,o)}channel(a,e={config:{}}){return this.realtime.channel(a,e)}getChannels(){return this.realtime.getChannels()}removeChannel(a){return this.realtime.removeChannel(a)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var a=this,e,o;if(a.accessToken)return await a.accessToken();const{data:i}=await a.auth.getSession();return(e=(o=i.session)===null||o===void 0?void 0:o.access_token)!==null&&e!==void 0?e:a.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:a,persistSession:e,detectSessionInUrl:o,storage:i,userStorage:t,storageKey:r,flowType:s,lock:n,debug:c,throwOnError:d,experimental:u,lockAcquireTimeout:m,skipAutoInitialize:g},p,f){const v={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new T0({url:this.authUrl.href,headers:Re(Re({},v),p),storageKey:r,autoRefreshToken:a,persistSession:e,detectSessionInUrl:o,storage:i,userStorage:t,flowType:s,lock:n,debug:c,throwOnError:d,experimental:u,fetch:f,lockAcquireTimeout:m,ski
46pAutoInitialize:g,hasCustomAuthorizationHeader:Object.keys(this.headers).some(b=>b.toLowerCase()==="authorization")})}_initRealtimeClient(a){return new Sw(this.realtimeUrl.href,Re(Re({},a),{},{params:Re(Re({},{apikey:this.supabaseKey}),a==null?void 0:a.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((a,e)=>{this._handleTokenChanged(a,"CLIENT",e==null?void 0:e.access_token)})}_handleTokenChanged(a,e,o){(a==="TOKEN_REFRESHED"||a==="SIGNED_IN")&&this.changedAccessToken!==o?(this.changedAccessToken=o,this.realtime.setAuth(o)):a==="SIGNED_OUT"&&(this.realtime.setAuth(),e=="STORAGE"&&this.auth.signOut(),this.changedAccessToken=void 0)}};const R0=(a,e,o)=>new P0(a,e,o);function x0(){if(typeof window<"u")return!1;const a=globalThis.process;if(!a)return!1;const e=a.version;if(e==null)return!1;const o=e.match(/^v(\d+)\./);return o?parseInt(o[1],10)<=18:!1}x0()&&console.warn("â ï¸ Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217");function w0(){var b,S;if(typeof window>"u")return;const a=location.hostname,o=["lovableproject.com","lovableproject-dev.com","lovable.app","gpt-eng.com","gptengineer.run"].some(A=>a===A||a.endsWith("."+A)),i="[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}",t=o?((b=a.match(new RegExp("^(?:id-preview(?:-[a-z0-9]+)?|project)--("+i+")(?:-dev)?(?=\\.|$)","i")))==null?void 0:b[1])??((S=a.match(new RegExp("^("+i+")(?=[.-])","i")))==null?void 0:S[1]):void 0,r=window.parent&&window.parent!==window;if(!t||!r)return localStorage;const s=a.endsWith(".lovableproject-dev.com")||a.endsWith(".gpt-eng.com"),n=s?/^https:\/\/([a-z0-9-]+\.)*(lovable\.dev|gptengineer\.app)$|^http:\/\/localhost:3000$/:/^https:\/\/([a-z0-9-]+\.)*(lovable\.dev|gptengineer\.app)$/,c=location.ancestorOrigins&&location.ancestorOrigins[0]||(document.referrer?new URL(document.referrer).origin:""),d=c&&n.test(c)?[c]:s?["https://lovable.dev","http://localhost:3000"]:["https://lovable.dev"],u="lovable-preview-auth:result",m=2e3,g=()=>Math.random().toString(36).slice(2)+Date.now().toString(36),p=(A,y,E)=>new Promise(C=>{const P=g();let R=!1,I;const x=M=>{R||(R=!0,clearTimeout(I),window.removeEventListener("message",w),C(M))},w=M=>{if(d.indexOf(M.origin)<0)return;const N=M.data;N&&N.type===u&&N.requestId===P&&x(N)};window.addEventListener("message",w);const L={type:A,requestId:P,projectId:t,key:y};E!==void 0&&(L.value=E);for(const M of d)window.parent.postMessage(L,M);I=setTimeout(()=>x(null),m)});let f=!0;const v=250;return{getItem:async A=>{let y=await p("lovable-preview-auth:get",A);return!y&&f&&(await new Promise(E=>setTimeout(E,v)),y=await p("lovable-preview-auth:get",A)),f=!1,y&&y.ok&&typeof y.value=="string"?y.value===""?(localStorage.removeItem(A),null):y.value:localStorage.getItem(A)},setItem:(A,y)=>(localStorage.setItem(A,y),p("lovable-preview-auth:set",A,y).then(E=>{E&&E.ok&&typeof E.value=="string"&&localStorage.getItem(A)===y&&(E.value===""?localStorage.removeItem(A):localStorage.setItem(A,E.value))})),removeItem:A=>(localStorage.removeItem(A),p("lovable-preview-auth:remove",A).then(()=>{}))}}const I0="https://enexnpmkhvgufcervjsv.supabase.co",D0="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImVuZXhucG1raHZndWZjZXJ2anN2Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjU4MTYxODUsImV4cCI6MjA4MTM5MjE4NX0.lix1AwQ0zZqkHcU-0FygIiiMQ9GlTR_t8fGpbNoF9Tw",ie=R0(I0,D0,{auth:{storage:w0(),persistSession:!0,autoRefreshToken:!0}}),Ese=Object.freeze(Object.defineProperty({__proto__:null,supabase:ie},Symbol.toStringTag,{value:"Module"})),Kf=h.createContext(void 0);function O0({children:a}){const[e,o]=h.useState(null),[i,t]=h.useState(null),[r,s]=h.useState(!0);h.useEffect(()=>{let g=!0;const{data:{subscription:p}}=ie.auth.onAuthStateChange((b,S)=>{g&&(t(S),o((S==null?void 0:S.user)??null),s(!1))}),f=async()=>{const{data:{session:b}}=await ie.auth.getSession();if(!b)return;const{error:S}=await ie.auth.getUser(),A=S==null?void 0:S.status;S&&(A===401||A===403)&&await ie.auth.signOut({scope:"local"})};ie.auth.getSession().then(({data:{session:b}})=>{g&&(t(b),o((b==null?void 0:b.user)??null),s(!1),b&&f())});const v=()=>{document.visibilityState==="visible"&&f()};return document.addEventListener("visibilitychange",v),()=>{g=!1,p.unsubscribe(),document.removeEventListener("visibilitychange",v)}},[]);const n=async(g,p)=>{const{error:f}=await ie.auth.signInWithPassword({email:g,password:p});return{error:f}},c=async(g,p,f)=>{const v=`${window.location.origin}/`,{error:b}=await ie.auth.signUp({email:g,password:p,options:{emailRedirectTo:v,data:{full_name:f}}});return{error:b}},d=async()=>{await ie.auth.signOut()},u=async g=>{const p=`${window.location.origin}/auth?mode=reset`,{error:f}=await ie.auth.resetPasswordForEmail(g,{redirectTo:p});return{error:f}},m=async g=>{const{error:p}=await ie.auth.updateUser({password:g});return{error:p}};return l.jsx(Kf.Provider,{value:{user:e,session:i,loading:r,signIn:n,signUp:c,signOut:d,resetPassword:u,updatePassword:m},children:a})}function ze(){const a=h.useContext(Kf);if(a===void 0)throw new Error("useAuth must be used within an AuthProvider");return a}const ee=a=>
vendor: 7,172 bytes, line 46
46typeof a=="string",tt=()=>{let a,e;const o=new Promise((i,t)=>{a=i,e=t});return o.resolve=a,o.reject=e,o},Kn=a=>a==null?"":String(a),M0=(a,e,o)=>{a.forEach(i=>{e[i]&&(o[i]=e[i])})},N0=/###/g,Wm=a=>a&&a.includes("###")?a.replace(N0,"."):a,Qm=a=>!a||ee(a),bt=(a,e,o)=>{const i=ee(e)?e.split("."):e;let t=0;for(;t<i.length-1;){if(Qm(a))return{};const r=Wm(i[t]);!a[r]&&o&&(a[r]=new o),Object.prototype.hasOwnProperty.call(a,r)?a=a[r]:a={},++t}return Qm(a)?{}:{obj:a,k:Wm(i[t])}},Km=(a,e,o)=>{const{obj:i,k:t}=bt(a,e,Object);if(i!==void 0||e.length===1){i[t]=o;return}let r=e[e.length-1],s=e.slice(0,e.length-1),n=bt(a,s,Object);for(;n.obj===void 0&&s.length;)r=`${s[s.length-1]}.${r}`,s=s.slice(0,s.length-1),n=bt(a,s,Object),n!=null&&n.obj&&typeof n.obj[`${n.k}.${r}`]<"u"&&(n.obj=void 0);n.obj[`${n.k}.${r}`]=o},z0=(a,e,o,i)=>{const{obj:t,k:r}=bt(a,e,Object);t[r]=t[r]||[],t[r].push(o)},As=(a,e)=>{const{obj:o,k:i}=bt(a,e);if(o&&Object.prototype.hasOwnProperty.call(o,i))return o[i]},j0=(a,e,o)=>{const i=As(a,o);return i!==void 0?i:As(e,o)},Yf=(a,e,o)=>{for(const i in e)i!=="__proto__"&&i!=="constructor"&&(Object.prototype.hasOwnProperty.call(a,i)?ee(a[i])||a[i]instanceof String||ee(e[i])||e[i]instanceof String?o&&(a[i]=e[i]):Yf(a[i],e[i],o):a[i]=e[i]);return a},Va=a=>a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),k0={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},_0=a=>ee(a)?a.replace(/[&<>"'\/]/g,e=>k0[e]):a;class q0{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){const o=this.regExpMap.get(e);if(o!==void 0)return o;const i=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,i),this.regExpQueue.push(e),i}}const L0=[" ",",","?","!",";"],U0=new q0(20),B0=(a,e,o)=>{e=e||"",o=o||"";const i=L0.filter(s=>!e.includes(s)&&!o.includes(s));if(i.length===0)return!0;const t=U0.getRegExp(`(${i.map(s=>s==="?"?"\\?":s).join("|")})`);let r=!t.test(a);if(!r){const s=a.indexOf(o);s>0&&!t.test(a.substring(0,s))&&(r=!0)}return r},td=(a,e,o=".")=>{if(!a)return;if(a[e])return Object.prototype.hasOwnProperty.call(a,e)?a[e]:void 0;const i=e.split(o);let t=a;for(let r=0;r<i.length;){if(!t||typeof t!="object")return;let s,n="";for(let c=r;c<i.length;++c)if(c!==r&&(n+=o),n+=i[c],s=t[n],s!==void 0){if(["string","number","boolean"].includes(typeof s)&&c<i.length-1)continue;r+=c-r+1;break}t=s}return t},kt=a=>a==null?void 0:a.replace(/_/g,"-"),F0={type:"logger",log(a){this.output("log",a)},warn(a){this.output("warn",a)},error(a){this.output("error",a)},output(a,e){var o,i;(i=(o=console==null?void 0:console[a])==null?void 0:o.apply)==null||i.call(o,console,e)}};class ys{constructor(e,o={}){this.init(e,o)}init(e,o={}){this.prefix=o.prefix||"i18next:",this.logger=e||F0,this.options=o,this.debug=o.debug}log(...e){return this.forward(e,"log","",!0)}warn(...e){return this.forward(e,"warn","",!0)}error(...e){return this.forward(e,"error","")}deprecate(...e){return this.forward(e,"warn","WARNING DEPRECATED: ",!0)}forward(e,o,i,t){return t&&!this.debug?null:(e=e.map(r=>ee(r)?r.replace(/[\r\n\x00-\x1F\x7F]/g," "):r),ee(e[0])&&(e[0]=`${i}${this.prefix} ${e[0]}`),this.logger[o](e))}create(e){return new ys(this.logger,{prefix:`${this.prefix}:${e}:`,...this.options})}clone(e){return e=e||this.options,e.prefix=e.prefix||this.prefix,new ys(this.logger,e)}}var za=new ys;class sn{constructor(){this.observers={}}on(e,o){return e.split(" ").forEach(i=>{this.observers[i]||(this.observers[i]=new Map);const t=this.observers[i].get(o)||0;this.observers[i].set(o,t+1)}),this}off(e,o){if(this.observers[e]){if(!o){delete this.observers[e];return}this.observers[e].delete(o)}}once(e,o){const i=(...t)=>{o(...t),this.off(e,i)};return this.on(e,i),this}emit(e,...o){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([t,r])=>{for(let s=0;s<r;s++)t(...o)}),this.observers["*"]&&Array.from(this.observers["*"].entries()).forEach(([t,r])=>{for(let s=0;s<r;s++)t(e,...o)})}}class Ym extends sn{constructor(e,o={ns:["translation"],defaultNS:"translation"}){super(),this.data=e||{},this.options=o,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.includes(e)||this.options.ns.push(e)}removeNamespaces(e){const o=this.options.ns.indexOf(e);o>-1&&this.options.ns.splice(o,1)}getResource(e,o,i,t={}){var d,u;const r=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator,s=t.ignoreJSONStructure!==void 0?t.ignoreJSONStructure:this.options.ignoreJSONStructure;let n;e.includes(".")?n=e.split("."):(n=[e,o],i&&(Array.isArray(i)?n.push(...i):ee(i)&&r?n.push(...i.split(r)):n.push(i)));const c=As(this.data,n);return!c&&!o&&!i&&e.includes(".")&&(e=n[0],o=n[1],i=n.slice(2).join(".")),c||!s||!ee(i)?c:td((u=(d=this.data)==null?void 0:d[e])==null?void 0:u[o],i,r)}addResource(e,o,i,t,r={silent:!1}){const s=r.keySeparator!==void 0?r.keySeparator:this.options.keySeparator;let n=[e,o];i&&(n=n.concat(s?i.split(s):i)),e.includes(".")&&(n=e.split("."),t=o,o=n[1]),this.addNamespaces(o),Km(this.data,n,t),r.silent||this.emit("added",e,o,i,t)}addResources(e,o,i,t={silent:!1}){for(const r in i)(ee(i[r])||Array.isArray(i[r]))&&this.addResource(e,o,r,i[r],{silent:!0});t.silent||this.emit("added",e,o,i)}addResourceBundle(e,o,i,t,r,s={silent:!1,skipCopy:!1}){let n=[e,o];e.includes(".")&&(n=e.split("."),t=i,i=o,o=n[1]),this.addNamespaces(o);let c=As(this.data,n)||{};s.skipCopy||(i=JSON.parse(JSON.stringify(i))),t?Yf(c,i,r):c={...c,...i},Km(this.data,n,c),s.silent||this.emit("added",e,o,i)}removeResourceBundle(e,o){this.hasResourceBundle(e,o)&&delete this.data[e][o],this.removeNamespaces(o),this.emit("removed",e,o)}hasResourceBundle(e,o){return this.getResource(e,o)!==void 0}getResourceBundle(e,o){return o||(o=this.options.defaultNS),this.getResource(e,o)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){const o=this.getDataByLanguage(e);return!!(o&&Object.keys(o)||[]).find(t=>o[t]&&Object.keys(o[t]).length>0)}toJSON(){return this.data}}var Jf={processors:{},addPostProcessor(a){this.processors[a.name]=a},handle(a,e,o,i,t){return a.forEach(r=>{var s;e=((s=this.processors[r])==null?void 0:s.process(e,o,i,t))??e}),e}};const Xf=Symbol("i18next/PATH_KEY");function G0(){const a=[],e=Object.create(null);let o;return e.get=(i,t)=>{var r;return(r=o==null?void 0:o.revoke)==null||r.call(o),t===Xf?a:(a.push(t),o=Proxy.revocable(i,e),o.proxy)},Proxy.revocable(Object.create(null),e).proxy}function Pi(a,e){const{[Xf]:o}=a(G0()),i=(e==null?void 0:e.keySeparator)??".",t=(e==null?void 0:e.nsSeparator)??":",r=(e==null?void 0:e.enableSelector)==="strict";if(o.length>1&&t){const s=e==null?void 0:e.ns,n=r?Array.isArray(s)?s:s?[s]:null:Array.isArray(s)?s:null;if(n&&(r?n:n.length>1?n.slice(1):[]).includes(o[0]))return`${o[0]}${t}${o.slice(1).join(i)}`}return o.join(i)}const Yn=a=>!ee(a)&&typeof a!="boolean"&&typeof a!="number";class Ss extends sn{constructor(e,o={}){super(),M0(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","
46i18nFormat","utils"],e,this),this.options=o,this.options.keySeparator===void 0&&(this.options.keySeparator="."),this.logger=za.create("translator"),this.checkedLoadedFor={}}changeLanguage(e){e&&(this.language=e)}exists(e,o={interpolation:{}}){const i={...o};if(e==null)return!1;const t=this.resolve(e,i);if((t==null?void 0:t.res)===void 0)return!1;const r=Yn(t.res);return!(i.returnObjects===!1&&r)}extractFromKey(e,o){let i=o.nsSeparator!==void 0?o.nsSeparator:this.options.nsSeparator;i===void 0&&(i=":");const t=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator;let r=o.ns||this.options.defaultNS||[];const s=i&&e.includes(i),n=!this.options.userDefinedKeySeparator&&!o.keySeparator&&!this.options.userDefinedNsSeparator&&!o.nsSeparator&&!B0(e,i,t);if(s&&!n){const c=e.match(this.interpolator.nestingRegexp);if(c&&c.length>0)return{key:e,namespaces:ee(r)?[r]:r};const d=e.split(i);(i!==t||i===t&&this.options.ns.includes(d[0]))&&(r=d.shift()),e=d.join(t)}return{key:e,namespaces:ee(r)?[r]:r}}translate(e,o,i){let t=typeof o=="object"?{...o}:o;if(typeof t!="object"&&this.options.overloadTranslationOptionHandler&&(t=this.options.overloadTranslationOptionHandler(arguments)),typeof t=="object"&&(t={...t}),t||(t={}),e==null)return"";typeof e=="function"&&(e=Pi(e,{...this.options,...t})),Array.isArray(e)||(e=[String(e)]),e=e.map(N=>typeof N=="function"?Pi(N,{...this.options,...t}):String(N));const r=t.returnDetails!==void 0?t.returnDetails:this.options.returnDetails,s=t.keySeparator!==void 0?t.keySeparator:this.options.keySeparator,{key:n,namespaces:c}=this.extractFromKey(e[e.length-1],t),d=c[c.length-1];let u=t.nsSeparator!==void 0?t.nsSeparator:this.options.nsSeparator;u===void 0&&(u=":");const m=t.lng||this.language,g=t.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if((m==null?void 0:m.toLowerCase())==="cimode")return g?r?{res:`${d}${u}${n}`,usedKey:n,exactUsedKey:n,usedLng:m,usedNS:d,usedParams:this.getUsedParamsDetails(t)}:`${d}${u}${n}`:r?{res:n,usedKey:n,exactUsedKey:n,usedLng:m,usedNS:d,usedParams:this.getUsedParamsDetails(t)}:n;const p=this.resolve(e,t);let f=p==null?void 0:p.res;const v=(p==null?void 0:p.usedKey)||n,b=(p==null?void 0:p.exactUsedKey)||n,S=["[object Number]","[object Function]","[object RegExp]"],A=t.joinArrays!==void 0?t.joinArrays:this.options.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject,E=t.count!==void 0&&!ee(t.count),C=Ss.hasDefaultValue(t),P=E?this.pluralResolver.getSuffix(m,t.count,t):"",R=t.ordinal&&E?this.pluralResolver.getSuffix(m,t.count,{ordinal:!1}):"",I=E&&!t.ordinal&&t.count===0,x=I&&t[`defaultValue${this.options.pluralSeparator}zero`]||t[`defaultValue${P}`]||t[`defaultValue${R}`]||t.defaultValue;let w=f;y&&!f&&C&&(w=x);const L=Yn(w),M=Object.prototype.toString.apply(w);if(y&&w&&L&&!S.includes(M)&&!(ee(A)&&Array.isArray(w))){if(!t.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");const N=this.options.returnedObjectHandler?this.options.returnedObjectHandler(v,w,{...t,ns:c}):`key '${n} (${this.language})' returned an object instead of string.`;return r?(p.res=N,p.usedParams=this.getUsedParamsDetails(t),p):N}if(s){const N=Array.isArray(w),T=N?[]:{},q=N?b:v;for(const O in w)if(Object.prototype.hasOwnProperty.call(w,O)){const _=`${q}${s}${O}`;C&&!f?T[O]=this.translate(_,{...t,defaultValue:Yn(x)?x[O]:void 0,joinArrays:!1,ns:c}):T[O]=this.translate(_,{...t,joinArrays:!1,ns:c}),T[O]===_&&(T[O]=w[O])}f=T}}else if(y&&ee(A)&&Array.isArray(f))f=f.join(A),f&&(f=this.extendTranslation(f,e,t,i));else{let N=!1,T=!1;!this.isValidLookup(f)&&C&&(N=!0,f=x),this.isValidLookup(f)||(T=!0,f=n);const O=(t.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&T?void 0:f,_=C&&x!==f&&this.options.updateMissing;if(T||N||_){if(this.logger.log(_?"updateKey":"missingKey",m,d,E&&!_?`${n}${this.pluralResolver.getSuffix(m,t.count,t)}`:n,_?x:f),s){const X=this.resolve(n,{...t,keySeparator:!1});X&&X.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}let z=[];const D=this.languageUtils.getFallbackCodes(this.options.fallbackLng,t.lng||this.language);if(this.options.saveMissingTo==="fallback"&&D&&D[0])for(let X=0;X<D.length;X++)z.push(D[X]);else this.options.saveMissingTo==="all"?z=this.languageUtils.toResolveHierarchy(t.lng||this.language):z.push(t.lng||this.language);const K=(X,Y,ae)=>{var he;const re=C&&ae!==f?ae:O;this.options.missingKeyHandler?this.options.missingKeyHandler(X,d,Y,re,_,t):(he=this.backendConnector)!=null&&he.saveMissing&&this.backendConnector.saveMissing(X,d,Y,re,_,t),this.emit
vendor: 4,354 bytes, line 46
46("missingKey",X,d,Y,f)};this.options.saveMissing&&(this.options.saveMissingPlurals&&E?z.forEach(X=>{const Y=this.pluralResolver.getSuffixes(X,t);I&&t[`defaultValue${this.options.pluralSeparator}zero`]&&!Y.includes(`${this.options.pluralSeparator}zero`)&&Y.push(`${this.options.pluralSeparator}zero`),Y.forEach(ae=>{K([X],n+ae,t[`defaultValue${ae}`]||x)})}):K(z,n,x))}f=this.extendTranslation(f,e,t,p,i),T&&f===n&&this.options.appendNamespaceToMissingKey&&(f=`${d}${u}${n}`),(T||N)&&this.options.parseMissingKeyHandler&&(f=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${d}${u}${n}`:n,N?f:void 0,t))}return r?(p.res=f,p.usedParams=this.getUsedParamsDetails(t),p):f}extendTranslation(e,o,i,t,r){var c,d;if((c=this.i18nFormat)!=null&&c.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...i},i.lng||this.language||t.usedLng,t.usedNS,t.usedKey,{resolved:t});else if(!i.skipInterpolation){i.interpolation&&this.interpolator.init({...i,interpolation:{...this.options.interpolation,...i.interpolation}});const u=ee(e)&&(((d=i==null?void 0:i.interpolation)==null?void 0:d.skipOnVariables)!==void 0?i.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables);let m;if(u){const p=e.match(this.interpolator.nestingRegexp);m=p&&p.length}let g=i.replace&&!ee(i.replace)?i.replace:i;if(this.options.interpolation.defaultVariables&&(g={...this.options.interpolation.defaultVariables,...g}),e=this.interpolator.interpolate(e,g,i.lng||this.language||t.usedLng,i),u){const p=e.match(this.interpolator.nestingRegexp),f=p&&p.length;m<f&&(i.nest=!1)}!i.lng&&t&&t.res&&(i.lng=this.language||t.usedLng),i.nest!==!1&&(e=this.interpolator.nest(e,(...p)=>(r==null?void 0:r[0])===p[0]&&!i.context?(this.logger.warn(`It seems you are nesting recursively key: ${p[0]} in key: ${o[0]}`),null):this.translate(...p,o),i)),i.interpolation&&this.interpolator.reset()}const s=i.postProcess||this.options.postProcess,n=ee(s)?[s]:s;return e!=null&&(n!=null&&n.length)&&i.applyPostProcessor!==!1&&(e=Jf.handle(n,e,o,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...t,usedParams:this.getUsedParamsDetails(i)},...i}:i,this)),e}resolve(e,o={}){let i,t,r,s,n;return ee(e)&&(e=[e]),Array.isArray(e)&&(e=e.map(c=>typeof c=="function"?Pi(c,{...this.options,...o}):c)),e.forEach(c=>{if(this.isValidLookup(i))return;const d=this.extractFromKey(c,o),u=d.key;t=u;let m=d.namespaces;this.options.fallbackNS&&(m=m.concat(this.options.fallbackNS));const g=o.count!==void 0&&!ee(o.count),p=g&&!o.ordinal&&o.count===0,f=o.context!==void 0&&(ee(o.context)||typeof o.context=="number")&&o.context!=="",v=o.lngs?o.lngs:this.languageUtils.toResolveHierarchy(o.lng||this.language,o.fallbackLng);m.forEach(b=>{var S,A;this.isValidLookup(i)||(n=b,!this.checkedLoadedFor[`${v[0]}-${b}`]&&((S=this.utils)!=null&&S.hasLoadedNamespace)&&!((A=this.utils)!=null&&A.hasLoadedNamespace(n))&&(this.checkedLoadedFor[`${v[0]}-${b}`]=!0,this.logger.warn(`key "${t}" for languages "${v.join(", ")}" won't get resolved as namespace "${n}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),v.forEach(y=>{var P;if(this.isValidLookup(i))return;s=y;const E=[u];if((P=this.i18nFormat)!=null&&P.addLookupKeys)this.i18nFormat.addLookupKeys(E,u,y,b,o);else{let R;g&&(R=this.pluralResolver.getSuffix(y,o.count,o));const I=`${this.options.pluralSeparator}zero`,x=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(g&&(o.ordinal&&R.startsWith(x)&&E.push(u+R.replace(x,this.options.pluralSeparator)),E.push(u+R),p&&E.push(u+I)),f){const w=`${u}${this.options.contextSeparator||"_"}${o.context}`;E.push(w),g&&(o.ordinal&&R.startsWith(x)&&E.push(w+R.replace(x,this.options.pluralSeparator)),E.push(w+R),p&&E.push(w+I))}}let C;for(;C=E.pop();)this.isValidLookup(i)||(r=C,i=this.getResource(y,b,C,o))}))})}),{res:i,usedKey:t,exactUsedKey:r,usedLng:s,usedNS:n}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e==="")}getResource(e,o,i,t={}){var r;return(r=this.i18nFormat)!=null&&r.getResource?this.i18nFormat.getResource(e,o,i,t):this.resourceStore.getResource(e,o,i,t)}
46getUsedParamsDetails(e={}){const o=["defaultValue","ordinal","context","replace","lng","lngs","fallbackLng","ns","keySeparator","nsSeparator","returnObjects","returnDetails","joinArrays","postProcess","interpolation"],i=e.replace&&!ee(e.replace);let t=i?e.replace:e;if(i&&typeof e.count<"u"&&(t={...t,count:e.count}),this.options.interpolation.defaultVariables&&(t={...this.options.interpolation.defaultVariables,...t}),!i){t={...t};for(const r of o)delete t[r]}return t}static hasDefaultValue(e){const o="defaultValue";for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)&&i.startsWith(o)&&e[i]!==void 0)return!0;return!1}}class Jm{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=za.create("languageUtils"),this.resolveHierarchyCache={}}clearCache(){this.resolveHierarchyCache={}}getScriptPartFromCode(e){if(e=kt(e),!e||!e.includes("-"))return null;const o=e.split("-");return o.length===2||(o.pop(),o[o.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(o.join("-"))}getLanguagePartFromCode(e){if(e=kt(e),!e||!e.includes("-"))return e;const o=e.split("-");return this.formatLanguageCode(o[0])}formatLanguageCode(e){if(ee(e)&&e.includes("-")){let o;try{o=Intl.getCanonicalLocales(e)[0]}catch{}return o&&this.options.lowerCaseLng&&(o=o.toLowerCase()),o||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(e)}getBestMatchFromCodes(e){if(!e)return null;let o;return e.forEach(i=>{if(o)return;const t=this.formatLanguageCode(i);(!this.options.supportedLngs||this.isSupportedCode(t))&&(o=t)}),!o&&this.options.supportedLngs&&e.forEach(i=>{if(o)return;const t=this.getScriptPartFromCode(i);if(this.isSupportedCode(t))return o=t;const r=this.getLanguagePartFromCode(i);if(this.isSupportedCode(r))return o=r;o=this.options.supportedLngs.find(s=>s===r?!0:!s.includes("-")&&!r.includes("-")?!1:!!(s.includes("-")&&!r.includes("-")&&s.slice(0,s.indexOf("-"))===r||s.startsWith(r)&&r.length>1))}),o||(o=this.getFallbackCodes(this.options.fallbackLng)[0]),o}getFallbackCodes(e,o){if(!e)return[];if(typeof e=="function"&&(e=e(o)),ee(e)&&(e=[e]),Array.isArray(e))return e;if(!o)return e.default||[];let i=e[o];return i||(i=e[this.getScriptPartFromCode(o)]),i||(i=e[this.formatLanguageCode(o)]),i||(i=e[this.getLanguagePartFromCode(o)]),i||(i=e.default),i||[]}toResolveHierarchy(e,o){const i=this.options.fallbackLng,t=Array.isArray(i)?i.join("|"):i;t!==this._cachedFallbackLng&&(this.resolveHierarchyCache={},this._cachedFallbackLng=t);const r=o===void 0||o===!1||ee(o),s=o===void 0&&typeof this.options.fallbackLng=="function",n=ee(e)&&r&&!s;let c=null;if(n){let g;o===void 0?g="undefined":o===!1?g="boolean:false":g=`string:${o}`,c=`${e.length}:${e}|${g}`}if(c!==null){const g=this.resolveHierarchyCache[c];if(g!==void 0)return g.slice()}const d=this.getFallbackCodes((o===!1?[]:o)||this.options.fallbackLng||[],e),u=[],m=g=>{g&&(this.isSupportedCode(g)?u.push(g):this.logger.warn(`rejecting language code not found in supportedLngs: ${g}`))};return ee(e)&&(e.includes("-")||e.includes("_"))?(this.options.load!=="languageOnly"&&m(this.formatLanguageCode(e)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&m(this.getScriptPartFromCode(e)),this.options.load!=="currentOnly"&&m(this.getLanguagePartFromCode(e))):ee(e)&&m(this.formatLanguageCode(e)),d.forEach(g=>{u.includes(g)||m(this.formatLanguageCode(g))}),c!==null?(this.resolveHierarchyCache[c]=u,u.slice()):u}}const Xm={zero:0,one:1,two:2,few:3,many:4,other:5},Zm={select:a=>
vendor: 20,881 bytes, line 46
46a===1?"one":"other",resolvedOptions:()=>({pluralCategories:["one","other"]})};class V0{constructor(e,o={}){this.languageUtils=e,this.options=o,this.logger=za.create("pluralResolver"),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,o={}){const i=kt(e==="dev"?"en":e),t=o.ordinal?"ordinal":"cardinal",r=JSON.stringify({cleanedCode:i,type:t});if(r in this.pluralRulesCache)return this.pluralRulesCache[r];let s;try{s=new Intl.PluralRules(i,{type:t})}catch{if(typeof Intl>"u")return this.logger.error("No Intl support, please use an Intl polyfill!"),Zm;if(!e.match(/-|_/))return Zm;const c=this.languageUtils.getLanguagePartFromCode(e);s=this.getRule(c,o)}return this.pluralRulesCache[r]=s,s}needsPlural(e,o={}){let i=this.getRule(e,o);return i||(i=this.getRule("dev",o)),(i==null?void 0:i.resolvedOptions().pluralCategories.length)>1}getPluralFormsOfKey(e,o,i={}){return this.getSuffixes(e,i).map(t=>`${o}${t}`)}getSuffixes(e,o={}){let i=this.getRule(e,o);return i||(i=this.getRule("dev",o)),i?i.resolvedOptions().pluralCategories.sort((t,r)=>Xm[t]-Xm[r]).map(t=>`${this.options.prepend}${o.ordinal?`ordinal${this.options.prepend}`:""}${t}`):[]}getSuffix(e,o,i={}){const t=this.getRule(e,i);return t?`${this.options.prepend}${i.ordinal?`ordinal${this.options.prepend}`:""}${t.select(o)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix("dev",o,i))}}const ep=(a,e,o,i=".",t=!0)=>{let r=j0(a,e,o);return!r&&t&&ee(o)&&(r=td(a,o,i),r===void 0&&(r=td(e,o,i))),r},ap=a=>a.replace(/\$/g,"$$$$");class op{constructor(e={}){var o;this.logger=za.create("interpolator"),this.options=e,this.format=((o=e==null?void 0:e.interpolation)==null?void 0:o.format)||(i=>i),this.init(e)}init(e={}){e.interpolation||(e.interpolation={escapeValue:!0});const{escape:o,escapeValue:i,useRawValueToEscape:t,prefix:r,prefixEscaped:s,suffix:n,suffixEscaped:c,formatSeparator:d,unescapeSuffix:u,unescapePrefix:m,nestingPrefix:g,nestingPrefixEscaped:p,nestingSuffix:f,nestingSuffixEscaped:v,nestingOptionsSeparator:b,maxReplaces:S,alwaysFormat:A}=e.interpolation;this.escape=o!==void 0?o:_0,this.escapeValue=i!==void 0?i:!0,this.useRawValueToEscape=t!==void 0?t:!1,this.prefix=r?Va(r):s||"{{",this.suffix=n?Va(n):c||"}}",this.formatSeparator=d||",",this.unescapePrefix=u?"":m?Va(m):"-",this.unescapeSuffix=this.unescapePrefix?"":u?Va(u):"",this.nestingPrefix=g?Va(g):p||Va("$t("),this.nestingSuffix=f?Va(f):v||Va(")"),this.nestingOptionsSeparator=b||",",this.maxReplaces=S||1e3,this.alwaysFormat=A!==void 0?A:!1,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){const e=(o,i)=>(o==null?void 0:o.source)===i?(o.lastIndex=0,o):new RegExp(i,"g");this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,o,i,t){var p;let r,s,n;const c=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},d=f=>{if(!f.includes(this.formatSeparator)){const A=ep(o,c,f,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(A,void 0,i,{...t,...o,interpolationkey:f}):A}const v=f.split(this.formatSeparator),b=v.shift().trim(),S=v.join(this.formatSeparator).trim();return this.format(ep(o,c,b,this.options.keySeparator,this.options.ignoreJSONStructure),S,i,{...t,...o,interpolationkey:b})};this.resetRegExp(),!this.escapeValue&&typeof e=="string"&&/\$t\([^)]*\{[^}]*\{\{/.test(e)&&this.logger.warn("nesting options string contains interpolated variables with escapeValue: false â if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.");const u=(t==null?void 0:t.missingInterpolationHandler)||this.options.missingInterpolationHandler,m=((p=t==null?void 0:t.interpolation)==null?void 0:p.skipOnVariables)!==void 0?t.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:f=>f},{regex:this.regexp,safeValue:f=>this.escapeValue?this.escape(f):f}].forEach(f=>{for(n=0;r=f.regex.exec(e);){const v=r[1].trim();if(s=d(v),s===void 0)if(typeof u=="function"){const S=u(e,r,t);s=ee(S)?S:""}else if(t&&Object.prototype.hasOwnProperty.call(t,v))s="";else if(m){s=r[0];continue}else this.logger.warn(`missed to pass in variable ${v} for interpolating ${e}`),s="";else!ee(s)&&!this.useRawValueToEscape&&(s=Kn(s));const b=f.safeValue(s);if(e=e.replace(r[0],ap(b)),m?(f.regex.lastIndex+=b.length,f.regex.lastIndex-=r[0].length):f.regex.lastIndex=0,n++,n>=this.maxReplaces)break}}),e}nest(e,o,i={}){let t,r,s;const n=(c,d)=>{const u=this.nestingOptionsSeparator;if(!c.includes(u))return c;const m=c.split(new RegExp(`${Va(u)}[ ]*{`));let g=`{${m[1]}`;c=m[0],g=this.interpolate(g,s);const p=g.match(/'/g),f=g.match(/"/g);(((p==null?void 0:p.length)??0)%2===0&&!f||((f==null?void 0:f.length)??0)%2!==0)&&(g=g.replace(/'/g,'"'));try{s=JSON.parse(g),d&&(s={...d,...s})}catch(v){return this.logger.warn(`failed parsing options string in nesting for key ${c}`,v),`${c}${u}${g}`}return s.defaultValue&&s.defaultValue.includes(this.prefix)&&delete s.defaultValue,c};for(;t=this.nestingRegexp.exec(e);){let c=[];s={...i},s=s.replace&&!ee(s.replace)?s.replace:s,s.applyPostProcessor=!1,delete s.defaultValue;const d=/{.*}/s.test(t[1])?t[1].lastIndexOf("}")+1:t[1].indexOf(this.formatSeparator);if(d!==-1&&(c=t[1].slice(d).split(this.formatSeparator).map(u=>u.trim()).filter(Boolean),t[1]=t[1].slice(0,d)),r=o(n.call(this,t[1].trim(),s),s),r&&t[0]===e&&!ee(r))return r;ee(r)||(r=Kn(r)),r||(this.logger.warn(`missed to resolve ${t[1]} for nesting ${e}`),r=""),c.length&&(r=c.reduce((u,m)=>this.format(u,m,i.lng,{...i,interpolationkey:t[1].trim()}),r.trim())),e=e.replace(t[0],ap(Kn(r))),this.regexp.lastIndex=0}return e}}const $0=a=>{let e=a.toLowerCase().trim();const o={};if(a.includes("(")){const i=a.split("(");e=i[0].toLowerCase().trim();const t=i[1].slice(0,-1);e==="currency"&&!t.includes(":")?o.currency||(o.currency=t.trim()):e==="relativetime"&&!t.includes(":")?o.range||(o.range=t.trim()):t.split(";").forEach(s=>{if(s){const[n,...c]=s.split(":"),d=c.join(":").trim().replace(/^'+|'+$/g,""),u=n.trim();o[u]||(o[u]=d),d==="false"&&(o[u]=!1),d==="true"&&(o[u]=!0),isNaN(d)||(o[u]=parseInt(d,10))}})}return{formatName:e,formatOptions:o}},ip=a=>{const e={};return(o,i,t)=>{let r=t;t&&t.interpolationkey&&t.formatParams&&t.formatParams[t.interpolationkey]&&t[t.interpolationkey]&&(r={...r,[t.interpolationkey]:void 0});const s=i+JSON.stringify(r);let n=e[s];return n||(n=a(kt(i),t),e[s]=n),n(o)}},H0=a=>(e,o,i)=>a(kt(o),i)(e);class W0{constructor(e={}){this.logger=za.create("formatter"),this.options=e,this.init(e)}init(e,o={interpolation:{}}){this.formatSeparator=o.interpolation.formatSeparator||",";const i=o.cacheInBuiltFormats?ip:H0;this.formats={number:i((t,r)=>{const s=new Intl.NumberFormat(t,{...r});return n=>s.format(n)}),currency:i((t,r)=>{const s=new Intl.NumberFormat(t,{...r,style:"currency"});return n=>s.format(n)}),datetime:i((t,r)=>{const s=new Intl.DateTimeFormat(t,{...r});return n=>s.format(n)}),relativetime:i((t,r)=>{const s=new Intl.RelativeTimeFormat(t,{...r});return n=>s.format(n,r.range||"day")}),list:i((t,r)=>{const s=new Intl.ListFormat(t,{...r});return n=>s.format(n)})}}add(e,o){this.formats[e.toLowerCase().trim()]=o}addCached(e,o){this.formats[e.toLowerCase().trim()]=ip(o)}format(e,o,i,t={}){if(!o||e==null)return e;const r=o.split(this.formatSeparator),s=[];for(let c=0;c<r.length;c++){let d=r[c];for(;d.indexOf("(")>-1&&!d.includes(")")&&c+1<r.length;)d=`${d}${this.formatSeparator}${r[++c]}`;s.push(d)}return s.reduce((c,d)=>{var g;const{formatName:u,formatOptions:m}=$0(d);if(this.formats[u]){let p=c;try{const f=((g=t==null?void 0:t.formatParams)==null?void 0:g[t.interpolationkey])||{},v=f.locale||f.lng||t.locale||t.lng||i;p=this.formats[u](c,v,{...m,...t,...f})}catch(f){this.logger.warn(f)}return p}else this.logger.warn(`there was no format function for ${u}`);return c},e)}}const Q0=(a,e)=>{a.pending[e]!==void 0&&(delete a.pending[e],a.pendingCount--)};class K0 extends sn{constructor(e,o,i,t={}){var r,s;super(),this.backend=e,this.store=o,this.services=i,this.languageUtils=i.languageUtils,this.options=t,this.logger=za.create("backendConnector"),this.waitingReads=[],this.maxParallelReads=t.maxParallelReads||10,this.readingCalls=0,this.maxRetries=t.maxRetries>=0?t.maxRetries:5,this.retryTimeout=t.retryTimeout>=1?t.retryTimeout:350,this.state={},this.queue=[],(s=(r=this.backend)==null?void 0:r.init)==null||s.call(r,i,t.backend,t)}queueLoad(e,o,i,t){const r={},s={},n={},c={};return e.forEach(d=>{let u=!0;o.forEach(m=>{const g=`${d}|${m}`;!i.reload&&this.store.hasResourceBundle(d,m)?this.state[g]=2:this.state[g]<0||(this.state[g]===1?s[g]===void 0&&(s[g]=!0):(this.state[g]=1,u=!1,s[g]===void 0&&(s[g]=!0),r[g]===void 0&&(r[g]=!0),c[m]===void 0&&(c[m]=!0)))}),u||(n[d]=!0)}),(Object.keys(r).length||Object.keys(s).length)&&this.queue.push({pending:s,pendingCount:Object.keys(s).length,loaded:{},errors:[],callback:t}),{toLoad:Object.keys(r),pending:Object.keys(s),toLoadLanguages:Object.keys(n),toLoadNamespaces:Object.keys(c)}}loaded(e,o,i){const t=e.split("|"),r=t[0],s=t[1];o&&this.emit("failedLoading",r,s,o),!o&&i&&this.store.addResourceBundle(r,s,i,void 0,void 0,{skipCopy:!0}),this.state[e]=o?-1:2,o&&i&&(this.state[e]=0);const n={};this.queue.forEach(c=>{z0(c.loaded,[r],s),Q0(c,e),o&&c.errors.push(o),c.pendingCount===0&&!c.done&&(Object.keys(c.loaded).forEach(d=>{n[d]||(n[d]={});const u=c.loaded[d];u.length&&u.forEach(m=>{n[d][m]===void 0&&(n[d][m]=!0)})}),c.done=!0,c.errors.length?c.callback(c.errors):c.callback())}),this.emit("loaded",n),this.queue=this.queue.filter(c=>!c.done)}read(e,o,i,t=0,r=this.retryTimeout,s){if(!e.length)return s(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:o,fcName:i,tried:t,wait:r,callback:s});return}this.readingCalls++;const n=(d,u)=>{if(this.readingCalls--,this.waitingReads.length>0){const m=this.waitingReads.shift();this.read(m.lng,m.ns,m.fcName,m.tried,m.wait,m.callback)}if(d&&u&&t<this.maxRetries){setTimeout(()=>{this.read(e,o,i,t+1,r*2,s)},r);return}s(d,u)},c=this.backend[i].bind(this.backend);if(c.length===2){try{const d=c(e,o);d&&typeof d.then=="function"?d.then(u=>n(null,u)).catch(n):n(null,d)}catch(d){n(d)}return}return c(e,o,n)}prepareLoading(e,o,i={},t){if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),t&&t();ee(e)&&(e=this.languageUtils.toResolveHierarchy(e)),ee(o)&&(o=[o]);const r=this.queueLoad(e,o,i,t);if(!r.toLoad.length)return r.pending.length||t(),null;r.toLoad.forEach(s=>{this.loadOne(s)})}load(e,o,i){this.prepareLoading(e,o,{},i)}reload(e,o,i){this.prepareLoading(e,o,{reload:!0},i)}loadOne(e,o=""){const i=e.split("|"),t=i[0],r=i[1];this.read(t,r,"read",void 0,void 0,(s,n)=>{s&&this.logger.warn(`${o}loading namespace ${r} for language ${t} failed`,s),!s&&n&&this.logger.log(`${o}loaded namespace ${r} for language ${t}`,n),this.loaded(e,s,n)})}saveMissing(e,o,i,t,r,s={},n=()=>{}){var c,d,u,m,g;if((d=(c=this.services)==null?void 0:c.utils)!=null&&d.hasLoadedNamespace&&!((m=(u=this.services)==null?void 0:u.utils)!=null&&m.hasLoadedNamespace(o))){this.logger.warn(`did not save key "${i}" as the namespace "${o}" was not yet loaded`,"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(i==null||i==="")){if((g=this.backend)!=null&&g.create){const p={...s,isUpdate:r},f=this.backend.create.bind(this.backend);if(f.length<6)try{let v;f.length===5?v=f(e,o,i,t,p):v=f(e,o,i,t),v&&typeof v.then=="function"?v.then(b=>n(null,b)).catch(n):n(null,v)}catch(v){n(v)}else f(e,o,i,t,n,p)}!e||!e[0]||this.store.addResource(e[0],o,i,t)}}}const Jn=()=>({debug:!1,initAsync:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:a=>{let e={};if(typeof a[1]=="object"&&(e=a[1]),ee(a[1])&&(e.defaultValue=a[1]),ee(a[2])&&(e.tDescription=a[2]),typeof a[2]=="object"||typeof a[3]=="object"){const o=a[3]||a[2];Object.keys(o).forEach(i=>{e[i]=o[i]})}return e},interpolation:{escapeValue:!0,prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),tp=a=>(ee(a.ns)&&(a.ns=[a.ns]),ee(a.fallbackLng)&&(a.fallbackLng=[a.fallbackLng]),ee(a.fallbackNS)&&(a.fallbackNS=[a.fallbackNS]),a.supportedLngs&&!a.supportedLngs.includes("cimode")&&(a.supportedLngs=a.supportedLngs.concat(["cimode"])),a),Dr=()=>{},Y0=a=>{Object.getOwnPropertyNames(Object.getPrototypeOf(a)).forEach(o=>{typeof a[o]=="function"&&(a[o]=a[o].bind(a))})};class At extends sn{constructor(e={},o){if(super(),this.options=tp(e),this.services={},this.logger=za,this.modules={external:[]},Y0(this),o&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,o),this;setTimeout(()=>{this.init(e,o)},0)}}init(e={},o){this.isInitializing=!0,typeof e=="function"&&(o=e,e={}),e.defaultNS==null&&e.ns&&(ee(e.ns)?e.defaultNS=e.ns:e.ns.includes("translation")||(e.defaultNS=e.ns[0]));const i=Jn();this.options={...i,...this.options,...tp(e)},this.options.interpolation={...i.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator),typeof this.options.overloadTranslationOptionHandler!="function"&&(this.options.overloadTranslationOptionHandler=i.overloadTranslationOptionHandler);const t=d=>d?typeof d=="function"?new d:d:null;if(!this.options.isClone){this.modules.logger?za.init(t(this.modules.logger),this.options):za.init(null,this.options);let d;this.modules.formatter?d=this.modules.formatter:d=W0;const u=new Jm(this.options);this.store=new Ym(this.options.resources,this.options);const m=this.services;m.logger=za,m.resourceStore=this.store,m.languageUtils=u,m.pluralResolver=new V0(u,{prepend:this.options.pluralSeparator}),d&&(m.formatter=t(d),m.formatter.init&&m.formatter.init(m,this.options),this.options.interpolation.format=m.formatter.format.bind(m.formatter)),m.interpolator=new op(this.options),m.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},m.backendConnector=new K0(t(this.modules.backend),m.resourceStore,m,this.options),m.backendConnector.on("*",(g,...p)=>{this.emit(g,...p)}),this.modules.languageDetector&&(m.languageDetector=t(this.modules.languageDetector),m.languageDetector.init&&m.languageDetector.init(m,this.options.detection,this.options)),this.modules.i18nFormat&&(m.i18nFormat=t(this.modules.i18nFormat),m.i18nFormat.init&&m.i18nFormat.init(this)),this.translator=new Ss(this.services,this.options),this.translator.on("*",(g,...p)=>{this.emit(g,...p)}),this.modules.external.forEach(g=>{g.init&&g.init(this)})}if(this.format=this.options.interpolation.format,o||(o=Dr),this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){const d=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);d.length>0&&d[0]!=="dev"&&(this.options.lng=d[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined"),["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"].forEach(d=>{this[d]=(...u)=>this.store[d](...u)}),["addResource","addResources","addResourceBundle","removeResourceBundle"].forEach(d=>{this[d]=(...u)=>(this.store[d](...u),this)});const n=tt(),c=()=>{const d=(u,m)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn("init: i18next is already initialized. You should call init just once!"),this.isInitialized=!0,this.options.isClone||this.logger.log("initialized",this.options),this.emit("initialized",this.options),n.resolve(m),o(u,m)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return d(null,this.t.bind(this));this.changeLanguage(this.options.lng,d)};return this.options.resources||!this.options.initAsync?c():setTimeout(c,0),n}loadResources(e,o=Dr){var r,s;let i=o;const t=ee(e)?e:this.language;if(typeof e=="function"&&(i=e),!this.options.resources||this.options.partialBundledLanguages){if((t==null?void 0:t.toLowerCase())==="cimode"&&(!this.options.preload||this.options.preload.length===0))return i();const n=[],c=d=>{if(!d||d==="cimode")return;this.services.languageUtils.toResolveHierarchy(d).forEach(m=>{m!=="cimode"&&(n.includes(m)||n.push(m))})};t?c(t):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(u=>c(u)),(s=(r=this.options.preload)==null?void 0:r.forEach)==null||s.call(r,d=>c(d)),this.services.backendConnector.load(n,this.options.ns,d=>{!d&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),i(d)})}else i(null)}reloadResources(e,o,i){const t=tt();return typeof e=="function"&&(i=e,e=void 0),typeof o=="function"&&(i=o,o=void 0),e||(e=this.languages),o||(o=this.options.ns),i||(i=Dr),this.services.backendConnector.reload(e,o,r=>{t.resolve(),i(r)}),t}use(e){if(!e)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!e.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return e.type==="backend"&&(this.modules.backend=e),(e.type==="logger"||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type==="languageDetector"&&(this.modules.languageDetector=e),e.type==="i18nFormat"&&(this.modules.i18nFormat=e),e.type==="postProcessor"&&Jf.addPostProcessor(e),e.type==="formatter"&&(this.modules.formatter=e),e.type==="3rdParty"&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&!["cimode","dev"].includes(e)){for(let o=0;o<this.languages.length;o++){const i=this.languages[o];if(!["cimode","dev"].includes(i)&&this.store.hasLanguageSomeTranslations(i)){this.resolvedLanguage=i;break}}!this.resolvedLanguage&&!this.languages.includes(e)&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,o){this.isLanguageChangingTo=e;const i=tt();this.emit("languageChanging",e);const t=n=>{this.language=n,this.languages=this.services.languageUtils.toResolveHierarchy(n),this.resolvedLanguage=void 0,this.setResolvedLanguage(n)},r=(n,c)=>{c?this.isLanguageChangingTo===e&&(t(c),this.translator.changeLanguage(c),this.isLanguageChangingTo=void 0,this.emit("languageChanged",c),this.logger.log("languageChanged",c)):this.isLanguageChangingTo=void 0,i.resolve((...d)=>this.t(...d)),o&&o(n,(...d)=>this.t(...d))},s=n=>{var u,m;!e&&!n&&this.services.languageDetector&&(n=[]);const c=ee(n)?n:n&&n[0],d=this.store.hasLanguageSomeTranslations(c)?c:this.services.languageUtils.getBestMatchFromCodes(ee(n)?[n]:n);d&&(this.language||t(d),this.translator.language||this.translator.changeLanguage(d),(m=(u=this.services.languageDetector)==null?void 0:u.cacheUserLanguage)==null||m.call(u,d)),this.loadResources(d,g=>{r(g,d)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?s(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(s):this.services.languageDetector.detect(s):s(e),i}getFixedT(e,o,i,t){const r=t==null?void 0:t.scopeNs,s=(n,c,...d)=>{let u;typeof c!="object"?u=this.options.overloadTranslationOptionHandler([n,c].concat(d)):u={...c},u.lng=u.lng||s.lng,u.lngs=u.lngs||s.lngs;const m=u.ns!==void 0&&u.ns!==null;u.ns=u.ns||s.ns,u.keyPrefix!==""&&(u.keyPrefix=u.keyPrefix||i||s.keyPrefix);const g={...this.options,...u};Array.isArray(r)&&!m&&(g.ns=r),typeof u.keyPrefix=="function"&&(u.keyPrefix=Pi(u.keyPrefix,g));const p=this.options.keySeparator||".";let f;
46return u.keyPrefix&&Array.isArray(n)?f=n.map(v=>(typeof v=="function"&&(v=Pi(v,g)),`${u.keyPrefix}${p}${v}`)):(typeof n=="function"&&(n=Pi(n,g)),f=u.keyPrefix?`${u.keyPrefix}${p}${n}`:n),this.t(f,u)};return ee(e)?s.lng=e:s.lngs=e,s.ns=o,s.keyPrefix=i,s}t(...e){var o;return(o=this.translator)==null?void 0:o.translate(...e)}exists(...e){var o;return(o=this.translator)==null?void 0:o.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,o={}){if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;const i=o.lng||this.resolvedLanguage||this.languages[0],t=this.options?this.options.fallbackLng:!1,r=this.languages[this.languages.length-1];if(i.toLowerCase()==="cimode")return!0;const s=(n,c)=>{const d=this.services.backendConnector.state[`${n}|${c}`];return d===-1||d===0||d===2};if(o.precheck){const n=o.precheck(this,s);if(n!==void 0)return n}return!!(this.hasResourceBundle(i,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||s(i,e)&&(!t||s(r,e)))}loadNamespaces(e,o){const i=tt();return this.options.ns?(ee(e)&&(e=[e]),e.forEach(t=>{this.options.ns.includes(t)||this.options.ns.push(t)}),this.loadResources(t=>{i.resolve(),o&&o(t)}),i):(o&&o(),Promise.resolve())}loadLanguages(e,o){const i=tt();ee(e)&&(e=[e]);const t=this.options.preload||[],r=e.filter(s=>!t.includes(s)&&this.services.languageUtils.isSupportedCode(s));return r.length?(this.options.preload=t.concat(r),this.loadResources(s=>{i.resolve(),o&&o(s)}),i):(o&&o(),Promise.resolve())}dir(e){var t,r;if(e||(e=this.resolvedLanguage||(((t=this.languages)==null?void 0:t.length)>0?this.languages[0]:this.language)),!e)return"rtl";try{const s=new Intl.Locale(e);if(s&&s.getTextInfo){const n=s.getTextInfo();if(n&&n.direction)return n.direction}}catch{}const o=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],i=((r=this.services)==null?void 0:r.languageUtils)||new Jm(Jn());return e.toLowerCase().indexOf("-latn")>1?"ltr":o.includes(i.getLanguagePartFromCode(e))||e.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}static createInstance(e={},o){const i=new At(e,o);return i.createInstance=At.createInstance,i}cloneInstance(e={},o=Dr){const i=e.forkResourceStore;i&&delete e.forkResourceStore;const t={...this.options,...e,isClone:!0},r=new At(t);if((e.debug!==void 0||e.prefix!==void 0)&&(r.logger=r.logger.clone(e)),["store","services","language"].forEach(n=>{r[n]=this[n]}),r.services={...this.services},r.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},i){const n=Object.keys(this.store.data).reduce((c,d)=>(c[d]={...this.store.data[d]},c[d]=Object.keys(c[d]).reduce((u,m)=>(u[m]={...c[d][m]},u),c[d]),c),{});r.store=new Ym(n,t),r.services.resourceStore=r.store}if(e.interpolation){const c={...Jn().interpolation,...this.options.interpolation,...e.interpolation},d={...t,interpolation:c};r.services.interpolator=new op(d)}return r.translator=new Ss(r.services,t),r.translator.on("*",(n,...c)=>{r.emit(n,...c)}),r.init(t,o),r.translator.options=t,r.translator.backendConnector.services.utils={hasLoadedNamespace:r.hasLoadedNamespace.bind(r)},r}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}const ce=At.createInstance();ce.createInstance;ce.dir;ce.init;ce.loadResources;ce.reloadResources;ce.use;ce.changeLanguage;ce.getFixedT;ce.t;ce.exists;ce.setDefaultNamespace;ce.hasLoadedNamespace;ce.loadNamespaces;ce.loadLanguages;const J0=(a,e,o,i)=>{var r,s,n,c;const t=[o,{code:e,...i||{}}];if((s=(r=a==null?void 0:a.services)==null?void 0:r.logger)!=null&&s.forward)return a.services.logger.forward(t,"warn","react-i18next::",!0);Vo(t[0])&&(t[0]=`react-i18next:: ${t[0]}`),(c=(n=a==null?void 0:a.services)==null?void 0:n.logger)!=null&&c.warn?a.services.logger.warn(...t):console!=null&&console.warn&&console.warn(...t)},rp={},Yr=(a,e,o,i)=>{Vo(o)&&rp[o]||(Vo(o)&&(rp[o]=new Date),J0(a,e,o,i))},Zf=(a,e)=>()=>{if(a.isInitialized)e();else{const o=()=>{setTimeout(()=>{a.off("initialized",o)},0),e()};a.on("initialized",o)}},rd=(a,e,o)=>{a.loadNamespaces(e,Zf(a,o))},sp=(a,e,o,i)=>{if(Vo(o)&&(o=[o]),a.options.preload&&a.options.preload.indexOf(e)>-1)return rd(a,o,i);o.forEach(t=>{a.options.ns.indexOf(t)<0&&a.options.ns.push(t)}),a.loadLanguages(e,Zf(a,i))},X0=(a,e,o={})=>
46!e.languages||!e.languages.length?(Yr(e,"NO_LANGUAGES","i18n.languages were undefined or empty",{languages:e.languages}),!0):e.hasLoadedNamespace(a,{lng:o.lng,precheck:(i,t)=>{if(o.bindI18n&&o.bindI18n.indexOf("languageChanging")>-1&&i.services.backendConnector.backend&&i.isLanguageChangingTo&&!t(i.isLanguageChangingTo,a))return!1}}),Vo=a=>typeof a=="string",Z0=a=>typeof a=="object"&&a!==null,eD=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,aD={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"â¦","…":"â¦","/":"/","/":"/"},oD=a=>aD[a],iD=a=>a.replace(eD,oD);let sd={bindI18n:"languageChanged",bindI18nStore:"",transEmptyNodeValue:"",transSupportBasicHtmlNodes:!0,transWrapTextNodes:"",transKeepBasicHtmlNodesFor:["br","strong","i","p"],useSuspense:!0,unescape:iD,transDefaultProps:void 0};const tD=(a={})=>{sd={...sd,...a}},rD=()=>sd;let ev;const sD=a=>{ev=a},nD=()=>ev,cD={type:"3rdParty",init(a){tD(a.options.react),sD(a)}},dD=h.createContext();class lD{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(o=>{this.usedNamespaces[o]||(this.usedNamespaces[o]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}}var av={exports:{}},ov={};/** 47 * @license React 48 * use-sync-external-store-shim.production.js 49 * 50 * Copyright (c) Meta Platforms, Inc. and affiliates. 51 * 52 * This source code is licensed under the MIT license found in the 53 * LICENSE file in the root directory of this source tree. 54 */var Ni=h;function uD(a,e){return a===e&&(a!==0||1/a===1/e)||a!==a&&e!==e}var mD=typeof Object.is=="function"?Object.is:uD,pD=Ni.useState,gD=Ni.useEffect,hD=Ni.useLayoutEffect,fD=Ni.useDebugValue;function vD(a,e){var o=e(),i=pD({inst:{value:o,getSnapshot:e}}),t=i[0].inst,r=i[1];return hD(function(){t.value=o,t.getSnapshot=e,Xn(t)&&r({inst:t})},[a,o,e]),gD(function(){return Xn(t)&&r({inst:t}),a(function(){Xn(t)&&r({inst:t})})},[a]),fD(o),o}function Xn(a){var e=a.getSnapshot;a=a.value;try{var o=e();return!mD(a,o)}catch{return!0}}function bD(a,e){return e()}var AD=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?bD:vD;ov.useSyncExternalStore=Ni.useSyncExternalStore!==void 0?Ni.useSyncExternalStore:AD;av.exports=ov;var yD=av.exports;const SD=(a,e)=>{if(Vo(e))return e;if(Z0(e)&&Vo(e.defaultValue))return e.defaultValue;if(typeof a=="function")return"";if(Array.isArray(a)){const o=a[a.length-1];return typeof o=="function"?"":o}return a},ED={t:SD,ready:!1},CD=()=>()=>{},Zt=(a,e={})=>{var w,L,M;const{i18n:o}=e,{i18n:i,defaultNS:t}=h.useContext(dD)||{},r=o||i||nD();r&&!r.reportNamespaces&&(r.reportNamespaces=new lD),r||Yr(r,"NO_I18NEXT_INSTANCE","useTranslation: You will need to pass in an i18next instance by using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.");const s=h.useMemo(()=>{var N;return{...rD(),...(N=r==null?void 0:r.options)==null?void 0:N.react,...e}},[r,e]),{useSuspense:n,keyPrefix:c}=s,d=t||((w=r==null?void 0:r.options)==null?void 0:w.defaultNS),u=Vo(d)?[d]:d||["translation"],m=h.useMemo(()=>u,u);(M=(L=r==null?void 0:r.reportNamespaces)==null?void 0:L.addUsedNamespaces)==null||M.call(L,m);const g=h.useRef(0),p=h.useCallback(N=>{if(!r)return CD;const{bindI18n:T,bindI18nStore:q}=s,O=()=>{g.current+=1,N()};return T&&r.on(T,O),q&&r.store.on(q,O),()=>{T&&T.split(" ").forEach(_=>r.off(_,O)),q&&q.split(" ").forEach(_=>r.store.off(_,O))}},[r,s]),f=h.useRef(),v=h.useCallback(()=>{if(!r)return ED;const N=!!(r.isInitialized||r.initializedStoreOnce)&&m.every(D=>X0(D,r,s)),T=e.lng||r.language,q=g.current,O=f.current;if(O&&O.ready===N&&O.lng===T&&O.keyPrefix===c&&O.revision===q)return O;const z={t:r.getFixedT(T,s.nsMode==="fallback"?m:m[0],c,{scopeNs:m}),ready:N,lng:T,keyPrefix:c,revision:q};return f.current=z,z},[r,m,c,s,e.lng]),[b,S]=h.useState(0),{t:A,ready:y}=yD.useSyncExternalStore(p,v,v);h.useEffect(()=>{if(r&&!y&&!n){const N=()=>S(T=>T+1);e.lng?sp(r,e.lng,m,N):rd(r,m,N)}},[r,e.lng,m,y,n,b]);const E=r||{},C=h.useRef(null),P=h.useRef(),R=N=>{var T;return`${N.language}|${N.resolvedLanguage}|${(T=N.languages)==null?void 0:T.join(",")}`},I=N=>{const T=Object.getOwnPropertyDescriptors(N);T.__original&&delete T.__original;const q=Object.create(Object.getPrototypeOf(N),T);if(!Object.prototype.hasOwnProperty.call(q,"__original"))try{Object.defineProperty(q,"__original",{value:N,writable:!1,enumerable:!1,
54configurable:!1})}catch{}return q},x=h.useMemo(()=>{const N=E,T=N&&R(N);let q=N;N&&(C.current&&C.current.__original===N?P.current!==T?(q=I(N),C.current=q,P.current=T):q=C.current:(q=I(N),C.current=q,P.current=T));const O=!y&&!n?(...z)=>(Yr(r,"USE_T_BEFORE_READY","useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t."),A(...z)):A,_=[O,q,y];return _.t=O,_.i18n=q,_.ready=y,_},[A,E,y,E.resolvedLanguage,E.language,E.languages]);if(r&&n&&!y){let N=!1;try{N=!1}catch{}throw N&&Yr(r,"SUSPENDED_WHILE_LOADING","useTranslation: suspended while translations are loading (useSuspense is true by default). Add a <Suspense> boundary above this component, or set react.useSuspense: false in the i18next init options. https://react.i18next.com/latest/usetranslation-hook"),new Promise(T=>{const q=()=>T();e.lng?sp(r,e.lng,m,q):rd(r,m,q)})}return x},TD="APPROPRIATE",PD="API",RD="ATTENTION",xD="Abandoned",wD="Open",ID="Apr",DD="Open",OD="Accepts",MD="Accept",ND="Accepted",zD="Correct answers",jD="Access",kD="Access",_D="Accessibility",qD="Access",LD="Accesses",UD="Tracking",BD="Track",FD="Adaptive",GD="Adaptive",VD="Adequate",$D="Add",HD="Admin",WD="Administrator",QD="Airport",KD="Aug",YD="Waiting",JD="Help",XD="Adjust",ZD="AlertTriangle",eO="Alert",aO="Alerts",oO="Aligned",iO="High",tO="Alternatives",rO="Alternatives",sO="High",nO="Student",cO="Students",dO="Environment",lO="Both",uO="Samples",mO="Amplitude",pO="Analyst",gO="Analytics",hO="Year",fO="Previous",vO="Annual",bO="Apply",AO="Apps",yO="Learn",SO="Approved",EO="Approver",CO="Approved",TO="Approve",PO="Arial",RO="Traps",xO="Storage",wO="Archived",IO="Archived",DO="Archive",OO="File",MO="Risky",NO="Seats",zO="Subscriptions",jO="Subject",kO="Active",_O="Activities",qO="Active",LO="Active",UO="Overdue",BO="Overdue",FO="Assign",GO="Current",VO="Updated",$O="Update",HO="Lesson",WO="Auto",QO="Author",KO="Avatars",YO="Notices",JO="Award",XO="BASIC",ZO="Backlog",eM="Badge",aM="Badges",oM="Low",iM="Download",tM="Low",rM="Low",sM="Ban",nM="Baseline",cM="Beni",dM="Beta",lM="Bibliography",uM="Library",mM="Biodiversity",pM="Locked",gM="Blocked",hM="Good",fM="Bug",vM="Bugs",bM="CAC",AM="CADASTUR",yM="CALCULATED",SM="CERTIFICATE",EM="CNPJ",CM="COMPLETE",TM="CRITICAL",PM="CSV",RM="Registration",xM="Calculated",wM="Calculated",IM="Calculate",DM="Campaign",OM="Canceled",MM="Cancel",NM="Characters",zM="Waterfall",jM="Category",kM="Categories",_M="Certificate",qM="Certificates",LM="Key",UM="Coverage",BM="Collection",FM="Sales",GM="Comparison",VM="Share",$M="Supplementary",HM="Complete",WM="Completeness",QM="Compliance",KM="Composting",YM="Community",JM="Grant",XM="Conclude",ZM="Competitors",eN="Connected",aN="Connectivity",oN="Configure",iN="Confirmed",tN="Confirmed",rN="Comfort",sN="Earned",nN="Achievements",cN="Consulted",dN="Contact",lN="Context",uN="Contexts",mN="Continue",pN="Conversations",gN="Convert",hN="Converted",fN="Invite",vN="Coordinates",bN="Corporate",AN="Correct",yN="Quota",SN="Create",EN="Cultural",CN="Course",TN="Courses",PN="DATASUS",RN="DERIVED",xN="DOCX",wN="DOWN",IN="Data",DN="Dashboard",ON="Date",MN="DataSUS",NN="Outdated",zN="Demand",jN="Demo",kN="Density",_N="Report",qN="Derivative",LN="Derived",UN="Unpin",BN="Deactivate",FN="Unlock",GN="Discarded",VN="Discard",$N="Discard",HN="Destination",WN="Destinations",QN="Invalidate",KN="Detail",YN="Details",JN="Dec",XN="Tip",ZN="Difficulty",ez="Discipline",az="Dismiss",oz="Essay",iz="Essay Questions",tz="Docs",rz="Owner",sz="ECO",nz="EDU",cz="EDU_AO",dz="EDU_OE",lz="EDU_RA",uz="ENT_SEASONALITY_INDEX",mz="STUDENT",pz="EXTERNALITY_WARNING",gz="Ecotourism",hz="Edited",fz="Edit",vz="Editor",bz="Editorials",Az="Effect",yz="Effective",Sz="Element",Ez="Email",Cz="Syllabus",Tz="Issued",Pz="Issue",Rz="Packaging",xz="Businesses",wz="Jobs",Iz="Business",Dz="Closed",Oz="Closure",Mz="Engagement",Nz="Riddles",zz="Enterprise",jz="Entity",kz="Entries",_z="Sign In",qz="Deliverable",Lz="Delivered",Uz="Delivered",Bz="Statement",Fz="Send",Gz="Balanced",Vz="Equip",$z="Team",Hz="Error",Wz="Errors",Qz="Scope",Kz="Expert",Yz="Sports",Jz="Essential",Xz="Estimated",Zz="Estimated",ej="Strategist",aj="Structure",oj="Structural",ij="Student",tj="Students",rj="Study",sj="Steps",nj="Event",cj="Events",dj="Exam",lj="Excellent",uj="Delete",mj="Running",pj="Example",gj="Expires",hj="Explore",fj="Export",vj="Exter
54nality",bj="FAQ",Aj="Facebook",yj="Ranges",Sj="Failures",Ej="Failed",Cj="Phase",Tj="Phases",Pj="Close",Rj="Feedback",xj="Tools",wj="Feb",Ij="Filter",Dj="Pinned",Oj="Pin",Mj="Flat",Nj="Source",zj="Sources",jj="Strong",kj="Franchise",_j="Feature",qj="MANAGERS",Lj="GOP",Uj="GOVERNANCE_BLOCK",Bj="Bottlenecks",Fj="Gastronomy",Gj="Trigger",Vj="Geomarketing",$j="General",Hj="Managers",Wj="Global",Qj="Large",Kj="Free",Yj="HIGH_IS_BETTER",Jj="Today",Xj="Hooks",Zj="Horizon",ek="Hospitals",ak="Hostel",ok="Hotel",ik="IAO",tk="IBGE",rk="IGMA",sk="INEP",nk="INTERSECTORAL_DEPENDENCY",ck="IOE",dk="IRA",lk="Language",uk="Ignored",mk="Equalize",pk="Imported",gk="Import",hk="Print",fk="Inactive",vk="Incorrect",bk="Independent",Ak="Undetermined",yk="Indicator",Sk="Indicators",Ek="Info",Ck="Informed",Tk="Infrastructure",Pk="Beginner",Rk="Instagram",xk="Instructor",wk="Integrated",Ik="Comprehensive",Dk="Smart",Ok="Interactive",Mk="Interests",Nk="International",zk="Jan",jk="Play",kk="Jul",_k="Jun",qk="Kanban",Lk="LEED",Uk="LTV",Bk="Leisure",Fk="Leads",Gk="Reading",Vk="Release",$k="Clear",Hk="Lineage",Wk="Link",Qk="List",Kk="Livestream",Yk="Livestreams",Jk="Location",Xk="Log",Zk="Logo",e_="Logs",a_="Far",o_="MAJOR",i_="MARKETING",t_="MARKETING_BLOCKED",r_="MINOR",s_="MIN_MAX",n_="MST",c_="May",d_="Mandala",l_="Manuals",u_="Manual",m_="Mar",p_="Brand",g_="Milestone",h_="Milestones",f_="Marketing",v_="Improved",b_="Improvement",A_="Members",y_="Message",S_="Messages",E_="Monthly",C_="Menu",T_="Market",P_="Metadata",R_="Methodology",x_="Mixed",w_="Model",I_="Moderate",D_="Moderate",O_="Mode",M_="Coins",N_="Monitoring",z_="Show",j_="Reason",k_="Mux",__="NPS",q_="Narrative",L_="Nature",U_="None",B_="Name",F_="Normal",G_="Grade",V_="Notes",$_="Nov",H_="New",W_="OFFICIAL_API",Q_="OTAs",K_="Objective",Y_="Hide",J_="Offer",X_="Official",Z_="Online",eq="Optional",aq="Order",oq="Org",iq="Source",tq="Out",rq="Other",sq="Other",nq="PATCH",cq="PDF",dq="POST",lq="PRO",uq="Role",mq="Partial",pq="Pairs",gq="Join",hq="Steps",fq="Paused",vq="Payback",bq="Payload",Aq="Pending",yq="Pending",Sq="Small",Eq="Percentage",Cq="Question",Tq="Permissive",Pq="Persona",Rq="Custom",xq="Customize",wq="Near",Iq="Weight",Dq="Weights",Oq="Person",Mq="Personal",Nq="Peaks",zq="Pillar",jq="Pillars",kq="Planned",_q="Planning",qq="Plan",Lq="Plans",Uq="Post",Bq="Inn",Fq="Deadline",Gq="Filled",Vq="Filling",$q="Premium",Hq="Preview",Wq="Main",Qq="Priority",Kq="Processed",Yq="Processing",Jq="Procon",Xq="Instructor",Zq="Teachers",e1="Progress",a1="Project",o1="Projects",i1="Prompt",t1="Ready",r1="Extend",s1="Exam",n1="Exams",c1="Provider",d1="Provider",l1="Published",u1="Published",m1="Published",p1="Publish",g1="Skip",h1="Quality",f1="Quantity",v1="Quizzes",b1="RA_LIMITATION",A1="ROI",y1="RSS",S1="Snapshot",E1="Draft",C1="Drafts",T1="Actual",P1="Reused",R1="Recalculate",x1="Reload",w1="Revenue",I1="Collapse",D1="Rewards",O1="Appeal",M1="Resources",N1="Decline",z1="Network",j1="Regenerate",k1="Register",_1="Records",q1="Rules",L1="Declined",U1="Restart",B1="Rejected",F1="Reject",G1="Religious",V1="Remove",$1="Rename",H1="Failed",W1="Failed",Q1="Reset",K1="Resolved",Y1="Resolved",J1="Resolved",X1="Resort",Z1="Reply",eL="Answer",aL="Restaurant",oL="Restore",iL="Restrictive",tL="Result",rL="Results",sL="Summary",nL="RevPAR",cL="Revert",dL="Review",lL="Revoked",uL="Revoked",mL="Revoke",pL="Rounds",gL="Routes",hL="SAFe",fL="SISTUR",vL="STABLE",bL="Log Out",AL="Balance",yL="Save",SL="Seasonality",EL="Score",CL="Scrum",TL="Select",PL="Select",RL="Password",xL="Sentiment",wL="Severity",IL="ShieldAlert",DL="Yes",OL="Simulator",ML="Synchronize",NL="Website",zL="Social",jL="Stage",kL="Status",_L="Storage",qL="Streak",LL="Streaks",UL="Submit",BL="Replace",FL="Superstructure",GL="Sustainability",VL="Task",$L="Tasks",HL="Rate",WL="Technology",QL="Telecom",KL="Theme",YL="Topics",JL="Template",XL="Time",ZL="Attempts",eU="Terms",aU="Territorial",oU="Territorial",iU="Treasures",tU="Tier",rU="TikTok",
54sU="Timeline",nU="Type",cU="All",dU="All",lU="Tone",uU="Total",mU="Tour",pU="Trace",gU="Trade",hU="Transport",fU="Treatment",vU="Training",bU="Trainings",AU="TrendingUp",yU="Trials",SU="Trail",EU="Learning Paths",CU="Quarterly",TU="Change",PU="Tourism",RU="Class",xU="Turnover",wU="Tutorial",IU="Unit",DU="Units",OU="Upload",MU="Urban Planner",NU="Urgent",zU="Used",jU="Users",kU="VIEWER",_U="Validity",qU="Validated",LU="Validated",UU="Validate",BU="Value",FU="Value",GU="Expired",VU="Expired",$U="View",HU="Verify",WU="Views",QU="Vimeo",KU="Linked",YU="Linked",JU="Link",XU="Visibility",ZU="Visitors",eB="Viewer",aB="View",oB="Back",iB="Volume",tB="Warn",rB="Waterfall",sB="Word",nB="YouTube",cB="add",dB="admin",lB="ai_model",uB="ai_provider",mB="anatel_coverage_cache",pB="year",gB="assessment_indicator_audit",hB="active",fB="auto",vB="claude_budget_pillar",bB="code",AB="community",yB="compliance",SB="consumption",EB="courses",CB="of",TB="deactivates",PB="days",RB="duration_ms",xB="edited",wB="first_course",IB="source",DB="bottleneck",OB="generated_reports",MB="global",NB="inactive",zB="indicators",jB="indicator_values",kB="jobId",_B="job_id",qB="lives",LB="localStorage",UB="max_tokens",BB="metadata",FB="min",GB="model",VB="organizational",$B="or",HB="peers",WB="persist_inserted",QB="phase1_pillars_start",KB="phase2_envelope_done",YB="provider",JB="provider_failed",XB="provider_selected",ZB="reference_month",eF="record",aF="records",oF="report_generation_logs",iF="report_id",tF="report_jobs",rF="report_validations",sF="routes",nF="stage",cF="stream_closed_ok",dF="trace_id",lF="tse_turnout_cache",uF="useReportJobWatcher",mF="uuid",pF="validation_agent_done",gF="value",hF="value",iv={'"Como criar um diagnóstico?" â Orientação sobre a plataforma.':'"How to create a diagnostic?" â Platform guidance.','"Conteúdo Gerado pelo Usuário"':'"User Generated Content"','"Dados do Diagnóstico"':'"Diagnostic Data"','"Explique a relação entre os 3 pilares" â Conceitos da metodologia.':'"Explain the relationship between the 3 pillars" â Methodological concepts.','"Indicadores criam obrigação. Aprendizado é execução. Monitoramento fecha o ciclo. O SISTUR não informa. O SISTUR transforma."':`"Indicators create obligation. Learning is execution. Monitoring closes the cycle. SISTUR doesn't just inform. SISTUR transforms."`,'"O que significa um score baixo em OE?" â Interpretação de indicadores.':'"What does a low score in OE mean?" â Indicator interpretation.','"Plataforma"':'"Platform"','"Sugira ações para melhorar o pilar RA" â Recomendações práticas.':'"Suggest actions to improve the RA pillar" â Practical recommendations.','"Titular"':'"Owner"','"Usuário"':'"User"',"# Linha de cabeçalho (obrigatória):":"# Header row (mandatory):","# Linhas de dados:":"# Data lines:","## Ficha de Conformidade Metodológica":"## Methodological Compliance Form","% Compras Locais":"% Local Purchases","% Funcionários Locais":"% Local Employees","% Positivo":"% Positive","% Resposta":"% Response","% Vendas diretas":"% Direct Sales","% de domicÃlios com esgotamento sanitário adequado":"% of households with adequate sanitation","% do orçamento municipal destinado ao turismo":"% of municipal budget allocated to tourism","(0.0.X): Correções de bugs e micro ajustes":"(0.0.X): Bug fixes and micro adjustments","(0.X.0): Novas funcionalidades compatÃveis":"(0.X.0): Compatible new features","(Check-ins realizados digitalmente ÷ total de check-ins) à 100. Consulte seu PMS ou sistema de check-in online.":"(Digitally performed check-ins ÷ total check-ins) à 100. Consult your PMS or online check-in system.","(Hóspedes que já se hospedaram antes ÷ total de hóspedes únicos) à 100. Consulte o CRM ou histórico do PMS.":"(Guests who have stayed before ÷ total unique guests) à 100. Consult your CRM or PMS history.","(Quartos adaptados ÷ total de quartos) à 100. Considere quartos com barras, portas largas, banheiro adaptado conforme ABNT NBR 9050.":"(Adapted rooms ÷ total rooms) à 100. Consider rooms with grab bars, wide doors, adapted bathrooms according to ABNT NBR 9050.","(ResÃduos reciclados ÷ total de resÃduos) à 100. Verifique com a empresa de coleta seletiva.":"(Recycled waste ÷ total waste) à 100. Verify with the selective collection company.","(X.0.0): Mudanças incompatÃveis ou grandes reformulações":"(X.0.0): Incompatible changes or major reformulations","(atual {{v0}}%)":"(current {{v0}}%)","(divergência > 5%).":"(divergence > 5%).","(mapa.turismo.gov.br) com fallback para":"(mapa.turismo.gov.br) with fallback to","(que pode ser um arquivo exato ou um\n * diretório terminado em":`(which can be an exact file or a 55 * directory ending in`,"(sem descritor)":"(no descriptor)","(streaming SSE, JWT obrigatório)":"(SSE streaming, JWT required)","({{v0}} capÃtulos)":"({{v0}} chapters)","({{v0}} diagnósticos)":"({{v0}} diagnoses)","({{v0}} jogáveis)":"({{v0}} playable)","({{v0}} total)":"({{v0}} total)","({{v0}}% concluÃdo)":"({{v0}}% completed)","({{v0}}) será permanentemente removido do sistema.":"({{v0}}) will be permanently removed from the system.",") RETURNS boolean LANGUAGE plpgsql SECURITY DEFINER AS $$":") RETURNS boolean LANGUAGE plpgsql SECURITY DEFINER AS $$",") RETURNS uuid LANGUAGE plpgsql SECURITY DEFINER AS $$":") RETURNS uuid LANGUAGE plpgsql SECURITY DEFINER AS $$",") acionado por trigger de banco. O cliente recebe o":") triggered by database trigger. The client receives the",") durante o pipeline paralelo do Claude.\n \n \n // é carregado de":`) during Claude's parallel pipeline. 56 57 58 // is loaded from`,"), a polÃtica":"), the policy",").join('; ') || 'nenhuma'}.":").join('; ') || 'none'}.",");\n return alerts;\n }\n if (state.bars.ra < 20) alerts.push('ð¨ Natureza quase destruÃda!');\n else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo!');\n if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita poluição!');\n if (state.bars.ao < 15) alerts.push('ð¨ Sem organização!');\n if (state.disasterCount >= 3) alerts.push(":`); 59 return alerts; 60 } 61 if (state.bars.ra < 20) alerts.push('ð¨ Nature almost destroyed!'); 62 else if (state.bars.ra < 40) alerts.push('ð´ Nature in danger!'); 63 if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Too much pollution!'); 64 if (state.bars.ao < 15) alerts.push('ð¨ No organization!'); 65 if (state.disasterCount >= 3) alerts.push(`,");\n return alerts;\n }\n if (state.bars.ra < 20) alerts.push('ð¨ PERIGO EXTREMO: Natureza quase destruÃda!');\n else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo! Plante árvores!');\n if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita construção! A poluição aumentou!');\n if (state.bars.ao < 15) alerts.push('ð¨ CAOS: Sem organização, desastres iminentes!');
65\n else if (state.bars.ao < 30) alerts.push('â ï¸ Falta organização! Problemas podem acontecer!');\n if (state.disasterCount >= 3) alerts.push(":`); 66 return alerts; 67 } 68 if (state.bars.ra < 20) alerts.push('ð¨ EXTREME DANGER: Nature almost destroyed!'); 69 else if (state.bars.ra < 40) alerts.push('ð´ Nature in danger! Plant trees!'); 70 if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Too much construction! Pollution increased!'); 71 if (state.bars.ao < 15) alerts.push('ð¨ CHAOS: No organization, imminent disasters!'); 72 else if (state.bars.ao < 30) alerts.push('â ï¸ Lack of organization! Problems may occur!'); 73 if (state.disasterCount >= 3) alerts.push(`,");\n }\n } catch (e) {\n toast.error(":`); 74 } 75 } catch (e) { 76 toast.error(`,");\n recommendations.push('Diversificar segmentos (corporativo, eventos, ecoturismo) para preencher meses baixos.');\n } else if (pattern === 'media') {\n recommendations.push('Sazonalidade moderada: yield management mensal e campanhas direcionadas aos meses de pico.');\n } else if (pattern === 'baixa') {\n recommendations.push('Sazonalidade baixa: operação estável favorece ocupação contÃnua â focar em fidelização.');\n } else {\n recommendations.push('Dados insuficientes para diagnosticar sazonalidade tarifária. Rode primeiro os blocos de Demanda, Eventos e Preço.');\n }\n\n return {\n seasonality_score,\n amplitude_pct: amplitude,\n peak_months,\n low_months,\n pattern,\n recommendations,\n sources,\n summary: pattern === 'sem_dados'\n ? tx('Sazonalidade não pôde ser calculada â fontes upstream ausentes.')\n :":`); 77 recommendations.push('Diversify segments (corporate, events, ecotourism) to fill low months.'); 78 } else if (pattern === 'media') { 79 recommendations.push('Moderate seasonality: monthly yield management and campaigns targeting peak months.'); 80 } else if (pattern === 'baixa') { 81 recommendations.push('Low seasonality: stable operation favors continuous occupancy â focus on loyalty.'); 82 } else { 83 recommendations.push('Insufficient data to diagnose tariff seasonality. First run the Demand, Events, and Price blocks.'); 84 } 85 86 return { 87 seasonality_score, 88 amplitude_pct: amplitude, 89 peak_months, 90 low_months, 91 pattern, 92 recommendations, 93 sources, 94 summary: pattern === 'sem_dados' 95 ? tx('Seasonality could not be calculated â upstream sources missing.') 96 :`,"+ Não altera score":"+ Does not change score",",\n type: 'assessment_calculated',\n title: 'Diagnóstico calculado',\n description:":`, 97 type: 'assessment_calculated', 98 title: 'Diagnostic calculated', 99 description:`,",\n type: 'assessment_created',\n title: 'Novo diagnóstico',\n description:":`, 100 type: 'assessment_created', 101 title: 'New diagnostic', 102 description:`,",\n 'Ao conectar, uma janela de login do SISTUR será aberta; entre com sua conta e aprove o acesso.',\n 'Nas conversas, ative o conector SISTUR para consultar destinos, diagnósticos e projetos.',\n ],\n },\n {\n label: tx('Cursor / Claude Code'),\n steps: [\n 'Adicione um servidor MCP do tipo HTTP (streamable) na configuração de MCP do editor.',":`, 103 'When connecting, a SISTUR login window will open; log in with your account and approve access.', 104 'In conversations, activate the SISTUR connector to consult destinations, diagnostics, and projects.', 105 ], 106 }, 107 { 108 label: tx('Cursor / Claude Code'), 109 steps: [ 110 'Add an HTTP (streamable) type MCP server in the editor's MCP configuration.',`,",\n 'Escolha a autenticação OAuth e conclua o login com a sua conta SISTUR na tela de autorização.',\n 'Ative o conector na conversa e peça o que precisa â o assistente usará as ferramentas do SISTUR automaticamente.',\n ],\n },\n {\n label: tx('Claude (Claude.ai / Claude Desktop)'),\n steps: [\n 'Em Configurações â Connectors â \"Add custom connector\".',":`,
111 'Choose OAuth authentication and complete login with your SISTUR account on the authorization screen.', 112 'Activate the connector in the conversation and ask what you need â the assistant will automatically use SISTUR's tools.', 113 ], 114 }, 115 { 116 label: tx('Claude (Claude.ai / Claude Desktop)'), 117 steps: [ 118 'In Settings â Connectors â "Add custom connector".',`,",\n );\n } catch (e) {\n toast.error(":`, 119 ); 120 } catch (e) { 121 toast.error(`,", 'Aplicações'] },\n { number: 3, title: 'Estudo de Caso', sections: ['Caracterização',":`, 'Applications'] }, 122 { number: 3, title: 'Case Study', sections: ['Characterization',`,", com carga horária de":", with a workload of",", mas o SISTUR aproveita os":", but SISTUR leverages the",", na área de":", in the area of",", {\n method: 'GET',\n signal: ctrl.signal,\n cache: 'no-store',\n });\n clearTimeout(timer);\n if (!res.ok) return { kind: 'server', detail:":`, { 123 method: 'GET', 124 signal: ctrl.signal, 125 cache: 'no-store', 126 }); 127 clearTimeout(timer); 128 if (!res.ok) return { kind: 'server', detail:`,"-- Valida: ERP|EDU e ADMIN|ANALYST|VIEWER|ESTUDANTE|PROFESSOR":"-- Validates: ERP|EDU and ADMIN|ANALYST|VIEWER|STUDENT|PROFESSOR","-- Verifica: sem licença existente, sem trial usado":"-- Checks: no existing license, no trial used","--- MANIFESTO JSON DE REFERÃNCIA ---":"--- REFERENCE JSON MANIFEST ---",". As 6 regras IGMA são aplicadas normalmente em ambos os contextos, incluindo bloqueios quando RA está crÃtico.":". The 6 IGMA rules are normally applied in both contexts, including blocks when RA is critical.",". As demais abas (Radiografia, Normalização, Projeto, Comentários, Linhagem) não são filtradas.":". The other tabs (X-ray, Normalization, Project, Comments, Lineage) are not filtered.",". Ele apresenta o turismo como sistema aberto e os conjuntos RA, OE e AO â a linguagem comum de todas as demais formações.":". It presents tourism as an open system and the RA, OE and AO sets â the common language of all other formations.",". Em posts da sua organização, sua identidade sempre será visÃvel para membros da mesma organização.":". In posts from your organization, your identity will always be visible to members of the same organization.",". O acesso será mantido até o fim do perÃodo vigente.":". Access will be maintained until the end of the current period.",". Para Claude, o orçamento de":". For Claude, the budget for",". Se qualquer chamada falhar (timeout, abort, conteúdo vazio mid-stream ou erro de stream parcial), o trail é registrado e o próximo provedor da ordem é acionado automaticamente, mantendo o mesmo prompt e dados auditados â a regra de fallback é":". If any call fails (timeout, abort, empty content mid-stream, or partial stream error), the trail is logged, and the next provider in order is automatically triggered, maintaining the same prompt and audited data â the fallback rule is",". Stages explÃcitos (":". Explicit stages (",'. Use "Normalizar" para forçar a soma a 100% mantendo proporções.':'. Use "Normalize" to force the sum to 100% while maintaining proportions.',".ics":".ics","/ 5 necessários":"/ 5 needed","// Entrega, retentativas, supressao e descadastro sao gerenciados pela plataforma.":"// Delivery, retries, suppression, and unsubscription are managed by the platform.","// Envio sincrono via API gerenciada de e-mail da Lovable":"// Synchronous sending via Lovable's managed email API","// REGRA 1 â RA PRIORITÃRIO":"// RULE 1 â RA PRIORITY","// REGRA 2 â CICLO CONTÃNUO":"// RULE 2 â CONTINUOUS CYCLE","// REGRA 4 â GOVERNANÃA CENTRAL":"// RULE 4 â CENTRAL GOVERNANCE","/admin/report-logs":"/admin/report-logs","/ano":"/year","/mês":"/month","/planos":"/plans","0 (Não) ou 1 (Sim)":"0 (No) or 1 (Yes)","1 diagnóstico":"1 diagnostic","1 diagnóstico completo permitido":"1 full diagnostic allowed","1 imagem":"1 image","1 token debitado antes da resposta":"1 token debited before response","1-3 anos de experiência":"1-3 years of experience","1. DEFINIÃÃES":"1. DEFINITIONS","1. Fundamentação Teórica":"1. Theoretical Foundation","1. O que é um Diagnóstico SISTUR":"
1281. What is a SISTUR Diagnostic","1. Organização do Glossário":"1. Glossary Organization","1. Visão Geral":"1. Overview","1. Visão Geral do Sistema":"1. System Overview","1.1 Login e Recuperação de Senha":"1.1 Login and Password Recovery","1.2 Estrutura da Interface":"1.2 Interface Structure","1.2 Proposta de Valor Ãnica":"1.2 Unique Value Proposition","1.200â1.800 palavras.":"1,200â1,800 words.","1.250 empregos formais em turismo":"1,250 formal jobs in tourism","10 imagens":"10 images","10 perguntas gratuitas ao Professor Beni":"10 free questions to Professor Beni","10 vÃdeos":"10 videos","10+ construções":"10+ constructions","10+ turnos no verde":"10+ green shifts","10. CONFIDENCIALIDADE":"10. CONFIDENTIALITY","100 vÃdeos":"100 videos","100% determinÃsticas, baseadas em regras. Cada capacitação é prescrita quando Indicador + Pilar + Status atendem critérios especÃficos. Sem IA.":"100% deterministic, rule-based. Each capacity building is prescribed when Indicator + Pillar + Status meet specific criteria. No AI.","100% determinÃstico, baseado em regras. Sem IA.":"100% deterministic, rule-based. No AI.","100+ indicadores. Análise 360° para capitais, polos turÃsticos ou planejamento estratégico.":"100+ indicators. 360° analysis for capital cities, tourism hubs or strategic planning.","11. Funções de Banco de Dados (PostgreSQL)":"11. Database Functions (PostgreSQL)","11. RESCISÃO":"11. TERMINATION","11.1 Controle de Acesso â has_role()":"11.1 Access Control â has_role()","11.2 Tipos e Interfaces Centrais [igmaEngine.ts]":"11.2 Core Types and Interfaces [igmaEngine.ts]","11.3 Classificação de Severidade [igmaEngine.ts]":"11.3 Severity Classification [igmaEngine.ts]","11.5 Expiração Automática â expire_trial_licenses()":"11.5 Automatic Expiration â expire_trial_licenses()","11.6 Certificação â verify_certificate_by_code()":"11.6 Certification â verify_certificate_by_code()","11.7 Envio de E-mails â infraestrutura gerenciada":"11.7 Email Sending â managed infrastructure","12 manifestações culturais":"12 cultural manifestations","12% do território em áreas protegidas":"12% of territory in protected areas","12,5 por mil nascidos vivos":"12.5 per thousand live births","12. DISPOSIÃÃES GERAIS":"12. GENERAL PROVISIONS","13. Referências Bibliográficas":"13. Bibliographic References","15 desligamentos / 60 média = 25%":"15 terminations / 60 average = 25%","15% de desconto":"15% discount","15,2 por 100 mil hab.":"15.2 per 100,000 inhabitants.","18% do território em áreas protegidas":"18% of territory in protected areas","2,3 leitos por 1.000 habitantes":"2.3 beds per 1,000 inhabitants","2. Arquitetura Técnica":"2. Technical Architecture","2. Criar uma rodada de diagnóstico no nÃvel adequado (Essencial, Estratégico ou Integral).":"2. Create a diagnostic round at the appropriate level (Essential, Strategic, or Integral).","2. Módulos Principais":"2. Core Modules","2. NÃveis DisponÃveis":"2. Available Levels","2. OBJETO":"2. PURPOSE","2. Os Três Pilares do Sistema TurÃstico":"2. The Three Pillars of the Tourism System","2. Pilar RA â Relações Ambientais":"2. RA Pillar â Environmental Relations","2. PrincÃpios da Prescrição":"2. Principles of Prescription","2.1 Qualidade da Ãgua (IQA)":"2.1 Water Quality (WQI)","2.1 RA â Relações Ambientais (Prioridade 1)":"2.1 RA â Environmental Relations (Priority 1)","2.1 SISTUR AnalÃtico":"2.1 SISTUR Analytics","2.1 Stack Tecnológico":"2.1 Technology Stack","2.2 Estrutura do Projeto":"2.2 Project Structure","2.2 OE â Organização Estrutural (Prioridade 2)":"2.2 OE â Structural Organization (Priority 2)","2.2 Ãreas Protegidas (%)":"2.2 Protected Areas (%)","2.3 AO â Ações Operacionais (Prioridade 3)":"2.3 AO â Operational Actions (Priority 3)","2.3 Gestão de ResÃduos Sólidos":"2.3 Solid Waste Management","2.3 Segurança":"2.3 Safety","2.4 Observatório TurÃstico":"2.4 Tourism Observatory","2.4 Patrimônio Histórico Tombado":"2.4 Listed Historical Heritage","2.5 Fórum e Base de Conhecimento":"2.5 Forum and Knowledge Base","20+ funções serverless em Deno/TypeScript para processamento backend:":"20+ serverless functions in Deno/TypeScript for backend processing:","22 indicadores de hospital
128idade (6 compartilhados)":"22 hospitality indicators (6 shared)","22 indicadores especializados":"22 specialized indicators","22 indicadores especializados em 7 categorias":"22 specialized indicators in 7 categories","25 kgCOâe por pernoite":"25 kgCOâe per overnight stay","25 vÃdeos":"25 videos","2â
Estimado":"2â
Estimated","3 nÃveis de diagnóstico: Essencial (9 indicadores), Estratégico (19), Integral (96)":"3 diagnostic levels: Essential (9 indicators), Strategic (19), Integral (96)","3 prioritárias":"3 priorities","3 recomendações prioritárias por pilar":"3 priority recommendations per pillar","3. Estrutura Pedagógica":"3. Pedagogical Structure","3. Fluxo TÃpico de Trabalho":"3. Typical Workflow","3. Motor IGMA â Núcleo Proprietário":"3. IGMA Engine â Proprietary Core","3. Os 3 NÃveis de Diagnóstico":"3. The 3 Diagnostic Levels","3. PROPRIEDADE INTELECTUAL":"3. INTELLECTUAL PROPERTY","3. Pilar OE â Organização Estrutural":"3. OE Pillar â Structural Organization","3. Preencher os indicadores manualmente ou via importação CSV.":"3. Fill in indicators manually or via CSV import.","3.1 Criação da Rodada":"3.1 Round Creation","3.1 NÃveis de CurrÃculo":"3.1 Curriculum Levels","3.1 Pipeline de Processamento (9 Etapas)":"3.1 Processing Pipeline (9 Steps)","3.2 As 6 Regras Sistêmicas":"3.2 The 6 Systemic Rules","3.2 Estratégico (19 indicadores, 2-3 horas)":"3.2 Strategic (19 indicators, 2-3 hours)","3.2 Preenchimento de Indicadores":"3.2 Indicator Filling","3.2 Pré-requisitos":"3.2 Prerequisites","3.2 Transporte e Acessos":"3.2 Transport and Access","3.3 Auditoria Pré-Cálculo":"3.3 Pre-Calculation Audit","3.3 Sinalização TurÃstica":"3.3 Tourist Signage","3.4 Cálculo":"3.4 Calculation","3.4 Equipamentos de Apoio":"3.4 Support Equipment","30 dias":"30 days","30 perguntas/mês (60 no Empresarial), renovadas todo mês. Não acumula.":"30 questions/month (60 in Enterprise), renewed monthly. Does not accumulate.","30+ funções SQL proprietárias com SECURITY DEFINER":"30+ proprietary SQL functions with SECURITY DEFINER","35% de receita própria":"35% own revenue","3â
Manual (entrada do usuário)":"3â
Manual (user input)","4 jogos com sessões persistentes":"4 games with persistent sessions","4 jogos educacionais com persistência de sessão:":"4 educational games with session persistence:","4 jogos educacionais com persistência e relação direta com conteúdo":"4 educational games with persistence and direct content relation","4 segmentos (Cultural, Ecoturismo, Negócios, Gastronômico)":"4 segments (Cultural, Ecotourism, Business, Gastronomic)","4. As 6 Regras do Motor IGMA":"4. The 6 Rules of the IGMA Engine","4. Avaliação e Certificação":"4. Evaluation and Certification","4. Calcular o diagnóstico â o status (Adequado/Atenção/CrÃtico) é gerado automaticamente.":"4. Calculate the diagnosis â the status (Adequate/Attention/Critical) is automatically generated.","4. DADOS E PRIVACIDADE":"4. DATA AND PRIVACY","4. Interpretação Territorial":"4. Territorial Interpretation","4. Módulos Funcionais":"4. Functional Modules","4. Permissões e Papéis":"4. Permissions and Roles","4. Pilar AO â Ações Operacionais":"4. AO Pillar â Operational Actions","4.1 AnalÃtico â Diagnóstico Territorial":"4.1 Analytics â Territorial Diagnosis","4.1 Conselho Municipal de Turismo":"4.1 Municipal Tourism Council","4.1. Dados Pessoais:":"4.1. Personal Data:","4.2 EDU â Capacitação Prescritiva":"4.2 EDU â Prescriptive Training","4.2 Plano Municipal de Turismo":"4.2 Municipal Tourism Plan","4.2. Dados de Diagnóstico e Indicadores:":"4.2. Diagnostic Data and Indicators:","4.3 Despesa Municipal com Turismo":"4.3 Municipal Tourism Expenditure","4.3 Empresarial â Módulo Hoteleiro":"4.3 Business â Hotel Module","4.3. Dados Organizacionais:":"4.3. Organizational Data:","4.4 Gamificação Educacional":"4.4 Educational Gamification","4.4 Qualificação Profissional":"4.4 Professional Qualification","4.4. Retenção de Dados:":"4.4. Data Retention:","4.5 Fórum e Comunidade":"4.5 Forum and Community","4.5 Marketing TurÃstico":"4.5 Tourism Marketing","4.5. Portabilidade:":"4.5. Portability:","41 indicadores com definição, fonte oficial e periodicidade":"41 indicators with definition, official source and periodicity","45% com ensino médio completo":"45% with completed high school","480 horas / 60 funcionários = 8h por colaborador":"480 hours / 60 employees = 8h per employee","4â
Calculado (derivado oficial)":"4â
Calculated (official derivative)","5 documentos válidos":"5 valid documents","5. ACESSO DO TITULAR AOS DADOS":"5. OWNER'S ACCESS TO DATA","5. Bloqueios Sistêmicos":"5. Systemic Blocks","5. Compliance e Anti-fraude":"5. Compliance and Anti-fraud","5. Consultar prescrições de capacitação no SISTUR EDU.":"5. Consult training prescriptions in SISTUR EDU.","5. Integrações e Fontes de Dados":"5. Integrations and Data Sources","5. SISTUR Empresarial â Módulo Hoteleiro":"5. SISTUR Business â Hotel Module","50 vÃdeos":"50 videos","500 perguntas (organização)":"500 questions (organization)","56 indicadores nos pilares RA, OE e AO":"56 indicators in the RA, OE, and AO pillars","5â
Automático (API oficial)":"5â
Automatic (official API)","6 indicadores compartilhados com diagnósticos territoriais (NPS, Reviews, Treinamento, etc.)":"6 indicators shared with territorial diagnostics (NPS, Reviews, Training, etc.)","6 indicadores são compartilhados":"6 indicators are shared","6. CONTEÃDO EDUCACIONAL":"6. EDUCATIONAL CONTENT","6. Fontes de Dados e Transparência":"6. Data Sources and Transparency","6. Gerar relatórios e planos de ação.":"6. Generate reports and action plans.","6. Modelo de Dados":"6. Data Model","6. Papel do Professor":"6. Professor's Role","6. Relatórios e Plano de Ação":"6. Reports and Action Plan","6. Régua de Status":"6. Status Rule","60 funcionários / 80 quartos = 0,75":"60 employees / 80 rooms = 0.75","65% de cobertura":"65% coverage","7 dias":"7 days","7 dias com AnalÃtico + EDU + Games habilitados":"7 days with Analytics + EDU + Games enabled","7. Alertas de Regressão":"7. Regression Alerts","7. Base de Conhecimento e Referências Globais":"7. Knowledge Base and Global References","7. Boas Práticas":"7. Best Practices","7. Fluxos Visuais do Sistema":"7. System Visual Flows","7. LICENCIAMENTO E PAGAMENTO":"7. L
128ICENSING AND PAYMENT","7. Monitorar evolução pelo Observatório.":"7. Monitor evolution through the Observatory.","7.1 Fluxo de Diagnóstico Territorial":"7.1 Territorial Diagnostic Flow","7.2 Fluxo de Prescrição EDU (DeterminÃstico)":"7.2 EDU Prescription Flow (Deterministic)","7.3 Fluxo de Licenciamento":"7.3 Licensing Flow","7.4 Fluxo de Autenticação e Acesso":"7.4 Authentication and Access Flow","72% de ocupação anual média":"72% average annual occupancy","72.5 (escala 0-100: 0=péssima, 100=ótima)":"72.5 (scale 0-100: 0=terrible, 100=excellent)","8 agências cadastradas":"8 registered agencies","8 categorias: Plano Diretor, Legislação, Pesquisa, etc.":"8 categories: Master Plan, Legislation, Research, etc.","8 fontes oficiais":"8 official sources","8 milhões de toneladas de plástico vão ao oceano por ano":"8 million tons of plastic go into the ocean per year","8 patrimônios registrados":"8 registered heritage sites","8,5% dos empregos no setor turÃstico":"8.5% of jobs in the tourism sector","8. Metodologia de Cálculo Detalhada":"8. Detailed Calculation Methodology","8. Personalização de Relatórios":"8. Report Customization","8. Privacidade e Comparações":"8. Privacy and Comparisons","8. RESPONSABILIDADES DO USUÃRIO":"8. USER RESPONSIBILITIES","8.1 Normalização de Indicadores":"8.1 Indicator Normalization","8.2 Cálculo dos Scores de Pilar":"8.2 Pillar Score Calculation","8.2 na média geral de satisfação":"8.2 in overall satisfaction average","8.3 Classificação de Severidade":"8.3 Severity Classification","8.4 Regras IGMA â Fluxo de Decisão":"8.4 IGMA Rules â Decision Flow","8.5 Snapshot de Rastreabilidade":"8.5 Traceability Snapshot","800 recorrentes / 3.000 únicos = 26,7%":"800 recurring / 3,000 unique = 26.7%","800â1.200 palavras.":"800â1,200 words.","85% de reviews respondidos":"85% of reviews responded","9. LIMITAÃÃO DE RESPONSABILIDADE":"9. LIMITATION OF LIABILITY","9. Referências Bibliográficas":"9. Bibliographical References","90 dias":"90 days","92% da população atendida":"92% of the population served","97% dos domicÃlios atendidos":"97% of households served",": ''\n } Recalcule o diagnóstico e regenere o relatório.":`: '' 129 } Recalculate the diagnosis and regenerate the report.`,": ''} Escolha um novo plano abaixo.":": ''} Choose a new plan below.",": Abastecimento de água (rede geral %) e Coleta de lixo domiciliar (%) â tabela 3217":": Water supply (general network %) and Household waste collection (%) â table 3217",": Dados disponÃveis via Censo Escolar (coleta manual)":": Data available via School Census (manual collection)",": Guias de turismo e Agências de turismo via datasets oficiais abertos (ingestão trimestral)":": Tour guides and Tourism agencies via open official datasets (quarterly ingestion)",": IDEB (Ãndice de Desenvolvimento da Educação Básica)":": IDEB (Basic Education Development Index)",": IDH Municipal, Ãndice de Gini, Incidência de pobreza":": Municipal HDI, Gini Index, Incidence of poverty",": IQA (Ãndice de Quali
129dade da Ãgua) médio das estações de monitoramento do municÃpio, número de estações ativas e ano de referência â via API pública da Agência Nacional de Ãguas (alimenta o pilar RA com base hÃdrica oficial)":": WQI (Water Quality Index) average of the municipality's monitoring stations, number of active stations, and reference year â via public API of the National Water Agency (feeds the RA pillar with official water data)",": Leitos hospitalares por habitante, Cobertura de saúde (estabelecimentos), Taxa de mortalidade infantil, Mortalidade geral por mil habitantes":": Hospital beds per inhabitant, Health coverage (establishments), Infant mortality rate, General mortality per thousand inhabitants",": Meios de hospedagem (estabelecimentos e UH)":": Accommodation facilities (establishments and units)",": População, PIB per capita, Densidade demográfica e Ãrea territorial (Censo 2022, tabela 4714)":": Population, GDP per capita, Demographic density, and Territorial area (Census 2022, table 4714)",": Receita própria per capita, Despesa com turismo (R$ milhões)":": Own revenue per capita, Tourism expenditure (R$ millions)",": Região turÃstica, Categoria (A-E), Empregos no turismo, Estabelecimentos turÃsticos, Visitantes nacionais e internacionais, Arrecadação turÃstica, Conselho municipal de turismo â via API REST do Ministério do Turismo (mapa.turismo.gov.br)":": Tourist region, Category (A-E), Tourism jobs, Tourist establishments, National and international visitors, Tourism revenue, Municipal tourism council â via REST API of the Ministry of Tourism (mapa.turismo.gov.br)",": Saneamento, segurança, acessibilidade e demais indicadores que dependem de levantamento de campo":": Sanitation, security, accessibility, and other indicators that depend on field survey",": e.alarmMinutes === 1440 ? '1 dia' :":": e.alarmMinutes === 1440 ? '1 day' :",": o indicador aparece no painel de pré-preenchimento como linha MANUAL com valor vazio, badge ð MST e link direto para a fonte oficial. O usuário insere o valor e o sistema persiste como fonte oficial validada. Disparado apenas quando":": the indicator appears in the pre-fill panel as a MANUAL row with an empty value, ð MST badge, and direct link to the official source. The user enters the value, and the system persists it as a validated official source. Triggered only when",": sem invenção de números, anos ou fontes.":": no invention of numbers, years, or sources.",": v.status === 'unavailable' ? 'indisponÃvel' : 'erro'}":": v.status === 'unavailable' ? 'unavailable' : 'error'}",";\n payload = {\n chapters: [\n { number: 1, title: 'Introdução', sections: ['Justificativa', 'Objetivos', 'Metodologia'] },\n { number: 2, title: 'Fundamentação Teórica: O Modelo SISTUR', sections: ['Teoria Sistêmica',":`; 130 payload = { 131 chapters: [ 132 { number: 1, title: 'Introduction', sections: ['Justification', 'Objectives', 'Methodology'] }, 133 { number: 2, title: 'Theoretical Framework: The SISTUR Model', sections: ['Systemic Theory',`,";\n case 'COUNT':\n return Math.round(value).toLocaleString('pt-BR', { maximumFractionDigits: 0 });\n case 'RATE_PER_CAPITA':\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 });\n case 'DURATION':\n return value.toLocaleString('pt-BR', { maximumFractionDigits: 1 });\n case 'AREA':\n return value.toLocaleString('pt-BR', { maximumFractionDigits: 2 });\n case 'BINARY':\n return value >= 0.5 ? 'Sim' : 'Não';\n case 'CATEGORICAL':\n return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('pt-BR');\n case 'NUMERIC':\n default:\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 });\n }\n}\n\n/**\n * Compose":`; 134 case 'COUNT': 135 return Math.round(value).toLocaleString('pt-BR', { maximumFractionDigits: 0 }); 136 case 'RATE_PER_CAPITA': 137 return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); 138 case 'DURATION':
139 return value.toLocaleString('pt-BR', { maximumFractionDigits: 1 }); 140 case 'AREA': 141 return value.toLocaleString('pt-BR', { maximumFractionDigits: 2 }); 142 case 'BINARY': 143 return value >= 0.5 ? 'Yes' : 'No'; 144 case 'CATEGORICAL': 145 return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('pt-BR'); 146 case 'NUMERIC': 147 default: 148 return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); 149 } 150} 151 152/** 153 * Compose`,";\n}\n\n/**\n * Resolve uma entrada":`; 154} 155 156/** 157 * Resolve an entry`,"@ProfessorMarioBeni":"@ProfessorMarioBeni","A ANA não possui estações de monitoramento de qualidade da água num raio de 50 km deste municÃpio. O campo permanecerá disponÃvel para preenchimento manual na próxima etapa, caso você tenha acesso a fontes locais (vigilância sanitária, secretaria de meio ambiente ou estudos de bacia hidrográfica).":"ANA does not have water quality monitoring stations within a 50 km radius of this municipality. The field will remain available for manual entry in the next step, should you have access to local sources (sanitary surveillance, environmental secretariat, or watershed studies).","A API transacional do CADASTUR é":"CADASTUR's transactional API is","A Amazônia ocupa cerca de 49% do território brasileiro!":"The Amazon occupies about 49% of Brazilian territory!","A Fazer":"To Do","A Grande Barreira de Coral na Austrália tem mais de 2.300 km de extensão.":"The Great Barrier Reef in Australia is over 2,300 km long.","A MST é uma extensão opcional (a partir da v1.28.0) baseada em Tasso, Silva & Nascimento (2024) que adiciona 9 indicadores complementares ao núcleo SISTUR â 4 em RA (acessibilidade NBR 9050, áreas verdes, balneabilidade, patrimônio), 3 em OE (conectividade 5G/Wi-Fi via Anatel, qualificação PNQT via CADASTUR, comparecimento eleitoral via TSE) e 2 em AO (promoção digital, Turismo de Base Comunitária). O Score Final SISTUR e a classificação são preservados â a MST adiciona profundidade sem quebrar comparabilidade.":"The MST is an optional extension (from v1.28.0) based on Tasso, Silva & Nascimento (2024) that adds 9 complementary indicators to the SISTUR core â 4 in RA (NBR 9050 accessibility, green areas, water quality for bathing, heritage), 3 in OE (5G/Wi-Fi connectivity via Anatel, PNQT qualification via CADASTUR, electoral turnout via TSE) and 2 in AO (digital promotion, Community-Based Tourism). The SISTUR Final Score and classification are preserved â MST adds depth without breaking comparability.","A Mata Atlântica é um dos biomas mais ameaçados, restando cerca de 12% da área original.":"The Atlantic Forest is one of the most threatened biomes, with only about 12% of its original area remaining.","A ONG te contrata! Agora você trabalha pelo cerrado profissionalmente.":"The NGO hires you! Now you work professionally for the cerrado.","A ONG traz recursos, visibilidade e apoio jurÃdico. A comunidade ganha força e os madeireiros são encurralados legalmente. Mas falta um passo crucial: garantir proteção permanente.":"The NGO brings resources, visibility, and legal support. The community gains strength, and loggers are legally cornered. But a crucial step is missing: ensuring permanent protection.","A Plataforma SISTUR, incluindo sua metodologia baseada nos princÃpios sistêmicos de Mario Beni, algoritmos de cálculo (IGMA), interface gráfica, código-fonte, banco de dados, documentação técnica, conteúdos educacionais originais, e todos os elementos visuais e funcionais, são de propriedade exclusiva do Titular e estão protegidos pelas leis brasileiras e internacionais de propriedade intelectual.":"The SISTUR Platform, including its methodology based on Mario Beni's systemic principles, calculation algorithms (IGMA), graphical interface, source code, database, technical documentation, original educational content, and all visual and functional elements, are the exclusive property of the Holder and are protected by Brazilian and international intellectual property laws.","A Plataforma coleta e processa dados pessoais (nome, e-mail, dados de navegação) em conformidade com a Lei Geral de Proteção de Dados (LGPD â Lei nº 13.709/2018). Os dados pessoais serão utilizados exclusivamente para: (a
157) autenticação e acesso à Plataforma; (b) personalização da experiência educacional; (c) geração de certificados; (d) comunicações sobre o serviço.":"The Platform collects and processes personal data (name, email, browsing data) in compliance with the General Data Protection Law (LGPD â Law No. 13,709/2018). Personal data will be used exclusively for: (a) authentication and access to the Platform; (b) personalization of the educational experience; (c) generation of certificates; (d) service communications.","A Precificação dinâmica":"Dynamic Pricing","A Reserva é criada! Proteção permanente para a floresta e a comunidade.":"The Reserve is created! Permanent protection for the forest and the community.","A Serra da Mantiqueira brilha novamente! Nascentes cristalinas, florestas preservadas e comunidades prósperas. As montanhas são guardiãs da água e da vida, protegidas para sempre!":"The Mantiqueira Mountains shine again! Crystal clear springs, preserved forests, and prosperous communities. The mountains are guardians of water and life, protected forever!","A UNESCO reconhece a serra! Proteção internacional!":"UNESCO recognizes the mountain range! International protection!","A UNESCO reconhece! Proteção permanente para os recifes!":"UNESCO recognizes! Permanent protection for the reefs!","A Visão Integrada cruza o desempenho do empreendimento com o diagnóstico Territorial do municÃpio, ajudando a separar gargalos internos de causas externas (infra pública, segurança, conectividade, sazonalidade do destino).":"The Integrated View crosses the enterprise's performance with the municipality's Territorial diagnosis, helping to separate internal bottlenecks from external causes (public infrastructure, safety, connectivity, destination seasonality).","A Visão Integrada é informativa e não altera o cálculo do diagnóstico Empresarial. Use-a para contextualizar gargalos, justificar planos de ação cruzados (interno + territorial) e priorizar projetos junto à governança do destino.":"The Integrated View is informative and does not alter the calculation of the Business diagnosis. Use it to contextualize bottlenecks, justify cross-sectional action plans (internal + territorial), and prioritize projects with destination governance.","A aceitação é registrada com data e hora no sistema.":"Acceptance is registered with date and time in the system.","A automação MST é parcial e tem cobertura limitada por design. Para 15 destinos âncora pré-populados no cache (capitais brasileiras + Foz do Iguaçu, Olinda, Ribeirão Preto, Uberlândia), MST_TSE_TURNOUT (comparecimento eleitoral 2022/2024) e MST_5G_WIFI (cobertura 5G/4G/Wi-Fi público) são preenchidos automaticamente em <100ms via cache local (tse_turnout_cache e anatel_coverage_cache, com TTL de ciclo eleitoral e 90 dias respectivamente). Para os demais municÃpios, o sistema tenta scraping sob demanda via Firecrawl em fontes agregadoras (G1 Eleições, Teleco), mas como o TSE oficial usa SPA com hash routing e a Anatel publica via painel Leaflet, a maioria das tentativas falha e o indicador é registrado como linha MANUAL no painel de pré-preenchimento â com badge ð MST, valor vazio e link direto para a fonte oficial (tse.jus.br/eleicoes/estatisticas e anatel.gov.br) para preenchimento humano. MST_PNQT_QUAL é alimentado pelo CADASTUR estendido (ingest-cadastur). Os demais 6 indicadores MST (acessibilidade, áreas verdes, balneabilidade, patrimônio, promoção digital, TBC) são sempre manuais com guidance contextual.":"MST automation is partial and has limited coverage by design. For 15 pre-populated anchor destinations in cache (Brazilian capitals + Foz do Iguaçu, Olinda, Ribeirão Preto, Uberlândia), MST_TSE_TURNOUT (electoral turnout 2022/2024) and MST_5G_WIFI (5G/4G/public Wi-Fi coverage) are automatically filled in <100ms via local cache (tse_turnout_cache and anatel_coverage_cache, with electoral cycle and 90-day TTLs respectively). For other municipalities, the system attempts on-demand scraping via Firecrawl from aggregator sources (G1 Eleições, Teleco), but since the official TSE uses SPA with hash routing and Anatel publishes via a Leaflet panel, most attempts fail and the indicator is registered as a MANUAL line in the pre-fill panel â with a ð MST badge, empty value, and direct link to the official source (tse.jus.br/eleicoes/estatisticas and anatel.gov.br) for human input. MST_PNQT_QUAL is fed by the extended CADASTUR (ingest-cadastur). The other 6 MST indicators (accessibility, green areas, water quality for bathing, heritage, digital promotion, CBT) are always manual with contextual guidance.","A avaliação é por uso, sem prazo: cada nova conta tem o curso base do SISTUR EDU e 10 perguntas ao Professor Beni; cada nova organização tem 1 diagnóstico com resultado em prévia. Depois disso, basta escolher um plano para liberar tudo.":"Evaluation is by usage, with no time limit: each new account has the basic SISTUR EDU course and 10 questions for Professor Beni; each new organization has 1 diagnosis with a preview result. After that, just choose a plan to unlock everything.","A bacia inteira se recupera! Modelo para todo o cerrado.":"The entire basin recovers! A model for the entire cerrado.",'A badge "{{v0}}" será excluÃda. Alunos que já a ganharam perderão a referência.':'The "{{v0}}" badge will be deleted. Students who have already earned it will lose the reference.',"A barra de progresso é calculada automaticamente com base nas tarefas concluÃdas.":"The progress bar is automatically calculated based on completed tasks.","A base do sistema turÃstico: recursos naturais, patrimônio cultural e sustentabilidade":"The foundation of the tourism system: natural resources, cultural heritage, and sustainability","A brigada responde rápido e salva hectares de floresta!":"The brigade responds quickly and saves hectares of forest!","A brigada se torna referência. Com equipamentos e treinamento, incêndios são controlados rapidamente.":"The brigade becomes a reference. With equipment and training, fires are quickly controlled.","A burocracia atrasa tudo. A recuperação é mÃnima.":"Bureaucracy delays everything. Recovery is minimal.","A caatinga mostra sua incrÃvel c
157apacidade de se recuperar!":"The Caatinga shows its incredible capacity to recover!","A caatinga renasce! Onde havia deserto, agora há vida. Comunidades prosperam com a convivência inteligente com o semiárido. Você provou que o sertão não é problema â é solução. A caatinga, exclusividade brasileira, brilha com toda sua riqueza!":"The Caatinga is reborn! Where there was desert, now there is life. Communities prosper with intelligent coexistence with the semi-arid region. You proved that the hinterland is not a problem â it's a solution. The Caatinga, a Brazilian exclusive, shines with all its richness!","A cada turno, novas ameaças surgem! Eventos aleatórios e o Conselho Mirim testam suas decisões estratégicas.":"New threats emerge every turn! Random events and the Junior Council test your strategic decisions.","A camada de ozônio protege a vida na Terra dos raios UV nocivos.":"The ozone layer protects life on Earth from harmful UV rays.","A chuva não veio a tempo...":"The rain didn't come in time...","A cidade para.":"The city stops.","A ciência vence a ganância! A área é protegida permanentemente.":"Science triumphs over greed! The area is permanently protected.","A comparação de evolução aparecerá após uma segunda rodada de diagnóstico para os destinos.":"The evolution comparison will appear after a second round of diagnosis for the destinations.","A compostagem transforma restos orgânicos em fertilizante natural.":"Composting transforms organic waste into natural fertilizer.","A comunidade aceita sua mudança de atitude. Juntos, vocês criam um projeto de turismo comunitário que respeita o meio ambiente e valoriza a cultura local.":"The community accepts your change of attitude. Together, you create a community tourism project that respects the environment and values local culture.","A comunidade e voluntários de todo o paÃs salvam a costa!":"The community and volunteers from all over the country save the coast!","A comunidade está preocupada. Todos querem ajudar.":"The community is worried. Everyone wants to help.","A comunidade perde poder. O projeto sobrevive, mas sem protagonismo.":"The community loses power. The project survives, but without prominence.","A comunidade se protegeu com informação! ð¥":"The community protected itself with information! ð¥","A comunidade se une! Juntos, vocês começam a mapear as áreas de risco.":"The community unites! Together, you start mapping risk areas.","A comunidade se uniu e controlou o fogo! ðª":"The community united and controlled the fire! ðª",'A construção do condomÃnio destrói uma nascente milenar. Moradores antigos protestam: "Essa água abastecia todo o vale!" Animais fogem e erosão toma conta da encosta.':`The condominium's construction destroys an ancient spring. Old residents protest: "This water supplied the entire valley!" Animals flee and erosion takes over the hillside.`,"A contratação online ainda não está ativa neste ambiente.":"Online contracting is not yet active in this environment.","A cooperativa é imbatÃvel! Produção orgânica vira referência nacional.":"The cooperative is unbeatable! Organic production becomes a national reference.","A corrupção enfraquece a fiscalização. O progresso é parcial.":"Corruption weakens oversight. Progress is partial.","A costa recua sem proteção.":"The coast recedes without protection.","A costa é tomada pelo concreto. O paraÃso foi perdido para sempre.":"The coast is taken over by concrete. Paradise was lost forever.","A dança animou todo mundo, mas a chuva não veio...":"The dance cheered everyone up, but the rain didn't come...","A data de entrega deve ser posterior à liberação":"The due date must be after the release date","A data de inÃcio deve ser anterior ou igual à data de fim.":"The start date must be earlier than or equal to the end date.","A decisão controversa gera conflito e levanta questões éticas.":"The controversial decision generates conflict and raises ethical questions.","A denúncia formal é um passo importante. As autoridades prometem investigar.":"The formal complaint is an important step. Authorities promise to investigate.","A denúncia resulta em multas e embargo da fazenda. O lobo-guará é tratado e solto. Mas você está desempregado e os fazendeiros te ameaçam.":"The complaint results in fines and embargo of the farm. The maned wolf is treated and released. But you are unemployed and the farmers threaten you.","A denúncia surtiu efeito! Uma operação do IBAMA é realizada e os madeireiros são presos. Mas a floresta ainda precisa se recuperar. A área desmatada é grande e os animais perderam seu habitat.":"The complaint took effect! An IBAMA operation is carried out and the loggers are arrested. But the forest still needs to recover. The deforested area is large and the animals have lost their habitat.","A desertificação avançou. O que era caatinga virou deserto. FamÃlias migraram e a biodiversidade foi perdida para sempre.":"Desertification advanced. What was ca
157atinga turned into desert. Families migrated and biodiversity was lost forever.","A destruição de habitats é a principal ameaça à biodiversidade.":"Habitat destruction is the main threat to biodiversity.","A documentação gera um livro sobre plantas medicinais do cerrado. Universidades se interessam e a comunidade ganha reconhecimento.":"The documentation generates a book on medicinal plants of the cerrado. Universities show interest and the community gains recognition.","A doença se espalhou muito! Grave! ð":"The disease spread a lot! Serious! ð","A energia hidrelétrica representa mais de 60% da matriz elétrica brasileira.":"Hydroelectric energy represents more than 60% of the Brazilian electricity matrix.","A escola atrai pessoas de todo o Nordeste!":"The school attracts people from all over the Northeast!","A escola precisa de uma melhoria. Qual prioridade?":"The school needs improvement. What's the priority?","A escola se torna referência nacional. Pesquisadores e estudantes aprendem a conviver com o semiárido.":"The school becomes a national reference. Researchers and students learn to live with the semi-arid region.","A especulação imobiliária avança. Mais floresta é derrubada para construção.":"Real estate speculation advances. More forest is cut down for construction.","A espessura das linhas é proporcional ao volume de indicadores.":"Line thickness is proportional to the number of indicators.","A falta de árvores causou uma enchente! Construções foram destruÃdas!":"The lack of trees caused a flood! Buildings were destroyed!","A fase e suas tarefas foram remov
157idas":"The phase and its tasks have been removed","A fiscalização funciona. O resort se adapta ou fecha.":"Oversight works. The resort adapts or closes.","A fiscalização reduz o uso ilegal de agrotóxicos. As águas melhoram e agricultores buscam alternativas orgânicas.":"Oversight reduces the illegal use of pesticides. Waters improve and farmers seek organic alternatives.","A fiscalização é intensificada. As águas ficam mais limpas.":"Oversight is intensified. The waters become cleaner.","A fonte oficial não respondeu no momento da coleta. Reaproveitamos o último dado oficial validado deste mesmo municÃpio.":"The official source did not respond at the time of collection. We reused the last validated official data from this same municipality.","A força da comunidade está na união.":"The strength of the community lies in unity.","A fuga salva você, mas o cerrado perde um defensor.":"Fleeing saves you, but the cerrado loses a defender.","A fúria da natureza.":"The fury of nature.","A ganância derruba a floresta.":"Greed fells the forest.","A ganância destruiu a serra. Um deslizamento de terra causado pelo desmatamento soterrou construções e nascentes. A serra, que levou milhões de anos para se formar, foi destruÃda em meses pela ambição humana. As águas que alimentavam cidades inteiras secaram para sempre.":"Greed destroyed the mountain range. A landslide caused by deforestation buried constructions and springs. The mountain range, which took millions of years to form, was destroyed in months by human ambition. The waters that fed entire cities dried up forever.","A ganância destruiu tudo. Você se tornou parte do problema.":"Greed destroyed everything. You became part of the problem.","A ganância pela lenha e pelo carvão destruiu a caatinga completamente. O sertão virou deserto de verdade â sem vida, sem água, sem esperança. FamÃlias inteiras foram forçadas a migrar, abandonando terras que habitavam há séculos. A caatinga, bioma exclusivo do Brasil, desapareceu por causa da sua ambição.":"Greed for firewood and charcoal completely destroyed the caatinga. The sertão truly became a desert â without life, without water, without hope. Entire families were forced to migrate, abandoning lands they had inhabited for centuries. The caatinga, a unique Brazilian biome, disappeared because of your ambition.","A geração continua no servidor. Se ficar mais de 8 minutos sem avançar, o sistema marcará falha automaticamente para você tentar novamente sem duplicar jobs.":"Generation continues on the server. If no progress is made for more than 8 minutes, the system will automatically mark it as failed so you can try again without duplicating jobs.","A geração não depende de um único modelo. O orquestrador tenta os provedores na ordem":"Generation does not depend on a single model. The orchestrator tries providers in order","A geração usa três provedores em ordem de prioridade: (1) Claude Sonnet 5.5 (Anthropic) como padrão, escolhido pela qualidade narrativa e respeito rigoroso a fontes; (2) GPT-5 (OpenAI) como fallback primário; (3) Gemini 2.5 Pro (Google) como fallback final. Se o provider escolhido falhar (timeout, abort, conteúdo vazio mid-stream), o pipeline cai automaticamente para o próximo, mantendo o mesmo prompt e os mesmos dados auditados. Administradores podem ver o modelo usado em cada relatório do histórico através do badge ao lado do tÃtulo.":"The generation uses three providers in order of priority: (1) Claude Sonnet 5.5 (Anthropic) as standard, chosen for narrative quality and strict adherence to sources; (2) GPT-5 (OpenAI) as primary fallback; (3) Gemini 2.5 Pro (Google) as final fallback. If the chosen provider fails (timeout, abort, empty mid-stream content), the pipeline automatically falls back to the next, maintaining the same prompt and audited data. Administrators can see the model used in each history report via the badge next to the title.","A honestidade tardia salva parte da reputação, mas o dano foi grande.":"Late honesty saves part of the reputation, but the damage was great.","A humildade conquista respeito. A comunidade te dá uma segunda chance.":"Humility earns respect. The community gives you a second chance.","A inteligência SISTUR analisa indicadores vinculados, fases e tarefas existentes para sugerir novas tarefas acionáveis.":"SISTUR intelligence analyzes linked indicators, existing phases and tasks to suggest new actionable tasks.","A interpretação territorial classifica os problemas identificados em três categorias: Estrutural (limitações históricas/socioeconômicas), Gestão (falhas de planejamento/coordenação) ou Entrega (falhas na execução de serviços).":"Territorial interpretation classifies identified problems into three categories: Structural (historical/socioeconomic limitations), Management (planning/coordination failures), or Delivery (service execution failures).","A invalidade de qualquer cláusula não afetará a validade das demais disposições destes Termos.":"The invalidity of any clause shall not affect the validity of the remaining provisions of these Terms.","A isenção é aplicada automaticamente na próxima cobrança.":"The exemption is applied automatically on the next billing.","A justificativa da prescrição é gerada por regra (não por LLM) para garantir rastreabilidade e auditabilidade.":"The prescription justification is generated by rule (not by LLM) to ensure traceability and auditability.","A justiça prevalece! O hotel é multado e todos cumprem a lei.":"Justice prevails! The hotel is fined and everyone complies with the law.","A lagoa está ficando poluÃda! Peixes morrendo!":"The lagoon is getting polluted! Fish are dying!","A lei obriga ação. Progresso real, mas demorado.":"The law mandates action. Real, but slow progress.","A lentidão permite que o dano continue se acumulando.":"The slowness allows the damage to continue accumulating.","A linhagem dos dados ficará disponÃvel assim que houver indicadores preenchidos neste diagnóstico.":"Data lineage will be available once indicators have been filled in for this assessment.","A lista mostra todos os diagnósticos da sua organização.":"The list shows all diagnoses for your organization.",'A marca "Sabores do Cerrado" é um sucesso. Mas intermediários querem comprar a produção por preços baixos e vender caro, tirando o lucro da comunidade.':'The "Sabores do Cerrado" brand is a success. But intermediaries want to buy production at low prices and sell it expensively, taking profit from the community.',"A marca SISTUR, logotipos, Ãcones e demais sinais distintivos são de uso exclusivo do Titular e não podem ser utilizados sem autorização prévia e por escrito.":"The SISTUR brand, logos, icons, and other distinctive signs are for the exclusive use of the Owner and may not be used without prior written authorization.","A matrÃcula é gratuita durante o perÃodo de tri
157al.":"Enrollment is free during the trial period.","A mineração destrói o jardim. Espécies únicas são perdidas para sempre.":"Mining destroys the garden. Unique species are lost forever.","A mobilização popular força os hotéis a instalar estações de tratamento. Os recifes começam a se recuperar e os peixes retornam.":"Popular mobilization forces hotels to install treatment plants. Reefs begin to recover and fish return.","A multinacional muda os padrões. Os sertanejos perdem controle.":"The multinational changes the standards. The sertanejos lose control.","A natureza tem suas próprias soluções de limpeza.":"Nature has its own cleaning solutions.","A natureza é poderosa.":"Nature is powerful.","A nota final será calculada após a correção das questões dissertativas.":"The final grade will be calculated after the essay questions are graded.","A oportunidade está agora visÃvel para investidores.":"The opportunity is now visible to investors.","A oportunidade foi bloqueada pelo motor IGMA.":"The opportunity was blocked by the IGMA engine.","A oportunidade passou pela validação IGMA e está pronta para publicação.":"The opportunity passed IGMA validation and is ready for publication.","A palma alimenta o rebanho sem desmatar mais caatinga.":"The palm feeds the herd without deforesting more caatinga.","A partir da v1.28.0, o SISTUR oferece a":"As of v1.28.0, SISTUR offers the","A partir das issues e prescrições, crie planos de ação concretos.":"From issues and prescriptions, create concrete action plans.","A partir de {{n}} usuários. Sem limite máximo â acrescente usuários quando precisar, pagando apenas o valor por usuário adicional.":"Starting from {{n}} users. No maximum limit â add users as needed, paying only the additional per-user fee.","A partir do diagnóstico calculado é possÃvel gerar relatórios (Completo, Executivo, Investidores) com cabeçalho/rodapé personalizáveis, e converter os gargalos em Projetos com tarefas e marcos.":"Based on the calculated diagnosis, it is possible to generate reports (Complete, Executive, Investors) with customizable header/footer, and convert bottlenecks into Projects with tasks and milestones.","A patrulha comunitária encontra uma área de desmatamento recente. Ãrvores centenárias foram derrubadas e o solo está exposto. Animais estão fugindo da região. Um membro da patrulha encontra rastros de máquinas pesadas.":"The community patrol finds a recent deforestation area. Centennial trees have been felled and the soil is exposed. Animals are fleeing the region. A patrol member finds tracks of heavy machinery.","A paz é preciosa.":"Peace is precious.","A pegada hÃdrica mede o consumo total de água em cadeias produtivas.":"The water footprint measures total water consumption in production chains.","A perda financeira dói, mas a consciência fala mais alto.":"Financial loss hurts, but conscience speaks louder.","A poluição ficou crÃtica! Natureza colapsando!":"Pollution became critical! Nature collapsing!","A praia perdeu muito espaço!":"The beach lost a lot of space!","A praia sem plástico atrai turistas do mundo todo. Golfinhos são vistos perto da costa pela primeira vez em décadas. Mas um derramamento de óleo de um navio ameaça destruir tudo.":"The plastic-free beach attracts tourists from all over the world. Dolphins are seen near the coast for the first time in decades. But an oil spill from a ship threatens to destroy everything.","A pressa é inimiga da perfeição.":"Haste is the enemy of perfection.","A pressão internacional força as autoridades a agirem.":"International pressure forces authorities to act.","A pressão pública obriga os hotéis a investir em tratamento!":"Public pressure forces hotels to invest in treatment!","A primeira RPPN da caatinga! Marco para a conservação do semiárido.":"The first RPPN of the caatinga! A landmark for the conservation of the semi-arid region.","A promoção turÃstica deve ser precedida pela consolidação territorial e institucional.":"Tourism promotion must be preceded by territorial and institutional consolidation.","A promoção turÃstica deve ser precedida pela consolidação territorial e institucional. Resolva primeiro os gargalos de RA e/ou AO.":"Tourism promotion must be preceded by territorial and institutional consolidation. Address RA and/or AO bottlenecks first.","A página que você procura não foi encontrada.":"The page you are looking for was not found.","A reciclagem gera renda e mantém a praia limpa. Solução sustentável!":"Recycling generates income and keeps the beach clean. Sustainable solution!","A rede de escolas forma milhares de pessoas em convivência com o semiárido. O êxodo rural diminui e jovens ficam no sertão.":"The network of schools trains thousands of people in coexistence with the semi-arid region. Rural exodus decreases, and young people stay in the sertão.","A rede de guardiões da serra é modelo para todo o Brasil. Centenas de voluntários monitoram a serra com drones e sensores.":"The network of mountain range guardians is a model for all of Brazil. Hundreds of volunteers monitor the mountain range with drones and sensors.","A rede de viveiros transforma a Amazônia! Restauração ecológica vira negócio.":"The network of nurseries transforms the Amazon! Ecological restoration becomes a business.","A regulamentação salva o turismo, mas a reputação ficou abalada.":"Regulation saves tourism, but the reputation was damaged.","A rendição seló o destino da floresta. Sem luta, não há esperança.":"Surrender sealed the forest's fate. Without a fight, there is no hope.","A resignação é o pior inimigo da natureza.":"Resignation is nature's worst enemy.","A resistência é forte! O garimpo é impedido e a floresta protegida para sempre.":"Resistance is strong! Gold prospecting is prevented and the forest is protected forever.","A restauração da bacia hidrográfica traz água de volta para cidades inteiras. O projeto ganha prêmio internacional.":"Watershed restoration brings water back to entire cities. The project wins an international award.","A sabedoria dos quilombolas sobre o cerrado é ancestral e insubstituÃvel.":"The wisdom of the quilombolas about the cerrado is ancestral and irreplaceable.","A senha deve ter pelo menos 6 caracteres":"Password must be at least 6 characters long","A senha deve ter pelo menos 6 caracteres.":"The password must be at least 6 characters long.","A serra desmorona literalmente. Um deslizamento de terra destrói tudo.":"The mountain literally crumbles. A landslide destroys everything.","A serra pode se recuperar, mas levará décadas. A lição foi dura.":"The mountain range can recover, but it will take decades. The lesson was harsh.","A serra sobrevive, mas com cicatrizes. Algumas áreas foram salvas, outras perdidas. A luta continua.":"The mountain range survives, but with scars. Some areas were saved, others lost. The fight continues.","A serra volta ao equilÃbrio. Ecoturismo responsável prevalece.":"The mountain range returns to balance. Responsible ecotourism prevails.","A situação melhorou em alguns aspectos, mas desafios persistem. A floresta não foi completamente restaurada, mas também não foi destruÃda. à um equilÃbrio delicado que exige vigilância constante.":"The situation has improved in some aspects, but challenges persist. The forest has not been completely restored, but it has also not been destroyed. It is a delicate balance that requires constant vigilance.","A tabela de auditoria do diagnóstico é a":"The diagnostic audit table is the","A tecnologia de filtragem ganha prêmio internacional. Universidades querem parceria. O projeto se expande para todo o litoral nordestino.":"Filtering technology wins international award. Universities want partnership. The project expands to the entire northeastern coast.","A tecnologia protege o santuário dia e noite!":"Technology protects the sanctuary day and night!","A terra é oficialmente titulada! A comunidade quilombola agora tem proteção legal e investe em turismo comunitário e extrativismo sustentável.":"The land is officially titled! The quilombola community now has legal protection and invests in community tourism and sustainable extraction.","A titulação é uma vitória, mas sem ação concreta o cerrado continua ameaçado.":"Titling is a victory, but without concrete action, the cerrado remains threatened.","A tolerância do Titular quanto a qualquer descumprimento não implica renúncia ao direito de exigi-lo posteriormente.":"The Owner's tolerance regarding any non-compliance does not imply a waiver of the right to demand it later.","A transição orgânica conquista fazendeiros e consumidores. Alimentos saudáveis e cerrado preservado. Mas pressão do agronegócio tenta reverter as leis.":"Organic transition wins over farmers and consumers. Healthy food and preserved cerrado. But agribusiness pressure tries to reverse the laws.","A transparência vence! O membro corrupto é removido.":"Transparency wins! The corrupt member is removed.","A universidade transforma o sertão em polo de conhecimento!":"The university transforms the sertão into a knowledge hub!",'A validação humana é obrigatória para garantir legitimidade institucional e evitar questionamentos polÃticos. Nenhum dado automático é "verdade absoluta". O diagnóstico só é calculado após o usuário confirmar ou ajustar cada valor.':'Human validation is mandatory to ensure institutional legitimacy and avoid political questioning. No automatic data is an "absolute truth." The diagnosis is only calculated after the user confirms or adju
157sts each value.','A venda da madeira apreendida criou um precedente perigoso. Agora outros querem "apreender" madeira para vendê-la. A corrupção se espalha e a comunidade perde a fé.':'The sale of seized timber created a dangerous precedent. Now others want to "seize" timber to sell it. Corruption spreads and the community loses faith.',"A vila precisa de transporte. Qual escolher?":"The village needs transport. Which one to choose?","A vila se torna a capital brasileira da tecnologia azul!":"The village becomes Brazil's blue technology capital!","A vila se torna referência em sustentabilidade costeira!":"The village becomes a reference in coastal sustainability!","A voz da floresta ecoa em todo o Brasil! As leis são mantidas.":"The voice of the forest echoes throughout Brazil! Laws are upheld.","A água tóxica mata.":"Toxic water kills.","A área do condomÃnio é restaurada. Mudas nativas são plantadas e a nascente começa a dar sinais de recuperação. A comunidade reconhece sua mudança.":"The condominium area is restored. Native seedlings are planted and the spring begins to show signs of recovery. The community recognizes its change.","A área marinha protegida é um sucesso. Peixes se multiplicam, tartarugas desovam e a pesca artesanal prospera. Mas navios pesqueiros industriais invadem a área à noite.":"The protected marine area is a success. Fish multiply, turtles spawn, and artisanal fishing thrives. But industrial fishing vessels invade the area at night.","A área protegida permite a recuperação dos estoques pesqueiros!":"The protected area allows fish stocks to recover!","A área queima, mas as pessoas são salvas. Será preciso recomeçar.":"The area burns, but people are saved. We will need to start over.",ADEQUADO:TD,"ADMIN: acesso global, bypass de limites de licença.":"ADMIN: global access, license limit bypass.","ADR Médio (R$)":"Average ADR (R$)","ADR R$":"ADR R$","ADR médio (OTAs)":"Average ADR (OTAs)","ADR à taxa de ocupação, ou receita total ÷ quartos disponÃveis. O PMS geralmente calcula automaticamente.":"ADR à occupancy rate, or total revenue ÷ available rooms. The PMS usually calculates automatically.","ANA / Hidroweb (Qualiágua)":"ANA / Hidroweb (Water Quality)","ANA â Agência Nacional de Ãguas e Saneamento":"ANA â National Water and Sanitation Agency","ANA â IQA (Qualidade da Ãgua)":"ANA â WQI (Water Quality Index)","ANA â Ãguas":"ANA â Waters","ANAC (anac_air_connectivity)":"ANAC (anac_air_connectivity)","ANAC â Agência Nacional de Aviação Civil":"ANAC â National Civil Aviation Agency","ANAC â Voos e Passageiros 12m (Auto)":"ANAC â Flights and Passengers 12m (Auto)","ANAC â voos/semana, passageiros 12m e participação internacional do aeroporto do municÃpio":"ANAC â flights/week, passengers 12m, and international participation of the municipality's airport","ANAC, ANATEL, eventos, Mapa do Turismo e contexto socioeconômico do municÃpio":"ANAC, ANATEL, events, Tourism Map, and socioeconomic context of the municipality","ANALYST: leitura e edição de diagnósticos no plano Pro.":"ANALYST: read and edit diagnostics on the Pro plan.","ANATEL â Agência Nacional de Telecomunicações":"ANATEL â National Telecommunications Agency","AO (Ações Operacionais): Analisa marketing, serviços e operação.":"AO (Operational Actions): Analyzes marketing, services, and operations.","AO - Ação Organizada":"AO - Organized Action","AO - Ações Operacionais":"AO - Operational Actions","AO = CRÃTICO":"AO = CRITICAL","AO CrÃtico":"AO Critical","AO CrÃtico bloqueia todo o sistema (sem governança não há execução).":"Critical AO blocks the entire system (without governance there is no execution).","AO crÃtico bloqueia todo o sistema":"AO critical blocks the entire system","AO crÃtico bloqueia todo o sistema. Sem governança, não há capacidade de implementar melhorias.":"Critical AO blocks the entire system. Without governance, there is no capacity to implement improvements.","AO está CrÃtico?":"Is AO Critical?","AO â 2 indicadores":"AO â 2 indicators","AO ⥠70 e 5+ decisões smart":"AO ⥠70 and 5+ smart decisions","AO:":"AO:",API:PD,"API Key":"API Key","API Oficial":"Official API","API Principal":"Main API","API REST":"REST API","API SIDRA / Agregados â População estimada anual (tabela 6579, variável 9324) e PIB municipal a preços correntes (tabela 5938, variáveis 37 PIB total e 39 PIB per capita). Usadas pelo Observatório para enriquecimento socioeconômico automático por municÃpio. DisponÃvel em: servicodados.ibge.gov.br/api/v3/agregados":"API SIDRA / Aggregates â Annual estimated population (table 6579, variable 9324) and municipal GDP at current prices (table 5938, variables 37 total GDP and 39 GDP per capita). Used by the Observatory for automatic socioeconomic enrichment by municipality. Available at: servicodados.ibge.gov.br/api/v3/agregados","API SIDRA â Sistema IBGE de Recuperação Automática (Censo 2010, tabela 3217 â saneamento). DisponÃvel em: apisidra.ibge.gov.br":"API SIDRA â IBGE Automatic Retrieval System (2010 Census, table 3217 â sanitation). Available at: apisidra.ibge.gov.br","API de Agregados â Pesquisas Municipais (Censo 2022, PIB, etc.). DisponÃvel em: servicodados.ibge.gov.br/api/v3/agregados":"Aggregates API â Municipal Surveys (2022 Census, GDP, etc.). Available at: servicodados.ibge.gov.br/api/v3/agregados","API de Pesquisas Municipais â IDH, Gini, Hospedagem, Finanças. DisponÃvel em: servicodados.ibge.gov.br/api/v1/pesquisas":"Municipal Surveys API â HDI, Gini, Accommodation, Finance. Available at: servicodados.ibge.gov.br/api/v1/pesquisas","API oficial":"Official API","API oficial â população estimada (tab. 6579) e PIB municipal (tab. 5938) usados no Observatório":"Official API â estimated population (table 6579) and municipal GDP (table 5938) used in the Observatory","API/Automático ({{v0}})":"API/Automatic ({{v0}})","APPs protegem margens de rios, nascentes, topos de morros e encostas.":"APPs protect riverbanks, springs, hilltops, and slopes.",ATENCAO:RD,ATENÃÃO:"ATTENTION","AVCB (Auto de Vistoria do Corpo de Bombeiros)":"AVCB (Fire Department Inspection Report)","Abaixo de 3: aquisição cara para o retorno.":"Below 3: expensive acquisition for the return.",Abandonados:xD,"Abandonar a área e focar em outros projetos":"Abandon the area and focus on other projects","Abandonar o projeto e ajudar a restaurar a área":"Abandon the project and help restore the area",Abertos:wD,Abr:ID,Abrir:DD,"Abrir Calculadora":"Open Calculator","Abrir Monitor":"Open Monitor","Abrir curso":"Open course","Abrir diagnóstico territorial":"Open territorial assessment","Abrir menu":"Open menu","Abrir menu de navegação":"Open navigation menu","Abrir tour do módulo Enterprise":"Open Enterprise module tour","Abrir trilhas mais radicais para atrair turismo de aventura":"Open more extreme trails to attract adventure tourism","Abrir tudo sem limites":"Open everything without limits","Absorve COâ e produz oxigênio pela fotossÃntese":"Absorbs COâ and produces oxygen through photosynthesis","Abundância Sertaneja":"Sertaneja Abundance","Aceiro e brigada voluntária":"Firebreak and volunteer brigade",Aceita:OD,"Aceita apenas conteúdo claramente profissional":"Accepts only clearly professional content",Aceitar:MD,"Aceitar Recurso":"Accept Resource","Aceitar a fábrica":"Accept the factory","Aceitar a oferta dos intermediários":"Accept the intermediaries' offer","Aceitar a parceria para monitoramento cientÃfico":"Accept the partnership for scientific monitoring","Aceitar a proposta polÃtica que inclui um resort":"Accept the political proposal that includes a resort","Aceitar a situação como irreversÃvel":"Accept the situation as irreversible","Aceitar e Continuar":"Accept and Continue","Aceitar e prosseguir":"Accept and proceed","A
157ceitar oferta de trabalho em fazenda de soja":"Accept job offer on a soy farm","Aceitar que o cerrado está perdido":"Accept that the cerrado is lost","Aceitar significa compartilhar a pontuação por pilar (RA/OE/AO) do último diagnóstico com os demais membros deste consórcio.":"Accepting means sharing the score per pillar (RA/OE/AO) of the last diagnosis with the other members of this consortium.","Aceitar um acordo com os madeireiros para exploração parcial":"Accept an agreement with the loggers for partial exploitation",Aceito:ND,Acertos:zD,Acessar:jD,"Acessar curso":"Access course",Acesse:kD,'Acesse "Certificados" no menu para ver todos os seus certificados emitidos.':'Access "Certificates" in the menu to see all your issued certificates.','Acesse "EDU" no menu lateral para ver todas as trilhas e capacitações disponÃveis.':'Access "EDU" in the side menu to see all available trails and training.','Acesse "Social" no menu lateral para ver os posts da comunidade.':'Access "Social" in the side menu to view community posts.',"Acesse Admin > Licenças para ver todas as licenças do sistema.":"Access Admin > Licenses to view all system licenses.","Acesse Configurações > Aprovações Pendentes para ver novos cadastros.":"Access Settings > Pending Approvals to view new registrations.",'Acesse a página de login e clique em "Criar conta". Preencha seu email e uma senha segura.':'Go to the login page and click "Create account." Fill in your email and a secure password.',"Acesse configurações avançadas para controlar o comportamento da plataforma.":"Access advanced settings to control platform behavior.","Acesse configurações avançadas: modo demo, privacidade do fórum, aprovações pendentes, feedback dos usuários, referências globais e logs de auditoria.":"Access advanced settings: demo mode, forum privacy, pending approvals, user feedback, global references, and audit logs.","Acesse o Hub de Jogos pelo menu lateral para ver todos os jogos disponÃveis.":"Access the Game Hub from the side menu to see all available games.","Acesse o Painel do Professor e veja seu código de referral no topo da página.":"Access the Professor Panel and see your referral code at the top of the page.",'Acesse pela tela inicial usando e-mail e senha cadastrados. Caso tenha esquecido a senha, utilize a opção "Esqueceu a senha?" para receber um link de redefinição. Contas novas passam por aprovação de um administrador antes do primeiro acesso.':'Access from the home screen using your registered email and password. If you have forgotten your password, use the "Forgot password?" option to receive a reset link. New accounts require administrator approval before the first access.',Acessibilidade:_D,"Acessibilidade Urbana":"Urban Accessibility","Acessibilidade Urbana (fontes públicas)":"Urban Accessibility (public sources)","Acessibilidade urbana analisada":"Urban accessibility analyzed",Acesso:qD,"Acesso AnalÃtico requer papel Admin, Analista ou Visualizador.":"Analytical Access requires Admin, Analyst, or Viewer role.","Acesso Aprovado":"Access Approved","Acesso EDU requer papel Estudante ou Professor.":"EDU Access requires Student or Professor role.","Acesso Empresarial":"Enterprise Access","A
157cesso Público":"Public Access","Acesso Solicitado:":"Access Requested:","Acesso Territorial":"Territorial Access","Acesso alterado automaticamente para AnalÃtico":"Access automatically changed to Analytical","Acesso ao sistema de diagnóstico territorial":"Access to the territorial diagnosis system","Acesso atualizado":"Access updated","Acesso atualizado com sucesso":"Access successfully updated","Acesso bloqueado":"Access blocked","Acesso ilimitado":"Unlimited Access","Acesso ilimitado concedido":"Unlimited access granted","Acesso ilimitado revogado":"Unlimited access revoked","Acesso para Cadeirante":"Wheelchair Access","Acesso por Organização":"Access by Organization","Acesso por Usuário":"Access by User","Acesso público liberado":"Public access released","Acesso restrito a administradores da organização.":"Access restricted to organization administrators.","Acesso restrito a administradores.":"Access restricted to administrators.","Acesso à plataforma de capacitação":"Access to the training platform","Acesso à trilha formativa do SISTUR EDU.":"Access to the SISTUR EDU training track.","Acesso à s trilhas e cursos":"Access to trails and courses",Acessos:LD,"Acessos Habilitados":"Accesses Enabled","Acidentes de Trabalho":"Workplace Accidents",Acompanhamento:UD,"Acompanhamento cancelado. A geração continua no servidor â confira o histórico em alguns minutos.":"Tracking canceled. Generation continues on the server â check the history in a few minutes.","Acompanhamento da Atividade":"Activity Tracking","Acompanhamento de Alunos":"Student Monitoring","Acompanhamento de planos de ação e scores por ciclo de diagnóstico":"Tracking action plans and scores by assessment cycle","Acompanhamento de progresso e indicadores":"Progress and indicator tracking","Acompanhamento de um especialista em turismo para interpretar diagnósticos, desenhar planos de ação e acelerar resultados do destino ou do empreendimento.":"Mentoring by a tourism specialist to interpret diagnostics, design action plans, and accelerate results for the destination or enterprise.","Acompanhamento dos projetos derivados de diagnósticos":"Tracking projects derived from assessments",Acompanhar:BD,"Acompanhar o painel unificado de gestão (admin/professor) para detectar inatividade.":"Monitor the unified management panel (admin/professor) to detect inactivity.","Acompanhe a evolução dos pilares ao longo dos ciclos de diagnóstico":"Track pillar progress across assessment cycles","Acompanhe a evolução, estagnação e regressão de indicadores entre ciclos":"Track the evolution, stagnation, and regression of indicators between cycles","Acompanhe as perguntas usadas por pessoa, conceda créditos promocionais para um usuário ou para toda a organização e libere acesso ilimitado por um perÃodo ou por tempo indeterminado.":"Track questions used per person, grant promotional credits to a user or to the entire organization, and release unlimited access for a period or indefinitely.","Acompanhe o progresso na aba de Planos de Ação do Dashboard.":"Track progress in the Dashboard's Action Plans tab.","Acompanhe seu progresso de aprendizado":"Track your learning progress","Acoplamento com outros módulos ({{v0}})":"Coupling with other modules ({{v0}})","Acumulou 10 horas de estudo":"Accumulated 10 hours of study",Adaptativa:FD,Adaptativas:GD,"Adaptação da metodologia Mario Beni para o setor privado de hospitalidade":"Adaptation of the Mario Beni methodology for the private hospitality sector","Adaptação da metodologia para o setor privado de hospitalidade com 22 indicadores especializados, sendo 6 compartilhados com diagnósticos territoriais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais).":"Methodology adaptation for the private hospitality sector with 22 specialized indicators, 6 of which are shared with territorial diagnostics (NPS, Online Reviews, Training Hours, % Local Employees, % Local Purchases, and Environmental Certifications).","Adaptação da metodologia para o setor privado de hospital
157idade.":"Methodology adaptation for the private hospitality sector.",Adequado:VD,"Adequado (verde): score ⥠0.67, indica bom desempenho. Atenção (amarelo): score entre 0.34 e 0.66, requer monitoramento. CrÃtico (vermelho): score ⤠0.33, requer ação imediata e pode ativar bloqueios IGMA.":"Adequate (green): score ⥠0.67, indicates good performance. Attention (yellow): score between 0.34 and 0.66, requires monitoring. Critical (red): score ⤠0.33, requires immediate action and may activate IGMA blocks.","Adequado ⥠67% · Atenção 34â66% · CrÃtico ⤠33%. Calculado pelo sistema, não editável.":"Adequate ⥠67% · Attention 34â66% · Critical ⤠33%. Calculated by the system, not editable.","Adequado:":"Suitable:","Adequado: pontuação ⥠67% â manter monitoramento.":"Adequate: score ⥠67% â maintain monitoring.","Adiciona indicadores de profundidade intermediária. Recomendado para cidades médias ou diagnósticos de acompanhamento.":"Adds intermediate depth indicators. Recommended for medium-sized cities or follow-up diagnostics.","Adicionado como bloco final antes do rodapé.":"Added as the final block before the footer.","Adicionado em":"Added on",Adicionar:$D,"Adicionar Documento de Referência":"Add Reference Document","Adicionar Material":"Add Material","Adicionar Módulo":"Add Module","Adicionar Novo Membro":"Add New Member","Adicionar Novo Usuário":"Add New User","Adicionar Tarefa":"Add Task","Adicionar Usuário":"Add User","Adicionar Usuário à Organização":"Add User to Organization","Adicionar canal":"Add channel","Adicionar concorrente manualmente":"Add competitor manually","Adicionar contexto":"Add context","Adicionar critério":"Add criterion","Adicionar créditos":"Add credits","Adicionar dados":"Add data","Adicionar destino":"Add destination","Adicionar documento":"Add document","Adicionar etapa":"Add stage","Adicionar imagens (até {{v0}})":"Add images (up to {{v0}})","Adicionar item customizadoâ¦":"Add custom itemâ¦","Adicionar mais dados?":"Add more data?","Adicionar membro":"Add member","Adicionar nova regra":"Add new rule","Adicionar referência":"Add reference","Adicionar seção":"Add section","Adicionar unidade":"Add unit","Adicionar unidade (municÃpio)":"Add unit (municipality)","Adicione PDFs, planilhas, apresentações e outros documentos de suporte":"Add PDFs, spreadsheets, presentations, and other supporting documents","Adicione alunos referenciados à s suas salas.":"Add referenced students to your rooms.","Adicione documentos como o Plano Nacional de Turismo para enriquecer relatórios":"Add documents like the National Tourism Plan to enrich reports","Adicione e gerencie os usuários da sua organização":"Add and manage your organization's users","Adicione notas internas sobre este feedback...":"Add internal notes about this feedback...","Adicione pelo menos uma unidade para prosseguir.":"Add at least one unit to proceed.","Adicione tags relevantes (ex: sustentabilidade, governança).":"Add relevant tags (e.g., sustainability, governance).","Adicione tÃtulo, descrição, pilar e URL do vÃdeo.":"Add title, description, pillar, and video URL.","Adicione um municÃpio por unidade do empreendimento. O diagnóstico será":"Add one municipality per enterprise unit. The diagnostic will be","Adicione um novo marco ao projeto":"Add a new milestone to the project","Adicione um novo módulo ao curso":"Add a new module to the course","Adicione uma descrição dos objetivos.":"Add a description of the objectives.","Adicione uma descrição opcional.":"Add an optional description.","Adicione uma nova carta ao seu deck como recompensa.":"Add a new card to your deck as a reward.","Adicione uma nova fase ao projeto":"Add a new phase to the project","Adicione uma nova tarefa ao projeto":"Add a new task to the project",Admin:HD,"Admin EDU":"EDU Admin","Admin Org":"Org Admin",'Admin aprova â move para org "Autônomo" ou org própria':'Admin approves â moves to "Autonomous" org or own org',"Admin: acesso total. Analista: diagnósticos. Visualizador: apenas leitura.":"Admin: full access. Analyst: diagnoses. Viewer: read-only.",Administrador:WD,"Administrador (plataforma)":"Administrator (platform)","Administrador da organização":"Organization administrator",'Administradores têm acesso ao painel "Logs do Gerador de Relatórios" em /admin/report-logs (botão na página de Logs de Auditoria). Mostra eventos e erros da edge function generate-report agrupados por provider (Claude / GPT-5 / Gemini), com filtros por nÃvel, busca livre, dialog de detalhes (metadata + duração + job/report id) e auto-refresh a cada 15s. Quando o filtro é Claude (default) ou Todos, aparece também um bloco "Pipeline Claude â Tempo Real" que agrupa eventos por trace_id e mapeia para 4 fases visÃveis: Pilares (RA·OE·AO), Envelope, Validação e Persistência â útil para detectar stalls de stream.':'Administrators have access to the "Report Generator Logs" panel at /admin/report-logs (button on the Audit Logs page). It shows events and errors from the generate-report edge function grouped by provider (Claude / GPT-5 / Gemini), with filters by level, free search, details dialog (metadata + duration + job/report id) and auto-refresh every 15s. When the filter is Claude (default) or All, a "Claude Pipeline â Real-time" block also appears, which groups events by trace_id and maps them to 4 visible phases: Pillars (RA·OE·AO), Envelope, Validation, and Persistence â useful for detecting stream stalls.',"Administradores têm uso ilimitado. Em falha da IA, o token consumido é estornado automaticamente.":"Administrators have unlimited usage. In case of AI failure, consumed tokens are automatically refunded.",Administração:"Administration","Administração EDU":"EDU Administration","Administre o catálogo de treinamentos, gerencie questões do banco de provas, configure regras de exames e revise conteúdo importado.":"Administer the training catalog, manage test bank questions, configure exam rules, and review imported content.","Administre todo o conteúdo educacional da plataforma: treinamentos, banco de questões, regras de exames e conteúdo importado.":"Manage all educational content on the platform: trainings, question bank, exam rules, and imported content.","Admins têm acesso total à plataforma.":"Admins have full access to the platform.","Adotar online":"Adopt online",Aeroporto:QD,"Aeroportos (ICAO)":"Airports (ICAO)","Agenda global da ONU com 17 objetivos":"UN global agenda with 17 objectives","Agente IA validador":"AI validation agent",Ago:KD,"Agora você pode calcular o diagnóstico. O sistema irá:":"Now you can calculate the diagnostic. The system will:",Agrotóxico:"Pesticide","Agrupe municÃpios em um consórcio ou região turÃstica para comparar diagnósticos e coordenar ações regionais. A comparação é privada entre os membros aceitos.":"Group municipalities into a consortium or tourist region to compare diagnostics and coordinate regional actions. The comparison is private among accepted members.","Aguarda correção":"Awaiting grading",Aguardando:YD,"Aguardando Aprovação":"Awaiting Approval","Aguardando Correção":"Awaiting Grading","Aguardando preenchimento":"Awaiting completion","Aguardando preenchimento de dados":"Awaiting data entry","Aguardando revisão":"Awaiting review","Aguardando segundo ciclo":"Awaiting second cycle","Aguardar aprovação":"Await approval","Aguarde enquanto geramos a estrutura do projeto":"Please wait while we generate the project structure","Agência / Operadora":"Agency / Operator","Agências cadastradas no CADASTUR":"Agencies registered in CADASTUR","Agências de Turismo":"Tourism Agencies","Ainda começando a explorar!":"Just starting to explore!","Ainda disponÃvel":"Still available","Ainda não há destinos com avaliações calculadas e prontos para visitação.":"There are no destinations with calculated evaluations ready for visitation yet.","Ainda não há municÃpios com diagnóstico calculado neste consórcio.":"There are no municipalities with calculated diagnostics in this consortium yet.","Ainda não há nenhum diagnóstico Territorial cadastrado para o municÃpio deste empreendimento.":"No Territorial assessment has been registered for this business's municipality yet.","Ainda não há perguntas neste curso. Seja o primeiro a perguntar!":"There are no questions in this course yet. Be the first to ask!",Ajuda:JD,"Ajuda & Tutorial":"Help & Tutorial","Ajudar a construir cisternas para captar água da chuva":"Help build cisterns to collect rainwater","Ajudar na regularização fundiária":"Help with land regularization","Ajudou um pouco, mas não resolve...":"Helped a little, but doesn't solve it...","Ajustado ao piso":"Adjusted to the floor","Ajustado ao teto":"Adjusted to the ceiling",Ajustar:XD,"Ajustar indicadores":"Adjust indicators","Ajuste a importância relativa de cada pilar e indicador no Score Final do diagnóstico. Mudanças marcam todos os diagnósticos calculados para recálculo.":"Adjust the relative importance of each pillar and indicator in the Final Diagnostic Score. Changes mark all calculated diagnostics for recalculation.","Ajuste a quantidade de usuários, atualize o pagamento e baixe faturas.":"Adjust user quantity, update payment, and download invoices.","Ajuste de Pesos dos Indicadores":"Indicator Weight Adjustment","Ajuste o texto manualmente. A alteração é salva no relatório atual e refletida em exportações (DOCX/PDF/cópia). O histórico de quem editou fica registrado.":"Adjust the text manually. The change is saved in the current report and reflected in exports (DOCX/PDF/copy). The edit history is recorded.","Alarme (antes)":"Alarm (before)","Alcance 300 pontos de vitória mantendo equilÃbrio ⥠50% entre os pilares. O segredo não é força bruta â é estratég
157ia!":"Reach 300 victory points while maintaining balance ⥠50% across the pillars. The secret is not brute force â it is strategy!",'Alcançar o nÃvel "Cidade do Futuro"':'Achieve "City of the Future" level',AlertTriangle:ZD,Alerta:eO,"Alerta confirmado":"Alert confirmed","Alerta de Externalidades Negativas":"Negative Externalities Alert","Alerta de externalidade":"Externality alert","Alerta descartado":"Alert dismissed","Alerta do Observatório":"Observatory Alert","Alerta enviado para":"Alert sent to","Alerta enviado para ":"Alert sent to ","Alerta já enviado":"Alert already sent","Alerta quando OE melhora à s custas de RA":"Alert when OE improves at the expense of RA","Alerta quando OE melhora à s custas de RA (crescimento estrutural degrada o ambiente).":"Alert when OE improves at the expense of RA (structural growth degrades the environment).",Alertas:aO,"Alertas IGMA":"IGMA Alerts","Alertas IGMA Gerados":"IGMA Alerts Generated","Alertas IGMA básicos":"Basic IGMA alerts","Alertas IGMA são criados para padrões que requerem atenção.":"IGMA alerts are created for patterns that require attention.","Alertas Sistêmicos (Mario Beni)":"Systemic Alerts (Mario Beni)","Alertas amarelos são avisos de tendências preocupantes.":"Yellow alerts are warnings of worrying trends.","Alertas de Regressão":"Regression Alerts","Alertas de regressão ({{v0}})":"Regression alerts ({{v0}})","Alertas detectados":"Alerts detected","Alertas persistentes (2+ ciclos) são destacados em vermelho escuro.":"Persistent alerts (2+ cycles) are highlighted in dark red.","Alertas registrados em log auditável.":"Alerts logged in an auditable log.","Alertas vermelhos indicam problemas crÃticos que bloqueiam avanços.":"Red alerts indicate critical problems that block progress.","Alga com propriedades curativas":"Algae with healing properties","Algumas melhorias foram conquistadas, mas os problemas estruturais permanecem. O litoral sobrevive entre a beleza natural e a pressão do desenvolvimento.":"Some improvements have been achieved, but structural problems remain. The coastline survives between natural beauty and development pressure.","Algumas áreas foram protegidas, mas muitas foram perdidas. O cerrado sobrevive em fragmentos, como ilhas verdes num mar de soja.":"Some areas have been protected, but many have been lost. The savanna survives in fragments, like green islands in a sea of soy.","Algumas áreas foram recuperadas, mas a desertificação continua em outras. A luta contra o deserto é diária.":"Some areas have been recovered, but desertification continues in others. The fight against the desert is daily.","Algumas áreas temáticas simplificadas":"Some simplified thematic areas","Alguns campos foram preenchidos automaticamente pela busca de reviews.":"Some fields were automatically filled by review search.","Alguns datasets do CADASTUR não estão acessÃveis no momento. Os dados existentes foram preservados.":"Some CADASTUR datasets are not accessible at the moment. Existing data has been preserved.","Alguns indicadores (saúde, educação, saneamento) dependem de ações coordenadas entre secretarias. O sistema sinaliza quando a melhoria requer articulação intersetorial, não apenas ações isoladas do turismo.":"Some indicators (health, education, sanitation) depend on coordinated actions between departments. The system signals when improvement requires intersectoral articulation, not just isolated tourism actions.","Alguns indicadores dependem de ações de múltiplos setores (saúde, educação, meio ambiente, etc.). O sistema identifica esses indicadores e sinaliza que a melhoria requer articulação intersetorial, não apenas ações isoladas do turismo.":"Some indicators depend on actions from multiple sectors (health, education, environment, etc.). The system identifies these indicators and signals that improvement requires intersectoral articulation, not just isolated tourism actions.","Alguns indicadores já possuem valor neste diagnóstico. Recarregue a página e tente novamente.":"Some indicators already have a value in this diagnosis. Please reload the page and try again.","Alguns
157indicadores não puderam ser pré-preenchidos.":"Some indicators could not be pre-filled.","Alguns indicadores são calculados de forma determinÃstica a partir de variáveis primárias, como Receita TurÃstica per capita, Densidade Hoteleira, Ãndice de Capacidade de Pagamento (CAPAG) e cumprimento de mÃnimos constitucionais de Saúde e Educação.":"Some indicators are deterministically calculated from primary variables, such as Tourism Revenue per capita, Hotel Density, Payment Capacity Index (CAPAG), and compliance with constitutional minimums for Health and Education.","Aliança pela Floresta":"Alliance for the Forest",Alinhado:oO,"Alinhamento com ODS da ONU":"Alignment with UN SDGs",Alta:iO,"Alta (predominantemente alta temporada)":"High (predominantly high season)","Alta 95%, baixa 40%, média 67% â variação â 82%":"High 95%, low 40%, average 67% â variation â 82%","Alterar Papel":"Change Role","Alterar Senha":"Change Password","Alterar pilar":"Change pillar","Alterar status:":"Change status:","Alterar valores pré-preenchidos automaticamente (clique no campo para editar)":"Change pre-filled values automatically (click the field to edit)","Alterações afetam":"Changes affect","Alterações descartadas neste pilar":"Changes discarded in this pillar","Alterações em benchmarks ou pesos NÃO são retroativas. à necessário recalcular manualmente para aplicar novas regras.":"Changes to benchmarks or weights are NOT retroactive. Manual recalculation is required to apply new rules.","Alterações pendentesâ¦":"Pending changesâ¦","Alterações salvas. O próximo relatório usará esta versão.":"Changes saved. The next report will use this version.","Altere o papel de qualquer usuário na lista de usuários.":"Change the role of any user in the user list.",Alternativas:tO,Alternativos:rO,"Alterne entre a visão territorial (destinos) e enterprise (organizações) usando o toggle.":"Toggle between territorial (destinations) and enterprise (organizations) view using the toggle.",Alto:sO,"Alto impacto positivo no pilar":"High positive impact on the pillar",Aluno:nO,"Aluno (opcional)":"Student (optional)","Aluno já está nesta sala":"Student is already in this room","Aluno removido da sala":"Student removed from room",Alunos:cO,"Alunos com XP":"Students with XP","Alunos em risco":"At-risk students","Alunos em risco ({{v0}})":"Students at risk ({{v0}})","Alunos inativos por 30+ dias não contam para a isenção.":"Students inactive for 30+ days do not count towards the exemption.","Alunos indicados ativos":"Active indicated students","Alunos já cadastrados podem adicionar o código no perfil.":"Already registered students can add the code in their profile.","Alunos no total":"Total students","Alunos podem inserir o código durante o onboarding.":"Students can enter the code during onboarding.","Alunos podem refazer o exame se reprovados":"Students can retake the exam if failed","Alunos podem ser removidos da sala a qualquer momento.":"Students can be removed from the room at any time.","Alunos que usam seu código são vinculados automaticamente a você.":"Students who use your code are automatically linked to you.","Alvará Sanitário (Vigilância Sanit
157ária)":"Sanitary Permit (Health Surveillance)","Alvará de Funcionamento Municipal":"Municipal Operating Permit","Alvo: ⥠30%":"Target: ⥠30%",Amazônia:"Amazon","Ambas as partes comprometem-se a manter em sigilo as informações confidenciais a que tenham acesso em razão do uso da Plataforma.":"Both parties commit to keeping confidential the information they access due to using the Platform.",Ambiente:dO,"Ambiente de Demonstração":"Demo Environment","Ambiente de capacitação com trilhas, cursos, exames e certificações. As prescrições de aprendizado são geradas automaticamente a partir dos resultados do diagnóstico (gatilho em Atenção/CrÃtico).":"Training environment with learning paths, courses, exams, and certifications. Learning prescriptions are automatically generated from diagnostic results (triggered when in Attention/Critical status).","Ambiente de teste: nenhum pagamento real é processado.":"Test environment: no real payment is processed.","Ambiente degradado â Não promover destino":"Degraded environment â Do not promote destination",Ambos:lO,"Ambos ({{v0}})":"Both ({{v0}})","Ameaças & Eventos":"Threats & Events","Ameaças causam dano real aos seus pilares â não ignore!":"Threats deal real damage to your pillars â do not ignore them!","Ameaças enfrentadas:":"Threats faced:","Amenities Sustentáveis":"Sustainable Amenities","Amostra de manejo sustentável":"Sustainable management sample",Amostras:uO,"Amostras de notÃcias":"News samples","Ampla experiência e liderança":"Extensive experience and leadership","Ampliar leitos":"Increase bed capacity","Ampliar rede de contatos":"Expand my network",Amplitude:mO,"Analisando projeto...":"Analyzing project...","Analisar Acessibilidade Urbana":"Analyze Urban Accessibility","Analisar Conectividade Aérea":"Analyze Air Connectivity","Analisar Conectividade Telecom":"Analyze Telecom Connectivity","Analisar Conforto Climático":"Analyze Climatic Comfort","Analisar Demanda & Tendências":"Analyze Demand & Trends","Analisar Eventos & Sazonalidade":"Analyze Events & Seasonality","Analisar Força da Marca":"Analyze Brand Strength","Analisar Infraestrutura de Saúde":"Analyze Health Infrastructure","Analisar Posicionamento de Preço":"Analyze Price Positioning","Analisar Presença Digital":"Analyze Digital Presence","Analisar Presença em Redes Sociais":"Analyze Social Media Presence","Analisar Segurança TurÃstica":"Analyze Tourist Safety","Analisar Sustentabilidade & Acessibilidade":"Analyze Sustainability & Accessibility","Analisar Transporte Intra-Destino":"Analyze Intra-Destination Transport",Analista:pO,"Analistas e técnicos de órgãos públicos":"Analysts and technicians from public bodies","Analistas podem criar diagnósticos e planos de ação.":"Analysts can create diagnoses and action plans.",Analytics:gO,"Analytics por Turma":"Analytics by Class",AnalÃtico:"Analytical","AnalÃtico (Completo)":"Analytical (Complete)","AnalÃtico - Sistema Territorial":"Analytical - Territorial System","AnalÃtico territorial":"Territorial analytic","AnalÃtico â Gestão Territorial":"Analytics â Territorial Management","AnalÃtico: Crie destinos, faça diagnósticos e gere relatórios.":"Analytics: Create destinations, conduct diagnoses, and generate reports.","Anatel (anatel_coverage_cache)":"Anatel (anatel_coverage_cache)","Anatel â cobertura 4G, 5G e Wi-Fi público do municÃpio (afeta PMS cloud, OTA mobile e check-in digital)":"Anatel â 4G, 5G, and public Wi-Fi coverage in the municipality (affects PMS cloud, OTA mobile, and digital check-in)","Anexar PDF":"Attach PDF","Anexar arquivo (até 10 MB)":"Attach file (up to 10 MB)",Ano:hO,"Ano Mais Recente":"Most Recent Year","Ano de referência":"Reference year","Ano de referência do dado":"Data reference year","Ano-referência mais recente":"Most recent reference year","Anos de Operação":"Years of Operation","Anos de relacionamento":"Years of relationship","Anotação excluÃda":"Annotation deleted","Anotação salva!":"Annotation saved!",Anterior:fO,"Antes de salvar o relatório, o sistema executou três camadas de checagem cruzando o texto gerado com fontes de verdade independentes:":"Before saving the report, the system performed three layers of checking by cross-referencing the generated text with independent, truthful sources:","Antes do cálculo, o sistema apresenta uma tela de confirmação com valores destacados (outliers, ausências e mudanças expressivas em relação à rodada anterior).":"Before calculation, the system presents a confirmation screen with highlighted values (outliers, missing data, and significant changes compared to the previous round).","Antes do trial expirar, acesse a página de Planos para continuar usando o SISTUR.":"Before the trial expires, access the Plans page to continue using SISTUR.",Anual:vO,"Análise 360° do destino":"360° destination analysis","Análise Estrutural":"Structural Analysis","Análise Estrutural do Turismo":"Structural Analysis of Tourism","Análise Estrutural do Turismo. São Paulo: E
157ditora Senac São Paulo, 2001.":"Structural Analysis of Tourism. São Paulo: Editora Senac São Paulo, 2001.","Análise Regional / Consórcios":"Regional Analysis / Consortia","Análise de Sentimento":"Sentiment Analysis","Análise de tendências":"Trend analysis","Análise de tendências por indicador":"Trend analysis by indicator","Análise dos pilares RA, OE e AO pela metodologia Mario Beni":"Analysis of the RA, OE and AO pillars using the Mario Beni methodology","Análise intersetorial completa":"Complete intersectoral analysis","Análise mais abrangente com todos os indicadores. Ideal para capitais, polos turÃsticos ou planejamento estratégico.":"More comprehensive analysis with all indicators. Ideal for capitals, tourist hubs, or strategic planning.","Análise menos granular por tema":"Less granular analysis by topic","Anônimo:":"Anonymous:",Anúncio:"Announcement","Anúncio publicado":"Announcement published","Anúncio removido":"Announcement removed","Anúncios da Turma":"Class Announcements","Ao aceitar, o resumo do diagnóstico (pontuação por pilar RA/OE/AO) do seu municÃpio passa a ser visÃvel para os demais membros aceitos deste consórcio. Não há ranking público â a comparação é restrita ao grupo.":"Upon accepting, your municipality's diagnosis summary (score per pillar RA/OE/AO) becomes visible to the other accepted members of this consortium. There is no public ranking â the comparison is restricted to the group.","Ao cancelar o trial, você perderá o acesso imediatamente.":"By canceling the trial, you will lose access immediately.",'Ao clicar em "Aceitar e Continuar", o Usuário declara que leu, compreendeu e concorda integralmente com todos os termos acima.':'By clicking "Accept and Continue", the User declares to have read, understood, and fully agreed to all the terms above.',"Ao completar trilhas e provas, você recebe certificados digitais verificáveis com QR Code, reconhecendo sua capacitação.":"Upon completing learning paths and assessments, you receive verifiable digital certificates with QR Code, acknowledging your qualification.","Ao completar trilhas e provas, você recebe certificados digitais verificáveis com QR Code. Acesse-os na página de Certificados.":"Upon completing trails and tests, you receive verifiable digital certificates with QR Code. Acce
157ss them on the Certificates page.","Ao derrotar ameaças ou fazer boas escolhas, você ganha recompensas: cartas raras, moedas extras e pontos de vitória!":"By defeating threats or making good choices, you earn rewards: rare cards, extra coins and victory points!","Ao encontrar um enigma, responda corretamente para ganhar pontos bônus! Errar não tira vida, mas você perde a recompensa.":"When you encounter a riddle, answer correctly to earn bonus points! A wrong answer does not cost health, but you lose the reward.","Ao final, receba um relatório educacional com o que aprendeu.":"Finally, receive an educational report with what you've learned.","Apart-Hotel":"Apart-Hotel",Aparência:"Appearance","Apelido / nome da propriedade":"Nickname / Property name","Apenas administradores podem alterar o modelo.":"Only administrators can change the template.","Apenas administradores podem editar essas configurações.":"Only administrators can edit these settings.","Apenas arquivos PDF são aceitos.":"Only PDF files are accepted.","Apenas celebrar e seguir em frente":"Just celebrate and move forward","Apenas conteúdo diretamente relacionado a turismo":"Only content directly related to tourism","Apenas conteúdo explÃcito é bloqueado":"Only explicit content is blocked",'Apenas diagnósticos com status "calculado" podem gerar relatórios.':'Only diagnoses with "calculated" status can generate reports.',"Apenas enterprise":"Enterprise only","Apenas membros da organização":"Organization members only","Apenas membros da organização do curso têm acesso":"Only members of the course organization have access","Apenas para mim (Pessoal)":"Just for me (Personal)","Apenas territorial":"Territorial only","Apesar dos esforços, as concessões feitas permitiram que a degradação continuasse. A floresta encolheu, espécies foram perdidas e a comunidade enfrenta as consequências das mudanças climáticas locais. Ainda há esperança, mas o caminho será muito mais longo e difÃcil.":"Despite efforts, concessions allowed degradation to continue. The forest shrank, species were lost, and the community faces the consequences of local climate change. There is still hope, but the path will be much longer and harder.","Aplica a todos os alunos da atividade. Atual: {{v0}}":"Applies to all students in the activity. Current: {{v0}}","Aplica-se a":"Applies to",Aplicar:bO,"Aplicar a todos":"Apply to all","Aplicar ao diagnóstico":"Apply to diagnosis","Aplicar em projeto especÃfico":"Apply to a specific project","Aplicação IGMA":"IGMA Application","Aplique pesquisa NPS: (% Promotores - % Detratores). Use formulários pós-estadia ou plataformas como Medallia, Revinate.":"Apply NPS survey: (% Promoters - % Detractors). Use post-stay forms or platforms like Medallia, Revinate.","Aplique pesquisa de satisfação com turistas (escala 0-10) ou use dados do Observatório de Turismo local.":"Apply a tourist satisfaction survey (0-10 scale) or use data from the local Tourism Observatory.","Apoiar transição para agricultura orgânica":"Support transition to organic farming","Apostar apenas na vigilância voluntária sem proteção legal":"Relying solely on voluntary surveillance without legal protection","App Key (x-app-key)":"App Key (x-app-key)",Apps:AO,"Apps, transporte público, transfer e alternativos disponÃveis no destino":"Apps, public transport, transfers, and alternative options available at the destination","Aprenda a usar cada funcionalidade da plataforma":"Learn how to use each platform feature","Aprenda a usar o SISTUR":"Learn how to use SISTUR","Aprenda a usar o SISTUR passo a passo":"Learn how to use SISTUR step by step","Aprenda a usar todas as funcionalidades da plataforma":"Learn how to use all platform features","Aprenda jogando! O SISTUR oferece 4 jogos educacionais: TCG (cartas), RPG (narrativa), Memória e Caça ao Tesouro. Todos ensinam conceitos de turismo sustentável de forma divertida.":"Learn by playing! SISTUR offers 4 educational games: TCG (cards), RPG (narrative), Memory, and Treasure Hunt. All teach sustainable tourism concepts in a fun way.","Aprenda sobre os pilares RA, OE e AO jogando.":"Learn about the RA, OE, and AO pillars by playing.","Aprenda sobre sustentabilidade e gestão territorial de forma divertida":"Learn about sustainability and territorial management in a fun way","Aprenda sobre turismo sustentável através de cursos e trilhas de capacitação.":"Learn about sustainable tourism through courses and training paths.","Aprenda sobre turismo sustentável através de trilhas e capacitações":"Learn about sustainable tourism through trails and training",Aprender:yO,"Aprova a entrega":"Ap
157proves delivery",Aprovado:SO,Aprovador:EO,Aprovados:CO,Aprovar:TO,"Aprovar novos usuários":"Approve new users",Aprovação:"Approval",Aprovações:"Approvals","Aprovações Pendentes":"Pending Approvals","Aprovações pendentes aparecem como notificação no menu.":"Pending approvals appear as a notification in the menu.","Aprove em uma prova":"Approve in a test","Aprove novos usuários, altere papéis (Admin, Analista, Viewer, Estudante, Professor), gerencie organizações e exporte dados de usuários.":"Approve new users, change roles (Admin, Analyst, Viewer, Student, Professor), manage organizations, and export user data.","Aproveitar o turismo e abrir um bar na praia":"Take advantage of tourism and open a beach bar",'Após a validação, os dados são "congelados" em um snapshot (diagnosis_data_snapshots) que preserva exatamente os valores usados em cada diagnóstico. O histórico nunca é sobrescrito, garantindo rastreabilidade completa.':'After validation, data is "frozen" into a snapshot (diagnosis_data_snapshots) that preserves the exact values used in each diagnosis. The history is never overwritten, ensuring complete traceability.',"Após aprovado, você terá acesso completo ao sistema.":"Once approved, you will have full access to the system.","Após completar o onboarding, um administrador precisa aprovar seu acesso.":"After completing onboarding, an administrator needs to approve your access.","Após completar, marque como concluÃdo para avançar.":"After completing, mark as done to proceed.","Após criar a conta, verifique seu email para ativar o acesso.":"After creating your account, check your email to activate access.","Após criar sua conta, o primeiro passo é configurar seu perfil. O SISTUR usa seu perfil para personalizar a experiência e definir quais módulos você pode acessar.":"After creating your account, the first step is to set up your profile. SISTUR uses your profile to personalize the experience and define which modules you can access.","Após login, o sistema valida sessão, perfil, papéis e licença antes de permitir acesso à s páginas. Se ficar travado por mais de ~10 segundos, tente: (1) Hard refresh (Ctrl+Shift+R no Windows/Linux ou Cmd+Shift+R no macOS) para forçar recarregamento sem cache; (2) Limpar cookies/cache do domÃnio sistur.app e fazer login novamente; (3) Verificar sua conexão com a internet (relatórios e diagnósticos exigem chamadas ao backend). A v1.38.67 corrigiu um caso especÃfico em que o estado de sessão deslogada não inicializava corretamente, prendendo os route guards no spinner. Se o problema persistir após o refresh, contate o suporte informando a rota e o horário.":"After login, the system validates session, profile, roles, and license before allowing access to pages. If you get stuck for more than ~10 seconds, try: (1) Hard refresh (Ctrl+Shift+R on Windows/Linux or Cmd+Shift+R on macOS) to force reload without cache; (2) Clear cookies/cache for the sistur.app domain and log in again; (3) Check your internet connection (reports and diagnostics require backend calls). v1.38.67 fixed a specific case where the logged-out session state did not initialize correctly, trapping route guards in the spinner. If the problem persists after refresh, contact support providing the route and time.",'Após matricular, a trilha aparece em "Minhas Trilhas".':'After enrolling, the trail appears in "My Trails".',"Após o cadastro, você passa pelo onboarding onde escolhe seu tipo de acesso (AnalÃtico ou EDU) e seu papel. Seu perfil é aprovado pela equipe administrativa antes de ter acesso completo.":"After registration, you go through onboarding where you choose your access type (Analytical or EDU) and your role. Your profile is approved by the administrative team before gaining full access.","Após o encerramento, o Titular manterá os dados conforme a cláusula 4.4 e o Usuário perderá acesso imediato à Plataforma.":"After termination, the Holder will retain the data in accordance with clause 4.4, and the User will lose immediate access to the Platform.",'Após preencher os indicadores, clique em "Calcular" para processar o diagnóstico.':'After filling in the indicators, click "Calculate" to process the diagnosis.',"Após vinculação, o professor pode adicioná-lo a turmas (salas).":"After linking, the professor can add you to classes (rooms).",Araucária:"Araucaria",Arial:PO,Armadilhas:RO,Armazenamento:xO,"Arquitetura, Motor IGMA, fluxos, modelo de dados e propriedade intelectual":"Architecture, IGMA Engine, flows, data model, and intellectual property",Arquivada:wO,Arquivado:IO,Arquivar:DO,Arquivo:OO,"Arquivo acima de 10 MB":"File larger than 10 MB","Arquivo do relatório":"Report file","Arquivo muito grande":"File too large","Arquivo muito grande. Máximo 10MB.":"File too large. Maximum 10MB.","Arquivo rejeitado":"File rejected","Arquivo vazio.":"Empty file.","Arquivos declarados inexistentes ({{v0}})":"Files declared non-existent ({{v0}})","Arquivos-chave":"Key files","Arranjo Organizacional":"Organizational Arrangement","Arraste arquivos aqui ou clique para selecionar":"Drag files here or click to select","Arraste e solte um arquivo JSON ou CSV aqui, ou use o botão":"Drag and drop a JSON or CSV file here, or use the button","Arraste o CSV aqui ou clique para selecionar":"Drag CSV here or click to select","Arraste para reordenar fases e tarefas.":"Drag to reorder phases and tasks.",Arriscadas:MO,"As 4 Barras Vitais":"The 4 Vital Bars","As 6 Regras do Motor IGMA":"The 6 Rules of the IGMA Engine","As 6 regras sistêmicas que governam recomendações e bloqueios":"The 6 systemic rules governing recommendations and blocks","As 6 regras são aplicadas sequencialmente. Cada regra pode ativar flags que afetam ações permitidas:":"The 6 rules are applied sequentially. Each rule can activate flags that affect permitted actions:","As abelhas são responsáveis pela polinização de cerca de 75% das culturas agrÃcolas.":"Bees are responsible for pollinating about 75% of agricultural crops.","As alterações foram salvas":"Changes have been saved","As autoridades demoram. Quando chegam, o dano já é grande.":"Authorities are slow. By the time they arrive, the damage is already extensive.","As carvoarias se multiplicam. A caatinga desaparece rapidamente, o solo fica exposto e a erosão acelera. Uma tempe
157stade de areia cobre a vila â algo nunca visto antes.":"Charcoal plants multiply. The caatinga quickly disappears, the soil is exposed, and erosion accelerates. A sandstorm covers the village â something never seen before.","As compensações criam uma área de preservação, mas o resort continua poluindo. Os moradores estão divididos entre emprego e meio ambiente.":"Compensations create a preservation area, but the resort continues to pollute. Residents are divided between jobs and the environment.","As comunidades vizinhas migram em massa. A seca e o desmatamento tornaram suas terras inabitáveis. Refugiados climáticos chegam ao seu projeto.":"Neighboring communities migrate en masse. Drought and deforestation have made their lands uninhabitable. Climate refugees arrive at your project.","As crianças aprendem com a natureza! ð¥¬":"Children learn from nature! ð¥¬","As fotos fizeram sucesso, mas o animal fugiu!":"The photos were a hit, but the animal escaped!","As matas ciliares são restauradas. As águas fluem com mais força.":"Riparian forests are restored. Waters flow more strongly.","As nascentes são a vida do cerrado. Protegê-las é proteger tudo.":"Springs are the life of the cerrado. Protecting them is protecting everything.","As prescrições são geradas automaticamente quando um indicador apresenta status Atenção ou CrÃtico. O Motor IGMA pode bloquear certas prescrições (ex: cursos de OE quando RA está crÃtico). O curso prescrito deve corresponder ao pilar do indicador e à interpretação territorial identificada.":"Prescriptions are automatically generated when an indicator shows a Warning or Critical status. The IGMA Engine may block certain prescriptions (e.g., OE courses when RA is critical). The prescribed course must correspond to the indicator's pillar and the identified territorial interpretation.","As recomendações consideram seus interesses, nÃvel e disponibilidade.":"Recommendations consider your interests, level, and availability.","As senhas não coincidem":"Passwords do not match","As trilhas mostram o impacto do turismo sem controle. Plantas raras são pisoteadas, nascentes contaminadas e o barulho afasta a fauna.":"The trails show the impact of uncontrolled tourism. Rare plants are trampled, springs contaminated, and noise drives away wildlife.","As trilhas são sequências de treinamentos organizados por tema ou pilar (RA, OE, AO). Cada trilha contém múltiplos módulos com vÃdeos, materiais e avaliações. Você pode acompanhar seu progresso e receber certificado ao concluir.":"Trails are sequences of training organized by theme or pillar (RA, OE, AO). Each trail contains multiple modules with videos, materials, and assessments. You can track your progress and receive a certificate upon completion.","As áreas cercadas se tornam refúgios de biodiversidade. Espécies raras reaparecem. A caatinga demonstra sua incrÃvel capacidade de regeneração.":"Fenced areas become biodiversity refuges. Rare species reappear. The caatinga demonstrates its incredible capacity for regeneration.","As áreas de altitude são restauradas. Espécies endêmicas retornam. A serra se candidata a Reserva da Biosfera da UNESCO.":"High-altitude areas are restored. Endemic species return. The mountain range applies for UNESCO Biosphere Reserve status.","As árvores protegeram o solo! Boa escolha! ð":"The trees protected the soil! Good choice! ð",Assentos:NO,"Assinar agora":"Subscribe now","Assinatura (online ou manual pelo admin)":"Subscription (online or manual by admin)","Assinatura atualizada":"Subscription updated","Assinatura desbloqueia módulos completos":"Subscription unlocks full modules","Assinatura registrada":"Subscription registered",Assinaturas:zO,"Assinaturas ativas e históricas":"Active and historical subscriptions","Assinaturas mensais: cartão de crédito, com renovação automática. Créditos avulsos do Professor Beni: cartão ou Pix. Valores em reais (BRL); faturas ficam em Gerenciar conta.":"Monthly subscriptions: credit card, with automatic renewal. Professor Beni's individual credits: card or Pix. Values in Brazilian Reals (BRL); invoices are in Manage Account.","Assista os vÃdeos em sequência â muitos conteúdos são complementares.":"Watch the videos in sequence â many contents are complementary.","Assistente virtual baseado na metodologia sistêmica do turismo":"Virtual assistant based on the systemic tourism methodology","Assistir capacitações":"Watch training sessions","Associação hoteleira local, ABIH regional ou pesquisa de oferta hoteleira. Taxa média anual.":"Local hotel association, regional ABIH, or hotel supply research. Annual average rate.","Associe a imagem à descrição correta":"Associate the image with the correct description","Associe criaturas marinhas e seus habitats":"Match marine creatures and their habitats",Assunto:jO,"Assédio ou bullying":"Harassment or bullying","Atalho para novo diagnóstico":"Shortcut for new diagnosis",Atenção:"Attention","Atenção Necessária":"Attention Needed","Atenção:":"Attention:","Atenção: Algumas questões não foram respondidas!":"Attention: Some questions have not been answered!","Atenção: Alguns
157indicadores merecem monitoramento":"Attention: Some indicators require monitoring","Atenção: pontuação 34â66% â dispara prescrições EDU e plano de ação.":"Warning: score 34â66% â triggers EDU prescriptions and action plan.","Atenção: restam apenas 2 minutos para finalizar o exame!":"Attention: only 2 minutes left to finish the exam!","Atingiram meta":"Met target",Ativa:kO,"Ativar brigadistas e satélites para combater o fogo":"Activate firefighters and satellites to fight the fire","Ativar respostas por voz":"Enable voice responses","Ativar som":"Enable sound","Ative o modo demo para demonstrações com dados fictÃcios.":"Activate demo mode for demonstrations with fictitious data.","Ative ou desative treinamentos no catálogo.":"Enable or disable training in the catalog.","Ative para incluir comparação com a rodada anterior do mesmo destino.":"Enable to include a comparison with the previous round for the same destination.","Ative para visualizar dados de demonstração com diagnósticos completos":"Activate to view demo data with complete diagnoses","Ative/desative proteção anti-cola (tab switch detection).":"Enable/disable anti-cheat protection (tab switch detection).","Atividade Recente":"Recent Activity","Atividade atribuÃda!":"Activity assigned!","Atividade não encontrada.":"Activity not found.",Atividades:_O,"Atividades aparecem aqui assim que o professor as cria. Provas só podem ser iniciadas dentro da janela de disponibilidade.":"Activities appear here as soon as the instructor creates them. Quizzes can only be started within the availability window.",Ativo:qO,"Ativo (usado nos relatórios)":"Active (used in reports)","Ativo:":"Active:",Ativos:LO,"Ativos (7d)":"Active (7d)","Ativos 7d":"Active 7d","Atol das Rocas":"Rocas Atoll","Atrair pelo menos 200 visitantes":"Attract at least 200 visitors",Atrasado:UO,Atrasados:BO,"Atração TurÃstica":"Tourist Attraction","Atribua trilhas, capacitações, provas ou conteúdo próprio à s salas. Defina datas de disponibilidade e prazos de entrega para cada atividade.":"Assign trails, training, tests, or your own content to classrooms. Set availability dates and deadlines for each activity.","Atribua trilhas, capacitações, provas ou conteúdo próprio à s suas salas. Defina prazos e acompanhe a conclusão.":"Assign trails, training, tests, or your own content to your classrooms. Set deadlines and track completion.",Atribuir:FO,"Atribuir a um membro da organização...":"Assign to an organization member...","Atribuir atividade":"Assign activity","Atribuir responsável":"Assign owner","Atribuir responsável (opcional)":"Assign responsible (optional)","Atribuição RACI adicionada":"RACI assignment added","Atribuição de Conteúdo":"Content Assignment",Atribuições:"Assignments","Atribuições RACI":"RACI assignments",Atual:GO,Atualizada:VO,"Atualizando...":"Updating...",Atualizar:$O,"Atualizar Regras":"Update Rules","Atualizar Senha":"Update Password","Atualizar recomendações":"Update recommendations","Atualizar usuários":"Update users","Atualização trimestral":"Quarterly update","Atualize as informações da fase":"Update the phase information","Atualize as informações da tarefa":"Update the task information","Atualize as informações do destino turÃstico.":"Update the tourist destination information.","Atualize as informações do marco":"Update the milestone information","Atualize as informações do módulo":"Update module information","Atualize as informações do projeto":"Update the project information","Atualize os dados da organização":"Update organization data","Atualize os dados do treinamento":"Update the training details","Atualize para um plano para não perder o acesso.":"Upgrade to a plan to avoid losing access.","Até 5 endereços, separados por vÃrgula.":"Up to 5 addresses, separated by comma.","Até uma data":"Until a date","Audit logging de todas as operações crÃticas":"Audit logging of all critical operations","Auditoria concluÃda.":"Audit completed.","Auditoria semântica de relatório":"Report semantic audit",Audiência:"Audience",Aula:HO,"Aula ao vivo":"Live class","Aulas / Conteúdos":"Lessons / Content","Aumenta o volume de água":"Increases water volume","Aumento da temperatura dos oceanos":"Increase in ocean temperature","Aumento da temperatura média da Terra por gases estufa":"Increase in Earth's average temperature due to greenhouse gases","Aumento das chuvas":"Increased rainfall","Aumento médio da temperatura da Terra":"Average increase in Earth's temperature","Ausência de Plano Municipal de Turismo":"Absence of a Municipal Tourism Plan",Autenticação:"Authentication","Autenticação necessária para acessar o vÃdeo":"Authentication required to access the video","Autenticação obrigatória com verificação de e-mail"
157:"Mandatory authentication with email verification","Autenticação, onboarding e termos de uso":"Authentication, onboarding, and terms of use","Auth, perfis, licenciamento e infraestrutura compartilhada":"Auth, profiles, licensing, and shared infrastructure",Auto:WO,"Auto-correção determinÃstica contra":"Deterministic self-correction against","Auto-correção numérica determinÃstica":"Deterministic numerical auto-correction","Autofix â Conferência de dados":"Autofix â Data verification","Automação parcial e fallback manual:":"Partial automation and manual fallback:",Automática:"Automatic",Automático:"Automatic","Automático (Alta)":"Automatic (High)",Automáticos:"Automatic",Autor:QO,Autônomo:"Self-employed","Avaliados pela metodologia SISTUR de Mario Carlos Beni":"Evaluated by Mario Carlos Beni's SISTUR methodology",Avaliação:"Assessment","Avaliação 3 pilares (RA/OE/AO), rodadas, importação de dados":"3-pillar assessment (RA/OE/AO), rounds, data import","Avaliação Gratuita":"Free Assessment","Avaliação SISTUR (Mario Beni)":"SISTUR Evaluation (Mario Beni)","Avaliação enviada!":"Assessment submitted!","Avaliação gratuita por consumo":"Free evaluation by consumption","Avaliação individual, não competitiva":"Individual evaluation, not competitive","Avaliação por uso":"Evaluation by use",Avaliações:"Assessments","Avaliações Online (Google / TripAdvisor / Booking)":"Online Reviews (Google / TripAdvisor / Booking)","Avaliações rápidas trimestrais":"Quarterly quick assessments","Avalie a existência e atuação de conselhos participativos (COMTUR, Instância de Governança). Escala de 1 (inexistente) a 5 (muito ativo).":"Evaluate the existence and performance of participatory councils (COMTUR, Governance Instance). Scale from 1 (non-existent) to 5 (very active).","Avalie a performance e sustentabilidade do seu empreendimento.":"Assess your business's performance and sustainability.","Avalie destinos turÃsticos usando a metodologia de Mario Beni":"Evaluate tourist destinations using Mario Beni's methodology",Avançado:"Advanced","Avançar na carreira":"Advance my career",Avatares:KO,"Avatares e temas desbloqueáveis pelo seu progresso":"Avatars and themes you can unlock as you progress","Ave ameaçada de extinção que depende de palmeiras":"Endangered bird that depends on palm trees","Ave de rapina que controla populações de roedores":"Bird of prey that controls rodent populations","Ave icônica dos mangues cuja cor vem dos crustáceos":"Iconic mangrove bird whose color comes from crustaceans","Aventura carregada! ð®":"Adventure loaded! ð®","Aviso de Privacidade:":"Privacy Notice:",Avisos:YO,"Avisos IGMA":"IGMA notices","Avisos determinÃsticos ({{v0}})":"Deterministic Alerts ({{v0}})",Award:JO,Ação:"Action","Ação Contra a Mudança Global do Clima":"Action Against Global Climate Change","Ação Recomendada: Upgrade de Instância":"Recommended Action: Instance Upgrade","Ação Rápida":"Quick Action",Ações:"Actions","Ações Operacionais":"Operational Actions","Ações Operacionais (AO)":"Operational Actions (AO)","Ações Operacionais (IAO)":"Operational Actions (IAO)","Ações Operacionais (execução)":"Operational Actions (execution)","Ações Permitidas (quando pilares saudáveis)":"Allowed Actions (when pillars are healthy)","Ações bloqueadas:":"Blocked actions:","Ações sobre licenças":"Actions on licenses",Aérea:"Air","BANDS (Faixas)":"BANDS (Ranges)",BASICO:XO,"BENI, Mario Carlos.":"BENI, Mario Carlos.","BENI, Mario Carlos. Análise Estrutural do Turismo. São Paulo: Editora Senac São Paulo, 2001.":"BENI, Mario Carlos. Structural Analysis of Tourism. São Paulo: Editora Senac São Paulo, 2001.","BENI, Mario Carlos. Globalização do Turismo: Megatendências do Setor e a Realidade Brasileira. São Paulo: Aleph, 2003.":"BENI, Mario Carlos. Globalization of Tourism: Megatrends of the Sector and Brazilian Reality. São Paulo: Aleph, 2003.","BENI, Mario Carlos. PolÃtica e Planejamento de Turismo no Brasil. São Paulo: Aleph, 2006.":"BENI, Mario Carlos. Tourism Policy and Planning in Brazil. São Paulo: Aleph, 2006.","BINARY (Sim/Não)":"BINARY (Yes/No)","Backbone de legitimidade e governança municipal":"Municipal legitimacy and governance backbone","Backend â Configurações Avançadas â Upgrade de Instância":"Backend â Advanced Settings â Instance Upgrade",Backlog:ZO,Badge:eM,"Badge atualizada":"Badge updated","Badge criada":"Badge created","Badge removida":"Badge removed",Badges:aM,"Badges concedidas":"Badges awarded","Badges mais conquistadas":"Most earned badges",Baixa:oM,"Baixa (predominantemente baixa temporada)":"Low (predominantly low season)","Baixa um .txt com manifesto + código completo + migrations deste módulo":"Downloads a .txt with manifest + full code + migrations for this module",Baixar:iM,"Baixar Template CSV":"Download CSV Template","Baixar em Word":"Download in Word","Baixar modelo":"Download model","Baixar template":"Download template",Baixas:tM,"Baixe o certificado em PDF para impressão ou compartilhamento.":"Download the certificate in PDF for printing or sharing.",Baixo:rM,"Baixo custo de coleta de dados":"Low data collection cost","Baixo impacto no pilar":"Low impact on the pillar",Ban:sM,"Banco de Dados":"Database","Banco de Questões":"Question Bank","Banco de Sementes":"Seed Bank","Banco de questões":"Question bank","Banheiros Adaptados":"Accessible Restrooms","Banner de validação cruzada sempre exibido (limpo, com avisos ou auto-corrigido).":"Cross-validation banner always displayed (clean, with warnings, or self-corrected).","Barra lateral: navegação entre os módulos disponÃveis (AnalÃtico, EDU, Empresarial, Observatório, Fórum, Configurações).":"Sidebar: navigation between available modules (Analytics, EDU, Business, Ob
157servatory, Forum, Settings).","Barras ⥠50":"Bars ⥠50","Base URL":"Base URL","Base URL (opcional)":"Base URL (optional)","Base cientÃfica robusta":"Robust scientific basis","Base de Conhecimento":"Knowledge Base","Base de Conhecimento e Referências Globais":"Knowledge Base and Global References","Base de dados e schema: 40+ tabelas com polÃticas de segurança":"Database and schema: 40+ tables with security policies","Base do sistema turÃstico. Engloba recursos naturais, patrimônio cultural, qualidade ambiental e sustentabilidade.":"Base of the tourism system. Encompasses natural resources, cultural heritage, environmental quality, and sustainability.","Base teórica injetada no contexto":"Theoretical base injected into context","Baseado na Análise Estrutural do Turismo do Prof. Mario Carlos Beni":"Based on Prof. Mario Carlos Beni's Structural Analysis of Tourism","Baseado nos princÃpios sistêmicos do Prof. Mario Beni":"Based on the systemic principles of Prof. Mario Beni",Baseline:nM,"Baseline registrado na criação do projeto vs score atual do diagnóstico vinculado.":"Baseline recorded at project creation vs current score of the linked assessment.","Bases Públicas":"Public Databases","Bases públicas: IDH, IDEB, Leitos hospitalares, Cobertura de saúde, Receita própria, Despesa com turismo":"Public databases: HDI, IDEB, Hospital beds, Health coverage, Own revenue, Tourism expenditure","Beleza e ecologia na água!":"Beauty and ecology in the water!","Bem feito!":"Well done!","Bem-vindo":"Welcome","Bem-vindo ao Diagnóstico Enterprise":"Welcome to Enterprise Diagnosis","Bem-vindo ao Guardião do Território!":"Welcome to Territory Guardian!","Bem-vindo ao SISTUR!":"Welcome to SISTUR!","Bem-vindo à Missão Bioma!":"Welcome to Biome Mission!","Benchmark / Referência":"Benchmark / Reference","Benchmark competitivo via Booking, TripAdvisor e Google":"Competitive benchmark via Booking, TripAdvisor, and Google","Benchmark interno ({{v0}} empreendimentos)":"Internal benchmark ({{v0}} establishments)","Benchmark setorial â {{v0}}":"Sectoral benchmark â {{v0}}","Benchmarking regional privado entre municÃpios membros.":"Private regional benchmarking among member municipalities.","BenefÃcio de isenção":"Exemption benefit",BenefÃcios:"Benefits",Beni:cM,"Berçário Marinho":"Marine Nursery","Berçário de espécies marinhas":"Marine species nursery",Beta:dM,Bibliografia:lM,"Bibliografia básica":"Basic bibliography","Bibliografia complementar":"Complementary bibliography",Biblioteca:uM,"Biblioteca de Módulos":"Module Library",Binário:"Binary","Binário (0 ou 1)":"Binary (0 or 1)","Binário (sim/não)":"Binary (yes/no)",Biodiversidade:mM,"Biodiversidade é a variedade de formas de vida em um ecossistema.":"Biodiversity is the variety of life forms in an ecosystem.","Bioindicador que só cresce em ambientes não poluÃdos":"Bioindicator that only grows in unpolluted environments","Bioma costeiro com alta biodiversidade":"Coastal biome with high biodiversity",Bloqueadas:pM,Bloqueado:gM,"Bloqueado neste nÃvel":"Blocked at this level","Bloquear Acesso":"Block Access","Bloquear automaticamente imagens que não passam na moderação":"Automatically block images that fail moderation","Bloqueia EDU_OE + Marketing":"Blocks EDU_OE + Marketing","Bloqueia EDU_OE e MARKETING":"Blocks EDU_OE and MARKETING","Bloqueia conteúdo explÃcito e violento":"Blocks explicit and violent content","Bloqueio suave":"Soft block","Bloqueios (quando pilares crÃticos)":"Blocks (when pillars are critical)","Boa governança e decisões inteligentes!":"Good governance and smart decisions!","Boa sorte, agente restaurador! ð":"Good luck, restoration agent! ð","Boa sorte, ecologista! ð":"Good luck, ecologist! ð","Boa sorte, explorador ecológico! ð":"Good luck, eco explorer! ð","Boa sorte, guardião! âï¸ð":"Good luck, guardian! âï¸ð","Boletim Detalhado":"Detailed Grade Report","Boletim consolidado dos seus cursos, exames e certificados":"Consolidated record of your courses, exams and certificates",Bom:hM,"Bomba de Sementes":"Seed Bomb","Booking + Expedia + TripAdvisor":"Booking + Expedia + TripAdvisor","Booking + Expedia + site próprio + 3 agências + Instagram = 7 canais":"Booking + Expedia + own website + 3 agencies + Instagram = 7 channels","Booking + TripAdvisor + Google":"Booking + TripAdvisor + Google","Booking + TripAdvisor + Google (nota, volume, sentimento, NPS)":"Booking + TripAdvisor + Google (score, volume, sentiment, NPS)","BrasilAPI / Receita Federal":"BrasilAPI / Federal Revenue Service","Brigada comunitária de combate":"Community firefighting brigade","Brigada de Incêndio":"Fire Brigade","Brigadistas voluntários protegem a floresta.":"Volunteer firefighters protect the forest.",Bug:fM,"Bug reportado com sucesso!":"Bug reported successfully!",Bugs:vM,"Buracos na Estrada":"Potholes on the Road","Busca concluÃda!":"Search completed!","Busca dados mais recentes via scraping do portal oficial. Se falhar, usa CSVs do CKAN como fallback.":"Searches for the latest data via official portal scraping. If it fails, uses CKAN CSVs as a fallback.","Busca de Reviews Online":"Online Reviews Search","Busca equilibrar crescimento econômico, justiça social e preservação ambiental.":"Seeks to balance economic growth, social justice, and environmental preservation.","Busca pública + Receita Federal
157(BrasilAPI)":"Public search + Federal Revenue (BrasilAPI)","Busca pública e mÃdia (Auto)":"Public and media search (Auto)","Busca pública na web (5 dimensões)":"Public web search (5 dimensions)","Busca registros públicos de reclamações no Reclame Aqui e menções no Procon para preencher reputação pública e taxa de solução.":"Searches public complaint records on Reclame Aqui and mentions on Procon to fill in public reputation and resolution rate.","Busca:":"Search:","Buscando detalhes do treinamento":"Fetching training details","Buscando e extraindo eventosâ¦":"Searching and extracting eventsâ¦","Buscando informações do exame":"Fetching exam information","Buscando revisão do exame":"Fetching exam review","Buscando...":"Searching...","Buscando:":"Searching:","Buscar CNPJ a partir do nome do empreendimento":"Search CNPJ by establishment name","Buscar Concorrentes":"Search Competitors","Buscar Dados":"Search Data","Buscar MunicÃpios IBGE":"Search IBGE Municipalities","Buscar Reclamações":"Search Complaints","Buscar Reviews":"Search Reviews","Buscar agora":"Search now","Buscar apoio de ONGs e iniciar projeto de restauração":"Seek NGO support and start a restoration project","Buscar apoio de ONGs e organizações internacionais":"Seek support from NGOs and international organizations","Buscar apoio externo de ONGs ambientais":"Seek external support from environmental NGOs","Buscar arquivo...":"Browse file...","Buscar certificados...":"Search certificates...","Buscar conversas":"Search conversations","Buscar cursos...":"Search courses...","Buscar destino...":"Search destination...","Buscar destinos...":"Search destinations...","Buscar diagnósticos...":"Search assessments...","Buscar eventos do municÃpio":"Search municipal events","Buscar gargalo...":"Search bottleneck...","Buscar indicador...":"Search indicator...","Buscar indicadores...":"Search indicators...","Buscar logs...":"Search logs...","Buscar marca...":"Search brand...","Buscar membros...":"Search members...","Buscar municÃpio...":"Search municipality...","Buscar no IBGE":"Search in IBGE","Buscar nome ou turma...":"Search name or class...","Buscar online":"Search online","Buscar organizações...":"Search organizations...","Buscar pessoa...":"Search person...","Buscar por nome ou código...":"Search by name or code...","Buscar por nome, descrição, arquivo ou tabelaâ¦":"Search by name, description, file, or tableâ¦","Buscar por nome, e-mail ou organização":"Search by name, email, or organization","Buscar por nome...":"Search by name...","Buscar por tÃtulo...":"Search by title...","Buscar posts...":"Search posts...","Buscar questões...":"Search questions...","Buscar reconhecimento como Reserva da Biosfera":"Seek recognition as a Biosphere Reserve","Buscar solicitações...":"Search requests...","Buscar stage, mensagem, trace, jobâ¦":"Search stage, message, trace, jobâ¦","Buscar treinamentos...":"Search training...","Buscar usuário da organização...":"Search organization user...","Buscar usuário...":"Search user...","Buscar usuários...":"Search users...","Buscar...":"Search...","Buscarâ¦":"Searchâ¦","Busque e valide dados de fontes oficiais para preencher automaticamente os indicadores":"Find and validate data from official sources to automatically populate indicators","Busque por nome do municÃpio":"Search by municipality name","Busque por nome ou email do usuário.":"Search by user name or email.",Básica:"Basic",Básico:"Basic",Básicos:"Basics","Bônus XP":"XP Bonus",CAC:bM,CADASTUR:AM,"CADASTUR (Guias / Hospedagem / Agências)":"CADASTUR (Guides / Accommodation / Agencies)","CADASTUR / dados.gov.br":"CADASTUR / dados.gov.br","CADASTUR / dados.gov.br: Guias e Agências via datasets oficiais abertos":"CADASTUR / dados.gov.br: Guides and Agencies via official open datasets","CADASTUR parcialmente indisponÃvel":"CADASTUR partially unavailable","CADASTUR relevante":"Relevant CADASTUR","CADASTUR â Cadastro de Prestadores de Serviços TurÃsticos (dados abertos). DisponÃvel em: dados.gov.br":"CADASTUR â Register of Tourism Service Providers (open data). Available at: dados.gov.br","CADASTUR â C
157adastro dos Prestadores de Serviços TurÃsticos (MTur)":"CADASTUR â Registry of Tourism Service Providers (MTur)","CADASTUR â Prestadores TurÃsticos":"CADASTUR â Tourism Providers","CADASTUR:":"CADASTUR:","CADASTUR: oferta turÃstica":"CADASTUR: tourist offer","CAGED â Cadastro Geral de Empregados e Desempregados (MTE)":"CAGED â General Registry of Employed and Unemployed Workers (MTE)",CALCULADO:yM,CERTIFICADO:SM,"CLASSIFICAÃÃO (régua oficial 5 nÃveis)":"CLASSIFICATION (official 5-level scale)","CNAE {{v0}}":"CNAE {{v0}}",CNPJ:EM,"CNPJ não encontrado online":"CNPJ not found online","CNPJ não validado":"CNPJ not validated","CNPJ validado":"Validated CNPJ",COMPLETE:CM,"CONFERÃNCIA DE DADOS â RELATÃRIO SISTUR":"DATA CONFERENCE â SISTUR REPORT",CRITICO:TM,"CRUD de destinos turÃsticos":"CRUD for tourist destinations",CRÃTICO:"CRITICAL",CSV:PM,"CSV (Excel/planilha)":"CSV (Excel/spreadsheet)","CSV exportado":"CSV exported","CSV exportado com sucesso!":"CSV exported successfully!","CSV genérico":"Generic CSV","CSV precisa de cabeçalho + ao menos 1 linha de dados.":"CSV needs a header + at least 1 data row.","CSV sem linhas de dados":"CSV has no data rows","CSV vazio ou inválido":"Empty or invalid CSV","CSVs estáticos de dados.turismo.gov.br (2013-2017)":"Static CSVs from dados.turismo.gov.br (2013-2017)","CTA para planos nos módulos afetados":"CTA for plans in affected modules","Cabeçalho da seção (opcional)":"Section header (optional)","Cabeçalho e rodapé":"Header and footer","Cabeçalho impresso no prompt do LLM antes do conteúdo. Opcional. Ex.: 'REGRAS ANTI-ALUCINAÃÃO:'.":"Header printed in the LLM prompt before the content. Optional. Ex.: 'ANTI-HALLUCINATION RULES:'.","Cabeçalho: tÃtulo da página, notificações, perfil e troca rápida entre organizações (para usuários multi-org).":"Header: page title, notifications, profile, and quick switch between organizations (for multi-org users).","Cache TTL:":"Cache TTL:",'Cada atividade no Painel do Professor possui um botão "Acompanhar" que abre um drill-down com KPIs (taxa de conclusão, taxa de aprovação, nota média) e o status individual de cada aluno: não iniciou, em andamento, aguarda correção, reprovado (pode tentar novamente), esgotou tentativas ou aprovado. à possÃvel filtrar por status clicando nos chips e executar ações em massa: enviar lembrete (para todos pendentes, não iniciantes ou não entregues), prorrogar o prazo da atividade ou liberar tentativas extras. Todas as ações disparam notificações automáticas para os alunos-alvo.':'Each activity in the Instructor Panel has a "Monitor" button that opens a drill-down with KPIs (completion rate, approval rate, average grade) and the individual status of each student: not started, in progress, awaiting correction, failed (can try again), attempts exhausted, or approved. It is possible to filter by status by clicking on the chips and perform bulk actions: send a reminder (to all pending, non-starters or not submitted), extend the activity deadline, or release extra attempts. All actions trigger automatic notifications to target students.',"Cada ação selecionada será convertida em uma tarefa do projeto":"Each selected action will be converted into a project task","Cada bioma tem desafios e histórias completamente diferentes!":"Each biome has completely different challenges and stories!","Cada bioma tem seus próprios tesouros e perigos!":"Each biome has its own treasures and dangers!","Cada bioma tem sua própria história e desafios únicos!":"Each biome has its own story and unique challenges!","Cada carta representa um indicador ou ameaça do turismo.":"Each card represents a tourism indicator or threat.","Cada certificado possui um QR Code e um código único que pode ser verificado na página pública de verificação. Isso permite que terceiros confirmem a autenticidade do certificado sem precisar de login.":"Each certificate has a QR Code and a unique code that can be verified on the public verification page. This allows third parties to confirm the authenticity of the certificate without needing to log in.","Cada certificado tem um código de verificação único.":"Each certificate has a unique verification code.","Cada diagnóstico calculado gera um snapshot imutável (diagnosis_data_snapshots) que registra:":"Each calculated diagnosis generates an immutable snapshot (diagnosis_data_snapshots) that records:","Cada escolha impacta métricas de sustentabilidade, economia e comunidade.":"Each choice impacts sustainability, economic, and community metrics.","Cada indicador bruto é normalizado para escala 0-10 usando uma de três funções, conforme a natureza do dado:":"Each raw indicator is normalized to a 0-10 scale using one of three functions, according to the nature of the data:","Cada indicador pertence a um nÃvel que define em quais diagnósticos ele será utilizado.":"Each indicator belongs to a level that determines which assessments will use it.","Cada indicador tem uma escala definida e descrição do que medir."
157:"Each indicator has a defined scale and description of what to measure.","Cada indicador é classificado em uma das três Interpretações Territoriais:":"Each indicator is classified into one of three Territorial Interpretations:","Cada item abaixo busca ou aplica dados públicos para preencher o diagnóstico":"Each item below searches for or applies public data to fill the diagnosis","Cada organização pode ter múltiplos destinos.":"Each organization can have multiple destinations.","Cada par tem uma carta com emoji/nome e outra com a explicação sobre o tema ambiental. Associe a imagem ao conceito correto!":"Each pair has one card with an emoji/name and another explaining the environmental topic. Match the image to the correct concept!","Cada pedaço de lixo recolhido salva um animal marinho.":"Every piece of trash collected saves a marine animal.","Cada pessoa autoriza com a própria conta SISTUR em uma tela de consentimento, e o assistente só enxerga os mesmos dados que essa pessoa vê dentro do sistema â nada de chaves fixas ou acesso cruzado entre organizações. à possÃvel revogar o acesso a qualquer momento desconectando o conector no assistente de IA.":"Each person authorizes with their own SISTUR account on a consent screen, and the assistant only sees the same data that person sees within the system â no fixed keys or cross-organization access. Access can be revoked at any time by disconnecting the connector in the AI assistant.","Cada pilar (RA, OE, AO) é calculado pela média ponderada dos seus indicadores normalizados:":"Each pillar (RA, OE, AO) is calculated by the weighted average of its normalized indicators:","Cada pilar varia de 0 a 100. Verde (>70), Amarelo (40-70), Vermelho (<40).":"Each pillar ranges from 0 to 100. Green (>70), Yellow (40-70), Red (<40).","Cada plano de ação é vinculado a uma issue ou prescrição especÃfica.":"Each action plan is linked to a specific issue or prescription.","Cada ponto no gráfico representa uma rodada de diagnóstico.":"Each point on the graph represents a diagnosis round.","Cada regra é injetada como bloco de texto no prompt do gerador de relatórios. Preencha os campos abaixo, ou clique em":"Each rule is injected as a text block into the report generator's prompt. Fill in the fields below, or click on","Cada relatório pode ter":"Each report can have","Cada solicitação mostra nome, email, organização e papel solicitado.":"Each request shows name, email, organization, and requested role.","Cada trilha agrupa várias capacitações em sequência.":"Each track groups several training courses in sequence.","Cada um dos três templates possui versão":"Each of the three templates has a version","Cada visão tem KPIs e gráficos especÃficos.":"Each view has specific KPIs and charts.","Cadastre primeiro o perfil do empreendimento para liberar o checklist de conformidade.":"First, register the establishment's profile to unlock the compliance checklist.","Cadastre um novo indicador para o sistema de diagnóstico.":"Register a new indicator for the assessment system.",Cadastro:RM,"Cadastro com e-mail + verificação obrigatória":"Registration with email + mandatory verification","Cadastro de destinos, inventário e CADASTUR.":"Registration of destinations, inventory, and CADASTUR.","Cadastro do destino com código IBGE":"Destination registration with IBGE code","Cadastro e Formalização no CADASTUR":"Registration and Formalization in CADASTUR","Cadastro e gestão de perfis empresariais":"Registration and management of business profiles","Cadastro nacional de prestadores de serviços turÃsticos":"National registration of tourism service providers","Cadastro no CADASTUR (MTur)":"Registration in CADASTUR (MTur)","CadÃnico â Ministério do Desenvolvimento Social":"CadÃnico â Ministry of Social Development",Cadência:"Cadence","Calcula Próxima Revisão":"Calculate Next Review",Calculado:xM,"Calculado ({{v0}})":"Calculated ({{v0}})","Calculado a partir de fontes oficiais":"Calculated from official sources","Calculado em":"Calculated on","Calculado no recálculo do diagnóstico. Procedência: derivado IBGE.":"Calculated upon diagnosis recalculation. Source: IBGE derived.","Calculadora de Normalização":"Normalization Calculator",Calculados:wM,"Calculados automaticamente a partir dos blocos acima.":"Automatically calculated from the blocks above.","Calculando diagnósticoâ¦":"Calculating diagnosisâ¦","Calculando...":"Calculating...",Calcular:IM,"Calcular Diagnóstico":"Calculate Assessment","Calcular e interpretar":"Calculate and interpret","Calcular Ãndices":"Calculate Indices","Calcular Ãndices":"Calculate indices","Calcule a rodada para habilitar o simulador.":"Calculate the round to enable the simulator.","Calcule a variação entre alta e baixa temporada: ((ocupação alta - ocupação baixa) ÷ ocupação média) à 100.":"Calculate the variation between high and low season: ((high season occupancy - low season occupancy) ÷ average occupancy) à 100.","Calcule diagnósticos para ver a evolução dos pilares":"Calculate diagnoses to
157see the evolution of the pillars","Calcule: (receita de reservas diretas ÷ receita total de hospedagem) à 100. Consulte seu PMS (Property Management System) ou relatórios financeiros.":"Calculate: (direct booking revenue ÷ total accommodation revenue) à 100. Consult your PMS (Property Management System) or financial reports.",Calendário:"Calendar","Calendário Acadêmico":"Academic Calendar","Calendário de Estudos":"Study Calendar","Calendário de Eventos":"Events Calendar","Calendário de eventos públicos e observatório â detecta meses de pico e padrão sazonal":"Public events calendar and observatory â detects peak months and seasonal patterns","Calibre os pesos relativos dos indicadores em cada pilar. A soma por pilar deve ser 100%.":"Calibrate the relative weights of the indicators in each pillar. The sum per pillar must be 100%.","Camada Semântica":"Semantic Layer","Camada Semântica de Relatórios":"Report Semantic Layer","Camada de Contexto do Relatório":"Report Context Layer","Caminhar sobre as copas é uma experiência única.":"Walking above the treetops is a unique experience.","Caminho de rios no mapa":"River path on the map","Caminho na natureza":"Nature trail","Caminho para explorar a natureza.":"Path to explore nature.",Campanha:DM,"Campanha (opcional)":"Campaign (optional)","Campanha de marketing":"Marketing campaign","Campanha de prevenção comunitária":"Community prevention campaign","Camping/Glamping":"Camping/Glamping","Campos de altitude e florestas nebulares são restaurados!":"High-altitude fields and cloud forests are restored!","Campos do formulário":"Form fields","Canais de Distribuição":"Distribution Channels","Canais de Distribuição (OTAs)":"Distribution Channels (OTAs)","Canais de irrigação":"Irrigation canals","Canal Direto (est.)":"Direct Channel (est.)","Canal do YouTube":"YouTube Channel","Canal: {{v0}}":"Channel: {{v0}}",Cancelado:OM,Cancelar:MM,"Cancelar a geração em andamento":"Cancel generation in progress","Cancelar edição":"Cancel editing","Cancelar licença":"Cancel license","Cancelar o plano":"Cancel plan","Cancelar plano":"Cancel plan","Cancelar verificação":"Cancel verification","Cancelar: Revoga o acesso do usuário imediatamente.":"Cancel: Revokes user access immediately.","Candidatar a região a Patrimônio Natural da Humanidade":"Nominate the region as a Natural World Heritage Site","Canvas indisponÃvel":"Canvas unavailable","Cap. {{v0}} ⢠{{v1}} decisões":"Ch. {{v0}} ⢠{{v1}} decisions","Capacidade Total de Hóspedes":"Total Guest Capacity","Capacidade confortável":"Comfortable capacity",Capacitação:"Training","Capacitação AO":"AO Training","Capacitação OE":"OE Training","Capacitação RA":"RA Training","Capacitação da Equipe":"Team Training","Capacitação desconectada dos resultados de diagnóstico territorial":"Training disconnected from territorial diagnosis results","Capacitação e Treinamento":"Training and Development","Capacitação em Governança":"Governance Training","Capacitação, trilhas e certificação educacional.":"Training, trails, and educational certification.",Capacitações:"Training","Capacitações em Ações Operacionais":"Training in Operational Actions","Capacitações em Organização Estrutural":"Training in Structural Organization","Capacitações em Relações Ambientais":"Training in Environmental Relations","Capacitações estruturadas baseadas nos gargalos identificados":"Structured training based on identified bottlenecks","Capacitações vinculadas":"Linked training","Captação de luz do sol para gerar eletricidade limpa":"Capturing sunlight to generate clean electricity","Captação de recursos em editais públicos":"Fundraising through public calls for proposals","Captura que respeita limites de reprodução das espécies":"Catch that respects species' reproduction limits","CapÃtulo {{v0}}":"Chapter {{v0}}",Caracteres:NM,"Caranguejo-uçá":"Uçá crab","Cards de estatÃsticas mostram total de projetos, tarefas e conclusões.":"Statistics cards show total projects, tasks, and completions.","Carga Horária":"Total Hours","Carga Horária:":"Total Hours:","Carga horária":"Total hours","Carga horária prática (h)":"Practical workload (h)","Carga horária teórica (h)":"Theoretical workload (h)","Cargo/Função (opcional)":"Position/Role (optional)","Carregando Diagnóstico":"Loading Assessment","Carregando camada semânticaâ¦":"Loading semantic layerâ¦","Carregando configurações de acesso...":"Loading access settings...","Carregando configuraçõesâ¦":"Loading settingsâ¦","Carregando contexto do relatórioâ¦":"Loading report contextâ¦","Carregando contextosâ¦":"Loading contextsâ¦","Carregando dados do diagnóstico...":"Loading diagnosis data...","Carregando destino...":"Loading destination...","Carregando diagnóstico...":"Loading diagnosis...","Carregando estrutura do relatórioâ¦":"Loading report structureâ¦","Carregando estruturasâ¦":"Loading structuresâ¦","Carregando guia de integraçãoâ¦":"Loading integration guideâ¦","Carregando histórico...":"Loading history...","Carregando indicadores...":"Loading indicators...","Carregando marcas...":"Loading brands...","Carregando perfil...":"Loading profile...","Carregando planosâ¦":"Loading plansâ¦","Carregando solicitaçãoâ¦":"Loading requestâ¦","Carregando treinamentos...":"Loading training...","Carregando usuários...":"Loading users...","Carregando valor atualâ¦":"Loading current valueâ¦","Carregando...":"Loading...","Carregandoâ¦":"Loadingâ¦","Carregar Arquivo":"Upload File","Carregar Contexto":"Load Context","Carregar mais":"Load more","Carregar relatório salvo":"Load saved report","Carros poluem, mas são rápidos.":"Cars pollute, but they are fast.","Carta de
157scartada (+1ð°)":"Card discarded (+1ð°)","Carta inválida.":"Invalid card.","Carta jogada! ð":"Card played! ð","Cartas jogadas ficam no campo â planeje sua formação!":"Played cards stay on the field â plan your formation!","Cartas jogadas:":"Cards played:","Cartas lendárias são poderosas â escolha com sabedoria!":"Legendary cards are powerful â choose wisely!","Cartas no deck":"Cards in deck","Cartas usadas permanentemente":"Permanently used cards",Carvão:"Coal",Cascata:zM,"Caso os termos sejam atualizados, será necessário aceitar novamente.":"If terms are updated, you will need to accept them again.","Casos de uso":"Use cases",Categoria:jM,"Categoria (Estrelas)":"Category (Stars)","Categoria de carta desconhecida.":"Unknown card category.","Categoria {{v0}}":"Category {{v0}}","Categoria/letra (ex: A, B, C, D).":"Category/letter (example: A, B, C, D).",Categorias:kM,"Categorias Empresarial":"Business Categories","Categorias: Performance Financeira, Experiência do Hóspede, Operações, Sustentabilidade, Recursos Humanos, Marketing & Distribuição,
157Compliance & Segurança.":"Categories: Financial Performance, Guest Experience, Operations, Sustainability, Human Resources, Marketing & Distribution, Compliance & Security.",Categorização:"Categorization","Categorização A, B, C, D, E dos municÃpios turÃsticos":"Categorization A, B, C, D, E of tourist municipalities","Categórico (letras)":"Categorical (letters)",Catálogo:"Catalog","Catálogo & Trilhas":"Catalog & Trails","Catálogo Completo":"Full Catalog","Catálogo Unificado com Indicadores Compartilhados":"Unified Catalog with Shared Indicators","Catálogo de Badges":"Badge Catalog","Catálogo de Cursos":"Course Catalog","Catálogo de Treinamentos":"Training Catalog","Catálogo de cursos e lives baseado em diagnóstico IGMA":"Catalog of courses and livestreams based on the IGMA assessment","Catálogo educacional: cursos, trilhas e lives disponÃveis.":"Educational catalog: courses, learning paths, and live sessions available.","Catálogo interno dos blocos funcionais do SISTUR â copie paths, tabelas ou o manifesto JSON completo para reutilizar em outros projetos.":"Internal
157catalog of SISTUR functional blocks â copy paths, tables, or the full JSON manifest to reuse in other projects.","Catálogo vigente":"Current catalog","Catálogo único, o mesmo exibido em /assinatura e /planos.":"Unique catalog, the same displayed at /subscription and /plans.","Causa assoreamento e seca":"Causes silting and drought","Caça ao Tesouro Ecológico":"Ecological Treasure Hunt","Caça ao Tesouro Ecológico!":"Eco Treasure Hunt!","Caça ao Tesouro: Explore grades e resolva enigmas.":"Treasure Hunt: Explore grids and solve riddles.","Caça ao Tesouro: exploração de mapa com charadas sobre sustentabilidade":"Treasure Hunt: map exploration with riddles about sustainability","Caça ao tesouro com mapas procedurais":"Treasure hunt with procedural maps","Caça ilegal":"Illegal hunting","Ceder à s ameaças e ir embora":"Yield to threats and leave","Centro Comunitário":"Community Center","Centros comunitários fortalecem laços sociais.":"Community centers strengthen social bonds.","Centros de atendimento ao turista, banheiros públicos, postos de saúde próximos a atrativos. Fonte: Secretaria de Turismo. Periodicidade: anual.":"Tourist service centers, public restrooms, health posts near attractions. Source: Department of Tourism. Frequency: annual.","Centros de pesquisa":"Research centers","Cenário salvo":"Saved scenario","Cenários salvos":"Saved scenarios","Cenários são baseados em situações reais do turismo brasileiro.":"Scenarios are based on real situations in Brazilian tourism.","Cerrado Sem Veneno":"Cerrado Without Poison",Certificado:_M,"Certificado Inválido":"Invalid Certificate","Certificado Não Encontrado":"Certificate Not Found","Certificado Válido":"Valid Certificate","Certificado de Conclusão":"Certificate of Completion","Certificado emitido com sucesso":"Certificate issued successfully","Certificado emitido em conformidade com o Art. 32 da LDB (Lei nº 9.394/96) e Resolução CNE/CES nº 1/2001 para cursos de extensão e capacitação profissional.":"Certificate issued in conformity with Art. 32 of LDB (Law nº 9,394/96) and CNE/CES Resolution nº 1/2001 for extension courses and professional training.","Certificado não encontrado":"Certificate not found","Certificado não encontrado ou inválido":"Certificate not found or invalid","Certificado verificável em:":"Certificate verifiable at:",Certificados:qM,"Certificados Ativos":"Active Certificates","Certificados com QR code e verificação pública":"Certificates with QR code and public verification","Certificados de conclusão de cursos e trilhas":"Certificates of completion for courses and learning paths","Certificados digitais com QR code e verificação pública via URL única":"Digital certificates with QR code and public verification via unique URL","Certificados emitidos":"Certificates issued","Certificados emitidos pela Plataforma são validados por código de verificação único e representam a conclusão real dos módulos correspondentes. Qualquer tentativa de fraude resultará na revogação imediata do certificado.":"Certificates issued by the Platform are validated by a unique verification code and represent the actual completion of the corresponding modules. Any attempt at fraud will result in the immediate revocation of the certificate.","Certificados por Pilar":"Certificates by Pillar","Certificados que representam redução de emissões":"Certificates representing emissions reduction","Certificados são emitidos automaticamente após conclusão.":"Certificates are automatically issued upon completion.","Certificamos que":"This is to certify that",Certificação:"Certification","Certificação Digital":"Digital Certification","Certificação Institucional":"Institutional Certification","Certificação Institucional do Destino":"Destination Institutional Certification","Certificação apenas parcial":"Partial certification only",Certificações:"Certifications","Certificações Ambientais":"Environmental Certifications","Certificações ESG":"ESG Certifications","Certificações ESG, práticas sustentáveis e acessibilidade detectadas no site e em fontes públicas":"ESG certifications, sustainable practices, and accessibility detected on the website and in public sources","Certificações de destino sustentável":"Sustainable destination certifications","Certificações detectadas":"Certifications detected","Chamar bombeiros de outra cidade":"Call firefighters from another city","Chamar helicóptero de água":"Call water helicopter","Chat e relatórios com contexto do destino + Base de Conhecimento":"Chat and reports with destination context + Knowledge Base","ChatGPT (Conectores / Developer Mode)":"ChatGPT (Connectors / Developer Mode)",Chave:LM,"Chave canônica":"C
157anonical key","Checklist Pré-Cálculo":"Pre-Calculation Checklist","Checklist de licenças e documentos obrigatórios (CADASTUR, Alvará, AVCB, Sanitário, LGPD). Itens vencidos ou pendentes alimentam o indicador ENT_COMPLIANCE_RATE no diagnóstico.":"Checklist of mandatory licenses and documents (CADASTUR, Operating Permit, Fire Safety Certificate, Sanitary Permit, LGPD). Expired or pending items feed the ENT_COMPLIANCE_RATE indicator in the diagnosis.","Checklist legal e validação automática de CNPJ":"Legal checklist and automatic CNPJ validation","Checklist pré-cálculo: â¥60% dos indicadores com valor, sem indicadores duplicados":"Pre-calculation checklist: â¥60% of indicators with value, no duplicate indicators","Checkpoints aprovados":"Approved checkpoints","Checkpoints de governança":"Governance checkpoints","Chuva molha construções.":"Rain wets buildings.","Chuvas causaram deslizamentos na montanha!":"Rains caused landslides on the mountain!","Ciclo ContÃnuo":"Continuous Cycle","Ciclo fechado:":"Closed loop:","Ciclo ágil":"Agile cycle","Ciclo: {{v0}}":"Cycle: {{v0}}","Ciclos calculados":"Calculated cycles","Ciclovia + metrô leve":"Bike path + light rail","Ciclovias e bondinhos":"Bike paths and streetcars","Ciclovias e bondinhos!":"Bike paths and streetcars!","Cidade do Futuro":"City of the Future","Cidade limpa e bonita":"Clean and beautiful city","Cidade limpa e bonita!":"Clean and beautiful city!","Cidades inteligentes usam dados para melhorar a vida.":"Smart cities use data to improve life.","Cinzas na Serra":"Ashes in the Mountains","Cinzas no Sertão":"Ashes in the Hinterlands","Cisterna Comunitária":"Community Cistern","Cisterna e reflorestamento":"Cistern and reforestation","Cisternas captam e armazenam água da chuva.":"Cisterns collect and store rainwater.","Ciência e comunidade juntas! O projeto vira referência.":"Science and community together! The project becomes a reference.",Classificação:"Classification","Classificação: CONFIDENCIAL":"Classification: CONFIDENTIAL","Claude (Anthropic)":"Claude (Anthropic)","Claude (Claude.ai / Claude Desktop)":"Claude (Claude.ai / Claude Desktop)","Claude Sonnet 5.5":"Claude Sonnet 5.5","Client ID":"Client ID","Client Secret":"Client Secret","Clima & Conforto":"Climate & Comfort","Clima analisado":"Climate analyzed","Clima/Conforto":"Climate/Comfort","Clique abaixo para gerar suas recomendações personalizadas.":"Click below to generate your personalized recommendations.",'Clique em "Aceitar Termos" para liberar o acesso à plataforma.':'Click "Accept Terms" to gain access to the platform.','Clique em "Buscar Dados" para carregar dados oficiais das bases públicas.':'Click "Search Data" to load official data from public databases.','Clique em "Buscar agora" para consultar fontes públicas via Firecrawl.':'Click "Search now" to query public sources via Firecrawl.','Clique em "Buscar" para consultar IBGE/SIDRA.':'Click "Search" to consult IBGE/SIDRA.','Clique em "Executar Verificação" para iniciar.':'Click "Run Verification" to start.','Clique em "Gerar provas" para criar uma prova por pilar coberto.':'Click "Generate evidence" to create one piece of evidence per covered pillar.','Clique em "Nova Rodada" e selecione o destino que será avaliado.':'Click "New Round" and select the destination to be evaluated.','Clique em "Novo Post" para compartilhar com a comunidade.':'Click "New Post" to share with the community.','Clique em "Rodar todos" e o SISTUR coleta dados de Google, Booking, TripAdvisor, ANAC, Anatel, DATASUS, IBGE e demais fontes públicas em paralelo.':'Click "Run all" and SISTUR collects data from Google, Booking, TripAdvisor, ANAC, Anatel, DATASUS, IBGE and other public sources in parallel.',"Clique em cada etapa para ver detalhes do processo":"Click on each step to see process details","Clique em um alerta para ver detalhes e ações recomendadas.":"Click on an alert to see details and recommended actions.","Clique em um aluno para ver seu progresso detalhado.":"Click on a student to see their detailed progress.",'Clique em uma trilha para ver os detalhes e clique em "Matricular" para
157iniciar.':'Click on a trail to see the details and click "Enroll" to start.',"Clique no botão abaixo para criar um novo destino com busca automática no IBGE.":"Click the button below to create a new destination with automatic search in IBGE.","Clique no campo para editar o valor pré-preenchido":"Click the field to edit the prefilled value","Clique no lápis para editar cada seção. As mudanças são aplicadas imediatamente nas próximas conversas.":"Click the pencil to edit each section. Changes are applied immediately in subsequent conversations.","Clique no peso, tier ou escopo de qualquer indicador para editá-lo. A soma dos pesos por pilar deve totalizar 100% para um cálculo correto.":"Click on the weight, tier or scope of any indicator to edit it. The sum of weights per pillar must total 100% for a correct calculation.","Clique novamente no nó para fechar":"Click the node again to close","Clique novamente no ðï¸ para confirmar a exclusão":"Click ðï¸ again to confirm deletion","Clique para editar":"Click to edit","Clique para editar o nÃvel mÃnimo":"Click to edit the minimum level","Clique para selecionar":"Click to select","Clique para ver os indicadores":"Click to view indicators","Clique para visualizar":"Click to view","Cloud gerenciado (CDN global, SSL automático)":"Managed Cloud (global CDN, automatic SSL)","Cloudbeds (OAuth)":"Cloudbeds (OAuth)",Cobertura:UM,"Cobertura Telecom":"Telecom Coverage","Cobertura automática: {{v0}}%":"Automatic coverage: {{v0}}%","Cobertura de Saneamento":"Sanitation Coverage","Cobertura de coleta seletiva e destinação adequada. Fonte: SNIS. Periodicidade: anual.":"Selective waste collection and proper disposal coverage. Source: SNIS. Frequency: annual.","Cobertura de sinalização indicativa e interpretativa. Fonte: levantamento local. Provenance 1/5.":"Indicative and interpretative signage coverage. Source: local survey. Provenance 1/5.","Cobertura municipal":"Municipal coverage","Cobertura temática":"Thematic Coverage","Cobertura total atingida":"Full coverage achieved","Coerência numérica e revisão por agente":"Numerical coherence and agent review","Cole aqui o conteúdo bruto do relatório (markdown, texto extraÃdo de PDF, etc.)â¦":"Paste the raw report content here (markdown, text extracted from PDF, etc.)â¦","Cole o link no grupo da turma no WhatsApp para facilitar.":"Paste the link in the class group on WhatsApp for convenience.","Cole ou envie um relatório com no mÃnimo 30 caracteres.":"Paste or upload a report with at least 30 characters.",Coleta:BM,"Coleta de Dados":"Data Collection","Coleta de dados pode exigir múltiplas fontes":"Data collection may require multiple sources","Coleta e gestão de feedback de usuários":"User feedback collection and management","Coleta pelo gestor":"Collected by manager","Coletado de API oficial":"Collected from official API","Colete o máximo de tesouros e chegue à saÃda ðª no canto inferior direito do mapa. Quanto mais tesouros, melhor sua pontuação!":"Collect as many treasures as possible and reach the exit ðª in the bottom right corner of the map. The more treasures, the better your score!","Colete todos os 5 tesouros ecológicos escondidos no mapa! Cada um representa um recurso natural valioso do bioma.":"Collect all 5 ecological treasures hidden on the map! Each represents a valuable natural resource of the biome.",Coleção:"Collection","Coleção / soft brand":"Collection / soft brand","Coluna CSV":"CSV Column","Colunas:":"Columns:","Com 5 ou mais alunos ativos vinculados, sua mensalidade é isenta automaticamente!":"With 5 or more active students linked, your monthly fee is automatically waived!","Com VÃdeo":"With Video","Com conteúdo":"With content","Com conteúdo ({{v0}})":"With content ({{v0}})","Com o diagnóstico calculado, você poderá gerar um plano de desenvolvimento turÃstico personalizado usando a Mente Sistur.":"With the diagnosis calculated, you can generate a personalized tourism development plan using Sistur Mind.","Com o perfil preenchido, o sistema sugere trilhas e capacitações personalizadas.":"With a completed profile, the system suggests personalized trails and training.","Com prescrição EDU":"With EDU prescription","Com â¥50% dos indicadores preenchidos, o status é calculado. Em seguida gere o Relatório AI em 17 seções com plano 90 dias.":"With â¥50% of indicators filled, the status is calculated. Then generate the AI Report in 17 sections with a 90-day plan.","Com.:":"Comm.:","Combata a desertificação e proteja a riqueza única do semiárido brasileiro.":"Fight desertification and protect the unique richness of the Brazilian semi-arid region.","Combata a desertificação no semiárido.":"Fight desertification in the semi-arid region.","Combo de cursos":"Course Combo","CombustÃveis fósseis":"Fossil fuels","Comece avaliando um destino turÃstico para gerar insights e planos de ação.":"Start by assessing a tourism destination to generate insights and action plans.","Comece cadastrando seu primeiro curso de capacitação.":"Start by adding your first training course.","Comece cadastrando seu primeiro destino turÃstico.":"Start by registering your first tourism destination.","Comece cadastrando seu primeiro
157indicador.":"Start by registering your first indicator.","Comece pelo Essencial":"Start with the Essentials","Comece pelos planos de alta prioridade vinculados a alertas IGMA.":"Start with high-priority plans linked to IGMA alerts.","Comece por explorar o catálogo de cursos.":"Start by exploring the course catalog.","Comece sua jornada":"Start your journey","Comece uma nova aventura!":"Start a new adventure!","Comente para contribuir com a discussão.":"Comment to contribute to the discussion.","Comente, curta e denuncie conteúdos conforme necessário.":"Comment, like, and report content as needed.",Comentário:"Comment","Comentário (opcional)":"Comment (optional)","Comentário adicional (opcional)":"Additional comment (optional)","Comentário do professor:":"Instructor's comment:","Comentário geral sobre o diagnóstico.":"General comment about the diagnosis.","Comentário muito longo (máx. 4000)":"Comment too long (max. 4000)","Comentário removido":"Comment removed","Comentário vazio":"Empty comment",Comentários:"Comments","Comentários ({{v0}})":"Comments ({{v0}})","Comentários ancorados em pilares ou indicadores especÃficos, com responsável e status (aberto / resolvido). Use @ para mencionar pessoas da sua organização.":"Comments anchored to specific pillars or indicators, with assignee and status (open / resolved). Use @ to mention people in your organization.","Comentários do relatório":"Report comments","Comentários em thread com notificações em tempo real":"Threaded comments with real-time notifications",Comercial:FM,Começar:"Start","Começar curso base":"Start foundational course","Começar teste gratuito":"Start free trial","Comissão %":"Commission %","Comissão média ponderada":"Weighted average commission","Como Jogar":"How to Play","Como administrador, você gerencia todos os usuários da plataforma: aprovações, papéis, organizações e acessos.":"As an administrator, you manage all platform users: approvals, roles, organizations, and access.","Como aplicar os 6 princÃpios de Beni no meu plano de ação?":"How do I apply Beni's 6 principles to my action plan?","Como as regras se conectam e afetam o sistema":"How rules connect and affect the system","Como ativo a Mandala (MST) num diagnóstico?":"How do I activate the Mandala (MST) in a diagnosis?","Como ativo o acesso Empresarial para minha organização?":"How do I activate Enterprise access for my organization?","Como conectar":"How to connect","Como criar, calcular e interpretar diagnósticos no SISTUR":"How to create, calculate and interpret assessments in SISTUR","Como criar, calcular e interpretar diagnósticos territoriais":"How to create, calculate, and interpret territorial diagnoses","Como funciona a hierarquia RA â OE â AO?":"How does the RA â OE â AO hierarchy work?","Como funciona a monetização do assistente de IA.":"How the AI assistant's monetization works.","Como funciona a validação cruzada do relatório?":"How does cross-validation of the report work?","Como funciona a verificação de certificados?":"How does certificate verification work?","Como funciona o diagnóstico?":"How does the diagnosis work?","Como funciona o monitoramento de ciclos?":"How does cycle monitoring work?","Como funciona o perÃodo de avaliação?":"How does the evaluation period work?","Como funciona o pré-preenchimento de dados oficiais?":"How does the pre-filling of official data work?","Como funciona?":"How does it work?","Como funcionam as provas finais das trilhas formativas?":"How do the final exams of the training trails work?","Como funcionam as trilhas de aprendizagem?":"How do learning trails work?","Como jogar":"How to play","Como o IQA da ANA é integrado ao diagnóstico?":"How is ANA's IQA integrated into the diagnosis?","Como o SISTUR aplica a teoria sistêmica do turismo de Mario Beni: pilares, regras IGMA e interpretação territorial.":"How SISTUR applies Mario Beni's systemic tourism theory: pillars, IGMA rules, and territorial interpretation.","Como o SISTUR funciona":"How SISTUR works","Como o aluno acessa as atividades atribuÃdas pelo professor?":"How does the student access activities assigned by the professor?","Como o aluno será avaliado e nota mÃnima":"How the student will be evaluated and minimum grade","Como o professor acompanha o de
157sempenho da turma em uma atividade?":"How does the professor monitor class performance in an activity?","Como o professor agenda uma prova ou trilha para a turma?":"How does the professor schedule an exam or trail for the class?","Como professor, você tem um código e link de convite únicos. Use-os para vincular alunos à sua conta e gerenciar turmas.":"As a professor, you have a unique invite code and link. Use them to link students to your account and manage classes.","Como são geradas as prescrições de cursos?":"How are course prescriptions generated?","Como você prefere aprender?":"How do you prefer to learn?","Comparar rodadas":"Compare rounds",Comparativo:GM,"Comparativo com Rodada Anterior":"Comparison with Previous Round","Comparativo de Destinos":"Destination Comparison","Comparativo entre ciclos":"Comparison across cycles","Comparativo entre todas as turmas ativas da organização, ordenadas por XP médio. Inclui taxa de conclusão e alunos em risco para apoiar decisões pedagógicas.":"Comparison of all active classes in the organization, ranked by average XP. Includes completion rate and at-risk students to support instructional decisions.","Comparativo por pilar":"Comparison by pillar","Comparação anônima contra {{v0}} empreendimentos do mesmo segmento (categoria + faixa de classificação ±1). Sem nomes, sem ranking.":"Anonymous comparison against {{v0}} establishments in the same segment (category + classification range ±1). No names, no ranking.","Comparação anônima entre empreendimentos Enterprise da mesma organização. Sem ranking público â uso interno apenas.":"Anonymous comparison between Enterprise businesses within the same organization. No public ranking â internal use only.","Comparação de cenários (ano {{v0}})":"Scenario comparison (year {{v0}})","Comparação entre destinos":"Comparison between destinations","Comparação entre rodadas e evolução temporal":"Comparison between rounds and temporal evolution","Comparação por Pilar":"Comparison by Pillar","Compare a evolução entre pilares para identificar desequilÃbrios.":"Compare the evolution between pillars to identify imbalances.","Compare as notas dos pilares RA, OE e AO do último diagnóstico e sugira prioridades de ação.":"Compare the scores of the RA, OE, and AO pillars from the last diagnosis and suggest action priorities.","Compartilhado com a Organização":"Shared with the Organization",Compartilhar:VM,"Compartilhar com alunos":"Share with students","Compartilhar por link":"Share by link","Compartilhar progresso":"Share progress","Compartilhe conhecimento, tire dúvidas e conecte-se com a comunidade":"Share knowledge, get answers and connect with the community","Compartilhe seus pensamentos, perguntas ou conhecimento...":"Share your thoughts, questions or knowledge...","CompatÃvel com prazos de editais":"Compatible with public notice deadlines","Compensações ajudam, mas o dano já foi feito.":"Compensations help, but the damage has been done.",Competências:"Competencies",Complementar:$M,"Complementar dados manualmente":"Manually supplement data","Complementar indicadores não cobertos pelas fontes oficiais":"Supplement indicators not covered by official sources","Completar Perfil":"Complete Profile","Complete cursos e trilhas para obter seus certificados":"Complete courses and learning paths to earn your certificates","Complete o preenchimento dos indicadores via formulário ou importe um arquivo CSV com os dados.":"Finish entering the indicator data using the form or import a CSV file with the data.","Complete seu Perfil de Aprendizado":"Complete Your Learning Profile","Complete seu perfil para gerar recomendações.":"Complete your profile to generate recommendations.","Complete todos os módulos de uma trilha e, quando houver, passe na prova final.":"Complete all modules of a trail and, if applicable, pass the final exam.",Completo:HM,"Completos + Intersetoriais":"Complete + Intersectoral","Completou seu primeiro treinamento":"Completed your first training","Completou uma trilha de aprendizagem":"Completed a learning trail",Completude:WM,Compliance:QM,"Compliance & Anti-Fraude â Relatório de Sessões":"Compliance & Anti-Fraud â Session Report","Compliance & Segurança":"Compliance & Security",Compostagem:KM,"Composto a partir de dados oficiais RAIS/CAGED + PIB municipal IBGE.":"C
157omposed from official RAIS/CAGED data + IBGE municipal GDP.","Compra avulsa de perguntas adicionais, usadas quando a cota mensal do plano acabar.":"One-off purchase of additional questions, used when the monthly plan quota runs out.","Comprar créditos":"Buy credits","Comprar terreno para construir um condomÃnio de luxo":"Buy land to build a luxury condominium","Comprar água de caminhão":"Buy water from a truck",Comunidade:YM,"Comunidade Sustentável":"Sustainable Community","Comunidade com moderação":"Moderated community","Comunidade se uniu e salvou a floresta!":"Community united and saved the forest!","Comércio entre paÃses vizinhos":"Trade between neighboring countries",Conceder:JM,"Conceder créditos":"Grant credits","Conceder créditos do Professor Beni":"Grant Professor Beni's credits","Concentre-se e vá com calma!":"Stay focused and take your time!","Concessão administrativa":"Administrative concession","Concessão criada":"Grant created",Concessões:"Grants","Concessões vigentes":"Current grants","Concha de espécie protegida":"Shell of a protected species","Conclua 1 módulo de qualquer treinamento hoje.":"Complete 1 module of any training today.","Conclua 2 treinamentos no mesmo dia.":"Complete 2 trainings on the same day.","Conclua 3 etapas de trilhas/módulos hoje.":"Complete 3 stages of trails/modules today.","Conclua o curso base":"Complete the foundational course","Conclua o login SISTUR e autorize o acesso; as ferramentas aparecem na lista do agente.":"Complete SISTUR login and authorize access; the tools appear in the agent's list.","Conclua primeiro o curso":"Complete the course first",Concluir:XM,"Concluir o diagnóstico antes de matricular a equipe â assim as prescrições aparecem corretamente.":"Complete the diagnosis before enrolling the team â this way prescriptions appear correctly.",Conclusão:"Completion","Conclusão de Tarefas":"Task Completion","Conclusão média":"Average completion",Conclusões:"Completions","Conclusões agregadas de todos os alunos.":"Aggregated completions across all students.",ConcluÃdas:"Completed",ConcluÃdo:"Completed","ConcluÃdo em {{v0}}":"Completed on {{v0}}","ConcluÃdo â trilhas completas exigem plano":"Completed â full trails require a plan",ConcluÃdos:"Completed","ConcluÃdos ({{v0}})":"Completed ({{v0}})",Concorrentes:ZM,"Concorrentes Automáticos":"Automatic Competitors","Concorrentes no raio":"Competitors within radius",Conectado:eN,"Conectando assistentes de IA ao SISTUR (MCP)":"Connecting AI assistants to SISTUR (MCP)","Conectar PMS":"Connect PMS","Conectar fragmentos de habitat":"Connect habitat fragments","Conecte este projeto a oportunidades de investimento, consórcios regionais, alertas do observatório e issues do diagnóstico.":"Connect this project to investment opportunities, regional consortia, observatory alerts and assessment issues.","Conecte fenômenos naturais e ecossistemas":"Connect natural phenomena and ecosystems",Conectividade:aN,"Conectividade Aérea":"Air Connectivity","Conectividade Telecom":"Telecom Connectivity","Conectividade aérea analisada":"Air connectivity analyzed","Conectividade telecom analisada":"Telecom connectivity analyzed","Conectores PMS":"PMS Connectors","Conexão bloqueada pelo navegador":"Connection blocked by the browser","Conexão removida.":"Connection removed.","Conexões Estimadas":"Estimated Connections","Conexões crescendo â monitore de perto":"Growing connections â monitor closely","Conferir conformidade":"Check compliance","Conferir relatório":"Check report","Conferência de dados":"Data verification","Conferência de dados â detalhes":"Data verification â details","Confiab.":"Reliab.","Confiabilidade: 1/5 â â Sem API pública disponÃvel. Requer inserção pelo operador.":"Reliability: 1/5 â â No public API available. Requires manual input by operator.","Confiabilidade: 5/5 â â Obtidos automaticamente de APIs públicas.":"Reliability: 5/5 â â Automatically obtained from public APIs.",Confiança:"Confidence","Configurando...":"Configuring...",Configurar:oN,"Configurar Perfil":"Configure Profile","Configurar Projeto":"Configure Project","Configuração ausente":"Missing configuration","Configuração salva":"Configuration saved",Configurações:"Settings","Configurações de moderação salvas!":"Moderation settings saved!","Configurações do
157Sistema":"System Settings","Configure a rodada de avaliação":"Configure the evaluation round","Configure as polÃticas de moderação automática para o Social Turismo":"Configure automatic moderation policies for Social Turismo","Configure as regras abaixo":"Configure the rules below","Configure as regras e associe a um curso LMS":"Configure rules and associate with an LMS course","Configure as regras para criação de provas.":"Configure rules for test creation.","Configure logo, cabeçalho, rodapé e aparência dos relatórios exportados":"Configure the logo, header, footer and appearance of exported reports","Configure nota mÃnima para aprovação.":"Configure minimum passing grade.","Configure quais tipos de diagnóstico esta organização pode executar. Ambos podem ser habilitados simultaneamente.":"Configure which types of diagnosis this organization can execute. Both can be enabled simultaneously.","Configure quando a atividade abre, quem recebe e (para provas) regras especÃficas.":"Configure when the activity opens, who receives it, and (for tests) specific rules.","Configure quem pode acessar este treinamento":"Configure who can access this training","Configure seu perfil de aprendizado":"Set up your learning profile","Configure sua conta e conheça a plataforma":"Set up your account and get to know the platform","Configure suas preferências para recomendações personalizadas":"Set your preferences for personalized recommendations","Confirma recebimento de solicitação":"Confirms receipt of request",Confirmado:iN,Confirmados:tN,"Confirmar Envio":"Confirm Submission","Confirmar Fraude":"Confirm Fraud","Confirmar Nova Senha":"Confirm New Password","Confirmar Senha":"Confirm Password","Confirmar cancelamento":"Confirm cancellation","Confirmar exclusão":"Confirm deletion","Confirmar importação":"Confirm import","Confirme a nova senha":"Confirm the new password","Confirme seu email antes de entrar. Verifique sua caixa de entrada.":"Confirm your email before logging in. Check your inbox.","Conformidade Legal":"Legal Compliance","Conformidade Legal â {{v0}}":"Legal Compliance â {{v0}}",Conforto:rN,"Conforto Climático":"Climate Comfort","Confrontar os madeireiros diretamente":"Confront the loggers directly","Congelamento (snapshot) dos dados validados":"Freezing (snapshot) of validated data","Conhecer o SISTUR EDU":"Explore SISTUR EDU","Conhecer planos e preços":"Explore plans and pricing","Conhecimento é a melhor proteção para as futuras gerações.":"Knowledge is the best protection for future generations.","Conjunto otimizado de indicadores":"Optimized set of indicators",Conquistada:sN,Conquistas:nN,"Conquiste uma badge":"Earn a badge","Conseguiu um acordo, mas é arriscado...":"Reached an agreement, but it's risky...","Conselho Municipal de Turismo":"Municipal Tourism Council","Conselho, plano e orçamento de turismo":"Tourism council, plan and budget",Consequências:"Consequences","Conservação e Preservação":"Conservation and Preservation","Consolidar Reputação Multi-OTA":"Consolidate Multi-OTA Reputation","Consolidação ponderada por número de quartos (UH). Os indicadores, gargalos e prescrições mostrados nas abas abaixo agregam todas as unidades â filtros por unidade entram em fase seguinte.":"Consolidation weighted by number of rooms (UH). Indicators, bottlenecks, and prescriptions shown in the tabs below aggregate all units â unit filters will be available in the next phase.","Consome o trial":"Consumes the trial","Construa, explore e organize â e descubra se você é Explorador, Construtor, Guardião ou Cientista!":"Build, explore and organize â and discover whether you are an Explorer, Builder, Guardian or Scientist!","Construir coisas novas rápido":"Build new things fast","Construir muro de arrimo":"Build a retaining wall","Construir um muro rápido":"Build a wall quickly",Construção:"Construction","Construção Express":"Express Construction","Construções excessivas:":"Excessive construction:","Constrói Demais":"Builds Too Much","Constrói rápido, mas com custo!":"Builds fast, but at a cost!",Constância:"Constancy","Consulta sites oficiais (prefeitura, secretaria de turismo) para sugerir eventos de {{v0}}. Revise antes de importar.":"Consult official websites (city hall, tourism secretariat) to suggest {{v0}} events. Review before importing.",Consultado:cN,"Consultando ANAC...":"Consulting ANAC...","Consultando Anatel...":"Consulting Anatel...","Consultando DATASUS...":"Consulting DATASUS...","Consultando...":"Looking up...","Consulte a ANA (Agência Nacional de Ãguas) ou órgão ambiental estadual. IQA de pontos turÃsticos (praias, rios, cachoeiras).":"Consult ANA (National Water Agency) or state environmental agency. Water Quality Index of tourist spots (beaches, rivers, waterfalls).","Consulte a Secretaria de Segurança Pública estadual. Taxa de crimes por 100 mil habitantes.":"Consult the State Public Security Department. Crime rate per 100,000 inhabitants.","Consulte dados do IBGE/SID
157RA (Censo Demográfico) ou a prefeitura. % de domicÃlios com coleta regular de lixo.":"Consult IBGE/SIDRA data (Demographic Census) or the city hall. % of households with regular garbage collection.","Consulte o DATASUS (TabNet) ou a Secretaria de Saúde. Ãbitos de menores de 1 ano ÷ nascidos vivos à 1.000.":"Consult DATASUS (TabNet) or the Health Department. Deaths of children under 1 year ÷ live births à 1,000.","Consulte o IBGE (Produto Interno Bruto dos MunicÃpios). PIB municipal ÷ população estimada.":"Consult IBGE (Municipal Gross Domestic Product). Municipal GDP ÷ estimated population.","Consulte o ICMBio ou a Secretaria de Meio Ambiente local. Ãrea de unidades de conservação ÷ área total do municÃpio à 100.":"Consult ICMBio or the local Environmental Department. Area of conservation units ÷ total area of the municipality à 100.","Consulte o ICMBio, SNUC ou órgão ambiental estadual. Calcule: (área de UCs ÷ área total do municÃpio) à 100.":"Consult ICMBio, SNUC or state environmental agency. Calculate: (area of CUs ÷ total area of the municipality) à 100.","Consulte o IPHAN (federal) e órgão de patrimônio estadual/municipal. Conte bens tombados e registrados.":"Consult IPHAN (federal) and state/municipal heritage agency. Count listed and registered assets.","Consulte o SNIS (Sistema Nacional de Informações sobre Saneamento) ou a concessionária local. Dado disponÃvel via IBGE/SID
157RA (Censo).":"Consult SNIS (National Sanitation Information System) or the local concessionaire. Data available via IBGE/SIDRA (Census).","Consulte o STN (Tesouro Nacional) via FINBRA/SICONFI. Receita tributária própria ÷ receita total à 100.":"Consult STN (National Treasury) via FINBRA/SICONFI. Own tax revenue ÷ total revenue à 100.","Consulte o portal do INEP (ideb.inep.gov.br). Busque pelo nome do municÃpio e selecione anos iniciais ou finais.":"Consult the INEP portal (ideb.inep.gov.br). Search by municipality name and select early or late years.","Consulte o site da ANAC ou INFRAERO. Conte voos comerciais regulares semanais no aeroporto mais próximo do destino.":"Consult the ANAC or INFRAERO website. Count regular weekly commercial flights at the airport closest to the destination.","Consulte seu PMS: (quartos vendidos ÷ quartos disponÃveis) à 100, no perÃodo analisado. Considere a média dos últimos 12 meses.":"Consult your PMS: (rooms sold ÷ rooms available) à 100, for the analyzed period. Consider the average of the last 12 months.","Consulte seus resultados e gerencie recursos":"View your results and manage appeals","Consultoria Especializada":"Specialized Consulting","Consumir mais plástico":"Consume more plastic","Consumo Energético/UH":"Energy Consumption/UH","Consumo de Energia":"Energy Consumption","Consumo de Ãgua por Hóspede":"Water Consumption per Guest","Consumo de Ãgua/Hóspede":"Water Consumption/Guest","Consumo do mês atual, créditos disponÃveis e liberações ilimitadas. Clique nos tÃtulos das colunas para ordenar, filtre por organização e adicione créditos direto na linha ou para vários de uma vez.":"Current month's consumption, available credits and unlimited releases. Click on column headers to sort, filter by organization, and add credits directly in line or for multiple at once.",Consórcio:"Consortium","Consórcio criado":"Consortium created","Consórcio não encontrado ou sem permissão de acesso.":"Consortium not found or no access permission.",Consórcios:"Consortia","Consórcios Regionais":"Regional Consortia","Consórcios em que participo":"Consortia I participate in","Consórcios regionais":"Regional consortia","Conta Stays":"Stays Account","Conta criada com sucesso!":"Account created successfully!","Conta criada e termos aceitos":"Account created and terms accepted","Contador no chat; pacotes na página Assinatura":"Counter in chat; packages on Subscription page","Contagem (unidades)":"Count (units)","Contagem absoluta sem casas decimais (eventos, voos, unidades).":"Absolute count without decimal places (events, flights, units).","Contagem de indicadores em cada combinação":"Indicator count in each combination","Contaminação quÃmica grave!":"Severe chemical contamination!","Contaminação quÃmica!":"Chemical contamination!",Contato:dN,"Conte os canais de venda ativos: OTAs (Booking, Expedia, Decolar), agências de viagem parceiras, GDS (Amadeus, Sabre), site próprio com motor de reservas, redes sociais com link de reserva, centrais de atendimento, marketplaces locais.":"Count active sales channels: OTAs (Booking, Expedia, Decolar), partner travel agencies, GDS (Amadeus, Sabre), own website with booking engine, social media with booking link, call centers, local marketplaces.","Conte os documentos legais ativos: Alvará, CNPJ, CADASTUR, licenças ambientais, certificados de segurança. Verifique na pasta de documentação da empresa.":"Count active legal documents: Permit, CNPJ, CADASTUR, environmental licenses, safety certificates. Check in the company's documentation folder.","Conte os segmentos turÃsticos ativos: Sol e Praia, Ecoturismo, Cultural, Aventura, Negócios, Gastronômico, Rural, Religioso, Saúde, etc.":"Count active tourism segments: Sun and Beach, Ecotourism, Cultural, Adventure, Business, Gastronomic, Rural, Religious, Health, etc.","Conte um pouco do seu contexto...":"Tell us a bit about your context...","Conte-nos mais sobre sua decisão...":"Tell us more about your decision...","Conte-nos sobre sua atuação profissional":"Tell us about your professional work",Contexto:lN,"Contexto & Conectividade do Destino":"Destination Context & Connectivity","Contexto (persona, audiência, tom, foco, prioridades, restrições)":"Context (persona, audience, tone, focus, priorities, restrictions)","Contexto Municipal":"Municipal Context","Contexto atualizado â vale para os próximos relatórios.":"Context updated â valid for upcoming reports.","Contexto criado":"Context created","Contexto da conversa":"Conversation context","Contexto dinâmico enviado a cada chamada":"Dynamic context sent with each call","Contexto do destino + Base de Conhecimento":"Destination Context + Knowledge Base","Contexto do destino carregado":"Destination context loaded","Contexto editorial especÃfico desta organização.":"Editorial context specific to this organization.","Contexto removido":"Context removed","Contexto territorial, sociedade, meio ambiente, dados demográficos e segurança pública":"Territorial context, society, environment, demographic data, and public safety","Contextos globais não podem ser removidos â apenas desativados.":"Global contexts cannot be removed â only deactivated.",Contexts:uN,"Contextualiza indicadores com metas nacionais":"Contextualizes indicators with national goals",Conteúdo:"Content","Conteúdo (markdown injetado no prompt)":"Content (markdown injected into prompt)","Conteúdo (markdown)":"Content (markdown)","Conteúdo Sob Demanda":"On Demand Content","Conteúdo deve ter no máximo 10.000 caracteres":"Content must be a maximum of 10,000 characters","Conteúdo deve ter pelo menos 10 caracteres":"Content must be at least 10 characters","Conteúdo disponÃvel nos planos":"Content available in plans","Conteúdo do relatório":"Report content","Conteúdo educacional":"Educational content","Conteúdo não relacionado":"Unrelated content","Conteúdo ofensivo ou inadequado":"Offensive or inappropriate content","Conteúdo por Pilar":"Content by Pillar","Conteúdo principal: cards, tabelas e formulários especÃficos de cada módulo.":"Main content: cards, tables, and specific forms for each module.","Conteúdo profissional":"Professional content","Conteúdo profissional genérico":"Generic professional content","Conteúdo sexual":"Sexual content","Conteúdo sexual gráfico":"Graphic sexual content","Conteúdo turÃstico":"Tourism content","Conteúdos atribuÃdos pelo professor aparecerão automaticamente.":"Content assigned by the professor will appear automatically.","Conteúdos audiovisuais para aprofundamento":"Audiovisual content for in-depth study","Conteúdos audiovisuais para aprofundamento temático":"Audiovisual content for in-depth exploration of topics","Continua verificação":"Continue verification",Continuar:mN,"Continuar Fluxo Guiado":"Continue Guided Workflow","Continuar Respondendo":"Continue Answering","Continuar a construção e ignorar os protestos":"Continue construction and ignore protests","Continuar com Apple":"Continue with Apple","Continuar com Google":"Continue with Google","Continuar lucrando com o esquema":"Continue profiting from the scheme","Continuar para Cálculo":"Continue to Calculation","Continuar preenchimento":"Continue data entry","Continue de onde parou":"Pick up where you left off","Continue de onde você parou":"Continue from where you left off","Controle como você aparece em posts públicos do fórum":"Control how you appear in public forum posts","Controle de Acesso":"Acce
157ss Control","Controle de versão semântico (MAJOR.MINOR.PATCH)":"Semantic versioning (MAJOR.MINOR.PATCH)","Controlou, mas custou caro e demorou...":"Controlled it, but it was expensive and took a long time...","Conversa enviada por e-mail":"Conversation sent by email","Conversa vazia":"Empty conversation",Conversas:pN,"Conversas diretas entre alunos e professores.":"Direct conversations between students and instructors.","Conversas e pastas":"Conversations and folders",Conversão:"Conversion","Conversão manual pelo painel comercial":"Manual conversion via commercial panel",Converter:gN,"Converter metade para soja como compromisso econômico":"Convert half to soy as an economic commitment",Convertidos:hN,"Convidados, aceitos e recusados.":"Invited, accepted, and rejected.",Convidar:fN,"Convidar estudantes":"Invite students","Convidar municÃpio":"Invite municipality","Convidar por e-mail":"Invite by email","Convide 5 estudantes e ganhe isenção na mensalidade enquanto mantiver 5+ alunos ativos.":"Invite 5 students and get a tuition waiver as long as you maintain 5+ active students.","Convite pendente para o seu municÃpio":"Pending invitation for your municipality","Convites para Consórcio":"Consortium Invitations","Conviver com a seca, não combatê-la. Mudança de paradigma!":"Live with drought, don't fight it. Paradigm shift!",Coordenadas:vN,"Coordenação SISTUR":"SISTUR Coordination","Copiar Link":"Copy Link","Copiar URL":"Copy URL","Copiar código":"Copy code","Copiar link":"Copy link","Copiar link de convite":"Copy invitation link","Cor primária":"Primary color","Corajoso, mas perigoso. Você encontra evidências importantes, mas se expõe a riscos.":"Brave, but dangerous. You find important evidence, but expose yourself to risks.",Corporativo:bN,"Corporativo / Convênio":"Corporate / Agreement","Corredores ecológicos permitem o fluxo genético entre populações isoladas.":"Ecological corridors allow genetic flow between isolated populations.","Correndo Atrás do PrejuÃzo":"Catching Up on Losses","Correspondência exata de pilar: cursos de RA só são prescritos para indicadores RA, e assim por diante.":"Exact pillar match: RA courses are only prescribed for RA indicators, and so on.",Correta:AN,"Correção de Questões Dissertativas":"Correction of Essay Questions","Corrigido na auditoria":"Corrected during the audit","Corrigidos automaticamente. Aprovação a partir da nota mÃnima definida no curso. Possuem banco de questões versionado e sorteio aleatório.":"Automatically graded. Approval based on the minimum score defined in the course. They have a versioned question bank and random drawing.","Corrigidos por RPC com auxÃlio de IA + revisão humana opcional. Permitem recurso (appeal) em prazo determinado.":"Graded by RPC with AI assistance + optional human review. Allow appeal within a specified period.","Corrigir indicador":"Correct indicator","Corrigir valor do indicador":"Correct indicator value","Corrija o valor antes de salvar":"Correct the value before saving","Corrija os erros de validação antes de salvar":"Correct validation errors before saving",Cota:yN,"Cota do plano":"Plan quota","Cota mensal":"Monthly quota","Cota mensal â créditos do usuário â créditos da org":"Monthly quota â user credits â org credits","Cotas do perÃodo (top consumidores)":"Period quotas (top consumers)","Cotas e créditos do Professor Beni":"Professor Beni's quotas and credits","Credenciais OAuth Cloudbeds não configuradas. Conexão salva como pendente â ative depois.":"Cloudbeds OAuth credentials not configured. Connection saved as pending â activate later.","Credenciais são criptografadas e acessÃveis apenas pelo serviço de sincronização (RLS service_role).":"Credentials are encrypted and accessible only by the synchronization service (RLS service_role).","Crescendo â considere Ãndices e limpeza":"Growing â consider indexes and cleanup","Crescer sem planejar é perigoso.":"Growing without planning is dangerous.","Crescimento econômico rápido":"Rapid economic growth","Crescimento significativo â avalie upgrade":"Significant growth â evaluate upgrade","Cria estruturas incrÃveis":"Creates incredible structures","Cria infraestrutura para todos":"Creates infrastru
157cture for everyone","Cria uma prova por pilar coberto pelos treinamentos (20 questões, 70% nota mÃnima, 60 min). Você pode pular e gerar depois.":"Creates a test per pillar covered by the trainings (20 questions, 70% minimum score, 60 min). You can skip and generate later.",'Cria uma prova por pilar coberto pelos treinamentos (20 questões, 70% nota mÃnima, 60 min, até 2 tentativas). Opcional â você pode gerar depois pelo botão "Gerar provas" no detalhe da trilha.':'Creates a test per pillar covered by the trainings (20 questions, 70% minimum score, 60 min, up to 2 attempts). Optional â you can generate it later using the "Generate tests" button in the trail details.',"Cria uma tarefa em um projeto existente, em nome do usuário conectado.":"Creates a task in an existing project, on behalf of the logged-in user.","Cria uma tarefa em um projeto existente, no nome do usuário autenticado.":"Creates a task in an existing project, under the name of the authenticated user.","Criado em":"Created on","Criado em {{date}}":"Created on {{date}}","Criando conta...":"Creating account...","Criando projeto...":"Creating project...","Criando...":"Creating...",Criar:SN,"Criar Conta":"Create Account","Criar Destino":"Create Destination","Criar Diagnósticos":"Create Diagnostics","Criar Fase":"Create Phase","Criar Indicador":"Create Indicator","Criar Marco":"Create Milestone","Criar Nova Sala":"Create New Room","Criar Novo Post":"Create New Post","Criar Parque":"Create Park","Criar Post":"Create Post","Criar Primeira Rodada":"Create First Round","Criar Primeiro Projeto":"Create First Project","Criar Projeto":"Create Project","Criar Projeto a partir do Diagnóstico":"Create Project from Assessment","Criar Questão":"Create Question","Criar Regras de Exame":"Create Exam Rules","Criar Tarefa":"Create Task","Criar Trilha":"Create Learning Path","Criar Trilha com Sugestões":"Create Learning Path with Suggestions","Criar brigada voluntária de combate a incêndios":"Create a volunteer fire brigade","Criar cadeia produtiva de produtos da caatinga":"Create a productive chain for Caatinga products","Criar conselho gestor com representantes de cada setor":"Create a management council with representatives from each sector","Criar consórcio / região turÃstica":"Create consortium / tourist region","Criar contexto":"Create context","Criar contexto para uma organização":"Create context for an organization","Criar cooperativa de energia solar comunitária":"Create a community solar energy cooperative","Criar cooperativa de produtores orgânicos do cerrado":"Create a cooperative of Cerrado organic producers","Criar corredor de proteção ao longo dos cursos d'água":"Create a protection corridor along watercourses","Criar e notificar":"Create and notify","Criar escola de convivência com o semiárido":"Create a school for living with the semi-arid region","Criar evento da turma":"Create class event","Criar fundo de pagamento por serviços ambientais":"Create a fund for payment for environmental services","Criar jardim botânico comunitário do cerrado":"Create a community Cerrado botanical garden","Criar marca":"Create brand","Criar marca de produtos do cerrado com a comunidade":"Create a Cerrado product brand with the community","Criar novo":"Create new","Criar outro destino":"Create another destination","Criar planos de ação":"Create action plans","Criar primeira fase":"Create first phase","Criar primeiro treinamento":"Create first training","Criar programa de monitoramento dos recifes de coral":"Create a coral reef monitoring program","Criar programa de palma forrageira para o gado":"Create a forage palm program for cattle","Criar programa de restauração das áreas de altitude":"Create restoration program for high-altitude areas","Criar programa nacional de restauração de bacias do cerrado":"Create national restoration program for Cerrado basins","Criar projeto":"Create project","Criar prova":"Create test","Criar rede de escolas do semiárido em todo o Nordeste":"Create network of semi-arid schools throughout the Northeast","Criar reserva de patr
157imônio natural da caatinga":"Create natural heritage reserve for the Caatinga",'Criar selo "Pescado Sustentável" para todo o litoral':'Create "Sustainable Fish" label for the entire coast','Criar selo "Sabor da Caatinga" para os produtos':'Create "Caatinga Flavor" label for products',"Criar sistema de monitoramento por drones e satélites":"Create monitoring system using drones and satellites","Criar sua conta":"Create your account","Criar tarefa":"Create task","Criar tarefa de projeto":"Create project task","Criar trilha":"Create learning path","Criar trilha com essas sugestões":"Create learning path with these suggestions","Criar trilha com sugestões":"Create learning path with suggestions","Criar um hub de tecnologia oceânica na vila":"Create an oceanic technology hub in the village","Criar um post":"Create a post","Criar um programa de educação ambiental para toda a região":"Create an environmental education program for the entire region","Criar um programa permanente de reciclagem":"Create a permanent recycling program","Criar um projeto":"Create a project","Criar uma Reserva Extrativista com proteção federal":"Create an Extractive Reserve with federal protection","Criar uma atribuição":"Create an assignment","Criar uma sala":"Create a room","Criar uma área marinha protegida com pesca artesanal":"Create a marine protected area with artisanal fishing","Criar universidade da caatinga com pesquisa e extensão":"Create a Caatinga university with research and outreach","Criar área protegida":"Create protected area",Criação:"Creation","Criação automática ou manual pelo gestor":"Automatic or manual creation by the manager","Criação de desertos artificiais":"Creation of artificial deserts","Criação de rodadas (rounds) com perÃodo de coleta definido":"Creation of rounds with defined collection period","Criação, aplicação e correção de provas":"Creation, application, and correction of tests",Criações:"Creations","Crie e edite capacitações no catálogo de treinamentos.":"Create and edit training courses in the training catalog.","Crie e gerencie badges concedidas aos alunos. Use códigos estáveis (ex:":"Create and manage badges awarded to students. Use stable codes (e.g.:","Crie e gerencie organizações para agrupar usuários.":"Create and manage organizations to group users.","Crie e gerencie projetos baseados em diagnósticos e relatórios":"Create and manage projects based on assessments and reports","Crie percursos com etapas, pré-requisitos e gatilhos por status do diagnóstico.":"Create paths with stages, prerequisites and triggers based on diagnostic status.","Crie projetos vinculados a planos de ação. Organize em fases, milestones e tarefas. Acompanhe o progresso e associe a diagnósticos especÃficos.":"Create projects linked to action plans. Organize into phases, milestones, and tasks. Track progress and associate with specific diagnostics.","Crie questões de múltipla escolha vinculadas a pilares e temas.":"Create multiple-choice questions linked to pillars and themes.","Crie seu primeiro projeto baseado em um diagnóstico calculado e relatório gerado.":"Create your first project based on a calculated assessment and a generated report.","Crie sua conta para acessar o SISTUR":"Create your account to access SISTUR","Crie sua primeira sala para organizar alunos e atividades.":"Create your first room to organize students and activities.","Crie trilhas formativas agrupando treinamentos para seus públicos-alvo.":"Create learning paths by grouping training for your target audiences.","Crie turmas com nome, disciplina e perÃodo. Matricule seus alunos referenciados nas salas para organizar o conteúdo por grupo.":"Create classes with name, subject, and period. Enroll your referred students in classes to organize content by group.","Crie turmas organizadas por disciplina e perÃodo para gerenciar seus alunos e atribuir conteúdo de forma estruturada.":"Create classes organized by subject and period to manage your students and assign content in a structured way.","Crie uma conta para um novo membro da sua organização.":"Create an account for a new member of your organization.","Crie uma nova rodada de avaliação para um destino turÃstico.":"Create a new assessment roun
157d for a tourism destination.","Crie uma sala para começar a ver métricas dos seus alunos.":"Create a classroom to start viewing your students' metrics.",'Crie uma tarefa no projeto "Revitalização do Centro Histórico" com o tÃtulo "Revisar indicadores de sinalização" e prioridade alta.':'Create a task in the project "Historic Center Revitalization" with the title "Review signage indicators" and high priority.',"Crie uma trilha agrupando treinamentos para um percurso estruturado de capacitação.":"Create a learning path by grouping training into a structured development program.","Crie uma turma para visualizar métricas agregadas aqui.":"Create a class to view aggregated metrics here.","Crie, edite ou remova marcas/redes. As unidades de cada diagnóstico empresarial são associadas à marca nesta etapa.":"Create, edit, or remove brands/chains. The units of each business diagnosis are associated with the brand at this stage.","Crise de Poluição":"Pollution Crisis","Cristal formado ao longo de milênios":"Crystal formed over millennia",Critério:"Criterion","Critério (texto livre)":"Criterion (free text)","Critério:":"Criterion:","Critérios com pontuação e descritores por nÃvel. Total:":"Criteria with scores and descriptors per level. Total:","Critérios de Aprovação":"Approval Criteria","Critérios de Avaliação":"Evaluation Criteria","Critérios de avaliação":"Evaluation criteria","Cronograma detalhado, recursos e orçamento":"Detailed schedule, resources and budget","Crustáceo essencial para a cadeia alimentar do mangue":"Crustacean essential for the mangrove food chain","Crustáceo indicador ambiental":"Environmental indicator crustacean","Cruza demanda orgânica, eventos locais e ADR mensal para mapear picos e baixas tarifárias":"Cross-references organic demand, local events, and monthly ADR to map tariff peaks and lows","Cruzamento de todos os 96 indicadores":"Cross-referencing of all 96 indicators","Créditos (quantidade de perguntas)":"Credits (number of questions)","Créditos Beni":"Beni Credits","Créditos adicionados":"Credits added","Créditos ativos":"Active credits","Créditos compartilhados por toda a organização":"Credits shared across the entire organization","Créditos concedidos":"Credits granted","Créditos da organização":"Organization credits","Créditos de carbono são instrumentos de mercado para compensar emissões de COâ.":"Carbon credits are market instruments to offset COâ emissions.","Créditos do Professor Beni":"Professor Beni's Credits","Créditos entram depois que a cota mensal do plano acaba. O acesso ilimitado ignora qualquer cota enquanto estiver válido.":"Credits are applied after the monthly plan quota runs out. Unlimited access bypasses any quota while valid.","Créditos pessoais com melhor custo por pergunta":"Personal credits with best cost per question","Créditos pessoais para o Professor Beni":"Personal credits for Professor Beni","Créditos por usuário":"Credits per user","Créditos próprios":"Own credits",CrÃtica:"Critical",CrÃtico:"Critical","CrÃtico (0-3.33), Atenção (3.34-6.66), Adequado (6.67-10)":"Critical (0-3.33), Warning (3.34-6.66), Adequate (6.67-10)","CrÃtico â Revisar em 6 meses":"Critical â Review in 6 months","CrÃtico:":"Critical:","CrÃtico: pontuação ⤠33% â bloqueio operacional e prioridade máxima.":"Critical: score ⤠33% â operational blockage and maximum priority.","CrÃtico=6m | Atenção=12m | Adequado=18m":"Critical=6m | Warning=12m | Adequate=18m","Cuidado com armadilhas ambientais! Desmatamento, poluição e mineração ilegal causam dano à sua saúde.":"Watch out for environmental traps! Deforestation, pollution and illegal mining damage your health.","Cuidado!":"Watch out!","Cuidado! Muita construção polui a natureza.":"Watch out! Too much construction pollutes nature.","Cuide do lixo!":"Take care of the trash!","Culpar a comunidade por não ter agido sozinha":"Blame the community for not having acted alone","Cultura e Patrimônio":"Culture and Heritage",Cultural:EN,Curso:CN,"Curso / Prova":"Course / Exam","Curs
157o LMS":"LMS Course","Curso LMS Vinculado":"Linked LMS Course","Curso base":"Base course",'Curso base "Fundamentos do SISTUR" liberado':'Base course "SISTUR Fundamentals" released',"Curso base + 10 perguntas ao Beni (grátis)":"Base course + 10 questions to Beni (free)","Curso base do EDU":"EDU base course","Curso base obrigatório":"Required foundational course","Curso base obrigatório: concluÃ-lo libera todas as trilhas formativas.":"Required foundational course: completing it unlocks all learning paths.","Curso concluÃdo / perguntas esgotadas / diagnóstico rodado":"Course completed / questions exhausted / diagnosis run","Curso concluÃdo. Trilhas liberadas.":"Course completed. Learning paths unlocked.","Curso criado com sucesso":"Course created successfully","Curso marcado como concluÃdo":"Course marked as completed","Curso não especificado":"Course not specified","Curso sem tÃtulo":"Untitled course","Curso vinculado":"Linked course","Cursor / Claude Code":"Cursor / Claude Code",Cursos:TN,"Cursos Cadastrados":"Registered Courses","Cursos Prescritos":"Prescribed Courses","Cursos e lives baseados em seus indicadores":"Courses and livestreams based on your indicators","Cursos e lives recomendados com base nos indicadores":"Courses and live streams recommended based on the indicators","Cursos mais relevantes com base nos indicadores selecionados":"Most relevant courses based on selected indicators","Cursos que apoiam a execução deste projeto":"Courses that support the implementation of this project","Cursos recomendados pelo diagnóstico":"Courses recommended by the diagnosis","Cursos sugeridos":"Suggested courses","Cursos são prescritos automaticamente com base em regras determinÃsticas e respeitando bloqueios IGMA.":"Courses are automatically prescribed based on deterministic rules and respecting IGMA blocks.","Cursos vinculados automaticamente":"Automatically linked courses","Cursos, trilhas de aprendizado e capacitação em turismo sustentável.":"Courses, learning paths, and training in sustainable tourism.","Cursos, trilhas, provas, certificação e gamificação":"Courses, paths, tests, certification, and gamification","Curta posts e comentários úteis.":"Like useful posts and comments.","Curtidas e comentários aparecem em cada post.":"Likes and comments appear on each post.","Curtir post":"Like post","Custo de aquisição (R$)":"Acquisition cost (R$)","Custo-eficiente, alto volume":"Cost-efficient, high volume",Cálculo:"Calculation","Cálculo Interno":"Internal Calculation","Cálculo de Pilares":"Pillars Calculation","Cálculo realizado com sucesso!":"Calculation performed successfully!",Código:"Code","Código (estável, snake_case)":"Code (stable, snake_case)","Código *":"Code *","Código IBGE":"IBGE Code","Código IBGE + UF + Região TurÃstica":"IBGE Code + State + Tourist Region","Código IBGE deve ter 7 dÃgitos":"IBGE Code must have 7 digits","Código IBGE não disponÃvel":"IBGE Code not available","Código IBGE: {{v0}}":"IBGE Code: {{v0}}","Código copiado":"Code copied","Código copiado!":"Code copied!","Código da Organização":"Organization Code","Código de Organização (opcional)":"Organization Code (optional)","Código de Verificação":"Verification Code","Código de Verificação:":"Verification Code:","Código de convite gerado!":"Invitation code generated!","Código de verificação":"Verification code","Código desativado":"Code deactivated","Código do Curso":"Course Code","Código do Professor":"Professor Code","Código do indicador (ex: RA001)":"Indicator code (e.g., RA001)","Código e tÃtulo são obrigatórios":"Code and title are mandatory","Código inválido, já expirado ou você já pertence a essa organização.":"Invalid code, already expired, or you already belong to this organization.","Código não encontrado":"Code not found","Código-fonte: 44 páginas, 154+ componentes, 50+ hooks, 20+ edge functions":"Source code: 44 pages, 154+ components, 50+ hooks, 20+ edge functions","Código: {{v0}}":"Code: {{v0}}","Códigos de Convite da Organização":"Organization Invitation Codes",DATASUS:PN,"DATASUS â Ministério da Saúde":"DATASUS â Ministry of Health","DATASUS â Saúde":"DATASUS â Health","DATASUS.":"DATASUS.","DATASUS/CNES (datasus_health_cache)":"DATASUS/CNES (datasus_health_cache)","DATASUS/CNES â hospitais, leitos, pronto-socorro 24h e densidade por 1k habitantes do municÃpio":"DATASUS/CNES â hospitals, beds, 24h emergency room and density per 1k inhabitants in the municipality","DATASUS/CNES: total de leitos hospitalares no municÃpio ÷ população à 1.000.":"DATASUS/CNES: total hospital beds in the municipality ÷ population à 1,000.","DATASUS: saúde e bem-estar":"DATASUS: health and well-being",DERIVED:RN,DOCX:xN,DOWN:wN,"Dad
157o do IBGE (Pesquisa de Informações Básicas Municipais - MUNIC). Existência de conselho municipal de turismo.":"IBGE data (Municipal Basic Information Survey - MUNIC). Existence of a municipal tourism council.","Dado revisado, salvo e confirmado":"Data reviewed, saved, and confirmed",Dados:IN,"Dados Coletados":"Collected Data","Dados Diagnósticos â IA â Plano Estratégico":"Diagnostic Data â AI â Strategic Plan","Dados Prontos":"Data Ready","Dados cadastrais aplicados ao perfil":"Registration data applied to the profile","Dados da RAIS/CAGED (Ministério do Trabalho). Filtre por CNAEs de turismo (55, 56, 79, 91, 93).":"RAIS/CAGED data (Ministry of Labor). Filter by tourism CNAEs (55, 56, 79, 91, 93).","Dados da Secretaria de Turismo, Observatório de Turismo ou estimativas do MTur.":"Data from the Secretariat of Tourism, Tourism Observatory, or MTur estimates.","Dados da organização ou destino não encontrados":"Organization or destination data not found","Dados de campo + Secretarias Municipais":"Field data + Municipal Secretariats","Dados de organizações, empresas e destinos turÃsticos são de propriedade das respectivas organizações, mas o Titular detém uma licença perpétua, irrevogável e não exclusiva para utilizar estes dados de forma agregada e anonimizada para fins analÃticos, estatÃsticos e de melhoria da Plataforma.":"Data from organizations, companies, and tourist destinations are the property of their respective organizations, but the Holder holds a perpetual, irrevocable, and non-exclusive license to use this data in an aggregated and anonymized form for analytical, statistical, and platform improvement purposes.","Dados de regiões turÃsticas e categorização de municÃpios do Ministério do Turismo":"Data from tourist regions and municipal categorization by the Ministry of Tourism","Dados do CADASTUR (MTur). Número de agências de turismo cadastradas no municÃpio. O sistema busca automaticamente.":"CADASTUR data (MTur). Number of registered tourism agencies in the municipality. The system automatically retrieves it.","Dados do CADASTUR (MTur). Número de guias de turismo cadastrados no municÃpio. O sistema busca automaticamente.":"CADASTUR data (MTur). Number of registered tour guides in the municipality. The system automatically retrieves it.","Dados do CAGED/MTE ou RAIS. Calcule: (empregos formais em ACTs ÷ total de empregos formais) à 100.":"CAGED/MTE or RAIS data. Calculate: (formal jobs in ACTs ÷ total formal jobs) à 100.","Dados do IBGE (Censo ou PNAD ContÃnua). % da população com ensino médio completo ou superior.":"IBGE data (Census or PNAD ContÃnua). % of the population with completed high school or higher education.","Dados do IBGE (Censo) ou SNIS (Sistema Nacional de Informações sobre Saneamento). Percentual de domicÃlios com água tratada, esgoto e coleta de lixo.":"IBGE data (Census) or SNIS (National Sanitation Information System). Percentage of households with treated water, sewage, and waste collection.","Dados do IBGE podem ser importados automaticamente para alguns indicadores.":"IBGE data can be automatically imported for some indicators.","Dados do INPE (PRODES/DETER) ou MapBiomas. Taxa de desmatamento no municÃpio em km²/ano.":"INPE (PRODES/DETER) or MapBiomas data. Deforestation rate in the municipality in km²/year.","Dados educacionais (IDEB)":"Educational data (IDEB)","Dados fiscais municipais":"Municipal tax data","Dados importados via":"Data imported via","Dados incorretos/não aparecem":"Incorrect data/not appearing","Dados inválidos":"Invalid data","Dados isolados por organização (RLS). Papéis: ADMIN (global), ORG_ADMIN (escopo local), ANALYST, VIEWER, ESTUDANTE e PROFESSOR. O papel define os limites do plano.":"Data isolated by organization (RLS). Roles: ADMIN (global), ORG_ADMIN (local scope), ANALYST, VIEWER, STUDENT, and PROFESSOR. The role defines the plan limits.","Dados oficiais atualizados após o último cálculo":"Official data updated after the last calculation","Dados oficiais dispersos em múltiplas APIs sem integração":"Official data dispersed across multiple APIs without integration","Dados podem ser enriquecidos":"Data can be enriched","Dados preenchidos com sucesso!":"Data successfully filled!","Dados prontos":"Ready data","Dados prontos para cálculo":"Data ready for calculation","Dados reais não são afetados.":"Real data is not affected.","Dados socioeconômicos atualizados (IBGE/SIDRA)":"Updated socioeconomic data (IBGE/SIDRA)","Dados socioeconômicos, demográficos e territoriais":"Socioeconomic, demographic, and territorial data","Dados suficientes para cálculo do diagnóstico ({{v0}}/{{v1}} preenchidos)":"Sufficient data for diagnosis calculation ({{v0}}/{{v1}} filled)","Dados validados":"Validated data","Dados validados com sucesso":"Data validated successfully","Dados validados com sucesso!":"Data validated successfully!","Dados via API Oficial":"Data via Official API","Dados, fontes e cálculos rastreáveis":"Traceable data, sources, and calculations","Dança da chuva":"Rain dance",Dashboard:DN,"Dashboard Principal":"Main Dashboard","Dashboard de gestão para professores":"Management dashboard for teachers","Dashboard dedicado com KPIs financeiros, operacionais e de sustentabilidade":"Dedicated dashboard with financial, operational, and sustainability KPIs",Data:ON,"Data API":"Data API","Data Prevista *":"Planned Date *","Data de Conclusão":"Completion Date","Data de Criação":"Creation Date","Data de Emissão":"Issue Date","Data de InÃcio":"Start Date","Data de Término":"End Date","Data de conclusão:":"Completion date:","Data do Recurso":"Appeal Date","Data do último login efetivo de cada usuário no perÃodo":"Date of each user's last effective login in the peri
157od","Data fim *":"End date *","Data inÃcio *":"Start date *","Data/Hora":"Date/Time",DataSUS:MN,"Decisão Coletiva":"Collective Decision","Decisões em grupo!":"Group decisions!","Dedicação Total":"Total Dedication",Defasado:NN,"Defenda a savana mais biodiversa do planeta contra o avanço agrÃcola e queimadas.":"Defend the planet's most biodiverse savanna against agricultural encroachment and wildfires.","Defenda a savana mais biodiversa do planeta.":"Defend the planet's most biodiverse savanna.","Defenda seu destino turÃstico com cartas estratégicas!":"Defend your tourism destination with strategic cards!","Defina a data de disponibilidade (quando os alunos poderão acessar).":"Define the availability date (when students can access).","Defina as configurações e metodologia do projeto":"Define the project settings and methodology","Defina datas de inÃcio e fim previstas.":"Define planned start and end dates.","Defina datas planejadas nas fases ou no projeto para visualizar a linha do tempo.":"Set planned dates for the phases or the project to view the timeline.","Defina duração estimada e nÃvel de dificuldade.":"Define estimated duration and difficulty level.","Defina limite de tempo para cada prova.":"Define time limit for each test.","Defina nÃvel de dificuldade e tags.":"Define difficulty level and tags.","Defina número de questões por prova.":"Define number of questions per test.",'Defina o nome da sala (ex: "Turismo Sustentável 2025.1").':'Define the room name (e.g., "Sustainable Tourism 2025.1").',"Defina o perÃodo (data de inÃcio e fim).":"Define the period (start and end date).","Defina o prazo de entrega (deadline).":"Define the delivery deadline.","Defina o tÃtulo e o perÃodo da avaliação.":"Define the evaluation title and period.","Defina os dados da marca. As unidades em cada municÃpio são vinculadas via o diagnóstico empresarial.":"Define the brand data. Units in each municipality are linked via the business diagnosis.","Defina quem pode visualizar ou editar este projeto. Apenas Donos podem gerenciar a equipe.":"Set who can view or edit this project. Only Owners can manage the team.","Defina quem poderá visualizar e editar este destino e diagnóstico. Isso afetará a visibilidade para outros membros da sua organização.":"Define who can view and edit this destination and diagnosis. This will affect visibility for other members of your organization.","Defina quem poderá visualizar este diagnóstico.":"Define who can view this diagnosis.","Defina responsável, prazo e prioridade.":"Define responsible, deadline, and priority.","Define a":"Defines the","Define a ordem fixa de seções que TODO relatório gerado deve seguir. O agente de IA recebe esta lista como contrato obrigatório â UMA passada, sem repetir nem voltar a seções já escritas.":"Defines the fixed order of sections that EVERY generated report must follow. The AI agent receives this list as a mandatory contract â ONE pass, without repeating or returning to sections already written.","Define periodicidade obrigatória: CrÃtico â revisão em 6 meses | Atenção â 12 meses | Adequado â 18 meses. Campo next_review_recommended_at calculado automaticamente.":"Define mandatory frequency: Critical â review in 6 months | Attention â 12 months | Adequate â 18 months. next_review_recommended_at field calculated automatically.","Definir visibilidade":"Define visibility","Definição de coordenadas geográficas":"Definition of geographic coordinates","Definição de escopo, objetivos e stakeholders":"Definition of scope, objectives and stakeholders","Definição, fonte oficial, periodicidade e pilar de cada indicador":"Definition, official source, frequency and pillar for each indicator","Degradação do solo em regiões áridas":"Soil degradation in arid regions","Deixar para as autoridades resolverem":"Leave it to the authorities to solve","Deixe em branco se não possuir um código.":"Leave blank if you do not have a code.","Deixe seus dados e retornamos com a proposta ideal para o seu caso.":"Leave your details and we will get back to you with the ideal proposal for your case.","Deixe um comentário (opcional)":"Leave a comment (optional)","Demais trilhas bloqueadas após concluir o curso base":"Other tracks locked after completing the base course",Demanda:zN,"Demanda & Tendências":"Demand & Trends","Demanda & Trends":"Demand & Trends","Demanda analisada":"Demand analyzed","Demanda aérea (ANAC, 12 meses)":"Air demand (ANAC, 12 months)","Demanda orgânica (busca pública)":"Organic demand (public search)","Demanda/Trends":"Demand/Trends",Demo:jN,"Democracia começa com a participação de todos.":"Democracy starts with everyone's participation.","Demográficos, econômicos e Censo (SIDRA)":"Demographics, economics and Census (SIDRA)","Demonstração do incremento":"Increment demonstration",Densidade:kN,"Dentro da trilha, clique em uma capacitação para assistir ao conteúdo.":"Inside the trail, click on a training to watch the content.","Dentro do projeto, crie fases para organizar o trabalho e adicione tarefas a cada fase.":"Within the project, create phases to organize the work and add tasks to each phase.",Denunciar:_N,"Denunciar a corrupção e fortalecer o conselho":"Report corruption and strengthen the council","Denunciar a tentativa de suborno":"Report the attempted bribery","Denunciar o esquema e assumir a responsabilidade pelo erro":"Report the scheme and take responsibility for the error","Denunciar o uso ilegal de agrotóxicos":"Report the illegal use of pesticides","Denunciar publicamente e mobilizar a comunidade":"Denounce publicly and mobilize the community","Denuncie conteúdo inadequado para moderação.":"Report inappropriate content for moderation.","Denúncia do Fórum":"Forum Report","Denúncia enviada. Nossa equipe irá analisar.":"Report sent. Our team will review.","Depen
157dência Intersetorial":"Cross-Sector Dependency","Dependência de carro":"Car dependency","Depois de conectado, basta conversar naturalmente. Exemplos de pedidos que o assistente consegue atender:":"Once connected, just chat naturally. Examples of requests the assistant can handle:",Derivada:qN,Derivado:LN,"Derivado (cálculo interno)":"Derived (internal calculation)","Derivado: demanda + eventos + ADR":"Derived: demand + events + ADR","Derivar Sazonalidade Tarifária":"Derive Rate Seasonality","Derrame de Ãleo":"Oil Spill","Derretimento das geleiras":"Melting glaciers",Desafixar:UN,"Desafixar post":"Unpin post",Desativar:BN,"Desativar respostas por voz":"Disable voice responses","Desativar som":"Mute","Desative VPN, antivÃrus, firewall corporativo ou bloqueadores (uBlock/AdBlock). Tente em aba anônima.":"Disable your VPN, antivirus, corporate firewall or blockers (uBlock/AdBlock). Try an incognito tab.",Desbloquear:FN,"Desbloqueie qualquer badge nova hoje.":"Unlock any new badge today.",Descartados:GN,Descartar:VN,"Descartar (+1ð°)":"Discard (+1ð°)",Descarte:$N,"Descarte cartas que não precisa para ganhar +1 moeda!":"Discard cards you do not need to earn +1 coin!","Descarte irregular de resÃduos!":"Irregular waste disposal!","Descoberta automática de eventos":"Automatic event discovery","Descobre novos caminhos na natureza":"Discover new paths in nature","Descreva a funcionalidade que gostaria de ver no sistema...":"Describe the functionality you would like to see in the system...","Descreva a observação técnica. Use @ para mencionar membros.":"Describe the technical observation. Use @ to mention members.","Descreva as ações realizadas...":"Describe the actions taken...","Descreva o conteúdo obrigatório desta seção.":"Describe the mandatory content of this section.","Descreva o conteúdo que você precisa e nossa equipe irá avaliá-lo":"Describe the content you need and our team will evaluate it","Descreva o motivo *":"Describe the reason *","Descreva o objetivo do treinamento":"Describe the training objective","Descreva o objetivo e conteúdo da trilha...":"Describe the learning path's objective and content...","Descreva o que aconteceu, os passos para reproduzir o erro e o que era esperado...":"Describe what happened, the steps to reproduce the error, and what was expected...","Descreva o que esta seção deve conter (tabelas, parágrafos, evidênciasâ¦)":"Describe what this section should contain (tables, paragraphs, evidenceâ¦)","Descreva o que você espera aprender com este conteúdo...":"Describe what you expect to learn from this content...","Descreva os objetivos e escopo do projeto...":"Describe the project objectives and scope...","Descreva por que discorda do resultado...":"Describe why you disagree with the result...","Descreva sua dúvida...":"Describe your question...","Descritores por nÃvel (do menor para o maior)":"Descriptors by level (from lowest to highest)",Descrição:"Description","Descrição (contrato)":"Description (contract)","Descrição (ex: Plano Nacional de Turismo 2024-2027)":"Description (e.g., National Tourism Plan 2024-2027)","Descrição (opcional)":"Description (optional)","Descrição / Objetivo":"Description / Objective","Descrição completa do conteúdo":"Full content description","Descrição da fase":"Phase description","Descrição da tarefa":"Task description","Descrição da tarefa.":"Task description.","Descrição detalhada":"Detailed description","Descrição detalhada do indicador":"Detailed indicator description","Descrição detalhada do projeto (opcional - será gerada pela IA)":"Detailed project description (optional - will be generated by AI)","Descrição do marco":"Milestone description","Descrição do projeto":"Project description","Descrição:":"Description:","Descubra os segredos da fauna e flora tropical":"Discover the secrets of tropical fauna and flora","Desempenho em Exames":"Exam Performance","Desenvolver filtragem local de microplásticos":"Develop local microplastic filtration","Desenvolver novas habilidades":"Develop new skills","Desenvolvimento de Infraestrutura":"Infrastru
157cture Development","Desenvolvimento de Produtos":"Product Development","Desenvolvimento e Ordem Pública":"Development and Public Order","Desenvolvimento que atende o presente sem comprometer o futuro":"Development that meets the present without compromising the future","Desertificação é o processo de degradação do solo que o torna improdutivo.":"Desertification is the process of soil degradation that makes it unproductive.","Desgaste causado por desmatamento e chuvas intensas":"Wear caused by deforestation and intense rains","Desistir e ir embora":"Give up and leave","Deslizamento de Terra":"Landslide","Destaques: melhor desempenho e alunos com dificuldade.":"Highlights: best performance and struggling students.",Destinatário:"Recipient",Destino:HN,"Destino atualizado com sucesso!":"Destination updated successfully!","Destino com limitações identificadas":"Destination with identified limitations","Destino criado com sucesso!":"Destination created successfully!","Destino criado:":"Destination created:","Destino da Mandala":"Mandala Destination","Destino excluÃdo com sucesso!":"Destination deleted successfully!","Destino não vinculado":"Destination not linked","Destino pronto para visitação consciente":"Destination ready for conscious visitation","Destino selecionado:":"Selected destination:","Destino turÃstico":"Tourist destination",Destinos:WN,"Destinos Cadastrados":"Registered Destinations","Destinos Públicos":"Public Destinations","Destinos Totais":"Total Destinations","Destinos TurÃsticos Certificados":"Certified Tourist Destinations","Destinos e empresas":"Destinations and businesses","Destinos maduros, projetos de financiamento, estudos acadêmicos, certificações":"Mature destinations, funding projects, academic studies, certifications","Destinos turÃsticos":"Tourist destinations","Destinos turÃsticos acessÃveis ao usuário (com unidade/brand quando aplicável).":"Tourist destinations accessible to the user (with unit/brand when applicable).","Destinos turÃsticos com IBGE code e coordenadas":"Tourist destinations with IBGE code and coordinates","Destinos, diagnósticos, gargalos e capacitações":"Destinations, diagnostics, bottlenecks, and training","Destruição do mangue para construção!":"Mangrove destruction for construction!","Destruição ilegal de mangues para construção urbana":"Illegal destruction of mangroves for urban construction",Desvalidar:QN,"Detalhamento das bases oficiais que alimentaram o pré-preenchimento automático":"Details of the official bases that fed the automatic pre-filling","Detalhar diagnóstico":"Detail diagnosis",Detalhe:KN,Detalhes:YN,"Detalhes (opcional)":"Details (optional)","Detalhes Adicionais":"Additional Details","Detalhes adicionais (opcional)":"Additional details (optional)","Detalhes da Sessão":"Session Details","Detalhes do Evento":"Event Details","Detalhes do Log":"Log Details","Detalhes do Projeto":"Project Details","Detalhes por aluno":"Details per student","Detecta automaticamente site oficial, Google Business, OTAs (Booking, Expedia, Airbnbâ¦) e redes sociais â preenche maturidade digital e canal direto.":"Automatically detects official website, Google Business, OTAs (Booking, Expedia, Airbnbâ¦) and social media â fills in digital maturity and direct channel.","Detecta crescimento estrutural que degrada o ambiente. Se OE evoluiu (melhorou) entre ciclos mas RA regrediu (piorou), o sistema gera alerta de externalidade negativa.":"Detects structural growth that degrades the environment. If OE evolved (improved) between cycles but RA regressed (worsened), the system generates a negative externality alert.","Detecta imports @/... fora do escopo declarado do módulo":"Detects imports @/... outside the declared module scope","Detecta site oficial, Google Business, OTAs e redes sociais â preenche maturidade digital e canal direto":"Detects official website, Google Business, OTAs and social media â fills digital maturity and direct channel","Detecção de troca de aba e tempo anômalo.":"Tab change detection and anomalous time.","Determinação Automática de Status":"Automatic Status Determination",DeterminÃstica:"Deterministic","DeterminÃstico:":"Deterministic:","Devastação ambiental.":"Environmental devastation.",Dez:JN,"Dezenas de nascentes estão comprometidas pelo desmatamento e agrotóxicos. Rios que abasteciam cidades inteiras estão secando.":"Dozens of springs are compromised by deforestation and pesticides. Rivers that supplied entire cities are drying up.",Diagnóstico:"Assessment","Diagnóstico 2024 - Bonito":"Diagnosis 2024 - Bonito","Diagnóstico 2024 - Gramado":"Diagnosis 2024 - Gramado","Diagnóstico 2024 - Paraty":"Diagnosis 2024 - Paraty","Diagnóstico Calculado":"Diagnosis Calculated","Diagnóstico Criado":"Diagnosis Created","Diagnóstico Sistêmico":"Systemic Assessment","Diagnóstico atualizado com sucesso!":"Diagnosis updated successfully!","Diagnóstico calculado com sucesso":"Assessment calculated successfully","Diagnóstico carregado":"Diagnosis loaded","Diagnóstico completo":"Complete assessment","Diagnóstico completo com todos os indicadores IGMA e complementares para análise profunda. Recomendado para projetos de grande porte e certificações.":"Complete diagnosis with all IGMA and complementary indicators for in-depth analysis. Recommended for large-scale projects and certifications.","Diagnóstico completo com todos os indicadores IGMA. Recomendado para projetos de grande porte e certificações.":"Full diagnosis with all IGMA indicators. Recommended for large-scale projects and certifications.","Diagnóstico completo: notas por pilar (RA, OE, AO) e indicadores relevantes.":"Complete diagnosis: scores by pillar (RA, OE, AO) and relevant indicators.","Diagnóstico configurado":"Assessment configured","Diagnóstico criado com sucesso!":"Diagnosis created successfully!","Diagnóstico criado:":"Diagnosis created:","Diagnóstico de rede com":"Network diagnostic with","Diagnóstico de rede â {{v0}} unidades. Cada aba abaixo coleta dados de uma unidade.":"Network diagnosis â {{v0}} units. Each tab below collects data from one unit.","Diagnóstico empresarial":"Business diagnostic","Diagnóstico empresarial (privado)":"Business asse
157ssment (private)","Diagnóstico empresarial por empreendimento/marca. R$ 59 por pessoa/mês (mÃnimo 5 usuários).":"Business diagnostic per enterprise/brand. R$ 59 per person/month (minimum 5 users).","Diagnóstico empresarial:":"Business diagnosis:","Diagnóstico enterprise indisponÃvel":"Enterprise diagnosis unavailable","Diagnóstico excluÃdo com sucesso!":"Assessment deleted successfully!","Diagnóstico executado no tier":"Diagnostic executed on tier","Diagnóstico inteligente e capacitação para destinos turÃsticos brasileiros.":"Intelligent assessment and training for Brazilian tourism destinations.","Diagnóstico intermediário com indicadores estratégicos para planejamento de médio prazo. Equilibra profundidade analÃtica com praticidade operacional.":"Intermediate diagnosis with strategic indicators for medium-term planning. Balances analytical depth with operational practicality.","Diagnóstico intermediário para planejamento de médio prazo. Equilibra profundidade analÃtica com praticidade operacional.":"Intermediate diagnosis for medium-term planning. Balances analytical depth with operational practicality.","Diagnóstico não encontrado":"Assessment not found","Diagnóstico não encontrado ou sem acesso.":"Diagnosis not found or no access.","Diagnóstico não encontrado.":"Assessment not found.","Diagnóstico para empreendimentos privados (hotéis, agências, restaurantes). Usa 22 indicadores especializados e segue a mesma régua de status (Adequado/Atenção/CrÃtico).":"Diagnosis for private enterprises (hotels, agencies, restaurants). Uses 22 specialized indicators and follows the same status scale (Adequate/Attention/Critical).","Diagnóstico privado para empreendimentos turÃsticos":"Private diagnosis for tourist enterprises","Diagnóstico recebido":"Diagnosis received","Diagnóstico rápido focado nos indicadores mais crÃticos para uma visão geral do destino. Ideal para primeiras avaliações e municÃpios com recursos limitados.":"Quick diagnosis focused on the most critical indicators for an overview of the destination. Ideal for initial assessments and municipalities with limited resources.","Diagnóstico rápido focado nos indicadores mais crÃticos. Ideal para primeiras avaliações e municÃpios com recursos limitados.":"Quick diagnosis focused on the most critical indicators. Ideal for initial assessments and municipalities with limited resources.","Diagnóstico teaser para organizações":"Teaser diagnosis for organizations","Diagnóstico territorial (público)":"Territorial assessment (public)","Diagnóstico voltou para rascunho. Você pode editar os dados.":"Assessment reverted to draft. You can edit the data.","Diagnóstico â Ação â Monitoramento":"Diagnosis â Action â Monitoring","Diagnóstico â Capacitação é automático e rastreável, não subjetivo":"Diagnosis â Training is automatic and traceable, not subjective","Diagnóstico, planejamento e monitoramento de destinos":"Destination diagnosis, planning, and monitoring","Diagnóstico:":"Diagnosis:",Diagnósticos:"Assessments","Diagnósticos Externos":"External Diagnoses","Diagnósticos Territoriais":"Territorial Diagnostics","Diagnósticos de performance hoteleira":"Hotel performance diagnoses","Diagnósticos hoteleiros com indicadores de performance (RevPAR, NPS, etc).":"Hotel diagnoses with performance indicators (RevPAR, NPS, etc).","Diagnósticos por pilares, indicadores, monitoramento analÃtico, relatórios e capacitação prescrita.":"Diagnoses by pillars, indicators, analytical monitoring, reports, and prescribed training.","Diagnósticos públicos com indicadores IGMA para destinos turÃsticos.":"Public diagnoses with IGMA indicators for tourist destinations.","Diagnósticos sistêmicos (RA/OE/AO) e indicadores.":"Systemic diagnostics (RA/OE/AO) and indicators.","Diagnósticos sistêmicos, formação certificada e o Professor Beni â do municÃpio ao empreendimento. Comece com o teste gratuito: curso base, 10 perguntas ao Beni e 1 diagnóstico de experimentação.":"Systemic diagnostics, certified training, and Professor Beni â from municipality to enterprise. Start with the free trial: basic course, 10 questions to Beni, and 1 experimentation diagnostic.","Diagnósticos territoriais de municÃpios":"Territorial diagnoses of municipalities","Diagnósticos turÃsticos municipais são subjetivos, fragmentados e não reprodutÃveis":"Municipal tourism diagnostics are subjective, fragmented, and not reproducible","Diagrama de Interações":"Interactions Diagram","Dias consecutivos":"Consecutive days","Dias entre mesmas questões":"Days between same questions","Dias para conclusão":"Days to completion",Dica:XN,"Dica: clique em":"Tip: click on","Dicas ({{v0}})":"Tips ({{v0}})","Dicas usadas:":"Hints used:","Dif.":"Diff.","Diferenças entre Completo, Executivo e Investidores":"Differences between Complete, Executive and Investors",Dificuldade:ZN,"Dificuldade de uso":"Difficulty of use",DifÃcil:"Difficult","Digite a nova senha":"Enter new password","Digite o enunciado da questão...":"Enter the question statement...","Digite o nome do municÃpio para buscar automaticamente no IBGE.":"Enter the municipality name to search automatically in IBGE.","Digite o nome do municÃpio...":"Enter municipality name...","Digite o tÃtulo do seu post...":"Enter your post title...","Digite para pesquisar":"Type to search","Digite seu email para receber o link de recuperação":"Enter your email to receive the recovery link","Digite sua nova senha":"Enter your new password","Digite sua nova senha. Ela deve ter pelo menos 6 caracteres.":"Enter your new password. It must be at least 6 characters long.","Digite sua resposta dissertativa...":"Enter your essay response...","Digite sua resposta...":"Enter your answer...","Dimensão IGMA":"IGMA Dimension","Dimensão IGMA:":"IGMA Dimension:","Dimensão/Tema":"Dimension/Topic","Dimensões com evidência":"Dimensions with evidence","Dinheiro fácil, mas a natureza sofreu muito...":"Easy money, but nature suffered greatly...","Dinheiro fácil, mas à s custas do cerrado. As máquinas não param.":"Easy money, but at the expense of the cerrado. The machines don't stop.","Dinheiro para plantar árvores":"Money to plant trees","Dinheiro rápido, mas cada árvore derrubada acelera a desertificação.":"Quick money, but every felled tree accelerates desertification.","Direto (site/telefone/walk-in)":"Direct (website/phone/walk-in)",Direção:"Direction","Direção:":"Direction:","Dis.":"Dis.",Disciplina:ez,"Discurso de ódio":"Hate speech",Discussão:"Discussion","Discuta este relatório com sua equipe. Use @ para mencionar colegas da organização.":"Discuss this report with your team. Use @ to mention colleagues in your organization.","Disparar E-mail
157s":"Send Emails",Dispensar:az,"Disponibilidade de rodoviária, aeroporto e qualidade de acessos. Fonte: ANTT / ANAC / DNIT. Periodicidade: anual.":"Availability of bus stations, airports, and quality of access. Source: ANTT / ANAC / DNIT. Frequency: annual.",DisponÃvel:"Available","DisponÃvel na sua avaliação":"Available in your assessment","DisponÃvel nos planos Pro e Enterprise e durante o teste.":"Available in Pro and Enterprise plans and during the trial.",Dissertativa:oz,Dissertativas:iz,Distribuição:"Distribution","Distribuição de Indicadores":"Indicator Distribution","Distribuição de certificados emitidos por área":"Distribution of certificates issued by area","Distribuição de eventos nos últimos 30 dias":"Event distribution over the last 30 days","Distribuição de indicadores nos 3 pilares do SISTUR":"Indicator distribution across the 3 SISTUR pillars","Distribuição entre Pilares (RA / OE / AO)":"Distribution among Pillars (RA / OE / AO)","Distribuição mensal de menções":"Monthly distribution of mentions","Distribuição por Categoria":"Distribution by Category","Distribuição por Escopo":"Distribution by Scope","Distribuição por Tipo":"Distribution by Type","Distribuição por mês":"Distribution by month","Distribuição por status atual":"Distribution by current status","Divergência encontrada ({{v0}})":"Divergence found ({{v0}})","Divergências corrigidas automaticamente ({{v0}})":"Discrepancies automatically corrected ({{v0}})","Diversidade de biomas":"Biome diversity","Diversidade é resistência.":"Diversity is resistance.","Diária Média (ADR)":"Average Daily Rate (ADR)","Diária abaixo do mercado â +5%":"Daily rate below market â +5%","Diária acima do mercado â â3%":"Daily rate above market â â3%","Diária do mercado (R$)":"Market daily rate (R$)","Diária média em BRL":"Average daily rate in BRL","Diária média estimada vs mercado a partir de OTAs públicas (Booking, Google, Hoteis.com)":"Estimated average daily rate vs market from public OTAs (Booking, Google, Hotels.com)","Diário de Classe":"Class Journal","Dióxido de carbono":"Carbon dioxide","Do PMS ou relatório financeiro: receita de hospedagem ÷ número de diárias vendidas. Use o perÃodo dos últimos 12 meses.":"From PMS or financial report: accommodation revenue ÷ number of room nights sold. Use the period of the last 12 months.","Do RH: (desligamentos no perÃodo ÷ média de funcionários) à 100. Considere os últimos 12 meses.":"From HR: (terminations in the period ÷ average number of employees) à 100. Consider the last 12 months.",Docs:tz,"Documentar tudo e denunciar ao IBAMA":"Document everything and report to IBAMA",Documentação:"Documentation","Documentação técnica e metodológica do SISTUR":"SISTUR Technical and methodological documentation","Documentação, metodologia de cálculo e ferramentas do SISTUR":"SISTUR documentation, calculation methodology and tools","Documentação/Tutoriais":"Documentation/Tutorials","Documento PDF":"PDF Document","Documento Técnico â Registro de Software":"Technical Document â Software Registration","Documento de referência enviado":"Reference document sent","Documento em preparação":"Document in preparation","Documento pedagógico formal exibido na página do curso.":"Formal pedagogical document displayed on the course page.","Documento pedagógico formal â ementa, competências, carga horária e critérios de avaliação":"Formal instructional document â syllabus, competencies, instructional hours and assessment criteria","Documentos da Base de Conhecimento utilizados":"Knowledge Base documents used","Documentos de apoio que enriquecem diagnósticos e relatórios":"Supporting documents that enrich diagnoses and reports","Documentos de referência nacional injetados em todos os relatórios: PNT (Plano Nacional de Turismo), legislação federal, diretrizes do Ministério do Turismo. Gerenciados exclusivamente por administradores.":"National reference documents injected into all reports: PNT (National Tourism Plan), federal legislation, guidelines from the Ministry of Tourism. Managed exclusively by administrators.","Documentos de referência organizados por destino â usados automaticamente em diagnósticos e relatórios":"Reference documents organized by destination â automatically used in diagnoses and reports","Documentos de referência usados automaticamente na geração de relatórios e diagnósticos (ex: PNT, legislação, diretrizes)":"Reference documents used automatically in report and diagnosis generation (e.g.: PNT, legislation, guidelines)","Documentos e apresentações":"Documents and presentations","Documentos especÃficos de cada destino: planos diretores, legislação municipal, pesquisas locais, dados socioeconômicos. Associados a destinos e usados automaticamente nos diagnósticos daquele municÃpio.":"Specific documents for each destination: master plans, municipal legislation, local surveys, socioeconomic data. Associated with destinations and automatically used in diagnoses for that municipality.","Doença se espalha na comunidade.":"Disease spreads in the community.","DomÃnios de autoridade":"Authority domains","DomÃnios únicos":"Unique domains",'Dona Benedita conta que seus ancestrais vivem ali há 200 anos, mas grileiros tentam expulsá-los. "A terra é nossa mãe. Sem ela, perdemos tudo." Eles preservam o cerrado naturalmente.':'Dona Benedita says her ancestors have lived there for 200 years, but land grabbers are trying to expel them. "The land is our mother. Without it, we lose everything." They preserve the cerrado naturally.',Dono:rz,"Dono â gerencia equipe e exclui":"O
157wner â manages the team and deletes","Download PDF":"Download PDF",'Durante a geração, o card "Plano de Desenvolvimento" exibe':'During generation, the "Development Plan" card displays',"Durante o cadastro ou no seu perfil, insira o código de referral fornecido pelo professor.":"During registration or in your profile, enter the referral code provided by the professor.","Durante os 7 dias, você tem acesso a todos os módulos sem restrições.":"During the 7 days, you have access to all modules without restrictions.",Duração:"Duration","Duração (minutos)":"Duration (minutes)","Duração (tempo)":"Duration (time)","Duração compatÃvel com sua disponibilidade":"Duration fits your availability","Duração temporal (horas, dias, anos).":"Time duration (hours, days, years).","Duração:":"Duration:","Dê um nome descritivo ao projeto.":"Give the project a descriptive name.",Dúvida:"Question","Dúvidas comerciais? A página pública":"Commercial questions? The public page","E se a renovação não for paga?":"What if the renewal isn't paid?","E se?":"What if?","E-mail":"E-mail","E-mail customizado com branding SISTUR":"Custom email with SISTUR branding","E-mail do usuário indisponÃvel.":"User email unavailable.","E-mail enviado com sucesso":"Email sent successfully","E-mail inválido":"Invalid email","E-mails (separados por vÃrgula, ponto e vÃrgula ou linha)":"Emails (separated by comma, semicolon, or line)","E-mails do app: envio direto pela infraestrutura gerenciada de e-mail da Lovable, com templates React":"App emails: direct sending via Lovable's managed email infrastructure, with React templates",ECO:sz,EDU:nz,"EDU (Educacional)":"EDU (Educational)","EDU - Plataforma Educacional":"EDU - Educational Platform","EDU â Plataforma de Aprendizado":"EDU â Learning Platform","EDU: Acesse trilhas, capacitações e certificados.":"EDU: Access trails, training, and certificates.",EDU_AO:cz,EDU_OE:dz,EDU_RA:lz,"EEEE, dd 'de' MMMM":"EEEE, dd 'of' MMMM","EEEE, dd 'de' MMMM 'de' yyyy":"EEEE, MMMM dd, yyyy",ENT_SEASONALITY_INDEX:uz,"ESG se refere a práticas Ambientais, Sociais e de Governança.":"ESG refers to Environmental, Social, and Governance practices.",ESTUDANTE:mz,EXTERNALITY_WARNING:pz,"Ecologia e Saúde Global":"Ecology and Global Health",Ecológico:"Ecological","Economia baseada em moedas redondas":"Economy based on circular currencies",'Economia circular elimina o conceito de "lixo", tudo é recurso!':'Circular economy eliminates the concept of "waste"; everything is a resource!',"Economia do Sertão":"Sertão Economy","Economia que cresce em cÃrculos":"Economy that grows in circles","Economia verde e sustentável! ð":"Green and sustainable economy! ð",Econômico:"Economic","Ecossistema de Dados Oficiais":"Official Data Ecosystem","Ecossistema marinho que abriga 25% das espécies oceânicas":"Marine ecosystem that hosts 25% of oceanic species",Ecoturismo:gz,"Edge Functions":"Edge Functions","Edge function:":"Edge function:",Editados:hz,Editar:fz,"Editar Dados":"Edit Data","Editar Destino":"Edit Destination","Editar Fase":"Edit Phase","Editar Marco":"Edit Milestone","Editar Módulo":"Edit Module","Editar Organização":"Edit Organization","Editar Perfil":"Edit Profile","Editar Peso":"Edit Weight","Editar Post":"Edit Post","Editar Projeto":"Edit Project","Editar Questão":"Edit Question","Editar Referência: {{v0}}":"Edit Reference: {{v0}}","Editar Sala":"Edit Room","Editar Tarefa":"Edit Task","Editar Treinamento":"Edit Training","Editar Trilha":"Edit Learning Path","Editar avaliação":"Edit assessment","Editar badge":"Edit badge","Editar contexto":"Edit context","Editar conteúdo do relatório":"Edit report content","Editar linha":"Edit row","Editar marca":"Edit brand","Editar no relatório":"Edit in report","Editar pasta":"Edit folder","Editar relatório":"Edit report","
157Editar resumo":"Edit summary","Editar trilha":"Edit learning path","Edite as peças de conhecimento (metodologia, régua, fontes, bibliografia, regras anti-alucinação) usadas para gerar os relatórios. Alterações entram em vigor no próximo relatório gerado.":"Edit the knowledge components (methodology, rubric, sources, bibliography, anti-hallucination rules) used to generate reports. Changes will take effect in the next generated report.","Edite os dados da trilha e os treinamentos associados.":"Edit the learning path details and associated training.",Editor:vz,"Editor â cria e edita tarefas":"Editor â creates and edits tasks",Editoriais:bz,Edição:"Edition","Edição de pesos, tiers e escopo:":"Editing weights, tiers and scope:","Edição de valores quando necessário":"Editing values when necessary",Edições:"Editions",Educação:"Education","Educação + governança!":"Education + governance!","Educação para todos":"Education for all","Educação transforma o futuro!":"Education transforms the future!","Educação â Estudante":"Education â Student",Efeito:Az,"Efetividade de Marketing":"Marketing Effectiveness",Efetivo:yz,"Eficiência Energética":"Energy Efficiency","Eficiência Operacional":"Operational Efficiency","Elaboração de Planos Municipais de Turismo":"Elaboration of Municipal Tourism Plans","Elaboração de planos diretores de turismo":"Elaboration of tourism master plans","Ele adorou e vai contar para todo mundo! â":"He loved it and will tell everyone! â","ElegÃvel para todas as certificações":"Eligible for all certifications",Elemento:Sz,"Elevadores AcessÃveis":"Accessible Elevators","Em Andamento":"Ongoing","Em Andamento ({{v0}})":"In Progress ({{v0}})","Em Análise":"Under Review",'Em Configurações â Conectores, escolha "Criar" ou "Adicionar conector personalizado".':'In Settings â Connectors, choose "Create" or "Add custom connector."',"Em Diagnósticos, crie novas rodadas de avaliação para seus destinos. Selecione indicadores, insira valores e o sistema calcula automaticamente scores normalizados, issues e prescrições via motor IGMA.":"In Diagnostics, create new assessment rounds for your destinations. Select indicators, enter values, and the system automatically calculates normalized scores, issues, and prescriptions via the IGMA engine.","Em Espera":"On Hold","Em Produção":"In Production","Em Progresso":"In Progress","Em Revisão":"In Review","Em andamento":"In progress","Em branco = imediatamente":"Blank = immediately","Em branco = sem prazo":"Blank = no deadline","Em branco = usar regras padrão da prova":"Blank = use standard proof rules","Em breve: lançamento oficial da plataforma":"Coming soon: official platform launch","Em execução":"In progress","Em nenhuma hipótese a responsabilidade do Titular excederá o valor total pago pelo Usuário nos 12 meses anteriores ao evento que deu origem à reclamação.":"In no event shall the Holder's liability exceed the total amount paid by the User in the 12 months prior to the event giving rise to the claim.","Em progresso":"In progress","Em progresso ({{v0}})":"In progress ({{v0}})","Em qual fluxo de relatório a regra entra: 'territorial' (destinos/municÃpios), 'enterprise' (empresas) ou 'both'.":"Which reporting flow the rule applies to: 'territorial' (destinations/municipalities), 'enterprise' (companies), or 'both'.","Em risco":"At risk","Em trial":"In trial","
157Em uso":"In use","Em ~15 minutos você sai do zero para um diagnóstico operacional, reputacional e competitivo completo â sem digitar dados.":"In ~15 minutes you go from scratch to a complete operational, reputational, and competitive diagnosis â without entering data.",Email:Ez,"Email *":"Email *","Email de recuperação enviado! Verifique sua caixa de entrada.":"Recovery email sent! Check your inbox.","Email inválido":"Invalid email","Email não disponÃvel":"Email not available","Email ou senha incorretos":"Incorrect email or password","Email:":"Email:","Embaixadores do Oceano":"Ocean Ambassadors",Ementa:Cz,"Emissão e gestão do Selo SISTUR para destinos turÃsticos.":"Issuance and management of the SISTUR Seal for tourism destinations.",Emitido:Tz,"Emitido em":"Issued on","Emitidos automaticamente após aprovação. Possuem código público para verificação em /verificar-certificado.":"Issued automatically after approval. They have a public code for verification at /verify-certificate.",Emitir:Pz,"Emitir certificado":"Issue certificate","Emitir novo certificado":"Issue new certificate",Empacotamento:Rz,"Empacotamento Modular":"Modular Packaging","Empreend.:":"Enterpr.:","Empreendimento independente? Crie uma marca com o próprio nome â futuras unidades poderão ser anexadas.":"Independent establishment? Create a brand with its own name â future units can be attached.",Empreendimentos:xz,Empregos:wz,"Empregos formais no turismo (base anual via IGMA; baseline mensal estimado pelo Observatório)":"Formal jobs in tourism (annual basis via IGMA; monthly baseline estimated by the Observatory)",Empresarial:Iz,"Empresas e redes":"Businesses and networks","Empresários e prestadores de serviços turÃsticos":"Entrepreneurs and tourism service providers",Encerrada:Dz,Encerramento:Oz,"Encontrar seu código":"Find your code","Encontre os pares entre imagens e suas descrições ambientais! Cada carta-imagem tem uma carta-texto correspondente.":"Find matching pairs of images and their environmental descriptions! Each image card has a matching text card.","Encontre todos os pares antes do tempo acabar e sem exceder o limite de erros. Quanto menos erros e mais rápido, maior a pontuação!":"Find all the pairs before time runs out and without exceeding the mistake limit. The fewer mistakes and the faster you finish, the higher your score!","Encontrei outra solução":"I found another solution","Endereço IP":"IP Address","Endêmicas são exclusivas de uma região geográfica especÃfica.":"Endemics are exclusive to a specific geographical region.","Energia Eólica":"Wind Energy","Energia Solar":"Solar Energy","Energia desperdiçada":"Wasted energy","Energia limpa do sol! Brilhante! âï¸":"Clean solar energy! Brilliant! âï¸",Engajamento:Mz,"Engine de interpretação sistêmica (6 regras de Beni)":"Systemic interpretation engine (6 Beni rules)","Enigma Ambiental":"Environmental Riddle",Enigmas:Nz,"Enigmas:":"Riddles:",'Enquanto a IA escreve o relatório completo (pipeline em 2 fases), o conteúdo aparece progressivamente no card de geração à medida que cada subseção fica pronta: primeiro o pilar RA, depois OE, depois AO, e por fim o envelope (introdução, ficha técnica, alertas IGMA, banco de ações, fontes, considerações finais). Uma barra de progresso e um badge "Pré-visualização ao vivo" ficam visÃveis durante todo o processo. Isso elimina a sensação de "spinner sem fim" â você consegue começar a ler enquanto o resto ainda está sendo gerado. PDF e DOCX continuam disponÃveis apenas após a persistência do relatório final (não exporta versões inacabadas).':'While the AI writes the complete report (2-phase pipeline), content appears progressively in the generation card as each subsection becomes ready: first the RA pillar, then OE, then AO, and finally the envelope (introduction, technical sheet, IGMA alerts, action bank, sources, final considerations). A progress bar and a "Live Preview" badge are visible throughout the process. This eliminates the feeling of an "endless spinner" â you can start reading while the rest is still being generated. PDF and DOCX remain available only after the final report is persisted (it does not export unfinished versions).','Enquanto você explorava sem rumo, uma grande área foi desmatada durante a noite. Seu Raimundo está furioso: "Você prometeu ajudar e nada fez! Agora perdemos árvores de 200 anos." A comunidade perde a confiança em você.':`While you aimlessly explored, a large area was deforested overnight. Seu Raimundo is furious: "You promised to help and did nothing! Now we've lost 200-year-old trees." The community loses trust in you.`,"Enquanto você passeia, os madeireiros avançam sem impedimento.":"While you wander, loggers advance unhindered.",Enterprise:zz,"Enterprise ({{v0}})":"Enterprise ({{v0}})","Enterprise ativos":"Active Enterprise",Entidade:jz,"Entidade:":"Entity:","Entrada criada":"Entry created","Entrada excluÃda":"Entry deleted","Entrada manual do usuário":"Manual user input",Entradas:kz,"Entrando...":"Signing in...",Entrar:_z,"Entre com suas credenciais para acessar o sistema":"Sign in with your credentials to access the system","Entre ou crie sua conta para acessar o conteúdo solicitado.":"Sign in or create your account to access the requested content.",Entrega:qz,"Entrega até":"Due by","Entrega final e lições aprendidas":"Final delivery and lessons learned","Entrega â depende de execução, qualidade do serviço e da experiência.":"Delivery â depends on execution, service quality, and experience.",Entregue:Lz,Entregues:Uz,Enunciado:Bz,"Envelope (capa, sumário, fechamento)":"Envelope (cover, summary, closing)","Enviando arquivos...":"Uploading files...","Enviando...":"Sending...",Enviar:Fz,"Enviar Denúncia":"Submit Report","Enviar E-mail":"Send Email","Enviar Exame":"Submit E
157xam","Enviar Exame?":"Send Exam?","Enviar Feedback":"Send Feedback","Enviar Link de Recuperação":"Send Recovery Link","Enviar Recurso":"Submit Appeal","Enviar Solicitação":"Send Request","Enviar conversa por e-mail":"Send conversation by email","Enviar lembrete":"Send reminder","Enviar para:":"Send to:","Enviar por e-mail":"Send by email","Enviar revisão":"Send review","Envie o código ou link para seus alunos antes ou durante o cadastro.":"Send the code or link to your students before or during registration.","Envie templates existentes ou mensagens personalizadas com o visual SISTUR":"Send existing templates or personalized messages with the SISTUR look","Envie um arquivo CSV com e-mails dos alunos para adicioná-los à turma em lote.":"Upload a CSV file with student email addresses to add them to the class in bulk.","Envie um relatório (arquivo texto ou colado abaixo) e a IA confronta o conteúdo com todas as regras":"Send a report (text file or pasted below) and the AI compares the content with all rules",Equilibrado:Gz,"Equilibrado, menor custo":"Balanced, lower cost",EquilÃbrio:"Balance","EquilÃbrio balanceado":"Balanced equilibrium","EquilÃbrio entre permissividade e restrição":"Balance between permissiveness and restriction","EquilÃbrio ⥠70":"Balance ⥠70","EquilÃbrio:":"Balance:","Equipamentos eletrônicos descartados":"Discarded electronic equipment",Equipar:Vz,Equipe:$z,"Equipe do projeto":"Project team","Equipe e Comentários":"Team and Comments","Equipe local":"Local team","Equivale a {{v}}/mês, pago uma vez por ano.":"Equivalent to {{v}}/month, paid once a year.","Equivalente em JSON (para importação em lote)":"JSON equivalent (for batch import)","Erosão Costeira":"Coastal Erosion","Erosão costeira":"Coastal erosion","Erosão do Solo":"Soil Erosion","Erosão por desmatamento!":"Erosion due to deforestation!","Erradicação da Pobreza":"Poverty Eradication",Erro:Hz,"Erro ao aceitar termos. Tente novamente.":"Error accepting terms. Please try again.","Erro ao adicionar usuário":"Error adding user","Erro ao alterar modo: ":"Error changing mode: ","Erro ao alterar senha: ":"Error changing password: ","Erro ao analisar presença digital:":"Error analyzing digital presence:","Erro ao analisar presença digital: ":"Error analyzing digital presence: ","Erro ao aprovar usuário":"Error approving user","Erro ao arquivar treinamento":"Error archiving training","Erro ao atualizar configuração:":"Error updating configuration:","Erro ao atualizar configuração: ":"Error updating configuration: ","Erro ao atualizar diagnóstico. Tente novamente.":"Error updating diagnosis. Try again.","Erro ao atualizar escopo":"Error updating scope","Erro ao atualizar peso":"Error updating weight","Erro ao atualizar pilar":"Error updating pillar","Erro ao atualizar preferência":"Error updating preference","Erro ao atualizar tier":"Error updating tier","Erro ao buscar concorrentes: ":"Error fetching competitors: ","Erro ao buscar contexto: ":"Error fetching context: ","Erro ao buscar municÃpio":"Error fetching municipality","Erro ao buscar municÃpios":"Error fetching municipalities","Erro ao buscar reclamações:":"Error fetching complaints:","Erro ao buscar reclamações: ":"Error fetching complaints: ","Erro ao buscar reviews: ":"Error fetching reviews: ","Erro ao buscar: ":"Error fetching: ","Erro ao calcular diagnóstico":"Error calculating diagnosis","Erro ao cancelar: ":"Error canceling: ","Erro ao carregar a história.":"Error loading the story.","Erro ao carregar camada semântica: ":"Error loading semantic layer: ","Erro ao carregar contextos":"Error loading contexts","Erro ao carregar estatÃsticas de certificados":"Error loading certificate statistics","Erro ao carregar estruturas":"Error loading structures","Erro ao carregar organizações":"Error loading organizations","Erro ao carregar relatórios salvos:":"Error loading saved reports:","Erro ao carregar relatórios salvos: ":"Error loading saved reports: ","Erro ao carregar sessão.":"Error loading session.","Erro ao carregar usuários":"Error loading users","Erro ao carregar usuários da organização":"Error loading organization users","Erro ao carregar usuários e organizações":"Error loading users and organizations","Erro ao carregar usuários pendentes":"Error loading pending users","Erro ao carregar vÃdeo":"Error loading video","Erro ao conectar com o Professor Beni":"Error connecting with Professor Beni","Erro ao conectar com serviço IBGE":"Error connecting with IBGE service","Erro ao configurar acesso: ":"Error setting up access: ","Erro ao criar atividade":"Error creating activity","Erro ao criar checklist":"Error creating checklist","Erro ao criar conexão: ":"Error creating connection: ","Erro ao criar contexto":"Error creating context","Erro ao criar diagnóstico":"Error creating diagnosis","Erro ao criar diagnóstico. Tente novamente.":"Error creating diagnosis. Try again.","Erro ao criar evento":"Error creating event","Erro ao criar exame":"Error creating exam","Erro ao criar fase":"Error creating phase","Erro ao criar marca":"Error creating brand","Erro ao criar marco":"Error creating milestone","Erro ao criar plano":"Error creating plan","Erro ao criar projeto":"Error creating project","Erro ao criar sala":"Error creating room","Erro ao criar sessão.":"Error creating session.","Erro ao criar tarefa":"Error creating task","Erro ao criar usuário":"Error creating user","Erro ao criar: ":"Error creating: ","Erro ao deletar mensagem":"Error deleting message","Erro ao desativar código":"Error deactivating code","Erro ao desativar entradas removidas: ":"Error deactivating removed entries: ","Erro ao entrar com Apple:":"Error signing in with Apple:","Erro ao entrar com Apple: ":"Error signing in with Apple: ","Erro ao entrar com Google:":"Error signing in with Google:","Erro ao entrar com Google: ":"Error signing in with Google: ","Erro ao enviar arquivos":"Error uploading files","Erro ao enviar avaliação":"Error submitting evaluation","Erro ao enviar denúncia:":"Error submitting complaint:","Erro ao enviar e-mail"
157:"Error sending email","Erro ao enviar exame":"Error submitting exam","Erro ao enviar exame automaticamente. Por favor, tente enviar manualmente.":"Error submitting exam automatically. Please try submitting manually.","Erro ao enviar recurso":"Error submitting appeal","Erro ao enviar solicitação":"Error sending request","Erro ao enviar vÃdeo":"Error uploading video","Erro ao excluir":"Error deleting","Erro ao excluir destino. Tente novamente.":"Error deleting destination. Try again.","Erro ao excluir diagnóstico. Tente novamente.":"Error deleting assessment. Try again.","Erro ao excluir fase":"Error deleting phase","Erro ao excluir marco":"Error deleting milestone","Erro ao excluir organização":"Error deleting organization","Erro ao excluir plano":"Error deleting plan","Erro ao excluir projeto":"Error deleting project","Erro ao excluir projetos associados":"Error deleting associated projects","Erro ao excluir questão":"Error deleting question","Erro ao excluir relatório":"Error deleting report","Erro ao excluir relatórios associados":"Error deleting associated reports","Erro ao excluir sessão.":"Error deleting session.","Erro ao excluir treinamento":"Error deleting training","Erro ao excluir. Tente novamente.":"Error deleting. Try again.","Erro ao executar importação":"Error running import","Erro ao executar verificação de saúde":"Error executing health check","Erro ao exportar dados":"Error exporting data","Erro ao exportar/gerar relatório":"Error exporting/generating report","
157Erro ao fazer login":"Error signing in","Erro ao gerar arquivo Word.":"Error generating Word file.","Erro ao gerar código. Verifique se você tem permissão.":"Error generating code. Check if you have permission.","Erro ao gerar relatório":"Error generating report","Erro ao gerar sugestões":"Error generating suggestions","Erro ao gerar voz":"Error generating voice","Erro ao iniciar exame":"Error starting exam","Erro ao iniciar sincronização":"Error starting synchronization","Erro ao mover tarefa":"Error moving task","Erro ao publicar":"Error publishing","Erro ao publicar anúncio":"Error publishing ad","Erro ao publicar treinamento":"Error publishing training","Erro ao recuperar valores automáticos":"Error retrieving automatic values","Erro ao rejeitar solicitação":"Error rejecting request","Erro ao remover":"Error removing","Erro ao remover material":"Error removing material","Erro ao remover usuário":"Error removing user","Erro ao reproduzir áudio":"Error playing audio","Erro ao resetar diagnóstico":"Error resetting assessment","Erro ao salvar":"Error saving","Erro ao salvar badge":"Error saving badge","Erro ao salvar canal":"Error saving channel","Erro ao salvar concorrente":"Error saving competitor","Erro ao salvar correção":"Error saving correction","Erro ao salvar item":"Error saving item","Erro ao salvar medição":"Error saving measurement","Erro ao salvar mês":"Error saving month","Erro ao salvar organização":"Error saving organization","Erro ao salvar pasta":"Error saving folder","Erro ao salvar perfil":"Error saving profile","Erro ao salvar perfil do empreendimento":"Error saving venture profile","Erro ao salvar pesos: ":"Error saving weights: ","Erro ao salvar post:":"Error saving post:","Erro ao salvar post: ":"Error saving post: ","Erro ao salvar questão":"Error saving question","Erro ao salvar snapshot":"Error saving snapshot","Erro ao salvar treinamento":"Error saving training","Erro ao salvar valor":"Error saving value","Erro ao salvar:":"Error saving:","Erro ao salvar: ":"Error saving: ","Erro ao trocar visualização":"Error changing view","Erro ao vincular código da organização":"Error linking organization code","Erro de cálculo/processamento":"Calculation/processing error","Erro desconhecido":"Unknown error","Erro desconhecido ao aceitar os termos.":"Unknown error accepting the terms.","Erro na auditoria: ":"Audit error: ","Erro na moderação":"Error in moderation","Erro no cálculo":"Calculation error","Erro no reconhecimento de voz":"Speech recognition error","Erro reportado pela edge function":"Error reported by the edge function","Erro visual/layout quebrado":"Visual error/broken layout","Erro: ":"Error: ",Error:"Error","Error stopping act as:":"Error stopping act as:",Erros:Wz,"Erros:":"Mistakes:","Escala 0-10 com funções lineares, inversas e logarÃtmicas por indicador":"0-10 scale with linear, inverse, and logarithmic functions per indicator","Escalas como IQA (0-100), score 1-5, nota 0-10.":"Scales such as IQA (0-100), score 1-5, rating 0-10.","Escale as montanhas e encontre cristais ecológicos":"Climb the mountains and find ecological crystals","Escaneie para verificar":"Scan to verify","Escolas são a base de toda comunidade.":"Schools are the foundation of every community.","Escolha a turma":"Select the class","Escolha como deseja usar o sistema":"Choose how you want to use the system","Escolha o assistente que você usa e siga os passos. Em todos eles, o login é feito na tela de autorização do SISTUR â nunca compartilhe sua senha com o assistente.":"Choose the assistant you use and follow the steps. In all of them, login is done on the SISTUR authorization screen â never share your password with the assistant.","Escolha o destino turÃstico na lista (ou crie um novo em Destinos).":"Choose the tourist destination from the list (or create a new one in Destinations).","Escolha o diagnóstico para preencher os dados":"Choose the assessment to fill in the data","Escolha o indicador":"Choose the indicator","Escolha o nÃvel adequado à sua realidade e objetivos":"Cho
157ose the appropriate level for your reality and objectives","Escolha o pilar":"Choose the pillar","Escolha o plano certo e gerencie sua contratação":"Choose the right plan and manage your subscription","Escolha o tipo: Trilha, Capacitação, Prova ou Conteúdo Próprio.":"Choose the type: Trail, Training, Test, or Own Content.","Escolha qual modelo de IA o Professor Beni usará para responder. A alteração entra em vigor na próxima mensagem.":"Choose which AI model Professor Beni will use to respond. The change takes effect on the next message.","Escolha qual sistema o usuário terá acesso":"Choose which system the user will have access to","Escolha seu Bioma":"Choose Your Biome","Escolha seu bioma e proteja seu destino!":"Choose your biome and protect your destination!","Escolha seu papel: Analista, Estudante, Professor, etc.":"Choose your role: Analyst, Student, Professor, etc.","Escolha temas de interesse especÃficos.":"Choose specific topics of interest.","Escolha um aluno...":"Select a student...","Escolha um bioma brasileiro e tome decisões que afetam a sustentabilidade do destino.":"Choose a Brazilian biome and make decisions that affect the sustainability of the destination.","Escolha um bioma para iniciar sua missão de restauração":"Choose a biome to start your restoration mission","Escolha um cenário e ajuste as alavancas. Os efeitos seguem regras sistêmicas: meio ambiente fraco (RA abaixo de 34%) limita ganhos operacionais, e governança fraca (OE abaixo de 34%) reduz todos os ganhos. Nada é salvo no diagnóstico oficial.":"Choose a scenario and adjust the levers. The effects follow systemic rules: weak environment (RA below 34%) limits operational gains, and weak governance (OE below 34%) reduces all gains. Nothing is saved in the official diagnosis.","Escolha um curso LMS acima para configurar as regras de exame.":"Choose an LMS course above to configure exam rules.","Escolha um destino com diagnóstico calculado e relatório gerado":"Choose a destination with calculated diagnosis and generated report","Escolha um diagnóstico acima para começar a preencher os dados dos indicadores.":"Choose an assessment above to start filling in the indicator data.","Escolha um dos planos abaixo para liberar os módulos do SISTUR.":"Choose one of the plans below to unlock SISTUR modules.","Escolha um plano para continuar usando o SISTUR.":"Choose a plan to continue using SISTUR.","Escolha um professor ou aluno das suas turmas.":"Select a teacher or student from your classes.","Escolha um treinamento":"Select a training","Escolha um tÃtulo descritivo.":"Choose a descriptive title.","Escolha um usuário...":"Choose a user...","Escolha uma Carta!":"Choose a Card!","Escolha uma prova":"Select a test","Escolha uma trilha":"Select a learning path","Escolhas arriscadas tiveram consequências graves.":"Risky choices had serious consequences.","Escolhas sustentáveis nem sempre são as mais fáceis, mas valem a pena!":"Sustainable choices are not always the easiest, but they are worth it!",Escopo:Qz,"Escopo & Guardrails":"Scope & Guardrails","Escopo atualizado com sucesso":"Scope updated successfully","Escopo das abas internas:":"Scope of internal tabs:","Escopo das regras":"Scope of rules","Escreva o conteúdo do e-mail aqui. Use quebras de linha para separar parágrafos.":"Write the email content here. Use line breaks to separate paragraphs.","Escreva o conteúdo do post com formatação.":"Write the post content with formatting.","Escreva sua anotação...":"Write your note...","Escreva sua resposta...":"Write your answer...","
157Escreva um comentário. Use @ para mencionar alguém da sua organização.":"Write a comment. Use @ to mention someone from your organization.","Escrever comentário...":"Write a comment...","Escrever mensagem...":"Write a message...","Escrever resposta...":"Write a reply...","Escudo de Fogo":"Fire Shield","Esgoto in natura no mangue!":"Raw sewage in the mangrove!","Esgotou tentativas":"No attempts remaining","Espalhe vida por toda parte!":"Spread life everywhere!","Espaço de troca entre gestores, técnicos e trade. A base de conhecimento aceita documentos da organização (PDF, DOCX, XLSX, CSV, TXT) e referências globais.":"Exchange space among managers, technicians, and trade. The knowledge base accepts organizational documents (PDF, DOCX, XLSX, CSV, TXT) and global references.","Espaço suficiente":"Sufficient space",Especialista:Kz,"Especialista em Turismo Sustentável":"Sustainable Tourism Specialist","Especialista em turismo dedicado":"Dedicated tourism specialist","Espera entre tentativas (horas)":"Wait between attempts (hours)","Esperar os bombeiros oficiais":"Wait for official firefighters","Esperar que as autoridades resolvam":"Wait for authorities to resolve",Esportivo:Yz,"Espécie ameaçada de extinção":"Endangered species","Espécie das profundezas essencial na cadeia alimentar":"Deep-sea species essential in the food chain","Espécie indicadora de saúde marinha":"Marine health indicator species","Espécie rara do manguezal":"Rare mangrove species","Espécies extintas":"Extinct species","Espécies exóticas ameaçam as nativas.":"Exotic species threaten native ones.","Espécies invasoras":"Invasive species","Espécies migratórias":"Migratory species","Espécies que só existem em uma região":"Species that exist only in one region","Esqueceu a senha?":"Forgot your password?","Essa classificação direciona quais prescrições EDU e quais ações de plano são sugeridas.":"This classification directs which EDU prescriptions and which plan actions are suggested.","Essas informações contextualizam o diagnóstico e permitem benchmarks mais precisos para o seu tipo de empreendimento.":"This information contextualizes the diagnostic and allows for more precise benchmarks for your type of venture.",Essencial:Jz,"Essencial (9) | Estratégico (19) | Integral (96)":"Essential (9) | Strategic (19) | Integral (96)","Essencial ({{v0}})":"Essential ({{v0}})","Essencial â 9 indicadores, 30â45 minutos. Ideal para primeira avaliação.":"Essential â 9 indicators, 30â45 minutes. Ideal for first assessment.","Esses dados podem ser alterados depois nas Configurações.":"This data can be changed later in Settings.","Esses gargalos territoriais podem afetar o desempenho do empreendimento mesmo quando a gestão interna está adequada â considere ações conjuntas com a secretaria de turismo, consórcio ou trade local.":"These territorial bottlenecks can affect the performance of the enterprise even when internal management is adequate â consider joint actions with the tourism secretariat, consortium, or local trade.","Esta atividade ainda não foi liberada.":"This activity has not yet been released.","Esta atividade não foi atribuÃda a você.":"This activity has not been assigned to you.","Esta ação irá buscar vÃdeos do canal e importá-los como rascunhos com classificação automática por pilar SISTUR.":"This action will fetch videos from the channel and import them as drafts with automatic classification by SISTUR pillar.","Esta ação não pode ser desfeita.":"This action cannot be undone.","Esta ação não pode ser desfeita. A organização":"This action cannot be undone. The organization",'Esta ação não pode ser desfeita. A trilha "{{v0}}" será permanentemente excluÃda.':'This action cannot be undone. The "{{v0}}" trail will be permanently deleted.',"Esta ação não pode ser desfeita. O diagnóstico":"This action cannot be undone. The diagnosis","Esta ação não pode ser desfeita. O feedback será permanentemente removido.":"This action cannot be undone. The feedback will be permanently removed.","Esta ação não pode ser desfeita. O post e todas as respostas serão permanentemente excluÃdos.":"This action cannot be undone. The post and all replies will be permanently deleted.","Esta ação não pode ser desfeita. O usuário":"This action cannot be undone. The user","Esta ação não pode ser desfeita. Todas as fases, tarefas e marcos associados serão removidos.":"This action cannot be undone. All associated phases, tasks and milestones will be removed.","Esta ação não pode ser desfeita. Todos os diagnósticos associados também serão excluÃdos.":"This action cannot be undone. All associated assessments will also be deleted.",'Esta capacitação foi prescrita porque o indicador "Agências de Turismo" está em Atenção, classificado no pilar OE (Organização Estrutural), c
157om interpretação territorial Entrega.':'This training was prescribed because the indicator "Tourism Agencies" is in Attention, classified under the OE (Organizational Structure) pillar, with territorial interpretation Delivery.','Esta capacitação foi prescrita porque o indicador "Orçamento de Turismo" está CrÃtico, classificado no pilar AO (Ações Operacionais), com interpretação territorial Gestão.':'This training was prescribed because the indicator "Tourism Budget" is Critical, classified under the AO (Operational Actions) pillar, with territorial interpretation Management.','Esta capacitação foi prescrita porque o indicador "Plano Municipal de Turismo" está CrÃtico, classificado no pilar AO (Ações Operacionais), com interpretação territorial Gestão.':'This training was prescribed because the indicator "Municipal Tourism Plan" is Critical, classified under the AO (Operational Actions) pillar, with territorial interpretation Management.',"Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}":"This training was prescribed because indicator {{0}} is {{1}} in pillar {{2}}.{{3}}","Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} â {{2}}":"This training was prescribed because indicator {{0}} is {{1}} â {{2}}","Esta configuração afeta apenas posts com visibilidade":"This setting only affects posts with visibility","Esta informação é técnica e fica fora do conteúdo do relatório. Ela documenta o que o sistema ajustou ou marcou para revisão antes da geração.":"This information is technical and outside the report's content. It documents what the system adjusted or flagged for review before generation.","Esta obrigação de confidencialidade sobrevive ao término da relação contratual por prazo indeterminado.":"This confidentiality obligation survives the termination of the contractual relationship for an indefinite period.","Esta trilha não existe ou foi removida.":"This learning path does not exist or has been removed.","Esta visão mostra como cada indicador foi normalizado: valor bruto, fonte dos dados, regra de normalização aplicada e score final. Objetivo: auditoria e confiança pública.":"This view shows how each indicator was normalized: raw value, data source, normalization rule applied, and final score. Objective: audit and public trust.","Esta é uma":"This is a","Estadias por ano":"Stays per year","Estado (UF)":"State (UF)","Estado de origem":"State of origin",Estagnação:"Stagnation","Estagnação:":"Stagnation:","Estamos confirmando sua contratação. O acesso é liberado automaticamente em alguns instantes.":"We are confirming your hiring. Access is automatically released in a few moments.","Estamos finalizando os últimos ajustes para você aproveitar tudo o que o SISTUR preparou.":"We're putting the finishing touches on the platform so you can enjoy everything SISTUR has prepared.",EstatÃsticas:"Statistics","EstatÃsticas Gerais":"General Statistics","Estação de tratamento":"Treatment plant","Este acesso é uma condição essencial para a prestação do serviço e não pode ser restringido pelo Usuário enquanto mantiver conta ativa na Plataforma.":"This access is an essential condition for the provision of the service and cannot be restricted by the User while maintaining an active account on the Platform.","Este assistente virtual foi treinado com os princÃpios e metodologias desenvolvidos pelo professor ao longo de décadas de pesquisa.":"This virtual assistant was trained with the principles and methodologies developed by the professor over decades of research.","Este campo é opcional.":"This field is optional.","Este certificado está expirado.":"This certificate has expired.","Este certificado foi revogado pelo emissor.":"This certificate has been revoked by the issuer.","Este certificado não pôde ser verificado.":"This certificate could not be verified.","Este certificado é autêntico e foi emitido pela plataforma SISTUR EDU.":"This certificate is authentic and was issued by the SISTUR EDU platform.","Este destino ainda não tem coordenadas cadastradas.":"This destination does not have any coordinates registered yet.","Este destino possui apenas 1 ciclo de diagnóstico.":"This destination has only 1 assessment cycle.","Este diagnóstico possui dados relacionados:":"This assessment has related data:","Este documento estará disponÃvel para download em breve.":"This document will be available for download soon.","Este documento foi verificado automaticamente pelo sistema SISTUR EDU":"This document was automatically verified by the SISTUR EDU system","Este email já está cadastrado":"This email is already registered","Este empreendimento não tem código IBGE cadastrado â não é possÃvel localizar o municÃpio de referência.":"This enterprise does not have a registered IBGE code â it is not possible to locate the reference municipality.","Este exame não foi encontrado ou expirou.":"This exam was not found or has expired.","Este fator depende de articulação intersetorial além da polÃtica de turismo.":"This factor depends on cross-sector coordination beyond tourism policy.","Este link não está disponÃvel ou foi desativado.":"This link is not available or has been deactivated.","Este municÃpio já está cadastrado como unidade deste diagnóstico.":"This municipality is already registered as a unit for this diagnosis.","Este mês":"This month","Este módulo não está incluÃdo no pacote contratado pela sua organização. Entre em contato com o administrador para solicitar a ativação.":"This module is not included in the package contracted by your organization. Please contact the administrator to request activation.","Estender trial: Adiciona dias ao perÃodo de teste.":"Extend trial: Adds days to the trial period.","Estes Termos regulam o acesso e a utilização da Plataforma SISTUR, incluindo todos os seus módulos, funcionalidades, conteúdos educacionais, ferramentas de diagnóstico e demais recursos disponibilizados ao Usuário.":"These Terms regulate the access and use of the SISTUR Platform, including all its modules, functionalities, educational content, diagnostic tools, and other resources made available to the User.","
157Estes Termos são regidos pela legislação brasileira.":"These Terms are governed by Brazilian law.",Estimada:Xz,Estimado:Zz,"Estimado (Baixa)":"Estimated (Low)","Estimado ({{v0}})":"Estimated ({{v0}})","Estimativa da Secretaria de Turismo ou estudos de demanda. Receita total gerada por visitantes no perÃodo.":"Estimate from the Secretariat of Tourism or demand studies. Total revenue generated by visitors during the period.","Estimativa da receita gerada pelo turismo no municÃpio. Consulte Observatório de Turismo ou estudos de impacto econômico.":"Estimate of revenue generated by tourism in the municipality. Consult Tourism Observatory or economic impact studies.","Estimativa da receita gerada pelo turismo. Consulte estudos de impacto econômico, Observatório de Turismo ou IBGE (conta satélite).":"Estimate of revenue generated by tourism. Consult economic impact studies, Tourism Observatory or IBGE (satellite account).","Estimativa sem fonte primária":"Estimate without primary source","Estou começando na área":"I am new to the field","Estradas para animais":"Wildlife crossings",Estrategista:ej,Estratégia:"Strategy","Estratégia Sustentável Geral":"General Sustainable Strategy","Estratégia de coleta:":"Collection strategy:","Estratégia de longo prazo!":"Long-term strategy!","Estratégias de marketing e vendas para destinos e produtos turÃsticos":"Marketing and sales strategies for tourist destinations and products","Estratégias didáticas, recursos e atividades":"Didactic strategies, resources and activities",Estratégico:"Strategic","Estratégico ({{v0}})":"Strategic ({{v0}})","Estratégico â 19 indicadores, 2â3 horas. Equilibra profundidade e prática.":"Strategic â 19 indicators, 2â3 hours. Balances depth and practice.","Estrela do Mar":"Starfish",Estrutura:aj,"Estrutura (12 seções):":"Structure (12 sections):","Estrutura Canônica do Relatório":"Canonical Report Structure","Estrutura atualizada â vale para os próximos relatórios.":"Structure updated â applies to upcoming reports.","Estrutura de Pilares":"Pillars Structure","Estrutura modular em desenvolvimento.":"Modular structure under development.","Estrutura:":"Structure:",Estrutural:oj,"Estrutural â depende de infraestrutura e investimento.":"Structural â depends on infrastructure and investment.","Estruturação de inst
157âncias de governança e articulação entre atores":"Structuring of governance instances and articulation among actors","Estuda o equilÃbrio":"Studies the balance",Estudante:ij,"Estudante: acesso a cursos e trilhas. Professor: pode criar e gerenciar conteúdo.":"Student: access to courses and trails. Professor: can create and manage content.",Estudantes:tj,"Estudar técnicas de convivência com o semiárido":"Study techniques for living with the semi-arid region","Estude um módulo":"Study a module",Estudo:rj,"Estudos de impacto territorial":"Territorial impact studies",Estável:"Stable","Etapa atualizada":"Step updated","Etapa de trilha concluÃda":"Trail stage completed","Etapa {{v0}} de {{v1}}":"Step {{v0}} of {{v1}}",Etapas:sj,"Etapas da trilha":"Learning path steps","Evacuar a área e aceitar a perda":"Evacuate the area and accept the loss","Evacuar área de risco":"Evacuate risk area",Evento:nj,"Evento criado e alunos notificados":"Event created and students notified","Evento excluÃdo":"Event deleted",Eventos:cj,"Eventos & Sazonalidade Local":"Local Events & Seasonality","Eventos (30 dias)":"Events (30 days)","Eventos (últimos 500)":"Events (last 500)","Eventos / Grupos":"Events / Groups","Eventos 12m":"12m Events","Eventos Locais":"Local Events","Eventos Municipais Oficiais":"Official Municipal Events","Eventos Recentes":"Recent Events","Eventos crÃticos são destacados automaticamente.":"Critical events are highlighted automatically.","Eventos de turismo":"Tourism events","Eventos do Sistema":"System Events","Eventos e erros da edge function generate-report (filtrado por provedor de IA)":"Events and errors from the generate-report edge function (filtered by AI provider)","Eventos e sazonalidade analisados":"Analyzed events and seasonality","Eventos observatório":"Observatory events","Eventos públicos":"Public events","Eventos recentes":"Recent events","Evidência:":"Evidence:","Evidência: {{0}}":"Evidence: {{0}}","Evidências encontradas":"Evidence found","Evidências:":"Evidence:","Evita repetição de questões recentes":"Avoids repetition of recent questions",Evolução:"Evolution","Evolução Temporal":"Evolution Over Time","Evolução ao longo do tempo":"Evolution over time","Evolução dos Ciclos":"Evolution of Cycles","Evolução dos Ciclos ERP":"Evolution of ERP Cycles","Evolução dos ciclos":"Evolution of cycles","Evolução temporal dos pilares":"Evolution of pillars over time","Evolução temporal dos pilares ({{v0}} rodadas)":"Temporal evolution of pillars ({{v0}} rounds)","Evolução:":"Evolution:","Ex.: Aula sobre IGMA":"E.g.: Lesson on IGMA","Ex.: Compra pacote 50 â pedido #123":"Ex.: Purchase package 50 â order #123","Ex.: Contrato 2026/014":"Ex.: Contract 2026/014","Ex.: Hotel Bem-vindo Centro":"Ex.: Hotel Bem-vindo Centro","Ex.: Lançamento 2026":"Ex.: Launch 2026","Ex.: Maria Silva":"E.g.: Maria Silva","Ex.: PROF3XK9AB":"E.g.: PROF3XK9AB","Ex.: Rede Atlântica, Accor, Hotel da FamÃlia":"Ex.: Rede Atlântica, Accor, Hotel da FamÃlia","Ex.: Tesouro, FUNGETUR...":"E.g.: Treasury, FUNGETUR...","Ex.: Turma de Planejamento TurÃstico â 2º semestre.":"Ex.: Tourism Planning Class â 2nd semester.","Ex.: cortesia promocional":"Ex.: promotional courtesy","Ex: %, R$, hab":"E.g.: %, R$, inhabitants","Ex: Adicionar exportação para Excel":"Ex: Add Excel export","Ex: Analista de Turismo, Secretário de Cultura...":"Example: Tourism Analyst, Secretary of Culture...","Ex: Aplicar a metodologia de Mario Beni":"Ex: Apply Mario Beni's methodology","Ex: Argumento ausente / pouco claro / consistente / sólido / excepcional":"Example: Argument missing / unclear / consistent / solid / exceptional","Ex: Atualização importante do SISTUR":"Ex: Important SISTUR update","Ex: Bonito":"Ex: Bonito","Ex: Certificado de 40h":"Example: 40h Certificate","Ex: Clareza argumentativa":"Example: Clarity of argument","Ex: Consórcio Vale Histórico":"Ex: Vale Histórico Consortium","Ex: Curso 'Gestão Ambiental' prescrito, curso OE bloqueado por IGMA":"Ex: 'Environmental Management' course prescribed, OE course blocked by IGMA","Ex: Curs
157o introdutório de turismo":"Ex: Introductory tourism course","Ex: Diagnosticar gargalos territoriais":"Ex: Diagnose territorial bottlenecks","Ex: Diagnóstico Bonito 2024":"Ex: Bonito Diagnosis 2024","Ex: Documento confidencial â Uso interno":"E.g.: Confidential document â Internal use","Ex: EDU-001":"Example: EDU-001","Ex: Entrega da primeira versão":"E.g.: First version delivery","Ex: Erro ao salvar diagnóstico":"Ex: Error saving diagnosis","Ex: Este relatório é parte do plano estratégico 2025-2028...":"E.g.: This report is part of the 2025-2028 strategic plan...","Ex: Gestores, Técnicos":"Example: Managers, Specialists","Ex: Gestão de Destinos":"Ex: Destination Management","Ex: Gestão de Destinos TurÃsticos":"Example: Tourism Destination Management","Ex: Gestão de resÃduos sólidos em destinos turÃsticos":"Ex: Solid waste management in tourist destinations","Ex: Hotel Fasano":"Ex: Hotel Fasano","Ex: Introdução ao Turismo Sustentável":"Ex: Introduction to Sustainable Tourism","Ex: Minha trilha personalizada":"Example: My custom learning path","Ex: ORGAB3XYZ":"Ex: ORGAB3XYZ","Ex: PIB per capita = R$ 25.000 (IBGE, 2022, confiança 5/5)":"Ex: GDP per capita = R$ 25,000 (IBGE, 2022, confidence 5/5)","Ex: PROFAB3XYZ":"Ex: PROFAB3XYZ","Ex: Planejamento, Execução...":"E.g.: Planning, Execution...","Ex: Plano de Melhoria TurÃstica 2026":"E.g.: Tourism Improvement Plan 2026","Ex: Porto de Galinhas (PE) - IBGE 2607901":"Ex: Porto de Galinhas (PE) - IBGE 2607901","Ex: RA crÃtico â EDU_OE bloqueado, marketing bloqueado":"Ex: RA critical â EDU_OE blocked, marketing blocked","Ex: RA-001":"Example: RA-001","Ex: RA001":"E.g.: RA001","Ex: SISTUR-XXXX-XXXX-XXXX":"Example: SISTUR-XXXX-XXXX-XXXX","Ex: Saneamento, Segurança, Infraestrutura":"E.g.: Sanitation, Safety, Infrastructure","Ex: Score 52% â Status ATENÃÃO":"Ex: Score 52% â Status ATTENTION","Ex: Secretaria Municipal de Turismo":"E.g.: Municipal Department of Tourism","Ex: Secretaria de Turismo de...":"Ex: Tourism Secretariat of...","Ex: São Paulo, Rio Grande do Sul, Argentina":"Ex: São Paulo, Rio Grande do Sul, Argentina","Ex: São Paulo, SP":"Ex: São Paulo, SP","Ex: Turismo Sustentável 2026.1":"Ex: Sustainable Tourism 2026.1","Ex: Valor 45.2% confirmado pelo analista":"Ex: Value 45.2% confirmed by analyst",Exame:dj,"Exame criado com sucesso!":"Exam created successfully!","Exame enviado com sucesso!":"Exam submitted successfully!","Exame enviado! Questões dissertativas aguardam correção manual.":"Exam submitted! Essay questions are awaiting manual grading.","Exame iniciado!":"Exam started!","Exame não encontrado":"Exam not found",Excelente:lj,"Excelente!":"Excellent!",Exceções:"Exceptions",Excluir:uj,"Excluir Atividade":"Delete Activity","Excluir Fase":"Delete Phase","Excluir Marco":"Delete Milestone","Excluir Módulo":"Delete Module","Excluir Projeto":"Delete Project","Excluir Questão":"Delete Question","Excluir Sala":"Delete Room","Excluir Tarefa":"Delete Task","Excluir Usuário":"Delete User",'Excluir a pasta? As conversas vão para "Sem pasta".':'Delete folder? Conversations will go to "No folder".',"Excluir cenário":"Delete scenario","Excluir destino?":"Delete destination?","Excluir diagnóstico?":"Delete diagnosis?","Excluir esta conversa?":"Delete this conversation?","Excluir feedback?":"Delete feedback?","Excluir organização?":"Delete organization?","Excluir post?":"Delete post?","Excluir resposta?":"Delete answer?","Excluir trilha?":"Delete trail?","Excluir usuário?":"Delete user?","Excluir {{v0}} projeto(s) associado(s)":"Delete {{v0}} associated project(s)","Excluir {{v0}} relatório(s) associado(s)":"Delete {{v0}} associated report(s)",Exclusão:"Exclusion",Exclusões:"Exclusions","Executa a tarefa":"Execute task",Executando:mj,"Executando bloco":"Executing block","Executando verificações...":"Running checks...","Executando...":"Executing...","Executar Verificação":"Run Check","Execute mais diagnósticos para visualizar a evolução temporal.":"Run more assessments to view evolution over time.","Execute o diagnóstico para gerar planos de ação automaticamente":"Run the assessment to automatically generate action plans","Execute o diagnóstico para identificar gargalos e gerar ações que podem ser convertidas em projeto.":"Run the assessment to identify bottlenecks and generate actions that can be converted into a project.","Execute um diagnóstico para gerar prescrições de capacitação.":"Run a diagnostic assessment to generate training prescriptions.",Execução:"Execution","Execução das tarefas da sprint":"Execution of sprint tasks","Execução sequencial das 6 regras sistêmicas (ver seção 3.2)":"Sequential execution of the 6 systemic rules (see section 3.2)",Exemplo:pj,"Exemplo: HomicÃdios por 100k = 15":"Example: Homicides per 100k = 15","Exemplo: {{v0}}":"Example: {{v0}}","Exemplos de uso":"Usage examples","Exercite a memória enquanto aprende sobre ecologia!":"Exercise your memory while learning about ecology!",'Exibido como "Usuário Anônimo" sem foto':'Displayed as "Anonymous User" without photo',"Exibindo apenas indicadores em":"Displaying only indicators in","Exibindo apenas indicadores em Atenção ou CrÃtico ({{v0}} de {{v1}}).":"Showing only indicators in Attention or Critical ({{v0}} of {{v1}}).","Exibir data de geração":"Show generation date","Exibir identidade em posts públicos":"Show identity in public posts","Exibir número de páginas":"Show page count","Exigir aprovação manual de admin antes de publicar imagens":"Require manual admin a
157pproval before publishing images","Exigir compensações ambientais e áreas de conservação":"Require environmental compensation and conservation areas","Exigir que o resort adote práticas sustentáveis certificadas":"Require the resort to adopt certified sustainable practices","Existe diagnóstico Territorial para o municÃpio, mas ele ainda não foi calculado.":"A Territorial assessment exists for the municipality, but it has not been calculated yet.","Existem 5 biomas para explorar:\nð³ Amazônia â floresta tropical\nðï¸ Litoral â ecossistema costeiro\nð¾ Cerrado â savana brasileira\nâ°ï¸ Serra â região montanhosa\nðµ Caatinga â semiárido nordestino":`There are 5 biomes to explore: 158ð³ Amazon â tropical forest 159ðï¸ Coast â coastal ecosystem 160ð¾ Cerrado â Brazilian savanna 161â°ï¸ Mountains â mountainous region 162ðµ Caatinga â Northeastern semi-arid`,"Existem 5 biomas para explorar: ð³ Amazônia â floresta tropical ðï¸ Litoral â ecossistema costeiro ð¾ Cerrado â savana brasileira â°ï¸ Serra â região montanhosa ðµ Caatinga â semiárido nordestino":"There are 5 biomes to explore: ð³ Amazon â tropical forest ðï¸ Coast â coastal ecosystem ð¾ Cerrado â Brazilian savanna â°ï¸ Highlands â mountainous region ðµ Caatinga â northeastern semi-arid","Existem 5 biomas para explorar:\\nð³ Amazônia â floresta tropical\\nðï¸ Litoral â ecossistema costeiro\\nð¾ Cerrado â savana brasileira\\nâ°ï¸ Serra â região montanhosa\\nðµ Caatinga â semiárido nordestino":"There are 5 biomes to explore:\\nð³ Amazon â tropical rainforest\\nðï¸ Coast â coastal ecosystem\\nð¾ Cerrado â Brazilian savanna\\nâ°ï¸ Highlands â mountainous region\\nðµ Caatinga â semiarid northeastern Brazil","Existência de conselho municipal ativo":"Existence of an active municipal council","Existência de plano de marketing, presença digital, campanhas ativas. Fonte: Secretaria de Turismo. Periodicidade: anual.":"Existence of a marketing plan, digital presence, active campaigns. Source: Secretariat of Tourism. Frequency: annual.","Existência de plano municipal de turismo vigente":"Existence of a current municipal tourism plan","Existência e estado de conservação de bens tombados (IPHAN, estaduais, municipais). Fonte: IPHAN. Periodicidade: bienal.":"Existence and conservation status of listed heritage assets (IPHAN, state, municipal). Source: IPHAN. Frequency: biennial.","Existência e regularid
162ade de reuniões do COMTUR. Fonte: Mapa do Turismo Brasileiro. Periodicidade: anual.":"Existence and regularity of COMTUR meetings. Source: Brazilian Tourism Map. Frequency: annual.","Existência, vigência e indicadores de execução. Fonte: Secretaria de Turismo. Periodicidade: quadrienal.":"Existence, validity and execution indicators. Source: Secretariat of Tourism. Frequency: quadrennial.","Expandir com Mandala":"Expand with Mandala","Expandir com Mandala da Sustentabilidade":"Expand with Sustainability Mandala","Expandir conhecimentos gerais":"Expand my general knowledge","Expandir energia solar para todas as comunidades":"Expand solar energy to all communities","Expandir o bar e ignorar as crÃticas":"Expand the bar and ignore the criticism","Expandir o programa para toda a Serra da Mantiqueira":"Expand the program to the entire Serra da Mantiqueira","Expandir o projeto e acolher as famÃlias":"Expand the project and welcome families","Expandir o projeto para toda a bacia hidrográfica":"Expand the project to the entire river basin","Expandir o selo para toda a região semiárida":"Expand the seal to the entire semi-arid region","Expandir para criar o maior corredor de cerrado do Brasil":"Expand to create the largest Cerrado corridor in Brazil","Expandir para criar parque estadual permanente":"Expand to create a permanent state park","Expandir para criar um viveiro comunitário de mudas":"Expand to create a community seedling nursery","Experiência do Hóspede":"Guest Experience","Experiência do Visitante":"Visitor Experience",Expira:gj,Expiração:"Expiration","Explicação (opcional)":"Explanation (optional)","Explicação exibida após resposta...":"Explanation displayed after response...","Explicação:":"Explanation:","Explique a teoria sistêmica do turismo":"Explain the systemic theory of tourism",Explorar:hj,"Explorar Cursos":"Explore Courses","Explorar o catálogo":"Explore the catalog",Exploração:"Exploration","Exploração Completa!":"Exploration Complete!","Explore a maior floresta tropical do mundo e enfrente ameaças de desmatamento, queimadas e mineração ilegal.":"Explore the world's largest tropical forest and face threats of deforestation, fires, and illegal mining.","Explore as funcionalidades antes que expire.":"Explore the features before it expires.","Explore bem durante o trial para saber qual plano atende suas necessidades.":"Explore thoroughly during the trial to know which plan meets your needs.","Explore mapas estilo campo minado, colete tesouros sustentáveis, evite armadilhas e resolva enigmas ambientais!":"Explore minesweeper-style maps, collect sustainable treasures, avoid traps and solve environmental puzzles!","Explore o catálogo, complete treinamentos e ganhe conquistas":"Explore the catalog, complete training and earn achievements","Explore o mapa, colete tesouros sustentáveis, evite armadilhas de poluição e resolva enigmas ambientais!":"Explore the map, collect sustainable treasures, avoid pollution traps and solve environmental riddles!","Exporta a matriz completa de indicadores com pesos, referências e metadados.":"Exports the complete indicator matrix with weights, references, and metadata.","Exporta o catálogo de cursos SISTUR EDU com pilares e agentes-alvo.":"Exports the SISTUR EDU course catalog with pillars and target agents.","Exporta todas as rodadas de diagnóstico com status, datas e destino associado.":"Exports all diagnostic rounds with status, dates, and associated destination.","Exporta todos os destinos cadastrados com coordenadas e código IBGE.":"Exports all registered destinations with coordinates and IBGE code.","Exporta todos os gargalos detectados com severidade e interpretação territorial.":"Exports all detected bottlenecks with severity and territorial interpretation.","Exporta todos os usuários (ativos e pendentes) com status, papel, licença, termos aceitos e acessos.":"Exports all users (active and pending) with status, role, license, accepted terms, and accesses.","Exportando...":"Exporting...",Exportar:fj,"Exportar .ics":"Export .ics","Exportar CSV":"Export CSV","Exportar Dados":"Export Data","Exportar calendário (.ics)":"Export calendar (.ics)",Exportação:"Export","Exportação DOCX e PDF com identidade visual customizável":"DOCX and PDF export with customizable visual identity","Exporte dados do SISTUR em formato CSV compatÃvel com Excel":"Export SISTUR data in Excel-compatible CSV format","Exporte diagnósticos, indicadores, planos de ação e outros dad
162os do sistema":"Export diagnostics, indicators, action plans and other system data","Exporte em PDF para compartilhar com stakeholders.":"Export to PDF to share with stakeholders.","Exporte logs para análise externa.":"Export logs for external analysis.","Extensão contemporânea baseada em Tasso, Silva & Nascimento (2024) â opt-in por diagnóstico":"Contemporary extension based on Tasso, Silva & Nascimento (2024) â opt-in per diagnostic",Externalidade:vj,"Externalidades negativas (OE melhora à s custas de RA) disparam alerta.":"Negative externalities (OE improves at the expense of RA) trigger an alert.","Externalidades negativas ocorrem quando o crescimento estrutural (OE) acontece à s custas do ambiente (RA). O sistema detecta isso quando OE melhora entre ciclos mas RA piora, gerando um alerta especÃfico de externalidade.":"Negative externalities occur when structural growth (OE) happens at the expense of the environment (RA). The system detects this when OE improves between cycles but RA worsens, generating a specific externality alert.","Extração de recursos que pode degradar ecossistemas":"Resource extraction that can degrade ecosystems",FAQ:bj,"FAQ â Perguntas Frequentes":"FAQ â Frequently Asked Questions","FAQ â Perguntas Frequentes | SISTUR":"FAQ â Frequently Asked Questions | SISTUR",FORÃA:"STRENGTH",Facebook:Aj,"Faixa interquartil: {{v0}}%â{{v1}}%":"Interquartile range: {{v0}}%â{{v1}}%","Faixa válida:":"Valid range:",Faixas:yj,"Faixas Categóricas":"Categorical Ranges","Falar com instrutor":"Talk to instructor","Falar com o time":"Talk to the team","Fale com o time":"Talk to the team","Fale com o time comercial":"Talk to the sales team","Falha ao analisar preços":"Failed to analyze prices","Falha ao analisar reputação":"Failed to analyze reputation","Falha ao analisar saúde":"Failed to analyze health","Falha ao analisar segurança":"Failed to analyze security","Falha ao buscar IBGE/SIDRA: ":"Failed to fetch IBGE/SIDRA: ","Falha ao carregar configurações do Beni":"Failed to load Beni settings","Falha ao carregar logs.":"Failed to load logs.","Falha ao carregar relatórios salvos.":"Failed to load saved reports.","Falha ao criar consórcio":"Failed to create consortium","Falha ao enviar alerta: ":"Failed to send alert: ","Falha ao enviar e-mail":"Failed to send email","Falha ao enviar o anexo":"Failed to send attachment","Falha ao executar blocos: ":"Failed to execute blocks: ","Falha ao importar CSV":"Failed to import CSV","Falha ao iniciar cálculo":"Failed to start calculation","Falha ao ler arquivo: ":"Failed to read file: ","Falha ao ler o arquivo.":"Failed to read file.","Falha ao ler o arquivo: ":"Failed to read the file: ","Falha ao registrar o anexo":"Failed to register attachment","Falha ao salvar rascunho automaticamente":"Failed to automatically save draft","Falha intermitente de conexão":"Intermittent connection failure","Falha na busca":"Search failed","Falha na geração em segundo plano.":"Background generation failed.","Falha na ingestão":"Ingestion failed","Falha na ingestão: ":"Ingestion failed: ","Falha no autosave":"Autosave failed","Falha: ":"Failure: ",Falhas:Sj,"Falhas de governança, planejamento ou coordenação institucional":"Failures in governance, planning, or institutional coordination","Falhas na execução ou prestação de serviços ao turista":"Failures in execution or provision of services to tourists",Falhou:Ej,"Falta de padronização na avaliação e comparação entre destinos":"Lack of standardization in evaluation and comparison between destinations","Faltam preencher ({{v0}}):":"Remaining to fill ({{v0}}):",FamÃlia:"Family",Fase:Cj,"Fase (opcional)":"Phase (optional)","Fase 1":"Phase 1","Fase 2":"Phase 2","Fase excluÃda":"Phase excluded","Fase: {{v0}}":"Phase: {{v0}}",Fases:Tj,"Fases do Projeto":"Project Phases","Fases representam etapas macro do projeto (ex: Planejamento, Execução, Avaliação).":"Phases represent macro stages of the project (e.g., Planning, Execution, Evaluation).","Fases sequenciais com marcos definidos":"Sequential phases with defined milestones","Fazer Primeira Solicitação":"Make First Request","Fazer Upload":"Upload","Fazer um zoológico":"Make a zoo","Fazer uma festa surpresa":"Throw a surprise party","Faça login para assinar":"Log in to subscribe","Faça login para continuar.":"Log in to continue.","Faça o upgrade para usar esta ferramenta.":"Upgrade to use this tool.","Faça upload de documentos de referência (PDFs, planilhas) por destino. Os arquivos são usados automaticamente para enriquecer diagnósticos e relatórios com IA.":"Upload reference documents (PDFs, spreadsheets) per destination. Files are automatically used to enrich diagnostics and reports with AI.","Faça upload de documentos para criar sua base de conhecimento":"Upload documents to create your knowledge base","Feature flags por organização":"Feature flags per organization",Fechar:Pj,"Fechar a vila por uma semana":"Close the village for a week","Fechar as portas e proteger apenas o que tem":"Close the doors and protect only what you have","Fechar as trilhas radicais e voltar ao ecoturismo":"Close radical trails and return to ecotourism","Fechar o bar e pedir desculpas à comunidade":"Close the bar and apologize to the community","Fechar tudo e isolar":"Close everything and isolate","Fechar â":"Close â",Feedback:Rj,"Feedback para o aluno...":"Feedback for the student...","Feedbacks são classificados por tipo: bug, sugestão, elogio.":"Feedback is categorized by type: bug, suggestion, compliment.",Ferramentas:xj,"Ferramentas de Análise":"Analysis Tools","Ferramentas disponÃveis":"Available tools","Ferramentas do SISTUR (Sistema Integrado de Suporte para Turismo em Regiões). Consulte destinos, diagnósticos territoriais e empresariais com notas por pilar (RA, OE, AO), projetos e suas tarefas, e o catálogo de capacitações. Todos os dados são escopados ao usuário autenticado e à sua organização. Percentuais já vêm em escala 0-100.":"SISTUR Tools (Integrated Support System for Tourism in Regions). Consult destinations, territorial and business diagnoses with scores by pillar (RA, OE, AO), projects and their tasks, and the training catalog. All data is scoped to the authenticated user and their organization. Percentages are already in a 0-100 scale.","Festa com sombra natural! Que ideia boa! ð¿":"Party with natural shade! What a great idea! ð¿","Festival incrÃvel e sustentável! ð":"Amazing and sustainable festival! ð",Fev:wj,"Ficou bonito por fora, mas não é de verdade...":"It looks nice on the outside, but it's not real...","Fila de Revisão":"Review Queue","Filosofia de Transformação":"Transformation Philosophy","Filtra pelo pilar SISTUR.":"Filter by SISTUR pillar.","Filtra pelo status da tarefa.":"Filter by task status.","Filtra pelo status do diagnóstico.":"Filter by diagnosis status.","Filtra pelo status do projeto.":"Filter by project status.","Filtra por destino.":"Filter by destination.","Filtra por nome do destino.":"Filter by destination name.","Filtra por tÃtulo.":"Filter by title.",Filtrar:Ij,"Filtrar destino":"Filter destination","Filtrar poluição do ar":"Filter air pollution","Filtrar por destino":"Filter by destination","Filtrar por pilar:":"Filter by pillar:","Filtrar por resultado":"Filter by result","Filtrar por âncora":"Filter by anchor","Filtrar radiação ultravioleta":"Filter ultraviolet radiation","Filtrar unidade":"Filter unit","Filtre por sala ou atribuição especÃfica.":"Filter by room or specific assignment.","Filtre por tipo de evento, usuário ou perÃodo.":"Filter by event type, user, or period.","Filtros permitem buscar por destino, status ou perÃodo.":"Filters allow searching by destination, status, or period.","Filtros por tema, nÃvel e pilar ajudam a encontrar c
162onteúdo relevante.":"Filters by theme, level, and pillar help find relevant content.","Filtros por tipo: Trial, Basic, Pro, Enterprise.":"Filters by type: Trial, Basic, Pro, Enterprise.","Filtros:":"Filters:","Fim (data)":"End (date)","Fim (hora)":"End (hour)","Fim de Jogo!":"Game Over!","Fim do perÃodo":"End of period","Fim:":"End:","Finais da História":"Story Endings","Finalizar contratação":"Finalize hiring","Finalize 1 treinamento por completo.":"Complete 1 training.","Finalmente agir e buscar parcerias para expansão":"Finally act and seek partnerships for expansion","Finanças Municipais â Receita própria, Despesa com turismo. DisponÃvel em: tesouro.fazenda.gov.br (via IBGE Pesquisas)":"Municipal Finances â Own revenue, Tourism expenditure. Available at: tesouro.fazenda.gov.br (via IBGE Pesquisas)","Fiscalizar rigorosamente e multar violações":"Strictly inspect and fine violations",Fitoplâncton:"Phytoplankton",Fixado:Dj,"Fixado na tabela de auditoria":"Fixed in audit table",Fixar:Oj,"Fixar no topo":"Pin to top","Fixar post":"Pin post","Flag de ajuste manual (was_manually_adjusted)":"Manual adjustment flag (was_manually_adjusted)",Flat:Mj,"Floração de Algas":"Algal Bloom","Flores e borboletas":"Flowers and butterflies","Flores, ciência e beleza!":"Flowers, science, and beauty!","Floresta Amazônica":"Amazon Forest","Floresta de pinheiros":"Pine forest","Floresta do norte do Brasil":"Northern Brazil forest","Fluxo TurÃstico":"Tourist Flow","Fluxo contÃnuo, ideal para equipes pequenas":"Continuous flow, ideal for small teams","Fluxo de Cálculo de Scores":"Score Calculation Flow","Fluxo de Decisão do Motor IGMA":"IGMA Engine Decision Flow","Fluxo do Diagnóstico SISTUR":"SISTUR Diagnosis Flow","Fluxo, ocupação, eventos, receita, empregos.":"Flow, occupancy, events, revenue, jobs.","Foca em infraestrutura. Lembre da natureza!":"Focuses on infrastructure. Remember nature!","Focar apenas na comunidade atual":"Focus only on the current community","Foco analÃtico":"Analytical focus","Foco em dados integráveis":"Focus on integrable data","Fogões solares e biodigestores transformam a vida na caatinga. A vegetação se regenera e o ar fica mais limpo. Mas a seca se intensifica com as mudanças climáticas.":"Solar stoves and biodigesters transform life in the caatinga. Vegetation regenerates and the air becomes cleaner. But drought intensifies with climate change.","Foi divertido, mas os animais fugiram...":"It was fun, but the animals ran away...",Fonte:Nj,"Fonte (opcional)":"Source (optional)","Fonte IGMA":"IGMA Source","Fonte Oficial":"Official Source","Fonte analisada":"Source analyzed","Fonte de financiamento":"Funding source","Fonte do dado (source_code): IBGE, CADASTUR, MANUAL, MAPA_TURISMO":"Data source (source_code): IBGE, CADASTUR, MANUAL, MAPA_TURISMO","Fonte dos dados (opcional)":"Data source (optional)","Fonte oficial: IBGE/SID
162RA (população estimada + PIB municipal)":"Official source: IBGE/SIDRA (estimated population + municipal GDP)","Fonte renovável que usa a força do vento sem poluir":"Renewable source that uses wind power without polluting","Fonte secundária":"Secondary source","Fonte: ANAC":"Source: ANAC","Fonte: API IBGE Localidades":"Source: IBGE Localities API","Fonte: IGMA":"Source: IGMA","Fonte: {{v0}}":"Source: {{v0}}",Fontes:zj,"Fontes ({{v0}})":"Sources ({{v0}})","Fontes Encontradas":"Sources Found","Fontes Oficiais":"Official Sources","Fontes cruzadas":"Cross-referenced sources","Fontes de Dados Oficiais":"Official Data Sources","Fontes de Dados Utilizadas":"Data Sources Used","Fontes de Dados e Transparência":"Data Sources and Transparency","Fontes de dados e frameworks utilizados":"Data sources and frameworks used","Fontes detectadas":"Sources detected","Fontes que se regeneram naturalmente":"Sources that regenerate naturally","Fontes: IBGE, SIDRA, DATASUS, INEP, STN, CADASTUR, Mapa do Turismo, ANA/Hidroweb":"Sources: IBGE, SIDRA, DATASUS, INEP, STN, CADASTUR, Tourism Map, ANA/Hidroweb","Fora do range":"Out of range","Foram identificados":"Were identified","Formato Preferido":"Preferred Format","Formato de aprendizado preferido":"Preferred learning format","Formato de saÃda (TTS-friendly)":"Output format (TTS-friendly)","Formato do Arquivo CSV":"CSV File Format","Formato esperado":"Expected format","Formato não suportado para extração automática. Converta para .txt/.md ou cole o conteúdo na caixa abaixo.":"Format not supported for automatic extraction. Convert to .txt/.md or paste the content in the box below.","Formatos suportados: .txt, .md, .json, .html, .csv. Para PDF/DOCX, copie o texto e cole na caixa abaixo.":"Supported formats: .txt, .md, .json, .html, .csv. For PDF/DOCX, copy the text and paste it in the box below.","Formação de gestores e trade":"Training for managers and tourism industry professionals",Formulário:"Form",Formulários:"Forms","Fornece insumos":"Provides input","Fornecedores Locais":"Local Suppliers","Forneça mais detalhes sobre a denúncia...":"Provide more details about the report...","Forneça uma resposta ao aluno sobre a decisão.":"Provide a response to the student about the decision.","Fortalecer governança":"Strengthen governance",Forte:jj,"Força da Lei":"Force of Law","Força da Marca":"Brand Strength","Força da marca analisada":"Brand strength analyzed","Fotografar as evidências e recuar silenciosamente":"Photograph the evidence and retreat silently","Fotos de turismo":"Tourism photos","Fotos genéricas":"Generic photos","Fotos normais do cotidiano":"Normal daily life photos","Fragilidade de Governança":"Governance Weakness","Fragilidades de governança comprometem a efetividade de ações de mercado e investimento no turismo.":"Governance weaknesses undermine the effectiveness of market actions and tourism investment.","Fragilidades de governança comprometem a efetividade de ações de mercado e investimento no turismo. Priorize capacitações em Ações Operacionais (AO) antes de OE.":"Governance weaknesses undermine the effectiveness of market actions and tourism investment. Prioritize training in Operational Actions (AO) before OE.","Fragmento de recife em recuperação":"Recovering reef fragment","Framework escalável para grandes organizações":"Scalable framework for large organizations","Framework ágil escalado para organizações complexas":"Scaled agile framework for complex organizations","Framework ágil iterativo com sprints curtas":"Iterative agile framework with short sprints",Franquia:kj,"Fruto do Cerrado":"Cerrado Fruit","Fruto nutritivo e medicinal":"Nutritious and medicinal fruit","Funciona mas é caro manter...":"It works but it's expensive to maintain...",Funcionalidade:_j,"Funcionalidade não funciona":"Functionality does not work","Fundamentação Teórica":"Theoretical Basis","Fundo do Oceano":"Ocean Floor",Função:"Function","Função principal que aplica as 6 regras sistêmicas de Mario Beni:":"Main function that applies Mario Beni's 6 systemic rules:","Funções SQL com SECURITY DEFINER para controle de acesso e lógica de negócio server-side.":"SQL functions with SECURITY DEFINER for access control and server-side business logic.",Furacão:"Hurricane","Furacão devastador!":"Devastating hurricane!","Fábricas verdes":"Green factories",Fácil:"Easy","Fórmula:":"Formula:","Fórmula: Score_Pilar = Σ(Score_i à Peso_i) / Σ(Peso_i) â média ponderada dos indicadores":"Formula: P
162illar_Score = Σ(Score_i à Weight_i) / Σ(Weight_i) â weighted average of indicators","Fórmulas sobre dados oficiais":"Formulas based on official data",Fórum:"Forum","Fórum de Dúvidas":"Doubt Forum","Fórum e canais de feedback":"Forum and feedback channels","Fórum: Participe da comunidade.":"Forum: Join the community.","Fóssil Vegetal":"Plant Fossil","Fóssil de planta antiga":"Ancient plant fossil",GESTORES:qj,GOP:Lj,GOVERNANCE_BLOCK:Uj,"GPT-5":"GPT-5","GPT-5 (OpenAI)":"GPT-5 (OpenAI)","GPT-5.6 Luna":"GPT-5.6 Luna","GPT-5.6 Sol":"GPT-5.6 Sol","GPT-5.6 Terra":"GPT-5.6 Terra","GPT-6 Astra":"GPT-6 Astra","GTFS + ANTT + prefeituras":"GTFS + ANTT + municipal governments",GUARDIÃO:"GUARDIAN","GUARDIÃO DO TERRITÃRIO":"TERRITORY GUARDIAN","Games â Hub de Jogos Educativos":"Games â Educational Games Hub",Gamificação:"Gamification","Gamificação Integrada":"Integrated Gamification","Ganho no mês":"Monthly gain","Ganhou dinheiro mas ninguém organizou nada...":"Made money but no one organized anything...","Gap competitivo (ENT_COMP_GAP)":"Competitive gap (ENT_COMP_GAP)","Garantias comuns aos três templates":"Guarantees common to the three templates","Gargalo diagnosticado:":"Diagnosed bottleneck:",Gargalos:Bj,"Gargalos CrÃticos":"Critical Bottlenecks","Gargalos Detectados":"Bottlenecks Detected","Gargalos Identificados":"Identified Bottlenecks","Gargalos crÃticos no municÃpio":"Critical bottlenecks in the municipality","Garimpo sem licença!":"Illegal mining!","Gasto por estadia (R$)":"Spend per stay (R$)",Gastronomia:Fj,Gastronômico:"Gastronomic","Gateway de IA gerenciado (GPT-5, Gemini 2.5) para relatórios e chat":"Managed AI Gateway (GPT-5, Gemini 2.5) for reports and chat",Gatilho:Gj,"Gatilho diagnóstico: o indicador associado precisa estar em Atenção ou CrÃtico.":"Diagnostic trigger: the associated indicator must be in Attention or Critical state.","Gatilhos identificados":"Identified triggers","Gauges + Alertas + Comparação temporal":"Gauges + Alerts + Temporal comparison","Gemini (Google)":"Gemini (Google)","Gemini 2.5 Pro":"Gemini 2.5 Pro","Gemini 3 Flash (Preview)":"Gemini 3 Flash (Preview)","Gemini 3.1 Flash Lite":"Gemini 3.1 Flash Lite","Gemini 3.1 Pro (Preview)":"Gemini 3.1 Pro (Preview)","Gemini 3.8 Flash":"Gemini 3.8 Flash",Gentrificação:"Gentrification",Geomarketing:Vj,"Geomarketing:":"Geomarketing:","Gera alerta, recomenda revisão de OE":"Generates alert, recommends OE review","Gera prompt em linguagem natural para portar este módulo a outro projeto Lovable":"Generates a natural language prompt to port this module to another Lovable project","Gerado em":"Generated on","Gerador de Relatórios com Mente Sistur":"Report Generator with Mente Sistur",Geral:$j,"Geral mÃn:":"Overall min:","Geramos recomendações personalizadas com base no seu perfil. Explore os cursos e trilhas sugeridos para você!":"We generate personalized recommendations based on your profile. Explore the suggested courses and tracks for you!","Gerando...":"Generating...","Gerar Novo":"Generate New","Gerar Projeto com IA":"Generate Project with AI","Gerar Recomendações":"Generate Recommendations","Gerar Relatório":"Generate Report","Gerar energia eólica":"Generate wind power","Gerar faltantes":"Generate missing items","Gerar nova versão":"Generate new version","Gerar plano de desenvolvimento":"Generate development plan","Gerar provas":"Generate tests","Gerar provas finais automaticamente":"Automatically generate final tests","Gerar relatório":"Generate report","Gerar sugestões":"Generate suggestions","Geração de Issues":"Issue Generation","Geração de planos de desenvolvimento com IA":"AI generation of development plans","Geração de relatórios IA.":"AI report generation.","Geração de relatórios personalizáveis com IA (templates: Completo, Executivo, Investidores)":"Customizable report generation with AI (templates: Complete, Executive, Investors)","Geração e exportação de relatórios DOCX/ABNT":"Generation and export of DOCX/ABNT reports","Geração e verificação pública de certificados":"Generation and public verification of certificates","Geração paralela das 3 subseções por pilar":"Parallel generation of the 3 subsections per pillar","Gerações Guardiãs":"Guardian Generations","Gere códigos para convidar pessoas a ingressar na sua organização":"Generate codes to invite people to join your organization","Gere relatórios completos dos diagnósticos para apresentações, tomada de decisão e prestação de contas.":"Generate complete diagnostic reports for presentations, decision-making, and accountability.","Gere relatórios personalizados dos diagnósticos com logo, cabeçalho, rodapé e cores customizáveis. Escolha visibilidade pessoal ou organizacional. Exportação em Word e PDF.":"Generate personalized diagnostic reports with customizable logo, header, footer, and colors. Choose personal or organizational visibility. Export to Word and PDF.","Gere seu código e link de convite únicos. Compartilhe com alunos para que eles se vinculem a você no cadastro. Com 5+ alunos ativos, sua mensalidade é isenta automaticamente!":"Generate your unique invitation code and link. Share with students so they can link to you during registration. With 5+ active students, your monthly fee is automatically waived!","Gerenciamento de Feedback":"Feedback Management","Gerenciamento de Projeto":"Project Management","Gerenciamento de Projetos":"Project Management","Gerenciamento de Usuários":"User Management","Gerenciamento de projetos":"Project management","Gerenciamento de questões para exames e quizzes":"Question management for exams and quizzes","Gerenciamento de treinamentos, vÃdeos e analytics":"Management of training, videos and analytics","Gerenciar Acesso: {{v0}}":"Manage Access: {{v0}}","Gerenciar conta":"Manage account","Gerenciar marcas da organização":"Manage organization brands","Gerenciar organizações":"Manage organizations","Gerenciar papéis":"Manage roles","Gerencie alunos, salas e conteúdo educacional":"Manage students, classes, and educational content","Gerencie as organizações cadastradas no sistema":"Manage organizations registered in the system","Gerencie o banco de questões usado nos exames.":"Manage the question bank used in exams.","Gerencie os destinos turÃsticos":"Manage tourism destinations","Gerencie os usuários vinculados à sua organização":"Manage users linked to your organization","Gerencie quem pode acessar: {{v0}}":"Manage who can access: {{v0}}","Gerencie salas, alunos, atividades e ganhe isenção trazendo 5+ alunos.":"Manage rooms, students, activities, and get exemption by bringing 5+ students.","Gerencie todas as licenças de uso da plataforma: visualize trials, assinaturas ativas, cancele ou estenda acessos.":"Manage all platform usage licenses: view trials, active subscriptions, cancel or extend access.","Gerencie turmas, alunos e atividades":"Manage classes, students and activities","Gerencie usuários, organizações, licenças e configurações":"Manage users, organizations, licenses, and settings","Gestor AnalÃtico":"Analytical Manager",Gestores:Hj,"Gestores Públicos":"Public Sector Managers","Gestores municipais com pouco tempo ou destinos iniciando no SISTUR":"Municipal managers with little time or destinations starting with SISTUR",Gestão:"Management","Gestão EDU":"EDU Management","Gestão HÃdrica":"Water Management","Gestão Orçamentária para Turismo":"Budget Management for Tourism","Gestão de Conteúdo":"Content Management","Gestão de Licenças":"License Management","Gestão de Projetos":"Project Management","Gestão de Provas":"Exam Management","Gestão de ResÃduos":"Waste Management","Gestão de Salas":"Classroom Management","Gestão de Usuários":"User Management","Gestão de consórcios intermunicipais":"Management of intermunicipal consortia","Gestão de cursos e c
162onteúdo":"Course and content management","Gestão de destino":"Destination management","Gestão de destinos turÃsticos":"Tourism destination management","Gestão de feedback":"Feedback management","Gestão de perfil e papéis (ADMIN/ANALYST/VIEWER/ESTUDANTE/PROFESSOR)":"Profile and role management (ADMIN/ANALYST/VIEWER/STUDENT/PROFESSOR)","Gestão de projetos do destino.":"Destination project management.","Gestão de resÃduos":"Waste management","Gestão de turmas, anúncios, diário e leaderboard":"Management of classes, announcements, diary, and leaderboard","Gestão de turmas, trilhas e acompanhamento de estudantes. Gratuito quando você tem 5 ou mais estudantes ativos que entraram pelo seu link de indicação.":"Management of classes, tracks, and student mentoring. Free when you have 5 or more active students who joined through your referral link.","Gestão pública":"Public management","Gestão pública (plano Territorial): contratação por contrato/empenho â":"Public management (Territorial plan): contracted by contract/commitment â","Gestão pública de destinos: diagnóstico territorial completo, projetos, relatórios e EDU.":"Public management of destinations: complete Territorial diagnostic, projects, reports, and EDU.","Gestão â depende de organização institucional, planejamento e governança.":"Management â depends on institutional organization, planning, and governance.",Global:Wj,"Global (toda organização)":"Global (entire organization)","Global: PNT 2024-2027, legislação federal, diretrizes do Ministério do Turismo":"Global: PNT 2024-2027, federal legislation, Ministry of Tourism guidelines","Globalização do Turismo: Megatendências do Setor e a Realidade Brasileira. São Paulo: Aleph, 2003.":"Tourism Globalization: Sector Megatrends and Brazilian Reality. São Paulo: Aleph, 2003.","Glossário de Indicadores":"Indicator Glossary","Glossário de Indicadores SISTUR":"SISTUR Indicator Glossary","Google + OTAs + redes sociais":"Google + OTAs + social networks","Google 4.3 + TripAdvisor 4.5 + Booking 8.6 â média ~4.3":"Google 4.3 + TripAdvisor 4.5 + Booking 8.6 â average ~4.3","Google Business":"Google Business","Google Maps, TripAdvisor, Booking.com e mais":"Google Maps, TripAdvisor, Booking.com and more","Google Trends + buscas sazonais":"Google Trends + seasonal searches","Google, TripAdvisor e Booking â alimenta reputação, satisfação e maturidade digital":"Google, TripAdvisor and Booking â fuels reputation, satisfaction and digital maturity","Google: {{v0}} resultado(s)":"Google: {{v0}} result(s)",Governança:"Governance","Governança Central":"Central Governance","Governança Corporativa":"Corporate Governance","Governança Participativa":"Participatory Governance","Governança TurÃstica":"Tourism Governance","Governança TurÃstica Municipal":"Municipal Tourism Governance","Governança Verde":"Green Governance","Governança central do sistema. Operações, serviços e coordenação entre os agentes do turismo.":"Central system governance. Operations, services and coordination among tourism agents.","Governança colapsou!":"Governance collapsed!","Governança do turismo: polÃticas públicas, qualificação e marketing":"Tourism governance: public policies, qualification and marketing","Governança e planejamento":"Governance and planning","Governança participativa é a democracia em ação.":"Participatory governance is democracy in action.","Governança pública, planejamento, orçamento e capacidade de tomada de decisão":"Public governance, planning, budgeting, and decision-making capacity",Grande:Qj,"Grande Barreira de Coral":"Great Barrier Reef","Grande show com fogos":"Big show with fireworks",Gratuito:Kj,"Gratuito quando você tem 5 ou mais estudantes ativos que entraram pelo seu link de indicação.":"Free when you have 5 or more active students who joined through your referral link.","Gravação do relatório, validações e auditoria":"Report recording, validations and audit","Green Key":"Green Key","Gráfico de progresso dos pilares por destino":"Pillar progress chart by destination",Gráficos:"Charts","Gráficos comparativos com rodadas anteriores.":"Comparative charts with previous rounds.","Guardião da Natureza":"Nature Guardian","Guardião do Território":"Territory Guardian","Guardião(ã)":"Guardian","Guardiões da Serra":"Guardians of the Serra","Guará-vermelho":"Scarlet Ibis","Guia SISTUR EDU":"SISTUR EDU Guide","Guia completo de navegação e uso do sistema":"Complete guide to navigating and using the system","Guia do SISTUR EDU":"SISTUR EDU Guide","Guias cadastrados no CADASTUR":"Guides registered in CADASTUR","Guias de Turismo":"Tour Guides","Guias e Agências registradas por municÃpio":"Guides and Agencies registered by municipality","Guias e Manuais":"Guides and Manuals","Guias, Agências, Estabelecimentos":"Guides, Agencies, Establishments","Gás Carbônico":"C
162arbon Dioxide","Gêmeo Digital â cenários de 1 a 5 anos":"Digital Twin â 1 to 5 year scenarios","Gêmeo Digital:":"Digital Twin:",HIGH_IS_BETTER:Yj,"HITS Mobile (API Key)":"HITS Mobile (API Key)","HTTPS / SSL":"HTTPS / SSL","Habilidades (objetivos de aprendizagem)":"Skills (learning objectives)","Habilite ou desabilite módulos do AnalÃtico individualmente por organização.":"Enable or disable Analytics modules individually per organization.","Harmonia PossÃvel":"Possible Harmony","Heading 1":"Heading 1","Heading 2":"Heading 2","Heading 3":"Heading 3","Heartbeats periódicos durante exames.":"Periodic heartbeats during exams.","Herói Ecológico":"Ecological Hero",Hidrelétrica:"Hydroelectric Plant",Hidrogênio:"Hydrogen","Hierarquia RA â OE â AO (Regra 1 e 4)":"Hierarchy RA â OE â AO (Rule 1 and 4)","Hierarquia de prioridades: RA â OE â AO":"Priority hierarchy: RA â OE â AO",História:"Story",Histórico:"History","Histórico (v{{v0}})":"History (v{{v0}})","Histórico Escolar":"Academic Transcript","Histórico de I-RA, I-OE e I-AO ao longo das rodadas calculadas":"History of I-RA, I-OE, and I-AO over the calculated rounds","Histórico de Provas":"Exam History","Histórico de Reviews":"Reviews History","Histórico de Sincronização":"Synchronization History","Histórico de Versões":"Version History","Histórico de XP":"XP History","Histórico de alterações":"Change history","Histórico de certificados emitidos.":"History of certificates issued.","Histórico de ciclos diagnósticos":"History of diagnostic cycles","Histórico de diagnósticos sincronizados de sistemas externos":"History of synchronized diagnostics from external systems","Histórico de eventos de integração":"Integration events history","Histórico de importação removido.":"Import history removed.","Histórico de reviews e benchmarking competitivo":"History of reviews and competitive benchmarking","Histórico unificado (cron + manual + admin).":"Unified history (cron + manual + admin).",Hoje:Jj,"HomicÃdios, Furtos, Cobertura policial":"Homicides, Thefts, Police coverage",Hooks:Xj,"Horas Estimadas":"Estimated Hours","Horas de Treinamento":"Training Hours","Horas de capacitação por trabalhador do setor. Fonte: SISTUR EDU + RAIS. Periodicidade: anual.":"Training hours per sector worker. Source: SISTUR EDU + RAIS. Periodicity: annual.",Horizonte:Zj,"Horizonte (anos)":"Horizon (years)","Horizonte: {{v0}} ano(s)":"Horizon: {{v0}} year(s)","Horta Orgânica":"Organic Garden",Horário:"Time","Hospedagem para visitantes":"Visitor accommodation","Hospedagem para visitantes.":"Visitor accommodation.",Hospitais:ek,"Hospitais salvam vidas todos os dias.":"Hospitals save lives every day.",Hostel:ak,Hotel:ok,"Hotel com 18 de 20 itens conformes = 90%":"Hotel with 18 out of 20 compliant items = 90%","Hotelaria e Hospitalidade":"Hotel Management and Hospitality","Hotéis atraem turistas e geram empregos.":"Hotels attract tourists and create jobs.","Hotéis e infraestrutura":"Hotels and infrastructure","Hotéis e paisagens":"Hotels and landscapes","Hotéis e resorts. RevPAR, NPS, Ocupação, KPIs hoteleiros.":"Hotels and resorts. RevPAR, NPS, Occupancy, Hotel KPIs.","Hotéis, resorts e redes hoteleiras":"Hotels, resorts and hotel chains","Houve progresso, mas há espaço para melhorar.":"Progress was made, but there is room for improvement.","Hub de Jogos":"Games Hub",Hélio:"Hélio",HÃbrido:"Hybrid","I-AO":"I-AO","I-AO - Ações Operacionais":"I-AO - Operational Actions","I-AO · Ações Operacionais":"I-AO · Operational Actions","I-OE":"I-OE","I-OE - Organização Estrutural":"I-OE - Structural Organization","I-OE · Organização Estrutural":"I-OE · Structural Organization","I-RA":"I-RA","I-RA - Relações Ambientais":"I-RA - Environmental Relations","I-RA · Relações Ambientais":"I-RA · Environmental Relations","IA citou:":"AI cited:","IA para análise e sÃntese. Não prescreve cursos.":"AI for analysis and synthesis. Does not prescribe courses.",IAO:ik,"IAO - Ações Operacionais":"IAO - Operational Actions",IBGE:tk,"IBGE + ANAC + ANATEL + Mapa do Turismo":"IBGE + ANAC + ANATEL + Tourism Map","IBGE / SIDRA":"IBGE / SIDRA","IBGE Agregados":"IBGE Aggregates","IBGE Agregados: População, PIB per capita, Densidade e Ãrea territorial":"IBGE Aggregates: Population, GDP per capita, Density and Territorial area","IBGE Cidades":"IBGE Cidades","IBGE Pesquisas":"IBGE Surveys","IBGE Pesquisas (CADASTUR)":"IBGE Research (CADASTUR)","IBGE SIDRA (Censo 2010)":"IBGE SIDRA (2010 Census)","IBGE ou INEP. Percentual da população de 6-14 anos matriculada na escola.":"IBGE or INEP. Percentage of the
1626-14 year old population enrolled in school.","IBGE {{v0}}":"IBGE {{v0}}","IBGE â Demografia & Economia":"IBGE â Demographics & Economy","IBGE â Instituto Brasileiro de Geografia e EstatÃstica":"IBGE â Brazilian Institute of Geography and Statistics","IBGE, CADASTUR, STNâ¦":"IBGE, CADASTUR, STNâ¦","IBGE, Cadastur, Mapa do Turismo e DataSUS integrados":"IBGE, Cadastur, Mapa do Turismo and DataSUS integrated","IBGE.":"IBGE.","IBGE. API de Agregados e Pesquisas Municipais. servicodados.ibge.gov.br":"IBGE. Aggregates and Municipal Surveys API. servicodados.ibge.gov.br","IBGE: dados demográficos e econômicos":"IBGE: demographic and economic data","ID da Entidade":"Entity ID","ID da propriedade no PMS (opcional)":"PMS property ID (optional)","ID do Certificado:":"Certificate ID:","ID do Log":"Log ID","ID do usuário":"User ID","IDEB = média entre IDEB anos iniciais e IDEB anos finais (INEP)":"IDEB = average between early years IDEB and final years IDEB (INEP)","IDEB baixo â Requer articulação com Educação":"Low IDEB â Requires articulation with Education","IDEB â Ãndice de Desenvolvimento da Educação Básica. DisponÃvel em: inep.gov.br (via IBGE Pesquisas)":"IDEB â Basic Education Development Index. Available at: inep.gov.br (via IBGE Pesquisas)","IDH, IDEB, Leitos, Cobertura saúde, Receita, Despesa turismo":"HDI, IDEB, Beds, Health coverage, Revenue, Tourism expenditure","IDH, IDEB, Salário médio, Gini":"HDI, IDEB, Average salary, Gini",IGMA:rk,"IGMA - Ãndice de Gestão Municipal":"IGMA - Municipal Management Index","IGMA Bloqueou Publicação":"IGMA Blocked Publication","IIET = participação do setor turismo (alojamento, alimentação, transporte) sobre o PIB municipal":"IIET = tourism sector participation (accommodation, food, transport) over municipal GDP",INEP:sk,"INEP / IDEB":"INEP / IDEB","INEP â Educação":"INEP â Education","INEP â Instituto Nacional de Estudos e Pesquisas Educacionais":"INEP â National Institute for Educational Studies and Research","INEP.":"INEP.","INEP: educação (IDEB, matrÃculas)":"INEP: education (IDEB, enrollments)","INMET + dados históricos":"INMET + historical data",INTERSECTORAL_DEPENDENCY:nk,IOE:ck,"IOE - Org. Estrutural":"IOE - Structural Org.","IPCR = (PIB per capita do municÃpio ÷ PIB per capita do Brasil) à 100":"IPCR = (Municipal GDP per capita ÷ Brazil GDP per capita) à 100","IPTL = (visitantes totais ÷ população residente) â pressão turÃstica sobre o território":"IPTL = (total visitors ÷ resident population) â tourist pressure on the territory",IRA:dk,"IRA - Relações Ambientais":"IRA - Environmental Relations","ISO 14001":"ISO 14001","ISO 9001":"ISO 9001","I_SEMT = média ponderada de IPCR (40%) + IIET (35%) + IPTL invertido (25%)":"I_SEMT = weighted average of IPCR (40%) + IIET (35%) + inverted IPTL (25%)","Idade, cobertura municipal e volume de cada fonte oficial integrada ao SISTUR.":"Age, municipal coverage and volume of each official source integrated into SISTUR.","Identidade do empreendimento e da marca":"Enterprise and brand identity","Identidade visÃvel:":"Visible identity:","Identifica automaticamente os principais concorrentes no destino com nota, volume de reviews e link da fonte.":"Automatically identifies main competitors in the destination with rating, review volume and source link.","Identifica esta unidade dentro da marca (municÃpio:":"Identifies this unit within the brand (municipality:","Identifica indicadores que dependem de múltiplos setores":"Identifies indicators that depend on multiple sectors","Identifica indicadores que dependem de múltiplos setores (saúde, educação, saneamento).":"Identifies indicators that depend on multiple sectors (health, education, sanitation).","Identifica indicadores que dependem de múltiplos setores governamentais (saúde, educação, saneamento). Gera alertas de coordenação intersetorial.":"Identifies indicators that depend on multiple governmental sectors (health, education, sanitation). Generates intersectoral coordination alerts.","Identificador do diagnóstico.":"Diagnosis identifier.","Identificador do projeto.":"Project identifier.","Identificador único e estável. Use snake_case com prefixo da categoria. Ex.: methodology.beni_3_pilares, anti_hallucination.no_rankings.":"Unique and stable identifier. Use snake_case with category prefix. Ex.: methodology.beni_3_pilares, anti_hallucination.no_rankings.","Identificação da UF":"State (UF) identification","Identificação de pilares crÃticos":"Identification of critical pillars","Identifique espécies e conceitos da zona costeira":"Identify species and concepts of the coastal zone",Idioma:lk,Ignorado:uk,"Ignorar (não será considerado no cálculo)":"Ignore (will not be considered in the calculation)","Ignorar a pressão polÃtica e focar apenas na educação local":"Ignore political pressure and focus only on local education","Ignorar e continuar trabalhando":"Ignore and continue working","Ignorar e seguir normalmente":"Ignore and proceed as usual","Ignorar indicador (não será considerado no cálculo)":"Ignore indicator (will not be included in the calculation)","Ignorar os avisos e focar em explorar a floresta por diversão":"Ignore warnings and focus on exploring the forest for fun","Ignorar para evitar conflito":"Ignore to avoid conflict",Igualar:mk,"Ilustração do modelo de negócio SISTUR: destinos públicos, empreendimentos e educação conectados":"SISTUR business model illustration: public de
162stinations, enterprises, and education connected","Imagem deve ter no máximo 2MB":"Image must be no larger than 2MB","Imagens ({{v0}}/{{v1}})":"Images ({{v0}}/{{v1}})","Impacto agregado do portfólio":"Aggregate portfolio impact","Impacto moderado no pilar":"Moderate impact on the pillar","Impacto na Comunidade":"Community Impact","Impacto projetado nos pilares":"Projected impact on pillars","Implementar limite de visitantes e taxa de conservação":"Implement visitor limits and conservation fee","Implementar quintais produtivos com espécies nativas":"Implement productive backyards with native species","Implementar regulamentação séria de segurança":"Implement serious safety regulations","Implementar sistema de trilhas com limite de visitantes":"Implement a trail system with visitor limits","Implementação das atividades planejadas":"Implementation of planned activities","Implementação em 1 dia":"1-day implementation",Importado:pk,"Importado em":"Imported on","Importando...":"Importing...","Importandoâ¦":"Importingâ¦",Importar:gk,"Importar Alunos via CSV":"Import Students via CSV","Importar CSV":"Import CSV","Importar VÃdeos do YouTube":"Import YouTube Videos","Importar dados adicionais via arquivo CSV":"Import additional data via CSV file","Importar dados operacionais (PMS / CSV)":"Import operational data (PMS / CSV)","Importar do Mapa do Turismo Brasileiro":"Import from Brazilian Tourism Map","Importar medições do Observatório por CSV":"Import Observatory measurements via CSV","Importar via CKAN":"Import via CKAN","Importar via Firecrawl":"Import via Firecrawl",Importação:"Import","Importação concluÃda com erros: ":"Import completed with errors: ","Importação concluÃda: ":"Import completed: ","Importação de Conteúdo":"Content Import","Importe vÃdeos do YouTube automaticamente com classificação por pilar SISTUR":"Automatically import YouTube videos with classification by SISTUR pillar","Imports órfãos â não declarados em nenhum módulo ({{v0}})":"Orphaned imports â not declared in any module ({{v0}})","Impostos sobre poluição":"Pollution taxes",Imprimir:hk,"Imprimir / PDF":"Print / PDF","Imprimir / Salvar PDF":"Print / Save PDF","Imprimir Certificado":"Print Certificate",Inadimplência:"Default",Inativo:fk,"Inativo recente":"Recently inactive","Inclua o cabeçalho e ao menos uma linha de dados.":"Include the header and at least one row of data.",Inclusão:"Inclusion","Inclusão Comunitária":"Community Inclusion",Incorreta:vk,"Incêndio Florestal":"Forest Fire","Incêndio florestal!":"Forest fire!","Incêndios florestais":"Forest fires","Incêndios, construções e descaso destruÃram o que levou milhões de anos para se formar. Nascentes secaram, espécies desapareceram.":"Fires, constructions, and neglect destroyed what took millions of years to form. Springs dried up, species disappeared.","Independem de plano â valem para todos.":"Independent of plan â valid for all.",Independente:bk,"Independente (1 unidade)":"Independent (1 unit)",Indeterminado:Ak,Indicador:yk,'Indicador "OrÃ
162§amento de Turismo" crÃtico - curso de gestão orçamentária prescrito':'Critical "Tourism Budget" indicator - budgetary management course prescribed','Indicador "Plano Municipal de Turismo" crÃtico - capacitação em elaboração de planos prescrita':'Critical "Municipal Tourism Plan" indicator - training in plan elaboration prescribed',"Indicador (opcional)":"Indicator (optional)","Indicador + Pilar + Status + Interpretação â Curso":"Indicator + Pillar + Status + Interpretation â Course","Indicador com score":"Indicator with score","Indicador da Mandala da Sustentabilidade no Turismo (Tasso, Silva & Nascimento, 2024) â extensão complementar ativada via opt-in no diagnóstico.":"Tourism Sustainability Mandala indicator (Tasso, Silva & Nascimento, 2024) â complementary extension activated via opt-in in the diagnostic.","Indicador da Mandala da Sustentabilidade no Turismo.":"Indicator of the Sustainability Mandala in Tourism.","Indicador não encontrado":"Indicator not found","Indicador · {{v0}}":"Indicator · {{v0}}",Indicadores:Sk,"Indicadores Derivados":"Derived Indicators","Indicadores Enterprise":"Enterprise Indicators","Indicadores Pré-preenchidos":"Pre-filled Indicators","Indicadores calculados ({{v0}})":"Calculated indicators ({{v0}})","Indicadores classificados: CrÃtico/Atenção/Adequado":"Indicators classified: Critical/Attention/Adequate","Indicadores com provenance 5/5 são preenchidos automaticamente via API oficial. Indicadores manuais devem ser preenchidos pela equipe técnica. O sistema aceita importação CSV em formato brasileiro (UTF-8 ou Latin-1, vÃrgula decimal).":"Indicators with 5/5 provenance are automatically filled via official API. Manual indicators must be filled by the technical team. The system accepts CSV import in Brazilian format (UTF-8 or Latin-1, decimal comma).","Indicadores core + crÃticos. Para cidades médias ou acompanhamento tático.":"Core + critical indicators. For medium-sized cities or tactical monitoring.","Indicadores de Saúde â Leitos hospitalares, mortalidade infantil, mortalidade geral. DisponÃvel em: datasus.saude.gov.br (via IBGE Pesquisas)":"Health Indicators â Hospital beds, infant mortality, general mortality. Available at: datasus.saude.gov.br (via IBGE Surveys)","Indicadores de campo, secretarias municipais":"Field indicators, municipal secretariats","Indicadores de coleta local: levantamento de campo, dados da Secretaria de Turismo, Prefeitura":"Local collection indicators: field survey, data from the Tourism Secretariat, City Hall","Indicadores de conformidade regulatória e segurança operacional.":"Regulatory compliance and operational safety indicators.","Indicadores de eficiência operacional e qualidade dos serviços prestados.":"Operational efficiency and service quality indicators.","Indicadores de gestão de pessoas e desenvolvimento de equipe.":"People management and team development indicators.","Indicadores de saúde pública municipal":"Municipal public health indicators","Indicadores em Atenção ou CrÃtico":"Indicators with Attention or Critical status","Indicadores essenciais para municÃpios menores ou análises rápidas. Ideal para primeira avaliação ou destinos com dados limitados.":"Essential indicators for smaller municipalities or quick analyses. Ideal for initial assessment or destinations with limited data.","Indicadores locais":"Local Indicators","Indicadores manuais ({{v0}})":"Manual indicators ({{v0}})","Indicadores monitorados em {{v0}} projeto(s) com baseline registrado.":"Indicators monitored in {{v0}} project(s) with registered baseline.","Indicadores neste nó":"Indicators in this node","Indicadores oficiais do IGMA integrados ao SISTUR":"Official IGMA indicators integrated into SISTUR","Indicadores opcionais":"Optional Indicators","Indicadores por Pilar e Tier":"Indicators by Pillar and Tier","Indicadores preenchidos":"Completed indicators","Indicadores sem curso correspondente no catálogo":"Indicators without a matching course in the catalog","Indicadores sem fonte oficial disponÃvel serão direcionados para preenchimento manual.":"Indicators without an official source available will be directed for manual input.","Indicadores vinculados":"Linked indicators","Indique seu nÃvel de experiência em turismo.":"Indicate your level of experience in tourism.","Industrialização verde":"Green industrialization","Indústria, Inovação e Infraestrutura":"Industry, Innovation and Infrastru
162cture","Inexistência de ferramenta que aplique automaticamente teoria acadêmica validada":"Absence of a tool that automatically applies validated academic theory",Info:Ek,Informado:Ck,"Informação falsa ou enganosa":"False or misleading information","Informação para todos":"Information for all","Informação para todos.":"Information for all.",Informações:"Information","Informações adicionais sobre o empreendimento...":"Additional information about the enterprise...","Informações completas do registro de auditoria":"Complete audit log information","Informações da sua conta no SISTUR":"Your SISTUR account information","Informações pessoais (RG, cartões)":"Personal information (ID, cards)","Informe de 1 a 5 e-mails":"Enter 1 to 5 emails","Informe nome do empreendimento e CNPJ. O sistema valida na Receita e localiza o endereço automaticamente.":"Enter the establishment name and CNPJ. The system validates with Receita and automatically locates the address.","Informe o destino.":"Enter the destination.","Informe o motivo da denúncia. Nossa equipe irá analisar e tomar as medidas necessárias.":"Enter the reason for the report. Our team will review it and take the necessary action.","Informe o motivo da revogação":"Enter the reason for revocation","Informe o motivo. Esta ação é registrada e o certificado fica inválido publicamente.":"Enter the reason. This action is logged and the certificate is publicly marked as invalid.","Informe o nome":"Enter the name","Informe o nome da sua organização ou crie uma nova.":"Enter your organization's name or create a new one.","Informe o nome do empreendimento no bloco Reviews":"Enter the establishment's name in the Reviews block","Informe o nome do empreendimento no bloco Reviews para buscar o CNPJ.":"Enter the establishment name in the Reviews block to search for the CNPJ.","Informe o nome do empreendimento no campo abaixo antes de rodar as buscas.":"Enter the establishment name in the field below before running searches.","Informe o nome do estabelecimento e a localização":"Enter the establishment name and location","Informe o nome do estabelecimento e a localização antes de buscar.":"Enter the establishment name and location before searching.","Informe o nome do estabelecimento e a localização.":"Enter the establishment name and location.","Informe o nome do estabelecimento.":"Enter the establishment name.","Informe o nome do projeto":"Enter the project name","Informe o tÃtulo do diagnóstico":"Enter the diagnostic title","Informe o tópico desejado":"Enter the desired topic","Informe seu nome completo":"Enter your full name","Informe sua disponibilidade semanal de horas para estudo.":"Inform your weekly availability of study hours.","Informe um CNPJ válido (14 dÃgitos).":"Enter a valid CNPJ (14 digits).","Informe um código":"Enter a code","Informe um e-mail válido":"Enter a valid email","Infra. de Saúde do Entorno":"Surrounding Health Infra.",Infraestrutura:Tk,"Infraestrutura de Saúde do Entorno":"Surrounding Health Infrastructure","Infraestrutura de apoio ao turismo. Depende da estabilidade ambiental para expansão sustentável.":"Tourism support infrastructure. Depends on environmental stability for sustainable expansion.","Infraestrutura de saúde analisada":"Health infrastructure analyzed","Infraestrutura turÃstica, serviços, mercado, produtos e entrega ao visitante":"Tourism infrastructure, services, market, products and visitor delivery","Infraestrutura turÃstica: hotéis, transporte, sinalização e equipamentos":"Tourism infrastructure: hotels, transport, signage and equipment","Ingestão IBGE, Mapa do Turismo, CADASTUR e outros":"IBGE, Mapa do Turismo, CADASTUR and other ingestion","Ingestão via APIs (IBGE, CADASTUR, Mapa do Turismo) + dados manuais":"Ingestion via APIs (IBGE, CADASTUR, Mapa do Turismo) + manual data","Iniciando preenchimento automático...":"Starting auto-fill...",Iniciante:Pk,"Iniciar Exame":"Start Exam","Iniciar Importação":"Start Import","Iniciar Novo Diagnóstico":"Start New Assessment","Iniciar conversa":"Start conversation","Iniciar nova rodada":"Start new round","Iniciar replantio emergencial e criar brigada para o futuro":"Start emergency replanting and create a brigade for the future","Iniciar trilha":"Start learning path","Iniciar um replantio emergencial na área devastada":"Start an emergency replanting in the devastated area","Iniciativas de Sustentabilidade":"Sustainability Initiatives",Iniciação:"Initiation","Innovation & Planning":"Innovation & Planning","Inovação Oceânica":"Oceanic Innovation","Inovação TurÃstica":"Tourism Innovation","Inovação local replicada em outras comunidades costeiras!":"Local innovation replicated in other coastal communities!","Inserir exemplo":"Insert example","Inserir o código":"Enter the code","Inserir o código vincula você automaticamente ao professor.":"Entering the code automatically links you to the professor.","Inseto polinizador e bioindicador de saúde ambiental":"Pollinating insect and environmental health bioindicator",Instagram:Rk,"Instagram + Facebook + TikTok":"Instagram + Facebook + TikTok","Instagram, Facebook, TikTok, YouTube e LinkedIn: perfis ativos e base estimada de seguidores":"Instagram, Facebook, TikTok, YouTube and LinkedIn: active profiles and estimated follower base","Instalar sistema de monitoramento e patrulha noturna":"Install monitoring and night patrol system",Instrutor:xk,"Instruções do Exame":"Exam Instructions","Instruções para o Beni neste projeto (opcional). Ex.: foco no destino Barretos.":"Instructions for Professor Beni on this project (optional). Ex.: focus on Barretos destination.","Insumos necessários:":"Required inputs:","Insumos:":"Inputs:",Integrada:wk,Integral:Ik,"Integral ({{v0}})":"Full ({{v0}})","Integral â 96 indicadores, 1â2 semanas. Recomendado para certificações e planos diretores.":"Integral â 96 indicators, 1â2 weeks. Recommended for certifications and master plans.",Integração:"Integration","Integração IA (MCP)":"AI Integration (MCP)","Integração com 5+ APIs oficiais para pré-preenchimento de dados":"Integration with 5+ official APIs for data pre-filling","Integração com Google Business Reviews via Edge Function":"Integration with Google Business Reviews via Edge Function","Integração com Sistemas Externos":"Integration with External Systems","Integração com outros sistemas":"Integration with other systems","Integração opcional. Conecte apenas se você possui credenciais ativas no seu PMS â todos os adaptadores estão prontos.":"Optional integration. Connect only if you have active credentials in your PMS â all adapters are ready.","Integridade de Dados":"Data Integrity",Inteligentes:Dk,Inteligência:"Intelligence","Inteligência SISTUR":"SISTUR Intelligence","Inteligência TurÃstica":"Tourism Intelligence","Inteligência ancorada nos microdados do seu território":"Intelligence grounded in your territory's microdata","Inteligência de Receita e Cenários":"Revenue and Scenarios Intelligence","Intensificar a produção para maximizar o lucro":"Intensify production to maximize profit","Interagir com posts":"Interact with posts","Interaja com outros profissionais do turismo":"Interact with other tourism professionals",Interativo:Ok,"Interações registradas":"Recorded interactions","Interdependência Setorial":"Sectoral Interdependence","Interessados capturados na página pública de preços (/planos).":"Interested parties captured on the public pricing page (/plans).",Interesses:Mk,"Interface e experiência de usuário: design system, fluxos de navegação":"User interface and experience: design system, navigation flows",Intermediário:"Intermediate",Internacional:Nk,Interpretação:"Interpretation","Interpretação padrão:":"Default interpretation:","Interpretação territorial atribuÃda":"Assigned territorial interpretation","Interpretação territorial compatÃvel (Estrutural, Gestão ou Entrega).":"Compatible territorial interpretation (Structural, Management or Delivery).","Interpretação territorial:":"Territorial interpretation:","Intervenção imediata. Pode acionar bloqueios IGMA.":"Immediate intervention. May trigger IGMA blocks.",Introdutório:"Introductory","Introduzir fogões solares e biogás como alternativa":"Introduce solar and biogas stoves as an alternative","Inventário TurÃstico":"Tourism Inventory","Investigar a origem do esgoto ilegal":"Investigate the origin of illegal sewage","Investigar sozinho as atividades ilegais":"Investigate illegal activities alone","Investimento de 1-2 semanas":"1-2 weeks investment","Investimento em saneamento":"Investment in sanitation",InÃcio:"Home","InÃcio de prova":"Test start","InÃcio do perÃodo":"Start of period","InÃcio:":"Start:","Ir ao Catálogo EDU":"Go to EDU Catalog","Ir ao catálogo":"Go to catalog","Ir direto para Preenchimento":"Go directly to Data Entry","Ir para":"Go to","Ir para Cálculo do Diagnóstico":"Go to Diagnostic Calculation","Ir para Projetos":"Go to Projects","Ir para o inÃcio":"Go to top","Ir para {{v0}}":"Go to {{v0}}","Irrigação excessiva":"Excessive irrigation",'Isso irá mudar o status do diagnóstico para "Rascunho" e você poderá editar os dados dos indicadores. Após as alterações, será necessário recalcular os Ãndices.':'This will change the diagnosis status to "Draft" and you will be able to edit the indicator data. After the changes, it will be necessary to recalculate the indices.',"Isso pode levar até alguns minutos.":"This may take up to a few minutes.","Isso pode ocorrer se não houver mapeamentos configurados ou se todos os indicadores estão adequados.":"This may occur if no mappings are configured or if all indicators are adequate.","Isso pode ocorrer se os mapeamentos indicadorâcurso ainda não foram importados.":"This may occur if the indicatorâcourse mappings have not yet been imported.","Issue / Ocorrência":"Issue / Occurrence","Issues são identificadas automaticamente (indicadores abaixo do limiar).":"Issues are automatically identified (indicators below threshold).","Item ({{v0}} disponÃveis)":"Item ({{v0}} available)","Itens aguardando priorização":"Items awaiting prioritization","Itens da trilha ({{v0}}/{{v1}})":"Trail items ({{v0}}/{{v1}})","Itens em validação/teste":"Items in validation/testing","Itens finalizados":"Completed items","Itens sendo desenvolvidos":"Items in development",JSON:"JSON","JSON (backup completo)":"JSON (full backup)","Jacaré-do-papo-amarelo":"Broad-snouted Caiman",Jan:zk,"Janela do projeto:":"Project window:","Jardim Botânico":"Botanical Garden","Jardins botânicos preservam espécies raras de plantas.":"Botanical gardens preserve rare plant species.","Jardins do Mar":"Sea Gardens","Jardins flutuantes filtram a água e encantam visitantes.":"Floating gardens filter water and delight visitors.","Job ID":"Job ID","Jogadas:":"Plays:",Jogar:jk,"Jogo Encerrado!":"Game Over!","Jogo da Memória Ecológico!":"Eco Memory Game!","Jogo da Memória: Teste seus conhecimentos sobre indicadores.":"Memory Game: Test your knowledge of indicators.","Jogo da Memória: pares de conceitos turÃsticos gerados dinamicamente":"Memory Game: dynamically generated pairs of tourism concepts","Jogo da memória ambiental! Associe imagens a descrições sobre fauna, flora e sustentabilidade dos biomas brasileiros.":"Environmental memory game! Match images to descriptions of wildlife, flora and sustainability in Brazilian biomes.","Jogo da memória educativo":"Educational memory game","Jogo de cartas estratég
162ico com mecânicas de ameaças":"Strategic card game with threat mechanics","Jogo de cartas estratégico onde você defende seu destino turÃstico construindo, gerenciando recursos e enfrentando ameaças.":"A strategic card game where you defend your tourism destination by building, managing resources and facing threats.","Jogo narrativo de role-playing":"Narrative role-playing game","Jogo salvo! ð¾":"Game saved! ð¾","Jogos Educacionais":"Educational Games","Jogos educacionais: mecânicas, conteúdo e persistência":"Educational games: mechanics, content, and persistence","Jogos: Jogue todos os 4 jogos educacionais.":"Games: Play all 4 educational games.","Jogue cartas de {{v0}} aqui":"Play cards from {{v0}} here","Jornada de acesso (fluxo)":"Access journey (flow)",Jul:kk,Jun:_k,"Justificativa da decisão...":"Decision justification...","Justificativa explÃcita para cada prescrição":"Explicit justification for each prescription","Justificativa para ajustes manuais":"Justification for manual adjustments","Justiça na Floresta":"Justice in the Forest","Justiça no Cerrado":"Justice in the Cerrado","Já existe":"Already exists","Já existe uma marca com esse nome nesta organização.":"A brand with this name already exists in this organization.","Já tenho uma conta":"I already have an account","KPIs de Projetos":"Project KPIs","KPIs financeiros essenciais para gestão de receita e rentabilidade hoteleira.":"Essential financial KPIs for hotel revenue and profitability management.","KPIs: RevPAR, NPS, Ocupação, GOP Margin":"KPIs: RevPAR, NPS, Occupancy, GOP Margin",Kanban:qk,"Kanban, fases, milestones, orçamento, governança":"Kanban, phases, milestones, budget, governance","Knowledge base para consultas e referências":"Knowledge base for queries and references","L/hóspede/d":"L/guest/d","LANGUAGE plpgsql SECURITY DEFINER AS $$":"LANGUAGE plpgsql SECURITY DEFINER AS $$","LANGUAGE sql STABLE SECURITY DEFINER AS $$":"LANGUAGE sql STABLE SECURITY DEFINER AS $$",LEED:Lk,LTV:Uk,"LTV / CAC":"LTV / CAC","LTV = gasto por estadia à estadias por ano à anos de relacionamento à margem. O custo de aquisição sugerido vem da comissão média dos canais.":"LTV = spend per stay à stays per year à years of relationship à margin. The suggested acquisition cost comes from the average channel commission.","LTV do hóspede":"Guest LTV","LTV do hóspede:":"Guest LTV:","Lagarto de Altitude":"Altitude Lizard",Lançamento:"Launch",'Lançar campanha "Praia Sem Plástico" e banir descartáveis':'Launch "Plastic-Free Beach" campaign and ban disposables',"Latitude (opcional)":"Latitude (optional)","Latitude inválida":"Invalid Latitude","Latência Média":"Average Latency","Latência de Consultas":"Query Latency","Latência elevada â considere otimizar queries":"High latency â consider optimizing queries","Laudo de Acessibilidade (NBR 9050)":"Accessibility Report (NBR 9050)",Lazer:Bk,Leads:Fk,"Leads comerciais":"Sales leads","Legenda:":"Legend:",Legislação:"Legislation","Lei 9.609/1998 â Proteção da Propriedade Intelectual de Programa de Computador.":"Law 9.609/1998 â Protection of Intellectual Property of Computer Programs.","Leia as instruções antes de começar":"Read the instructions before starting","Leia atentamente os termos de uso e polÃtica de privacidade.":"Read the terms of use and privacy policy carefully.","Leia cada capÃtulo com atenção, pense nas consequências e escolha com sabedoria. O futuro do bioma está nas suas mãos!":"Read each chapter carefully, consider the consequences and choose wisely. The future of the biome is in your hands!","Leis protegem o que é de todos.":"Laws protect what belongs to everyone.","Leitos / 1k hab":"Beds / 1k inhabitants","Leitos formais (CADASTUR) por 1.000 habitantes":"Formal beds (CADASTUR) per 1,000 inhabitants","Leitos por hab. = (leitos de hospedagem CADASTUR ÷ população) à 1000":"Beds per inhabitant = (CADASTUR accommodation beds ÷ population) à 1000","Leitos totais":"Total beds","Leitos, Transporte, Sinalização":"Beds, Transportation, Signaling",Leitura:Gk,"Lembrete anual: o MTur publica novas médias de gasto e permanência todo ano.":"Annual reminder: MTur publishes new spending and stay averages every year.","Levante festas, tradições, artesanato, gastronomia tÃpica e expressões culturais ativas no municÃpio junto à Secretaria de Cultura.":"Survey active festivals, traditions, crafts, typical gastronomy, and cultural expressions in the municipality with the Culture Department.","Levante o calendário de eventos turÃsticos junto à Secretaria de Turismo ou C
162onvention Bureau. Conte apenas eventos com impacto turÃstico.":"Gather the calendar of tourist events with the Tourism Department or Convention Bureau. Only count events with tourist impact.","Li e concordo com os":"I have read and agree to the","Libera todas as ações":"Releases all actions","Libera um recurso especÃfico para a organização, independente do plano.":"Releases a specific feature for the organization, regardless of the plan.","Liberada em":"Released on",Liberar:Vk,"Liberar acesso ilimitado":"Release unlimited access","Liberar para todos os usuários autenticados":"Release to all authenticated users","Liberações ilimitadas":"Unlimited releases","Libere acesso para todos os membros de organizações especÃficas":"Grant access to all members of specific organizations","Libere acesso para usuários especÃficos":"Grant access to specific users","LicenseContext verifica plano em cada rota":"LicenseContext verifies plan on each route","Licença Ambiental (quando aplicável)":"Environmental License (if applicable)","Licenças organizacionais são vinculadas à organização contratante e podem ser redistribuÃdas entre membros conforme os limites de cota estabelecidos.":"Organizational licenses are linked to the contracting organization and can be redistributed among members according to established quota limits.",Liderança:"Leadership","Liderar projeto de proteção permanente das nascentes":"Lead permanent spring protection project","Liderar um grande projeto de reflorestamento com espécies nativas":"Lead a large reforestation project with native species","Limiares de Status (Não Negociáveis)":"Status Thresholds (Non-Negotiable)","Limitação Estrutural do Território":"Territorial Structural Limitation",Limitações:"Limitations","Limitações ambientais bloqueiam expansão estrutural":"Environmental limitations block structural expansion","Limitações ambientais bloqueiam expansão estrutural. Se RA está crÃtico, EDU_OE e Marketing são bloqueados.":"Environmental limitations block structural expansion. If RA is critical, EDU_OE and Marketing are blocked.","Limite de tempo (minutos)":"Time limit (minutes)","Limite de vÃdeos":"Video limit","Limites:":"Limits:",Limpar:$k,"Limpar filtro":"Clear filter","Limpar filtros":"Clear filters","Limpar seleção":"Clear selection","Limpeza de Praia":"Beach Cleaning","Linha de orçamento salva":"Budget line saved","Linha do tempo":"Timeline",Linhagem:Hk,"Linhagem dos Dados (Data Lineage)":"Data Lineage","Linhas de Orçamento":"Budget Lines","Linhas no catálogo":"Lines in catalog","Linhas válidas":"Valid lines",Link:Wk,"Link (opcional)":"Link (optional)","Link ativo":"Active link","Link copiado":"Link copied","Link copiado!":"Link copied!","Link de convite copiado!":"Invitation link copied!","Link de verificação copiado!":"Verification link copied!","Link somente leitura":"Read-only link",Lista:Qk,"Lista as capacitações e cursos do catálogo educacional disponÃveis ao usuário.":"Lists the training and courses from the educational catalog available to the user.","Lista as tarefas de um projeto, com responsável, prazo e status.":"Lists project tasks, with assignee, deadline, and status.","Lista com razão especÃfica + relevância score":"List with specific reason + relevance score","Lista de alunos com status individual.":"List of students with individual status.","Lista de issues e prescrições do motor IGMA.":"List of issues and prescriptions from the IGMA engine.","Lista de problemas crÃticos":"List of critical problems","Lista de projetos atrasados com dias de atraso.":"List of delayed projects with days of delay.","Lista de projetos com tarefas vencidas":"List of projects with overdue tasks","Lista de todos os cursos cursados, com nota, carga horária e certificados":"List of all courses taken, with grades, course hours and certificates","Lista os destinos turÃsticos acessÃveis ao usuário autenticado.":"Lists the tourist destinations accessible to the authenticated user.","Lista os diagnósticos (rodadas de avaliação) acessÃveis ao usuário, com nota e classificação final.":"Lists the diagnoses (assessment roun
162ds) accessible to the user, with score and final classification.","Lista os projetos de intervenção acessÃveis ao usuário autenticado.":"Lists the intervention projects accessible to the authenticated user.","Lista priorizada de funcionalidades":"Prioritized feature list","Listar capacitações":"List trainings","Listar destinos":"List destinations","Listar diagnósticos":"List diagnoses","Listar projetos":"List projects","Listar tarefas":"List tasks","Listar tarefas do projeto":"List project tasks","Liste os destinos que eu tenho acesso no SISTUR.":"List the destinations I have access to in SISTUR.","Liste os projetos em andamento e as tarefas atrasadas de cada um.":"List ongoing projects and overdue tasks for each.","Liste todas as regulamentações aplicáveis (Vigilância Sanitária, ABNT NBR 15401, Corpo de Bombeiros, Acessibilidade, LGPD) e calcule: (itens conformes ÷ total de itens) à 100.":"List all applicable regulations (Sanitary Surveillance, ABNT NBR 15401, Fire Department, Accessibility, LGPD) and calculate: (compliant items ÷ total items) à 100.","Litoral com praias e mar":"Coastline with beaches and sea",Live:Kk,Lives:Yk,"Lives Prescritas":"Prescribed Live Sessions","Lives, prazos e exames dos próximos 90 dias":"Live sessions, deadlines and exams for the next 90 days","Lixo Tóxico":"Toxic Waste","Lixo eletrônico contém metais pesados tóxicos e exige descarte especial.":"Electronic waste contains toxic heavy metals and requires special disposal.","Lixo se acumula na cidade.":"Trash accumulates in the city.","Lições do Sertão":"Lessons from the Sertão","Lobo-guará":"Maned Wolf",Local:Jk,Localização:"Location",Log:Xk,"Log de Eventos":"Event Log","Log de Interações (":"Interactions Log (","Log de auditoria de operações crÃticas":"Audit log of critical operations","Login de Usuário":"User Login","Login realizado com sucesso!":"Login successful!",Logo:Zk,"Logo da Organização":"Organization Logo","Logo da organização":"Organization logo",Logs:e_,"Logs de Auditoria":"Audit Logs","Logs de auditoria":"Audit logs","Logs de auditoria e monitoramento":"Audit and monitoring logs","Logs do Gerador":"Generator Logs","Logs do Gerador de Relatórios":"Report Generator Logs",Longe:a_,"Longitude (opcional)":"Longitude (optional)","Longitude inválida":"Invalid Longitude","Lua de Mel":"Honeymoon","Lucro e Lixo":"Profit and Trash","Lucro operacional bruto ÷ quartos disponÃveis no perÃodo. Consulte a DRE (Demonstração do Resultado do ExercÃcio).":"Gross operating profit ÷ available rooms during the period. Consult the Income Statement (Statement of Income).","Lugar de encontro":"Meeting place","LÃder Organizado":"Organized Leader","LÃder Sábio":"Wise Leader",LÃquen:"Lichen","LÃquen Ancestral":"Ancestral Lichen","LÃquen centenário bioindicador":"Centennial bioindicator lichen",MAJOR:o_,"MAPA DO TURISMO":"TOURISM MAP",MARKETING:i_,MARKETING_BLOCKED:t_,MINOR:r_,MIN_MAX:s_,"MIN_MAX (Linear)":"MIN_MAX (Linear)",MST:n_,"Madeireiros avançam.":"Loggers advance.",Mai:c_,"Maior canÃdeo da América do Sul, sÃmbolo do Cerrado":"Largest canid in South America, symbol of the Cerrado","Maior felino das Américas, topo da cadeia alimentar":"Largest feline in the Americas, top of the food chain","Maior é Melhor":"Bigger is Better","Mais ações do post":"More post actions","Mais carros vieram preencher...":"More cars came to fill...","Mais conectividade":"Greater connectivity","Mais de 3 anos de experiência":"More than 3 years of experience","Mais dinheiro, mas os recifes sofrem com o excesso de visitantes.":"More money, but reefs suffer from over-visitation.","Mais hotéis, mais poluição â Alerta":"More hotels, more pollution â Alert","Mais novo Gemini â rápido":"Newest Gemini â fast","Mais rápido, mas polui mais...":"Faster, but pollutes more...","Mais um negócio que gera lixo. Os pescadores te olham com desprezo.":"Another business that generates trash. Fishermen look at you with contempt.","MamÃfero marinho migratório que se reproduz na costa brasileira":"Migratory marine mammal that reproduces on the Brazilian coast","Mancha de Ãleo":"Oil Slick",Mandala:d_,"Mandala da Sustentabilidade no Turismo (MST)":"Sustainability Mandala in Tourism (MST)","Mandala da Sustentabilidade no Turismo ativada â diagnóstico inclui 9 indicadores complementares (Tasso, Silva & Nascimento, 2024) cobrindo acessibilidade, conectividade 5G/Wi-Fi (Anatel), comparecimento eleitoral (TSE), qualificação PNQT (CADASTUR), TBC e mais.":"Tourism Sustainability Mandala activated â diagnostic includes 9 complementary indicators (Tasso, Silva & Nascimento, 2024) covering accessibility, 5G/Wi-Fi connectivity (Anatel), voter turnout (TSE), PNQT qualification (CADASTUR), TBC, and more.","Mandala do Destino":"Destination Mandala","Manguezais armazenam até 10x mais carbono que florestas":"Mangroves store up to 10x more carbon than forests","Manguezais protegem a costa contra tsunamis e erosão":"Mangroves protect the coast against tsunamis and erosion","Manguezais são berçários da vida marinha.":"Mangroves are nurseries for marine life.","Manguezais são berçários naturais para peixes e crustáceos.":"Mangroves are natural nurseries for fish and crustaceans.","Manguezais são locais de reprodução de 80% dos peixes":"Mangroves are breeding grounds for 80% of fish","Mantenha as barras equilibradas para um final feliz!":"Keep the bars balanced for a happy ending!","Manter apenas a área atual":"Keep only the current area","Manter equilÃbrio acima de 70%":"Maintain balance above 70%","Manter o meu":"Keep mine","Mantém c
162omparabilidade":"Maintains comparability","Mantém o equilÃbrio perfeito":"Maintains perfect balance",Manuais:l_,Manual:u_,"Manual (Média)":"Manual (Average)","Manual (equipe local)":"Manual (local team)","Manual ({{v0}})":"Manual ({{v0}})","Manual / promocional":"Manual / promotional","Manual de Diagnósticos":"Diagnostic Manual","Manual de Diagnósticos Territoriais":"Territorial Assessment Manual","Manual do Usuário SISTUR":"SISTUR User Manual","Manual:":"Manual:","Manutenção Preventiva":"Preventive Maintenance","Manutenção é essencial.":"Maintenance is essential.","Manutenção. Revisão em 18 meses.":"Maintenance. Review in 18 months.","Mapa MTur":"MTur Map","Mapa Turismo":"Tourism Map","Mapa de calor da oferta":"Supply heatmap","Mapa do Turismo":"Tourism Map","Mapa do Turismo (MTur)":"Tourism Map (MTur)","Mapa do Turismo Brasileiro":"Brazilian Tourism Map","Mapa do Turismo Brasileiro (MTur)":"Brazilian Tourism Map (MTur)","Mapa do Turismo Brasileiro (mapa.turismo.gov.br): Região turÃstica, categoria (A-E), empregos, estabelecimentos, visitantes nacionais e internacionais, arrecadação e conselho municipal de turismo":"Brazilian Tourism Map (mapa.turismo.gov.br): Tourist region, category (A-E), jobs, establishments, national and international visitors, revenue and municipal tourism council","Mapa do Turismo Brasileiro â API REST de Regionalização. DisponÃvel em: mapa.turismo.gov.br":"Brazilian Tourism Map â Regionalization REST API. Available at: mapa.turismo.gov.br","Mapa do Turismo Brasileiro â mapa.turismo.gov.br":"Brazilian Tourism Map â mapa.turismo.gov.br","Mapas e diagramas":"Maps and diagrams","Mapas e gráficos":"Maps and charts","Mapas/gráficos de turismo":"Tourism maps/charts","Mapeamento detalhado de gargalos":"Detailed bottleneck mapping","Mapear as áreas de nascentes ameaçadas":"Map threatened spring areas",Mar:m_,"Mar de Soja":"Sea of Soy",Marca:p_,"Marca (Final)":"Brand (Final)","Marca / Rede de Hotéis":"Brand / Hotel Chain","Marca de chuva no solo":"Rain mark on the ground","Marca do Sertão":"Sertão Brand","Marca:":"Brand:","Marcado como não aplicável pelo usuário":"Marked as
162not applicable by the user","Marcar como aceita":"Mark as accepted","Marcar como concluÃda":"Mark as complete","Marcar como concluÃdo":"Mark as complete","Marcar como lido":"Mark as read","Marcar como não concluÃdo":"Mark as incomplete","Marcar como principal":"Mark as primary","Marcar como resolvido":"Mark as resolved","Marcar como solução":"Mark as solution","Marcas / Redes de Hotéis":"Brands / Hotel Chains","Marcas da organização":"Organization brands","Marcas existentes aparecem automaticamente quando você cria diagnósticos empresariais.":"Existing brands appear automatically when you create business diagnostics.",Marco:g_,"Marco excluÃdo":"Milestone excluded",Marcos:h_,"Marcos do Projeto":"Project Milestones","Marcos obrigatórios por pilar com evidência e aprovação":"Required milestones by pillar with evidence and approval","Mario Carlos Beni":"Mario Carlos Beni",Marketing:f_,"Marketing & Distribuição":"Marketing & Distribution","Marketing Temporariamente Bloqueado":"Marketing Temporarily Blocked","Marketing e Comercialização TurÃstica":"Tourism Marketing and Commercialization","Marketing e Promoção":"Marketing and Promotion","Marketing e operações":"Marketing and operations","Marketing turÃstico":"Tourism marketing","Marque como concluÃdo quando a ação for implementada.":"Mark as complete when the action is implemented.","Marque como lido, em andamento ou resolvido.":"Mark as read, in progress, or resolved.",Março:"March","Maré de Mudança":"Tide of Change","Marés de Mudança":"Tides of Change","Masterplans e planos regionais de turismo":"Masterplans and regional tourism plans","Mata Atlântica":"Atlantic Forest","Materiais complementares ficam disponÃveis abaixo do vÃdeo.":"Complementary materials are available below the video.","Materiais de Apoio":"Supporting Materials","Materiais de capacitação (vÃdeo, texto, quiz)":"Training materials (video, text, quiz)","Material removido!":"Material removed!","Matriculado na trilha!":"Enrolled in the track!","Matricular-se":"Enroll","Matricular-se em uma trilha":"Enroll in a track","Matricule-se para continuar assistindo":"Enroll to keep watching","Matriz Detalhada: Escopo à Pilar à Tier":"Detailed Matrix: Scope à Pillar à Tier","Matriz RACI":"RACI Matrix","Maturidade Digital":"Digital Maturity","Maturidade Tecnológica":"Technological Maturity","Maximizar visitantes para gerar mais renda":"Maximize visitors to generate more income","Mede a qualidade dos corpos hÃdricos do municÃpio. Fonte: ANA / órgãos estaduais. Periodicidade: anual. Direção: maior é melhor.":"Measures the quality of the municipality's water bodies. Source: ANA / state agencies. Frequency: annual. Direction: higher is better.","Medição salva":"Measurement saved","Meio Ambiente":"Environment","Mel de abelhas nativas sem ferrão":"Stingless native bee honey","Mel de jandaÃra, licor de umbu, cosméticos de amburana... O sertão floresce!":"JandaÃra honey, umbu liqueur, amburana cosmetics... The sertão flourishes!","Melhor combo:":"Best combo:","Melhor nota":"Best grade","Melhor relação custo-benefÃcio":"Best cost-benefit ratio","Melhora a qualidade da água":"Improves water quality",Melhoraram:v_,"Melhores meses":"Best months",Melhoria:b_,"Melhoria de UX":"UX Improvement","Melhoria de usabilidade (UX)":"Usability improvement (UX)","Melhorias de performance":"Performance improvements","Melhorias parciais. O equilÃbrio entre turismo e natureza é frágil.":"Partial improvements. The balance between tourism and nature is fragile.","Membro desde":"Member since",Membros:A_,"Membros da Organização":"Organization Members","Memes e conteúdo informal":"Memes and informal content",Memória:"Memory","Memória Ecológica":"Memória Ecológica","Memória Perfeita!":"Perfect Memory!","Mencione o nome do destino para contexto adicional.":"Mention the destination's name for additional context.","Menor é Melhor":"Less is More","Menos prescrições especÃficas":"Fewer specific prescriptions",Mensagem:y_,"Mensagem (opcional)":"Message (optional)","Mensagem Personalizada":"Custom Message","Mensagem deletada":"Message deleted","Mensagem opcional":"Optional message","Mensagem para a turma...":"Message to the class...",Mensagens:S_,Mensal:E_,Me
162nu:C_,"Menções Públicas da Marca (mÃdia e SERP)":"Public Brand Mentions (media and SERP)","Menções totais":"Total mentions",Mercado:T_,"Mercado (média)":"Market (average)","Mercado Alvo (selecione todos que se aplicam)":"Target Market (select all that apply)","Mercado de Trabalho":"Labor Market","Merge (recomendado)":"Merge (recommended)","Mergulhe no oceano e resgate tesouros marinhos":"Dive into the ocean and rescue marine treasures","Meses chuvosos":"Rainy months","Meses de Alta Temporada":"High Season Months","Meta ocupação (%)":"Occupancy target (%)","Metadados enriquecidos":"Enriched metadata",Metadata:P_,"Metas do governo brasileiro":"Brazilian government goals",Metodologia:R_,"Metodologia Mario Beni":"Mario Beni Methodology","Metodologia Mario Beni â Motor IGMA | SISTUR":"Mario Beni Methodology â IGMA Engine | SISTUR","Metodologia SISTUR":"SISTUR Methodology","Metodologia completa para elaboração e implementação de planos municipais de turismo":"Complete methodology for the elaboration and implementation of municipal tourism plans","Metodologia de Gestão *":"Management Methodology *","Metodologia sequencial tradicional com fases bem definidas":"Traditional sequential methodology with well-defined phases","Metodologia {{v0}}":"Methodology {{v0}}","Metodologia:":"Methodology:","Metrô Leve":"Light Rail","Metrôs reduzem congestionamento e poluição.":"Subways reduce congestion and pollution.","Meu Perfil":"My Profile","Meu perfil":"My profile","Meus Certificados":"My Certificates","Milhares de mudas são plantadas. Corredores ecológicos são restaurados.":"Thousands of seedlings are planted. Ecological corridors are restored.","Min-Max":"Min-Max",Mineração:"Mining","Mineração Ilegal":"Illegal Mining","Mineração Predatória":"Predatory Mining","Mineração destrói encostas.":"Mining destroys hillsides.","Minha Jornada":"My Journey","Minha organização":"My organization","Minhas Anotações":"My Notes","Minhas Atividades":"My Activities","Minhas Conquistas":"My Achievements","Minhas Provas":"My Exams","Minhas Salas":"My Rooms","Minhas Solicitações":"My Requests","Minhas Turmas":"My Classes","Minhas tarefas":"My tasks","Ministério do Trabalho e Emprego (MTE).":"Ministry of Labor and Employment (MTE).","Ministério do Turismo.":"Ministry of Tourism.","Ministério do Turismo. CADASTUR â Cadastro de Prestadores de Serviços TurÃsticos. cadastur.turismo.gov.br":"Ministry of Tourism. CADASTUR â Register of Tourism Service Providers. cadastur.turismo.gov.br","Ministério do Turismo. CADASTUR. cadastur.turismo.gov.br":"Ministry of Tourism. CADASTUR. cadastur.turismo.gov.br","Ministério do Turismo. Mapa do Turismo Brasileiro â API REST de Regionalização. mapa.turismo.gov.br":"Ministry of Tourism. Brazilian Tourism Map â Regionalization REST API. mapa.turismo.gov.br","Ministério do Turismo. Mapa do Turismo Brasileiro. mapa.turismo.gov.br":"Ministry of Tourism. Brazilian Tourism Map. mapa.turismo.gov.br","Ministério do Turismo. Plano Nacional de Turismo 2024-2027. gov.br/turismo":"Ministry of Tourism. National Tourism Plan 2024-2027. gov.br/turismo","Missão Bioma":"Missão Bioma","Missão Cumprida!":"Mission Accomplished!","Missão Falhou!":"Mission Failed!","Missão Fracassada":"Mission Failed","Missões 7d":"Missions 7d","Missões diárias":"Daily missions","Missões diárias concluÃdas (últimos 7 dias)":"Daily missions completed (last 7 days)",Misto:x_,"Mix de Canais":"Channel Mix","Mix de canais, sazonalidade mensal e KPIs financeiros":"Channel mix, monthly seasonality and financial KPIs","Mobilidade Urbana (transporte público e apps)":"Urban Mobility (public transport and apps)","Mobilizar a comunidade e as autoridades contra o garimpo":"Mobilize the community and authorities against wildcat mining","Mobilizar cientistas e comunidade contra a mineração":"Mobilize scientists and the community against mining","Mobilizar uma operação massiva de limpeza do óleo":"Mobilize a massive oil spill cleanup operation","Modais identificados":"Identified modals",Modelo:w_,"Modelo & Infraestrutura":"Model & Infrastru
162cture","Modelo anterior":"Previous model","Modelo atual:":"Current Model:","Modelo de IA":"AI Model","Modelo de resposta":"Response model","Modelo não registrado":"Model not registered",Moderada:I_,Moderado:D_,"Moderação automática por IA antes do upload":"Automatic AI moderation before upload","Moderação de Conteúdo":"Content Moderation","Moderação de conteúdo com IA para uploads de imagem":"AI content moderation for image uploads","Moderação indisponÃvel":"Moderation unavailable",Modo:O_,"Modo Demo ativado! Você está visualizando dados de demonstração.":"Demo Mode activated! You are viewing demonstration data.","Modo Demo ativo:":"Demo Mode active:","Modo Demo desativado. Visualizando dados da sua organização.":"Demo Mode deactivated. Viewing your organization's data.","Modo Demonstração":"Demonstration Mode","Modo Prescrição":"Prescription Mode","Modo Prescrição ativo":"Prescription Mode active","Modo de importação":"Import mode","Modo visualização":"View mode","Moeda (R$)":"Currency (R$)","Moeda em milhares (R$ mil)":"Currency in thousands (R$ thousand)","Moeda em milhões (R$ mi)":"Currency in millions (R$ million)",Moedas:M_,"Molusco inteligente indicador de saúde do ecossistema":"Intelligent mollusk ecosystem health indicator","Molusco que filtra até 200 litros de água por dia":"Mollusk that filters up to 200 liters of water per day","Monitor de Ciclos":"Cycle Monitor","Monitor de Saúde do Sistema":"System Health Monitor",Monitoramento:N_,"Monitoramento AnalÃtico":"Analytical Monitoring","Monitoramento Client":"Client Monitoring","Monitoramento ativo. Prescrições educacionais geradas.":"Active monitoring. Educational prescriptions generated.","Monitoramento de atividades do sistema LMS":"LMS activity monitoring","Monitoramento de evolução por ciclo":"Evolution monitoring by cycle","Monitoramento de polÃticas públicas":"Public policy monitoring","Monitoramento do uso de recursos e recomendações de escalabilidade":"Resource usage monitoring and scalability recommendations","Monitoramento e sincronização com sistemas externos":"Monitoring and synchronization with external systems","Monitoramento e teste manual das funções automáticas (CADASTUR, ANA, TSE, ANATEL, Mapa do Turismo).":"Monitoring and manual testing of automatic functions (CADASTUR, ANA, TSE, ANATEL, Tourism Map).","Monitoramento e teste manual das funções automáticas que coletam dados oficiais (CADASTUR, ANA, TSE, ANATEL, Mapa do Turismo).":"Monitoring and manual testing of automated functions that collect official data (CADASTUR, ANA, TSE, ANATEL, Tourism Map).","Monitoramento permanente de fluxo, ocupação, eventos, receita e empregos":"Continuous monitoring of visitor flow, occupancy, events, revenue and employment","Monitoramento permanente de fluxo, ocupação, eventos, receita e empregos. Permite ingestão automática a partir de fontes oficiais e exportação em CSV/PDF.":"Permanent monitoring of flow, occupancy, events, revenue, and jobs. Allows automatic ingestion from official sources and export in CSV/PDF.","Monitoramento territorial e alertas":"Territorial monitoring and alerts","Monitorar Sistema":"Monitor System","Monitore o progresso dos seus alunos em tempo real. Veja quem está engajado, quem está atrasado e o desempenho geral da turma.":"Monitor your students' progress in real time. See who is engaged, who is behind, and the overall class performance.","Montagem sequencial unindo os pilares":"Sequential assembly uniting the pillars","Montar Exame":"Assemble Exam","Monte seu deck de cartas e defenda o destino turÃstico contra ameaças.":"Build your deck of cards and defend the tourist destination against threats.","Monte um resumo executivo em texto do meu destino com base no último diagnóstico, pronto para colar em um e-mail.":"Assemble a text executive summary of my destination based on the latest diagnosis, ready to paste into an email.","Moradia para as famÃlias.":"Housing for families.","Moradia para famÃlias":"Housing for families","Moradores expulsos pelo custo.":"Residents expelled by cost.","Moradores reclamam do barulho.":"Residents complain about the noise.","Moradores se tornam os melhores guias, com conhecimento ancestral.":"Locals become the best guides, with ancestral knowledge.","Morte de Peixes":"Fish Deaths","Mostrando 100 de {{v0}} registros":"Showing 100 of {{v0}} records",Mostrar:z_,"Mostrar a natureza e a cultura local":"Show local nature and culture",Motivo:j_,"Motivo da denúncia *":"Reason for report *","Motivo da revogação":"Reason for revocation","Motivo do cancelamento":"Reason for cancellation","Motivo do recurso":"Reason for appeal","Motivo...":"Reason...","Motor IGMA":"IGMA Engine","Motor IGMA Proprietário":"Proprietary IGMA Engine","Motor IGMA: algoritmo de interpretação sistêmica com 6 regras encadeadas":"IGMA Engine: systemic interpretation algorithm with 6 chained rules","Motor de coerência":"Consistency engine","Motor de status":"Status engine","Mover para":"Move to","Movimento de água que regula o clima global do planeta":"Water movement that regulates the planet's global climate","Movimentos:":"Moves:","Muda de Mangue":"Mangrove Seedling","Muda para reflorestamento costeiro":"Seedling for coastal reforestation","Mudança climática":"Climate change","Mudanças Climáticas":"Climate Change","Mudar para":"Switch to","Mudaria de {{v0}} para {{v1}}.":"Would change from {{v0}} to {{v1}}.","Mudas para o Futuro":"Seedlings for the Future","Muita energia, mas muita fumaça...":"Lots of energy, but lots of smoke...","Muitas tentativas. Aguarde alguns minutos e tente novamente.":"Too many attempts. Please wait a few minutes and try again.","Muito Permissivo":"Very Permissive","Muito Restritivo":"Very Restrictive","Muito alta":"Very high","Muito dinheiro, mas a vila ficou suja e barulhenta...":"Lots of money, but the village became dirty and noisy...","Muito estável":"Ver
162y stable","Muito perto!":"Very close!","Muitos turistas querem visitar sua vila!":"Many tourists want to visit your village!","Multi-organização":"Multi-organization",MunicÃpio:"Municipality","MunicÃpio TurÃstico":"Tourist Municipality","MunicÃpio convidado":"Invited Municipality","MunicÃpio encontrado no IBGE (código: {{v0}})":"Municipality found in IBGE (code: {{v0}})","MunicÃpio não encontrado no IBGE":"Municipality not found in IBGE","MunicÃpio removido":"Municipality removed","MunicÃpio-lÃder":"Lead Municipality","MunicÃpio:":"Municipality:",MunicÃpios:"Municipalities","MunicÃpios (":"Municipalities (","MunicÃpios Mapeados":"Mapped Municipalities","MunicÃpios com equipe técnica reduzida":"Municipalities with reduced technical staff","MunicÃpios e destinos turÃsticos. Dados de IBGE, DATASUS, INEP.":"Municipalities and tourist destinations. Data from IBGE, DATASUS, INEP.","MunicÃpios participantes":"Participating municipalities","Muro de contenção":"Retaining wall","Mutirão de Limpeza":"Cleanup Drive",Mux:k_,MÃDIA:"MEDIA","Máx. 1 arquivo .csv":"Max. 1 .csv file","Máxima precisão diagnóstica":"Maximum diagnostic accuracy","Máximo de Imagens por Post":"Maximum Images per Post","Máximo de capacitações retornadas.":"Maximum number of trainings returned.","Máximo de destinos retornados.":"Maximum number of destinations returned.","Máximo de diagnósticos retornados.":"Maximum number of diagnoses returned.","Máximo de projetos retornados.":"Maximum number of projects returned.","Máximo de tarefas retornadas.":"Maximum number of tasks returned.","Máximo de tentativas":"Maximum attempts","Mãos na terra! A comunidade planta centenas de mudas nativas.":"Hands in the dirt! The community plants hundreds of native seedlings.",Média:"Average","Média (equilibrado)":"Average (balanced)","Média Exames":"Exam Average","Média Geral":"Overall Average","Média da org:":"Org. average:","Média das pesquisas de satisfação internas (escala 0-10). Use formulários pós-estadia, QR codes no quarto, ou plataformas como ReviewPro.":"Average of internal satisfaction surveys (0-10 scale). Use post-stay forms, in-room QR codes, or platforms like ReviewPro.","Média de progresso:":"Average progress:","Média de todos os destinos":"Average of all destinations","Média dos concorrentes":"Competitors' average","Média dos scores dos diagnósticos calculados por pilar do SISTUR":"Average calculated diagnostic scores by SISTUR pillar","Média ponderada":"Weighted average","Média ponderada dos indicadores normalizados por pilar (RA, OE, AO)":"Weighted average of indicators normalized by pillar (RA, OE, AO)","Média ponderada dos pilares":"Weighted average of pillars","Média: {{v0}}% · Mediana: {{v1}}%":"Average: {{v0}}% · Median: {{v1}}%",Médio:"Medium",Método:"Method",Métrica:"Metric","Métricas ambientais alinhadas ao pilar RA de Relações Ambientais.":"Environmental metrics aligned with the RA pillar of Environmental Relations.","Métricas consolidadas de cada turma sob sua responsabilidade â XP, engajamento e desempenho médio em provas (média geral: {{v0}}%).":"Consolidated metrics for each class under your responsibility â XP, engagement, and average test performance (overall average: {{v0}}%).","Métricas de Performance":"Performance Metrics","Métricas de aquisição, distribuição e eficiência de marketing.":"Acquisition, distribution, and marketing efficiency metrics.","Métricas de conversão trial â pago.":"Trial â paid conversion metrics.","Métricas de satisfação e fidelização baseadas em feedback direto dos hóspedes.":"Satisfaction and loyalty metrics based on direct guest feedback.","Métricas indicam necessidade de uma instância maior para manter a performance.":"Metrics indicate the need for a larger instance to maintain performance.","Métricas secundárias: peso base 1x":"Secondary metrics: base weight 1x",Mês:"Month",MÃdia:"Media","MÃn. {{v0}}%":"Min. {{v0}}%","MÃnimo 6 caracteres":"Minimum 6 characters","MÃnimo de 20 caracteres":"Minimum of 20 characters","MÃnimo de 5 usuários,":"Minimum of 5 users,","MÃnimo de {{v0}} pares no segmento para exibir o comparativo (atualmente {{v1}}). Comparação 100% anônima â sem nomes nem ranking.":"Minimum of {{v0}} peers in the segment to display the comparison (currently {{v1}}). 100% anonymous comparison â no names or ranking.","MÃnimo viável. Para municÃpios menores ou primeira avaliação rápida.":"Minimum viable. For smaller municipalities or first quick asse
162ssment.","Módulo Hoteleiro":"Hotel Module","Módulo atualizado":"Module updated","Módulo central de avaliação de destinos turÃsticos.":"Central module for tourism destination evaluation.","Módulo de treinamento concluÃdo":"Training module completed","Módulo indisponÃvel":"Module unavailable","Módulo não habilitado":"Module not enabled","Módulo regional para grupos de municÃpios.":"Regional module for groups of municipalities.",Módulos:"Modules","Módulos bloqueados são liberados imediatamente após a contratação.":"Blocked modules are released immediately after contracting.","Módulos contratados":"Contracted modules","Módulos do Curso":"Course Modules","Módulos do Curso ({{v0}})":"Course Modules ({{v0}})","Módulos liberados na sua conta":"Modules released in your account","Módulos por Org":"Modules per Org","Múltipla Escolha":"Multiple Choice",NPS:__,"NPS Médio":"Average NPS",'Na criação de uma Nova Rodada Territorial, no Step 3 (Configurações), ative o switch "Expandir com Mandala da Sustentabilidade no Turismo". A flag fica salva no diagnóstico (assessments.expand_with_mandala) e os 9 indicadores MST passam a aparecer na coleta. Diagnósticos sem o opt-in continuam usando apenas o núcleo SISTUR original. Você pode filtrar o catálogo por "Núcleo SISTUR" vs "ð Mandala MST" no painel de Indicadores.':'When creating a New Territorial Round, in Step 3 (Settings), activate the switch "Expand with Tourism Sustainability Mandala". The flag is saved in the diagnosis (assessments.expand_with_mandala) and the 9 MST indicators will appear in the collection. Diagnoses without the opt-in continue to use only the original SISTUR core. You can filter the catalog by "SISTUR Core" vs "ð MST Mandala" in the Indicators panel.',"Na mão":"In hand","Na parte inferior, acompanhe planos de ação em andamento e tendências históricas.":"At the bottom, track ongoing action plans and historical trends.","Na primeira vez que acessar após aprovação, os Termos de Uso serão exibidos automaticamente.":"The first time you log in after approval, the Terms of Use will be displayed automatically.","Na primeira vez que acessar, será necessário aceitar os Termos e Condições do SISTUR. Isso garante que você está ciente das regras de uso da plataforma.":"The first time you access, you will need to accept SISTUR's Terms and Conditions. This ensures you are aware of the platform's rules of use.","Na primeira vez que entrar, o sistema mostra o assistente de onboarding onde você escolhe seu tipo de acesso.":"The first time you log in, the system shows the onboarding wizard where you choose your access type.",'Na página de Projetos, clique em "Novo Projeto" e preencha as informações básicas.':'On the Projects page, click "New Project" and fill in the basic information.',"Na página de Relatórios, escolha o diagnóstico para o qual deseja gerar o relatório.":"On the Reports page, choose the diagnostic for which you want to generate the report.","Na reunião, opiniões divergem. Donos de pousadas querem mais turistas, agricultores reclamam da falta de água e ambientalistas pedem proteção total.":"At the meeting, opinions diverge. Inn owners want more tourists, farmers complain about lack of water, and environmentalists demand total protection.",'Na sala, clique em "Nova Atribuição" para definir o conteúdo.':'In the room, click "New Assignment" to define the content.',"Nada para importar.":"Nothing to import.","Nada, é natural":"Nothing, it's natural",Narrativa:q_,"Nas Sombras da Floresta":"In the Shadows of the Forest","Nascente de Rio":"River Spring",Natureza:L_,"Natureza no concreto!":"Nature in concrete!","Navegar para Diagnósticos":"Navigate to Diagnostics","Navegar pelo fórum":"Browse the forum","Navegação principal":"Main navigation","Navegue pelo mangue protegendo espécies ameaçadas":"Navigate through the mangrove protecting endangered species","Negociar com condições":"Negotiate with conditions","Negociar diretamente com os hotéis por soluções":"Negotiate directly with hotels for solutions","Nem toda chuva é ruim...":"Not all rain is bad...",Nenhum:U_,"Nenhum (geral)":"None (general)","Nenhum CNPJ encontrado em fontes públicas. Informe manualmente.":"No CNPJ found in public sources. Enter manually.",'Nenhum PMS conectado. Use "Conectar PMS" para começar.':'No PMS connected. Use "Connect PMS" to get started.',"Nenhum acesso no perÃodo":"No access in the peri
162od","Nenhum alerta":"No alerts","Nenhum aluno":"No students","Nenhum aluno indicado ainda. Compartilhe seu código!":"No student referred yet. Share your code!","Nenhum aluno na turma":"No students in the class","Nenhum aluno opt-in ainda. Ative a participação para começar.":"No students have opted in yet. Enable participation to get started.","Nenhum aluno pendente":"No pending students","Nenhum aluno válido para importar":"No valid students to import","Nenhum anúncio publicado ainda.":"No announcements published yet.","Nenhum arquivo encontrado":"No file found","Nenhum canal cadastrado. Adicione abaixo o mix real de reservas.":"No channel registered. Add the actual reservation mix below.","Nenhum certificado emitido ainda.":"No certificates issued yet.","Nenhum certificado encontrado":"No certificates found","Nenhum checkpoint criado ainda.":"No checkpoints created yet.","Nenhum ciclo de diagnóstico encontrado.":"No diagnostic cycles found.","Nenhum comentário ainda.":"No comments yet.","Nenhum comentário ainda. Seja a primeira pessoa a comentar.":"No comments yet. Be the first to comment.","Nenhum concorrente identificado nas buscas.":"No competitor identified in searches.","Nenhum concorrente. Use a busca acima ou adicione manualmente abaixo.":"No competitor. Use the search above or add manually below.","Nenhum consumo registrado.":"No consumption registered.","Nenhum consórcio disponÃvel ainda.":"No consortium available yet.","Nenhum contato disponÃvel. Você precisa estar matriculado em uma turma.":"No contacts available. You must be enrolled in a class.","Nenhum conteúdo importado aguardando revisão":"No imported content awaiting review","Nenhum critério definido.":"No criteria defined.","Nenhum crédito concedido.":"No credit granted.","Nenhum curso disponÃvel":"No course available","Nenhum curso encontrado":"No courses found","Nenhum código de indicador disponÃvel para este nó.":"No indicator codes available for this node.","Nenhum código gerado ainda.":"No code generated yet.","Nenhum dado de diagnóstico disponÃvel ainda.":"No diagnostic data available yet.","Nenhum dado de progresso ainda":"No progress data yet","Nenhum dado encontrado para exportar":"No data found to export","Nenhum dado importado ainda.":"No data imported yet.","Nenhum dado oficial coletado ainda.":"No official data collected yet.","Nenhum dado para exportar":"No data to export","Nenhum dado pré-preenchido":"No pre-filled data","Nenhum dado pré-preenchido ainda":"No pre-filled data yet","Nenhum dado registrado ainda para este indicador.":"No data recorded yet for this indicator.","Nenhum dado socioeconômico carregado.":"No socioeconomic data loaded.","Nenhum destino cadastrado":"No destinations registered","Nenhum destino disponÃvel":"No destination available","Nenhum destino disponÃvel. Para criar um projeto, você precisa ter:":"No destinations available. To create a project, you need:","Nenhum destino encontrado":"No destinations found","Nenhum destino encontrado.":"No destinations found.","Nenhum diagnóstico cadastrado":"No assessments registered","Nenhum diagnóstico calculado":"No diagnosis calculated","Nenhum diagnóstico calculado disponÃvel":"No calculated diagnostics available","Nenhum diagnóstico calculado encontrado":"No calculated diagnostics found","Nenhum diagnóstico calculado encontrado.":"No calculated diagnosis found.","Nenhum diagnóstico calculado para este destino.":"No calculated diagnostics for this destination.","Nenhum diagnóstico calculado para o destino selecionado.":"No calculated diagnostics for the selected destination.","Nenhum diagnóstico com dados oficiais desatualizados aguardando recálculo.":"No diagnostics with outdated official data awaiting recalculation.","Nenhum diagnóstico criado ainda.":"No diagnostics created yet.","Nenhum diagnóstico disponÃvel":"No diagnosis available","Nenhum diagnóstico encontrado":"No assessments found","Nenhum documento de referência":"No reference document","Nenhum evento agendado nos próximos 90 dias.":"No events scheduled in the next 90 days.","Nenhum evento cadastrado para {{v0}}.":"No event registered for {{v0}}.","Nenhum evento encontrado nas fontes consultadas":"No events found in the consulted sources","Nenhum evento encontrado para":"No event found for","Nenhum evento futuro cadastrado.":"No upcoming events registered.","Nenhum evento no perÃodo":"No events in the peri
162od","Nenhum evento nos próximos 30 dias":"No events in the next 30 days","Nenhum evento registrado":"No event recorded","Nenhum evento registrado ainda":"No events recorded yet","Nenhum feedback encontrado":"No feedback found","Nenhum gargalo encontrado com os filtros selecionados.":"No bottlenecks found with the selected filters.","Nenhum gargalo identificado.":"No bottlenecks identified.","Nenhum gatilho prescritivo":"No prescriptive triggers","Nenhum histórico de verificações encontrado.":"No verification history found.","Nenhum indicador cadastrado":"No indicators registered","Nenhum indicador cadastrado no sistema.":"No indicator registered in the system.","Nenhum indicador calculado ainda.":"No indicators calculated yet.","Nenhum indicador calculado.":"No indicators calculated.","Nenhum indicador encontrado":"No indicators found","Nenhum indicador encontrado com os filtros atuais.":"No indicators found with current filters.","Nenhum indicador encontrado com os filtros selecionados.":"No indicators found with the selected filters.","Nenhum indicador encontrado.":"No indicators found.","Nenhum indicador novo foi pré-preenchido.":"No new indicators were prefilled.","Nenhum indicador vinculado":"No linked indicators","Nenhum item de revisão":"No review items","Nenhum item disponÃvel":"No items available","Nenhum item no checklist ainda.":"No items in the checklist yet.","Nenhum lead recebido até o momento.":"No leads received yet.","Nenhum log encontrado":"No logs found","Nenhum marco definido":"No milestones defined","Nenhum marco ou tarefa com data planejada para exportar.":"No milestones or tasks with planned dates to export.","Nenhum material anexado ainda":"No material attached yet","Nenhum membro cadastrado ainda.":"No members registered yet.","Nenhum membro encontrado":"No members found","Nenhum membro.":"No members.","Nenhum modal detectado":"No modal detected","Nenhum municÃpio ainda.":"No municipality yet.","Nenhum municÃpio encontrado":"No municipality found","Nenhum municÃpio encontrado.":"No municipality found.","Nenhum módulo cadastrado. Adicione módulos para estruturar o conteúdo do curso.":"No modules registered. Add modules to structure the course content.","Nenhum módulo encontrado para â{{v0}}â.":"No module found for â{{v0}}â.","Nenhum outro usuário encontrado":"No other user found","Nenhum papel atribuÃdo":"No role assigned","Nenhum perfil ativo identificado.":"No active profile identified.","Nenhum pilar elegÃvel encontrado nos treinamentos desta trilha.":"No eligible pillar found in this trail's trainings.","Nenhum plano de ação":"No action plans","Nenhum ponto de atenção identificado.":"No areas of concern identified.","Nenhum post encontrado":"No posts found","Nenhum projeto atrasado! Excelente gestão de cronograma.":"No overdue projects! Excellent schedule management.","Nenhum projeto cadastrado. Crie projetos a partir de diagnósticos calculados.":"No projects registered. Create projects from calculated diagnostics.","Nenhum projeto criado":"No projects created","Nenhum projeto encontrado.":"No project found.","Nenhum projeto nesta categoria":"No projects in this category","Nenhum recurso":"No resource","Nenhum recurso enviado":"No appeals submitted","Nenhum registro de auditoria para este diagnóstico.":"No audit records for this diagnostic.","Nenhum registro de trial.":"No trial record.","Nenhum relatório combina com os filtros":"No reports match the filters","Nenhum relatório gerado":"No reports generated","Nenhum relatório nesta categoria.":"No report in this category.","Nenhum relatório salvo":"No saved reports","Nenhum resultado encontrado":"No results found","Nenhum score de indicador enterprise disponÃvel":"No enterprise indicator scores available","Nenhum snapshot. Registre periodicamente as notas e volumes para acompanhar a evolução.":"No snapshot. Periodically record scores and volumes to track evolution.","Nenhum treinamento associado a esta trilha.":"No training associated with this learning path.","Nenhum treinamento cadastrado":"No training added","Nenhum treinamento disponÃvel.":"No training available.","Nenhum treinamento encontrado":"No training found","Nenhum uso registrado.":"No usage registered.","Nenhum usuário com acesso especÃfico":"No user with specific access","Nenhum usuário com e-mail nesta organização":"No user with email in this organization","Nenhum usuário disponÃvel":"No user available","Nenhum usuário disponÃvel.":"No users available.","Nenhum usuário disponÃvel. Convide pessoas com seu código de referência ou código da organização.":"No user available. Invite people with your referral code or organization code.","Nenhum usuário encontrado nesta organização":"No user found in this organization","Nenhum usuário encontrado.":"No users found.","Nenhum vÃnculo registrado.":"No links registered.","Nenhuma Recomendação Ainda":"No Recommendations Yet","Nenhuma alteração para salvar":"No changes to save","Nenhuma ameaça no campo...":"No threats on the field...","Nenhuma anotação ainda. Clique em + para começar.":"No notes yet. Click + to get started.","Nenhuma análise disponÃvel":"No anal
162ysis available","Nenhuma assinatura registrada.":"No subscription registered.","Nenhuma atividade atribuÃda":"No activity assigned","Nenhuma atividade criada.":"No activity created.","Nenhuma atividade registrada ainda":"No activity recorded yet","Nenhuma atribuição RACI ainda.":"No RACI assignments yet.","Nenhuma aula cadastrada neste módulo":"No lesson registered in this module","Nenhuma ação identificada":"No actions identified","Nenhuma badge cadastrada ainda.":"No badges added yet.","Nenhuma capacitação vinculada ainda.":"No training linked yet.","Nenhuma concessão registrada.":"No grant registered.","Nenhuma conversa ainda.":"No conversations yet.","Nenhuma correção pendente":"No pending correction","Nenhuma correção pôde ser aplicada automaticamente.":"No corrections could be applied automatically.","Nenhuma entrada válida encontrada (campos obrigatórios: key, title, content, category).":"No valid entry found (required fields: key, title, content, category).","Nenhuma entrada.":"No entry.","Nenhuma estrutura cadastrada.":"No structure registered.","Nenhuma etapa cadastrada ainda.":"No steps added yet.","Nenhuma execução recente do Claude detectada. Gere um relatório com Claude para visualizar o progresso por etapa.":"No recent Claude execution detected. Generate a report with Claude to view progress by stage.","Nenhuma execução registrada ainda. Rode um smoke test para começar.":"No execution registered yet. Run a smoke test to start.","Nenhuma fala detectada. Tente novamente.":"No speech detected. Try again.","Nenhuma fase com datas planejadas.":"No phases with planned dates.","Nenhuma fase criada":"No phases created","Nenhuma informação de pagamento":"No payment information","Nenhuma interação registrada":"No interactions recorded","Nenhuma liberação registrada.":"No release registered.","Nenhuma licença ativa encontrada.":"No active license found.","Nenhuma linha cadastrada ainda.":"No rows added yet.","Nenhuma linha válida para importar":"No valid row to import","Nenhuma marca cadastrada ainda.":"No brand registered yet.","Nenhuma marca encontrada. Clique em":"No brand found. Click on","Nenhuma missão para hoje. Volte amanhã!":"No missions for today. Come back tomorrow!","Nenhuma organização cadastrada":"No organization registered","Nenhuma organização com acesso especÃfico":"No organization with specific access","Nenhuma organização disponÃvel":"No organization available","Nenhuma organização encontrada":"No organization found","Nenhuma outra notificação":"No other notification","Nenhuma pergunta disponÃvel para este módulo.":"No question available for this module.","Nenhuma prescrição ativa":"No active prescriptions","Nenhuma prescrição encontrada para o pilar {{v0}}.":"No prescription found for pillar {{v0}}.","Nenhuma prescrição encontrada para os indicadores atuais.":"No prescriptions found for the current indicators.","Nenhuma prescrição gerada para esta rodada.":"No prescriptions generated for this round.","Nenhuma prova cadastrada ainda":"No exam registered yet","Nenhuma prova final configurada para esta trilha.":"No final exam configured for this learning path.","Nenhuma prova realizada":"No exams taken","Nenhuma questão encontrada":"No question found","Nenhuma recomendação de curso
162/live encontrada para montar uma trilha.":"No course/livestream recommendations found to build a learning path.","Nenhuma recomendação disponÃvel.":"No recommendations available.","Nenhuma recomendação encontrada para os indicadores selecionados.":"No recommendation found for the selected indicators.","Nenhuma regra configurada":"No rules configured","Nenhuma resposta ainda. Seja o primeiro a responder!":"No replies yet. Be the first to reply!","Nenhuma sala criada":"No room created","Nenhuma sessão registrada para este aluno":"No sessions recorded for this student","Nenhuma sessão salva ainda.":"No saved sessions yet.","Nenhuma sincronização realizada.":"No synchronization performed.","Nenhuma solicitação":"No request","Nenhuma solicitação pendente":"No pending request","Nenhuma sugestão gerada â projeto já parece coberto.":"No suggestions generated â the project already appears to be covered.","Nenhuma tarefa criada":"No tasks created","Nenhuma tarefa nesta fase":"No tasks in this phase","Nenhuma tentativa encontrada":"No attempt found","Nenhuma trilha adaptativa publicada ainda.":"No adaptive learning paths published yet.","Nenhuma trilha cadastrada":"No learning paths added","Nenhuma trilha criada ainda.":"No learning paths created yet.","Nenhuma turma ativa ainda":"No active classes yet","Nenhuma turma ativa para comparar.":"No active classes to compare.","Nenhuma unidade adicionada ainda. Clique em":"No unit added yet. Click on","Nenhuma verificação executada ainda.":"No verification executed yet.","Net Promoter Score":"Net Promoter Score",Nitrogênio:"Nitrogen",'No Painel do Professor, clique em "Nova Sala" para criar uma turma.':'In the Professor Dashboard, click "New Room" to create a class.','No Painel do Professor, na aba "Atividades", o professor cria uma atribuição informando: tipo (prova, trilha ou treinamento), tÃtulo, descrição, data e horário de liberação (available_from), prazo final (due_date) e alunos-alvo (toda a turma ou indivÃduos selecionados). à possÃvel ainda definir regras especÃficas para aquela atividade â limite de tempo, número de tentativas e nota mÃnima â sem alterar a configuração global da prova. Os alunos-alvo recebem uma notificação automática na central de avisos no momento da criação.':'In the Professor Dashboard, on the "Activities" tab, the professor creates an assignment by providing: type (test, trail or training), title, description, release date and time (available_from), due date, and target students (entire class or selected individuals). It is also possible to define specific rules for that activity â time limit, number of attempts, and minimum grade â without changing the global test settings. Target students receive an automatic notification in the notice center at the time of creation.',"No Topo do Mundo":"On Top of the World","No horário":"On time",'No menu EDU, clique em "Meu Perfil" para configurar suas preferências.':'In the EDU menu, click "My Profile" to configure your preferences.','No menu lateral, clique em "Diagnósticos" para ver todos os diagnósticos existentes.':'In the sidebar menu, click "Diagnostics" to see all existing diagnostics.','No menu lateral, clique em "Prof. Beni" para abrir o chat.':'In the sidebar menu, click "Prof. Beni" to open the chat.',"No módulo Social Turismo (Fórum), o Usuário compromete-se a não publicar conteúdo ofensivo, difamatório, ilegal ou que viole direitos de terceiros.":"In the Social Tourism (Forum) module, the User agrees not to publish offensive, defamatory, illegal, or content that infringes third-party rights.","No organization found":"No organization found",'No painel "Importação PMS/CSV", arraste o relatório mensal do seu PMS. Funciona com Opera, Cloudbeds, Stays ou qualquer planilha.':'In the "PMS/CSV Import" panel, drag your monthly PMS report. Works with Opera, Cloudbeds, Stays or any spreadsheet.',"No template":"In template","No user":"No user",Nome:B_,"Nome *":"Name *","Nome Completo":"Full Name","Nome Completo *":"Full Name *","Nome completo":"Full name","Nome completo do usuário":"User full name","Nome curto para a UI. Ex.: 'Régua oficial 5 nÃveis', 'Proibição de rankings'.":"Short name for the UI. Ex.: 'Official 5-level scale', 'Ranking prohibition'.","Nome da Fase *":"Phase Name *","Nome da Organização":"Organization Name","Nome da Trilha *":"Learning Path Name *","Nome da marca":"Brand name","Nome da sala *":"Room name *","Nome da trilha":"Learning path name","Nome da unidade":"Unit name","Nome desta unidade":"Name of this unit","Nome deve ter pelo menos 2 caracteres":"Name must be at least 2 characters long","Nome do Destino":"Destination Name","Nome do Estabelecimento":"Establishment Name","Nome do Marco *":"Milestone Name *","Nome do Projeto *":"Project Name *","Nome do canal (ex: Booking.com)":"Channel name (e.g.: Booking.com)","Nome do cenário (opcional)":"Scenario name (optional)","Nome do concorrente":"C
162ompetitor name","Nome do indicador":"Indicator name","Nome do projeto":"Project name","Nome do treinamento":"Training name","Nome e foto aparecem normalmente":"Name and photo appear normally","Nome fantasia: {{v0}}":"Trade name: {{v0}}","Nome não disponÃvel":"Name not available","Nome obrigatório":"Name required","Nome é obrigatório":"Name is required","Nome:":"Name:","Norma:":"Standard:",Normal:F_,"Normalizar 100%":"Normalize 100%",Normalização:"Normalization","Normalização (0-1)":"Normalization (0-1)","Normalização + IGMA":"Normalization + IGMA","Normalização Inversa":"Inverse Normalization","Normalização Linear (Positiva)":"Linear Normalization (Positive)","Normalização LogarÃtmica":"Logarithmic Normalization","Normalização MIN_MAX, BANDS ou BINARY":"MIN_MAX, BANDS or BINARY Normalization","Normalização Min-Max":"Min-Max Normalization","Normalização automática com 3 funções: linear, inversa e logarÃtmica":"Automatic normalization with 3 functions: linear, inverse, and logarithmic","Normalização e Motor IGMA (Mario Beni)":"Normalization and IGMA Engine (Mario Beni)","Normalização:":"Normalization:","Normalmente a aprovação leva até 24 horas úteis.":"Approval usually takes up to 24 business hours.","Nos painéis de cada plataforma (Google Business, TripAdvisor Management Center), veja o % de avaliações respondidas pela gerência.":"On each platform's dashboards (Google Business, TripAdvisor Management Center), see the % of reviews responded to by management.","Nossa equipe entra em contato pelo e-mail informado.":"Our team will c
162ontact you via the email provided.","Nossa equipe pedagógica irá avaliar sua solicitação":"Our pedagogical team will evaluate your request",Nota:G_,"Nota (0-10)":"Score (0-10)","Nota Consolidada":"Consolidated Score","Nota Máxima":"Maximum Grade","Nota Média":"Average Score","Nota RA":"RA Score","Nota agregada de Booking, Google, TripAdvisor, Airbnb e demais OTAs em escala 0-10":"Aggregate score from Booking, Google, TripAdvisor, Airbnb and other OTAs on a 0-10 scale","Nota de Reviews Online":"Online Reviews Score","Nota de segurança:":"Security note:","Nota final":"Final grade","Nota média":"Average grade","Nota mÃn. (%)":"Min. score (%)","Nota mÃnima":"Minimum grade","Nota mÃnima (%)":"Minimum score (%)","Nota parcial":"Partial grade","Nota: Nem todos os municÃpios terão estações IQA num raio de 50 km â nesses casos o campo fica disponÃvel para preenchimento manual.":"Note: Not all municipalities will have IQA stations within a 50 km radius â in those cases the field remains available for manual entry.",Notas:V_,"Notas (opcional)":"Notes (optional)","Notas adicionais":"Additional notes","Notas adicionais (rodapé do relatório)":"Additional notes (report footer)","Notas da revisão...":"Review notes...","Notas de conclusão:":"Completion notes:","Notas do Admin":"Admin Notes","Notas em escala 0â10. Para fontes que usam 0â5 (TripAdvisor, Google), multiplique por 2 antes de inserir.":"Scores on a 0â10 scale. For sources using 0â5 (TripAdvisor, Google), multiply by 2 before entering.","Notas em provas realizadas.":"Grades on completed tests.","Notas por fonte":"Scores by source","Notas:":"Notes:","Notifica que o acesso foi liberado":"Notifies that access has been released","Notificar por e-mail":"Notify by email",Notificações:"Notifications","Notificações ({{v0}})":"Notifications ({{v0}})",Nov:$_,"Nova Atividade":"New Activity","Nova Aventura":"New Adventure","Nova Consulta":"New Query","Nova Fase":"New Phase","Nova Importação":"New Import","Nova Live":"New Livestream","Nova Organização":"New Organization","Nova Questão":"New Question","Nova Rodada":"New Round","Nova Rodada de Diagnóstico":"New Diagnosis Round","Nova Sala":"New Room","Nova Senha":"New Password","Nova Solicitação":"New Request","Nova Solicitação de Conteúdo":"New Content Request","Nova Tarefa":"New Task","Nova Trilha Formativa":"New Learning Path","Nova assinatura manual":"New manual subscription","Nova atividade":"New activity","Nova badge":"New badge","Nova busca":"New search","Nova concessão":"New concession","Nova conversa":"New conversation","Nova entrada":"New entry","N
162ova feature":"New feature","Nova funcionalidade":"New functionality","Nova linha":"New row","Nova linha de orçamento":"New budget line","Nova marca":"New brand","Nova marca / rede":"New brand / network","Nova mensagem":"New message","Nova pasta":"New folder","Nova pergunta":"New question","Nova prova ({{v0}})":"New test ({{v0}})","Nova regra":"New rule","Nova seção":"New section","Nova trilha":"New trail",Novo:H_,"Novo CAGED / MTE":"Novo CAGED / MTE","Novo CAGED â EstatÃsticas mensais de admissões e desligamentos formais (CNAEs do turismo). Usado pelo Observatório como base anual via IGMA, com baseline mensal estimado (valor anual ÷ 12) quando não há série mensal carregada. DisponÃvel em: gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged":"New CAGED â Monthly statistics of formal admissions and dismissals (tourism CNAEs). Used by the Observatory as an annual basis via IGMA, with an estimated monthly baseline (annual value ÷ 12) when no monthly series is loaded. Available at: gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged","Novo Consórcio":"New Consortium","Novo Curso":"New Course","Novo Destino":"New Destination","Novo Diagnóstico Hoteleiro":"New Hotel Assessment","Novo Evento":"New Event","Novo Evento TurÃstico":"New Tourist Event","Novo Indicador":"New Indicator","Novo Jogo":"New Game","Novo Marco":"New Milestone","Novo Módulo":"New Module","Novo Post":"New Post","Novo Projeto":"New Project","Novo Treinamento":"New Training","Novo Usuário":"New User","Novo anúncio":"New announcement","Novo checkpoint":"New checkpoint","Novo destino":"New destination","Novo evento":"New event","Novo plano de ação criado com sucesso":"New action plan created successfully","Novo post":"New post","Novo prazo":"New deadline","Novo snapshot":"New snapshot","Novo vÃnculo":"New link","Novo vÃnculo externo":"New external link","Novos meios de hospedagem":"New lodging facilities","Novos relatórios/dashboards":"New reports/dashboards","Novos usuários recebem 7 dias de trial gratuito com acesso a AnalÃtico, EDU e Jogos. O acesso é gerenciado pelo administrador da organização.":"New users receive 7 days of free trial with access to Analytical, EDU, and Games. Access is managed by the organization's administrator.","Novos valores de fontes oficiais (IBGE, CADASTUR, STN, MTur) chegaram para este municÃpio. Recalcule para incorporá-los.":"New values from official sources (IBGE, CADASTUR, STN, MTur) have arrived for this municipality. Recalculate to incorporate them.","Nudez e conteúdo sexual":"Nudity and sexual content","Nudez explÃcita":"Explicit nudity","Numérico genérico":"Generic numeric","Nunca rodou":"Never run","Nunca sincronizado":"Never synchronized","Nuvem de Poluição":"Pollution Cloud","Nº de Funcionários":"No. of Employees","Nº de UHs":"No. of UHs","Nº documento":"Document no.",Não:"No","Não aplicável":"Not applicable","Não autenticado":"Not authenticated","Não chove há semanas! A água está acabando!":"It hasn't rained for weeks! The water is running out!","Não confundir com leitos hospitalares SUS (igma_leitos_hospitalares_sus_por_mil_habitantes â DATASUS).":"Not to be confused with SUS hospital beds (igma_hospital_beds_sus_per_thousand_inhabitants â DATASUS).","Não definido":"Not defined","Não detectada":"Not detected","Não elegÃvel para certificações":"Not eligible for certifications","Não fazer nada e torcer":"Do nothing and hope for the best","Não foi desta vez":"Not this time","Não foi possÃvel alterar o plano":"Could not change plan","Não foi possÃvel atualizar o link":"Could not update the link","Não foi possÃvel atualizar o status":"Could not update status","Não foi possÃvel carregar a qualidade dos dados oficiais.":"Could not load official data quality.","Não foi possÃvel carregar a trilha de auditoria.":"Could not load the audit trail.","Não foi possÃvel carregar auditoria de procedência:":"Could not load provenance audit:","Não foi possÃvel carregar o histórico":"Could not load history","Não foi possÃvel concluir":"Could not complete","Não foi possÃvel copiar para a área de transferência":"Could not copy to clipboard","Não foi possÃvel criar a conversa":"Could not create the conversation","Não foi possÃvel encerrar a sessão. Tente novamente.":"Could not end the session. Please try again.","Não foi possÃvel enviar o comentário":"Could not send comment","Não foi possÃvel enviar. Tente novamente em instantes.":"Could not send. Please try again in a few moments.","Não foi possÃvel equipar":"C
162ould not equip","Não foi possÃvel excluir o destino.":"Could not delete destination.","Não foi possÃvel gerar as justificativas agora. Tente de novo em instantes.":"Could not generate the justifications now. Try again in a few moments.","Não foi possÃvel iniciar o pagamento":"Could not initiate payment","Não foi possÃvel ler o arquivo.":"Could not read the file.","Não foi possÃvel preparar o PDF. Desative o bloqueador de pop-ups.":"Could not prepare the PDF. Disable your pop-up blocker.","Não foi possÃvel pré-preencher os indicadores":"Could not prefill the indicators","Não foi possÃvel registrar a aceitação.":"Could not register the acceptance.","Não foi possÃvel remover o comentário":"Could not remove comment","Não foi possÃvel salvar a edição do relatório.":"Could not save the report edits.","Não foi possÃvel salvar antes de trocar â corrija os erros e tente novamente.":"Could not save before switching â fix the errors and try again.","Não foi possÃvel salvar o destino.":"Could not save destination.","Não foram encontrados dados suficientes para gerar uma análise.":"Insufficient data found to generate an analysis.","Não há trial por tempo (7 dias). O acesso de avaliação é por":"There is no time-based trial (7 days). Evaluation access is by","Não inclui":"Does not include","Não informado":"Not provided","Não iniciado":"Not started","Não iniciou":"Has not started","Não localizamos a sessão de pagamento. Se você concluiu uma compra, verifique sua assinatura.":"We could not find the payment session. If you have completed a purchase, please check your subscription.","Não preencha este campo manualmente â o valor é gerado ao recalcular o diagnóstico.":"Do not fill in this field manually â the value is generated
162when the diagnostic is recalculated.","Não preencha manualmente â gerado no recálculo.":"Do not fill in manually â generated during recalculation.","Não preenchidos":"Not filled in","Não tem conta? Solicitar acesso":"Don't have an account? Request access","Não tem efeito":"Has no effect","Não utilizo as funcionalidades":"I don't use the functionalities","Não. Ele começa com 5 usuários e cresce conforme a necessidade: cada usuário adicional é cobrado pelo mesmo valor por usuário/mês. Você ajusta a quantidade a qualquer momento no checkout ou em Gerenciar conta.":"No. It starts with 5 users and grows as needed: each additional user is charged the same per user/month. You adjust the quantity at any time at checkout or in Manage account.","NÃveis de Diagnóstico":"Diagnostic Levels",NÃvel:"Level","NÃvel 1 â Sensibilização: conceitos introdutórios e linguagem comum.":"Level 1 â Awareness: introductory concepts and common language.","NÃvel 2 â Capacitação: instrumentos práticos de gestão e operação.":"Level 2 â Training: practical management and operation tools.","NÃvel 3 â Aprofundamento: análise técnica e estudos de caso.":"Level 3 â Deepening: technical analysis and case studies.","NÃvel 4 â Especialização: liderança, formulação de polÃticas e métricas avançadas.":"Level 4 â Specialization: leadership, policy formulation, and advanced metrics.","NÃvel 5":"Level 5","NÃvel de Diagnóstico":"Diagnosis Level","NÃvel de Restrição":"Restriction Level","NÃvel de confiabilidade (1-5) baseado na origem":"Reliability level (1-5) based on origin","NÃvel do mar":"Sea level","NÃvel elegÃvel:":"Eligible level:","NÃvel {{v0}}":"Level {{v0}}","NÃvel {{v0}} · {{v1}} XP totais":"Level {{v0}} · {{v1}} total XP","NÃvel {{v0}} â {{v1}}":"Level {{v0}} â {{v1}}","NÃvel:":"Level:","Núcleo SISTUR ({{v0}})":"SISTUR Core ({{v0}})","Número de Funcionários":"Number of Employees","Número de SuÃtes":"Number of Suites","Número de UHs (Quartos)":"Number of HUs (Rooms)","Número de questões":"Number of questions","Número de questões:":"Number of questions:","Número de unidades habitacionais por mil habitantes. Fonte: Mapa do Turismo / CADASTUR. Periodicidade: trimestral.":"Number of accommodation units per thousand inhabitants. Source: Tourism Map / CADASTUR. Frequency: quarterly.","Número total de funcionários ÷ número de quartos (UHs). Inclua efetivos e terceirizados.":"Total number of employees ÷ number of rooms (UHs). Include permanent and outsourced staff.","O Beni tem contexto sobre a metodologia SISTUR e seus dados.":"Beni has context about the SISTUR methodology and its data.","O COâ é responsável por cerca de 75% do efeito estufa.":"COâ is responsible for about 75% of the greenhouse effect.","O Campo de Batalha":"The Battlefield","O Cerrado abriga nascentes de grandes bacias hidrográficas brasileiras.":"The Cerrado harbors headwaters of major Brazilian hydrographic basins.","O Chamado da Floresta":"The Call of the Forest","O Coração do Brasil":"The Heart of Brazil","O Dashboard apresenta uma visão geral dos diagnósticos: scores dos 3 pilares (RA, OE, AO), alertas IGMA, tendências e planos de ação. Use o toggle Territorial/Enterprise para alternar entre visões.":"The Dashboard presents an overview of diagnostics: scores of the 3 pillars (RA, OE, AO), IGMA alerts, trends, and action plans. Use the Territorial/Enterprise toggle to switch between views.","O Dashboard é o centro de comando do
162SISTUR AnalÃtico. Aqui você vê uma visão consolidada de todos os seus destinos, diagnósticos e alertas em tempo real.":"The Dashboard is the command center of SISTUR Analytics. Here you see a consolidated view of all your destinations, diagnostics, and real-time alerts.","O Empresarial inclui indicadores em 7 categorias: Performance Financeira (RevPAR, ADR, GOP Margin), Experiência do Hóspede (NPS, Reviews Online), Operações (Taxa de Ocupação), Sustentabilidade (Consumo de Ãgua/Energia, Certificações), RH (Turnover, Horas de Treinamento), e Impacto Local (% Funcionários Locais, % Compras Locais). 6 destes indicadores também são usados em diagnósticos territoriais.":"The Enterprise plan includes indicators in 7 categories: Financial Performance (RevPAR, ADR, GOP Margin), Guest Experience (NPS, Online Reviews), Operations (Occupancy Rate), Sustainability (Water/Energy Consumption, Certifications), HR (Turnover, Training Hours), and Local Impact (% Local Employees, % Local Purchases). 6 of these indicators are also used in territorial diagnostics.","O Geomarketing":"Geomarketing","O Gêmeo Digital":"The Digital Twin","O LTV do hóspede":"The guest's LTV","O Mapa do Turismo Brasileiro é o programa oficial do Ministério do Turismo que classifica municÃpios em categorias (A a E) e regiões turÃsticas. O SISTUR se integra diretamente à API REST (mapa.turismo.gov.br) para buscar em tempo real dados como: categoria do municÃpio, região turÃstica, quantidade de empregos e estabelecimentos turÃsticos, estimativas de visitantes nacionais e internacionais, arrecadação do turismo e existência de conselho municipal de turismo.":"The Brazilian Tourism Map is the official program of the Ministry of Tourism that classifies municipalities into categories (A to E) and tourist regions. SISTUR integrates directly with the REST API (mapa.turismo.gov.br) to retrieve real-time data such as: municipality category, tourist region, number of tourism jobs and establishments, estimates of national and international visitors, tourism revenue, and existence of a municipal tourism council.","O Motor IGMA (Intelligence for Governance, Management and Action) é o componente central do SISTUR. Implementa computacionalmente as 6 regras sistêmicas derivadas da Análise Estrutural do Turismo do Prof. Mario Beni.":"The IGMA Engine (Intelligence for Governance, Management and Action) is the central component of SISTUR. It computationally implements the 6 systemic rules derived from Professor Mario Beni's Structural Analysis of Tourism.","O Motor IGMA (Intelligence for Governance, Management and Action) é o núcleo do sistema que aplica automaticamente 6 regras derivadas dessa teoria.":"The IGMA Engine (Intelligence for Governance, Management and Action) is the core of the system that automatically applies 6 rules derived from this theory.","O Motor IGMA calcula automaticamente a data de próxima revisão baseado na severidade: pilares crÃticos = 6 meses, pilares em atenção = 12 meses, todos adequados = 18 meses. Esta data aparece nos alertas do diagnóstico.":"The IGMA Engine automatically calculates the next review date based on severity: critical pillars = 6 months, pillars requiring attention = 12 months, all adequate = 18 months. This date appears in the diagnostic alerts.","O Motor IGMA é o núcleo inteligente do SISTUR que aplica 6 regras sistêmicas baseadas na teoria de Mario Beni: (1) Prioridade RA - limitações ambientais bloqueiam expansão estrutural; (2) Ciclo contÃnuo - revisões programadas por severidade; (3) Externalidades negativas - alerta quando OE melhora mas RA piora; (4) Governança central - AO crÃtico bloqueia todo o sistema; (5) Marketing bloqueado se RA ou AO crÃticos; (6) Interdependência setorial identificada.":"The IGMA Engine is the intelligent core of SISTUR that applies 6 systemic rules based on Mario Beni's theory: (1) RA Priority - environmental limitations block structural expansion; (2) Continuous Cycle - scheduled reviews by severity; (3) Negative Externalities - alerts when OE improves but RA worsens; (4) Central Governance - critical AO blocks the entire system; (5) Marketing blocked if RA or AO are critical; (6) Sectoral interdependence identified.","O Observatório é o":"The Observatory is the","O Parque Estadual da Serra é criado! Proteção permanente!":"The Serra State Park is created! Permanent protection!","O Preço da Inação":"The Price of Inaction","O Professor Beni pode ajudar em diversas situações.":"Professor Beni can help in various situations.","O Professor Beni pode responder sobre os temas abaixo, sempre com base na metodologia SISTUR:":"Professor Beni can answer about the topics below, al
162ways based on the SISTUR methodology:",'O Professor Beni só responde sobre turismo, metodologia SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriais/empresariais, educação em turismo, polÃticas públicas e patrimônio cultural/ambiental.\n\nRecusa educadamente: programação, receitas, saúde médica, direito, matemática geral, entretenimento, esportes, polÃtica partidária, religião e qualquer outro tema fora do turismo.\n\nMensagem padrão de recusa: "Agradeço sua curiosidade, mas minha especialidade é exclusivamente a área de turismo e a metodologia sistêmica do SISTUR. Posso ajudá-lo com qualquer questão sobre planejamento turÃstico, diagnósticos territoriais, os pilares RA, OE e AO, ou as regras do Motor IGMA. Como posso ajudá-lo nessas áreas?"':`Professor Beni only answers questions about tourism, SISTUR methodology, RA/OE/AO pillars, IGMA Engine, territorial/business diagnostics, tourism education, public policies, and cultural/environmental heritage. 163 164Politely declines: programming, recipes, medical health, law, general mathematics, entertainment, sports, partisan politics, religion, and any other topic outside of tourism. 165 166Standard refusal message: "I appreciate your curiosity, but my specialty is exclusively the field of tourism and SISTUR's systemic methodology. I can help you with any questions about tourism planning, territorial diagnostics, the RA, OE, and AO pillars, or the IGMA Engine rules. How can I help you in these areas?"`,'O Professor Beni só responde sobre turismo, metodologia SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriais/empresariais, educação em turismo, polÃticas públicas e patrimônio cultural/ambiental. Recusa educadamente: programação, receitas, saúde médica, direito, matemática geral, entretenimento, esportes, polÃtica partidária, religião e qualquer outro tema fora do turismo. Mensagem padrão de recusa: "Agradeço sua curiosidade, mas minha especialidade é exclusivamente a área de turismo e a metodologia sistêmica do SISTUR. Posso ajudá-lo com qualquer questão sobre planejamento turÃstico, diagnósticos territoriais, os pilares RA, OE e AO, ou as regras do Motor IGMA. Como posso ajudá-lo nessas áreas?"':`Professor Beni only answers about tourism, SISTUR methodology, RA/OE/AO pillars, IGMA Engine, territorial/business diagnostics, tourism education, public policies, and cultural/environmental heritage. He politely declines: programming, recipes, medical health, law, general mathematics, entertainment, sports, partisan politics, religion, and any other topic outside of tourism. Standard refusal message: "I appreciate your curiosity, but my specialty is exclusively the field of tourism and SISTUR's systemic methodology. I can help you with any questions about tourism planning, territorial diagnostics, the RA, OE, and AO pillars, or the IGMA Engine rules. How can I help you in these areas?"`,"O Professor Beni é seu assistente inteligente. Faça perguntas sobre turismo, metodologia SISTUR, ou peça ajuda para interpretar diagnósticos. AcessÃvel pelo menu lateral.":"Professor Beni is your intelligent assistant. Ask questions about tourism, SISTUR methodology, or ask for help interpreting diagnostics. Accessible from the side menu.","O Professor Beni é um assistente com inteligência artificial treinado na metodologia de Mario Beni. Ele pode responder perguntas, interpretar dados e sugerir ações.":"Professor Beni is an artificial intelligence assistant trained in Mario Beni's methodology. He can answer questions, interpret data, and suggest actions.","O SISTUR (Sistema Integrado de Suporte para Turismo em Regiões) é uma plataforma web proprietária de inteligência territorial que digitaliza e automatiza a análise sistêmica do turismo, baseando-se na Teoria da Análise Estrutural do Turismo do Prof. Mario Carlos Beni.":"SISTUR (Integrated Support System for Tourism in Regions) is a proprietary web platform for territorial intelligence that digitizes and automates the systemic analysis of tourism, based on Professor Mario Carlos Beni's Theory of Structural Analysis of Tourism.","O SISTUR EDU oferece um catálogo completo de trilhas e capacitações organizadas por pilar, com videoaulas, materiais e avaliações.":"SISTUR EDU offers a complete catalog of tracks and training organized by pillar, with video lessons, materials, and assessments.","O SISTUR EDU oferece um catálogo de trilhas e capacitações organizadas por pilar (RA, OE, AO). Explore o conteúdo disponÃvel e matricule-se nas trilhas de seu interesse.":"SISTUR EDU offers a catalog of trails and training organized by pillar (RA, OE, AO). Explore the available content and enroll in trails of your interest.","O SISTUR EDU rastreia toda a sessão da prova: heartbeats periódicos, mudanças de aba/janela, tentativa de copiar/colar e tempo gasto por questão. A correção de questões objetivas é instantânea no servidor; questões dissertativas seguem para correção manual via RPC finalize_essay_grading (que centraliza nota + emissão de certificado). Certificados só são emitidos após validação completa, com QR Code de verificação pública.":"SISTUR EDU tracks the entire exam session: periodic heartbeats, tab/window changes, copy/paste attempts, and time spent per question. Objective questions are graded instantly on the server; essay questions proceed to manual grading via RPC finalize_essay_grading (which centralizes grade + certificate issuance). Certificates are only issued after full validation, with a public verification QR Code.","O SISTUR EDU é o módulo de capacitação do sistema. Diferentemente de plataformas EAD genéricas, suas trilhas e cursos são prescritos automaticamente a partir do diagnóstico territorial, garantindo conexão direta entre lacuna identificada e ação formativa.":"S
166ISTUR EDU is the system's training module. Unlike generic e-learning platforms, its tracks and courses are automatically prescribed based on territorial diagnostics, ensuring a direct connection between identified gaps and training actions.","O SISTUR Empresarial é o módulo especializado para organizações do setor privado (hotéis, resorts, redes hoteleiras). Utiliza 22 indicadores de hospitalidade adaptados da metodologia Mario Beni, sendo 6 compartilhados com diagnósticos territoriais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais).":"SISTUR Business is the specialized module for private sector organizations (hotels, resorts, hotel chains). It uses 22 hospitality indicators adapted from the Mario Beni methodology, with 6 shared with territorial diagnostics (NPS, Online Reviews, Training Hours, % Local Employees, % Local Purchases, and Environmental Certifications).","O SISTUR classifica organizações em dois tipos: PÃBLICAS (secretarias de turismo, órgãos governamentais) com foco em diagnósticos territoriais de municÃpios, e PRIVADAS (hotéis, resorts, empresas hoteleiras) com acesso opcional ao módulo Empresarial para indicadores especÃficos de hospitalidade.":"SISTUR classifies organizations into two types: PUBLIC (tourism secretariats, government bodies) focused on municipal territorial diagnostics, and PRIVATE (hotels, resorts, hotel companies) with optional access to the Business module for specific hospitality indicators.","O SISTUR constitui obra original protegida pela Lei 9.609/1998 (Lei de Software) e Lei 9.610/1998 (Direitos Autorais). Os seguintes elementos são proprietários:":"SISTUR constitutes an original work protected by Law 9.609/1998 (Software Law) and Law 9.610/1998 (Copyright Law). The following elements are proprietary:","O SISTUR consulta a API pública da Agência Nacional de Ãguas (Hidroweb/Qualiágua) usando o código IBGE do municÃpio para recuperar o Ãndice de Quali
166dade da Ãgua (IQA) médio das estações de monitoramento ativas. O valor é exibido com a quantidade de estações usadas no cálculo, o ano de referência e o nÃvel de confiança. Esse indicador alimenta diretamente o pilar RA (Relações Ambientais), agregando uma base hÃdrica oficial ao diagnóstico territorial. MunicÃpios sem estação ativa permanecem com o indicador vazio para preenchimento manual.":"SISTUR queries the National Water Agency's public API (Hidroweb/Qualiágua) using the municipality's IBGE code to retrieve the average Water Quality Index (WQI) from active monitoring stations. The value is displayed with the number of stations used in the calculation, the reference year, and the confidence level. This indicator directly feeds the RA (Environmental Relations) pillar, adding an official water basis to the territorial diagnostic. Municipalities without an active station retain an empty indicator for manual completion.","O SISTUR consulta automaticamente":"SISTUR automatically queries","O SISTUR consulta automaticamente 8 fontes oficiais para pré-preencher mais de 25 indicadores: (1) IBGE Agregados â População, PIB per capita, Densidade e Ãrea; (2) IBGE SIDRA/Censo 2010 â Abastecimento de água e Coleta de lixo; (3) IBGE Pesquisas â IDH, Gini, Incidência de pobreza; (4) DATASUS â Leitos hospitalares, Cobertura de saúde, Mortalidade infantil e geral; (5) INEP â IDEB; (6) STN/Tesouro Nacional â Receita própria e Despesa com turismo; (7) CADASTUR/dados.gov.br â Guias e Agências de turismo (datasets abertos com ingestão trimestral); (8) Mapa do Turismo Brasileiro (mapa.turismo.gov.br) â Região turÃstica, Categoria (A-E), Empregos, Estabelecimentos, Visitantes, Arrecadação e Conselho municipal; (9) ANA/Hidroweb (Qualiágua) â IQA médio das estações de monitoramento do municÃpio (alimenta o pilar RA). Quando uma base não retorna dado válido para o municÃpio, o indicador permanece fora do pré-preenchimento e segue para preenchimento manual com confirmação humana obrigatória.":"SISTUR automatically consults 8 official sources to pre-fill more than 25 indicators: (1) IBGE Aggregates â Population, GDP per capita, Density and Area; (2) IBGE SIDRA/2010 Census â Water supply and Waste collection; (3) IBGE Surveys â HDI, Gini, Poverty incidence; (4) DATASUS â Hospital beds, Health coverage, Infant and general mortality; (5) INEP â IDEB; (6) STN/National Treasury â Own revenue and Tourism expenditure; (7) CADASTUR/dados.gov.br â Guides and Tourism agencies (open datasets with quarterly ingestion); (8) Mapa do Turismo Brasileiro (mapa.turismo.gov.br) â Tourist region, Category (A-E), Employment, Establishments, Visitors, Revenue and Municipal council; (9) ANA/Hidroweb (Qualiágua) â Average WQI of municipal monitoring stations (feeds the RA pillar). When a database does not return valid data for the municipality, the indicator remains outside pre-filling and proceeds to manual completion with mandatory human confirmation.","O SISTUR expõe um servidor MCP (Model Context Protocol) que permite a assistentes de IA â como ChatGPT, Claude e Cursor â consultar e agir sobre os seus dados do sistema, sempre com o login do próprio usuário e respeitando as permissões da sua organização.":"SISTUR exposes an MCP (Model Context Protocol) server that allows AI assistants â such as ChatGPT, Claude, and Cursor â to query and act on your system data, always with the user's own login and respecting your organization's permissions.","O SISTUR gera três templates distintos a partir do mesmo diagnóstico validado. Todos compartilham a mesma base de dados auditados (":"SISTUR generates three distinct templates from the same validated diagnosis. All share the same audited database (","O SISTUR implementa os princÃpios da Análise Estrutural do Turismo desenvolvida pelo Prof. Mario Carlos Beni. A teoria estabelece que o turismo é um sistema aberto, composto por subsistemas interdependentes que devem ser analisados de forma holÃstica.":"SISTUR implements the principles of the Structural Analysis of Tourism developed by Prof. Mario Carlos Beni. The theory establishes that tourism is an open system, composed of interdependent subsystems that must be analyzed holistically.","O SISTUR não publica rankings entre municÃpios. O Ãndice I-SISTUR agregado é de uso interno. Cada destino enxerga apenas seus próprios dados â comparações regionais só ocorrem via consórcios autorizados.":"SISTUR does not publish rankings between municipalities. The aggregated I-SISTUR index is for internal use. Each destination only sees its own data â regional comparisons only occur via authorized consortia.","O SISTUR oferece 4 jogos educacionais que ensinam conceitos de turismo sustentável de forma lúdica e envolvente.":"SISTUR offers 4 educational games that teach sustainable tourism concepts in a fun and engaging way.","O SISTUR permite o upload de":"SISTUR allows the upload of","O SISTUR permite upload de documentos de referência (PDF, DOCX, XLSX, CSV, TXT até 20MB) que são usados automaticamente pela IA na geração de relatórios.":"SISTUR allows uploading reference documents (PDF, DOCX, XLSX, CSV, TXT up to 20MB
166) that are automatically used by AI in report generation.","O SISTUR preza pela":"SISTUR values","O SISTUR requer a aceitação dos Termos e Condições para garantir o uso adequado da plataforma e proteção de dados.":"SISTUR requires acceptance of the Terms and Conditions to ensure proper platform usage and data protection.",'O SISTUR utiliza um catálogo unificado de indicadores. 6 indicadores possuem escopo "ambos" e são utilizados tanto em diagnósticos territoriais quanto empresariais:':'SISTUR uses a unified catalog of indicators. 6 indicators have "both" scope and are used in both territorial and business diagnoses:',"O SISTUR é baseado na teoria sistêmica do turismo do Prof. Mario Carlos Beni":"SISTUR is based on Professor Mario Carlos Beni's systemic theory of tourism","O SISTUR é o Sistema de Inteligência Territorial para o Turismo. Após o login, você será direcionado ao Dashboard, que reúne os principais indicadores e atalhos para os módulos contratados pela sua organização.":"SISTUR is the Territorial Intelligence System for Tourism. After logging in, you will be directed to the Dashboard, which gathers the main indicators and shortcuts to the modules contracted by your organization.","O SISTUR é um Sistema de Inteligência Territorial para o Turismo que transforma indicadores públicos em decisões estratégicas e capacitação aplicada, fechando o ciclo entre diagnóstico, ação e resultado. O sistema é baseado nos princÃpios sistêmicos de Mario Beni.":"SISTUR is a Territorial Intelligence System for Tourism that transforms public indicators into strategic decisions and applied training, closing the cycle between diagnosis, action, and result. The system is based on Mario Beni's systemic principles.","O SISTUR é uma infraestrutura de gestão baseada em evidências que transforma indicadores públicos em decisões estratégicas e capacitação aplicada para destinos turÃsticos brasileiros.":"S
166ISTUR is an evidence-based management infrastructure that transforms public indicators into strategic decisions and applied training for Brazilian tourist destinations.","O Titular compromete-se a utilizar esse acesso de forma responsável, mantendo a confidencialidade dos dados individuais e não divulgando informações sensÃveis a terceiros sem autorização.":"The Holder undertakes to use this access responsibly, maintaining the confidentiality of individual data and not disclosing sensitive information to third parties without authorization.","O Titular e seus representantes autorizados têm acesso irrestrito a todos os dados armazenados na Plataforma para fins de: (a) suporte técnico e resolução de problemas; (b) auditoria e conformidade; (c) manutenção e melhoria dos serviços; (d) análise de segurança e prevenção de fraudes; (e) cumprimento de obrigações legais e regulatórias.":"The Holder and their authorized representatives have unrestricted access to all data stored on the Platform for the purposes of: (a) technical support and problem resolution; (b) auditing and compliance; (c) service maintenance and improvement; (d) security analysis and fraud prevention; (e) compliance with legal and regulatory obligations.","O Titular não garante disponibilidade ininterrupta da Plataforma, podendo ocorrer manutenções programadas ou eventuais indisponibilidades técnicas.":"The Holder does not guarantee uninterrupted availability of the Platform, as scheduled maintenance or eventual technical unavailability may occur.","O Titular não se responsabiliza por decisões tomadas pelo Usuário com base nos diagnósticos, relatórios ou recomendações gerados pela Plataforma.":"The Holder is not responsible for decisions made by the User based on the diagnoses, reports or recommendations generated by the Platform.","O Titular pode suspender ou encerrar a conta do Usuário em caso de violação destes Termos, com ou sem aviso prévio.":"The Holder may suspend or terminate the User's account in case of violation of these Terms, with or without prior notice.","O Titular reserva-se o direito de alterar preços e condições dos planos com aviso prévio de 30 dias.":"The Holder reserves the right to change prices and plan conditions with 30 days' prior notice.","O Titular reserva-se o direito de atualizar estes Termos a qualquer momento, notificando o Usuário por e-mail ou pela Plataforma. O uso continuado após a notificação implica aceitação dos novos Termos.":"The Holder reserves the right to update these Terms at any time, notifying the User by email or through the Platform. Continued use after notification implies acceptance of the new Terms.","O Usuário deve manter suas credenciais de acesso em sigilo e notificar imediatamente o Titular em caso de uso não autorizado.":"The User must keep their access credentials confidential and immediately notify the Holder in case of unauthorized use.","O Usuário pode encerrar sua conta a qualquer momento, sem direito a reembolso de valores já pagos pelo perÃodo contratado.":"The User may terminate their account at any time, without right to reimbursement of amounts already paid for the contracted period.","O Usuário pode solicitar a exportação dos seus dados pessoais e do conteúdo gerado a qualquer momento através dos canais oficiais da Plataforma.":"The User may request the export of their personal data and generated content at any time through the Platform's official channels.","O Usuário recebe uma licença pessoal, intransferÃvel e não exclusiva para acessar o conteúdo durante a vigência da sua assinatura.":"The User receives a personal, non-transferable and non-exclusive license to access the content during the term of their subscription.","O Usuário reconhece que os diagnósticos gerados pela Plataforma têm caráter orientativo e não substituem análises técnicas aprofundadas realizadas por profissionais especializados.":"The User acknowledges that the diagnoses generated by the Platform are for guidance purposes and do not replace in-depth technical analyses performed by specialized professionals.","O Usuário é responsável pela veracidade e atualidade dos dados inseridos na Plataforma.":"The User is responsible for the veracity and accuracy of the data entered into the Platform.",'O acesso Empresarial é habilitado por administradores nas Configurações > Organizações. Selecione a organização, marque o tipo como "Privada" e ative o toggle "Acesso Empresarial". Isso libera os indicadores e fluxos especÃficos para hospital
166idade.':'Business access is enabled by administrators in Settings > Organizations. Select the organization, mark the type as "Private", and activate the "Business Access" toggle. This unlocks the specific indicators and workflows for hospitality.',"O acesso à Plataforma é concedido mediante assinatura de plano (Avaliação Gratuita, Territorial, Empresarial, Estudante, Professor ou Consultoria Especializada), conforme descrito na página de assinatura.":"Access to the Platform is granted upon subscription to a plan (Free Trial, Territorial, Business, Student, Professor, or Specialized Consulting), as described on the subscription page.","O acolhimento salva vidas, mas os recursos são limitados.":"Hospitality saves lives, but resources are limited.",'O acordo parecia razoável, mas os madeireiros não cumprem. A "exploração parcial" se torna total. A floresta desaparece rapidamente.':`The agreement seemed reasonable, but the loggers don't comply. "Partial exploitation" becomes total. The forest disappears quickly.`,"O administrador da sua organização receberá uma notificação.":"Your organization's administrator will receive a notification.",'O aluno acessa "Minhas Atividades" (/edu/minhas-atividades) e visualiza todas as atribuições com janela de disponibilidade, prazo e status. Ao clicar em "Iniciar" em uma prova, o servidor valida automaticamente a janela, o número de tentativas restantes e a matrÃcula na turma â gera a prova com amostragem estratificada de questões (30% fáceis, 50% médias, 20% difÃceis), aplica overrides definidos pelo professor e redireciona o aluno direto para a tela de execução.':'The student accesses "My Activities" (/edu/minhas-atividades) and views all assignments with availability window, deadline, and status. Upon clicking "Start" on an exam, the server automatically validates the window, the number of remaining attempts, and enrollment in the class â it generates the exam with stratified sampling of questions (30% easy, 50% medium, 20% difficult), applies overrides defined by the professor, and redirects the student directly to the execution screen.',"O animal está protegido e atrai visitantes! ð¦":"The animal is protected and attracts visitors! ð¦",'O arquivo "{{v0}}" será removido da base de conhecimento.':'The file "{{v0}}" will be removed from the knowledge base.','O arquivo "{{v0}}" será removido permanentemente.':'The file "{{v0}}" will be permanently removed.',"O arquivo deve seguir exatamente este formato para importação correta":"The file must follow this exact format to import correctly","O arquivo será salvo em formato CSV com separador ponto-e-vÃrgula, compatÃvel com Excel em português.":"The file will be saved in CSV format with semicolon separator, compatible with Excel in Portuguese.","O assunto deve ter no máximo 200 caracteres":"The subject must be a maximum of 200 characters","O avanço agrÃcola não parou. Nascentes secaram, animais desapareceram e comunidades foram expulsas. O cerrado agoniza sob monoculturas infinitas.":"Agricultural expansion did not stop. Springs dried up, animals disappeared, and communities were expelled. The cerrado agonizes under endless monocultures.","O banco de dados PostgreSQL contém 40+ tabelas com Row Level Security habilitado em todas. Principais entidades:":"The PostgreSQL database contains 40+ tables with Row Level Security enabled on all. Main entities:","O banner desaparece quando você assina um plano.":"The banner disappears when you subscribe to a plan.","O caminho de todo usuário, do cadastro ao plano pago.":"The user's journey, from registration to paid plan.","O catálogo é organizado por pilar (RA, OE, AO).":"The catalog is organized by pillar (RA, OE, AO).","O cerrado está passando por uma seca terrÃvel!":"The cerrado is going through a terrible drought!","O cerrado queima de sede.":"The cerrado burns with thirst.","O cerrado queima. Você fecha os olhos, mas a culpa não desaparece.":"The cerrado burns. You close your eyes, but the guilt doesn't disappear.","O cerrado se recupera! Nascentes brotam, lobos-guarás correm pelos campos e comunidades tradicionais prosperam. Você provou que é possÃvel produzir e conservar ao mesmo tempo. O berço das águas do Brasil está protegido!":"The cerrado recovers! Springs flow, maned wolves run across the fields, and traditional communities prosper. You've proven that it's possible to produce and conserve at the same time. Brazil's cradle of waters is protected!","O cerrado sem veneno! Saúde para todos.":"Cerrado without poison! Health for all.","O chat abre em tela cheia com interface de conversa.":"The chat opens in full screen with a conversation interface.","O compromisso salva empregos, mas reduz o impacto ambiental pela metade.":"The compromise saves jobs, but halves the environmental impact.","O compromisso traz paz temporária, mas a floresta encolhe.":"The compromise brings temporary peace, but the forest shrinks.","O confronto gera tensão. Os madeireiros re
166cuam temporariamente, mas prometem voltar.":"The confrontation generates tension. The loggers retreat temporarily, but promise to return.","O confronto trouxe atenção da mÃdia, mas também dividiu a comunidade. Os madeireiros voltaram com mais força e proteção polÃtica.":"The confrontation brought media attention, but also divided the community. The loggers returned with more force and political protection.","O conselho dá voz a todos e decisões passam a ser coletivas.":"The council gives voice to everyone and decisions become collective.","O conselho fortalecido se torna modelo de governança ambiental. Decisões são transparentes e a serra prospera.":"The strengthened council becomes a model for environmental governance. Decisions are transparent and the sierra prospers.","O conselho gestor funciona bem, mas um membro tenta aprovar construções ilegais usando influência polÃtica.":"The management council works well, but a member tries to approve illegal constructions using political influence.","O contador de alunos ativos é atualizado em tempo real.":"The active student counter is updated in real time.","O contador é atualizado diariamente.":"The counter is updated daily.","O conteúdo deve ter no máximo 5000 caracteres":"The content must be a maximum of 5000 characters","O conteúdo ficará disponÃvel no seu catálogo personalizado":"The content will be available in your personalized catalog","O corredor conecta fragmentos por centenas de quilômetros! Vida plena!":"The corridor connects fragments for hundreds of kilometers! Full life!","O crescimento da oferta turÃstica está ocorrendo sem a correspondente sustentabilidade territorial, gerando riscos de externalidades negativas.":"Tourism supply is growing without corresponding territorial sustainability, creating risks of negative externalities.","O crescimento da oferta turÃstica está ocorrendo sem a correspondente sustentabilidade territorial, gerando riscos de externalidades negativas. Recomenda-se equilibrar o desenvolvimento.":"Tourism supply is growing without corresponding territorial sustainability, creating risks of negative externalities. Balanced development is recommended.","O cálculo será atualizado quando você concluir o diagnóstico.":"The calculation will be updated when you complete the diagnosis.","O cálculo é executado por uma edge function unificada que aplica normalização, ponderação, status (Adequado/Atenção/CrÃtico) e as 6 regras do Motor IGMA. Snapshots são gerados a cada cálculo; rodadas antigas não são alteradas retroativamente.":"The calculation is performed by a unified edge function that applies normalization, weighting, status (Adequate/Attention/Critical), and the 6 rules of the IGMA Engine. Snapshots are generated with each calculation; old rounds are not retroactively altered.","O código de verificação informado não corresponde a nenhum certificado válido.":"The informed verification code does not match any valid certificate.","O código informado não consta em nossa base.":"The code entered is not in our database.","O código é gerado automaticamente quando seu perfil de professor é aprovado.":"The code is automatically generated when your professor profile is approved.","O código é um texto curto (ex: PROF-ABC123).":"The code is a short text (e.g., PROF-ABC123).","O desenvolvimento desordenado cobrou seu preço. Praias poluÃdas, recifes mortos e pescadores sem peixe. O paraÃso foi perdido para o concreto e a negligência.":"Disordered development took its toll. Polluted beaches, dead reefs, and fishermen without fish. Paradise was lost to concrete and neglect.","O desmatamento causa erosão e assoreamento, reduzindo a capacidade dos rios.":"Deforestation causes erosion and silting, reducing river capacity.","O destino":"The destination","O destino selecionado não possui código IBGE cadastrado. O pré-preenchimento automático requer o código IBGE para buscar dados oficiais.":"The selected destination does not have a registered IBGE code. Automatic pre-filling requires the IBGE code to retrieve official data.","O destino turÃstico colapsou.":"The tourist destination collapsed.","O diagnóstico coleta valores de indicadores que são normalizados em uma escala de 0 a 1. O Motor IGMA aplica as 6 regras de Mario Beni, gerando alertas sistêmicos, bloqueios e a data de próxima revisão recomendada. Cada indicador recebe um status automático (Adequado, Atenção ou CrÃtico).":"The diagnostic collects indicator values that are normalized on a scale from 0 to 1. The IGMA Engine applies Mario Beni's 6 rules, generating systemic alerts, blocks, and the recommended next review date. Each indicator receives an automatic status (Adequate, Attention, or Critical).","O diagnóstico solicitado não foi encontrado.":"The requested diagnostic was not found.","O diferencial central (Secret Sauce) do SISTUR é a implementação computacional das 6 regras sistêmicas de Mario Beni em um motor de interpretação automatizado â o Motor IGMA â que transforma dados brutos em diagnósticos acionáveis com prescrições determinÃsticas de capacitação.":"The core differentiator (Secret Sauce) of SISTUR is the computational implementation of Mario Beni's 6 systemic rules in an automated interpretation engine â the IGMA Engine â which transforms raw data into actionable diagnostics with deterministic training prescriptions.",'O documento "{{v0}}" será removido permanentemente.':'The document "{{v0}}" will be permanently removed.',"O e-mail será enviado com logo, cores e layout do SISTUR automaticamente":"The email will be sent with SISTUR's logo, colors, and layout automatically","O egoÃsmo isola sua comunidade. Sem vizinhos, não há futuro.":"Selfishness isolates your community. Without neighbors, there is no future.","O exame solicitado não existe":"The requested exam does not exist","O festival valoriza a pesca artesanal e atrai turismo responsável.":"The festival values artisanal fishing and attracts responsible tourism.","O festival é um sucesso! Turistas e moradores celebram a culinária local. Restaurantes valorizam o pescado artesanal.":"The festival is a success! Tourists and locals celebrate local cuisine. Restaurants value artisanal fish.","O fogo destruiu metade da floresta protegida. Nascentes secaram e animais morreram. A comunidade chora a perda.":"The fire destroyed half of the protected forest. Springs dried up and animals died. The community mourns the loss.","O fogo destruiu muita vegetação! ð":"The fire destroyed a lot of vegetation! ð","O fogo destrói tudo.":"Fire destroys everything.","O fogo é contido! A tecnologia e a comunidade salvam a floresta restaurada.":"The fire is contained! Technology and the community save the restored forest.","O fórum da comunidade SISTUR é o espaço para troca de experiências, dúvidas e boas práticas entre profissionais do turismo.":"The SISTUR community forum is the space for exch
166anging experiences, questions, and best practices among tourism professionals.","O fórum da comunidade permite trocar experiências, tirar dúvidas e compartilhar boas práticas com outros profissionais do turismo. Publique posts, comente e curta conteúdos.":"The community forum allows you to exchange experiences, ask questions, and share best practices with other tourism professionals. Post, comment, and like content.","O gráfico de tendências mostra a evolução dos scores ao longo dos ciclos.":"The trend chart shows the evolution of scores over cycles.","O gráfico principal mostra como os scores dos 3 pilares evoluÃram entre rodadas de diagnóstico.":"The main chart shows how the scores of the 3 pillars evolved between diagnostic rounds.","O indicador foi liberado para edição e nova validação.":"The indicator has been released for editing and new validation.","O jardim botânico atrai pesquisadores do mundo todo. Novas espécies são descobertas e medicamentos potenciais identificados. Mas uma mineradora quer explorar a área.":"The botanical garden attracts researchers from all over the world. New species are discovered and potential medicines identified. But a mining company wants to explore the area.","O jardim se torna ponto de turismo e pesquisa!":"The garden becomes a point of tourism and research!","O link de convite pode ser compartilhado diretamente (WhatsApp, email, etc.).":"The invitation link can be shared directly (WhatsApp, email, etc.).","O link de verificação pública pode ser adicionado ao LinkedIn.":"The public verification link can be added to LinkedIn.","O link leva direto à página de cadastro com o código preenchido.":"The link leads directly to the registration page with the code pre-filled.","O litoral foi destruÃdo. Praias cobertas de lixo, recifes mortos, peixes envenenados. A comunidade pesqueira que vivia ali há gerações foi forçada a abandonar seu lar. Suas escolhas egoÃstas transformaram o paraÃso em pesadelo. O mar não perdoa.":"The coast was destroyed. Beaches covered in trash, dead reefs, poisoned fish. The fishing community that lived there for generations was forced to abandon their home. Your selfish choices turned paradise into a nightmare. The sea does not forgive.","O litoral se degrada. Você é expulso pela comunidade revoltada.":"The coast degrades. You are expelled by the revolted community.","O litoral se transformou! Ãguas cristalinas, recifes vivos, praias limpas e uma comunidade próspera. Seu trabalho mostrou que é possÃvel conciliar turismo, pesca e conservação. O oceano agradece!":"The coast has transformed! Crystal-clear waters, living reefs, clean beaches, and a prosperous community. Your work has shown that it's possible to reconcile tourism, fishing, and conservation. The ocean thanks you!","O mar avança sobre a terra.":"The sea advances over the land.","O mar está avançando sobre a praia! Ação necessária!":"The sea is encroaching on the beach! Action needed!","O marco foi removido do projeto":"The milestone has been removed from the project","O mercúrio envenena os rios. O reflorestamento é destruÃdo pelo garimpo.":"Mercury poisons the rivers. Reforestation is destroyed by mining.","O modelo de governança participativa se espalha pelo paÃs!":"The participatory governance model spreads across the country!","O modo demo carrega dados de exemplo em todos os módulos.":"Demo mode loads example data into all modules.","O monitoramento cientÃfico revela que a restauração está funcionando. Espécies raras retornam. Mas um incêndio criminoso ameaça destruir todo o trabalho.":"Scientific monitoring reveals that restoration is working. Rare species return. But an arson fire threatens to destroy all the work.","O motor IGMA aplica 6 regras sistêmicas aos dados.":"The IGMA engine applies 6 systemic rules to the data.","O motor de interpretação IGMA (6 regras sistêmicas), os indicadores proprietários, as fórmulas de normalização e o framework de pilares (RA, OE, AO) constituem segredo comercial e propriedade intelectual do Titular.":"The IGMA interpretation engine (6 systemic rules), proprietary indicators, normalization formulas, and the pillar framework (RA, OE, AO) constitute trade secret and intellectual property of the Owner.","O municÃpio convidado precisará aceitar formalmente para participar do consórcio e compartilhar o resumo do diagnóstico.":"The invited municipality will need to formally accept to participate in the consortium and share the diagnosis summary.","O muro ajudou, mas causou erosão...":"The wall helped, but caused erosion...","O muro pode não aguentar...":"The wall might not hold...","O mutirão foi um sucesso e ganhou destaque na mÃdia! Mas o lixo continua chegando. A raiz do problema é a falta de coleta seletiva. Um vereador local se aproxima com uma proposta.":"The community effort was a success and gained media attention! But garbage keeps coming. The root of the problem is the lack of selective collection. A local councilman approaches with a proposal.","O módulo de Projetos faz parte dos planos contratados. Acesse Assinatura para liberar projetos, resultados completos e relatórios.":"The Projects module is part of the contracted plans. Access Subscription to unlock projects, complete results, and reports.","O módulo de Projetos permite organizar iniciativas de melhoria vinculadas aos diagnósticos. Gerencie fases, milestones e tarefas de forma estruturada.":"The Projects module allows you to organize improvement initiatives linked to diagnostics. Manage phases, milestones, and tasks in a structured way.","O painel de Monitoramento AnalÃtico acompanha evolução dos ciclos, progresso por pilar e projetos atrasad
166os. Ideal para gestores acompanharem KPIs em tempo real.":"The Analytical Monitoring panel tracks cycle evolution, progress by pillar, and overdue projects. Ideal for managers to track KPIs in real time.","O painel de Monitoramento AnalÃtico oferece uma visão executiva da evolução dos seus destinos turÃsticos ao longo do tempo.":"The Analytical Monitoring dashboard offers an executive view of the evolution of your tourist destinations over time.","O painel de alertas mostra situações que requerem atenção baseadas nas 6 regras do motor IGMA.":"The alerts panel shows situations that require attention based on the 6 rules of the IGMA engine.","O painel do projeto mostra o progresso geral e por fase.":"The project dashboard shows overall and per-phase progress.","O painel mostra status por aluno: pendente, em andamento, concluÃdo.":"The dashboard shows status per student: pending, in progress, completed.","O perÃodo de avaliação gratuita (Trial) tem duração de 7 dias. Ao término, o Usuário deverá contratar um plano para continuar utilizando a Plataforma.":"The free trial period lasts 7 days. At the end, the User must subscribe to a plan to continue using the Platform.","O planejamento turÃstico deve ser continuamente revisto à luz da evolução territorial e institucional.":"Tourism planning must be continually reviewed in light of territorial and institutional developments.","O plano Empresarial tem limite de usuários?":"Does the Enterprise plan have a user limit?","O plano começa a tomar forma com participação de todos.":"The plan begins to take shape with everyone's participation.","O plano é aprovado. Zonas de proteção, uso sustentável e turismo são demarcadas. Mas um incêndio criminoso ameaça destruir tudo.":"The plan is approved. Protection zones, sustainable use, and tourism are demarcated. But an arson fire threatens to destroy everything.","O plantio direto mantém a cobertura vegetal e protege o solo da erosão.":"No-till farming maintains vegetation cover and protects the soil from erosion.","O prazo desta atividade já encerrou.":"The deadline for this activity has already passed.","O preço do progresso sem cuidado.":"The price of progress without care.","O problema não sumiu, só ficou escondido... ð":"The problem didn't disappear, it just hid... ð","O professor poderá ver seu progresso e atribuir conteúdos.":"The professor will be able to see your progress and assign content.","O programa de reciclagem transforma a vila! Cooperativas ganham renda, a praia está limpa e turistas conscientes preferem o destino. Mas microplásticos ainda ameaçam o oceano.":"The recycling program transforms the village! Cooperatives earn income, the beach is clean, and conscious tourists prefer the destination. But microplastics still threaten the ocean.","O programa educacional forma centenas de jovens guardiões. Escolas adotam currÃculos ambientais. Mas empresas de agronegócio pressionam polÃticos para enfraquecer leis de proteção.":"The educational program trains hundreds of young guardians. Schools adopt environmental curricula. But agribusiness companies pressure politicians to weaken protection laws.","O programa se torna polÃtica pública! Milhares de hectares recuperados.":"The program becomes public policy! Thousands of hectares recovered.","O programa se torna polÃtica pública! O berço das águas do Brasil é protegido.":"The program becomes public policy! The cradle of Brazil's waters is protected.","O progresso sem inclusão exclui.":"Progress without inclusion excludes.","O progresso é atualizado conforme você avança no vÃdeo.":"Progress is updated as you advance in the video.","O progresso é salvo automaticamente.":"Progress is saved automatically.","O projeto de reflorestamento cresce. Hectares são recuperados, animais retornam e a comunidade se orgulha. Mas surge um novo desafio: garimpeiros ilegais descobrem ouro na região.":"The reforestation project grows. Hectares are recovered, animals return, and the community is proud. But a new challenge arises: illegal miners discover gold in the region.","O projeto de restauração planta milhares de espécies nativas. Lobos-guarás, tucanos e tamanduás retornam. A paisagem se transforma.":"The restoration project plants thousands of native species. Maned wolves, toucans, and anteaters return. The landscape transforms.","O projeto foi criado com sucesso":"The project was created successfully","O projeto funciona localmente, mas a seca avança nas comunidades vizinhas.":"The project works locally, but drought advances in neighboring communities.","O projeto local funciona, mas o deserto avança nas regiões vizinhas.":"The local project works, but the desert advances in neighboring regions.","O projeto segue arquitetura modular com 154+ componentes organizados em 21 módulos de funcionalidade:":"The project follows a modular architecture with 154+ components organized into 21 functionality modules:","O que achou deste treinamento?":"What did you think of this training?","O que acontece com os dados após a validação?":"What happens to the data after validation?","O que cada nÃvel entrega":"What each level delivers","O que está incluÃdo no trial":"What's included in the trial","O que foi validado":"What was validated","O que perguntar":"What to ask",'O que significa "Depen
166dência Intersetorial"?':'What does "Intersectoral Dependence" mean?','O que significa "Marketing Bloqueado"?':'What does "Blocked Marketing" mean?','O que significa "desenvolvimento sustentável"?':'What does "sustainable development" mean?',"O que significa RA estar crÃtico?":"What does it mean for RA to be Critical?","O que significa a sigla ESG?":"What does the acronym ESG mean?","O que significa biodiversidade?":"What does biodiversity mean?","O que significa cada status?":"What does each status mean?","O que são Objetivos de Desenvolvimento Sustentável (ODS)?":"What are Sustainable Development Goals (SDGs)?","O que são Unidades de Conservação?":"What are Conservation Units?","O que são créditos de carbono?":"What are carbon credits?","O que são energias renováveis?":"What are renewable energies?","O que são espécies endêmicas?":"What are endemic species?","O que são externalidades negativas no turismo?":"What are negative externalities in tourism?","O que são indicadores de escopo compartilhado?":"What are shared scope indicators?","O que são os três pilares (RA, OE, AO)?":"What are the three pillars (RA, OE, AO)?","O que são treinamentos prescritos?":"What are prescribed trainings?","O que você faz?":"What do you do?","O que você pode perguntar":"What you can ask",'O que é a "pré-visualização ao vivo" do relatório?':`What is the report's "live preview"?`,'O que é a "tabela oficial":':'What is the "official table":',"O que é a Mandala da Sustentabilidade no Turismo (MST)?":"What is the Sustainability Mandala in Tourism (MST)?","O que é a Mata Atlântica?":"What is the Atlantic Forest?","O que é a interpretação territorial?":"What is territorial interpretation?","O que é aquecimento global?":"What is global warming?","O que é compostagem?":"What is composting?","O que é desertificação?":"What is desertification?","O que é economia circular?":"What is circular economy?","O que é lixo eletrônico?":"What is electronic waste?","O que é o Mapa do Turismo Brasileiro integrado ao SISTUR?":"What is the Brazilian Tourism Map integrated into SISTUR?","O que é o Motor IGMA (Mario Beni)?":"What is the IGMA Engine (Mario Beni)?","O que é o SISTUR Empresarial?":"What is SISTUR Enterprise?","O que é o SISTUR?":"What is SISTUR?",'O que é o componente "Mandala do Destino" no Dashboard?':'What is the "Destination Mandala" component in the Dashboard?',"O que é pegada hÃdrica?":"What is water footprint?","O que é turismo sustentável?":"What is sustainable tourism?","O relatório inclui gráficos, scores, issues e recomendações.":"The report includes charts, scores, issues, and recommendations.","O relatório incluirá um bloco comparando esta rodada com a anterior do mesmo destino.":"The report will include a section comparing this round with the previous one for the same destination.","O replantio é um sucesso! Meses depois, as mudas começam a crescer. Pássaros voltam a cantar. Um pesquisador da universidade propõe uma parceria.":"The replanting is a success! Months later, the seedlings begin to grow. Birds return to sing. A university researcher proposes a partnership.","O resort foi construÃdo, trazendo empregos mas também mais esgoto e privatização da praia. Tartarugas perderam seu local de desova.":"The resort was built, bringing jobs but also more sewage and privatization of the beach. Turtles lost their nesting grounds.","O resort trará empregos, mas a que custo ambiental?":"The resort will bring jobs, but at what environmental cost?","O rio perto da vila está cheio de lixo. O que fazer?":"The river near the village is full of trash. What to do?",'O selo "Sabor da Caatinga" é reconhecido internacionalmente. Exportações crescem e a caatinga se torna sinônimo de qualidade.':'The "Sabor da Caatinga" (Caatinga Flavor) seal is internationally recognized. Exports grow and the Caatinga becomes synonymous with quality.',"O selo transforma o mercado! Pesca sustentável vira orgulho regional.":"The seal transforms the market! Sustainable fishing becomes regional pride.","O semiárido brasileiro se transforma pela economia sustentável!":"The Brazilian semi-arid region transforms through sustainable economy!","O sertão ensina ao mundo como viver com resiliência!":"The sertão teaches the world how to live with resilience!","O sertão se torna referência mundial em energia limpa e convivência!":"The sertão becomes a global reference in clean energy and coexistence!","O sertão vira deserto. A vida abandona a terra.":"The sertão turns into a desert. Life abandons the land.","O servidor de autorização não retornou um endereço de retorno.":"The authorization server did not return a return address.","O silêncio permite que a corrupção enfraqueça o conselho.":"Silence allows corruption to weaken the council.","O sistema acompanha a evolução dos indicadores entre ciclos de avaliação, identificando se houve Evolução (melhora), Estagnação (sem mudança) ou Regressão (piora). Alertas são gerados quando há regressão por 2 ou mais ciclos consecutivos.":"The system monitors the evolution of indicators between evaluation cycles, identifying whether there has been Evolution (improvement), Stagnation (no change), or Regression (worsening). Alerts are generated
166when there is regression for 2 or more consecutive cycles.","O sistema avalia automaticamente o nÃvel elegÃvel com base no diagnóstico mais recente da organização.":"The system automatically assesses the eligible level based on the organization's latest diagnostic assessment.","O sistema bloqueia ações de marketing/promoção turÃstica quando RA (ambiente) ou AO (operações) estão crÃticos. Promover um destino com problemas ambientais graves ou falhas operacionais sérias pode gerar externalidades negativas e danos à reputação.":"The system blocks tourism marketing/promotion actions when RA (environment) or AO (operations) are critical. Promoting a destination with serious environmental problems or operational failures can generate negative externalities and reputational damage.","O sistema busca apenas dados realmente disponÃveis nas bases públicas integradas ao fluxo atual, usando o código IBGE do municÃpio. O total pode variar conforme a disponibilidade de cada fonte para o municÃpio, e todo dado retornado é exibido com fonte, ano e nÃvel de confiança antes da validação humana obrigatória.":"The system only retrieves data actually available in public databases integrated into the current flow, using the municipality's IBGE code. The total may vary depending on the availability of each source for the municipality, and all returned data is displayed with source, year, and confidence level before mandatory human validation.","O sistema calcula automaticamente quando o diagnóstico deve ser revisado. Pilares crÃticos exigem revisão em 6 meses, atenção em 12 meses, e todos adequados em 18 meses.":"The system automatically calculates when the diagnosis should be reviewed. Critical pillars require review in 6 months, attention in 12 months, and all adequate in 18 months.","O sistema está crescendo. Considere aumentar a instância se a tendência continuar.":"The system is growing. Consider increasing the instance if the trend continues.","O sistema está funcional, mas indicadores sugerem crescimento que pode exigir upgrade.":"The system is functional, but indicators suggest growth that may require an upgrade.",'O sistema fica em "Carregando..." e não abre as páginas. O que faço?':`The system stays on "Loading..." and doesn't open the pages. What do I do?`,"O sistema funciona! Trilhas são recuperadas, a fauna retorna e turistas pagam uma taxa de conservação.":"The system works! Trails are restored, fauna returns, and tourists pay a conservation fee.","O sistema pré-preenche automaticamente dados de IBGE, DATASUS, STN, CADASTUR e Mapa do Turismo Brasileiro.":"The system automatically pre-fills data from IBGE, DATASUS, STN, CADASTUR, and the Brazilian Tourism Map.","O sistema é composto por cinco módulos integrados que cobrem todo o ciclo de gestão de destinos turÃsticos: diagnóstico, prescrição, capacitação, monitoramento e gamificação educacional.":"The system is composed of five integrated modules that cover the entire cycle of tourism destination management: diagnosis, prescription, training, monitoring, and educational gamification.","O sol que castiga é o mesmo que liberta! Energia limpa para todos.":"The sun that punishes is the same that frees! Clean energy for everyone.","O tabuleiro tem 3 fileiras (RA, OE, AO) para suas cartas e uma Zona de Ameaça no topo com os perigos ativos.":"The board has 3 rows (RA, OE, AO) for your cards and a Threat Zone at the top with active dangers.","O território apresenta limitações estruturais que comprometem a sustentabilidade do turismo, independentemente de ações de mercado ou gestão isoladas.":"The territory has structural limitations that undermine tourism sustainability, regardless of isolated market or management actions.","O território apresenta limitações estruturais que comprometem a sustentabilidade do turismo, independentemente de ações de mercado ou gestão isoladas. Priorize capacitações em Relações Ambientais (RA).":"The territory has structural limitations that undermine tourism sustainability, regardless of isolated market or management actions. Prioritize training in Environmental Relations (RA).","O texto abaixo está sendo escrito pela Mente Sistur agora â seÃ
166§Ãµes podem ser revisadas até a conclusão.":"The text below is being written by Mente Sistur now â sections may be revised until completion.","O trabalho local é bom, mas sem proteção legal a floresta continua ameaçada.":"Local work is good, but without legal protection, the forest remains threatened.","O transporte público reduz emissões per capita significativamente.":"Public transportation significantly reduces per capita emissions.","O treinamento solicitado não existe ou foi removido.":"The requested training does not exist or has been removed.","O turismo de aventura cresce, mas um acidente grave numa trilha perigosa gera crise. A serra ameaça ser fechada para visitantes.":"Adventure tourism grows, but a serious accident on a dangerous trail creates a crisis. The mountain range threatens to be closed to visitors.","O turismo de aventura traz dinheiro, mas as trilhas sofrem novamente.":"Adventure tourism brings money, but the trails suffer again.","O usuário":"The user","O usuário recebe um email automático informando a decisão.":"The user receives an automatic email informing them of the decision.","O vento gera energia! Que legal! ð¬ï¸":"The wind generates energy! How cool! ð¬ï¸","O vidro pode levar mais de 1 milhão de anos para se decompor!":"Glass can take over 1 million years to decompose!","O viveiro gera renda e restaura a floresta.":"The nursery generates income and restores the forest.","O viveiro produz milhares de mudas e emprega dezenas de famÃlias. Outras comunidades querem replicar o modelo. Mas há pressão para converter o viveiro em plantação de soja.":"The nursery produces thousands of seedlings and employs dozens of families. Other communities want to replicate the model. But there is pressure to convert the nursery into a soybean plantation.","ODS {{v0}}":"SDG {{v0}}","OE (Organização Estrutural): Mede infraestrutura e governança.":"OE (Structural Organization): Measures infrastructure and governance.","OE - Oferta e Estrutura":"OE - Supply and Structure","OE - Organização Estrutural":"OE - Structural Organization","OE â 3 indicadores":"OE â 3 indicators","OE001,8500,Manual":"OE001,8500,Manual","OE:":"OE:",OFFICIAL_API:W_,"ON CONFLICT (user_id, org_id) DO UPDATE SET role = EXCLUDED.role;":"ON CONFLICT (user_id, org_id) DO UPDATE SET role = EXCLUDED.role;","ORG_ADMIN: gestão local da organização.":"ORG_ADMIN: local management of the organization.","OTA (Booking, Expedia, Airbnbâ¦)":"OTA (Booking, Expedia, Airbnbâ¦)",OTAs:Q_,"OTAs + metabuscadores":"OTAs + metasearch engines","OTAs e Tarifas Públicas (Booking / Decolar / Expedia)":"OTAs and Public Rates (Booking / Decolar / Expedia)","OTAs â preço comparado (Auto)":"OTAs â price comparison (Auto)","OTAs/portais com nota extraÃda":"OTAs/portals with extracted rating",Objetivo:K_,"Objetivo principal da trilha":"Main learning path objective","Objetivos de Aprendizagem":"Learning Objectives","Obrigado por contribuir com a avaliação territorial!":"Thank you for contributing to the territorial assessment!",Obrigatório:"Required","Obrigatório (bloqueia conclusão do projeto)":"Mandatory (blocks project completion)","Obrigatórios pendentes":"Pending required items","Observabilidade e auditoria":"Observability and auditing",Observatório:"Observatory","Observatório (Beta)":"Observatory (Beta)","Observatório (derivação automática de métricas)":"Observatory (automatic metric derivation)","Observatório TurÃstico":"Tourism Observatory","Observatório do destino":"Destination Observatory","Observatório turÃstico":"Tourism observatory",Observação:"Observation","Observações (contrato, empenho, processo)":"Remarks (contract, commitment, process)","Observações (opcional)":"Notes (optional)","Observações Adicionais":"Additional Observations","Observações internas...":"Internal notes...","Obter certificação profissional":"Get professional certification","Obteve seu primeiro certificado":"Obtained your first certificate","Ocorreu um erro ao carregar a página":"An error occurred while loading the page","Ocorrências por 100 mil habitantes":"Occurrences per 100,000 inhabitants",Ocultar:Y_,Ocupação:"Occupancy","Ocupação %":"Occupancy %","Ocupação média":"Average occupancy",Oferta:J_,"Oferta TurÃstica":"Tourism Offer","Oferta de serviços em atenção - qualificação do trade prescrita":"Service offer in attention - prescribed trade qual
166ification","Oferta e demanda no entorno de":"Supply and demand around","Oferta limitada de agências e guias":"Limited offer of agencies and guides",Oficiais:X_,"Oficial (IBGE, CADASTUR, STNâ¦)":"Official (IBGE, CADASTUR, STNâ¦)","Onda de Lixo":"Wave of Trash","Onda de Turistas":"Wave of Tourists","Onde acompanho problemas na geração de relatórios?":"Where do I track issues with report generation?",Online:Z_,"Onça-pintada":"Jaguar",Opcional:eq,"Opcional. Suba uma planilha exportada do seu PMS (Opera, Cloudbeds, Stays) ou um CSV genérico com as métricas mensais. Aceita UTF-8/Latin1, vÃrgula decimal e separador":"Optional. Upload a spreadsheet exported from your PMS (Opera, Cloudbeds, Stays) or a generic CSV with monthly metrics. Accepts UTF-8/Latin1, decimal comma, and separator","Open-Meteo (5 anos): temperatura, chuva e melhores meses do destino":"Open-Meteo (5 years): temperature, rainfall, and best months for the destination","Open-Meteo ERA5 (clima)":"Open-Meteo ERA5 (weather)","Open-Meteo ERA5 â 5 anos (Auto)":"Open-Meteo ERA5 â 5 years (Auto)","Operadora/Agência":"Tour Operator/Agency",Operação:"Operation",Operações:"Operations","Oportunidade de Investimento":"Investment Opportunity",Opções:"Options","Opções da pasta":"Folder options","Opções:":"Options:","Oracle Opera Cloud (OAuth client_credentials)":"Oracle Opera Cloud (OAuth client_credentials)",Ordem:aq,"Ordem de consumo":"Consumption order","Ordem de injeção":"Injection order","Ordem de injeção no prompt (menor = mais cedo). Use 100 para metodologia, 200 para classificação, 300 para anti-alucinação, 400 para formatação.":"Prompt injection order (lower = earlier). Use 100 for methodology, 200 for classification, 300 for anti-hallucination, 400 for formatting.","Ordenamento Econômico":"Economic Organization",Org:oq,"Org. Estrutural":"Structural Org.","Organizar em fases e tarefas":"Organize into phases and tasks","Organizar festival gastronômico de pescado sustentável":"Organize a sustainable fish gastronomy festival","Organizar um mutirão de limpeza da praia":"Organize a beach cleanup drive","Organizar uma campanha nacional de conscientização":"Organize a national awareness campaign","Organizar uma patrulha comunitária para monitorar a floresta":"Organize a community patrol to monitor the forest",Organização:"Organization","Organização (opcional)":"Organization (optional)","Organização *":"Organization *","Organização Estrutural":"Structural Organization","Organização Estrutural (IOE)":"Structural Organization (IOE)","Organização Estrutural (OE)":"Structural Organization (OE)","Organização Estrutural (infraestrutura)":"Structural Organization (infrastructure)","Organização ativa não encontrada":"Active organization not found","Organização atualizada":"Organization updated","Organização criada":"Organization created","Organização desconhecida":"Unknown organization","Organização excluÃda":"Organization deleted","Organização inteira":"Entire organization","Organização não definida":"Organization not defined","Organização não encontrada":"Organization not found","Organização não identificada.":"Organization not identified.",Organizações:"Organizations","Organizações (multi-tenant)":"Organizations (multi-tenant)","Organizações Privadas (Empresarial)":"Private Organizations (Business)","Organizações Públicas":"Public Organizations","Organizações controlam o escopo dos dados visÃveis.":"Organizations control the scope of visible data.","Organizações em trial":"Trial organizations","Organizações isoladas com RLS, convites por código e roles granulares":"Isolated organizations with RLS, code invitations, and granular roles",Origem:iq,"Origem da correção:":"Correction origin:","Origem da planilha:":"Spreadsheet origin:","Origem dos rios protegida por APPs â Ãreas Preservadas":"River origins protected by APPs â Preserved Areas","Origem dos visitantes":"Visitor origin","Origem dos visitantes (por estado)":"Origin of visitors (by state)","Origem e confiabilidade dos dados utilizados nos diagnósticos":"Origin and reliability of data used in diagnostics",OrquÃdea:"Orchid","OrquÃdea Especial":"Special Orchid","OrquÃdea endêmica da mata atlântica":"Endemic Atlantic Forest orchid",Orçamento:"Budget","Orçamento de Turismo":"Tourism Budget","Orçamento insuficiente para turismo":"Insufficient budget for tourism","Os 17 ODS da ONU são uma agenda global para 2030 envolvendo todos os paÃses.":"The UN's 17 SDGs are a global agenda for 2030 involving all countries.","Os 3 NÃveis de Diagnóstico":"The 3 Diagnostic Levels","Os 3 Pilares":"The 3 Pillars","Os Três Pilares do Sistema TurÃstico":"The Three Pillars of the Tourist System","Os alunos matriculados serão notificados automaticamente.":"Enrolled students will be notified automatically.","Os bombeiros demoram. O fogo destrói metade da área protegida.":"Firefighters are delayed. The fire destroys half of the protected area.","Os campos":"The fields","Os campos de palma alimentam o gado sem desmatar. A pressão sobre a caatinga diminui drasticamente.":"Palm fields feed cattle without deforestation. Pressure on the caatinga drastically decreases.","Os conteúdos educacionais disponibilizados na Plataforma (cursos, trilhas, materiais, vÃdeos) são de propriedade do Titular ou de seus parceiros licenciados e estão protegidos por direitos autorais.":"The educational content available on the Platform (courses, tracks, materials, videos) is the property of the Owner or their licensed partners and is protected by copyright.","Os corredores ecológicos conectam fragmentos de cerrado isolados. Animais podem migrar e as nascentes se recuperam.":"Ecological corridors connect isolated cerrado fragments. Animals can migrate and springs recover.","Os cursos são direcionados a três perfis: Gestores Públicos (responsáveis por polÃticas), Técnicos (profissionais de planejamento) e Trade TurÃstico (empresários e operadores do setor).":"The courses are aimed at three profiles: Public Managers (policy makers), Technicians (planning professionals), and Tourism Trade (entrepreneurs and sector operators).","Os dados de diagnósticos turÃsticos inseridos pelo Usuário são armazenados em servidores seguros com criptografia em repouso e em trânsito. O Titular tem direito de acesso a estes dados para fins de: (a) melhoria contÃnua dos algoritmos e da Plataforma; (b) geração de estatÃsticas agregadas e anônimas; (c) pesquisa acadêmica em parceria com instituições de ensino; (d) benchmarking e comparação entre destinos turÃsticos, sempre de forma agregada e anonimizada.":"Tourism diagnostic data entered by the User is stored on secure servers with encryption at rest and in transit. The Owner has the right to access this data for the purposes of: (a) continuous improvement of algorithms and the Platform; (b) generation of aggregated and anonymous statistics; (c) academic research in partnership with educational institutions; (d) benchmarking and comparison between tourism destinations, al
166ways in an aggregated and anonymized way.","Os dados exibidos não são seus":"The displayed data is not yours","Os dados exibidos são de demonstração. Para criar seus próprios diagnósticos, desative o modo demo.":"The data displayed is for demonstration. To create your own diagnostics, disable demo mode.","Os dados foram confirmados e estão prontos para o diagnóstico.":"The data has been confirmed and is ready for diagnosis.","Os dados importados são vinculados automaticamente aos destinos cadastrados no SISTUR.":"Imported data is automatically linked to destinations registered in SISTUR.","Os dados serão criados no ambiente de demonstração.":"The data will be created in the demonstration environment.","Os dados serão mantidos durante a vigência da conta do Usuário e por até 5 (cinco) anos após o encerramento, para fins legais e regulatórios. Após este perÃodo, serão anonimizados ou excluÃdos.":"Data will be retained during the term of the User's account and for up to 5 (five) years after termination, for legal and regulatory purposes. After this period, they will be anonymized or deleted.","Os destinos listados foram avaliados segundo os princÃpios sistêmicos de Mario Carlos Beni, priorizando sustentabilidade ambiental (RA), governança responsável (AO) e infraestrutura adequada (OE). Apenas destinos sem limitações crÃticas são exibidos publicamente.":"The listed destinations were evaluated according to Mario Carlos Beni's systemic principles, prioritizing environmental sustainability (RA), responsible governance (AO), and adequate infrastructure (OE). Only destinations without critical limitations are publicly displayed.","Os diagnósticos são o coração do SISTUR AnalÃtico. Através deles, você avalia sistematicamente um destino turÃstico usando indicadores baseados na metodologia de Mario Beni.":"Diagnoses are the heart of SISTUR AnalÃtico. Through them, you systematically evaluate a tourist destination using indicators based on Professor Beni's methodology.","Os enigmas ensinam sobre sustentabilidade e ecologia!":"The puzzles teach you about sustainability and ecology!","Os equipamentos são danificados, mas isso pode gerar retaliação.":"The equipment is damaged, but this could lead to retaliation.","Os eventos são gerados a cada execução de geração de relatório.":"Events are generated with each report generation execution.","Os feedbacks dos usuários aparecerão aqui":"User feedback will appear here","Os guardiões do mar agora são embaixadores do oceano!":"The guardians of the sea are now ambassadors of the ocean!","Os guias locais são um sucesso! Escolas enviam alunos para educação ambiental na serra.":"Local guides are a success! Schools send students for environmental education in the mountains.","Os guias são um sucesso! Mas a demanda crescente de turistas ameaça sobrecarregar os recifes.":"The guides are a success! But the growing demand from tourists threatens to overload the reefs.","Os hotéis concordam com mudanças graduais. Progresso lento.":"Hotels agree to gradual changes. Slow progress.","Os hotéis fazem mudanças graduais. O esgoto diminui, mas não para completamente.":"Hotels make gradual changes. Sewage decreases, but doesn't stop completely.","Os hotéis são obrigados legalmente a tratar o esgoto. Mas um dos donos tenta subornar o fiscal para relaxar as exigências.":"Hotels are legally obligated to treat sewage. But one of the owners tries to bribe the inspector to relax the requirements.","Os indicadores Empresarial seguem a mesma metodologia Beni?":"Do the Business indicators follow the same Beni methodology?","Os indicadores do SISTUR são organizados pelos três pilares da Análise Estrutural do Turismo (RA, OE e AO) e classificados em três nÃveis de diagnóstico: Essencial, Estratégico e Integral. Cada indicador possui uma fonte oficial (provenance 1 a 5), unidade de medida, direção (maior é melhor / menor é melhor) e periodicidade de atualização.":"SISTUR's indicators are organized by the three pillars of Structural Tourism Analysis (RA, OE, and AO) and classified into three diagnostic levels: Essential, Strategic, and Integral. Each indicator has an official source (provenance 1 to 5), unit of measurement, direction (higher is better / lower is better), and update frequency.","Os indicadores estão organizados por dimensão IGMA, cada um mapeado para um pilar:":"Indicators are organized by IGMA dimension, each mapped to a pillar:","Os indicadores podem ser pré-preenchidos automaticamente de fontes oficiais:":"Indicators can be automatically prefilled from official sources:","Os indicadores são organizados por pilar (RA, OE, AO).":"Indicators are organized by pillar (RA, OE, AO).","Os nÃveis são sequenciais: para acessar um nÃvel superior é necessário concluir os anteriores com aproveitamento mÃnimo.":"The levels are sequential: to access a higher level, it is necessary to complete the previous ones with minimum passing grade.","Os pagamentos ainda não estão configurados para este ambiente. Conclua a ativação de pagamentos para habilitar a contratação online.":"Payments are not yet configured for this environment. Complete payment activation to enable online contracting.","Os produtos da caatinga conquistam mercados nacionais. A renda das famÃlias triplica e a vegetação nativa é valorizada.":"Caatinga products gain national markets. Family income triples and native vegetation is valued.","Os quintais alimentam famÃlias e recuperam biodiversidade. Abelhas nativas voltam a polinizar e a caatinga renasce ao redor das casas.":"Backyards feed families and restore biodiversity. Native bees return to pollinate and the caatinga is reborn around the houses.","Os recifes florescem! Mergulhadores de todo o mundo vêm admirar.":"The reefs are flourishing! Divers from all over the world come to admire.","Os recifes restaurados abrigam centenas de espécies. Tartarugas voltam a desovar. O projeto ganha reconhecimento da UNESCO.":"The restored reefs house hundreds of species. Turtles return to lay eggs. The project gains UNESCO recognition.","Os relatórios gerados pelo SISTUR podem ser personalizados com a identidade visual da organização. As configurações incluem:":"Reports generated by SISTUR can be customized with the organization's visual identity. Settings include:","Os rulesets atuais serão substituÃdos pela configuração padrão (20 questões, 70% nota mÃnima, 60 min, 2 tentativas). Tentativas já realizadas pelos alunos permanecem registradas.":"Current rulesets will be replaced by the default configuration (20 questions, 70% minimum score, 60 min, 2 attempts). Attempts already made by students remain recorded.","Os seguintes arquivos foram considerados na geração do relatório deste diagnóstico:":"The following files were considered when generating the report for this diagnostic:","Os seguintes indicadores foram marcados como ignorados e não participam do cálculo dos scores, gargalos ou prescrições. Isso pode impactar a abrangência da análise.":"The following indicators have been marked as ignored and do not participate in the calculation of scores, bottlenecks or prescriptions. This may impact the scope of the analysis.","Os termos cobrem: uso de dados, responsabilidades, propriedade intelectual.":"The terms cover: data usage, responsibilities, intellectual property.","Os trechos a seguir demonstram a implementação proprietária dos algoritmos centrais do SISTUR. São apresentados em TypeScript (frontend) e SQL (banco de dados).":"The following excerpts demonstrate SISTUR's proprietary implementation of core algorithms. They are presented in TypeScript (frontend) and SQL (database).","Os treinamentos serão importados em breve. Enquanto isso, configure seu perfil de aprendizado.":"Training courses will be imported soon. In the meantime, set up your learning profile.","Os três gauges no topo mostram os scores médios dos pilares RA, OE e AO.":"The three gauges at the top show the average scores for the RA, OE, and AO pillars.","Os três pilares do SISTUR são: RA (Relações Ambientais) - aspectos ambientais e sustentabilidade, é o pilar prioritário; OE (Organização Estrutural) - infraestrutura e organização do destino; AO (Ações Operacionais) - operações, serviços turÃsticos e governança central do sistema.":"The three SISTUR pillars are: RA (Environmental Relations) - environmental aspects and sustainability, it is the priority pillar;
166 OE (Structural Organization) - infrastructure and organization of the destination; AO (Operational Actions) - operations, tourist services and central system governance.","Ostra de Mangue":"Mangrove Oyster","Ostra filtro natural da água":"Oyster, natural water filter",Out:tq,"Outputs / Relatórios":"Outputs / Reports",Outras:rq,Outro:sq,"Outro Bioma":"Another Biome","Outro motivo":"Other reason","Outros: {{v0}} resultado(s)":"Others: {{v0}} result(s)",Oxigênio:"Oxygen",PATCH:nq,PDF:cq,"PDF (opcional)":"PDF (optional)","PDF anexado":"PDF attached","PDF e DOCX em formato ABNT":"PDF and DOCX in ABNT format","PDF, DOCX, XLSX, CSV, TXT (até 20MB)":"PDF, DOCX, XLSX, CSV, TXT (up to 20MB)","PDF, DOCX, XLSX, CSV, TXT (máx. 20MB)":"PDF, DOCX, XLSX, CSV, TXT (max. 20MB)","PDF, Word, Excel, PowerPoint, imagens (máx. 50MB)":"PDF, Word, Excel, PowerPoint, images (max. 50MB)","PI Planning":"PI Planning","PIB per capita":"GDP per capita","PIB per capita nacional (referência IBGE â automático)":"National GDP per capita (IBGE reference â automatic)","PIB total":"Total GDP","PNG ou JPG, máx. 2MB. Aparece no cabeçalho do Word e PDF.":"PNG or JPG, max. 2MB. Appears in the Word and PDF header.","PNT 2024-2027 como referência padrão":"PNT 2024-2027 as standard reference",POST:dq,"PRESENÃA DIGITAL":"DIGITAL PRESENCE",PREÃO:"PRICE",PRO:lq,"PROFESSOR / ESTUDANTE: módulos EDU (turmas, cursos, exames).":"PROFESSOR / STUDENT: EDU modules (classes, courses, exams).","PRÃ-PREENCHIDO":"PRE-FILLED","Pacote 150":"Package 150","Pacote 50":"Package 50","Pacote org 500":"Org Package 500","Pacote organização 500":"Organization Package 500","Pacotes avulsos":"Individual packages","Pacotes de créditos do Professor Beni":"Professor Beni's credit packages",Padrão:"Default","Padrão (12 meses)":"Standard (12 months)","Padrão = peso global do catálogo. Edite para sobrepor apenas neste contexto organizacional. Limpe o campo (deixe vazio e Enter) para restaurar o padrão.":"Default = global catalog weight. Edit to override only in this organizational context. Clear the field (leave empty and press Enter) to restore the default.","Padrão SISTUR: RA 35% / OE 30% / AO 35%. A soma dos três pesos deve ser exatamente 100%.":"SISTUR default: RA 35% / OE 30% / AO 35%. The sum of the three weights must be exactly 100%.","Padrão â o mais capaz (OpenAI)":"Standard â the most capable (OpenAI)","Padrões de qualidade e excelência no atendimento ao turista":"Quality and excellence standards in tourist service","Pagamento recebido":"Payment received","Painel administrativo em":"Admin panel at","Painel contÃnuo deste destino â séries de fluxo, ocupação, eventos, receita e empregos. Distinto do diagnóstico cÃclico: aqui acompanha-se o que está acontecendo agora.":"Continuous dashboard for this destination â flow, occupancy, events, revenue and employment series. Distinct from cyclical diagnosis: here we track what is happening now.","Painel de Projetos":"Projects Panel","Painel de controle do sistema de turismo":"Tourism system control panel","Painel de licenças":"Licenses Panel","Painel do Professor":"Instructor Dashboard","Painéis solares cobrem o sertão. As comunidades geram energia e vendem o excede
166nte. A caatinga protegida pela sombra dos painéis se regenera mais rápido.":"Solar panels cover the outback. Communities generate energy and sell the surplus. The caatinga protected by the shade of the panels regenerates faster.","Palco bonito, mas faltou organização...":"Nice stage, but lacked organization...",Papel:uq,"Papel *":"Role *","Papel alterado automaticamente para Estudante":"Role automatically changed to Student","Papel alterado automaticamente para Visualizador":"Role automatically changed to Viewer","Papel atualizado":"Role updated","Papel atualizado com sucesso":"Role updated successfully",Papéis:"Roles","Papéis disponÃveis: Admin, Analista, Viewer, Estudante, Professor.":"Available roles: Admin, Analyst, Viewer, Student, Professor.","Para adicionar mais dados, o diagnóstico voltará ao status de rascunho e você poderá preencher os indicadores faltantes. Após as alterações, será necessário recalcular os Ãndices.":"To add more data, the diagnosis will revert to draft status and you will be able to fill in the missing indicators. After the changes, it will be necessary to recalculate the indices.","Para atualizar com novos documentos, gere o relatório novamente.":"To update with new documents, generate the report again.","Para cada indicador, insira o valor observado no destino.":"For each indicator, enter the value observed at the destination.","Para criar um, seu municÃpio precisa ser o lÃder. Para participar, peça ao consórcio para convidar seu municÃpio.":"To create one, your municipality needs to be the leader. To participate, ask the consortium to invite your municipality.","Para dúvidas técnicas, use o FAQ disponÃvel em Ajuda. Solicitações de melhoria ou bugs devem ser registradas no Fórum interno ou diretamente com o administrador da organização.":"For technical questions, use the FAQ available in Help. Improvement requests or bugs should be registered in the internal Forum or directly with the organization administrator.","Para fins de integridade acadêmica, registramos informações básicas do dispositivo durante o exame. Esses dados são automaticamente removidos após 90 dias conforme nossa polÃtica de retenção.":"For academic integrity purposes, we record basic device information during the exam. This data is automatically removed after 90 days according to our retention policy.","Para indicadores com distribuição assimétrica (ex: PIB per capita, população):":"For indicators with asymmetrical distribution (e.g., GDP per capita, population):","Para indicadores onde maior = melhor (ex: IDH, cobertura de saúde):":"For indicators where higher = better (e.g., HDI, health coverage):","Para indicadores onde menor = melhor (ex: taxa de homicÃdios, desmatamento):":"For indicators where lower = better (e.g., homicide rate, deforestation):","Para iniciar qualquer trilha formativa é necessário concluir o curso":"To start any training track, you must complete the course","Para manter a estabilidade e performance, recomendamos aumentar o tamanho da instância do backend.":"To maintain stability and performance, we recommend increasing the backend instance size.",'Para obter o certificado de uma trilha, você precisa: 1) Completar todos os treinamentos obrigatórios; 2) Atingir a pontuação mÃnima nas avaliações (quando aplicável); 3) Clicar em "Emitir Certificado" na página da trilha. O certificado inclui QR Code para verificação de autenticidade.':'To obtain a trail certificate, you need to: 1) Complete all mandatory training; 2) Achieve the minimum score in assessments (when applicable); 3) Click "Issue Certificate" on the trail page. The certificate includes a QR Code for authenticity verification.',"Para refletir no relatório: após salvar, recalcule o diagnóstico e regenere o relatório.":"To reflect changes in the report: after saving, recalculate the diagnosis and regenerate the report.","Para resistir a timeouts do proxy em gerações longas, o pedido é enfileirado em":"To withstand proxy timeouts on long generations, the request is queued at","Parabéns!":"Congratulations!","Parabéns! Você concluiu todos os treinamentos desta trilha!":"Congratulations! You have completed all training courses in this learning path!","Parabéns! Você mantém o equilÃbrio!":"Congratulations! You're maintaining balance!","Parar gravação":"Stop recording","Parar leitura":"Stop reading","ParaÃso Perdido?":"Lost Paradise?","Parcerias Público-Privadas":"Public-Private Partnerships","Parcerias e Meios de Implementação":"Partnerships and Means of Implementation",Parcial:mq,Pares:pq,"Pares:":"Pairs:","Parques melhoram a saúde e a felicidade.":"Parks improve health and happiness.",Participar:gq,"Participar de turmas":"Join classes","Parâmetro authorization_id ausente.":"Missing authorization_id parameter.","Passageiros 12m":"Passengers 12m","Passo 1 â Identificação":"Step 1 â Identification","Passo 2 â Rodar os 21 blocos automáticos":"Step 2 â Run the 21 automatic blocks","Passo 3 â Importar CSV do PMS (opcional)":"Step 3 â Import PMS CSV (optional)","Passo 4 â Calcular e gerar relatório":"Step 4 â Calculate and generate report","Passo {{v0}}: {{v1}}":"Step {{v0}}: {{v1}}",Passos:hq,"Patrimônio histórico":"Historical heritage",Pausa
166do:fq,Payback:vq,Payload:bq,"Paz, Justiça e Instituições Eficazes":"Peace, Justice, and Effective Institutions","Pedir ajuda governamental e esperar":"Ask for government help and wait","Pedir caminhão-pipa":"Request water truck","Pedir desculpas e tentar organizar uma resposta tardia":"Apologize and try to organize a belated response","Pegada de Carbono":"Carbon Footprint","Peixe ameaçado que se camufla entre raÃzes do mangue":"Endangered fish that camouflages among mangrove roots","Peixe-palhaço":"Clownfish","Peixes morrem na lagoa!":"Fish die in the lagoon!",Pendente:Aq,"Pendente de confirmação":"Pending confirmation","Pendente de fixação":"Pending pinning",Pendentes:yq,"Pensando...":"Thinking...",Pequena:Sq,"Perceber o erro e parar as carvoarias":"Realize the mistake and stop the charcoal kilns",Percentual:Eq,"Percentual do orçamento dedicado à função 23 (Comércio e Serviços / Turismo). Fonte: FINBRA / SICONFI. Periodicidade: anual.":"Percentage of the budget dedicated to function 23 (Commerce and Services / Tourism). Source: FINBRA / SICONFI. Periodicity: annual.","Percentual do território coberto por unidades de conservação. Fonte: MMA / CNUC. Periodicidade: anual.":"Percentage of the territory covered by conservation units. Source: MMA / CNUC. Periodicity: annual.","Percentual médio de conclusão da turma.":"Average class completion percentage.","Percentual mÃnimo para aprovação no exame":"Minimum percentage for exam approval","Percorrer as trilhas para avaliar o estado de conservação":"Walk the trails to assess the state of conservation","Percurso formativo completo sugerido":"Suggested complete training path","Percursos de aprendizagem que evoluem conforme seu desempenho e diagnóstico.":"Learning paths that evolve based on your performance and diagnostic assessment.","Percursos estruturados de capacitação com certificação":"Structured training paths with certification","Perda de habitat":"Habitat loss","Perfeito para começar a jornada":"Perfect for starting the journey","Perfil Criado com Sucesso!":"Profile Created Successfully!","Perfil Educacional":"Educational Profile","Perfil Empresarial":"Business Profile","Perfil Profissional":"Professional Profile","Perfil criado com sucesso!":"Profile created successfully!","Perfil de Aprendizado":"Learning Profile","Perfil de Estudante":"Student Profile","Perfil de Sazonalidade":"Seasonality Profile","Perfil de estudante com wizard e recomendações personalizadas por IA":"Student profile with wizard and AI-powered personalized recommendations","Perfil do Empreendimento":"Establishment Profile","Perfil do empreendimento preenchido automaticamente":"Establishment profile automatically filled","Perfil do empreendimento salvo":"Establishment profile saved","Perfil do empreendimento salvo com sucesso":"Establishment profile saved successfully","Perfil e indicadores preenchidos automaticamente":"Profile and indicators automatically filled","Perfil inválido":"Invalid profile","Perfil mÃnimo preenchido. Você pode adicionar mais detalhes depois.":"Minimum profile filled. You can add more details later.","Perfil não encontrado":"Profile not found","Perfil:":"Profile:","Perfis de usuário com role e org_id":"User profiles with role and org_id","Perfis detectados":"Profiles detected","Performance Hoteleira":"Hotel Performance",Pergunta:Cq,"Pergunta enviada":"Question sent","Perguntas Frequentes":"Frequently Asked Questions","Perguntas de cortesia esgotadas":"Courtesy questions exhausted","Perguntas e respostas sobre o SISTUR, AnalÃtico, EDU e Empresarial":"Questions and answers about SISTUR, Analytics, EDU and Corporate","Perguntas frequentes":"Frequently asked questions","Perguntas gratuitas do perÃodo de teste":"Free questions from the trial period","Perguntas por Módulo":"Questions per Module","Pergunte ao Professor Beni... (Enter envia, Shift+Enter quebra linha)":"Ask Professor Beni... (Enter sends, Shift+Enter line break)","Perigo!":"Danger!",Permissivo:Tq,"Permissão de microfone negada":"Microphone permission denied","Permitido neste nÃvel":"Allowed at this level","Permitir garimpo controlado para gerar renda":"Allow controlled mining to generate income","Permitir mais resorts n
166a costa":"Allow more resorts on the coast","Permitir mineração controlada em troca de compensação":"Allow controlled mining in exchange for compensation","Permitir retentativas":"Allow retries",Persistência:"Persistence","Persistência de Jogos":"Game Persistence","Persistência de sessões dos 4 jogos":"Persistence of 4 game sessions","Persistência do relatório de validação em":"Validation report persistence at",Persona:Pq,Personalizado:Rq,Personalizar:xq,"Personalizar Relatório":"Customize Report","Personalizar e exportar":"Customize and export","Personalização de Relatórios":"Report Customization","Personalização restaurada ao padrão":"Customization reset to default","Personalização salva!":"Customization saved!","Personalize sua Jornada de Aprendizado":"Personalize Your Learning Journey","Personalize sua identidade no EDU":"Personalize your identity in EDU",Perto:wq,PerÃodo:"Period","PerÃodo de Teste":"Trial Period","PerÃodo de cobrança":"Billing period","PerÃodo de teste concluÃdo":"Trial period ended","PerÃodo fim (opcional)":"End period (optional)","PerÃodo inválido":"Invalid period","PerÃodo inÃcio (opcional)":"Start period (optional)","PerÃodo:":"Period:","PerÃodo: {{v0}}":"Period: {{v0}}","PerÃodo: {{v0}} â {{v1}} · {{v2}} linha(s)":"Period: {{v0}} â {{v1}} · {{v2}} line(s)","Pesca Predatória":"Predatory Fishing","Pesca Sustentável":"Sustainable Fishing","Pesca com explosivos!":"Fishing with explosives!",Peso:Iq,"Peso (%)":"Weight (%)","Peso atualizado com sucesso":"Weight updated successfully","Peso deve ser entre 0 e 10":"Weight must be between 0 and 10","Peso do indicador atualizado":"Indicator weight updated","Peso inválido. Use um valor entre 0 e 100.":"Invalid weight. Use a value between 0 and 100.","Peso total de resÃduos (kg) ÷ número de pernoites. Solicite relatório à empresa de coleta ou pese internamente.":"Total waste weight (kg) ÷ number of overnight stays. Request report from collection company or weigh internally.","Peso:":"Weight:",Pesos:Dq,"Pesos Customizáveis da Organização":"Customizable Organization Weights","Pesos de pilar atualizados â diagnósticos marcados para recálculo":"Pillar weights updated â diagnoses flagged for recalculation","Pesos de pilar restaurados ao padrão":"Pillar weights reset to default","Pesos por Indicador":"Weights by Indicator","Pesos por Pilar":"Weights by Pillar","Pesos são definidos por relevância estratégica:":"Weights are defined by strategic relevance:","Pesquisa de demanda turÃstica do municÃpio ou estimativa da Secretaria de Turismo. Média de dias que o turista permanece no destino.":"Municipal tourism demand research or estimate from the Tourism Secretariat. Average number of days tourists stay at the destination.","Pesquisa de demanda turÃstica municipal. Média de dias de permanência dos visitantes.":"Municipal tourism demand research. Average number of days visitors stay.","Pesquisa de satisfação aplicada pelo destino ou Observatório de Turismo. Escala de 0 a 10 (aceita 1 casa decimal).":"Satisfaction survey applied by the destination or Tourism Observatory. Scale from 0 to 10 (accepts 1 decimal place).","Pesquisa e Desenvolvimento":"Research and Development","Pesquisa local":"Local search","Pesquisa web + menções":"Web search + mentions","Pesquisa web por evidências de calçadas, rampas, sinalização tátil, transporte acessÃvel e atrativos PCD no municÃpio":"Web search for evidence of sidewalks, ramps, tactile signage, accessible transport and disabled-friendly attractions in the municipality","Pesquisando evidências...":"Searching for evidence...","Pesquisando reviews online...":"Searching online reviews...","Pesquisar por nome, UF ou IBGE...":"Search by name, state or IBGE...","Pesquisas acadêmicas e benchmarking":"Academic research and benchmarking","Pesquise avaliações do estabelecimento no Google, TripAdvisor e outros":"Search for establishment reviews on Google, TripAdvisor, and others","Pesquise avaliações em Google, TripAdvisor e outros":"Search reviews on Google, TripAdvisor and others","Pesquise municÃpios brasileiros na base do IBGE":"Search Brazilian municipalities in the IBGE database",Pessoa:Oq,Pessoal:Mq,Petróleo:"Petroleum",Picos:Nq,"Picos estimados:":"Estimated peaks:",Pilar:zq,"Pilar *":"Pillar *","Pilar AO":"AO Pillar","Pilar AO:":"AO Pillar:","Pilar OE":"OE Pillar","Pilar OE:":"OE Pillar:","Pilar Prioritário":"Priority Pillar","Pilar RA":"RA Pillar","Pilar RA:":"RA Pillar:","Pilar SISTUR:":"SISTUR Pillar:","Pilar {{p}} é do seu interesse":"Pillar {{p}} interests you","Pilar {{v0}}":"Pillar {{v0}}","Pilar é obrigatório":"Pillar is required","Pilar: {{v0}}":"Pillar: {{v0}}",Pilares:jq,"Pilares (RA · OE · AO)":"Pillars (RA · OE · AO)","Pilares canônicos":"Canonical pillars","Pipeline Claude â Tempo Real":"Claude Pipeline â Real Time","Pipeline de 9 etapas, normalização e cálculo dos pilares RA, OE e AO":"9-step pipeline, normalization and calculation of RA, OE and AO pillars","Pipeline de 9 etapas: fluxo de processamento de dados turÃsticos":"9-stage pipeline: tourism data processing flow","Pipeline de geração â providers, fila e streaming":"Generation pipeline â providers, queue and streaming","Placar semanal":"Weekly leaderboard","Placas informam e educam visitantes.":"Signs inform and educate visitors.","Plan / Real":"Planned / Actual",Planejado:kq,Planejamento:_q,"Planejamento ({{v0}})":"Planning ({{v0}})","Planejamento Territorial":"Territorial Planning","Planejamento anual do turismo municipal":"Annual municipal tourism planning","Planejamento da sprint":"Sprint planning","Planejamento do Program Increment":"Program Increment planning","Planejamento e execução financeira por categoria e fase"
166:"Financial planning and execution by category and phase","Planejamento e execução orçamentária em secretarias de turismo":"Budget planning and execution in tourism secretariats","Planeje o Crescimento":"Plan for Growth",Plano:qq,"Plano Enterprise: Acesso completo + suporte prioritário.":"Enterprise Plan: Full access + priority support.","Plano Municipal de Turismo":"Municipal Tourism Plan","Plano Nacional de Turismo":"National Tourism Plan","Plano Nacional de Turismo 2024-2027. DisponÃvel em: gov.br/turismo":"National Tourism Plan 2024-2027. Available at: gov.br/turismo","Plano Pro: EDU + AnalÃtico básico + Relatórios.":"Pro Plan: EDU + Basic Analytics + Reports.","Plano atual":"Current plan","Plano de Aula":"Lesson Plan","Plano de Desenvolvimento":"Development Plan","Plano de Ensino":"Course Plan","Plano de Sustentabilidade":"Sustainability Plan","Plano de ação em execução":"Action plan in progress","Plano de ação removido":"Action plan removed","Plano de desenvolvimento":"Development plan","Plano de ensino formal â base para certificação de carga horária e reconhecimento institucional.":"Formal course plan â the basis for certifying instructional hours and institutional recognition.","Plano excluÃdo":"Plan deleted","Plano pago":"Paid plan",Planos:Lq,"Planos ConcluÃdos":"Completed Plans","Planos Criados":"Created Plans","Planos SISTUR":"SISTUR Plans","Planos Territorial e Empresarial: AnalÃtico, EDU, relatórios e Professor Beni.":"Territorial and Business Plans: Analytical, EDU, reports and Professor Beni.","Planos de Ação":"Action Plans","Planos de ação com owner e due_date":"Action plans with owner and due_date","Planos de ação e tendências":"Action plans and trends","Planos de ação são vinculados a diagnósticos e issues especÃficos.":"Action plans are linked to specific diagnoses and issues.","Planos e assinatura":"Plans and subscription","Planos oficiais":"Official plans","Planos para cada perfil do turismo":"Plans for each tourism profile","Planos recentes com status atualizado.":"Recent plans with updated status.","Planos, assinaturas e concessões":"Plans, subscriptions and grants","Planta epÃfita indicadora de floresta preservada":"Epiphytic plant indicating preserved forest","Planta medicinal de altitude":"High-altitude medicinal plant","Plantar espécies nativas e criar cercados de regeneração":"Plant native species and create regeneration enclosures","Plantar Ãrvore":"Plant a Tree","Plantar árvores para segurar a terra":"Plant trees to hold the soil","Plantas aquáticas limpam a água naturalmente!":"Aquatic plants clean water naturally!","Plantas limpam a água!":"Plants clean the water!","Plantações destroem o cerrado.":"Plantations destroy the cerrado.","Plante uma árvore!":"Plant a tree!","Plantio de espécies nativas para restaurar ecossistemas":"Planting native species to restore ecosystems","Plantio massivo de árvores nativas!":"Massive planting of native trees!","Plantio no deserto":"Desert planting","Plataforma de diagnóstico territorial baseada nos três pilares (RA, OE e AO) da Análise Estrutural de Mario Beni. Permite criar rodadas, preencher indicadores, calcular o I-SISTUR e gerar relatórios.":"Territorial diagnosis platform based on the three pillars (RA, OE, and AO) of Mario Beni's Structural Analysis. Allows creating rounds, filling indicators, calculating I-SISTUR, and generating reports.","Plataforma educacional":"Educational platform","Plataformas ativas":"Active platforms","Player de vÃdeo integrado com tracking de progresso (watch_seconds, progress_percent)":"Video player integrated with progress tracking (watch_seconds, progress_percent)","Playfair Display, serif":"Playfair Display, serif",Plástico:"Plastic","Poderia avaliar este documento?":"Could you evaluate this document?","Polinizadora essencial para 75% das culturas agrÃcolas":"Essential pollinator for 75% of agricultural crops",Poluição:"Pollution","Poluição Inesperada":"Unexpected Pollution","Poluição Plástica":"Plastic Pollution","Poluição da água":"Water pollution","Poluição na Lagoa":"Pollution in the Lagoon","Poluição plástica no oceano!":"Plastic pollution in the ocean!","Poluição tóxica no ar.":"Toxic air pollution.","Poluição urbana":"Urban pollution","PolÃcia turÃstica":"Tourist police",PolÃtica:"Policy","PolÃtica Pública":"Public Policy","PolÃtica de Privacidade":"Privacy Policy","PolÃtica de Privacidade e Conformidade LGPD":"Privacy Policy and LGPD Compliance","PolÃtica de Propriedade Intelectual":"Intellectual Property Policy","PolÃtica e Planejamento de Turismo no Brasil. São Paulo: Aleph, 2006.":"Tourism Policy and Planning in Brazil. São Paulo: Aleph, 2006.","PolÃticas Públicas":"Public Policy","PolÃticas públicas":"Public policies","Ponto CrÃtico":"Critical Point","Ponto de encontro e cultura!":"Meeting point and culture!","Ponto onde a água subterrânea brota na superfÃcie":"Point where groundwater springs to the surface","Pontos Fortes":"Strengths","Pontos de Atenção":"Areas of Concern","Pontos fortes":"Strengths","Pontos máx.":"Max points.","Pontos sinalizados pelo agente IA validador ({{v0}})":"Points flagged by the validating AI agent ({{v0}})","Pontuação do último diagnóstico calculado de cada municÃpio que aceitou o consórcio.":"Score of the last calculated diagnostic for each municipality that accepted the consortium.","Pontuação final:":"Final score:","Pontuação parcial (objetivas):":"Partial score (objective):","Pontuação parcial (questões objetivas):":"Partial score (objective questions):","Pontuação:":"Score:","População estimada":"Estimated population","População, PIB per capita, Ãrea territorial, Densidade":"Population, GDP per capita, Territorial Area, Density","Populações tradicionais que dependem do manguezal":"Traditional populations dependent on the mangrove","Por Destino":"By Destination","Por Destino: planos diretores, legislação municipal, pesquisas locais":"By Destination: master plans, municipal legislation, local research","Por Escopo":"By Scope","Por Pilar":"By Pillar","Por Tier":"By Tier","Por padrão, todos os módulos ficam habilitados. Desabilite para criar pacotes customizados (ex: ICP A apenas com Diagnóstico).":"By default, all modules are enabled. Disable to create custom packages (e.g., ICP A with Diagnosis only).","Por que RA tem prioridade sobre os outros pilares?":"Why does RA have priority over other pillars?","Por que a geração de relatório agora roda em segundo plano?":"Why does report generation now run in the background?","Por que este curso?":"Why this course?","Por que este item se relaciona ao projeto?":"Why is this item related to the project?","Por que não vi nenhum indicador MST no meu pré-preenchimento?":"Why didn't I see any MST indicators in my pre-fill?","Por que preciso validar os dados pré-preenchidos?":"Why do I need to validate pre-filled data?","Por que recomendamos:":"Why we recommend it:","Por tempo indeterminado":"Indefinitely","Porcentagem (%)":"Percentage (%)","Pos.:":"Pos.:","Posicionamento de Preço (ADR)":"Price Positioning (ADR)","Posicionamento de preço analisado":"Price positioning analyzed","Posso acessar os treinamentos a qualquer momento?":"Can I access the trainings at any time?","Posso trocar de plano depois?":"Can I change my plan later?","Posso usar SISTUR AnalÃtico e Empresarial na mesma organização?":"Can I use SISTUR Analytical and Business in the same organization?",Post:Uq,"Posts com categorias, imagens moderadas por IA e sistema de likes":"Posts with categories, AI-moderated images, and a like system","Posts fixados são exibid
166os no topo.":"Pinned posts are displayed at the top.","Posts podem incluir links e referências.":"Posts can include links and references.","Posts são organizados por data (mais recentes primeiro).":"Posts are organized by date (most recent first).","Posts, comentários e moderação":"Posts, comments, and moderation",Pousada:Bq,"Pousada de Montanha":"Mountain Lodge","Pousadas sustentáveis geram renda sem destruir.":"Sustainable inns generate income without destroying.","Poço artesiano":"Artesian well","Praia Limpa, Coração Cheio":"Clean Beach, Full Heart","Praia poluÃda â Não expandir rede hoteleira":"Polluted beach â Do not expand hotel network",Prazo:Fq,"Prazo planejado no formato AAAA-MM-DD.":"Planned deadline in YYYY-MM-DD format.","Prazo prorrogado e alunos notificados":"Deadline extended and students notified","Prazos definidos pelo professor serão visÃveis no seu painel.":"Deadlines set by the professor will be visible on your dashboard.","Praça limpa e organizada! Os moradores adoraram! â¨":"Clean and organized square! The residents loved it! â¨",Precificação:"Pricing","Precificação dinâmica:":"Dynamic pricing:","Precisa de mais ajuda?":"Need more help?","Precisa de uma proposta institucional, nota de empenho ou volume acima de 100 usuários?":"Need an institutional proposal, commitment note, or volume above 100 users?","Precisamos de mais energia! De onde tirar?":"We need more energy! Where to get it from?","Preciso de ajuda":"I need help","Predador de topo essencial para o equilÃbrio marinho":"Top predator essential for marine balance","Preencha a diária média (ADR) na aba Sazonalidade para gerar sugestões.":"Fill in the average daily rate (ADR) in the Seasonality tab to generate suggestions.","Preencha ao menos 3 meses para que o Ãndice de sazonalidade seja calculado. O Ãndice (coeficiente de variação da ocupação) alimenta automaticamente o indicador":"Fill in at least 3 months for the seasonality index to be calculated. The index (occupancy variation coefficient) automatically feeds the indicator","Preencha ao menos 50% dos indicadores (":"Fill at least 50% of the indicators (","Preencha ao menos o tipo e número de UHs para continuar.":"Fill in at least the type and number of UHs to continue.","Preencha ao menos um indicador para habilitar o cálculo":"Fill in at least one indicator to enable calculation","Preencha as informações da questão":"Fill in the question information","Preencha as informações do treinamento":"Fill in the training information","Preencha chave, tÃtulo e conteúdo.":"Fill in key, title and content.","Preencha o assunto e o conteúdo do e-mail":"Fill in the subject and content of the email","Preencha o formulário descrevendo o conteúdo que você precisa":"Fill out the form describing the content you need","Preencha os KPIs de hospitalidade para gerar o diagnóstico":"Fill in the hospitality KPIs to generate the diagnosis","Preencha os dados do novo usuário. Ele receberá acesso imediato.":"Fill in the new user's data. They will receive immediate access.","Preencha os dados para calcular":"Enter the data to calculate","Preencha os dados para criar um novo treinamento":"Fill in the details to create a new training course","Preencha os dados para criar uma nova organização":"Fill in the details to create a new organization","Preencha os detalhes do projeto. {{v0}} ação(ões) serão convertidas em tarefas.":"Fill in the project details. {{v0}} action(s) will be converted into tasks.","Preencha seu perfil educacional com áreas de interesse, nÃvel de experiência e disponibilidade semanal. Isso permite recomendações personalizadas de conteúdo.":"Fill out your educational profile with areas of interest, experience level, and weekly availability. This allows for personalized content recommendations.","Preencha seu perfil educacional para receber recomendações personalizadas de conteúdo baseadas nos seus interesses e objetivos.":"Fill out your educational profile to receive personalized content recommendations based on your interests and goals.","Preencha seu perfil para receber recomendações de cursos e trilhas personalizadas de acordo com seus interesses e objetivos.":"Fill in your profile to receive personalized course and learning path recommendations according to your interests and objectives.","Preencha todos os campos obrigatórios":"Fill in all required fields","Preencher Dados":"Enter Data","Preencher Perfil":"Complete Profile","Preencher dados manualmente por formulário":"Fill in data manually by form","Preencher o formulário com um exemplo válido":"Fill out the form with a valid example",Preenchido:Gq,"Preenchido automaticamente":"Automatically filled","Preenchidos pela equipe":"Filled in by the team",Preenchimento:Vq,"Preenchimento Manual":"Manual Entry","Preenchimento assistido com dados de APIs oficiais (IBGE, CADASTUR, Mapa do Turismo)":"Assisted pre-fill with data from official APIs (IBGE, CADASTUR, Tourism Map)","Preenchimento geral":"Overall completion","Preenchimento manual":"Manual filling","Prefeitura, empresa...":"City hall, company...",Preferências:"Preferences",Premium:$q,"Preparando para retomar de onde você parou...":"Getting ready to resume where you left off...","Preparando vÃdeo seguro...":"Preparing secure video...","Prescrito porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}":"Prescribed because indicator {{0}} is {{1}} in pillar {{2}}.{{3}}",Prescrição:"Prescription","Prescrição DeterminÃstica":"Deterministic Prescription","Prescrição de Capacitação (SISTUR EDU)":"Training Prescription (SISTUR EDU)","Prescrição de capacitação baseada em diagnóstico":"Diagnosis-based training prescription","Prescrição determinÃstica: cada resultado de diagnóstico mapeia para capacitações especÃficas":"Deterministic prescription: each diagnosis result maps to specific training",Prescrições:"Prescriptions","Prescrições (SISTUR EDU)":"Prescriptions (SISTUR EDU)","Prescrições Ativas":"Active Prescriptions","Prescrições EDU":"EDU Prescriptions","Prescrições EDU para os indicadores deste projeto":"EDU prescriptions for this project's indicators","Prescrições SISTUR EDU":"SISTUR EDU Prescriptions","Prescrições automáticas baseadas nos indicadores crÃticos e em atenção":"Automatic prescriptions based on indicators with Critical and Attention status","Prescrições automáticas por regras":"Automatic prescriptions by rules","Prescrições de capacitação":"Training prescriptions","Prescrições de capacitação direcionadas":"Targeted training prescriptions","Prescrições e cursos:":"Prescriptions and courses:","Prescrições são geradas para cada issue encontrada.":"Prescriptions are generated for each issue found.","Prescrições vinculadas a capacitações":"Prescriptions linked to training","Prescrições vs. Relatórios":"Prescriptions vs. Reports",Presença:"Attendance","Presença Digital":"Digital Presence","Presença Digital Automática":"Automatic Digital Presence","Presença Digital Pública (site e redes)":"Public Digital Presence (website and networks)","Presença Digital â site oficial e diretórios (Auto)":"Digital Presence â official website and directories (Auto)","Presença digital analisada":"Digital presence analyzed","Presença digital analisada com sucesso":"Digital presence successfully analyzed","Presença em Redes Sociais":"Social Media Presence","Presença, progresso em atividades e desempenho em provas â consolidado por aluno.":"Attendance, activity progress and exam performance â consolidated by student.","Preservar espécies nativas!":"Preserve native species!","Preservação total sem desenvolvimento":"Total preservation without development","Preserve as montanhas e suas nascentes.":"Preserve the mountains and their springs.","Preserve nascentes, fauna endêmica e comunidades tradicionais das montanhas.":"Preserve springs, endemic fauna, and traditional mountain communities.","Pressionar por prazos mais agressivos com apoio legal":"Push for more aggressive deadlines with legal support","Pressione Enter ou clique no botão para adicionar uma aula":"Press Enter or click the button to add a class","Preste atenção ao virar â memorize as posições!":"Pay attention when flipping â memorize the positions!",Preview:Hq,Preço:"Price","Preço & Posicionamento":"Price & Positioning","Preço da Ganância":"Price of Greed","Preço/Posicionamento":"Price/Positioning","Preços vigentes. O plano Territorial (gestão pública) é contratado por proposta/empenho; os demais podem ser assinados online e alterados a qualquer momento.":"Current prices. The Territorial plan (public management) is contracted by proposal/commitment; others can be subscribed online and changed at any time.","Primata endêmico da Mata Atlântica em risco crÃtico":"Endemic Atlantic Forest primate at critical risk","Primeira avaliação":"First evaluation","Primeira avaliação de um destino":"First evaluation of a destination","Primeira iteração de desenvolvimento":"First development iteration","Primeira rodada para este destino. Comparativos estarão disponÃveis após a segunda rodada.":"First roun
166d for this destination. Comparisons will be available after the second round.","Primeiro passo é escolher o municÃpio ou destino turÃstico que será avaliado.":"The first step is to choose the municipality or tourist destination to be evaluated.","Primeiros Passos":"Getting Started","Principais Mercados Emissores":"Main Source Markets","Principais gargalos":"Key bottlenecks",Principal:Wq,"Principal ameaça aos manguezais: poluição por esgoto":"Main threat to mangroves: sewage pollution","PrincÃpios Fundamentais":"Fundamental Principles","PrincÃpios sistêmicos de Mario Beni aplicados ao turismo: pilares RA, OE e AO, regras IGMA e interpretação territorial dos diagnósticos.":"Mario Beni's systemic principles applied to tourism: RA, OE, and AO pillars, IGMA rules, and territorial interpretation of diagnoses.","PrincÃpios sistêmicos do turismo sustentável":"Systemic principles of sustainable tourism",Prioridade:Qq,"Prioridade #{{v0}}":"Priority #{{v0}}","Prioridade da tarefa.":"Task priority.","Prioridade {{v0}}":"Priority {{v0}}","Prioridades editoriais":"Editorial priorities","Prioriza dados integráveis":"Prioritizes integrable data",Priorização:"Prioritization","Priorização automática por severidade":"Automatic prioritization by severity",'Priorize alertas com "governance_block" pois impedem certificação do destino.':'Prioritize alerts with "governance_block" as they prevent destination certification.',"Privacidade competitiva":"Competitive privacy","Privacidade no Social Turismo":"Privacy in Social Tourism","Problema de login/autenticação":"Login/authentication problem","Problema:":"Problem:","Problemas identificados com severidade (crÃtico/moderado/bom)":"Problems identified by severity (critical/moderate/good)","Problemas identificados pelo Motor IGMA":"Problems identified by the IGMA Engine","Proc.":"Proc.",Procedência:"Provenance","Procedência dos Dados":"Data Provenance","Procedência dos dados:":"Data provenance:",Processados:Kq,Processamento:Yq,"Processando...":"Processing...","Processar diagnóstico":"Process diagnosis","Processo de cadastramento e benefÃcios da formalização":"Registration process and benefits of formalization","Processo de transformar resÃduos em novos produtos":"Process of transforming waste into new products",Procon:Jq,"Product Backlog":"Product Backlog","Produtividade por Colaborador":"Productivity per Employee","Produtos certificados alcançam mercados do Brasil inteiro!":"Certified products reach markets across Brazil!","Produz mais de 50% do oxigênio da atmosfera terrestre":"Produces more than 50% of the Earth's atmosphere oxygen",Produção:"Production",Professor:Xq,"Professor Beni":"Professor Beni","Professor Beni (IA)":"Professor Beni (AI)","Professor Beni AI (chatbot com TTS)":"Professor Beni AI (chatbot with TTS)","Professor Beni não respondeu. Tente novamente.":"Professor Beni did not respond. Try again.","Professor Beni â Regras de Conversa & Contexto":"Professor Beni â Conversation & Context Rules","Professor Beni, contexto dos relatórios, camada semântica, estrutura de análise e integração MCP.":"Professor Beni, report context, semantic layer, analysis framework and MCP integration.","Professor Mario Beni":"Professor Mario Beni",'Professor Mario Beni â acadêmico brasileiro, autor de "Análise Estrutural do Turismo". Didático, paciente, apaixonado pelo turismo sustentável. Combina rigor acadêmico com linguagem acessÃvel; sempre conecta teoria à prática. Idioma: Português brasileiro.':'Professor Mario Beni â Brazilian academic, author of "Análise Estrutural do Turismo" (Structural Analysis of Tourism). Didactic, patient, passionate about sustainable tourism. Combines academic rigor with accessible language; always connects theory to practice. Language: Brazilian Portuguese.',Professores:Zq,"Professores com 5+ alunos referenciados são isentos automaticamente!":"Teachers with 5+ referred students are automatically exempt!","Professores gerenciam turmas, prazos, diário de classe e podem indicar novos alunos via código de referência. Têm acesso a leaderboard, mensagens e relatórios de aproveitamento.":"Teachers manage classes, deadlines, class diary, and can refer new students via reference code. They have access to leaderboard, messages, and performance reports.","Profissionais autônomos":"Freelance professionals","Profundidade adequada para gestão ativa":"Adequate depth for active management","Programa de Limpeza":"Cleaning Program","Programa de Reciclagem":"Recycling Program","Programa de Referência":"Reference Program",Progresso:e1,"Progresso do Diagnóstico":"Diagnosis Progress","Progresso do Preenchimento":"Data Entry Progress","Progresso do aluno com watch_seconds":"Student progress with watch_seconds","Progresso do tópico":"Topic progress","Progresso geral":"Overall progress","Progresso por Pilar":"Progress by Pillar","Progresso salvo â pode sair e voltar":"Progress saved â you can leave and return","Progresso, frequência e identificação automática de alunos em risco.":"Progress, attendance and automatic identification of at-risk students.",Progressão:"Progression","Progressão Curricular":"Curriculum Progression","Proibir pe
166sca por um mês":"Prohibit fishing for one month",Projeto:a1,"Projeto Criado":"Project Created","Projeto criado com sucesso!":"Project created successfully!","Projeto excluÃdo":"Project deleted","Projeto não encontrado":"Project not found",Projetos:o1,"Projetos Ativos":"Active Projects","Projetos Atrasados":"Overdue Projects","Projetos Atrasados ({{v0}})":"Delayed Projects ({{v0}})","Projetos ativos, tarefas e prazos":"Active projects, tasks, and deadlines","Projetos bloqueados até assinar":"Projects locked until subscription","Projetos criados":"Projects created","Projetos criados pelo Modo Prescrição do diagnóstico já trazem os indicadores-alvo com baseline registrado. Para projetos antigos, recrie a partir do diagnóstico para ativar a trilha de impacto.":"Projects created by the diagnosis Prescription Mode already include target indicators with recorded baseline. For old projects, recreate from the diagnosis to activate the impact path.","Projetos de grande investimento turÃstico":"Large tourism investment projects","Projetos de intervenção da organização, com status e vÃnculo diagnóstico.":"Organization intervention projects, with status and diagnostic link.","Projetos e planos ativos":"Active projects and plans","Projetos em Andamento ({{v0}})":"Projects in Progress ({{v0}})","Projetos que ultrapassaram a data de término prevista":"Projects that have passed their planned end date","Promover um destino com problemas ambientais graves ou falhas operacionais sérias pode gerar danos à reputação e frustrar turistas. Marketing só é liberado quando pilares essenciais estão saudáveis.":"Promoting a destination with serious environmental problems or operational failures can damage its reputation and frustrate tourists. Marketing is only released when essential pillars are healthy.","Promoção bloqueada se RA ou AO crÃticos":"Promotion blocked if RA or AO are critical","Promoção bloqueada se RA ou AO estão crÃticos. Protege a reputação do destino.":"Promotion blocked if RA or AO are critical. Protects the destination's reputation.","Promoção do destino":"Destination promotion","Promoção e marketing do destino":"Destination promotion and marketing","Promoções e cortesias com acesso sem limite de perguntas.":"Promotions and courtesies with unlimited access to questions.",Prompt:i1,Pronto:t1,"Pronto para a missão!":"Ready for the mission!","Pronto para calcular":"Ready to calculate","Pronto para calcular diagnóstico":"Ready to calculate diagnosis","Propor um plano de uso sustentável que atenda todos":"Propose a sustainable use plan that meets everyone's needs",Prorrogar:r1,"Prorrogar prazo":"Extend deadline","Protege e organiza a comunidade":"Protects and organizes the community","Protegem recursos hÃdricos e biodiversidade":"Protect water resources and biodiversity","Proteja ecossistemas costeiros contra poluição marinha, turismo predatório e erosão.":"Protect coastal ecosystems against marine pollution, predatory tourism, and erosion.","Proteja os ecossistemas costeiros do Brasil.":"Protect Brazil's coastal ecosystems.","Proteção Costeira":"Coastal Protection","Proteção contra queimadas!":"Protection against wildfires!","Proteção máxima da natureza!":"Maximum nature protection!",Prova:s1,"Prova *":"Exam *","Prova / Exame":"Test / Exam","Prova iniciada!":"Test started!",Provas:n1,"Provas Finais da Trilha":"Learning Path Final Exams","Provas cadastradas":"Registered Exams","Provas com anti-cheat e histórico":"Exams with anti-cheat and history","Provas, trilhas e treinamentos atribuÃdos pelos seus professores":"Tests, paths and training assigned by your teachers","Provas: Alcance a nota mÃnima definida para cada exame.":"Exams: Achieve the minimum score defined for each exam.",Provedor:c1,"Provedor de VÃdeo":"Video Provider","Provedor não registrado (relatório anterior à v1.38.62)":"Unregistered provider (report before v1.38.62)",Provider:d1,"Provider Falhou":"Provider Failed","Provider OK":"Provider OK",Prática:"Practice","Práticas de sustentabilidade ambiental no turismo":"Environmental sustainability practices in tourism","Práticas identificadas":"Practices identified","Pré-preencher":"Prefill","Pré-preenchido":"Pre-filled","Pré-preenchido (Reviews)":"Pre-filled (Reviews)","Pré-preenchido:":"Pre-filled:","Pré-preenchimento":"Pre-filling","Pré-preenchimento Automático":"Automatic Pre-filling","Pré-preenchimento automático: {{v0}}/{{v1}} itens":"Automatic pre-filling: {{v0}}/{{v1}} items","Pré-preenchimento de Dados Oficiais":"Official Data Prefill","Pré-preenchimento de tipo, porte e razão social":"Pre-filling of type, size, and company name","Pré-requisitos":"Prerequisites","Pré-visualização ao vivo":"Live preview","Pré-visualização da importação":"Import preview","Prévia gratuita encerrada":"Free preview ended",Próxima:"Next","Próxima Revisão Recomendada":"Next Recommended Review",Próximo:"Next","Próximo passo: Complementar dados":"Next step: Complement data","Próximo â
166¡ï¸":"Next â¡ï¸","Próximos eventos":"Upcoming events","Próximos eventos (Observatório)":"Upcoming events (Observatory)","Próximos itens a serem trabalhados":"Next items to work on","Próximos passos":"Next steps",Publicada:l1,Publicado:u1,Publicados:m1,Publicar:p1,Pular:g1,"Pular (não adicionar carta)":"Skip (do not add letter)","Pular para Preenchimento Manual":"Skip to Manual Filling","Pular para o conteúdo":"Skip to content","Pular tutorial":"Skip tutorial","Puxa automaticamente conectividade aérea (ANAC), cobertura de telecom (ANATEL), eventos do destino, Mapa do Turismo e indicadores socioeconômicos do municÃpio.":"Automatically pulls air connectivity (ANAC), telecom coverage (ANATEL), destination events, Tourism Map, and socioeconomic indicators for the municipality.",Página:"Page","Página Pública":"Public Page","Página não carrega/lenta":"Page not loading/slow","Pérola Natural":"Natural Pearl","Pérola formada naturalmente":"Naturally formed pearl",Público:"Public","Público estimado":"Estimated audience","Público-Alvo":"Target Audience","Público-alvo":"Target audience","Público-alvo compatÃvel":"Target audience matches your profile","Público:":"Audience:","Público: {{v0}}":"Audience: {{v0}}","QR Code de verificação":"Verification QR Code","QR Code permite verificação pública por qualquer pessoa.":"QR Code allows public verification by anyone.","QR code + verificação pública + exames com anti-cheat":"QR code + public verification + exams with anti-cheat","QR code + verificação pública + validade":"QR code + public verification + validity","Quais capacitações do catálogo servem para gestores no pilar Organização Estrutural?":"Which catalog trainings are suitable for managers in the Structural Organization pillar?","Quais capacitações priorizar para a minha equipe?":"Which training should I prioritize for my team?","Quais formas de pagamento são aceitas?":"Which payment methods are accepted?","Quais indicadores MST são preenchidos automaticamente?":"Which MST indicators are automatically filled?","Quais indicadores estão disponÃveis no Empresarial?":"Which indicators are available in the Enterprise edition?","Quais pilares do turismo sustentável te interessam?":"Which pillars of sustainable tourism interest you?","Quais são as fontes de dados oficiais?":"What are the official data sources?","Quais são os principais gargalos do meu destino hoje?":"What are the main bottlenecks in my destination today?","Quais são seus objetivos de aprendizado?":"What are your learning objectives?","Quais áreas do turismo sustentável te interessam?":"Which areas of sustainable tourism interest you?","Quaisquer litÃgios serão dirimidos pelo Foro da Comarca da sede do Titular, com exclusão de qualquer outro por mais privilegiado que seja.":"Any disputes shall be resolved by the Court of the Head Office of the Holder, excluding any other, however privileged it may be.","Qual a diferença entre Organizações Públicas e Privadas?":"What is the difference between Public and Private Organizations?","Qual a importância das áreas de preservação permanente (APP)?":"What is the importance of permanent preservation areas (APP)?","Qual animal é considerado polinizador essencial?":"Which animal is considered an essential pollinator?","Qual bioma brasileiro é considerado berço das águas?":"Which Brazilian biome is considered the cradle of waters?","Qual foi o resultado do diagnóstico mais recente de Barretos? Quais pilares estão em Atenção ou CrÃtico?":"What was the result of Barretos' most recent diagnosis? Which pillars are in Attention or Critical status?","Qual gás as árvores absorvem da atmosfera?":"Which gas do trees absorb from the atmosphere?","Qual gás é o principal causador do efeito estufa?":"Which gas is the main cause of the greenhouse effect?","Qual material leva mais tempo para se decompor?":"Which material takes the longest to decompose?","Qual modelo de IA gera os relatórios do SISTUR?":"Which AI model generates SISTUR reports?","Qual nÃvel escolher?":"Which level to choose?","Qual prática agrÃcola preserva o solo?":"Which agricultural practice preserves the soil?","Qual prática reduz a pegada de carbono?":"Which practice reduces the carbon footprint?","Qual seu nÃvel de experiência?":"What is your experience level?","Qual é a função da camada de ozônio?":"What is the function of the ozone layer?","Qual é a função dos corredores ecológicos?":"What is the function of ecological corridors?","Qual é a principal causa de extinção de espécies?":"What is the main cause of species extinction?","Qual é a principal fonte de energia do Brasil?":"What is Brazil's main energy source?","Qual é o efeito do desmatamento nos rios?":"What is the effect of deforestation on rivers?","Qual é o maior bioma brasileiro?":"What is the largest Brazilian biome?","Qual é o maior recife de coral do mundo?":"What is the world's largest coral reef?","Qual é o papel dos manguezais?":"What is the role of mangroves?","Qual é sua área de atuação?":"What is your area of expertise?",Qualidade:h1,"Qualidade da Infraestrutura":"Infrastru
166cture Quality","Qualidade da água":"Water Quality","Qualidade de Serviço":"Service Quality","Qualidade de Serviços":"Service Quality","Qualidade dos Dados Oficiais":"Official Data Quality","Qualidade: {{v0}}%":"Quality: {{v0}}%","Qualificação de Serviços TurÃsticos":"Qualification of Tourist Services","Qualificação profissional":"Professional Qualification","Qualquer conteúdo não-turÃstico":"Any non-tourism content","Qualquer pessoa com o link poderá ler esta conversa, sem precisar entrar no SISTUR.":"Anyone with the link can read this conversation, without needing to log in to SISTUR.","Quando não há esperança, partem.":"When there's no hope, they leave.","Quando o usuário tem diagnósticos/treinamentos/projetos selecionados, esses dados são anexados ao prompt:\n- Diagnóstico selecionado: tÃtulo, destino, status, tipo, scores dos pilares, flags IGMA e interpretação\n- Treinamentos disponÃveis: tÃtulo, pilar, tipo\n- Projetos: nome, status, metodologia, destino\n- Diagnósticos acessÃveis (até 10 mais recentes) via RLS\n- Relatórios gerados (até 5 mais recentes) com trecho de até 1500 caracteres, via RLS":`When the user has selected diagnoses/trainings/projects, this data is appended to the prompt: 167- Selected diagnosis: title, destination, status, type, pillar scores, IGMA flags, and interpretation 168- Available trainings: title, pillar, type 169- Projects: name, status, methodology, destination 170- Accessible diagnoses (up to 10 most recent) via RLS 171- Generated reports (up to 5 most recent) with a snippet of up to 1500 characters, via RLS`,"Quando o usuário tem diagnósticos/treinamentos/projetos selecionados, esses dados são anexados ao prompt: - Diagnóstico selecionado: tÃtulo, destino, status, tipo, scores dos pilares, flags IGMA e interpretação - Treinamentos disponÃveis: tÃtulo, pilar, tipo - Projetos: nome, status, metodologia, destino - Diagnósticos acessÃveis (até 10 mais recentes) via RLS - Relatórios gerados (até 5 mais recentes) com trecho de até 1500 caracteres, via RLS":"When the user has selected diagnostics/trainings/projects, this data is appended to the prompt: - Selected diagnostic: title, destination, status, type, pillar scores, IGMA flags and interpretation - Available trainings: title, pillar, type - Projects: name, status, methodology, destination - Accessible diagnostics (up to 10 most recent) via RLS - Generated reports (up to 5 most recent) with a snippet of up to 1500 characters, via RLS","Quando todos ajudam, tudo fica melhor.":"When everyone helps, everything gets better.","Quando um indicador regride mais de 2% em dois ciclos consecutivos, o sistema dispara alerta automático para gestores e registra evento auditável no painel.":"When an indicator regresses by more than 2% in two consecutive cycles, the system triggers an automatic alert for managers and registers an auditable event on the dashboard.","Quando um professor atribuir provas, trilhas ou treinamentos, eles aparecerão aqui.":"When a teacher assigns tests, paths, or training, they will appear here.","Quando uma organização tem contexto próprio, ele substitui o global ao gerar relatórios daquela org.":"When an organization has its own context, it replaces the global context when generating reports for that organization.","Quando é recomendada a próxima revisão?":"When is the next review recommended?","Quantas horas por semana você pode dedicar aos estudos?":"How many hours per week can you devote to studying?","Quantas tentativas extras adicionar":"How many extra attempts to add",Quantidade:f1,"Quantidade de perguntas":"Number of questions","Quanto menor, melhor":"The smaller, the better","Quarta iteração de desenvolvimento":"Fourth development iteration","Quedas superiores a 2 pontos percentuais em 2 rodadas consecutivas. Comparação interna deste":"Declines greater than 2 percentage points in 2 consecutive rounds. Internal comparison of this","Queima de lixo":"Garbage burning","Queimada na Floresta":"Forest Fire","Queimada na floresta!":"Forest fire!","Quem já tem conta é vinculado ao entrar pelo link; quem ainda não tem cria a conta com o código. Depois disso você adiciona a pessoa à turma em Grupos.":"Existing account holders are linked upon entering via the link; those without an account create one using the code. Afterwards, you add the person to the class in Groups.","Quem não entregou":"Who has not submitted","Quem não iniciou":"Who has not started","Quem protege a água é pago por isso! Modelo justo e sustentável.":"Whoever protects water is paid for it! Fair and sustainable model.","Quem recebe":"Who receives it","Quem são os agentes-alvo dos cursos?":"Who are the target agents for the courses?","Quer experimentar agora?":"Want to try it now?","Quero contratar":"I want to hire",'Questione o resultado da prova "{{v0}}". Descreva os motivos do recurso de forma clara e objetiva.':'Question the result of the test "{{v0}}". Describe the reasons for the appeal clearly and objectively.',Questão:"Question","Questão atualizada com sucesso!":"Question updated successfully!","Questão criada com sucesso":"Question created successfully","Questão criada com sucesso!":"Question created successfully!","Questão excluÃda":"Question deleted",Questões:"Questions","Questões dissertativas aguardam correção manual do professor":"Essay questions await manual correction by the professor","Questões selecionadas aleatoriamente do banco":"Questions randomly selected from the bank","Questões selecionadas para a nova prova":"Questions selected for the new exam","Questões são selecionadas aleatoriamente nas provas.":"Questions are randomly selected in the tests.",Quizzes:v1,"R - Responsável":"R - Responsible","R$ 150k direto de R$ 500k total = 30%":"R$ 150k direct from R$ 500k total = 30%","R$ 180,00 por quarto disponÃvel":"R$ 180.00 per available room","R$ 45 milhões/ano":"R$ 45 million/year","R$ 450.000 ÷ 1.200 diárias = R$ 375,00":"R$ 450,000 ÷ 1,200 daily rates = R$ 375.00","R$ 520,00 por quarto disponÃvel":"R$ 520.00 per available room","R$ por habitante/ano":"R$ per inhabitant/year","RA (Relações Ambientais), OE (Organização Estrutural), AO (AÃ
171§Ãµes Operacionais). Nomenclatura fixa.":"RA (Environmental Relations), OE (Structural Organization), AO (Operational Actions). Fixed nomenclature.","RA (Relações Ambientais): Avalia sustentabilidade e recursos naturais.":"RA (Environmental Relations): Evaluates sustainability and natural resources.","RA - Recursos e Atrativos":"RA - Resources and Attractions","RA - Relações Ambientais":"RA - Environmental Relations","RA / OE / AO:":"RA / OE / AO:","RA = CRÃTICO":"RA = CRITICAL","RA = CRÃTICO ou AO = CRÃTICO":"RA = CRITICAL or AO = CRITICAL","RA CrÃtico":"Critical RA","RA CrÃtico bloqueia expansão estrutural (OE) e marketing.":"Critical RA blocks structural expansion (OE) and marketing.","RA está CrÃtico?":"Is RA Critical?","RA é a Base do Sistema":"RA is the System's Foundation","RA â 4 indicadores":"RA â 4 indicators","RA ⥠80 por 3 turnos":"RA ⥠80 for 3 shifts","RA/OE/AO mÃn:":"RA/OE/AO min:","RA001,75,IBGE":"RA001,75,IBGE","RA002,92,Pesquisa Local":"RA002,92,Local Survey","RA:":"RA:","RAIS â Relação Anual de Informações Sociais (MTE)":"RAIS â Annual Social Information Report (MTE)",RA_LIMITATION:b1,"RELATÃRIO DE DIAGNÃSTICO SISTUR":"SISTUR DIAGNOSTIC REPORT","RELATÃRIO ENTERPRISE â DIAGNÃSTICO OPERACIONAL & ESTRATÃGICO":"ENTERPRISE REPORT â OPERATIONAL & STRATEGIC DIAGNOSIS","RETURNS boolean LANGUAGE sql STABLE SECURITY DEFINER AS $$":"RETURNS boolean LANGUAGE sql STABLE SECURITY DEFINER AS $$",ROI:A1,"ROI = (retorno anual â investimento) ÷ investimento; payback = investimento ÷ retorno anual. Investimento vem do orçamento do projeto.":"ROI = (annual return â investment) ÷ investment; payback = investment ÷ annual return. Investment comes from the project budget.","ROI de projeto:":"Project ROI:","RPG Missão Bioma: Aventura narrativa com escolhas.":"RPG Biome Mission: Narrative adventure with choices.","RPG narrativo onde suas escolhas determinam o destino de biomas brasileiros. Restaure a natureza através de decisões estratégicas.":"Narrative RPG where your choices determine the fate of Brazilian biomes. Restore nature through strategic decisions.","RPG â Missão Bioma":"RPG â Biome Mission","RPG: narrativas interativas com escolhas que afetam indicadores ambientais":"RPG: interactive narratives with choices that affect environmental indicators",RSS:y1,"RaciocÃnio profundo":"Deep reasoning",Radiografia:S1,"Radiografia do Destino":"Destination Snapshot","Radiografia dos Pilares":"Pillars X-ray","Rainforest Alliance":"Rainforest Alliance","Raio de influência: {{v0}} km":"Influence radius: {{v0}} km","Ranking de Turmas":"Class Rankings","Ranking interno das unidades":"Internal ranking of units",Rascunho:E1,"Rascunho salvo":"Draft saved","Rascunho salvo automaticamente":"Draft saved automatically",Rascunhos:C1,"Rastreamento de presença, interações e alertas automáticos para certificação AVA":"Attendance tracking, interactions and automatic alerts for VLE certification","Rastreio visual desde a fonte original até o score final do diagnóstico â {{v0}} indicadores processados. Passe o mouse sobre qualquer nó para destacar o fluxo correspondente.":"Visual tracing from the original source to the final diagnosis score â {{v0}} indicators processed. Hover over any node to highlight the corresponding flow.","Razão (0-1)":"Ratio (0-1)","Razão social:":"Company name:","RaÃzes seguram o solo!":"Roots hold the soil!","RaÃzes seguram o solo! Solução duradoura!":"Roots hold the soil! Lasting solution!",Realizado:T1,"Realize ações administrativas sobre licenças especÃficas.":"Perform administrative actions on specific licenses.",Reaproveitado:P1,"Reativar indicador":"Reactivate indicator","Recalculandoâ¦":"Recalculatingâ¦",Recalcular:R1,"Recalcular agora":"Recalculate now","Recalcular todos ({{v0}})":"Recalculate all ({{v0}})","Recalcule para incorporar os novos valores de IBGE, CADASTUR, STN ou Mapa do Turismo.":"Recalculate to incorporate the new values from IBGE, CADASTUR, STN or Mapa do Turismo.","Recarregando vÃdeo...":"Reloading video...",Recarregar:x1,"Recarregue a página (Ctrl+Shift+R) e tente novamente. Se persistir, troque de rede.":"Reload the page (Ctrl+Shift+R) and try again. If the issue persists, switch networks.","Recarregue a página (Ctrl+Shift+R). Se persistir, contate o suporte.":"Reload the page (Ctrl+Shift+R). If the issue persists, contact support.","Receba recomendações personalizadas de treinamentos":"Get personalized training recommendations","Recebe atualizações":"Receives updates","Recebemos seu interesse!":"We received your interest!","Receber recomendações":"Receive recommendations","Recebeu um código de um professor? Informe abaixo para entrar na lista de estudantes dele. Depois, o professor adiciona você à s turmas.":"Received a code from a professor? Enter it below to join their student list. Afterwards, the professor will add you to classes.",Receita:w1,"Receita & Canais":"Revenue & Channels","Receita Federal: razão social, CNAE, situação cadastral e anos de operação":"Brazilian IRS: corporate name, CNAE, registration status, and years of operation","Receita estimada":"Estimated revenue","Receita per
171capita = ((visitantes nacionais à gasto médio diário à permanência) + (visitantes internacionais à gasto médio diário à permanência)) ÷ população":"Revenue per capita = ((national visitors à average daily spend à length of stay) + (international visitors à average daily spend à length of stay)) ÷ population","Receita por quarto disponÃvel":"Revenue per available room","Receita total (hospedagem + A&B + eventos + spa + outros) ÷ quartos disponÃveis.":"Total revenue (lodging + F&B + events + spa + others) ÷ available rooms.","Reciclagem de plástico":"Plastic recycling","Reciclar economiza recursos e protege a natureza.":"Recycling saves resources and protects nature.","Recife de Abrolhos":"Abrolhos Reef","Recife de Coral":"Coral Reef","Recife do Caribe":"Caribbean Reef",Reclamações:"Complaints","Reclamações Públicas":"Public Complaints","Reclamações públicas (Reclame Aqui / Procon)":"Public complaints (Reclame Aqui / Procon)","Reclamações públicas analisadas":"Analyzed public complaints","Reclame Aqui + Procon":"Reclame Aqui + Procon","Reclame Aqui e Procon â reputação pública e taxa de solução":"Reclame Aqui and Procon â public reputation and resolution rate",Recolher:I1,"Recomendado para Você":"Recommended for You","Recomendamos usar todos os indicadores na primeira rodada para ter uma visão completa.":"We recommend using all indicators in the first round for a complete overview.",Recomendações:"Recommendations","Recomendações EDU acopladas":"Coupled EDU recommendations","Recomendações Personalizadas":"Personalized Recommendations","Recomendações Prioritárias":"Priority Recommendations","Recomendações automáticas de aprendizado a partir do diagnóstico":"Automatic learning recommendations based on diagnosis","Recomendações de Aprendizagem":"Learning Recommendations","Recomendações determinÃsticas vinculadas a capacitações EDU":"Deterministic recommendations linked to EDU training","Recomendações personalizadas":"Personalized recommendations","Recomendações são atualizadas conforme você completa conteúdos.":"Recommendations are updated as you complete content.","Recomeço na Serra":"Restart in Serra","Recomeço no Sertão":"Restart in Sertão",Recompensas:D1,"Reconecte à internet (Wi-Fi ou 4G/5G) e tente novamente.":"Reconnect to the internet (Wi-Fi or 4G/5G) and try again.","Recuperando valores automáticos e recalculando...":"Retrieving automatic values and recalculating...","Recuperar Senha":"Reset Password","Recuperar valores automáticos":"Retrieve automatic values",Recurso:O1,"Recurso enviado com sucesso":"Resource sent successfully","Recurso enviado com sucesso!":"Appeal submitted successfully!","Recurso já enviado para esta prova":"Resource already sent for this test",Recursos:M1,"Recursos ({{v0}})":"Resources ({{v0}})","Recursos Ambientais":"Environmental Resources","Recursos HÃdricos":"Water Resources","Recursos de Acessibilidade":"Accessibility Features","Recursos para Deficientes Auditivos":"Features for the Hearing Impaired","Recursos para Deficientes Visuais":"Features for the Visually Impaired",Recusar:N1,"Recusar e criar eco-negócios":"Reject and create eco-businesses",Recálculo:"Recalculation",Rede:z1,"Rede de Parcerias":"Partnership Network","Rede de Pesca":"Fishing Net","Rede de arrasto ilegal!":"Illegal trawling net!","Rede própria":"Own network","Redes Sociais":"Social Networks","Redes Sociais (Instagram / Facebook / TikTok)":"Social Media (Instagram / Facebook / TikTok)","Redução das Desigualdades":"Reduction of Inequalities","Redução de Plástico":"Plastic Reduction","Reestruturação organizacional":"Organizational restructuring","Ref. Máximo":"Max. Ref.","Ref. Máximo:":"Max. Ref.:","Ref. MÃnimo":"Min. Ref.","Ref. MÃnimo:":"Min. Ref.:","Ref: {{v0}}":"Ref: {{v0}}","Referência atualizada":"Reference updated","Referência removida":"Reference removed",Referências:"References","Referências Globais":"Global References","Referências Oficiais":"Official References","Reflorestamento de Encosta":"Slope Reforestation","Reflorestamento de encostas":"Slope reforestation","Reflorestar é devolver a vida ao s
171olo.":"Reforesting is giving life back to the soil.",Regenerar:j1,"Regenerar provas da trilha?":"Regenerate trail evidence?","Regionalização e categorização":"Regionalization and categorization","Registrando...":"Recording...",Registrar:k1,"Registrar Medição":"Register Measurement","Registro imutável dos dados, fontes e confiabilidade para rastreabilidade":"Immutable record of data, sources, and reliability for traceability","Registro:":"Registration:",Registros:_1,"Registros incluem: quem, o que, quando e de onde.":"Records include: who, what, when, and from where.","Registros manuais da organização.":"Manual records of the organization.","Região TurÃstica":"Tourist Region","Região turÃstica, Categoria A-E, Empregos, Estabelecimentos, Visitantes, Arrecadação":"Tourist region, Category A-E, Jobs, Establishments, Visitors, Revenue","Regra 1: Prioridade RA - limitações ambientais bloqueiam OE":"Rule 1: RA Priority - environmental limitations block OE","Regra 2 â Ciclo ContÃnuo de Revisão":"Rule 2 â Continuous Review Cycle","Regra 2: Calcular Revisão":"Rule 2: Calculate Review","Regra 2: Ciclo ContÃnuo":"Rule 2: Continuous Cycle","Regra 2: Ciclo contÃnuo - revisão programada por severidade":"Rule 2: Continuous cycle - severity-scheduled review","Regra 3: Externalidades - alerta se OE melhora e RA piora":"Rule 3: Externalities - alert if OE improves and RA worsens","Regra 3: OEâ e RAâ?":"Rule 3: OEâ and RAâ?","Regra 4 â Governança Central (AO)":"Rule 4 â Central Governance (AO)","Regra 4: Governança Central":"Rule 4: Central Governance","Regra 4: Governança central - AO crÃtico bloqueia expansão":"Rule 4: Central governance - critical AO blocks expansion","Regra 5: Marketing bloqueado se RA ou AO crÃticos":"Rule 5: Marketing blocked if RA or AO are critical","Regra 5: RA ou AO < 3.33?":"Rule 5: RA or AO < 3.33?","Regra 6 â Interdependência Setorial":"Rule 6 â Sectoral Interdependence","Regra 6: Interdependência Setorial":"Rule 6: Sectoral Interdependence","Regra 6: Interdependência setorial identificada":"Rule 6: Sectoral interdependence identified","Regra Aplicada":"Applied Rule","Regra {{v0}}: {{v1}}":"Rule {{v0}}: {{v1}}",Regras:q1,"Regras & Planos":"Rules & Plans","Regras ativas para este curso":"Active rules for this course","Regras de Exame Configuradas":"Exam Rules Configured","Regras de Retentativa":"Retry Rules","Regras de comércio internacional":"International trade rules","Regras de exames":"Exam rules","Regras de prova criadas":"Test rules created","Regras determinÃsticas aplicadas automaticamente a cada diagnóstico":"Deterministic rules automatically applied to each diagnosis","Regras fixas da metodologia":"Fixed methodology rules",Regrediram:L1,Regressão:"Regression","Regressão detectada ({{v0}})":"Regression detected ({{v0}})","Regressão:":"Regression:",Regulamentação:"Regulation","Regular marés":"Regular tides",Reiniciar:U1,"Reiniciar jogo":"Restart game",Rejeitado:B1,Rejeitar:F1,"Rejeitar Recurso":"Reject Appeal","Rejeição Automática":"Automatic Rejection",Relatório:"Report","Relatório Empresarial â Diagnóstico Operacional & Estratégico (concorrentes anonimizados: Concorrente A/B/C)":"Business Report â Operational & Strategic Diagnosis (anonymized competitors: Competitor A/B/C)","Relatório Gerado":"Report Generated","Relatório IA":"AI Report","Relatório SISTUR":"SISTUR Report","Relatório Word baixado!":"Word report downloaded!","Relatório atualizado.":"Report updated.","Relatório consolidado por Escopo, Pilar e Tier":"Report consolidated by Scope, Pillar and Tier","Relatório excluÃdo":"Report deleted","Relatório gerado e salvo com sucesso!":"Report generated and saved successfully!","Relatório gerado pela Mente Sistur com base no diagnóstico":"Report generated by Mente Sistur based on the diagnosis","Relatório para captação":"Fundraising Report","Relatório será gerado no ambiente de demonstração":"Report will be generated in the demo environment","Relatório será gerado no ambiente de produção":"Report will be generated in the production environment","Relatório técnico de diagnóstico territorial gerado pelo Sistema SISTUR conforme metodologia de Mario Carlos Beni, seguindo padrões MEC/ABNT.":"Technical territorial diagnostic report generated by the SISTUR System according to Mario Carlos Beni's methodology, following MEC/ABNT standards.","Relatório técnico detalhado (50+ páginas)":"Detailed Technical Report (50+ pages)","Relatório técnico para captação de recursos":"Technical Report for Fundraising","Relatório técnico-estratég
171ico de diagnóstico de empreendimento turÃstico gerado pelo Sistema SISTUR, com base nos pilares I-RA, I-OE e I-AO da metodologia de Mario Carlos Beni e em indicadores operacionais (PMS, reputação online, posicionamento competitivo e ESG). Concorrentes são tratados de forma anonimizada (Concorrente A/B/C), conforme regras semânticas Empresarial.":"Technical-strategic diagnostic report for a tourism enterprise generated by the SISTUR System, based on the I-RA, I-OE and I-AO pillars of Mario Carlos Beni's methodology and on operational indicators (PMS, online reputation, competitive positioning and ESG). Competitors are anonymized (Competitor A/B/C), according to Empresarial semantic rules.","Relatório â {{v0}}":"Report â {{v0}}",Relatórios:"Reports","Relatórios Estratégicos":"Strategic Reports","Relatórios Salvos":"Saved Reports","Relatórios com IA":"AI-powered reports",'Relatórios completos (template "Completo" com 100+ indicadores) levam de 2 a 7 minutos só na fase de inferência da IA. Para evitar que a aba do navegador fique presa esperando a resposta â e que timeouts intermediários do proxy interrompam a geração â o SISTUR enfileira o pedido em report_jobs e dispara um worker dedicado (process-report-job) por trigger de banco. Você pode fechar a aba ou navegar livremente: quando o relatório ficar pronto, o sistema dispara um toast e uma notificação do navegador (se permitida). O histórico mostra o relatório recém-criado automaticamente.':'Complete reports (template "Complete" with 100+ indicators) take 2 to 7 minutes in the AI inference phase alone. To prevent the browser tab from getting stuck waiting for a response â and to avoid intermediate proxy timeouts interrupting generation â SISTUR queues the request in report_jobs and triggers a dedicated worker (process-report-job) via database trigger. You can close the tab or browse freely: when the report is ready, the system sends a toast notification and a browser notification (if permitted). The history automatically shows the newly created report.',"Relatórios personalizáveis com logo, cabeçalho/rodapé, cor primária, tamanho de fonte e notas adicionais. Visibilidade pessoal ou organizacional. Templates: Completo, Executivo e Investidores.":"Customizable reports with logo, header/footer, primary color, font size, and additional notes. Personal or organizational visibility. Templates: Complete, Executive, and Investors.","Relatórios profissionais com identidade visual da organização":"Professional reports with organizational visual identity","Relatórios salvos (últimos 50)":"Saved reports (last 50)","Relatórios são um recurso do plano Pro e Enterprise.":"Reports are a feature of the Pro and Enterprise plans.","Relatórios/Dashboards":"Reports/Dashboards","Relação demanda/oferta no raio:":"Demand/supply ratio within the radius:","Relação saudável.":"Healthy relationship.","Relações Ambientais":"Environmental Relations","Relações Ambientais (IRA)":"Environmental Relations (IRA)","Relações Ambientais (RA)":"Environmental Relations (RA)","Relações Ambientais (sustentabilidade)":"Environmental Relations (sustainability)","Relevância:":"Relevance:",Religioso:G1,Remover:V1,"Remover anexo":"Remove attachment","Remover arquivo?":"Remove file?","Remover badge?":"Remove badge?","Remover curtida":"Unlike","Remover da Organização":"Remove from Organization","Remover esta trilha e todas as etapas?":"Remove this trail and all steps?","Remover este anúncio?":"Remove this ad?","Remover este municÃpio do consórcio?":"Remove this municipality from the consortium?","Remover material?":"Remove material?","Remover referência?":"Remove reference?","Remover usuário da organização?":"Remove user from organization?","Remédios, alimentos, materiais... O cerrado oferece tudo.":"Medicines, food, materials... The cerrado offers everything.",Renomear:$1,"Renomear conversa":"Rename conversation","Replantio de Mangue":"Mangrove Replanting","Replantio de mangue":"Mangrove replanting","Replicar o modelo em outras serras do Brasil":"Replicate the model in other mountain ranges in Brazil","Report ID":"Report ID","Reportar erro":"Report error",Reprovado:H1,"Reprovado (pode refazer)":"Failed (can retake)",Reprovados:W1,Reprovações:"Failures",Reputação:"Reputation","Reputação Competitiva":"Competitive Reputation","Reputação Consolidada":"Consolidated Reputation","Reputação Consolidada OTAs":"Consolidated OTA Reputation","Reputação OTAs":"OTA Reputation","Reputação Pública":"Public Reputation","Reputação consolidada":"Consolidated reputation","Requer 2-3 horas de coleta":"Requires 2-3 hours of collection","Requer acesso Empresarial habilitado":"Requires enabled Enterprise access","Requerem atenção":"Require attention","Reservas naturais salvam espécies em extinção.":"Nature reserves save endangered species.","Reservatório natural de água doce em derretimento acelerado":"Natural freshwater reservoir in accelerated melting",Resetar:Q1,"Resistir e expandir o viveiro para toda a região":"Resist and expand the nursery throughout the region","Resolução:":"Resolution:","Resolve organização efetiva considerando modo demonstração:":"Resolve effective organization considering demo mode:","Resolveu agora, mas e aman
171hã?":"Resolved now, but what about tomorrow?",Resolvida:K1,Resolvido:Y1,Resolvidos:J1,Resort:X1,"Resp.: {{v0}}":"Resp.: {{v0}}","Responda algumas perguntas rápidas para que possamos recomendar cursos e trilhas que se encaixem perfeitamente no seu perfil.":"Answer a few quick questions so we can recommend courses and trails that perfectly fit your profile.","Responda todas as questões antes de enviar":"Answer all questions before submitting","Respondendo a":"Replying to",Responder:Z1,"Responsabilidades por tarefa":"Responsibilities by task",Responsável:"Person in Charge","Responsável alterado":"Person in charge changed","Responsável pelo plano":"Person in charge of the plan",Resposta:eL,"Resposta do aluno:":"Student's answer:","Resposta:":"Answer:","Respostas ({{v0}})":"Responses ({{v0}})","Respostas lidas em voz alta pelo ElevenLabs.":"Answers read aloud by ElevenLabs.","Respostas por voz ativadas":"Voice responses activated","Respostas por voz desativadas":"Voice responses deactivated",'Respostas são lidas em voz alta pelo ElevenLabs.\n- Sem markdown (sem **, ##, -, asteriscos ou itálicos)\n- Texto corrido, conversacional, parágrafos curtos\n- Enumerações naturais ("primeiro⦠segundo⦠terceiroâ¦") em vez de listas\n- Frases claras e diretas, prontas para narração':`Responses are read aloud by ElevenLabs. 172- No markdown (no **, ##, -, asterisks, or italics) 173- Continuous, conversational text, short paragraphs 174- Natural enumerations ("first⦠second⦠thirdâ¦") instead of lists 175- Clear and direct sentences, ready for narration`,'Respostas são lidas em voz alta pelo ElevenLabs. - Sem markdown (sem **, ##, -, asteriscos ou itálicos) - Texto corrido, conversacional, parágrafos curtos - Enumerações naturais ("primeiro⦠segundo⦠terceiroâ¦") em vez de listas - Frases claras e diretas, prontas para narração':'Answers are read aloud by ElevenLabs. - No markdown (no **, ##, -, asterisks, or italics) - Continuous, conversational text, short paragraphs - Natural enumerations ("first... second... third...") instead of lists - Clear and direct sentences, ready for narration',Restaurante:aL,Restaurar:oL,"Restaurar padrão":"Restore default","Restauração Ambiental":"Environmental Restoration",Restritivo:iL,"Restrição: Σ(peso_i) = 100% por pilar":"Constraint: Σ(weight_i) = 100% per pillar",Restrições:"Restrictions","Restrições estruturais, históricas ou socioeconômicas do território":"Structural, historical, or socioeconomic constraints of the territory",Resultado:tL,"Resultado Atual":"Current Result","Resultado Misto":"Mixed Outcome","Resultado da Importação":"Import Result","Resultado da Simulação":"Simulation Result","Resultado da auditoria":"Audit result","Resultado do Exame":"Exam Result","Resultado em modo teaser (pilares ofuscados + paywall)":"Result in teaser mode (obscured pillars + paywall)","Resultado em:":"Result in:",Resultados:rL,Resumo:sL,"Resumo + palavras-chave, Introdução, Contextualização do municÃpio, Metodologia, Análise por pilar (RA/OE/AO), Indicadores crÃticos, Recomendações, Plano de ação, Conclusão e Referências.":"Summary + keywords, Introduction, Contextualization of the municipality, Methodology, Analysis by pillar (RA/OE/AO), Critical indicators, Recommendations, Action plan, Conclusion and References.","Resumo de Acessos":"Access Summary","Resumo de {{n}} diagnóstico(s) empresarial(is)":"Summary of {{n}} business diagnosis(es)","Resumo de {{n}} diagnóstico(s) territorial(is)":"Summary of {{n}} territorial diagnosis(es)","Resumo detalhado dos projetos":"Detailed project summary","Resumo do Diagnóstico":"Diagnosis Summary","Resumo do documento (injetado nos relatórios via IA)":"Document summary (injected into reports via AI)","Resumo do documento (será injetado nos prompts de geração de relatórios)":"Document summary (will be injected into report generation prompts)","Resumo dos Treinamentos":"Training Summary","Resumo programático do curso":"Course syllabus summary","Resumo â":"Summary â","Resumo: 8 Fontes Oficiais Integradas":"Summary: 8 Integrated Official Sources","Retomando diagnóstico com dados prontos":"Resuming diagnosis with ready data","Retomar Diagnóstico":"Resume Diagnosis","Retorna um diagnóstico com notas por pilar (RA, OE, AO), bloqueios sistêmicos e interpretação IGMA.":"Returns a diagnosis with scores per pillar (RA, OE, AO), systemic blocks, and IGMA interpretation.","Retorno do investimento (ROI)":"Return on Investment (ROI)","Retrospectiva e melhoria contÃnua":"Retrospective and continuous improvement","Retrospectiva e planejamento do próximo PI":"Retrospective and planning for the next PI","Retry individual em caso de falha":"Individual retry on failure","Reunir a comunidade local para discutir os problemas":"Gather the local community to discu
175ss the problems",Reunião:"Meeting","Reuso de Ãgua":"Water Reuse",RevPAR:nL,"RevPAR Médio":"Average RevPAR","Revenue por Canal":"Revenue by Channel",Reverter:cL,"Reviews Online":"Online Reviews",Revisar:dL,"Revisar Alerta":"Review Alert","Revisar evidência":"Review evidence","Revisar trilhas adaptativas a cada novo cálculo de diagnóstico.":"Review adaptive trails with each new diagnosis calculation.","Revisar valor fixado":"Review fixed value","Revise a tabela abaixo antes de importar.":"Review the table below before importing.","Revise e edite questões existentes.":"Review and edit existing questions.","Revise os campos obrigatórios para salvar o destino.":"Review required fields to save destination.",'Revise os dados e clique em "Aprovar" ou "Rejeitar".':'Review the data and click "Approve" or "Reject".',"Revise os dados pré-preenchidos e confirme antes de prosseguir.":"Review pre-filled data and confirm before proceeding.","Revisitando diagnóstico concluÃdo":"Revisiting completed diagnosis","Revisão Manual":"Manual Review","Revisão das Questões":"Question Review","Revisão do Exame":"Exam Review","Revisão não encontrada":"Review not found","Revisão recomendada":"Recommended review","Revisão técnica do diagnóstico":"Technical review of the diagnosis","Revisões programadas baseadas na severidade":"Scheduled reviews based on severity","Revisões programadas: CrÃtico = 6 meses, Atenção = 12 meses, Adequado = 18 meses.":"Scheduled reviews: Critical = 6 months, Warning = 12 months, Adequate = 18 months.",Revogado:lL,"Revogado em":"Revoked on",Revogados:uL,Revogar:mL,"Revogar acesso?":"Revoke access?","Revogar certificado":"Revoke certificate","Rica em natureza e biodiversidade":"Rich in nature and biodiversity","Rifa surpresa de prêmios":"Surprise prize raffle","Rio limpinho! Os peixes voltaram! ð":"Clean river! The fish are back! ð","Rios e lagoas naturais":"Natural rivers and lagoons","Riqueza de curto prazo, ruÃna eterna.":"Short-term wealth, eternal ruin.","Rodada A (base)":"Round A (base)","Rodada B (comparação)":"Round B (comparison)","Rodada Criada":"Round Created",Rodadas:pL,"Rodadas de avaliação com nota final e classificação (Adequado, Atenção, CrÃtico).":"Assessment rounds with final grade and classification (Adequate, Attention, Critical).","Rodadas de avaliação dos destinos":"Destination assessment rounds","Rodadas de diagnóstico com resultados IGMA":"Diagnosis rounds with IGMA results","Rodado em {{date}}":"Run on {{date}}","Rodar todos":"Run all","RodÃzio de placas":"License plate rotation","Role até o final do documento para habilitar a aceitação":"Scroll to the end of the document to enable acceptance","Role até o final para habilitar o botão de aceitar.":"Scroll to the end to enable the accept button.","Romper o acordo e denunciar as violações":"Break the agreement and report violations",Rotas:gL,"Row Level Security (RLS) em todas as 40+ tabelas do banco de dados":"Row Level Security (RLS) across all 40+ database tables","Row Level Security: get_effective_org_id() em todas as queries":"Row Level Security: get_effective_org_id() in all queries","Rubrica de Avaliação":"Evaluation Rubric","Rubrica de avaliação":"Evaluation rubric",Rápidas:"Quick","Rápido e barato":"Fast and cheap","Régua oficial de classificação (5 nÃveis)":"Official classification scale (5 levels)","Réptil ameaçado por plástico e perda de habitat costeiro":"Reptile threatened by plastic and coastal habitat loss","Réptil endêmico que vive apenas em altitudes elevadas":"Endemic reptile that lives only at high altitudes","Réptil que ajuda a controlar populações de peixes":"Reptile that helps control fish populations",SAFe:hL,"SAFe (Scaled Agile Framework)":"SAFe (Scaled Agile Framework)",SAÃDE:"HEALTH","SE score_AO < 3.33 ENTÃO governance_block = TRUE â bloqueia todo o sistema. Sem governança operacional, nenhuma melhoria pode ser implementada.":"IF score_AO < 3.33 THEN governance_block = TRUE â blocks the entire system. Without operational governance, no improvement can be implemented.","SE score_OE melhora E score_RA piora simultaneamente ENTÃO externality_warning = TRUE. Detecta crescimento estrutural predatório ao meio ambiente.":"IF score_OE improves AND score_RA worsens simultaneously THEN externality_warning = TRUE. Detects predatory structural growth towards the environment.","SE score_RA < 3.33 ENTÃO ra_limitation = TRUE â bloqueia expansão de OE e marketing turÃstico. Fundamento: recursos ambientais degradados inviabilizam crescimento sustentável da infraestrutura.":"IF score_RA < 3.33 THEN ra_limitation = TRUE â blocks OE expansion and tourist marketing. Rationale: degraded environmental resources make sustainable infrastru
175cture growth unfeasible.","SE score_RA < 3.33 OU score_AO < 3.33 ENTÃO marketing_blocked = TRUE. Promoção de destino com base ambiental ou governança precárias gera dano reputacional.":"IF score_RA < 3.33 OR score_AO < 3.33 THEN marketing_blocked = TRUE. Promoting a destination with poor environmental basis or governance leads to reputational damage.",'SICONFI/STN: Despesas na função "Turismo" (código 23) no orçamento municipal.':'SICONFI/STN: Expenses in the "Tourism" function (code 23) in the municipal budget.',"SIDRA tab. 5938 (var. 37)":"SIDRA tab. 5938 (var. 37)","SIDRA tab. 5938 (var. 39)":"SIDRA tab. 5938 (var. 39)","SIDRA tab. 6579":"SIDRA tab. 6579","SISMAPA â Mapa do Turismo":"SISMAPA â Tourism Map",SISTUR:fL,"SISTUR AnalÃtico":"SISTUR AnalÃtico","SISTUR AnalÃtico (territorial)":"SISTUR Analytics (Territorial)","SISTUR EDU":"SISTUR EDU","SISTUR EDU (Prescrições)":"SISTUR EDU (Prescriptions)","SISTUR EDU â Plano de Capacitação":"SISTUR EDU â Training Plan","SISTUR Empresarial":"SISTUR Empresarial","SISTUR {{v0}}":"SISTUR {{v0}}","SISTUR â Falha no relatório":"SISTUR â Report failure","SISTUR â Glossário de Indicadores":"SISTUR â Indicator Glossary","SISTUR â Guia EDU":"SISTUR â EDU Guide","SISTUR â Manual de Diagnósticos":"SISTUR â Diagnostics Manual","SISTUR â Manual do Usuário":"SISTUR â User Manual","SISTUR â Relatório de Diagnóstico":"SISTUR â Diagnostic Report","SISTUR â Sistema Integrado de Suporte para Turismo em Regiões":"SISTUR â Integrated Support System for Tourism in Regions","SISTUR_Glossario_de_Indicadores.docx":"SISTUR_Indicator_Glossary.docx","SISTUR_Guia_EDU.docx":"SISTUR_EDU_Guide.docx","SISTUR_Manual_de_Diagnosticos.docx":"SISTUR_Diagnostics_Manual.docx","SISTUR_Manual_do_Usuario.docx":"SISTUR_User_Manual.docx","SSP + notÃcias regionais":"SSP + regional news",STABLE:vL,"STN / Tesouro Nacional":"STN / National Treasury","STN â Finanças Municipais":"STN â Municipal Finances","STN â Secretaria do Tesouro Nacional":"STN â National Treasury Secretariat","STN: gestão fiscal municipal":"STN: municipal fiscal management","Sabores do Cerrado":"Flavors of the Cerrado","Sabores do Mar":"Flavors of the Sea","Sabotar os equipamentos para atrasar a operação":"Sabotage the equipment to delay the operation",Sair:bL,"Sair e voltar ao login":"Log out and return to login","Sala 12 ou online":"Room 12 or online","Sala criada com sucesso!":"Room created successfully!","Salas de Aula":"Classrooms",Saldo:AL,"Saldo visÃvel":"Visible balance","Salvamento e retomada de sessões de jogo":"Saving and resuming game sessions","Salvando rascunhoâ¦":"Saving draftâ¦","Salvando...":"Saving...","Salvandoâ¦":"Savingâ¦",Salvar:yL,"Salvar Alterações":"Save Changes","Salvar Correção":"Save Correction","Salvar Personalização":"Save Customization","Salvar Todos":"Save All","Salvar cenário":"Save scenario","Salvar como PDF":"Save as PDF","Salvar contexto":"Save context","Salvar estrutura":"Save structure","Salvar pesos":"Save weights","Saneamento, Desmatamento, Ãreas protegidas":"Sanitation, Deforestation, Protected areas","Santuário Azul":"Blue Sanctuary","Satisfação do Hóspede":"Guest Satisfaction",Saudável:"Healthy",Sazonalidade:SL,"Sazonalidade Mensal":"Monthly Seasonality","Sazonalidade Tarifária":"Tariff Seasonality","Sazonalidade não pôde ser calculada â fontes upstream ausentes.":"Seasonality could not be calculated â upstream sources missing.","Sazonalidade tarifária derivada":"Derived tariff seasonality","Sazonalidade: fontes upstream ausentes â rode Demanda/Eventos/Preço primeiro":"Seasonality: upstream sources missing â run Demand/Events/Price first",Saúde:"Health","Saúde Financeira":"Financial Health","Saúde comunitária!":"Community health!","Saúde das Ingestões Oficiais":"Official Data Ingestion Health","Saúde do Entorno":"Surroundings Health","Saúde e mortalidade":"Health and mortality","Saúde para toda comunidade!":"Health for the whole community!","Saúde para todos":"Health for all","Saúde pública é prioridade.":"Public health is a priority.","Saúde restante:":"Remaining health:",Score:EL,"Score 34% â 66% â Atenção (amarelo)":"Score 34% â 66% â Warning (yellow)","Score Final":"Final Score","Score Médio (%)":"Average Score (%)","Score Normalizado":"Normalized Score","Score Telecom":"Telecom Score","Score aumentou":"Score increased","Score de Segurança":"Security Score","Score diminuiu":"Score decreased","Score do Pilar":"Pillar Score","Score do empreendimento vs. score do municÃpio no mesmo pilar sistêmico (RA/OE/AO). Î positivo indica que o empreendimento está acima do entorno.":"Enterprise score vs. municipality score in the same systemic pillar (RA/OE/AO). Positive Î indicates that the enterprise is above the surroundings.","Score estável":"Score stable","Score geral por pilar (RA, OE, AO)":"Overall score per pillar (RA, OE, AO)","Score geral:":"Overall score:","Score à Peso":"Score à Weight","Score ⤠33%":"Score ⤠33%","Score ⤠33% â CrÃtico (vermelho)":"Score ⤠33% â Critical (red)","Score ⥠67%":"Score ⥠67%","Scores RA, OE, AO com gauges visuais":"RA, OE, AO scores with visual gauges","Scores RA/OE/AO + Flags + Issues + Prescrições":"RA/OE/AO Scores + Flags + Issues + Prescriptions","Scores atuais dos pilares:":"Current pillar scores:","Scores e gargalos gerados":"Scores and bottlenecks generated","Scores por Destino:":"Scores by Destination:","Scores por Indicador":"Scores by Indicator","Scores por Pilar":"Scores by Pillar","Scores são normalizados para a escala 0-100 por pilar.":"Scores are normalized to a 0-100 scale per pillar.","Scraping inteligente do portal oficial para dados mais recentes":"Smart scraping of the official portal for the latest data",Scrum:CL,"Se a cobrança mensal do cartão for recusada, o acesso aos recursos do plano é suspenso até o pagamento ser regularizado em Gerenciar conta.":"If the monthly card charge is declined, access to plan features is suspended until payment is regularized in Manage Account.","Se aprovado, o conteúdo será produzido e você será notificado":"If approved, the content will be produced and you will be notified","Se desligada, a regra é mantida no histórico mas não é usada nos próximos relatórios.":"If disabled, the rule is kept in the history but is not used in future reports.","Se este hotel faz parte de uma rede com unidades em outros municÃpios, selecione (ou crie) a marca. A análise comparativa da rede usará esta associação para confrontar desempenho da marca em diferentes destinos.":"If this hotel is part of a chain with units in other municipalities, select (or create) the brand. The network's comparative analysis will use this association to compare brand performance in different destinations.","Se não sabe qual escolher, converse com seu gestor ou comece com EDU para explorar.":"If you don't know
175which one to choose, talk to your manager or start with EDU to explore.","Se não selecionar, estes itens permanecerão sem vÃnculo ao diagnóstico.":"If you do not select one, these items will remain unlinked to the diagnosis.","Se o pilar AO (governança/operações) está crÃtico, não há capacidade de gestão para implementar melhorias. O sistema bloqueia expansão de OE até a governança melhorar.":"If the AO (governance/operations) pillar is critical, there is no management capacity to implement improvements. The system blocks OE expansion until governance improves.","Se o pilar RA (Relações Ambientais) está crÃtico, o sistema bloqueia capacitações e investimentos em OE (infraestrutura). Não adianta construir hotéis se o ambiente está degradado.":"If the RA (Environmental Relations) pillar is critical, the system blocks training and investments in OE (infrastructure). There's no point in building hotels if the environment is degraded.","Se qualquer pilar cair a zero, você perde!":"If any pillar drops to zero, you lose!","Se recebeu um código de uma organização, insira para ingressar automaticamente.":"If you received a code from an organization, enter it to join automatically.","Se sua saúde chegar a zero, a missão falha!":"If your health reaches zero, the mission fails!","Se um professor compartilhou um código ou link de convite com você, insira abaixo.":"If a professor shared a code or invitation link with you, please enter it below.","Se você foi convidado por um professor, informe o código (opcional)":"If you were invited by a professor, enter the code (optional)","Se você foi convidado por um professor, insira o código de referral durante o cadastro. Isso vincula você ao professor e permite que ele acompanhe seu progresso e atribua conteúdo.":"If you were invited by a professor, enter the referral code during registration. This links you to the professor and allows them to track your progress and assign content.","Se você foi convidado por um professor, use o código de referral para se vincular a ele e participar de turmas.":"If you were invited by a professor, use the referral code to link to them and participate in classes.","Se você não encontrou a resposta que procurava, entre em contato com nossa equipe de suporte através do email":"If you didn't find the answer you were looking for, please contact our support team via email","Se você recebeu um código de convite de uma organização, insira abaixo para ingressar":"If you received an invitation code from an organization, enter it below to join","Secretaria do Tesouro Nacional (STN).":"National Treasury Secretariat (STN).","Secretarias de Turismo e órgãos governamentais":"Tourism Secretariats and governmental bodies","Secretarias de Turismo estruturadas, destinos em fase de desenvolvimento":"Structured Tourism Secretariats, destinations in development phase","Secrets necessários":"Required Secrets","Secretários, diretores e gestores de turismo":"Secretaries, directors, and tourism managers","Seguidores (est.)":"Followers (est.)","Segunda iteração de desenvolvimento":"Second development iteration","Segundo Mario Beni, as Relações Ambientais (RA) são a base do sistema turÃstico. Se o ambiente está degradado, não adianta investir em infraestrutura (OE). Por isso, quando RA está crÃtico, o sistema bloqueia capacitações de OE até que as questões ambientais sejam resolvidas.":"According to Mario Beni, Environmental Relations (RA) are the basis of the tourism system. If the environment is degraded, there's no point in investing in infrastructure (OE). Therefore, when RA is critical, the system blocks OE training until environmental issues are resolved.","Segundo Mario Beni, sem um ambiente saudável e recursos naturais preservados, não há turismo sustentável. Por isso, RA sempre tem prioridade sobre os demais pilares.":"According to Mario Beni, without a healthy environment and preserved natural resources, there is no sustainable tourism. Therefore, RA always has priority over the other pillars.",Segurança:"Security","Segurança TurÃstica":"Tourist Security","Segurança TurÃstica â fontes públicas (Auto)":"Tourism Security â public sources (Auto)","Segurança ao Turista (notÃcias e oficial)":"Tourist Safety (news and official)","Segurança turÃstica analisada":"Tourist security analyzed","Segurança, Infraestrutura: peso 5-6x maior":"Security, Infrastru
175cture: 5-6x greater weight","Seguro de Responsabilidade Civil":"Civil Liability Insurance","Seguro por padrão":"Secure by default","Segurou por agora, mas não é sustentável...":"Held on for now, but it's not sustainable...","Seja especÃfico nas perguntas para respostas mais úteis.":"Be specific in your questions for more useful answers.","Seja o primeiro a criar um post!":"Be the first to create a post!",Selecionar:TL,"Selecionar Aluno":"Select Student","Selecionar Arquivo CSV":"Select CSV File","Selecionar Base do Projeto":"Select Project Base","Selecionar CSV":"Select CSV","Selecionar arquivo":"Select file","Selecionar destino":"Select destination","Selecionar diagnóstico":"Select diagnosis","Selecionar existente":"Select existing","Selecionar responsável...":"Select responsible person...","Selecionar todas ({{v0}} ações)":"Select all ({{v0}} actions)","Selecionar todos":"Select all","Selecionar tudo":"Select all","Selecionar usuário":"Select user","Selecionar...":"Select...",Selecione:PL,"Selecione a resposta correta":"Select the correct answer","Selecione ao menos um aluno-alvo":"Select at least one target student","Selecione ao menos uma sugestão.":"Select at least one suggestion.","Selecione as ações identificadas pelo diagnóstico que deseja incluir como tarefas no novo projeto. Após selecionar, você poderá configurar os detalhes do projeto.":"Select the actions identified by the diagnosis that you want to include as tasks in the new project. After selecting, you will be able to configure the project details.","Selecione as questões para compor uma nova prova":"Select the questions to compose a new exam","Selecione até 5 destinos para comparar os Ãndices dos pilares":"Select up to 5 destinations to compare pillar indices","Selecione diagnósticos, treinamentos ou projetos para que o Professor Beni tenha contexto sobre suas perguntas.":"Select diagnoses, trainings or projects so that Professor Beni has context for your questions.","Selecione duas rodadas diferentes.":"Select two different rounds.",'Selecione e clique "Validar" para confirmar este dado':'Select and click "Validate" to confirm this data',"Selecione entre AnalÃtico (gestão de destinos) ou EDU (educação e capacitação).":"Select between Analytical (destination management) or EDU (education and training).","Selecione indicadores para gerar recomendações personalizadas":"Select indicators to generate personalized recommendations","Selecione mais 1 destino para iniciar a comparação":"Select 1 more destination to start the comparison","Selecione na lista abaixo":"Select from the list below","Selecione o Diagnóstico":"Select the Diagnosis","Selecione o conteúdo do catálogo ou crie conteúdo customizado.":"Select catalog content or create customized content.","Selecione o curso para configurar as regras de exame":"Select the course to configure exam rules","Selecione o estado":"Select the state","Selecione o formato desejado (PDF, visualização em tela).":"Select the desired format (PDF, on-screen viewing).","Selecione o indicador.":"Select the indicator.","Selecione o nÃvel...":"Select the level...","Selecione o papel":"Select role","Selecione o pilar":"Select the pillar","Selecione o pilar.":"Select the pillar.","Selecione o sistema":"Select system","Selecione o tipo de acesso":"Select the access type","Selecione o tipo de diagnóstico que deseja realizar.":"Select the type of diagnosis you want to perform.","Selecione organização e nÃvel":"Select organization and level",'Selecione os alunos e clique em "Matricular".':'Select students and click "Enroll".',"Selecione os cursos/lives recomendados e crie uma trilha para acompanhar seu progresso.":"Select the recommended courses/live sessions and create a learning path to track your progress.","Selecione os indicadores IGMA que representam desafios ou áreas de melhoria do seu destino. O sistema irá recomendar cursos e lives mais relevantes com base no mapeamento IGMAâEDU.":"Select the IGMA indicators that represent challenges or areas for improvement in your destination. The system will recommend the most relevant courses and lives based on the IGMAâEDU mapping.","Selecione os indicadores que serão avalia
175dos nesta rodada.":"Select the indicators to be evaluated in this round.","Selecione os temas que mais te atraem":"Select the topics that interest you most","Selecione ou crie um destino":"Select or create a destination","Selecione ou pesquise um destino":"Select or search for a destination","Selecione para gerenciar o pacote contratado.":"Select to manage the contracted package.","Selecione pelo menos 2 destinos para comparar":"Select at least 2 destinations to compare","Selecione pelo menos um indicador":"Select at least one indicator","Selecione pelo menos um item para criar o projeto":"Select at least one item to create the project","Selecione pelo menos uma questão":"Select at least one question","Selecione questões ao lado":"Select questions on the side","Selecione seu perfil":"Select your profile","Selecione seu perfil educacional":"Select your educational profile","Selecione seu perfil no SISTUR EDU":"Select your profile in SISTUR EDU","Selecione seus pilares de interesse (RA, OE, AO).":"Select your pillars of interest (RA, OE, AO).","Selecione todos que se aplicam":"Select all that apply","Selecione um Diagnóstico":"Select a Diagnosis","Selecione um arquivo de imagem":"Select an image file","Selecione um curso":"Select a course","Selecione um curso LMS primeiro":"Select an LMS course first","Selecione um curso...":"Select a course...","Selecione um destino":"Select a destination","Selecione um destino para visualizar sua mandala sistêmica.":"Select a destination to view its systemic mandala.","Selecione um diagnóstico calculado":"Select a calculated diagnosis",'Selecione um diagnóstico calculado acima e clique em "Gerar Relatório" para criar um plano de desenvolvimento turÃstico personalizado com a Mente Sistur.':'Select a calculated diagnostic above and click "Generate Report" to create a personalized tourism development plan with Mente Sistur.',"Selecione um diagnóstico calculado para gerar um plano de desenvolvimento turÃstico personalizado":"Select a calculated diagnosis to generate a customized tourism development plan","Selecione um indicador":"Select an indicator","Selecione um motivo":"Select a reason","Selecione um ou mais pilares":"Select one or more pillars","Selecione um relatório da lista para visualizar":"Select a report from the list to view","Selecione um template de e-mail":"Select an email template","Selecione um template...":"Select a template...","Selecione um treinamento":"Select a training","Selecione um usuário":"Select a user","Selecione um usuário para adicionar a esta organização":"Select a user to add to this organization","Selecione um usuário...":"Select a user...","Selecione uma categoria":"Select a category","Selecione uma conversa":"Select a conversation","Selecione uma entrada":"Select an entry","Selecione uma entrada na lista ou clique no botão abaixo para adicionar uma nova regra.":"Select an entry from the list or click the button below to add a new rule.","Selecione uma marca existente ou crie uma nova":"Select an existing brand or create a new one","Selecione uma opção válida":"Select a valid option","Selecione uma organização":"Select an organization","Selecione uma organização para ver seus usuários":"Select an organization to view its users","Selecione uma organização.":"Select an organization.","Selecione uma organização...":"Select an organization...","Selecione uma prova":"Select an exam","Selecione uma sala para ver o progresso consolidado da turma.":"Select a room to view consolidated class progress.","Selecione uma trilha":"Select a learning path","Selecione...":"Select...","Selecioneâ¦":"Selectâ¦",Seleção:"Selection","Seleção do Destino TurÃstico":"Tourist Destination Selection","Seleção: AnalÃtico ou EDU + Role + Organização":"Selection: Analytical or EDU + Role + Organization","Selfies e fotos pessoais":"Selfies and personal photos","Selo Turismo Responsável":"Responsible Tourism Seal","Selos ambientais ativos":"Active environmental certifications","Sem Licença":"Without License","Sem a caatinga, a erosão destruiu terras férteis. Você lidera um esforço de recuperação, mas a comunidade desconfia.":"Without the caatinga, erosion destroyed fertile lands. You lead a recovery effort, but the community is suspicious.","Sem acesso":"No access","Sem aeroporto associado":"No associated airport","Sem aeroporto no municÃpio":"No airport in the municipality","Sem alertas":"No alerts","Sem alunos matriculados nesta sala.":"No students enrolled in this classroom.","Sem análise de tendências históricas":"Without historical trend anal
175ysis","Sem ação decisiva, o cerrado ao redor continua sendo desmatado. A área protegida se torna uma ilha verde isolada.":"Without decisive action, the surrounding cerrado continues to be deforested. The protected area becomes an isolated green island.","Sem coleta registrada":"No collection recorded","Sem comparação":"No comparison","Sem curso":"No course","Sem dados":"No data","Sem dados ainda.":"No data yet.","Sem dados disponÃveis":"No data available","Sem dados em":"No data in","Sem dados em {{year}}":"No data in {{year}}","Sem dados retornados":"No data returned","Sem dados suficientes.":"Insufficient data.","Sem descrição":"No description","Sem diagnóstico calculado para esta organização.":"No diagnostic assessment calculated for this organization.","Sem eventos ainda. Conclua cursos e etapas para começar.":"No events yet. Complete courses and steps to get started.","Sem fase":"No phase","Sem fonte automática disponÃvel â atualize periodicamente para manter a confiabilidade.":"No automatic source available â update periodically to maintain reliability.","Sem gatilho":"No trigger","Sem gestão â Não investir em infraestrutura":"No management â Do not invest in infrastructure","Sem histórico.":"No history.","Sem indicadores comparáveis entre as rodadas selecionadas.":"No comparable indicators between the selected rounds.","Sem infraestrutura, os moradores estão abandonando a cidade!":"Without infrastructure, residents are abandoning the city!","Sem intermediários, a comunidade fica com todo o lucro! Modelo replicado em todo o cerrado.":"Without intermediaries, the community keeps all the profit! Model replicated throughout the cerrado.","Sem lei, a proteção depende de vontade. E vontade pode enfraquecer.":"Without law, protection depends on will. And will can weaken.","Sem liderança, tudo desmorona.":"Without leadership, everything collapses.","Sem nenhuma organização, o caos tomou conta!":"Without any organization, chaos took over!","Sem nome":"No name","Sem nome do empreendimento para buscar CNPJ":"No enterprise name to search CNPJ","Sem nÃvel":"No level","Sem nÃvel definido":"No level defined","Sem organização":"No organization","Sem organização, estruturas entraram em colapso!":"Without organization, structures collapsed!","Sem organização, muitos voltam aos agrotóxicos por pressão econômica.":"Without organization, many return to pesticides due to economic pressure.","Sem pasta":"No folder","Sem permissão para salvar cenários nesta organização.":"No permission to save scenarios in this organization.","Sem prazo":"No deadline","Sem queimar lenha, a caatinga pode se regenerar!":"Without burning firewood, the caatinga can regenerate!","Sem rankings públicos entre municÃpios; o Ãndice I-SISTUR é apenas interno.":"No public rankings among municipalities; the I-SISTUR index is internal only.","Sem rankings:":"No rankings:","Sem reciclagem, o lixo cresce.":"Without recycling, waste grows.","Sem recuperação, a serra se degrada permanentemente.":"Without recovery, the mountain range permanently degrades.","Sem registros.":"No records.","Sem regra especÃfica â exibido com até 2 casas decimais.":"No specific rule â displayed with up to 2 decimal places.","Sem responsável":"No responsible party","Sem resposta":"No answer","Sem resultados":"No results","Sem sinal forte: manter diária":"No strong signal: keep daily rate","Sem usuário autenticado":"No authenticated user","Sem usuários.":"No users.","Sem vigilância ativa, os navios continuam invadindo esporadicamente.":"Without active surveillance, ships continue to sporadically invade.","Sem você, a floresta fica sem defesa. Os madeireiros avançam sem parar.":"Without you, the forest is defenseless. Loggers advance non-stop.","Sem árvores, o solo não segura.":"Without trees, the soil doesn't hold.","Semente de Futuro":"Seed of Future","Sementes de Esperança":"Seeds of Hope","Sementes nativas são tesouros do cerrado.":"Native seeds are treasures of the cerrado.","Sementes viajam pelo vento e criam novas florestas.":"Seeds travel by wind and create new forests.",Semântica:"Semantics",Senha:RL,"Senha *":"Password *","Senha alterada com sucesso!":"Password changed successfully!","Senha inicial (mÃnimo 6 caracteres)":"Initial password (minimum 6 characters)",Sensibilização:"Awareness",Sentimento:xL,"Separe os mercados por vÃrgula":"Separate markets by comma","Serra AcessÃvel":"Accessible Mountain Range","Serra da Mantiqueira":"Mantiqueira Mountain Range","Sertão Educador":"Educating Sertão","Sertão Elétrico":"Electric Sertão","Servidor de autenticação indisponÃvel":"Authentication server unavailable","Serviço de Fila":"Queue Service",Serviços:"Services","Serviços TurÃsticos":"Tourism Services","Serviços turÃsticos registrados":"Registered tourism services","Serão enviados {{v0}} e-mail(s) individualmente":"{{v0}} email(s) will be sent individually","Sessão excluÃda!":"Session deleted!",Sessões:"Sessions","Sessões Salvas ({{v0}})":"Saved Sessions ({{v0}})","Sessões são salvas automaticamente.":"Sessions are saved automatically.",Set:"Set","Setor Público":"Public Sector","Seu Perfil":"Your Profile",'Seu bar faz sucesso, mas gera mais lixo na praia. Tartarugas marinhas não conseguem mais desovar por c
175ausa das luzes e do barulho. Dona Carmem, pescadora de 70 anos, te confronta: "Você veio ajudar ou destruir?"':'Your bar is successful, but generates more trash on the beach. Sea turtles can no longer lay eggs due to the lights and noise. Dona Carmem, a 70-year-old fisherwoman, confronts you: "Did you come to help or destroy?"',"Seu municÃpio será o lÃder do consórcio. Você poderá convidar outros municÃpios em seguida.":"Your municipality will be the leader of the consortium. You can then invite other municipalities.","Seu navegador não suporta reconhecimento de voz":"Your browser does not support voice recognition","Seu nome":"Your name","Seu nome completo":"Your full name","Seu nome e avatar são visÃveis para todos":"Your name and avatar are visible to everyone","Seu perÃodo de avaliação expirou":"Your trial period has expired","Seu perÃodo de avaliação expirou.":"Your trial period has expired.","Seu progresso na trilha":"Your learning path progress","Seu trabalho transformou a região! A floresta se recupera, a biodiversidade retorna, e a comunidade vive em harmonia com o meio ambiente. Você se tornou uma referência em conservação ambiental. A floresta amazônica, patrimônio da humanidade, tem um futuro mais esperançoso graças à s suas escolhas.":"Your work has transformed the region! The forest recovers, biodiversity returns, and the community lives in harmony with the environment. You have become a reference in environmental conservation. The Amazon rainforest, a heritage of humanity, has a more hopeful future thanks to your choices.","Seu valor foi preservado. Compare com o que foi encontrado online e escolha qual manter.":"Your value has been preserved. Compare with what was found online and choose which to keep.","Seu valor:":"Your value:","Seus diagnósticos:":"Your diagnoses:","Seus relatórios:":"Your reports:",Severidade:wL,"Severidade dos pilares":"Pillar Severity","Seções incluem: resumo executivo, scores por pilar, indicadores detalhados.":"Sections include: executive summary, pillar scores, detailed indicators.","Share %":"Share %","Share:":"Share:",ShieldAlert:IL,"Siga o fluxo para criar uma nova avaliação":"Follow the flow to create a new evaluation",Sim:DL,"Sim (1) ou Não (0)":"Yes (1) or No (0)","Sim ou Não":"Yes or No","Sim! Os 22 indicadores Empresarial foram mapeados para os três pilares (RA, OE, AO) da teoria sistêmica de Mario Beni. Indicadores de sustentabilidade pertencem ao RA, infraestrutura ao OE, e operações ao AO. As mesmas 6 regras IGMA são aplicadas, e 6 indicadores (NPS, Reviews, Treinamento, Emprego Local, Compras Locais, Certificações) são compartilhados entre módulos.":"Yes! The 22 Business indicators were mapped to the three pillars (RA, OE, AO) of Mario Beni's systemic theory. Sustainability indicators belong to RA, infrastructure to OE, and operations to AO. The same 6 IGMA rules are applied, and 6 indicators (NPS, Reviews, Training, Local Employment, Local Purchases, Certifications) are shared across modules.","Sim! Todo o conteúdo educacional está disponÃvel 24/7. Você pode pausar e retomar de onde parou a qualquer momento. Seu progresso é salvo automaticamente.":"Yes! All educational content is available 24/7. You can pause and resume from where you left off at any time. Your progress is saved automatically.","Sim, adicionar dados":"Yes, add data","Sim, voltar para edição":"Yes, return to editing","Sim. A troca é imediata e o valor é ajustado proporcionalmente na próxima fatura.":"Yes. The exchange is immediate and the amount is adjusted proportionally on the next invoice.","Sim/Não (1 = sim, 0 = não).":"Yes/No (1 = yes, 0 = no).",Simulador:OL,"Simulador de Indicadores":"Indicator Simulator","Simular Indicador":"Simulate Indicator","Simulação de cenários":"Scenario simulation","Simulação local: ajuste os indicadores para estimar o efeito no Ãndice de cada pilar. Nada é salvo e o diagnóstico oficial permanece inalterado.":"Local simulation: adjust indicators to estimate the effect on each pillar's index. Nothing is saved and the official diagnosis remains unchanged.","Simulações de cenários futuros":"Future scenario simulations","Simule o cálculo de normalização de indicadores":"Simulate the normalization calculation of indicators","Simule o cálculo de normalização de indicadores SISTUR":"Simulate SISTUR indicator normalization calculation","Simule o
175impacto de um valor em um indicador especÃfico":"Simulate the impact of a value on a specific indicator","Simule valores e veja o impacto nos pilares":"Simulate values and see the impact on the pillars","Sinais Públicos de Sustentabilidade":"Public Signs of Sustainability","Sinais de Demanda e Interesse (Trends)":"Signs of Demand and Interest (Trends)","Sinais de Sustentabilidade â fontes públicas (Auto)":"Sustainability Signals â public sources (Auto)","Sinais de sustentabilidade analisados":"Sustainability signs analyzed","Sinais negativos":"Negative signs","Sinais positivos":"Positive signs","Sinais públicos de segurança: notÃcias, presença de polÃcia turÃstica e alertas ativos":"Public safety signs: news, presence of tourist police, and active alerts","Sinaliza risco de overtourism quando excede limites da capacidade de carga.":"Signals overtourism risk when exceeding carrying capacity limits.",Sinalização:"Signage","Sinalização de dependência":"Dependence signaling","Sinalização em Braille":"Braille Signage","Sinalização turÃstica":"Tourism signage","Sincronizando registro de testes...":"Synchronizing test log...","Sincronizando...":"Synchronizing...",Sincronizar:ML,"Sincronizar Testes":"Sync Tests",Sincronização:"Synchronization","Sincronização automática diária de ADR, RevPAR, ocupação e demais KPIs operacionais. Substitui o CSV manual quando ativo.":"Automatic daily synchronization of ADR, RevPAR, occupancy, and other operational KPIs. Replaces manual CSV when active.","Sincronização disparada.":"Synchronization triggered.","Sincronização iniciada!":"Synchronization started!","Sistema Integrado de Gestão do Turismo":"Integrated Tourism Management System","Sistema Operacional":"Operating System","Sistema Saudável":"Healthy System","Sistema busca automaticamente dados de fontes públicas nacionais, explicitando fonte, ano e nÃvel de confiança.":"System automatically searches for data from national public sources, specifying source, year, and confidence level.","Sistema de Acesso *":"Access System *","Sistema de Inteligência Territorial":"Territorial Intelligence System","Sistema de Inteligência Territorial para Sustentabilidade TurÃstica":"Territorial Intelligence System for Tourism Sustainability","Sistema de Inteligência Territorial para o Turismo":"Territorial Intelligence System for Tourism","Sistema de Inteligência Territorial para o Turismo (SISTUR)":"Territorial Intelligence System for Tourism (SISTUR)","Sistema de Referral":"Referral System","Sistema de Turismo Sustentável":"Sustainable Tourism System","Sistema de denúncia e moderação de conteúdo configurável por organização":"Content reporting and moderation system configurable per organization","Sistema de exames com anti-cheat: fullscreen enforcement, tab-switch detection, time limits":"Exam system with anti-cheat: fullscreen enforcement, tab-switch detection, time limits","Sistema de mensagens entre alunos e professores":"Messaging system between students and teachers","Sistema de prescrição determinÃstica de capacitação":"Deterministic training prescription system","Sistema de prescrição determinÃstica: mapeamento indicador â capacitação":"Deterministic prescription system: indicator â training mapping","Sistema educacional integrado ao diagnóstico.":"Educational system integrated with diagnosis.","Sistema onde tudo é reutilizado e reciclado":"System where everything is reused and recycled","Sistema unificado de notificações":"Unified notification system","Sistema visual de fluxo contÃnuo de trabalho":"Visual continuous workflow system",Site:NL,"Site (opcional)":"Website (optional)","Site Oficial":"Official Website","Site oficial + certificadoras":"Official website + certifiers",Situação:"Situation","Situação:":"Situation:","Smoke test":"Smoke test","Snapshot imutável de dados, fontes e confiabilidade por diagnóstico":"Immutable snapshot of data, sources, and reliability per diagnosis","Sob Demanda":"On Demand","Sob consulta":"Upon request","Sobre o CADASTUR":"About CADASTUR","Sobre o Professor Beni":"About Professor Beni","Sobre o Professor e tópicos":"About the Professor and topics","Sobre o SISTUR":"About SISTUR","Sobre o diagnóstico":"About the diagnosis","Sobre os NÃveis de Diagnóstico":"About Diagnosis
175Levels","Sobre um indicador":"About an indicator","Sobre um pilar":"About a pillar","Sobreposições de Peso por Indicador":"Weight Overrides by Indicator",Social:zL,"Social Turismo":"Social Turismo",Socioeconômica:"Socioeconomic",Socioeconômico:"Socioeconomic","Socorrer o lobo e denunciar a queimada ilegal":"Rescue the wolf and report illegal burning","Sol do Sertão":"Sun of the Sertão","Solar, eólica e hidrelétrica são fontes renováveis de energia.":"Solar, wind, and hydroelectric are renewable energy sources.","Solicitado em":"Requested on","Solicitar Acesso":"Request Access","Solicitação Recebida":"Request Received","Solicitação criada! Gerando conteúdo...":"Request created! Generating content...","Solicitação do usuário":"User request","Solicitação enviada com sucesso!":"Request sent successfully!","Solicitação enviada! Aguarde aprovação do administrador.":"Request sent! Await administrator approval.","Solicitação rejeitada":"Request rejected","Solicite conteúdos personalizados para suas necessidades":"Request content tailored to your needs","Solicite dados à associação hoteleira local, ABIH regional ou Secretaria de Turismo. Média anual da ocupação dos meios de hospedagem.":"Request data from the local hotel association, regional ABIH or Tourism Secretariat. Annual average occupancy rate of accommodation facilities.","Solte o arquivo aqui para importar":"Drop the file here to import","Solte tarefas aqui":"Drop tasks here",Solução:"Solution","Solução cara e temporária...":"Expensive and temporary solution...","Soma atual:":"Current sum:","Soma deve totalizar 100%":"Sum must total 100%","Soma dos pesos":"Sum of weights","Soma dos pesos é zero â não é possÃvel normalizar":"Sum of weights is zero â cannot normalize","Soma total":"Total sum",'Some o total de avaliações em todas as plataformas: Google Maps + TripAdvisor + Booking + Expedia. A "Busca Automática" também pode calcular isso.':'Sum the total reviews across all platforms: Google Maps + TripAdvisor + Booking + Expedia. The "Automatic Search" can also calculate this.',"Somente admins podem adicionar/remover":"Only admins can add/remove","Somente alunos vinculados via referral aparecem na lista.":"Only students linked via referral appear on the list.","Somente meus":"Only mine","Somente você terá acesso a este diagnóstico.":"Only you will have access to this diagnosis.","Sou o Professor Mario Beni. Posso ajudá-lo a entender a teoria sistêmica do turismo e como ela se aplica ao seu território.":"I am Professor Mario Beni. I can help you understand the systemic theory of tourism and how it applies to your territory.","Spam e memes":"Spam and memes","Spam na internet":"Internet spam","Spam ou propaganda":"Spam or advertising","Sprint 1":"Sprint 1","Sprint 2":"Sprint 2","Sprint 3":"Sprint 3","Sprint 4":"Sprint 4","Sprint Execution":"Sprint Execution","Sprint Planning":"Sprint Planning","Sprint Retrospective":"Sprint Retrospective","Sprint Review":"Sprint Review","Sprints com entregas incrementais":"Sprints with incremental deliveries",Stage:jL,Status:kL,"Status atual por função":"Current status by role","Status canônico (CRÃTICO/ATENÃÃO/ADEQUADO/FORTE/EXCELENTE) e padrão BRL.":"Canonical status (CRITICAL/ATTENTION/ADEQUATE/STRONG/EXCELLENT) and BRL standard.","Status da Conexão":"Connection Status","Status das MatrÃculas":"Enrollment Status","Status determinÃstico (Adequado/Atenção/CrÃtico)":"Deterministic Status (Adequate/Attention/Critical)","Status do Fluxo":"Workflow Status","Status do lead atualizado.":"Lead status updated.","Status é calculado automaticamente com base no score normalizado. Nunca é editável manualmente.":"Status is calculated automatically based on the normalized score. It is never manually editable.","Status:":"Status:","Stays (API Key)":"Stays (API Key)",Storage:_L,"Story Points":"Story Points",Streak:qL,"Streak atual:":"Current streak:",Streaks:LL,"Streaks ativos":"Active streaks","Sua arrogância destruiu a última chance de cooperação.":"Your arrogance destroyed the last chance for cooperation.","Sua assinatura está ativa. Use Gerenciar conta para ajustar usuários, forma de pagamento e faturas.":"Your subscription is active. Use Manage Account to adjust users, payment method, and invoices.","Sua avaliação":"Your rating","Sua conta está bloqueada. Entre em contato com o administrador da sua organização para restabelecer o acesso.":"Your account is locked. Contact your organization's administrator to restore access.","Sua conta está bloqueada. Entre em contato com o administrador da sua organização.":"Your account is locked. Contact your organization's administrator.","Sua diária (média)":"Your daily rate (average)","Sua identidade será exibida em posts públicos":"Your identity will be displayed in public posts","Sua investigação revela que três grandes hotéis despejam esgoto sem tratamento no oceano. Os recifes de coral estão morrendo e peixes desaparecendo.":"Your investigation reveals that three large hotels dump untreated sewage into the ocean. Coral reefs are dying and fish are disappearing.","Sua investigação revela uma rede organizada de extração ilegal de madeira. Você encontra um acampamento oculto com equipamentos pesa
175dos. De repente, ouve vozes se aproximando.":"Your investigation reveals an organized network of illegal logging. You find a hidden camp with heavy equipment. Suddenly, you hear voices approaching.","Sua nota (último snapshot)":"Your score (latest snapshot)","Sua omissão e ganância permitiram a destruição total. O cerrado virou cinzas, os rios secaram e as comunidades tradicionais perderam tudo. Onde havia vida, só resta pó e arrependimento. O coração do Brasil parou de bater.":"Your omission and greed allowed total destruction. The cerrado turned to ashes, the rivers dried up, and traditional communities lost everything. Where there was life, only dust and regret remain. The heart of Brazil stopped beating.","Sua opinião é importante para melhorar o SISTUR":"Your opinion is important to improve SISTUR","Sua organização ainda não tem acesso ao diagnóstico enterprise. Fluxo territorial selecionado.":"Your organization does not yet have access to the enterprise diagnosis. Selected territorial flow.","Sua organização foi convidada a participar de um arranjo regional.":"Your organization has been invited to participate in a regional arrangement.","Sua rede está lenta ou bloqueando. Tente outra rede (4G/5G) ou desative VPN.":"Your network is slow or blocking access. Try another network (4G/5G) or disable your VPN.","Sua resposta":"Your answer","Sua resposta:":"Your answer:","Sua rodada de teste foi concluÃda. Os resultados completos â scores dos pilares RA, OE e AO, gargalos, prescrições EDU e relatórios â ficam disponÃveis ao contratar um plano.":"Your test round has been completed. The full results â scores for RA, OE, and AO pillars, bottlenecks, EDU prescriptions, and reports â become available upon subscribing to a plan.","Sua saúde chegou a zero pelas armadilhas ambientais.":"Your health reached zero due to environmental traps.","Sua sessão expirou. Entre novamente para gerenciar a conta.":"Your session has expired. Log in again to manage the account.","Sua solicitação de acesso foi recebida e está sendo analisada.":"Your access request has been received and is being reviewed.","Suas Cartas":"Your Cards","Suas ações definem quem você é.":"Your actions define who you are.","Suas conversas são salvas e você pode retomá-las depois.":"Your conversations are saved and you can resume them later.","Suas decisões determinam o destino do bioma:\nð Restaurado â você salvou o bioma!\nð Degradado â o bioma não resistiu\nð Neutro â sobreviveu, mas poderia ser melhor":`Your decisions determine the biome's fate: 176ð Restored â you saved the biome! 177ð Degraded â the biome did not resist 178ð Neutral â survived, but could be better`,"Suas decisões determinam o destino do bioma: ð Restaurado â você salvou o bioma! ð Degradado â o bioma não resistiu ð Neutro â sobreviveu, mas poderia ser melhor":"Your decisions determine the biome's fate: ð Restored â you saved the biome! ð Degraded â the biome did not survive ð Neutral â survived, but could be better","Suas decisões determinam o destino do bioma:\\nð Restaurado â você salvou o bioma!\\nð Degradado â o bioma não resistiu\\nð Neutro â sobreviveu, mas poderia ser melhor":"Your decisions determine the biome's fate:\\nð Restored â you saved the biome!\\nð Degraded â the biome didn't survive\\nð Neutral â it survived, but things could be better","Suas escolhas levaram ao pior cenário possÃvel. A floresta foi devastada, a comunidade se dispersou e a biodiversidade foi perdida de forma irreversÃvel. Os rios secaram, o clima mudou e o que era paraÃso virou deserto verde. Esta é uma lição dolorosa: cada decisão importa, e a inação é a pior das ações.":"Your choices led to the worst possible scenario. The forest was devastated, the community dispersed, and biodiversity was irreversibly lost. The rivers dried up, the climate changed, and what was paradise turned into a green desert. This is a painful lesson: every decision matters, and inaction is the worst of actions.","Suas escolhas sustentáveis restauraram o bioma!":"Your sustainable choices restored the biome!","Suas fotos serão provas cruciais. Você consegue sair sem ser visto.":"Your photos will be crucial evidence. You manage to leave unseen.",Submeter:UL,"Submeter evidência":"Submit evidence","Substitui o antigo trial de 7 dias.":"Replaces the old 7-day trial.","Substitui o preenchimento manual. Se apenas um dos componentes existir, será usado isoladamente.":"Replaces manual filling. If only one of the components exists, it will be used in isolation.",Substituir:BL,"Sugerir tarefas com inteligência SISTUR":"Suggest tasks with SISTUR intelligence",Sugestão:"Suggestion","Sugestão de diária por mês com base em ocupação, eventos e referência de mercado. à só uma sugestão: nenhum preço é alterado em outros sistemas.":"Daily rate suggestion per month based on occupancy, events, and market reference. It's just a suggestion: no prices are changed in other systems.","Sugestão de seções:":"Section suggestions:","Sugestão enviada com sucesso!":"Suggestion sent successfully!","Sugestão oficial:":"Official suggestion:","Sugestão:":"Suggestion:",Sugestões:"Suggestions","Sugestões automáticas â revise datas e nomes antes de importar. Fontes consultadas: {{v0}}.":"Automatic suggestions â review dates and names before importing. Sources consulted: {{v0}}.","Sugestões de capacitação":"Training suggestions","Sugestões de features e bugs reportados pelos usuários":"Feature suggestions and bugs reported by users",Sumário:"Summary","Sumário Executivo â":"Executive Summary â","Sumário executivo, Diagnóstico consolidado por pilar, Top 5 indicadores crÃticos, Recomendações priorizadas e Próximos passos.":"Executive summary, Consolidated diagnosis by pillar, Top 5 critical indicators, Prioritized recommendations, and Next steps.","Supabase Auth (email/password) com Row Level Security":"Supabase Auth (email/password) with Row Level Security","Supabase Auth: email/password + verificação":"Supabase Auth: email/password + verification",Superestrutura:FL,Superlotação:"Overcrowding","Suporte UTF-8/Latin1 e vÃrgula decimal BR":"UTF-8/Latin1 support and BR decimal comma","Suporte a YouTube embeddings com ingestão automática de metadados":"Support for YouTube embeddings with automatic metadata ingestion","Suporte a certificações":"Certifications supp
178ort","Suporte a decisões estratégicas":"Strategic decision support","Suporte insatisfatório":"Unsatisfactory support","Surto de Doença":"Disease Outbreak",Sustentabilidade:GL,"Sustentabilidade & Acessibilidade":"Sustainability & Accessibility","Sustentabilidade & ESG":"Sustainability & ESG","Sustentabilidade Ambiental":"Environmental Sustainability","Sustentabilidade e meio ambiente":"Sustainability and the environment","Sympla + Eventbrite + agendas municipais":"Sympla + Eventbrite + municipal agendas","São 6 indicadores que aparecem tanto em diagnósticos territoriais quanto empresariais: NPS, Nota de Reviews Online, Horas de Treinamento por Funcionário, % Funcionários Locais, % Compras Locais e Nº de Certificações Ambientais. Eles medem aspectos relevantes para ambos os contextos (público e privado).":"There are 6 indicators that appear in both territorial and business diagnostics: NPS, Online Review Score, Employee Training Hours, % Local Employees, % Local Purchases, and No. of Environmental Certifications. They measure relevant aspects for both contexts (public and private).","São necessárias pelo menos 2 rodadas calculadas":"At least 2 calculated rounds are required","São reservas de madeira":"These are timber reserves","São áreas de mineração":"These are mining areas","São áreas naturais protegidas legalmente para conservação.":"These are natural areas legally protected for conservation.","São áreas para construção":"These are construction areas","Série histórica em {{v0}}":"Historical series in {{v0}}","SÃmbolos de ódio":"Hate symbols","Só existem com gatilho de diagnóstico (Atenção/CrÃtico) + pilar correspondente + interpretação territorial.":"Only exist with a diagnostic trigger (Attention/Critical) + corresponding pillar + territorial interpretation.","TCG (Trading Card Game): batalhas com cartas de ameaças turÃsticas vs. defesas dos pilares":"TCG (Trading Card Game): battles with cards of tourism threats vs. pillar defenses","TCG Guardião do Território: Jogo de cartas estratég
178ico.":"TCG Territory Guardian: Strategic card game.","TCG â Guardião do Território":"TCG â Territory Guardian","TSE (Eleições)":"TSE (Elections)","TSE â Eleições":"TSE â Elections","TSE â Tribunal Superior Eleitoral":"TSE â Superior Electoral Court","TSE, Anatel, CADASTUR":"TSE, Anatel, CADASTUR","TTS: ElevenLabs via":"TTS: ElevenLabs via","Tabela Comparativa":"Comparative Table","Tabela N â TÃtulo":"Table N â Title","Tabela de Referência MTur (gastos turÃsticos por UF)":"MTur Reference Table (tourist spending per state)","Tabela de gastos médios por UF (referência interna)":"Table of average expenses per UF (internal reference)","Tabelas Supabase":"Supabase Tables","Tags indicam duração estimada e certificação.":"Tags indicate estimated duration and certification.","Tamanho da fonte":"Font size","Tamanho de fonte":"Font size","Tamanho máximo: 5 MB.":"Maximum size: 5 MB.","Tamanho:":"Size:","Tarde demais para impedir o estrago, mas talvez haja tempo para minimizar.":"Too late to prevent the damage, but there might be time to minimize it.","Tarde, mas melhor que nunca. A denúncia para a destruição, mas o estrago é grande.":"Late, but better than never. The report stops the destruction, but the damage is great.","Tarde, mas melhor que nunca. O cerrado sobrevive em fragmentos.":"Late, but better than never. The cerrado survives in fragments.","Tarde, mas necessário. A caatinga precisa urgente de recuperação.":"Late, but necessary. The caatinga urgently needs recovery.",Tarefa:VL,"Tarefa criada":"Task created","Tarefa movida":"Task moved",Tarefas:$L,"Tarefas Recentes":"Recent Tasks","Tarefas atrasadas são destacadas em vermelho.":"Overdue tasks are highlighted in red.","Tarefas concluÃdas":"Completed tasks","Tarefas de um projeto, com responsável, prazo e status.":"Project tasks, with responsible, deadline, and status.","Tarefas em que você é responsável ou aprovador, em todos os projetos da sua organização.":"Tasks where you are the assignee or approver, across all projects in your organization.","Tarefas que serão criadas ({{v0}})":"Tasks to be created ({{v0}})","Tarefas são atividades especÃficas dentro de cada fase.":"Tasks are specific activities within each phase.","Tarefas: {{v0}}/{{v1}}":"Tasks: {{v0}}/{{v1}}",Taxa:HL,"Taxa Aprovação":"Approval Rate","Taxa Ocupação":"Occupancy Rate","Taxa de Conversão":"Conversion Rate","Taxa de Criminalidade":"Crime Rate","Taxa de Cálculo":"Calculation Rate","Taxa de Escolarização":"Schooling Rate","Taxa de Escolarização: dados via Censo Escolar (coleta manual)":"School Enrollment Rate: data via School Census (manual collection)","Taxa de Ocupação":"Occupancy Rate","Taxa de Ocupação Hoteleira":"Hotel Occupancy Rate","Taxa de Ocupação Média (%)":"Average Occupancy Rate (%)","Taxa de Retorno":"Return Rate","Taxa de Sucesso":"Success Rate","Taxa de aprovação":"Approval Rate","Taxa de ocupação hoteleira abaixo do potencial":"Hotel occupancy rate below potential","Taxa de ocupação moderada - marketing e comercialização prescrito":"Moderate occupancy rate - prescribed marketing and commercialization","Taxa de ocupação média mensal":"Average monthly occupancy rate","Taxa média anual de ocupação dos meios de hospedagem":"Average annual occupancy rate of accommodation facilities","Taxa per capita":"Per capita rate","Taxa por mil/100 mil habitantes ou similar â exibido com a unidade.":"Rate per thousand/100 thousand inhabitants or similar â displayed with the unit.","Tecido de algodão":"Cotton fabric",Tecnologia:WL,"Tecnologia a serviço de todos!":"Technology at everyone's service!","Tecnologia e comunidade juntas! Nenhum fogo passa despercebido.":"Technology and community together! No fire goes unnoticed.","Tecnologia na escola! Muito bom! ð¡":"Technology in school! Very good! ð¡",Telecom:QL,"Telefone (opcional)":"Phone (optional)","Telhados verdes resfriam edifÃcios e purificam o ar.":"Green roofs cool buildings and purify the air.","Tem certeza que deseja excluir":"Are you sure you want to delete","Tem certeza que deseja excluir esta questão? Esta ação não pode ser desfeita.":"Are you sure you want to delete this question? This action cannot be undone.","Tem certeza que deseja excluir este treinamento? Esta ação não pode ser desfeita.":"Are you sure you want to delete this training? This action cannot be undone.",'Tem certeza que deseja excluir o módulo "':'Are you sure you want to delete the module "',"Tem certeza que deseja excluir o projeto":"Are you sure you want to delete the project",Tema:KL,"Tema *":"Theme *","Tema:":"Theme:",Temas:YL,"Temas especÃficos de interesse":"Specific topics of interest","Temperatura média (°C) por mês":"Average temperature (°C) per month",Template:JL,"Template Existente":"Existing Template",Tempo:XL,"Tempo (min)":"Time (min)","Tempo (minutos)":"Time (minutes)","Tempo Médio":"Average Time","Tempo Total":"Total Time","Tempo Total Assistido":"Total Watch Time","Tempo ativo":"Active time","Tempo de Check-in":"Check-in Time","Tempo de espera antes de nova tentativa":"Wait time before retry","Tempo de preenchimento":"Filling time","Tempo de resposta saudável":"Healthy response time","Tempo esgotado ao contatar o servidor":"Connection to the server timed out","Tempo esgotado! Exame enviado automaticamente.":"Time is up! Exam submitted automatically.","Tempo limite excedido aguardando o cálculo (5 min). Tente novamente.":"Timeout exceeded waiting for calculation (5 min). Please try again.","Tempo limite excedido. Tente uma pergunta mais curta.":"Time limit exceeded. Try a shorter question.","Tempo máximo para completar o exame":"Maximum time to complete the exam","Tempo restante:":"Time remaining:",Temporário:"Temporary","Tendência Temporal":"Temporal Trend","Tendência: {{v0}}":"Trend: {{v0}}","Tendências de demanda â busca pública (Auto)":"Demand trends â public search (Auto)","Tendências de queda são destacadas com alertas.":"Downward trends are highlighted
178with alerts.","Tentar Novamente":"Try Again","Tentar novamente":"Try again","Tentativa não encontrada.":"Attempt not found.",Tentativas:ZL,"Tentativas extras":"Extra attempts","Tentativas máx":"Max attempts","Tente ajustar os filtros de busca para encontrar o conteúdo desejado.":"Try adjusting the search filters to find the content you want.","Tente ajustar os filtros de busca.":"Try adjusting the search filters.","Tente ajustar seus filtros para encontrar o que procura.":"Try adjusting your filters to find what you are looking for.","Tente ajustar sua busca.":"Try adjusting your search.",'Tente alcançar o final "Restaurado" em todos os biomas! ð':'Try to reach the "Restored" ending in every biome! ð',"Tente novamente em alguns minutos. Se persistir, contate o suporte.":"Try again in a few minutes. If the issue persists, contact support.","Tente novamente.":"Try again.","Tente um termo diferente":"Try a different term","Tente usar outros termos de busca":"Try using different search terms","Terceira Idade":"Third Age","Terceira iteração de desenvolvimento":"Third development iteration",Termos:eU,"Termos aceitos com sucesso":"Terms accepted successfully","Termos de Uso":"Terms of Use","Termos e Condições de Uso":"Terms and Conditions of Use","Terra Seca, Coração Forte":"Dry Land, Strong Heart","Terra de Direito":"Land of Rights","Terras tituladas são terras protegidas!":"Titled lands are protected lands!","Terreno elevado e clima frio":"Elevated terrain and cold climate",Territoriais:aU,Territorial:oU,"Territorial ({{v0}})":"Territorial ({{v0}})","Territorial vs Empresarial vs Ambos":"Territorial vs Business vs Both","Território (opcional)":"Territory (optional)","Tese de investimento, Contexto de mercado, Indicadores de atratividade, Riscos e mitigadores, Oportunidades de aporte, Indicadores de retorno esperado e Pipeline de projetos correlatos.":"Investment thesis, Market context, Attractiveness indicators, Risks and mitigators, Funding opportunities, Expected return indicators, and Related project pipeline.",Tesouros:iU,"Tesouros valem pontos â colete todos para a pontuação máxima!":"Treasures are worth points â collect them all for the maximum score!","Tesouros:":"Treasures:","Testa banco de dados, edge functions, armazenamento e integridade de dados":"Tests database, edge functions, storage, and data integrity","Teste manual (smoke test) registra a execução no histórico abaixo.":"Manual test (smoke test) records execution in the history below.","Texto do Cabeçalho":"Header Text","Texto do Rodapé":"Footer Text","Texto exibido no topo de cada página":"Text displayed at the top of each page","Texto/Artigo":"Text/Article","Texto/markdown injetado no prompt do gerador de relatórios. Seja imperativo e direto (use 'sempre', 'nunca', listas numeradas).":"Text/markdown injected into the report generator's prompt. Be imperative and direct (use 'always', 'never', numbered lists).",Teórica:"Theoretical",Tier:tU,"Tier atualizado com sucesso":"Tier updated successfully","Tier de Diagnóstico":"Diagnosis Tier","Tier:":"Tier:",TikTok:rU,Timeline:sU,Tipo:nU,"Tipo da regra. 'methodology' = base teórica; 'classification' = réguas/limiares; 'anti_hallucination' = regras de proibição; 'formatting' = formato de saÃda; 'sources' = fontes oficiais; 'glossary' = definições.":"Rule type. 'methodology' = theoretical basis; 'classification' = rules/thresholds; 'anti_hallucination' = prohibition rules; 'formatting' = output format; 'sources' = official sources; 'glossary' = definitions.","Tipo de Acesso":"Access Type","Tipo de Dados":"Data Type","Tipo de Diagnóstico":"Diagnosis Type","Tipo de E-mail":"Email Type","Tipo de Empreendimento":"Enterprise Type","Tipo de Entidade":"Entity Type","Tipo de Normalização":"Normalization Type","Tipo de feedback":"Feedback Type","Tipo e Porte":"Type and Size","Tipo:":"Type:","Tipologias detectadas":"Detected typologies","Tipos de Escolha":"Choice Types","Tipos de Eventos":"Event Types","Tipos de Relatório":"Report Types","Tipos de solo":"Soil types","Tirar fotos e postar":"Take and post photos","Tire nota de aprovação em 1 exame.":"Get a passing grade in 1 exam.","Tire suas dúvidas sobre o SISTUR":"Get answers to your questions about SISTUR","Tire suas dúvidas sobre o Sistema de Inteligência Territorial para o Turismo":"Ask your questions about the Territorial Intelligence System for Tourism","Tirou 100% em um exame":"Scored 100% on an exam","Toast por bloco com origem (Google, Booking, ANACâ¦)":"Block toast with origin (Google, Booking, ANACâ¦)","Toda a base anterior foi convert
178ida automaticamente (grandfathering): usuários e organizações existentes não passam pelo trial.":"All previous data was automatically converted (grandfathering): existing users and organizations do not go through the trial.","Toda a turma":"Whole class","Toda a turma ({{v0}} alunos)":"All students ({{v0}} students)","Toda prescrição obedece a três condições obrigatórias:":"Every prescription obeys three mandatory conditions:",'Toda trilha pode ter provas finais por pilar coberto (RA, OE e/ou AO). A configuração padrão usa 20 questões, nota mÃnima de 70%, 60 minutos de duração e 2 tentativas. Ao criar uma trilha, o checkbox "Gerar provas finais automaticamente" (marcado por padrão) cria os rulesets imediatamente; o botão "Gerar provas" no detalhe da trilha permite regenerar a qualquer momento. As trilhas pré-prontas existentes receberam backfill automático dessas provas.':'Every trail can have final exams per covered pillar (RA, OE, and/or AO). The default configuration uses 20 questions, a minimum grade of 70%, 60 minutes duration, and 2 attempts. When creating a trail, the "Generate final exams automatically" checkbox (checked by default) creates the rulesets immediately; the "Generate exams" button in the trail details allows regeneration at any time. Existing pre-made trails received automatic backfill of these exams.',Todas:cU,"Todas (territorial + enterprise)":"All (territorial + enterprise)","Todas UFs":"All UFs","Todas as Tarefas":"All Tasks","Todas as ações são registradas no log de auditoria.":"All actions are recorded in the audit log.","Todas as barras acima de 50":"All bars above 50","Todas as categorias":"All categories","Todas as nascentes da serra estão mapeadas e protegidas. A água volta a fluir e cidades inteiras se beneficiam.":"All mountain springs are mapped and protected. Water flows again, and entire cities benefit.","Todas as nascentes da serra são mapeadas e protegidas!":"All mountain springs are mapped and protected!","Todas as organizações":"All organizations","Todas as questões dissertativas foram corrigidas.":"All essay questions have been graded.","Todas as recomendações":"All recommendations","Todas as unidades":"All units","Todas as unidades (marca)":"All units (brand)","Todas as âncoras":"All anchors","Todas coletas":"All data collections","Todo mundo pode andar com segurança! ð¶ââï¸":"Everyone can walk safely! ð¶ââï¸","Todo novo usuário recebe 7 dias gratuitos com acesso completo ao AnalÃtico, EDU e Jogos. Aproveite para explorar todas as funcionalidades!":"Every new user receives 7 free days with full access to Analytics, EDU, and Games. Take the opportunity to explore all features!","Todo relatório passa por duas etapas obrigatórias antes de ser persistido: (1) Auto-correção determinÃstica â o pipeline compara cada número citado pelo texto contra a tabela canônica de assessment_indicator_audit; divergências acima de 5% são corrigidas automaticamente. (2) Validação por agente IA (gemini-2.5-pro) que relê o texto pós-correção e produz um relatório de validação salvo em report_validations. O resultado aparece como um banner no topo do relatório (limpo, com avisos ou auto-corrigido). Esta é a polÃtica Zero Alucinação: nenhum número, ano ou fonte pode ser inventado pela IA.":"Every report undergoes two mandatory steps before being persisted: (1) Deterministic self-correction â the pipeline compares each number cited by the text against the canonical table of assessment_indicator_audit; discrepancies above 5% are automatically corrected. (2) Validation by an AI agent (gemini-2.5-pro) that rereads the text post-correction and produces a validation report saved in report_validations. The result appears as a banner at the top of the report (clean, with warnings, or self-corrected). This is the Zero Hallucination policy: no number, year, or source can be invented by the AI.",Todos:dU,"Todos (":"All (","Todos da organização":"Everyone in the organization","Todos escopos ({{v0}})":"All scopes ({{v0}})","Todos os Destinos":"All Destinations","Todos os Status":"All Statuses","Todos os dados foram preenchidos. Clique no botão abaixo para calcular os Ãndices e gerar o diagnóstico.":"All data has been entered. Click the button below to calculate the indices and generate the diagnosis.","Todos os destinos":"All destinations","Todos os destinos disponÃveis já foram adicionados.":"All available destinations have already been added.","Todos os eventos do pipeline são gravados em":"All pipeline events are recorded in","Todos os indicadores ativos":"All active indicators","Todos os indicadores estão com status Adequado. Não há prescrições corretivas necessárias neste momento.":"All indicators are with Adequate status. No corrective prescriptions are needed at this moment.","Todos os indicadores estão dentro dos limites saudáveis.":"All indicators are within healthy limits.","Todos os indicadores preenchidos! O diagnóstico pode ser calculado.":"All indicators filled! The diagnosis can be calculated.","Todos os indicadores. Ideal para capitais, polos turÃsticos ou planejamento estratég
178ico de longo prazo.":"All indicators. Ideal for capitals, tourist hubs, or long-term strategic planning.","Todos os membros da sua organização poderão visualizar e colaborar com este diagnóstico.":"All members of your organization will be able to view and collaborate on this diagnosis.","Todos os nÃveis":"All levels","Todos os pilares":"All pillars","Todos os provedores":"All providers","Todos os temas":"All themes","Todos os tipos":"All types","Todos os usuários têm acesso":"All users have access","Todos os valores foram salvos!":"All values have been saved!","Todos pendentes":"All pending","Todos seguros, mas perderam casas...":"All safe, but lost homes...","Todos tipos":"All types","Todos têm voz!":"Everyone has a voice!",Tom:lU,"Tom:":"Tone:","Toneladas de lixo são recolhidas! A praia começa a voltar a brilhar.":"Tons of trash are collected! The beach starts to shine again.","Top 10 alunos por XP":"Top 10 students by XP","Topo de linha GPT-5.6":"Top-tier GPT-5.6","Toque em uma carta para virá-la. Depois toque em outra carta. Se a imagem e a descrição combinarem, o par é revelado!":"Tap a card to flip it. Then tap another card. If the image and description match, the pair is revealed!","Toque nas células adjacentes para se mover. Células não exploradas ficam cobertas por névoa â revele o mapa passo a passo!":"Tap adjacent cells to move. Unexplored cells are covered in fog â reveal the map step by step!","Toque nas células brilhantes para explorar":"Tap the glowing cells to explore",Total:uU,"Total Geral":"Grand Total","Total MatrÃculas":"Total Enrollments","Total construções:":"Total buildings:","Total de Certificados":"Total Certificates","Total de Logs":"Total Logs","Total de Planos":"Total Plans","Total de Projetos":"Total Projects","Total de Provas":"Total Exams","Total de Questões":"Total Questions","Total de cartas jogadas":"Total cards played","Total de horas de treinamento realizadas ÷ número de funcionários no perÃodo. Inclua cursos internos, externos e online.":"Total training hours completed ÷ number of employees in the period. Include internal, external, and online courses.","Total de kWh consumidos ÷ número de pernoites. Consulte faturas de energia e relatório de ocupação.":"Total kWh consumed ÷ number of overnight stays. Consult energy bills and occupancy report.","Total de litros ou m³ consumidos ÷ número de pernoites. Consulte faturas da concessionária de água.":"Total liters or m³ consumed ÷ number of overnight stays. Consult water utility bills.","Total de questões:":"Total questions:","Total de tentativas permitidas":"Total attempts allowed","Total de {{v0}} ciclo(s) de diagnóstico":"Total of {{v0}} diagnostic cycle(s)","Total declarado":"Total declared","Total estimado:":"Estimated total:",Tour:mU,"Tour do módulo":"Module tour","Trabalhando na fazenda, você vê de perto a devastação: hectares de cerrado são queimados e arados diariamente. Animais fogem em desespero. Um lobo-guará ferido aparece na beira da estrada.":"Working on the farm, you see the devastation up close: hectares of savanna are burned and plowed daily. Animals flee in despair. A wounded maned wolf appears on the side of the road.","Trabalho Decente e Crescimento Econômico":"Decent Work and Economic Growth",Trace:pU,"Trace ID":"Trace ID","Tracking de progresso, histórico escolar e notas":"Progress tracking, academic history, and grades",Trade:gU,"Trade TurÃstico":"Tourism Trade","Transacionais (OTA)":"Transactional (OTA)","Transfira usuários entre organizações quando necessário.":"Transfer users between organizations when necessary.","Transformando indicadores em decisões estratégicas":"Transforming indicators into strategic decisions","Transformar cenário em projeto":"Turn scenario into project","Transformar gatilhos em projeto":"Turn triggers into project","Transformar o projeto em programa estadual contra desertificação":"Transform the project into a state program against desertification","Transformar pescadores em guias de mergulho":"Transform fishermen into diving guides","Transformação Digital":"Digital Transformation","Transformação de resÃduos orgânicos em adubo":"Transformation of organic waste into fertilizer","Transparência na Normalização":"Normalization Transparency","Transparência:":"Trans
178parency:",Transporte:hU,"Transporte Intra-Destino":"Intra-Destination Transport","Transporte Local â busca pública (Auto)":"Local Transport â public search (Auto)","Transporte Urbano":"Urban Transport","Transporte e LogÃstica":"Transportation and Logistics","Transporte intra-destino analisado":"Intra-destination transport analyzed","Transporte limpo e eficiente!":"Clean and efficient transport!","Transporte limpo e saudável! ð¿":"Clean and healthy transport! ð¿","Transporte limpo reduz a poluição do ar.":"Clean transport reduces air pollution.","Transporte público":"Public transport",Tratamento:fU,"Tratamento Biológico":"Biological Treatment","Tratamento biológico":"Biological treatment","Tratamento de esgoto":"Sewage treatment",Treinamento:vU,"Treinamento *":"Training *","Treinamento arquivado":"Training archived","Treinamento arquivado!":"Training archived!","Treinamento atualizado com sucesso!":"Training updated successfully!","Treinamento atualizado!":"Training updated!","Treinamento criado com sucesso!":"Training created successfully!","Treinamento criado!":"Training created!","Treinamento excluÃdo":"Training deleted","Treinamento excluÃdo!":"Training deleted!","Treinamento não encontrado":"Training not found","Treinamento por Colaborador":"Training per Employee","Treinamento publicado!":"Training published!",Treinamentos:bU,"Treinamentos da Trilha":"Learning Path Trainings","Treinamentos da Trilha * ({{v0}} selecionados)":"Trail Trainings * ({{v0}} selected)","Treinamentos prescritos são recomendações automáticas geradas pelo Motor IGMA baseadas nos resultados dos diagnósticos territoriais. Quando um indicador apresenta status crÃtico ou em atenção, o sistema recomenda cursos especÃficos para aquele tema.":"Prescribed trainings are automatic recommendations generated by the IGMA Engine based on the results of territorial diagnostics. When an indicator presents a critical or attention status, the system recommends specific courses for that topic.","Treinamentos, trilhas de aprendizado e trilhas adaptativas":"Trainings, learning paths, and adaptive trails","Treinar condutores locais como guias de ecoturismo":"Train local drivers as ecotourism guides",TrendingUp:AU,"Triagem inicial para priorização":"Initial screening for prioritization","Trial Automático":"Automatic Trial","Trial cancelado com sucesso.":"Trial canceled successfully.","Trial
178convertido (acesso integral liberado)":"Trial converted (full access released)","Trial por consumo":"Consumption-based Trial",Trials:yU,'Trigger cria profile na org "Temporário"':'Trigger creates profile in "Temporary" org',"Trigger: Atenção":"Trigger: Attention","Trigger: CrÃtico":"Trigger: Critical","Trigger: {{v0}}":"Trigger: {{v0}}",Trilha:SU,"Trilha *":"Learning path *","Trilha Ecológica":"Ecological Trail","Trilha atualizada":"Learning path updated","Trilha bloqueada":"Learning path locked","Trilha completa para certificação":"Complete learning path for certification","Trilha concluÃda":"Trail completed","Trilha criada":"Learning path created","Trilha criada a partir das recomendações do seu Perfil de Aprendizado.":"Trail created from your Learning Profile recommendations.","Trilha da Montanha":"Mountain Trail","Trilha de Auditoria â Procedência por Indicador":"Audit Trail â Provenance by Indicator","Trilha de Impacto":"Impact Trail","Trilha de aprendizado":"Learning path","Trilha de auditoria por indicador":"Audit trail per indicator","Trilha destinada ao seu perfil":"Learning path designed for your profile","Trilha disponÃvel nos planos":"Learning path available with plans","Trilha não encontrada":"Learning path not found","Trilha não encontrada.":"Learning path not found.","Trilha removida":"Learning path removed",Trilhas:EU,"Trilhas Adaptativas":"Adaptive Learning Paths","Trilhas Formativas":"Training Paths","Trilhas conectam as pessoas com o meio ambiente.":"Trails connect people with the environment.","Trilhas de aprendizado (tracks) compostas por múltiplos treinamentos ordenados":"Learning paths (tracks) composed of multiple ordered trainings","Trilhas de aprendizado ordenadas":"Ordered learning paths","Trilhas de capacitação 100% personalizadas":"100% personalized training paths","Trilhas de capacitação adaptativas e certificados":"Adaptive training paths and certificates","Trilhas demarcadas, guias obrigatórios e limite diário. A serra respira!":"Demarcated trails, mandatory guides, and a daily limit. The mountain breathes!","Trilhas matriculadas e percentual de conclusão de cada uma.":"Enrolled trails and completion percentage for each.","Trilhas para turistas":"Trails for tourists","Trilhas, treinamentos, provas e conteúdo atribuÃdos":"Trails, trainings, tests, and content assigned","Trilhas: Complete 100% do conteúdo para receber o certificado de trilha.":"Trails: Complete 100% of the content to receive the trail certificate.",Trimestral:CU,"TripAdvisor: {{v0}} resultado(s)":"TripAdvisor: {{v0}} result(s)",Trocar:TU,"Trocar arquivo":"Replace file","Trânsito Parado":"Traffic Jam","Trânsito parado! Poluição do ar subindo!":"Traffic stopped! Air pollution rising!",'Três causas possÃveis: (1) o diagnóstico foi criado SEM o opt-in "Expandir com Mandala (MST)" no Step 3 da Nova Rodada â nesse caso os indicadores MST nem aparecem (assessments.expand_with_mandala = false). (2) O municÃpio está fora das 15 capitais âncora E o scraping sob demanda falhou â nesse caso a linha MANUAL com valor vazio aparece no painel de validação com badge ð MST, basta clicar em "Recarregar dados oficiais" e depois preencher manualmente com o valor da fonte oficial linkada na nota do indicador. (3) A função edge ingest-tse/ingest-anatel não conseguiu persistir por falta de configuração de fonte (external_data_sources) â esse problema foi corrigido na v1.30.7 com a inserção das fontes TSE e ANATEL. Recomendação: ative o switch MST, clique em "Recarregar dados oficiais" no painel de pré-preenchimento e os 9 indicadores MST aparecerão (alguns automáticos, outros como linha manual com link à fonte).':'Three possible causes: (1) the diagnosis was created WITHOUT the "Expand with Mandala (MST)" opt-in in Step 3 of the New Round â in this case, the MST indicators do not even appear (assessments.expand_with_mandala = false). (2) The municipality is outside the 15 anchor capitals AND on-demand scraping failed â in this case, the MANUAL line with an empty value appears in the validation panel with a ð MST badge; simply click "Reload official data" and then manually fill in the value from the official source linked in the indicator note. (3) The edge ingest-tse/ingest-anatel function could not persist due to missing source configuration (external_data_sources) â this issue was corrected in v1.30.7 with the insertion of TSE and ANATEL sources. Recommendation: activate the MST switch, click "Reload official data" in the pre-fill panel, and the 9 MST indicators will appear (some automatic, others as a manual line with a link to the source).',"Três pilares do sistema turÃstico:\n- RA â Relações Ambientais (base; prioridade máxima)\n- OE â Organização Estrutural (infraestrutura)\n- AO â Ações Operacionais (governança central)\n\n6 regras do Motor IGMA:\n1. Limitação Estrutural do Território (RA crÃtico bloqueia OE)\n2. Planejamento como Ciclo ContÃnuo (6/12/18 meses)\n3. Alerta de Externalida
178des Negativas (OEâ enquanto RAâ)\n4. Governança como Condição de Eficácia (AO crÃtico bloqueia OE)\n5. Território Antes do Marketing (RA e AO não crÃticos)\n6. Intersetorialidade Obrigatória (saúde, educação, saneamento)\n\nSeveridade: CrÃtico ⤠33% | Atenção 34â66% | Adequado ⥠67%.":`Three pillars of the tourism system: 179- RA â Environmental Relations (foundation; maximum priority) 180- OE â Structural Organization (infrastructure) 181- AO â Operational Actions (central governance) 182 1836 IGMA Engine rules: 1841. Structural Limitation of the Territory (critical RA blocks OE) 1852. Planning as a Continuous Cycle (6/12/18 months) 1863. Negative Externalities Alert (OEâ while RAâ) 1874. Governance as a Condition for Efficacy (critical AO blocks OE) 1885. Territory Before Marketing (non-critical RA and AO) 1896. Mandatory Intersectorality (health, education, sanitation) 190 191Severity: Critical ⤠33% | Attention 34â66% | Adequate ⥠67%.`,"Três pilares do sistema turÃstico: - RA â Relações Ambientais (base; prioridade máxima) - OE â Organização Estrutural (infraestrutura) - AO â Ações Operacionais (governança central) 6 regras do Motor IGMA: 1. Limitação Estrutural do Território (RA crÃtico bloqueia OE) 2. Planejamento como Ciclo ContÃnuo (6/12/18 meses) 3. Alerta de Externalidades Negativas (OEâ enquanto RAâ) 4. Governança como Condição de Eficácia (AO crÃtico bloqueia OE) 5. Território Antes do Marketing (RA e AO não crÃticos) 6. Intersetorialidade Obrigatória (saúde, educação, saneamento) Severidade: CrÃtico ⤠33% | Atenção 34â66% | Adequado ⥠67%.":"Three pillars of the tourism system: - RA â Environmental Relations (foundation; maximum priority) - OE â Structural Organization (infrastructure) - AO â Operational Actions (central governance) 6 IGMA Engine rules: 1. Structural Limitation of Territory (critical RA blocks OE) 2. Planning as a Continuous Cycle (6/12/18 months) 3. Negative Externalities Alert (OEâ while RAâ) 4. Governance as a Condition of Effectiveness (critical AO blocks OE) 5. Territory Before Marketing (RA and AO not critical) 6. Mandatory Intersectorality (health, education, sanitation) Severity: Critical ⤠33% | Attention 34â66% | Adequate ⥠67%.",Tubarão:"Shark","Tudo do Essencial +":"Everything from Essential +","Tudo do Estratégico +":"Everything from Strategic +","Tudo em dia":"Everything is up to date","Tudo não-turÃstico":"All non-tourist","Tudo que não é profissional/educacional":"Everything that is not professional/educational","Tudo que o assistente pode fazer em nome de quem conectou. Dados de leitura consultam o que a pessoa já pode ver no SISTUR; a criação de tarefas é registrada como se tivesse sido feita pela própria pessoa.":"Everything the assistant can do on behalf of the connected user. Read data queries what the person can already see in SISTUR; task creation is recorded as if it was done by the person themselves.",Turismo:PU,"Turismo Sustentável e Meio Ambiente":"Sustainable Tourism and Environment","Turismo controlado com guias":"Controlled tourism with guides","Turismo de aventura":"Adventure tourism","Turismo que preserva o ambiente e a cultura local":"Tourism that preserves the local environment and culture","Turismo responsável! Todos felizes! ð":"Responsible tourism! Everyone happy! ð","Turismo sem planejamento causa problemas.":"Tourism without planning causes problems.","Turismo sustentável minimiza impactos e benef
191icia comunidades locais.":"Sustainable tourism minimizes impacts and benefits local communities.","Turismo sustentável! A natureza e a comunidade prosperam juntas.":"Sustainable tourism! Nature and community prosper together.","Turismo sustentável:":"Sustainable tourism:","Turistas sem orientação.":"Tourists without guidance.",Turma:RU,"Turmas & Mensagens":"Classes & Messages","Turmas e acompanhamento":"Classes and mentoring","Turmas em que você está matriculado e anúncios dos professores.":"Classes you are enrolled in and announcements from instructors.","Turno {{v0}}":"Shift {{v0}}","Turnos no verde:":"Turns in the green:","Turnos no vermelho:":"Turns in the red:","Turnos:":"Shifts:",Turnover:xU,Tutorial:wU,"Tutorial Passo a Passo":"Step-by-Step Tutorial","Tutorial do SISTUR":"SISTUR Tutorial",Técnico:"Technical","Técnico (50+ pág)":"Technical (50+ pages)",Técnicos:"Technical Staff",TÃtulo:"Title","TÃtulo *":"Title *","TÃtulo da aula...":"Lesson title...","TÃtulo da pergunta":"Question title","TÃtulo da seção":"Section title","TÃtulo da sugestão":"Suggestion title","TÃtulo da tarefa":"Task title","TÃtulo da tarefa.":"Task title.","TÃtulo deve ter no máximo 200 caracteres":"Title must have a maximum of 200 characters","TÃtulo deve ter pelo menos 5 caracteres":"Title must have at least 5 characters","TÃtulo do Módulo *":"Module Title *","TÃtulo do bug":"Bug title","TÃtulo do diagnóstico *":"Diagnosis title *","TÃtulo do treinamento":"Training title","TÃtulo obrigatório":"Title required","TÃtulo é obrigatório":"Title is required","Tópico / Assunto *":"Topic / Subject *","Tópico de tutorial não encontrado.":"Tutorial topic not found.","Tópico não encontrado":"Topic not found","Tópicos que o Professor Domina":"Topics Professor Masters","UF da matriz":"Headquarters State","UFs com Dados":"States with Data","UI / Libs":"UI / Libs","URL da Thumbnail":"Thumbn
191ail URL","URL da evidência":"Evidence URL","URL de vÃdeo inválida":"Invalid video URL","URL do VÃdeo":"Video URL","URL ou será preenchido após upload":"URL or will be filled in after upload","USO ÃNICO":"SINGLE USE","Um administrador irá revisar sua solicitação em breve. Você receberá acesso assim que sua conta for aprovada.":"An administrator will review your request shortly. You will receive access once your account is approved.","Um aluno pode estar em múltiplas salas.":"A student can be in multiple rooms.","Um animal raro apareceu perto da vila!":"A rare animal appeared near the village!","Um banner no topo da tela mostra quantos dias restam do seu perÃodo de teste.":"A banner at the top of the screen shows how many days are left in your trial period.","Um diagnóstico é a fotografia estruturada de um destino turÃstico em um determinado momento, baseado nos pilares RA, OE e AO. Pode ser Territorial (municÃpio, região turÃstica, consórcio) ou Empresarial (empreendimento privado).":"A diagnosis is a structured photograph of a tourist destination at a given moment, based on the RA, OE, and AO pillars. It can be Territorial (municipality, tourist region, consortium) or Empresarial (private enterprise).","Um incêndio ameaça a vegetação! Aja rápido!":"A fire threatens the vegetation! Act fast!","Um visitante famoso quer conhecer sua vila!":"A famous visitor wants to see your village!","Uma ONG envia voluntários e equipamentos. Ainda há esperança.":"An NGO sends volunteers and equipment. There is still hope.","Uma doença está se espalhando! Precisamos agir!":"A disease is spreading! We need to act!","Uma fábrica quer se instalar perto da vila!":"A factory wants to set up near the village!","Uma jornada pela maior floresta tropical do mundo.":"A journey through the world's largest tropical forest.","Uma marca agrupa unidades do mesmo empreendimento em municÃpios diferentes. Cada unidade mantém seu próprio diagnóstico, e a marca permite análises consolidadas da rede.":"A brand groups units of the same enterprise in different municipalities. Each unit maintains its own diagnosis, and the brand allows for consolidated network analysis.","Uma marca agrupa unidades do mesmo empreendimento em municÃpios diferentes. Cada unidade mantém seu próprio diagnóstico, e a marca permite consolidar a análise de desempenho da rede em diferentes territórios.":"A brand groups units of the same enterprise in different municipalities. Each unit maintains its own diagnosis, and the brand allows for consolidating network performance analysis across different territories.","Uma organização privada com Empresarial habilitado pode usar tanto os indicadores territoriais padrão (quando aplicável) quanto os indicadores especÃficos de hospitalidade. Os 6 indicadores compartilhados facilitam a integração entre diagnósticos territoriais e empresariais. Organizações públicas não têm acesso ao módulo Empresarial.":"A private organization with Empresarial enabled can use both standard territorial indicators (when applicable) and specific hospitality indicators. The 6 shared indicators facilitate the integration between territorial and business diagnoses. Public organizations do not have access to the Empresarial module.","Uma prova por pilar coberto pelos treinamentos. Aprovação garante o certificado.":"One exam per pillar covered by the trainings. Passing earns you the certificate.","Uma queimada se espalha pela floresta! O que fazer?":"A wildfire spreads through the forest! What to do?","Uma rede de guardiões protege toda a cadeia montanhosa!":"A network of guardians protects the entire mountain range!","Uma semente de espécie nativa ameaçada":"A seed of an endangered native species","Uma tempestade atingiu sua vila! O que fazer?":"A storm hit your village! What to do?","Uma trilha baseada nas minhas recomendações":"A learning path based on my recommendations","Uma vez iniciado, o exame não pode ser pausado":"Once started, the exam cannot be paused","Uma árvore nova para o mundo!":"A new tree for the world!","Umbuzeiros, juremas e catingueiras voltam ao dia a dia.":"Umbuzeiros, juremas, and catingueiras return to daily life.",Unidade:IU,"Unidade mais frágil por pilar":"Weakest unit per pillar","Unidade principal (flagship) da marca":"Brand flagship unit",Unidades:DU,"Unidades cadastradas":"Registered units","Unidades da rede (":"Network units (","Unidades do diagnóstico":"Diagnosis units","Uniforme (sem sazonalidade)":"Uniform (no seasonality)","Upgrade Recomendado":"Recommended Upgrade","Upgrade: Muda o plano do usuário.":"Upgrade: Changes the user's plan.",Upload:OU,"Upload de arquivo":"File upload","Upload direto":"Direct upload","Upload para Base de Conhecimento":"Upload to Knowledge Base",Urbanista:MU,Urgente:NU,Urgência:"Urgency","Usa valores de referência da MTur/FGV quando dados especÃficos da UF não estão disponÃveis.":"Uses MTur/FGV reference values when specific UF data is not available.",Usado:zU,"Usar Firecrawl (Scraping Inteligente)":"Use Firecrawl (Smart Scraping)","Usar transporte público":"Use public transport",'Use "Salvar como PDF" na janela de impressão.':'Use "Save as PDF" in the print dialog.',"Use @ para mencionar membros da organização":"Use @ to mention organization members","Use SEMPRE estes 5 nÃveis ao classificar indicadores e pilares:\n- CrÃtico: 0â33%\n- Atenção: 34â66%\n- Adequado: 67â84%\n- Bom: 85â94%\n- Excelente: 95â100%\n\nRegras:\n1. Exiba sempre em percentual inteiro (ex.: 72%), nunca decimais.\n2. Nunca invente categorias fora desta régua.\n3. Não use rankings comparativos entre municÃpios.":`ALWAYS use these 5 levels when classifying indicators and pillars: 192- Critical: 0â33% 193- Attention: 34â66% 194- Adequate: 67â84% 195- Good: 85â94% 196- Excellent: 95â100% 197 198Rules: 1991. Always display as an integer percentage (e.g., 72%), never decimals. 2002. Never invent categories outside this scale. 2013. Do not use comparative rankings between municipalities.`,"Use SEMPRE estes 5 nÃveis ao classificar indicadores e pilares: - CrÃtico: 0â33% - Atenção: 34â66% - Adequado: 67â84% - Bom: 85â94% - Excelente: 95â100% Regras: 1. Exiba sempre em percentual inteiro (ex.: 72%), nunca decimais. 2. Nunca invente categorias fora desta régua. 3. Não use rankings comparativos entre municÃpios.":"ALWAYS use these 5 levels when classifying indicators and pillars: - Critical: 0â33% - Attention: 34â66% - Adequate: 67â84% - Good: 85â94% - Excellent: 95â100% Rules: 1. Always display as an integer percentage (e.g.: 72%), never decimals. 2. Never invent categories outside this scale. 3. Do not use comparative rankings between municipalities.",'Use a "Busca Automática de Reviews Online" para avaliação automática. Ou pontue de 0-10: presença em OTAs, site responsivo, motor de reservas, redes sociais ativas, Wi-Fi, PMS integrado.':'Use "Automatic Online Review Search" for automatic evaluation. Or score 0-10: OTA presence, responsive website, booking engine, active social media, Wi-Fi, integrated PMS.','Use a aba "Importar" para buscar dados do Mapa do Turismo.':'Use the "Import" tab to fetch data from the Tourism Map.','Use a ferramenta "Busca Automática de Reviews Online" acima para preencher automaticamente. Ou consulte manualmente Google Maps, TripAdvisor e Booking e calcule a média ponderada dos scores.':'Use the "Automatic Online Review Search" tool above to auto-fill. Or manually consult Google Maps, TripAdvisor, and Booking and calculate the weighted average of the scores.',"Use calculadoras de pegada de carbono (GHG Protocol, CBCS) considerando energia, combustÃvel, gases refrigerantes. Divida pelo total de pernoites.":"Use carbon footprint calculators (GHG Protocol, CBCS) considering energy, fuel, refrigerant gases. Divide by total overnight stays.","Use cartas de ação para combater ameaças no campo de batalha.":"Use action cards to combat threats on the battlefield.","Use dados de pesquisas de campo, bases oficiais ou estimativas qualificadas.":"Use field research data, official databases, or qualified estimates.","Use o Dashboard AnalÃtico para uma visão consolidada de todos os projetos.":"Use the Analytical Dashboard for a consolidated view of all projects.","Use o comparativo de destinos para benchmarking.":"Use the destination comparison for benchmarking.","Use os feedbacks para priorizar melhorias na plataforma.":"Use the feedback to prioritize platform improvements.","Use para contratos Territoriais (empenho) e ativações negociadas.":"Use for Territorial contracts (commitment) and negotiated activations.","Use para importar FOHB (ocupação hoteleira), CGE/SECTUR estaduais ou qualquer outra fonte que não tenha API.":"Use to import FOHB (hotel occupancy), state CGE/SECTUR or any other source that does not have an API.","Use seu email institucional para aprovação mais rápida.":"Use your institutional email for faster approval.","Use tags para filtrar por assunto.":"Use tags to filter by subject.","Use um email válido â você receberá um link de confirmação.":"Use a valid email â you will receive a confirmation link.","User Agent":"User Agent",Users:jU,"Usinas de reciclagem":"Recycling plants","Uso de Recursos":"Resource Usage","Uso de drogas":"Drug use","Uso do Banco de Dados":"Database Usage","Uso elevado â planeje expansão":"High usage â plan for expansion","Uso intensivo de agrotóxicos":"Intensive use of pesticides","Uso no mês":"Usage this month","Uso recente":"Recent usage","Uso sustentável da madeira sem destruir a floresta":"Sustainable use of wood without destroying the forest",Usuário:"User","Usuário EspecÃfico":"Specific User","Usuário adicionado à organização":"User added to organization","Usuário aprovado com sucesso":"User approved successfully","Usuário bloqueado":"User blocked","Usuário criado com sucesso":"User created successfully","Usuário desbloqueado":"User unlocked","Usuário especÃfico":"Specific user","Usuário individual":"Individual user","Usuário novo: curso base + 10 perguntas ao Professor Beni. Organização nova: 1 diagnóstico com resultado em teaser e projetos bloqueados. Não há mais trial por tempo.":"New user: basic course + 10 questions to Professor Beni. New organization: 1 diagnosis with teaser results and blocked projects. No more time-based trial.","Usuário não autenticado":"User not authenticated","Usuário não encontrado":"User not found","Usuário removido com sucesso":"User successfully removed","Usuário removido da organização":"User removed from organization","Usuário revisa, confirma ou ajusta cada valor antes do cálculo. Nenhum dado é 'verdade absoluta'.":"User reviews, confirms or adju
201sts each value before calculation. No data is 'absolute truth'.","Usuário sem e-mail cadastrado":"User without registered email",Usuários:"Users","Usuários Ativos":"Active Users","Usuários Totais":"Total Users","Usuários aguardando aprovação para acessar o sistema":"Users awaiting approval to access the system","Usuários de uma organização não veem dados de outras.":"Users from one organization do not see data from others.","Usuários em trial":"Users on trial","Usuários pendentes são gerenciados pelo fluxo de aprovação.":"Pending users are managed by the approval workflow.","Usuários por Organização":"Users by Organization","Utilitários para cálculo, simulação e exportação de dados":"Utilities for data calculation, simulation, and export","Utilizado â resultados em prévia":"Used â preview results","Utilizam IA para sÃntese e contextualização dos dados diagnósticos. A IA analisa resultados, mas não prescreve capacitações.":"They use AI for synthesis and contextualization of diagnostic data. AI analyzes results, but does not prescribe training.","V/F":"T/F",VIEWER:kU,"VITE_SUPABASE_URL ausente":"VITE_SUPABASE_URL missing","Vai ter festa na praça. O que fazer primeiro?":"There will be a party in the square. What to do first?",Validade:_U,"Validade:":"Validity:",Validado:qU,Validados:LU,Validar:UU,"Validar dados oficiais":"Validate official data",Validação:"Validation","Validação (determinÃstica + IA)":"Validation (deterministic + AI)","Validação CNPJ & Dados Cadastrais":"CNPJ & Registration Data Validation","Validação CNPJ via Receita Federal":"CNPJ validation via Receita Federal","Validação Humana Obrigatória":"Human Validation Required","Validação Pré-Cálculo":"Pre-Calculation Validation","Validação automática via CNPJ":"Automatic validation via CNPJ","Validação cruzada":"Cross-validation","Validação de Dados Oficiais":"Official Data Validation","Validação de bounds antes do commit":"Bounds validation before commit","Validação final: rode build/typecheck, abra cada rota nova e confirme que as queries retornam dados (RLS pode bloquear silenciosamente se faltar GRANT).":"Final validation: run build/typecheck, open each new route, and confirm that queries return data (RLS can silently block if GRANT is missing).","Validação por agente IA (gemini-2.5-pro) sobre o texto pós-correção.":"Validation by AI agent (gemini-2.5-pro) on the post-correction text.","Validação removida":"Validation removed","Validação salva com falha parcial":"Validation saved with partial failure","Validação: â¥60% dos indicadores preenchidos":"Validation: â¥60% of indicators filled","Valide a autenticidade do Selo Institucional do Destino.":"Verify the authenticity of the Destination Institutional Seal.",Valor:BU,"Valor Bruto":"Raw Value","Valor Máximo":"Maximum Value","Valor MÃnimo":"Minimum Value","Valor Simulado":"Simulated Value","Valor de 0 a 1, exibido como fração decimal.":"Value from 0 to 1, displayed as a decimal fraction.","Valor deve ser numérico":"Value must be numeric","Valor deve ser um número inteiro":"Value must be an integer","Valor do indicador atualizado. Recalcule o diagnóstico para refletir no relatório.":"Indicator value updated. Recalculate the diagnosis to reflect the change in the report.","Valor expresso de 0 a 100, exibido com sufixo %.":"Value expressed from 0 to 100, displayed with the % suffix.","Valor inválido (deve ser numérico)":"Invalid value (must be numeric)","Valor já em milhares â exibido como R$ X mil.":"Value already in thousands â displayed as R$ X thousand.","Valor já em milhões â exibido como R$ X mi.":"Value already in millions â displayed as R$ X million.","Valor monetário em reais, exibido como R$ X,XX.":"Monetary value in reais, displayed as R$ X,XX.","Valor numérico":"Numeric value","Valor numérico do indicador":"Numeric indicator value","Valor numérico inválido.":"Invalid numeric value.","Valor textual (opcional)":"Textual value (optional)","Valor usado para cada indicador no momento do cálculo":"Value used for each indicator at the time of calculation","Valores de indicadores por assessment":"Indicator values per assessment","Valores importados com sucesso":"Values imported successfully","Valores são normalizados e processados pelo motor IGMA que aplica os 6 princÃpios sistêmicos de Mario Beni.":"Values are normalized and processed by the IGMA engine, which applies Mario Beni's 6 systemic principles.",Value:FU,"Vamos personalizar sua experiência de aprendizado":"Let's personalize your learning experience","Variante Empresarial":"Business Variant",Variação:"Variation","Variação máx. (%)":"Max. variation (%)","Variações superiores a 10% em relação ao perÃodo anterior. Alertas crÃticos sinalizam quedas acima de 25%.":"Variations exceeding 10% compared to the previous period. Critical alerts signal drops above 25%.","Variedade de climas":"Variety of climates","Variedade de seres vivos":"Variety of living beings","Variedade de seres vivos em um ecossistema":"Variety of living beings in an ecosystem","Vazamento Tóxico":"Toxic Leak","Vazamento de petróleo!":"Oil spill!","Vegetação tÃpica do interior":"Typical inland vegetation","Veias da Terra":"Veins of the Earth","Veja e gerencie feedbacks enviados pelos usuários.":"View and manage feedback sent by users.","Veja notas de provas e percentual de conclusão.":"View test scores and completion percentage.","Veja o progresso de cada aluno por sala. Acompanhe quem completou atividades, notas em provas e engajamento com as trilhas atribuÃdas.":"View each student's progress by class. Track who completed activities, test scores, and engagement with assigned trails.","Veja o status da isenção no seu Painel do Professor.":"See the exemption status on your Professor Panel.","Veja quais alunos completaram cada atribuição.":"See which students completed each assignment.","Veja seu desempenho":"View your performance","Veja todos os projetos em andamento, planos atrasad
201os e métricas de execução.":"View all ongoing projects, overdue plans, and execution metrics.","Vence em":"Expires on",Vencido:GU,Vencidos:VU,"Vender a lenha da caatinga para carvoarias":"Sell firewood from the caatinga to charcoal factories","Vender a madeira apreendida para financiar outras ações":"Sell seized timber to finance other actions","Vender direto ao consumidor via internet e feiras":"Sell directly to consumers via internet and fairs","Vender o selo para uma multinacional":"Sell the seal to a multinational",Ver:$U,"Ver Certificado":"View Certificate","Ver Certificados":"View Certificates","Ver Detalhes":"View Details","Ver Minhas Recomendações":"View My Recommendations","Ver Planos":"View Plans","Ver Trilha":"View Learning Path","Ver Trilhas (":"View Tracks (","Ver catálogo SISTUR EDU":"View SISTUR EDU catalog","Ver conteúdo":"View content","Ver detalhes":"View details","Ver diagnóstico":"View diagnostic","Ver diagnósticos":"View diagnoses","Ver diagnósticos enterprise":"View enterprise diagnoses","Ver diagnósticos territoriais":"View territorial diagnoses","Ver evidência":"View evidence","Ver histórico":"View history","Ver metodologia":"View methodology","Ver minha assinatura":"View my subscription","Ver no YouTube":"View on YouTube","Ver perfil":"View profile","Ver planos":"View plans","Ver planos e liberar resultados":"View plans and unlock results","Ver recomendações":"View recommendations","Ver relatório":"View report","Ver todas as {{n}} recomendações":"View all {{n}} recommendations","Ver todas as {{v0}} lives":"View all {{v0}} lives","Ver todas as {{v0}} recomendações":"View all {{v0}} recommendations","Ver todas atividades":"View all activities","Ver todos":"View all","Ver todos ({{v0}})":"View all ({{v0}})","Ver todos os {{v0}} cursos":"View all {{v0}} courses","Ver tutorial completo":"View full tutorial","Verdadeiro/Falso":"True/False","Verde no Sertão":"Green in the Sertão","Verificando OTAs, Google Business, site oficial e redes sociais...":"Checking OTAs, Google Business, official website and social media...","Verificando alertas...":"Checking alerts...","Verificando dados relacionados...":"Checking related data...","Verificando licença...":"Checking license...","Verificando permissões...":"Checking permissions...","Verificando relevância do arquivo...":"Checking file relevance...","Verificando...":"Verifying...",Verificar:HU,"Verificar Status":"Check Status","Verificação de Certificado":"Certificate Verification","Verificação de Certificado SISTUR":"SISTUR Certificate Verification","Verificação de Saúde do Sistema":"System Health Check","Verificação realizada em":"Verification performed on","Verificação: {{v0}}":"Verification: {{v0}}","Verifique no SNIS ou Atlas Esgotos da ANA. % de domicÃlios com coleta de esgoto adequada.":"Check SNIS or ANA's Sewerage Atlas. % of households with adequate sewage collection.","Verifique se existe Conselho Municipal de Turismo ativo (COMTUR). Consulte a Secretaria de Turismo ou legislação municipal.":"Verify if there is an active Municipal Tourism Council (COMTUR). Consult the Tourism Secretariat or municipal legislation.","Verifique se o código foi digitado corretamente ou entre em contato com o emissor.":"Check that the code was entered correctly or contact the issuer.","Verifique se o municÃpio pertence a alguma Região TurÃstica no Mapa do Turismo Brasileiro do MTur.":"Verify if the municipality belongs to any Tourist Region on MTur's Brazilian Tourism Map.","Verifique se o municÃpio possui Fundo Municipal de Turismo (FUMTUR) instituÃdo por lei.":"Verify if the municipality has a Municipal Tourism Fund (FUMTUR) established by law.","Verifique se o municÃpio possui Plano Municipal de Turismo vigente. Consulte a Secretaria de Turismo ou Diário Oficial.":"Verify if the municipality has an active Municipal Tourism Plan. Consult the Tourism Secretariat or Official Gazette.","Verifique se o municÃpio possui Plano Municipal de Turismo vigente. Consulte a Secretaria de Turismo ou o Diário Oficial.":"Verify if the municipality has an active Municipal Tourism Plan. Consult the Tourism Secretariat or the Official Gazette.","Verifique se você está logado e tem permissão para acessar este conteúdo.":"Check that you are logged in and have permission to access this content.","Versão 1.0 â Ãltima atualização: 25 de março de 2026":"Version 1.0 â Last updated: March 25, 2026","Versão atual":"Current version","Versão do Sistema":"System Version","Versão do algoritmo: {{v0}}":"Algorithm version: {{v0}}","Versão mobile/responsividade":"Mobile version/responsiveness","Vida na Ãgua":"Life in Water",Views:WU,Vigência:"Term",Vimeo:QU,Vinculado:KU,Vinculados:YU,Vincular:JU,"Vincular a uma Organização":"Link to an Organization","Vincular capacitação":"Link training","Vinculação à organização responsável":"Link to responsible organization","Vincule a trilhas existentes ou crie novas.":"Link to existing trails or create new ones.","Vincule a um diagnóstico e destino especÃficos.":"Link to a specific diagnosis and destination.","Violação de direitos autorais":"Copyright infringement","Violação de termos":"Terms violation",Violência:"Violence","Violência gráfica":"Graphic violence",Visibilidade:XU,"Visibilidade orgânica: resultados de busca, autoridade de domÃnios, mÃdia e OTAs":"Organic visibility: search results, domain authority, media, and OTAs",Visitantes:ZU,"Visitar uma comunidade quilombola para entender seus desafios":"Visit a quilombola community to understand their challenges","Visual da sua jornada de aprendizado":"Visual overview of your learning journey",Visualizador:eB,"Visualizador â apenas leitura":"Viewer â read-only","Visualizando dados de outra organização":"Viewing data from another organization",Visualizar:aB,"Visualizar Dataset Demo":"View Demo Dataset","Visualizar como Usuário":"View as User","Visualizar destino:":"View destination:","Visualizar e compartilhar":"View and share","Visualizar os termos":"View terms",Visualização:"View","Visualização de fonte, ano e confiança":"Source, year, and confidence visualization","Visualização:":"View:","Visualize dados de demonstração do SISTUR com diagnósticos pré-configurados":"Visualize SISTUR demo data with pre-configured diagnostics","Visualize e gerencie usuários de cada organização":"View and manage users for each organization","Visualize os dados de outro usuário/organização":"View data from another user/organization","Visualize todas as ações realizadas na plataforma.":"View all actions performed on the platform.","Visualize todas as licenças ativas, trials, conversões. Cancele ou estenda licenças. Gerencie cotas por organização e monitore métricas de conversão.":"View all active licenses, trials, conversions. Cancel or extend licenses. Manage quotas per organization and monitor conversion metrics.","Visão 360° do ecossistema turÃstico":"360° view of the tourist ecosystem","Visão Enterprise: Mostra dad
201os das organizações do trade turÃstico.":"Enterprise View: Shows data from tourism trade organizations.","Visão Geral":"Overview","Visão Integrada indisponÃvel":"Integrated View unavailable","Visão Integrada â Empreendimento à MunicÃpio":"Integrated View â Business à Municipality","Visão Regional":"Regional View","Visão Territorial: Foca nos dados do destino turÃstico.":"Territorial View: Focuses on tourism destination data.","Visão completa do modelo de acesso: planos, avaliação gratuita por consumo, cotas do Professor Beni e regras fixas da metodologia.":"Complete view of the access model: plans, free consumption-based trial, Professor Beni's quotas, and fixed methodology rules.","Visão consolidada do setor hoteleiro":"Consolidated view of the hotel sector","Visão consolidada por categorias: Performance, Sustentabilidade, Governança e mais":"Consolidated view by category: Performance, Sustainability, Governance and more","Visão de Projetos":"Projects View","Visão focada apenas em indicadores que disparam ações corretivas (status Atenção ou CrÃtico) com cursos prescritos automaticamente pelo motor SISTUR EDU.":"View focused only on indicators that trigger corrective actions (Attention or Critical status) with courses automatically prescribed by the SISTUR EDU engine.","Visão geral":"Overview","Visão geral do catálogo":"Catalog overview","Visão geral do estado atual do SISTUR":"Overview of SISTUR's current status","Visão geral dos pilares":"Pillars overview","Visão geral por turma":"Overview by class","Visão macro estratégica do destino":"Macro strategic vision of the destination","Visão por sala":"View by room","Visão sistêmica baseada em Mario Beni (2007)":"Systemic view based on Mario Beni (2007)","VisÃvel ao aluno":"Visible to the student","Vitrine de destinos certificados com selo de qualidade SISTUR":"Showcase of destinations certified with SISTUR quality seal",Vitória:"Victory","Vitória da Comunidade":"Community Victory","Vive em simbiose com anêmonas nos recifes de coral":"Lives in symbiosis with anemones in coral reefs","Vizinhos em Crise":"Neighbors in Crisis","Vocação, abrangência geográfica, objetivos...":"Vocation, geographical scope, objectives...",Você:"You","Você Venceu!":"You Won!","Você ainda não está matriculado em nenhuma turma.":"You are not enrolled in any classes yet.","Você ainda não fez nenhuma solicitação de conteúdo":"You haven't made any content requests yet","Você ainda não tem tarefas atribuÃdas.":"You don't have any tasks assigned yet.","Você ainda não tem uma assinatura online ativa. Escolha um plano para começar.":"You don't have an active online subscription yet. Choose a plan to get started.","Você analisa antes de decidir. Continue assim!":"You analyze before deciding. Keep it up!",'Você aparece como "Usuário Anônimo"':'You appear as "Anonymous User"',"Você aparecerá como anônimo em posts públicos":"You will appear as anonymous in public posts","Você aprende sobre mandala de cultivo, barragens subterrâneas e plantas nativas resistentes à seca. O sertanejo tem soluções que a ciência está redescobrindo.":"You learn about cultivation mandalas, underground dams, and native drought-resistant plants. The sertanejo has solutions that science is rediscovering.","Você atingiu o número máximo de tentativas.":"You have reached the maximum number of attempts.","Você chega a uma vila de pescadores no litoral nordestino. A praia que antes era paradisÃaca agora sofre com lixo nas areias, esgoto despejado no mar e recifes de coral morrendo. O turismo desordenado tomou conta e os pescadores tradicionais mal conseguem pescar.":"You arrive at a fishing village on the northeastern coast. The beach, once paradisiacal, now suffers from trash on its sands, sewage dumped into the sea, and dying coral reefs. Disordered tourism has taken over, and traditional fishermen can barely fish.","Você chega ao cerrado mineiro, onde o avanço da soja e do gado devora a vegetação nativa. Nascentes estão secando, lobos-guarás perdem habitat e comunidades quilombolas lutam para manter suas terras.":"You arrive at the Minas Gerais Cerrado, where the advance of soy and cattle devours n
201ative vegetation. Springs are drying up, maned wolves lose habitat, and quilombola communities fight to keep their lands.",'Você chega ao sertão nordestino durante uma seca severa. A caatinga sofre com desmatamento para lenha, criação extensiva de cabras e mudanças climáticas. Dona Francisca mostra uma nascente que secou: "Antes tinha água o ano todo. Agora, só saudade."':'You arrive in the northeastern sertão during a severe drought. The caatinga suffers from deforestation for firewood, extensive goat farming, and climate change. Dona Francisca shows a dried-up spring: "Before, there was water all year round. Now, only longing."',"Você chega à Serra da Mantiqueira, onde picos enevoados abrigam nascentes cristalinas e florestas de altitude. Mas o turismo desordenado, a expansão urbana e o fogo ameaçam esse santuário.":"You arrive at the Serra da Mantiqueira, where misty peaks shelter crystalline springs and high-altitude forests. But disordered tourism, urban expansion, and fire threaten this sanctuary.","Você concluiu o curso base do teste gratuito. Para acessar esta e todas as demais trilhas formativas, conheça os planos do SISTUR EDU.":"You have completed the basic course of the free trial. To access this and all other learning paths, check out SISTUR EDU's plans.","Você concluiu o curso base do teste gratuito. Para acessar este e todos os demais treinamentos, com certificados e o Professor Beni sem limites, conheça os planos.":"You have completed the basic course of the free trial. To access this and all other training, with certificates and unlimited Professor Beni, check out the plans.","Você concluiu o curso base incluÃdo no teste gratuito. Para seguir nas trilhas formativas, com certificados e o Professor Beni sem limites, conheça os planos.":"You have completed the basic course included in the free trial. To continue on the learning paths, with certificates and unlimited Professor Beni, check out the plans.","Você descobre que hotéis despejam esgoto sem tratamento direto no mar.":"You discover that hotels dump untreated sewage directly into the sea.","Você encontra trilhas erodidas, lixo e sinais de queimadas recentes.":"You find eroded trails, trash, and signs of recent fires.","Você entrou no placar semanal!":"You entered the weekly leaderboard!","Você equilibrou o destino!":"You balanced the destination!","Você está na avaliação por uso: sem prazo, liberada até você consumir os itens de cortesia abaixo.":"You are on a usage-based evaluation: no deadline, released until you consume the courtesy items below.","Você está no nÃvel {{level}} â desbloqueie itens conforme evolui.":"You are at level {{level}} â unlock items as you progress.","Você está offline":"You are offline","Você está visualizando dados de demonstração (Gramado, Bonito, Itanhaém)":"You are viewing demo data (Gramado, Bonito, Itanhaém)","Você foi aprovado no exame!":"You passed the exam!","Você foi vinculado à organização com sucesso!":"You have been successfully linked to the organization!","Você já está neste plano com essa quantidade de usuários.":"You are already on this plan with this number of users.","Você já está vinculado a um professor.":"You are already linked to a professor.","Você não atingiu a pontuação mÃnima":"You did not reach the minimum score","Você não está matriculado nesta turma.":"You are not enrolled in this class.","Você não tem permissão para comentar aqui.":"You do not have permission to comment here.","Você não tem permissão para comentar aqui. Contas pendentes de aprovação ou em organização padrão não podem participar de discussões.":"You do not have permission to comment here. Accounts pending approval or in standard organization cannot participate in discussions.","Você não tem permissão para gerenciar feedbacks. Use o botão no cabeçalho para enviar sugestões.":"You do not have permission to manage feedback. Use the button in the header to send suggestions.","Você não tem permissão para gravar dados neste diagnóstico. Peça a um administrador ou analista da organização para executar o pré-preenchimento.":"You do not have permission to save data in this diagnostic. Ask an administrator or organization analyst to perform the pre-filling.","Você perde o emprego, mas ganha a consciência limpa.":"You lose your job, but gain a clean conscience.","Você pode criar dados no ambiente de demonstração.":"You can create data in the demo environment.","Você pode descartar recomendações que não interessam.":"You can discard recommendations that are not of interest.","Você pode evoluir o nÃvel do diagnóstico a qualquer momento, adicionando mais indicadores conforme a maturidade do destino aumenta.":"You can evolve the diagnosis level at any time, adding more indicators as the destination's maturity increases.","Você pode prosseguir para preenchimento manual ou editar o destino para adicionar o código IBGE.":"You can proceed to manual entry or edit the destination to add the IBGE code.","Você pode revisar os termos a qualquer momento nas Configurações.":"You can review the terms at any time in Settings.","Você pode se matricular em várias trilhas simultaneamente.":"You can enroll in multiple trails simultaneously.","Você pode usar o template padrão ou personalizar os indicadores.":"You can use the standard template or customize the indicators.","Você precisa estar autenticado para gerar relatórios":"You must be signed in to generate reports","Você precisa estar logado para enviar feedback":"You need to be logged in to send feedback","Você prioriza o meio ambiente! Excelente!":"You prioritize the environment! Excellent!","Você recebe 5 cartas por turno e pode jogar até 3. Cada carta tem custo em moedas ð° e fortalece um pilar do seu território.":"You receive 5 cards per turn and can play up to 3. Each card costs coins ð° and strengthens one pillar of your territory.","Você recebe notificações de respostas aos seus posts.":"You receive notifications of replies to your posts.","Você receberá notificação quando for adicionado a uma sala.":"You will receive a notification when added to a room.","Você receberá um alerta quando restarem 2 dias.":"You will receive an alert when 2 days remain.","Você respondeu":"You answered","Você saiu da sua conta":"You logged out of your account","Você saiu do placar semanal":"You left the weekly leaderboard","Você será direcionado para a página de importação onde poderá:":"You will be directed to the import page where you can:","Você será redirecionado para autorizar no Cloudbeds. Ao retornar, a sincronização diária inicia automaticamente.":"You will be redirected to authorize on Cloudbeds. Upon returning, daily synchronization starts automatically.","Você só pode andar para cima, baixo, esquerda ou direita.":"You can only move up, down, left or right.","Você só pode virar 2 cartas por vez.":"You can only flip 2 cards at a time.","Você tem um número limitado de erros. Se errar demais, o jogo acaba! Pense bem antes de virar a segunda carta.":"You have a limited number of mistakes. If you make too many, the game ends! Think carefully before flipping the second card.","Você tenta montar uma patrulha, mas a comunidade desconfia. Poucos se voluntariam. Enquanto isso, os madeireiros expandem suas operações para uma área de nascentes.":"You try to set up a patrol, but the community is suspicious. Few volunteer. Meanwhile, loggers expand their operations into a spring area.","Você terá tempo limitado para completar o exame":"You will have limited time to complete the exam","Você usou todas as perguntas disponÃveis.":"You have used all available questions.",'Você verá uma tela de "Aprovação Pendente" enquanto aguarda.':'You will see a "Pending Approval" screen while you wait.',"Você é o guardião de um território! Defenda-o de ameaças jogando cartas estratég
201icas e mantendo o equilÃbrio entre os 3 pilares.":"You are the guardian of a territory! Defend it from threats by playing strategic cards and maintaining balance among the 3 pillars.","Você é um agente de restauração ambiental! Sua missão é restaurar o bioma escolhido tomando as melhores decisões ao longo da jornada.":"You are an environmental restoration agent! Your mission is to restore your chosen biome by making the best decisions throughout the journey.",'Você é um jovem guardião ambiental que acaba de chegar a uma comunidade ribeirinha na Amazônia. A floresta ao redor está ameaçada: madeireiros ilegais avançam, queimadas se aproximam e a comunidade local precisa de ajuda. O lÃder da comunidade, Seu Raimundo, te recebe com preocupação: "A floresta está pedindo socorro. Precisamos de alguém corajoso para nos ajudar."':'You are a young environmental guardian who has just arrived in a riverside community in the Amazon. The surrounding forest is threatened: illegal loggers advance, fires approach, and the local community needs help. The community leader, Seu Raimundo, greets you with concern: "The forest is crying for help. We need someone courageous to help us."',"Voltando para seus próprios dados":"Returning to your own data",Voltar:oB,"Voltar ao Catálogo":"Back to Catalog","Voltar ao Dashboard":"Back to Dashboard","Voltar ao Histórico":"Back to History","Voltar ao InÃcio":"Back to Home","Voltar ao Perfil":"Back to Profile","Voltar ao SISTUR":"Back to SISTUR","Voltar ao Tutorial":"Back to Tutorial","Voltar ao catálogo":"Back to catalog","Voltar ao inÃcio":"Back to start","Voltar ao login":"Back to login","Voltar aos jogos":"Back to games","Voltar para diagnósticos":"Back to assessments","Voltar para edição?":"Go back to editing?","Voltar para turmas":"Back to classes","Voltar à s Trilhas":"Back to Learning Paths",Volume:iB,"Volume adequado para instância atual":"Volume suitable for current instance","Volume de Dados":"Data Volume","Volume de Usuários":"User Volume","Volume de dados leve":"Light data volume","Volume de água para produzir um bem":"Volume of water to produce a good","Volume orgânico, sinais transacionais em OTAs, distribuição mensal e picos de interesse":"Organic volume, transactional signals in OTAs, monthly distribution, and peaks of interest","Voos 12m":"Flights 12m","Voos e acesso rodoviário":"Flights and road access","Voos/semana":"Flights/week","Vozes da Serra":"Voices of the Mountains","Vá em Diagnósticos â Nova Rodada, escolha o destino/empreendimento, o nÃvel e o perÃodo de referência.":"Go to Diagnostics â New Round, choose the destination/enterprise, level, and reference period.",Válido:"Valid","Válido até":"Valid until",Válidos:"Valid",VÃdeo:"Video","VÃdeo demonstrativo em breve":"Demo video coming soon","VÃdeo em breve":"Video coming soon","VÃdeo enviado":"Video uploaded","VÃdeo enviado com sucesso!":"Video uploaded successfully!","VÃdeo-aulas":"Video lessons","VÃdeos podem ser assistidos em velocidade 1x, 1.5x ou 2x.":"Videos can be watched at 1x, 1.5x, or 2x speed.","VÃnculo com professor":"Instructor association","VÃnculo criado":"Link created","VÃnculo removido":"Link removed",VÃnculos:"Links","VÃnculos Externos":"External Links",Warn:tB,"Watch tracking + anti-cheat + score mÃnimo":"Watch tracking + anti-cheat + minimum score",Waterfall:rB,"Wi-Fi público":"Public Wi-Fi","Widgets do Dashboard":"Dashboard Widgets",Word:sB,"X de Y indicadores preenchidos":"X of Y indicators filled","XP Total":"Total XP","XP de recompensa":"Reward XP","XP do Top 10":"Top 10 XP","XP ganho nos últimos 7 dias â apenas alunos que optaram aparecem.":"XP earned in the last 7 days â only students who opted in appear.","XP médio":"Average XP","XP, badges, conquistas, missões diárias e recompensas":"XP, badges, achievements, daily missions and rewards","XP, nÃvel e badges acumulados na plataforma.":"XP, level and badges earned on the platform.",YouTube:nB,"Zero Alucinação":"Zero Hallucination","` for human-readable display * (e.g. tables, charts, report text). */ export function formatIndicatorValueWithUnit( value: number | null | undefined, indicator?: IndicatorLike | null, ): string":"` for human-readable display * (e.g. tables, charts, report text). */ export function formatIndicatorValueWithUnit( value: number | null | undefined, indicator?: IndicatorLike | null, ): string","a cada subseção concluÃda (RA â OE â AO â envelope), e a tela renderiza esse conteúdo parcial em tempo real, com barra de progresso e badge animado. Quando o job completa, troca-se naturalmente para o conteúdo final persistido em":"with each subsection completed (RA â OE â AO â envelope), and the screen renders this partial content in real time, with a progress bar and animated badge. When the job c
201ompletes, it naturally switches to the final content persisted in","a diária sugerida parte da diária média do mês e é ajustada pela distância entre a ocupação real e a meta, pelo número de eventos e pela diária de mercado informada. A variação respeita o limite mensal, o piso e o teto. Elasticidade simplificada: cada +1% no preço reduz 0,3% da ocupação. RevPAR = diária à ocupação. à apenas sugestão; nenhum sistema externo é alterado. A justificativa por IA é opcional e só explica o cálculo.":"the suggested daily rate starts from the average daily rate of the month and is adjusted by the distance between actual occupancy and target, by the number of events and by the reported market daily rate. The variation respects the monthly limit, floor and ceiling. Simplified elasticity: each +1% in price reduces occupancy by 0.3%. RevPAR = daily rate à occupancy. It is only a suggestion; no external system is altered. The AI justification is optional and only explains the calculation.","aceita 1â12 ou vazio (medição anual).":"accepts 1â12 or empty (annual measurement).","aceita vÃrgula ou ponto decimal.":"accepts comma or decimal point.","acima.":"above.",adicionar:cB,admin:dB,ai_model:lB,ai_provider:uB,"alta gestão, secretários, prefeitos, comitês gestores.":"senior management, secretaries, mayors, managing committees.","[email protected], [email protected]":"[email protected], [email protected]",anatel_coverage_cache:mB,ano:pB,"anúncio publicado":"ad published","anúncios publicados":"ads published","as edge functions":"as edge functions",assessment_indicator_audit:gB,ativas:hB,"ativos no perÃodo":"active in the period",até:"until","auth-email-hook: Templates customizados de e-mail de autenticação":"auth-email-hook: Custom authentication email templates",auto:fB,avaliação:"assessment",avaliações:"assessments","baseado nos comentários":"based on comments","benchmark_max = 0.862 (melhor municÃpio BR)":"benchmark_max = 0.862 (best municipality BR)","benchmark_max = 60 (pior cenário)":"benchmark_max = 60 (worst-case scenario)","benchmark_min = 0.500 (pior municÃpio BR)":"benchmark_min = 0.500 (worst municipality BR)","beni-chat":"beni-chat","beni-chat: IA conversacional contextualizada com dados do destino":"beni-chat: Conversational AI contextualized with destination data",binário:"binary","boas práticas, governança, planejamento e gestão de destinos.":"best practices, governance, planning, and destination management.","c.training_id) || null, target_roles: ['GESTORES', 'TECNICOS'], reasoning: `Baseado no diagnóstico do $":"c.training_id) || null, target_roles: ['MANAGERS', 'TECHNICIANS'], reasoning: `Based on the diagnostic of the $","calculate-assessment: Execução do pipeline IGMA completo":"calculate-assessment: Full IGMA pipeline execution",claude_budget_pillar:vB,codigo:bB,"codigo,valor,fonte":"code,value,source","coerência narrativa":"narrative coherence",comentário:"comment",community:AB,"conceitos dos pilares RA, OE e AO, as 6 regras do IGMA, teoria sistêmica do turismo.":"concepts of the RA, OE, and AO pillars, the 6 IGMA rules, systemic tourism theory.","concluiu com êxito a trilha formativa":"successfully completed the learning path","concluiu com êxito o curso":"successfully completed the course","concluiu com êxito o curso acima":"successfully completed the course above",conformidade:yB,consumo:SB,"[email protected]":"[email protected]",'copyToClipboard( buildModuleManifestJson(m), `Manifesto de "$':'copyToClipboard( buildModuleManifestJson(m), `Manifest of "$','copyToClipboard( buildModuleMigrationPrompt(m), `Prompt de migração de "$':'copyToClipboard( buildModuleMigrationPrompt(m), `Migration prompt for "$',"correção automática aplicada":"automatic correction applied","correções automáticas aplicadas":"automatic corrections applied","criados no perÃodo":"created in the period",cursos:EB,"d.course_id).filter(Boolean) as string[]; let courseMap = new Map":"d.course_id).filter(Boolean) as string[]; let courseMap = new Map",'d.id !== id)); toast.success(`Valor online adotado em "$':'d.id !== id)); toast.success(`Online value adopted in "$',"da camada semântica, retornando aprovações, alertas e violações com trechos citados.":"of the semantic layer, returning approvals, alerts, and violations with quoted excerpts.","dados.turismo.gov.br":"dados.turismo.gov.br","datasets oficiais abertos":"official open datasets","dd 'de' MMM":"MMM dd","dd 'de' MMM yyyy":"MMM dd, yyyy","dd 'de' MMMM 'de' yyyy":"MMMM dd, yyyy","dd 'de' MMMM 'de' yyyy 'à s' HH:mm":"MMMM dd, yyyy 'at' HH:mm","dd/MM/yyyy 'à s' HH:mm":"MM/dd/yyyy 'at' HH:mm","dd/MM/yyyy 'à s' HH:mm:ss":"MM/dd/yyyy 'at' HH:mm:ss",de:CB,"de exemplo. Use como modelo. Para carregá-la no editor, clique em":"example. Use as a template. To load it into the editor, click on","de hospital
201idade, sendo que":"of hospitality, given that",desativa:TB,"desenvolvida pelo Prof. Mario Carlos Beni. A teoria estabelece que o turismo é um sistema aberto, composto por subsistemas interdependentes que devem ser analisados de forma holÃstica.":"developed by Prof. Mario Carlos Beni. The theory states that tourism is an open system, composed of interdependent subsystems that must be analyzed holistically.","deste destino: alimenta-se de fontes oficiais (Cadastur, ANAC, CAGED, IGMA) e de registros manuais. Complementa o Diagnóstico (que avalia capacidade estrutural em ciclos) acompanhando os":"of this destination: it is fed by official sources (Cadastur, ANAC, CAGED, IGMA) and manual records. It complements the Diagnostic (which evaluates structural capacity in cycles) by monitoring the","diagnósticos finalizados":"diagnoses completed",dias:PB,"direto do":"direct from","direto, orientado a decisão, com destaque para riscos e oportunidades. Reduz citações acadêmicas, mantém apenas o essencial para legitimidade.":"direct, decision-oriented, highlighting risks and opportunities. Reduces academic citations, retaining only what is essential for legitimacy.","dispara três chamadas paralelas (uma por pilar I-RA, I-OE, I-AO), cada uma restrita ao seu escopo;":"triggers three parallel calls (one per pillar I-RA, I-OE, I-AO), each restricted to its scope;","do SISTUR.":"of SISTUR.","documentos de referência":"reference documents",duration_ms:RB,"e a janela de contexto são calibrados dinamicamente por tier (essencial / estratégico / integral), template e quantidade real de indicadores, evitando tanto respostas truncadas em diagnósticos integrais quanto reservas excessivas em diagnósticos pequenos. Templates Executivo e Investidor mantêm pipeline monolÃtico (estrutura curta sem subseções por pilar).":"and the context window are dynamically calibrated by tier (essential / strategic / integral), template and actual number of indicators, avoiding both truncated answers in integral diagnostics and excessive reservations in small diagnostics. Executive and Investor Templates maintain a monolithic pipeline (short structure without subsections per pillar).","e dispara toast + Notification do navegador quando o relatório fica pronto.":"and triggers toast + browser notification when the report is ready.","e o painel Comercial (admin) refletem estas mesmas regras.":"and the Commercial (admin) panel reflect these same rules.","e o pipeline de validação cruzada, mas diferem em público-alvo, tamanho, estrutura e tom.":"and the cross-validation pipeline, but differ in target audience, size, structure, and tone.","e processado por um worker dedicado (":"and processed by a dedicated worker (","e todos os dados de indicadores, pontuações e planos de ação serão permanentemente excluÃdos.":"and all indicator data, scores and action plans will be permanently deleted.","e.course_title === r.course_title); return (":"e.course_title === r.course_title); return (","e.destination_id) ?? []); return":"e.destination_id) ?? []); return","e.evolutionState !== null); return (":"e.evolutionState !== null); return (","e.evolutionState === 'REGRESSION').length; setStats(":"e.evolutionState === 'REGRESSION').length; setStats(","e.is_mandatory && e.enrollment_status !== 'completed' && e.enrollment_status !== 'waived').length; return (":"e.is_mandatory && e.enrollment_status !== 'completed' && e.enrollment_status !== 'waived').length; return (","e.key === r.key); return (":"e.key === r.key); return (","e.message === error.message && e.page_url === error.page_url ); if (!isDupe && errorQueue.current.length":"e.message === error.message && e.page_url === error.page_url ); if (!isDupe && errorQueue.current.length",editado:xB,"edu-professor":"edu-professor","edu-student":"edu-student","election_year ⥠2024":"election_year ⥠2024","elevenlabs-tts":"elevenlabs-tts","[email protected]":"[email protected]","entradas ativas que não estão no arquivo (não exclui, permite reverter).":"active entries not in the file (does not delete, allows reverting).","entre os diagnósticos territoriais e empresariais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais), mantendo a mesma lógica sistêmica e as 6 regras do Motor IGMA.":"between territorial and business diagnostics (NPS, Online Reviews, Training Hours, % Local Employees, % Local Purchases and Environmental Certifications), maintaining the same systemic logic and the 6 rules of the IGMA Engine.","equipe técnica e gestores públicos.":"technical team and public managers.","erp-diagnostics":"erp-diagnostics","estende a teoria sistêmica de Mario Beni para organizações do setor privado, especialmente hotéis, resorts e redes hoteleiras. O módulo utiliza":"extends Mario Beni's systemic theory to private sector organizations, especially hotels, resorts, and hotel chains. The module uses","está ativo no diagnóstico (zero custo extra para rodadas sem opt-in).":"is active in the diagnostic (zero extra cost for roun
201ds without opt-in).","ex.: 42.5":"e.g.: 42.5","ex.: CLASSIFICAÃÃO (régua oficial 5 nÃveis)":"e.g.: CLASSIFICATION (official 5-level scale)","ex.: classification.scale_5_levels":"ex.: classification.scale_5_levels","ex.: reports":"ex.: reports","ex: CAGED, IBGE, levantamento próprio":"e.g.: CAGED, IBGE, own survey","ex: Concluir 5 cursos":"e.g.: Complete 5 courses","ex: course_master":"e.g.: course_master",'exibe os logs com filtros por provider, busca livre, dialog de detalhes e auto-refresh a 15s, além do bloco "Pipeline Claude â Tempo Real" com as 4 fases mapeadas (Pilares, Envelope, Validação, Persistência) e barra de progresso geral.':'displays logs with provider filters, free search, details dialog and 15s auto-refresh, in addition to the "Claude Pipeline â Real Time" block with the 4 mapped phases (Pillars, Envelope, Validation, Persistence) and general progress bar.',"fale com o time":"talk to the team","fallback manual":"manual fallback","fetch-official-data: Proxy para APIs oficiais (IBGE, DATASUS, STN, CADASTUR, Mapa do Turismo)":"fetch-official-data: Proxy for official APIs (IBGE, DATASUS, STN, CADASTUR, Mapa do Turismo)","filtre Indicadores, Gargalos e Tratamento por unidade da marca.":"filter Indicators, Bottlenecks and Treatment by brand location.",first_course:wB,fonte:IB,"fonte de verdade":"source of truth",gargalo:DB,"gasto por estadia à estadias por ano à anos de relacionamento à margem. CAC sugerido pela comissão média ponderada dos canais. LTV/CAC abaixo de 3 indica aquisição cara.":"spend per stay à stays per year à years of relationship à margin. CAC suggested by the weighted average commission of the channels. LTV/CAC below 3 indicates expensive acquisition.","generate-report: Relatórios personalizados via IA com templates":"generate-report: AI-powered custom reports with templates",generated_reports:OB,"gera o envelope (introdução, ficha técnica, metodologia, alertas IGMA, análise integrada, gargalos, benchmarks, prognóstico, banco de ações, fontes, considerações finais, referências, glossário, apêndice) recebendo os textos dos pilares como contexto de leitura para garantir":"generates the envelope (introduction, technical sheet, methodology, IGMA alerts, integrated analysis, bottlenecks, benchmarks, prognosis, action bank, sources, final considerations, references, glossary, appendix) receiving the texts of the pillars as reading context to ensure","getting-started":"getting-started",global:MB,"global mantém o acompanhamento via":"global keeps track via","grupos de capacitação, salas e atividades":"training groups, rooms and activities","histórico sem modelo":"history without model","horas por semana":"hours per week","hover:no-underline":"hover:no-underline","https://<tenant>.hospitality.oracleindustry.com":"https://<tenant>.hospitality.oracleindustry.com","https://api.hitsmobile.com.br/v1":"https://api.hitsmobile.com.br/v1","https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap":"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap","https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap":"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap","https://www.gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged":"https://www.gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged","https://www.youtube.com/iframe_api":"https://www.youtube.com/iframe_api","https://youtube.com/...":"https://youtube.com/...","igma_pib_per_capita (IBGE â automático)":"igma_pib_per_capita (IBGE â automatic)","imediatamente (HTTP 202) e faz polling. Mesmo se o usuário fechar a aba ou navegar para outra página, o":"immediately (HTTP 202) and polls. Even if the user closes the tab or navigates to another page, the","implementa os princÃpios da":"implements the principles of",inativa:NB,indicadores:zB,"indicadores selecionados":"selected indicators","indicadores · {{v0}}%":"indicators · {{v0}}%",indicator_values:jB,"ingest-anatel":"ingest-anatel","ingest-cadastur":"ingest-cadastur","ingest-mapa-turismo: Ingestão de dados do Mapa do Turismo Brasileiro":"ingest-mapa-turismo: Data ingestion from the Brazilian Tourism Map","ingest-tse":"ingest-tse","ingest-youtube: Metadados de vÃdeos para biblioteca EDU":"ingest-youtube: Video metadata for EDU library","integral MEC/ABNT (NBR 14724, 6024, 6023, 6028, 10520).":"integral MEC/ABNT (NBR 14724, 6024, 6023, 6028, 10520).","investidores, fundos, parceiros privados e captação.":"investors, funds, private partners and fundraising.",jobId:kB,job_id:_B,"já fixada":"already pinned","já fixadas":"already pinned","já foram pré-preenchidos e validados com dados oficiais.":"have already been pre-filled and validated with official data.","kWh/UH/mês":"kWh/DU/month","l.code === lng); /** * Sincroniza o idioma escolhido com a conta do usuário: * - Ao entrar, se a conta tiver um idioma salvo diferente do atual, aplica-o. * - Se a conta não tiver idioma salvo, grava o idioma atual (do navegador). * - Ao trocar de idioma, grava a nova escolha na conta. * Assim a preferência vale em qualquer dispositivo/sessão. */ export function useLanguageSync()":"l.code === lng); /** * Synchronizes the chosen language with the user's account: * - Upon login, if the account has a saved language different from the current one, it applies it. * - If the account has no saved language, it saves the current language (from the browser). * - When changing language, it saves the new choice to the account. * This way, the preference is valid across any device/session. */ export function useLanguageSync()","leitos por mil habitantes":"beds per thousand inhabitants",lives:qB,localStorage:LB,"m.user_id))), [mentions] ); function handleChange(e: React.ChangeEvent":"m.user_id))), [mentions] ); function handleChange(e: React.ChangeEvent","mailto:[email protected]?subject=Proposta%20SISTUR":"mailto:[email protected]?subject=SISTUR%20Proposal","mailto:[email protected]":"mailto:[email protected]","mailto:[email protected]?subject=Ajuda%20com%20o%20acesso%20ao%20SISTUR":"mailto:[email protected]?subject=Help%20with%20SISTUR%20access","mapa do destino com raio de influência, concorrentes (intensidade pelo número de avaliações), unidades da rede, eventos, demanda aérea (ANAC) e origem dos visitantes informada. Não há ranking entre municÃpios.":"destination map with influence radius, competitors (intensity by number of reviews), network units, events, air demand (ANAC) and visitor origin
201informed. There is no ranking among municipalities.",max_tokens:UB,metadata:BB,"metric_code, reference_year, reference_month, value, source, notes":"metric_code, reference_year, reference_month, value, source, notes",min:FB,model:GB,"moderate-image: Moderação de conteúdo via IA":"moderate-image: AI-powered content moderation","monitor permanente":"permanent monitor",municÃpios:"municipalities",mês:"month","mÃnimo de 2.500 palavras.":"minimum of 2,500 words.","na origem dos dados. Cada indicador é classificado por sua fonte e método de coleta, com nÃveis de confiabilidade claramente exibidos.":"at the data source. Each indicator is classified by its source and collection method, with clearly displayed reliability levels.","nenhum resultado":"no results","no Dashboard Territorial renderiza os 3 conjuntos como setores circulares, com anel externo MST quando o opt-in está ativo.":"in the Territorial Dashboard renders the 3 sets as circular sectors, with an external MST ring when opt-in is active.","no catálogo e só são exigidos quando o opt-in":"in the catalog and are only required when opt-in","no próximo cálculo do diagnóstico.":"in the next diagnostic calculation.","no topo do painel.":"at the top of the panel.","no unique constraint matching":"no unique constraint matching","[email protected], [email protected]":"[email protected], [email protected]","não encontrado":"not found","não verificado":"unverified","o Beni não responde sobre programação, saúde, polÃtica, religião ou temas fora do turismo e da metodologia SISTUR.":"Beni does not respond to questions about programming, health, politics, religion, or topics outside of tourism and the SISTUR methodology.","o agente identificou afirmações que não encontrou respaldo direto na bibliografia ou na tabela de auditoria. Confirme ou ajuste manualmente antes de publicar â pode ser tanto um falso positivo quanto uma fragilidade real do texto.":"the agent identified statements that did not find direct support in the bibliography or the audit table. Confirm or adjust manually before publishing â it could be either a false positive or a real weakness in the text.","o componente":"the component","o fim do perÃodo":"the end of the period","o motor de coerência identificou estes pontos mas não tinha um valor oficial a substituir. Revisão humana recomendada antes de publicar.":"the coherence engine identified these points but had no official value to substitute. Human review recommended before publishing.","o valor já foi substituÃdo pelo número oficial da tabela de auditoria antes do relatório ser salvo. Nenhuma ação adicional é necessária â o documento já está consistente.":"the value has already been replaced by the official number from the audit table before the report was saved. No further action is needed â the document is already consistent.",'o.id === id)?.name ?? "Organização") : "Global (padrão)"; return (':'o.id === id)?.name ?? "Organization") : "Global (default)"; return (',"ocorrências/100k":"occurrences/100k",organizacional:VB,ou:$B,"p.destination_id).filter(Boolean) as string[]; if (peerIds.length":"p.destination_id).filter(Boolean) as string[]; if (peerIds.length","p.pillar === \"OE\");', '', ' // REGRA 1 â RA PRIORITÃRIO', ' if (RA?.severity === \"CRITICO\")":`p.pillar === "OE");', '', ' // RULE 1 â RA PRIORITY', ' if (RA?.severity === "CRITICO")`,padrão:"default","para ajustar os recursos de CPU, memória e I/O do banco de dados.":"to adjust the CPU, memory, and I/O resources of the database.","para carregar uma regra válida.":"to load a valid rule.","para começar.":"to get started.","para endereçar os problemas identificados.":"to address the identified problems.","para liberar as trilhas formativas.":"to unlock the training tracks.","para localizar o CNPJ de":"to locate the CNPJ of","para planejamento anual ou captação de recursos. Reserve o":"for annual planning or fundraising. Reserve the","para projetos de grande porte ou certificações de destino.":"for large-scale projects or destination certifications.","para pré-preencher mais de 25 indicadores: IBGE Agregados, IBGE SIDRA (Censo), IBGE Pesquisas, DATASUS, INEP, STN/Tesouro Nacional, CADASTUR (datasets abertos), Mapa do Turismo Brasileiro (API REST do MTur) e ANA/Hidroweb (Qualiágua) para o IQA municipal. Indicadores que não possuem API pública (como taxa de escolarização e dados de levantamento local) são preenchidos manualmente pelo operador do diagnóstico, sempre com confirmação humana antes do cálculo.":"to pre-fill more than 25 indicators: IBGE Agregados, IBGE SIDRA (Census), IBGE Pesquisas, DATASUS, INEP, STN/Tesouro Nacional, CADASTUR (open datasets), Mapa do Turismo Brasileiro (MTur REST API) and ANA/Hidroweb (Qualiágua) for the municipal IQA. Indicators that do not have a public API (such as schooling rate and local survey data) are filled manually by the diagnostic operator, always with human confirmation before calculation.",'para valores numéricos. As correções automáticas já foram aplicadas no texto; apenas os itens listados como "para revisão manual" exigem ação.':'for numerical values. Automatic corrections have already been applied to the text; only items listed as "for manual review" require action.',"para {{n}} usuários. Acima de {{max}} usuários, fale com o time comercial.":"for {{n}} users. Above {{max}} users, please contact the sales team.",pares:HB,"pergunte sobre diagnósticos que você já realizou. O Beni vai confirmar o nome exato antes de analisar.":"ask about diagnostics you have already performed. Beni will confirm the exact name before analyzing.","pergunte sobre relatórios gerados no sistema. O Beni vai confirmar o nome exato antes de analisar.":"ask about reports generated in the system. Beni will confirm the exact name before analyzing.",persist_inserted:WB,"persona, audiência, tom e prioridades editoriais":"persona, audience, tone, and editorial priorities","peso_i = peso estratég
201ico do indicador i":"weight_i = strategic weight of indicator i","peso_i = peso estratégico do indicador i":"weight_i = strategic weight of indicator i",phase1_pillars_start:QB,phase2_envelope_done:KB,"ponto crÃtico":"critical point","ponto requer revisão manual":"point requires manual review","ponto-vÃrgula":"semicolon","pontos requerem revisão manual":"points require manual review","por 100":"per 100","por mil":"per thousand","por usuário":"per user","process-report-job":"process-report-job","profissional-financeiro, com valores monetários no padrão BRL canônico (R$), foco em ROI, demanda turÃstica, capacidade instalada e evidências de viabilidade.":"professional-financial, with monetary values in the canonical BRL standard (R$), focus on ROI, tourist demand, installed capacity, and evidence of viability.","projeção de 1 a 5 anos dos pilares RA, OE e AO a partir de alavancas. Regras sistêmicas: com RA abaixo de 34%, ganhos em AO caem pela metade; com OE abaixo de 34%, todos os ganhos caem 30%. Resultados limitados entre 0% e 100%. Cenários são projeções, não previsões.":"1 to 5 year projection of RA, OE, and AO pillars based on levers. Systemic rules: with RA below 34%, AO gains are halved; with OE below 34%, all gains drop by 30%. Results limited between 0% and 100%. Scenarios are projections, not forecasts.",provider:YB,provider_failed:JB,provider_selected:XB,"pré-visualização ao vivo":"live preview","publicados em dados.gov.br para ingestão periódica de guias e agências. Quando o arquivo do trimestre não está acessÃvel ou não contém o municÃpio consultado, o indicador permanece fora do pré-preenchimento automático.":"published on dados.gov.br for periodic ingestion of guides and agencies. When the quarterly file is not accessible or does not contain the queried municipality, the indicator remains outside automatic pre-filling.",pública:"public","que o agente de IA aplica em TODO relatório gerado. O contexto da organização (quando existir) prevalece sobre o contexto global. à usado junto com a camada semântica, a estrutura canônica e os dados do diagnóstico.":"that the AI agent applies to EVERY generated report. The organization's context (when it exists) prevails over the global context. It is used together with the semantic layer, the canonical structure, and the diagnostic data.","que são utilizados automaticamente pela IA na geração de relatórios e na contextualização dos diagnósticos. Existem dois nÃveis de documentos:":"which are automatically used by the AI in report generation and diagnostic contextualization. There are two levels of documents:","recomendações de formação baseadas em indicadores em Atenção ou CrÃtico.":"training recommendations based on indicators in Attention or Critical status.","recomendações pedagógicas nem detalhamento metodológico extenso.":"pedagogical recommendations or extensive methodological detail.","refere-se a dados, textos, diagnósticos, avaliações, materiais educacionais e quaisquer informações inseridas pelo Usuário na Plataforma.":"refers to data, texts, diagnostics, evaluations, educational materials, and any information entered by the User on the Platform.","refere-se a qualquer pessoa fÃsica ou jurÃdica que acesse ou utilize a Plataforma mediante registro.":"refers to any natural or legal person who accesses or uses the Platform upon registration.","refere-se ao SISTUR â Sistema Integrado de Suporte para Turismo em Regiões, incluindo todos os módulos (AnalÃtico, EDU, Jogos, Fórum, Professor Beni) e quaisquer aplicações relacionadas.":"refers to SISTUR â Integrated Support System for Tourism in Regions, including all modules (Analytic, EDU, Games, Forum, Professor Beni) and any related applications.","refere-se ao detentor dos direitos de propriedade intelectual sobre a Plataforma, incluindo seus sócios, desenvolvedores e parceiros autorizados.":"refers to the holder of the intellectual property rights over the Platform, including its partners, developers, and authorized partners.","refere-se aos indicadores, pontuações, interpretações IGMA e demais dad
201os gerados pelo motor de cálculo da Plataforma.":"refers to the indicators, scores, IGMA interpretations, and other data generated by the Platform's calculation engine.",reference_month:ZB,"registram em qual modelo cada relatório foi efetivamente gerado; o histórico exibe um badge com essa informação para administradores.":"record which model each report was effectively generated from; the history displays a badge with this information for administrators.",registro:eF,registros:aF,"regra válida":"valid rule","renderTrainingCard(t as EduTraining &":"renderTrainingCard(t as EduTraining &","renderTrainingCard(training as EduTraining &":"renderTrainingCard(training as EduTraining &",report_generation_logs:oF,report_id:iF,report_jobs:tF,"report_jobs.partial_content":"report_jobs.partial_content",report_validations:rF,"restrita a órgãos públicos federais":"restricted to federal public bodies","resultados operacionais contÃnuos":"continuous operational results",routes:sF,"salas de aula, alunos e atividades":"classrooms, students and activities","salvo de generated_reports":"saved from generated_reports","score_i = valor normalizado do indicador i (0-10)":"score_i = normalized value of indicator i (0-10)","se é seu primeiro diagnóstico ou se precisa de resultados rápidos. Use o":"if it's your first diagnostic or if you need quick results. Use the","sem dado":"no data","sem teto":"homeless","será permanentemente removida.":"will be permanently removed.","será removido desta organização. Ele ainda terá acesso ao sistema, mas precisará ser adicionado a outra organização.":"will be removed from this organization. They will still have system access but will need to be added to another organization.","serão usadas nesta prova":"will be used in this test","setMutedState((e as CustomEvent":"setMutedState((e as CustomEvent","seu diagnóstico":"your diagnosis","[email protected]":"[email protected]","sim/não":"yes/no","src/components/ â Componentes reutilizáveis (UI, layout, dashboard, diagnostics, edu, admin, forum, games)":"src/components/ â Reusable Components (UI, layout, dashboard, diagnostics, edu, admin, forum, games)","src/hooks/ â 50+ custom hooks para lógica de negócio (useAuth, useAssessments, useIndicators, etc.)":"src/hooks/ â 50+ custom hooks for business logic (useAuth, useAssessments, useIndicators, etc.)","src/lib/igmaEngine.ts â Núcleo: Motor IGMA com as 6 regras sistêmicas":"src/lib/igmaEngine.ts â Core: IGMA Engine with the 6 systemic rules","src/pages/ â 44 páginas lazy-loaded com React.lazy() + Suspense":"src/pages/ â 44 lazy-loaded pages with React.lazy() + Suspense",stage:nF,"state.bars.ra + 30) alerts.push('ð Muita construção! A poluição aumentou!'); if (state.bars.ao":"state.bars.ra + 30) alerts.push('ð A lot of construction! Pollution increased!'); if (state.bars.ao","state.bars.ra + 30) alerts.push('ð Muita poluição!'); if (state.bars.ao":"state.bars.ra + 30) alerts.push('ð A lot of pollution!'); if (state.bars.ao","state.coins * 0.5) alerts.push(`ð§ Manutenção alta: $":"state.coins * 0.5) alerts.push(`ð§ High maintenance: $",stream_closed_ok:cF,"supabase/migrations/ â 30+ migrações de schema com RLS policies":"supabase/migrations/ â 30+ schema migrations with RLS policies","[email protected]":"[email protected]","tempo ativo vs total":"active time vs total","text-xs text-amber-700 dark:text-amber-200 underline hover:no-underline mt-1 inline-block break-all":"text-xs text-amber-700 dark:text-amber-200 underline hover:no-underline mt-1 inline-block break-all","todos os diagnósticos futuros":"all future diagnostics",trace_id:dF,"transparência total":"full transparency",tse_turnout_cache:lF,"técnico, fundamentado, com citações diretas a Beni (1997/2007), IGMA, IBGE, MTur, IGMA-IBT e demais fontes oficiais.":"technical, substantiated, with direct citations to Beni (1997/2007), IGMA, IBGE, MTur, IGMA-IBT and other official sources.",tópico:"topic",tópicos:"topics","uma marca pode ter várias unidades em municÃpios diferentes. Selecione a marca e adicione abaixo os municÃpios onde o empreendimento opera â o diagnóstico será único, mas a coleta de dados será por unidade.":"a brand can have multiple units in different municipalities. Select the brand and add below the municipalities where the enterprise operates â the diagnostic will be unique, but data collection will be per unit.",useReportJobWatcher:uF,uuid:mF,validation_agent_done:pF,valor:gF,"valor substituÃdo por":"value replaced by",value:hF,"visibilidade pessoal":"personal visibility","visitantes por avaliação de concorrente â quanto maior, mais espaço de mercado.":"visitors per competitor rating â the higher, the more market share.","[email protected]":"[email protected]","void; /** Quando informado, planos com preço online abrem o checkout em vez do formulário */ onCheckout?: (plan:":"void; /** When provided, plans with online pricing open the checkout instead of the form */ onCheckout?: (plan:","void; onKeyDown: (e: React.KeyboardEvent":"void; onKeyDown: (e: React.KeyboardEvent","vs. anterior":"vs. previous",vÃrgula:"comma","{{0}} em nÃvel {{1}} ({{2}}) â Interpretação: {{3}}":"{{0}} at level {{1}} ({{2}}) â Interpretation: {{3}}","{{n}} pergunta(s) restante(s)":"{{n}} question(s) remaining","{{v0}} (+bônus)":"{{v0}} (+bonus)","{{v0}} (erros: {{v1}})":"{{v0}} (errors: {{v1}})","{{v0}} XP totais":"{{v0}} total XP","{{v0}} alerta(s)":"{{v0}} alert(s)","{{v0}} alerta(s) pendente(s)":"{{v0}} pending alert(s)","{{v0}} alterado(s)":"{{v0}} changed","{{v0}} aluno(s)":"{{v0}} student(s)","{{v0}} alunos · {{v1}} ativos (7d)":"{{v0}} students · {{v1}} active (7d)","{{v0}} amostras":"{{v0}} samples","{{v0}} aprovados":"{{v0}} approved","{{v0}} arquivos":"{{v0}} files","{{v0}} ativos / {{v1}} inativos":"{{v0}} active / {{v1}} inactive","{{v0}} aula(s)":"{{v0}} lesson(s)","{{v0}} aviso(s)":"{{v0}} warning(s)","{{v0}} calculados no perÃodo":"{{v0}}
201 calculated in the period","{{v0}} capturados":"{{v0}} captured","{{v0}} caracteres":"{{v0}} characters","{{v0}} categorias":"{{v0}} categories","{{v0}} certificados":"{{v0}} certificates","{{v0}} com erro":"{{v0}} with error","{{v0}} com erro de validação":"{{v0}} with validation error","{{v0}} confirmado(s)":"{{v0}} confirmed","{{v0}} cursos de capacitação":"{{v0}} training courses","{{v0}} cursos ⢠{{v1}} lives ⢠{{v2}} trilhas":"{{v0}} courses ⢠{{v1}} lives ⢠{{v2}} trails","{{v0}} de {{v1}} gargalos exibidos":"{{v0}} of {{v1}} bottlenecks displayed","{{v0}} de {{v1}} indicadores via fontes oficiais ou derivados":"{{v0}} of {{v1}} indicators via official or derived sources","{{v0}} de {{v1}} métricas com média calculada.":"{{v0}} of {{v1}} metrics with calculated average.","{{v0}} der.":"{{v0}} (deriv.)","{{v0}} destinos prontos":"{{v0}} ready destinations","{{v0}} dia(s)":"{{v0}} day(s)","{{v0}} e-mail(s) válido(s). Máximo de 30 por envio.":"{{v0}} valid email(s). Maximum 30 per send.","{{v0}} encontrados":"{{v0}} found","{{v0}} erro(s)":"{{v0}} error(s)","{{v0}} erros":"{{v0}} errors","{{v0}} estáveis":"{{v0}} stable","{{v0}} eventos no perÃodo selecionado":"{{v0}} events in the selected period","{{v0}} falha(s)":"{{v0}} failure(s)","{{v0}} faz parte dos planos Pro e Enterprise":"{{v0}} is part of Pro and Enterprise plans","{{v0}} fraude":"{{v0}} fraud","{{v0}} gargalos":"{{v0}} bottlenecks","{{v0}} hits":"{{v0}} hits","{{v0}} importados com sucesso":"{{v0}} imported successfully","{{v0}} ind.":"{{v0}} ind.","{{v0}} indicador(es) com dados com mais de 2 anos. Considere atualizar.":"{{v0}} indicator(s) with data older than 2 years. Consider updating.","{{v0}} indicadores":"{{v0}} indicators","{{v0}} indicadores avaliados ⢠Metodologia Mario Beni":"{{v0}} indicators evaluated ⢠Mario Beni Methodology","{{v0}} indicadores para este nÃvel":"{{v0}} indicators for this level","{{v0}} indicadores processados neste cálculo":"{{v0}} indicators processed in this calculation","{{v0}} inválidos":"{{v0}} invalid","{{v0}} man.":"{{v0}} man.","{{v0}} melhoraram":"{{v0}} improved","{{v0}} meses":"{{v0}} months","{{v0}} min":"{{v0}} min","{{v0}} minutos":"{{v0}} minutes","{{v0}} módulos":"{{v0}} modules","{{v0}} módulos estruturados para o aprendizado":"{{v0}} modules structured for learning","{{v0}} no total":"{{v0}} in total","{{v0}} novas":"{{v0}} new","{{v0}} organização(ões)":"{{v0}} organization(s)","{{v0}} para revisão manual":"{{v0}} for manual review","{{v0}} passos detalhados":"{{v0}} detailed steps","{{v0}} pendente(s)":"{{v0}} pending","{{v0}} perguntas Beni/mês":"{{v0}} Beni questions/month","{{v0}} prescrição(ões)":"{{v0}} prescription(s)","{{v0}} prescrições":"{{v0}} prescriptions","{{v0}} problema(s)":"{{v0}} problem(s)","{{v0}} pts":"{{v0}} pts","{{v0}} questões":"{{v0}} questions","{{v0}} regrediram":"{{v0}} regressed","{{v0}} reprovados":"{{v0}} failed","{{v0}} reviews":"{{v0}} reviews","{{v0}} selecionado(s)":"{{v0}} selected","{{v0}} selecionados":"{{v0}} selected","{{v0}} sessões":"{{v0}} sessions","{{v0}} seções":"{{v0}} sections","{{v0}} tentativa(s)":"{{v0}} attempt(s)","{{v0}} testes":"{{v0}} tests","{{v0}} treinamentos":"{{v0}} trainings","{{v0}} treinamentos concluÃdos":"{{v0}} trainings completed","{{v0}} treinamentos importados aguardando revisão":"{{v0}} imported trainings awaiting review","{{v0}} unidades":"{{v0}} units","{{v0}} usuário(s)":"{{v0}} user(s)","{{v0}} usuário(s) na organização":"{{v0}} user(s) in the organization","{{v0}} valor(es) fora do intervalo permitido foram ignorados. Verifique a coluna correspondente no CSV.":"{{v0}} value(s) outside the allowed range were ignored. Check the corresponding column in the CSV.","{{v0}} válidas":"{{v0}} valid","{{v0}} válidos":"{{v0}} valid","{{v0}} â histórico de reviews e benchmarking":"{{v0}} â review and benchmarking history","{{v0}} â mix de distribuição e sazonalidade real":"{{v0}} â distribution mix and real seasonality","{{v0}} ⢠Código IBGE: {{v1}}":"{{v0}} ⢠IBGE Code: {{v1}}","{{v0}}% concluÃdo":"{{v0}}% completed","{{v0}}
201% solucionadas":"{{v0}}% solved","{{v0}}/pág":"{{v0}}/page","{{v0}}/{{v1}} concluÃdos ({{v2}}%)":"{{v0}}/{{v1}} completed ({{v2}}%)","{{v0}}/{{v1}} etapas ⢠{{v2}}%":"{{v0}}/{{v1}} steps ⢠{{v2}}%","{{v0}}/{{v1}} jogadas":"{{v0}}/{{v1}} plays","{{v0}}/{{v1}} passos ({{v2}}%)":"{{v0}}/{{v1}} steps ({{v2}}%)","{{v0}}d atraso":"{{v0}}d delay","{{v0}}h de estudo acumuladas":"{{v0}}h of study accumulated","{{v0}}min":"{{v0}}min","{{xp}} XP para nÃvel {{level}}":"{{xp}} XP to level {{level}}","| unknown; export type AutoFillStatus = 'idle' | 'running' | 'success' | 'error' | 'no_data'; /** * Sinaliza que o bloco rodou com sucesso, mas a fonte de dados não retornou * informações suficientes para preencher os indicadores. O orquestrador trata * isso como um estado neutro (não-erro) e exibe a causa para o usuário. * * Componentes de busca podem usar `throw new NoDataError('motivo')` para * sinalizar isso explicitamente. Para evitar editar 18 componentes, o * `runEntry` também detecta mensagens de erro comuns (\"Sem dados retornados\", * \"não encontrado\", \"nenhum resultado\", etc.) e converte para no_data. */ export class NoDataError extends Error":`| unknown; export type AutoFillStatus = 'idle' | 'running' | 'success' | 'error' | 'no_data'; /** * Signals that the block ran successfully, but the data source did not return * sufficient information to populate the indicators. The orchestrator treats * this as a neutral state (non-error) and displays the cause to the user. * * Search components can use \`throw new NoDataError('reason')\` to * explicitly signal this. To avoid editing 18 components, * \`runEntry\` also detects common error messages ("No data returned", * "not found", "no results", etc.) and converts to no_data. */ export class NoDataError extends Error`,"}\n {e.indicator_code &&":`} 202 {e.indicator_code &&`,"}\n {e.target_audience &&":`} 203 {e.target_audience &&`,"}\n onConfirm={confirmDeletePhase}\n isPending={deletePhase.isPending}\n />\n\n {/* Task Dialogs */}\n <TaskFormDialog\n projectId={projectId}\n phases={phases || []}\n task={editingTask}\n defaultPhaseId={defaultTaskPhaseId}
203\n open={taskFormOpen}\n onOpenChange={setTaskFormOpen}\n />\n <DeleteConfirmDialog\n open={deleteTaskOpen}\n onOpenChange={setDeleteTaskOpen}\n title={tx('Excluir Tarefa')}\n description={":`} 204 onConfirm={confirmDeletePhase} 205 isPending={deletePhase.isPending} 206 /> 207 208 {/* Task Dialogs */} 209 <TaskFormDialog 210 projectId={projectId} 211 phases={phases || []} 212 task={editingTask} 213 defaultPhaseId={defaultTaskPhaseId} 214 open={taskFormOpen} 215 onOpenChange={setTaskFormOpen} 216 /> 217 <DeleteConfirmDialog 218 open={deleteTaskOpen} 219 onOpenChange={setDeleteTaskOpen} 220 title={tx('Delete Task')} 221 description={`,"}\n onConfirm={confirmDeleteTask}\n isPending={deleteTask.isPending}\n />\n\n {/* Milestone Dialogs */}\n <MilestoneFormDialog\n projectId={projectId}\n milestone={editingMilestone}\n open={milestoneFormOpen}\n onOpenChange={setMilestoneFormOpen}\n />\n <DeleteConfirmDialog\n open={deleteMilestoneOpen}\n onOpenChange={setDeleteMilestoneOpen}\n title={tx('Excluir Marco')}\n description={":`} 222 onConfirm={confirmDeleteTask} 223 isPending={deleteTask.isPending} 224 /> 225 226 {/* Milestone Dialogs */} 227 <MilestoneFormDialog 228 projectId={projectId} 229 milestone={editingMilestone} 230 open={milestoneFormOpen} 231 onOpenChange={setMilestoneFormOpen} 232 /> 233 <DeleteConfirmDialog 234 open={deleteMilestoneOpen} 235 onOpenChange={setDeleteMilestoneOpen} 236 title={tx('Delete Milestone')} 237 description={`,"} onConfirm={confirmDeletePhase} isPending={deletePhase.isPending} /> {/* Task Dialogs */} <TaskFormDialog projectId={projectId} phases={phases || []} task={editingTask} defaultPhaseId={defaultTaskPhaseId} open={taskFormOpen} onOpenChange={setTaskFormOpen} /> <DeleteConfirmDialog open={deleteTaskOpen} onOpenChange={setDeleteTaskOpen} title={tx('Excluir Tarefa')} description={":"} onConfirm={confirmDeletePhase} isPending={deletePhase.isPending} /> {/* Task Dialogs */} <TaskFormDialog projectId={projectId} phases={phases || []} task={editingTask} defaultPhaseId={defaultTaskPhaseId} open={taskFormOpen} onOpenChange={setTaskFormOpen} /> <DeleteConfirmDialog open={deleteTaskOpen} onOpenChange={setDeleteTaskOpen} title={tx('Delete Task')} description={","} onConfirm={confirmDeleteTask} isPending={deleteTask.isPending} /> {/* Milestone Dialogs */} <MilestoneFormDialog projectId={projectId} milestone={editingMilestone} open={milestoneFormOpen} onOpenChange={setMilestoneFormOpen} /> <DeleteConfirmDialog open={deleteMilestoneOpen} onOpenChange={setDeleteMilestoneOpen} title={tx('Excluir Marco')} description={":"} onConfirm={confirmDeleteTask} isPending={deleteTask.isPending} /> {/* Milestone Dialogs */} <MilestoneFormDialog projectId={projectId} milestone={editingMilestone} open={milestoneFormOpen} onOpenChange={setMilestoneFormOpen} /> <DeleteConfirmDialog open={deleteMilestoneOpen} onOpenChange={setDeleteMilestoneOpen} title={tx('Delete Milestone')} description={","} {e.indicator_code &&":"} {e.indicator_code &&","} {e.target_audience &&":"} {e.target_audience &&","~2 minutos":"~2 minutes","~20 indicadores essenciais. Ideal para municÃpios menores ou primeira avaliação rápida.":"~20 essential indicators. Ideal for smaller municipalities or a quick initial assessment.","~50 indicadores. Análise tática para cidades médias ou acompanhamento contÃnuo.":"~50 indicators. Tactical analysis for midsize cities or ongoing monitoring.","~96 indicadores IGMA + oficiais":"~96 IGMA + official indicators","© 2026 SISTUR â Instituto Mario Beni. Todos os direitos reservados.":"© 2026 SISTUR â Instituto Mario Beni. All rights reserved.","© 2026 SISTUR â Todos os direitos reservados.":"© 2026 SISTUR â All rights reserved.","· diagnóstico territorial de":"· territorial diagnosis of","Ãgua Limpa":"Clean Water","Ãgua de nascente protegida":"Protected spring water","Ãgua guardada e plantas resistentes!":"Stored water and resistant plants!","Ãgua guardada e árvores atraem chuva! ð§ï¸":"Stored water and trees attract rain! ð§ï¸","Ãgua guardada para a seca!":"Water stored for drought!","Ãgua no Sertão":"Water in the Sertão","Ãgua no curto prazo, mas seca os rios...":"Water in the short term, but dries up rivers...","Ãgua é vida no sertão! As cisternas garantem sobrevivência.":"Water is life in the sertão! Cisterns ensure survival.","Ãgua, esgoto e resÃduos":"Water, sew
237age and waste","Ãguas Protegidas":"Protected Waters","Ãguas Turvas":"Murky Waters","Ãguas que Nascem":"Waters That Are Born",Ãguia:"Eagle","Ãrea / Densidade":"Area / Density","Ãrea Desmatada":"Deforested Area","Ãrea Protegida":"Protected Area","Ãrea de transição entre terra e mar, rica em vida":"Transition area between land and sea, rich in life","Ãrea ou densidade espacial (km², hab./km²).":"Area or spatial density (km², pop./km²).","Ãrea verde para todos":"Green area for everyone","Ãrea verde para todos curtirem!":"Green area for everyone to enjoy!","Ãreas de preservação":"Preservation areas","Ãreas protegidas por lei":"Areas protected by law",Ãrvore:"Tree","Ãrvore Nativa":"Native Tree","Ãrvore com raÃzes aéreas que filtra sal da água":"Tree with aerial roots that filters salt from water","Ãrvore sÃmbolo do Sul, ameaçada de extinção":"Symbolic tree of the South, endangered","Ãrvores absorvem COâ no processo de fotossÃntese!":"Trees absorb COâ in the photosynthesis process!","Ãrvores fortalecem o parque!":"Trees strengthen the park!","Ãrvores nas encostas previnem deslizamentos.":"Trees on slopes prevent landslides.","Ãrvores purificam o ar e protegem o solo.":"Trees purify the air and protect the soil.","à a visualização circular dos 3 conjuntos de Mario Beni (RA / OE / AO) com seus subsistemas explÃcitos (Ecológico, Social, Econômico, Cultural; Superestrutura, Infraestrutura; Mercado, Oferta, Demanda, Distribuição). Quando o diagnóstico tem MST ativo, um anel externo mostra as 4 dimensões adicionais (Tecnologia, Inclusão, TBC, Sensibilização). O Score Final SISTUR aparece no centro da mandala como média dos pilares.":"It is the circular visualization of Mario Beni's 3 sets (RA / OE / AO) with their explicit subsystems (Ecological, Social, Economic, Cultural; Superstructure, Infrastructure; Market, Supply, Demand, Distribution). When the diagnosis has active MST, an outer ring shows the 4 additional dimensions (Technology, Inclusion, TBC, Awareness). The SISTUR Final Score appears in the center of the mandala as the average of the pillars.","à expressamente proibido ao Usuário: (a) copiar, reproduzir, modificar, descompilar ou realizar engenharia reversa de qualquer componente da Plataforma; (b) extrair dados em massa para fins de replicação de funcionalidades; (c) utilizar a metodologia SISTUR para desenvolver produtos concorrentes; (d) sublicenciar, alugar ou transferir o acesso à Plataforma a terceiros sem autorização prévia.":"The User is expressly prohibited from: (a) copying, reproducing, modifying, decompiling or reverse engineering any component of the Platform; (b) extracting data in bulk for the purpose of replicating functionalities; (c) using the SISTUR methodology to develop competing products; (d) sublicensing, renting or transferring access to the Platform to third parties without prior authorization.","à necessário ter pelo menos duas rodadas calculadas deste destino para comparar ciclos.":"At least two calculated rounds for this destination are required to compare cycles.","à o aumento da temperatura média do planeta causado por gases de efeito estufa.":"It is the increase in the planet's average temperature caused by greenhouse gases.","à proibido gravar, reproduzir, distribuir ou disponibilizar conteúdos educacionais da Plataforma em qualquer meio sem autorização prévia.":"It is forbidden to record, reproduce, distribute or make available educational content from the Platform by any means without prior authorization.","à um jogo de cartas estilo TCG â pense antes de jogar!":"It's a TCG-style card game â think before you play!",Ãpico:"Epic","Ãxodo dos Moradores":"Resident Exodus","Ãxodo em Massa":"Mass Exodus",Ãcone:"Icon","Ãndice (100 = paridade)":"Index (100 = parity)","Ãndice / Score":"Index / Score","Ãndice Geral Empresarial":"Overall Business Index","Ãndice Geral Empresarial (média)":"General Business Index (average)","Ãndice Geral SISTUR":"Overall SISTUR Index","Ãndice Geral SISTUR (média)":"General SISTUR Index (average)",'Ãndice composto com quórum mÃnimo: exige pelo menos 2 dos 3 componentes. Com menos que isso, aparece como "Aguardando componentes" e não entra na média do pilar.':'Composite index with minimum quorum: requires at least 2 of the 3 components. With less than that, it appears as "Aguardando componentes" (Awaiting components) and does not count towards the pillar average.',"Ãndice de Conformidade":"Compliance Index","Ãndice de Desenvolvimento Humano":"Human Development Index","Ãndice de Desenvolvimento da Educação Básica":"Basic Education Development Index","Ãndice de Impacto Territorial":"Territorial Impact Index","Ãndice de Quali
237dade da Ãgua (IQA / ANA) â sem dados disponÃveis":"Water Quality Index (WQI / ANA) â no data available","Ãndice de sazonalidade:":"Seasonality Index:","Ãndice {{v0}}":"Index {{v0}}","Ãndices Calculados":"Indices Calculated","Ãntegro â {{v0}} arquivos escaneados, {{v1}} imports verificados.":"Intact â {{v0}} files scanned, {{v1}} imports verified.","Ãleo contamina a costa!":"Oil contaminates the coast!","Ãltima Sincronização":"Last Sync","Ãltima atividade":"Last activity","Ãltima atividade e tempo total de estudo.":"Last activity and total study time.","Ãltima atualização":"Last updated","Ãltima entrega":"Last submission","Ãltima execução":"Last execution","Ãltima importação":"Last import","Ãltima importação:":"Last import:","Ãltima sincronização:":"Last sync:","Ãltimas 50 execuções":"Last 50 executions","Ãltimo cálculo":"Last calculation","Ãltimo dia do trial!":"Last day of trial!","Ãltimo dia do trial! Atualize agora.":"Last day of trial! Update now.","Ãltimo diagnóstico calculado em:":"Last diagnosis calculated on:","Ãltimos 50 eventos":"Last 50 events","Ãltimos Acessos":"Last Accesses","Ãltimos diagnósticos e seus status":"Latest diagnostics and their status","Ãnica implementação computacional das 6 regras sistêmicas de Mario Beni":"Unique computational implementation of Mario Beni's 6 systemic rules","Ãtil para apresentações e treinamentos internos.":"Useful for presentations and internal training.","é ativado no Step 3 da Nova Rodada.":"is activated in Step 3 of the New Round.","é professor emérito da USP e autor da teoria sistêmica do turismo, base cientÃfica do SISTUR.":"is professor emeritus at USP and author of the systemic theory of tourism, the scientific basis of SISTUR.",Ãndice:"index","Ãndice (% do PIB)":"index (% of GDP)","Ãndice (0â100)":"index (0â100)","Ãndice (Brasil = 100)":"index (Brazil = 100)","Ãndice (visitantes por habitante)":"index (visitors per inhabitant)","Ãndice 0-1":"index 0-1",único:"unique","â acionada quando o diagnóstico é de empreendimento (não destino). Substitui os eixos territoriais (RA/OE/AO) por categorias funcionais (governança, ESG, satisfação do hóspede, ocupação) e troca o foco territorial por KPIs de negócio e ROI.":"â triggered when the diagnosis is for an enterprise (not a destination). Replaces territorial axes (RA/OE/AO) with functional categories (governance, ESG, guest satisfaction, occupancy) and swaps the territorial focus for business KPIs and ROI.","â aplicada em tÃtulos, destaques e bordas":"â applied to titles, highlights, and borders","â bloco final com observações ou disclaimers":"â final block with observations or disclaimers","â cada valor citado na narrativa é comparado, indicador a indicador, com a tabela oficial de auditoria do diagnóstico (fontes IBGE, CADASTUR, STN, DATASUS, INEP e derivados).":"â each value cited in the narrative is compared, indicator by indicator, with the official audit table of the diagnosis (sources IBGE, CADASTUR, STN, DATASUS, INEP and derivatives).","â cruza o texto com a bibliografia canônica (Beni, IGMA, PNT, ODS) e sinaliza afirmações sem respaldo nas fontes anexadas.":"â cross-references the text with canonical bibliography (Beni, IGMA, PNT, ODS) and flags statements unsupported by attached sources.","â exibido no topo do relatório":"â displayed at the top of the report","â formato":"â format","â insere novas chaves e atualiza existentes. Entradas atuais não presentes no arquivo são mantidas.":"â inserts new keys and updates existing ones. Current entries not present in the file are maintained.","â insere/atualiza do arquivo e":"â inserts/updates from file and","â pequeno, médio ou grande para adequar à audiência":"â small, medium, or large to suit the audience","â sem flicker. PDF e DOCX só são liberados após a persistência final (não exporta versões inacabadas).":"â no flicker. PDF and DOCX are only released after final persistence (does not export unfinished versions).","â textos customizáveis para identificação institucional":"â customizable texts for institutional identification","â verifica contradições internas, status (Adequado/Atenção/CrÃtico) coerentes com os percentuais e citações dentro das faixas permitidas.":"â checks for internal
237contradictions, status (Adequate/Attention/Critical) consistent with percentages, and citations within permitted ranges.","⢠41 indicadores distribuÃdos entre os 3 pilares":"⢠41 indicators distributed among the 3 pillars","⢠Calcular scores dos pilares (RA, OE, AO)":"⢠Calculate pillar scores (RA, OE, AO)","⢠Gerar prescrições de capacitação":"⢠Generate training prescriptions","⢠Identificar gargalos":"⢠Identify bottlenecks","⢠MST_5G_WIFI â Conectividade (Anatel)":"⢠MST_5G_WIFI â Connectivity (Anatel)","⢠MST_ACC_NBR9050 â Acessibilidade":"⢠MST_ACC_NBR9050 â Accessibility","⢠MST_DIGITAL_PROMO â Promoção digital":"⢠MST_DIGITAL_PROMO â Digital promotion","⢠MST_GREEN_AREA â Ãreas verdes":"⢠MST_GREEN_AREA â Green areas","⢠MST_HERITAGE â Patrimônio cultural":"⢠MST_HERITAGE â Cultural heritage","⢠MST_PNQT_QUAL â Qualificação CADASTUR":"⢠MST_PNQT_QUAL â CADASTUR Qualification","⢠MST_TBC â Turismo de Base Comunitária":"⢠MST_TBC â Community-Based Tourism","⢠MST_TSE_TURNOUT â Engajamento eleitoral":"⢠MST_TSE_TURNOUT â Electoral engagement","⢠MST_WATER_QUALITY â Balneabilidade":"⢠MST_WATER_QUALITY â Water quality for bathing","⢠Normalizar os indicadores":"⢠Normalize indicators","⢠Um diagnóstico com status CALCULATED":"⢠An assessment with CALCULATED status","⢠Um relatório gerado para esse diagnóstico":"⢠A report generated for that assessment","⢠Você ainda pode editar e excluir seus próprios posts":"⢠You can still edit and delete your own posts","⢠erro detectado":"⢠error detected","⢠sem novos eventos":"⢠no new events","â Voltar":"â Back","â Maior é melhor":"â Higher is better","â módulo que o declara.\n * Diretórios (entries terminadas em":`â module that declares it. 238 * Directories (entries ending in`,"â módulo que o declara. * Diretórios (entries terminadas em":"â module that declares it. * Directories (entries ending in","â Menor é melhor":"â Lower is better","â Sem informações disponÃveis â":"â No information available â","âï¸ Painéis solares":"âï¸ Solar panels","â»ï¸ Mutirão de limpeza":"â»ï¸ Cleaning spree","âï¸ Ameaças â Turno":"âï¸ Threats â Turn","âï¸ Guardião do Território":"âï¸ Territory Guardian","âï¸ Novo turno â ameaças surgem!":"âï¸ New turn â threats emerge!","âï¸ EquilÃbrio":"âï¸ Balance","âï¸ EquilÃbrio Frágil":"âï¸ Fragile Balance","âï¸ Maré Indecisa":"âï¸ Undecided Tide","âï¸ Sertão em Transição":"âï¸ Sertão in Transition","âï¸ Auto (ClaudeâGPT-6 AstraâGemini)":"âï¸ Auto (ClaudeâGPT-6 AstraâGemini)","â 6 manuais":"â 6 manuals","â ï¸ Este destino não possui código IBGE. O pré-preenchimento automático não estará disponÃvel.":"â ï¸ This destination does not have an IBGE code. Automatic pre-filling will not be available.","â¡ Arriscado":"â¡ Risky","â¡ Essencial":"â¡ Essential","â¡ Rápida":"â¡ Quick","â¡ Toque novamente para jogar!":"â¡ Tap again to play!","â°ï¸ Missão Fracassada":"â°ï¸ Mission Failed","â + Projeções":"â + Projections","â 3 automáticos":"â 3 automatic","â Código IBGE disponÃvel":"â IBGE Code available","⨠Carta adicionada ao deck!":"⨠Card added to the deck!","⨠Escolha um bioma para explorar:":"⨠Choose a biome to explore:","⨠Escolha um bioma para jogar:":"⨠Choose a biome to play:","â¬ ï¸ Voltar":"â¬ ï¸ Back","ð Sem cartas na mão. Passe o turno para comprar!":"ð No cards in hand. End your turn to draw!","ð Sem cartas. Passe o turno para comprar!":"ð No cards. End your turn to draw!","ð Suas Cartas em Campo":"ð Your Cards in Play","ð MST":"ð MST","ð Mandala da Sustentabilidade no Turismo (MST)":"ð Tourism Sustainability Mandala (MST)","ð Missão Fracassada":"ð Mission Failed","ð Biomas":"ð Biomes","ð Sustentabilidade":"ð Sustainability","ð Escolha seu Bioma":"ð Choose Your Biome","ð Sobre o MunicÃpio / Destino":"ð About the Municipality / Destination","ð Jogar":"ð Play","ð Nova Batalha":"ð New Battle","ð± Sustentável â protege o bioma a longo prazo\nâ¡ Arriscado â ganho rápido, mas pode prejudicar\nâï¸ Neutro â caminho seguro, sem extremos":`ð± Sustainable â protects the biome long-term 239â¡ Risky â quick gain, but can harm 240âï¸ Neutral â safe path, no extremes`,"ð± Sustentável â protege o bioma a longo prazo â¡ Arriscado â ganho rápido, mas pode prejudicar âï¸ Neutro â caminho seguro, sem extremos":"ð± Sustainable â protects the biome long-term â¡ Risky â quick gain, but can be harmful âï¸ Neutral â safe path, no extremes","ð³ Natureza":"
240ð³ Nature","ð³ Plantar árvores ao redor":"ð³ Plant trees around","ð³ Pró-Natureza":"ð³ Pro-Nature","ð³ RA (Recursos Ambientais) â natureza e meio ambiente\nðï¸ OE (Oferta & Estrutura) â infraestrutura e conforto\nð¤ AO (Articulação & Organização) â governança e cooperação":`ð³ RA (Environmental Resources) â nature and environment 241ðï¸ OE (Supply & Structure) â infrastructure and comfort 242ð¤ AO (Articulation & Organization) â governance and cooperation`,"ð³ RA (Recursos Ambientais) â natureza e meio ambiente ðï¸ OE (Oferta & Estrutura) â infraestrutura e conforto ð¤ AO (Articulação & Organização) â governança e cooperação":"ð³ RA (Environmental Resources) â nature and environment ðï¸ OE (Offer & Structure) â infrastructure and comfort ð¤ AO (Articulation & Organization) â governance and cooperation","ð¿ Começar!":"ð¿ Start!","ð¿ Sustentável":"ð¿ Sustainable","ð® Jogo salvo encontrado":"ð® Saved game found","ð¯ Comece por Aqui":"ð¯ Start Here","ð¯ Integral":"ð¯ Comprehensive","ð¯ Objetivo: Cidade do Futuro":"ð¯ Objective: City of the Future","ð² Tipos de Escolha":"ð² Choice Types","ðï¸ Conforto":"ðï¸ Comfort","ðï¸ Construir muro para esconder":"ðï¸ Build a wall to hide","ðï¸ Pró-Infraestrutura":"ðï¸ Pro-Infrastructure","ðï¸ Missão Fracassada":"ðï¸ Mission Failed","ð¨ Sobre o Empreendimento":"ð¨ About the Enterprise","ð Termoelétrica":"ð Thermal Power Plant","ð Clique no mapa para construir!":"ð Click the map to build!","ð Toque de novo para jogar":"ð Tap again to play","ð Toque no mapa para construir!":"ð Tap the map to build!","ð Cerrado em Agonia":"ð Cerrado in Agony","ð Floresta em Perigo":"ð Forest in Danger","ð Litoral em Perigo":"ð Coastline in Danger","ð¡ Como obter este dado":"ð¡ How to obtain this data","ð¡ Como obter:":"ð¡ How to obtain:","ð¡ Inclua os pontos-chave: metas quantitativas, princÃpios, eixos de atuação, tendências e diretrizes que devem contextualizar os relatórios.":"ð¡ Include key points: quantitative goals, principles, lines of action, trends and guidelines that should contextualize the reports.","ð¡ O resumo é fundamental: ele será incluÃdo automaticamente no contexto da IA ao gerar relatórios e diagnósticos.":"ð¡ The summary is essential: it will be automatically included in the AI context when generating reports and diagnoses.","ð¡ Recomendação":"ð¡ Recommendation","ð¨ Moinho de vento":"ð¨ Windmill","ð¬ Comentários Representativos":"ð¬ Representative Comments","ð° Investidores":"ð° Investors","ð° Sem moedas":"ð° No coins","ð» Sala de computadores":"ð» Computer room","ð Cadastro Legal":"ð Legal Registration","ð Página":"ð Page","ð Dimensões da Experiência do Hóspede":"ð Dimensions of Guest Experience","ð Estratégico":"ð Strategic","ð Executivo":"ð Executive","ð Relatório Educacional":"ð Educational Report","ð Suas Decisões (":"ð Your Decisions (","ð Completo":"ð Complete","ð Sessões":"ð Sessions","ð Executivo (sÃntese para tomada de decisão)":"ð Executive (synthesis for decision making)","ð Completo (técnico-acadêmico)":"ð Complete (technical-academic)","ð Investidores (atratividade econômica)":"ð Investors (economic attractiveness)","ð Diário da Jornada":"ð Journey Journal","ð Histórico":"ð History","ð Log de Eventos":"ð Event Log","ð InÃcio Prova":"ð Test Start","ðº Lives Recomendadas":"ðº Recommended Lives","ð Indicadores Derivados":"ð Derived Indicators","ð Neutro":"ð Neutral","ð Nova Batalha":"ð New Battle","ð Nova BatalhaAO - Ações Operacionais":"ð New BattleAO - Operational Actions","ð Pré-preenchido automaticamente via Atlas Esgotos da ANA. Indica se o municÃpio necessita atenção quanto ao lançamento de fósforo nos corpos hÃdricos (0=Não, 1=Sim).":"ð Automatically pre-filled via ANA's Atlas Esgotos. Indicates whether the municipality needs attention regarding phosphorus discharge into water bodies (0=No, 1=Yes).","ð Pré-preenchido automaticamente via integração com a ANA (Agência Nacional de Ãguas). Ãndice de Quali
242dade da Ãgua (IQA) médio das estações de monitoramento em raio de 50 km.":"ð Automatically pre-filled via integration with ANA (National Water Agency). Average Water Quality Index (WQI) of monitoring stations within a 50 km radius.","ð Pré-preenchido automaticamente via integração com o Mapa do Turismo Brasileiro (MTur). Categorias: A (mais desenvolvido), B, C.":"ð Automatically pre-filled via integration with the Brazilian Tourism Map (MTur). Categories: A (most developed), B, C.","ð Pré-preenchido via CADASTUR (Meios de Hospedagem) quando disponÃvel. Caso contrário, consulte a Secretaria de Turismo ou associação hoteleira.":"ð Pre-filled via CADASTUR (Accommodation Facilities) when available. Otherwise, consult the Tourism Secretariat or hotel association.","ð Pré-preenchido via Mapa do Turismo (visitantes nacionais + internacionais estimados). Caso necessário, ajuste com dados da Secretaria de Turismo local.":"ð Pre-filled via Tourism Map (estimated national + international visitors). If necessary, adjust with data from the local Tourism Secretariat.","ð Tentar":"ð Try","ð¥ Firecrawl (primário):":"ð¥ Firecrawl (primary):","ð¥ Missão Fracassada":"ð¥ Mission Failed","ð´ SaÃda":"ð´ Exit","ðµ Gemini 3.1 Pro":"ðµ Gemini 3.1 Pro","ðºï¸ Biomas":"ðºï¸ Biomes","ðºï¸ Caça ao Tesouro Ecológico":"ðºï¸ Ecological Treasure Hunt","ð Começar!":"ð Start!","ð Estradas para carros":"ð Roads for cars","ð¶ Calçadas largas":"ð¶ Wide sidewalks","ð¤ï¸ Trilha Recomendada":"ð¤ï¸ Recommended Trail","ð **ATENÃÃO**":"ð **ATTENTION**","ð¢ GPT-6 Astra":"ð¢ GPT-6 Astra","ð£ Claude Sonnet 5.5":"ð£ Claude Sonnet 5.5","ð¤ Conselho Mirim":"ð¤ Junior Council","ð¤ Grêmio estudantil":"ð¤ Student union","ð¤ Organização":"ð¤ Organization","ð¤ Pró-Governança":"ð¤ Pro-Governance","ð¤ Pró-GovernançaVisão geral":"ð¤ Pro-GovernanceOverview","ð¦ Biodiversidade â saúde dos ecossistemas\nð Poluição â quanto menor, melhor!\nð¥ Comunidade â bem-estar das pessoas\nð Recursos â materiais disponÃveis":`ð¦ Biodiversity â ecosystem health 243ð Pollution â the lower, the better! 244ð¥ Community â people's well-being 245ð Resources â available materials`,"ð¦ Biodiversidade â saúde dos ecossistemas ð Poluição â quanto menor, melhor! ð¥ Comunidade â bem-estar das pessoas ð Recursos â materiais disponÃveis":"ð¦ Biodiversity â ecosystem health ð Pollution â the lower, the better! ð¥ Community â people's well-being ð Resources â available materials","ð§ Memória Ecológica":"ð§ Ecological Memory","ð§ Jogue para descobrir seu perfil!":"ð§ Play to discover your profile!","ð§ Seu perfil será definido pelas suas ações!":"ð§ Your profile will be defined by your actions!","ð§ Seu perfil será definido pelas suas ações!1-3 anos de experiência":"ð§ Your profile will be defined by your actions!1-3 years of experience","ð§® Calculado automaticamente":"ð§® Automatically calculated","ð§¹ Limpar a praça":"ð§¹ Clean the square","𪧠Colocar placas de aviso":"𪧠Place warning signs","Quer experimentar primeiro?":"Want to try it first?","Ative a degustação gratuita e conheça o SISTUR por 7 dias, com acesso limitado e sem precisar de cartão.":"Activate the free trial and explore SISTUR for 7 days, with limited access and no card required.",Grátis:"Free","Curso base do SISTUR EDU":"SISTUR EDU foundation course","Acesso completo ao curso introdutório da metodologia.":"Full access to the introductory methodology course.","1 diagnóstico de teste":"1 trial assessment","Rode uma avaliação e veja os resultados em prévia.":"Run an assessment and see the results as a preview.","10 perguntas ao Professor Beni":"10 questions for Professor Beni","Converse com a inteligência do SISTUR e teste as respostas.":"Chat with SISTUR's intelligence and test the answers.","Exclusivo dos planos pagos":"Paid plans only","Demais cursos, trilhas e certificados":"All other courses, tracks and certificates","Resultados completos dos pilares RA, OE e AO":"Full results for the RA, OE and AO pillars","Relatórios executivos e planos de ação":"Executive reports and action plans","Projetos, Observatório e Consórcios":"Projects, Observatory and Consortia","Começar avaliação gratuita":"Start free trial","Ativando...":"Activating...","Ou escolha um dos planos abaixo para liberar tudo desde o primeiro dia.":"Or pick one of the plans below to unlock everything from day one.","Avaliação gratuita ativada. Bom uso!":"Free trial activated. Enjoy!","Não foi possÃvel ativar a avaliação gratuita":"Could not activate the free trial","Você já tem um plano ativo na sua conta.":"You already have an active plan on your account.","Sua avaliação gratuita já foi utilizada. Escolha um plano para continuar.":"Your free trial has already been used. Choose a plan to continue.","Como funciona a degustação gratuita?":"How does the free trial work?","Você pode ativar a degustação gratuita sem cartão: ela dura 7 dias e libera o curso base do SISTUR EDU, 1 diagnóstico com resultado em prévia e 10 perguntas ao Professor Beni. Cursos completos, resultados detalhados, relatórios e projetos ficam disponÃveis ao escolher um plano.":"You can activate the free trial without a card: it lasts 7 days and unlocks the SISTUR EDU foundation course, 1 assessment with preview results and 10 questions for Professor Beni. Full courses, detailed results, reports and projects become available when you choose a plan."},fF="ADECUADO",vF="API",bF="ATENCION",AF="Abandonados",yF="Abiertos",SF="Abr",EF="Abrir",CF="Acepta",TF="Aceptar",PF="Aceptado",RF="Aciertos",xF="Acceder",wF="Acceda",IF="Accesibilidad",DF="Acceso",OF="Accesos",MF="Seguimiento",NF="Seguir",zF="Adaptativa",jF="Adaptativas",kF="Adecuado",_F="Agregar",qF="Admin",LF="Administrador",UF="Aeropuerto",BF="Ago",FF="En espera",GF="Ayuda",VF="Ajustar",$F="AlertTriangle",HF="Alerta",WF="Alertas",QF="Alineado",KF="Alta",YF="Alternativas",JF="Alternativos",XF="Alto",ZF="Estudiante",eG="Estudiantes",aG="Entorno",oG="Ambos",iG="Muestras",tG="Amplitud",rG="Analista",sG="AnalÃtica",nG="Año",cG="Anterior",dG="Anual",lG="Aplicar",uG="Apps",mG="Aprender",pG="Aprobado",gG="Aprobador",hG="Aprobados",fG="Aprobar",vG="Arial",bG="Trampas",AG="Almacenamiento",yG="Archivada",SG="Archivado",EG="Archivar",CG="Archivo",TG="Arriesgadas",PG="Asientos",RG="Suscripciones",xG="Asunto",wG="Activa",IG="Actividades",DG="Activo",OG="Activos",MG="Atrasado",NG="Atrasados",zG="Asignar",jG="Actual",kG="Actualizada",_G="Actualizar",qG="Clase",LG="Auto",UG="Autor",BG="Avatares",FG="Avisos",GG="Premio",VG="BASICO",$G="Backlog",HG="Insignia",WG="Insignias",QG="Baja",KG="Descargar",YG="Bajas",JG="Bajo",XG="Ban",ZG="LÃnea base",eV="Beni",aV="Beta",oV="BibliografÃa",iV="Biblioteca",tV="Biodiversidad",rV="Bloqueadas",sV="Bloqueado",nV="Bueno",cV="Error",dV="Bugs",lV="CAC",uV="CADASTUR",mV="CALCULADO",pV="CERTIFICADO",gV="CNPJ",hV="COMPLETO",fV="CRITICO",vV="CSV",bV="Registro",AV="Calculado",yV="Calculados",SV="Calcular",EV="Campaña",CV="Cancelado",TV="Cancelar",PV="Caracteres",RV="Cascada",xV="CategorÃa",wV="CategorÃas",IV="Certificado",DV="Certificados",OV="Clave",MV="Cobertura",NV="Recopilación",zV="Comercial",jV="Comparación",kV="Compartir",_V="Complementario",qV="Completo",LV="Completitud",UV="Compliance",BV="Compostaje",FV="Comunidad",GV="Conceder",VV="Concluir",$V="Competidores",HV="Conectado",WV="Conectividad",QV="Configurar",KV="Confirmado",YV="Confirmados",JV="Comodidad",XV="Obtenida",ZV="Logros",e2="Consultado",a2="Contacto",o2="Contexto",i2="Contextos",t2="Continuar",r2="Conversaciones",s2="Convertir",n2="Convertidos",c2="Invitar",d2="Coordenadas",l2="Corporativo",u2="Correcta",m2="Cuota",p2="Crear",g2="Cultural",h2="Curso",f2="Cursos",v2="DATASUS",b2="DERIVADO",A2="DOCX",y2="ABAJO",S2="Datos",E2="Panel de control",C2="Fecha",T2="DataSUS",P2="Desfasado",R2="Demanda",x2="Demo",w2="Densidad",I2="Denunciar",D2="Derivada",O2="Derivado",M2="Desfijar",N2="Desactivar",z2="Desbloquear",j2="Descartados",k2="Descartar",_2="Descarte",q2="Destino",L2="Destinos",U2="Desvalidar",B2="Detalle",F2="Detalles",G2="Dic",V2="Consejo",$2="Dificultad",H2="Disciplina",W2="Descartar",Q2="De desarrollo",K2="De desarrollo",Y2="Documentos",J2="Propietario",X2="ECO",Z2="EDU",e$="EDU_AO",a$="EDU_OE",o$="EDU_RA",i$="ENT_SEASONALITY_INDEX",t$="ESTUDIANTE",r$="ALERTA_EXTERNALIDAD",s$="Ecoturismo",n$="Editados",c$="Editar",d$="Editor",l$="Editoriales",u$="Efecto",m$="Efectivo",p$="Elemento",g$="Correo electrónico",h$="Ementa",f$="Emitido",v$="Emitir",b$="Empaquetado",A$="Emprendimientos",y$="Empleos",S$="Empresarial",E$="Finalizada",C$="Cierre",T$="C
245ompromiso",P$="Acertijos",R$="Enterprise",x$="Entidad",w$="Entradas",I$="Iniciar sesión",D$="Entrega",O$="Entregado",M$="Entregados",N$="Enunciado",z$="Enviar",j$="Equilibrado",k$="Equipar",_$="Equipo",q$="Error",L$="Errores",U$="Alcance",B$="Especialista",F$="Deportivo",G$="Esencial",V$="Estimada",$$="Estimado",H$="Estratega",W$="Estructura",Q$="Estructural",K$="Estudiante",Y$="Estudiantes",J$="Estudio",X$="Etapas",Z$="Evento",e5="Eventos",a5="Examen",o5="Excelente",i5="Eliminar",t5="Ejecutando",r5="Ejemplo",s5="Expira",n5="Explorar",c5="Exportar",d5="Externalidad",l5="Preguntas frecuentes",u5="Facebook",m5="Rangos",p5="Fallos",g5="Falló",h5="Fase",f5="Fases",v5="Cerrar",b5="Comentarios",A5="Herramientas",y5="Feb",S5="Filtrar",E5="Fijado",C5="Fijar",T5="Plano",P5="Fuente",R5="Fuentes",x5="Fuerte",w5="Franquicia",I5="Funcionalidad",D5="GESTORES",O5="GOP",M5="GOVERNANCE_BLOCK",N5="Cuellos de botella",z5="GastronomÃa",j5="Desencadenante",k5="Geomarketing",_5="General",q5="Gestores",L5="Global",U5="Grande",B5="Gratis",F5="HIGH_IS_BETTER",G5="Hoy",V5="Hooks",$5="Horizonte",H5="Hospitales",W5="Hostal",Q5="Hotel",K5="IAO",Y5="IBGE",J5="IGMA",X5="INEP",Z5="INTERSECTORAL_DEPENDENCY",eH="IOE",aH="IRA",oH="Idioma",iH="Ignorado",tH="Igualar",rH="Importado",sH="Importar",nH="Imprimir",cH="Inactivo",dH="Incorrecta",lH="Independiente",uH="Indeterminado",mH="Indicador",pH="Indicadores",gH="Info",hH="Informado",fH="Infraestructura",vH="Principiante",bH="Instagram",AH="Instructor",yH="Integrada",SH="Integral",EH="Inteligentes",CH="Interactivo",TH="Intereses",PH="Internacional",RH="Ene",xH="Jugar",wH="Jul",IH="Jun",DH="Kanban",OH="LEED",MH="LTV",NH="Ocio",zH="Leads",jH="Lectura",kH="Habilitar",_H="Limpiar",qH="Linaje",LH="Enlace",UH="Lista",BH="Transmisión en vivo",FH="Transmisiones en vivo",GH="Lugar",VH="Registro",$H="Logotipo",HH="Registros",WH="Lejos",QH="MAJOR",KH="MARKETING",YH="MARKETING_BLOCKED",JH="MINOR",XH="MIN_MAX",ZH="MST",e3="May",a3="Mandala",o3="Manuales",i3="Manual",t3="Mar",r3="Marca",s3="Hito",n3="Hitos",c3="Marketing",d3="Mejoraron",l3="Mejora",u3="Miembros",m3="Mensaje",p3="Mensajes",g3="Mensual",h3="Menú",f3="Mercado",v3="Metadatos",b3="MetodologÃa",A3="Mixto",y3="Modelo",S3="Moderada",E3="Moderado",C3="Modo",T3="Monedas",P3="Monitoreo",R3="Mostrar",x3="Motivo",w3="Mux",I3="NPS",D3="Narrativa",O3="Naturaleza",M3="Ninguno",N3="Nombre",z3="Normal",j3="Calificación",k3="Notas",_3="Nov",q3="Nuevo",L3="OFFICIAL_API",U3="OTAs",B3="Objetivo",F3="Ocultar",G3="Oferta",V3="Oficiales",$3="En lÃnea",H3="Opcional",W3="Orden",Q3="Org",K3="Origen",Y3="Out",J3="Otras",X3="Otro",Z3="PATCH",eW="PDF",aW="POST",oW="PRO",iW="Rol",tW="Parcial",rW="Pares",sW="Participar",nW="Pasos",cW="Pausado",dW="PerÃodo de recuperación",lW="Payload",uW="Pendiente",mW="Pendientes",pW="Pequeña",gW="Porcentaje",hW="Pregunta",fW="Permisivo",vW="Persona",bW="Personalizado",AW="Personalizar",yW="Cerca",SW="Peso",EW="Pesos",CW="Persona",TW="Personal",PW="Picos",RW="Pilar",xW="Pilares",wW="Planificado",IW="Planificación",DW="Plan",OW="Planes",MW="Publicación",NW="Posada",zW="Plazo",jW="Rellenado",kW="Relleno",_W="Premium",qW="Vista previa",LW="Principal",UW="Prioridad",BW="Procesados",FW="Procesamiento",GW="Procon",VW="Profesor",$W="Profesores",HW="Progreso",WW="Proyecto",QW="Proyectos",KW="Prompt",YW="Listo",JW="Prorrogar",XW="Examen",ZW="Exámenes",e4="Proveedor",a4="Proveedor",o4="Publicada",i4="Publicado",t4="Publicados",r4="Publicar",s4="Omitir",n4="Calidad",c4="Cantidad",d4="Cuestionarios",l4="RA_LIMITATION",u4="ROI",m4="RSS",p4="RadiografÃa",g4="Borrador",h4="Borradores",f4="Realizado",v4="Reaprovechado",b4="Recalcular",A4="Recargar",y4="Ingresos",S4="Contraer",E4="Recompensas",C4="Recurso",T4="Recursos",P4="Rechazar",R4="Red",x4="Volver a generar",w4="Registrar",I4="Registros",D4="Reglas",O4="Retrocedieron",M4="Reiniciar",N4="Rechazado",z4="Rechazar",j4="Religioso",k4="Eliminar",_4="Renombrar",q4="Reprobado",L4="Reprobados",U4="Restablecer",B4="Resuelta",F4="Resuelto",G4="Resueltos",V4="Resort",$4="Responder",H4="Respuesta",W4="Restaurante",Q4="Restaurar",K4="Restrictivo",Y4="Resultado",J4="Resultados",X4="Resumen",Z4="RevPAR",e6="Revertir",a6="Revisar",o6="Revocado",i6="Revocados",t6="Revocar",r6="Rondas",s6="Rutas",n6="SAFe",c6="SISTUR",d6="ESTABLE",l6="Cerrar sesión",u6="Saldo",m6="Guardar",p6="Estacionalidad",g6="Puntuación",h6="Scrum",f6="Seleccionar",v6="Seleccione",b6="Contraseña",A6="Sentimiento",y6="Severidad",S6="ShieldAlert",E6="SÃ",C6="Simulador",T6="Sincronizar",P6="Sitio web",R6="Social",x6="Stage",w6="Estado",I6="Almacenamiento",D6="Racha",O6="Rachas",M6="Enviar",N6="Sustituir",z6="Superestructura",j6="Sostenibilidad",k6="Tarea",_6="Tareas",q6="Tasa",L6="TecnologÃa",U6="Telecom",B6="Tema",F6="Temas",G6="Plantilla",V6="Tiempo",$6="Intentos",H6="Términos",W6="Territoriales",Q6="Territorial",K6="Tesoros",Y6="Nivel",J6="TikTok",X6="LÃnea de tiempo",Z6="Tipo",eQ="Todas",aQ="Todos",oQ="Tono",iQ="Total",tQ="Tour",rQ="Trace",sQ="Sector turÃstico",nQ="Transporte",cQ="Tratamiento",dQ="Capacitación",lQ="Capacitaciones",uQ="TrendingUp",mQ="Trials",pQ="Ruta",gQ="Rutas de aprendizaje",hQ="Trimestral",fQ="Cambiar",vQ="Turismo",bQ="Grupo",AQ="Rotación",yQ="Tutorial",SQ="Unidad",EQ="Unidades",CQ="Subir archivo",TQ="Urbanista",PQ="Urgente",RQ="Usado",xQ="Usuarios",wQ="LECTOR",IQ="Vigencia",DQ="Validado",OQ="Validados",MQ="Validar",NQ="Valor",zQ="Value",jQ="Vencido",kQ="Vencidos",_Q="Ver",qQ="Verificar",LQ="Visualizaciones",UQ="Vimeo",BQ="Vinculado",FQ="Vinculados",GQ="Vincular",VQ="Visibilidad",$Q="Visitantes",HQ="Visualizador",WQ="Visualizar",QQ="Volver",KQ="Volumen",YQ="Advertencia",JQ="Cascada",XQ="Word",ZQ="YouTube",eK="añadir",aK="admin",oK="ai_model",iK="ai_provider",tK="anatel_coverage_c
245ache",rK="año",sK="assessment_indicator_audit",nK="activas",cK="auto",dK="claude_budget_pillar",lK="código",uK="community",mK="cumplimiento",pK="consumo",gK="cursos",hK="de",fK="desactiva",vK="dÃas",bK="duration_ms",AK="editado",yK="first_course",SK="fuente",EK="cuello de botella",CK="generated_reports",TK="global",PK="inactiva",RK="indicadores",xK="indicator_values",wK="jobId",IK="job_id",DK="lives",OK="localStorage",MK="max_tokens",NK="metadata",zK="min",jK="model",kK="organizacional",_K="o",qK="pares",LK="persist_inserted",UK="phase1_pillars_start",BK="phase2_envelope_done",FK="provider",GK="provider_failed",VK="provider_selected",$K="reference_month",HK="registro",WK="registros",QK="report_generation_logs",KK="report_id",YK="report_jobs",JK="report_validations",XK="routes",ZK="stage",eY="stream_closed_ok",aY="trace_id",oY="tse_turnout_cache",iY="useReportJobWatcher",tY="uuid",rY="validation_agent_done",sY="valor",nY="value",tv={'". * Fixes cases where the LLM truncates the label (e.g. "ð **AT**" instead of * "ð **ATENÃÃO**") which leaks the misalignment into the rendered table even * after the row itself is realigned. * * Strategy: * 1. If the cell contains a known status emoji, trust the emoji and rebuild * the label from STATUS_STYLES (preserving any surrounding markdown bold). * 2. Otherwise, try to canonicalize the textual label. * 3. If neither works, return the original cell unchanged. */ export function normalizeStatusCellText(raw: string): string':'". * Corrige casos en los que el LLM trunca la etiqueta (ej. "ð **AT**" en lugar de * "ð **ATENÃÃO**") lo que provoca una desalineación en la tabla renderizada incluso * después de que la fila misma sea realineada. * * Estrategia: * 1. Si la celda contiene un emoji de estado conocido, confÃe en el emoji y reconstruya * la etiqueta a partir de STATUS_STYLES (conservando cualquier negrita markdown circundante). * 2. De lo contrario, intente canonizar la etiqueta textual. * 3. Si ninguna de las opciones funciona, devuelva la celda original sin cambios. */ export function normalizeStatusCellText(raw: string): string','"Como criar um diagnóstico?" â Orientação sobre a plataforma.':'"¿Cómo crear un diagnóstico?" â Orientación sobre la plataforma.','"Conteúdo Gerado pelo Usuário"':'"Contenido Generado por el Usuario"','"Dados do Diagnóstico"':'"Datos del Diagnóstico"','"Explique a relação entre os 3 pilares" â Conceitos da metodologia.':'"Explique la relación entre los 3 pilares" â Conceptos de la metodologÃa.','"Indicadores criam obrigação. Aprendizado é execução. Monitoramento fecha o ciclo. O SISTUR não informa. O SISTUR transforma."':'"Los indicadores crean obligación. El aprendizaje es ejecución. El monitoreo cierra el ciclo. SISTUR no informa. SISTUR transforma."','"O que significa um score baixo em OE?" â Interpretação de indicadores.':'"¿Qué significa un puntaje bajo en OE?" â Interpretación de indicadores.','"Plataforma"':'"Plataforma"','"Sugira ações para melhorar o pilar RA" â Recomendações práticas.':'"Sugiera acciones para mejorar el pilar RA" â Recomendaciones prácticas.','"Titular"':'"Titular"','"Usuário"':'"Usuario"',"# Linha de cabeçalho (obrigatória):":"# LÃnea de encabezado (obligatoria):","# Linhas de dados:":"# LÃneas de datos:","## Ficha de Conformidade Metodológica":"## Ficha de Conformidad Metodológica","% Compras Locais":"% Compras Locales","% Funcionários Locais":"% Empleados Locales","% Positivo":"% Positivo","% Resposta":"% Respuesta","% Vendas diretas":"% Ventas directas","% de domicÃlios com esgotamento sanitário adequado":"% de hogares con saneamiento adecuado","% do orçamento municipal destinado ao turismo":"% del presupuesto municipal destinado al turismo","(0.0.X): Correções de bugs e micro ajustes":"(0.0.X): Correcciones de errores y micro ajustes","(0.X.0): Novas funcionalidades compatÃveis":"(0.X.0): Nuevas funcionalidades compatibles","(15 capitais âncora pré-populadas com dados oficiais verificados: comparecimento eleitoral 2022/2024 e cobertura 5G/4G). Quando o municÃpio está fora do cache, o sistema tenta scraping sob demanda via Firecrawl em fontes agregadoras (G1 Eleições, Teleco) â porém TSE e Anatel oficiais bloqueiam acesso programático (SPA com hash routing e painéis Leaflet), então a maioria dos destinos cai no":"(15 capitales ancla pre-pobladas con datos oficiales verificados: participación electoral 2022/2024 y cobertura 5G/4G). Cuando el municipio está fuera de la caché, el sistema intenta scraping bajo demanda vÃa Firecrawl en fuentes agregadoras (G1 Eleições, Teleco) â sin embargo, el TSE y la Anatel oficiales bloquean el acceso programático (SPA con enrutamiento de hash y paneles Leaflet), por lo que la mayorÃa de los destinos caen en","(Check-ins realizados digitalmente ÷ total de check-ins) à 100. Consulte seu PMS ou sistema de check-in online.":"(Check-ins realizados digitalmente ÷ total de check-ins) à 100. Consulte su PMS o sistema de check-in online.","(Hóspedes que já se hospedaram antes ÷ total de hóspedes únicos) à 100. Consulte o CRM ou histórico do PMS.":"(Huéspedes que ya se alojaron antes ÷ total de huéspedes únicos) à 100. Consulte el CRM o historial del PMS.","(Intelligence for Governance, Management and Action) é o núcleo do sistema que aplica automaticamente 6 regras derivadas dessa teoria, garantindo que as decisões respeitem a lógica sistêmica do turismo.":"(Inteligencia para Gobernanza, Gestión y Acción) es el núcleo del sistema que aplica automáticamente 6 reglas derivadas de esta teorÃa, garantizando que las decisiones respeten la lógica sistémica del turismo.","(Quartos adaptados ÷ total de quartos) à 100. Considere quartos com barras, portas largas, banheiro adaptado conforme ABNT NBR 9050.":"(Habitaciones adaptadas ÷ total de habitaciones) à 100. Considere habitaciones con barras, puertas anchas, baño adaptado según ABNT NBR 9050.","(RLS apenas ADMIN) com":"(RLS solo ADMIN) con","(ResÃduos reciclados ÷ total de resÃduos) à 100. Verifique com a empresa de coleta seletiva.":"(Residuos reciclados ÷ total de residuos) à 100. Verifique con la empresa de recolección selectiva.","(X.0.0): Mudanças incompatÃveis ou grandes reformulações":"(X.0.0): Cambios incompatibles o grandes reformulaciones","(apenas o criador vê) ou":"(solo el creador ve) o","(atual {{v0}}%)":"(actual {{v0}}%)","(compartilhado com toda a organização). Administradores podem gerar relatórios no ambiente Demo para demonstrações.":"(compartido con toda la organización). Los administradores pueden generar informes en el entorno Demo para demostraciones.","(divergência > 5%).":"(divergencia > 5%).","(divergência > 5%).":"(divergencia > 5%).","(mapa.turismo.gov.br) com fallback para":"(mapa.turismo.gov.br) con fallback a","(nunca mistura textos de provedores diferentes em um mesmo relatório).":"(nunca mezcla textos de diferentes proveedores en un mismo informe).","(que pode ser um arquivo exato ou um\n * diretório terminado em":`(que puede ser un archivo exacto o un 246 * directorio terminado en`,"(que pode ser um arquivo exato ou um * diretório terminado em":"(que puede ser un archivo exacto o un * directorio que termina en","(score ⤠66%). Afeta as abas":"(puntuación ⤠66%). Afecta las pestañas","(sem descritor)":"(sin descriptor)","(streaming SSE, JWT obrigatório)":"(streaming SSE, JWT obligatorio)","(supabase.auth as unknown as":"(supabase.auth as unknown as","({{v0}} capÃtulos)":"({{v0}} capÃtulos)","({{v0}} diagnósticos)":"({{v0}} diagnósticos)","({{v0}} jogáveis)":"({{v0}} jugables)","({{v0}} total)":"({{v0}} total)","({{v0}}% concluÃdo)":"({{v0}}% completado)","({{v0}}) será permanentemente removido do sistema.":"({{v0}}) se eliminará permanentemente del sistema.","(último pleito municipal); Anatel tem TTL de 90 dias por municÃpio. Cache hit retorna em <100ms sem consumir créditos Firecrawl.":"(última elección municipal); Anatel tiene un TTL de 90 dÃas por municipio. Un acierto de caché retorna en <100ms sin consumir créditos Firecrawl.",") RETURNS boolean LANGUAGE plpgsql SECURITY DEFINER AS $$":") RETURNS boolean LANGUAGE plpgsql SECURITY DEFINER AS $$",") RETURNS uuid LANGUAGE plpgsql SECURITY DEFINER AS $$":") RETURNS uuid LANGUAGE plpgsql SECURITY DEFINER AS $$",") acionado por trigger de banco. O cliente recebe o":") activado por disparador de base de datos. El cliente recibe el",") cobrem cada tentativa de Claude / GPT-5 / Gemini, permitindo auditar quando e por que o fallback foi acionado.":") cubren cada intento de Claude / GPT-5 / Gemini, permitiendo auditar cuándo y por qué se activó el fallback.",") durante o pipeline paralelo do Claude.\n \n \n // é carregado de":`) durante la pipeline paralela de Claude. 247 248 249 // se carga de`,") durante o pipeline paralelo do Claude. // é carregado de":") durante el pipeline paralelo de Claude. // se carga de",") â onde ficam os valores numéricos confirmados por você ou importados das fontes oficiais (IBGE, CADASTUR, STN, DATASUS, INEP etc.). Quando a IA cita um número diferente do que está nessa tabela, o sistema substitui pelo valor oficial automaticamente.":") â donde se encuentran los valores numéricos confirmados por usted o importados de fuentes oficiales (IBGE, CADASTUR, STN, DATASUS, INEP, etc.). Cuando la IA cita un número diferente al que está en esta tabla, el sistema lo reemplaza automáticamente por el valor oficial.","), a polÃtica":"), la polÃtica",").join('; ') || 'nenhuma'}.":").join('; ') || 'ninguna'}.",");\n return alerts;\n }\n if (state.bars.ra < 20) alerts.push('ð¨ Natureza quase destruÃda!');\n else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo!');\n if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita poluição!');\n if (state.bars.ao < 15) alerts.push('ð¨ Sem organização!');\n if (state.disasterCount >= 3) alerts.push(":`); 250 return alerts; 251 } 252 if (state.bars.ra < 20) alerts.push('𨠡Naturaleza casi destruida!'); 253 else if (state.bars.ra < 40) alerts.push('ð´ ¡Naturaleza en peligro!'); 254 if (state.bars.oe > state.bars.ra + 30) alerts.push('ð ¡Mucha contaminación!'); 255 if (state.bars.ao < 15) alerts.push('𨠡Sin organización!'); 256 if (state.disasterCount >= 3) alerts.push(`,");\n return alerts;\n }\n if (state.bars.ra < 20) alerts.push('ð¨ PERIGO EXTREMO: Natureza quase destruÃda!');\n else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo! Plante árvores!');\n if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita construção! A poluição aumentou!');\n if (state.bars.ao < 15) alerts.push('ð¨ CAOS: Sem organização, desastres iminentes!');
256\n else if (state.bars.ao < 30) alerts.push('â ï¸ Falta organização! Problemas podem acontecer!');\n if (state.disasterCount >= 3) alerts.push(":`); 257 return alerts; 258 } 259 if (state.bars.ra < 20) alerts.push('ð¨ PELIGRO EXTREMO: ¡Naturaleza casi destruida!'); 260 else if (state.bars.ra < 40) alerts.push('ð´ ¡Naturaleza en peligro! ¡Planta árboles!'); 261 if (state.bars.oe > state.bars.ra + 30) alerts.push('ð ¡Mucha construcción! ¡La contaminación aumentó!'); 262 if (state.bars.ao < 15) alerts.push('ð¨ CAOS: ¡Sin organización, desastres inminentes!'); 263 else if (state.bars.ao < 30) alerts.push('â ï¸ Â¡Falta organización! ¡Pueden ocurrir problemas!'); 264 if (state.disasterCount >= 3) alerts.push(`,");\n }\n } catch (e) {\n toast.error(":`); 265 } 266 } catch (e) { 267 toast.error(`,");\n recommendations.push('Diversificar segmentos (corporativo, eventos, ecoturismo) para preencher meses baixos.');\n } else if (pattern === 'media') {\n recommendations.push('Sazonalidade moderada: yield management mensal e campanhas direcionadas aos meses de pico.');\n } else if (pattern === 'baixa') {\n recommendations.push('Sazonalidade baixa: operação estável favorece ocupação contÃnua â focar em fidelização.');\n } else {\n recommendations.push('Dados insuficientes para diagnosticar sazonalidade tarifária. Rode primeiro os blocos de Demanda, Eventos e Preço.');\n }\n\n return {\n seasonality_score,\n amplitude_pct: amplitude,\n peak_months,\n low_months,\n pattern,\n recommendations,\n sources,\n summary: pattern === 'sem_dados'\n ? tx('Sazonalidade não pôde ser calculada â fontes upstream ausentes.')\n :":`); 268 recommendations.push('Diversificar segmentos (corporativo, eventos, ecoturismo) para llenar meses bajos.'); 269 } else if (pattern === 'media') { 270 recommendations.push('Estacionalidad moderada: yield management mensual y campañas dirigidas a los meses pico.'); 271 } else if (pattern === 'baixa') { 272 recommendations.push('Estacionalidad baja: operación estable favorece ocupación continua â enfocarse en la fidelización.'); 273 } else { 274 recommendations.push('Datos insuficientes para diagnosticar la estacionalidad tarifaria. Ejecute primero los bloques de Demanda, Eventos y Precio.'); 275 } 276 277 return { 278 seasonality_score, 279 amplitude_pct: amplitude, 280 peak_months, 281 low_months, 282 pattern, 283 recommendations, 284 sources, 285 summary: pattern === 'sem_dados' 286 ? tx('No se pudo calcular la estacionalidad â fuentes upstream ausentes.') 287 :`,"); recommendations.push('Diversificar segmentos (corporativo, eventos, ecoturismo) para preencher meses baixos.'); } else if (pattern === 'media') { recommendations.push('Sazonalidade moderada: yield management mensal e campanhas direcionadas aos meses de pico.'); } else if (pattern === 'baixa') { recommendations.push('Sazonalidade baixa: operação estável favorece ocupação contÃnua â focar em fidelização.'); } else { recommendations.push('Dados insuficientes para diagnosticar sazonalidade tarifária. Rode primeiro os blocos de Demanda, Eventos e Preço.'); } return { seasonality_score, amplitude_pct: amplitude, peak_months, low_months, pattern, recommendations, sources, summary: pattern === 'sem_dados' ? tx('Sazonalidade não pôde ser calculada â fontes upstream ausentes.') :":"); recommendations.push('Diversificar segmentos (corporativo, eventos, ecoturismo) para llenar meses bajos.'); } else if (pattern === 'media') { recommendations.push('Estacionalidad moderada: gestión de rendimiento mensual y campañas dirigidas a los meses pico.'); } else if (pattern === 'baixa') { recommendations.push('Estacionalidad baja: operación estable favorece ocupación continua â enfocarse en la fidelización.'); } else { recommendations.push('Datos insuficientes para diagnosticar estacionalidad tarifaria. Ejecute primero los bloques de Demanda, Eventos y Precio.'); } return { seasonality_score, amplitude_pct: amplitude, peak_months, low_months, pattern, recommendations, sources, summary: pattern === 'sem_dados' ? tx('Estacionalidad no pudo ser calculada â fuentes upstream ausentes.') :","); return alerts; } if (state.bars.ra < 20) alerts.push('ð¨ Natureza quase destruÃda!'); else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo!'); if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita poluição!'); if (state.bars.ao < 15) alerts.push('ð¨ Sem organização!'); if (state.disasterCount >= 3) alerts.push(":"); return alerts; } if (state.bars.ra < 20) alerts.push('𨠡Naturaleza casi destruida!'); else if (state.bars.ra < 40) alerts.push('ð´ ¡Naturaleza en peligro!'); if (state.bars.oe > state.bars.ra + 30) alerts.push('ð ¡Mucha contaminación!'); if (state.bars.ao < 15) alerts.push('𨠡Sin organización!'); if (state.disasterCount >= 3) alerts.push(","); return alerts; } if (state.bars.ra < 20) alerts.push('ð¨ PERIGO EXTREMO: Natureza quase destruÃda!'); else if (state.bars.ra < 40) alerts.push('ð´ Natureza em perigo! Plante árvores!'); if (state.bars.oe > state.bars.ra + 30) alerts.push('ð Muita construção! A poluição aumentou!'); if (state.bars.ao < 15) alerts.push('ð¨ CAOS: Sem organização, desastres iminentes!');
287 else if (state.bars.ao < 30) alerts.push('â ï¸ Falta organização! Problemas podem acontecer!'); if (state.disasterCount >= 3) alerts.push(":"); return alerts; } if (state.bars.ra < 20) alerts.push('ð¨ PELIGRO EXTREMO: ¡Naturaleza casi destruida!'); else if (state.bars.ra < 40) alerts.push('ð´ ¡Naturaleza en peligro! ¡Planta árboles!'); if (state.bars.oe > state.bars.ra + 30) alerts.push('ð ¡Mucha construcción! ¡La contaminación aumentó!'); if (state.bars.ao < 15) alerts.push('ð¨ CAOS: ¡Sin organización, desastres inminentes!'); else if (state.bars.ao < 30) alerts.push('â ï¸ Â¡Falta organización! ¡Pueden ocurrir problemas!'); if (state.disasterCount >= 3) alerts.push(","); return e.href ? (":"); return e.href ? (","); } } catch (e) { toast.error(":"); } } catch (e) { toast.error(","+ Não altera score":"+ No altera puntuación",",\n type: 'assessment_calculated',\n title: 'Diagnóstico calculado',\n description:":`, 288 type: 'assessment_calculated', 289 title: 'Diagnóstico calculado', 290 description:`,",\n type: 'assessment_created',\n title: 'Novo diagnóstico',\n description:":`, 291 type: 'assessment_created', 292 title: 'Nuevo diagnóstico', 293 description:`,",\n 'Ao conectar, uma janela de login do SISTUR será aberta; entre com sua conta e aprove o acesso.',\n 'Nas conversas, ative o conector SISTUR para consultar destinos, diagnósticos e projetos.',\n ],\n },\n {\n label: tx('Cursor / Claude Code'),\n steps: [\n 'Adicione um servidor MCP do tipo HTTP (streamable) na configuração de MCP do editor.',":`, 294 'Al conectar, se abrirá una ventana de inicio de sesión de SISTUR; inicie sesión con su cuenta y apruebe el acceso.', 295 'En las conversaciones, active el conector SISTUR para consultar destinos, diagnósticos y proyectos.', 296 ], 297 }, 298 { 299 label: tx('Cursor / Claude Code'), 300 steps: [ 301 'Agregue un servidor MCP del tipo HTTP (streamable) en la configuración de MCP del editor.',`,",\n 'Escolha a autenticação OAuth e conclua o login com a sua conta SISTUR na tela de autorização.',\n 'Ative o conector na conversa e peça o que precisa â o assistente usará as ferramentas do SISTUR automaticamente.',\n ],\n },\n {\n label: tx('Claude (Claude.ai / Claude Desktop)'),\n steps: [\n 'Em Configurações â Connectors â \"Add custom connector\".',":`, 302 'Elija la autenticación OAuth y complete el inicio de sesión con su cuenta SISTUR en la pantalla de autorización.', 303 'Active el conector en la conversación y pida lo que necesite â el asistente usará las herramientas de SISTUR automáticamente.', 304 ], 305 }, 306 { 307 label: tx('Claude (Claude.ai / Claude Desktop)'), 308 steps: [ 309 'En Configuración â Connectors â "Add custom connector".',`,",\n );\n } catch (e) {\n toast.error(":`, 310 ); 311 } catch (e) { 312 toast.error(`,", 'Ao conectar, uma janela de login do SISTUR será aberta; entre com sua conta e aprove o acesso.', 'Nas conversas, ative o conector SISTUR para consultar destinos, diagnósticos e projetos.', ], }, { label: tx('Cursor / Claude Code'), steps: [ 'Adicione um servidor MCP do tipo HTTP (streamable) na configuração de MCP do editor.',":", 'Al conectar, se abrirá una ventana de inicio de sesión de SISTUR; ingrese con su cuenta y apruebe el acceso.', 'En las conversaciones, active el conector SISTUR para consultar destinos, diagnósticos y proyectos.', ], }, { label: tx('Cursor / Claude Code'), steps: [ 'Agregue un servidor MCP de tipo HTTP (streamable) en la configuración de MCP del editor.',",", 'Aplicações'] },\n { number: 3, title: 'Estudo de Caso', sections: ['Caracterização',":`, 'Aplicaciones'] }, 313 { number: 3, title: 'Estudio de Caso', sections: ['Caracterización',`,", 'Aplicações'] }, { number: 3, title: 'Estudo de Caso', sections: ['Caracterização',":", 'Aplicaciones'] }, { number: 3, title: 'Estudio de Caso', sections: ['Caracterización',",", 'Escolha a autenticação OAuth e conclua o login com a sua conta SISTUR na tela de autorização.', 'Ative o conector na conversa e peça o que precisa â o assistente usará as ferramentas do SISTUR automaticamente.', ], }, { label: tx('Claude (Claude.ai / Claude Desktop)'), steps: [ 'Em Configurações â Connectors â \"Add custom connector\".',":`, 'Elija la autenticación OAuth y complete el inicio de sesión con su cuenta SISTUR en la pantalla de autorización.', 'Active el conector en la conversación y pida lo que necesite â el asistente usará las herramientas de SISTUR automáticamente.', ], }, { label: tx('Claude (Claude.ai / Claude Desktop)'), steps: [ 'En Configuración â Connectors â "Add custom connector".',`,", ); } catch (e) { toast.error(":", ); } catch (e) { toast.error(",", com carga horária de":", con carga horaria de",", conforme registro no Sistema Integrado de Suporte para Turismo em Regiões (SISTUR).":", según registro en el Sistema Integrado de Soporte para Turismo en Regiones (SISTUR).",", divergente da tabela oficial.":", divergente de la tabla oficial.",", mas a coleta e a análise serão feitas por unidade â refletindo as diferenças de contexto de cada localidade.":", pero la recopilación y el análisis se realizarán por unidad â reflejando las diferencias de contexto de cada localidad.",", mas o SISTUR aproveita os":", pero SISTUR aprovecha los",", na área de":", en el área de",", o pipeline roda em duas fases:":", el pipeline se ejecuta en dos fases:",", type: 'assessment_calculated', title: 'Diagnóstico calculado', description:":", type: 'assessment_calculated', title: 'Diagnóstico calculado', description:",", type: 'assessment_created', title: 'Novo diagnóstico', description:":", type: 'assessment_created', title: 'Nuevo diagnóstico', description:",", {\n method: 'GET',\n signal: ctrl.signal,\n cache: 'no-store',\n });\n clearTimeout(timer);\n if (!res.ok) return { kind: 'server', detail:":`, { 314 method: 'GET', 315 signal: ctrl.signal, 316 cache: 'no-store', 317 }); 318 clearTimeout(timer); 319 if (!res.ok) return { kind: 'server', detail:`,", { method: 'GET', signal: ctrl.signal, cache: 'no-store', }); clearTimeout(timer); if (!res.ok) return { kind: 'server', detail:":", { method: 'GET', signal: ctrl.signal, cache: 'no-store', }); clearTimeout(timer); if (!res.ok) return { kind: 'server', detail:","-- Valida: ERP|EDU e ADM
319IN|ANALYST|VIEWER|ESTUDANTE|PROFESSOR":"-- Valida: ERP|EDU y ADMIN|ANALYST|VIEWER|ESTUDIANTE|PROFESSOR","-- Verifica: sem licença existente, sem trial usado":"-- Verifica: sin licencia existente, sin prueba utilizada","--- MANIFESTO JSON DE REFERÃNCIA ---":"--- MANIFIESTO JSON DE REFERENCIA ---",". As 6 regras IGMA são aplicadas normalmente em ambos os contextos, incluindo bloqueios quando RA está crÃtico.":". Las 6 reglas IGMA se aplican normalmente en ambos contextos, incluyendo bloqueos cuando RA está crÃtico.",". As demais abas (Radiografia, Normalização, Projeto, Comentários, Linhagem) não são filtradas.":". Las demás pestañas (RadiografÃa, Normalización, Proyecto, Comentarios, Linaje) no se filtran.",". Ele apresenta o turismo como sistema aberto e os conjuntos RA, OE e AO â a linguagem comum de todas as demais formações.":". Presenta el turismo como un sistema abierto y los conjuntos RA, OE y AO â el lenguaje común de todas las demás formaciones.",". Em posts da sua organização, sua identidade sempre será visÃvel para membros da mesma organização.":". En publicaciones de su organización, su identidad siempre será visible para los miembros de la misma organización.",". O acesso será mantido até o fim do perÃodo vigente.":". El acceso se mantendrá hasta el final del perÃodo vigente.",". Para Claude, o orçamento de":". Para Claude, el presupuesto de",". Se qualquer chamada falhar (timeout, abort, conteúdo vazio mid-stream ou erro de stream parcial), o trail é registrado e o próximo provedor da ordem é acionado automaticamente, mantendo o mesmo prompt e dados auditados â a regra de fallback é":". Si alguna llamada falla (tiempo de espera, aborto, contenido vacÃo a mitad de la transmisión o error de transmisión parcial), se registra el intento y se activa automáticamente el siguiente proveedor en el orden, manteniendo la misma instrucción y datos auditados â la regla de reserva es",". Stages explÃcitos (":". Etapas explÃcitas (",'. Use "Normalizar" para forçar a soma a 100% mantendo proporções.':'. Use "Normalizar" para forzar la suma al 100% manteniendo proporciones.',".ics":".ics","/ 5 necessários":"/ 5 necesarios",'/* ===== ABNT / MEC (NBR 14724, 6024, 6023, 10520) ===== */ /* Papel A4, margens 3cm sup/esq e 2cm inf/dir, Arial 12pt, entrelinha 1,5, parágrafos justificados com recuo de 1,25cm e numeração de página no rodapé direito. Cores institucionais permanecem apenas nos cabeçalhos de tabela e no destaque "strong" â corpo de texto fica em preto. */ @page':'/* ===== ABNT / MEC (NBR 14724, 6024, 6023, 10520) ===== */ /* Papel A4, márgenes 3cm sup/izq y 2cm inf/der, Arial 12pt, interlineado 1.5, párrafos justificados con sangrÃa de 1.25cm y numeración de página en el pie de página derecho. Los colores institucionales permanecen solo en los encabezados de tabla y en el resaltado "strong" â el cuerpo del texto es negro. */ @page',"// Entrega, retentativas, supressao e descadastro sao gerenciados pela plataforma.":"// La entrega, reintentos, supresión y baja son gestionados por la plataforma.","// Envio sincrono via API gerenciada de e-mail da Lovable":"// EnvÃo sÃncrono vÃa API gestionada de correo electrónico de Lovable","// REGRA 1 â RA PRIORITÃRIO":"// REGLA 1 â RA PRIORITARIO","// REGRA 2 â CICLO CONTÃNUO":"// REGLA 2 â CICLO CONTINUO","// REGRA 4 â GOVERNANÃA CENTRAL":"// REGLA 4 â GOBERNANZA CENTRAL","/admin/report-logs":"/admin/report-logs","/ano":"/año","/mês":"/mes","/planos":"/planes","0 (Não) ou 1 (Sim)":"0 (No) o 1 (SÃ)","0 ? `, além de $":"0 ? `, además de $","0 ? `Esta marca já possui $":"0 ? `Esta marca ya posee $","0 ? `Lembrete enviado para $":"0 ? `Recordatorio enviado a $","0.2) impact = 'Impacto moderado no pilar'; else impact = 'Baixo impacto no pilar'; setResult(":"0.2) impact = 'Impacto moderado en el pilar'; else impact = 'Bajo impacto en el pilar'; setResult(","1 && quantity !== (activeSub as any)?.quantity; if (activeSub?.stripe_subscription_id && (!samePrice || qtyChanged))":"1 && quantity !== (activeSub as any)?.quantity; if (activeSub?.stripe_subscription_id && (!samePrice || qtyChanged))","1 diagnóstico":"1 diagnóstico","1 diagnóstico completo permitido":"1 diagnóstico completo permitido","1 imagem":"1 imagen","1 token debitado antes da resposta":"1 token debitado antes de la respuesta","1-3 anos de experiência":"1-3 años de experiencia","1. DEFINIÃÃES":"1. DEFINICIONES","1. Fundamentação Teórica":"1. Fundamentación Teórica","1. O que é um Diagnóstico SISTUR":"
3191. Qué es un Diagnóstico SISTUR","1. Organização do Glossário":"1. Organización del Glosario","1. Visão Geral":"1. Visión General","1. Visão Geral do Sistema":"1. Visión General del Sistema","1.1 Login e Recuperação de Senha":"1.1 Inicio de Sesión y Recuperación de Contraseña","1.2 Estrutura da Interface":"1.2 Estructura de la Interfaz","1.2 Proposta de Valor Ãnica":"1.2 Propuesta de Valor Ãnica","1.200â1.800 palavras.":"1.200â1.800 palabras.","1.250 empregos formais em turismo":"1.250 empleos formales en turismo","10 imagens":"10 imágenes","10 perguntas gratuitas ao Professor Beni":"10 preguntas gratuitas al Profesor Beni","10 vÃdeos":"10 videos","10+ construções":"10+ construcciones","10+ turnos no verde":"10+ turnos en verde","10. CONFIDENCIALIDADE":"10. CONFIDENCIALIDAD","10. Código-Fonte â Trechos Relevantes":"10. Código Fuente â Fragmentos Relevantes","100 vÃdeos":"100 videos","100% determinÃsticas, baseadas em regras. Cada capacitação é prescrita quando Indicador + Pilar + Status atendem critérios especÃficos. Sem IA.":"100% determinÃsticas, basadas en reglas. Cada capacitación se prescribe cuando Indicador + Pilar + Estatus cumplen criterios especÃficos. Sin IA.","100% determinÃstico, baseado em regras. Sem IA.":"100% determinÃstico, basado en reglas. Sin IA.","100+ indicadores. Análise 360° para capitais, polos turÃsticos ou planejamento estratégico.":"100+ indicadores. Análisis 360° para capitales, polos turÃsticos o planificación estratég
319ica.","11. Funções de Banco de Dados (PostgreSQL)":"11. Funciones de Base de Datos (PostgreSQL)","11. RESCISÃO":"11. RESCISIÃN","11.1 Controle de Acesso â has_role()":"11.1 Control de Acceso â has_role()","11.2 Tipos e Interfaces Centrais [igmaEngine.ts]":"11.2 Tipos e Interfaces Centrales [igmaEngine.ts]","11.3 Classificação de Severidade [igmaEngine.ts]":"11.3 Clasificación de Severidad [igmaEngine.ts]","11.5 Expiração Automática â expire_trial_licenses()":"11.5 Expiración Automática â expire_trial_licenses()","11.6 Certificação â verify_certificate_by_code()":"11.6 Certificación â verify_certificate_by_code()","11.7 Envio de E-mails â infraestrutura gerenciada":"11.7 EnvÃo de Correos Electrónicos â infraestructura gestionada","12 manifestações culturais":"12 manifestaciones culturales","12% do território em áreas protegidas":"12% del territorio en áreas protegidas","12,5 por mil nascidos vivos":"12,5 por mil nacidos vivos","12. DISPOSIÃÃES GERAIS":"12. DISPOSICIONES GENERALES","13. Referências Bibliográficas":"13. Referencias Bibliográficas","15 desligamentos / 60 média = 25%":"15 desvinculaciones / 60 media = 25%","15% de desconto":"15% de descuento","15,2 por 100 mil hab.":"15,2 por 100 mil hab.","18% do território em áreas protegidas":"18% del territorio en áreas protegidas","2% em I-RA/I-OE/I-AO por 2+ rodadas consecutivas (regra de * `regression-detection-alerts`). Estritamente intra-empreendimento/intra-destino â * nenhum ranking entre destinos. Visual apenas; sem disparo de e-mail. */ export function EnterpriseRegressionAlerts(":"2% en I-RA/I-OE/I-AO por 2+ rondas consecutivas (regla de * `regression-detection-alerts`). Estrictamente intra-emprendimiento/intra-destino â * ningún ranking entre destinos. Solo visual; sin envÃo de correo electrónico. */ export function EnterpriseRegressionAlerts(","2,3 leitos por 1.000 habitantes":"2,3 camas por 1.000 habitantes","2. Arquitetura Técnica":"2. Arquitectura Técnica","2. Criar uma rodada de diagnóstico no nÃvel adequado (Essencial, Estratégico ou Integral).":"2. Crear una ronda de diagnóstico en el nivel adecuado (Esencial, Estratégico o Integral).","2. Módulos Principais":"2. Módulos Principales","2. NÃveis DisponÃveis":"2. Niveles Disponibles","2. OBJETO":"2. OBJETO","2. Os Três Pilares do Sistema TurÃstico":"2. Los Tres Pilares del Sistema TurÃstico","2. Pilar RA â Relações Ambientais":"2. Pilar RA â Relaciones Ambientales","2. PrincÃpios da Prescrição":"2. Principios de la Prescripción","2.1 Qualidade da Ãgua (IQA)":"2.1 Calidad del Agua (IQA)","2.1 RA â Relações Ambientais (Prioridade 1)":"2.1 RA â Relaciones Ambientales (Prioridad 1)","2.1 SISTUR AnalÃtico":"2.1 SISTUR AnalÃtico","2.1 Stack Tecnológico":"2.1 Stack Tecnológico","2.2 Estrutura do Projeto":"2.2 Estructura del Proyecto","2.2 OE â Organização Estrutural (Prioridade 2)":"2.2 OE â Organización Estructural (Prioridad 2)","2.2 Ãreas Protegidas (%)":"2.2 Ãreas Protegidas (%)","2.3 AO â Ações Operacionais (Prioridade 3)":"2.3 AO â Acciones Operativas (Prioridad 3)","2.3 Gestão de ResÃduos Sólidos":"2.3 Gestión de Residuos Sólidos","2.3 Segurança":"2.3 Seguridad","2.4 Observatório TurÃstico":"2.4 Observatorio TurÃstico","2.4 Patrimônio Histórico Tombado":"2.4 Patrimonio Histórico Protegido","2.5 Fórum e Base de Conhecimento":"2.5 Foro y Base de Conocimiento","20+ funções serverless em Deno/TypeScript para processamento backend:":"20+ funciones serverless en Deno/TypeScript para procesamiento backend:",'2100) row.error = "ano inválido"; else if (month !== null && (!Number.isFinite(month) || month':'2100) row.error = "año inválido"; else if (month !== null && (!Number.isFinite(month) || month',"22 indicadores de hospitalidade (6 compartilhados)":"22 indicadores de hospitalidad (6 compartidos)","22 indicadores especializados":"22 indicadores especializados","22 indicadores especializados em 7 categorias":"22 indicadores especializados en 7 categorÃas","25 kgCOâe por pernoite":"25 kgCOâe por pernocte","25 vÃdeos":"25 videos","2â
Estimado":"2â
Estimado","3 desafios novos a cada dia. ConcluÃdos:":"3 desafÃos nuevos cada dÃa. Completados:","3 nÃveis de diagnóstico: Essencial (9 indicadores), Estratégico (19), Integral (96)":"3 niveles de diagnóstico: Esencial (9 indicadores), Estratégico (19), Integral (96)","3 prioritárias":"3 prioritarias","3 recomendações prioritárias por pilar":"3 recomendaciones prioritarias por pilar","3. Estrutura Pedagógica":"3. Estructura Pedagógica","3. Fluxo TÃpico de Trabalho":"3. Flujo TÃpico de Trabajo","3. Motor IGMA â Núcleo Proprietário":"3. Motor IGMA â Núcleo Propietario","3. Os 3 NÃveis de Diagnóstico":"3. Los 3 Niveles de Diagnóstico","3. PROPRIEDADE INTELECTUAL":"3. PROPIEDAD INTELECTUAL","3. Pilar OE â Organização Estrutural":"3. Pilar OE â Organización Estructural","3. Preencher os indicadores manualmente ou via importação CSV.":"3. Rellenar los indicadores manualmente o mediante importación CSV.","3.1 Criação da Rodada":"3.1 Creación de la Ronda","3.1 NÃveis de CurrÃculo":"3.1 Niveles de CurrÃculo","3.1 Pipeline de Processamento (9 Etapas)":"3.1 Pipeline de Procesamiento (9 Etapas)","3.2 As 6 Regras Sistêmicas":"3.2 Las 6 Reglas Sistémicas","3.2 Estratégico (19 indicadores, 2-3 horas)":"3.2 Estratégico (19 indicadores, 2-3 horas)","3.2 Preenchimento de Indicadores":"3.2 Relleno de Indicadores","3.2 Pré-requisitos":"3.2 Prerrequisitos","3.2 Transporte e Acessos":"3.2 Transporte y Accesos","3.3 Auditoria Pré-Cálculo":"3.3 AuditorÃa Pre-Cálculo","3.3 Sinalização TurÃstica":"3.3 Señalización TurÃstica","3.4 Cálculo":"3.4 Cálculo","3.4 Equipamentos de Apoio":"3.4 Equipamientos de Apoyo","30 dias":"30 dÃas","30 perguntas/mês (60 no Empresarial), renovadas todo mês. Não acumula.":"30 preguntas/mes (60 en el Empresarial), renovadas cada mes. No se acumula.","30+ funções SQL proprietárias com SECURITY DEFINER":"30+ funciones SQL propietarias con SECURITY DEFINER","35% de receita própria":"35% de ingresos propios","3â
Manual (entrada do usuário
319)":"3â
Manual (entrada del usuario)","4 jogos com sessões persistentes":"4 juegos con sesiones persistentes","4 jogos educacionais com persistência de sessão:":"4 juegos educativos con persistencia de sesión:","4 jogos educacionais com persistência e relação direta com conteúdo":"4 juegos educativos con persistencia y relación directa con contenido","4 segmentos (Cultural, Ecoturismo, Negócios, Gastronômico)":"4 segmentos (Cultural, Ecoturismo, Negocios, Gastronómico)","4. As 6 Regras do Motor IGMA":"4. Las 6 Reglas del Motor IGMA","4. Avaliação e Certificação":"4. Evaluación y Certificación","4. Calcular o diagnóstico â o status (Adequado/Atenção/CrÃtico) é gerado automaticamente.":"4. Calcular el diagnóstico â el estado (Adecuado/Atención/CrÃtico) se genera automáticamente.","4. DADOS E PRIVACIDADE":"4. DATOS Y PRIVACIDAD","4. Interpretação Territorial":"4. Interpretación Territorial","4. Módulos Funcionais":"4. Módulos Funcionales","4. Permissões e Papéis":"4. Permisos y Roles","4. Pilar AO â Ações Operacionais":"4. Pilar AO â Acciones Operacionales","4.1 AnalÃtico â Diagnóstico Territorial":"4.1 AnalÃtico â Diagnóstico Territorial","4.1 Conselho Municipal de Turismo":"4.1 Consejo Municipal de Turismo","4.1. Dados Pessoais:":"4.1. Datos Personales:","4.2 EDU â Capacitação Prescritiva":"4.2 EDU â Capacitación Prescriptiva","4.2 Plano Municipal de Turismo":"4.2 Plan Municipal de Turismo","4.2. Dados de Diagnóstico e Indicadores:":"4.2. Datos de Diagnóstico e Indicadores:","4.3 Despesa Municipal com Turismo":"4.3 Gasto Municipal con Turismo","4.3 Empresarial â Módulo Hoteleiro":"4.3 Empresarial â Módulo Hotelero","4.3. Dados Organizacionais:":"4.3. Datos Organizacionales:","4.4 Gamificação Educacional":"4.4 Gamificación Educativa","4.4 Qualificação Profissional":"4.4 Cualificación Profesional","4.4. Retenção de Dados:":"4.4. Retención de Datos:","4.5 Fórum e Comunidade":"4.5 Foro y Comunidad","4.5 Marketing TurÃstico":"4.5 Marketing TurÃstico","4.5. Portabilidade:":"4.5. Portabilidad:","41 indicadores com definição, fonte oficial e periodicidade":"41 indicadores con definición, fuente oficial y periodicidad","45% com ensino médio completo":"45% con bachillerato completo","480 horas / 60 funcionários = 8h por colaborador":"480 horas / 60 empleados = 8h por colaborador","4â
Calculado (derivado oficial)":"4â
Calculado (derivado oficial)","5 documentos válidos":"5 documentos válidos","5. ACESSO DO TITULAR AOS DADOS":"5. ACCESO DEL TITULAR A LOS DATOS","5. Bloqueios Sistêmicos":"5. Bloqueos Sistémicos","5. Compliance e Anti-fraude":"5. Compliance y Anti-fraude","5. Consultar prescrições de capacitação no SISTUR EDU.":"5. Consultar prescripciones de capacitación en SISTUR EDU.","5. Integrações e Fontes de Dados":"5. Integraciones y Fuentes de Datos","5. SISTUR Empresarial â Módulo Hoteleiro":"5. SISTUR Empresarial â Módulo Hotelero","50 ou 150 créditos por usuário; pacote de 500 compartilhado pela organização. Validade de 12 meses.":"50 o 150 créditos por usuario; paquete de 500 compartido por la organización. Validez de 12 meses.","50 vÃdeos":"50 videos","500 perguntas (organização)":"500 preguntas (organización)","56 indicadores nos pilares RA, OE e AO":"56 indicadores en los pilares RA, OE y AO","5â
Automático (API oficial)":"5â
Automático (API oficial)","6 indicadores compartilhados com diagnósticos territoriais (NPS, Reviews, Treinamento, etc.)":"6 indicadores compartidos con diagnósticos territoriales (NPS, Reviews, Entrenamiento, etc.)","6 indicadores são compartilhados":"6 indicadores son compartidos","6. CONTEÃDO EDUCACIONAL":"6. CONTENIDO EDUCATIVO","6. Fontes de Dados e Transparência":"6. Fuentes de Datos y Transparencia","6. Gerar relatórios e planos de ação.":"6. Generar informes y planes de acción.","6. Modelo de Dados":"6. Modelo de Datos","6. Papel do Professor":"6. Rol del Profesor","6. Relatórios e Plano de Ação":"6. Informes y Plan de Acción","6. Régua de Status":"6. Regla de Estado","60 funcionários / 80 quartos = 0,75":"60 empleados / 80 habitaciones = 0,75","65% de cobertura":"65% de cobertura","7 dias":"7 dÃas","7 dias com AnalÃtico + EDU + Games habilitados":"7 dÃas con AnalÃtico + EDU + Juegos habilitados","7. Alertas de Regressão":"7. Alertas de Regresión","7. Base de Conhecimento e Referências Globais":"7. Base de Conocimiento y Referencias Globales","7. Boas Práticas":"7. Buenas Prácticas","7. Fluxos Visuais do Sistema":"7. Flujos Visuales del Sistema","7. LICENCIAMENTO E PAGAMENTO":"7. L
319ICENCIAMIENTO Y PAGO","7. Monitorar evolução pelo Observatório.":"7. Monitorear evolución por el Observatorio.","7.1 Fluxo de Diagnóstico Territorial":"7.1 Flujo de Diagnóstico Territorial","7.2 Fluxo de Prescrição EDU (DeterminÃstico)":"7.2 Flujo de Prescripción EDU (DeterminÃstico)","7.3 Fluxo de Licenciamento":"7.3 Flujo de Licenciamiento","7.4 Fluxo de Autenticação e Acesso":"7.4 Flujo de Autenticación y Acceso","72% de ocupação anual média":"72% de ocupación anual promedio","72.5 (escala 0-100: 0=péssima, 100=ótima)":"72.5 (escala 0-100: 0=pésima, 100=óptima)","8 agências cadastradas":"8 agencias registradas","8 categorias: Plano Diretor, Legislação, Pesquisa, etc.":"8 categorÃas: Plan Director, Legislación, Investigación, etc.","8 fontes oficiais":"8 fuentes oficiales","8 milhões de toneladas de plástico vão ao oceano por ano":"8 millones de toneladas de plástico van al océano por año","8 patrimônios registrados":"8 patrimonios registrados","8,5% dos empregos no setor turÃstico":"8,5% de los empleos en el sector turÃstico","8. Metodologia de Cálculo Detalhada":"8. MetodologÃa de Cálculo Detallada","8. Personalização de Relatórios":"8. Personalización de Informes","8. Privacidade e Comparações":"8. Privacidad y Comparaciones","8. RESPONSABILIDADES DO USUÃRIO":"8. RESPONSABILIDADES DEL USUARIO","8.1 Normalização de Indicadores":"8.1 Normalización de Indicadores","8.2 Cálculo dos Scores de Pilar":"8.2 Cálculo de los Scores de Pilar","8.2 na média geral de satisfação":"8.2 en el promedio general de satisfacción","8.3 Classificação de Severidade":"8.3 Clasificación de Severidad","8.4 Regras IGMA â Fluxo de Decisão":"8.4 Reglas IGMA â Flujo de Decisión","8.5 Snapshot de Rastreabilidade":"8.5 Snapshot de Trazabilidad","800 recorrentes / 3.000 únicos = 26,7%":"800 recurrentes / 3.000 únicos = 26,7%","800â1.200 palavras.":"800â1.200 palabras.","85% de reviews respondidos":"85% de reseñas respondidas","9. LIMITAÃÃO DE RESPONSABILIDADE":"9. LIMITACIÃN DE RESPONSABILIDAD","9. Referências Bibliográficas":"9. Referencias Bibliográficas","90 dias":"90 dÃas","92% da população atendida":"92% de la población atendida","97% dos domicÃlios atendidos":"97% de los domicilios atendidos",": ''\n } Recalcule o diagnóstico e regenere o relatório.":`: '' 320 } Recalcule el diagnóstico y regenere el informe.`,": '' } Recalcule o diagnóstico e regenere o relatório.":": '' } Recalcule el diagnóstico y regenere el informe.",": ''} Escolha um novo plano abaixo.":": ''} Elija un nuevo plan a continuación.",": Abastecimento de água (rede geral %) e Coleta de lixo domiciliar (%) â tabela 3217":": Abastecimiento de agua (red general %) y Recogida de residuos domiciliarios (%) â tabla 3217",": Dados disponÃveis via Censo Escolar (coleta manual)":": Datos disponibles vÃa Censo Escolar (recolección manual)",": Guias de turismo e Agências de turismo via datasets oficiais abertos (ingestão trimestral)":": GuÃas de turismo y Agencias de turismo vÃa datasets oficiales abiertos (ingesta trimestral)",": IDEB (Ãndice de Desenvolvimento da Educação Básica)":": IDEB (Ãndice de Desarrollo de la Educación Básica)",": IDH Municipal, Ãndice de Gini, Incidência de pobreza":": IDH Municipal, Ãndice de Gini, Incidencia de pobreza",": IQA (Ãndice de Quali
320dade da Ãgua) médio das estações de monitoramento do municÃpio, número de estações ativas e ano de referência â via API pública da Agência Nacional de Ãguas (alimenta o pilar RA com base hÃdrica oficial)":": IQA (Ãndice de Calidad del Agua) promedio de las estaciones de monitoreo del municipio, número de estaciones activas y año de referencia â vÃa API pública de la Agencia Nacional del Agua (alimenta el pilar RA con base hÃdrica oficial)",": Leitos hospitalares por habitante, Cobertura de saúde (estabelecimentos), Taxa de mortalidade infantil, Mortalidade geral por mil habitantes":": Camas hospitalarias por habitante, Cobertura de salud (establecimientos), Tasa de mortalidad infantil, Mortalidad general por mil habitantes",": Meios de hospedagem (estabelecimentos e UH)":": Medios de alojamiento (establecimientos y UH)",": População, PIB per capita, Densidade demográfica e Ãrea territorial (Censo 2022, tabela 4714)":": Población, PIB per cápita, Densidad demográfica y Ãrea territorial (Censo 2022, tabla 4714)",": Receita própria per capita, Despesa com turismo (R$ milhões)":": Ingreso propio per cápita, Gasto en turismo (R$ millones)",": Região turÃstica, Categoria (A-E), Empregos no turismo, Estabelecimentos turÃsticos, Visitantes nacionais e internacionais, Arrecadação turÃstica, Conselho municipal de turismo â via API REST do Ministério do Turismo (mapa.turismo.gov.br)":": Región turÃstica, CategorÃa (A-E), Empleos en turismo, Establecimientos turÃsticos, Visitantes nacionales e internacionales, Recaudación turÃstica, Consejo municipal de turismo â vÃa API REST del Ministerio de Turismo (mapa.turismo.gov.br)",": Saneamento, segurança, acessibilidade e demais indicadores que dependem de levantamento de campo":": Saneamiento, seguridad, accesibilidad y demás indicadores que dependen de levantamiento de campo",": a edge function persiste progressivamente o markdown acumulado em":": la función edge persiste progresivamente el markdown acumulado en",": e.alarmMinutes === 1440 ? '1 dia' :":": e.alarmMinutes === 1440 ? '1 dÃa' :",": o cliente expande pagando o valor por usuário adicional (cobrança por usuário).":": el cliente se expande pagando el valor por usuario adicional (cobro por usuario).",": o indicador aparece no painel de pré-preenchimento como linha MANUAL com valor vazio, badge ð MST e link direto para a fonte oficial. O usuário insere o valor e o sistema persiste como fonte oficial validada. Disparado apenas quando":": el indicador aparece en el panel de precarga como lÃnea MANUAL con valor vacÃo, distintivo ð MST y enlace directo a la fuente oficial. El usuario inserta el valor y el sistema persiste como fuente oficial validada. Activado solo cuando",": sem invenção de números, anos ou fontes.":": sin invención de números, años o fuentes.",": termina quando o usuário conclui o curso base e esgota as perguntas gratuitas â sem data de expiração.":": termina cuando el usuario completa el curso base y agota las preguntas gratuitas â sin fecha de expiración.",": v.status === 'unavailable' ? 'indisponÃvel' : 'erro'}":": v.status === 'unavailable' ? 'no disponible' : 'error'}",";\n payload = {\n chapters: [\n { number: 1, title: 'Introdução', sections: ['Justificativa', 'Objetivos', 'Metodologia'] },\n { number: 2, title: 'Fundamentação Teórica: O Modelo SISTUR', sections: ['Teoria Sistêmica',":`; 321 payload = { 322 chapters: [ 323 { number: 1, title: 'Introducción', sections: ['Justificación', 'Objetivos', 'MetodologÃa'] }, 324 { number: 2, title: 'Fundamentación Teórica: El Modelo SISTUR', sections: ['TeorÃa Sistémica',`,";\n case 'COUNT':\n return Math.round(value).toLocaleString('pt-BR', { maximumFractionDigits: 0 });\n case 'RATE_PER_CAPITA':\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 });\n case 'DURATION':\n return value.toLocaleString('pt-BR', { maximumFractionDigits: 1 });
324\n case 'AREA':\n return value.toLocaleString('pt-BR', { maximumFractionDigits: 2 });\n case 'BINARY':\n return value >= 0.5 ? 'Sim' : 'Não';\n case 'CATEGORICAL':\n return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('pt-BR');\n case 'NUMERIC':\n default:\n return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 });\n }\n}\n\n/**\n * Compose":`; 325 case 'COUNT': 326 return Math.round(value).toLocaleString('es-ES', { maximumFractionDigits: 0 }); 327 case 'RATE_PER_CAPITA': 328 return value.toLocaleString('es-ES', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); 329 case 'DURATION': 330 return value.toLocaleString('es-ES', { maximumFractionDigits: 1 }); 331 case 'AREA': 332 return value.toLocaleString('es-ES', { maximumFractionDigits: 2 }); 333 case 'BINARY': 334 return value >= 0.5 ? 'SÃ' : 'No'; 335 case 'CATEGORICAL': 336 return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('es-ES'); 337 case 'NUMERIC': 338 default: 339 return value.toLocaleString('es-ES', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); 340 } 341} 342 343/** 344 * Compose`,";\n}\n\n/**\n * Resolve uma entrada":`; 345} 346 347/** 348 * Resuelve una entrada`,"; /** * Página pública de preços (/planos). * Catálogo oficial + formulário de interesse (leads comerciais). */ export default function Precos()":"; /** * Página pública de precios (/planes). * Catálogo oficial + formulario de interés (leads comerciales). */ export default function Precos()","; case 'COUNT': return Math.round(value).toLocaleString('pt-BR', { maximumFractionDigits: 0 }); case 'RATE_PER_CAPITA': return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); case 'DURATION': return value.toLocaleString('pt-BR', { maximumFractionDigits: 1 }); case 'AREA': return value.toLocaleString('pt-BR', { maximumFractionDigits: 2 }); case 'BINARY': return value >= 0.5 ? 'Sim' : 'Não'; case 'CATEGORICAL': return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('pt-BR'); case 'NUMERIC': default: return value.toLocaleString('pt-BR', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); } } /** * Compose":"; case 'COUNT': return Math.round(value).toLocaleString('es-ES', { maximumFractionDigits: 0 }); case 'RATE_PER_CAPITA': return value.toLocaleString('es-ES', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); case 'DURATION': return value.toLocaleString('es-ES', { maximumFractionDigits: 1 }); case 'AREA': return value.toLocaleString('es-ES', { maximumFractionDigits: 2 }); case 'BINARY': return value >= 0.5 ? 'SÃ' : 'No'; case 'CATEGORICAL': return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('es-ES'); case 'NUMERIC': default: return value.toLocaleString('es-ES', { minimumFractionDigits: 0, maximumFractionDigits: 2 }); } } /** * Compose","; payload = { chapters: [ { number: 1, title: 'Introdução', sections: ['Justificativa', 'Objetivos', 'Metodologia'] }, { number: 2, title: 'Fundamentação Teórica: O Modelo SISTUR', sections: ['Teoria Sistêmica',":"; payload = { chapters: [ { number: 1, title: 'Introducción', sections: ['Justificación', 'Objetivos', 'MetodologÃa'] }, { number: 2, title: 'Fundamentación Teórica: El Modelo SISTUR', sections: ['TeorÃa Sistémica',","; } /** * Resolve uma entrada":"; } /** * Resuelve una entrada","= 0.5 ? 'Sim' : 'Não'; case 'CATEGORICAL':":"= 0.5 ? 'SÃ' : 'No'; case 'CATEGORICAL':","= 0.5 ? 'Sim' : 'Não'; case 'CATEGORICAL': return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('pt-BR'); case 'NUMERIC': default: return value.toLocaleString('pt-BR',":"= 0.5 ? 'SÃ' : 'No'; case 'CATEGORICAL': return CATEGORICAL_LETTERS[Math.round(value)] ?? value.toLocaleString('es-ES'); case 'NUMERIC': default: return value.toLocaleString('es-ES',","= 1) reasons.push(`Ocupação $":"= 1) reasons.push(`Ocupación $","= 70, label: `EquilÃbrio ⥠70 ($":"= 70, label: `Equilibrio ⥠70 ($","= MIN_N pares no segmento â respeita `no-public-rankings` e LGPD. */ export function EnterpriseSectorBenchmark(":"= MIN_N pares en el segmento â respeta `no-public-rankings` y LGPD. */ export function EnterpriseSectorBenchmark(","@ProfessorMarioBeni":"@ProfessorMarioBeni","@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap'); *":"@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap'); *","@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap'); *":"@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap'); *","A ANA não possui estações de monitoramento de qualidade da água num raio de 50 km deste municÃpio. O campo permanecerá disponÃvel para preenchimento manual na próxima etapa, caso você tenha acesso a fontes locais (vigilância sanitária, secretaria de meio ambiente ou estudos de bacia hidrográfica).":"La ANA no tiene estaciones de monitoreo de calida
348d del agua en un radio de 50 km de este municipio. El campo permanecerá disponible para rellenado manual en la siguiente etapa, en caso de que tenga acceso a fuentes locales (vigilancia sanitaria, secretarÃa de medio ambiente o estudios de cuenca hidrográfica).","A API transacional do CADASTUR é":"La API transaccional de CADASTUR es","A Amazônia ocupa cerca de 49% do território brasileiro!":"¡La AmazonÃa ocupa cerca del 49% del territorio brasileño!","A Fazer":"Por hacer","A Grande Barreira de Coral na Austrália tem mais de 2.300 km de extensão.":"La Gran Barrera de Coral en Australia tiene más de 2.300 km de extensión.","A MST mantém o núcleo SISTUR (Score Final, classificação e regras IGMA) intacto e adiciona 9 indicadores complementares mapeados nos 3 pilares de Beni. Os indicadores MST aparecem com badge":"El MST mantiene el núcleo SISTUR (Puntuación Final, clasificación y reglas IGMA) intacto y añade 9 indicadores complementarios mapeados en los 3 pilares de Beni. Los indicadores MST aparecen con distintivo","A MST é uma extensão opcional (a partir da v1.28.0) baseada em Tasso, Silva & Nascimento (2024) que adiciona 9 indicadores complementares ao núcleo SISTUR â 4 em RA (acessibilidade NBR 9050, áreas verdes, balneabilidade, patrimônio), 3 em OE (conectividade 5G/Wi-Fi via Anatel, qualificação PNQT via CADASTUR, comparecimento eleitoral via TSE) e 2 em AO (promoção digital, Turismo de Base Comunitária). O Score Final SISTUR e a classificação são preservados â a MST adiciona profundidade sem quebrar comparabilidade.":"La MST es una extensión opcional (a partir de la v1.28.0) basada en Tasso, Silva & Nascimento (2024) que añade 9 indicadores complementarios al núcleo SISTUR â 4 en RA (accesibilidad NBR 9050, áreas verdes, balneabilidad, patrimonio), 3 en OE (conectividad 5G/Wi-Fi vÃa Anatel, calificación PNQT vÃa CADASTUR, participación electoral vÃa TSE) y 2 en AO (promoción digital, Turismo de Base Comunitaria). El Score Final SISTUR y la clasificación se preservan â la MST añade profundidad sin romper la comparabilidad.","A Mata Atlântica é um dos biomas mais ameaçados, restando cerca de 12% da área original.":"La Mata Atlántica es uno de los biomas más amenazados, restando cerca del 12% del área original.","A ONG te contrata! Agora você trabalha pelo cerrado profissionalmente.":"¡La ONG te contrata! Ahora trabajas profesionalmente por el cerrado.","A ONG traz recursos, visibilidade e apoio jurÃdico. A comunidade ganha força e os madeireiros são encurralados legalmente. Mas falta um passo crucial: garantir proteção permanente.":"La ONG aporta recursos, visibilidad y apoyo jurÃdico. La comunidad gana fuerza y los madereros son acorralados legalmente. Pero falta un paso crucial: garantizar protección permanente.","A Plataforma SISTUR, incluindo sua metodologia baseada nos princÃpios sistêmicos de Mario Beni, algoritmos de cálculo (IGMA), interface gráfica, código-fonte, banco de dados, documentação técnica, conteúdos educacionais originais, e todos os elementos visuais e funcionais, são de propriedade exclusiva do Titular e estão protegidos pelas leis brasileiras e internacionais de propriedade intelectual.":"La Plataforma SISTUR, incluyendo su metodologÃa basada en los principios sistémicos de Mario Beni, algoritmos de cálculo (IGMA), interfaz gráfica, código fuente, base de datos, documentación técnica, contenidos educativos originales, y todos los elementos visuales y funcionales, son propiedad exclusiva del Titular y están protegidos por las leyes brasileñas e internacionales de propiedad intelectual.","A Plataforma coleta e processa dados pessoais (nome, e-mail, dados de navegação) em conformidade com a Lei Geral de Proteção de Dados (LGPD â Lei nº 13.709/2018). Os dados pessoais serão utilizados exclusivamente para: (a) autenticação e acesso à Plataforma; (b) personalização da experiência educacional; (c) geração de certificados; (d) comunicações sobre o serviço.":"La Plataforma recolecta y procesa datos personales (nombre, e-mail, datos de navegación) en conformidad con la Ley General de Protección de Datos (LGPD â Ley nº 13.709/2018). Los datos personales se utilizarán exclusivamente para: (a
348) autenticación y acceso a la Plataforma; (b) personalización de la experiencia educativa; (c) generación de certificados; (d) comunicaciones sobre el servicio.","A Precificação dinâmica":"La Tarificación dinámica","A Reserva é criada! Proteção permanente para a floresta e a comunidade.":"¡La Reserva es creada! Protección permanente para el bosque y la comunidad.","A Serra da Mantiqueira brilha novamente! Nascentes cristalinas, florestas preservadas e comunidades prósperas. As montanhas são guardiãs da água e da vida, protegidas para sempre!":"¡La Serra da Mantiqueira brilla de nuevo! Manantiales cristalinos, bosques preservados y comunidades prósperas. ¡Las montañas son guardianas del agua y de la vida, protegidas para siempre!","A UNESCO reconhece a serra! Proteção internacional!":"¡La UNESCO reconoce la sierra! ¡Protección internacional!","A UNESCO reconhece! Proteção permanente para os recifes!":"¡La UNESCO reconoce! ¡Protección permanente para los arrecifes!","A Visão Integrada cruza o desempenho do empreendimento com o diagnóstico Territorial do municÃpio, ajudando a separar gargalos internos de causas externas (infra pública, segurança, conectividade, sazonalidade do destino).":"La Visión Integrada cruza el desempeño del emprendimiento con el diagnóstico Territorial del municipio, ayudando a separar los cuellos de botella internos de las causas externas (infraestructura pública, seguridad, conectividad, estacionalidad del destino).","A Visão Integrada é informativa e não altera o cálculo do diagnóstico Empresarial. Use-a para contextualizar gargalos, justificar planos de ação cruzados (interno + territorial) e priorizar projetos junto à governança do destino.":"La Visión Integrada es informativa y no altera el cálculo del diagnóstico Empresarial. Ãsela para contextualizar cuellos de botella, justificar planes de acción cruzados (interno + territorial) y priorizar proyectos junto con la gobernanza del destino.","A aceitação é registrada com data e hora no sistema.":"La aceptación es registrada con fecha y hora en el sistema.","A automação MST é parcial e tem cobertura limitada por design. Para 15 destinos âncora pré-populados no cache (capitais brasileiras + Foz do Iguaçu, Olinda, Ribeirão Preto, Uberlândia), MST_TSE_TURNOUT (comparecimento eleitoral 2022/2024) e MST_5G_WIFI (cobertura 5G/4G/Wi-Fi público) são preenchidos automaticamente em <100ms via cache local (tse_turnout_cache e anatel_coverage_cache, com TTL de ciclo eleitoral e 90 dias respectivamente). Para os demais municÃpios, o sistema tenta scraping sob demanda via Firecrawl em fontes agregadoras (G1 Eleições, Teleco), mas como o TSE oficial usa SPA com hash routing e a Anatel publica via painel Leaflet, a maioria das tentativas falha e o indicador é registrado como linha MANUAL no painel de pré-preenchimento â com badge ð MST, valor vazio e link direto para a fonte oficial (tse.jus.br/eleicoes/estatisticas e anatel.gov.br) para preenchimento humano. MST_PNQT_QUAL é alimentado pelo CADASTUR estendido (ingest-cadastur). Os demais 6 indicadores MST (acessibilidade, áreas verdes, balneabilidade, patrimônio, promoção digital, TBC) são sempre manuais com guidance contextual.":"La automatización MST es parcial y tiene cobertura limitada por diseño. Para 15 destinos ancla precargados en el caché (capitales brasileñas + Foz do Iguaçu, Olinda, Ribeirão Preto, Uberlândia), MST_TSE_TURNOUT (comparecencia electoral 2022/2024) y MST_5G_WIFI (cobertura 5G/4G/Wi-Fi público) se completan automáticamente en <100ms vÃa caché local (tse_turnout_cache y anatel_coverage_cache, con TTL de ciclo electoral y 90 dÃas respectivamente). Para los demás municipios, el sistema intenta scraping bajo demanda vÃa Firecrawl en fuentes agregadoras (G1 Eleições, Teleco), pero como el TSE oficial usa SPA con hash routing y Anatel publica vÃa panel Leaflet, la mayorÃa de los intentos falla y el indicador se registra como lÃnea MANUAL en el panel de precarga â con distintivo ð MST, valor vacÃo y enlace directo a la fuente oficial (tse.jus.br/eleicoes/estatisticas y anatel.gov.br) para su cumplimentación humana. MST_PNQT_QUAL es alimentado por el CADASTUR extendido (ingest-cadastur). Los otros 6 indicadores MST (accesibilidad, áreas verdes, balneabilidad, patrimonio, promoción digital, TBC) son siempre manuales con orientación contextual.","A avaliação é por uso, sem prazo: cada nova conta tem o curso base do SISTUR EDU e 10 perguntas ao Professor Beni; cada nova organização tem 1 diagnóstico com resultado em prévia. Depois disso, basta escolher um plano para liberar tudo.":"La evaluación es por uso, sin plazo: cada nueva cuenta tiene el curso base de SISTUR EDU y 10 preguntas al Profesor Beni; cada nueva organización tiene 1 diagnóstico con resultado en vista previa. Después de eso, basta con elegir un plan para liberar todo.","A bacia inteira se recupera! Modelo para todo o cerrado.":"¡La cuenca entera
348se recupera! Modelo para todo el cerrado.",'A badge "{{v0}}" será excluÃda. Alunos que já a ganharam perderão a referência.':'La insignia "{{v0}}" será eliminada. Los alumnos que ya la ganaron perderán la referencia.',"A barra de progresso é calculada automaticamente com base nas tarefas concluÃdas.":"La barra de progreso se calcula automáticamente con base en las tareas concluidas.","A base do sistema turÃstico: recursos naturais, patrimônio cultural e sustentabilidade":"La base del sistema turÃstico: recursos naturales, patrimonio cultural y sostenibilidad","A brigada responde rápido e salva hectares de floresta!":"¡La brigada responde rápido y salva hectáreas de bosque!","A brigada se torna referência. Com equipamentos e treinamento, incêndios são controlados rapidamente.":"La brigada se convierte en referencia. Con equipos y entrenamiento, los incendios se controlan rápidamente.","A burocracia atrasa tudo. A recuperação é mÃnima.":"La burocracia lo retrasa todo. La recuperación es mÃnima.","A caatinga mostra sua incrÃvel capacidade de se recuperar!":"¡La caatinga muestra su increÃble capacidad de recuperarse!","A caatinga renasce! Onde havia deserto, agora há vida. Comunidades prosperam com a convivência inteligente com o semiárido. Você provou que o sertão não é problema â é solução. A caatinga, exclusividade brasileira, brilha com toda sua riqueza!":"¡La caatinga renace! Donde habÃa desierto, ahora hay vida. Las comunidades prosperan con la convivencia inteligente con el semiárido. Usted ha demostrado que el sertón no es un problema â es una solución. ¡La caatinga, exclusividad brasileña, brilla con toda su riqueza!","A cada turno, novas ameaças surgem! Eventos aleatórios e o Conselho Mirim testam suas decisões estratégicas.":"¡En cada turno, surgen nuevas amenazas! Los eventos aleatorios y el Consejo Infantil ponen a prueba tus decisiones estratégicas.","A camada de ozônio protege a vida na Terra dos raios UV nocivos.":"La capa de ozono protege la vida en la Tierra de los rayos UV nocivos.","A chuva não veio a tempo...":"La lluvia no llegó a tiempo...","A cidade para.":"La ciudad se detiene.","A ciência vence a ganância! A área é protegida permanentemente.":"¡La ciencia vence a la codicia! El área está protegida permanentemente.","A coleta automática via":"La recopilación automática vÃa","A comparação de evolução aparecerá após uma segunda rodada de diagnóstico para os destinos.":"La comparación de evolución aparecerá después de una segunda ronda de diagnóstico para los destinos.","A compostagem transforma restos orgânicos em fertilizante natural.":"El compostaje transforma restos orgánicos en fertilizante natural.","A comunidade aceita sua mudança de atitude. Juntos, vocês criam um projeto de turismo comunitário que respeita o meio ambiente e valoriza a cultura local.":"La comunidad acepta tu cambio de actitud. Juntos, crean un proyecto de turismo comunitario que respeta el medio ambiente y valora la cultura local.","A comunidade e voluntários de todo o paÃs salvam a costa!":"¡La comunidad y voluntarios de todo el paÃs salvan la costa!","A comunidade está preocupada. Todos querem ajudar.":"La comunidad está preocupada. Todos quieren ayudar.","A comunidade perde poder. O projeto sobrevive, mas sem protagonismo.":"La comunidad pierde poder. El proyecto sobrevive, pero sin protagonismo.","A comunidade se protegeu com informação! ð¥":"¡La comunidad se protegió con información! ð¥","A comunidade se une! Juntos, vocês começam a mapear as áreas de risco.":"¡La comunidad se une! Juntos, comienzan a mapear las áreas de riesgo.","A comunidade se uniu e controlou o fogo! ðª":"¡La comunidad se unió y controló el fuego! ðª",'A construção do condomÃnio destrói uma nascente milenar. Moradores antigos protestam: "Essa água abastecia todo o vale!" Animais fogem e erosão toma conta da encosta.':'La construcción del condominio destruye un manantial milenario. Los antiguos habitantes protestan: "¡Esa agua abastecÃa todo el valle!" Los animales huyen y la erosión se apodera de la ladera.',"A contratação online ainda não está ativa neste ambiente.":"La contratación online aún no está activa en este entorno.","A cooperativa é imbatÃvel! Produção orgânica vira referência nacional.":"¡La cooperativa es imbatible! La producción orgánica se convierte en referente nacional.","A corrupção enfraquece a fiscalização. O progresso é parcial.":"La corrupción debilita la fiscalización. El progreso es parcial.","A costa recua sem proteção.":"La costa retrocede sin protección.","A costa é tomada pelo concreto. O paraÃso foi perdido para sempre.":"La costa es invadida por el concreto. El paraÃso se perdió para siempre.","A dança animou todo mundo, mas a chuva não veio...":"El baile animó a todos, pero la lluvia no llegó...","A data de entrega deve ser posterior à liberação":"La fecha de entrega debe ser posterior a la habilitación","A data de inÃcio deve ser anterior ou igual à data de fim.":"La fecha de inicio debe ser anterior o igual a la fecha de fin.","A decisão controversa gera conflito e levanta questões éticas.":"La decisión controvertida genera conflicto y plantea cuestiones éticas.","A denúncia formal é um passo importante. As autoridades prometem investigar.":"La denuncia formal es un paso importante. Las autoridades prometen investigar.","A denúncia resulta em multas e embargo da fazenda. O lobo-guará é tratado e solto. Mas você está desempregado e os fazendeiros te ameaçam.":"La denuncia resulta en multas y el embargo de la hacienda. El lobo de crin es tratado y liberado. Pero estás desempleado y los hacendados te amenazan.","A denúncia surtiu efeito! Uma operação do IBAMA é realizada e os madeireiros são presos. Mas a floresta ainda precisa se recuperar. A área desmatada é grande e os animais perderam seu habitat.":"¡La denuncia surtió efecto! Se realiza una operación del IBAMA y los madereros son arrestados. Pero el bosque aún necesita recuperarse. El área deforestada es grande y los animales perdieron su hábitat.","A desertificação avançou. O que era caatinga virou deserto. FamÃlias migraram e a biodiversidade foi perdida para sempre.":"La desertificación avanzó. Lo que era caatinga se convirtió en desierto. Familias migraron y la biodiversidad se perdió para siempre.","A destruição de habitats é a principal ameaça à biodiversidade.":"La destrucción de hábitats es la principal amenaza para la biodiversidad.","A documentação gera um livro sobre plantas medicinais do cerrado. Universidades se interessam e a comunidade ganha reconhecimento.":"La documentación genera un libro sobre plantas medicinales del cerrado. Las universidades se interesan y la comunidad gana reconocimiento.","A doença se espalhou muito! Grave! ð":"¡La enfermedad se propagó mucho! ¡Grave! ð","A energia hidrelétrica representa mais de 60% da matriz elétrica brasileira.":"La energÃa hidroeléctrica representa más del 60% de la matriz eléctrica brasileña.","A escola atrai pessoas de todo o Nordeste!":"¡La escuela atrae a gente de todo el Nordeste!","A escola precisa de uma melhoria. Qual prioridade?":"La escuela necesita una mejora. ¿Cuál es la prioridad?","A escola se torna referência nacional. Pesquisadores e estudantes aprendem a conviver com o semiárido.":"La escuela se convierte en referente nacional. Investigadores y estudiantes aprenden a convivir con el semiárido.","A especulação imobiliária avança. Mais floresta é derrubada para construção.":"La especulación inmobiliaria avanza. Más bosque es talado para la construcción.","A espessura das linhas é proporcional ao volume de indicadores.":"El grosor de las lÃneas es proporcional al volumen de indicadores.","A falta de árvores causou uma enchente! Construções foram destruÃdas!":"¡La falta de árboles causó una inundación! ¡Construcciones fueron destruidas!","A fase e suas tarefas foram remov
348idas":"La fase y sus tareas fueron eliminadas","A fiscalização funciona. O resort se adapta ou fecha.":"La fiscalización funciona. El resort se adapta o cierra.","A fiscalização reduz o uso ilegal de agrotóxicos. As águas melhoram e agricultores buscam alternativas orgânicas.":"La fiscalización reduce el uso ilegal de agrotóxicos. Las aguas mejoran y los agricultores buscan alternativas orgánicas.","A fiscalização é intensificada. As águas ficam mais limpas.":"La fiscalización se intensifica. Las aguas están más limpias.","A fonte oficial não respondeu no momento da coleta. Reaproveitamos o último dado oficial validado deste mesmo municÃpio.":"La fuente oficial no respondió en el momento de la recopilación. Reutilizamos el último dato oficial validado de este mismo municipio.","A força da comunidade está na união.":"La fuerza de la comunidad está en la unión.","A fuga salva você, mas o cerrado perde um defensor.":"La huida te salva, pero el cerrado pierde un defensor.","A fúria da natureza.":"La furia de la naturaleza.","A ganância derruba a floresta.":"La codicia derriba el bosque.","A ganância destruiu a serra. Um deslizamento de terra causado pelo desmatamento soterrou construções e nascentes. A serra, que levou milhões de anos para se formar, foi destruÃda em meses pela ambição humana. As águas que alimentavam cidades inteiras secaram para sempre.":"La codicia destruyó la sierra. Un deslizamiento de tierra causado por la deforestación sepultó construcciones y manantiales. La sierra, que tardó millones de años en formarse, fue destruida en meses por la ambición humana. Las aguas que alimentaban ciudades enteras se secaron para siempre.","A ganância destruiu tudo. Você se tornou parte do problema.":"La codicia lo destruyó todo. Te convertiste en parte del problema.","A ganância pela lenha e pelo carvão destruiu a caatinga completamente. O sertão virou deserto de verdade â sem vida, sem água, sem esperança. FamÃlias inteiras foram forçadas a migrar, abandonando terras que habitavam há séculos. A caatinga, bioma exclusivo do Brasil, desapareceu por causa da sua ambição.":"La codicia por la leña y el carbón destruyó la caatinga completamente. El sertão se convirtió en un verdadero desierto â sin vida, sin agua, sin esperanza. Familias enteras fueron forzadas a migrar, abandonando tierras que habitaban durante siglos. La caatinga, bioma exclusivo de Brasil, desapareció por tu ambición.","A geração continua no servidor. Se ficar mais de 8 minutos sem avançar, o sistema marcará falha automaticamente para você tentar novamente sem duplicar jobs.":"La generación continúa en el servidor. Si pasa más de 8 minutos sin avanzar, el sistema marcará un error automáticamente para que puedas volver a intentarlo sin duplicar trabajos.","A geração não depende de um único modelo. O orquestrador tenta os provedores na ordem":"La generación no depende de un único modelo. El orquestador intenta los proveedores en el orden","A geração usa três provedores em ordem de prioridade: (1) Claude Sonnet 5.5 (Anthropic) como padrão, escolhido pela qualidade narrativa e respeito rigoroso a fontes; (2) GPT-5 (OpenAI) como fallback primário; (3) Gemini 2.5 Pro (Google) como fallback final. Se o provider escolhido falhar (timeout, abort, conteúdo vazio mid-stream), o pipeline cai automaticamente para o próximo, mantendo o mesmo prompt e os mesmos dados auditados. Administradores podem ver o modelo usado em cada relatório do histórico através do badge ao lado do tÃtulo.":"La generación utiliza tres proveedores en orden de prioridad: (1) Claude Sonnet 5.5 (Anthropic) como estándar, elegido por la calidad narrativa y el respeto riguroso a las fuentes; (2) GPT-5 (OpenAI) como respaldo primario; (3) Gemini 2.5 Pro (Google) como respaldo final. Si el proveedor elegido falla (tiempo de espera, aborto, contenido vacÃo a mitad del flujo), el pipeline cae automáticamente al siguiente, manteniendo el mismo prompt y los mismos datos auditados. Los administradores pueden ver el modelo utilizado en cada informe del historial a través de la insignia junto al tÃtulo.","A honestidade tardia salva parte da reputação, mas o dano foi grande.":"La honestidad tardÃa salva parte de la reputación, pero el daño fue grande.","A humildade conquista respeito. A comunidade te dá uma segunda chance.":"La humildad gana respeto. La comunidad te da una segunda oportunidad.","A inteligência SISTUR analisa indicadores vinculados, fases e tarefas existentes para sugerir novas tarefas acionáveis.":"La inteligencia SISTUR analiza indicadores vinculados, fases y tareas existentes para sugerir nuevas tareas ejecutables.","A interpretação territorial classifica os problemas identificados em três categorias: Estrutural (limitações históricas/socioeconômicas), Gestão (falhas de planejamento/coordenação) ou Entrega (falhas na execução de serviços).":"La interpretación territorial clasifica los problemas identificados en tres categorÃas: Estructural (limitaciones históricas/socioeconómicas), Gestión (fallos de planificación/coordinación) o Entrega (fallos en la ejecución de servicios).","A invalidade de qualquer cláusula não afetará a validade das demais disposições destes Termos.":"La invalidez de cualquier cláusula no afectará la validez de las demás disposiciones de estos Términos.","A isenção é aplicada automaticamente na próxima cobrança.":"La exención se aplica automáticamente en el próximo cobro.","A justificativa da prescrição é gerada por regra (não por LLM) para garantir rastreabilidade e auditabilidade.":"La justificación de la prescripción se genera por regla (no por LLM) para garantizar la trazabilidad y auditabilidad.","A justiça prevalece! O hotel é multado e todos cumprem a lei.":"¡La justicia prevalece! El hotel es multado y todos cumplen la ley.","A lagoa está ficando poluÃda! Peixes morrendo!":"¡La laguna se está contaminando! ¡Peces muriendo!","A lei obriga ação. Progresso real, mas demorado.":"La ley obliga a actuar. Progreso real, pero lento.","A lentidão permite que o dano continue se acumulando.":"La lentitud permite que el daño siga acumulándose.","A linhagem dos dados ficará disponÃvel assim que houver indicadores preenchidos neste diagnóstico.":"El linaje de los datos estará disponible en cuanto haya indicadores completados en este diagnóstico.","A lista mostra todos os diagnósticos da sua organização.":"La lista muestra todos los diagnósticos de tu organización.",'A marca "Sabores do Cerrado" é um sucesso. Mas intermediários querem comprar a produção por preços baixos e vender caro, tirando o lucro da comunidade.':'La marca "Sabores del Cerrado" es un éxito. Pero los intermediarios quieren comprar la producción a precios bajos y venderla cara, quitando el beneficio a la comunidad.',"A marca SISTUR, logotipos, Ãcones e demais sinais distintivos são de uso exclusivo do Titular e não podem ser utilizados sem autorização prévia e por escrito.":"La marca SISTUR, logotipos, Ãconos y demás signos distintivos son de uso exclusivo del Titular y no pueden ser utilizados sin autorización previa y por escrito.","A matrÃcula é gratuita durante o perÃodo de tri
348al.":"La matrÃcula es gratuita durante el perÃodo de prueba.","A mineração destrói o jardim. Espécies únicas são perdidas para sempre.":"La minerÃa destruye el jardÃn. Especies únicas se pierden para siempre.","A mobilização popular força os hotéis a instalar estações de tratamento. Os recifes começam a se recuperar e os peixes retornam.":"La movilización popular fuerza a los hoteles a instalar estaciones de tratamiento. Los arrecifes comienzan a recuperarse y los peces regresan.","A multinacional muda os padrões. Os sertanejos perdem controle.":"La multinacional cambia los estándares. Los sertanejos pierden el control.","A natureza tem suas próprias soluções de limpeza.":"La naturaleza tiene sus propias soluciones de limpieza.","A natureza é poderosa.":"La naturaleza es poderosa.","A nota final será calculada após a correção das questões dissertativas.":"La calificación final se calculará después de corregir las preguntas de desarrollo.","A oportunidade está agora visÃvel para investidores.":"La oportunidad ahora es visible para los inversores.","A oportunidade foi bloqueada pelo motor IGMA.":"La oportunidad fue bloqueada por el motor IGMA.","A oportunidade passou pela validação IGMA e está pronta para publicação.":"La oportunidad pasó por la validación IGMA y está lista para publicación.","A palma alimenta o rebanho sem desmatar mais caatinga.":"La palma alimenta al rebaño sin desforestar más caatinga.","A partir da v1.28.0, o SISTUR oferece a":"A partir de la v1.28.0, SISTUR ofrece la","A partir das issues e prescrições, crie planos de ação concretos.":"A partir de los problemas y prescripciones, crea planes de acción concretos.","A partir de {{n}} usuários. Sem limite máximo â acrescente usuários quando precisar, pagando apenas o valor por usuário adicional.":"A partir de {{n}} usuarios. Sin lÃmite máximo â añada usuarios cuando lo necesite, pagando solo el valor por usuario adicional.","A partir do diagnóstico calculado é possÃvel gerar relatórios (Completo, Executivo, Investidores) com cabeçalho/rodapé personalizáveis, e converter os gargalos em Projetos com tarefas e marcos.":"A partir del diagnóstico calculado es posible generar informes (Completo, Ejecutivo, Inversores) con encabezado/pie de página personalizables, y convertir los cuellos de botella en Proyectos con tareas y hitos.","A patrulha comunitária encontra uma área de desmatamento recente. Ãrvores centenárias foram derrubadas e o solo está exposto. Animais estão fugindo da região. Um membro da patrulha encontra rastros de máquinas pesadas.":"La patrulla comunitaria encuentra un área de deforestación reciente. Ãrboles centenarios fueron derribados y el suelo está expuesto. Animales están huyendo de la región. Un miembro de la patrulla encuentra rastros de maquinaria pesada.","A paz é preciosa.":"La paz es preciosa.","A pegada hÃdrica mede o consumo total de água em cadeias produtivas.":"La huella hÃdrica mide el consumo total de agua en cadenas productivas.","A perda financeira dói, mas a consciência fala mais alto.":"La pérdida financiera duele, pero la conciencia habla más fuerte.","A poluição ficou crÃtica! Natureza colapsando!":"¡La contaminación se volvió crÃtica! ¡Naturaleza colapsando!","A praia perdeu muito espaço!":"¡La playa perdió mucho espacio!","A praia sem plástico atrai turistas do mundo todo. Golfinhos são vistos perto da costa pela primeira vez em décadas. Mas um derramamento de óleo de um navio ameaça destruir tudo.":"La playa sin plástico atrae a turistas de todo el mund
348o. Delfines son vistos cerca de la costa por primera vez en décadas. Pero un derrame de petróleo de un barco amenaza con destruirlo todo.","A pressa é inimiga da perfeição.":"La prisa es enemiga de la perfección.","A pressão internacional força as autoridades a agirem.":"La presión internacional fuerza a las autoridades a actuar.","A pressão pública obriga os hotéis a investir em tratamento!":"¡La presión pública obliga a los hoteles a invertir en tratamiento!","A primeira RPPN da caatinga! Marco para a conservação do semiárido.":"¡La primera RPPN de la caatinga! Hito para la conservación del semiárido.","A promoção turÃstica deve ser precedida pela consolidação territorial e institucional.":"La promoción turÃstica debe estar precedida por la consolidación territorial e institucional.","A promoção turÃstica deve ser precedida pela consolidação territorial e institucional. Resolva primeiro os gargalos de RA e/ou AO.":"La promoción turÃstica debe estar precedida por la consolidación territorial e institucional. Resuelva primero los cuellos de botella de RA y/o AO.","A página que você procura não foi encontrada.":"La página que busca no fue encontrada.","A reciclagem gera renda e mantém a praia limpa. Solução sustentável!":"¡El reciclaje genera ingresos y mantiene la playa limpia. Solución sostenible!","A rede de escolas forma milhares de pessoas em convivência com o semiárido. O êxodo rural diminui e jovens ficam no sertão.":"La red de escuelas forma a miles de personas en convivencia con el semiárido. El éxodo rural disminuye y los jóvenes se quedan en el sertão.","A rede de guardiões da serra é modelo para todo o Brasil. Centenas de voluntários monitoram a serra com drones e sensores.":"La red de guardianes de la sierra es modelo para todo Brasil. Cientos de voluntarios monitorean la sierra con drones y sensores.","A rede de viveiros transforma a Amazônia! Restauração ecológica vira negócio.":"¡La red de viveros transforma la AmazonÃa! La restauración ecológica se convierte en negocio.","A regulamentação salva o turismo, mas a reputação ficou abalada.":"La regulación salva el turismo, pero la reputación quedó dañada.","A rendição seló o destino da floresta. Sem luta, não há esperança.":"La rendición selló el destino del bosque. Sin lucha, no hay esperanza.","A resignação é o pior inimigo da natureza.":"La resignación es el peor enemigo de la naturaleza.","A resistência é forte! O garimpo é impedido e a floresta protegida para sempre.":"¡La resistencia es fuerte! La minerÃa ilegal es impedida y el bosque protegido para siempre.","A restauração da bacia hidrográfica traz água de volta para cidades inteiras. O projeto ganha prêmio internacional.":"La restauración de la cuenca hidrográfica devuelve el agua a ciudades enteras. El proyecto gana un premio internacional.","A sabedoria dos quilombolas sobre o cerrado é ancestral e insubstituÃvel.":"La sabidurÃa de los quilombolas sobre el cerrado es ancestral e insustituible.","A senha deve ter pelo menos 6 caracteres":"La contraseña debe tener al menos 6 caracteres","A senha deve ter pelo menos 6 caracteres.":"La contraseña debe tener al menos 6 caracteres.","A serra desmorona literalmente. Um deslizamento de terra destrói tudo.":"La sierra se desmorona literalmente. Un deslizamiento de tierra lo destruye todo.","A serra pode se recuperar, mas levará décadas. A lição foi dura.":"La sierra puede recuperarse, pero llevará décadas. La lección fue dura.","A serra sobrevive, mas com cicatrizes. Algumas áreas foram salvas, outras perdidas. A luta continua.":"La sierra sobrevive, pero con cicatrices. Algunas áreas fueron salvadas, otras perdidas. La lucha continúa.","A serra volta ao equilÃbrio. Ecoturismo responsável prevalece.":"La sierra vuelve al equilibrio. El ecoturismo responsable prevalece.","A situação melhorou em alguns aspectos, mas desafios persistem. A floresta não foi completamente restaurada, mas também não foi destruÃda. à um equilÃbrio delicado que exige vigilância constante.":"La situación ha mejorado en algunos aspectos, pero los desafÃos persisten. El bosque no ha sido completamente restaurado, pero tampoco ha sido destruido. Es un equilibrio delicado que exige vigilancia constante.","A tabela de auditoria do diagnóstico é a":"La tabla de auditorÃa del diagnóstico es la","A tecnologia de filtragem ganha prêmio internacional. Universidades querem parceria. O projeto se expande para todo o litoral nordestino.":"La tecnologÃa de filtración gana un premio internacional. Universidades quieren una asociación. El proyecto se expande por toda la costa noreste.","A tecnologia protege o santuário dia e noite!":"¡La tecnologÃa protege el santuario dÃa y noche!","A terra é oficialmente titulada! A comunidade quilombola agora tem proteção legal e investe em turismo comunitário e extrativismo sustentável.":"¡La tierra está oficialmente titulada! La comunidad quilombola ahora tiene protección legal e invierte en turismo comunitario y extractivismo sostenible.","A titulação é uma vitória, mas sem ação concreta o cerrado continua ameaçado.":"La titulación es una victoria, pero sin acción concreta el cerrado sigue amenazado.","A tolerância do Titular quanto a qualquer descumprimento não implica renúncia ao direito de exigi-lo posteriormente.":"La tolerancia del Titular ante cualquier incumplimiento no implica renuncia al derecho de exigirlo posteriormente.","A transição orgânica conquista fazendeiros e consumidores. Alimentos saudáveis e cerrado preservado. Mas pressão do agronegócio tenta reverter as leis.":"La transición orgánica conquista a agricultores y consumidores. Alimentos saludables y cerrado preservado. Pero la presión del agronegocio intenta revertir las leyes.","A transparência vence! O membro corrupto é removido.":"¡La transparencia gana! El miembro corrupto es removido.","A universidade transforma o sertão em polo de conhecimento!":"¡La universidad transforma el sertão en un polo de conocimiento!",'A validação humana é obrigatória para garantir legitimidade institucional e evitar questionamentos polÃticos. Nenhum dado automático é "verdade absoluta". O diagnóstico só é calculado após o usuário confirmar ou ajustar cada valor.':'La validación humana es obligatoria para garantizar la legitimidad institucional y evitar cuestionamientos polÃticos. Ningún dato automático es "verdad absoluta". El diagnóstico solo se calcula después de que el usuario confirma o ajusta cada valor.','A venda da madeira apreendida criou um precedente perigoso. Agora outros querem "apreender" madeira para vendê-la. A corrupção se espalha e a comunidade perde a fé.':'La venta de la madera incautada creó un precedente peligroso. Ahora otros quieren "incautar" madera para venderla. La corrupción se extiende y la comunidad pierde la fe.',"A vila precisa de transporte. Qual escolher?":"El pueblo necesita transporte. ¿Cuál elegir?","A vila se torna a capital brasileira da tecnologia azul!":"¡El pueblo se convierte en la capital brasileña de la tecnologÃa azul!","A vila se torna referência em sustentabilidade
348costeira!":"¡El pueblo se convierte en un referente en sostenibilidad costera!","A voz da floresta ecoa em todo o Brasil! As leis são mantidas.":"¡La voz del bosque resuena en todo Brasil! Las leyes se mantienen.","A água tóxica mata.":"El agua tóxica mata.","A área do condomÃnio é restaurada. Mudas nativas são plantadas e a nascente começa a dar sinais de recuperação. A comunidade reconhece sua mudança.":"El área del condominio es restaurada. Se plantan plántulas nativas y el manantial comienza a dar señales de recuperación. La comunidad reconoce su cambio.","A área marinha protegida é um sucesso. Peixes se multiplicam, tartarugas desovam e a pesca artesanal prospera. Mas navios pesqueiros industriais invadem a área à noite.":"El área marina protegida es un éxito. Los peces se multiplican, las tortugas desovan y la pesca artesanal prospera. Pero los barcos pesqueros industriales invaden el área por la noche.","A área protegida permite a recuperação dos estoques pesqueiros!":"¡El área protegida permite la recuperación de las poblaciones de peces!","A área queima, mas as pessoas são salvas. Será preciso recomeçar.":"El área se quema, pero las personas son salvadas. Habrá que empezar de nuevo.",ADEQUADO:fF,"ADMIN: acesso global, bypass de limites de licença.":"ADMIN: acceso global, bypass de lÃmites de licencia.","ADR Médio (R$)":"ADR Promedio (R$)","ADR R$":"ADR R$","ADR médio (OTAs)":"ADR promedio (OTAs)","ADR à taxa de ocupação, ou receita total ÷ quartos disponÃveis. O PMS geralmente calcula automaticamente.":"ADR à tasa de ocupación, o ingresos totales ÷ habitaciones disponibles. El PMS generalmente calcula automáticamente.","ANA / Hidroweb (Qualiágua)":"ANA / Hidroweb (Qualiágua)","ANA â Agência Nacional de Ãguas e Saneamento":"ANA â Agencia Nacional de Aguas y Saneamiento","ANA â IQA (Qualidade da Ãgua)":"ANA â ICA (Calidad del Agua)","ANA â Ãguas":"ANA â Aguas","ANAC (anac_air_connectivity)":"ANAC (anac_air_connectivity)","ANAC â Agência Nacional de Aviação Civil":"ANAC â Agencia Nacional de Aviación Civil","ANAC â Voos e Passageiros 12m (Auto)":"ANAC â Vuelos y Pasajeros 12m (Auto)","ANAC â voos/semana, passageiros 12m e participação internacional do aeroporto do municÃpio":"ANAC â vuelos/semana, pasajeros 12m y participación internacional del aeropuerto del municipio","ANAC, ANATEL, eventos, Mapa do Turismo e contexto socioeconômico do municÃpio":"ANAC, ANATEL, eventos, Mapa del Turismo y contexto socioeconómico del municipio","ANALYST: leitura e edição de diagnósticos no plano Pro.":"ANALYST: lectura y edición de diagnósticos en el plan Pro.","ANATEL â Agência Nacional de Telecomunicações":"ANATEL â Agencia Nacional de Telecomunicaciones","AO (Ações Operacionais): Analisa marketing, serviços e operação.":"AO (Acciones Operativas): Analiza marketing, servicios y operación.","AO - Ação Organizada":"AO - Acción Organizada","AO - Ações Operacionais":"AO - Acciones Operativas","AO = CRÃTICO":"AO = CRÃTICO","AO CrÃtico":"AO CrÃtico","AO CrÃtico bloqueia todo o sistema (sem governança não há execução).":"AO CrÃtico bloquea todo el sistema (sin gobernanza no hay ejecución).","AO crÃtico bloqueia todo o sistema":"AO crÃtico bloquea todo el sistema","AO crÃtico bloqueia todo o sistema. Sem governança, não há capacidade de implementar melhorias.":"AO crÃtico bloquea todo el sistema. Sin gobernanza, no hay capacidad de implementar mejoras.","AO está CrÃtico?":"¿AO está CrÃtico?","AO â 2 indicadores":"AO â 2 indicadores","AO ⥠70 e 5+ decisões smart":"AO ⥠70 y 5+ decisiones smart","AO:":"AO:",API:vF,"API Key":"API Key","API Oficial":"API Oficial","API Principal":"API Principal","API REST":"API REST","API SIDRA / Agregados â População estimada anual (tabela 6579, variável 9324) e PIB municipal a preços correntes (tabela 5938, variáveis 37 PIB total e 39 PIB per capita). Usadas pelo Observatório para enriquecimento socioeconômico automático por municÃpio. DisponÃvel em: servicodados.ibge.gov.br/api/v3/agregados":"API SIDRA / Agregados â Población estimada anual (tabla 6579, variable 9324) y PIB municipal a precios corrientes (tabla 5938, variables 37 PIB total y 39 PIB per cápita). Utilizadas por el Observatorio para el enriquecimiento socioeconómico automático por municipio. Disponible en: servicodados.ibge.gov.br/api/v3/agregados","API SIDRA â Sistema IBGE de Recuperação Automática (Censo 2010, tabela 3217 â saneamento). DisponÃvel em: apisidra.ibge.gov.br":"API SIDRA â Sistema IBGE de Recuperación Automática (Censo 2010, tabla 3217 â saneamiento). Disponible en: apisidra.ibge.gov.br","API de Agregados â Pesquisas Municipais (Censo 2022, PIB, etc.). DisponÃvel em: servicodados.ibge.gov.br/api/v3/agregados":"API de Agregados â Investigaciones Municipales (Censo 2022, PIB, etc.). Disponible en: servicodados.ibge.gov.br/api/v3/agregados","API de Pesquisas Municipais â IDH, Gini, Hospedagem, Finanças. DisponÃvel em: servicodados.ibge.gov.br/api/v1/pesquisas":"API de Investigaciones Municipales â IDH, Gini, Hospedaje, Finanzas. Disponible en: servicodados.ibge.gov.br/api/v1/pesquisas","API oficial":"API oficial","API oficial â população estimada (tab. 6579) e PIB municipal (tab. 5938) usados no Observatório":"API oficial â población estimada (tab. 6579) y PIB municipal (tab. 5938) utilizados en el Observatorio","API/Automático ({{v0}})":"API/Automático ({{v0}})","APPs protegem margens de rios, nascentes, topos de morros e encostas.":"APPs protegen márgenes de rÃos, nacimientos, cimas de cerros y laderas.",ATENCAO:bF,ATENÃÃO:"ATENCIÃN","AVCB (Auto de Vistoria do Corpo de Bombeiros)":"AVCB (Acta de Inspección del Cuerpo de Bomberos)","Abaixo de 3: aquisição cara para o retorno.":"Menos de 3: adquisición cara para el retorno.",Abandonados:AF,"Abandonar a área e focar em outros projetos":"Abandonar el área y enfocarse en otros proyectos","Abandonar o projeto e ajudar a restaurar a área":"Abandonar el proyecto y ayudar a restaurar el área",Abertos:yF,Abr:SF,Abrir:EF,"Abrir Calculadora":"Abrir Calculadora","Abrir Monitor":"Abrir Monitor","Abrir curso":"Abrir curso","Abrir diagnóstico territorial":"Abrir diagnóstico territorial","Abrir menu":"Abrir menú","Abrir menu de navegação":"Abrir menú de navegación","Abrir tour do módulo Enterprise":"Abrir tour del módulo Enterprise","Abrir trilhas mais radicais para atrair turismo de aventura":"Abrir senderos más radicales para atraer turismo de aventura","Abrir tudo sem limites":"Abrir todo sin lÃmites","Absorve COâ e produz oxigênio pela fotossÃntese":"Absorbe COâ y produce oxÃgeno por fotosÃntesis","Abundância Sertaneja":"Abundancia Sertaneja","Aceiro e brigada voluntária":"Cortafuegos y brigada voluntaria",Aceita:CF,"Aceita apenas conteúdo claramente profissional":"Acepta solo contenido claramente profesional",Aceitar:TF,"Aceitar Recurso":"Aceptar Recurso","Aceitar a fábrica":"Aceptar la fábrica","Aceitar a oferta dos intermediários":"Aceptar la oferta de los intermediarios","Aceitar a parceria para monitoramento cientÃfico":"Aceptar la asociación para monitoreo cientÃfico","Aceitar a proposta polÃtica que inclui um resort":"Aceptar la propuesta polÃtica que incluye un resort","Aceitar a situação como irreversÃvel":"Aceptar la situación como irreversible","Aceitar e Continuar":"Aceptar y Continuar","Aceitar e prosseguir":"Aceptar y proseguir","Aceitar oferta de trabalho em fazenda de soja":"Aceptar oferta de trabajo en finca de soja","Aceitar que o cerrado está perdido":"Aceptar que el cerrado está perdido","Aceitar significa compartilhar a pontuação por pilar (RA/OE/AO) do último diagnóstico com os demais membros deste consórcio.":"Aceptar significa compartir la puntuación por pilar (RA/OE/AO) del último diagnóstico con los demás miembros de este consorcio.","Aceitar um acordo com os madeireiros para exploração parcial":"Aceptar un acuerdo con los madereros para explotación parcial",Aceito:PF,"Aceitável (":"Aceptable (",Acertos:RF,Acessar:xF,"Acessar curso":"Acceder al curso",Acesse:wF,'Acesse "Certificados" no menu para ver todos os seus certificados emitidos.':'Acceda a "Certificados" en el menú para ver todos sus certificados emitidos.','Acesse "EDU" no menu lateral para ver todas as trilhas e capacitações disponÃveis.':'Acceda a "EDU" en el menú lateral para ver todos los senderos y capacitaciones dis
348ponibles.','Acesse "Social" no menu lateral para ver os posts da comunidade.':'Acceda a "Social" en el menú lateral para ver las publicaciones de la comunidad.',"Acesse Admin > Licenças para ver todas as licenças do sistema.":"Acceda a Admin > Licencias para ver todas las licencias del sistema.","Acesse Configurações > Aprovações Pendentes para ver novos cadastros.":"Acceda a Configuración > Aprobaciones Pendientes para ver nuevos registros.",'Acesse a página de login e clique em "Criar conta". Preencha seu email e uma senha segura.':'Acceda a la página de inicio de sesión y haga clic en "Crear cuenta". Rellene su correo electrónico y una contraseña segura.',"Acesse configurações avançadas para controlar o comportamento da plataforma.":"Acceda a configuraciones avanzadas para controlar el comportamiento de la plataforma.","Acesse configurações avançadas: modo demo, privacidade do fórum, aprovações pendentes, feedback dos usuários, referências globais e logs de auditoria.":"Acceda a configuraciones avanzadas: modo demo, privacidad del foro, aprobaciones pendientes, feedback de usuarios, referencias globales y registros de auditorÃa.","Acesse o Hub de Jogos pelo menu lateral para ver todos os jogos disponÃveis.":"Acceda al Hub de Juegos por el menú lateral para ver todos los juegos disponibles.","Acesse o Painel do Professor e veja seu código de referral no topo da página.":"Acceda al Panel del Profesor y vea su código de referido en la parte superior de la página.",'Acesse pela tela inicial usando e-mail e senha cadastrados. Caso tenha esquecido a senha, utilize a opção "Esqueceu a senha?" para receber um link de redefinição. Contas novas passam por aprovação de um administrador antes do primeiro acesso.':'Acceda por la pantalla inicial usando correo electrónico y contraseña registrados. Si ha olvidado la contraseña, utilice la opción "¿Olvidó la contraseña?" para recibir un enlace de redefinición. Las cuentas nuevas pasan por aprobación de un administrador antes del primer acceso.',Acessibilidade:IF,"Acessibilidade Urbana":"Acce
348sibilidad Urbana","Acessibilidade Urbana (fontes públicas)":"Accesibilidad Urbana (fuentes públicas)","Acessibilidade urbana analisada":"Accesibilidad urbana analizada",Acesso:DF,"Acesso AnalÃtico requer papel Admin, Analista ou Visualizador.":"El acceso AnalÃtico requiere el rol de Admin, Analista o Visualizador.","Acesso Aprovado":"Acceso Aprobado","Acesso EDU requer papel Estudante ou Professor.":"El acceso EDU requiere el rol de Estudiante o Profesor.","Acesso Empresarial":"Acceso Empresarial","Acesso Público":"Acceso Público","Acesso Solicitado:":"Acceso Solicitado:","Acesso Territorial":"Acceso Territorial","Acesso alterado automaticamente para AnalÃtico":"Acceso cambiado automáticamente a AnalÃtico","Acesso ao sistema de diagnóstico territorial":"Acceso al sistema de diagnóstico territorial","Acesso atualizado":"Acceso actualizado","Acesso atualizado com sucesso":"Acceso actualizado con éxito","Acesso bloqueado":"Acceso bloqueado","Acesso ilimitado":"Acceso ilimitado","Acesso ilimitado concedido":"Acceso ilimitado concedido","Acesso ilimitado revogado":"Acceso ilimitado revocado","Acesso para Cadeirante":"Acceso para Silla de Ruedas","Acesso por Organização":"Acceso por Organización","Acesso por Usuário":"Acceso por Usuario","Acesso público liberado":"Acceso público liberado","Acesso restrito a administradores da organização.":"Acceso restringido a administradores de la organización.","Acesso restrito a administradores.":"Acceso restringido a administradores.","Acesso à plataforma de capacitação":"Acceso a la plataforma de capacitación","Acesso à trilha formativa do SISTUR EDU.":"Acceso a la ruta formativa de SISTUR EDU.","Acesso à s trilhas e cursos":"Acceso a las rutas y cursos",Acessos:OF,"Acessos Habilitados":"Accesos Habilitados","Acidentes de Trabalho":"Accidentes Laborales",Acompanhamento:MF,"Acompanhamento cancelado. A geração continua no servidor â confira o histórico em alguns minutos.":"Seguimiento cancelado. La generación continúa en el servidor â revisa el historial en unos minutos.","Acompanhamento da Atividade":"Seguimiento de la Actividad","Acompanhamento de Alunos":"Seguimiento de Alumnos","Acompanhamento de planos de ação e scores por ciclo de diagnóstico":"Seguimiento de planes de acción y puntuaciones por ciclo de diagnóstico","Acompanhamento de progresso e indicadores":"Seguimiento del progreso y los indicadores","Acompanhamento de um especialista em turismo para interpretar diagnósticos, desenhar planos de ação e acelerar resultados do destino ou do empreendimento.":"Seguimiento de un especialista en turismo para interpretar diagnósticos, diseñar planes de acción y acelerar resultados del destino o de la empresa.","Acompanhamento dos projetos derivados de diagnósticos":"Seguimiento de los proyectos derivados de diagnósticos",Acompanhar:NF,"Acompanhar o painel unificado de gestão (admin/professor) para detectar inatividade.":"Monitorear el panel unificado de gestión (admin/profesor) para detectar inactividad.","Acompanhe a evolução dos pilares ao longo dos ciclos de diagnóstico":"Sigue la evolución de los pilares a lo largo de los ciclos de diagnóstico","Acompanhe a evolução, estagnação e regressão de indicadores entre ciclos":"Siga la evolución, estancamiento y regresión de indicadores entre ciclos","Acompanhe as perguntas usadas por pessoa, conceda créditos promocionais para um usuário ou para toda a organização e libere acesso ilimitado por um perÃodo ou por tempo indeterminado.":"Siga las preguntas utilizadas por persona, otorgue créditos promocionales a un usuario o a toda la organización y libere acceso ilimitado por un perÃodo o por tiempo indeterminado.","Acompanhe o progresso na aba de Planos de Ação do Dashboard.":"Siga el progreso en la pestaña de Planes de Acción del Dashboard.","Acompanhe seu progresso de aprendizado":"Sigue tu progreso de aprendizaje","Acoplamento com outros módulos ({{v0}})":"Acoplamiento con otros módulos ({{v0}})","Acumulou 10 horas de estudo":"Acumuló 10 horas de estudio",Adaptativa:zF,Adaptativas:jF,"Adaptação da metodologia Mario Beni para o setor privado de hospital
348idade":"Adaptación de la metodologÃa Mario Beni para el sector privado de hospitalidad","Adaptação da metodologia para o setor privado de hospitalidade com 22 indicadores especializados, sendo 6 compartilhados com diagnósticos territoriais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais).":"Adaptación de la metodologÃa para el sector privado de hospitalidad con 22 indicadores especializados, siendo 6 compartidos con diagnósticos territoriales (NPS, Reviews Online, Horas de Entrenamiento, % Empleados Locales, % Compras Locales y Certificaciones Ambientales).","Adaptação da metodologia para o setor privado de hospitalidade.":"Adaptación de la metodologÃa para el sector privado de hospitalidad.",Adequado:kF,"Adequado (verde): score ⥠0.67, indica bom desempenho. Atenção (amarelo): score entre 0.34 e 0.66, requer monitoramento. CrÃtico (vermelho): score ⤠0.33, requer ação imediata e pode ativar bloqueios IGMA.":"Adecuado (verde): puntuación ⥠0.67, indica buen rendimiento. Atención (amarillo): puntuación entre 0.34 y 0.66, requiere monitoreo. CrÃtico (rojo): puntuación ⤠0.33, requiere acción inmediata y puede activar bloqueos IGMA.","Adequado ⥠67% · Atenção 34â66% · CrÃtico ⤠33%. Calculado pelo sistema, não editável.":"Adecuado ⥠67% · Atención 34â66% · CrÃtico ⤠33%. Calculado por el sistema, no editable.","Adequado:":"Adecuado:","Adequado: pontuação ⥠67% â manter monitoramento.":"Adecuado: puntuación ⥠67% â mantener monitoreo.","Adiciona 9 indicadores complementares baseados em Tasso, Silva & Nascimento (2024): acessibilidade NBR 9050, comparecimento eleitoral, qualificação PNQT, conectividade 5G/Wi-Fi, promoção digital, Big Data turÃstico, TBC, inclusão na gestão e sensibilização.":"Añade 9 indicadores complementarios basados en Tasso, Silva & Nascimento (2024): accesibilidad NBR 9050, participación electoral, calificación PNQT, conectividad 5G/Wi-Fi, promoción digital, Big Data turÃstico, TBC, inclusión en la gestión y sensibilización.","Adiciona indicadores de profundidade intermediária. Recomendado para cidades médias ou diagnósticos de acompanhamento.":"Añade indicadores de profundidad intermedia. Recomendado para ciudades medianas o diagnósticos de seguimiento.","Adicionado como bloco final antes do rodapé.":"Agregado como bloque final antes del pie de página.","Adicionado em":"Añadido en",Adicionar:_F,"Adicionar Documento de Referência":"Agregar Documento de Referencia","Adicionar Material":"Agregar Material","Adicionar Módulo":"Agregar Módulo","Adicionar Novo Membro":"Agregar Nuevo Miembro","Adicionar Novo Usuário":"Añadir Nuevo Usuario","Adicionar Tarefa":"Agregar Tarea","Adicionar Usuário":"Agregar Usuario","Adicionar Usuário à Organização":"Agregar Usuario a la Organización","Adicionar canal":"Añadir canal","Adicionar concorrente manualmente":"Añadir competidor manualmente","Adicionar contexto":"Agregar contexto","Adicionar critério":"Añadir criterio","Adicionar créditos":"Agregar créditos","Adicionar dados":"Agregar datos","Adicionar destino":"Agregar destino","Adicionar documento":"Agregar documento","Adicionar etapa":"Añadir etapa","Adicionar imagens (até {{v0}})":"Agregar imágenes (hasta {{v0}})","Adicionar item customizadoâ¦":"Añadir elemento personalizadoâ¦","Adicionar mais dados?":"¿Añadir más datos?","Adicionar membro":"Añadir miembro","Adicionar nova regra":"Agregar nueva regla","Adicionar referência":"Agregar referencia","Adicionar seção":"Agregar sección","Adicionar unidade":"Añadir unidad","Adicionar unidade (municÃpio)":"Agregar unidad (municipio)","Adicione PDFs, planilhas, apresentações e outros documentos de suporte":"Agregue PDFs, hojas de cálculo, presentaciones y otros documentos de soporte","Adicione alunos referenciados à s suas salas.":"Añada alumnos referenciados a sus salas.","Adicione documentos como o Plano Nacional de Turismo para enriquecer relatórios":"Agregue documentos como el Plan Nacional de Turismo para enriquecer informes","Adicione e gerencie os usuários da sua organização":"Añada y gestione los usuarios de su organización","Adicione notas internas sobre este feedback...":"Agregue notas internas sobre este feedback...","Adicione pelo menos uma unidade para prosseguir.":"Añada al menos una unidad para continuar.","Adicione tags relevantes (ex: sustentabilidade, governança).":"Añada etiquetas relevantes (ej: sostenibilidad, gobernanza).","Adicione tÃtulo, descrição, pilar e URL do vÃdeo.":"Añada tÃtulo, descripción, pilar y URL del video.","Adicione um municÃpio por unidade do empreendimento. O diagnóstico será":"Añada un municipio por unidad del emprendimiento. El diagnóstico será","Adicione um novo marco ao projeto":"Agregue un nuevo hito al proyecto","Adicione um novo módulo ao curs
348o":"Agregue un nuevo módulo al curso","Adicione uma descrição dos objetivos.":"Añada una descripción de los objetivos.","Adicione uma descrição opcional.":"Añada una descripción opcional.","Adicione uma nova carta ao seu deck como recompensa.":"Agrega una nueva carta a tu mazo como recompensa.","Adicione uma nova fase ao projeto":"Agregue una nueva fase al proyecto","Adicione uma nova tarefa ao projeto":"Agregue una nueva tarea al proyecto",Admin:qF,"Admin EDU":"Admin EDU","Admin Org":"Admin Org",'Admin aprova â move para org "Autônomo" ou org própria':'Admin aprueba â mueve a org "Autónomo" o a organización propia',"Admin: acesso total. Analista: diagnósticos. Visualizador: apenas leitura.":"Admin: acceso total. Analista: diagnósticos. Visualizador: solo lectura.",Administrador:LF,"Administrador (plataforma)":"Administrador (plataforma)","Administrador da organização":"Administrador de la organización",'Administradores têm acesso ao painel "Logs do Gerador de Relatórios" em /admin/report-logs (botão na página de Logs de Auditoria). Mostra eventos e erros da edge function generate-report agrupados por provider (Claude / GPT-5 / Gemini), com filtros por nÃvel, busca livre, dialog de detalhes (metadata + duração + job/report id) e auto-refresh a cada 15s. Quando o filtro é Claude (default) ou Todos, aparece também um bloco "Pipeline Claude â Tempo Real" que agrupa eventos por trace_id e mapeia para 4 fases visÃveis: Pilares (RA·OE·AO), Envelope, Validação e Persistência â útil para detectar stalls de stream.':'Los administradores tienen acceso al panel "Registros del Generador de Informes" en /admin/report-logs (botón en la página de Registros de AuditorÃa). Muestra eventos y errores de la función edge generate-report agrupados por proveedor (Claude / GPT-5 / Gemini), con filtros por nivel, búsqueda libre, diálogo de detalles (metadatos + duración + ID de trabajo/informe) y actualización automática cada 15s. Cuando el filtro es Claude (predeterminado) o Todos, también aparece un bloque "Pipeline Claude â Tiempo Real" que agrupa eventos por trace_id y los mapea a 4 fases visibles: Pilares (RA·OE·AO), Sobre, Validación y Persistencia â útil para detectar interrupciones de stream.',"Administradores têm uso ilimitado. Em falha da IA, o token consumido é estornado automaticamente.":"Los administradores tienen uso ilimitado. En caso de fallo de la IA, el token consumido se reembolsa automáticamente.",Administração:"Administración","Administração EDU":"Administración EDU","Administre o catálogo de treinamentos, gerencie questões do banco de provas, configure regras de exames e revise conteúdo importado.":"Administre el catálogo de capacitaciones, gestione preguntas del banco de exámenes, configure reglas de exámenes y revise contenido importado.","Administre todo o conteúdo educacional da plataforma: treinamentos, banco de questões, regras de exames e conteúdo importado.":"Administre todo el contenido educativo de la plataforma: capacitaciones, banco de preguntas, reglas de exámenes y contenido importado.","Admins têm acesso total à plataforma.":"Los admins tienen acceso total a la plataforma.","Adotar online":"Adoptar online",Aeroporto:UF,"Aeroportos (ICAO)":"Aeropuertos (ICAO)","Agenda global da ONU com 17 objetivos":"Agenda global de la ONU con 17 objetivos","Agente IA validador":"Agente IA validador",Ago:BF,"Agora você pode calcular o diagnóstico. O sistema irá:":"Ahora puede calcular el diagnóstico. El sistema hará:",Agrotóxico:"Agrotóxico","Agrupe municÃpios em um consórcio ou região turÃstica para comparar diagnósticos e coordenar ações regionais. A comparação é privada entre os membros aceitos.":"Agrupe municipios en un consorcio o región turÃstica para comparar diagnósticos y coordinar acciones regionales. La comparación es privada entre los miembros aceptados.","Aguarda correção":"Pendiente de corrección",Aguardando:FF,"Aguardando Aprovação":"Pendiente de Aprobación","Aguardando Correção":"Pendiente de Corrección","Aguardando preenchimento":"Esperando rellenado","Aguardando preenchimento de dados":"Esperando que se completen los datos","Aguardando revisão":"Esperando revisión","Aguardando segundo ciclo":"Esperando segundo ciclo","Aguardar aprovação":"Esperar aprobación","Aguarde enquanto geramos a estrutura do projeto":"Espere mientras generamos la estructura del proyecto","Agência / Operadora":"Agencia / Operadora","Agências cadastradas no CADASTUR":"Agencias registradas en CADASTUR","Agências de Turismo":"Agencias de Turismo","Ainda começando a explorar!":"¡Apenas empiezas a explorar!","Ainda disponÃvel":"TodavÃa disponible","Ainda não há destinos com avaliações calculadas e prontos para visitação.":"TodavÃa no hay destinos con evaluaciones calculadas y listos para visitar.","Ainda não há municÃpios com diagnóstico calculado neste consórcio.":"TodavÃa no hay municipios con diagnóstico calculado en este consorcio.","Ainda não há nenhum diagnóstico Territorial cadastrado para o municÃpio deste empreendimento.":"Aún no hay ningún diagnóstico Territorial registrado para el municipio de este emprendimiento.","Ainda não há perguntas neste curso. Seja o primeiro a perguntar!":"Aún no hay preguntas en este curso. ¡Sé el primero en preguntar!",Ajuda:GF,"Ajuda & Tutorial":"Ayuda & Tutorial","Ajudar a construir cisternas para captar água da chuva":"Ayudar a construir cisternas para captar agua de lluvia","Ajudar na regularização fundiária":"Ayudar en la regularización de la tierra","Ajudou um pouco, mas não resolve...":"Ayudó un poco, pero no resuelve...","Ajustado ao piso":"Ajustado al lÃmite inferior","Ajustado ao teto":"Ajustado al lÃmite superior",Ajustar:VF,"Ajustar indicadores":"Ajustar indicadores","Ajuste a importância relativa de cada pilar e indicador no Score Final do diagnóstico. Mudanças marcam todos os diagnósticos calculados para recálculo.":"Ajuste la importancia relativa de cada pilar e indicador en el Score Final del diagnóstico. Los cambios marcan todos los diagnósticos calculados para su recálculo.","Ajuste a quantidade de usuários, atualize o pagamento e baixe faturas.":"Ajuste la cantidad de usuarios, actualice el pago y descargue facturas.","Ajuste de Pesos dos Indicadores":"Ajuste de Pesos de los Indicadores","Ajuste o texto manualmente. A alteração é salva no relatório atual e refletida em exportações (DOCX/PDF/cópia). O histórico de quem editou fica registrado.":"Ajuste el texto manualmente. La alteración se guarda en el informe actual y se refleja en exportaciones (DOCX/PDF/copia). El historial de quién editó queda registrado.","Alarme (antes)":"Alarma (antes)","Alcance 300 pontos de vitória mantendo equilÃbrio ⥠50% entre os pilares. O segredo não é força bruta â é estratég
348ia!":"Alcanza 300 puntos de victoria manteniendo un equilibrio ⥠50% entre los pilares. ¡El secreto no es la fuerza bruta â es la estrategia!",'Alcançar o nÃvel "Cidade do Futuro"':'Alcanzar el nivel "Ciudad del Futuro"',AlertTriangle:$F,Alerta:HF,"Alerta confirmado":"Alerta confirmada","Alerta de Externalidades Negativas":"Alerta de Externalidades Negativas","Alerta de externalidade":"Alerta de externalidad","Alerta descartado":"Alerta descartada","Alerta do Observatório":"Alerta del Observatorio","Alerta enviado para":"Alerta enviado a","Alerta enviado para ":"Alerta enviada a ","Alerta já enviado":"Alerta ya enviada","Alerta quando OE melhora à s custas de RA":"Alerta cuando OE mejora a expensas de RA","Alerta quando OE melhora à s custas de RA (crescimento estrutural degrada o ambiente).":"Alerta cuando OE mejora a expensas de RA (el crecimiento estructural degrada el ambiente).",Alertas:WF,"Alertas IGMA":"Alertas IGMA","Alertas IGMA Gerados":"Alertas IGMA Generadas","Alertas IGMA básicos":"Alertas IGMA básicas","Alertas IGMA são criados para padrões que requerem atenção.":"Las alertas IGMA se crean para patrones que requieren atención.","Alertas Sistêmicos (Mario Beni)":"Alertas Sistémicas (Mario Beni)","Alertas amarelos são avisos de tendências preocupantes.":"Las alertas amarillas son avisos de tendencias preocupantes.","Alertas de Regressão":"Alertas de Regresión","Alertas de regressão ({{v0}})":"Alertas de regresión ({{v0}})","Alertas detectados":"Alertas detectadas","Alertas persistentes (2+ ciclos) são destacados em vermelho escuro.":"Las alertas persistentes (2+ ciclos) se resaltan en rojo oscuro.","Alertas registrados em log auditável.":"Alertas registradas en log auditable.","Alertas vermelhos indicam problemas crÃticos que bloqueiam avanços.":"Las alertas rojas indican problemas crÃticos que bloquean avances.","Alga com propriedades curativas":"Alga con propiedades curativas","Algumas melhorias foram conquistadas, mas os problemas estruturais permanecem. O litoral sobrevive entre a beleza natural e a pressão do desenvolvimento.":"Algunas mejoras se lograron, pero los problemas estructurales persisten. El litoral sobrevive entre la belleza natural y la presión del desarrollo.","Algumas áreas foram protegidas, mas muitas foram perdidas. O cerrado sobrevive em fragmentos, como ilhas verdes num mar de soja.":"Algunas áreas fueron protegidas, pero muchas se perdieron. El cerrado sobrevive en fragmentos, como islas verdes en un mar de soja.","Algumas áreas foram recuperadas, mas a desertificação continua em outras. A luta contra o deserto é diária.":"Algunas áreas fueron recuperadas, pero la desertificación continúa en otras. La lucha contra el desierto es diaria.","Algumas áreas temáticas simplificadas":"Algunas áreas temáticas simplificadas","Alguns campos foram preenchidos automaticamente pela busca de reviews.":"Algunos campos se rellenaron automáticamente mediante la búsqueda de reseñas.","Alguns datasets do CADASTUR não estão acessÃveis no momento. Os dados existentes foram preservados.":"Algunos conjuntos de datos de CADASTUR no están accesibles en este momento. Los datos existentes fueron preservados.","Alguns indicadores (saúde, educação, saneamento) dependem de ações coordenadas entre secretarias. O sistema sinaliza quando a melhoria requer articulação intersetorial, não apenas ações isoladas do turismo.":"Algunos indicadores (salud, educación, saneamiento) dependen de acciones coordinadas entre secretarÃas. El sistema señala cuando la mejora requiere articulación intersectorial, no solo acciones aisladas del turismo.","Alguns indicadores dependem de ações de múltiplos setores (saúde, educação, meio ambiente, etc.). O sistema identifica esses indicadores e sinaliza que a melhoria requer articulação intersetorial, não apenas ações isoladas do turismo.":"Algunos indicadores dependen de acciones de múltiples sectores (salud, educación, medio ambiente, etc.). El sistema identifica estos indicadores y señala que la mejora requiere articulación intersectorial, no solo acciones aisladas del turismo.","Alguns
348indicadores já possuem valor neste diagnóstico. Recarregue a página e tente novamente.":"Algunos indicadores ya tienen valor en este diagnóstico. Recargue la página e intente de nuevo.","Alguns indicadores não puderam ser pré-preenchidos.":"Algunos indicadores no pudieron ser prellenados.","Alguns indicadores são calculados de forma determinÃstica a partir de variáveis primárias, como Receita TurÃstica per capita, Densidade Hoteleira, Ãndice de Capacidade de Pagamento (CAPAG) e cumprimento de mÃnimos constitucionais de Saúde e Educação.":"Algunos indicadores se calculan de forma determinÃstica a partir de variables primarias, como Ingresos TurÃsticos per cápita, Densidad Hotelera, Ãndice de Capacidad de Pago (CAPAG) y cumplimiento de mÃnimos constitucionales de Salud y Educación.","Aliança pela Floresta":"Alianza por la Selva",Alinhado:QF,"Alinhamento com ODS da ONU":"Alineación con ODS de la ONU",Alta:KF,"Alta (predominantemente alta temporada)":"Alta (predominantemente temporada alta)","Alta 95%, baixa 40%, média 67% â variação â 82%":"Alta 95%, baja 40%, media 67% â variación â 82%","Alterar Papel":"Cambiar Rol","Alterar Senha":"Cambiar Contraseña","Alterar pilar":"Cambiar pilar","Alterar status:":"Cambiar estado:","Alterar valores pré-preenchidos automaticamente (clique no campo para editar)":"Cambiar valores pre-rellenados automáticamente (haga clic en el campo para editar)","Alterações afetam":"Los cambios afectan","Alterações descartadas neste pilar":"Cambios descartados en este pilar","Alterações em benchmarks ou pesos NÃO são retroativas. à necessário recalcular manualmente para aplicar novas regras.":"Los cambios en los benchmarks o pesos NO son retroactivos. Es necesario recalcular manualmente para aplicar nuevas reglas.","Alterações pendentesâ¦":"Cambios pendientesâ¦","Alterações salvas. O próximo relatório usará esta versão.":"Cambios guardados. El próximo informe usará esta versión.","Altere o papel de qualquer usuário na lista de usuários.":"Cambie el rol de cualquier usuario en la lista de usuarios.",Alternativas:YF,Alternativos:JF,"Alterne entre a visão territorial (destinos) e enterprise (organizações) usando o toggle.":"Alterne entre la vista territorial (destinos) y empresarial (organizaciones) usando el interruptor.",Alto:XF,"Alto impacto positivo no pilar":"Alto impacto positivo en el pilar",Aluno:ZF,"Aluno (opcional)":"Alumno (opcional)","Aluno já está nesta sala":"El alumno ya está en esta sala","Aluno removido da sala":"Alumno removido de la sala",Alunos:eG,"Alunos com XP":"Estudiantes con XP","Alunos em risco":"Estudiantes en riesgo","Alunos em risco ({{v0}})":"Alumnos en riesgo ({{v0}})","Alunos inativos por 30+ dias não contam para a isenção.":"Los alumnos inactivos por más de 30 dÃas no cuentan para la exención.","Alunos indicados ativos":"Alumnos indicados activos","Alunos já cadastrados podem adicionar o código no perfil.":"Los alumnos ya registrados pueden añadir el código en el perfil.","Alunos no total":"Estudiantes en total","Alunos podem inserir o código durante o onboarding.":"Los alumnos pueden insertar el código durante el onboarding.","Alunos podem refazer o exame se reprovados":"Los alumnos pueden rehacer el examen si reprobados","Alunos podem ser removidos da sala a qualquer momento.":"Los alumnos pueden ser removidos de la sala en cualquier momento.","Alunos que usam seu código são vinculados automaticamente a você.":"Los alumnos que usan su código se vinculan automáticamente a usted.","Alvará Sanitário (Vigilância Sanit
348ária)":"Permiso Sanitario (Vigilancia Sanitaria)","Alvará de Funcionamento Municipal":"Licencia de Funcionamiento Municipal","Alvo: ⥠30%":"Meta: ⥠30%",Amazônia:"AmazonÃa","Ambas as partes comprometem-se a manter em sigilo as informações confidenciais a que tenham acesso em razão do uso da Plataforma.":"Ambas partes se comprometen a mantener en secreto la información confidencial a la que tengan acceso en razón del uso de la Plataforma.",Ambiente:aG,"Ambiente de Demonstração":"Ambiente de Demostración","Ambiente de capacitação com trilhas, cursos, exames e certificações. As prescrições de aprendizado são geradas automaticamente a partir dos resultados do diagnóstico (gatilho em Atenção/CrÃtico).":"Ambiente de capacitación con rutas, cursos, exámenes y certificaciones. Las prescripciones de aprendizaje se generan automáticamente a partir de los resultados del diagnóstico (gatillo en Atención/CrÃtico).","Ambiente de teste: nenhum pagamento real é processado.":"Entorno de prueba: no se procesa ningún pago real.","Ambiente degradado â Não promover destino":"Ambiente degradado â No promocionar destino",Ambos:oG,"Ambos ({{v0}})":"Ambos ({{v0}})","Ameaças & Eventos":"Amenazas & Eventos","Ameaças causam dano real aos seus pilares â não ignore!":"¡Las amenazas causan daño real a tus pilares â no las ignores!","Ameaças enfrentadas:":"Amenazas enfrentadas:","Amenities Sustentáveis":"Amenities Sostenibles","Amostra de manejo sustentável":"Muestra de manejo sostenible",Amostras:iG,"Amostras de notÃcias":"Muestras de noticias","Ampla experiência e liderança":"Amplia experiencia y liderazgo","Ampliar leitos":"Ampliar plazas de alojamiento","Ampliar rede de contatos":"Ampliar la red de contactos",Amplitude:tG,"Analisando projeto...":"Analizando proyecto...","Analisar Acessibilidade Urbana":"Analizar Accesibilidad Urbana","Analisar Conectividade Aérea":"Analizar Conectividad Aérea","Analisar Conectividade Telecom":"Analizar Conectividad Telecom","Analisar Conforto Climático":"Analizar Confort Climático","Analisar Demanda & Tendências":"Analizar Demanda y Tendencias","Analisar Eventos & Sazonalidade":"Analizar Eventos y Estacionalidad","Analisar Força da Marca":"Analizar Fuerza de la Marca","Analisar Infraestrutura de Saúde":"Analizar Infraestructura de Salud","Analisar Posicionamento de Preço":"Analizar Posicionamiento de Precio","Analisar Presença Digital":"Analizar Presencia Digital","Analisar Presença em Redes Sociais":"Analizar Presencia en Redes Sociales","Analisar Segurança TurÃstica":"Analizar Seguridad TurÃstica","Analisar Sustentabilidade & Acessibilidade":"Analizar Sostenibilidad y Accesibilidad","Analisar Transporte Intra-Destino":"Analizar Transporte Intra-Destino",Analista:rG,"Analistas e técnicos de órgãos públicos":"Analistas y técnicos de organismos públicos","Analistas podem criar diagnósticos e planos de ação.":"Los analistas pueden crear diagnósticos y planes de acción.",Analytics:sG,"Analytics por Turma":"AnalÃtica por Grupo",AnalÃtico:"AnalÃtico","AnalÃtico (Completo)":"AnalÃtico (Completo)","AnalÃtico - Sistema Territorial":"AnalÃtico - Sistema Territorial","AnalÃtico territorial":"AnalÃtico territorial","AnalÃtico â Gestão Territorial":"AnalÃtico â Gestión Territorial","AnalÃtico: Crie destinos, faça diagnósticos e gere relatórios.":"AnalÃtico: Cree destinos, realice diagnósticos y genere informes.","Anatel (anatel_coverage_cache)":"Anatel (anatel_coverage_cache)","Anatel â cobertura 4G, 5G e Wi-Fi público do municÃpio (afeta PMS cloud, OTA mobile e check-in digital)":"Anatel â cobertura 4G, 5G y Wi-Fi público del municipio (afecta PMS cloud, OTA mobile y check-in digital)","Anexar PDF":"Adjuntar PDF","Anexar arquivo (até 10 MB)":"Adjuntar archivo (hasta 10 MB)",Ano:nG,"Ano Mais Recente":"Año Más Reciente","Ano de referência":"Año de referencia","Ano de referência do dado":"Año de referencia del dato","Ano-referência mais recente":"Año-referencia más reciente","Anos de Operação":"Años de Operación","Anos de relacionamento":"Años de relación","Anotação excluÃda":"Anotación eliminada","Anotação salva!":"¡Anotación guardada!",Anterior:cG,"Antes de gerar este relatório, o sistema conferiu os valores citados contra a tabela de auditoria e a bibliografia canônica.":"Antes de generar este informe, el sistema verificó los valores citados contra la tabla de auditorÃa y la bibliografÃa canónica.","Antes de salvar o relatório, o sistema executou três camadas de checagem cruzando o texto gerado com fontes de verdade independentes:":"Antes de guardar el informe, el sistema ejecutó tres capas de verificación cruzando el texto generado con fuentes de verdad independientes:","Antes do cálculo, o sistema apresenta uma tela de confirmação com valores destacados (outliers, ausências e mudanças expressivas em relação à rodada anterior).":"Antes del cálculo, el sistema presenta una pantalla de confirmación con valores destacados (valores atÃpicos, ausencias y cambios expresivos en relación con la ronda anterior).","Antes do trial expirar, acesse a página de Planos para continuar usando o SISTUR.":"Antes de que expire la prueba, acceda a la página de Planes para seguir usando SISTUR.",Anual:dG,"Análise 360° do destino":"Análisis 360° del destino","Análise Estrutural":"Análisis Estructural","Análise Estrutural do Turismo":"Análisis Estructural del Turismo","Análise Estrutural do Turismo. São Paulo: E
348ditora Senac São Paulo, 2001.":"Análisis Estructural del Turismo. São Paulo: Editora Senac São Paulo, 2001.","Análise Regional / Consórcios":"Análisis Regional / Consorcios","Análise de Sentimento":"Análisis de Sentimiento","Análise de tendências":"Análisis de tendencias","Análise de tendências por indicador":"Análisis de tendencias por indicador","Análise dos pilares RA, OE e AO pela metodologia Mario Beni":"Análisis de los pilares RA, OE y AO según la metodologÃa Mario Beni","Análise intersetorial completa":"Análisis intersectorial completo","Análise mais abrangente com todos os indicadores. Ideal para capitais, polos turÃsticos ou planejamento estratégico.":"Análisis más completo con todos los indicadores. Ideal para capitales, polos turÃsticos o planificación estratégica.","Análise menos granular por tema":"Análisis menos granular por tema","Anônimo:":"Anónimo:",Anúncio:"Anuncio","Anúncio publicado":"Anuncio publicado","Anúncio removido":"Anuncio eliminado","Anúncios da Turma":"Anuncios de la Clase","Ao aceitar, o resumo do diagnóstico (pontuação por pilar RA/OE/AO) do seu municÃpio passa a ser visÃvel para os demais membros aceitos deste consórcio. Não há ranking público â a comparação é restrita ao grupo.":"Al aceptar, el resumen del diagnóstico (puntuación por pilar RA/OE/AO) de su municipio pasa a ser visible para los demás miembros aceptados de este consorcio. No hay ranking público â la comparación está restringida al grupo.","Ao cancelar o trial, você perderá o acesso imediatamente.":"Al cancelar la prueba, perderá el acceso inmediatamente.",'Ao clicar em "Aceitar e Continuar", o Usuário declara que leu, compreendeu e concorda integralmente com todos os termos acima.':'Al hacer clic en "Aceptar y Continuar", el Usuario declara que leyó, comprendió y acepta Ãntegramente todos los términos anteriores.',"Ao completar trilhas e provas, você recebe certificados digitais verificáveis com QR Code, reconhecendo sua capacitação.":"Al completar rutas y exámenes, usted recibe certificados digitales verificables con Código QR, reconociendo su capacitación.","Ao completar trilhas e provas, você recebe certificados digitais verificáveis com QR Code. Acesse-os na página de Certificados.":"Al completar rutas y exámenes, usted recibe certificados digitales verificables con Código QR. Acceda a ellos en la página de Certificados.","Ao derrotar ameaças ou fazer boas escolhas, você ganha recompensas: cartas raras, moedas extras e pontos de vitória!":"¡Al derrotar amenazas o tomar buenas decisiones, ganas recompensas: cartas raras, monedas extra y puntos de victoria!","Ao encontrar um enigma, responda corretamente para ganhar pontos bônus! Errar não tira vida, mas você perde a recompensa.":"¡Al encontrar un acertijo, responde correctamente para ganar puntos extra! Equivocarte no te quita vida, pero pierdes la recompensa.","Ao final, receba um relatório educacional com o que aprendeu.":"Al final, reciba un informe educativo con lo que aprendió.","Apart-Hotel":"Apartahotel",Aparência:"Apariencia","Apelido / nome da propriedade":"Apodo / nombre de la propiedad","Apenas administradores podem alterar o modelo.":"Solo los administradores pueden cambiar el modelo.","Apenas administradores podem editar essas configurações.":"Solo los administradores pueden editar estas configuraciones.","Apenas arquivos PDF são aceitos.":"Solo se aceptan archivos PDF.","Apenas celebrar e seguir em frente":"Solo celebrar y seguir adelante","Apenas conteúdo diretamente relacionado a turismo":"Solo contenido directamente relacionado con el turismo","Apenas conteúdo explÃcito é bloqueado":"Solo se bloquea contenido explÃcito",'Apenas diagnósticos com status "calculado" podem gerar relatórios.':'Solo los diagnósticos con estado "calculado" pueden generar informes.',"Apenas enterprise":"Solo enterprise","Apenas membros da organização":"Solo miembros de la organización","Apenas membros da organização do curso têm acesso":"Solo los miembros de la organización del curso tienen acceso","Apenas para mim (Pessoal)":"Solo para mà (Personal)","Apenas territorial":"Solo territorial","Apesar dos esforç
348os, as concessões feitas permitiram que a degradação continuasse. A floresta encolheu, espécies foram perdidas e a comunidade enfrenta as consequências das mudanças climáticas locais. Ainda há esperança, mas o caminho será muito mais longo e difÃcil.":"A pesar de los esfuerzos, las concesiones hechas permitieron que la degradación continuara. La selva se encogió, especies se perdieron y la comunidad enfrenta las consecuencias del cambio climático local. TodavÃa hay esperanza, pero el camino será mucho más largo y difÃcil.","Aplica a todos os alunos da atividade. Atual: {{v0}}":"Aplica a todos los alumnos de la actividad. Actual: {{v0}}","Aplica-se a":"Se aplica a",Aplicar:lG,"Aplicar a todos":"Aplicar a todos","Aplicar ao diagnóstico":"Aplicar al diagnóstico","Aplicar em projeto especÃfico":"Aplicar en un proyecto especÃfico","Aplicação IGMA":"Aplicación IGMA","Aplique pesquisa NPS: (% Promotores - % Detratores). Use formulários pós-estadia ou plataformas como Medallia, Revinate.":"Aplique encuesta NPS: (% Promotores - % Detractores). Use formularios post-estancia o plataformas como Medallia, Revinate.","Aplique pesquisa de satisfação com turistas (escala 0-10) ou use dados do Observatório de Turismo local.":"Aplique encuesta de satisfacción con turistas (escala 0-10) o use datos del Observatorio de Turismo local.","Apoiar transição para agricultura orgânica":"Apoyar transición a agricultura orgánica","Apostar apenas na vigilância voluntária sem proteção legal":"Apostar solo por la vigilancia voluntaria sin protección legal","App Key (x-app-key)":"App Key (x-app-key)",Apps:uG,"Apps, transporte público, transfer e alternativos disponÃveis no destino":"Apps, transporte público, traslado y alternativos disponibles en el destino","Aprenda a usar cada funcionalidade da plataforma":"Aprenda a usar cada funcionalidad de la plataforma","Aprenda a usar o SISTUR":"Aprende a usar SISTUR","Aprenda a usar o SISTUR passo a passo":"Aprende a usar SISTUR paso a paso","Aprenda a usar todas as funcionalidades da plataforma":"Aprenda a usar todas las funcionalidades de la plataforma","Aprenda jogando! O SISTUR oferece 4 jogos educacionais: TCG (cartas), RPG (narrativa), Memória e Caça ao Tesouro. Todos ensinam conceitos de turismo sustentável de forma divertida.":"¡Aprenda jugando! SISTUR ofrece 4 juegos educativos: TCG (cartas), RPG (narrativa), Memoria y Búsqueda del Tesoro. Todos enseñan conceptos de turismo sostenible de forma divertida.","Aprenda sobre os pilares RA, OE e AO jogando.":"Aprenda sobre los pilares RA, OE y AO jugando.","Aprenda sobre sustentabilidade e gestão territorial de forma divertida":"Aprende sobre sostenibilidad y gestión territorial de forma divertida","Aprenda sobre turismo sustentável através de cursos e trilhas de capacitação.":"Aprenda sobre turismo sostenible a través de cursos y rutas de capacitación.","Aprenda sobre turismo sustentável através de trilhas e capacitações":"Aprenda sobre turismo sostenible a través de rutas y capacitaciones",Aprender:mG,"Aprova a entrega":"Aprueba la entrega",Aprovado:pG,Aprovador:gG,Aprovados:hG,Aprovar:fG,"Aprovar novos usuários":"Aprobar nuevos usuarios",Aprovação:"Aprobación",Aprovações:"Aprobaciones","Aprovações Pendentes":"Aprobaciones Pendientes","Aprovações pendentes aparecem como notificação no menu.":"Aprobaciones pendientes aparecen como notificación en el menú.","Aprove em uma prova":"Aprobar en una prueba","Aprove novos usuários, altere papéis (Admin, Analista, Viewer, Estudante, Professor), gerencie organizações e exporte dados de usuários.":"Apruebe nuevos usuarios, cambie roles (Admin, Analista, Viewer, Estudiante, Profesor), gestione organizaciones y exporte datos de usuarios.","Aproveitar o turismo e abrir um bar na praia":"Aprovechar el turismo y abrir un bar en la playa",'Após a validação, os dados são "congelados" em um snapshot (diagnosis_data_snapshots) que preserva exatamente os valores usados em cada diagnóstico. O histórico nunca é sobrescrito, garantindo rastreabilidade
348completa.':'Después de la validación, los datos son "congelados" en un snapshot (diagnosis_data_snapshots) que preserva exactamente los valores usados en cada diagnóstico. El historial nunca es sobrescrito, garantizando trazabilidad completa.',"Após aprovado, você terá acesso completo ao sistema.":"Una vez aprobado, tendrá acceso completo al sistema.","Após completar o onboarding, um administrador precisa aprovar seu acesso.":"Después de completar el onboarding, un administrador necesita aprobar su acceso.","Após completar, marque como concluÃdo para avançar.":"Después de completar, marque como concluido para avanzar.","Após criar a conta, verifique seu email para ativar o acesso.":"Después de crear la cuenta, verifique su correo electrónico para activar el acceso.","Após criar sua conta, o primeiro passo é configurar seu perfil. O SISTUR usa seu perfil para personalizar a experiência e definir quais módulos você pode acessar.":"Después de crear su cuenta, el primer paso es configurar su perfil. SISTUR usa su perfil para personalizar la experiencia y definir a qué módulos puede acceder.","Após login, o sistema valida sessão, perfil, papéis e licença antes de permitir acesso à s páginas. Se ficar travado por mais de ~10 segundos, tente: (1) Hard refresh (Ctrl+Shift+R no Windows/Linux ou Cmd+Shift+R no macOS) para forçar recarregamento sem cache; (2) Limpar cookies/cache do domÃnio sistur.app e fazer login novamente; (3) Verificar sua conexão com a internet (relatórios e diagnósticos exigem chamadas ao backend). A v1.38.67 corrigiu um caso especÃfico em que o estado de sessão deslogada não inicializava corretamente, prendendo os route guards no spinner. Se o problema persistir após o refresh, contate o suporte informando a rota e o horário.":"Después de iniciar sesión, el sistema valida sesión, perfil, roles y licencia antes de permitir acceso a las páginas. Si se queda atascado por más de ~10 segundos, intente: (1) Hard refresh (Ctrl+Shift+R en Windows/Linux o Cmd+Shift+R en macOS) para forzar la recarga sin caché; (2) Limpiar cookies/caché del dominio sistur.app y volver a iniciar sesión; (3) Verificar su conexión a internet (informes y diagnósticos exigen llamadas al backend). La v1.38.67 corrigió un caso especÃfico en que el estado de sesión cerrada no inicializaba correctamente, atrapando los route guards en el spinner. Si el problema persiste después del refresh, contacte a soporte informando la ruta y la hora.",'Após matricular, a trilha aparece em "Minhas Trilhas".':'Después de inscribirse, la ruta aparece en "Mis Rutas".',"Após o cadastro, você passa pelo onboarding onde escolhe seu tipo de acesso (AnalÃtico ou EDU) e seu papel. Seu perfil é aprovado pela equipe administrativa antes de ter acesso completo.":"Después del registro, usted pasa por el onboarding donde elige su tipo de acceso (AnalÃtico o EDU) y su rol. Su perfil es aprobado por el equipo administrativo antes de tener acceso completo.","Após o encerramento, o Titular manterá os dados conforme a cláusula 4.4 e o Usuário perderá acesso imediato à Plataforma.":"Tras la finalización, el Titular conservará los datos conforme a la cláusula 4.4 y el Usuario perderá acceso inmediato a la Plataforma.",'Após preencher os indicadores, clique em "Calcular" para processar o diagnóstico.':'Después de rellenar los indicadores, haga clic en "Calcular" para procesar el diagnóstico.',"Após vinculação, o professor pode adicioná-lo a turmas (salas).":"Después de la vinculación, el profesor puede agregarlo a clases (aulas).",Araucária:"Araucaria",Arial:vG,Armadilhas:bG,Armazenamento:AG,"Arquitetura, Motor IGMA, fluxos, modelo de dados e propriedade intelectual":"Arquitectura, Motor IGMA, flujos, modelo de datos y propiedad intelectual",Arquivada:yG,Arquivado:SG,Arquivar:EG,Arquivo:CG,"Arquivo acima de 10 MB":"Archivo de más de 10 MB","Arquivo do relatório":"Archivo del informe","Arquivo muito grande":"Archivo demasiado grande","Arquivo muito grande. Máximo 10MB.":"Archivo demasiado grande. Máximo 10MB.","Arquivo rejeitado":"Archivo rechazado","Arquivo vazio.":"Archivo vacÃo.","Arquivos declarados inexistentes ({{v0}})":"Archivos declarados inexistentes ({{v0}})","Arquivos-chave":"Archivos clave","Arranjo Organizacional":"Estructura Organizacional","Arraste arquivos aqui ou clique para selecionar":"Arrastre ar
348chivos aquà o haga clic para seleccionar","Arraste e solte um arquivo JSON ou CSV aqui, ou use o botão":"Arrastre y suelte un archivo JSON o CSV aquÃ, o use el botón","Arraste o CSV aqui ou clique para selecionar":"Arrastre el CSV aquà o haga clic para seleccionar","Arraste para reordenar fases e tarefas.":"Arrastre para reordenar fases y tareas.",Arriscadas:TG,"As 4 Barras Vitais":"Las 4 Barras Vitales","As 6 Regras do Motor IGMA":"Las 6 Reglas del Motor IGMA","As 6 regras sistêmicas que governam recomendações e bloqueios":"Las 6 reglas sistémicas que rigen recomendaciones y bloqueos","As 6 regras são aplicadas sequencialmente. Cada regra pode ativar flags que afetam ações permitidas:":"Las 6 reglas se aplican secuencialmente. Cada regla puede activar flags que afectan las acciones permitidas:","As abelhas são responsáveis pela polinização de cerca de 75% das culturas agrÃcolas.":"Las abejas son responsables de la polinización de cerca del 75% de los cultivos agrÃcolas.","As alterações foram salvas":"Los cambios fueron guardados","As autoridades demoram. Quando chegam, o dano já é grande.":"Las autoridades tardan. Cuando llegan, el daño ya es grande.","As carvoarias se multiplicam. A caatinga desaparece rapidamente, o solo fica exposto e a erosão acelera. Uma tempestade de areia cobre a vila â algo nunca visto antes.":"Las carboneras se multiplican. La caatinga desaparece rápidamente, el suelo queda expuesto y la erosión se acelera. Una tormenta de arena cubre el pueblo â algo nunca visto antes.","As compensações criam uma área de preservação, mas o resort continua poluindo. Os moradores estão divididos entre emprego e meio ambiente.":"Las compensaciones crean un área de preservación, pero el resort sigue contaminando. Los habitantes están divididos entre empleo y medio ambiente.","As comunidades vizinhas migram em massa. A seca e o desmatamento tornaram suas terras inabitáveis. Refugiados climáticos chegam ao seu projeto.":"Las comunidades vecinas migran en masa. La sequÃa y la deforestación han hecho sus tierras inhabitables. Refugiados climáticos llegan a su proyecto.","As crianças aprendem com a natureza! ð¥¬":"¡Los niños aprenden con la naturaleza! ð¥¬","As fotos fizeram sucesso, mas o animal fugiu!":"¡Las fotos fueron un éxito, pero el animal escapó!","As matas ciliares são restauradas. As águas fluem com mais força.":"Los bosques de ribera son restaurados. Las aguas fluyen con más fuerza.","As nascentes são a vida do cerrado. Protegê-las é proteger tudo.":"Los manantiales son la vida del cerrado. Protegerlos es proteger todo.","As prescrições são geradas automaticamente quando um indicador apresenta status Atenção ou CrÃtico. O Motor IGMA pode bloquear certas prescrições (ex: cursos de OE quando RA está crÃtico). O curso prescrito deve corresponder ao pilar do indicador e à interpretação territorial identificada.":"Las prescripciones se generan automáticamente cuando un indicador presenta estado Atención o CrÃtico. El Motor IGMA puede bloquear ciertas prescripciones (ej: cursos de OE cuando RA está crÃtico). El curso prescrito debe corresponder al pilar del indicador y a la interpretación territorial identificada.","As recomendações consideram seus interesses, nÃvel e disponibilidade.":"Las recomendaciones consideran sus intereses, nivel y disponibilidad.","As senhas não coincidem":"Las contraseñas no coinciden","As trilhas mostram o impacto do turismo sem controle. Plantas raras são pisoteadas, nascentes contaminadas e o barulho afasta a fauna.":"Los senderos muestran el impacto del turismo sin control. Plantas raras son pisoteadas, manantiales contaminados y el ruido ahuyenta la fauna.","As trilhas são sequências de treinamentos organizados por tema ou pilar (RA, OE, AO). Cada trilha contém múltiplos módulos com vÃdeos, materiais e avaliações. Você pode acompanhar seu progresso e receber certificado ao concluir.":"Las rutas son secuencias de entrenamientos organizados por tema o pilar (RA, OE, AO). Cada ruta contiene múltiples módulos con videos, materiales y evaluaciones. Puede seguir su progreso y recibir un certificado al concluir.","As áreas cercadas se tornam refúgios de biodiversidade. Espécies raras reaparecem. A caatinga demonstra
348sua incrÃvel capacidade de regeneração.":"Las áreas cercadas se convierten en refugios de biodiversidad. Especies raras reaparecen. La caatinga demuestra su increÃble capacidad de regeneración.","As áreas de altitude são restauradas. Espécies endêmicas retornam. A serra se candidata a Reserva da Biosfera da UNESCO.":"Las áreas de altitud son restauradas. Especies endémicas regresan. La sierra se postula a Reserva de la Biósfera de la UNESCO.","As árvores protegeram o solo! Boa escolha! ð":"¡Los árboles protegieron el suelo! ¡Buena elección! ð",Assentos:PG,"Assinar agora":"Suscribirse ahora","Assinatura (online ou manual pelo admin)":"Firma (online o manual por el admin)","Assinatura atualizada":"Suscripción actualizada","Assinatura desbloqueia módulos completos":"Suscripción desbloquea módulos completos","Assinatura registrada":"Suscripción registrada",Assinaturas:RG,"Assinaturas ativas e históricas":"Suscripciones activas e históricas","Assinaturas mensais: cartão de crédito, com renovação automática. Créditos avulsos do Professor Beni: cartão ou Pix. Valores em reais (BRL); faturas ficam em Gerenciar conta.":"Suscripciones mensuales: tarjeta de crédito, con renovación automática. Créditos individuales del Profesor Beni: tarjeta o Pix. Valores en reales (BRL); facturas quedan en Gestionar cuenta.","Assista os vÃdeos em sequência â muitos conteúdos são complementares.":"Mire los videos en secuencia â muchos contenidos son complementarios.","Assistente virtual baseado na metodologia sistêmica do turismo":"Asistente virtual basado en la metodologÃa sistémica del turismo","Assistir capacitações":"Ver capacitaciones","Associação hoteleira local, ABIH regional ou pesquisa de oferta hoteleira. Taxa média anual.":"Asociación hotelera local, ABIH regional o encuesta de oferta hotelera. Tarifa media anual.","Associe a imagem à descrição correta":"Asocie la imagen a la descripción correcta","Associe criaturas marinhas e seus habitats":"Asocie criaturas marinas y sus hábitats",Assunto:xG,"Assédio ou bullying":"Acoso o bullying","Atalho para novo diagnóstico":"Acceso directo para nuevo diagnóstico",Atenção:"Atención","Atenção Necessária":"Atención Necesaria","Atenção:":"Atención:","Atenção: Algumas questões não foram respondidas!":"Atención: ¡Algunas preguntas no fueron respondidas!","Atenção: Alguns indicadores merecem monitoramento":"Atención: Algunos indicadores merecen seguimiento","Atenção: pontuação 34â66% â dispara prescrições EDU e plano de ação.":"Atención: puntuación 34â66% â dispara prescripciones EDU y plan de acción.","Atenção: restam apenas 2 minutos para finalizar o exame!":"Atención: ¡solo quedan 2 minutos para finalizar el examen!","Atingiram meta":"Alcanzaron la meta",Ativa:wG,"Ativar brigadistas e satélites para combater o fogo":"Activar brigadistas y satélites para combatir el fuego","Ativar respostas por voz":"Activar respuestas por voz","Ativar som":"Activar sonido","Ative o modo demo para demonstrações com dados fictÃcios.":"Active el modo demo para demostraciones con datos ficticios.","Ative ou desative treinamentos no catálogo.":"Active o desactive entrenamientos en el catálogo.","Ative para incluir comparação com a rodada anterior do mesmo destino.":"Active para incluir una comparación con la ronda anterior del mismo destino.","Ative para visualizar dados de demonstração com diagnósticos completos":"Active para visualizar datos de demostración con diagnósticos completos","Ative/desative proteção anti-cola (tab switch detection).":"Active/desactive protección anti-trampas (tab switch detection).","Atividade Recente":"Actividad Reciente","Atividade atribuÃda!":"¡Actividad asignada!","Atividade não encontrada.":"Actividad no encontrada.",Atividades:IG,"Atividades aparecem aqui assim que o professor as cria. Provas só podem ser iniciadas dentro da janela de disponibilidade.":"Las actividades aparecen aquà tan pronto como el profesor las crea. Las pruebas solo pueden iniciarse dentro de la ventana de disponibilidad.",Ativo:DG,"Ativo (usado nos relatórios)":"Activo (usado en los informes)","Ativo:":"Activo:",Ativos:OG,"Ativos (7d)":"Activos (7d)","Ativos 7d":"Activos 7d","Atol das Rocas":"Atol das Rocas","Atrair pelo menos 200 visitantes":"Atraer al menos 200 visitantes",Atrasado:MG,Atrasados:NG,"Atração TurÃstica":"Atracción TurÃstica","Atribua trilhas, capacitações, provas ou conteúdo próprio à s salas. Defina datas de disponibilidade e prazos de entrega para cada atividade.":"Asigne rutas, capacitaciones, exámenes o contenido propio a las aulas. Defina fechas de disponibilidad y plazos de entrega para cada actividad.","Atribua trilhas, capacitações, provas ou conteúdo próprio à s suas salas. Defina prazos e acompanhe a conclusão.":"Asigne rutas, capacitaciones, pruebas o contenido propio a sus aulas. Defina plazos y siga la conclusión.",Atribuir:zG,"Atribuir a um membro da organização...":"Asignar a un miembro de la organización...","Atribuir atividade":"Asignar actividad","Atribuir responsável":"Asignar responsable","Atribuir responsável (opcional)":"Asignar responsable (opcional)","Atribuição RACI adicionada":"Asignación RACI añadida","Atribuição de Conteúdo":"Asignación de Contenido",Atribuições:"Atribuciones","Atribuições RACI":"Asignaciones RACI",Atual:jG,Atualizada:kG,"Atualizado em":"Actualizado el","Atualizando...":"Actualizando...",Atualizar:_G,"Atualizar Regras":"Actualizar Reglas","Atualizar Senha":"Actualizar Contraseña","Atualizar recomendações":"Actualizar recomendaciones","Atualizar usuários":"Actualizar usuarios","Atualização automática a cada 15s â¢":"Actualización automática cada 15s â¢","Atualização trimestral":"Actualización trimestral","Atualize as informações da fase":"Actualice la información de la fase","Atualize as informações da tarefa":"Actualice la información de la tarea","Atualize as informações do destino turÃstico.":"Actualice la información del destino turÃstico.","Atualize as informações do marco":"Actualice la información del hito","Atualize as informações do módulo":"Actualice la información del módulo","Atualize as informações do projeto":"Actualiza la información del proyecto","Atualize os dados da organização":"Actualice los datos de la organización","Atualize os dados do treinamento":"Actualiza los datos de la capacitación","Atualize para um plano para não perder o acesso.":"Actualice a un plan para no perder el acceso.","Até 5 endereços, separados por vÃrgula.":"Hasta 5 direcciones, separadas por coma.","Até uma data":"Hasta una fecha","Audit logging de todas as operações crÃticas":"Registro de auditorÃa de todas las operaciones crÃticas","Auditoria concluÃda.":"AuditorÃa concluida.","Auditoria semântica de relatório":"AuditorÃa semántica de informe",Audiência:"Audiencia",Aula:qG,"Aula ao vivo":"Clase en vivo","Aulas / Conteúdos":"Clases / Contenidos","Aumenta o volume de água":"Aumenta el volumen de agua","Aumento da temperatura dos oceanos":"Aumento de la temperatura de los océanos","Aumento da temperatura média da Terra por gases estufa":"Aumento de la temperatura media de la Tierra por gases de efecto invernadero","Aumento das chuvas":"Aumento de las lluvias","Aumento médio da temperatura da Terra":"Aumento promedio de la temperatura de la Tierra","Ausência de Plano Municipal de Turismo":"Ausencia de Plan Municipal de Turismo",Autenticação:"Autenticación","Autenticação necessária para acessar o vÃdeo":"Autenticación necesaria para acceder al video","Autenticação obrigatória com verificação de e-mail"
348:"Autenticación obligatoria con verificación de e-mail","Autenticação, onboarding e termos de uso":"Autenticación, onboarding y términos de uso","Auth, perfis, licenciamento e infraestrutura compartilhada":"Auth, perfiles, licenciamiento e infraestructura compartida",Auto:LG,"Auto-correção determinÃstica contra":"Autocorrección determinista contra","Auto-correção numérica determinÃstica":"Autocorrección numérica determinista","Autofix â Conferência de dados":"Autofix â Verificación de datos","Automação parcial e fallback manual:":"Automatización parcial y fallback manual:",Automática:"Automática",Automático:"Automático","Automático (Alta)":"Automático (Alta)",Automáticos:"Automáticos",Autor:UG,Autônomo:"Autónomo","Avaliados pela metodologia SISTUR de Mario Carlos Beni":"Evaluados por la metodologÃa SISTUR de Mario Carlos Beni",Avaliação:"Evaluación","Avaliação 3 pilares (RA/OE/AO), rodadas, importação de dados":"Evaluación 3 pilares (RA/OE/AO), rondas, importación de datos","Avaliação Gratuita":"Evaluación Gratuita","Avaliação SISTUR (Mario Beni)":"Evaluación SISTUR (Mario Beni)","Avaliação enviada!":"¡Evaluación enviada!","Avaliação gratuita por consumo":"Evaluación gratuita por consumo","Avaliação individual, não competitiva":"Evaluación individual, no competitiva","Avaliação por uso":"Evaluación por uso",Avaliações:"Evaluaciones","Avaliações Online (Google / TripAdvisor / Booking)":"Evaluaciones Online (Google / TripAdvisor / Booking)","Avaliações rápidas trimestrais":"Evaluaciones rápidas trimestrales","Avalie a existência e atuação de conselhos participativos (COMTUR, Instância de Governança). Escala de 1 (inexistente) a 5 (muito ativo).":"Evalúe la existencia y actuación de consejos participativos (COMTUR, Instancia de Gobernanza). Escala de 1 (inexistente) a 5 (muy activo).","Avalie a performance e sustentabilidade do seu empreendimento.":"Evalúe el desempeño y la sostenibilidad de su emprendimiento.","Avalie destinos turÃsticos usando a metodologia de Mario Beni":"Evalúe destinos turÃsticos usando la metodologÃa de Mario Beni",Avançado:"Avanzado","Avançar na carreira":"Avanzar en la carrera profesional",Avatares:BG,"Avatares e temas desbloqueáveis pelo seu progresso":"Avatares y temas desbloqueables según tu progreso","Ave ameaçada de extinção que depende de palmeiras":"Ave amenazada de extinción que depende de palmeras","Ave de rapina que controla populações de roedores":"Ave de rapiña que controla poblaciones de roedores","Ave icônica dos mangues cuja cor vem dos crustáceos":"Ave icónica de los manglares cuyo color proviene de los crustáceos","Aventura carregada! ð®":"¡Aventura cargada! ð®","Aviso de Privacidade:":"Aviso de Privacidad:",Avisos:FG,"Avisos IGMA":"Avisos IGMA","Avisos determinÃsticos ({{v0}})":"Advertencias determinÃsticas ({{v0}})",Award:GG,Ação:"Acción","Ação Contra a Mudança Global do Clima":"Acción Contra el Cambio Climático Global","Ação Recomendada: Upgrade de Instância":"Acción Recomendada: Actualización de Instancia","Ação Rápida":"Acción Rápida",Ações:"Acciones","Ações Operacionais":"Acciones Operativas","Ações Operacionais (AO)":"Acciones Operacionales (AO)","Ações Operacionais (IAO)":"Acciones Operativas (IAO)","Ações Operacionais (execução)":"Acciones Operativas (ejecución)","Ações Permitidas (quando pilares saudáveis)":"Acciones Permitidas (cuando los pilares son saludables)","Ações bloqueadas:":"Acciones bloqueadas:","Ações sobre licenças":"Acciones sobre licencias",Aérea:"Aérea","BANDS (Faixas)":"BANDS (Rangos)",BASICO:VG,"BENI, Mario Carlos.":"BENI, Mario Carlos.","BENI, Mario Carlos. Análise Estrutural do Turismo. São Paulo: Editora Senac São Paulo, 2001.":"BENI, Mario Carlos. Análisis Estructural del Turismo. São Paulo: Editora Senac São Paulo, 2001.","BENI, Mario Carlos. Globalização do Turismo: Megatendências do Setor e a Realidade Brasileira. São Paulo: Aleph, 2003.":"BENI, Mario Carlos. Globalización del Turismo: Megatendencias del Sector y la Realidad Brasileña. São Paulo: Aleph, 2003.","BENI, Mario Carlos. PolÃtica e Planejamento de Turismo no Brasil. São Paulo: Aleph, 2006.":"BENI, Mario Carlos. PolÃtica y Planificación del Turismo en Brasil. São Paulo: Aleph, 2006.","BINARY (Sim/Não)":"BINARY (SÃ/No)","Backbone de legitimidade e governança municipal":"Backbone de legitimidad y gobernanza municipal","Backend â Configurações Avançadas â Upgrade de Instância":"Backend â Configuraciones Avanzadas â Upgrade de Instancia",Backlog:$G,Badge:HG,"Badge atualizada":"Insignia actualizada","Badge criada":"Insignia creada","Badge removida":"Insignia eliminada",Badges:WG,"Badges concedidas":"Insignias otorgadas","Badges mais conquistadas":"Insignias más obtenidas",Baixa:
348QG,"Baixa (predominantemente baixa temporada)":"Baja (predominantemente temporada baja)","Baixa um .txt com manifesto + código completo + migrations deste módulo":"Descarga un .txt con manifiesto + código completo + migrations de este módulo",Baixar:KG,"Baixar Template CSV":"Descargar Plantilla CSV","Baixar em Word":"Descargar en Word","Baixar modelo":"Descargar modelo","Baixar template":"Descargar plantilla",Baixas:YG,"Baixe o certificado em PDF para impressão ou compartilhamento.":"Descargue el certificado en PDF para imprimir o compartir.",Baixo:JG,"Baixo custo de coleta de dados":"Bajo costo de recolección de datos","Baixo impacto no pilar":"Bajo impacto en el pilar",Ban:XG,"Banco de Dados":"Base de Datos","Banco de Questões":"Banco de Preguntas","Banco de Sementes":"Banco de Semillas","Banco de questões":"Banco de preguntas","Banheiros Adaptados":"Baños Adaptados","Banner de validação cruzada sempre exibido (limpo, com avisos ou auto-corrigido).":"Banner de validación cruzada siempre visible (limpio, con advertencias o autocorregido).","Barra lateral: navegação entre os módulos disponÃveis (AnalÃtico, EDU, Empresarial, Observatório, Fórum, Configurações).":"Barra lateral: navegación entre los módulos disponibles (AnalÃtico, EDU, Empresarial, Observatorio, Foro, Configuración).","Barras ⥠50":"Barras ⥠50","Base URL":"Base URL","Base URL (opcional)":"Base URL (opcional)","Base cientÃfica robusta":"Base cientÃfica robusta","Base de Conhecimento":"Base de Conocimiento","Base de Conhecimento e Referências Globais":"Base de Conocimiento y Referencias Globales","Base de dados e schema: 40+ tabelas com polÃticas de segurança":"Base de datos y esquema: más de 40 tablas con polÃticas de seguridad","Base do sistema turÃstico. Engloba recursos naturais, patrimônio cultural, qualidade ambiental e sustentabilidade.":"Base del sistema turÃstico. Engloba recursos naturales, patrimonio cultural, calidad ambiental y sostenibilidad.","Base teórica injetada no contexto":"Base teórica inyectada en el contexto","Baseado na Análise Estrutural do Turismo do Prof. Mario Carlos Beni":"Basado en el Análisis Estructural del Turismo del Prof. Mario Carlos Beni","Baseado nos princÃpios sistêmicos do Prof. Mario Beni":"Basado en los principios sistémicos del Prof. Mario Beni",Baseline:ZG,"Baseline registrado na criação do projeto vs score atual do diagnóstico vinculado.":"LÃnea base registrada al crear el proyecto vs puntuación actual del diagnóstico vinculado.","Bases Públicas":"Bases Públicas","Bases públicas: IDH, IDEB, Leitos hospitalares, Cobertura de saúde, Receita própria, Despesa com turismo":"Bases públicas: IDH, IDEB, Camas hospitalarias, Cobertura de salud, Ingresos propios, Gasto en turismo","Beleza e ecologia na água!":"¡Belleza y ecologÃa en el agua!","Bem feito!":"¡Bien hecho!","Bem-vindo":"Bienvenido","Bem-vindo ao Diagnóstico Enterprise":"Bienvenido al Diagnóstico Enterprise","Bem-vindo ao Guardião do Território!":"¡Bienvenido a Guardián del Territorio!","Bem-vindo ao SISTUR!":"¡Bienvenido a SISTUR!","Bem-vindo à Missão Bioma!":"¡Bienvenido a Misión Bioma!","Benchmark / Referência":"Benchmark / Referencia","Benchmark competitivo via Booking, TripAdvisor e Google":"Benchmark competitivo vÃa Booking, TripAdvisor y Google","Benchmark interno ({{v0}} empreendimentos)":"Benchmark interno ({{v0}} empresas)","Benchmark setorial â {{v0}}":"Benchmark sectorial â {{v0}}","Benchmarking regional privado entre municÃpios membros.":"Benchmarking regional privado entre municipios miembros.","BenefÃcio de isenção":"Beneficio de exención",BenefÃcios:"Beneficios",Beni:eV,"Berçário Marinho":"Vivero Marino","Berçário de espécies marinhas":"Vivero de especies marinas",Beta:aV,Bibliografia:oV,"Bibliografia básica":"BibliografÃa básica","Bibliografia complementar":"BibliografÃa complementaria",Biblioteca:iV,"Biblioteca de Módulos":"Biblioteca de Módulos",Binário:"Binario","Binário (0 ou 1)":"Binario (0 o 1)","Binário (sim/não)":"Binario (sÃ/no)",Biodiversidade:tV,"Biodiversidade é a variedade de formas de vida em um ecossistema.":"Biodiversidad es la variedad de formas de vida en un ecosistema.","Bioindicador que só cresce em ambientes não poluÃdos":"Bioindicador que solo crece en ambientes n
348o contaminados","Bioma costeiro com alta biodiversidade":"Bioma costero con alta biodiversidad",Bloqueadas:rV,Bloqueado:sV,"Bloqueado neste nÃvel":"Bloqueado en este nivel","Bloquear Acesso":"Bloquear Acceso","Bloquear automaticamente imagens que não passam na moderação":"Bloquear automáticamente imágenes que no pasan la moderación","Bloqueia EDU_OE + Marketing":"Bloquea EDU_OE + Marketing","Bloqueia EDU_OE e MARKETING":"Bloquea EDU_OE y MARKETING","Bloqueia conteúdo explÃcito e violento":"Bloquea contenido explÃcito y violento","Bloqueio suave":"Bloqueo suave","Bloqueios (quando pilares crÃticos)":"Bloqueos (cuando los pilares son crÃticos)","Boa governança e decisões inteligentes!":"¡Buena gobernanza y decisiones inteligentes!","Boa sorte, agente restaurador! ð":"¡Buena suerte, agente restaurador! ð","Boa sorte, ecologista! ð":"¡Buena suerte, ecologista! ð","Boa sorte, explorador ecológico! ð":"¡Buena suerte, explorador ecológico! ð","Boa sorte, guardião! âï¸ð":"¡Buena suerte, guardián! âï¸ð","Boletim Detalhado":"BoletÃn Detallado","Boletim consolidado dos seus cursos, exames e certificados":"Informe consolidado de tus cursos, exámenes y certificados",Bom:nV,"Bomba de Sementes":"Bomba de Semillas","Booking + Expedia + TripAdvisor":"Booking + Expedia + TripAdvisor","Booking + Expedia + site próprio + 3 agências + Instagram = 7 canais":"Booking + Expedia + sitio propio + 3 agencias + Instagram = 7 canales","Booking + TripAdvisor + Google":"Booking + TripAdvisor + Google","Booking + TripAdvisor + Google (nota, volume, sentimento, NPS)":"Booking + TripAdvisor + Google (puntuación, volumen, sentimiento, NPS)","BrasilAPI / Receita Federal":"BrasilAPI / Administración Tributaria Federal","Brigada comunitária de combate":"Brigada comunitaria de combate","Brigada de Incêndio":"Brigada contra Incendios","Brigadistas voluntários protegem a floresta.":"Brigadistas voluntarios protegen el bosque.",Bug:cV,"Bug reportado com sucesso!":"¡Bug reportado con éxito!",Bugs:dV,"Buracos na Estrada":"Agujeros en la Carretera","Busca concluÃda!":"¡Búsqueda completada!","Busca dados mais recentes via scraping do portal oficial. Se falhar, usa CSVs do CKAN como fallback.":"Busca datos más recientes vÃa scraping del portal oficial. Si falla, usa CSVs de CKAN como fallback.","Busca de Reviews Online":"Búsqueda de Reviews Online","Busca equilibrar crescimento econômico, justiça social e preservação ambiental.":"Busca equilibrar crecimiento económico, justicia social y preservación ambiental.","Busca pública + Receita Federal (BrasilAPI)":"Búsqueda pública + Hacienda (BrasilAPI)","Busca pública e mÃdia (Auto)":"Búsqueda pública y medios (Automática)","Busca pública na web (5 dimensões)":"Búsqueda pública en la web (5 dimensiones)","Busca registros públicos de reclamações no Reclame Aqui e menções no Procon para preencher reputação pública e taxa de solução.":"Busca registros públicos de reclamaciones en Reclame Aquà y menciones en Procon para rellenar reputación pública y tasa de solución.","Busca:":"Búsqueda:","Buscando detalhes do treinamento":"Buscando detalles de la capacitación","Buscando e extraindo eventosâ¦":"Buscando y extrayendo eventosâ¦","Buscando informações do exame":"Buscando información del examen","Buscando revisão do exame":"Buscando revisión del examen","Buscando...":"Buscando...","Buscando:":"Buscando:","Buscar CNPJ a partir do nome do empreendimento":"Buscar CNPJ a partir del nombre de la empresa","Buscar Concorrentes":"Buscar Competidores","Buscar Dados":"Buscar Datos","Buscar MunicÃpios IBGE":"Buscar Municipios IBGE","Buscar Reclamações":"Buscar Quejas","Buscar Reviews":"Buscar Reseñas","Buscar agora":"Buscar ahora","Buscar apoio de ONGs e iniciar projeto de restauração":"Buscar apoyo de ONGs e iniciar proyecto de restauración","Buscar apoio de ONGs e organizações internacionais":"Buscar apoyo de ONGs y organizaciones internacionales","Buscar apoio externo de ONGs ambientais":"Buscar apoyo externo de ONGs ambientales","Buscar arquivo...":"Bu
348scar archivo...","Buscar certificados...":"Buscar certificados...","Buscar conversas":"Buscar conversaciones","Buscar cursos...":"Buscar cursos...","Buscar destino...":"Buscar destino...","Buscar destinos...":"Buscar destinos...","Buscar diagnósticos...":"Buscar diagnósticos...","Buscar eventos do municÃpio":"Buscar eventos del municipio","Buscar gargalo...":"Buscar cuello de botella...","Buscar indicador...":"Buscar indicador...","Buscar indicadores...":"Buscar indicadores...","Buscar logs...":"Buscar logs...","Buscar marca...":"Buscar marca...","Buscar membros...":"Buscar miembros...","Buscar municÃpio...":"Buscar municipio...","Buscar no IBGE":"Buscar en el IBGE","Buscar nome ou turma...":"Buscar nombre o grupo...","Buscar online":"Buscar en lÃnea","Buscar organizações...":"Buscar organizaciones...","Buscar pessoa...":"Buscar persona...","Buscar por nome ou código...":"Buscar por nombre o código...","Buscar por nome, descrição, arquivo ou tabelaâ¦":"Buscar por nombre, descripción, archivo o tablaâ¦","Buscar por nome, e-mail ou organização":"Buscar por nombre, e-mail u organización","Buscar por nome...":"Buscar por nombre...","Buscar por tÃtulo...":"Buscar por tÃtulo...","Buscar posts...":"Buscar publicaciones...","Buscar questões...":"Buscar preguntas...","Buscar reconhecimento como Reserva da Biosfera":"Buscar reconocimiento como Reserva de la Biosfera","Buscar solicitações...":"Buscar solicitudes...","Buscar stage, mensagem, trace, jobâ¦":"Buscar stage, mensaje, trace, jobâ¦","Buscar treinamentos...":"Buscar capacitaciones...","Buscar usuário da organização...":"Buscar usuario de la organización...","Buscar usuário...":"Buscar usuario...","Buscar usuários...":"Buscar usuarios...","Buscar...":"Buscar...","Buscarâ¦":"Buscarâ¦","Busque e valide dados de fontes oficiais para preencher automaticamente os indicadores":"Busca y valida datos de fuentes oficiales para completar automáticamente los indicadores","Busque por nome do municÃpio":"Busque por nombre del municipio","Busque por nome ou email do usuário.":"Busque por nombre o correo electrónico del usuario.",Básica:"Básica",Básico:"Básico",Básicos:"Básicos","Bônus XP":"Bonificación XP","Bônus perto de":"Bonificación cerca de",CAC:lV,CADASTUR:uV,"CADASTUR (Guias / Hospedagem / Agências)":"CADASTUR (GuÃas / Hospedaje / Agencias)","CADASTUR / dados.gov.br":"CADASTUR / datos.gov.br","CADASTUR / dados.gov.br: Guias e Agências via datasets oficiais abertos":"CADASTUR / datos.gov.br: GuÃas y Agencias vÃa datasets oficiales abiertos","CADASTUR parcialmente indisponÃvel":"CADASTUR parcialmente no disponible","CADASTUR relevante":"CADASTUR relevante","CADASTUR â Cadastro de Prestadores de Serviços TurÃsticos (dados abertos). DisponÃvel em: dados.gov.br":"CADASTUR â Registro de Prestadores de Servicios TurÃsticos (datos abiertos). Disponible en: dados.gov.br","CADASTUR â Cadastro dos Prestadores de Serviços TurÃsticos (MTur)":"CADASTUR â Registro de Prestadores de Servicios TurÃsticos (MTur)","CADASTUR â Prestadores TurÃsticos":"CADASTUR â Prestadores TurÃsticos","CADASTUR:":"CADASTUR:","CADASTUR: oferta turÃstica":"CADASTUR: oferta turÃstica","CAGED â Cadastro Geral de Empregados e Desempregados (MTE)":"CAGED â Registro General de Empleados y Desempleados (MTE)",CALCULADO:mV,CERTIFICADO:pV,"CLASSIFICAÃÃO (régua oficial 5 nÃveis)":"CLASIFICACIÃN (escala oficial 5 niveles)","CNAE {{v0}}":"CNAE {{v0}}",CNPJ:gV,"CNPJ não encontrado online":"CNPJ no encontrado online","CNPJ não validado":"CNPJ no validado","CNPJ validado":"CNPJ validado",COMPLETE:hV,"CONFERÃNCIA DE DADOS â RELATÃRIO SISTUR":"CONFERENCIA DE DATOS â INFORME SISTUR",CRITICO:fV,"CRUD de destinos turÃsticos":"CRUD de destinos turÃsticos",CRÃTICO:"CRÃTICO",CSV:vV,"CSV (Excel/planilha)":"CSV (Excel/hoja de cálculo)","CSV exportado":"CSV exportado","CSV exportado com sucesso!":"CSV exportado correctamente!","CSV genérico":"CSV genérico","CSV precisa de cabeçalho + ao menos 1 linha de dados.":"CSV necesita un encabezado + al menos 1 lÃnea de datos.","CSV sem linhas de dados":"CSV sin filas de datos","CSV vazio ou inválido":"CSV vacÃo o inválido","CSVs estáticos de dados.turismo.gov.br (2013-2017)":"CSVs estáticos de datos.turismo.gov.br (2013-2017)","CTA para planos nos módulos afetados":"CTA para planes en los módulos afectados","Cabeçalho da seção (opcional)":"Encabezado de la sección (opcional)","Cabeçalho e rodapé":"Encabezado y pie de página","Cabeçalho impresso no prompt do LLM antes do conteúdo. Opcional. Ex.: 'REGRAS ANTI-ALUCINAÃÃO:'.":"Encabezado impreso en el prompt del LLM antes del contenido. Opcional. Ej.: 'REGLAS ANTI-ALUCINACIÃN:'.","Cabeçalho: tÃtulo da página, notificações, perfil e troca rápida entre organizações (para usuários multi-org).":"Encabezado: tÃtulo de la página, notificaciones, perfil y cambio rápido entre organizaciones (para usuarios multi-org).","Cache TTL:":"Cache TTL:",'Cada atividade no Painel do Professor possui um botão "Acompanhar" que abre um drill-down com KPIs (taxa de conclusão, taxa de aprovação, nota média) e o status individual de cada aluno: não iniciou, em andamento, aguarda correção, reprovado (pode tentar novamente), esgotou tentativas ou aprovado. à possÃvel filtrar por status clicando nos chips e executar ações em massa: enviar lembrete (para todos pendentes, não iniciantes ou não entregues), prorrogar o prazo da atividade ou liberar tentativas extras. Todas as ações disparam notificações automáticas para os alunos-alvo.':'Cada actividad en el Panel del Profesor tiene un botón "Seguir" que abre un drill-down con KPIs (tasa de finalización, tasa de aprobación, nota promedio) y el estado individual de cada alumno: no iniciado, en progreso, esperando corrección, reprobado (puede intentar nuevamente), agotó intentos o aprobado. Es posible filtrar por estado haciendo clic en los chips y ejecutar acciones masivas: enviar recordatorio (para todos los pendientes, no iniciados o no entregados), prorrogar el plazo de la actividad o liberar intentos adicionales. Todas las acciones dis
348paran notificaciones automáticas para los alumnos-objetivo.',"Cada ação selecionada será convertida em uma tarefa do projeto":"Cada acción seleccionada se convertirá en una tarea del proyecto","Cada bioma tem desafios e histórias completamente diferentes!":"¡Cada bioma tiene desafÃos e historias completamente diferentes!","Cada bioma tem seus próprios tesouros e perigos!":"¡Cada bioma tiene sus propios tesoros y peligros!","Cada bioma tem sua própria história e desafios únicos!":"¡Cada bioma tiene su propia historia y desafÃos únicos!","Cada carta representa um indicador ou ameaça do turismo.":"Cada carta representa un indicador o amenaza del turismo.","Cada certificado possui um QR Code e um código único que pode ser verificado na página pública de verificação. Isso permite que terceiros confirmem a autenticidade do certificado sem precisar de login.":"Cada certificado posee un QR Code y un código único que puede ser verificado en la página pública de verificación. Esto permite que terceros confirmen la autenticidad del certificado sin necesidad de iniciar sesión.","Cada certificado tem um código de verificação único.":"Cada certificado tiene un código de verificación único.","Cada diagnóstico calculado gera um snapshot imutável (diagnosis_data_snapshots) que registra:":"Cada diagnóstico calculado genera una instantánea inmutable (diagnosis_data_snapshots) que registra:","Cada escolha impacta métricas de sustentabilidade, economia e comunidade.":"Cada elección impacta métricas de sostenibilidad, economÃa y comunidad.","Cada indicador bruto é normalizado para escala 0-10 usando uma de três funções, conforme a natureza do dado:":"Cada indicador bruto se normaliza a una escala de 0-10 usando una de tres funciones, según la naturaleza del dato:","Cada indicador pertence a um nÃvel que define em quais diagnósticos ele será utilizado.":"Cada indicador pertenece a un nivel que define en qué diagnósticos se utilizará.","Cada indicador tem uma escala definida e descrição do que medir.":"Cada indicador tiene una escala definida y descripción de qué medir.","Cada indicador é classificado em uma das três Interpretações Territoriais:":"Cada indicador se clasifica en una de las tres Interpretaciones Territoriales:","Cada item abaixo busca ou aplica dados públicos para preencher o diagnóstico":"Cada elemento de abajo busca o aplica datos públicos para completar el diagnóstico","Cada organização pode ter múltiplos destinos.":"Cada organización puede tener múltiples destinos.","Cada par tem uma carta com emoji/nome e outra com a explicação sobre o tema ambiental. Associe a imagem ao conceito correto!":"Cada par tiene una carta con emoji/nombre y otra con la explicación sobre el tema ambiental. ¡Relaciona la imagen con el concepto correcto!","Cada pedaço de lixo recolhido salva um animal marinho.":"Cada pedazo de basura recogido salva un animal marino.","Cada pessoa autoriza com a própria conta SISTUR em uma tela de consentimento, e o assistente só enxerga os mesmos dados que essa pessoa vê dentro do sistema â nada de chaves fixas ou acesso cruzado entre organizações. à possÃvel revogar o acesso a qualquer momento desconectando o conector no assistente de IA.":"Cada persona autoriza con su propia cuenta SISTUR en una pantalla de consentimiento, y el asistente solo ve los mismos datos que esa persona ve dentro del sistema â nada de claves fijas o acceso cruzado entre organizaciones. Es posible revocar el acceso en cualquier momento desconectando el conector en el asistente de IA.","Cada pilar (RA, OE, AO) é calculado pela média ponderada dos seus indicadores normalizados:":"Cada pilar (RA, OE, AO) se calcula mediante el promedio ponderado de sus indicadores normalizados:","Cada pilar varia de 0 a 100. Verde (>70), Amarelo (40-70), Vermelho (<40).":"Cada pilar varÃa de 0 a 100. Verde (>70), Amarillo (40-70), Rojo (<40).","Cada plano de ação é vinculado a uma issue ou prescrição especÃfica.":"Cada plan de acción está vinculado a una incidencia o prescripción especÃfica.","Cada ponto no gráfico representa uma rodada de diagnóstico.":"Cada punto en el gráfico representa una ronda de diagnóstico.","Cada regra é injetada como bloco de texto no prompt do gerador de relatórios. Preencha os campos abaixo, ou clique em":"Cada regla se inyecta como bloque de texto en el prompt del generador de informes. Rellene los campos a continuación, o haga clic en","Cada relatório pode ter":"Cada informe puede tener","Cada solicitação mostra nome, email, organização e papel solicitado.":"Cada solicitud muestra
348nombre, correo electrónico, organización y rol solicitado.","Cada trilha agrupa várias capacitações em sequência.":"Cada ruta agrupa varias capacitaciones en secuencia.","Cada um dos três templates possui versão":"Cada una de las tres plantillas tiene una versión","Cada visão tem KPIs e gráficos especÃficos.":"Cada vista tiene KPIs y gráficos especÃficos.","Cadastre primeiro o perfil do empreendimento para liberar o checklist de conformidade.":"Registre primero el perfil del emprendimiento para habilitar la lista de verificación de conformidad.","Cadastre um novo indicador para o sistema de diagnóstico.":"Registra un nuevo indicador para el sistema de diagnóstico.",Cadastro:bV,"Cadastro com e-mail + verificação obrigatória":"Registro con e-mail + verificación obligatoria","Cadastro de destinos, inventário e CADASTUR.":"Registro de destinos, inventario y CADASTUR.","Cadastro do destino com código IBGE":"Registro del destino con código IBGE","Cadastro e Formalização no CADASTUR":"Registro y Formalización en el CADASTUR","Cadastro e gestão de perfis empresariais":"Registro y gestión de perfiles empresariales","Cadastro nacional de prestadores de serviços turÃsticos":"Registro nacional de prestadores de servicios turÃsticos","Cadastro no CADASTUR (MTur)":"Registro en el CADASTUR (MTur)","CadÃnico â Ministério do Desenvolvimento Social":"CadÃnico â Ministerio de Desarrollo Social",Cadência:"Cadencia","Calcula Próxima Revisão":"Calcula Próxima Revisión",Calculado:AV,"Calculado ({{v0}})":"Calculado ({{v0}})","Calculado a partir de fontes oficiais":"Calculado a partir de fuentes oficiales","Calculado em":"Calculado el","Calculado em:":"Calculado el:","Calculado no recálculo do diagnóstico. Procedência: derivado IBGE.":"Calculado en el recálculo del diagnóstico. Procedencia: derivado IBGE.","Calculadora de Normalização":"Calculadora de Normalización",Calculados:yV,"Calculados automaticamente a partir dos blocos acima.":"Calculados automáticamente a partir de los bloques anteriores.","Calculando diagnósticoâ¦":"Calculando diagnósticoâ¦","Calculando...":"Calculando...",Calcular:SV,"Calcular Diagnóstico":"Calcular Diagnóstico","Calcular e interpretar":"Calcular e interpretar","Calcular Ãndices":"Calcular Ãndices","Calcular Ãndices":"Calcular Ãndices","Calcule a rodada para habilitar o simulador.":"Calcula la ronda para habilitar el simulador.","Calcule a variação entre alta e baixa temporada: ((ocupação alta - ocupação baixa) ÷ ocupação média) à 100.":"Calcule la variación entre temporada alta y baja: ((ocupación alta - ocupación baja) ÷ ocupación media) à 100.","Calcule diagnósticos para ver a evolução dos pilares":"Calcule diagnósticos para ver la evolución de los pilares","Calcule: (receita de reservas diretas ÷ receita total de hospedagem) à 100. Consulte seu PMS (Property Management System) ou relatórios financeiros.":"Calcule: (ingresos de reservas directas ÷ ingresos totales de hospedaje) à 100. Consulte su PMS (Property Management System) o informes financieros.",Calendário:"Calendario","Calendário Acadêmico":"Calendario Académico","Calendário de Estudos":"Calendario de Estudios","Calendário de Eventos":"Calendario de Eventos","Calendário de eventos públicos e observatório â detecta meses de pico e padrão sazonal":"Calendario de eventos públicos y observatorio â detecta meses pico y patrón estacional","Calibre os pesos relativos dos indicadores em cada pilar. A soma por pilar deve ser 100%.":"Calibre los pesos relativos de los indicadores en cada pilar. La suma por pilar debe ser 100%.","Camada Semântica":"Capa Semántica","Camada Semântica de Relatórios":"Capa Semántica de Informes","Camada de Contexto do Relatório":"Capa de Contexto del Informe","Caminhar sobre as copas é uma experiência única.":"Caminar sobre las copas es una experiencia única.","Caminho de rios no mapa":"Camino de rÃos en el mapa","Caminho na natureza":"Camino en la naturaleza","Caminho para explorar a natureza.":"Camino para explorar la naturaleza.",Campanha:EV,"Campanha (opcional)":"Campaña (opcional)","Campanha de marketing":"Campaña de marketing","Campanha de prevenção comunitária":"Campaña de prevención comunitaria","Camping/Glamping":"Camping/Glamping","Campos de altitude e florestas nebulares são restaurados!":"¡Campos de altitud y bosques nublados son restaurados!","Campos do formulário":"Campos del formulario","Canais de Distribuição":"Canales de Distribución","Canais de Distribuição (OTAs)":"Canales de Distribución (OTAs)","Canais de irrigação":"Canales de irrigación","Canal Direto (est.)":"Canal Directo (est.)","Canal do YouTube":"Canal de YouTube","Canal: {{v0}}
348":"Canal: {{v0}}",Cancelado:CV,Cancelar:TV,"Cancelar a geração em andamento":"Cancelar la generación en curso","Cancelar edição":"Cancelar edición","Cancelar licença":"Cancelar licencia","Cancelar o plano":"Cancelar el plan","Cancelar plano":"Cancelar plan","Cancelar verificação":"Cancelar verificación","Cancelar: Revoga o acesso do usuário imediatamente.":"Cancelar: Revoca el acceso del usuario inmediatamente.","Candidatar a região a Patrimônio Natural da Humanidade":"Postular la región a Patrimonio Natural de la Humanidad","Canvas indisponÃvel":"Canvas no disponible","Cap. {{v0}} ⢠{{v1}} decisões":"Cap. {{v0}} ⢠{{v1}} decisiones","Capacidade Total de Hóspedes":"Capacidad Total de Huéspedes","Capacidade confortável":"Capacidad confortable",Capacitação:"Capacitación","Capacitação AO":"Capacitación AO","Capacitação OE":"Capacitación OE","Capacitação RA":"Capacitación RA","Capacitação da Equipe":"Capacitación del Equipo","Capacitação desconectada dos resultados de diagnóstico territorial":"Capacitación desconectada de los resultados de diagnóstico territorial","Capacitação e Treinamento":"Capacitación y Entrenamiento","Capacitação em Governança":"Capacitación en Gobernanza","Capacitação, trilhas e certificação educacional.":"Capacitación, senderos y certificación educativa.",Capacitações:"Capacitaciones","Capacitações em Ações Operacionais":"Capacitaciones en Acciones Operacionales","Capacitações em Organização Estrutural":"Capacitaciones en Organización Estructural","Capacitações em Relações Ambientais":"Capacitaciones en Relaciones Ambientales","Capacitações estruturadas baseadas nos gargalos identificados":"Capacitaciones estructuradas basadas en los cuellos de botella identificados","Capacitações vinculadas":"Capacitaciones vinculadas","Captação de luz do sol para gerar eletricidade limpa":"Captación de luz solar para generar electricidad limpia","Captação de recursos em editais públicos":"Captación de recursos en convocatorias públicas","Captura automática de até 5 concorrentes em":"Captura automática de hasta 5 competidores en","Captura que respeita limites de reprodução das espécies":"Captura que respeta los lÃmites de reproducción de las especies","CapÃtulo {{v0}}":"CapÃtulo {{v0}}",Caracteres:PV,"Caranguejo-uçá":"Cangrejo-uçá","Cards de estatÃsticas mostram total de projetos, tarefas e conclusões.":"Tarjetas de estadÃsticas muestran total de proyectos, tareas y conclusiones.","Carga Horária":"Carga Horaria","Carga Horária:":"Carga Horaria:","Carga horária":"Carga horaria","Carga horária prática (h)":"Carga horaria práctica (h)","Carga horária teórica (h)":"Carga horaria teórica (h)","Cargo/Função (opcional)":"Cargo/Función (opcional)","Carregando Diagnóstico":"Cargando Diagnóstico","Carregando camada semânticaâ¦":"Cargando capa semánticaâ¦","Carregando configurações de acesso...":"Cargando configuraciones de acceso...","Carregando configuraçõesâ¦":"Cargando configuracionesâ¦","Carregando contexto do relatórioâ¦":"Cargando contexto del informeâ¦","Carregando contextosâ¦":"Cargando contextosâ¦","Carregando dados do diagnóstico...":"Cargando datos del diagnóstico...","Carregando destino...":"Cargando destino...","Carregando diagnóstico...":"Cargando diagnóstico...","Carregando estrutura do relatórioâ¦":"Cargando estructura del informeâ¦","Carregando estruturasâ¦":"Cargando estructurasâ¦","Carregando guia de integraçãoâ¦":"Cargando guÃa de integraciónâ¦","Carregando histórico...":"Cargando historial...","Carregando indicadores...":"Cargando indicadores...","Carregando marcas...":"Cargando marcas...","Carregando perfil...":"Cargando perfil...","Carregando planosâ¦":"Cargando planesâ¦","Carregando solicitaçãoâ¦":"Cargando solicitudâ¦","Carregando treinamentos...":"Cargando capacitaciones...","Carregando usuários...":"Cargando usuarios...","Carregando valor atualâ¦":"Cargando valor actualâ¦","Carregando...":"Cargando...","Carregandoâ¦":"Cargandoâ¦","Carregar Arquivo":"Cargar Archivo","Carregar Contexto":"Cargar Contexto","Carregar mais":"Cargar más","Carregar relatório salvo":"Cargar informe guardado","Carros poluem, mas são rápidos.":"Los coches contaminan, pero son rápidos.","Carta de
348scartada (+1ð°)":"Carta descartada (+1ð°)","Carta inválida.":"Carta inválida.","Carta jogada! ð":"¡Carta jugada! ð","Cartas jogadas ficam no campo â planeje sua formação!":"¡Las cartas jugadas permanecen en el campo â planifica tu formación!","Cartas jogadas:":"Cartas jugadas:","Cartas lendárias são poderosas â escolha com sabedoria!":"¡Las cartas legendarias son poderosas â elige con sabidurÃa!","Cartas no deck":"Cartas en el mazo","Cartas usadas permanentemente":"Cartas usadas permanentemente",Carvão:"Carbón",Cascata:RV,"Caso os termos sejam atualizados, será necessário aceitar novamente.":"En caso de que los términos sean actualizados, será necesario aceptarlos nuevamente.","Casos de uso":"Casos de uso",Categoria:xV,"Categoria (Estrelas)":"CategorÃa (Estrellas)","Categoria de carta desconhecida.":"CategorÃa de carta desconocida.","Categoria {{v0}}":"CategorÃa {{v0}}","Categoria/letra (ex: A, B, C, D).":"CategorÃa/letra (ej: A, B, C, D).",Categorias:wV,"Categorias Empresarial":"CategorÃas Empresariales","Categorias: Performance Financeira, Experiência do Hóspede, Operações, Sustentabilidade, Recursos Humanos, Marketing & Distribuição,
348Compliance & Segurança.":"CategorÃas: Desempeño Financiero, Experiencia del Huésped, Operaciones, Sostenibilidad, Recursos Humanos, Marketing & Distribución, Cumplimiento & Seguridad.",Categorização:"Categorización","Categorização A, B, C, D, E dos municÃpios turÃsticos":"Categorización A, B, C, D, E de los municipios turÃsticos","Categórico (letras)":"Categórico (letras)",Catálogo:"Catálogo","Catálogo & Trilhas":"Catálogo & Senderos","Catálogo Completo":"Catálogo Completo","Catálogo Unificado com Indicadores Compartilhados":"Catálogo Unificado con Indicadores Compartidos","Catálogo de Badges":"Catálogo de Insignias","Catálogo de Cursos":"Catálogo de Cursos","Catálogo de Treinamentos":"Catálogo de Capacitaciones","Catálogo de cursos e lives baseado em diagnóstico IGMA":"Catálogo de cursos y transmisiones en vivo basado en el diagnóstico IGMA","Catálogo educacional: cursos, trilhas e lives disponÃveis.":"Catálogo educativo: cursos, rutas y lives disponibles.","Catálogo interno dos blocos funcionais do SISTUR â copie paths, tabelas ou o manifesto JSON completo para reutilizar em outros projetos.":"Catálogo interno de los bloques funcionales de SISTUR â copie rutas, tablas o el manifiesto JSON completo para reutilizar en otros proyectos.","Catálogo vigente":"Catálogo vigente","Catálogo único, o mesmo exibido em /assinatura e /planos.":"Catálogo único, el mismo exhibido en /suscripción y /planes.","Causa assoreamento e seca":"Causa sedimentación y sequÃa","Caça ao Tesouro Ecológico":"Búsqueda del Tesoro Ecológico","Caça ao Tesouro Ecológico!":"¡Búsqueda del Tesoro Ecológico!","Caça ao Tesouro: Explore grades e resolva enigmas.":"Búsqueda del Tesoro: Explore cuadrÃculas y resuelva enigmas.","Caça ao Tesouro: exploração de mapa com charadas sobre sustentabilidade":"Búsqueda del Tesoro: exploración de mapa con acertijos sobre sostenibilidad","Caça ao tesouro com mapas procedurais":"Búsqueda del tesoro con mapas procedurales","Caça ilegal":"Caza ilegal","Ceder à s ameaças e ir embora":"Ceder a las amenazas e irse","Centro Comunitário":"Centro Comunitario","Centros comunitários fortalecem laços sociais.":"Los centros comunitarios fortalecen los lazos sociales.","Centros de atendimento ao turista, banheiros públicos, postos de saúde próximos a atrativos. Fonte: Secretaria de Turismo. Periodicidade: anual.":"Centros de atención al turista, baños públicos, centros de salud cercanos a atractivos. Fuente: SecretarÃa de Turismo. Periodicidad: anual.","Centros de pesquisa":"Centros de investigación","Cenário salvo":"Escenario guardado","Cenários salvos":"Escenarios guardados","Cenários são baseados em situações reais do turismo brasileiro.":"Los escenarios se basan en situaciones reales del turismo brasileño.","Cerrado Sem Veneno":"Cerrado Sin Veneno",Certificado:IV,"Certificado Inválido":"Certificado Inválido","Certificado Não Encontrado":"Certificado No Encontrado","Certificado Válido":"Certificado Válido","Certificado de Conclusão":"Certificado de Finalización","Certificado emitido com sucesso":"Certificado emitido con éxito","Certificado emitido em conformidade com o Art. 32 da LDB (Lei nº 9.394/96) e Resolução CNE/CES nº 1/2001 para cursos de extensão e capacitação profissional.":"Certificado emitido de conformidad con el Art. 32 de la LDB (Ley nº 9.394/96) y Resolución CNE/CES nº 1/2001 para cursos de extensión y capacitación profesional.","Certificado não encontrado":"Certificado no encontrado","Certificado não encontrado ou inválido":"Certificado no encontrado o inválido","Certificado verificável em:":"Certificado verificable en:",Certificados:DV,"Certificados Ativos":"Certificados Activos","Certificados com QR code e verificação pública":"Certificados con código QR y verificación pública","Certificados de conclusão de cursos e trilhas":"Certificados de finalización de cursos y rutas de aprendizaje","Certificados digitais com QR code e verificação pública via URL única":"Certificados digitales con código QR y verificación pública vÃa URL única","Certificados emitidos":"Certificados emitidos","Certificados emitidos pela Plataforma são validados por código de verificação único e representam a conclusão real dos módulos correspondentes. Qualquer tentativa de fraude resultará na revogação imediata do certificado.":"Los certificados emitidos por la Plataforma son validados por un código de verificación único y representan la conclusión real de los módulos correspondientes. Cualquier intento de fraude resultará en la revocación inmediata del certificado.","Certificados por Pilar":"Certificados por Pilar","Certificados que representam redução de emissões":"Certificados que representan reducción de emisiones","Certificados são emitidos automaticamente após conclusão.":"Los certificados se emiten automáticamente tras la conclusión.","Certificamos que":"Certificamos que",Certificação:"Certificación","Certificação Digital":"Certificación Digital","Certificação Institucional":"Certificación Institucional","Certificação Institucional do Destino":"Certificación Institucional del Destino","Certificação apenas parcial":"Certificación solo parcial",Certificações:"Certificaciones","Certificações Ambientais":"Certificaciones Ambientales","Certificações ESG":"Certificaciones ESG","Certificações ESG, práticas sustentáveis e acessibilidade detectadas no site e em fontes públicas":"Certificaciones ESG, prácticas sostenibles y accesibilidad detectadas en el sitio web y en fuentes públicas","Certificações de destino sustentável":"Certificaciones de destino sostenible","Certificações detectadas":"Certificaciones detectadas","Chamar bombeiros de outra cidade":"Llamar a bomberos de otra ciudad","Chamar helicóptero de água":"Llamar a helicóptero de agua","Chat e relatórios com contexto do destino + Base de Conhecimento":"Chat e informes con contexto del destino + Base de Conocimiento","ChatGPT (Conectores / Developer Mode)":"ChatGPT (Conectores / Developer Mode)",Chave:OV,"Chave canônica":"Clave canónica","Checklist Pré-Cálculo":"Checklist Pre-Cálculo","Checklist de licenças e documentos obrigatórios (CADASTUR, Alvará, AVCB, Sanitário, LGPD). Itens vencidos ou pendentes alimentam o indicador ENT_COMPLIANCE_RATE no diagnóstico.":"Checklist de licencias y documentos obligatorios (CADASTUR, Licencia, AVCB, Sanitario, LGPD). Ãtems vencidos o pendientes alimentan el indicador ENT_COMPLIANCE_RATE en el diagnóstico.","Checklist legal e validação automática de CNPJ":"Checklist legal y validación automática de CNPJ","Checklist pré-cálculo: â¥60% dos indicadores com valor, sem indicadores duplicados":"Checklist pre-cálculo: â¥60% de los indicadores con valor, sin indicadores duplicados","Checkpoints aprovados":"Puntos de control aprobados","Checkpoints de governança":"Puntos de control de gobernanza","Chuva molha construções.":"La lluvia moja las construcciones.","Chuvas causaram deslizamentos na montanha!":"¡Lluvias causaron deslizamientos en la montaña!","Ciclo ContÃnuo":"Ciclo Continuo","Ciclo fechado:":"Ciclo cerrado:","Ciclo ágil":"Ciclo ágil","Ciclo: {{v0}}":"Ciclo: {{v0}}","Ciclos calculados":"Ciclos calculados","Ciclovia + metrô leve":"CiclovÃa + metro ligero","Ciclovias e bondinhos":"CiclovÃas y tranvÃas","Ciclovias e bondinhos!":"¡CiclovÃas y tranvÃas!","Cidade do Futuro":"Ciudad del Futuro","Cidade limpa e bonita":"Ciudad limpia y bonita","Cidade limpa e bonita!":"¡Ciudad limpia y bonita!","Cidades inteligentes usam dados para melhorar a vida.":"Las ciudades inteligentes usan datos para mejorar la vida.","Cinzas na Serra":"Cenizas en la Sierra","Cinzas no Sertão":"Cenizas en el Sertón","Cisterna Comunitária":"Cisterna Comunitaria","Cisterna e reflorestamento":"Cisterna y reforestación","Cisternas captam e armazenam água da chuva.":"Las cisternas captan y almacenan agua de lluvia.","Ciência e comunidade juntas! O projeto vira referência.":"¡Ciencia y comunidad juntas! El proyecto se convierte en referencia.",Classificação:"Clasificación","Classificação: CONFIDENCIAL":"Clasificación: CONFIDENCIAL","Claude (Anthropic)":"Claude (Anthropic)","Claude (Claude.ai / Claude Desktop)":"Claude (Claude.ai / Claude Desktop)","Claude Sonnet 5.5":"Claude Sonnet 5.5","Client ID":"Client ID","Client Secret":"Client Secret","Clima & Conforto":"Clima y Confort","Clima analisado":"Clima analizado","Clima/Conforto":"Clima/Confort","Clique abaixo para gerar suas recomendações personalizadas.":"Haz clic abajo para generar tus recomendaciones personalizadas.",'Clique em "Aceitar Termos" para liberar o acesso à plataforma.':'Haga clic en "Aceptar Términos" para liberar el acceso a la plataforma.','Clique em "Buscar Dados" para carregar dados oficiais das bases públicas.':'Haga clic en "Buscar Datos" para cargar datos oficiales de las bases públicas.','Clique em "Buscar agora" para consultar fontes públicas via Firecrawl.':'Haga clic en "Buscar ahora" para consultar fuentes públicas vÃa Firecrawl.','Clique em "Buscar" para consultar IBGE/SID
348RA.':'Haga clic en "Buscar" para consultar IBGE/SIDRA.','Clique em "Executar Verificação" para iniciar.':'Haga clic en "Ejecutar Verificación" para iniciar.','Clique em "Gerar provas" para criar uma prova por pilar coberto.':'Haga clic en "Generar pruebas" para crear una prueba por pilar cubierto.','Clique em "Nova Rodada" e selecione o destino que será avaliado.':'Haga clic en "Nueva Ronda" y seleccione el destino que será evaluado.','Clique em "Novo Post" para compartilhar com a comunidade.':'Haga clic en "Nuevo Post" para compartir con la comunidad.','Clique em "Rodar todos" e o SISTUR coleta dados de Google, Booking, TripAdvisor, ANAC, Anatel, DATASUS, IBGE e demais fontes públicas em paralelo.':'Haga clic en "Ejecutar todos" y SISTUR recopila datos de Google, Booking, TripAdvisor, ANAC, Anatel, DATASUS, IBGE y otras fuentes públicas en paralelo.',"Clique em cada etapa para ver detalhes do processo":"Haga clic en cada etapa para ver detalles del proceso","Clique em um alerta para ver detalhes e ações recomendadas.":"Haga clic en una alerta para ver detalles y acciones recomendadas.","Clique em um aluno para ver seu progresso detalhado.":"Haga clic en un alumno para ver su progreso detallado.",'Clique em uma trilha para ver os detalhes e clique em "Matricular" para iniciar.':'Haga clic en una ruta para ver los detalles y haga clic en "Inscribirse" para comenzar.',"Clique no botão abaixo para criar um novo destino com busca automática no IBGE.":"Haga clic en el botón de abajo para crear un nuevo destino con búsqueda automática en el IBGE.","Clique no campo para editar o valor pré-preenchido":"Haz clic en el campo para editar el valor precargado","Clique no lápis para editar cada seção. As mudanças são aplicadas imediatamente nas próximas conversas.":"Haga clic en el lápiz para editar cada sección. Los cambios se aplican inmediatamente en las próximas conversaciones.","Clique no peso, tier ou escopo de qualquer indicador para editá-lo. A soma dos pesos por pilar deve totalizar 100% para um cálculo correto.":"Haga clic en el peso, nivel o alcance de cualquier indicador para editarlo. La suma de los pesos por pilar debe totalizar 100% para un cálculo correcto.","Clique novamente no nó para fechar":"Haz clic de nuevo en el nodo para cerrar","Clique novamente no ðï¸ para confirmar a exclusão":"Haz clic de nuevo en ðï¸ para confirmar la eliminación","Clique para editar":"Haz clic para editar","Clique para editar o nÃvel mÃnimo":"Haz clic para editar el nivel mÃnimo","Clique para selecionar":"Clic para seleccionar","Clique para ver os indicadores":"Haz clic para ver los indicadores","Clique para visualizar":"Haz clic para ver","Cloud gerenciado (CDN global, SSL automático)":"Cloud gestionado (CDN global, SSL automático)","Cloudbeds (OAuth)":"Cloudbeds (OAuth)",Cobertura:MV,"Cobertura Telecom":"Cobertura Telecom","Cobertura automática: {{v0}}%":"Cobertura automática: {{v0}}%","Cobertura de Saneamento":"Cobertura de Saneamiento","Cobertura de coleta seletiva e destinação adequada. Fonte: SNIS. Periodicidade: anual.":"Cobertura de recolección selectiva y disposición adecuada. Fuente: SNIS. Periodicidad: anual.","Cobertura de sinalização indicativa e interpretativa. Fonte: levantamento local. Provenance 1/5.":"Cobertura de señalización indicativa e interpretativa. Fuente: relevamiento local. Provenance 1/5.","Cobertura municipal":"Cobertura municipal","Cobertura temática":"Cobertura temática","Cobertura total atingida":"Cobertura total alcanzada","Coerência numérica e revisão por agente":"Coherencia numérica y revisión por agente","Cole o link no grupo da turma no WhatsApp para facilitar.":"Pegue el enlace en el grupo de la clase de WhatsApp para facilitar.","Cole ou envie um relatório com no mÃnimo 30 caracteres.":"Pegue o envÃe un informe con un mÃnimo de 30 caracteres.",Coleta:NV,"Coleta de Dados":"Recopilación de Datos","Coleta de dados pode exigir múltiplas fontes":"La recopilación de datos puede requerir múltiples fuentes","Coleta e gestão de feedback de usuários":"Recopilación y gestión de comentarios de usuarios","Coleta pelo gestor":"Recopilación por el gestor","Coletado de API oficial":"Recopilado de API oficial","Colete o máximo de tesouros e chegue à saÃda ðª no canto inferior direito do map
348a. Quanto mais tesouros, melhor sua pontuação!":"Recoge la mayor cantidad de tesoros y llega a la salida ðª en la esquina inferior derecha del mapa. ¡Cuantos más tesoros, mejor será tu puntuación!","Colete todos os 5 tesouros ecológicos escondidos no mapa! Cada um representa um recurso natural valioso do bioma.":"¡Recoge los 5 tesoros ecológicos escondidos en el mapa! Cada uno representa un recurso natural valioso del bioma.",Coleção:"Colección","Coleção / soft brand":"Colección / soft brand","Coluna CSV":"Columna CSV","Colunas:":"Columnas:","Com 5 ou mais alunos ativos vinculados, sua mensalidade é isenta automaticamente!":"¡Con 5 o más alumnos activos vinculados, su mensualidad es exenta automáticamente!","Com VÃdeo":"Con Video","Com conteúdo":"Con contenido","Com conteúdo ({{v0}})":"Con contenido ({{v0}})","Com o diagnóstico calculado, você poderá gerar um plano de desenvolvimento turÃstico personalizado usando a Mente Sistur.":"Con el diagnóstico calculado, podrá generar un plan de desarrollo turÃstico personalizado usando la Mente Sistur.","Com o perfil preenchido, o sistema sugere trilhas e capacitações personalizadas.":"Con el perfil completo, el sistema sugiere rutas y capacitaciones personalizadas.","Com prescrição EDU":"Con prescripción EDU","Com â¥50% dos indicadores preenchidos, o status é calculado. Em seguida gere o Relatório AI em 17 seções com plano 90 dias.":"Con â¥50% de los indicadores completados, se calcula el estado. Luego genere el Informe AI en 17 secciones con un plan de 90 dÃas.","Com.:":"Com.:","Combata a desertificação e proteja a riqueza única do semiárido brasileiro.":"Combata la desertificación y proteja la riqueza única del semiárido brasileño.","Combata a desertificação no semiárido.":"Combata la desertificación en el semiárido.","Combo de cursos":"Combo de cursos","CombustÃveis fósseis":"Combustibles fósiles","Comece avaliando um destino turÃstico para gerar insights e planos de ação.":"Comience evaluando un destino turÃstico para generar hallazgos y planes de acción.","Comece cadastrando seu primeiro curso de capacitação.":"Comienza registrando tu primer curso de capacitación.","Comece cadastrando seu primeiro destino turÃstico.":"Comience registrando su primer destino turÃstico.","Comece cadastrando seu primeiro indicador.":"Comience registrando su primer indicador.","Comece pelo Essencial":"Empieza por lo Esencial","Comece pelos planos de alta prioridade vinculados a alertas IGMA.":"Comience por los planes de alta prioridad vinculados a alertas IGMA.","Comece por explorar o catálogo de cursos.":"Comienza explorando el catálogo de cursos.","Comece sua jornada":"Comienza tu recorrido","Comece uma nova aventura!":"¡Comienza una nueva aventura!","Comente para contribuir com a discussão.":"Comente para contribuir con la discusión.","Comente, curta e denuncie conteúdos conforme necessário.":"Comente, dé 'me gusta' y denuncie contenidos según sea necesario.",Comentário:"Comentario","Comentário (opcional)":"Comentario (opcional)","Comentário adicional (opcional)":"Comentario adicional (opcional)","Comentário do professor:":"Comentario del docente:","Comentário geral sobre o diagnóstico.":"Comentario general sobre el diagnóstico.","Comentário muito longo (máx. 4000)":"Comentario muy largo (máx. 4000)","Comentário removido":"Comentario eliminado","Comentário vazio":"Comentario vacÃo",Comentários:"Comentarios","Comentários ({{v0}})":"Comentarios ({{v0}})","Comentários ancorados em pilares ou indicadores especÃficos, com responsável e status (aberto / resolvido). Use @ para mencionar pessoas da sua organização.":"Comentarios anclados en pilares o indicadores especÃficos, con responsable y estado (abierto / resuelto). Use @ para mencionar personas de su organización.","Comentários do relatório":"Comentarios del informe","Comentários em thread com notificações em tempo real":"Comentarios en hilo con notificaciones en tiempo real",Comercial:zV,Começar:"Empezar","Começar curso base":"Comenzar curso base","Começar teste gratuito":"Comenzar prueba gratuita","Comissão %":"Comisión %","Comissão média ponderada":"Comisión media ponderada","Como Jogar":"Cómo Jugar","Como administrador, você gerencia todos os usuários da plataforma: aprovações, papéis, organizações e acessos.":"Como administrador, usted gestiona todos los usuarios de la plataforma: aprobaciones, roles, organizaciones y accesos.","Como aplicar os 6 princÃpios de Beni no meu plano de ação?":"Cómo aplicar los 6 principios de Beni en mi plan de acción?","Como as regras se
348conectam e afetam o sistema":"Cómo las reglas se conectan y afectan el sistema","Como ativo a Mandala (MST) num diagnóstico?":"¿Cómo activo el Mandala (MST) en un diagnóstico?","Como ativo o acesso Empresarial para minha organização?":"¿Cómo activo el acceso Empresarial para mi organización?","Como conectar":"Cómo conectar","Como criar, calcular e interpretar diagnósticos no SISTUR":"Cómo crear, calcular e interpretar diagnósticos en SISTUR","Como criar, calcular e interpretar diagnósticos territoriais":"Cómo crear, calcular e interpretar diagnósticos territoriales","Como funciona a hierarquia RA â OE â AO?":"Cómo funciona la jerarquÃa RA â OE â AO?","Como funciona a monetização do assistente de IA.":"Cómo funciona la monetización del asistente de IA.","Como funciona a validação cruzada do relatório?":"¿Cómo funciona la validación cruzada del informe?","Como funciona a verificação de certificados?":"¿Cómo funciona la verificación de certificados?","Como funciona o diagnóstico?":"¿Cómo funciona el diagnóstico?","Como funciona o monitoramento de ciclos?":"¿Cómo funciona el monitoreo de ciclos?","Como funciona o perÃodo de avaliação?":"¿Cómo funciona el perÃodo de evaluación?","Como funciona o pré-preenchimento de dados oficiais?":"¿Cómo funciona el pre-relleno de datos oficiales?","Como funciona?":"¿Cómo funciona?","Como funcionam as provas finais das trilhas formativas?":"¿Cómo funcionan las pruebas finales de las rutas formativas?","Como funcionam as trilhas de aprendizagem?":"¿Cómo funcionan las rutas de aprendizaje?","Como jogar":"Cómo jugar","Como o IQA da ANA é integrado ao diagnóstico?":"¿Cómo se integra el IQA de la ANA al diagnóstico?","Como o SISTUR aplica a teoria sistêmica do turismo de Mario Beni: pilares, regras IGMA e interpretação territorial.":"Cómo SISTUR aplica la teorÃa sistémica del turismo de Mario Beni: pilares, reglas IGMA e interpretación territorial.","Como o SISTUR funciona":"Cómo funciona SISTUR","Como o aluno acessa as atividades atribuÃdas pelo professor?":"¿Cómo el alumno accede a las actividades asignadas por el profesor?","Como o aluno será avaliado e nota mÃnima":"Cómo será evaluado el alumno y nota mÃnima","Como o professor acompanha o desempenho da turma em uma atividade?":"¿Cómo el profesor monitorea el desempeño de la clase en una actividad?","Como o professor agenda uma prova ou trilha para a turma?":"¿Cómo el profesor programa una prueba o ruta para la clase?","Como professor, você tem um código e link de convite únicos. Use-os para vincular alunos à sua conta e gerenciar turmas.":"Como profesor, usted tiene un código y un enlace de invitación únicos. Ãselos para vincular alumnos a su cuenta y gestionar clases.","Como são geradas as prescrições de cursos?":"¿Cómo se generan las prescripciones de cursos?","Como você prefere aprender?":"¿Cómo prefiere aprender?","Comparando com:":"Comparando con:","Comparar rodadas":"Comparar rondas",Comparativo:jV,"Comparativo com Rodada Anterior":"Comparación con la Ronda Anterior","Comparativo de Destinos":"Comparación de Destinos","Comparativo entre ciclos":"Comparación entre ciclos","Comparativo entre todas as turmas ativas da organização, ordenadas por XP médio. Inclui taxa de conclusão e alunos em risco para apoiar decisões pedagógicas.":"Comparación entre todos los grupos activos de la organización, ordenados por XP promedio. Incluye la tasa de finalización y los estudiantes en riesgo para apoyar las decisiones pedagógicas.","Comparativo por pilar":"Comparativa por pilar","Comparação anônima contra {{v0}} empreendimentos do mesmo segmento (categoria + faixa de classificação ±1). Sem nomes, sem ranking.":"Comparación anónima contra {{v0}} empresas del mismo segmento (categorÃa + rango de clasificación ±1). Sin nombres, sin ranking.","Comparação anônima entre empreendimentos Enterprise da mesma organização. Sem ranking público â uso interno apenas.":"Comparación anónima entre establecimientos Enterprise de la misma organización. Sin clasificación pública â solo para uso interno.","Comparação de cenários (ano {{v0}})":"Comparación de escenarios (año {{v0}})","Comparação entre destinos":"Comparación entre destinos","Comparação entre rodadas e evolução temporal":"Comparación entre rondas y evolución temporal","Comparação por Pilar":"Comparación por Pilar","Compare a evolução entre pilares para identificar desequilÃbrios.":"Compare la evolución entre pilares para identificar desequilibrios.","Compare as notas dos pilares RA, OE e AO do último diagnóstico e sugira prioridades de ação.":"Compare las notas de los pilares RA, OE y AO del último diagnóstico y sugiera prioridades de acción.","Compartilhado com a Organização":"Compartido con la Organización",Compartilhar:kV,"Compartilhar com alunos":"Compartir con alumnos","Compartilhar por link":"Compartir por enlace","Compartilhar progresso":"Compartir progreso","Compartilhe conhecimento, tire dúvidas e c
348onecte-se com a comunidade":"Comparte conocimiento, resuelve dudas y conéctate con la comunidad","Compartilhe seus pensamentos, perguntas ou conhecimento...":"Comparte tus ideas, preguntas o conocimientos...","CompatÃvel com prazos de editais":"Compatible con plazos de convocatorias","Compensações ajudam, mas o dano já foi feito.":"Las compensaciones ayudan, pero el daño ya está hecho.",Competências:"Competencias",Complementar:_V,"Complementar dados manualmente":"Complementar datos manualmente","Complementar indicadores não cobertos pelas fontes oficiais":"Complementar indicadores no cubiertos por las fuentes oficiales","Completar Perfil":"Completar Perfil","Complete cursos e trilhas para obter seus certificados":"Completa cursos y rutas de aprendizaje para obtener tus certificados","Complete o preenchimento dos indicadores via formulário ou importe um arquivo CSV com os dados.":"Complete los indicadores mediante el formulario o importe un archivo CSV con los datos.","Complete seu Perfil de Aprendizado":"Completa tu Perfil de Aprendizaje","Complete seu perfil para gerar recomendações.":"Completa tu perfil para generar recomendaciones.","Complete todos os módulos de uma trilha e, quando houver, passe na prova final.":"Complete todos los módulos de una ruta y, si la hay, apruebe la prueba final.","Complete um curso de nÃvel":"Complete un curso de nivel",Completo:qV,"Completos + Intersetoriais":"Completos + Intersectoriales","Completou seu primeiro treinamento":"Completó su primer entrenamiento","Completou uma trilha de aprendizagem":"Completó una ruta de aprendizaje",Completude:LV,Compliance:UV,"Compliance & Anti-Fraude â Relatório de Sessões":"Cumplimiento & Antifraude â Informe de Sesiones","Compliance & Segurança":"Cumplimiento y Seguridad",Compostagem:BV,"Composto a partir de dados oficiais RAIS/CAGED + PIB municipal IBGE.":"Compuesto a partir de datos oficiales RAIS/CAGED + PIB municipal IBGE.","Compra avulsa de perguntas adicionais, usadas quando a cota mensal do plano acabar.":"Compra individual de preguntas adicionales, usadas cuando la cuota mensual del plan se agote.","Comprar créditos":"Comprar créditos","Comprar terreno para construir um condomÃnio de luxo":"Comprar terreno para construir un condominio de lujo","Comprar água de caminhão":"Comprar agua de camión",Comunidade:FV,"Comunidade Sustentável":"Comunidad Sostenible","Comunidade com moderação":"Comunidad con moderación","Comunidade se uniu e salvou a floresta!":"¡La comunidad se unió y salvó el bosque!","Comércio entre paÃses vizinhos":"Comercio entre paÃses vecinos",Conceder:GV,"Conceder créditos":"Conceder créditos","Conceder créditos do Professor Beni":"Conceder créditos del Profesor Beni","Concedido em":"Concedido el","Concentre-se e vá com calma!":"¡Concéntrate y ve con calma!","Concessão administrativa":"Concesión administrativa","Concessão criada":"Concesión creada",Concessões:"Concesiones","Concessões vigentes":"Concesiones vigentes","Concha de espécie protegida":"Concha de especie protegida","Conclua 1 módulo de qualquer treinamento hoje.":"Complete 1 módulo de cualquier entrenamiento hoy.","Conclua 2 treinamentos no mesmo dia.":"Complete 2 entrenamientos el mismo dÃa.","Conclua 3 etapas de trilhas/módulos hoje.":"Complete 3 etapas de rutas/módulos hoy.","Conclua o curso base":"Completa el curso base","Conclua o login SISTUR e autorize o acesso; as ferramentas aparecem na lista do agente.":"Complete el inicio de sesión de SISTUR y autorice el acceso; las herramientas aparecen en la lista del agente.","Conclua primeiro o curso":"Concluye primero el curso",Concluir:VV,"Concluir o diagnóstico antes de matricular a equipe â assim as prescrições aparecem corretamente.":"Concluir el diagnóstico antes de inscribir al equipo â asà las prescripciones aparecerán correctamente.",Conclusão:"Finalización","Conclusão de Tarefas":"Finalización de Tareas","Conclusão média":"Finalización promedio",Conclusões:"Finalizaciones","Conclusões agregadas de todos os alunos.":"Finalizaciones agregadas de todos los estudiantes.",ConcluÃdas:"Completadas",ConcluÃdo:"Completado","ConcluÃdo em {{v0}}":"Completado en {{v0}}","ConcluÃdo em:":"Completado el:","ConcluÃdo â trilhas completas exigem plano":"Completado â rutas completas exigen plan",ConcluÃdos:"Completados","ConcluÃdos ({{v0}})":"Completados ({{v0}})",Concorrentes:$V,"Concorrentes Automáticos":"Competidores Automáticos","Concorrentes no raio":"Competidores en el radio",Conectado:HV,"Conectando assistentes de IA ao SISTUR (MCP)":"Conectando asistentes de IA a SISTUR (MCP)","Conectar PMS":"Conectar PMS","Conectar fragmentos de habitat":"Conectar fragmentos de hábitat","Conecte este projeto a oportunidades de investimento, consórcios regi
348onais, alertas do observatório e issues do diagnóstico.":"Conecta este proyecto con oportunidades de inversión, consorcios regionales, alertas del observatorio e incidencias del diagnóstico.","Conecte fenômenos naturais e ecossistemas":"Conecte fenómenos naturales y ecosistemas",Conectividade:WV,"Conectividade Aérea":"Conectividad Aérea","Conectividade Telecom":"Conectividad Telecom","Conectividade aérea analisada":"Conectividad aérea analizada","Conectividade telecom analisada":"Conectividad telecom analizada","Conectores PMS":"Conectores PMS","Conexão bloqueada pelo navegador":"Conexión bloqueada por el navegador","Conexão removida.":"Conexión eliminada.","Conexões Estimadas":"Conexiones Estimadas","Conexões crescendo â monitore de perto":"Conexiones creciendo â monitoree de cerca","Conferir conformidade":"Verificar conformidad","Conferir relatório":"Verificar informe","Conferência de dados":"Verificación de datos","Conferência de dados â detalhes":"Verificación de datos â detalles","Confiab.":"Confiab.","Confiabilidade da fonte (1-5):":"Fiabilidad de la fuente (1-5):","Confiabilidade: 1/5 â â Sem API pública disponÃvel. Requer inserção pelo operador.":"Fiabilidad: 1/5 â â Sin API pública disponible. Requiere inserción por el operador.","Confiabilidade: 5/5 â â Obtidos automaticamente de APIs públicas.":"Fiabilidad: 5/5 â â Obtenidos automáticamente de APIs públicas.",Confiança:"Confianza","Configurando...":"Configurando...",Configurar:QV,"Configurar Perfil":"Configurar Perfil","Configurar Projeto":"Configurar Proyecto","Configuração ausente":"Falta la configuración","Configuração de persona, escopo e diretrizes aplicadas ao chat do Professor Beni.":"Configuración de persona, alcance y directrices aplicadas al chat del Profesor Beni.","Configuração salva":"Configuración guardada",Configurações:"Configuración","Configurações de moderação salvas!":"¡Configuraciones de moderación guardadas!","Configurações do Sistema":"Configuraciones del Sistema","Configure a rodada de avaliação":"Configure la ronda de evaluación","Configure as polÃticas de moderação automática para o Social Turismo":"Configure las polÃticas de moderación automática para el Social Turismo","Configure as regras abaixo":"Configure las reglas a continuación","Configure as regras e associe a um curso LMS":"Configure las reglas y asócielas a un curso LMS","Configure as regras para criação de provas.":"Configure las reglas para la creación de pruebas.","Configure logo, cabeçalho, rodapé e aparência dos relatórios exportados":"Configura el logotipo, el encabezado, el pie de página y la apariencia de los informes exportados","Configure nota mÃnima para aprovação.":"Configure nota mÃnima para aprobación.","Configure quais tipos de diagnóstico esta organização pode executar. Ambos podem ser habilitados simultaneamente.":"Configure qué tipos de diagnóstico puede ejecutar esta organización. Ambos pueden ser habilitados simultáneamente.","Configure quando a atividade abre, quem recebe e (para provas) regras especÃficas.":"Configure cuándo se abre la actividad, quién recibe y (para exámenes) reglas especÃficas.","Configure quem pode acessar este treinamento":"Configura quién puede acceder a esta capacitación","Configure seu perfil de aprendizado":"Configura tu perfil de aprendizaje","Configure sua conta e conheça a plataforma":"Configure su cuenta y conozca la plataforma","Configure suas preferências para recomendações personalizadas":"Configura tus preferencias para recibir recomendaciones personalizadas","Confirma recebimento de solicitação":"Confirma recepción de solicitud",Confirmado:KV,Confirmados:YV,"Confirmar Envio":"Confirmar EnvÃo","Confirmar Fraude":"Confirmar Fraude","Confirmar Nova Senha":"Confirmar Nueva Contraseña","Confirmar Senha":"Confirmar Contraseña","Confirmar cancelamento":"Confirmar cancelación","Confirmar exclusão":"Confirmar eliminación","Confirmar importação":"Confirmar importación","Confirme a nova senha":"Confirme la nueva contraseña","Confirme seu email antes de entrar. Verifique sua caixa de entrada.":"Confirme su correo electrónico antes de iniciar sesión. Verifique su bandeja de entrada.","Conformidade Legal":"Conformidad Legal","Conformidade Legal â {{v0}}":"Conformidad Legal â {{v0}}",Conforto:JV,"Conforto Climático":"Confort Climático","Confrontar os madeireiros diretamente":"Enfrentar a los madereros directamente","Congelamento (snapsh
348ot) dos dados validados":"Congelamiento (snapshot) de los datos validados","Conhecer o SISTUR EDU":"Conocer SISTUR EDU","Conhecer planos e preços":"Conocer planes y precios","Conhecimento é a melhor proteção para as futuras gerações.":"El conocimiento es la mejor protección para las futuras generaciones.","Conjunto otimizado de indicadores":"Conjunto optimizado de indicadores",Conquistada:XV,Conquistas:ZV,"Conquiste uma badge":"Consiga una insignia","Conseguiu um acordo, mas é arriscado...":"Logró un acuerdo, pero es arriesgado...","Conselho Municipal de Turismo":"Consejo Municipal de Turismo","Conselho, plano e orçamento de turismo":"Consejo, plan y presupuesto de turismo",Consequências:"Consecuencias","Conservação e Preservação":"Conservación y Preservación","Consolidar Reputação Multi-OTA":"Consolidar Reputación Multi-OTA","Consolidação ponderada por número de quartos (UH). Os indicadores, gargalos e prescrições mostrados nas abas abaixo agregam todas as unidades â filtros por unidade entram em fase seguinte.":"Consolidación ponderada por número de habitaciones (UH). Los indicadores, cuellos de botella y prescripciones mostrados en las pestañas a continuación agregan todas las unidades â los filtros por unidad entran en la siguiente fase.","Consome o trial":"Consume el trial","Construa, explore e organize â e descubra se você é Explorador, Construtor, Guardião ou Cientista!":"¡Construye, explora y organiza â y descubre si eres Explorador, Constructor, Guardián o CientÃfico!","Construir coisas novas rápido":"Construir cosas nuevas rápido","Construir muro de arrimo":"Construir muro de contención","Construir um muro rápido":"Construir un muro rápido",Construção:"Construcción","Construção Express":"Construcción Express","Construções excessivas:":"Construcciones excesivas:","Constrói Demais":"Construye Demasiado","Constrói rápido, mas com custo!":"¡Construye rápido, pero con costo!",Constância:"Constancia","Consulta sites oficiais (prefeitura, secretaria de turismo) para sugerir eventos de {{v0}}. Revise antes de importar.":"Consulta sitios oficiales (ayuntamiento, secretarÃa de turismo) para sugerir eventos de {{v0}}. Revise antes de importar.",Consultado:e2,"Consultando ANAC...":"Consultando ANAC...","Consultando Anatel...":"Consultando Anatel...","Consultando DATASUS...":"Consultando DATASUS...","Consultando...":"Consultando...","Consulte a ANA (Agência Nacional de Ãguas) ou órgão ambiental estadual. IQA de pontos turÃsticos (praias, rios, cachoeiras).":"Consulte a la ANA (Agencia Nacional de Aguas) u órgano ambiental estatal. IQA de puntos turÃsticos (playas, rÃos, cascadas).","Consulte a Secretaria de Segurança Pública estadual. Taxa de crimes por 100 mil habitantes.":"Consulte a la SecretarÃa de Seguridad Pública estatal. Tasa de crÃmenes por 100 mil habitantes.","Consulte dados do IBGE/SIDRA (Censo Demográfico) ou a prefeitura. % de domicÃlios com coleta regular de lixo.":"Consulte datos del IBGE/SIDRA (Censo Demográfico) o la alcaldÃa. % de domicilios con recolección regular de basura.","Consulte o DATASUS (TabNet) ou a Secretaria de Saúde. Ãbitos de menores de 1 ano ÷ nascidos vivos à 1.000.":"Consulte al DATASUS (TabNet) o la SecretarÃa de Salud. Defunciones de menores de 1 año ÷ nacidos vivos à 1.000.","Consulte o IBGE (Produto Interno Bruto dos MunicÃpios). PIB municipal ÷ população estimada.":"Consulte al IBGE (Producto Interno Bruto de los Municipios). PIB municipal ÷ población estimada.","Consulte o ICMBio ou a Secretaria de Meio Ambiente local. Ãrea de unidades de conservação ÷ área total do municÃpio à 100.":"Consulte al ICMBio o la SecretarÃa de Medio Ambiente local. Ãrea de unidades de conservación ÷ área total del municipio à 100.","Consulte o ICMBio, SNUC ou órgão ambiental estadual. Calcule: (área de UCs ÷ área total do municÃpio) à 100.":"Consulte al ICMBio, SNUC u órgano ambiental estatal. Calcule: (área de UCs ÷ área total del municipio) à 100.","Consulte o IPHAN (federal) e órgão de patr
348imônio estadual/municipal. Conte bens tombados e registrados.":"Consulte al IPHAN (federal) y órgano de patrimonio estatal/municipal. Cuente bienes catalogados y registrados.","Consulte o SNIS (Sistema Nacional de Informações sobre Saneamento) ou a concessionária local. Dado disponÃvel via IBGE/SIDRA (Censo).":"Consulte al SNIS (Sistema Nacional de Información sobre Saneamiento) o la concesionaria local. Dato disponible vÃa IBGE/SIDRA (Censo).","Consulte o STN (Tesouro Nacional) via FINBRA/SICONFI. Receita tributária própria ÷ receita total à 100.":"Consulte al STN (Tesoro Nacional) vÃa FINBRA/SICONFI. Ingresos tributarios propios ÷ ingresos totales à 100.","Consulte o portal do INEP (ideb.inep.gov.br). Busque pelo nome do municÃpio e selecione anos iniciais ou finais.":"Consulte el portal del INEP (ideb.inep.gov.br). Busque por el nombre del municipio y seleccione años iniciales o finales.","Consulte o site da ANAC ou INFRAERO. Conte voos comerciais regulares semanais no aeroporto mais próximo do destino.":"Consulte el sitio de la ANAC o INFRAERO. Cuente vuelos comerciales regulares semanales en el aeropuerto más cercano del destino.","Consulte seu PMS: (quartos vendidos ÷ quartos disponÃveis) à 100, no perÃodo analisado. Considere a média dos últimos 12 meses.":"Consulte su PMS: (habitaciones vendidas ÷ habitaciones disponibles) à 100, en el perÃodo analizado. Considere el promedio de los últimos 12 meses.","Consulte seus resultados e gerencie recursos":"Consulta tus resultados y gestiona recursos","Consultoria Especializada":"ConsultorÃa Especializada","Consumir mais plástico":"Consumir más plástico","Consumo Energético/UH":"Consumo Energético/UH","Consumo de Energia":"Consumo de EnergÃa","Consumo de Ãgua por Hóspede":"Consumo de Agua por Huésped","Consumo de Ãgua/Hóspede":"Consumo de Agua/Huésped","Consumo do mês atual, créditos disponÃveis e liberações ilimitadas. Clique nos tÃtulos das colunas para ordenar, filtre por organização e adicione créditos direto na linha ou para vários de uma vez.":"Consumo del mes actual, créditos disponibles y liberaciones ilimitadas. Haga clic en los tÃtulos de las columnas para ordenar, filtre por organización y agregue créditos directamente en la lÃnea o para varios a la vez.",Consórcio:"Consorcio","Consórcio criado":"Consorcio creado","Consórcio não encontrado ou sem permissão de acesso.":"Consorcio no encontrado o sin permiso de acceso.",Consórcios:"Consorcios","Consórcios Regionais":"Consorcios Regionales","Consórcios em que participo":"Consorcios en los que participo","Consórcios regionais":"Consorcios regionales","Conta Stays":"Cuenta Stays","Conta criada com sucesso!":"¡Cuenta creada con éxito!","Conta criada e termos aceitos":"Cuenta creada y términos aceptados","Contador no chat; pacotes na página Assinatura":"Contador en el chat; paquetes en la página Suscripción","Contagem (unidades)":"Conteo (unidades)","Contagem absoluta sem casas decimais (eventos, voos, unidades).":"Conteo absoluto sin decimales (eventos, vuelos, unidades).","Contagem de indicadores em cada combinação":"Conteo de indicadores en cada combinación","Contaminação quÃmica grave!":"¡Contaminación quÃmica grave!","Contaminação quÃmica!":"¡Contaminación quÃmica!",Contato:a2,"Conte os canais de venda ativos: OTAs (Booking, Expedia, Decolar), agências de viagem parceiras, GDS (Amadeus, Sabre), site próprio com motor de reservas, redes sociais com link de reserva, centrais de atendimento, marketplaces locais.":"Cuente los canales de venta activos: OTAs (Booking, Expedia, Decolar), agencias de viaje asociadas, GDS (Amadeus, Sabre), sitio propio con motor de reservas, redes sociales con enlace de reserva, centros de atención, marketplaces locales.","Conte os documentos legais ativos: Alvará, CNPJ, CADASTUR, licenças ambientais, certificados de segurança. Verifique na pasta de documentação da empresa.":"Cuente los documentos legales activos: Permiso, CNPJ, CADASTUR, licencias ambientales, certificados de seguridad. Verifique en la carpeta de documentación de la empresa.","Conte os segmentos turÃsticos ativos: Sol e Praia, Ecoturismo, Cultural, Aventura, Negócios, Gastronômico, Rural, Religioso, Saúde, etc.":"Cuente los segmentos turÃsticos activos: Sol y Playa, Ecoturismo, Cultural, Aventura, Negocios, Gastronómico, Rural, Religioso, Salud, etc.","Conte um pouco do seu contexto...":"Cuente un poco s
348obre su contexto...","Conte-nos mais sobre sua decisão...":"Cuéntenos más sobre su decisión...","Conte-nos sobre sua atuação profissional":"Cuéntenos sobre su desempeño profesional",Contexto:o2,"Contexto & Conectividade do Destino":"Contexto y Conectividad del Destino","Contexto (persona, audiência, tom, foco, prioridades, restrições)":"Contexto (persona, audiencia, tono, enfoque, prioridades, restricciones)","Contexto Municipal":"Contexto Municipal","Contexto Socioeconômico":"Contexto Socioeconómico","Contexto atualizado â vale para os próximos relatórios.":"Contexto actualizado â válido para los próximos informes.","Contexto criado":"Contexto creado","Contexto da conversa":"Contexto de la conversación","Contexto dinâmico enviado a cada chamada":"Contexto dinámico enviado en cada llamada","Contexto do destino + Base de Conhecimento":"Contexto del destino + Base de Conocimiento","Contexto do destino carregado":"Contexto del destino cargado","Contexto editorial especÃfico desta organização.":"Contexto editorial especÃfico de esta organización.","Contexto removido":"Contexto eliminado","Contexto territorial, sociedade, meio ambiente, dados demográficos e segurança pública":"Contexto territorial, sociedad, medio ambiente, datos demográficos y seguridad pública","Contextos globais não podem ser removidos â apenas desativados.":"Los contextos globales no pueden ser eliminados â solo desactivados.",Contexts:i2,"Contextualiza indicadores com metas nacionais":"Contextualiza indicadores con metas nacionales",Conteúdo:"Contenido","Conteúdo (markdown injetado no prompt)":"Contenido (markdown inyectado en el prompt)","Conteúdo (markdown)":"Contenido (markdown)","Conteúdo Sob Demanda":"Contenido Bajo Demanda","Conteúdo deve ter no máximo 10.000 caracteres":"El contenido debe tener un máximo de 10.000 caracteres","Conteúdo deve ter pelo menos 10 caracteres":"El contenido debe tener al menos 10 caracteres","Conteúdo disponÃvel nos planos":"Contenido disponible en los planes","Conteúdo do relatório":"Contenido del informe","Conteúdo educacional":"Contenido educativo","Conteúdo não relacionado":"Contenido no relacionado","Conteúdo ofensivo ou inadequado":"Contenido ofensivo o inapropiado","Conteúdo por Pilar":"Contenido por Pilar","Conteúdo principal: cards, tabelas e formulários especÃficos de cada módulo.":"Contenido principal: tarjetas, tablas y formularios especÃficos de cada módulo.","Conteúdo profissional":"Contenido profesional","Conteúdo profissional genérico":"Contenido profesional genérico","Conteúdo sexual":"Contenido sexual","Conteúdo sexual gráfico":"Contenido sexual gráfico","Conteúdo turÃstico":"Contenido turÃstico","Conteúdos atribuÃdos pelo professor aparecerão automaticamente.":"Los contenidos asignados por el profesor aparecerán automáticamente.","Conteúdos audiovisuais para aprofundamento":"Contenidos audiovisuales para profundización","Conteúdos audiovisuais para aprofundamento temático":"Contenidos audiovisuales para profundizar en el tema","Continua verificação":"Continúa verificación",Continuar:t2,"Continuar Fluxo Guiado":"Continuar Flujo Guiado","Continuar Respondendo":"Continuar Respondiendo","Continuar a construção e ignorar os protestos":"Continuar la construcción e ignorar las protestas","Continuar com Apple":"Continuar con Apple","Continuar com Google":"Continuar con Google","Continuar lucrando com o esquema":"Seguir lucrando con el esquema","Continuar para Cálculo":"Continuar para Cálculo","Continuar preenchimento":"Continuar completando","Continue de onde parou":"Continúa donde lo dejaste","Continue de onde você parou":"Continúe donde lo dejó","Controle como você aparece em posts públicos do fórum":"Controle cómo aparece en publicaciones públicas del foro","Controle de Acesso":"Control de Acceso","Controle de versão semântico (MAJOR.MINOR.PATCH)":"Control de versión semántico (MAJOR.MINOR.PATCH)","Controlou, mas custou caro e demorou...":"Controló, pero costó caro y demoró...","Conversa com o Professor Beni ·":"Conversación con el Profesor Beni ·","Conversa enviada por e-mail"
348:"Conversación enviada por correo electrónico","Conversa vazia":"Conversación vacÃa",Conversas:r2,"Conversas diretas entre alunos e professores.":"Conversaciones directas entre estudiantes y docentes.","Conversas e pastas":"Conversaciones y carpetas",Conversão:"Conversión","Conversão manual pelo painel comercial":"Conversión manual por el panel comercial",Converter:s2,"Converter metade para soja como compromisso econômico":"Convertir la mitad a soja como compromiso económico",Convertidos:n2,"Convidados, aceitos e recusados.":"Invitados, aceptados y rechazados.",Convidar:c2,"Convidar estudantes":"Invitar estudiantes","Convidar municÃpio":"Invitar municipio","Convidar por e-mail":"Invitar por correo electrónico","Convide 5 estudantes e ganhe isenção na mensalidade enquanto mantiver 5+ alunos ativos.":"Invite 5 estudiantes y obtenga exención en la mensualidad mientras mantenga 5+ alumnos activos.","Convite pendente para o seu municÃpio":"Invitación pendiente para su municipio","Convite recebido em":"Invitación recibida el","Convites para Consórcio":"Invitaciones para Consorcio","Conviver com a seca, não combatê-la. Mudança de paradigma!":"Convivir con la sequÃa, no combatirla. ¡Cambio de paradigma!",Coordenadas:d2,"Coordenação SISTUR":"Coordinación SISTUR","Copiar Link":"Copiar Enlace","Copiar URL":"Copiar URL","Copiar código":"Copiar código","Copiar link":"Copiar enlace","Copiar link de convite":"Copiar enlace de invitación","Cor primária":"Color primario","Corajoso, mas perigoso. Você encontra evidências importantes, mas se expõe a riscos.":"Valiente, pero peligroso. Encuentra evidencias importantes, pero se expone a riesgos.",Corporativo:l2,"Corporativo / Convênio":"Corporativo / Convenio","Corredores ecológicos permitem o fluxo genético entre populações isoladas.":"Los corredores ecológicos permiten el flujo genético entre poblaciones aisladas.","Correndo Atrás do PrejuÃzo":"Corriendo Tras la Pérdida","Correspondência exata de pilar: cursos de RA só são prescritos para indicadores RA, e assim por diante.":"Correspondencia exacta de pilar: los cursos de RA solo se prescriben para indicadores RA, y asà sucesivamente.",Correta:u2,"Correção de Questões Dissertativas":"Corrección de Preguntas Disertativas","Corrigido na auditoria":"Corregido en la auditorÃa","Corrigidos automaticamente. Aprovação a partir da nota mÃnima definida no curso. Possuem banco de questões versionado e sorteio aleatório.":"Corregidos automáticamente. Aprobación a partir de la nota mÃnima definida en el curso. Poseen banco de preguntas versionado y sorteo aleatorio.","Corrigidos por RPC com auxÃlio de IA + revisão humana opcional. Permitem recurso (appeal) em prazo determinado.":"Corregidos por RPC con ayuda de IA + revisión humana opcional. Permiten recurso (apelación) en plazo determinado.","Corrigir indicador":"Corregir indicador","Corrigir valor do indicador":"Corregir valor del indicador","Corrija o valor antes de salvar":"Corrige el valor antes de guardar","Corrija os erros de validação antes de salvar":"Corrige los errores de validación antes de guardar",Cota:m2,"Cota do plano":"Cuota del plan","Cota mensal":"Cuota mensual","Cota mensal â créditos do usuário â créditos da org":"Cuota mensual â créditos del usuario â créditos de la org","Cotas do perÃodo (top consumidores)":"Cuotas del perÃodo (top consumidores)","Cotas e créditos do Professor Beni":"Cuotas y créditos del Profesor Beni","Credenciais OAuth Cloudbeds não configuradas. Conexão salva como pendente â ative depois.":"Credenciales OAuth Cloudbeds no configuradas. Conexión guardada como pendiente â active después.","Credenciais são criptografadas e acessÃveis apenas pelo serviço de sincronização (RLS service_role).":"Las credenciales están cifradas y solo son accesibles por el servicio de sincronización (RLS service_role).","Crescendo â considere Ãndices e limpeza":"Creciendo â considere Ãndices y limpieza","Crescer sem planejar é perigoso.":"Crecer sin planificar es peligroso.","Crescimento econômico rápido":"Crecimiento económico rápido","Crescimento significativo â avalie upgrade":"Crecimiento significativo â evalúe actualización","Cria estruturas incrÃveis":"Crea estructuras increÃbles","Cria infraestrutura para todos":"Crea infraestructura para todos","Cria uma prova por pilar coberto pelos treinamentos (20 questões, 70% nota mÃnima, 60 min). Você pode pular e gerar depois.":"Crea una prueba por pilar cubierto por las capacitaciones (20 preguntas, 70% nota mÃnima, 60 min). Puede saltar y generar después.",'Cria uma prova por pilar coberto pelos treinamentos (20 questões, 70% nota mÃnima, 60 min, até 2 tentativas). Opcional â você pode gerar depois pelo botão "Gerar provas" no detalhe da trilha.':'Crea una prueba por pilar cubierto por las capacitaciones (20 preguntas, 70% nota mÃnima, 60 min, hasta 2 intentos). Opcional â puede generar después con el botón "Generar pruebas" en el detalle del itinerario.',"Cria uma tarefa em um projeto existente, em nome do usuário conectado.":"Crea una tarea en un proyecto existente, en nombre del usuario conectado.","Cria uma tarefa em um projeto existente, no nome do usuário autenticado.":"Crea una tarea en un proyecto existente, a nombre del usuario autenticado.","Criado em":"Creado el","Criado em {{date}}":"Creado el {{date}}","Criando conta...":"Creando cuenta...","Criando projeto...":"Creando proyecto...","Criando...":"Creando...",Criar:p2,"Criar Conta":"Crear Cuenta","Criar Destino":"Crear Destino","Criar Diagnósticos":"Crear Diagnósticos","Criar Fase":"Crear Fase","Criar Indicador":"Crear Indicador","Criar Marco":"Crear Hito","Criar Nova Sala":"Crear Nueva Sala","Criar Novo Post":"Crear Nueva Publicación","Criar Parque":"Crear Parque","Criar Post":"Crear Publicación","Criar Primeira Rodada":"Crear Primera Ronda","Criar Primeiro Projeto":"Crear Primer Proyecto","Criar Projeto":"Crear Proyecto","Criar Projeto a partir do Diagnóstico":"Crear Proyecto a partir del Diagnóstico","Criar Questão":"Crear Pregunta","Criar Regras de Exame":"Crear Reglas de Examen","Criar Tarefa":"Crear Tarea","Criar Trilha":"Crear Ruta de Aprendizaje","Criar Trilha com Sugestões":"Crear Ruta de Aprendizaje con Sugerencias","Criar brigada voluntária de combate a incêndios":"Crear brigada voluntaria de combate a incendios","Criar cadeia produtiva de produtos da caatinga":"Crear cadena productiva de productos de la caatinga","Criar conselho gestor com representantes de cada setor":"Crear consejo gestor con representantes de cada sector","Criar consórcio / região turÃstica":"Crear consorcio / región turÃstica","Criar contexto":"Crear contexto","Criar contexto para uma organização":"Crear contexto para una organización","Criar cooperativa de energia solar comunitária":"Crear cooperativa de energÃa solar comunitaria","Criar cooperativa de produtores orgânicos do cerrado":"Crear cooperativa de productores orgánicos del cerrado","Criar corredor de proteção ao longo dos cursos d'água":"Crear corredor de protección a lo largo de los cursos de agua","Criar e notificar":"Crear y notificar","Criar escola de convivência com o semiárido":"Crear escuela de convivencia con el semiárido","Criar evento da turma":"Crear evento del grupo","Criar fundo de pagamento por serviços ambientais":"Crear fondo de pago por servicios ambientales","Criar jardim botânico comunitário do cerrado":"Crear jardÃn botánico comunitario del cerrado","Criar marca":"Crear marca","Criar marca de produtos do cerrado com a comunidade":"Crear marca de productos del cerrado con la comunidad","Criar novo":"Crear nuevo","Criar outro de
348stino":"Crear otro destino","Criar planos de ação":"Crear planes de acción","Criar primeira fase":"Crear primera fase","Criar primeiro treinamento":"Crear primera capacitación","Criar programa de monitoramento dos recifes de coral":"Crear programa de monitoreo de los arrecifes de coral","Criar programa de palma forrageira para o gado":"Crear programa de palma forrajera para el ganado","Criar programa de restauração das áreas de altitude":"Crear programa de restauración de las áreas de altitud","Criar programa nacional de restauração de bacias do cerrado":"Crear programa nacional de restauración de cuencas del cerrado","Criar projeto":"Crear proyecto","Criar prova":"Crear prueba","Criar rede de escolas do semiárido em todo o Nordeste":"Crear red de escuelas del semiárido en todo el Nordeste","Criar reserva de patrimônio natural da caatinga":"Crear reserva de patrimonio natural de la caatinga",'Criar selo "Pescado Sustentável" para todo o litoral':'Crear sello "Pescado Sostenible" para todo el litoral','Criar selo "Sabor da Caatinga" para os produtos':'Crear sello "Sabor de la Caatinga" para los productos',"Criar sistema de monitoramento por drones e satélites":"Crear sistema de monitoreo por drones y satélites","Criar sua conta":"Crear su
348cuenta","Criar tarefa":"Crear tarea","Criar tarefa de projeto":"Crear tarea de proyecto","Criar trilha":"Crear ruta de aprendizaje","Criar trilha com essas sugestões":"Crear ruta de aprendizaje con estas sugerencias","Criar trilha com sugestões":"Crear ruta de aprendizaje con sugerencias","Criar um hub de tecnologia oceânica na vila":"Crear un hub de tecnologÃa oceánica en la villa","Criar um post":"Crear una publicación","Criar um programa de educação ambiental para toda a região":"Crear un programa de educación ambiental para toda la región","Criar um programa permanente de reciclagem":"Crear un programa permanente de reciclaje","Criar um projeto":"Crear un proyecto","Criar uma Reserva Extrativista com proteção federal":"Crear una Reserva Extractivista con protección federal","Criar uma atribuição":"Crear una asignación","Criar uma sala":"Crear una sala","Criar uma área marinha protegida com pesca artesanal":"Crear una área marina protegida con pesca artesanal","Criar universidade da caatinga com pesquisa e extensão":"Crear universidad de la caatinga con investigación y extensión","Criar área protegida":"Crear área protegida",Criação:"Creación","Criação automática ou manual pelo gestor":"Creación automática o manual por el gestor","Criação de desertos artificiais":"Creación de desiertos artificiales","Criação de rodadas (rounds) com perÃodo de coleta definido":"Creación de rondas (rounds) con perÃodo de recolección definido","Criação, aplicação e correção de provas":"Creación, aplicación y corrección de exámenes",Criações:"Creaciones","Crie e edite capacitações no catálogo de treinamentos.":"Cree y edite capacitaciones en el catálogo de entrenamientos.","Crie e gerencie badges concedidas aos alunos. Use códigos estáveis (ex:":"Cree y gestione insignias concedidas a los alumnos. Use códigos estables (ej:","Crie e gerencie organizações para agrupar usuários.":"Cree y gestione organizaciones para agrupar usuarios.","Crie e gerencie projetos baseados em diagnósticos e relatórios":"Crea y gestiona proyectos basados en diagnósticos e informes","Crie percursos com etapas, pré-requisitos e gatilhos por status do diagnóstico.":"Crea recorridos con etapas, requisitos previos y activadores según el estado del diagnóstico.","Crie projetos vinculados a planos de ação. Organize em fases, milestones e tarefas. Acompanhe o progresso e associe a diagnósticos especÃficos.":"Cree proyectos vinculados a planes de acción. Organice en fases, hitos y tareas. Siga el progreso y asocie a diagnósticos especÃficos.","Crie questões de múltipla escolha vinculadas a pilares e temas.":"Cree preguntas de opción múltiple vinculadas a pilares y temas.","Crie seu primeiro projeto baseado em um diagnóstico calculado e relatório gerado.":"Crea tu primer proyecto basado en un diagnóstico calculado y un informe generado.","Crie sua conta para acessar o SISTUR":"Cree su cuenta para acceder a SISTUR","Crie sua primeira sala para organizar alunos e atividades.":"Cree su primera sala para organizar alumnos y actividades.","Crie trilhas formativas agrupando treinamentos para seus públicos-alvo.":"Crea rutas formativas agrupando capacitaciones para tus públicos objetivo.","Crie turmas com nome, disciplina e perÃodo. Matricule seus alunos referenciados nas salas para organizar o conteúdo por grupo.":"Cree grupos con nombre, disciplina y perÃodo. Matricule a sus alumnos referenciados en las aulas para organizar el contenido por grupo.","Crie turmas organizadas por disciplina e perÃodo para gerenciar seus alunos e atribuir conteúdo de forma estruturada.":"Cree grupos organizados por asignatura y perÃodo para gestionar a sus alumnos y asignar contenido de forma estructurada.","Crie uma conta para um novo membro da sua organização.":"Cree una cuenta para un nuevo miembro de su organización.","Crie uma nova rodada de avaliação para um destino turÃstico.":"Cree una nueva ronda de evaluación para un destino turÃstico.","Crie uma sala para começar a ver métricas dos seus alunos.":"Crea un aula para comenzar a ver las métricas de tus estudiantes.",'Crie uma tarefa no projeto "Revitalização do Centro Histórico" com o tÃtulo "Revisar indicadores de sinalização" e prioridade alta.':'Cree una tarea en el proyecto "Revitalización del Centro Histórico" con el tÃtulo "Revisar indicadores de señalización" y prioridad alta.',"Crie uma trilha agrupando treinamentos para um percurso estruturado de capacitação.":"Crea una ruta de aprendizaje agrupando capacitaciones para un recorrido estructurado de formación.","Crie uma turma para visualizar métricas agregadas aqui.":"Crea un grupo para visualizar métricas agregadas aquÃ.","Crie, edite ou remova marcas/redes. As unidades de cada diagnóstico empresarial são associadas à marca nesta etapa.":"Cree, edite o elimine marcas/redes. Las unidades de cada diagnóstico empresarial se asocian a la marca en esta etapa.","Crise de Poluição":"Crisis de Contaminación","Cristal formado ao longo de milênios":"Cristal formado a lo largo de milenios",Critério:"Criterio","Critério (texto livre)":"Criterio (texto libre)","Critério:":"Criterio:","Critérios com pontuação e descritores por nÃvel. Total:":"Criterios con puntuación y descriptores por nivel. Total:","Critérios de Aprovação":"Criterios de Aprobación","Critérios de Avaliação":"Criterios de Evaluación","Critérios de avaliação":"Criterios de evaluación","Cronograma detalhado, recursos e orçamento":"Cronograma detallado, recursos y presupuesto","Crustáceo essencial para a cadeia alimentar do mangue":"Crustáceo esencial para la cadena alimentaria del manglar","Crustáceo indicador ambiental":"Crustáceo indicador ambiental","Cruza demanda orgânica, eventos locais e ADR mensal para mapear picos e baixas tarifárias":"Cruza demanda orgánica, eventos locales y ADR mensual para mapear picos y bajas tarifarias","Cruzamento de todos os 96 indicadores":"Cruce de todos los 96 indicadores","Créditos (quantidade de perguntas)":"Créditos (cantidad de preguntas)","Créditos Beni":"Créditos Beni","Créditos adicionados":"Créditos añadidos","Créditos ativos":"Créditos activos","Créditos compartilhados por toda a organização":"Créditos compartidos por toda la organización","Créditos concedidos":"Créditos concedidos","Créditos da organização":"Créditos de la organización","Créditos de carbono são instrumentos de mercado para compensar emissões de COâ.":"Créditos de carbono son instrumentos de mercado para compensar emisiones de COâ.","Créditos do Professor Beni":"Créditos del Profesor Beni","Créditos entram depois que a cota mensal do plano acaba. O acesso ilimitado ignora qualquer cota enquanto estiver válido.":"Los créditos entran después de que la cuota mensual del plan se agota. El acceso ilimitado ignora cualquier cuota mientras sea válido.","Créditos pessoais com melhor custo por pergunta":"Créditos personales con mejor costo por pregunta","Créditos pessoais para o Professor Beni":"Créditos personales para el Profesor Beni","Créditos por usuário":"Créditos por usuario","Créditos próprios":"Créditos propios","Créditos valem 12 meses e são consumidos após a cota mensal. Pacotes: 50 (R$ 14,90), 150 (R$ 34,90), org 500 (R$ 99).":"Los créditos valen 12 meses y se consumen después de la cuota mensual. Paquetes: 50 (R$ 14,90), 150 (R$ 34,90), org 500 (R$ 99).",CrÃtica:"CrÃtica",CrÃtico:"CrÃtico","CrÃtico (0-3.33), Atenção (3.34-6.66), Adequado (6.67-10)":"CrÃtico (0-3.33), Atención (3.34-6.66), Adecuado (6.67-10)","CrÃtico â Revisar em 6 meses":"CrÃtico â Revisar en 6 meses","CrÃtico:":"CrÃtico:","CrÃtico: pontuação ⤠33% â bloqueio operacional e prioridade máxima.":"CrÃtico: puntuación ⤠33% â bloqueo operacional y prioridad máxima.","CrÃtico=6m | Atenção=12m | Adequado=18m":"CrÃtico=6m | Atención=12m | Adecuado=18m","Cuidado com armadilhas ambientais! Desmatamento, poluição e mineração ilegal causam dano à sua saúde.":"¡Cuidado con las trampas ambientales! La deforestación, la contaminación y la minerÃa ilegal dañan tu salud.","Cuidado!":"¡Cuidado!","Cuidado! Muita construção polui a natureza.":"¡Cuidado! Demasiadas construcciones contaminan la naturaleza.","Cuide do lixo!":"¡Cuide la basura!","Culpar a comunidade por não ter agido sozinha":"Culpar a la comunidad por no haber actuado sola","Cultura e Patrimônio":"Cultura y Patrimonio",Cultural:g2,Curso:h2,"Curso / Prova":"Curso / Examen","Curso LMS":"Curso LMS","Curso LMS Vinculado":"Curso LMS Vinculado","Curso base":"Curso base",'Curso base "Fundamentos do SISTUR" liberado':'Curso base "Fundamentos de SISTUR" liberado',"Curso base + 10 perguntas ao Beni (grátis)":"Curso base + 10 preguntas a Beni (gratis)","Curso base do EDU":"Curso base del EDU","Curso base obrigatório":"Curso básico obligatorio","Curso base obrigatório: concluÃ-lo libera todas as trilhas formativas.":"Curso base obligatorio: completarlo desbloquea todas las rutas formativas.","Curso concluÃdo / perguntas esgotadas / diagnóstico rodado":"Curso concluido / preguntas agotadas / diagnóstico ejecutado","Curso concluÃdo. Trilhas liberadas.":"Curso completado. Rutas de aprendizaje desbloqueadas.","Curso criado com sucesso":"Curso creado con éxito","Curso marcado como concluÃdo":"Curso marcado como completado","Curso não especificado":"Curso no especificado","Curso sem tÃtulo":"Curso sin tÃtulo","Curso vinculado":"Curso vinculado","Cursor / Claude Code":"Cursor / Claude Code",Cursos:f2,"Cursos Cadastrados":"Cursos Registrados","Cursos Prescritos":"Cursos Prescritos","Cursos e lives baseados em seus indicadores":"Cursos y transmisiones en vivo basad
348os en tus indicadores","Cursos e lives recomendados com base nos indicadores":"Cursos y transmisiones en vivo recomendados según los indicadores","Cursos mais relevantes com base nos indicadores selecionados":"Cursos más relevantes con base en los indicadores seleccionados","Cursos que apoiam a execução deste projeto":"Cursos que apoyan la ejecución de este proyecto","Cursos recomendados pelo diagnóstico":"Cursos recomendados por el diagnóstico","Cursos sugeridos":"Cursos sugeridos","Cursos são prescritos automaticamente com base em regras determinÃsticas e respeitando bloqueios IGMA.":"Los cursos se prescriben automáticamente en base a reglas determinÃsticas y respetando bloqueos IGMA.","Cursos vinculados automaticamente":"Cursos vinculados automáticamente","Cursos, trilhas de aprendizado e capacitação em turismo sustentável.":"Cursos, rutas de aprendizaje y capacitación en turismo sostenible.","Cursos, trilhas, provas, certificação e gamificação":"Cursos, rutas, exámenes, certificación y gamificación","Curta posts e comentários úteis.":"Dale me gusta a publicaciones y comentarios útiles.","Curtidas e comentários aparecem em cada post.":"Me gusta y comentarios aparecen en cada publicación.","Curtir post":"Me gusta la publicación","Custo de aquisição (R$)":"Costo de adquisición (R$)","Custo-eficiente, alto volume":"Costo-eficiente, alto volumen",Cálculo:"Cálculo","Cálculo Interno":"Cálculo Interno","Cálculo de Pilares":"Cálculo de Pilares","Cálculo realizado com sucesso!":"¡Cálculo realizado con éxito!",Código:"Código","Código (estável, snake_case)":"Código (estable, snake_case)","Código *":"Código *","Código IBGE":"Código IBGE","Código IBGE + UF + Região TurÃstica":"Código IBGE + UF + Región TurÃstica","Código IBGE deve ter 7 dÃgitos":"El código IBGE debe tener 7 dÃgitos","Código IBGE não disponÃvel":"Código IBGE no disponible","Código IBGE: {{v0}}":"Código IBGE: {{v0}}","Código copiado":"Código copiado","Código copiado!":"¡Código copiado!","Código da Organização":"Código de la Organización","Código de Organização (opcional)":"Código de Organización (opcional)","Código de Verificação":"Código de Verificación","Código de Verificação:":"Código de Verificación:","Código de convite gerado!":"¡Código de invitación generado!","Código de verificação":"Código de verificación","Código desativado":"Código desactivado","Código do Curso":"Código del Curso","Código do Professor":"Código del Profesor","Código do indicador (ex: RA001)":"Código del indicador (ej: RA001)","Código e tÃtulo são obrigatórios":"Código y tÃtulo son obligatorios","Código inválido, já expirado ou você já pertence a essa organização.":"Código inválido, ya expirado o ya pertenece a esta organización.","Código não encontrado":"Código no encontrado","Código-fonte: 44 páginas, 154+ componentes, 50+ hooks, 20+ edge functions":"Código fuente: 44 páginas, 154+ componentes, 50+ hooks, 20+ edge functions","Código:":"Código:","Código: {{v0}}":"Código: {{v0}}","Códigos de Convite da Organização":"Códigos de Invitación de la Organización",DATASUS:v2,"DATASUS â Ministério da Saúde":"DATASUS â Ministerio de Salud","DATASUS â Saúde":"DATASUS â Salud","DATASUS.":"DATASUS.","DATASUS/CNES (datasus_health_cache)":"DATASUS/CNES (datasus_health_cache)","DATASUS/CNES â hospitais, leitos, pronto-socorro 24h e densidade por 1k habitantes do municÃpio":"DATASUS/CNES â hospitales, camas, urgencias 24h y densidad por 1k habitantes del municipio","DATASUS/CNES: total de leitos hospitalares no municÃpio ÷ população à 1.000.":"DATASUS/CNES: total de camas hospitalarias en el municipio ÷ población à 1.000.","DATASUS: saúde e bem-estar":"DATASUS: salud y bienestar",DERIVED:b2,DOCX:A2,DOWN:y2,"Dado do IBGE (Pesquisa de Informações Básicas Municipais - MUNIC). Existência de conselho municipal de turismo.":"Dato del IBGE (Investigación de Información Básica Municipal - MUNIC). Existencia de consejo municipal de turismo.","Dado revisado, salvo e c
348onfirmado":"Dato revisado, guardado y confirmado",Dados:S2,"Dados Coletados":"Datos Recopilados","Dados Diagnósticos â IA â Plano Estratégico":"Datos Diagnósticos â IA â Plan Estratégico","Dados Prontos":"Datos Listos","Dados cadastrais aplicados ao perfil":"Datos de registro aplicados al perfil","Dados da RAIS/CAGED (Ministério do Trabalho). Filtre por CNAEs de turismo (55, 56, 79, 91, 93).":"Datos de RAIS/CAGED (Ministerio del Trabajo). Filtre por CNAEs de turismo (55, 56, 79, 91, 93).","Dados da Secretaria de Turismo, Observatório de Turismo ou estimativas do MTur.":"Datos de la SecretarÃa de Turismo, Observatorio de Turismo o estimaciones del MTur.","Dados da organização ou destino não encontrados":"No se encontraron datos de la organización o del destino","Dados de campo + Secretarias Municipais":"Datos de campo + SecretarÃas Municipales","Dados de organizações, empresas e destinos turÃsticos são de propriedade das respectivas organizações, mas o Titular detém uma licença perpétua, irrevogável e não exclusiva para utilizar estes dados de forma agregada e anonimizada para fins analÃticos, estatÃsticos e de melhoria da Plataforma.":"Los datos de organizaciones, empresas y destinos turÃsticos son propiedad de las respectivas organizaciones, pero el Titular posee una licencia perpetua, irrevocable y no exclusiva para utilizar estos datos de forma agregada y anonimizada para fines analÃticos, estadÃsticos y de mejora de la Plataforma.","Dados de regiões turÃsticas e categorização de municÃpios do Ministério do Turismo":"Datos de regiones turÃsticas y categorización de municipios del Ministerio de Turismo","Dados do CADASTUR (MTur). Número de agências de turismo cadastradas no municÃpio. O sistema busca automaticamente.":"Datos del CADASTUR (MTur). Número de agencias de turismo registradas en el municipio. El sistema busca automáticamente.","Dados do CADASTUR (MTur). Número de guias de turismo cadastrados no municÃpio. O sistema busca automaticamente.":"Datos del CADASTUR (MTur). Número de guÃas de turismo registrados en el municipio. El sistema busca automáticamente.","Dados do CAGED/MTE ou RAIS. Calcule: (empregos formais em ACTs ÷ total de empregos formais) à 100.":"Datos del CAGED/MTE o RAIS. Calcule: (empleos formales en ACTs ÷ total de empleos formales) à 100.","Dados do IBGE (Censo ou PNAD ContÃnua). % da população com ensino médio completo ou superior.":"Datos del IBGE (Censo o PNAD Continua). % de la población con educación secundaria completa o superior.","Dados do IBGE (Censo) ou SNIS (Sistema Nacional de Informações sobre Saneamento). Percentual de domicÃlios com água tratada, esgoto e coleta de lixo.":"Datos del IBGE (Censo) o SNIS (Sistema Nacional de Información sobre Saneamiento). Porcentaje de domicilios con agua tratada, alcantarillado y recolección de basura.","Dados do IBGE podem ser importados automaticamente para alguns indicadores.":"Los datos del IBGE pueden importarse automáticamente para algunos indicadores.","Dados do INPE (PRODES/DETER) ou MapBiomas. Taxa de desmatamento no municÃpio em km²/ano.":"Datos del INPE (PRODES/DETER) o MapBiomas. Tasa de deforestación en el municipio en km²/año.","Dados educacionais (IDEB)":"Datos educativos (IDEB)","Dados fiscais municipais":"Datos fiscales municipales","Dados importados via":"Datos importados vÃa","Dados incorretos/não aparecem":"Datos incorrectos/no aparecen","Dados inválidos":"Datos inválidos","Dados isolados por organização (RLS). Papéis: ADMIN (global), ORG_ADMIN (escopo local), ANALYST, VIEWER, ESTUDANTE e PROFESSOR. O papel define os limites do plano.":"Datos aislados por organización (RLS). Roles: ADMIN (global), ORG_ADMIN (alcance local), ANALYST, VIEWER, ESTUDANTE y PROFESSOR. El rol define los lÃmites del plan.","Dados oficiais atualizados após o último cálculo":"Datos oficiales actualizados después del último cálculo","Dados oficiais dispersos em múltiplas APIs sem integração":"Datos oficiales dispersos en múltiples APIs sin integración","Dados podem ser enriquecidos":"Los datos se pueden enriquecer","Dados preenchidos com sucesso!":"¡Datos completados con éxito!","Dados prontos":"Datos listos","Dados prontos para cálculo":"Datos listos para el cálculo","Dados reais não são afetados.":"Los datos reales no se ven afectados.","Dados socioeconômicos atualizados (IBGE/SIDRA)":"Datos socioeconómicos actualizados (IBGE/SIDRA)","Dados socioeconômicos, demográficos e territoriais":"Datos socioeconómicos, demográficos y territoriales","Dados suficientes para cálculo do diagnóstico ({{v0}}/{{v1}}
348 preenchidos)":"Datos suficientes para el cálculo del diagnóstico ({{v0}}/{{v1}} completados)","Dados validados":"Datos validados","Dados validados com sucesso":"Datos validados con éxito","Dados validados com sucesso!":"Datos validados correctamente!","Dados via API Oficial":"Datos vÃa API Oficial","Dados, fontes e cálculos rastreáveis":"Datos, fuentes y cálculos rastreables","Dança da chuva":"Danza de la lluvia",Dashboard:E2,"Dashboard Principal":"Panel Principal","Dashboard de gestão para professores":"Dashboard de gestión para profesores","Dashboard dedicado com KPIs financeiros, operacionais e de sustentabilidade":"Dashboard dedicado con KPIs financieros, operacionales y de sostenibilidad",Data:C2,"Data API":"Fecha API","Data Prevista *":"Fecha Prevista *","Data de Conclusão":"Fecha de Finalización","Data de Criação":"Fecha de Creación","Data de Emissão":"Fecha de Emisión","Data de InÃcio":"Fecha de Inicio","Data de Término":"Fecha de Término","Data de conclusão:":"Fecha de finalización:","Data do Recurso":"Fecha de la Apelación","Data do último login efetivo de cada usuário no perÃodo":"Fecha del último inicio de sesión efectivo de cada usuario en el perÃodo","Data fim *":"Fecha fin *","Data inÃcio *":"Fecha inicio *","Data/Hora":"Fecha/Hora",DataSUS:T2,"Decisão Coletiva":"Decisión Colectiva","Decisões em grupo!":"¡Decisiones en grupo!","Dedicação Total":"Dedicación Total",Defasad
348o:P2,"Defenda a savana mais biodiversa do planeta contra o avanço agrÃcola e queimadas.":"Defiende la sabana más biodiversa del planeta contra el avance agrÃcola y las quemas.","Defenda a savana mais biodiversa do planeta.":"Defiende la sabana más biodiversa del planeta.","Defenda seu destino turÃstico com cartas estratégicas!":"¡Defiende tu destino turÃstico con cartas estratégicas!","Defina a data de disponibilidade (quando os alunos poderão acessar).":"Define la fecha de disponibilidad (cuando los alumnos podrán acceder).","Defina as configurações e metodologia do projeto":"Define la configuración y metodologÃa del proyecto","Defina datas de inÃcio e fim previstas.":"Define las fechas de inicio y fin previstas.","Defina datas planejadas nas fases ou no projeto para visualizar a linha do tempo.":"Define fechas planificadas en las fases o en el proyecto para visualizar la lÃnea de tiempo.","Defina duração estimada e nÃvel de dificuldade.":"Define la duración estimada y el nivel de dificultad.","Defina limite de tempo para cada prova.":"Define el lÃmite de tiempo para cada prueba.","Defina nÃvel de dificuldade e tags.":"Define el nivel de dificultad y las etiquetas.","Defina número de questões por prova.":"Define el número de preguntas por prueba.",'Defina o nome da sala (ex: "Turismo Sustentável 2025.1").':'Define el nombre de la sala (ej: "Turismo Sostenible 2025.1").',"Defina o perÃodo (data de inÃcio e fim).":"Define el perÃodo (fecha de inicio y fin).","Defina o prazo de entrega (deadline).":"Define la fecha lÃmite de entrega (deadline).","Defina o tÃtulo e o perÃodo da avaliação.":"Define el tÃtulo y el perÃodo de la evaluación.","Defina os dados da marca. As unidades em cada municÃpio são vinculadas via o diagnóstico empresarial.":"Defina los datos de la marca. Las unidades en cada municipio se vinculan a través del diagnóstico empresarial.","Defina quem pode visualizar ou editar este projeto. Apenas Donos podem gerenciar a equipe.":"Define quién puede ver o editar este proyecto. Solo los Propietarios pueden gestionar el equipo.","Defina quem poderá visualizar e editar este destino e diagnóstico. Isso afetará a visibilidade para outros membros da sua organização.":"Defina quién podrá visualizar y editar este destino y diagnóstico. Esto afectará la visibilidad para otros miembros de su organización.","Defina quem poderá visualizar este diagnóstico.":"Defina quién podrá visualizar este diagnóstico.","Defina responsável, prazo e prioridade.":"Define el responsable, plazo y prioridad.","Define a":"Define la","Define a ordem fixa de seções que TODO relatório gerado deve seguir. O agente de IA recebe esta lista como contrato obrigatório â UMA passada, sem repetir nem voltar a seções já escritas.":"Define el orden fijo de secciones que TODO informe generado debe seguir. El agente de IA recibe esta lista como contrato obligatorio â UNA pasada, sin repetir ni volver a secciones ya escritas.","Define periodicidade obrigatória: CrÃtico â revisão em 6 meses | Atenção â 12 meses | Adequado â 18 meses. Campo next_review_recommended_at calculado automaticamente.":"Define periodicidad obligatoria: CrÃtico â revisión en 6 meses | Atención â 12 meses | Adecuado â 18 meses. Campo next_review_recommended_at calculado automáticamente.","Definir visibilidade":"Definir visibilidad","Definição de coordenadas geográficas":"Definición de coordenadas geográficas","Definição de escopo, objetivos e stakeholders":"Definición del alcance, los objetivos y las partes interesadas","Definição, fonte oficial, periodicidade e pilar de cada indicador":"Definición, fuente oficial, periodicidad y pilar de cada indicador","Degradação do solo em regiões áridas":"Degradación del suelo en regiones áridas","Deixar para as autoridades resolverem":"Dejar que las autoridades resuelvan","Deixe em branco se não possuir um código.":"Deje en blanco si no posee un código.","Deixe seus dados e retornamos com a proposta ideal para o seu caso.":"Deje sus datos y le contactaremos con la propuesta ideal para su caso.","Deixe um comentário (opcional)":"Deja un comentario (opcional)","Demais trilhas bloqueadas após concluir o curso base":"Demasiadas rutas bloqueadas después de concluir el curso base",Demanda:R2,"Demanda & Tendências":"Demanda & Tendencias","Demanda & Trends":"Demanda & Trends","Demanda analisada":"Demanda analizada","Demanda aérea (ANAC, 12 meses)":"Demanda aérea (ANAC, 12 meses)","Demanda orgânica (busca pública)":"Demanda orgánica (búsqueda pública)","Demanda/Trends":"Demanda/Trends",Demo:x2,"Democracia começa com a participação de todos.":"La democracia comienza con la participación de todos.","Demográficos, econômicos e Censo (SIDRA)":"Demográficos, económicos y Censo (SIDRA)","Demonstração do incremento":"Demostración del incremento",Densidade:w2,"Dentro da trilha, clique em uma capacitação para assistir ao conteúdo.":"Dentro de la ruta, haz clic en una capacitación para ver el contenido.","Dentro do projeto, crie fases para organizar o trabalho e adicione tarefas a cada fase.":"Dentro del proyecto, crea fases para organizar el trabajo y añade tareas a cada fase.",Denunciar:I2,"Denunciar a corrupção e fortalecer o conselho":"Denunciar la corrupción y fortalecer el consejo","Denunciar a tentativa de suborno":"Denunciar el intento de soborno","Denunciar o esquema e assumir a responsabilidade pelo erro":"Denunciar el esquema y asumir la responsabilidad por el error","Denunciar o uso ilegal de agrotóxicos":"Denunciar el uso ilegal de agrotóxicos","Denunciar publicamente e mobilizar a comunidade":"Denunciar públicamente y movilizar a la comunidad","Denuncie conteúdo inadequado para moderação.":"Denuncia contenido inadecuado para moderación.","Denúncia do Fórum":"Denuncia del Foro","Denúncia enviada. Nossa equipe irá analisar.":"Denuncia enviada. Nuestro equipo la analizará.","Depen
348dência Intersetorial":"Dependencia Intersectorial","Dependência de carro":"Dependencia de coche","Depois de conectado, basta conversar naturalmente. Exemplos de pedidos que o assistente consegue atender:":"Después de conectado, basta con conversar naturalmente. Ejemplos de peticiones que el asistente puede atender:",Derivada:D2,Derivado:O2,"Derivado (cálculo interno)":"Derivado (cálculo interno)","Derivado: demanda + eventos + ADR":"Derivado: demanda + eventos + ADR","Derivar Sazonalidade Tarifária":"Derivar Estacionalidad Tarifaria","Derrame de Ãleo":"Derrame de Petróleo","Derretimento das geleiras":"Derretimiento de los glaciares",Desafixar:M2,"Desafixar post":"Desfijar publicación",Desativar:N2,"Desativar respostas por voz":"Desactivar respuestas por voz","Desativar som":"Desactivar sonido","Desative VPN, antivÃrus, firewall corporativo ou bloqueadores (uBlock/AdBlock). Tente em aba anônima.":"Desactiva la VPN, el antivirus, el firewall corporativo o los bloqueadores (uBlock/AdBlock). Intenta en una pestaña de incógnito.",Desbloquear:z2,"Desbloqueie qualquer badge nova hoje.":"Desbloquea cualquier insignia nueva hoy.",Descartados:j2,Descartar:k2,"Descartar (+1ð°)":"Descartar (+1ð°)",Descarte:_2,"Descarte cartas que não precisa para ganhar +1 moeda!":"¡Descarta las cartas que no necesitas para ganar +1 moneda!","Descarte irregular de resÃduos!":"¡Descarte irregular de residuos!","Descoberta automática de eventos":"Descubrimiento automático de eventos","Descobre novos caminhos na natureza":"Descubre nuevos caminos en la naturaleza","Descreva a funcionalidade que gostaria de ver no sistema...":"Describa la funcionalidad que le gustarÃa ver en el sistema...","Descreva a observação técnica. Use @ para mencionar membros.":"Describa la observación técnica. Use @ para mencionar miembros.","Descreva as ações realizadas...":"Describe las acciones realizadas...","Descreva o conteúdo obrigatório desta seção.":"Describa el contenido obligatorio de esta sección.","Descreva o conteúdo que você precisa e nossa equipe irá avaliá-lo":"Describa el contenido que necesita y nuestro equipo lo evaluará","Descreva o motivo *":"Describa el motivo *","Descreva o objetivo do treinamento":"Describe el objetivo de la capacitación","Descreva o objetivo e conteúdo da trilha...":"Describe el objetivo y el contenido de la ruta de aprendizaje...","Descreva o que aconteceu, os passos para reproduzir o erro e o que era esperado...":"Describa lo que pasó, los pasos para reproducir el error y lo que se esperaba...","Descreva o que esta seção deve conter (tabelas, parágrafos, evidênciasâ¦)":"Describa lo que esta sección debe contener (tablas, párrafos, evidenciasâ¦)","Descreva o que você espera aprender com este conteúdo...":"Describa lo que espera aprender con este contenido...","Descreva os objetivos e escopo do projeto...":"Describe los objetivos y el alcance del proyecto...","Descreva por que discorda do resultado...":"Describe por qué no estás de acuerdo con el resultado...","Descreva sua dúvida...":"Describe tu duda...","Descritores por nÃvel (do menor para o maior)":"Descriptores por nivel (del menor al mayor)",Descrição:"Descripción","Descrição (contrato)":"Descripción (contrato)","Descrição (ex: Plano Nacional de Turismo 2024-2027)":"Descripción (ej: Plan Nacional de Turismo 2024-2027)","Descrição (opcional)":"Descripción (opcional)","Descrição / Objetivo":"Descripción / Objetivo","Descrição completa do conteúdo":"Descripción completa del contenido","Descrição da fase":"Descripción de la fase","Descrição da tarefa":"Descripción de la tarea","Descrição da tarefa.":"Descripción de la tarea.","Descrição detalhada":"Descripción detallada","Descrição detalhada do indicador":"Descripción detallada del indicador","Descrição detalhada do projeto (opcional - será gerada pela IA)":"Descripción detallada del proyecto (opcional - será generada por la IA)","Descrição do marco":"Descripción del hito","Descrição do projeto":"Descripción del proyecto","Descrição:":"Descripción:","Descubra os segredos da fauna e flora tropical":"Descubre los secretos de la fauna y flora tropical","Desempenho em Exames":"Desempeño en Exámenes","Desenvolver filtragem local de microplásticos":"Desarrollar filtración local de microplásticos","Desenvolver novas habilidades":"Desarrollar nuevas habilidades","Desenvolvimento de Infraestrutura":"Desarrollo de Infraestructura","Desenvolvimento de Produtos":"Desarrollo de Productos","Desenvolvimento e Ordem Pública":"Desarrollo y Orden Público","Desenvolvimento que atende o presente sem comprometer o futuro":"Desarrollo que satisface el presente sin comprometer el futuro","Desertificação é o processo de degradação do solo que o torna improdutivo.":"La desertificación es el proceso de degradación del suelo que lo vuelve improductivo.","Desgaste causado por desmatamento e chuvas intensas":"Desgaste causado por deforestación y lluvias intensas","Desistir e ir embora":"Rendirse e irse","Deslizamento de Terra":"Deslizamiento de Tierra","Destaques: melhor desempenho e alunos com dificuldade.":"Destacados: mejor rendimiento y alumnos con dificultad.",Destinatário:"Destinatario",Destino:q2,"Destino atualizado com sucesso!":"¡Destino actualizado con éxito!","Destino com limitações identificadas":"Destino con limitaciones identificadas","Destino criado com sucesso!":"¡Destino creado con éxito!","Destino criado:":"Destino creado:","Destino da Mandala":"Destino de la Mandala","Destino excluÃdo com sucesso!":"¡Destino eliminado con éxito!","Destino não vinculado":"Destino no vinculado","Destino pronto para visitação consciente":"Destino listo para visita consciente","Destino selecionado:":"Destino seleccionado:","Destino turÃstico":"Destino turÃstico",Destinos:L2,"Destinos Cadastrados":"Destinos Registrados","Destinos Públicos":"Destinos Públicos","Destinos Totais":"Destinos Totales","Destinos TurÃsticos Certificados":"Destinos TurÃsticos Certificados","Destinos e empresas":"Destinos y empresas","Destinos maduros, projetos de financiamento, estudos acadêmicos, certificações":"Destinos maduros, proyectos de financiación, estudios académicos, certificaciones","Destinos turÃsticos":"Destinos turÃsticos","Destinos turÃsticos acessÃveis ao usuário (com unidade/brand quando aplicável).":"Destinos turÃsticos accesibles al usuario (con unidad/marca cuando aplicable).","Destinos turÃsticos com IBGE code e coordenadas":"Destinos turÃsticos con código IBGE y coordenadas","Destinos, diagnósticos, gargalos e capacitações":"Destinos, diagnósticos, cuellos de botella y capacitaciones","Destruição do mangue para construção!":"¡Destrucción del manglar para construcción!","Destruição ilegal de mangues para construção urbana":"Destrucción ilegal de manglares para construcción urbana",Desvalidar:U2,"Detalhamento das bases oficiais que alimentaram o pré-preenchimento automático":"Detalle de las bases oficiales que alimentaron el pre-llenado automático","Detalhar diagnóstico":"Detallar diagnóstico",Detalhe:B2,Detalhes:
348F2,"Detalhes (opcional)":"Detalles (opcional)","Detalhes Adicionais":"Detalles Adicionales","Detalhes adicionais (opcional)":"Detalles adicionales (opcional)","Detalhes da Sessão":"Detalles de la Sesión","Detalhes do Evento":"Detalles del Evento","Detalhes do Log":"Detalles del Log","Detalhes do Projeto":"Detalles del Proyecto","Detalhes por aluno":"Detalles por alumno","Detecta automaticamente site oficial, Google Business, OTAs (Booking, Expedia, Airbnbâ¦) e redes sociais â preenche maturidade digital e canal direto.":"Detecta automáticamente sitio web oficial, Google Business, OTAs (Booking, Expedia, Airbnbâ¦) y redes sociales â rellena madurez digital y canal directo.","Detecta crescimento estrutural que degrada o ambiente. Se OE evoluiu (melhorou) entre ciclos mas RA regrediu (piorou), o sistema gera alerta de externalidade negativa.":"Detecta crecimiento estructural que degrada el ambiente. Si OE evolucionó (mejoró) entre ciclos pero RA retrocedió (empeoró), el sistema genera una alerta de externalidad negativa.","Detecta imports @/... fora do escopo declarado do módulo":"Detecta imports @/... fuera del alcance declarado del módulo","Detecta site oficial, Google Business, OTAs e redes sociais â preenche maturidade digital e canal direto":"Detecta sitio web oficial, Google Business, OTAs y redes sociales â rellena madurez digital y canal directo","Detecção de troca de aba e tempo anômalo.":"Detección de cambio de pestaña y tiempo anómalo.","Determinação Automática de Status":"Determinación Automática de Estatus",DeterminÃstica:"DeterminÃstica","DeterminÃstico:":"DeterminÃstico:","Devastação ambiental.":"Devastación ambiental.",Dez:G2,"Dezenas de nascentes estão comprometidas pelo desmatamento e agrotóxicos. Rios que abasteciam cidades inteiras estão secando.":"Decenas de nacimientos están comprometidos por la deforestación y los agrotóxicos. RÃos que abastecÃan ciudades enteras se están secando.",Diagnóstico:"Diagnóstico","Diagnóstico 2024 - Bonito":"Diagnóstico 2024 - Bonito","Diagnóstico 2024 - Gramado":"Diagnóstico 2024 - Gramado","Diagnóstico 2024 - Paraty":"Diagnóstico 2024 - Paraty","Diagnóstico Calculado":"Diagnóstico Calculado","Diagnóstico Criado":"Diagnóstico Creado","Diagnóstico Sistêmico":"Diagnóstico Sistémico","Diagnóstico atualizado com sucesso!":"¡Diagnóstico actualizado con éxito!","Diagnóstico calculado com sucesso":"Diagnóstico calculado correctamente","Diagnóstico carregado":"Diagnóstico cargado","Diagnóstico completo":"Diagnóstico completo","Diagnóstico completo com todos os indicadores IGMA e complementares para análise profunda. Recomendado para projetos de grande porte e certificações.":"Diagnóstico completo con todos los indicadores IGMA y complementarios para análisis profundo. Recomendado para proyectos de gran envergadura y certificaciones.","Diagnóstico completo com todos os indicadores IGMA. Recomendado para projetos de grande porte e certificações.":"Diagnóstico completo con todos los indicadores IGMA. Recomendado para proyectos de gran envergadura y certificaciones.","Diagnóstico completo: notas por pilar (RA, OE, AO) e indicadores relevantes.":"Diagnóstico completo: notas por pilar (RA, OE, AO) e indicadores relevantes.","Diagnóstico configurado":"Diagnóstico configurado","Diagnóstico criado com sucesso!":"¡Diagnóstico creado con éxito!","Diagnóstico criado:":"Diagnóstico creado:","Diagnóstico de rede com":"Diagnóstico de red con","Diagnóstico de rede â {{v0}} unidades. Cada aba abaixo coleta dados de uma unidade.":"Diagnóstico de red â {{v0}} unidades. Cada pestaña a continuación recolecta datos de una unidad.","Diagnóstico empresarial":"Diagnóstico empresarial","Diagnóstico empresarial (privado)":"Diagnóstico empresarial (privado)","Diagnóstico empresarial por empreendimento/marca. R$ 59 por pessoa/mês (mÃnimo 5 usuários).":"Diagnóstico empresarial por empresa/marca. R$ 59 por persona/mes (mÃnimo 5 usuarios).","Diagnóstico empresarial:":"Diagnóstico empresarial:","Diagnóstico enterprise indisponÃvel":"Diagnóstico enterprise no disponible","Diagnóstico excluÃdo com sucesso!":"Diagnóstico eliminado correctamente!","Diagnóstico executado no tier":"Diagnóstico ejecutado en el tier","Diagnóstico inteligente e capacitação para destinos turÃsticos brasileiros.":"Diagnóstico inteligente y capacitación para destinos turÃsticos brasileños.","Diagnóstico intermediário com indicadores estratég
348icos para planejamento de médio prazo. Equilibra profundidade analÃtica com praticidade operacional.":"Diagnóstico intermedio con indicadores estratégicos para planificación a medio plazo. Equilibra profundidad analÃtica con practicidad operacional.","Diagnóstico intermediário para planejamento de médio prazo. Equilibra profundidade analÃtica com praticidade operacional.":"Diagnóstico intermedio para planificación a medio plazo. Equilibra profundidad analÃtica con practicidad operativa.","Diagnóstico não encontrado":"Diagnóstico no encontrado","Diagnóstico não encontrado ou sem acesso.":"Diagnóstico no encontrado o sin acceso.","Diagnóstico não encontrado.":"Diagnóstico no encontrado.","Diagnóstico para empreendimentos privados (hotéis, agências, restaurantes). Usa 22 indicadores especializados e segue a mesma régua de status (Adequado/Atenção/CrÃtico).":"Diagnóstico para emprendimientos privados (hoteles, agencias, restaurantes). Utiliza 22 indicadores especializados y sigue la misma regla de estado (Adecuado/Atención/CrÃtico).","Diagnóstico privado para empreendimentos turÃsticos":"Diagnóstico privado para emprendimientos turÃsticos","Diagnóstico recebido":"Diagnóstico recibido","Diagnóstico rápido focado nos indicadores mais crÃticos para uma visão geral do destino. Ideal para primeiras avaliações e municÃpios com recursos limitados.":"Diagnóstico rápido enfocado en los indicadores más crÃticos para una visión general del destino. Ideal para primeras evaluaciones y municipios con recursos limitados.","Diagnóstico rápido focado nos indicadores mais crÃticos. Ideal para primeiras avaliações e municÃpios com recursos limitados.":"Diagnóstico rápido enfocado en los indicadores más crÃticos. Ideal para primeras evaluaciones y municipios con recursos limitados.","Diagnóstico teaser para organizações":"Diagnóstico teaser para organizaciones","Diagnóstico territorial (público)":"Diagnóstico territorial (público)","Diagnóstico voltou para rascunho. Você pode editar os dados.":"El diagnóstico volvió a borrador. Puedes editar los datos.","Diagnóstico â Ação â Monitoramento":"Diagnóstico â Acción â Monitoreo","Diagnóstico â Capacitação é automático e rastreável, não subjetivo":"Diagnóstico â Capacitación es automático y rastreable, no subjetivo","Diagnóstico, planejamento e monitoramento de destinos":"Diagnóstico, planificación y monitoreo de destinos","Diagnóstico:":"Diagnóstico:",Diagnósticos:"Diagnósticos","Diagnósticos Externos":"Diagnósticos Externos","Diagnósticos Territoriais":"Diagnósticos Territoriales","Diagnósticos de performance hoteleira":"Diagnósticos de rendimiento hotelero","Diagnósticos hoteleiros com indicadores de performance (RevPAR, NPS, etc).":"Diagnósticos hoteleros con indicadores de rendimiento (RevPAR, NPS, etc).","Diagnósticos por pilares, indicadores, monitoramento analÃtico, relatórios e capacitação prescrita.":"Diagnósticos por pilares, indicadores, monitoreo analÃtico, informes y capacitación prescrita.","Diagnósticos públicos com indicadores IGMA para destinos turÃsticos.":"Diagnósticos públicos con indicadores IGMA para destinos turÃsticos.","Diagnósticos sistêmicos (RA/OE/AO) e indicadores.":"Diagnósticos sistémicos (RA/OE/AO) e indicadores.","Diagnósticos sistêmicos, formação certificada e o Professor Beni â do municÃpio ao empreendimento. Comece com o teste gratuito: curso base, 10 perguntas ao Beni e 1 diagnóstico de experimentação.":"Diagnósticos sistémicos, formación certificada y el Profesor Beni â del municipio a la empresa. Empiece con la prueba gratuita: curso base, 10 preguntas a Beni y 1 diagnóstico de experimentación.","Diagnósticos territoriais de municÃpios":"Diagnósticos territoriales de municipios","Diagnósticos turÃsticos municipais são subjetivos, fragmentados e não reprodutÃveis":"Los diagnósticos turÃsticos municipales son subjetivos, fragmentados y no reproducibles","Diagrama de Interações":"Diagrama de Interacciones","Dias consecutivos":"DÃas consecutivos","Dias entre mesmas questões":"DÃas entre mismas cuestiones","Dias para conclusão":"DÃas para la finalización",Dica:V2,"Dica: clique em":"Sugerencia: haz clic en","Dicas ({{v0}})":"Consejos ({{v0}})","Dicas usadas:":"Pistas usadas:","Dif.":"Dif.","Diferenças entre Completo, Executivo e Investidores":"Diferencias entre Completo, Ejecutivo e Inversores",Dificuldade:$2,"Dificuldade de uso":"Dificultad de uso",DifÃcil:"DifÃcil","Digite a nova senha":"Ingresa la nueva contraseña","Digite o enunciado da questão...":"Escriba el enunciado de la pregunta...","Digite o nome do municÃpio para buscar automaticamente no IBGE.":"Escriba el nombre del municipio para buscar automáticamente en el IBGE.","Digite o nome do municÃpio...":"Ingresa el nombre del municipio...","Digite o tÃtulo do seu post...":"Escribe el tÃtulo de tu publicación...","Digite para pesquisar":"Escribe para buscar","Digite seu email para receber o link de recuperação":"Ingresa tu correo electrónico para recibir el enlace de recuperación","Digite sua nova senha":"Ingresa tu nueva contraseña","Digite sua nova senha. Ela deve ter pelo menos 6 caracteres.":"Ingresa tu nueva contraseña. Debe tener al menos 6 caracteres.","Digite sua resposta dissertativa...":"Escribe tu respuesta de desarrollo...","Digite sua resposta...":"Escribe tu respuesta...","Dimensão IGMA":"Dimensión IGMA","Dimensão IGMA:":"Dimensión IGMA:","Dimensão/Tema":"Dimensión/Tema","Dimensões com evidência":"Dimensiones con evidencia","Dinheiro fácil, mas a natureza sofreu muito...":"Dinero fácil, pero la naturaleza sufrió mucho...","Dinheiro fácil, mas à s custas do cerrado. As máquinas não param.":"Dinero fácil, pero a costa del cerrado. Las máquinas no paran.","Dinheiro para plantar árvores":"Dinero para plantar árboles","Dinheiro rápido, mas cada árvore derrubada acelera a desertificação.":"Dinero rápido, pero cada árbol talado acelera la desertificación.","Direto (site/telefone/walk-in)":"Directo (sitio web/teléfono/presencial)",Direção:"Dirección","Direção:":"Dirección:","Dis.":"Dis.",Disciplina:H2,"Discurso de ódio":"Discurso de odio",Discussão:"Discusión","Discuta este relatório com sua equipe. Use @ para mencionar colegas da organização.":"Comenta este informe con tu equipo. Usa @ para mencionar a colegas de la organización.","Disparar E-mail
348s":"Enviar Correos Electrónicos",Dispensar:W2,"Disponibilidade de rodoviária, aeroporto e qualidade de acessos. Fonte: ANTT / ANAC / DNIT. Periodicidade: anual.":"Disponibilidad de terminal de autobuses, aeropuerto y calidad de accesos. Fuente: ANTT / ANAC / DNIT. Periodicidad: anual.",DisponÃvel:"Disponible","DisponÃvel na sua avaliação":"Disponible en su evaluación","DisponÃvel nos planos Pro e Enterprise e durante o teste.":"Disponible en los planes Pro y Enterprise y durante la prueba.",Dissertativa:Q2,Dissertativas:K2,Distribuição:"Distribución","Distribuição de Indicadores":"Distribución de Indicadores","Distribuição de certificados emitidos por área":"Distribución de certificados emitidos por área","Distribuição de eventos nos últimos 30 dias":"Distribución de eventos en los últimos 30 dÃas","Distribuição de indicadores nos 3 pilares do SISTUR":"Distribución de indicadores en los 3 pilares de SISTUR","Distribuição entre Pilares (RA / OE / AO)":"Distribución entre Pilares (RA / OE / AO)","Distribuição mensal de menções":"Distribución mensual de menciones","Distribuição por Categoria":"Distribución por CategorÃa","Distribuição por Escopo":"Distribución por Alcance","Distribuição por Tipo":"Distribución por Tipo","Distribuição por mês":"Distribución por mes","Distribuição por status atual":"Distribución por estado actual","Divergência encontrada ({{v0}})":"Divergencia encontrada ({{v0}})","Divergências corrigidas automaticamente ({{v0}})":"Divergencias corregidas automáticamente ({{v0}})","Diversidade de biomas":"Diversidad de biomas","Diversidade é resistência.":"Diversidad es resistencia.","Diária Média (ADR)":"Tarifa Media Diaria (ADR)","Diária abaixo do mercado â +5%":"Tarifa diaria por debajo del mercado â +5%","Diária acima do mercado â â3%":"Tarifa diaria por encima del mercado â â3%","Diária do mercado (R$)":"Tarifa diaria de mercado (R$)","Diária média em BRL":"Tarifa diaria promedio en BRL","Diária média estimada vs mercado a partir de OTAs públicas (Booking, Google, Hoteis.com)":"Tarifa media estimada vs mercado a partir de OTAs públicas (Booking, Google, Hoteis.com)","Diário de Classe":"Diario de Clase","Dióxido de carbono":"Dióxido de carbono","Do PMS ou relatório financeiro: receita de hospedagem ÷ número de diárias vendidas. Use o perÃodo dos últimos 12 meses.":"Del PMS o informe financiero: ingresos por hospedaje ÷ número de noches vendidas. Use el perÃodo de los últimos 12 meses.","Do RH: (desligamentos no perÃodo ÷ média de funcionários) à 100. Considere os últimos 12 meses.":"De RRHH: (ceses en el perÃodo ÷ promedio de empleados) à 100. Considere los últimos 12 meses.",Docs:Y2,"Documentar tudo e denunciar ao IBAMA":"Documentar todo y denunciar al IBAMA",Documentação:"Documentación","Documentação técnica e metodológica do SISTUR":"Documentación técnica y metodológica del SISTUR","Documentação, metodologia de cálculo e ferramentas do SISTUR":"Documentación, metodologÃa de cálculo y herramientas de SISTUR","Documentação/Tutoriais":"Documentación/Tutoriales","Documento PDF":"Documento PDF","Documento Técnico â Registro de Software":"Documento Técnico â Registro de Software","Documento de referência enviado":"Documento de referencia enviado","Documento em preparação":"Documento en preparación","Documento pedagógico formal exibido na página do curso.":"Documento pedagógico formal mostrado en la página del curso.","Documento pedagógico formal â ementa, competências, carga horária e critérios de avaliação":"Documento pedagógico formal â temario, competencias, carga horaria y criterios de evaluación","Documentos da Base de Conhecimento utilizados":"Documentos de la Base de Conocimiento utilizados","Documentos de apoio que enriquecem diagnósticos e relatórios":"Documentos de apoyo que enriquecen diagnósticos e informes","Documentos de referência nacional injetados em todos os relatórios: PNT (Plano Nacional de Turismo), legislação federal, diretrizes do Ministério do Turismo. Gerenciados exclusivamente por administradores.":"Documentos de referencia nacional inyectados en todos los informes: PNT (Plan Nacional de Turismo), legislación federal, directrices del Ministerio de Turismo. Gestionados exclusivamente por administradores.","Documentos de referência organizados por destino â usados automaticamente em diagnósticos e relatórios":"Documentos de referencia organizados por destino â usados automáticamente en diagnósticos e informes","Documentos de referência usados automaticamente na geração de relatórios e diagnósticos (ex: PNT, legislação, diretrizes)":"Documentos de referencia utilizados automáticamente en la generación de informes y diagnósticos (ej: PNT, legislación, directrices)","Documentos e apresentações":"Documentos y presentaciones","Documentos especÃficos de cada destino: planos diretores, legislação municipal, pesquisas locais, dados socioeconômicos. Associados a destinos e usados automaticamente nos diagnósticos daquele municÃpio.":"Documentos especÃficos de cada destino: planes directores, legislación municipal, investigaciones locales, datos socioeconómicos. Asociados a destinos y usados automáticamente en los diagnósticos de ese municipio.","Doença se espalha na comunidade.":"Enfermedad se propaga en la comunidad.","DomÃnios de autoridade":"Dominios de autoridad","DomÃnios únicos":"Dominios únicos",'Dona Benedita conta que seus ancestrais vivem ali há 200 anos, mas grileiros tentam expulsá-los. "A terra é nossa mãe. Sem ela, perdemos tudo." Eles preservam o cerrado naturalmente.':'Doña Benedita cuenta que sus ancestros viven allà desde hace 200 años, pero los acaparadores de tierras intentan expulsarlos. "La tierra es nuestra madre. Sin ella, lo perdemos todo." Ellos preservan el cerrado naturalmente.',Dono:J2,"Dono â gerencia equipe e exclui":"Propietario â gestiona el equipo y elimina","Download PDF":"Descargar PDF",'Durante a geração, o card "Plano de Desenvolvimento" exibe':'Durante la generación, la tarjeta "Plan de Desarrollo" muestra',"Durante o cadastro ou no seu perfil, insira o código de referral fornecido pelo professor.":"Durante el registro o en su perfil, inserte el código de referencia proporcionado por el profesor.","Durante os 7 dias, você tem acesso a todos os módulos sem restrições.":"Durante los 7 dÃas, tiene acceso a todos los módulos sin restricciones.",Duração:"Duración","Duração (minutos)":"Duración (minutos)","Duração (tempo)":"Duración (tiempo)","Duração compatÃvel com sua disponibilidade":"Duración compatible con tu disponibilidad","Duração temporal (horas, dias, anos).":"Duración temporal (horas, dÃas, años).","Duração:":"Duración:","Dê um nome descritivo ao projeto.":"Dé un nombre descriptivo al proyecto.",Dúvida:"Duda","Dúvidas comerciais? A página pública":"¿Dudas comerciales? La página pública","E se a renovação não for paga?":"¿Y si la renovación no se paga?","E se?":"¿Y si?","E-mail":"Correo electrónico","E-mail customizado com branding SISTUR":"Correo electrónico personalizado con branding SISTUR","E-mail do usuário indisponÃvel.":"Correo electrónico del usuario no disponible.","E-mail enviado com sucesso":"Correo electrónico enviado con éxito","E-mail inválido":"Correo electrónico inválido","E-mails (separados por vÃrgula, ponto e vÃrgula ou linha)":"Correos electrónicos (separados por coma, punto y coma o lÃnea)","E-mails do app: envio direto pela infraestrutura gerenciada de e-mail da Lovable, com templates React":"Correos electrónicos de la app: envÃo directo por la infraestructura gestionada de correo electrónico de Lovable, con plantillas React",ECO:X2,EDU:Z2,"EDU (Educacional)":"EDU (Educativo)","EDU - Plataforma Educacional":"EDU - Plataforma Educativa","EDU â Plataforma de Aprendizado":"EDU â Plataforma de Aprendizaje","EDU: Acesse trilhas, capacitações e certificados.":"EDU: Acceda a rutas, capacitaciones y certificados.",EDU_AO:e$,EDU_OE:a$,EDU_RA:o$,"EEEE, dd 'de' MMMM":"EEEE, dd 'de' MMMM","EEEE, dd 'de' MMMM 'de' yyyy":"EEEE, dd 'de' MMMM 'de' yyyy",ENT_SEASONALITY_INDEX:i$,"ESG se refere a práticas Ambientais, Sociais e de Governança.":"ESG se refiere a prácticas Ambientales, Sociales y de Gobernanza.",ESTUDANTE:t$,EXTERNALITY_WARNING:r$,"Ecologia e Saúde Global":"EcologÃa y Salud Global",Ecológico:"Ecológico","Economia baseada em moedas redondas":"EconomÃa basada en monedas redondas",'Economia circular elimina o conceito de "lixo", tudo é recurso!':'La economÃa circular elimina el concepto de "basura", ¡todo es recurso!',"Economia do Sertão":"EconomÃa del Sertão","Economia que cresce em cÃrculos":"EconomÃa que crece en cÃrculos","Economia verde e sustentável! ð":"¡EconomÃa verde y sostenible! ð",Econômico:"Económico","Ecossistema de Dados Oficiais":"Ecosistema de Datos Oficiales","Ecossistema marinho que abriga 25% das espécies oceânicas":"Ecosistema marino que alberga el 25% de las especies oceánicas",Ecoturismo:s$,"Edge Functions":"Edge Functions","Edge function:":"Edge function:",Editados:n$,Editar:c$,"Editar Dados":"Editar Datos","Editar Destino":"Editar Destino","Editar Fase":"Editar Fase","Editar Marco":"Editar Hito","Editar Módulo":"Editar Módulo","Editar Organização":"Editar Organización","Editar Perfil":"Editar Perfil","Editar Peso":"Editar Peso","Editar Post":"Editar Publicación","Editar Projeto":"Editar Proyecto","Editar Questão":"Editar Pregunta","Editar Referência: {{v0}}":"Editar Referencia: {{v0}}","Editar Sala":"Editar Sala","Editar Tarefa":"Editar Tarea","Editar Treinamento":"Editar Capacitación","Editar Trilha":"Editar Ruta de Aprendizaje","Editar avaliação":"Editar evaluación","Editar badge":"Editar insignia","Editar contexto":"Editar contexto","Editar conteúdo do relatório":"Editar contenido del informe","Editar linha":"Editar lÃnea","Editar marca":"Editar marca","E
348ditar no relatório":"Editar en el informe","Editar pasta":"Editar carpeta","Editar relatório":"Editar informe","Editar resumo":"Editar resumen","Editar trilha":"Editar ruta de aprendizaje","Edite as peças de conhecimento (metodologia, régua, fontes, bibliografia, regras anti-alucinação) usadas para gerar os relatórios. Alterações entram em vigor no próximo relatório gerado.":"Edite las piezas de conocimiento (metodologÃa, regla, fuentes, bibliografÃa, reglas anti-alucinación) utilizadas para generar los informes. Los cambios entrarán en vigor en el próximo informe generado.","Edite os dados da trilha e os treinamentos associados.":"Edita los datos de la ruta de aprendizaje y las capacitaciones asociadas.",Editor:d$,"Editor â cria e edita tarefas":"Editor â crea y edita tareas",Editoriais:l$,Edição:"Edición","Edição de pesos, tiers e escopo:":"Edición de pesos, niveles y alcance:","Edição de valores quando necessário":"Edición de valores cuando sea necesario",Edições:"Ediciones",Educação:"Educación","Educação + governança!":"¡Educación + gobernanza!","Educação para todos":"Educación para todos","Educação transforma o futuro!":"¡La educación transforma el futuro!","Educação â Estudante":"Educación â Estudiante",Efeito:u$,"Efetividade de Marketing":"Efectividad de Marketing",Efetivo:m$,"Eficiência Energética":"Eficiencia Energética","Eficiência Operacional":"Eficiencia Operacional","Elaboração de Planos Municipais de Turismo":"Elaboración de Planes Municipales de Turismo","Elaboração de planos diretores de turismo":"Elaboración de planes directores de turismo","Ele adorou e vai contar para todo mundo! â":"¡Le encantó y va a contárselo a todo el mund
348o! â","ElegÃvel para todas as certificações":"Elegible para todas las certificaciones",Elemento:p$,"Elevadores AcessÃveis":"Ascensores Accesibles","Em Andamento":"En Curso","Em Andamento ({{v0}})":"En Curso ({{v0}})","Em Análise":"En Análisis",'Em Configurações â Conectores, escolha "Criar" ou "Adicionar conector personalizado".':'En Configuración â Conectores, elija "Crear" o "Agregar conector personalizado".',"Em Diagnósticos, crie novas rodadas de avaliação para seus destinos. Selecione indicadores, insira valores e o sistema calcula automaticamente scores normalizados, issues e prescrições via motor IGMA.":"En Diagnósticos, cree nuevas rondas de evaluación para sus destinos. Seleccione indicadores, inserte valores y el sistema calcula automáticamente scores normalizados, issues y prescripciones vÃa motor IGMA.","Em Espera":"En Espera","Em Produção":"En Producción","Em Progresso":"En Progreso","Em Revisão":"En Revisión","Em andamento":"En curso","Em branco = imediatamente":"En blanco = inmediatamente","Em branco = sem prazo":"En blanco = sin plazo","Em branco = usar regras padrão da prova":"En blanco = usar reglas estándar de la prueba","Em breve: lançamento oficial da plataforma":"Próximamente: lanzamiento oficial de la plataforma","Em execução":"En ejecución","Em nenhuma hipótese a responsabilidade do Titular excederá o valor total pago pelo Usuário nos 12 meses anteriores ao evento que deu origem à reclamação.":"En ningún caso la responsabilidad del Titular excederá el valor total pagado por el Usuario en los 12 meses anteriores al evento que dio origen a la reclamación.","Em progresso":"En progreso","Em progresso ({{v0}})":"En progreso ({{v0}})","Em qual fluxo de relatório a regra entra: 'territorial' (destinos/municÃpios), 'enterprise' (empresas) ou 'both'.":"En qué flujo de informe entra la regla: 'territorial' (destinos/municipios), 'enterprise' (empresas) o 'both'.","Em risco":"En riesgo","Em trial":"En prueba","Em uso":"En uso","Em ~15 minutos você sai do zero para um diagnóstico operacional, reputacional e competitivo completo â sem digitar dados.":"En ~15 minutos pasas de cero a un diagnóstico operativo, reputacional y competitivo completo â sin introducir datos.",Email:g$,"Email *":"Correo electrónico *","Email de recuperação enviado! Verifique sua caixa de entrada.":"¡Correo de recuperación enviado! Verifica tu bandeja de entrada.","Email inválido":"Correo electrónico no válido","Email não disponÃvel":"Email no disponible","Email ou senha incorretos":"Correo electrónico o contraseña incorrectos","Email:":"Correo electrónico:","Embaixadores do Oceano":"Embajadores del Océano",Ementa:h$,"Emissão e gestão do Selo SISTUR para destinos turÃsticos.":"Emisión y gestión del Sello SISTUR para destinos turÃsticos.",Emitido:f$,"Emitido em":"Emitido el","Emitidos automaticamente após aprovação. Possuem código público para verificação em /verificar-certificado.":"Emitidos automáticamente después de aprobación. Poseen código público para verificación en /verificar-certificado.",Emitir:v$,"Emitir certificado":"Emitir certificado","Emitir novo certificado":"Emitir nuevo certificado",Empacotamento:b$,"Empacotamento Modular":"Empaquetado Modular","Empreend.:":"Emprend.:","Empreendimento independente? Crie uma marca com o próprio nome â futuras unidades poderão ser anexadas.":"¿Emprendimiento independiente? Cree una marca con su propio nombre â futuras unidades podrán ser anexadas.",Empreendimentos:A$,Empregos:y$,"Empregos formais no turismo (base anual via IGMA; baseline mensal estimado pelo Observatório)":"Empleos formales en turismo (base anual vÃa IGMA; lÃnea base mensual estimada por el Observatorio)",Empresarial:S$,"Empresas e redes":"Empresas y redes","Empresários e prestadores de serviços turÃsticos":"Empresarios y prestadores de servicios turÃsticos",Encerrada:E$,Encerramento:C$,"Encontrar seu código":"Encontrar su código","Encontre os pares entre imagens e suas descrições ambientais! Cada carta-imagem tem uma carta-texto correspondente.":"¡Encuentra los pares entre las imágenes y sus descripciones ambientales! Cada carta-imagen tiene una carta-texto correspondiente.","Encontre todos os pares antes do tempo acabar e sem exceder o limite de erros. Quanto menos erros e mais rápido, maior a pontuação!":"Encuentra todos los pares antes de que se acabe el tiempo y sin superar el lÃmite de errores. ¡Cuantos menos errores y más rápido, mayor será la puntuación!","Encontrei outra solução":"Encontré otra solución","Endereço IP":"Dirección IP","Endêmicas são exclusivas de uma região geográfica especÃfica.":"Endémicas son exclusivas de una región geográfica especÃfica.","Energia Eól
348ica":"EnergÃa Eólica","Energia Solar":"EnergÃa Solar","Energia desperdiçada":"EnergÃa desperdiciada","Energia limpa do sol! Brilhante! âï¸":"¡EnergÃa limpia del sol! ¡Brillante! âï¸",Engajamento:T$,"Engine de interpretação sistêmica (6 regras de Beni)":"Motor de interpretación sistémica (6 reglas de Beni)","Enigma Ambiental":"Acertijo Ambiental",Enigmas:P$,"Enigmas:":"Acertijos:",'Enquanto a IA escreve o relatório completo (pipeline em 2 fases), o conteúdo aparece progressivamente no card de geração à medida que cada subseção fica pronta: primeiro o pilar RA, depois OE, depois AO, e por fim o envelope (introdução, ficha técnica, alertas IGMA, banco de ações, fontes, considerações finais). Uma barra de progresso e um badge "Pré-visualização ao vivo" ficam visÃveis durante todo o processo. Isso elimina a sensação de "spinner sem fim" â você consegue começar a ler enquanto o resto ainda está sendo gerado. PDF e DOCX continuam disponÃveis apenas após a persistência do relatório final (não exporta versões inacabadas).':'Mientras la IA escribe el informe completo (pipeline en 2 fases), el contenido aparece progresivamente en la tarjeta de generación a medida que cada subsección está lista: primero el pilar RA, luego OE, luego AO, y finalmente el sobre (introducción, ficha técnica, alertas IGMA, banco de acciones, fuentes, consideraciones finales). Una barra de progreso y una insignia "Previsualización en vivo" son visibles durante todo el proceso. Esto elimina la sensación de "spinner sin fin" â usted puede empezar a leer mientras el resto aún se está generando. PDF y DOCX continúan disponibles solo después de la persistencia del informe final (no exporta versiones inacabadas).','Enquanto você explorava sem rumo, uma grande área foi desmatada durante a noite. Seu Raimundo está furioso: "Você prometeu ajudar e nada fez! Agora perdemos árvores de 200 anos." A comunidade perde a confiança em você.':'Mientras usted exploraba sin rumbo, una gran área fue deforestada durante la noche. Su Raimundo está furioso: "¡Usted prometió ayudar y no hizo nada! Ahora perdimos árboles de 200 años." La comunidad pierde la confianza en usted.',"Enquanto você passeia, os madeireiros avançam sem impedimento.":"Mientras usted pasea, los madereros avanzan sin impedimento.",Enterprise:R$,"Enterprise ({{v0}})":"Enterprise ({{v0}})","Enterprise ativos":"Enterprise activos",Entidade:x$,"Entidade:":"Entidad:","Entrada criada":"Entrada creada","Entrada excluÃda":"Entrada eliminada","Entrada manual do usuário":"Entrada manual del usuario",Entradas:w$,"Entrando...":"Iniciando sesión...",Entrar:I$,"Entre com suas credenciais para acessar o sistema":"Ingresa tus credenciales para acceder al sistema","Entre ou crie sua conta para acessar o conteúdo solicitado.":"Inicia sesión o crea tu cuenta para acceder al contenido solicitado.",Entrega:D$,"Entrega até":"Entrega hasta","Entrega final e lições aprendidas":"Entrega final y lecciones aprendidas","Entrega â depende de execução, qualidade do serviço e da experiência.":"Entrega â depende de ejecución, calidad del servicio y de la experiencia.",Entregue:O$,Entregues:M$,Enunciado:N$,"Envelope (capa, sumário, fechamento)":"Sobre (portada, sumario, cierre)","Enviando arquivos...":"Enviando archivos...","Enviando...":"Enviando...",Enviar:z$,"Enviar Denúncia":"Enviar Denuncia","Enviar E-mail":"Enviar Correo Electrónico","Enviar Exame":"Enviar Examen","Enviar Exame?":"¿Enviar Examen?","Enviar Feedback":"Enviar Comentarios","Enviar Link de Recuperação":"Env
348iar Enlace de Recuperación","Enviar Recurso":"Enviar Recurso","Enviar Solicitação":"Enviar Solicitud","Enviar conversa por e-mail":"Enviar conversación por correo electrónico","Enviar lembrete":"Enviar recordatorio","Enviar para:":"Enviar a:","Enviar por e-mail":"Enviar por correo electrónico","Enviar revisão":"Enviar revisión","Envie o código ou link para seus alunos antes ou durante o cadastro.":"EnvÃe el código o enlace a sus alumnos antes o durante el registro.","Envie templates existentes ou mensagens personalizadas com o visual SISTUR":"EnvÃa plantillas existentes o mensajes personalizados con el diseño de SISTUR","Envie um arquivo CSV com e-mails dos alunos para adicioná-los à turma em lote.":"EnvÃa un archivo CSV con los correos electrónicos de los alumnos para agregarlos al grupo de forma masiva.","Envie um relatório (arquivo texto ou colado abaixo) e a IA confronta o conteúdo com todas as regras":"EnvÃe un informe (archivo de texto o pegado abajo) y la IA confronta el contenido con todas las reglas",Equilibrado:j$,"Equilibrado, menor custo":"Equilibrado, menor costo",EquilÃbrio:"Equilibrio","EquilÃbrio balanceado":"Equilibrio balanceado","EquilÃbrio entre permissividade e restrição":"Equilibrio entre permisividad y restricción","EquilÃbrio ⥠70":"Equilibrio ⥠70","EquilÃbrio:":"Equilibrio:","Equipamentos eletrônicos descartados":"Equipos electrónicos descartados",Equipar:k$,Equipe:_$,"Equipe do projeto":"Equipo del proyecto","Equipe e Comentários":"Equipo y Comentarios","Equipe local":"Equipo local","Equivale a {{v}}/mês, pago uma vez por ano.":"Equivale a {{v}}/mes, pagado una vez al año.","Equivalente em JSON (para importação em lote)":"Equivalente en JSON (para importación masiva)","Erosão Costeira":"Erosión Costera","Erosão costeira":"Erosión costera","Erosão do Solo":"Erosión del Suelo","Erosão por desmatamento!":"¡Erosión por deforestación!","Erradicação da Pobreza":"Erradicación de la Pobreza",Erro:q$,"Erro ao aceitar termos. Tente novamente.":"Error al aceptar los términos. Inténtalo de nuevo.","Erro ao adicionar usuário":"Error al añadir usuario","Erro ao alterar modo: ":"Error al cambiar modo: ","Erro ao alterar senha: ":"Error al cambiar la contraseña: ","Erro ao analisar presença digital:":"Error al analizar presencia digital:","Erro ao analisar presença digital: ":"Error al analizar la presencia digital: ","Erro ao aprovar usuário":"Error al aprobar usuario","Erro ao arquivar treinamento":"Error al archivar capacitación","Erro ao atualizar configuração:":"Error al actualizar configuración:","Erro ao atualizar configuração: ":"Error al actualizar configuración: ","Erro ao atualizar diagnóstico. Tente novamente.":"Error al actualizar diagnóstico. Inténtelo de nuevo.","Erro ao atualizar escopo":"Error al actualizar el alcance","Erro ao atualizar peso":"Error al actualizar el peso","Erro ao atualizar pilar":"Error al actualizar pilar","Erro ao atualizar preferência":"Error al actualizar preferencia","Erro ao atualizar tier":"Error al actualizar el nivel","Erro ao buscar concorrentes: ":"Error al buscar competidores: ","Erro ao buscar contexto: ":"Error al buscar contexto: ","Erro ao buscar municÃpio":"Error al buscar municipio","Erro ao buscar municÃpios":"Error al buscar municipios","Erro ao buscar reclamações:":"Error al buscar reclamos:","Erro ao buscar reclamações: ":"Error al buscar reclamaciones: ","Erro ao buscar reviews: ":"Error al buscar reseñas: ","Erro ao buscar: ":"Error al buscar: ","Erro ao calcular diagnóstico":"Error al calcular diagnóstico","Erro ao cancelar: ":"Error al cancelar: ","Erro ao carregar a história.":"Error al cargar la historia.","Erro ao carregar camada semântica: ":"Error al cargar capa semántica: ","Erro ao carregar contextos":"Error al cargar contextos","Erro ao carregar estatÃsticas de certificados":"Error al cargar estadÃsticas de certificados","Erro ao carregar estruturas":"Error al cargar estructuras","Erro ao carregar organizações":"Error al cargar organizaciones","Erro ao carregar relatórios salvos:":"Error al cargar informes guardados:","Erro ao carregar relatórios salvos: ":"Error al cargar informes guardados: ","Erro ao carregar sessão.":"Error al cargar sesión.","Erro ao carregar usuários":"Error al cargar usuarios","Erro ao carregar usuários da organização":"Error al cargar usuarios de la organización","Erro ao carregar usuários e organizações":"Error al cargar usuarios y organizaciones","Erro ao carregar usuários pendentes":"Error al cargar usuarios pendientes","Erro ao carregar vÃdeo":"Error al cargar video","Erro ao conectar com o Professor Beni":"Error al conectar con el Profesor Beni","Erro ao conectar com serviço IBGE":"Error al conectar con servicio IBGE","Erro ao configurar acesso: ":"Error al configurar acceso: ","Erro ao criar atividade":"Error al crear actividad","Erro ao criar checklist":"Error al crear checklist","Erro ao criar conexão: ":"Error al crear conexión: ","Erro ao criar contexto":"Error al crear contexto","Erro ao criar diagnóstico":"Error al crear diagnóstico","Erro ao criar diagnóstico. Tente novamente.":"Error al crear diagnóstico. Inténtelo de nuevo.","Erro ao criar evento":"Error al crear evento","Erro ao criar exame":"Error al crear examen","Erro ao criar fase":"Error al crear fase","Erro ao criar marca":"Error al crear marca","Erro ao criar marco":"Error al crear hito","Erro ao criar plano":"Error al crear plan","Erro ao criar projeto":"Error al crear el proyecto","Erro ao criar sala":"Error al crear sala","Erro ao criar sessão.":"Error al crear sesión.","Erro ao criar tarefa":"Error al crear tarea","Erro ao criar usuário":"Error al crear usuario","Erro ao criar: ":"Error al crear: ","Erro ao deletar mensagem":"Error al eliminar mensaje","Erro ao desativar código":"Error al desactivar código","Erro ao desativar entradas removidas: ":"Error al desactivar entradas eliminadas: ","Erro ao entrar com Apple:":"Error al iniciar sesión con Apple:","Erro ao entrar com Apple: ":"Error al iniciar sesión con Apple: ","Erro ao entrar com Google:":"Error al iniciar sesión con Google:","Erro ao entrar com Google: ":"Error al iniciar sesión con Google: ","Erro ao enviar arquivos":"Error al enviar archivos","Erro ao enviar avaliação":"Error al enviar evaluación","Erro ao enviar denúncia:":"Error al enviar denuncia:","Erro ao enviar e-mail"
348:"Error al enviar correo electrónico","Erro ao enviar exame":"Error al enviar examen","Erro ao enviar exame automaticamente. Por favor, tente enviar manualmente.":"Error al enviar el examen automáticamente. Por favor, intenta enviarlo manualmente.","Erro ao enviar recurso":"Error al enviar recurso","Erro ao enviar solicitação":"Error al enviar solicitud","Erro ao enviar vÃdeo":"Error al subir video","Erro ao excluir":"Error al eliminar","Erro ao excluir destino. Tente novamente.":"Error al eliminar destino. Inténtelo de nuevo.","Erro ao excluir diagnóstico. Tente novamente.":"Error al eliminar el diagnóstico. Inténtalo de nuevo.","Erro ao excluir fase":"Error al eliminar fase","Erro ao excluir marco":"Error al eliminar hito","Erro ao excluir organização":"Error al eliminar organización","Erro ao excluir plano":"Error al eliminar plan","Erro ao excluir projeto":"Error al eliminar proyecto","Erro ao excluir projetos associados":"Error al eliminar los proyectos asociados","Erro ao excluir questão":"Error al eliminar pregunta","Erro ao excluir relatório":"Error al eliminar el informe","Erro ao excluir relatórios associados":"Error al eliminar los informes asociados","Erro ao excluir sessão.":"Error al eliminar sesión.","Erro ao excluir treinamento":"Error al eliminar capacitación","Erro ao excluir. Tente novamente.":"Error al eliminar. Inténtalo de nuevo.","Erro ao executar importação":"Error al ejecutar importación","Erro ao executar verificação de saúde":"Error al ejecutar verificación de salud","Erro ao exportar dados":"Error al exportar datos","Erro ao exportar/gerar relatório":"Error al exportar/generar informe","Erro ao fazer login":"Error al iniciar sesión","Erro ao gerar arquivo Word.":"Error al generar el archivo Word.","Erro ao gerar código. Verifique se você tem permissão.":"Error al generar código. Verifique si tiene permiso.","Erro ao gerar relatório":"Error al generar informe","Erro ao gerar sugestões":"Error al generar sugerencias","Erro ao gerar voz":"Error al generar voz","Erro ao iniciar exame":"Error al iniciar examen","Erro ao iniciar sincronização":"Error al iniciar sincronización","Erro ao mover tarefa":"Error al mover la tarea","Erro ao publicar":"Error al publicar","Erro ao publicar anúncio":"Error al publicar anuncio","Erro ao publicar treinamento":"Error al publicar capacitación","Erro ao recuperar valores automáticos":"Error al recuperar valores automáticos","Erro ao rejeitar solicitação":"Error al rechazar solicitud","Erro ao remover":"Error al quitar","Erro ao remover material":"Error al eliminar material","Erro ao remover usuário":"Error al eliminar usuario","Erro ao reproduzir áudio":"Error al reproducir audio","Erro ao resetar diagnóstico":"Error al restablecer el diagnóstico","Erro ao salvar":"Error al guardar","Erro ao salvar badge":"Error al guardar insignia","Erro ao salvar canal":"Error al guardar canal","Erro ao salvar concorrente":"Error al guardar competidor","Erro ao salvar correção":"Error al guardar corrección","Erro ao salvar item":"Error al guardar Ãtem","Erro ao salvar medição":"Error al guardar medición","Erro ao salvar mês":"Error al guardar mes","Erro ao salvar organização":"Error al guardar organización","Erro ao salvar pasta":"Error al guardar carpeta","Erro ao salvar perfil":"Error al guardar perfil","Erro ao salvar perfil do empreendimento":"Error al guardar perfil del emprendimiento","Erro ao salvar pesos: ":"Error al guardar pesos: ","Erro ao salvar post:":"Error al guardar post:","Erro ao salvar post: ":"Error al guardar publicación: ","Erro ao salvar questão":"Error al guardar pregunta","Erro ao salvar snapshot":"Error al guardar snapshot","Erro ao salvar treinamento":"Error al guardar capacitación","Erro ao salvar valor":"Error al guardar valor","Erro ao salvar:":"Error al guardar:","Erro ao salvar: ":"Error al guardar: ","Erro ao trocar visualização":"Error al cambiar vista","Erro ao vincular código da organização":"Error al vincular código de la organización","Erro de cálculo/processamento":"Error de cálculo/procesamiento","Erro desconhecido":"Error desconocido","Erro desconhecido ao aceitar os termos.":"Error desconocido al aceptar los términos.","Erro na auditoria: ":"Error en la auditorÃa: ","Erro na moderação":"Error en la moderación","Erro no cálculo":"Error en el cálculo","Erro no reconhecimento de voz":"Error en el reconocimiento de voz","Erro reportado pela edge function":"Error reportado por la edge function","Erro visual/layout quebrado":"Error visual/diseño roto","Erro: ":"Error: ",Error:"Error","Error stopping act as:":"Error stopping act as:",Erros:L$,"Erros:":"Errores:","Escala 0-10 com funções lineares, inversas e logarÃtmicas por indicador":"Escala 0-10 con funciones lineales, inversas y logarÃtmicas por indicador","Escalas como IQA (0-100), score 1-5, nota 0-10.":"Escalas como IQA (0-100), puntuación 1-5, calificación 0-10.","Escale as montanhas e encontre cristais ecológicos":"Escale las montañas y encuentre cristales ecológicos","Escaneie para verificar":"Escanea para verificar","Escolas são a base de toda comunidade.":"Las escuelas son la base de toda comunidad.","Escolha a turma":"Elige el grupo","Escolha como deseja usar o sistema":"Elija cómo desea usar el sistema","Escolha o assistente que você usa e siga os passos. Em todos eles, o login é feito na tela de autorização do SISTUR â nunca compartilhe sua senha com o assistente.":"Elija el asistente que utiliza y siga los pasos. En todos ellos, el inicio de sesión se realiza en la pantalla de autorización de SISTUR â nunca comparta su contraseña con el asistente.","Escolha o destino turÃstico na lista (ou crie um novo em Destinos).":"Elija el destino turÃstico de la lista (o cree uno nuevo en Destinos).","Escolha o diagnóstico para preencher os dados":"Elige el diagnóstico para completar los datos","Escolha o indicador":"Elija el indicador","Escolha o nÃvel adequado à sua realidade e objetivos":"Elija el nivel adecuado a su realidad y objetivos","Escolha o pilar":"Elija el pilar","Escolha o plano certo e gerencie sua contratação":"Elige el plan adecuado y gestiona tu contratación","Escolha o tipo: Trilha, Capacitação, Prova ou C
348onteúdo Próprio.":"Elija el tipo: Sendero, Capacitación, Prueba o Contenido Propio.","Escolha qual modelo de IA o Professor Beni usará para responder. A alteração entra em vigor na próxima mensagem.":"Elija qué modelo de IA el Profesor Beni usará para responder. El cambio entrará en vigor en el próximo mensaje.","Escolha qual sistema o usuário terá acesso":"Elija a qué sistema tendrá acceso el usuario","Escolha seu Bioma":"Elige tu Bioma","Escolha seu bioma e proteja seu destino!":"¡Elige tu bioma y protege tu destino!","Escolha seu papel: Analista, Estudante, Professor, etc.":"Elija su rol: Analista, Estudiante, Profesor, etc.","Escolha temas de interesse especÃficos.":"Elija temas de interés especÃficos.","Escolha um aluno...":"Elige un alumno...","Escolha um bioma brasileiro e tome decisões que afetam a sustentabilidade do destino.":"Elija un bioma brasileño y tome decisiones que afecten la sostenibilidad del destino.","Escolha um bioma para iniciar sua missão de restauração":"Elige un bioma para iniciar tu misión de restauración","Escolha um cenário e ajuste as alavancas. Os efeitos seguem regras sistêmicas: meio ambiente fraco (RA abaixo de 34%) limita ganhos operacionais, e governança fraca (OE abaixo de 34%) reduz todos os ganhos. Nada é salvo no diagnóstico oficial.":"Elija un escenario y ajuste las palancas. Los efectos siguen reglas sistémicas: un medio ambiente débil (RA por debajo del 34%) limita las ganancias operativas, y una gobernanza débil (OE por debajo del 34%) reduce todas las ganancias. Nada se guarda en el diagnóstico oficial.","Escolha um curso LMS acima para configurar as regras de exame.":"Elija un curso LMS arriba para configurar las reglas del examen.","Escolha um destino com diagnóstico calculado e relatório gerado":"Elija un destino con diagnóstico calculado e informe generado","Escolha um diagnóstico acima para começar a preencher os dados dos indicadores.":"Elige un diagnóstico arriba para comenzar a completar los datos de los indicadores.","Escolha um dos planos abaixo para liberar os módulos do SISTUR.":"Elija uno de los planes a continuación para desbloquear los módulos de SISTUR.","Escolha um plano para continuar usando o SISTUR.":"Elija un plan para continuar usando SISTUR.","Escolha um professor ou aluno das suas turmas.":"Elige un profesor o alumno de tus grupos.","Escolha um treinamento":"Elige una capacitación","Escolha um tÃtulo descritivo.":"Elija un tÃtulo descriptivo.","Escolha um usuário...":"Elija un usuario...","Escolha uma Carta!":"¡Elige una Carta!","Escolha uma prova":"Elige una prueba","Escolha uma trilha":"Elige una ruta de aprendizaje","Escolhas arriscadas tiveram consequências graves.":"Las decisiones arriesgadas tuvieron consecuencias graves.","Escolhas sustentáveis nem sempre são as mais fáceis, mas valem a pena!":"¡Las decisiones sostenibles no siempre son las más fáciles, pero valen la pena!",Escopo:U$,"Escopo & Guardrails":"Alcance y GuardarraÃles","Escopo atualizado com sucesso":"Alcance actualizado correctamente","Escopo das abas internas:":"Alcance de las pestañas internas:","Escopo das regras":"Alcance de las reglas","Escreva o conteúdo do e-mail aqui. Use quebras de linha para separar parágrafos.":"Escriba el contenido del correo electrónico aquÃ. Use saltos de lÃnea para separar párrafos.","Escreva o conteúdo do post com formatação.":"Escriba el contenido del post con formato.","Escreva sua anotação...":"Escribe tu nota...","Escreva sua resposta...":"Escriba su respuesta...","Escreva um comentário. Use @ para mencionar alguém da sua organização.":"Escriba un comentario. Use @ para mencionar a alguien de su organización.","Escrever comentário...":"Escribir comentario...","Escrever mensagem...":"Escribir mensaje...","Escrever resposta...":"Escribir respuesta...","Escudo de Fogo":"Escudo de Fuego","Esgoto in natura no mangue!":"¡Aguas residuales sin tratar en el manglar!","Esgotou tentativas":"Agotaste los intentos","Espalhe vida por toda parte!":"¡Esparza vida por todas partes!","Espaço de troca entre gestores, técnicos e trade. A base de conhecimento aceita documentos da organização (PDF, DOCX, XLSX, CSV, TXT) e referências globais.":"Espacio de intercambio entre gestores, técnicos y el sector. La base de conocimiento acepta documentos de la organización (PDF, DOCX, XLSX, CSV, TXT) y referencias globales.","Espaço suficiente":"Espacio suficiente",Especialista:B$,"Especialista em Turismo Sustentável":"Especialista en Turismo Sostenible","Especialista em turismo dedicado":"Especialista en turismo dedicado","Espera entre tentativas (horas)":"Espera entre intentos (horas)","Esperar os bombeiros oficiais":"Esperar a los bomberos oficiales","Esperar que as autoridades resolvam"
348:"Esperar a que las autoridades resuelvan",Esportivo:F$,"Espécie ameaçada de extinção":"Especie amenazada de extinción","Espécie das profundezas essencial na cadeia alimentar":"Especie de las profundidades esencial en la cadena alimentaria","Espécie indicadora de saúde marinha":"Especie indicadora de salud marina","Espécie rara do manguezal":"Especie rara del manglar","Espécies extintas":"Especies extintas","Espécies exóticas ameaçam as nativas.":"Especies exóticas amenazan a las nativas.","Espécies invasoras":"Especies invasoras","Espécies migratórias":"Especies migratorias","Espécies que só existem em uma região":"Especies que solo existen en una región","Esqueceu a senha?":"Olvidaste tu contraseña?","Essa classificação direciona quais prescrições EDU e quais ações de plano são sugeridas.":"Esta clasificación dirige qué prescripciones EDU y qué acciones del plan se sugieren.","Essas informações contextualizam o diagnóstico e permitem benchmarks mais precisos para o seu tipo de empreendimento.":"Esta información contextualiza el diagnóstico y permite comparaciones más precisas para su tipo de emprendimiento.",Essencial:G$,"Essencial (9) | Estratégico (19) | Integral (96)":"Esencial (9) | Estratégico (19) | Integral (96)","Essencial ({{v0}})":"Esencial ({{v0}})","Essencial â 9 indicadores, 30â45 minutos. Ideal para primeira avaliação.":"Esencial â 9 indicadores, 30â45 minutos. Ideal para primera evaluación.","Esses dados podem ser alterados depois nas Configurações.":"Estos datos pueden ser modificados después en la Configuración.","Esses gargalos territoriais podem afetar o desempenho do empreendimento mesmo quando a gestão interna está adequada â considere ações conjuntas com a secretaria de turismo, consórcio ou trade local.":"Estos cuellos de botella territoriales pueden afectar el desempeño del emprendimiento incluso cuando la gestión interna es adecuada â considere acciones conjuntas con la secretarÃa de turismo, consorcio o trade local.","Esta atividade ainda não foi liberada.":"Esta actividad aún no ha sido liberada.","Esta atividade não foi atribuÃda a você.":"Esta actividad no le ha sido asignada.","Esta ação irá buscar vÃdeos do canal e importá-los como rascunhos com classificação automática por pilar SISTUR.":"Esta acción buscará videos del canal y los importará como borradores con clasificación automática por pilar SISTUR.","Esta ação não pode ser desfeita.":"Esta acción no se puede deshacer.","Esta ação não pode ser desfeita. A organização":"Esta acción no se puede deshacer. La organización",'Esta ação não pode ser desfeita. A trilha "{{v0}}" será permanentemente excluÃda.':'Esta acción no se puede deshacer. La ruta "{{v0}}" se eliminará permanentemente.',"Esta ação não pode ser desfeita. O diagnóstico":"Esta acción no se puede deshacer. El diagnóstico","Esta ação não pode ser desfeita. O feedback será permanentemente removido.":"Esta acción no se puede deshacer. El feedback será eliminado permanentemente.","Esta ação não pode ser desfeita. O post e todas as respostas serão permanentemente excluÃdos.":"Esta acción no se puede deshacer. La publicación y todas las respuestas se eliminarán permanentemente.","Esta ação não pode ser desfeita. O usuário":"Esta acción no se puede deshacer. El usuario","Esta ação não pode ser desfeita. Todas as fases, tarefas e marcos associados serão removidos.":"Esta acción no se puede deshacer. Se eliminarán todas las fases, tareas e hitos asociados.","Esta ação não pode ser desfeita. Todos os diagnósticos associados também serão excluÃdos.":"Esta acción no se puede deshacer. También se eliminarán todos los diagnósticos asociados.",'Esta capacitação foi prescrita porque o indicador "Agências de Turismo" está em Atenção, classificado no pilar OE (Organização Estrutural), com interpretação territorial Entrega.':'Esta capacitación fue prescrita porque el indicador "Agencias de Turismo" está en Atención, clasificado en el pilar OE (Organización Estructural), c
348on interpretación territorial Entrega.','Esta capacitação foi prescrita porque o indicador "Orçamento de Turismo" está CrÃtico, classificado no pilar AO (Ações Operacionais), com interpretação territorial Gestão.':'Esta capacitación fue prescrita porque el indicador "Presupuesto de Turismo" está CrÃtico, clasificado en el pilar AO (Acciones Operacionales), con interpretación territorial Gestión.','Esta capacitação foi prescrita porque o indicador "Plano Municipal de Turismo" está CrÃtico, classificado no pilar AO (Ações Operacionais), com interpretação territorial Gestão.':'Esta capacitación fue prescrita porque el indicador "Plan Municipal de Turismo" está CrÃtico, clasificado en el pilar AO (Acciones Operacionales), con interpretación territorial Gestión.',"Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}":"Esta capacitación fue prescrita porque el indicador {{0}} está {{1}} en el pilar {{2}}.{{3}}","Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} â {{2}}":"Esta capacitación fue prescrita porque el indicador {{0}} está {{1}} â {{2}}","Esta configuração afeta apenas posts com visibilidade":"Esta configuración afecta solo a publicaciones con visibilidad","Esta informação é técnica e fica fora do conteúdo do relatório. Ela documenta o que o sistema ajustou ou marcou para revisão antes da geração.":"Esta información es técnica y está fuera del contenido del informe. Documenta lo que el sistema ajustó o marcó para revisión antes de la generación.","Esta obrigação de confidencialidade sobrevive ao término da relação contratual por prazo indeterminado.":"Esta obligación de confidencialidad sobrevive a la terminación de la relación contractual por plazo indefinido.","Esta trilha não existe ou foi removida.":"Esta ruta de aprendizaje no existe o fue eliminada.","Esta visão mostra como cada indicador foi normalizado: valor bruto, fonte dos dados, regra de normalização aplicada e score final. Objetivo: auditoria e confiança pública.":"Esta vista muestra cómo cada indicador fue normalizado: valor bruto, fuente de los datos, regla de normalización aplicada y puntuación final. Objetivo: auditorÃa y confianza pública.","Esta é uma":"Esta es una","Estadias por ano":"EstadÃas por año","Estado (UF)":"Estado (UF)","Estado de origem":"Estado de origen",Estagnação:"Estancamiento","Estagnação:":"Estancamiento:","Estamos confirmando sua contratação. O acesso é liberado automaticamente em alguns instantes.":"Estamos confirmando su contratación. El acceso se libera automáticamente en unos instantes.","Estamos finalizando os últimos ajustes para você aproveitar tudo o que o SISTUR preparou.":"Estamos terminando los últimos ajustes para que aproveches todo lo que SISTUR preparó.",EstatÃsticas:"EstadÃsticas","EstatÃsticas Gerais":"EstadÃsticas Generales","Estação de tratamento":"Estación de tratamiento","Este acesso é uma condição essencial para a prestação do serviço e não pode ser restringido pelo Usuário enquanto mantiver conta ativa na Plataforma.":"Este acceso es una condición esencial para la prestación del servicio y no puede ser restringido por el Usuario mientras mantenga una cuenta activa en la Plataforma.","Este assistente virtual foi treinado com os princÃpios e metodologias desenvolvidos pelo professor ao longo de décadas de pesquisa.":"Este asistente virtual ha sido entrenado con los principios y metodologÃas desarrollados por el profesor a lo largo de décadas de investigación.","Este campo é opcional.":"Este campo es opcional.","Este certificado está expirado.":"Este certificado ha expirado.","Este certificado foi revogado pelo emissor.":"Este certificado fue revocado por el emisor.","Este certificado não pôde ser verificado.":"Este certificado no pudo ser verificado.","Este certificado é autêntico e foi emitido pela plataforma SISTUR EDU.":"Este certificado es auténtico y fue emitido por la plataforma SISTUR EDU.","Este destino ainda não tem coordenadas cadastradas.":"Este destino aún no tiene coordenadas registradas.","Este destino possui apenas 1 ciclo de diagnóstico.":"Este destino tiene solo 1 ciclo de diagnóstico.","Este diagnóstico possui dados relacionados:":"Este diagnóstico tiene datos relacionados:","Este documento estará disponÃvel para download em breve.":"Este documento estará disponible para descargar pronto.","Este documento foi verificado automaticamente pelo sistema SISTUR EDU":"Este documento fue verificado automáticamente por el sistema SISTUR EDU","Este email já está cadastrado":"Este correo electrónico ya está registrado","Este empreendimento não tem código IBGE cadastrado â não é possÃvel localizar o municÃpio de referência.":"Esta empresa no tiene código IBGE registrado â no es posible localizar el municipio de referencia.","Este exame não foi encontrado ou expirou.":"Este examen no se encontró o venció.","Este fator depende de articulação intersetorial além da polÃtica de turismo.":"Este factor depende de la coordinación intersectorial más allá de la polÃtica de turismo.","Este link não está disponÃvel ou foi desativado.":"Este enlace no está disponible o ha sido desactivado.","Este municÃpio já está cadastrado como unidade deste diagnóstico.":"Este municipio ya está registrado como unidad de este diagnóstico.","Este mês":"Este mes","Este módulo não está incluÃdo no pacote contratado pela sua organização. Entre em contato com o administrador para solicitar a ativação.":"Este módulo no está incluido en el paquete contratado por su organización. Contacte al administrador para solicitar la activación.","Estender trial: Adiciona dias ao perÃodo de teste.":"Extender prueba: Añade dÃas al perÃodo de prueba.","Estes Termos regulam o acesso e a utilização da Plataforma SISTUR, incluindo todos os seus módulos, funcionalidades, conteúdos educacionais, ferramentas de diagnóstico e demais recursos disponibilizados ao Usuário.":"Estos Términos regulan el acceso y la utilización de la Plataforma SISTUR, incluyendo todos sus módulos, funcionalidades, contenidos educativos, herramientas de diagnóstico y demás recursos puestos a disposición del Usuario.","Estes Termos são regidos pela legislação brasileira.":"Estos Términos se rigen por la legislación brasileña.",Estimada:V$,Estimado:$$,"Estimado (Baixa)":"Estimado (Baja)","Estimado ({{v0}})":"Estimado ({{v0}})","Estimativa da Secretaria de Turismo ou estudos de demanda. Receita total gerada por visitantes no perÃodo.":"Estimación de la SecretarÃa de Turismo o estudios de demanda. Ingresos totales generados por visitantes en el perÃodo.","Estimativa da receita gerada pelo turismo no municÃpio. Consulte Observatório de Turismo ou estudos de impacto econômico.":"Estimación de los ingresos generados por el turismo en el municipio. Consulte el Observatorio de Turismo o estudios de impacto económico.","Estimativa da receita gerada pelo turismo. Consulte estudos de impacto econômico, Observatório de Turismo ou IBGE (conta satélite).":"Estimación de los ingresos generados por el turismo. Consulte estudios de impacto económico, Observatorio de Turismo o IBGE (cuenta satélite).","Estimativa sem fonte primária":"Estimación sin fuente primaria","Estou começando na área":"Estoy empezando en el área","Estradas para animais":"Carreteras para animales",Estrategista:H$,
348Estratégia:"Estrategia","Estratégia Sustentável Geral":"Estrategia Sostenible General","Estratégia de coleta:":"Estrategia de recolección:","Estratégia de longo prazo!":"¡Estrategia a largo plazo!","Estratégias de marketing e vendas para destinos e produtos turÃsticos":"Estrategias de marketing y ventas para destinos y productos turÃsticos","Estratégias didáticas, recursos e atividades":"Estrategias didácticas, recursos y actividades",Estratégico:"Estratégico","Estratégico ({{v0}})":"Estratégico ({{v0}})","Estratégico â 19 indicadores, 2â3 horas. Equilibra profundidade e prática.":"Estratégico â 19 indicadores, 2â3 horas. Equilibra profundidad y práctica.","Estrela do Mar":"Estrella de Mar",Estrutura:W$,"Estrutura (12 seções):":"Estructura (12 secciones):","Estrutura Canônica do Relatório":"Estructura Canónica del Informe","Estrutura atualizada â vale para os próximos relatórios.":"Estructura actualizada â válida para los próximos informes.","Estrutura de Pilares":"Estructura de Pilares","Estrutura modular em desenvolvimento.":"Estructura modular en desarrollo.","Estrutura:":"Estructura:",Estrutural:Q$,"Estrutural â depende de infraestrutura e investimento.":"Estructural â depende de infraestructura e inversión.","Estruturação de inst
348âncias de governança e articulação entre atores":"Estructuración de instancias de gobernanza y articulación entre actores","Estuda o equilÃbrio":"Estudia el equilibrio",Estudante:K$,"Estudante: acesso a cursos e trilhas. Professor: pode criar e gerenciar conteúdo.":"Estudiante: acceso a cursos y rutas. Profesor: puede crear y gestionar contenido.",Estudantes:Y$,"Estudar técnicas de convivência com o semiárido":"Estudiar técnicas de convivencia con el semiárido","Estude um módulo":"Estudie un módulo",Estudo:J$,"Estudos de impacto territorial":"Estudios de impacto territorial",Estável:"Estable","Etapa atualizada":"Etapa actualizada","Etapa de trilha concluÃda":"Etapa de sendero concluida","Etapa {{v0}} de {{v1}}":"Etapa {{v0}} de {{v1}}",Etapas:X$,"Etapas da trilha":"Etapas de la ruta de aprendizaje","Evacuar a área e aceitar a perda":"Evacuar el área y aceptar la pérdida","Evacuar área de risco":"Evacuar área de riesgo",Evento:Z$,"Evento criado e alunos notificados":"Evento creado y alumnos notificados","Evento excluÃdo":"Evento eliminado",Eventos:e5,"Eventos & Sazonalidade Local":"Eventos y Estacionalidad Local","Eventos (30 dias)":"Eventos (30 dÃas)","Eventos (últimos 500)":"Eventos (últimos 500)","Eventos / Grupos":"Eventos / Grupos","Eventos 12m":"Eventos 12m","Eventos Locais":"Eventos Locales","Eventos Municipais Oficiais":"Eventos Municipales Oficiales","Eventos Recentes":"Eventos Recientes","Eventos crÃticos são destacados automaticamente.":"Los eventos crÃticos se destacan automáticamente.","Eventos de turismo":"Eventos de turismo","Eventos do Sistema":"Eventos del Sistema","Eventos e erros da edge function generate-report (filtrado por provedor de IA)":"Eventos y errores de la función edge generate-report (filtrado por proveedor de IA)","Eventos e sazonalidade analisados":"Eventos y estacionalidad analizados","Eventos observatório":"Eventos observatorio","Eventos públicos":"Eventos públicos","Eventos recentes":"Eventos recientes","Evidência:":"Evidencia:","Evidência: {{0}}":"Evidencia: {{0}}","Evidências encontradas":"Evidencias encontradas","Evidências:":"Evidencias:","Evita repetição de questões recentes":"Evita repetición de preguntas recientes",Evolução:"Evolución","Evolução Temporal":"Evolución Temporal","Evolução ao longo do tempo":"Evolución a lo largo del tiempo","Evolução dos Ciclos":"Evolución de los Ciclos","Evolução dos Ciclos ERP":"Evolución de los Ciclos ERP","Evolução dos ciclos":"Evolución de los ciclos","Evolução temporal dos pilares":"Evolución temporal de los pilares","Evolução temporal dos pilares ({{v0}} rodadas)":"Evolución temporal de los pilares ({{v0}} rondas)","Evolução:":"Evolución:","Ex.: Aula sobre IGMA":"Ej.: Clase sobre IGMA","Ex.: Compra pacote 50 â pedido #123":"Ej.: Compra paquete 50 â pedido #123","Ex.: Contrato 2026/014":"Ej.: Contrato 2026/014","Ex.: Hotel Bem-vindo Centro":"Ej.: Hotel Bienvenido Centro","Ex.: Lançamento 2026":"Ej.: Lanzamiento 2026","Ex.: Maria Silva":"Ej.: Maria Silva","Ex.: PROF3XK9AB":"Ej.: PROF3XK9AB","Ex.: Rede Atlântica, Accor, Hotel da FamÃlia":"Ej.: Red Atlántica, Accor, Hotel de la Familia","Ex.: Tesouro, FUNGETUR...":"Ej.: Tesoro, FUNGETUR...","Ex.: Turma de Planejamento TurÃstico â 2º semestre.":"Ej.: Grupo de Planificación TurÃstica â 2º semestre.","Ex.: cortesia promocional":"Ej.: cortesÃa promocional","Ex: %, R$, hab":"Ej: %, R$, hab","Ex: Adicionar exportação para Excel":"Ej: Añadir exportación a Excel","Ex: Analista de Turismo, Secretário de Cultura...":"Ej: Analista de Turismo, Secretario de Cultura...","Ex: Aplicar a metodologia de Mario Beni":"Ej: Aplicar la metodologÃa de Mario Beni","Ex: Argumento ausente / pouco claro / consistente / sólido / excepcional":"Ej: Argumento ausente / poco claro / consistente / sólido / excepcional","Ex: Atualização importante do SISTUR":"Ej: Actualización importante de SISTUR","Ex: Bonito":"Ej: Bonito","Ex: Certificado de 40h":"Ej: Certificado de 40h","Ex: Clareza argumentativa":"Ej: Claridad argumentativa","Ex: Consórcio Vale Histórico":"Ej: Consorcio Valle Histórico","Ex: Curs
348o 'Gestão Ambiental' prescrito, curso OE bloqueado por IGMA":"Ej: Curso 'Gestión Ambiental' prescrito, curso OE bloqueado por IGMA","Ex: Curso introdutório de turismo":"Ej: Curso introductorio de turismo","Ex: Diagnosticar gargalos territoriais":"Ej: Diagnosticar cuellos de botella territoriales","Ex: Diagnóstico Bonito 2024":"Ej: Diagnóstico Bonito 2024","Ex: Documento confidencial â Uso interno":"Ej: Documento confidencial â Uso interno","Ex: EDU-001":"Ej: EDU-001","Ex: Entrega da primeira versão":"Ej: Entrega de la primera versión","Ex: Erro ao salvar diagnóstico":"Ej: Error al guardar diagnóstico","Ex: Este relatório é parte do plano estratégico 2025-2028...":"Ej: Este informe es parte del plan estratégico 2025-2028...","Ex: Gestores, Técnicos":"Ej: Gestores, Técnicos","Ex: Gestão de Destinos":"Ej: Gestión de Destinos","Ex: Gestão de Destinos TurÃsticos":"Ej: Gestión de Destinos TurÃsticos","Ex: Gestão de resÃduos sólidos em destinos turÃsticos":"Ej: Gestión de residuos sólidos en destinos turÃsticos","Ex: Hotel Fasano":"Ej: Hotel Fasano","Ex: Introdução ao Turismo Sustentável":"Ej: Introducción al Turismo Sostenible","Ex: Minha trilha personalizada":"Ej: Mi ruta de aprendizaje personalizada","Ex: ORGAB3XYZ":"Ej: ORGAB3XYZ","Ex: PIB per capita = R$ 25.000 (IBGE, 2022, confiança 5/5)":"Ej: PIB per cápita = R$ 25.000 (IBGE, 2022, confianza 5/5)","Ex: PROFAB3XYZ":"Ej: PROFAB3XYZ","Ex: Planejamento, Execução...":"Ej: Planificación, Ejecución...","Ex: Plano de Melhoria TurÃstica 2026":"Ej: Plan de Mejora TurÃstica 2026","Ex: Porto de Galinhas (PE) - IBGE 2607901":"Ej: Porto de Galinhas (PE) - IBGE 2607901","Ex: RA crÃtico â EDU_OE bloqueado, marketing bloqueado":"Ej: RA crÃtico â EDU_OE bloqueado, marketing bloqueado","Ex: RA-001":"Ej: RA-001","Ex: RA001":"Ej: RA001","Ex: SISTUR-XXXX-XXXX-XXXX":"Ej: SISTUR-XXXX-XXXX-XXXX","Ex: Saneamento, Segurança, Infraestrutura":"Ej: Saneamiento, Seguridad, Infraestructura","Ex: Score 52% â Status ATENÃÃO":"Ej: Puntuación 52% â Estado ATENCIÃN","Ex: Secretaria Municipal de Turismo":"Ej: SecretarÃa Municipal de Turismo","Ex: Secretaria de Turismo de...":"Ej: SecretarÃa de Turismo de...","Ex: São Paulo, Rio Grande do Sul, Argentina":"Ej: São Paulo, Rio Grande do Sul, Argentina","Ex: São Paulo, SP":"Ej: São Paulo, SP","Ex: Turismo Sustentável 2026.1":"Ej: Turismo Sostenible 2026.1","Ex: Valor 45.2% confirmado pelo analista":"Ej: Valor 45.2% confirmado por el analista",Exame:a5,"Exame criado com sucesso!":"¡Examen creado con éxito!","Exame enviado com sucesso!":"Examen enviado correctamente!","Exame enviado! Questões dissertativas aguardam correção manual.":"Examen enviado! Las preguntas de desarrollo están pendientes de corrección manual.","Exame iniciado!":"Examen iniciado!","Exame não encontrado":"Examen no encontrado",Excelente:o5,"Excelente!":"¡Excelente!",Exceções:"Excepciones",Excluir:i5,"Excluir Atividade":"Eliminar Actividad","Excluir Fase":"Eliminar Fase","Excluir Marco":"Eliminar Hito","Excluir Módulo":"Eliminar Módulo","Excluir Projeto":"Eliminar Proyecto","Excluir Questão":"Eliminar Pregunta","Excluir Sala":"Eliminar Sala","Excluir Tarefa":"Eliminar Tarea","Excluir Usuário":"Eliminar Usuario",'Excluir a pasta? As conversas vão para "Sem pasta".':'¿Eliminar la carpeta? Las conversaciones irán a "Sin carpeta".',"Excluir cenário":"Eliminar escenario","Excluir destino?":"¿Eliminar destino?","Excluir diagnóstico?":"¿Eliminar diagnóstico?","Excluir esta conversa?":"¿Eliminar esta conversación?","Excluir feedback?":"¿Eliminar comentario?","Excluir organização?":"¿Eliminar organización?","Excluir post?":"¿Eliminar publicación?","Excluir resposta?":"¿Eliminar respuesta?","Excluir trilha?":"¿Eliminar sendero?","Excluir usuário?":"¿Eliminar usuario?","Excluir {{v0}} projeto(s) associado(s)":"Eliminar {{v0}} proyecto(s) asociado(s)","Excluir {{v0}} relatório(s) associado(s)":"Eliminar {{v0}} informe(s) asociado(s)",Exclusão:"Eliminación",Exclusões:"Exclusiones","Executa a tarefa":"Ejecuta la tarea",Executando:t5,"Executando bloco":"Ejecutando bloque","Executando verificações...":"Ejecutando verificaciones...","Executando...":"Ejecutando...","Executar Verificação":"Ejecutar Verificación","Execute mais diagnósticos para visualizar a evolução temporal.":"Realice más diagnósticos para visualizar la evolución temporal.","Execute o diagnóstico para gerar planos de ação automaticamente":"Ejecute el diagnóstico para generar planes de acción automáticamente","Execute o diagnóstico para identificar gargalos e gerar ações que podem ser convertidas em projeto.":"Ejecute el diagnóstico para identificar cuellos de botella y generar acciones que puedan convert
348irse en un proyecto.","Execute um diagnóstico para gerar prescrições de capacitação.":"Ejecuta un diagnóstico para generar prescripciones de capacitación.",Execução:"Ejecución","Execução das tarefas da sprint":"Ejecución de las tareas del sprint","Execução sequencial das 6 regras sistêmicas (ver seção 3.2)":"Ejecución secuencial de las 6 reglas sistémicas (ver sección 3.2)",Exemplo:r5,"Exemplo: HomicÃdios por 100k = 15":"Ejemplo: Homicidios por 100k = 15","Exemplo: {{v0}}":"Ejemplo: {{v0}}","Exemplos de uso":"Ejemplos de uso","Exercite a memória enquanto aprende sobre ecologia!":"¡Ejercita la memoria mientras aprendes sobre ecologÃa!",'Exibido como "Usuário Anônimo" sem foto':'Mostrado como "Usuario Anónimo" sin foto',"Exibindo apenas indicadores em":"Mostrando solo indicadores en","Exibindo apenas indicadores em Atenção ou CrÃtico ({{v0}} de {{v1}}).":"Mostrando solo indicadores en Atención o CrÃtico ({{v0}} de {{v1}}).","Exibir data de geração":"Mostrar fecha de generación","Exibir identidade em posts públicos":"Mostrar identidad en publicaciones públicas","Exibir número de páginas":"Mostrar número de páginas","Exigir aprovação manual de admin antes de publicar imagens":"Requerir aprobación manual del administrador antes de publicar imágenes","Exigir compensações ambientais e áreas de conservação":"Exigir compensaciones ambientales y áreas de conservación","Exigir que o resort adote práticas sustentáveis certificadas":"Exigir que el resort adopte prácticas sostenibles certificadas","Existe diagnóstico Territorial para o municÃpio, mas ele ainda não foi calculado.":"Existe un diagnóstico Territorial para el municipio, pero aún no se ha calculado.","Existem 5 biomas para explorar:\nð³ Amazônia â floresta tropical\nðï¸ Litoral â ecossistema costeiro\nð¾ Cerrado â savana brasileira\nâ°ï¸ Serra â região montanhosa\nðµ Caatinga â semiárido nordestino":`Existen 5 biomas para explorar: 349ð³ AmazonÃa â selva tropical 350ðï¸ Litoral â ecosistema costero 351ð¾ Cerrado â sabana brasileña 352â°ï¸ Sierra â región montañosa 353ðµ Caatinga â semiárido nordestino`,"Existem 5 biomas para explorar: ð³ Amazônia â floresta tropical ðï¸ Litoral â ecossistema costeiro ð¾ Cerrado â savana brasileira â°ï¸ Serra â região montanhosa ðµ Caatinga â semiárido nordestino":"Existen 5 biomas para explorar: ð³ Amazonia â selva tropical ðï¸ Litoral â ecosistema costero ð¾ Cerrado â sabana brasileña â°ï¸ Sierra â región montañosa ðµ Caatinga â semiárido nordestino","Existem 5 biomas para explorar:\\nð³ Amazônia â floresta tropical\\nðï¸ Litoral â ecossistema costeiro\\nð¾ Cerrado â savana brasileira\\nâ°ï¸ Serra â região montanhosa\\nðµ Caatinga â semiárido nordestino":"Hay 5 biomas para explorar:\\nð³ AmazonÃa â selva tropical\\nðï¸ Litoral â ecosistema costero\\nð¾ Cerrado â sabana brasileña\\nâ°ï¸ Sierra â región montañosa\\nðµ Caatinga â región semiárida del nordeste brasileño","Existência de conselho municipal ativo":"Existencia de consejo municipal activo","Existência de plano de marketing, presença digital, campanhas ativas. Fonte: Secretaria de Turismo. Periodicidade: anual.":"Existencia de plan de marketing, presencia digital, campañas activas. Fuente: SecretarÃa de Turismo. Periodicidad: anual.","Existência de plano municipal de turismo vigente":"Existencia de plan municipal de turismo vigente","Existência e estado de conservação de bens tombados (IPHAN, estaduais, municipais). Fonte: IPHAN. Periodicidade: bienal.":"Existencia y estado de conservación de bienes catalogados (IPHAN, estatales, municipales). Fuente: IPHAN. Periodicidad: bienal.","
353Existência e regularidade de reuniões do COMTUR. Fonte: Mapa do Turismo Brasileiro. Periodicidade: anual.":"Existencia y regularidad de reuniones del COMTUR. Fuente: Mapa do Turismo Brasileño. Periodicidad: anual.","Existência, vigência e indicadores de execução. Fonte: Secretaria de Turismo. Periodicidade: quadrienal.":"Existencia, vigencia e indicadores de ejecución. Fuente: SecretarÃa de Turismo. Periodicidad: cuatrienal.","Expandir com Mandala":"Expandir con Mandala","Expandir com Mandala da Sustentabilidade":"Expandir con Mandala de Sostenibilidad","Expandir conhecimentos gerais":"Ampliar conocimientos generales","Expandir energia solar para todas as comunidades":"Expandir energÃa solar a todas las comunidades","Expandir o bar e ignorar as crÃticas":"Expandir el bar e ignorar las crÃticas","Expandir o programa para toda a Serra da Mantiqueira":"Expandir el programa a toda la Sierra de la Mantiqueira","Expandir o projeto e acolher as famÃlias":"Expandir el proyecto y acoger a las familias","Expandir o projeto para toda a bacia hidrográfica":"Expandir el proyecto a toda la cuenca hidrográfica","Expandir o selo para toda a região semiárida":"Expandir el sello a toda la región semiárida","Expandir para criar o maior corredor de cerrado do Brasil":"Expandir para crear el mayor corredor de cerrado de Brasil","Expandir para criar parque estadual permanente":"Expandir para crear parque estatal permanente","Expandir para criar um viveiro comunitário de mudas":"Expandir para crear un vivero comunitario de plántulas","Experiência do Hóspede":"Experiencia del Huésped","Experiência do Visitante":"Experiencia del Visitante",Expira:s5,Expiração:"Expiración","Explicação (opcional)":"Explicación (opcional)","Explicação exibida após resposta...":"Explicación mostrada después de la respuesta...","Explicação:":"Explicación:","Explique a teoria sistêmica do turismo":"Explica la teorÃa sistémica del turismo",Explorar:n5,"Explorar Cursos":"Explorar Cursos","Explorar o catálogo":"Explorar el catálogo",Exploração:"Exploración","Exploração Completa!":"¡Exploración Completa!","Explore a maior floresta tropical do mundo e enfrente ameaças de desmatamento, queimadas e mineração ilegal.":"Explore la selva tropical más grande del mundo y enfrente amenazas de deforestación, quemas y minerÃa ilegal.","Explore as funcionalidades antes que expire.":"Explore las funcionalidades antes de que expire.","Explore bem durante o trial para saber qual plano atende suas necessidades.":"Explore bien durante la prueba para saber qué plan se adapta a sus necesidades.","Explore mapas estilo campo minado, colete tesouros sustentáveis, evite armadilhas e resolva enigmas ambientais!":"Explora mapas estilo buscaminas, recolecta tesoros sostenibles, evita trampas y resuelve enigmas ambientales!","Explore o catálogo, complete treinamentos e ganhe conquistas":"Explora el catálogo, completa capacitaciones y obtén logros","Explore o mapa, colete tesouros sustentáveis, evite armadilhas de poluição e resolva enigmas ambientais!":"¡Explora el mapa, recoge tesoros sostenibles, evita trampas de contaminación y resuelve acertijos ambientales!","Exporta a matriz completa de indicadores com pesos, referências e metadados.":"Exporta la matriz completa de indicadores con pesos, referencias y metadatos.","Exporta o catálogo de cursos SISTUR EDU com pilares e agentes-alvo.":"Exporta el catálogo de cursos SISTUR EDU con pilares y agentes objetivo.","Exporta todas as rodadas de diagnóstico com status, datas e destino associado.":"Exporta todas las rondas de diagnóstico con estado, fechas y destino asociado.","Exporta todos os destinos cadastrados com coordenadas e código IBGE.":"Exporta todos los destinos registrados con coordenadas y código IBGE.","Exporta todos os gargalos detectados com severidade e interpretação territorial.":"Exporta todos los cuellos de botella detectados con severidad e interpretación territorial.","Exporta todos os usuários (ativos e pendentes) com status, papel, licença, termos aceitos e acessos.":"Exporta todos los usuarios (activos y pendientes) con estado, rol, licencia, términos aceptados y accesos.","Exportando...":"Exportando...",Exportar:c5,"Exportar .ics":"Exportar .ics","Exportar CSV":"Exportar CSV","Exportar Dados":"Exportar Datos","Exportar calendário (.ics)":"Exportar calendario (.ics)",Exportação:"Exportación","Exportação DOCX e PDF com identidade visual customizável":"Exportación DOCX y PDF con identidad visual personalizable","Exporte dados do SISTUR em formato CSV compatÃvel com Excel":"Exporte datos de SISTUR en formato CSV compatible con Excel","Exporte diagnósticos, indicadores, planos de ação e outros dad
353os do sistema":"Exporte diagnósticos, indicadores, planes de acción y otros datos del sistema","Exporte em PDF para compartilhar com stakeholders.":"Exporte en PDF para compartir con stakeholders.","Exporte logs para análise externa.":"Exporte logs para análisis externo.","Extensão contemporânea baseada em Tasso, Silva & Nascimento (2024) â opt-in por diagnóstico":"Extensión contemporánea basada en Tasso, Silva & Nascimento (2024) â opt-in por diagnóstico",Externalidade:d5,"Externalidades negativas (OE melhora à s custas de RA) disparam alerta.":"Externalidades negativas (OE mejora a expensas de RA) disparan alerta.","Externalidades negativas ocorrem quando o crescimento estrutural (OE) acontece à s custas do ambiente (RA). O sistema detecta isso quando OE melhora entre ciclos mas RA piora, gerando um alerta especÃfico de externalidade.":"Las externalidades negativas ocurren cuando el crecimiento estructural (OE) sucede a expensas del ambiente (RA). El sistema lo detecta cuando OE mejora entre ciclos pero RA empeora, generando una alerta especÃfica de externalidad.","Extração de recursos que pode degradar ecossistemas":"Extracción de recursos que puede degradar ecosistemas",FAQ:l5,"FAQ â Perguntas Frequentes":"FAQ â Preguntas Frecuentes","FAQ â Perguntas Frequentes | SISTUR":"FAQ â Preguntas Frecuentes | SISTUR",FORÃA:"FUERZA",Facebook:u5,"Faixa interquartil: {{v0}}%â{{v1}}%":"Rango intercuartil: {{v0}}%â{{v1}}%","Faixa válida:":"Rango válido:",Faixas:m5,"Faixas Categóricas":"Rangos Categóricos","Falar com instrutor":"Hablar con el instructor","Falar com o time":"Hablar con el equipo","Fale com o time":"Hable con el equipo","Fale com o time comercial":"Hable con el equipo comercial","Falha ao analisar preços":"Fallo al analizar precios","Falha ao analisar reputação":"Fallo al analizar reputación","Falha ao analisar saúde":"Fallo al analizar salud","Falha ao analisar segurança":"Fallo al analizar seguridad","Falha ao buscar IBGE/SIDRA: ":"Fallo al buscar IBGE/SIDRA: ","Falha ao carregar configurações do Beni":"Error al cargar las configuraciones de Beni","Falha ao carregar logs.":"Error al cargar los logs.","Falha ao carregar relatórios salvos.":"Error al cargar los informes guardados.","Falha ao criar consórcio":"Fallo al crear consorcio","Falha ao enviar alerta: ":"Error al enviar la alerta: ","Falha ao enviar e-mail":"Fallo al enviar correo electrónico","Falha ao enviar o anexo":"Fallo al enviar el adjunto","Falha ao executar blocos: ":"Fallo al ejecutar bloques: ","Falha ao importar CSV":"Fallo al importar CSV","Falha ao iniciar cálculo":"Fallo al iniciar cálculo","Falha ao ler arquivo: ":"Error al leer archivo: ","Falha ao ler o arquivo.":"Fallo al leer el archivo.","Falha ao ler o arquivo: ":"Error al leer el archivo: ","Falha ao registrar o anexo":"Fallo al registrar el adjunto","Falha ao salvar rascunho automaticamente":"Error al guardar el borrador automáticamente","Falha intermitente de conexão":"Falla intermitente de conexión","Falha na busca":"Fallo en la búsqueda","Falha na geração em segundo plano.":"Fallo en la generación en segundo plano.","Falha na ingestão":"Fallo en la ingesta","Falha na ingestão: ":"Fallo en la ingesta: ","Falha no autosave":"Fallo en el autoguardado","Falha: ":"Fallo: ",Falhas:p5,"Falhas de governança, planejamento ou coordenação institucional":"Fallos de gobernanza, planificación o coordinación institucional","Falhas na execução ou prestação de serviços ao turista":"Fallos en la ejecución o prestación de servicios al turista",Falhou:g5,"Falta de padronização na avaliação e comparação entre destinos":"Falta de estandarización en la evaluación y comparación entre destinos","Faltam preencher ({{v0}}):":"Faltan por rellenar ({{v0}}):",FamÃlia:"Familia",Fase:h5,"Fase (opcional)":"Fase (opcional)","Fase 1":"Fase 1","Fase 2":"Fase 2","Fase excluÃda":"Fase excluida","Fase: {{v0}}":"Fase: {{v0}}",Fases:f5,"Fases do Projeto":"Fases del Proyecto","Fases representam etapas macro do projeto (ex: Planejamento, Execução, Avaliação).":"Las fases representan etapas macro del proyecto (ej: Planificación, Ejecución, Evaluación).","Fases sequenciais com marcos definidos":"Fases secuenciales con hitos definidos","Fazer Primeira Solicitação":"Hacer Primera Solicitud","Fazer Upload":"Subir Archivo","Fazer um zoológico":"Hacer un zoológico","Fazer uma festa surpresa":"Hacer una fiesta sorpresa","Faça login para assinar":"Inicie sesión para suscribirse","Faça login para continuar.":"Inicie sesión para continuar.","Faça o upgrade para usar esta ferramenta.":"Actualice para usar esta herramienta.","Faça upload de documentos de referência (PDFs, planilhas) por destino. Os arquivos são usados automaticamente para enriquecer diagnósticos e relatórios com IA.":"Cargue documentos de referencia (PDFs, hojas de cálculo) por destino. Los archivos se utilizan automáticamente para enriquecer diagnósticos e informes con IA.","Faça upload de documentos para criar sua base de conhecimento":"Suba documentos para crear su base de conocimiento","Feature flags por organização":"Feature flags por organización",Fechar:v5,"Fechar a vila por uma semana":"Cerrar la villa por una semana","Fechar as portas e proteger apenas o que tem":"Cerrar las puertas y proteger solo lo que se tiene","Fechar as trilhas radicais e voltar ao ecoturismo":"Cerrar los senderos extremos y volver al ecoturismo","Fechar o bar e pedir desculpas à comunidade":"Cerrar el bar y pedir disculpas a la comunidad","Fechar tudo e isolar":"Cerrar todo y aislar","Fechar â":"Cerrar â",Feedback:b5,"Feedback para o aluno...":"Comentario para el alumno...","Feedbacks são classificados por tipo: bug, sugestão, elogio.":"Los feedbacks se clasifican por tipo: error, sugerencia, elogio.",Ferramentas:A5,"Ferramentas de Análise":"Herramientas de Análisis","Ferramentas disponÃveis":"Herramientas disponibles","Ferramentas do SISTUR (Sistema Integrado de Suporte para Turismo em Regiões). Consulte destinos, diagnósticos territoriais e empresariais com notas por pilar (RA, OE, AO), projetos e suas tarefas, e o catálogo de capacitações. Todos os dados são escopados ao usuário autenticado e à sua organização. Percentuais já vêm em escala 0-100.":"Herramientas de SISTUR (Sistema Integrado de Soporte para Turismo en Regiones). Consulte destinos, diagnósticos territoriales y empresariales con notas por pilar (RA, OE, AO), proyectos y sus tareas, y el catálogo de capacitaciones. Todos los datos están acotados al usuario autenticado y a su organización. Los porcentajes ya vienen en escala 0-100.","Festa com sombra natural! Que ideia boa! ð¿":"¡Fiesta con sombra natural! ¡Qué buena idea! ð¿","Festival incrÃvel e sustentável! ð":"¡Festival increÃble y sostenible! ð",Fev:y5,"Ficou bonito por fora, mas não é de verdade...":"Se ve bonito por fuera, pero no es de verdad...","Fila de Revisão":"Cola de Revisión","Filosofia de Transformação":"FilosofÃa de Transformación","Filtra pelo pilar SISTUR.":"Filtra por el pilar SISTUR.","Filtra pelo status da tarefa.":"Filtra por el estado de la tarea.","Filtra pelo status do diagnóstico.":"Filtra por el estado del diagnóstico.","Filtra pelo status do projeto.":"Filtra por el estado del proyecto.","Filtra por destino.":"Filtra por destino.","Filtra por nome do destino.":"Filtra por nombre del destino.","Filtra por tÃtulo.":"Filtra por tÃtulo.",Filtrar:S5,"Filtrar destino":"Filtrar destino","Filtrar poluição do ar":"Filtrar contaminación del aire","Filtrar por destino":"Filtrar por destino","Filtrar por pilar:":"Filtrar por pilar:","Filtrar por resultado":"Filtrar por resultado","Filtrar por âncora":"Filtrar por ancla","Filtrar radiação ultravioleta":"Filtrar radiación ultravioleta","Filtrar unidade":"Filtrar unidad","Filtre por sala ou atribuição especÃfica.":"Filtre por sala o asignación especÃfica.","Filtre por tipo de evento, usuário ou perÃodo.":"Filtre por tipo de evento, usuario o perÃodo.","Filtros permitem buscar por destino, status ou perÃodo.":"Los filtros permiten buscar por destino, estado o perÃodo.","Filtros por tema, nÃvel e pilar ajudam a encontrar c
353onteúdo relevante.":"Los filtros por tema, nivel y pilar ayudan a encontrar contenido relevante.","Filtros por tipo: Trial, Basic, Pro, Enterprise.":"Filtros por tipo: Trial, Basic, Pro, Enterprise.","Filtros:":"Filtros:","Fim (data)":"Fin (fecha)","Fim (hora)":"Fin (hora)","Fim de Jogo!":"Fin del Juego!","Fim do perÃodo":"Fin del perÃodo","Fim:":"Fin:","Finais da História":"Finales de la Historia","Finalizar contratação":"Finalizar contratación","Finalize 1 treinamento por completo.":"Finalice 1 entrenamiento por completo.","Finalmente agir e buscar parcerias para expansão":"Finalmente actuar y buscar alianzas para la expansión","Finanças Municipais â Receita própria, Despesa com turismo. DisponÃvel em: tesouro.fazenda.gov.br (via IBGE Pesquisas)":"Finanzas Municipales â Ingresos propios, Gasto en turismo. Disponible en: tesouro.fazenda.gov.br (vÃa IBGE Pesquisas)","Fiscalizar rigorosamente e multar violações":"Fiscalizar rigurosamente y multar violaciones",Fitoplâncton:"Fitoplancton",Fixado:E5,"Fixado na tabela de auditoria":"Fijado en la tabla de auditorÃa",Fixar:C5,"Fixar no topo":"Fijar al inicio","Fixar post":"Fijar publicación","Flag de ajuste manual (was_manually_adjusted)":"Flag de ajuste manual (was_manually_adjusted)",Flat:T5,"Floração de Algas":"Floración de Algas","Flores e borboletas":"Flores y mariposas","Flores, ciência e beleza!":"¡Flores, ciencia y belleza!","Floresta Amazônica":"Selva Amazónica","Floresta de pinheiros":"Bosque de pinos","Floresta do norte do Brasil":"Selva del norte de Brasil","Fluxo TurÃstico":"Flujo TurÃstico","Fluxo contÃnuo, ideal para equipes pequenas":"Flujo continuo, ideal para equipos pequeños","Fluxo de Cálculo de Scores":"Flujo de Cálculo de Scores","Fluxo de Decisão do Motor IGMA":"Flujo de Decisión del Motor IGMA","Fluxo do Diagnóstico SISTUR":"Flujo del Diagnóstico SISTUR","Fluxo, ocupação, eventos, receita, empregos.":"Flujo, ocupación, eventos, ingresos, empleos.","Foca em infraestrutura. Lembre da natureza!":"Se enfoca en la infraestructura. ¡Recuerda la naturaleza!","Focar apenas na comunidade atual":"Enfocarse solo en la comunidad actual","Foco analÃtico":"Foco analÃtico","Foco em dados integráveis":"Enfoque en datos integrables","Fogões solares e biodigestores transformam a vida na caatinga. A vegetação se regenera e o ar fica mais limpo. Mas a seca se intensifica com as mudanças climáticas.":"Estufas solares y biodigestores transforman la vida en la caatinga. La vegetación se regenera y el aire se vuelve más limpio. Pero la sequÃa se intensifica con el cambio climático.","Foi divertido, mas os animais fugiram...":"Fue divertido, pero los animales huyeron...",Fonte:P5,"Fonte (opcional)":"Fuente (opcional)","Fonte IGMA":"Fuente IGMA","Fonte Oficial":"Fuente Oficial","Fonte analisada":"Fuente analizada","Fonte de financiamento":"Fuente de financiamiento","Fonte do dado (source_code): IBGE, CADASTUR, MANUAL, MAPA_TURISMO":"Fuente del dato (source_code): IBGE, CADASTUR, MANUAL, MAPA_TURISMO","Fonte dos dados (opcional)":"Fuente de los datos (opcional)","Fonte oficial: IBGE/SID
353RA (população estimada + PIB municipal)":"Fuente oficial: IBGE/SIDRA (población estimada + PIB municipal)","Fonte renovável que usa a força do vento sem poluir":"Fuente renovable que usa la fuerza del viento sin contaminar","Fonte secundária":"Fuente secundaria","Fonte: ANAC":"Fuente: ANAC","Fonte: API IBGE Localidades":"Fuente: API IBGE Localidades","Fonte: IGMA":"Fuente: IGMA","Fonte: {{v0}}":"Fuente: {{v0}}",Fontes:R5,"Fontes ({{v0}})":"Fuentes ({{v0}})","Fontes Encontradas":"Fuentes Encontradas","Fontes Oficiais":"Fuentes Oficiales","Fontes cruzadas":"Fuentes cruzadas","Fontes de Dados Oficiais":"Fuentes de Datos Oficiales","Fontes de Dados Utilizadas":"Fuentes de Datos Utilizadas","Fontes de Dados e Transparência":"Fuentes de Datos y Transparencia","Fontes de dados e frameworks utilizados":"Fuentes de datos y frameworks utilizados","Fontes detectadas":"Fuentes detectadas","Fontes que se regeneram naturalmente":"Fuentes que se regeneran naturalmente","Fontes: IBGE, SIDRA, DATASUS, INEP, STN, CADASTUR, Mapa do Turismo, ANA/Hidroweb":"Fuentes: IBGE, SIDRA, DATASUS, INEP, STN, CADASTUR, Mapa do Turismo, ANA/Hidroweb","Fora do range":"Fuera de rango","Foram identificados":"Se identificaron","Formato Preferido":"Formato Preferido","Formato de aprendizado preferido":"Formato de aprendizaje preferido","Formato de saÃda (TTS-friendly)":"Formato de salida (TTS-friendly)","Formato do Arquivo CSV":"Formato del Archivo CSV","Formato esperado":"Formato esperado","Formato não suportado para extração automática. Converta para .txt/.md ou cole o conteúdo na caixa abaixo.":"Formato no compatible para extracción automática. Convierta a .txt/.md o pegue el contenido en la casilla de abajo.","Formatos suportados: .txt, .md, .json, .html, .csv. Para PDF/DOCX, copie o texto e cole na caixa abaixo.":"Formatos compatibles: .txt, .md, .json, .html, .csv. Para PDF/DOCX, copie el texto y péguelo en la casilla de abajo.","Formação de gestores e trade":"Formación de gestores y sector turÃstico",Formulário:"Formulario",Formulários:"Formularios","Fornece insumos":"Proporciona insumos","Fornecedores Locais":"Proveedores Locales","Forneça mais detalhes sobre a denúncia...":"Proporciona más detalles sobre la denuncia...","Forneça uma resposta ao aluno sobre a decisão.":"Proporcione una respuesta al alumno sobre la decisión.","Fortalecer governança":"Fortalecer la gobernanza",Forte:x5,"Força da Lei":"Fuerza de la Ley","Força da Marca":"Fuerza de Marca","Força da marca analisada":"Fuerza de la marca analizada","Fotografar as evidências e recuar silenciosamente":"Fotografiar las evidencias y retirarse silenciosamente","Fotos de turismo":"Fotos de turismo","Fotos genéricas":"Fotos genéricas","Fotos normais do cotidiano":"Fotos normales de la vida cotidiana","Fragilidade de Governança":"Debilidad de Gobernanza","Fragilidades de governança comprometem a efetividade de ações de mercado e investimento no turismo.":"Las debilidades de gobernanza comprometen la efectividad de las acciones de mercado y la inversión en turismo.","Fragilidades de governança comprometem a efetividade de ações de mercado e investimento no turismo. Priorize capacitações em Ações Operacionais (AO) antes de OE.":"Las debilidades de gobernanza comprometen la efectividad de las acciones de mercado y la inversión en turismo. Priorice la capacitación en Acciones Operativas (AO) antes que en OE.","Fragmento de recife em recuperação":"Fragmento de arrecife en recuperación","Framework escalável para grandes organizações":"Framework escalable para grandes organizaciones","Framework ágil escalado para organizações complexas":"Marco de trabajo ágil escalado para organizaciones complejas","Framework ágil iterativo com sprints curtas":"Marco de trabajo ágil iterativo con sprints cortos",Franquia:w5,"Fruto do Cerrado":"Fruto del Cerrado","Fruto nutritivo e medicinal":"Fruto nutritivo y medicinal","Funciona mas é caro manter...":"Funciona pero es caro de mantener...",Funcionalidade:I5,"Funcionalidade não funciona":"Funcionalidad no funciona","Fundamentação Teórica":"Fun
353damentación Teórica","Fundo do Oceano":"Fondo del Océano",Função:"Función","Função principal que aplica as 6 regras sistêmicas de Mario Beni:":"Función principal que aplica las 6 reglas sistémicas de Mario Beni:","Funções SQL com SECURITY DEFINER para controle de acesso e lógica de negócio server-side.":"Funciones SQL con SECURITY DEFINER para control de acceso y lógica de negocio server-side.",Furacão:"Huracán","Furacão devastador!":"¡Huracán devastador!","Fábricas verdes":"Fábricas verdes",Fácil:"Fácil","Fórmula:":"Fórmula:","Fórmula: Score_Pilar = Σ(Score_i à Peso_i) / Σ(Peso_i) â média ponderada dos indicadores":"Fórmula: Score_Pilar = Σ(Score_i à Peso_i) / Σ(Peso_i) â promedio ponderado de los indicadores","Fórmulas sobre dados oficiais":"Fórmulas sobre datos oficiales",Fórum:"Foro","Fórum de Dúvidas":"Foro de Dudas","Fórum e canais de feedback":"Foro y canales de feedback","Fórum: Participe da comunidade.":"Foro: Participe de la comunidad.","Fóssil Vegetal":"Fósil Vegetal","Fóssil de planta antiga":"Fósil de planta antigua",GESTORES:D5,GOP:O5,GOVERNANCE_BLOCK:M5,"GPT-5":"GPT-5","GPT-5 (OpenAI)":"GPT-5 (OpenAI)","GPT-5.6 Luna":"GPT-5.6 Luna","GPT-5.6 Sol":"GPT-5.6 Sol","GPT-5.6 Terra":"GPT-5.6 Terra","GPT-6 Astra":"GPT-6 Astra","GTFS + ANTT + prefeituras":"GTFS + ANTT + ayuntamientos",GUARDIÃO:"GUARDIÃN","GUARDIÃO DO TERRITÃRIO":"GUARDIÃN DEL TERRITORIO","Games â Hub de Jogos Educativos":"Games â Centro de Juegos Educativos",Gamificação:"Gamificación","Gamificação Integrada":"Gamificación Integrada","Ganho no mês":"Ganancia del mes","Ganhou dinheiro mas ninguém organizou nada...":"Ganó dinero pero nadie organizó nada...","Gap competitivo (ENT_COMP_GAP)":"Brecha competitiva (ENT_COMP_GAP)","Garantias comuns aos três templates":"GarantÃas comunes a las tres plantillas","Gargalo diagnosticado:":"Cuello de botella diagnosticado:",Gargalos:N5,"Gargalos CrÃticos":"Cuellos de Botella CrÃticos","Gargalos Detectados":"Cuellos de Botella Detectados","Gargalos Identificados":"Cuellos de Botella Identificados","Gargalos crÃticos no municÃpio":"Cuellos de botella crÃticos en el municipio","Garimpo sem licença!":"¡MinerÃa ilegal!","Gasto por estadia (R$)":"Gasto por estancia (R$)",Gastronomia:z5,Gastronômico:"Gastronómico","Gateway de IA gerenciado (GPT-5, Gemini 2.5) para relatórios e chat":"Gateway de IA gestionado (GPT-5, Gemini 2.5) para informes y chat",Gatilho:j5,"Gatilho diagnóstico: o indicador associado precisa estar em Atenção ou CrÃtico.":"Disparador diagnóstico: el indicador asociado debe estar en Atención o CrÃtico.","Gatilhos identificados":"Desencadenantes identificados","Gauges + Alertas + Comparação temporal":"Gauges + Alertas + Comparación temporal","Gemini (Google)":"Gemini (Google)","Gemini 2.5 Pro":"Gemini 2.5 Pro","Gemini 3 Flash (Preview)":"Gemini 3 Flash (Vista previa)","Gemini 3.1 Flash Lite":"Gemini 3.1 Flash Lite","Gemini 3.1 Pro (Preview)":"Gemini 3.1 Pro (Vista previa)","Gemini 3.8 Flash":"Gemini 3.8 Flash",Gentrificação:"Gentrificación",Geomarketing:k5,"Geomarketing:":"Geomarketing:","Gera alerta, recomenda revisão de OE":"Genera alerta, recomienda revisión de OE","Gera prompt em linguagem natural para portar este módulo a outro projeto Lovable":"Genera un prompt en lenguaje natural para portar este módulo a otro proyecto Lovable","Gerado em":"Generado el","Gerador de Relatórios com Mente Sistur":"Generador de Informes con Mente Sistur",Geral:_5,"Geral mÃn:":"General mÃn:","Geramos recomendações personalizadas com base no seu perfil. Explore os cursos e trilhas sugeridos para você!":"Generamos recomendaciones personalizadas con base en tu perfil. ¡Explora los cursos y rutas sugeridos para ti!","Gerando...":"Generando...","Gerar Novo":"Generar Nuevo","Gerar Projeto com IA":"Generar Proyecto con IA","Gerar Recomendações":"Generar Recomendaciones","Gerar Relatório":"Generar Informe","Gerar energia eólica":"Generar energÃa eólica","Gerar faltantes":"Generar faltantes","Gerar nova versão":"Generar nueva ver
353sión","Gerar plano de desenvolvimento":"Generar plan de desarrollo","Gerar provas":"Generar pruebas","Gerar provas finais automaticamente":"Generar pruebas finales automáticamente","Gerar relatório":"Generar informe","Gerar sugestões":"Generar sugerencias","Geração de Issues":"Generación de Issues","Geração de planos de desenvolvimento com IA":"Generación de planes de desarrollo con IA","Geração de relatórios IA.":"Generación de informes IA.","Geração de relatórios personalizáveis com IA (templates: Completo, Executivo, Investidores)":"Generación de informes personalizables con IA (plantillas: Completo, Ejecutivo, Inversores)","Geração e exportação de relatórios DOCX/ABNT":"Generación y exportación de informes DOCX/ABNT","Geração e verificação pública de certificados":"Generación y verificación pública de certificados","Geração paralela das 3 subseções por pilar":"Generación paralela de las 3 subsecciones por pilar","Gerações Guardiãs":"Generaciones Guardianas","Gere códigos para convidar pessoas a ingressar na sua organização":"Genere códigos para invitar a personas a unirse a su organización","Gere relatórios completos dos diagnósticos para apresentações, tomada de decisão e prestação de contas.":"Genere informes completos de los diagnósticos para presentaciones, toma de decisiones y rendición de cuentas.","Gere relatórios personalizados dos diagnósticos com logo, cabeçalho, rodapé e cores customizáveis. Escolha visibilidade pessoal ou organizacional. Exportação em Word e PDF.":"Genere informes personalizados de los diagnósticos con logo, encabezado, pie de página y colores personalizables. Elija visibilidad personal u organizacional. Exportación en Word y PDF.","Gere seu código e link de convite únicos. Compartilhe com alunos para que eles se vinculem a você no cadastro. Com 5+ alunos ativos, sua mensalidade é isenta automaticamente!":"Genere su código y enlace de invitación únicos. Comparta con alumnos para que se vinculen a usted en el registro. Con 5+ alumnos activos, ¡su mensualidad es exenta automáticamente!","Gerenciamento de Feedback":"Gestión de Comentarios","Gerenciamento de Projeto":"Gestión de Proyecto","Gerenciamento de Projetos":"Gestión de Proyectos","Gerenciamento de Usuários":"Gestión de Usuarios","Gerenciamento de projetos":"Gestión de proyectos","Gerenciamento de questões para exames e quizzes":"Gestión de preguntas para exámenes y cuestionarios","Gerenciamento de treinamentos, vÃdeos e analytics":"Gestión de capacitaciones, videos y analÃtica","Gerenciar Acesso: {{v0}}":"Gestionar Acceso: {{v0}}","Gerenciar conta":"Administrar cuenta","Gerenciar marcas da organização":"Gestionar marcas de la organización","Gerenciar organizações":"Gestionar organizaciones","Gerenciar papéis":"Gestionar roles","Gerencie alunos, salas e conteúdo educacional":"Gestione alumnos, aulas y contenido educativo","Gerencie as organizações cadastradas no sistema":"Administre las organizaciones registradas en el sistema","Gerencie o banco de questões usado nos exames.":"Gestione el banco de preguntas utilizado en los exámenes.","Gerencie os destinos turÃsticos":"Gestiona los destinos turÃsticos","Gerencie os usuários vinculados à sua organização":"Administre los usuarios vinculados a su organización","Gerencie quem pode acessar: {{v0}}":"Gestiona quién puede acceder: {{v0}}","Gerencie salas, alunos, atividades e ganhe isenção trazendo 5+ alunos.":"Gestiona aulas, alumnos, actividades y obtén exención trayendo 5+ alumnos.","Gerencie todas as licenças de uso da plataforma: visualize trials, assinaturas ativas, cancele ou estenda acessos.":"Gestione todas las licencias de uso de la plataforma: visualice trials, suscripciones activas, cancele o extienda accesos.","Gerencie turmas, alunos e atividades":"Gestiona grupos, alumnos y actividades","Gerencie usuários, organizações, licenças e configurações":"Gestione usuarios, organizaciones, licencias y configuraciones","Gestor AnalÃtico":"Gestor AnalÃtico",Gestores:q5,"Gestores Públicos":"Gestores Públicos","Gestores municipais com pouco tempo ou destinos iniciando no SISTUR":"Gestores municipales con poco tiempo o destinos que inician en SISTUR",Gestão:"Gestión","Gestão EDU":"Gestión EDU","Gestão HÃdrica":"Gestión HÃdrica","Gestão Orçamentária para Turismo":"Gestión Presupuestaria para Turismo","Gestão de Conteúdo":"Gestión de Contenido","Gestão de Licenças":"Gestión de Licencias","Gestão de Projetos":"Gestión de Proyectos","Gestão de Provas":"Gestión de Exámenes","Gestão de ResÃduos":"Gestión de Residuos","Gestão de Salas":"Gestión de Aulas","Gestão de Usuários":"Gestión de Usuarios","Gestão de consórcios intermunicipais":"Gestión de consorcios intermunicipales","Gestão de cursos e c
353onteúdo":"Gestión de cursos y contenido","Gestão de destino":"Gestión de destino","Gestão de destinos turÃsticos":"Gestión de destinos turÃsticos","Gestão de feedback":"Gestión de feedback","Gestão de perfil e papéis (ADMIN/ANALYST/VIEWER/ESTUDANTE/PROFESSOR)":"Gestión de perfil y roles (ADMIN/ANALYST/VIEWER/ESTUDIANTE/PROFESOR)","Gestão de projetos do destino.":"Gestión de proyectos del destino.","Gestão de resÃduos":"Gestión de residuos","Gestão de turmas, anúncios, diário e leaderboard":"Gestión de grupos, anuncios, diario y leaderboard","Gestão de turmas, trilhas e acompanhamento de estudantes. Gratuito quando você tem 5 ou mais estudantes ativos que entraram pelo seu link de indicação.":"Gestión de clases, rutas y seguimiento de estudiantes. Gratuito cuando tienes 5 o más estudiantes activos que se unieron a través de tu enlace de invitación.","Gestão pública":"Gestión pública","Gestão pública (plano Territorial): contratação por contrato/empenho â":"Gestión pública (plan Territorial): contratación por contrato/compromiso de pago â","Gestão pública de destinos: diagnóstico territorial completo, projetos, relatórios e EDU.":"Gestión pública de destinos: diagnóstico territorial completo, proyectos, informes y EDU.","Gestão â depende de organização institucional, planejamento e governança.":"Gestión â depende de organización institucional, planificación y gobernanza.",Global:L5,"Global (toda organização)":"Global (toda la organización)","Global: PNT 2024-2027, legislação federal, diretrizes do Ministério do Turismo":"Global: PNT 2024-2027, legislación federal, directrices del Ministerio de Turismo","Globalização do Turismo: Megatendências do Setor e a Realidade Brasileira. São Paulo: Aleph, 2003.":"Globalización del Turismo: Megatendencias del Sector y la Realidad Brasileña. São Paulo: Aleph, 2003.","Glossário de Indicadores":"Glosario de Indicadores","Glossário de Indicadores SISTUR":"Glosario de Indicadores SISTUR","Google + OTAs + redes sociais":"Google + OTAs + redes sociales","Google 4.3 + TripAdvisor 4.5 + Booking 8.6 â média ~4.3":"Google 4.3 + TripAdvisor 4.5 + Booking 8.6 â media ~4.3","Google Business":"Google Business","Google Maps, TripAdvisor, Booking.com e mais":"Google Maps, TripAdvisor, Booking.com y más","Google Trends + buscas sazonais":"Google Trends + búsquedas estacionales","Google, TripAdvisor e Booking â alimenta reputação, satisfação e maturidade digital":"Google, TripAdvisor y Booking â alimenta reputación, satisfacción y madurez digital","Google: {{v0}} resultado(s)":"Google: {{v0}} resultado(s)",Governança:"Gobernanza","Governança Central":"Gobernanza Central","Governança Corporativa":"Gobernanza Corporativa","Governança Participativa":"Gobernanza Participativa","Governança TurÃstica":"Gobernanza TurÃstica","Governança TurÃstica Municipal":"Gobernanza TurÃstica Municipal","Governança Verde":"Gobernanza Verde","Governança central do sistema. Operações, serviços e coordenação entre os agentes do turismo.":"Gobernanza central del sistema. Operaciones, servicios y coordinación entre los agentes del turismo.","Governança colapsou!":"¡La gobernanza colapsó!","Governança do turismo: polÃticas públicas, qualificação e marketing":"Gobernanza del turismo: polÃticas públicas, cualificación y marketing","Governança e planejamento":"Gobernanza y planificación","Governança participativa é a democracia em ação.":"La gobernanza participativa es la democracia en acción.","Governança pública, planejamento, orçamento e capacidade de tomada de decisão":"Gobernanza pública, planificación, presupuesto y capacidad de toma de decisiones",Grande:U5,"Grande Barreira de Coral":"Gran Barrera de Coral","Grande show com fogos":"Gran show con fuegos artificiales",Gratuito:B5,"Gratuito quando você tem 5 ou mais estudantes ativos que entraram pelo seu link de indicação.":"Gratuito cuando tienes 5 o más estudiantes activos que ingresaron a través de tu enlace de invitación.","Gravação do relatório, validações e auditoria":"Grabación del informe, validaciones y auditorÃa","Green Key":"Green Key","Gráfico de progresso dos pilares por destino":"Gráfico de progreso de los pilares por destino",Gráficos:"Gráficos","Gráficos comparativos com rodadas anteriores.":"Gráficos comparativos con rondas anteriores.","Guardião da Natureza":"Guardián de la Naturaleza","Guardião do Território":"Guardián del Territorio","Guardião(ã)":"Guardián(a)","Guardiões da Serra":"Guardianes de la Sierra","Guará-vermelho":"Guará-rojo","Guia SISTUR EDU":"GuÃa SISTUR EDU","Guia completo de navegação e uso do sistema":"GuÃa completa de navegación y uso del sistema","Guia do SISTUR EDU":"GuÃa de SISTUR EDU","Guias cadastrados no CADASTUR":"GuÃas registrados en CADASTUR","Guias de Turismo":"GuÃas de Turismo","Guias e Agências registradas por municÃpio":"GuÃas y Agencias registradas por municipio","Guias e Manuais":"GuÃas y Manuales","Guias, Agências, Estabelecimentos":"GuÃas, Agencias, Establecimientos","Gás Carbônico":"Gas Carbónico","Gêmeo Digital â cenários de 1 a 5 anos":"Gemelo Digital â escenarios de 1 a 5 años","Gêmeo Digital:":"Gemelo Digital:",HIGH_IS_BETTER:F5,"HITS Mobile (API Key)":"HITS Mobile (API Key)","HTTPS / SSL":"HTTPS / SSL","Habilidades (objetivos de aprendizagem)":"Habilidades (objetivos de aprendizaje)","Habilite ou desabilite módulos do AnalÃtico individualmente por organização.":"Habilite o deshabilite módulos del AnalÃtico individualmente por organización.","Harmonia PossÃvel":"ArmonÃa Posible","Heading 1":"Encabezado 1","Heading 2":"Encabezado 2","Heading 3":"Encabezado 3","Heartbeats periódicos durante exames.":"Heartbeats periódicos durante exámenes.","Herói Ecológico":"Héroe Ecológico",Hidrelétrica:"Hidroeléctrica",Hidrogênio:"Hidrógeno","Hierarquia RA â OE â AO (Regra 1 e 4)":"JerarquÃa RA â OE â AO (Regla 1 y 4)","Hierarquia de prioridades: RA â OE â AO":"JerarquÃa de prioridades: RA â OE â AO",História:"Historia",Histórico:"Historial","Histórico (v{{v0}})":"Historial (v{{v0}})","Histórico Escolar":"Historial Académico","Histórico de I-RA, I-OE e I-AO ao longo das rodadas calculadas":"Historial de I-RA, I-OE e I-AO a lo largo de las rondas calculadas","Histórico de Provas":"Historial de Exámenes","Histórico de Reviews":"Historial de Reviews","Histórico de Sincronização":"Historial de Sincronización","Histórico de Versões":"Historial de Versiones","Histórico de XP":"Historial de XP","Histórico de alterações":"Historial de cambios","Histórico de certificados emitidos.":"Historial de certificados emitidos.","Histórico de ciclos diagnósticos":"Historial de ciclos diagnósticos","Histórico de diagnósticos sincronizados de sistemas externos":"Historial de diagnósticos sincronizados de sistemas externos","Histórico de eventos de integração":"Historial de eventos de integración","Histórico de importação removido.":"Historial de importación eliminado.","Histórico de reviews e benchmarking competitivo":"Historial de reseñas y benchmarking competitivo","Histórico unificado (cron + manual + admin).":"Historial unificado (cron + manual + admin).",Hoje:G5,"HomicÃdios, Furtos, Cobertura policial":"Homicidios, Hurtos, Cobertura policial",Hooks:V5,"Horas Estimadas":"Horas Estimadas","Horas de Treinamento":"Horas de Capacitación","Horas de capacitação por trabalhador do setor. Fonte: SISTUR EDU + RAIS. Periodicidade: anual.":"Horas de capacitación por trabajador del sector. Fuente: SISTUR EDU + RAIS. Periodicidad: anual.",Horizonte:$5,"Horizonte (anos)":"Horizonte (años)","Horizonte: {{v0}} ano(s)":"Horizonte: {{v0}} año(s)","Horta Orgânica":"Huerta Orgánica",Horário:"Horario","Hospedagem para visitantes":"Alojamiento para visitantes","Hospedagem para visitantes.":"Alojamiento para visitantes.",Hospitais:H5,"Hospitais salvam vidas todos os dias.":"Hospitales salvan vidas todos los dÃas.",Hostel:W5,Hotel:Q5,"Hotel com 18 de 20 itens conformes = 90%":"Hotel con 18 de 20 Ãtems conformes = 90%","Hotelaria e Hospital
353idade":"HotelerÃa y Hospitalidad","Hotéis atraem turistas e geram empregos.":"Hoteles atraen turistas y generan empleos.","Hotéis e infraestrutura":"Hoteles e infraestructura","Hotéis e paisagens":"Hoteles y paisajes","Hotéis e resorts. RevPAR, NPS, Ocupação, KPIs hoteleiros.":"Hoteles y resorts. RevPAR, NPS, Ocupación, KPIs hoteleros.","Hotéis, resorts e redes hoteleiras":"Hoteles, resorts y cadenas hoteleras","Houve progresso, mas há espaço para melhorar.":"Hubo progreso, pero hay margen para mejorar.","Hub de Jogos":"Hub de Juegos",Hélio:"Helio",HÃbrido:"HÃbrido","I-AO":"I-AO","I-AO - Ações Operacionais":"I-AO - Acciones Operativas","I-AO · Ações Operacionais":"I-AO · Acciones Operativas","I-OE":"I-OE","I-OE - Organização Estrutural":"I-OE - Organización Estructural","I-OE · Organização Estrutural":"I-OE · Organización Estructural","I-RA":"I-RA","I-RA - Relações Ambientais":"I-RA - Relaciones Ambientales","I-RA · Relações Ambientais":"I-RA · Relaciones Ambientales","IA citou:":"La IA citó:","IA para análise e sÃntese. Não prescreve cursos.":"IA para análisis y sÃntesis. No prescribe cursos.",IAO:K5,"IAO - Ações Operacionais":"IAO - Acciones Operativas",IBGE:Y5,"IBGE + ANAC + ANATEL + Mapa do Turismo":"IBGE + ANAC + ANATEL + Mapa del Turismo","IBGE / SIDRA":"IBGE / SIDRA","IBGE Agregados":"IBGE Agregados","IBGE Agregados: População, PIB per capita, Densidade e Ãrea territorial":"IBGE Agregados: Población, PIB per cápita, Densidad y Ãrea territorial","IBGE Cidades":"IBGE Cidades","IBGE Pesquisas":"IBGE Investigaciones","IBGE Pesquisas (CADASTUR)":"IBGE Pesquisas (CADASTUR)","IBGE SIDRA (Censo 2010)":"IBGE SIDRA (Censo 2010)","IBGE ou INEP. Percentual da população de 6-14 anos matriculada na escola.":"IBGE o INEP. Porcentaje de la población de 6-14 años matriculada en la escuela.","IBGE {{v0}}":"IBGE {{v0}}","IBGE â Demografia & Economia":"IBGE â DemografÃa & EconomÃa","IBGE â Instituto Brasileiro de Geografia e EstatÃstica":"IBGE â Instituto Brasileño de GeografÃa y EstadÃstica","IBGE, CADASTUR, STNâ¦":"IBGE, CADASTUR, STNâ¦","IBGE, Cadastur, Mapa do Turismo e DataSUS integrados":"IBGE, Cadastur, Mapa do Turismo y DataSUS integrados","IBGE.":"IBGE.","IBGE. API de Agregados e Pesquisas Municipais. servicodados.ibge.gov.br":"IBGE. API de Agregados y Estudios Municipales. servicodados.ibge.gov.br","IBGE: dados demográficos e econômicos":"IBGE: datos demográficos y económicos","ID da Entidade":"ID de la Entidad","ID da propriedade no PMS (opcional)":"ID de la propiedad en el PMS (opcional)","ID do Certificado:":"ID del Certificado:","ID do Log":"ID del Log","ID do usuário":"ID del usuario","IDEB = média entre IDEB anos iniciais e IDEB anos finais (INEP)":"IDEB = promedio entre IDEB años iniciales e IDEB años finales (INEP)","IDEB baixo â Requer articulação com Educação":"IDEB bajo â Requiere articulación con Educación","IDEB â Ãndice de Desenvolvimento da Educação Básica. DisponÃvel em: inep.gov.br (via IBGE Pesquisas)":"IDEB â Ãndice de Desarrollo de la Educación Básica. Disponible en: inep.gov.br (vÃa IBGE Pesquisas)","IDH, IDEB, Leitos, Cobertura saúde, Receita, Despesa turismo":"IDH, IDEB, Camas, Cobertura de salud, Ingresos, Gasto en turismo","IDH, IDEB, Salário médio, Gini":"IDH, IDEB, Salario promedio, Gini",IGMA:J5,"IGMA - Ãndice de Gestão Municipal":"IGMA - Ãndice de Gestión Municipal","IGMA Bloqueou Publicação":"IGMA Bloqueó Publicación","IIET = participação do setor turismo (alojamento, alimentação, transporte) sobre o PIB municipal":"IIET = participación del sector turismo (alojamiento, alimentación, transporte) sobre el PIB municipal",INEP:X5,"INEP / IDEB":"INEP / IDEB","INEP â Educação":"INEP â Educación","INEP â Instituto Nacional de Estudos e Pesquisas Educacionais":"INEP â Instituto Nacional de Estudios e Investigaciones Educativas","INEP.":"INEP.","INEP: educação (IDEB, matrÃculas)":"INEP: educación (IDEB, matrÃculas)","INMET + dados históricos":"INMET + datos históricos",INTERSECTORAL_DEPENDENCY:Z5,IOE:eH,"IOE - Org. Estrutural":"IOE - Org. Estructural","IPCR = (PIB per capita do municÃpio ÷ PIB per capita do Brasil) à 100":"IPCR = (PIB per cápita del municipio ÷ PIB per cápita de Brasil) à 100","IPTL = (visitantes totais ÷ população residente) â pressão turÃstica sobre o território":"IPTL = (visitantes totales ÷ población residente) â presión turÃstica sobre el territorio",IRA:aH,"IRA - Relações Ambientais":"IRA - Relaciones Ambientales","ISO 14001":"ISO 14001","ISO 9001":"ISO 9001","I_SEMT = média ponderada de IPCR (40%) + IIET (35%) + IPTL invert
353ido (25%)":"I_SEMT = promedio ponderado de IPCR (40%) + IIET (35%) + IPTL invertido (25%)","Idade, cobertura municipal e volume de cada fonte oficial integrada ao SISTUR.":"Antigüedad, cobertura municipal y volumen de cada fuente oficial integrada a SISTUR.","Identidade do empreendimento e da marca":"Identidad del establecimiento y de la marca","Identidade visÃvel:":"Identidad visible:","Identifica automaticamente os principais concorrentes no destino com nota, volume de reviews e link da fonte.":"Identifica automáticamente los principales competidores en el destino con puntuación, volumen de reviews y enlace de la fuente.","Identifica esta unidade dentro da marca (municÃpio:":"Identifica esta unidad dentro de la marca (municipio:","Identifica indicadores que dependem de múltiplos setores":"Identifica indicadores que dependen de múltiples sectores","Identifica indicadores que dependem de múltiplos setores (saúde, educação, saneamento).":"Identifica indicadores que dependen de múltiples sectores (salud, educación, saneamiento).","Identifica indicadores que dependem de múltiplos setores governamentais (saúde, educação, saneamento). Gera alertas de coordenação intersetorial.":"Identifica indicadores que dependen de múltiples sectores gubernamentales (salud, educación, saneamiento). Genera alertas de coordinación intersectorial.","Identificador do diagnóstico.":"Identificador del diagnóstico.","Identificador do projeto.":"Identificador del proyecto.","Identificador único e estável. Use snake_case com prefixo da categoria. Ex.: methodology.beni_3_pilares, anti_hallucination.no_rankings.":"Identificador único y estable. Use snake_case con prefijo de la categorÃa. Ej.: methodology.beni_3_pilares, anti_hallucination.no_rankings.","Identificação da UF":"Identificación de la UF","Identificação de pilares crÃticos":"Identificación de pilares crÃticos","Identifique espécies e conceitos da zona costeira":"Identifique especies y conceptos de la zona costera",Idioma:oH,Ignorado:iH,"Ignorar (não será considerado no cálculo)":"Ignorar (no se considerará en el cálculo)","Ignorar a pressão polÃtica e focar apenas na educação local":"Ignorar la presión polÃtica y enfocarse solo en la educación local","Ignorar e continuar trabalhando":"Ignorar y seguir trabajando","Ignorar e seguir normalmente":"Ignorar y seguir normalmente","Ignorar indicador (não será considerado no cálculo)":"Ignorar indicador (no se considerará en el cálculo)","Ignorar os avisos e focar em explorar a floresta por diversão":"Ignorar las advertencias y enfocarse en explorar el bosque por diversión","Ignorar para evitar conflito":"Ignorar para evitar conflicto",Igualar:tH,"Ilustração do modelo de negócio SISTUR: destinos públicos, empreendimentos e educação conectados":"Ilustración del modelo de negocio SISTUR: destinos públicos, establecimientos y educación conectados","Imagem deve ter no máximo 2MB":"La imagen debe tener un tamaño máximo de 2MB","Imagens ({{v0}}/{{v1}})":"Imágenes ({{v0}}/{{v1}})","Impacto agregado do portfólio":"Impacto agregado del portafolio","Impacto moderado no pilar":"Impacto moderado en el pilar","Impacto na Comunidade":"Impacto en la Comunidad","Impacto projetado nos pilares":"Impacto proyectado en los pilares","Implementar limite de visitantes e taxa de conservação":"Implementar lÃmite de visitantes y tasa de conservación","Implementar quintais produtivos com espécies nativas":"Implementar patios productivos con especies nativas","Implementar regulamentação séria de segurança":"Implementar reglamentación seria de seguridad","Implementar sistema de trilhas com limite de visitantes":"Implementar sistema de senderos con lÃmite de visitantes","Implementação das atividades planejadas":"Implementación de las actividades planificadas","Implementação em 1 dia":"Implementación en 1 dÃa",Importado:rH,"Importado em":"Importado el","Importando...":"Importando...","Importandoâ¦":"Importandoâ¦",Importar:sH,"Importar Alunos via CSV":"Importar Alumnos mediante CSV","Importar CSV":"Importar CSV","Importar VÃdeos do YouTube":"Importar Videos de YouTube","Importar dados adicionais via arquivo CSV":"Importar datos adicionales vÃa archivo CSV","Importar dados operacionais (PMS / CSV)":"Importar datos operativos (PMS / CSV)","Importar do Mapa do Turismo Brasileiro":"Importar del Mapa del Turismo Brasileño","Importar medições do Observatório por CSV":"Importar mediciones del Observatorio por CSV","Importar via CKAN":"Importar vÃa CKAN","Importar via Firecrawl":"Importar vÃa Firecrawl",Importação:"Importación","Importação concluÃda com erros: ":"Importación completada con errores: ","Importação concluÃda: ":"Importación completada: ","Importação de Conteúdo":"Importación de Contenido","Importe vÃdeos do YouTube automaticamente com classificação por pilar SISTUR":"Importa videos de YouTube automáticamente con clasificación por pilar SISTUR","Imports órfãos â não declarados em nenhum módulo ({{v0}})":"Importaciones huérfanas â no declaradas en ningún módulo ({{v0}})","Impostos sobre poluição":"Impuestos sobre contaminación",Imprimir:nH,"Imprimir / PDF":"Imprimir / PDF","Imprimir / Salvar PDF":"Imprimir / Guardar PDF","Imprimir Certificado":"Imprimir Certificado",Inadimplência:"Incumplimiento",Inativo:cH,"Inativo recente":"Inactivo reciente","Inclua o cabeçalho e ao menos uma linha de dados.":"Incluya el encabezado y al menos una fila de datos.",Inclusão:"Inclusión","Inclusão Comunitária":"Inclusión Comunitaria",Incorreta:dH,"Incêndio Florestal":"Incendio Forestal","Incêndio florestal!":"¡Incendio forestal!","Incêndios florestais":"Incendios forestales","Incêndios, construções e descaso destruÃram o que levou milhões de anos para se formar. Nascentes secaram, espécies desapareceram.":"Incendios, construcciones y negligencia destruyeron lo que tardó millones de años en formarse. Nacientes se secaron, especies desaparecieron.","Independem de plano â valem para todos.":"Son independientes del plan â válidos para todos.",Independente:lH,"Independente (1 unidade)":"Independiente (1 unidad)",Indeterminado:uH,Indicador:mH,'Indicador "OrÃ
353§amento de Turismo" crÃtico - curso de gestão orçamentária prescrito':'Indicador "Presupuesto de Turismo" crÃtico - curso de gestión presupuestaria prescrito','Indicador "Plano Municipal de Turismo" crÃtico - capacitação em elaboração de planos prescrita':'Indicador "Plan Municipal de Turismo" crÃtico - capacitación en elaboración de planes prescrita',"Indicador (opcional)":"Indicador (opcional)","Indicador + Pilar + Status + Interpretação â Curso":"Indicador + Pilar + Estado + Interpretación â Curso","Indicador com score":"Indicador con puntaje","Indicador da Mandala da Sustentabilidade no Turismo (Tasso, Silva & Nascimento, 2024) â extensão complementar ativada via opt-in no diagnóstico.":"Indicador de la Mandala de la Sostenibilidad en el Turismo (Tasso, Silva & Nascimento, 2024) â extensión complementaria activada vÃa opt-in en el diagnóstico.","Indicador da Mandala da Sustentabilidade no Turismo.":"Indicador de la Mandala de la Sostenibilidad en el Turismo.","Indicador não encontrado":"Indicador no encontrado","Indicador · {{v0}}":"Indicador · {{v0}}",Indicadores:pH,"Indicadores Derivados":"Indicadores Derivados","Indicadores Enterprise":"Indicadores Enterprise","Indicadores Pré-preenchidos":"Indicadores Pre-rellenados","Indicadores calculados ({{v0}})":"Indicadores calculados ({{v0}})","Indicadores classificados: CrÃtico/Atenção/Adequado":"Indicadores clasificados: CrÃtico/Atención/Adecuado","Indicadores com provenance 5/5 são preenchidos automaticamente via API oficial. Indicadores manuais devem ser preenchidos pela equipe técnica. O sistema aceita importação CSV em formato brasileiro (UTF-8 ou Latin-1, vÃrgula decimal).":"Indicadores con procedencia 5/5 se completan automáticamente vÃa API oficial. Los indicadores manuales deben ser completados por el equipo técnico. El sistema acepta importación CSV en formato brasileño (UTF-8 o Latin-1, coma decimal).","Indicadores core + crÃticos. Para cidades médias ou acompanhamento tático.":"Indicadores clave + crÃticos. Para ciudades medianas o seguimiento táctico.","Indicadores de Saúde â Leitos hospitalares, mortalidade infantil, mortalidade geral. DisponÃvel em: datasus.saude.gov.br (via IBGE Pesquisas)":"Indicadores de Salud â Camas hospitalarias, mortalidad infantil, mortalidad general. Disponible en: datasus.saude.gov.br (vÃa IBGE Investigaciones)","Indicadores de campo, secretarias municipais":"Indicadores de campo, secretarÃas municipales","Indicadores de coleta local: levantamento de campo, dados da Secretaria de Turismo, Prefeitura":"Indicadores de recolección local: levantamiento de campo, datos de la SecretarÃa de Turismo, AlcaldÃa","Indicadores de conformidade regulatória e segurança operacional.":"Indicadores de conformidad regulatoria y seguridad operacional.","Indicadores de eficiência operacional e qualidade dos serviços prestados.":"Indicadores de eficiencia operacional y calidad de los servicios prestados.","Indicadores de gestão de pessoas e desenvolvimento de equipe.":"Indicadores de gestión de personas y desarrollo de equipo.","Indicadores de saúde pública municipal":"Indicadores de salud pública municipal","Indicadores em Atenção ou CrÃtico":"Indicadores en Atención o CrÃtico","Indicadores essenciais para municÃpios menores ou análises rápidas. Ideal para primeira avaliação ou destinos com dados limitados.":"Indicadores esenciales para municipios pequeños o análisis rápidos. Ideal para primera evaluación o destinos con datos limitados.","Indicadores locais":"Indicadores locales","Indicadores manuais ({{v0}})":"Indicadores manuales ({{v0}})","Indicadores monitorados em {{v0}} projeto(s) com baseline registrado.":"Indicadores monitoreados en {{v0}} proyecto(s) con lÃnea de base registrada.","Indicadores neste nó":"Indicadores en este nodo","Indicadores oficiais do IGMA integrados ao SISTUR":"Indicadores oficiales del IGMA integrados a SISTUR","Indicadores opcionais":"Indicadores opcionales","Indicadores por Pilar e Tier":"Indicadores por Pilar y Nivel","Indicadores preenchidos":"Indicadores completados","Indicadores sem curso correspondente no catálogo":"Indicadores sin curso correspondiente en el catálogo","Indicadores sem fonte oficial disponÃvel serão direcionados para preenchimento manual.":"Los indicadores sin fuente oficial disponible serán dirigidos para su llenado manual.","Indicadores vinculados":"Indicadores vinculados","Indique seu nÃvel de experiência em turismo.":"Indique su nivel de experiencia en turismo.","Industrialização verde":"Industrialización verde","Indústria, Inovação e Infraestrutura":"Industria, Innovación e Infraestructura","Inexistência de ferramenta que aplique automaticamente teoria acadêmica validada":"Inexistencia de herramienta que aplique automáticamente teorÃa académica validada",Info:gH,Informado:hH,"Informação falsa ou enganosa":"Información falsa o engañosa","Informação para todos":"Información para todos","Informação para todos.":"Información para todos.",Informações:"Información","Informações adicionais sobre o empreendimento...":"Información adicional sobre el establecimiento...","Informações completas do registro de auditoria":"Información completa del registro de auditorÃa","Informações da sua conta no SISTUR":"Información de tu cuenta en SISTUR","Informações pessoais (RG, cartões)":"Información personal (DNI, tarjetas)","Informe de 1 a 5 e-mails":"Introduzca de 1 a 5 correos electrónicos","Informe nome do empreendimento e CNPJ. O sistema valida na Receita e localiza o endereço automaticamente.":"Introduzca el nombre del establecimiento y el CNPJ. El sistema valida en la Receita y localiza la dirección automáticamente.","Informe o destino.":"Introduzca el destino.","Informe o motivo da denúncia. Nossa equipe irá analisar e tomar as medidas necessárias.":"Indica el motivo de la denuncia. Nuestro equipo analizará el caso y tomará las medidas necesarias.","Informe o motivo da revogação":"Indica el motivo de la revocación","Informe o motivo. Esta ação é registrada e o certificado fica inválido publicamente.":"Indica el motivo. Esta acción queda registrada y el certificado se invalida públicamente.","Informe o nome":"Introduzca el nombre","Informe o nome da sua organização ou crie uma nova.":"Informe el nombre de su organización o cree una nueva.","Informe o nome do empreendimento no bloco Reviews":"Informe el nombre del emprendimiento en el bloque Reseñas","Informe o nome do empreendimento no bloco Reviews para buscar o CNPJ.":"Introduzca el nombre del establecimiento en el bloque Reviews para buscar el CNPJ.","Informe o nome do empreendimento no campo abaixo antes de rodar as buscas.":"Introduzca el nombre del establecimiento en el campo de abajo antes de ejecutar las búsquedas.","Informe o nome do estabelecimento e a localização":"Introduzca el nombre del establecimiento y la ubicación","Informe o nome do estabelecimento e a localização antes de buscar.":"Introduzca el nombre del establecimiento y la ubicación antes de buscar.","Informe o nome do estabelecimento e a localização.":"Introduzca el nombre del establecimiento y la ubicación.","Informe o nome do estabelecimento.":"Introduzca el nombre del establecimiento.","Informe o nome do projeto":"Ingrese el nombre del proyecto","Informe o tÃtulo do diagnóstico":"Introduzca el tÃtulo del diagnóstico","Informe o tópico desejado":"Introduzca el tema deseado","Informe seu nome completo":"Informe su nombre completo","Informe sua disponibilidade semanal de horas para estudo.":"Informe su disponibilidad semanal de horas para estudio.","Informe um CNPJ válido (14 dÃgitos).":"Introduzca un CNPJ válido (14 dÃgitos).","Informe um código":"Ingrese un código","Informe um e-mail válido":"Informe un correo electrónico válido","Infra. de Saúde do Entorno":"Infra. de Salud del Entorno",Infraestrutura:fH,"Infraestrutura de Saúde do Entorno":"Infraestructura de Salud del Entorno","Infraestrutura de apoio ao turismo. Depende da estabilidade ambiental para expansão sustentável.":"Infraestructura de apoyo al turismo. Depende de la estabilidad ambiental para una expansión sostenible.","Infraestrutura de saúde analisada":"Infraestructura de salud analizada","Infraestrutura turÃstica, serviços, mercado, produtos e entrega ao visitante":"Infraestructura turÃstica, servicios, mercado, productos y entrega al visitante","Infraestrutura turÃstica: hotéis, transporte, sinalização e equipamentos":"Infraestructura turÃstica: hoteles, transporte, señalización y equipamiento","Ingestão IBGE, Mapa do Turismo, CADASTUR e outros":"Ingesta IBGE, Mapa del Turismo, CADASTUR y otros","Ingestão via APIs (IBGE, CADASTUR, Mapa do Turismo) + dados manuais":"Ingesta vÃa APIs (IBGE, CADASTUR, Mapa del Turismo) + datos manuales","Iniciando preenchimento automático...":"Iniciando auto-relleno...",Iniciante:vH,"Iniciar Exame":"Iniciar Examen","Iniciar Importação":"Iniciar Importación","Iniciar Novo Diagnóstico":"Iniciar Nuevo Diagnóstico","Iniciar conversa":"Iniciar conversación","Iniciar nova rodada":"Iniciar nueva ronda","Iniciar replantio emergencial e criar brigada para o futuro":"Iniciar reforestación de emergencia y crear brigada para el futuro","Iniciar trilha":"Iniciar ruta de aprendizaje","Iniciar um replantio emergencial na área devastada":"Iniciar una reforestación de emergencia en el área devastada","Iniciativas de Sustentabilidade":"Iniciativas de Sostenibilidad",Iniciação:"Iniciación","Innovation & Planning":"Innovación & Planificación","Inovação Oceânica":"Innovación Oceánica","Inovação TurÃstica":"Innovación TurÃstica","Inovação local replicada em outras comunidades costeiras!":"¡Innovación local replicada en otras comunidades costeras!","Inserir exemplo":"Insertar ejemplo","Inserir o código":"Insertar el código","Inserir o código vincula você automaticamente ao professor.":"Insertar el código lo vincula automáticamente al profesor.","Inseto polinizador e bioindicador de saúde ambiental":"Insecto polinizador y bioindicador de salud ambiental",Instagram:bH,"Instagram + Facebook + TikTok":"Instagram + Facebook + TikTok","Instagram, Facebook, TikTok, YouTube e LinkedIn: perfis ativos e base estimada de seguidores":"Instagram, Facebook, TikTok, YouTube y LinkedIn: perfiles activos y base estimada de seguidores","Instalar sistema de monitoramento e patrulha noturna":"Instalar sistema de monitoreo y patrulla nocturna",Instrutor:AH,"Instruções do Exame":"Instrucciones del Examen","Instruções para o Beni neste projeto (opcional). Ex.: foco no destino Barretos.":"Instrucciones para Beni en este proyecto (opcional). Ej.: enfoque en el destino Barretos.","Insumos necessários:":"Insumos necesarios:","Insumos:":"Insumos:",Integrada:yH,Integral:SH,"Integral ({{v0}})":"Integral ({{v0}})","Integral â 96 indicadores, 1â2 semanas. Recomendado para certificações e planos diretores.":"Integral â 96 indicadores, 1â2 semanas. Recomendado para certificaciones y planes maestros.",Integração:"Integración","Integração IA (MCP)":"Integración IA (MCP)","Integração com 5+ APIs oficiais para pré-preenchimento de dados":"Integración con 5+ APIs oficiales para precarga de datos","Integração com Google Business Reviews via Edge Function":"Integración con Google Business Reviews vÃa Edge Function","Integração com Sistemas Externos":"Integración con Sistemas Externos","Integração com outros sistemas":"Integración con otros sistemas","Integração opcional. Conecte apenas se você possui credenciais ativas no seu PMS â todos os adaptadores estão prontos.":"Integración opcional. Conéctese solo si tiene credenciales activas en su PMS â todos los adaptadores están listos.","Integridade de Dados":"Integridad de Datos",Inteligentes:EH,Inteligência:"Inteligencia","Inteligência SISTUR":"Inteligencia SISTUR","Inteligência TurÃstica":"Inteligencia TurÃstica","Inteligência ancorada nos microdados do seu território":"Inteligencia basada en los microdatos de tu territorio","Inteligência de Receita e Cenários":"Inteligencia de Ingresos y Escenarios","Intensificar a produção para maximizar o lucro":"Intensificar la producción para maximizar el lucro","Interagir com posts":"Interactuar con publicaciones","Interaja com outros profissionais do turismo":"Interactúe con otros profesionales del turismo",Interativo:CH,"Interações registradas":"Interacciones registradas","Interdependência Setorial":"Interdependencia Sectorial","Interessados capturados na página pública de preços (/planos).":"Interesados capturados en la página pública de precios (/planes).",Interesses:TH,"Interface e experiência de usuário: design system, fluxos de navegação":"Interfaz y experiencia de usuario: design system, flujos de navegación",Intermediário:"Intermedio",Internacional:PH,Interpretação:"Interpretación","Interpretação padrão:":"Interpretación predeterminada:","Interpretação territorial atribuÃda":"Interpretación territorial asignada","Interpretação territorial compatÃvel (Estrutural, Gestão ou Entrega).":"Interpretación territorial compatible (Estructural, Gestión o Entrega).","Interpretação territorial:":"Interpretación territorial:","Intervenção imediata. Pode acionar bloqueios IGMA.":"Intervención inmediata. Puede activar bloqueos IGMA.",Introdutório:"Introductorio","Introduzir fogões solares e biogás como alternativa":"Introducir cocinas solares y biogás como alternativa","Inventário TurÃstico":"Inventario TurÃstico","Investigar a origem do esgoto ilegal":"Investigar el origen del vertido ilegal","Investigar sozinho as atividades ilegais":"Investigar solo las actividades ilegales","Investimento de 1-2 semanas":"Inversión de 1-2 semanas","Investimento em saneamento":"Inversión en saneamiento",InÃcio:"Inicio","InÃcio de prova":"Inicio de prueba","InÃcio do perÃodo":"Inicio del perÃodo","InÃcio:":"Inicio:","Ir ao Catálogo EDU":"Ir al Catálogo EDU","Ir ao catálogo":"Ir al catálogo","Ir direto para Preenchimento":"Ir directamente al Formulario","Ir para":"Ir a","Ir para Cálculo do Diagnóstico":"Ir a Cálculo del Diagnóstico","Ir para Projetos":"Ir a Proyectos","Ir para o inÃcio":"Ir al inicio","Ir para {{v0}}":"Ir a {{v0}}","Irrigação excessiva":"Riego excesivo",'Isso irá mudar o status do diagnóstico para "Rascunho" e você poderá editar os dados dos indicadores. Após as alterações, será necessário recalcular os Ãndices.':'Esto cambiará el estado del diagnóstico a "Borrador" y podrá editar los datos de los indicadores. Después de los cambios, será necesario recalcular los Ãndices.',"Isso pode levar até alguns minutos.":"Esto puede tardar hasta unos minutos.","Isso pode ocorrer se não houver mapeamentos configurados ou se todos os indicadores estão adequados.":"Esto puede ocurrir si no hay mapeos configurados o si todos los indicadores están adecuados.","Isso pode ocorrer se os mapeamentos indicadorâcurso ainda não foram importados.":"Esto puede ocurrir si las asignaciones indicadorâcurso aún no han sido importadas.","Issue / Ocorrência":"Issue / Incidencia","Issues são identificadas automaticamente (indicadores abaixo do limiar).":"Las issues se identifican automáticamente (indicadores por debajo del umbral).","Item ({{v0}} disponÃveis)":"ArtÃculo ({{v0}} disponibles)","Itens aguardando priorização":"Elementos pendientes de priorización","Itens da trilha ({{v0}}/{{v1}})":"Elementos del sendero ({{v0}}/{{v1}})","Itens em validação/teste":"Elementos en validación/prueba","Itens finalizados":"Elementos finalizados","Itens sendo desenvolvidos":"Elementos en desarrollo",JSON:"JSON","JSON (backup completo)":"JSON (copia de seguridad completa)","Jacaré-do-papo-amarelo":"Caimán de hocico ancho",Jan:RH,"Janela do projeto:":"Ventana del proyecto:","Jardim Botânico":"JardÃn Botánico","Jardins botânicos preservam espécies raras de plantas.":"Los jardines botánicos preservan especies raras de plantas.","Jardins do Mar":"Jardines del Mar","Jardins flutuantes filtram a água e encantam visitantes.":"Los jardines flotantes filtran el agua y encantan a los visitantes.","Job ID":"Job ID","Jogadas:":"Jugadas:",Jogar:xH,"Jogo Encerrado!":"¡Jue
353go Terminado!","Jogo da Memória Ecológico!":"¡Juego de Memoria Ecológico!","Jogo da Memória: Teste seus conhecimentos sobre indicadores.":"Juego de Memoria: Pon a prueba tus conocimientos sobre indicadores.","Jogo da Memória: pares de conceitos turÃsticos gerados dinamicamente":"Juego de Memoria: pares de conceptos turÃsticos generados dinámicamente","Jogo da memória ambiental! Associe imagens a descrições sobre fauna, flora e sustentabilidade dos biomas brasileiros.":"¡Juego de memoria ambiental! Asocia imágenes con descripciones sobre fauna, flora y sostenibilidad de los biomas brasileños.","Jogo da memória educativo":"Juego de memoria educativo","Jogo de cartas estratégico com mecânicas de ameaças":"Juego de cartas estratégico con mecánicas de amenazas","Jogo de cartas estratégico onde você defende seu destino turÃstico construindo, gerenciando recursos e enfrentando ameaças.":"Juego de cartas estratégico en el que defiendes tu destino turÃstico construyendo, gestionando recursos y enfrentando amenazas.","Jogo narrativo de role-playing":"Juego narrativo de rol","Jogo salvo! ð¾":"¡Juego guardado! ð¾","Jogos Educacionais":"Juegos Educativos","Jogos educacionais: mecânicas, conteúdo e persistência":"Juegos educativos: mecánicas, contenido y persistencia","Jogos: Jogue todos os 4 jogos educacionais.":"Juegos: Juega los 4 juegos educativos.","Jogue cartas de {{v0}} aqui":"Tira cartas de {{v0}} aquÃ","Jornada de acesso (fluxo)":"Jornada de acceso (flujo)",Jul:wH,Jun:IH,"Justificativa da decisão...":"Justificación de la decisión...","Justificativa explÃcita para cada prescrição":"Justificación explÃcita para cada prescripción","Justificativa para ajustes manuais":"Justificación para ajustes manuales","Justiça na Floresta":"Justicia en el Bosque","Justiça no Cerrado":"Justicia en el Cerrado","Já existe":"Ya existe","Já existe uma marca com esse nome nesta organização.":"Ya existe una marca con este nombre en esta organización.","Já tenho uma conta":"Ya tengo una cuenta","KPIs de Projetos":"KPIs de Proyectos","KPIs financeiros essenciais para gestão de receita e rentabilidade hoteleira.":"KPIs financieros esenciales para la gestión de ingresos y rentabilidad hotelera.","KPIs: RevPAR, NPS, Ocupação, GOP Margin":"KPIs: RevPAR, NPS, Ocupación, GOP Margin",Kanban:DH,"Kanban, fases, milestones, orçamento, governança":"Kanban, fases, hitos, presupuesto, gobernanza","Knowledge base para consultas e referências":"Base de conocimientos para consultas y referencias","L/hóspede/d":"L/huésped/dÃa","LANGUAGE plpgsql SECURITY DEFINER AS $$":"LANGUAGE plpgsql SECURITY DEFINER AS $$","LANGUAGE sql STABLE SECURITY DEFINER AS $$":"LANGUAGE sql STABLE SECURITY DEFINER AS $$",LEED:OH,LTV:MH,"LTV / CAC":"LTV / CAC","LTV = gasto por estadia à estadias por ano à anos de relacionamento à margem. O custo de aquisição sugerido vem da comissão média dos canais.":"LTV = gasto por estadÃa à estadÃas por año à años de relación à margen. El costo de adquisición sugerido proviene de la comisión promedio de los canales.","LTV do hóspede":"LTV del huésped","LTV do hóspede:":"LTV del huésped:","Lagarto de Altitude":"Lagarto de Altitud",Lançamento:"Lanzamiento",'Lançar campanha "Praia Sem Plástico" e banir descartáveis':'Lanzar campaña "Playa Sin Plástico" y prohibir descartables',"Latitude (opcional)":"Latitud (opcional)","Latitude inválida":"Latitud inválida","Latência Média":"Latencia Media","Latência de Consultas":"Latencia de Consultas","Latência elevada â considere otimizar queries":"Latencia elevada â considere optimizar consultas","Laudo de Acessibilidade (NBR 9050)":"Dictamen de Accesibilidad (NBR 9050)",Lazer:NH,Leads:zH,"Leads comerciais":"Leads comerciales","Legenda:":"Leyenda:",Legislação:"Legislación","Lei 9.609/1998 â Proteção da Propriedade Intelectual de Programa de Computador.":"Ley 9.609/1998 â Protección de la Propiedad Intelectual de Programas de Computadora.","Leia as instruções antes de começar":"Lee las instrucciones antes de comenzar","Leia atentamente os termos de uso e polÃtica de privacidade.":"Lea atentamente los términos de uso y la polÃtica de privacidad.","Leia cada capÃtulo com atenção, pense nas consequências e escolha com sabedoria. O futuro do bioma está nas suas mãos!":"Lee cada capÃtulo con atención, piensa en las consecuencias y elige con sabidurÃa. ¡El futuro del bioma está en tus manos!","Leis protegem o que é de todos.":"Las leyes protegen lo que es de todos.","Leitos / 1k hab":"Camas / 1k hab","Leitos formais (CADASTUR) por 1.000 habitantes":"Camas formales (CADASTUR) por 1.000 habitantes","Leitos por hab. = (leitos de hospedagem CADASTUR ÷ população) à 1000":"Camas por hab. = (camas de alojamiento CADASTUR ÷ población) à 1000","Leitos totais":"Camas totales","Leitos, Transporte, Sinalização":"Camas, Transporte, Señalización",Leitura:jH,"Lembrete anual: o MTur publica novas médias de gasto e permanência todo ano.":"Recordatorio anual: el MTur publica nuevas medias de gasto y estancia cada año.","Levante festas, tradições, artesanato, gastronomia tÃpica e expressões culturais ativas no municÃpio junto à Secretaria de Cultura.":"Investigue fiestas, tradiciones, artesanÃa, gastronomÃa tÃpica y expresiones culturales activas en el municipio junto a la SecretarÃa de Cultura.","Levante o calendário de eventos turÃsticos junto à Secretaria de Turismo ou C
353onvention Bureau. Conte apenas eventos com impacto turÃstico.":"Recopile el calendario de eventos turÃsticos junto a la SecretarÃa de Turismo o Convention Bureau. Cuente solo eventos con impacto turÃstico.","Li e concordo com os":"He leÃdo y acepto los","Libera todas as ações":"Libera todas las acciones","Libera um recurso especÃfico para a organização, independente do plano.":"Libera un recurso especÃfico para la organización, independientemente del plan.","Liberada em":"Disponible el",Liberar:kH,"Liberar acesso ilimitado":"Liberar acceso ilimitado","Liberar para todos os usuários autenticados":"Liberar para todos los usuarios autenticados","Liberações ilimitadas":"Liberaciones ilimitadas","Libere acesso para todos os membros de organizações especÃficas":"Libere acceso para todos los miembros de organizaciones especÃficas","Libere acesso para usuários especÃficos":"Libere acceso para usuarios especÃficos","LicenseContext verifica plano em cada rota":"LicenseContext verifica plan en cada ruta","Licença Ambiental (quando aplicável)":"Licencia Ambiental (cuando aplique)","Licenças organizacionais são vinculadas à organização contratante e podem ser redistribuÃdas entre membros conforme os limites de cota estabelecidos.":"Las licencias organizacionales están vinculadas a la organización contratante y pueden ser redistribuidas entre miembros según los lÃmites de cuota establecidos.",Liderança:"Liderazgo","Liderar projeto de proteção permanente das nascentes":"Liderar proyecto de protección permanente de los manantiales","Liderar um grande projeto de reflorestamento com espécies nativas":"Liderar un gran proyecto de reforestación con especies nativas","Limiares de Status (Não Negociáveis)":"Umbrales de Estado (No Negociables)","Limitação Estrutural do Território":"Limitación Estructural del Territorio",Limitações:"Limitaciones","Limitações ambientais bloqueiam expansão estrutural":"Limitaciones ambientales bloquean la expansión estructural","Limitações ambientais bloqueiam expansão estrutural. Se RA está crÃtico, EDU_OE e Marketing são bloqueados.":"Las limitaciones ambientales bloquean la expansión estructural. Si RA está crÃtico, EDU_OE y Marketing son bloqueados.","Limite de tempo (minutos)":"LÃmite de tiempo (minutos)","Limite de vÃdeos":"LÃmite de videos","Limites:":"LÃmites:",Limpar:_H,"Limpar filtro":"Limpiar filtro","Limpar filtros":"Limpiar filtros","Limpar seleção":"Limpiar selección","Limpeza de Praia":"Limpieza de Playa","Linha de orçamento salva":"LÃnea de presupuesto guardada","Linha do tempo":"LÃnea de tiempo",Linhagem:qH,"Linhagem dos Dados (Data Lineage)":"Linaje de los Datos (Data Lineage)","Linhas de Orçamento":"LÃneas de Presupuesto","Linhas no catálogo":"LÃneas en el catálogo","Linhas válidas":"LÃneas válidas",Link:LH,"Link (opcional)":"Enlace (opcional)","Link ativo":"Enlace activo","Link copiado":"Enlace copiado","Link copiado!":"¡Enlace copiado!","Link de convite copiado!":"¡Enlace de invitación copiado!","Link de verificação copiado!":"¡Enlace de verificación copiado!","Link somente leitura":"Enlace de solo lectura",Lista:UH,"Lista as capacitações e cursos do catálogo educacional disponÃveis ao usuário.":"Lista las capacitaciones y cursos del catálogo educativo disponibles para el usuario.","Lista as tarefas de um projeto, com responsável, prazo e status.":"Lista las tareas de un proyecto, con responsable, plazo y estado.","Lista com razão especÃfica + relevância score":"Lista con razón especÃfica + puntuación de relevancia","Lista de alunos com status individual.":"Lista de alumnos con estado individual.","Lista de issues e prescrições do motor IGMA.":"Lista de issues y prescripciones del motor IGMA.","Lista de problemas crÃticos":"Lista de problemas crÃticos","Lista de projetos atrasados com dias de atraso.":"Lista de proyectos atrasados con dÃas de retraso.","Lista de projetos com tarefas vencidas":"Lista de proyectos con tareas vencidas","Lista de todos os cursos cursados, com nota, carga horária e certificados":"Lista de todos los cursos realizados, con calificación, carga horaria y certificados","Lista os destinos turÃsticos acessÃveis ao usuário autenticado.":"Lista los destinos turÃsticos accesibles al usuario autenticado.","Lista os diagnósticos (rodadas de avaliação) acessÃveis ao usuário, com nota e classificação final.":"Lista los diagnósticos (rondas de evaluación) accesibles al usuario, con calificación y clasificación final.","Lista os projetos de intervenção acessÃveis ao usuário autenticado.":"Lista los proyectos de intervención accesibles al usuario autenticado.","Lista priorizada de funcionalidades":"Lista priorizada de funcionalidades","Listar capacitações":"Listar capacitaciones","Listar destinos":"Listar destinos","Listar diagnósticos":"Listar diagnósticos","Listar projetos":"Listar proyectos","Listar tarefas":"Listar tareas","Listar tarefas do projeto":"Listar tareas del proyecto","Liste os de
353stinos que eu tenho acesso no SISTUR.":"Liste los destinos a los que tengo acceso en SISTUR.","Liste os projetos em andamento e as tarefas atrasadas de cada um.":"Liste los proyectos en curso y las tareas atrasadas de cada uno.","Liste todas as regulamentações aplicáveis (Vigilância Sanitária, ABNT NBR 15401, Corpo de Bombeiros, Acessibilidade, LGPD) e calcule: (itens conformes ÷ total de itens) à 100.":"Liste todas las regulaciones aplicables (Vigilancia Sanitaria, ABNT NBR 15401, Cuerpo de Bomberos, Accesibilidad, LGPD) y calcule: (Ãtems conformes ÷ total de Ãtems) à 100.","Litoral com praias e mar":"Litoral con playas y mar",Live:BH,Lives:FH,"Lives Prescritas":"Transmisiones en Vivo Prescritas","Lives, prazos e exames dos próximos 90 dias":"Transmisiones en vivo, fechas lÃmite y exámenes de los próximos 90 dÃas","Lixo Tóxico":"Basura Tóxica","Lixo eletrônico contém metais pesados tóxicos e exige descarte especial.":"La basura electrónica contiene metales pesados tóxicos y requiere un desecho especial.","Lixo se acumula na cidade.":"La basura se acumula en la ciudad.","Lições do Sertão":"Lecciones del Sertão","Lobo-guará":"Aguará guazú",Local:GH,Localização:"Ubicación",Log:VH,"Log de Eventos":"Registro de Eventos","Log de Interações (":"Registro de Interacciones (","Log de auditoria de operações crÃticas":"Registro de auditorÃa de operaciones crÃticas","Login de Usuário":"Login de Usuario","Login realizado com sucesso!":"¡Inicio de sesión exitoso!",Logo:$H,"Logo da Organização":"Logotipo de la Organización","Logo da organização":"Logotipo de la organización",Logs:HH,"Logs de Auditoria":"Registros de AuditorÃa","Logs de auditoria":"Registros de auditorÃa","Logs de auditoria e monitoramento":"Registros de auditorÃa y monitoreo","Logs do Gerador":"Registros del Generador","Logs do Gerador de Relatórios":"Registros del Generador de Informes",Longe:WH,"Longitude (opcional)":"Longitud (opcional)","Longitude inválida":"Longitud inválida","Lua de Mel":"Luna de Miel","Lucro e Lixo":"Ganancia y Basura","Lucro operacional bruto ÷ quartos disponÃveis no perÃodo. Consulte a DRE (Demonstração do Resultado do ExercÃcio).":"Ganancia operativa bruta ÷ habitaciones disponibles en el perÃodo. Consulte el E.R. (Estado de Resultados).","Lugar de encontro":"Lugar de encuentro","LÃder Organizado":"LÃder Organizado","LÃder Sábio":"LÃder Sabio",LÃquen:"Liquen","LÃquen Ancestral":"Liquen Ancestral","LÃquen centenário bioindicador":"Liquen centenario bioindicador",MAJOR:QH,"MAPA DO TURISMO":"MAPA DEL TURISMO",MARKETING:KH,MARKETING_BLOCKED:YH,MINOR:JH,MIN_MAX:XH,"MIN_MAX (Linear)":"MIN_MAX (Lineal)",MST:ZH,"Madeireiros avançam.":"Madereros avanzan.",Mai:e3,"Maior canÃdeo da América do Sul, sÃmbolo do Cerrado":"Mayor cánido de Sudamérica, sÃmbolo del Cerrado","Maior felino das Américas, topo da cadeia alimentar":"Mayor felino de las Américas, cima de la cadena alimentaria","Maior é Melhor":"Mayor es Mejor","Mais ações do post":"Más acciones de la publicación","Mais carros vieram preencher...":"Más coches vinieron a llenar...","Mais conectividade":"Más conectividad","Mais de 3 anos de experiência":"Más de 3 años de experiencia","Mais dinheiro, mas os recifes sofrem com o excesso de visitantes.":"Más dinero, pero los arrecifes sufren el exceso de visitantes.","Mais hotéis, mais poluição â Alerta":"Más hoteles, más contaminación â Alerta","Mais novo Gemini â rápido":"Más nuevo Gemini â rápido","Mais rápido, mas polui mais...":"Más rápido, pero contamina más...","Mais um negócio que gera lixo. Os pescadores te olham com desprezo.":"Un negocio más que genera basura. Los pescadores te miran con desprecio.","MamÃfero marinho migratório que se reproduz na costa brasileira":"MamÃfero marino migratorio que se reproduce en la costa brasileña","Mancha de Ãleo":"Mancha de Petróleo",Mandala:a3,"Mandala da Sustentabilidade no Turismo (MST)":"Mandala de la Sostenibilidad en el Turismo (MST)","Mandala da Sustentabilidade no Turismo ativada â diagnóstico inclui 9 indicadores complementares (Tasso, Silva & Nascimento, 2024) cobrindo acessibilidade, conectividade 5G/Wi-Fi (Anatel), comparecimento eleitoral (TSE), qualificação PNQT (CADASTUR), TBC e mais.":"Mandala de la Sostenibilidad en el Turismo activada â el diagnóstico incluye 9 indicadores complementarios (Tasso, Silva & Nascimento, 2024) cubriendo accesibilidad, conectividad 5G/Wi-Fi (Anatel), participación electoral (TSE), calificación PNQT (CADASTUR), TBC y más.","Mandala do Destino":"Mandala del Destino","Manguezais armazenam até 10x mais carbono que florestas":"Manglares almacenan hasta 10 veces más carbono que los bosques","Manguezais protegem a costa contra tsunamis e erosão":"Manglares protegen la costa contra tsunamis y erosión","Manguezais são berçários da vida marinha.":"Los manglares son viveros de vida marina.","Manguezais são berçários naturais para peixes e crustáceos.":"Los manglares son viveros naturales para peces y crustáceos.","Manguezais são locais de reprodução de 80% dos peixes":"Los manglares son lugares de reproducción del 80% de los peces","Mantenha as barras equilibradas para um final feliz!":"¡Mantén las barras equilibradas para un final feliz!","Manter apenas a área atual":"Mantener solo el área actual","Manter equilÃbrio acima de 70%":"Mantener equilibrio por encima del 70%","Manter o meu":"Mantener el mÃo","Mantém c
353omparabilidade":"Mantiene comparabilidad","Mantém o equilÃbrio perfeito":"Mantiene el equilibrio perfecto",Manuais:o3,Manual:i3,"Manual (Média)":"Manual (Promedio)","Manual (equipe local)":"Manual (equipo local)","Manual ({{v0}})":"Manual ({{v0}})","Manual / promocional":"Manual / promocional","Manual de Diagnósticos":"Manual de Diagnósticos","Manual de Diagnósticos Territoriais":"Manual de Diagnósticos Territoriales","Manual do Usuário SISTUR":"Manual del Usuario SISTUR","Manual:":"Manual:","Manutenção Preventiva":"Mantenimiento Preventivo","Manutenção é essencial.":"El mantenimiento es esencial.","Manutenção. Revisão em 18 meses.":"Mantenimiento. Revisión en 18 meses.","Mapa MTur":"Mapa MTur","Mapa Turismo":"Mapa Turismo","Mapa de calor da oferta":"Mapa de calor de la oferta","Mapa do Turismo":"Mapa del Turismo","Mapa do Turismo (MTur)":"Mapa del Turismo (MTur)","Mapa do Turismo Brasileiro":"Mapa del Turismo Brasileño","Mapa do Turismo Brasileiro (MTur)":"Mapa del Turismo Brasileño (MTur)","Mapa do Turismo Brasileiro (mapa.turismo.gov.br): Região turÃstica, categoria (A-E), empregos, estabelecimentos, visitantes nacionais e internacionais, arrecadação e conselho municipal de turismo":"Mapa del Turismo Brasileño (mapa.turismo.gov.br): Región turÃstica, categorÃa (A-E), empleos, establecimientos, visitantes nacionales e internacionales, recaudación y consejo municipal de turismo","Mapa do Turismo Brasileiro â API REST de Regionalização. DisponÃvel em: mapa.turismo.gov.br":"Mapa del Turismo Brasileño â API REST de Regionalización. Disponible en: mapa.turismo.gov.br","Mapa do Turismo Brasileiro â mapa.turismo.gov.br":"Mapa del Turismo Brasileño â mapa.turismo.gov.br","Mapas e diagramas":"Mapas y diagramas","Mapas e gráficos":"Mapas y gráficos","Mapas/gráficos de turismo":"Mapas/gráficos de turismo","Mapeamento detalhado de gargalos":"Mapeo detallado de cuellos de botella","Mapear as áreas de nascentes ameaçadas":"Mapear las áreas de nacimientos amenazados",Mar:t3,"Mar de Soja":"Mar de Soja",Marca:r3,"Marca (Final)":"Marca (Final)","Marca / Rede de Hotéis":"Marca / Cadena de Hoteles","Marca de chuva no solo":"Marca de lluvia en el suelo","Marca do Sertão":"Marca del Sertão","Marca:":"Marca:","Marcado como não aplicável pelo usuário":"Marcado como no aplicable por el usuario","Marcar como aceita":"Marcar como aceptada","Marcar como concluÃda":"Marcar como completada","Marcar como concluÃdo":"Marcar como completado","Marcar como lido":"Marcar como leÃdo","Marcar como não concluÃdo":"Marcar como no completado","Marcar como principal":"Marcar como principal","Marcar como resolvido":"Marcar como resuelto","Marcar como solução":"Marcar como solución","Marcas / Redes de Hotéis":"Marcas / Cadenas de Hoteles","Marcas da organização":"Marcas de la organización","Marcas existentes aparecem automaticamente quando você cria diagnósticos empresariais.":"Las marcas existentes aparecen automáticamente cuando crea diagnósticos empresariales.",Marco:s3,"Marco excluÃdo":"Hito excluido",Marcos:n3,"Marcos do Projeto":"Hitos del Proyecto","Marcos obrigatórios por pilar com evidência e aprovação":"Hitos obligatorios por pilar con evidencia y aprobación","Mario Carlos Beni":"Mario Carlos Beni",Marketing:c3,"Marketing & Distribuição":"Marketing y Distribución","Marketing Temporariamente Bloqueado":"Marketing Temporalmente Bloqueado","Marketing e Comercialização TurÃstica":"Marketing y Comercialización TurÃstica","Marketing e Promoção":"Marketing y Promoción","Marketing e operações":"Marketing y operaciones","Marketing turÃstico":"Marketing turÃstico","Marque como concluÃdo quando a ação for implementada.":"Marque como completado cuando la acción sea implementada.","Marque como lido, em andamento ou resolvido.":"Marque como leÃdo, en curs
353o o resuelto.",Março:"Marzo","Maré de Mudança":"Marea de Cambio","Marés de Mudança":"Mareas de Cambio","Masterplans e planos regionais de turismo":"Planes maestros y planes regionales de turismo","Mata Atlântica":"Mata Atlántica","Materiais complementares ficam disponÃveis abaixo do vÃdeo.":"Materiales complementarios disponibles debajo del video.","Materiais de Apoio":"Materiales de Apoyo","Materiais de capacitação (vÃdeo, texto, quiz)":"Materiales de capacitación (video, texto, cuestionario)","Material removido!":"¡Material eliminado!","Matriculado na trilha!":"¡Matriculado en la ruta!","Matricular-se":"Inscribirse","Matricular-se em uma trilha":"Inscribirse en una ruta","Matricule-se para continuar assistindo":"InscrÃbete para seguir viendo","Matriz Detalhada: Escopo à Pilar à Tier":"Matriz Detallada: Alcance à Pilar à Nivel","Matriz RACI":"Matriz RACI","Maturidade Digital":"Madurez Digital","Maturidade Tecnológica":"Madurez Tecnológica","Maximizar visitantes para gerar mais renda":"Maximizar visitantes para generar más ingresos","Mede a qualidade dos corpos hÃdricos do municÃpio. Fonte: ANA / órgãos estaduais. Periodicidade: anual. Direção: maior é melhor.":"Mide la calidad de los cuerpos hÃdricos del municipio. Fuente: ANA / organismos estatales. Periodicidad: anual. Dirección: mayor es mejor.","Medição salva":"Medición guardada","Meio Ambiente":"Medio Ambiente","Mel de abelhas nativas sem ferrão":"Miel de abejas nativas sin aguijón","Mel de jandaÃra, licor de umbu, cosméticos de amburana... O sertão floresce!":"Miel de yandaÃra, licor de umbú, cosméticos de amburana... ¡El sertão florece!","Melhor combo:":"Mejor combo:","Melhor nota":"Mejor calificación","Melhor relação custo-benefÃcio":"Mejor relación costo-beneficio","Melhora a qualidade da água":"Mejora la calidad del agua",Melhoraram:d3,"Melhores meses":"Mejores meses",Melhoria:l3,"Melhoria de UX":"Mejora de UX","Melhoria de usabilidade (UX)":"Mejora de usabilidad (UX)","Melhorias de performance":"Mejoras de rendimiento","Melhorias parciais. O equilÃbrio entre turismo e natureza é frágil.":"Mejoras parciales. El equilibrio entre turismo y naturaleza es frágil.","Membro desde":"Miembro desde",Membros:u3,"Membros da Organização":"Miembros de la Organización","Memes e conteúdo informal":"Memes y contenido informal",Memória:"Memoria","Memória Ecológica":"Memoria Ecológica","Memória Perfeita!":"¡Memoria Perfecta!","Mencione o nome do destino para contexto adicional.":"Mencione el nombre del destino para contexto adicional.","Menor é Melhor":"Menor es Mejor","Menos prescrições especÃficas":"Menos prescripciones especÃficas",Mensagem:m3,"Mensagem (opcional)":"Mensaje (opcional)","Mensagem Personalizada":"Mensaje Personalizado","Mensagem deletada":"Mensaje eliminado","Mensagem opcional":"Mensaje opcional","Mensagem para a turma...":"Mensaje para el grupo...",Mensagens:p3,Mensal:g3,Menu:h3,"Menções Públicas da Marca (mÃdia e SERP)":"Menciones Públicas de la Marca (medios y SERP)","Menções totais":"Menciones totales",Mercado:f3,"Mercado (média)":"Mercado (promedio)","Mercado Alvo (selecione todos que se aplicam)":"Mercado Objetivo (seleccione todos los que apliquen)","Mercado de Trabalho":"Mercado Laboral","Merge (recomendado)":"Fusión (recomendado)","Mergulhe no oceano e resgate tesouros marinhos":"Sumérgete en el océano y rescata tesoros marinos","Meses chuvosos":"Meses lluviosos","Meses de Alta Temporada":"Meses de Temporada Alta","Meta ocupação (%)":"Meta ocupación (%)","Metadados enriquecidos":"Metadatos enriquecidos",Metadata:v3,"Metas do governo brasileiro":"Metas del gobierno brasileño",Metodologia:b3,"Metodologia Mario Beni":"MetodologÃa Mario Beni","Metodologia Mario Beni â Motor IGMA | SISTUR":"MetodologÃa Mario Beni â Motor IGMA | SISTUR","Metodologia SISTUR":"MetodologÃa SISTUR","Metodologia completa para elaboração e implementação de planos municipais de turismo":"MetodologÃa completa para elaboración e implementación de planes municipales de turismo","Metodologia de Gestão *":"MetodologÃa de Gestión *","Metodologia sequencial tradicional com fases bem definidas":"MetodologÃa secuencial tradicional con fases bien definidas","Metodologia {{v0}}":"MetodologÃa {{v0}}","Metodologia:":"MetodologÃa:","Metrô Leve":"Metro Ligero","Metrôs reduzem congestionamento e poluição.":"Los metros reducen la congestión y la contaminación.","Meu Perfil":"Mi Perfil","Meu perfil":"Mi perfil","Meus Certificados":"Mis Certificados","Milhares de mudas são plantadas. Corredores ecológicos são restaurados.":"Miles de plántulas son plantadas. Los corredores ecológicos son restaurados.","Min-Max":"Min-Max",Mineração:"MinerÃa","Mineração Ilegal":"MinerÃa Ilegal","Mineração Predatória":"MinerÃa Depredadora","Mineração destrói encostas.":"La minerÃa de
353struye laderas.","Minha Jornada":"Mi Recorrido","Minha organização":"Mi organización","Minhas Anotações":"Mis Notas","Minhas Atividades":"Mis Actividades","Minhas Conquistas":"Mis Logros","Minhas Provas":"Mis Exámenes","Minhas Salas":"Mis Salas","Minhas Solicitações":"Mis Solicitudes","Minhas Turmas":"Mis Grupos","Minhas tarefas":"Mis tareas","Ministério do Trabalho e Emprego (MTE).":"Ministerio del Trabajo y Empleo (MTE).","Ministério do Turismo.":"Ministerio de Turismo.","Ministério do Turismo. CADASTUR â Cadastro de Prestadores de Serviços TurÃsticos. cadastur.turismo.gov.br":"Ministerio de Turismo. CADASTUR â Registro de Prestadores de Servicios TurÃsticos. cadastur.turismo.gov.br","Ministério do Turismo. CADASTUR. cadastur.turismo.gov.br":"Ministerio de Turismo. CADASTUR. cadastur.turismo.gov.br","Ministério do Turismo. Mapa do Turismo Brasileiro â API REST de Regionalização. mapa.turismo.gov.br":"Ministerio de Turismo. Mapa del Turismo Brasileño â API REST de Regionalización. mapa.turismo.gov.br","Ministério do Turismo. Mapa do Turismo Brasileiro. mapa.turismo.gov.br":"Ministerio de Turismo. Mapa del Turismo Brasileño. mapa.turismo.gov.br","Ministério do Turismo. Plano Nacional de Turismo 2024-2027. gov.br/turismo":"Ministerio de Turismo. Plan Nacional de Turismo 2024-2027. gov.br/turismo","Missão Bioma":"Misión Bioma","Missão Cumprida!":"¡Misión Cumplida!","Missão Falhou!":"¡Misión Fallida!","Missão Fracassada":"Misión Fracasada","Missões 7d":"Misiones 7d","Missões diárias":"Misiones diarias","Missões diárias concluÃdas (últimos 7 dias)":"Misiones diarias completadas (últimos 7 dÃas)",Misto:A3,"Mix de Canais":"Mix de Canales","Mix de canais, sazonalidade mensal e KPIs financeiros":"Mix de canales, estacionalidad mensual y KPIs financieros","Mobilidade Urbana (transporte público e apps)":"Movilidad Urbana (transporte público y apps)","Mobilizar a comunidade e as autoridades contra o garimpo":"Movilizar a la comunidad y las autoridades contra la extracción ilegal","Mobilizar cientistas e comunidade contra a mineração":"Movilizar a cientÃficos y comunidad contra la minerÃa","Mobilizar uma operação massiva de limpeza do óleo":"Movilizar una operación masiva de limpieza del petróleo","Modais identificados":"Modales identificados",Modelo:y3,"Modelo & Infraestrutura":"Modelo & Infraestructura","Modelo anterior":"Modelo anterior","Modelo atual:":"Modelo actual:","Modelo de IA":"Modelo de IA","Modelo de resposta":"Modelo de respuesta","Modelo não registrado":"Modelo no registrado",Moderada:S3,Moderado:E3,"Moderação automática por IA antes do upload":"Moderación automática por IA antes de la carga","Moderação de Conteúdo":"Moderación de Contenido","Moderação de conteúdo com IA para uploads de imagem":"Moderación de contenido con IA para subidas de imagen","Moderação indisponÃvel":"Moderación no disponible",Modo:C3,"Modo Demo ativado! Você está visualizando dados de demonstração.":"¡Modo Demo activado! Está viendo datos de demostración.","Modo Demo ativo:":"Modo Demo activo:","Modo Demo desativado. Visualizando dados da sua organização.":"Modo Demo desactivado. Viendo datos de su organización.","Modo Demonstração":"Modo Demostración","Modo Prescrição":"Modo Prescripción","Modo Prescrição ativo":"Modo Prescripción activo","Modo de importação":"Modo de importación","Modo visualização":"Modo visualización","Moeda (R$)":"Moneda (R$)","Moeda em milhares (R$ mil)":"Moneda en miles (R$ mil)","Moeda em milhões (R$ mi)":"Moneda en millones (R$ mi)",Moedas:T3,"Molusco inteligente indicador de saúde do ecossistema":"Molusco inteligente indicador de salud del ecosistema","Molusco que filtra até 200 litros de água por dia":"Molusco que filtra hasta 200 litros de agua al dÃa","Monitor de Ciclos":"Monitor de Ciclos","Monitor de Saúde do Sistema":"Monitor de Salud del Sistema",Monitoramento:P3,"Monitoramento AnalÃtico":"Monitoreo AnalÃtico","Monitoramento Client":"Monitoreo Cliente","Monitoramento ativo. Prescrições educacionais geradas.":"Monitoreo activo. Prescripciones educativas generadas.","Monitoramento de atividades do sistema LMS":"Monitoreo de actividades del sistema LMS","Monitoramento de evolução por ciclo":"Monitoreo de evolución por ciclo","Monitoramento de polÃticas públicas":"Monitoreo de polÃticas públicas","Monitoramento do uso de recursos e recomendações de escalabilidade":"Monitoreo del uso de recursos y recomendaciones de escalabilidad","Monitoramento e sincronização com sistemas externos":"Monitoreo y sincronización con sistemas externos","Monitoramento e teste manual das funções automáticas (CADASTUR, ANA, TSE, ANATEL, Mapa do Turismo).":"Monitoreo y prueba manual de las funciones automáticas (CADASTUR, ANA, TSE, ANATEL, Mapa del Turismo).","Monitoramento e teste manual das funções automáticas que coletam dados oficiais (CADASTUR, ANA, TSE, ANATEL, Mapa do Turismo).":"Monitoreo y prueba manual de las funciones automáticas que recopilan datos oficiales (CADASTUR, ANA, TSE, ANATEL, Mapa del Turismo).","Monitoramento permanente de fluxo, ocupação, eventos, receita e empregos":"Monitoreo permanente del flujo, la ocupación, los eventos, los ingresos y los empleos","Monitoramento permanente de fluxo, ocupação, eventos, receita e empregos. Permite ingestão automática a partir de fontes oficiais e exportação em CSV/PDF.":"Monitoreo permanente de flujo, ocupación, eventos, ingresos y empleos. Permite ingesta automática desde fuentes oficiales y exportación en CSV/PDF.","Monitoramento territorial e alertas":"Monitoreo territorial y alertas","Monitorar Sistema":"Monitorear Sistema","Monitore o progresso dos seus alunos em tempo real. Veja quem está engajado, quem está atrasad
353o e o desempenho geral da turma.":"Monitore el progreso de sus alumnos en tiempo real. Vea quién está comprometido, quién está atrasado y el rendimiento general de la clase.","Montagem sequencial unindo os pilares":"Ensamblaje secuencial uniendo los pilares","Montar Exame":"Montar Examen","Monte seu deck de cartas e defenda o destino turÃstico contra ameaças.":"Arme su mazo de cartas y defienda el destino turÃstico contra amenazas.","Monte um resumo executivo em texto do meu destino com base no último diagnóstico, pronto para colar em um e-mail.":"Arme un resumen ejecutivo en texto de mi destino con base en el último diagnóstico, listo para pegar en un e-mail.","Moradia para as famÃlias.":"Vivienda para las familias.","Moradia para famÃlias":"Vivienda para familias","Moradores expulsos pelo custo.":"Residentes expulsados por el costo.","Moradores reclamam do barulho.":"Los residentes se quejan del ruido.","Moradores se tornam os melhores guias, com conhecimento ancestral.":"Los residentes se convierten en los mejores guÃas, con conocimiento ancestral.","Morte de Peixes":"Muerte de Peces","Mostrando 100 de {{v0}} registros":"Mostrando 100 de {{v0}} registros",Mostrar:R3,"Mostrar a natureza e a cultura local":"Mostrar la naturaleza y la cultura local",Motivo:x3,"Motivo da denúncia *":"Motivo de la denuncia *","Motivo da revogação":"Motivo de la revocación","Motivo do cancelamento":"Motivo de la cancelación","Motivo do recurso":"Motivo de la apelación","Motivo...":"Motivo...","Motor IGMA":"Motor IGMA","Motor IGMA Proprietário":"Motor IGMA Propietario","Motor IGMA: algoritmo de interpretação sistêmica com 6 regras encadeadas":"Motor IGMA: algoritmo de interpretación sistémica con 6 reglas encadenadas","Motor de coerência":"Motor de coherencia","Motor de status":"Motor de estado","Mover para":"Mover a","Movimento de água que regula o clima global do planeta":"Movimiento de agua que regula el clima global del planeta","Movimentos:":"Movimientos:","Muda de Mangue":"Planta de Mangle","Muda para reflorestamento costeiro":"Plántula para reforestación costera","Mudança climática":"Cambio climático","Mudanças Climáticas":"Cambio Climático","Mudar para":"Cambiar a","Mudaria de {{v0}} para {{v1}}.":"CambiarÃa de {{v0}} a {{v1}}.","Mudas para o Futuro":"Plántulas para el Futuro","Muita energia, mas muita fumaça...":"Mucha energÃa, pero mucho humo...","Muitas tentativas. Aguarde alguns minutos e tente novamente.":"Demasiados intentos. Espere unos minutos e intente de nuevo.","Muito Permissivo":"Muy Permisivo","Muito Restritivo":"Muy Restrictivo","Muito alta":"Muy alta","Muito dinheiro, mas a vila ficou suja e barulhenta...":"Mucho dinero, pero el pueblo quedó sucio y ruidoso...","Muito estável":"Muy estable","Muito perto!":"¡Muy cerca!","Muitos turistas querem visitar sua vila!":"¡Muchos turistas quieren visitar su pueblo!","Multi-organização":"Multi-organización",MunicÃpio:"Municipio","MunicÃpio TurÃstico":"Municipio TurÃstico","MunicÃpio convidado":"Municipio invitado","MunicÃpio encontrado no IBGE (código: {{v0}})":"Municipio encontrado en el IBGE (código: {{v0}})","MunicÃpio não encontrado no IBGE":"Municipio no encontrado en el IBGE","MunicÃpio removido":"Municipio removido","MunicÃpio-lÃder":"Municipio-lÃder","MunicÃpio:":"Municipio:",MunicÃpios:"Municipios","MunicÃpios (":"Municipios (","MunicÃpios Mapeados":"Municipios Mapeados","MunicÃpios com equipe técnica reduzida":"Municipios con equipo técnico reducido","MunicÃpios e destinos turÃsticos. Dados de IBGE, DATASUS, INEP.":"Municipios y destinos turÃsticos. Datos de IBGE, DATASUS, INEP.","MunicÃpios participantes":"Municipios participantes","Muro de contenção":"Muro de contención","Mutirão de Limpeza":"Jornada de Limpieza",Mux:w3,MÃDIA:"MEDIOS","Máx. 1 arquivo .csv":"Máx. 1 archivo .csv","Máxima precisão diagnóstica":"Máxima precisión diagnóstica","Máximo de Imagens por Post":"Máximo de Imágenes por Publicación","Máximo de capacitações retornadas.":"Máximo de capacitaciones devueltas.","Máximo de destinos retornados.":"Máximo de destinos devueltos.","Máximo de diagnósticos retornados.":"Máximo de diagnósticos devueltos.","Máximo de projetos retornados.":"Máximo de proyectos devueltos.","Máximo de tarefas retornadas.":"Máximo de tareas devueltas.","Máximo de tentativas":"Máximo de intentos","Mãos na terra! A comunidade planta centenas de mudas nativas.":"¡Manos a la obra! La comunidad planta cientos de plántulas nativas.",Média:"Promedio","Média (equilibrado)":"Media (equilibrado)","Média Exames":"Promedio de Exámenes","Média Geral":"Promedio General","Média da org:":"Promedio de la org:","Média das pesquisas de satisfação internas (escala 0-10). Use formulários pós-estadia, QR codes no quarto, ou plataformas como ReviewPro.":"Promedio de las encuestas de satisfacción internas (escala 0-10). Use formularios post-estadÃa, códigos QR en la habitación, o plataformas como ReviewPro.","Média de progresso:":"Promedio de progreso:","Média de todos os destinos":"Promedio de todos los destinos","Média dos concorrentes":"Media de los competidores","Média dos scores dos diagnósticos calculados por pilar do SISTUR":"Promedio de las puntuaciones de los diagnósticos calculados por pilar de S
353ISTUR","Média ponderada":"Promedio ponderado","Média ponderada dos indicadores normalizados por pilar (RA, OE, AO)":"Promedio ponderado de los indicadores normalizados por pilar (RA, OE, AO)","Média ponderada dos pilares":"Promedio ponderado de los pilares","Média: {{v0}}% · Mediana: {{v1}}%":"Promedio: {{v0}}% · Mediana: {{v1}}%",Médio:"Medio",Método:"Método",Métrica:"Métrica","Métricas ambientais alinhadas ao pilar RA de Relações Ambientais.":"Métricas ambientales alineadas al pilar RA de Relaciones Ambientales.","Métricas consolidadas de cada turma sob sua responsabilidade â XP, engajamento e desempenho médio em provas (média geral: {{v0}}%).":"Métricas consolidadas de cada grupo bajo su responsabilidad â XP, compromiso y desempeño promedio en exámenes (promedio general: {{v0}}%).","Métricas de Performance":"Métricas de Rendimiento","Métricas de aquisição, distribuição e eficiência de marketing.":"Métricas de adquisición, distribución y eficiencia de marketing.","Métricas de conversão trial â pago.":"Métricas de conversión trial â pago.","Métricas de satisfação e fidelização baseadas em feedback direto dos hóspedes.":"Métricas de satisfacción y fidelización basadas en el feedback directo de los huéspedes.","Métricas indicam necessidade de uma instância maior para manter a performance.":"Las métricas indican la necesidad de una instancia mayor para mantener el rendimiento.","Métricas secundárias: peso base 1x":"Métricas secundarias: peso base 1x",Mês:"Mes",MÃdia:"Medios","MÃn. {{v0}}%":"MÃn. {{v0}}%","MÃnimo 6 caracteres":"MÃnimo 6 caracteres","MÃnimo de 20 caracteres":"MÃnimo de 20 caracteres","MÃnimo de 5 usuários,":"MÃnimo de 5 usuarios,","MÃnimo de {{v0}} pares no segmento para exibir o comparativo (atualmente {{v1}}). Comparação 100% anônima â sem nomes nem ranking.":"MÃnimo de {{v0}} pares en el segmento para mostrar el comparativo (actualmente {{v1}}). Comparación 100% anónima â sin nombres ni ranking.","MÃnimo viável. Para municÃpios menores ou primeira avaliação rápida.":"MÃnimo viable. Para municipios más pequeños o primera evaluación rápida.","Módulo Hoteleiro":"Módulo Hotelero","Módulo atualizado":"Módulo actualizado","Módulo central de avaliação de destinos turÃsticos.":"Módulo central de evaluación de destinos turÃsticos.","Módulo de treinamento concluÃdo":"Módulo de entrenamiento concluido","Módulo indisponÃvel":"Módulo no dis
353ponible","Módulo não habilitado":"Módulo no habilitado","Módulo regional para grupos de municÃpios.":"Módulo regional para grupos de municipios.",Módulos:"Módulos","Módulos bloqueados são liberados imediatamente após a contratação.":"Los módulos bloqueados se liberan inmediatamente después de la contratación.","Módulos contratados":"Módulos contratados","Módulos do Curso":"Módulos del Curso","Módulos do Curso ({{v0}})":"Módulos del Curso ({{v0}})","Módulos liberados na sua conta":"Módulos liberados en su cuenta","Módulos por Org":"Módulos por Org","Múltipla Escolha":"Opción Múltiple",NPS:I3,"NPS Médio":"NPS Promedio",'Na criação de uma Nova Rodada Territorial, no Step 3 (Configurações), ative o switch "Expandir com Mandala da Sustentabilidade no Turismo". A flag fica salva no diagnóstico (assessments.expand_with_mandala) e os 9 indicadores MST passam a aparecer na coleta. Diagnósticos sem o opt-in continuam usando apenas o núcleo SISTUR original. Você pode filtrar o catálogo por "Núcleo SISTUR" vs "ð Mandala MST" no painel de Indicadores.':'En la creación de una Nueva Ronda Territorial, en el Paso 3 (Configuración), active el interruptor "Expandir con Mandala de la Sostenibilidad en el Turismo". La bandera se guarda en el diagnóstico (assessments.expand_with_mandala) y los 9 indicadores MST pasan a aparecer en la recolección. Los diagnósticos sin la opción de inclusión continúan usando solo el núcleo SISTUR original. Puede filtrar el catálogo por "Núcleo SISTUR" vs "ð Mandala MST" en el panel de Indicadores.',"Na mão":"En la mano","Na parte inferior, acompanhe planos de ação em andamento e tendências históricas.":"En la parte inferior, siga los planes de acción en curso y las tendencias históricas.","Na primeira vez que acessar após aprovação, os Termos de Uso serão exibidos automaticamente.":"La primera vez que acceda después de la aprobación, los Términos de Uso se mostrarán automáticamente.","Na primeira vez que acessar, será necessário aceitar os Termos e Condições do SISTUR. Isso garante que você está ciente das regras de uso da plataforma.":"La primera vez que acceda, deberá aceptar los Términos y Condiciones de SISTUR. Esto garantiza que usted está al tanto de las reglas de uso de la plataforma.","Na primeira vez que entrar, o sistema mostra o assistente de onboarding onde você escolhe seu tipo de acesso.":"La primera vez que ingrese, el sistema muestra el asistente de incorporación donde elige su tipo de acceso.",'Na página de Projetos, clique em "Novo Projeto" e preencha as informações básicas.':'En la página de Proyectos, haga clic en "Nuevo Proyecto" y complete la información básica.',"Na página de Relatórios, escolha o diagnóstico para o qual deseja gerar o relatório.":"En la página de Informes, elija el diagnóstico para el cual desea generar el informe.","Na reunião, opiniões divergem. Donos de pousadas querem mais turistas, agricultores reclamam da falta de água e ambientalistas pedem proteção total.":"En la reunión, las opiniones divergen. Los dueños de posadas quieren más turistas, los agricultores se quejan de la escasez de agua y los ambientalistas piden protección total.",'Na sala, clique em "Nova Atribuição" para definir o conteúdo.':'En la sala, haga clic en "Nueva Asignación" para definir el contenido.',"Nada para importar.":"Nada para importar.","Nada, é natural":"Nada, es natural",Narrativa:D3,"Nas Sombras da Floresta":"En las Sombras del Bosque","Nascente de Rio":"Nacimiento de RÃo",Natureza:O3,"Natureza no concreto!":"¡Naturaleza en el concreto!","Navegar para Diagnósticos":"Navegar a Diagnósticos","Navegar pelo fórum":"Navegar por el foro","Navegação principal":"Navegación principal","Navegue pelo mangue protegendo espécies ameaçadas":"Navegue por el manglar protegiendo especies amenazadas","Negociar com condições":"Negociar con condiciones","Negociar diretamente com os hotéis por soluções":"Negociar directamente con los hoteles por soluciones","Nem toda chuva é ruim...":"No toda lluvia es mala...",Nenhum:M3,"Nenhum (geral)":"Ninguno (general)","Nenhum CNPJ encontrado em fontes públicas. Informe manualmente.":"Ningún CNPJ encontrado en fuentes públicas. Informe manualmente.",'Nenhum PMS conectado. Use "Conectar PMS" para começar.':'Ningún PMS conectado. Use "Conectar PMS" para empezar.',"Nenhum acesso no perÃodo":"Ningún acceso en el perÃodo","Nenhum alerta":"Ninguna alerta","Nenhum aluno":"Ningún alumno","Nenhum aluno indicado ainda. Compartilhe seu código!":"Ningún alumno indicado todavÃa. ¡Comparta su código!","Nenhum aluno na turma":"No hay estudiantes en el grupo","Nenhum aluno opt-in ainda. Ative a participação para começar.":"Aún ningún estudiante ha aceptado participar. Activa la participación para comenzar.","Nenhum aluno pendente":"Ningún alumno pendiente","Nenhum aluno válido para importar":"No hay estudiantes válidos para importar","Nenhum anúncio publicado ainda.":"Aún no hay anuncios publicados.","Nenhum arquivo encontrado":"Ningún archivo encontrado","Nenhum canal cadastrado. Adicione abaixo o mix real de reservas.":"Ningún canal registrado. Agregue a continuación la combinación real de reservas.","Nenhum certificado emitido ainda.":"Aún no se han emitido certificados.","Nenhum certificado encontrado":"No se encontraron certificados","Nenhum checkpoint criado ainda.":"Aún no se ha creado ningún punto de control.","Nenhum ciclo de diagnóstico encontrado.":"No se encontró ningún ciclo de diagnóstico.","Nenhum comentário ainda.":"Aún no hay comentarios.","Nenhum comentário ainda. Seja a primeira pessoa a comentar.":"Ningún comentario todavÃa. Sea la primera persona en comentar.","Nenhum concorrente identificado nas buscas.":"Ningún competidor identificado en las búsquedas.","Nenhum concorrente. Use a busca acima ou adicione manualmente abaixo.":"Ningún competidor. Use la búsqueda de arriba o añada manualmente abajo.","Nenhum consumo registrado.":"Ningún consumo registrado.","Nenhum consórcio disponÃvel ainda.":"Ningún consorcio disponible todavÃa.","Nenhum contato disponÃvel. Você precisa estar matriculado em uma turma.":"No hay contactos disponibles. Debes estar inscrito en un grupo.","Nenhum conteúdo importado aguardando revisão":"No hay contenido importado pendiente de revisión","Nenhum critério definido.":"No hay criterios definidos.","Nenhum crédito concedido.":"Ningún crédito concedido.","Nenhum curso disponÃvel":"Ningún curso disponible","Nenhum curso encontrado":"No se encontraron cursos","Nenhum código de indicador disponÃvel para este nó.":"No hay ningún código de indicador disponible para este nodo.","Nenhum código gerado ainda.":"Ningún código generado aún.","Nenhum dado de diagnóstico disponÃvel ainda.":"Aún no hay datos de diagnóstico disponibles.","Nenhum dado de progresso ainda":"Aún no hay datos de progreso","Nenhum dado encontrado para exportar":"Ningún dato encontrado para exportar","Nenhum dado importado ainda.":"Ningún dato importado todavÃa.","Nenhum dado oficial coletado ainda.":"Aún no se han recopilado datos oficiales.","Nenhum dado para exportar":"No hay datos para exportar","Nenhum dado pré-preenchido":"Ningún dato precargado","Nenhum dado pré-preenchido ainda":"Ningún dato precargado aún","Nenhum dado registrado ainda para este indicador.":"Ningún dato registrado aún para este indicador.","Nenhum dado socioeconômico carregado.":"Ningún dato socioeconómico cargado.","Nenhum destino cadastrado":"Ningún destino registrado","Nenhum destino disponÃvel":"Ningún destino disponible","Nenhum destino disponÃvel. Para criar um projeto, você precisa ter:":"No hay destinos disponibles. Para crear un proyecto, debes tener:","Nenhum destino encontrado":"Ningún destino encontrado","Nenhum destino encontrado.":"No se encontró ningún destino.","Nenhum diagnóstico cadastrado":"Ningún diagnóstico registrado","Nenhum diagnóstico calculado":"Ningún diagnóstico calculado","Nenhum diagnóstico calculado disponÃvel":"No hay diagnósticos calculados disponibles","Nenhum diagnóstico calculado encontrado":"No se encontró ningún diagnóstico calculado","Nenhum diagnóstico calculado encontrado.":"Ningún diagnóstico calculado encontrado.","Nenhum diagnóstico calculado para este destino.":"No hay diagnósticos calculados para este destino.","Nenhum diagnóstico calculado para o destino selecionado.":"No hay diagnósticos calculados para el destino seleccionado.","Nenhum diagnóstico com dados oficiais de
353satualizados aguardando recálculo.":"No hay diagnósticos con datos oficiales desactualizados pendientes de recálculo.","Nenhum diagnóstico criado ainda.":"Aún no se ha creado ningún diagnóstico.","Nenhum diagnóstico disponÃvel":"Ningún diagnóstico disponible","Nenhum diagnóstico encontrado":"Ningún diagnóstico encontrado","Nenhum documento de referência":"Ningún documento de referencia","Nenhum evento agendado nos próximos 90 dias.":"No hay eventos programados en los próximos 90 dÃas.","Nenhum evento cadastrado para {{v0}}.":"Ningún evento registrado para {{v0}}.","Nenhum evento encontrado nas fontes consultadas":"Ningún evento encontrado en las fuentes consultadas","Nenhum evento encontrado para":"Ningún evento encontrado para","Nenhum evento futuro cadastrado.":"No hay eventos futuros registrados.","Nenhum evento no perÃodo":"Ningún evento en el perÃodo","Nenhum evento nos próximos 30 dias":"No hay eventos en los próximos 30 dÃas","Nenhum evento registrado":"Ningún evento registrado","Nenhum evento registrado ainda":"Aún no hay eventos registrados","Nenhum feedback encontrado":"Ningún feedback encontrado","Nenhum gargalo encontrado com os filtros selecionados.":"No se encontraron cuellos de botella con los filtros seleccionados.","Nenhum gargalo identificado.":"No se identificaron cuellos de botella.","Nenhum gatilho prescritivo":"No hay activadores prescriptivos","Nenhum histórico de verificações encontrado.":"Ningún historial de verificaciones encontrado.","Nenhum indicador cadastrado":"Ningún indicador registrado","Nenhum indicador cadastrado no sistema.":"Ningún indicador registrado en el sistema.","Nenhum indicador calculado ainda.":"Aún no se ha calculado ningún indicador.","Nenhum indicador calculado.":"Ningún indicador calculado.","Nenhum indicador encontrado":"Ningún indicador encontrado","Nenhum indicador encontrado com os filtros atuais.":"Ningún indicador encontrado con los filtros actuales.","Nenhum indicador encontrado com os filtros selecionados.":"No se encontraron indicadores con los filtros seleccionados.","Nenhum indicador encontrado.":"No se encontró ningún indicador.","Nenhum indicador novo foi pré-preenchido.":"No se completó previamente ningún indicador nuevo.","Nenhum indicador vinculado":"No hay indicadores vinculados","Nenhum item de revisão":"Ningún elemento de revisión","Nenhum item disponÃvel":"No hay elementos disponibles","Nenhum item no checklist ainda.":"Ningún Ãtem en la lista de verificación aún.","Nenhum lead recebido até o momento.":"Ningún lead recibido hasta el momento.","Nenhum log encontrado":"Ningún registro encontrado","Nenhum marco definido":"No hay hitos definidos","Nenhum marco ou tarefa com data planejada para exportar.":"No hay hitos ni tareas con fecha planificada para exportar.","Nenhum material anexado ainda":"Ningún material adjunto aún","Nenhum membro cadastrado ainda.":"Aún no hay miembros registrados.","Nenhum membro encontrado":"Ningún miembro encontrado","Nenhum membro.":"Ningún miembro.","Nenhum modal detectado":"Ningún modal detectado","Nenhum municÃpio ainda.":"Ningún municipio aún.","Nenhum municÃpio encontrado":"Ningún municipio encontrado","Nenhum municÃpio encontrado.":"Ningún municipio encontrado.","Nenhum módulo cadastrado. Adicione módulos para estruturar o conteúdo do curso.":"Ningún módulo registrado. Agregue módulos para estructurar el contenido del curso.","Nenhum módulo encontrado para â{{v0}}â.":"Ningún módulo encontrado para â{{v0}}â.","Nenhum outro usuário encontrado":"Ningún otro usuario encontrado","Nenhum papel atribuÃdo":"Ningún rol asignado","Nenhum perfil ativo identificado.":"Ningún perfil activo identificado.","Nenhum pilar elegÃvel encontrado nos treinamentos desta trilha.":"Ningún pilar elegible encontrado en los entrenamientos de esta ruta.","Nenhum plano de ação":"No hay planes de acción","Nenhum ponto de atenção identificado.":"No se identificaron puntos de atención.","Nenhum post encontrado":"No se encontraron publicaciones","Nenhum projeto atrasad
353o! Excelente gestão de cronograma.":"No hay proyectos atrasados! Excelente gestión del cronograma.","Nenhum projeto cadastrado. Crie projetos a partir de diagnósticos calculados.":"No hay proyectos registrados. Crea proyectos a partir de diagnósticos calculados.","Nenhum projeto criado":"No hay proyectos creados","Nenhum projeto encontrado.":"Ningún proyecto encontrado.","Nenhum projeto nesta categoria":"No hay proyectos en esta categorÃa","Nenhum recurso":"Ningún recurso","Nenhum recurso enviado":"No se han enviado apelaciones","Nenhum registro de auditoria para este diagnóstico.":"No hay registros de auditorÃa para este diagnóstico.","Nenhum registro de trial.":"Ningún registro de prueba.","Nenhum relatório combina com os filtros":"Ningún informe coincide con los filtros","Nenhum relatório gerado":"No hay informes generados","Nenhum relatório nesta categoria.":"Ningún informe en esta categorÃa.","Nenhum relatório salvo":"No hay informes guardados","Nenhum resultado encontrado":"Ningún resultado encontrado","Nenhum score de indicador enterprise disponÃvel":"No hay puntuaciones de indicadores enterprise disponibles","Nenhum snapshot. Registre periodicamente as notas e volumes para acompanhar a evolução.":"Ninguna instantánea. Registre periódicamente las notas y los volúmenes para seguir la evolución.","Nenhum treinamento associado a esta trilha.":"No hay capacitaciones asociadas a esta ruta de aprendizaje.","Nenhum treinamento cadastrado":"No hay capacitaciones registradas","Nenhum treinamento disponÃvel.":"Ningún entrenamiento disponible.","Nenhum treinamento encontrado":"No se encontraron capacitaciones","Nenhum uso registrado.":"Ningún uso registrado.","Nenhum usuário com acesso especÃfico":"Ningún usuario con acceso especÃfico","Nenhum usuário com e-mail nesta organização":"Ningún usuario con correo electrónico en esta organización","Nenhum usuário disponÃvel":"Ningún usuario disponible","Nenhum usuário disponÃvel.":"No hay usuarios disponibles.","Nenhum usuário disponÃvel. Convide pessoas com seu código de referência ou código da organização.":"Ningún usuario disponible. Invite a personas con su código de referencia o código de la organización.","Nenhum usuário encontrado nesta organização":"Ningún usuario encontrado en esta organización","Nenhum usuário encontrado.":"No se encontraron usuarios.","Nenhum vÃnculo registrado.":"No hay vÃnculos registrados.","Nenhuma Recomendação Ainda":"Aún No Hay Recomendaciones","Nenhuma alteração para salvar":"Ningún cambio para guardar","Nenhuma ameaça no campo...":"Ninguna amenaza en el campo...","Nenhuma anotação ainda. Clique em + para começar.":"Aún no hay notas. Haz clic en + para comenzar.","Nenhuma análise disponÃvel":"Ningún análisis disponible","Nenhuma assinatura registrada.":"Ninguna suscripción registrada.","Nenhuma atividade atribuÃda":"Ninguna actividad asignada","Nenhuma atividade criada.":"Ninguna actividad creada.","Nenhuma atividade registrada ainda":"Aún no hay actividades registradas","Nenhuma atribuição RACI ainda.":"Aún no hay asignaciones RACI.","Nenhuma aula cadastrada neste módulo":"Ninguna clase registrada en este módulo","Nenhuma ação identificada":"No hay acciones identificadas","Nenhuma badge cadastrada ainda.":"Aún no hay insignias registradas.","Nenhuma capacitação vinculada ainda.":"Aún no hay capacitaciones vinculadas.","Nenhuma concessão registrada.":"Ninguna concesión registrada.","Nenhuma conversa ainda.":"Aún no hay conversaciones.","Nenhuma correção pendente":"Ninguna corrección pendiente","Nenhuma correção pôde ser aplicada automaticamente.":"No se pudo aplicar ninguna corrección automáticamente.","Nenhuma entrada válida encontrada (campos obrigatórios: key, title, content, category).":"Ninguna entrada válida encontrada (campos obligatorios: key, title, content, category).","Nenhuma entrada.":"Ninguna entrada.","Nenhuma estrutura cadastrada.":"Ninguna estructura registrada.","Nenhuma etapa cadastrada ainda.":"Aún no hay etapas registradas.","Nenhuma execução recente do Claude detectada. Gere um relatório com Claude para visualizar o progresso por etapa.":"Ninguna ejecución reciente de Claude detectada. Genere un informe con Claude para visualizar el progreso por etapa.","Nenhuma execução registrada ainda. Rode um smoke test para começar.":"Ninguna ejecución registrada aún. Ejecute una prueba de humo para empezar.","Nenhuma fala detectada. Tente novamente.":"Ningún habla detectada. Intente de nuevo.","Nenhuma fase com datas planejadas.":"No hay fases con fechas planificadas.","Nenhuma fase criada":"No hay fases creadas","Nenhuma informação de pagamento":"Ninguna información de pago","Nenhuma interação registrada":"No hay interacciones registradas","Nenhuma liberação registrada.":"Ninguna liberación registrada.","Nenhuma licença ativa encontrada.":"Ninguna licencia activa encontrada.","Nenhuma linha cadastrada ainda.":"Aún no hay lÃneas registradas.","Nenhuma linha válida para importar":"Ninguna lÃnea válida para importar","Nenhuma marca cadastrada ainda.":"Ninguna marca registrada aún.","Nenhuma marca encontrada. Clique em":"Ninguna marca encontrada. Haga clic en","Nenhuma missão para hoje. Volte aman
353hã!":"No hay misiones para hoy. ¡Vuelve mañana!","Nenhuma organização cadastrada":"Ninguna organización registrada","Nenhuma organização com acesso especÃfico":"Ninguna organización con acceso especÃfico","Nenhuma organização disponÃvel":"Ninguna organización disponible","Nenhuma organização encontrada":"Ninguna organización encontrada","Nenhuma outra notificação":"Ninguna otra notificación","Nenhuma pergunta disponÃvel para este módulo.":"Ninguna pregunta disponible para este módulo.","Nenhuma prescrição ativa":"No hay prescripciones activas","Nenhuma prescrição encontrada para o pilar {{v0}}.":"Ninguna prescripción encontrada para el pilar {{v0}}.","Nenhuma prescrição encontrada para os indicadores atuais.":"No se encontró ninguna prescripción para los indicadores actuales.","Nenhuma prescrição gerada para esta rodada.":"No se generó ninguna prescripción para esta ronda.","Nenhuma prova cadastrada ainda":"Ninguna prueba registrada aún","Nenhuma prova final configurada para esta trilha.":"No hay ningún examen final configurado para esta ruta de aprendizaje.","Nenhuma prova realizada":"No se han realizado exámenes","Nenhuma questão encontrada":"Ninguna pregunta encontrada","Nenhuma recomendação de curso
353/live encontrada para montar uma trilha.":"No se encontraron recomendaciones de cursos/transmisiones en vivo para crear una ruta de aprendizaje.","Nenhuma recomendação disponÃvel.":"No hay recomendaciones disponibles.","Nenhuma recomendação encontrada para os indicadores selecionados.":"Ninguna recomendación encontrada para los indicadores seleccionados.","Nenhuma regra configurada":"Ninguna regla configurada","Nenhuma resposta ainda. Seja o primeiro a responder!":"Aún no hay respuestas. ¡Sé el primero en responder!","Nenhuma sala criada":"Ninguna sala creada","Nenhuma sessão registrada para este aluno":"No hay sesiones registradas para este estudiante","Nenhuma sessão salva ainda.":"Aún no hay sesiones guardadas.","Nenhuma sincronização realizada.":"Ninguna sincronización realizada.","Nenhuma solicitação":"Ninguna solicitud","Nenhuma solicitação pendente":"Ninguna solicitud pendiente","Nenhuma sugestão gerada â projeto já parece coberto.":"No se generaron sugerencias â el proyecto ya parece cubierto.","Nenhuma tarefa criada":"No hay tareas creadas","Nenhuma tarefa nesta fase":"No hay tareas en esta fase","Nenhuma tentativa encontrada":"Ningún intento encontrado","Nenhuma trilha adaptativa publicada ainda.":"Aún no hay rutas de aprendizaje adaptativas publicadas.","Nenhuma trilha cadastrada":"No hay rutas de aprendizaje registradas","Nenhuma trilha criada ainda.":"Aún no se han creado rutas de aprendizaje.","Nenhuma turma ativa ainda":"Aún no hay grupos activos","Nenhuma turma ativa para comparar.":"No hay grupos activos para comparar.","Nenhuma unidade adicionada ainda. Clique em":"Ninguna unidad añadida aún. Haga clic en","Nenhuma verificação executada ainda.":"Ninguna verificación ejecutada aún.","Net Promoter Score":"Net Promoter Score",Nitrogênio:"Nitrógeno",'No Painel do Professor, clique em "Nova Sala" para criar uma turma.':'En el Panel del Profesor, haga clic en "Nueva Sala" para crear un grupo.','No Painel do Professor, na aba "Atividades", o professor cria uma atribuição informando: tipo (prova, trilha ou treinamento), tÃtulo, descrição, data e horário de liberação (available_from), prazo final (due_date) e alunos-alvo (toda a turma ou indivÃduos selecionados). à possÃvel ainda definir regras especÃficas para aquela atividade â limite de tempo, número de tentativas e nota mÃnima â sem alterar a configuração global da prova. Os alunos-alvo recebem uma notificação automática na central de avisos no momento da criação.':'En el Panel del Profesor, en la pestaña "Actividades", el profesor crea una asignación informando: tipo (prueba, ruta o entrenamiento), tÃtulo, descripción, fecha y hora de liberación (available_from), fecha lÃmite (due_date) y alumnos-objetivo (todo el grupo o individuos seleccionados). Es posible también definir reglas especÃficas para esa actividad âlÃmite de tiempo, número de intentos y nota mÃnimaâ sin alterar la configuración global de la prueba. Los alumnos-objetivo reciben una notificación automática en el centro de avisos en el momento de la creación.',"No Topo do Mundo":"En la Cima del Mundo","No horário":"A tiempo",'No menu EDU, clique em "Meu Perfil" para configurar suas preferências.':'En el menú EDU, haga clic en "Mi Perfil" para configurar sus preferencias.','No menu lateral, clique em "Diagnósticos" para ver todos os diagnósticos existentes.':'En el menú lateral, haga clic en "Diagnósticos" para ver todos los diagnósticos existentes.','No menu lateral, clique em "Prof. Beni" para abrir o chat.':'En el menú lateral, haga clic en "Prof. Beni" para abrir el chat.',"No módulo Social Turismo (Fórum), o Usuário compromete-se a não publicar conteúdo ofensivo, difamatório, ilegal ou que viole direitos de terceiros.":"En el módulo Social Turismo (Foro), el Usuario se compromete a no publicar contenido ofensivo, difamatorio, ilegal o que viole derechos de terceros.","No organization found":"No se encontró organización",'No painel "Importação PMS/CSV", arraste o relatório mensal do seu PMS. Funciona com Opera, Cloudbeds, Stays ou qualquer planilha.':'En el panel "Importación PMS/CSV", arrastre el informe mensual de su PMS. Funciona con Opera, Cloudbeds, Stays o cualquier hoja de cálculo.',"No template":"En la plantilla","No user":"No user",Nome:N3,"Nome *":"Nombre *","Nome Completo":"Nombre Completo","Nome Completo *":"Nombre Completo *","Nome completo":"Nombre completo","Nome completo do usuário":"Nombre completo del usuario","N
353ome curto para a UI. Ex.: 'Régua oficial 5 nÃveis', 'Proibição de rankings'.":"Nombre corto para la UI. Ej.: 'Regla oficial 5 niveles', 'Prohibición de rankings'.","Nome da Fase *":"Nombre de la Fase *","Nome da Organização":"Nombre de la Organización","Nome da Trilha *":"Nombre de la Ruta de Aprendizaje *","Nome da marca":"Nombre de la marca","Nome da sala *":"Nombre de la sala *","Nome da trilha":"Nombre de la ruta de aprendizaje","Nome da unidade":"Nombre de la unidad","Nome desta unidade":"Nombre de esta unidad","Nome deve ter pelo menos 2 caracteres":"El nombre debe tener al menos 2 caracteres","Nome do Destino":"Nombre del Destino","Nome do Estabelecimento":"Nombre del Establecimiento","Nome do Marco *":"Nombre del Hito *","Nome do Projeto *":"Nombre del Proyecto *","Nome do canal (ex: Booking.com)":"Nombre del canal (ej: Booking.com)","Nome do cenário (opcional)":"Nombre del escenario (opcional)","Nome do concorrente":"Nombre del competidor","Nome do indicador":"Nombre del indicador","Nome do projeto":"Nombre del proyecto","Nome do treinamento":"Nombre de la capacitación","Nome e foto aparecem normalmente":"El nombre y la foto aparecen normalmente","Nome fantasia: {{v0}}":"Nombre comercial: {{v0}}","Nome não disponÃvel":"Nombre no disponible","Nome obrigatório":"Nombre obligatorio","Nome é obrigatório":"El nombre es obligatorio","Nome:":"Nombre:","Norma:":"Norma:",Normal:z3,"Normalizar 100%":"Normalizar 100%",Normalização:"Normalización","Normalização (0-1)":"Normalización (0-1)","Normalização + IGMA":"Normalización + IGMA","Normalização Inversa":"Normalización Inversa","Normalização Linear (Positiva)":"Normalización Lineal (Positiva)","Normalização LogarÃtmica":"Normalización LogarÃtmica","Normalização MIN_MAX, BANDS ou BINARY":"Normalización MIN_MAX, BANDS o BINARY","Normalização Min-Max":"Normalización Min-Max","Normalização automática com 3 funções: linear, inversa e logarÃtmica":"Normalización automática con 3 funciones: lineal, inversa y logarÃtmica","Normalização e Motor IGMA (Mario Beni)":"Normalización y Motor IGMA (Mario Beni)","Normalização:":"Normalización:","Normalmente a aprovação leva até 24 horas úteis.":"Normalmente la aprobación tarda hasta 24 horas hábiles.","Nos painéis de cada plataforma (Google Business, TripAdvisor Management Center), veja o % de avaliações respondidas pela gerência.":"En los paneles de cada plataforma (Google Business, TripAdvisor Management Center), vea el % de evaluaciones respondidas por la gerencia.","Nossa equipe entra em contato pelo e-mail informado.":"Nuestro equipo se pondrá en contacto por el correo electrónico proporcionado.","Nossa equipe pedagógica irá avaliar sua solicitação":"Nuestro equipo pedagógico evaluará su solicitud",Nota:j3,"Nota (0-10)":"Calificación (0-10)","Nota Consolidada":"Calificación Consolidada","Nota Máxima":"Nota Máxima","Nota Média":"Calificación Promedio","Nota RA":"Calificación RA","Nota agregada de Booking, Google, TripAdvisor, Airbnb e demais OTAs em escala 0-10":"Calificación agregada de Booking, Google, TripAdvisor, Airbnb y demás OTAs en escala 0-10","Nota de Reviews Online":"Calificación de Reseñas Online","Nota de segurança:":"Nota de seguridad:","Nota final":"Calificación final","Nota média":"Calificación promedio","Nota mÃn. (%)":"Nota mÃn. (%)","Nota mÃnima":"Calificación mÃnima","Nota mÃnima (%)":"Nota mÃnima (%)","Nota parcial":"Calificación parcial","Nota: Nem todos os municÃpios terão estações IQA num raio de 50 km â nesses casos o campo fica disponÃvel para preenchimento manual.":"Nota: No todos los municipios tendrán estaciones IQA en un radio de 50 km â en esos casos el campo queda disponible para completarlo manualmente.",Notas:k3,"Notas (opcional)":"Notas (opcional)","Notas adicionais":"Notas adicionales","Notas adicionais (rodapé do relatório)":"Notas adicionales (pie de página del informe)","Notas da revisão...":"Notas de la revisión...","Notas de conclusão:":"Notas de finalización:","Notas do Admin":"Notas del Administrador","Notas em escala 0â10. Para fontes que usam 0â5 (TripAdvisor, Google), multiplique por 2 antes de inserir.":"Notas en escala 0â10. Para fuentes que usan 0â5 (TripAdvisor, Google), multiplique por 2 antes de insertar.","Notas em provas realizadas.":"Calificaciones en pruebas realizadas.","Notas por fonte":"Calificaciones por fuente","Notas:":"Notas:","Notifica que o acesso foi liberado":"Notifica que el acceso ha sido liberado","Notificar por e-mail"
353:"Notificar por correo electrónico",Notificações:"Notificaciones","Notificações ({{v0}})":"Notificaciones ({{v0}})",Nov:_3,"Nova Atividade":"Nueva Actividad","Nova Aventura":"Nueva Aventura","Nova Consulta":"Nueva Consulta","Nova Fase":"Nueva Fase","Nova Importação":"Nueva Importación","Nova Live":"Nueva Transmisión en Vivo","Nova Organização":"Nueva Organización","Nova Questão":"Nueva Pregunta","Nova Rodada":"Nueva Ronda","Nova Rodada de Diagnóstico":"Nueva Ronda de Diagnóstico","Nova Sala":"Nueva Sala","Nova Senha":"Nueva Contraseña","Nova Solicitação":"Nueva Solicitud","Nova Solicitação de Conteúdo":"Nueva Solicitud de Contenido","Nova Tarefa":"Nueva Tarea","Nova Trilha Formativa":"Nueva Ruta Formativa","Nova assinatura manual":"Nueva suscripción manual","Nova atividade":"Nueva actividad","Nova badge":"Nueva insignia","Nova busca":"Nueva búsqueda","Nova concessão":"Nueva concesión","Nova conversa":"Nueva conversación","Nova entrada":"Nueva entrada","Nova feature":"Nueva caracterÃstica","Nova funcionalidade":"Nueva funcionalidad","Nova linha":"Nueva lÃnea","Nova linha de orçamento":"Nueva lÃnea de presupuesto","Nova marca":"Nueva marca","Nova marca / rede":"Nueva marca / red","Nova mensagem":"Nuevo mensaje","Nova pasta":"Nueva carpeta","Nova pergunta":"Nueva pregunta","Nova prova ({{v0}})":"Nueva prueba ({{v0}})","Nova regra":"Nueva regla","Nova seção":"Nueva sección","Nova trilha":"Nueva ruta",Novo:q3,"Novo CAGED / MTE":"Novo CAGED / MTE","Novo CAGED â EstatÃsticas mensais de admissões e desligamentos formais (CNAEs do turismo). Usado pelo Observatório como base anual via IGMA, com baseline mensal estimado (valor anual ÷ 12) quando não há série mensal carregada. DisponÃvel em: gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged":"Nuevo CAGED â EstadÃsticas mensuales de admisiones y despidos formales (CNAEs del turismo). Usado por el Observatorio como base anual vÃa IGMA, con lÃnea base mensual estimada (valor anual ÷ 12) cuando no hay serie mensual cargada. Disponible en: gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged","Novo Consórcio":"Nuevo Consorcio","Novo Curso":"Nuevo Curso","Novo Destino":"Nuevo Destino","Novo Diagnóstico Hoteleiro":"Nuevo Diagnóstico Hotelero","Novo Evento":"Nuevo Evento","Novo Evento TurÃstico":"Nuevo Evento TurÃstico","Novo Indicador":"Nuevo Indicador","Novo Jogo":"Nuevo Juego","Novo Marco":"Nuevo Hito","Novo Módulo":"Nuevo Módulo","Novo Post":"Nueva Publicación","Novo Projeto":"Nuevo Proyecto","Novo Treinamento":"Nueva Capacitación","Novo Usuário":"Nuevo Usuario","Novo anúncio":"Nuevo anuncio","Novo checkpoint":"Nuevo punto de control","Novo destino":"Nuevo destino","Novo evento":"Nuevo evento","Novo plano de ação criado com sucesso":"Nuevo plan de acción creado con éxito","Novo post":"Nueva publicación","Novo prazo":"Nuevo plazo","Novo snapshot":"Nueva instantánea","Novo vÃnculo":"Nuevo vÃnculo","Novo vÃnculo externo":"Nuevo vÃnculo externo","Novos meios de hospedagem":"Nuevos establecimientos de alojamiento","Novos relatórios/dashboards":"Nuevos informes/paneles","Novos usuários recebem 7 dias de trial gratuito com acesso a AnalÃtico, EDU e Jogos. O acesso é gerenciado pelo administrador da organização.":"Los nuevos usuarios reciben 7 dÃas de prueba gratuita con acceso a AnalÃtico, EDU y Juegos. El acceso es gestionado por el administrador de la organización.","Novos valores de fontes oficiais (IBGE, CADASTUR, STN, MTur) chegaram para este municÃpio. Recalcule para incorporá-los.":"Nuevos valores de fuentes oficiales (IBGE, CADASTUR, STN, MTur) han llegado para este municipio. Recalcule para incorporarlos.","Nudez e conteúdo sexual":"Desnudez y contenido sexual","Nudez explÃcita":"Desnudez explÃcita","Numérico genérico":"Numérico genérico","Nunca rodou":"Nunca se ejecutó","Nunca sincronizado":"Nunca sincronizado","Nuvem de Poluição":"Nube de Contaminación","Nº de Funcionários":"Nº de Empleados","Nº de UHs":"Nº de UHs","Nº documento":"Nº documento",Não:"No","Não aplicável":"No aplicable","Não autenticado":"No autenticado","Não chove há semanas! A água está acabando!":"¡No llueve desde hace semanas! ¡El agua se está acabando!","Não confundir com leitos hospitalares SUS (igma_leitos_hospitalares_sus_por_mil_habitantes â DATASUS).":"No confundir con camas hospitalarias SUS (igma_leitos_hospitalares_sus_por_mil_habitantes â DATASUS).","Não definido":"No definido","Não detectada":"No detectada","Não elegÃvel para certificações":"No elegible para certificaciones","Não fazer nada e torcer":"No hacer nada y esperar","Não foi desta vez":"Esta vez no se pudo","Não foi possÃvel alterar o plano":"No se pudo cambiar el plan","Não foi possÃvel atualizar o link":"No fue posible actualizar el enlace","Não foi possÃvel atualizar o status":"No se pudo actualizar el estado","Não foi possÃvel carregar a qualidade dos dados oficiais.":"No se pudo cargar la calidad de los datos oficiales.","Não foi possÃvel carregar a trilha de auditoria.":"No se pudo cargar el historial de auditorÃa.","Não foi possÃvel carregar auditoria de procedência:":"No se pudo cargar la auditorÃa de procedencia:","Não foi possÃvel carregar o histórico":"No fue posible cargar el historial","Não foi possÃvel concluir":"No fue posible concluir","Não foi possÃvel copiar para a área de transferência":"No se pudo copiar al portapapeles","Não foi possÃvel criar a conversa":"No fue posible crear la conversación","Não foi possÃvel encerrar a sessão. Tente novamente.":"No fue posible cerrar la sesión. Intente de nuevo.","Não foi possÃvel enviar o comentário":"No se pudo enviar el comentario","Não foi possÃvel enviar. Tente novamente em instantes.":"No se pudo enviar. Inténtalo de nuevo en unos instantes.","Não foi possÃvel equipar":"No se pudo equipar","Não foi possÃvel excluir o destino.":"No fue posible eliminar el destino.","Não foi possÃvel gerar as justificativas agora. Tente de novo em instantes.":"No fue posible generar las justificaciones ahora. Intente de nuevo en unos instantes.","Não foi possÃvel iniciar o pagamento":"No se pudo iniciar el pago","Não foi possÃvel ler o arquivo.":"No se pudo leer el archivo.","Não foi possÃvel preparar o PDF. Desative o bloqueador de pop-ups.":"No se pudo preparar el PDF. Desactiva el bloqueador de ventanas emergentes.","Não foi possÃvel pré-preencher os indicadores":"No se pudieron completar previamente los indicadores","Não foi possÃvel registrar a aceitação.":"No fue posible registrar la aceptación.","Não foi possÃvel remover o comentário":"No se pudo eliminar el comentario","Não foi possÃvel salvar a edição do relatório.":"No se pudieron guardar los cambios del informe.","Não foi possÃvel salvar antes de trocar â corrija os erros e tente novamente.":"No se pudo guardar antes de cambiar â corrige los errores e inténtalo de nuevo.","Não foi possÃvel salvar o destino.":"No se pudo guardar el destino.","Não foram encontrados dados suficientes para gerar uma análise.":"No se encontraron datos suf
353icientes para generar un análisis.","Não há trial por tempo (7 dias). O acesso de avaliação é por":"No hay trial por tiempo (7 dÃas). El acceso de evaluación es por","Não inclui":"No incluye","Não informado":"No informado","Não iniciado":"No iniciado","Não iniciou":"No inició","Não localizamos a sessão de pagamento. Se você concluiu uma compra, verifique sua assinatura.":"No localizamos la sesión de pago. Si ha completado una compra, verifique su suscripción.","Não preencha este campo manualmente â o valor é gerado ao recalcular o diagnóstico.":"No completes este campo manualmente â el valor se genera al recalcular el diagnóstico.","Não preencha manualmente â gerado no recálculo.":"No completes manualmente â se genera en el recálculo.","Não preenchidos":"Sin completar","Não tem conta? Solicitar acesso":"No tienes cuenta? Solicitar acceso","Não tem efeito":"No tiene efecto","Não utilizo as funcionalidades":"No utilizo las funcionalidades","Não. Ele começa com 5 usuários e cresce conforme a necessidade: cada usuário adicional é cobrado pelo mesmo valor por usuário/mês. Você ajusta a quantidade a qualquer momento no checkout ou em Gerenciar conta.":"No. Comienza con 5 usuarios y crece según la necesidad: cada usuario adicional se cobra al mismo valor por usuario/mes. Usted ajusta la cantidad en cualquier momento en el checkout o en Administrar cuenta.","NÃveis de Diagnóstico":"Niveles de Diagnóstico",NÃvel:"Nivel","NÃvel 1 â Sensibilização: conceitos introdutórios e linguagem comum.":"Nivel 1 â Sensibilización: conceptos introductorios y lenguaje común.","NÃvel 2 â Capacitação: instrumentos práticos de gestão e operação.":"Nivel 2 â Capacitación: instrumentos prácticos de gestión y operación.","NÃvel 3 â Aprofundamento: análise técnica e estudos de caso.":"Nivel 3 â Profundización: análisis técnico y estudios de caso.","NÃvel 4 â Especialização: liderança, formulação de polÃticas e métricas avançadas.":"Nivel 4 â Especialización: liderazgo, formulación de polÃticas y métricas avanzadas.","NÃvel 5":"Nivel 5","NÃvel de Diagnóstico":"Nivel de Diagnóstico","NÃvel de Restrição":"Nivel de Restricción","NÃvel de confiabilidade (1-5) baseado na origem":"Nivel de fiabilidad (1-5) basado en el origen","NÃvel do mar":"Nivel del mar","NÃvel elegÃvel:":"Nivel elegible:","NÃvel {{v0}}":"Nivel {{v0}}","NÃvel {{v0}} · {{v1}} XP totais":"Nivel {{v0}} · {{v1}} XP totales","NÃvel {{v0}} â {{v1}}":"Nivel {{v0}} â {{v1}}","NÃvel:":"Nivel:","Núcleo SISTUR ({{v0}})":"Núcleo SISTUR ({{v0}})","Número de Funcionários":"Número de Empleados","Número de SuÃtes":"Número de Suites","Número de UHs (Quartos)":"Número de UHs (Habitaciones)","Número de questões":"Número de preguntas","Número de questões:":"Número de preguntas:","Número de unidades habitacionais por mil habitantes. Fonte: Mapa do Turismo / CADASTUR. Periodicidade: trimestral.":"Número de unidades habitacionales por mil habitantes. Fuente: Mapa do Turismo / CADASTUR. Periodicidad: trimestral.","Número total de funcionários ÷ número de quartos (UHs). Inclua efetivos e terceirizados.":"Número total de empleados ÷ número de habitaciones (UHs). Incluya empleados directos y subcontratados.","O Beni tem contexto sobre a metodologia SISTUR e seus dados.":"Beni tiene contexto sobre la metodologÃa SISTUR y sus datos.","O COâ é responsável por cerca de 75% do efeito estufa.":"El COâ es responsable de cerca del 75% del efecto invernadero.","O Campo de Batalha":"El Campo de Batalla","O Cerrado abriga nascentes de grandes bacias hidrográficas brasileiras.":"El Cerrado alberga nacimientos de grandes cuencas hidrográficas brasileñas.","O Chamado da Floresta":"La Llamada del Bosque","O Coração do Brasil":"El Corazón de Brasil","O Dashboard apresenta uma visão geral dos diagnósticos: scores dos 3 pilares (RA, OE, AO), alertas IGMA, tendências e planos de ação. Use o toggle Territorial/Enterprise para alternar entre visões.":"El Dashboard presenta una visión general de los diagnósticos: scores de los 3 pilares (RA, OE, AO), alertas IGMA, tendencias y planes de acción. Use el toggle Territorial/Enterprise para alternar entre vistas.","O Dashboard é o centro de comando do
353SISTUR AnalÃtico. Aqui você vê uma visão consolidada de todos os seus destinos, diagnósticos e alertas em tempo real.":"El Dashboard es el centro de comando de SISTUR AnalÃtico. Aquà usted ve una visión consolidada de todos sus destinos, diagnósticos y alertas en tiempo real.","O Empresarial inclui indicadores em 7 categorias: Performance Financeira (RevPAR, ADR, GOP Margin), Experiência do Hóspede (NPS, Reviews Online), Operações (Taxa de Ocupação), Sustentabilidade (Consumo de Ãgua/Energia, Certificações), RH (Turnover, Horas de Treinamento), e Impacto Local (% Funcionários Locais, % Compras Locais). 6 destes indicadores também são usados em diagnósticos territoriais.":"El Empresarial incluye indicadores en 7 categorÃas: Rendimiento Financiero (RevPAR, ADR, GOP Margin), Experiencia del Huésped (NPS, Reviews Online), Operaciones (Tasa de Ocupación), Sostenibilidad (Consumo de Agua/EnergÃa, Certificaciones), RRHH (Turnover, Horas de Entrenamiento), e Impacto Local (% Empleados Locales, % Compras Locales). 6 de estos indicadores también se utilizan en diagnósticos territoriales.","O Geomarketing":"El Geomarketing","O Gêmeo Digital":"El Gemelo Digital","O LTV do hóspede":"El LTV del huésped","O Mapa do Turismo Brasileiro é o programa oficial do Ministério do Turismo que classifica municÃpios em categorias (A a E) e regiões turÃsticas. O SISTUR se integra diretamente à API REST (mapa.turismo.gov.br) para buscar em tempo real dados como: categoria do municÃpio, região turÃstica, quantidade de empregos e estabelecimentos turÃsticos, estimativas de visitantes nacionais e internacionais, arrecadação do turismo e existência de conselho municipal de turismo.":"El Mapa del Turismo Brasileño es el programa oficial del Ministerio de Turismo que clasifica municipios en categorÃas (A a E) y regiones turÃsticas. SISTUR se integra directamente con la API REST (mapa.turismo.gov.br) para buscar en tiempo real datos como: categorÃa del municipio, región turÃstica, cantidad de empleos y establecimientos turÃsticos, estimaciones de visitantes nacionales e internacionales, recaudación del turismo y existencia de consejo municipal de turismo.","O Motor IGMA (Intelligence for Governance, Management and Action) é o componente central do SISTUR. Implementa computacionalmente as 6 regras sistêmicas derivadas da Análise Estrutural do Turismo do Prof. Mario Beni.":"El Motor IGMA (Intelligence for Governance, Management and Action) es el componente central de SISTUR. Implementa computacionalmente las 6 reglas sistémicas derivadas del Análisis Estructural del Turismo del Prof. Mario Beni.","O Motor IGMA (Intelligence for Governance, Management and Action) é o núcleo do sistema que aplica automaticamente 6 regras derivadas dessa teoria.":"El Motor IGMA (Intelligence for Governance, Management and Action) es el núcleo del sistema que aplica automáticamente 6 reglas derivadas de esa teorÃa.","O Motor IGMA calcula automaticamente a data de próxima revisão baseado na severidade: pilares crÃticos = 6 meses, pilares em atenção = 12 meses, todos adequados = 18 meses. Esta data aparece nos alertas do diagnóstico.":"El Motor IGMA calcula automáticamente la fecha de la próxima revisión basándose en la severidad: pilares crÃticos = 6 meses, pilares en atención = 12 meses, todos adecuados = 18 meses. Esta fecha aparece en las alertas del diagnóstico.","O Motor IGMA é o núcleo inteligente do SISTUR que aplica 6 regras sistêmicas baseadas na teoria de Mario Beni: (1) Prioridade RA - limitações ambientais bloqueiam expansão estrutural; (2) Ciclo contÃnuo - revisões programadas por severidade; (3) Externalidades negativas - alerta quando OE melhora mas RA piora; (4) Governança central - AO crÃtico bloqueia todo o sistema; (5) Marketing bloqueado se RA ou AO crÃticos; (6) Interdependência setorial identificada.":"El Motor IGMA es el núcleo inteligente de SISTUR que aplica 6 reglas sistémicas basadas en la teorÃa de Mario Beni: (1) Prioridad RA - las limitaciones ambientales bloquean la expansión estructural;
353 (2) Ciclo continuo - revisiones programadas por severidad; (3) Externalidades negativas - alerta cuando OE mejora pero RA empeora; (4) Gobernanza central - AO crÃtico bloquea todo el sistema; (5) Marketing bloqueado si RA o AO crÃticos; (6) Interdependencia sectorial identificada.","O Observatório é o":"El Observatorio es el","O Parque Estadual da Serra é criado! Proteção permanente!":"¡El Parque Estatal da Serra es creado! ¡Protección permanente!","O Preço da Inação":"El Precio de la Inacción","O Professor Beni pode ajudar em diversas situações.":"El Profesor Beni puede ayudar en diversas situaciones.","O Professor Beni pode responder sobre os temas abaixo, sempre com base na metodologia SISTUR:":"El Profesor Beni puede responder sobre los temas a continuación, siempre con base en la metodologÃa SISTUR:",'O Professor Beni só responde sobre turismo, metodologia SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriais/empresariais, educação em turismo, polÃticas públicas e patrimônio cultural/ambiental.\n\nRecusa educadamente: programação, receitas, saúde médica, direito, matemática geral, entretenimento, esportes, polÃtica partidária, religião e qualquer outro tema fora do turismo.\n\nMensagem padrão de recusa: "Agradeço sua curiosidade, mas minha especialidade é exclusivamente a área de turismo e a metodologia sistêmica do SISTUR. Posso ajudá-lo com qualquer questão sobre planejamento turÃstico, diagnósticos territoriais, os pilares RA, OE e AO, ou as regras do Motor IGMA. Como posso ajudá-lo nessas áreas?"':`El Profesor Beni solo responde sobre turismo, metodologÃa SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriales/empresariales, educación en turismo, polÃticas públicas y patrimonio cultural/ambiental. 354 355Rechaza educadamente: programación, recetas, salud médica, derecho, matemáticas generales, entretenimiento, deportes, polÃtica partidista, religión y cualquier otro tema fuera del turismo. 356 357Mensaje estándar de rechazo: "Agradezco su curiosidad, pero mi especialidad es exclusivamente el área de turismo y la metodologÃa sistémica del SISTUR. Puedo ayudarle con cualquier cuestión sobre planificación turÃstica, diagnósticos territoriales, los pilares RA, OE y AO, o las reglas del Motor IGMA. ¿Cómo puedo ayudarle en esas áreas?"`,'O Professor Beni só responde sobre turismo, metodologia SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriais/empresariais, educação em turismo, polÃticas públicas e patrimônio cultural/ambiental. Recusa educadamente: programação, receitas, saúde médica, direito, matemática geral, entretenimento, esportes, polÃtica partidária, religião e qualquer outro tema fora do turismo. Mensagem padrão de recusa: "Agradeço sua curiosidade, mas minha especialidade é exclusivamente a área de turismo e a metodologia sistêmica do SISTUR. Posso ajudá-lo com qualquer questão sobre planejamento turÃstico, diagnósticos territoriais, os pilares RA, OE e AO, ou as regras do Motor IGMA. Como posso ajudá-lo nessas áreas?"':'El Profesor Beni solo responde sobre turismo, metodologÃa SISTUR, pilares RA/OE/AO, Motor IGMA, diagnósticos territoriales/empresariales, educación en turismo, polÃticas públicas y patrimonio cultural/ambiental. Rechaza educadamente: programación, recetas, salud médica, derecho, matemáticas generales, entretenimiento, deportes, polÃtica partidaria, religión y cualquier otro tema fuera del turismo. Mensaje estándar de rechazo: "Agradezco su curiosidad, pero mi especialidad es exclusivamente el área de turismo y la metodologÃa sistémica del SISTUR. Puedo ayudarle con cualquier pregunta sobre planificación turÃstica, diagnósticos territoriales, los pilares RA, OE y AO, o las reglas del Motor IGMA. ¿Cómo puedo ayudarle en estas áreas?"',"O Professor Beni é seu assistente inteligente. Faça perguntas sobre turismo, metodologia SISTUR, ou peça ajuda para interpretar diagnósticos. AcessÃvel pelo menu lateral.":"El Profesor Beni es su asistente inteligente. Haga preguntas sobre turismo, metodologÃa SISTUR, o pida ayuda para interpretar diagnósticos. Accesible desde el menú lateral.","O Professor Beni é um assistente com inteligência artificial treinado na metodologia de Mario Beni. Ele pode responder perguntas, interpretar dados e sugerir ações.":"El Profesor Beni es un asistente con inteligencia artificial entrenado en la metodologÃa de Mario Beni. Puede responder preguntas, interpretar datos y sugerir acciones.","O SISTUR (Sistema Integrado de Suporte para Turismo em Regiões) é uma plataforma web proprietária de inteligência territorial que digitaliza e automatiza a análise sistêmica do turismo, baseando-se na Teoria da Análise Estrutural do Turismo do Prof. Mario Carlos Beni.":"SISTUR (Sistema Integrado de Soporte para el Turismo en Regiones) es una plataforma web propietaria de inteligencia territorial que digitaliza y automatiza el análisis sistémico del turismo, basándose en la TeorÃa del Análisis Estructural del Turismo del Prof. Mario Carlos Beni.","O SISTUR EDU oferece um catálogo completo de trilhas e capacitações organizadas por pilar, com videoaulas, materiais e avaliações.":"SISTUR EDU ofrece un catálogo completo de itinerarios y capacitaciones organizadas por pilar, con video-clases, materiales y evaluaciones.","O SISTUR EDU oferece um catálogo de trilhas e capacitações organizadas por pilar (RA, OE, AO). Explore o conteúdo disponÃvel e matricule-se nas trilhas de seu interesse.":"SISTUR EDU ofrece un catálogo de rutas y capacitaciones organizadas por pilar (RA, OE, AO). Explore el contenido disponible y matricúlese en las rutas de su interés.","O SISTUR EDU rastreia toda a sessão da prova: heartbeats periódicos, mudanças de aba/janela, tentativa de copiar/colar e tempo gasto por questão. A correção de questões objetivas é instantânea no servidor; questões dissertativas seguem para correção manual via RPC finalize_essay_grading (que centraliza nota + emissão de certificado). Certificados só são emitidos após validação completa, com QR Code de verificação pública.":"SISTUR EDU rastrea toda la sesión de la prueba: latid
357os periódicos, cambios de pestaña/ventana, intento de copiar/pegar y tiempo dedicado por pregunta. La corrección de preguntas objetivas es instantánea en el servidor; las preguntas discursivas se envÃan para corrección manual a través de RPC finalize_essay_grading (que centraliza la nota + emisión de certificado). Los certificados solo se emiten después de la validación completa, con QR Code de verificación pública.","O SISTUR EDU é o módulo de capacitação do sistema. Diferentemente de plataformas EAD genéricas, suas trilhas e cursos são prescritos automaticamente a partir do diagnóstico territorial, garantindo conexão direta entre lacuna identificada e ação formativa.":"SISTUR EDU es el módulo de capacitación del sistema. A diferencia de las plataformas EAD genéricas, sus itinerarios y cursos se prescriben automáticamente a partir del diagnóstico territorial, garantizando una conexión directa entre la brecha identificada y la acción formativa.","O SISTUR Empresarial é o módulo especializado para organizações do setor privado (hotéis, resorts, redes hoteleiras). Utiliza 22 indicadores de hospitalidade adaptados da metodologia Mario Beni, sendo 6 compartilhados com diagnósticos territoriais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais).":"SISTUR Empresarial es el módulo especializado para organizaciones del sector privado (hoteles, resorts, cadenas hoteleras). Utiliza 22 indicadores de hospitalidad adaptados de la metodologÃa Mario Beni, siendo 6 compartidos con diagnósticos territoriales (NPS, Reseñas Online, Horas de Capacitación, % Empleados Locales, % Compras Locales y Certificaciones Ambientales).","O SISTUR classifica organizações em dois tipos: PÃBLICAS (secretarias de turismo, órgãos governamentais) com foco em diagnósticos territoriais de municÃpios, e PRIVADAS (hotéis, resorts, empresas hoteleiras) com acesso opcional ao módulo Empresarial para indicadores especÃficos de hospitalidade.":"SISTUR clasifica las organizaciones en dos tipos: PÃBLICAS (secretarÃas de turismo, organismos gubernamentales) con enfoque en diagnósticos territoriales de municipios, y PRIVADAS (hoteles, resorts, empresas hoteleras) con acceso opcional al módulo Empresarial para indicadores especÃficos de hospitalidad.","O SISTUR constitui obra original protegida pela Lei 9.609/1998 (Lei de Software) e Lei 9.610/1998 (Direitos Autorais). Os seguintes elementos são proprietários:":"SISTUR constituye obra original protegida por la Ley 9.609/1998 (Ley de Software) y la Ley 9.610/1998 (Derechos de Autor). Los siguientes elementos son propietarios:","O SISTUR consulta a API pública da Agência Nacional de Ãguas (Hidroweb/Qualiágua) usando o código IBGE do municÃpio para recuperar o Ãndice de Quali
357dade da Ãgua (IQA) médio das estações de monitoramento ativas. O valor é exibido com a quantidade de estações usadas no cálculo, o ano de referência e o nÃvel de confiança. Esse indicador alimenta diretamente o pilar RA (Relações Ambientais), agregando uma base hÃdrica oficial ao diagnóstico territorial. MunicÃpios sem estação ativa permanecem com o indicador vazio para preenchimento manual.":"SISTUR consulta la API pública de la Agencia Nacional del Agua (Hidroweb/Qualiágua) utilizando el código IBGE del municipio para recuperar el Ãndice de Calidad del Agua (IQA) promedio de las estaciones de monitoreo activas. El valor se muestra con la cantidad de estaciones utilizadas en el cálculo, el año de referencia y el nivel de confianza. Este indicador alimenta directamente el pilar RA (Relaciones Ambientales), agregando una base hÃdrica oficial al diagnóstico territorial. Los municipios sin estación activa permanecen con el indicador vacÃo para su llenado manual.","O SISTUR consulta automaticamente":"El SISTUR consulta automáticamente","O SISTUR consulta automaticamente 8 fontes oficiais para pré-preencher mais de 25 indicadores: (1) IBGE Agregados â População, PIB per capita, Densidade e Ãrea; (2) IBGE SIDRA/Censo 2010 â Abastecimento de água e Coleta de lixo; (3) IBGE Pesquisas â IDH, Gini, Incidência de pobreza; (4) DATASUS â Leitos hospitalares, Cobertura de saúde, Mortalidade infantil e geral; (5) INEP â IDEB; (6) STN/Tesouro Nacional â Receita própria e Despesa com turismo; (7) CADASTUR/dados.gov.br â Guias e Agências de turismo (datasets abertos com ingestão trimestral); (8) Mapa do Turismo Brasileiro (mapa.turismo.gov.br) â Região turÃstica, Categoria (A-E), Empregos, Estabelecimentos, Visitantes, Arrecadação e Conselho municipal; (9) ANA/Hidroweb (Qualiágua) â IQA médio das estações de monitoramento do municÃpio (alimenta o pilar RA). Quando uma base não retorna dado válido para o municÃpio, o indicador permanece fora do pré-preenchimento e segue para preenchimento manual com confirmação humana obrigatória.":"SISTUR consulta automáticamente 8 fuentes oficiales para prellenar más de 25 indicadores: (1) IBGE Agregados â Población, PIB per cápita, Densidad y Ãrea; (2) IBGE SIDRA/Censo 2010 â Abastecimiento de agua y Recolección de basura; (3) IBGE Investigaciones â IDH, Gini, Incidencia de pobreza; (4) DATASUS â Camas hospitalarias, Cobertura de salud, Mortalidad infantil y general; (5) INEP â IDEB; (6) STN/Tesoro Nacional â Ingresos propios y Gastos con turismo; (7) CADASTUR/dados.gov.br â GuÃas y Agencias de turismo (datasets abiertos con ingesta trimestral); (8) Mapa del Turismo Brasileño (mapa.turismo.gov.br) â Región turÃstica, CategorÃa (A-E), Empleos, Establecimientos, Visitantes, Recaudación y Consejo municipal; (9) ANA/Hidroweb (Qualiágua) â IQA promedio de las estaciones de monitoreo del municipio (alimenta el pilar RA). Cuando una base no devuelve un dato válido para el municipio, el indicador permanece fuera del prellenado y se procede al llenado manual con confirmación humana obligatoria.","O SISTUR expõe um servidor MCP (Model Context Protocol) que permite a assistentes de IA â como ChatGPT, Claude e Cursor â consultar e agir sobre os seus dados do sistema, sempre com o login do próprio usuário e respeitando as permissões da sua organização.":"SISTUR expone un servidor MCP (Model Context Protocol) que permite a asistentes de IA â como ChatGPT, Claude y Cursor â consultar y actuar sobre sus datos del sistema, siempre con el inicio de sesión del propio usuario y respetando los permisos de su organización.","O SISTUR gera três templates distintos a partir do mesmo diagnóstico validado. Todos compartilham a mesma base de dados auditados (":"SISTUR genera tres plantillas distintas a partir del mismo diagnóstico validado. Todas comparten la misma base de datos auditados (","O SISTUR implementa os princÃpios da Análise Estrutural do Turismo desenvolvida pelo Prof. Mario Carlos Beni. A teoria estabelece que o turismo é um sistema aberto, composto por subsistemas interdependentes que devem ser analisados de forma holÃstica.":"SISTUR implementa los principios del Análisis Estructural del Turismo desarrollado por el Prof. Mario Carlos Beni. La teorÃa establece que el turismo es un sistema abierto, compuesto por subsistemas interdependientes que deben ser analizados de forma holÃstica.","O SISTUR não publica rankings entre municÃpios. O Ãndice I-SISTUR agregado é de uso interno. Cada destino enxerga apenas seus próprios dados â comparações regionais só ocorrem via consórcios autorizados.":"SISTUR no publica rankings entre municipios. El Ãndice I-SISTUR agregado es de uso interno. Cada destino ve solo sus propios datos â las comparaciones regionales solo ocurren a través de consorcios autorizados.","O SISTUR oferece 4 jogos educacionais que ensinam conceitos de turismo sustentável de forma lúdica e envolvente.":"SISTUR ofrece 4 juegos educativos que enseñan conceptos de turismo sostenible de forma lúdica y atractiva.","O SISTUR permite o upload de":"El SISTUR permite la carga de","O SISTUR permite upload de documentos de referência (PDF, DOCX, XLSX, CSV, TXT até 20MB) que são usados automaticamente pela IA na geração de relatórios.":"SISTUR permite la subida de documentos de referencia (PDF, DOCX, XLSX, CSV, TXT hasta 20MB) que son usados automáticamente por la IA en la generación de informes.","O SISTUR preza pela":"El SISTUR valora la","O SISTUR requer a aceitação dos Termos e Condições para garantir o uso adequado da plataforma e proteção de dados.":"SISTUR requiere la aceptación de los Términos y Condiciones para garantizar el uso adecuado de la plataforma y la protección de datos.",'O SISTUR utiliza um c
357atálogo unificado de indicadores. 6 indicadores possuem escopo "ambos" e são utilizados tanto em diagnósticos territoriais quanto empresariais:':'El SISTUR utiliza un catálogo unificado de indicadores. 6 indicadores tienen un alcance "ambos" y se utilizan tanto en diagnósticos territoriales como empresariales:',"O SISTUR é baseado na teoria sistêmica do turismo do Prof. Mario Carlos Beni":"El SISTUR se basa en la teorÃa sistémica del turismo del Prof. Mario Carlos Beni","O SISTUR é o Sistema de Inteligência Territorial para o Turismo. Após o login, você será direcionado ao Dashboard, que reúne os principais indicadores e atalhos para os módulos contratados pela sua organização.":"SISTUR es el Sistema de Inteligencia Territorial para el Turismo. Después de iniciar sesión, será dirigido al Dashboard, que reúne los principales indicadores y accesos directos a los módulos contratados por su organización.","O SISTUR é um Sistema de Inteligência Territorial para o Turismo que transforma indicadores públicos em decisões estratégicas e capacitação aplicada, fechando o ciclo entre diagnóstico, ação e resultado. O sistema é baseado nos princÃpios sistêmicos de Mario Beni.":"SISTUR es un Sistema de Inteligencia Territorial para el Turismo que transforma indicadores públicos en decisiones estratégicas y capacitación aplicada, cerrando el ciclo entre diagnóstico, acción y resultado. El sistema se basa en los principios sistémicos de Mario Beni.","O SISTUR é uma infraestrutura de gestão baseada em evidências que transforma indicadores públicos em decisões estratégicas e capacitação aplicada para destinos turÃsticos brasileiros.":"El SISTUR es una infraestructura de gestión basada en evidencias que transforma indicadores públicos en decisiones estratégicas y capacitación aplicada para destinos turÃsticos brasileños.","O Titular compromete-se a utilizar esse acesso de forma responsável, mantendo a confidencialidade dos dados individuais e não divulgando informações sensÃveis a terceiros sem autorização.":"El Titular se compromete a utilizar este acceso de forma responsable, manteniendo la confidencialidad de los datos individuales y no divulgando información sensible a terceros sin autorización.","O Titular e seus representantes autorizados têm acesso irrestrito a todos os dados armazenados na Plataforma para fins de: (a) suporte técnico e resolução de problemas; (b) auditoria e conformidade; (c) manutenção e melhoria dos serviços; (d) análise de segurança e prevenção de fraudes; (e) cumprimento de obrigações legais e regulatórias.":"El Titular y sus representantes autorizados tienen acceso irrestricto a todos los datos almacenados en la Plataforma para fines de: (a) soporte técnico y resolución de problemas; (b) auditorÃa y cumplimiento; (c) mantenimiento y mejora de los servicios; (d) análisis de seguridad y prevención de fraudes; (e) cumplimiento de obligaciones legales y regulatorias.","O Titular não garante disponibilidade ininterrupta da Plataforma, podendo ocorrer manutenções programadas ou eventuais indisponibilidades técnicas.":"El Titular no garantiza disponibilidad ininterrumpida de la Plataforma, pudiendo ocurrir mantenimientos programados o eventuales indisponibilidades técnicas.","O Titular não se responsabiliza por decisões tomadas pelo Usuário com base nos diagnósticos, relatórios ou recomendações gerados pela Plataforma.":"El Titular no se responsabiliza por decisiones tomadas por el Usuario con base en los diagnósticos, informes o recomendaciones generados por la Plataforma.","O Titular pode suspender ou encerrar a conta do Usuário em caso de violação destes Termos, com ou sem aviso prévio.":"El Titular puede suspender o cerrar la cuenta del Usuario en caso de violación de estos Términos, con o sin previo aviso.","O Titular reserva-se o direito de alterar preços e condições dos planos com aviso prévio de 30 dias.":"El Titular se reserva el derecho de cambiar precios y condiciones de los planes con un aviso previo de 30 dÃas.","O Titular reserva-se o direito de atualizar estes Termos a qualquer momento, notificando o Usuário por e-mail ou pela Plataforma. O uso continuado após a notificação implica aceitação dos novos Termos.":"El Titular se reserva el derecho de actualizar estos Términos en cualquier momento, notificando al Usuario por correo electrónico o por la Plataforma. El uso continuado después de la notificación implica la aceptación de los nuevos Términos.","O Usuário deve manter suas credenciais de acesso em sigilo e notificar imediatamente o Titular em caso de uso não autorizado.":"El Usuario debe mantener sus credenciales de acceso en secreto y notificar inmediatamente al Titular en caso de uso no autorizado.","O Usuário pode encerrar sua conta a qualquer momento, sem direito a reembolso de valores já pagos pelo perÃodo contratado.":"El Usuario puede cerrar su cuenta en cualquier momento, sin derecho a reembolso de valores ya pagados por el perÃodo contratado.","O Usuário pode solicitar a exportação dos seus dados pessoais e do conteúdo gerado a qualquer momento através dos canais oficiais da Plataforma.":"El Usuario puede solicitar la exportación de sus datos personales y del contenido generado en cualquier momento a través de los canales oficiales de la Plataforma.","O Usuário recebe uma licença pessoal, intransferÃvel e não exclusiva para acessar o conteúdo durante a vigência da sua assinatura.":"El Usuario recibe una licencia personal, intransferible y no exclusiva para acceder al contenido durante la vigencia de su suscripción.","O Usuário reconhece que os diagnósticos gerados pela Plataforma têm caráter orientativo e não substituem análises técnicas aprofundadas realizadas por profissionais especializados.":"El Usuario reconoce que los diagnósticos generados por la Plataforma tienen carácter orientativo y no sustituyen análisis técnicos profundos realizados por profesionales especializados.","O Usuário é responsável pela veracidade e atualidade dos dados inseridos na Plataforma.":"El Usuario es responsable por la veracidad y actualidad de los datos ingresados en la Plataforma.",'O acesso Empresarial é habilitado por administradores nas Configurações > Organizações. Selecione a organização, marque o tipo como "Privada" e ative o toggle "Acesso Empresarial". Isso libera os indicadores e fluxos especÃficos para hospital
357idade.':'El acceso Empresarial es habilitado por administradores en Configuración > Organizaciones. Seleccione la organización, marque el tipo como "Privada" y active el conmutador "Acceso Empresarial". Esto habilita los indicadores y flujos especÃficos para hotelerÃa.',"O acesso à Plataforma é concedido mediante assinatura de plano (Avaliação Gratuita, Territorial, Empresarial, Estudante, Professor ou Consultoria Especializada), conforme descrito na página de assinatura.":"El acceso a la Plataforma se concede mediante la suscripción a un plan (Evaluación Gratuita, Territorial, Empresarial, Estudiante, Profesor o ConsultorÃa Especializada), según se describe en la página de suscripción.","O acolhimento salva vidas, mas os recursos são limitados.":"La acogida salva vidas, pero los recursos son limitados.",'O acordo parecia razoável, mas os madeireiros não cumprem. A "exploração parcial" se torna total. A floresta desaparece rapidamente.':'El acuerdo parecÃa razonable, pero los madereros no cumplen. La "explotación parcial" se vuelve total. El bosque desaparece rápidamente.',"O administrador da sua organização receberá uma notificação.":"El administrador de su organización recibirá una notificación.",'O aluno acessa "Minhas Atividades" (/edu/minhas-atividades) e visualiza todas as atribuições com janela de disponibilidade, prazo e status. Ao clicar em "Iniciar" em uma prova, o servidor valida automaticamente a janela, o número de tentativas restantes e a matrÃcula na turma â gera a prova com amostragem estratificada de questões (30% fáceis, 50% médias, 20% difÃceis), aplica overrides definidos pelo professor e redireciona o aluno direto para a tela de execução.':'El alumno accede a "Mis Actividades" (/edu/minhas-atividades) y visualiza todas las asignaciones con ventana de disponibilidad, plazo y estado. Al hacer clic en "Iniciar" en una prueba, el servidor valida automáticamente la ventana, el número de intentos restantes y la matrÃcula en la clase â genera la prueba con muestreo estratificado de preguntas (30% fáciles, 50% medias, 20% difÃciles), aplica anulaciones definidas por el profesor y redirige al alumno directamente a la pantalla de ejecución.',"O animal está protegido e atrai visitantes! ð¦":"¡El animal está protegido y atrae visitantes! ð¦",'O arquivo "{{v0}}" será removido da base de conhecimento.':'El archivo "{{v0}}" será eliminado de la base de conocimiento.','O arquivo "{{v0}}" será removido permanentemente.':'El archivo "{{v0}}" será eliminado permanentemente.',"O arquivo deve seguir exatamente este formato para importação correta":"El archivo debe seguir exactamente este formato para una importación correcta","O arquivo será salvo em formato CSV com separador ponto-e-vÃrgula, compatÃvel com Excel em português.":"El archivo se guardará en formato CSV con separador punto y coma, compatible con Excel en portugués.","O assunto deve ter no máximo 200 caracteres":"El asunto debe tener un máximo de 200 caracteres","O avanço agrÃcola não parou. Nascentes secaram, animais desapareceram e comunidades foram expulsas. O cerrado agoniza sob monoculturas infinitas.":"El avance agrÃcola no se detuvo. Nacientes se secaron, animales desaparecieron y comunidades fueron expulsadas. El cerrado agoniza bajo monocultivos infinitos.","O banco de dados PostgreSQL contém 40+ tabelas com Row Level Security habilitado em todas. Principais entidades:":"La base de datos PostgreSQL contiene más de 40 tablas con Row Level Security habilitado en todas. Principales entidades:","O banner desaparece quando você assina um plano.":"El banner desaparece cuando usted se suscribe a un plan.","O caminho de todo usuário, do cadastro ao plano pago.":"El camino de todo usuario, desde el registro hasta el plan de pago.","O catálogo é organizado por pilar (RA, OE, AO).":"El catálogo está organizado por pilar (RA, OE, AO).","O cerrado está passando por uma seca terrÃvel!":"¡El cerrado está pasando por una sequÃa terrible!","O cerrado queima de sede.":"El cerrado arde de sed.","O cerrado queima. Você fecha os olhos, mas a culpa não desaparece.":"El cerrado arde. Cierras los ojos, pero la culpa no desaparece.","O cerrado se recupera! Nascentes brotam, lobos-guarás correm pelos campos e comunidades tradicionais prosperam. Você provou que é possÃvel produzir e conservar ao mesmo tempo. O berço das águas do Brasil está protegido!":"¡El cerrado se recupera! Nacientes brotan, lobos de crin corren por los campos y comunidades tradicionales prosperan. Usted demostró que es posible producir y conservar al mismo tiempo. ¡La cuna de las aguas de Brasil está protegida!","O cerrado sem veneno! Saúde para todos.":"¡El cerrado sin veneno! Salud para todos.","O chat abre em tela cheia com interface de conversa.":"El chat se abre en pantalla completa con interfaz de conversación.","O compromisso salva empregos, mas reduz o impacto ambiental pela metade.":"El compromiso salva empleos, pero reduce el impacto ambiental a la mitad.","O compromisso traz paz temporária, mas a floresta encolhe.":"El compromiso trae paz temporal, pero el bosque se encoge.","O confronto gera tensão. Os madeireiros re
357cuam temporariamente, mas prometem voltar.":"El enfrentamiento genera tensión. Los madereros retroceden temporalmente, pero prometen volver.","O confronto trouxe atenção da mÃdia, mas também dividiu a comunidade. Os madeireiros voltaram com mais força e proteção polÃtica.":"El enfrentamiento atrajo la atención de los medios, pero también dividió a la comunidad. Los madereros regresaron con más fuerza y protección polÃtica.","O conselho dá voz a todos e decisões passam a ser coletivas.":"El consejo da voz a todos y las decisiones pasan a ser colectivas.","O conselho fortalecido se torna modelo de governança ambiental. Decisões são transparentes e a serra prospera.":"El consejo fortalecido se convierte en modelo de gobernanza ambiental. Las decisiones son transparentes y la sierra prospera.","O conselho gestor funciona bem, mas um membro tenta aprovar construções ilegais usando influência polÃtica.":"El consejo gestor funciona bien, pero un miembro intenta aprobar construcciones ilegales usando influencia polÃtica.","O contador de alunos ativos é atualizado em tempo real.":"El contador de alumnos activos se actualiza en tiempo real.","O contador é atualizado diariamente.":"El contador se actualiza diariamente.","O conteúdo deve ter no máximo 5000 caracteres":"El contenido debe tener un máximo de 5000 caracteres","O conteúdo ficará disponÃvel no seu catálogo personalizado":"El contenido estará disponible en su catálogo personalizado","O corredor conecta fragmentos por centenas de quilômetros! Vida plena!":"¡El corredor conecta fragmentos por cientos de kilómetros! ¡Vida plena!","O crescimento da oferta turÃstica está ocorrendo sem a correspondente sustentabilidade territorial, gerando riscos de externalidades negativas.":"El crecimiento de la oferta turÃstica está ocurriendo sin la correspondiente sostenibilidad territorial, generando riesgos de externalidades negativas.","O crescimento da oferta turÃstica está ocorrendo sem a correspondente sustentabilidade territorial, gerando riscos de externalidades negativas. Recomenda-se equilibrar o desenvolvimento.":"El crecimiento de la oferta turÃstica está ocurriendo sin la correspondiente sostenibilidad territorial, generando riesgos de externalidades negativas. Se recomienda equilibrar el desarrollo.","O cálculo será atualizado quando você concluir o diagnóstico.":"El cálculo se actualizará cuando usted complete el diagnóstico.","O cálculo é executado por uma edge function unificada que aplica normalização, ponderação, status (Adequado/Atenção/CrÃtico) e as 6 regras do Motor IGMA. Snapshots são gerados a cada cálculo; rodadas antigas não são alteradas retroativamente.":"El cálculo es ejecutado por una edge function unificada que aplica normalización, ponderación, estado (Adecuado/Atención/CrÃtico) y las 6 reglas del Motor IGMA. Se generan instantáneas con cada cálculo; rondas antiguas no se alteran retroactivamente.","O código de verificação informado não corresponde a nenhum certificado válido.":"El código de verificación informado no corresponde a ningún certificado válido.","O código informado não consta em nossa base.":"El código ingresado no figura en nuestra base de datos.","O código é gerado automaticamente quando seu perfil de professor é aprovado.":"El código se genera automáticamente cuando su perfil de profesor es aprobado.","O código é um texto curto (ex: PROF-ABC123).":"El código es un texto corto (ej: PROF-ABC123).","O desenvolvimento desordenado cobrou seu preço. Praias poluÃdas, recifes mortos e pescadores sem peixe. O paraÃso foi perdido para o concreto e a negligência.":"El desarrollo desordenado cobró su precio. Playas contaminadas, arrecifes muertos y pescadores sin peces. El paraÃso se perdió por el concreto y la negligencia.","O desmatamento causa erosão e assoreamento, reduzindo a capacidade dos rios.":"La deforestación causa erosión y sedimentación, reduciendo la capacidad de los rÃos.","O destino":"El destino","O destino selecionado não possui código IBGE cadastrado. O pré-preenchimento automático requer o código IBGE para buscar dados oficiais.":"El destino seleccionado no tiene código IBGE registrado. El pre-llenado automático requiere el código IBGE para buscar datos oficiales.","O destino turÃstico colapsou.":"El destino turÃstico colapsó.","O diagnóstico coleta valores de indicadores que são normalizados em uma escala de 0 a 1. O Motor IGMA aplica as 6 regras de Mario Beni, gerando alertas sistêmicos, bloqueios e a data de próxima revisão recomendada. Cada indicador recebe um status automático (Adequado, Atenção ou CrÃtico).":"El diagnóstico recopila valores de indicadores que son normalizados en una escala de 0 a 1. El Motor IGMA aplica las 6 reglas de Mario Beni, generando alertas sistémicas, bloqueos y la fecha de próxima revisión recomendada. Cada indicador recibe un estado automático (Adecuado, Atención o CrÃtico).","O diagnóstico solicitado não foi encontrado.":"No se encontró el diagnóstico solicitado.","O diferencial central (Secret Sauce) do SISTUR é a implementação computacional das 6 regras sistêmicas de Mario Beni em um motor de interpretação automatizado â o Motor IGMA â que transforma dados brutos em diagnósticos acionáveis com prescrições determinÃsticas de capacitação.":"El diferencial central (Secret Sauce) de SISTUR es la implementación computacional de las 6 reglas sistémicas de Mario Beni en un motor de interpretación automatizado â el Motor IGMA â que transforma datos brutos en diagnósticos accionables con prescripciones determinÃsticas de capacitación.",'O documento "{{v0}}" será removido permanentemente.':'El documento "{{v0}}" será eliminado permanentemente.',"O e-mail será enviado com logo, cores e layout do SISTUR automaticamente":"El correo electrónico se enviará con el logo, colores y diseño de SISTUR automáticamente","O egoÃsmo isola sua comunidade. Sem vizinhos, não há futuro.":"El egoÃsmo aÃsla a su comunidad. Sin vecinos, no hay futuro.","O exame solicitado não existe":"El examen solicitado no existe","O festival valoriza a pesca artesanal e atrai turismo responsável.":"El festival valora la pesca artesanal y atrae turismo responsable.","O festival é um sucesso! Turistas e moradores celebram a culinária local. Restaurantes valorizam o pescado artesanal.":"¡El festival es un éxito! Turistas y lugareños celebran la culinaria local. Los restaurantes valoran el pescado artesanal.","O fogo destruiu metade da floresta protegida. Nascentes secaram e animais morreram. A comunidade chora a perda.":"El fuego destruyó la mitad del bosque protegido. Nacientes se secaron y animales murieron. La comunidad llora la pérdida.","O fogo destruiu muita vegetação! ð":"¡El fuego destruyó mucha vegetación! ð","O fogo destrói tudo.":"El fuego destruye todo.","O fogo é contido! A tecnologia e a comunidade salvam a floresta restaurada.":"¡El fuego está contenido! La tecnologÃa y la comunidad salvan el bosque restaurado.","O fórum da comunidade SISTUR é o espaço para troca de experiências, dúvidas e boas práticas entre profissionais do turismo.":"El foro de la comunidad SISTUR es el espacio para el intercambio de experiencias, dudas y buenas prácticas entre profesionales del turismo.","O fórum da comunidade permite trocar experiências, tirar dúvidas e c
357ompartilhar boas práticas com outros profissionais do turismo. Publique posts, comente e curta conteúdos.":"El foro de la comunidad permite intercambiar experiencias, resolver dudas y compartir buenas prácticas con otros profesionales del turismo. Publique posts, comente y dé me gusta a contenidos.","O gráfico de tendências mostra a evolução dos scores ao longo dos ciclos.":"El gráfico de tendencias muestra la evolución de los puntajes a lo largo de los ciclos.","O gráfico principal mostra como os scores dos 3 pilares evoluÃram entre rodadas de diagnóstico.":"El gráfico principal muestra cómo evolucionaron los puntajes de los 3 pilares entre rondas de diagnóstico.","O indicador foi liberado para edição e nova validação.":"El indicador fue liberado para edición y nueva validación.","O jardim botânico atrai pesquisadores do mundo todo. Novas espécies são descobertas e medicamentos potenciais identificados. Mas uma mineradora quer explorar a área.":"El jardÃn botánico atrae a investigadores de todo el mund
357o. Se descubren nuevas especies y se identifican medicamentos potenciales. Pero una minera quiere explorar el área.","O jardim se torna ponto de turismo e pesquisa!":"¡El jardÃn se convierte en punto de turismo e investigación!","O link de convite pode ser compartilhado diretamente (WhatsApp, email, etc.).":"El enlace de invitación puede compartirse directamente (WhatsApp, email, etc.).","O link de verificação pública pode ser adicionado ao LinkedIn.":"El enlace de verificación pública puede añadirse a LinkedIn.","O link leva direto à página de cadastro com o código preenchido.":"El enlace lleva directamente a la página de registro con el código completado.","O litoral foi destruÃdo. Praias cobertas de lixo, recifes mortos, peixes envenenados. A comunidade pesqueira que vivia ali há gerações foi forçada a abandonar seu lar. Suas escolhas egoÃstas transformaram o paraÃso em pesadelo. O mar não perdoa.":"El litoral fue destruido. Playas cubiertas de basura, arrecifes muertos, peces envenenados. La comunidad pesquera que vivÃa allà durante generaciones fue obligada a abandonar su hogar. Sus elecciones egoÃstas transformaron el paraÃso en pesadilla. El mar no perdona.","O litoral se degrada. Você é expulso pela comunidade revoltada.":"El litoral se degrada. Usted es expulsado por la comunidad indignada.","O litoral se transformou! Ãguas cristalinas, recifes vivos, praias limpas e uma comunidade próspera. Seu trabalho mostrou que é possÃvel conciliar turismo, pesca e conservação. O oceano agradece!":"¡El litoral se transformó! Aguas cristalinas, arrecifes vivos, playas limpias y una comunidad próspera. Su trabajo demostró que es posible conciliar turismo, pesca y conservación. ¡El océano lo agradece!","O mar avança sobre a terra.":"El mar avanza sobre la tierra.","O mar está avançando sobre a praia! Ação necessária!":"¡El mar está avanzando sobre la playa! ¡Acción necesaria!","O marco foi removido do projeto":"El hito fue eliminado del proyecto","O mercúrio envenena os rios. O reflorestamento é destruÃdo pelo garimpo.":"El mercurio envenena los rÃos. La reforestación es destruida por la minerÃa ilegal.","O modelo de governança participativa se espalha pelo paÃs!":"¡El modelo de gobernanza participativa se extiende por el paÃs!","O modo demo carrega dados de exemplo em todos os módulos.":"El modo demo carga datos de ejemplo en todos los módulos.","O monitoramento cientÃfico revela que a restauração está funcionando. Espécies raras retornam. Mas um incêndio criminoso ameaça destruir todo o trabalho.":"El monitoreo cientÃfico revela que la restauración está funcionando. Especies raras regresan. Pero un incendio provocado amenaza con destruir todo el trabajo.","O motor IGMA aplica 6 regras sistêmicas aos dados.":"El motor IGMA aplica 6 reglas sistémicas a los datos.","O motor de interpretação IGMA (6 regras sistêmicas), os indicadores proprietários, as fórmulas de normalização e o framework de pilares (RA, OE, AO) constituem segredo comercial e propriedade intelectual do Titular.":"El motor de interpretación IGMA (6 reglas sistémicas), los indicadores propietarios, las fórmulas de normalización y el marco de pilares (RA, OE, AO) constituyen secreto comercial y propiedad intelectual del Titular.","O municÃpio convidado precisará aceitar formalmente para participar do consórcio e compartilhar o resumo do diagnóstico.":"El municipio invitado deberá aceptar formalmente para participar en el consorcio y compartir el resumen del diagnóstico.","O muro ajudou, mas causou erosão...":"El muro ayudó, pero causó erosión...","O muro pode não aguentar...":"El muro podrÃa no resistir...","O mutirão foi um sucesso e ganhou destaque na mÃdia! Mas o lixo continua chegando. A raiz do problema é a falta de coleta seletiva. Um vereador local se aproxima com uma proposta.":"¡La acción comunitaria fue un éxito y ganó destaque en los medios! Pero la basura sigue llegando. La raÃz del problema es la falta de recolección selectiva. Un concejal local se acerca con una propuesta.","O módulo de Projetos faz parte dos planos contratados. Acesse Assinatura para liberar projetos, resultados completos e relatórios.":"El módulo de Proyectos forma parte de los planes contratados. Acceda a Suscripción para liberar proyectos, resultados completos e informes.","O módulo de Projetos permite organizar iniciativas de melhoria vinculadas aos diagnósticos. Gerencie fases, milestones e tarefas de forma estruturada.":"El módulo de Proyectos permite organizar iniciativas de mejora vinculadas a los diagnósticos. Gestione fases, hitos y tareas de forma estructurada.","O painel de Monitoramento AnalÃtico acompanha evolução dos ciclos, progresso por pilar e projetos atrasad
357os. Ideal para gestores acompanharem KPIs em tempo real.":"El panel de Monitoreo AnalÃtico sigue la evolución de los ciclos, el progreso por pilar y los proyectos atrasados. Ideal para que los gestores sigan KPIs en tiempo real.","O painel de Monitoramento AnalÃtico oferece uma visão executiva da evolução dos seus destinos turÃsticos ao longo do tempo.":"El panel de Monitoreo AnalÃtico ofrece una visión ejecutiva de la evolución de sus destinos turÃsticos a lo largo del tiempo.","O painel de alertas mostra situações que requerem atenção baseadas nas 6 regras do motor IGMA.":"El panel de alertas muestra situaciones que requieren atención basadas en las 6 reglas del motor IGMA.","O painel do projeto mostra o progresso geral e por fase.":"El panel del proyecto muestra el progreso general y por fase.","O painel mostra status por aluno: pendente, em andamento, concluÃdo.":"El panel muestra el estado por alumno: pendiente, en curso, concluido.","O perÃodo de avaliação gratuita (Trial) tem duração de 7 dias. Ao término, o Usuário deverá contratar um plano para continuar utilizando a Plataforma.":"El perÃodo de evaluación gratuita (Trial) tiene una duración de 7 dÃas. Al finalizar, el Usuario deberá contratar un plan para seguir utilizando la Plataforma.","O planejamento turÃstico deve ser continuamente revisto à luz da evolução territorial e institucional.":"La planificación turÃstica debe revisarse continuamente a la luz de la evolución territorial e institucional.","O plano Empresarial tem limite de usuários?":"¿El plan Empresarial tiene lÃmite de usuarios?","O plano começa a tomar forma com participação de todos.":"El plan empieza a tomar forma con la participación de todos.","O plano é aprovado. Zonas de proteção, uso sustentável e turismo são demarcadas. Mas um incêndio criminoso ameaça destruir tudo.":"El plan es aprobado. Zonas de protección, uso sostenible y turismo son demarcadas. Pero un incendio provocado amenaza con destruir todo.","O plantio direto mantém a cobertura vegetal e protege o solo da erosão.":"La siembra directa mantiene la cobertura vegetal y protege el suelo de la erosión.","O prazo desta atividade já encerrou.":"El plazo de esta actividad ya ha terminado.","O preço do progresso sem cuidado.":"El precio del progreso sin cuidado.","O problema não sumiu, só ficou escondido... ð":"El problema no desapareció, solo quedó escondido... ð","O professor poderá ver seu progresso e atribuir conteúdos.":"El profesor podrá ver su progreso y asignar contenidos.","O programa de reciclagem transforma a vila! Cooperativas ganham renda, a praia está limpa e turistas conscientes preferem o destino. Mas microplásticos ainda ameaçam o oceano.":"¡El programa de reciclaje transforma el pueblo! Las cooperativas obtienen ingresos, la playa está limpia y los turistas conscientes prefieren el destino. Pero los microplásticos aún amenazan el océano.","O programa educacional forma centenas de jovens guardiões. Escolas adotam currÃculos ambientais. Mas empresas de agronegócio pressionam polÃticos para enfraquecer leis de proteção.":"El programa educativo forma cientos de jóvenes guardianes. Las escuelas adoptan currÃculos ambientales. Pero las empresas del agronegocio presionan a los polÃticos para debilitar las leyes de protección.","O programa se torna polÃtica pública! Milhares de hectares recuperados.":"¡El programa se convierte en polÃtica pública! Miles de hectáreas recuperadas.","O programa se torna polÃtica pública! O berço das águas do Brasil é protegido.":"¡El programa se convierte en polÃtica pública! La cuna de las aguas de Brasil es protegida.","O progresso sem inclusão exclui.":"El progreso sin inclusión excluye.","O progresso é atualizado conforme você avança no vÃdeo.":"El progreso se actualiza a medida que avanzas en el video.","O progresso é salvo automaticamente.":"El progreso se guarda automáticamente.","O projeto de reflorestamento cresce. Hectares são recuperados, animais retornam e a comunidade se orgulha. Mas surge um novo desafio: garimpeiros ilegais descobrem ouro na região.":"El proyecto de reforestación crece. Hectáreas son recuperadas, animales regresan y la comunidad se enorgullece. Pero surge un nuevo desafÃo: mineros ilegales descubren oro en la región.","O projeto de restauração planta milhares de espécies nativas. Lobos-guarás, tucanos e tamanduás retornam. A paisagem se transforma.":"El proyecto de restauración planta miles de especies nativas. Lobos de crin, tucanes y osos hormigueros regresan. El paisaje se transforma.","O projeto foi criado com sucesso":"El proyecto fue creado con éxito","O projeto funciona localmente, mas a seca avança nas comunidades vizinhas.":"El proyecto funciona localmente, pero la sequÃa avanza en las comunidades vecinas.","O projeto local funciona, mas o deserto avança nas regiões vizinhas.":"El proyecto local funciona, pero el desierto avanza en las regiones vecinas.","O projeto segue arquitetura modular com 154+ componentes organizados em 21 módulos de funcionalidade:":"El proyecto sigue una arquitectura modular con 154+ componentes organizados en 21 módulos de funcionalidad:","O que achou deste treinamento?":"¿Qué le pareció esta capacitación?","O que acontece com os dados após a validação?":"¿Qué ocurre con los datos después de la validación?","O que cada nÃvel entrega":"Qué entrega cada nivel","O que está incluÃdo no trial":"¿Qué está incluido en la prueba?","O que foi validado":"Lo que se validó","O que perguntar":"¿Qué preguntar?",'O que significa "Depen
357dência Intersetorial"?':'¿Qué significa "Dependencia Intersectorial"?','O que significa "Marketing Bloqueado"?':'¿Qué significa "Marketing Bloqueado"?','O que significa "desenvolvimento sustentável"?':'¿Qué significa "desarrollo sostenible"?',"O que significa RA estar crÃtico?":"Qué significa que RA esté en estado crÃtico?","O que significa a sigla ESG?":"¿Qué significa la sigla ESG?","O que significa biodiversidade?":"¿Qué significa biodiversidad?","O que significa cada status?":"¿Qué significa cada estado?","O que são Objetivos de Desenvolvimento Sustentável (ODS)?":"¿Qué son los Objetivos de Desarrollo Sostenible (ODS)?","O que são Unidades de Conservação?":"¿Qué son las Unidades de Conservación?","O que são créditos de carbono?":"¿Qué son los créditos de carbono?","O que são energias renováveis?":"¿Qué son las energÃas renovables?","O que são espécies endêmicas?":"¿Qué son las especies endémicas?","O que são externalidades negativas no turismo?":"¿Qué son las externalidades negativas en el turismo?","O que são indicadores de escopo compartilhado?":"¿Qué son los indicadores de alcance compartido?","O que são os três pilares (RA, OE, AO)?":"¿Qué son los tres pilares (RA, OE, AO)?","O que são treinamentos prescritos?":"¿Qué son los entrenamientos prescritos?","O que você faz?":"¿Qué haces?","O que você pode perguntar":"Qué puede preguntar",'O que é a "pré-visualização ao vivo" do relatório?':'¿Qué es la "previsualización en vivo" del informe?','O que é a "tabela oficial":':'Qué es la "tabla oficial":',"O que é a Mandala da Sustentabilidade no Turismo (MST)?":"¿Qué es la Mandala de la Sostenibilidad en el Turismo (MST)?","O que é a Mata Atlântica?":"¿Qué es la Mata Atlántica?","O que é a interpretação territorial?":"¿Qué es la interpretación territorial?","O que é aquecimento global?":"¿Qué es el calentamiento global?","O que é compostagem?":"¿Qué es el compostaje?","O que é desertificação?":"¿Qué es la desertificación?","O que é economia circular?":"¿Qué es la economÃa circular?","O que é lixo eletrônico?":"¿Qué es la basura electrónica?","O que é o Mapa do Turismo Brasileiro integrado ao SISTUR?":"¿Qué es el Mapa del Turismo Brasileño integrado en SISTUR?","O que é o Motor IGMA (Mario Beni)?":"¿Qué es el Motor IGMA (Mario Beni)?","O que é o SISTUR Empresarial?":"¿Qué es SISTUR Empresarial?","O que é o SISTUR?":"¿Qué es SISTUR?",'O que é o componente "Mandala do Destino" no Dashboard?':'¿Qué es el componente "Mandala del Destino" en el Dashboard?',"O que é pegada hÃdrica?":"¿Qué es la huella hÃdrica?","O que é turismo sustentável?":"¿Qué es el turismo sostenible?","O relatório inclui gráficos, scores, issues e recomendações.":"El informe incluye gráficos, puntuaciones, problemas y recomendaciones.","O relatório incluirá um bloco comparando esta rodada com a anterior do mesmo destino.":"El informe incluirá un bloque que comparará esta ronda con la anterior del mismo destino.","O replantio é um sucesso! Meses depois, as mudas começam a crescer. Pássaros voltam a cantar. Um pesquisador da universidade propõe uma parceria.":"¡La replantación es un éxito! Meses después, los brotes empiezan a crecer. Los pájaros vuelven a cantar. Un investigador de la universidad propone una asociación.","O resort foi construÃdo, trazendo empregos mas também mais esgoto e privatização da praia. Tartarugas perderam seu local de desova.":"El resort fue construido, trayendo empleos pero también más aguas residuales y privatización de la playa. Las tortugas perdieron su lugar de desove.","O resort trará empregos, mas a que custo ambiental?":"¿El resort traerá empleos, pero a qué costo ambiental?","O rio perto da vila está cheio de lixo. O que fazer?":"El rÃo cerca del pueblo está lleno de basura. ¿Qué hacer?",'O selo "Sabor da Caatinga" é reconhecido internacionalmente. Exportações crescem e a caatinga se torna sinônimo de qualidade.':'El sello "Sabor de la Caatinga" es reconocido internacionalmente. Las exportaciones crecen y la caatinga se convierte en sinónimo de calida
357d.',"O selo transforma o mercado! Pesca sustentável vira orgulho regional.":"¡El sello transforma el mercado! La pesca sostenible se convierte en orgullo regional.","O semiárido brasileiro se transforma pela economia sustentável!":"¡El semiárido brasileño se transforma por la economÃa sostenible!","O sertão ensina ao mundo como viver com resiliência!":"¡El sertão enseña al mundo cómo vivir con resiliencia!","O sertão se torna referência mundial em energia limpa e convivência!":"¡El sertão se convierte en referente mundial en energÃa limpia y convivencia!","O sertão vira deserto. A vida abandona a terra.":"El sertão se convierte en desierto. La vida abandona la tierra.","O servidor de autorização não retornou um endereço de retorno.":"El servidor de autorización no devolvió una dirección de retorno.","O silêncio permite que a corrupção enfraqueça o conselho.":"El silencio permite que la corrupción debilite el consejo.","O sistema acompanha a evolução dos indicadores entre ciclos de avaliação, identificando se houve Evolução (melhora), Estagnação (sem mudança) ou Regressão (piora). Alertas são gerados quando há regressão por 2 ou mais ciclos consecutivos.":"El sistema acompaña la evolución de los indicadores entre ciclos de evaluación, identificando si hubo Evolución (mejora), Estancamiento (sin cambio) o Regresión (empeoramiento). Se generan alertas cuando hay regresión por 2 o más ciclos consecutivos.","O sistema avalia automaticamente o nÃvel elegÃvel com base no diagnóstico mais recente da organização.":"El sistema evalúa automáticamente el nivel elegible con base en el diagnóstico más reciente de la organización.","O sistema bloqueia ações de marketing/promoção turÃstica quando RA (ambiente) ou AO (operações) estão crÃticos. Promover um destino com problemas ambientais graves ou falhas operacionais sérias pode gerar externalidades negativas e danos à reputação.":"El sistema bloquea acciones de marketing/promoción turÃstica cuando RA (ambiente) o AO (operaciones) están crÃticos. Promover un destino con problemas ambientales graves o fallas operacionales serias puede generar externalidades negativas y daños a la reputación.","O sistema busca apenas dados realmente disponÃveis nas bases públicas integradas ao fluxo atual, usando o código IBGE do municÃpio. O total pode variar conforme a disponibilidade de cada fonte para o municÃpio, e todo dado retornado é exibido com fonte, ano e nÃvel de confiança antes da validação humana obrigatória.":"El sistema busca solo datos realmente disponibles en las bases públicas integradas al flujo actual, usando el código IBGE del municipio. El total puede variar según la disponibilidad de cada fuente para el municipio, y todo dato retornado se muestra con fuente, año y nivel de confianza antes de la validación humana obligatoria.","O sistema calcula automaticamente quando o diagnóstico deve ser revisado. Pilares crÃticos exigem revisão em 6 meses, atenção em 12 meses, e todos adequados em 18 meses.":"El sistema calcula automáticamente cuándo el diagnóstico debe ser revisado. Pilares crÃticos exigen revisión en 6 meses, atención en 12 meses, y todos adecuados en 18 meses.","O sistema está crescendo. Considere aumentar a instância se a tendência continuar.":"El sistema está creciendo. Considere aumentar la instancia si la tendencia continúa.","O sistema está funcional, mas indicadores sugerem crescimento que pode exigir upgrade.":"El sistema es funcional, pero los indicadores sugieren un crecimiento que podrÃa requerir una actualización.",'O sistema fica em "Carregando..." e não abre as páginas. O que faço?':'El sistema se queda en "Cargando..." y no abre las páginas. ¿Qué hago?',"O sistema funciona! Trilhas são recuperadas, a fauna retorna e turistas pagam uma taxa de conservação.":"¡El sistema funciona! Senderos son recuperados, la fauna regresa y los turistas pagan una tasa de conservación.","O sistema pré-preenche automaticamente dados de IBGE, DATASUS, STN, CADASTUR e Mapa do Turismo Brasileiro.":"El sistema pre-completa automáticamente datos de IBGE, DATASUS, STN, CADASTUR y Mapa do Turismo Brasileiro.","O sistema é composto por cinco módulos integrados que cobrem todo o ciclo de gestão de destinos turÃsticos: diagnóstico, prescrição, capacitação, monitoramento e gamificação educacional.":"El sistema está compuesto por cinco módulos integrados que cubren todo el ciclo de gestión de destinos turÃsticos: diagnóstico, prescripción, capacitación, monitoreo y gamificación educativa.","O sol que castiga é o mesmo que liberta! Energia limpa para todos.":"¡El sol que castiga es el mismo que libera! EnergÃa limpia para todos.","O tabuleiro tem 3 fileiras (RA, OE, AO) para suas cartas e uma Zona de Ameaça no topo com os perigos ativos.":"El tablero tiene 3 filas (RA, OE, AO) para tus cartas y una Zona de Amenaza en la parte superior con los peligros activos.","O território apresenta limitações estruturais que comprometem a sustentabilidade do turismo, independentemente de ações de mercado ou gestão isoladas.":"El territorio presenta limitaciones estructurales que comprometen la sostenibilidad del turismo, independientemente de acciones aisladas de mercado o de gestión.","O território apresenta limitações estruturais que comprometem a sustentabilidade do turismo, independentemente de ações de mercado ou gestão isoladas. Priorize capacitações em Relações Ambientais (RA).":"El territorio presenta limitaciones estructurales que comprometen la sostenibilidad del turismo, independientemente de acciones aisladas de mercado o de gestión. Priorice la capacitación en Relaciones Ambientales (RA).","O texto abaixo está sendo escrito pela Mente Sistur agora â seÃ
357§Ãµes podem ser revisadas até a conclusão.":"Mente Sistur está escribiendo el texto a continuación ahora â las secciones pueden revisarse hasta que se complete.","O trabalho local é bom, mas sem proteção legal a floresta continua ameaçada.":"El trabajo local es bueno, pero sin protección legal el bosque continúa amenazado.","O transporte público reduz emissões per capita significativamente.":"El transporte público reduce significativamente las emisiones per cápita.","O treinamento solicitado não existe ou foi removido.":"La capacitación solicitada no existe o fue eliminada.","O turismo de aventura cresce, mas um acidente grave numa trilha perigosa gera crise. A serra ameaça ser fechada para visitantes.":"El turismo de aventura crece, pero un accidente grave en un sendero peligroso genera crisis. La sierra amenaza con ser cerrada para visitantes.","O turismo de aventura traz dinheiro, mas as trilhas sofrem novamente.":"El turismo de aventura trae dinero, pero los senderos sufren nuevamente.","O usuário":"El usuario","O usuário recebe um email automático informando a decisão.":"El usuario recibe un correo electrónico automático informando la decisión.","O vento gera energia! Que legal! ð¬ï¸":"¡El viento genera energÃa! ¡Qué bueno! ð¬ï¸","O vidro pode levar mais de 1 milhão de anos para se decompor!":"¡El vidrio puede tardar más de 1 millón de años en descomponerse!","O viveiro gera renda e restaura a floresta.":"El vivero genera ingresos y restaura el bosque.","O viveiro produz milhares de mudas e emprega dezenas de famÃlias. Outras comunidades querem replicar o modelo. Mas há pressão para converter o viveiro em plantação de soja.":"El vivero produce miles de plántulas y emplea a decenas de familias. Otras comunidades quieren replicar el modelo. Pero hay presión para convertir el vivero en plantación de soja.","ODS {{v0}}":"ODS {{v0}}","OE (Organização Estrutural): Mede infraestrutura e governança.":"OE (Organización Estructural): Mide infraestructura y gobernanza.","OE - Oferta e Estrutura":"OE - Oferta y Estructura","OE - Organização Estrutural":"OE - Organización Estructural","OE â 3 indicadores":"OE â 3 indicadores","OE001,8500,Manual":"OE001,8500,Manual","OE:":"OE:",OFFICIAL_API:L3,"ON CONFLICT (user_id, org_id) DO UPDATE SET role = EXCLUDED.role;":"ON CONFLICT (user_id, org_id) DO UPDATE SET role = EXCLUDED.role;","ORG_ADMIN: gestão local da organização.":"ORG_ADMIN: gestión local de la organización.","OTA (Booking, Expedia, Airbnbâ¦)":"OTA (Booking, Expedia, Airbnbâ¦)",OTAs:U3,"OTAs + metabuscadores":"OTAs + metabuscadores","OTAs e Tarifas Públicas (Booking / Decolar / Expedia)":"OTAs y Tarifas Públicas (Booking / Despegar / Expedia)","OTAs â preço comparado (Auto)":"OTAs â precio comparado (Auto)","OTAs/portais com nota extraÃda":"OTAs/portales con calificación extraÃda",Objetivo:B3,"Objetivo principal da trilha":"Objetivo principal de la ruta","Objetivos de Aprendizagem":"Objetivos de Aprendizaje","Obrigado por contribuir com a avaliação territorial!":"¡Gracias por contribuir con la evaluación territorial!",Obrigatório:"Obligatorio","Obrigatório (bloqueia conclusão do projeto)":"Obligatorio (bloquea la finalización del proyecto)","Obrigatórios pendentes":"Obligatorios pendientes","Observabilidade e auditoria":"Observabilidad y auditorÃa",Observatório:"Observatorio","Observatório (Beta)":"Observatorio (Beta)","Observatório (derivação automática de métricas)":"Observatorio (derivación automática de métricas)","Observatório TurÃstico":"Observatorio TurÃstico","Observatório do destino":"Observatorio del destino","Observatório turÃstico":"Observatorio turÃstico",Observação:"Observación","Observações (contrato, empenho, processo)":"Observaciones (contrato, compromiso, proceso)","Observações (opcional)":"Observaciones (opcional)","Observações Adicionais":"Observaciones Adicionales","Observações internas...":"Observaciones internas...","Obter certificação profissional":"Obtener certificación profesional","Obteve seu primeiro certificado":"Obtuvo su primer certificado","Ocorreu um erro ao carregar a página":"Ocurrió un error al cargar la página","Ocorrências por 100 mil habitantes":"Ocurrencias por 100 mil habitantes",Ocultar:F3,Ocupação:"Ocupación","Ocupação %":"Ocupación %","Ocupação média":"Ocupación promedio",Oferta:G3,"Oferta TurÃstica":"Oferta TurÃstica","Oferta de serviços em atenção - qualificação do trade prescrita":"Oferta de servicios en atención - cualificación del trade prescrita","Oferta e demanda no entorno de":"Oferta y demanda en el entorno de","Oferta limitada de agências e guias":"Oferta limitada de agencias y guÃas",Oficiais:V3,"Oficial (IBGE, CADASTUR, STNâ¦)":"Oficial (IBGE, CADASTUR, STNâ¦)","Onda de Lixo":"Ola de Basura","Onda de Turistas":"Ola de Turistas","Onde acompanho problemas na geração de relatórios?":"¿Dónde sigo los problemas en la generación de informes?",Online:$3,"Onça-pintada":"Jaguar",Opcional:H3,"Opcional. Suba uma planilha exportada do seu PMS (Opera, Cloudbeds, Stays) ou um CSV genérico com as métricas mensais. Aceita UTF-8/Latin1, vÃrgula decimal e separador":"Opcional. Suba una hoja de cálculo exportada de su PMS (Opera, Cloudbeds, Stays) o un CSV genérico con las métricas mensuales. Acepta UTF-8/Latin1, coma decimal y separador","Open-Meteo (5 anos): temperatura, chuva e melhores meses do destino":"Open-Meteo (5 años): temperatura, lluvia y mejores meses del destino","Open-Meteo ERA5 (clima)":"Open-Meteo ERA5 (clima)","Open-Meteo ERA5 â 5 anos (Auto)":"Open-Meteo ERA5 â 5 años (Auto)","Operadora/Agência":"Operadora/Agencia",Operação:"Operación",Operações:"Operaciones","Oportunidade de Investimento":"Oportunidad de Inversión",Opções:"Opciones","Opções da pasta":"Opciones de la carpeta","Opções:":"Opciones:","Oracle Opera Cloud (OAuth client_credentials)":"Oracle Opera Cloud (OAuth client_credentials)",Ordem:W3,"Ordem de consumo":"Orden de consumo","Ordem de injeção":"Orden de inyección","Ordem de injeção no prompt (menor = mais cedo). Use 100 para metodologia, 200 para classificação, 300 para anti-alucinação, 400 para formatação.":"Orden de inyección en el prompt (menor = más temprano). Use 100 para metodologÃa, 200 para clasificación, 300 para anti-alucinación, 400 para formateo.","Ordenamento Econômico":"Ordenamiento Económico",Org:Q3,"Org. Estrutural":"Org. Estructural","Organizar em fases e tarefas":"Organizar en fases y tareas","Organizar festival gastronômico de pescado sustentável":"Organizar festival gastronómico de pescado sostenible","Organizar um mutirão de limpeza da praia":"Organizar una brigada de limpieza de la playa","Organizar uma campanha nacional de conscientização":"Organizar una campaña nacional de concientización","Organizar uma patrulha comunitária para monitorar a floresta":"Organizar una patrulla comunitaria para monitorear el bosque",Organização:"Organización","Organização (opcional)":"Organización (opcional)","Organização *":"Organización *","Organização Estrutural":"Organización Estructural","Organização Estrutural (IOE)":"Organización Estructural (IOE)","Organização Estrutural (OE)":"Organización Estructural (OE)","Organização Estrutural (infraestrutura)":"Organización Estructural (infraestructura)","Organização ativa não encontrada":"Organización activa no encontrada","Organização atualizada":"Organización actualizada","Organização criada":"Organización creada","Organização desconhecida":"Organización desconocida","Organização excluÃda":"Organización eliminada","Organização inteira":"Organización completa","Organização não definida":"Organización no definida","Organização não encontrada":"Organización no encontrada","Organização não identificada.":"Organización no identificada.",Organizações:"Organizaciones","Organizações (multi-tenant)":"Organizaciones (multi-tenant)","Organizações Privadas (Empresarial)":"Organizaciones Privadas (Empresarial)","Organizações Públicas":"Organizaciones Públicas","Organizações controlam o escopo dos dados visÃveis.":"Las organizaciones controlan el alcance de los datos visibles.","Organizações em trial":"Organizaciones en trial","Organizações isoladas com RLS, convites por código e roles granulares":"Organizaciones aisladas con RLS, invitaciones por código y roles granulares",Origem:K3,"Origem da correção:":"Origen de la corrección:","Origem da planilha:":"Origen de la hoja de cálculo:","Origem dos rios protegida por APPs â Ãreas Preservadas":"Origen de los rÃos protegido por APPs â Ãreas Preservadas","Origem dos visitantes":"Origen de los visitantes","Origem dos visitantes (por estado)":"Origen de los visitantes (por estado)","Origem e confiabilidade dos dados utilizados nos diagnósticos":"Origen y confiabilidad de los datos utilizados en los diagnósticos",OrquÃdea:"OrquÃdea","OrquÃdea Especial":"OrquÃdea Especial","OrquÃdea endêmica da mata atlântica":"Orqu
357Ãdea endémica de la selva atlántica",Orçamento:"Presupuesto","Orçamento de Turismo":"Presupuesto de Turismo","Orçamento insuficiente para turismo":"Presupuesto insuficiente para turismo","Os 17 ODS da ONU são uma agenda global para 2030 envolvendo todos os paÃses.":"Los 17 ODS de la ONU son una agenda global para 2030 que involucra a todos los paÃses.","Os 3 NÃveis de Diagnóstico":"Los 3 Niveles de Diagnóstico","Os 3 Pilares":"Los 3 Pilares","Os Três Pilares do Sistema TurÃstico":"Los Tres Pilares del Sistema TurÃstico","Os alunos matriculados serão notificados automaticamente.":"Los estudiantes inscritos recibirán una notificación automáticamente.","Os bombeiros demoram. O fogo destrói metade da área protegida.":"Los bomberos tardan. El fuego destruye la mitad del área protegida.","Os campos":"Los campos","Os campos de palma alimentam o gado sem desmatar. A pressão sobre a caatinga diminui drasticamente.":"Los campos de palma alimentan al ganado sin deforestar. La presión sobre la caatinga disminuye drásticamente.","Os conteúdos educacionais disponibilizados na Plataforma (cursos, trilhas, materiais, vÃdeos) são de propriedade do Titular ou de seus parceiros licenciados e estão protegidos por direitos autorais.":"Los contenidos educativos disponibles en la Plataforma (cursos, rutas, materiales, videos) son propiedad del Titular o de sus socios licenciados y están protegidos por derechos de autor.","Os corredores ecológicos conectam fragmentos de cerrado isolados. Animais podem migrar e as nascentes se recuperam.":"Los corredores ecológicos conectan fragmentos de cerrado aislados. Los animales pueden migrar y los manantiales se recuperan.","Os cursos são direcionados a três perfis: Gestores Públicos (responsáveis por polÃticas), Técnicos (profissionais de planejamento) e Trade TurÃstico (empresários e operadores do setor).":"Los cursos están dirigidos a tres perfiles: Gestores Públicos (responsables de polÃticas), Técnicos (profesionales de planificación) y Trade TurÃstico (empresarios y operadores del sector).","Os dados de diagnósticos turÃsticos inseridos pelo Usuário são armazenados em servidores seguros com criptografia em repouso e em trânsito. O Titular tem direito de acesso a estes dados para fins de: (a) melhoria contÃnua dos algoritmos e da Plataforma; (b) geração de estatÃsticas agregadas e anônimas; (c) pesquisa acadêmica em parceria com instituições de ensino; (d) benchmarking e comparação entre destinos turÃsticos, sempre de forma agregada e anonimizada.":"Los datos de diagnósticos turÃsticos introducidos por el Usuario se almacenan en servidores seguros con cifrado en reposo y en tránsito. El Titular tiene derecho de acceso a estos datos para fines de: (a) mejora continua de los algoritmos y de la Plataforma; (b) generación de estadÃsticas agregadas y anónimas; (c) investigación académica en colaboración con instituciones de enseñanza; (d) benchmarking y comparación entre destinos turÃsticos, siempre de forma agregada y anonimizada.","Os dados exibidos não são seus":"Los datos mostrados no son tuyos","Os dados exibidos são de demonstração. Para criar seus próprios diagnósticos, desative o modo demo.":"Los datos mostrados son de demostración. Para crear sus propios diagnósticos, desactive el modo demo.","Os dados foram confirmados e estão prontos para o diagnóstico.":"Los datos han sido confirmados y están listos para el diagnóstico.","Os dados importados são vinculados automaticamente aos destinos cadastrados no SISTUR.":"Los datos importados se vinculan automáticamente a los destinos registrados en SISTUR.","Os dados serão criados no ambiente de demonstração.":"Los datos se crearán en el entorno de demostración.","Os dados serão mantidos durante a vigência da conta do Usuário e por até 5 (cinco) anos após o encerramento, para fins legais e regulatórios. Após este perÃodo, serão anonimizados ou excluÃdos.":"Los datos se mantendrán durante la vigencia de la cuenta del Usuario y hasta por 5 (cinco) años después de la finalización, para fines legales y regulatorios. Después de este perÃodo, serán anonimizados o eliminados.","Os destinos listados foram avaliados segundo os princÃpios sistêmicos de Mario Carlos Beni, priorizando sustentabilidade ambiental (RA), governança responsável (AO) e infraestrutura adequada (OE). Apenas destinos sem limitações crÃticas são exibid
357os publicamente.":"Los destinos listados fueron evaluados según los principios sistémicos de Mario Carlos Beni, priorizando la sostenibilidad ambiental (RA), la gobernanza responsable (AO) y la infraestructura adecuada (OE). Solo los destinos sin limitaciones crÃticas se muestran públicamente.","Os diagnósticos são o coração do SISTUR AnalÃtico. Através deles, você avalia sistematicamente um destino turÃstico usando indicadores baseados na metodologia de Mario Beni.":"Los diagnósticos son el corazón del SISTUR AnalÃtico. A través de ellos, usted evalúa sistemáticamente un destino turÃstico usando indicadores basados en la metodologÃa de Mario Beni.","Os enigmas ensinam sobre sustentabilidade e ecologia!":"¡Los acertijos enseñan sobre sostenibilidad y ecologÃa!","Os equipamentos são danificados, mas isso pode gerar retaliação.":"Los equipos están dañados, pero esto puede generar represalias.","Os eventos são gerados a cada execução de geração de relatório.":"Los eventos se generan con cada ejecución de generación de informes.","Os feedbacks dos usuários aparecerão aqui":"Los comentarios de los usuarios aparecerán aquÃ","Os guardiões do mar agora são embaixadores do oceano!":"¡Los guardianes del mar ahora son embajadores del océano!","Os guias locais são um sucesso! Escolas enviam alunos para educação ambiental na serra.":"¡Los guÃas locales son un éxito! Las escuelas envÃan alumnos para educación ambiental en la sierra.","Os guias são um sucesso! Mas a demanda crescente de turistas ameaça sobrecarregar os recifes.":"¡Los guÃas son un éxito! Pero la creciente demanda de turistas amenaza con sobrecargar los arrecifes.","Os hotéis concordam com mudanças graduais. Progresso lento.":"Los hoteles concuerdan con cambios graduales. Progreso lento.","Os hotéis fazem mudanças graduais. O esgoto diminui, mas não para completamente.":"Los hoteles hacen cambios graduales. El alcantarillado disminuye, pero no se detiene por completo.","Os hotéis são obrigados legalmente a tratar o esgoto. Mas um dos donos tenta subornar o fiscal para relaxar as exigências.":"Los hoteles están legalmente obligados a tratar el alcantarillado. Pero uno de los dueños intenta sobornar al inspector para relajar las exigencias.","Os indicadores Empresarial seguem a mesma metodologia Beni?":"¿Los indicadores Empresarial siguen la misma metodologÃa Beni?","Os indicadores do SISTUR são organizados pelos três pilares da Análise Estrutural do Turismo (RA, OE e AO) e classificados em três nÃveis de diagnóstico: Essencial, Estratégico e Integral. Cada indicador possui uma fonte oficial (provenance 1 a 5), unidade de medida, direção (maior é melhor / menor é melhor) e periodicidade de atualização.":"Los indicadores de SISTUR están organizados por los tres pilares del Análisis Estructural del Turismo (RA, OE y AO) y clasificados en tres niveles de diagnóstico: Esencial, Estratégico e Integral. Cada indicador posee una fuente oficial (provenance 1 a 5), unidad de medida, dirección (mayor es mejor / menor es mejor) y periodicidad de actualización.","Os indicadores estão organizados por dimensão IGMA, cada um mapeado para um pilar:":"Los indicadores están organizados por dimensión IGMA, cada uno mapeado a un pilar:","Os indicadores podem ser pré-preenchidos automaticamente de fontes oficiais:":"Los indicadores se pueden completar previamente de forma automática a partir de fuentes oficiales:","Os indicadores são organizados por pilar (RA, OE, AO).":"Los indicadores están organizados por pilar (RA, OE, AO).","Os nÃveis são sequenciais: para acessar um nÃvel superior é necessário concluir os anteriores com aproveitamento mÃnimo.":"Los niveles son secuenciales: para acceder a un nivel superior es necesario concluir los anteriores con aprovechamiento mÃnimo.","Os pagamentos ainda não estão configurados para este ambiente. Conclua a ativação de pagamentos para habilitar a contratação online.":"Los pagos aún no están configurados para este entorno. Concluya la activación de pagos para habilitar la contratación en lÃnea.","Os produtos da caatinga conquistam mercados nacionais. A renda das famÃlias triplica e a vegetação nativa é valorizada.":"Los productos de la caatinga conquistan mercados nacionales. Los ingresos de las familias se triplican y la vegetación nativa es valorizada.","Os quintais alimentam famÃlias e recuperam biodiversidade. Abelhas nativas voltam a polinizar e a caatinga renasce ao redor das casas.":"Los patios alimentan a las familias y recuperan biodiversidad. Abejas nativas vuelven a polinizar y la caatinga renace alrededor de las casas.","Os recifes florescem! Mergulhadores de todo o mundo vêm admirar.":"¡Los arrecifes florecen! Buzos de todo el mund
357o vienen a admirar.","Os recifes restaurados abrigam centenas de espécies. Tartarugas voltam a desovar. O projeto ganha reconhecimento da UNESCO.":"Los arrecifes restaurados albergan cientos de especies. Las tortugas vuelven a desovar. El proyecto obtiene reconocimiento de la UNESCO.","Os relatórios gerados pelo SISTUR podem ser personalizados com a identidade visual da organização. As configurações incluem:":"Los informes generados por SISTUR pueden personalizarse con la identidad visual de la organización. Las configuraciones incluyen:","Os rulesets atuais serão substituÃdos pela configuração padrão (20 questões, 70% nota mÃnima, 60 min, 2 tentativas). Tentativas já realizadas pelos alunos permanecem registradas.":"Los rulesets actuales serán reemplazados por la configuración predeterminada (20 preguntas, 70% nota mÃnima, 60 min, 2 intentos). Los intentos ya realizados por los alumnos permanecen registrados.","Os seguintes arquivos foram considerados na geração do relatório deste diagnóstico:":"Se tuvieron en cuenta los siguientes archivos al generar el informe de este diagnóstico:","Os seguintes indicadores foram marcados como ignorados e não participam do cálculo dos scores, gargalos ou prescrições. Isso pode impactar a abrangência da análise.":"Los siguientes indicadores fueron marcados como ignorados y no participan en el cálculo de los scores, cuellos de botella o prescripciones. Esto puede impactar la amplitud del análisis.","Os termos cobrem: uso de dados, responsabilidades, propriedade intelectual.":"Los términos cubren: uso de datos, responsabilidades, propiedad intelectual.","Os trechos a seguir demonstram a implementação proprietária dos algoritmos centrais do SISTUR. São apresentados em TypeScript (frontend) e SQL (banco de dados).":"Los siguientes fragmentos demuestran la implementación propietaria de los algoritmos centrales de SISTUR. Se presentan en TypeScript (frontend) y SQL (base de datos).","Os treinamentos serão importados em breve. Enquanto isso, configure seu perfil de aprendizado.":"Las capacitaciones se importarán pronto. Mientras tanto, configura tu perfil de aprendizaje.","Os três gauges no topo mostram os scores médios dos pilares RA, OE e AO.":"Los tres indicadores en la parte superior muestran los puntajes promedio de los pilares RA, OE y AO.","Os três pilares do SISTUR são: RA (Relações Ambientais) - aspectos ambientais e sustentabilidade, é o pilar prioritário; OE (Organização Estrutural) - infraestrutura e organização do destino; AO (Ações Operacionais) - operações, serviços turÃsticos e governança central do sistema.":"Los tres pilares de SISTUR son: RA (Relaciones Ambientales) - aspectos ambientales y sostenibilidad, es el pilar prioritario; OE (Organización Estructural) - infraestructura y organización del destino; AO (Acciones Operacionales) - operaciones, servicios turÃsticos y gobernanza central del sistema.","Ostra de Mangue":"Ostra de Manglar","Ostra filtro natural da água":"Ostra filtro natural del agua",Out:Y3,"Outputs / Relatórios":"Outputs / Informes",Outras:J3,Outro:X3,"Outro Bioma":"Otro Bioma","Outro motivo":"Otro motivo","Outros: {{v0}} resultado(s)":"Otros: {{v0}} resultado(s)",Oxigênio:"OxÃgeno",PATCH:Z3,PDF:eW,"PDF (opcional)":"PDF (opcional)","PDF anexado":"PDF adjunto","PDF e DOCX em formato ABNT":"PDF y DOCX en formato ABNT","PDF, DOCX, XLSX, CSV, TXT (até 20MB)":"PDF, DOCX, XLSX, CSV, TXT (hasta 20MB)","PDF, DOCX, XLSX, CSV, TXT (máx. 20MB)":"PDF, DOCX, XLSX, CSV, TXT (máx. 20MB)","PDF, Word, Excel, PowerPoint, imagens (máx. 50MB)":"PDF, Word, Excel, PowerPoint, imágenes (máx. 50MB)","PI Planning":"Planificación PI","PIB per capita":"PIB per cápita","PIB per capita nacional (referência IBGE â automático)":"PIB per cápita nacional (referencia IBGE â automático)","PIB total":"PIB total","PNG ou JPG, máx. 2MB. Aparece no cabeçalho do Word e PDF.":"PNG o JPG, máx. 2MB. Aparece en el encabezado de Word y PDF.","PNT 2024-2027 como referência padrão":"PNT 2024-2027 como referencia estándar",POST:aW,"PRESENÃA DIGITAL":"PRESENCIA DIGITAL",PREÃO:"PRECIO",PRO:oW,"PROFESSOR / ESTUDANTE: módulos EDU (turmas, cursos, exames).":"PROFESOR / ESTUDIANTE: módulos EDU (grupos, cursos, exámenes).","PRÃ-PREENCHIDO":"PRE-RELLENADO","Pacote 150":"Paquete 150","Pacote 50":"Paquete 50","Pacote org 500":"Paquete org 500","Pacote organização 500":"Paquete organización 500","Pacotes avulsos":"Paquetes individuales","Pacotes de créditos do Professor Beni":"Paquetes de créditos del Profesor Beni",Padrão:"Predeterminado","Padrão (12 meses)":"Estándar (12 meses)","Padrão = peso global do catálogo. Edite para sobrepor apenas neste contexto organizacional. Limpe o campo (deixe vazio e Enter) para restaurar o padrão.":"Estándar = peso global del catálogo. Edite para sobrescribir solo en este contexto organizacional. Limpie el campo (déjelo vacÃo y Enter) para restaurar el estándar.","Padrão SISTUR: RA 35% / OE 30% / AO 35%. A soma dos três pesos deve ser exatamente 100%.":"Predeterminado de SISTUR: RA 35% / OE 30% / AO 35%. La suma de los tres pesos debe ser exactamente 100%.","Padrão â o mais capaz (OpenAI)":"Estándar â el más capaz (OpenAI)","Padrões de qualidade e excelência no atendimento ao turista":"Estándares de calida
357d y excelencia en la atención al turista","Pagamento recebido":"Pago recibido","Painel administrativo em":"Panel administrativo en","Painel contÃnuo deste destino â séries de fluxo, ocupação, eventos, receita e empregos. Distinto do diagnóstico cÃclico: aqui acompanha-se o que está acontecendo agora.":"Panel continuo de este destino â series de flujo, ocupación, eventos, ingresos y empleos. Distinto del diagnóstico cÃclico: aquà se acompaña lo que está sucediendo ahora.","Painel de Projetos":"Panel de Proyectos","Painel de controle do sistema de turismo":"Panel de control del sistema de turismo","Painel de licenças":"Panel de licencias","Painel do Professor":"Panel del Profesor","Painéis solares cobrem o sertão. As comunidades geram energia e vendem o excedente. A caatinga protegida pela sombra dos painéis se regenera mais rápido.":"Paneles solares cubren el sertão. Las comunidades generan energÃa y venden el excedente. La caatinga protegida por la sombra de los paneles se regenera más rápido.","Palco bonito, mas faltou organização...":"Bonito escenario, pero faltó organización...",Papel:iW,"Papel *":"Rol *","Papel alterado automaticamente para Estudante":"Rol cambiado automáticamente a Estudiante","Papel alterado automaticamente para Visualizador":"Rol cambiado automáticamente a Visualizador","Papel atualizado":"Rol actualizado","Papel atualizado com sucesso":"Rol actualizado con éxito",Papéis:"Roles","Papéis disponÃveis: Admin, Analista, Viewer, Estudante, Professor.":"Roles disponibles: Admin, Analista, Viewer, Estudiante, Profesor.","Para adicionar mais dados, o diagnóstico voltará ao status de rascunho e você poderá preencher os indicadores faltantes. Após as alterações, será necessário recalcular os Ãndices.":"Para añadir más datos, el diagnóstico volverá al estado de borrador y podrá rellenar los indicadores faltantes. Después de los cambios, será necesario recalcular los Ãndices.","Para atualizar com novos documentos, gere o relatório novamente.":"Para actualizar con nuevos documentos, genere el informe nuevamente.","Para cada indicador, insira o valor observado no destino.":"Para cada indicador, inserte el valor observado en el destino.","Para criar um, seu municÃpio precisa ser o lÃder. Para participar, peça ao consórcio para convidar seu municÃpio.":"Para crear uno, su municipio debe ser el lÃder. Para participar, pida al consorcio que invite a su municipio.","Para dúvidas técnicas, use o FAQ disponÃvel em Ajuda. Solicitações de melhoria ou bugs devem ser registradas no Fórum interno ou diretamente com o administrador da organização.":"Para dudas técnicas, use el FAQ disponible en Ayuda. Las solicitudes de mejora o errores deben registrarse en el Foro interno o directamente con el administrador de la organización.","Para fins de integridade acadêmica, registramos informações básicas do dispositivo durante o exame. Esses dados são automaticamente removidos após 90 dias conforme nossa polÃtica de retenção.":"Para fines de integridad académica, registramos información básica del dispositivo durante el examen. Estos datos se eliminan automáticamente después de 90 dÃas según nuestra polÃtica de retención.","Para indicadores com distribuição assimétrica (ex: PIB per capita, população):":"Para indicadores con distribución asimétrica (ej: PIB per cápita, población):","Para indicadores onde maior = melhor (ex: IDH, cobertura de saúde):":"Para indicadores donde mayor = mejor (ej: IDH, cobertura de salud):","Para indicadores onde menor = melhor (ex: taxa de homicÃdios, desmatamento):":"Para indicadores donde menor = mejor (ej: tasa de homicidios, deforestación):","Para iniciar qualquer trilha formativa é necessário concluir o curso":"Para iniciar cualquier ruta formativa es necesario concluir el curso","Para manter a estabilidade e performance, recomendamos aumentar o tamanho da instância do backend.":"Para mantener la estabilidad y el rendimiento, recomendamos aumentar el tamaño de la instancia del backend.",'Para obter o certificado de uma trilha, você precisa: 1) Completar todos os treinamentos obrigatórios; 2) Atingir a pontuação mÃnima nas avaliações (quando aplicável); 3) Clicar em "Emitir Certificado" na página da trilha. O certificado inclui QR Code para verificação de autenticidade.':'Para obtener el certificado de una ruta, usted necesita: 1) Completar todos los entrenamientos obligatorios; 2) Alcanzar la puntuación mÃnima en las evaluaciones (cuando sea aplicable); 3) Hacer clic en "Emitir Certificado" en la página de la ruta. El certificado incluye Código QR para verificación de autenticidad.',"Para refletir no relatório: a
357pós salvar, recalcule o diagnóstico e regenere o relatório.":"Para reflejar los cambios en el informe: después de guardar, recalcule el diagnóstico y vuelva a generar el informe.","Para resistir a timeouts do proxy em gerações longas, o pedido é enfileirado em":"Para resistir a tiempos de espera del proxy en generaciones largas, la solicitud se encola en","Parabéns!":"¡Felicitaciones!","Parabéns! Você concluiu todos os treinamentos desta trilha!":"¡Felicitaciones! ¡Completaste todas las capacitaciones de esta ruta!","Parabéns! Você mantém o equilÃbrio!":"¡Felicitaciones! ¡Mantienes el equilibrio!","Parar gravação":"Detener grabación","Parar leitura":"Detener lectura","ParaÃso Perdido?":"¿ParaÃso Perdido?","Parcerias Público-Privadas":"Alianzas Público-Privadas","Parcerias e Meios de Implementação":"Alianzas y Medios de Implementación",Parcial:tW,Pares:rW,"Pares:":"Pares:","Parques melhoram a saúde e a felicidade.":"Los parques mejoran la salud y la felicidad.",Participar:sW,"Participar de turmas":"Participar en grupos","Parâmetro authorization_id ausente.":"Parámetro authorization_id ausente.","Passageiros 12m":"Pasajeros 12m","Passo 1 â Identificação":"Paso 1 â Identificación","Passo 2 â Rodar os 21 blocos automáticos":"Paso 2 â Ejecutar los 21 bloques automáticos","Passo 3 â Importar CSV do PMS (opcional)":"Paso 3 â Importar CSV del PMS (opcional)","Passo 4 â Calcular e gerar relatório":"Paso 4 â Calcular y generar informe","Passo {{v0}}: {{v1}}":"Paso {{v0}}: {{v1}}",Passos:nW,"Patrimônio histórico":"Patrimonio histórico",Pausado:cW,Payback:dW,Payload:lW,"Paz, Justiça e Instituições Eficazes":"Paz, Justicia e Instituciones Eficaces","Pedir ajuda governamental e esperar":"Pedir ayuda gubernamental y esperar","Pedir caminhão-pipa":"Pedir camión cisterna","Pedir desculpas e tentar organizar uma resposta tardia":"Pedir disculpas e intentar organizar una respuesta tardÃa","Pegada de Carbono":"Huella de Carbono","Peixe ameaçado que se camufla entre raÃzes do mangue":"Pez amenazado que se camufla entre raÃces del manglar","Peixe-palhaço":"Pez payaso","Peixes morrem na lagoa!":"¡Peces mueren en la laguna!",Pendente:uW,"Pendente de confirmação":"Pendiente de confirmación","Pendente de fixação":"Pendiente de fijación",Pendentes:mW,"Pensando...":"Pensando...",Pequena:pW,"Perceber o erro e parar as carvoarias":"Percibir el error y detener las carboneras",Percentual:gW,"Percentual do orçamento dedicado à função 23 (Comércio e Serviços / Turismo). Fonte: FINBRA / SICONFI. Periodicidade: anual.":"Porcentaje del presupuesto dedicado a la función 23 (Comercio y Servicios / Turismo). Fuente: FINBRA / SICONFI. Periodicidad: anual.","Percentual do território coberto por unidades de conservação. Fonte: MMA / CNUC. Periodicidade: anual.":"Porcentaje del territorio cubierto por unidades de conservación. Fuente: MMA / CNUC. Periodicidad: anual.","Percentual médio de conclusão da turma.":"Porcentaje promedio de finalización del grupo.","Percentual mÃnimo para aprovação no exame":"Porcentaje mÃnimo para aprobar el examen","Percorrer as trilhas para avaliar o estado de conservação":"Recorrer los senderos para evaluar el estado de conservación","Percurso formativo completo sugerido":"Recorrido formativo completo sugerido","Percursos de aprendizagem que evoluem conforme seu desempenho e diagnóstico.":"Rutas de aprendizaje que evolucionan según tu desempeño y diagnóstico.","Percursos estruturados de capacitação com certificação":"Recorridos estructurados de capacitación con certificación","Perda de habitat":"Pérdida de hábitat","Perfeito para começar a jornada":"Perfecto para comenzar el viaje","Perfil Criado com Sucesso!":"¡Perfil Creado con Ãxito!","Perfil Educacional":"Perfil Educativo","Perfil Empresarial":"Perfil Empresarial","Perfil Profissional":"Perfil Profesional","Perfil criado com sucesso!":"¡Perfil creado con éxito!","Perfil de Aprendizado":"Perfil de Aprendizaje","Perfil de Estudante":"Perfil de Estudiante","Perfil de Sazonalidade":"Perfil de Estacionalidad","Perfil de estudante com wizard e recomendações personalizadas por IA":"Perfil de estudiante con asistente y recomendaciones personalizadas por IA","Perfil do Empreendimento":"Perfil del Emprendimiento","Perfil do empreendimento preenchido automaticamente":"Perfil del emprendimiento rellenado automáticamente","Perfil do empreendimento salvo":"Perfil del emprendimiento guardado","Perfil do empreendimento salvo com sucesso":"Perfil del emprendimiento guardado con éxito","Perfil e indicadores preenchidos automaticamente":"Perfil e indicadores rellenados automáticamente","Perfil inválido":"Perfil inválido","Perfil mÃnimo preenchido. V
357ocê pode adicionar mais detalhes depois.":"Perfil mÃnimo rellenado. Puede añadir más detalles después.","Perfil não encontrado":"Perfil no encontrado","Perfil:":"Perfil:","Perfis de usuário com role e org_id":"Perfiles de usuario con rol y org_id","Perfis detectados":"Perfiles detectados","Performance Hoteleira":"Desempeño Hotelero",Pergunta:hW,"Pergunta enviada":"Pregunta enviada","Perguntas Frequentes":"Preguntas Frecuentes","Perguntas de cortesia esgotadas":"Preguntas de cortesÃa agotadas","Perguntas e respostas sobre o SISTUR, AnalÃtico, EDU e Empresarial":"Preguntas y respuestas sobre SISTUR, AnalÃtico, EDU y Empresarial","Perguntas frequentes":"Preguntas frecuentes","Perguntas gratuitas do perÃodo de teste":"Preguntas gratuitas del perÃodo de prueba","Perguntas por Módulo":"Preguntas por Módulo","Pergunte ao Professor Beni... (Enter envia, Shift+Enter quebra linha)":"Pregunte al Profesor Beni... (Enter envÃa, Shift+Enter salta de lÃnea)","Perigo!":"¡Peligro!",Permissivo:fW,"Permissão de microfone negada":"Permiso de micrófono denegado","Permitido neste nÃvel":"Permitido en este nivel","Permitir garimpo controlado para gerar renda":"Permitir minerÃa artesanal controlada para generar ingresos","Permitir mais resorts na costa":"Permitir más resorts en la costa","Permitir mineração controlada em troca de compensação":"Permitir minerÃa controlada a cambio de compensación","Permitir retentativas":"Permitir reintentos",Persistência:"Persistencia","Persistência de Jogos":"Persistencia de Juegos","Persistência de sessões dos 4 jogos":"Persistencia de sesiones de los 4 juegos","Persistência do relatório de validação em":"Persistencia del informe de validación en",Persona:vW,Personalizado:bW,Personalizar:AW,"Personalizar Relatório":"Personalizar Informe","Personalizar e exportar":"Personalizar y exportar","Personalização de Relatórios":"Personalización de Informes","Personalização restaurada ao padrão":"Personalización restaurada a los valores predeterminados","Personalização salva!":"¡Personalización guardada!","Personalize sua Jornada de Aprendizado":"Personaliza tu Recorrido de Aprendizaje","Personalize sua identidade no EDU":"Personaliza tu identidad en EDU",Perto:yW,PerÃodo:"PerÃodo","PerÃodo de Teste":"PerÃodo de Prueba","PerÃodo de cobrança":"PerÃodo de facturación","PerÃodo de teste concluÃdo":"PerÃodo de prueba finalizado","PerÃodo fim (opcional)":"PerÃodo fin (opcional)","PerÃodo inválido":"PerÃodo inválido","PerÃodo inÃcio (opcional)":"PerÃodo inicio (opcional)","PerÃodo:":"PerÃodo:","PerÃodo: {{v0}}":"PerÃodo: {{v0}}","PerÃodo: {{v0}} â {{v1}} · {{v2}} linha(s)":"PerÃodo: {{v0}} â {{v1}} · {{v2}} lÃnea(s)","Pesca Predatória":"Pesca Depredadora","Pesca Sustentável":"Pesca Sostenible","Pesca com explosivos!":"¡Pesca con explosivos!",Peso:SW,"Peso (%)":"Peso (%)","Peso atualizado com sucesso":"Peso actualizado correctamente","Peso deve ser entre 0 e 10":"El peso debe estar entre 0 y 10","Peso do indicador atualizado":"Peso del indicador actualizado","Peso inválido. Use um valor entre 0 e 100.":"Peso no válido. Use un valor entre 0 y 100.","Peso total de resÃduos (kg) ÷ número de pernoites. Solicite relatório à empresa de coleta ou pese internamente.":"Peso total de residuos (kg) ÷ número de pernoctaciones. Solicite informe a la empresa de recolección o pese internamente.","Peso:":"Peso:",Pesos:EW,"Pesos Customizáveis da Organização":"Pesos Personalizables de la Organización","Pesos de pilar atualizados â diagnósticos marcados para recálculo":"Pesos de pilar actualizados â diagnósticos marcados para recálculo","Pesos de pilar restaurados ao padrão":"Pesos de pilar restaurados a los valores predeterminados","Pesos por Indicador":"Pesos por Indicador","Pesos por Pilar":"Pesos por Pilar","Pesos são definidos por relevância estratégica:":"Los pesos se definen por relevancia estratégica:","Pesquisa de demanda turÃstica do municÃpio ou estimativa da Secretaria de Turismo. Média de dias que o turista permanece no destino.":"Investigación de demanda turÃstica del municipio o estimación de la SecretarÃa de Turismo. Promedio de dÃas que el turista permanece en el destino.","Pesquisa de demanda turÃstica municipal. Média de dias de permanência dos visitantes.":"Investigación de demanda turÃstica municipal. Promedio de dÃas de permanencia de los visitantes.","Pesquisa de satisfação aplicada pelo destino ou Observatório de Turismo. Escala de 0 a 10 (aceita 1 casa decimal).":"Encuesta de satisfacción aplicada por el destino u Observatorio de Turismo. Escala de 0 a 10 (acepta 1 decimal).","Pesquisa e Desenvolvimento":"Investigación y Desarrollo","Pesquisa local":"Búsqueda local","Pesquisa web + menções":"Búsqueda web + menciones","Pesquisa web por evidências de calçadas, rampas, sinalização tátil, transporte acessÃvel e atrativos PCD no municÃpio":"Búsqueda web de evidencias de aceras, rampas, seÃ
357±alización táctil, transporte accesible y atractivos para personas con discapacidad en el municipio","Pesquisando evidências...":"Buscando evidencias...","Pesquisando reviews online...":"Buscando reseñas en lÃnea...","Pesquisar por nome, UF ou IBGE...":"Buscar por nombre, UF o IBGE...","Pesquisas acadêmicas e benchmarking":"Investigaciones académicas y benchmarking","Pesquise avaliações do estabelecimento no Google, TripAdvisor e outros":"Busque reseñas del establecimiento en Google, TripAdvisor y otros","Pesquise avaliações em Google, TripAdvisor e outros":"Busque valoraciones en Google, TripAdvisor y otros","Pesquise municÃpios brasileiros na base do IBGE":"Busque municipios brasileños en la base del IBGE",Pessoa:CW,Pessoal:TW,Petróleo:"Petróleo",Picos:PW,"Picos estimados:":"Picos estimados:",Pilar:RW,"Pilar *":"Pilar *","Pilar AO":"Pilar AO","Pilar AO:":"Pilar AO:","Pilar OE":"Pilar OE","Pilar OE:":"Pilar OE:","Pilar Prioritário":"Pilar Prioritario","Pilar RA":"Pilar RA","Pilar RA:":"Pilar RA:","Pilar SISTUR:":"Pilar SISTUR:","Pilar {{p}} é do seu interesse":"El pilar {{p}} es de tu interés","Pilar {{v0}}":"Pilar {{v0}}","Pilar é obrigatório":"El pilar es obligatorio","Pilar: {{v0}}":"Pilar: {{v0}}",Pilares:xW,"Pilares (RA · OE · AO)":"Pilares (RA · OE · AO)","Pilares canônicos":"Pilares canónicos","Pipeline Claude â Tempo Real":"Pipeline Claude â Tiempo Real","Pipeline de 9 etapas, normalização e cálculo dos pilares RA, OE e AO":"Pipeline de 9 etapas, normalización y cálculo de los pilares RA, OE y AO","Pipeline de 9 etapas: fluxo de processamento de dados turÃsticos":"Pipeline de 9 etapas: flujo de procesamiento de datos turÃsticos","Pipeline de geração â providers, fila e streaming":"Pipeline de generación â proveedores, cola y streaming","Placar semanal":"Tabla de posiciones semanal","Placas informam e educam visitantes.":"Los carteles informan y educan a los visitantes.","Plan / Real":"Plan / Real",Planejado:wW,Planejamento:IW,"Planejamento ({{v0}})":"Planificación ({{v0}})","Planejamento Territorial":"Planificación Territorial","Planejamento anual do turismo municipal":"Planificación anual del turismo municipal","Planejamento da sprint":"Planificación del sprint","Planejamento do Program Increment":"Planificación del Incremento de Programa","Planejamento e execução financeira por categoria e fase":"Planificación y ejecución financiera por categorÃa y fase","Planejamento e execução orçamentária em secretarias de turismo":"Planificación y ejecución presupuestaria en secretarÃas de turismo","Planeje o Crescimento":"Planifique el Crecimiento",Plano:DW,"Plano Enterprise: Acesso completo + suporte prioritário.":"Plan Enterprise: Acceso completo + soporte prioritario.","Plano Municipal de Turismo":"Plan Municipal de Turismo","Plano Nacional de Turismo":"Plan Nacional de Turismo","Plano Nacional de Turismo 2024-2027. DisponÃvel em: gov.br/turismo":"Plan Nacional de Turismo 2024-2027. Disponible en: gov.br/turismo","Plano Pro: EDU + AnalÃtico básico + Relatórios.":"Plan Pro: EDU + AnalÃtico básico + Informes.","Plano atual":"Plan actual","Plano de Aula":"Plan de Clase","Plano de Desenvolvimento":"Plan de Desarrollo","Plano de Ensino":"Plan de Enseñanza","Plano de Sustentabilidade":"Plan de Sostenibilidad","Plano de ação em execução":"Plan de acción en ejecución","Plano de ação removido":"Plan de acción eliminado","Plano de desenvolvimento":"Plan de desarrollo","Plano de ensino formal â base para certificação de carga horária e reconhecimento institucional.":"Plan de enseñanza formal â base para la certificación de horas lectivas y el reconocimiento institucional.","Plano excluÃdo":"Plan eliminado","Plano pago":"Plan de pago",Planos:OW,"Planos ConcluÃdos":"Planes Completados","Planos Criados":"Planes Creados","Planos SISTUR":"Planes SISTUR","Planos Territorial e Empresarial: AnalÃtico, EDU, relatórios e Professor Beni.":"Planes Territorial y Empresarial: AnalÃtico, EDU, informes y Profesor Beni.","Planos de Ação":"Planes de Acción","Planos de ação com owner e due_date":"Planes de acción con propietario y due_date","Planos de ação e tendências":"Planes de acción y tendencias","Planos de ação são vinculados a diagnósticos e issues especÃficos.":"Los planes de acción están vinculados a diagnósticos y problemas especÃficos.","Planos e assinatura":"Planes y suscripción","Planos oficiais":"Planes oficiales","Planos para cada perfil do turismo":"Planes para cada perfil de turismo","Planos recentes com status atualizado.":"Planes recientes con estado actualizado.","Planos, assinaturas e concessões":"Planes, suscripciones y concesiones","Planta epÃfita indicadora de floresta preservada":"Planta epÃfita indicadora de bosque preservado","Planta medicinal de altitude":"Planta medicinal de altitud","Plantar espécies nativas e criar cercados de regeneração":"Plantar especies nativas y crear cercados de regeneración","Plantar Ãrvore":"Plantar Ãrbol","Plantar árvores para segurar a terra":"Plantar árboles para sujetar la tierra","Plantas aquáticas limpam a água naturalmente!":"¡Plantas acuáticas limpian el agua naturalmente!","Plantas limpam a água!":"¡Plantas limpian el agua!","Plantações destroem o cerrado.":"Las plantaciones destruyen el cerrado.","Plante uma árvore!":"¡Planta un árbol!","Plantio de espécies nativas para restaurar ecossistemas":"Plantación de especies nativas para restaurar ecosistemas","Plantio massivo de árvores nativas!":"¡Plantación masiva de árboles nativos!","Plantio no deserto":"Plantación en el desierto","Plataforma de diagnóstico territorial baseada nos três pilares (RA, OE e AO) da Análise Estrutural de Mario Beni. Permite criar rodadas, preencher indicadores, calcular o I-SISTUR e gerar relatórios.":"Plataforma de diagnóstico territorial basada en los tres pilares (RA, OE y AO) del Análisis Estructural de Mario Beni. Permite crear rondas, rellenar indicadores, calcular el I-SISTUR y generar informes.","Plataforma educacional":"Plataforma educativa","Plataformas ativas":"Plataformas activas","Player de vÃdeo integrado com tracking de progresso (watch_seconds, progress_percent)":"Reproductor de video integrado con seguimiento de progreso (watch_seconds, progress_percent)","Playfair Display, serif":"Playfair Display, serif",Plástico:"Plástico","Poderia avaliar este documento?":"¿PodrÃa evaluar este documento?","Polinizadora essencial para 75% das culturas agrÃcolas":"Polinizador esencial para el 75% de los cultivos agrÃcolas",Poluição:"Contaminación","Poluição Inesperada":"Contaminación Inesperada","Poluição Plástica":"Contaminación Plástica","Poluição da água":"Contaminación del agua","Poluição na Lagoa":"Contaminación en la Laguna","Poluição plástica no oceano!":"¡Contaminación plástica en el océano!","Poluição tóxica no ar.":"Contaminación tóxica en el aire.","Poluição urbana":"Contaminación urbana","PolÃcia turÃstica":"PolicÃa turÃstica",PolÃtica:"PolÃtica","PolÃtica Pública":"PolÃtica Pública","PolÃtica de Privacidade":"PolÃtica de Privacidad","PolÃtica de Privacidade e Conformidade LGPD":"PolÃtica de Privacidad y Cumplimiento LGPD","PolÃtica de Propriedade Intelectual":"PolÃtica de Propiedad Intelectual","PolÃtica e Planejamento de Turismo no Brasil. São Paulo: Aleph, 2006.":"PolÃtica y Planificación de Turismo en Brasil. São Paulo: Aleph, 2006.","PolÃticas Públicas":"PolÃticas Públicas","PolÃticas públicas":"PolÃticas públicas","Ponto CrÃtico":"Punto CrÃtico","Ponto de encontro e cultura!":"¡Punto de encuentro y cultura!","Ponto onde a água subterrânea brota na superfÃcie":"Punto donde el agua subterránea brota en la superficie","Pontos Fortes":"Puntos Fuertes","Pontos de Atenção":"Puntos de Atención","Pontos fortes":"Fortalezas","Pontos máx.":"Puntos máx.","Pontos sinalizados pelo agente IA validador ({{v0}})":"Puntos señalados por el agente IA validador ({{v0}})","Pontuação do último diagnóstico calculado de cada municÃpio que aceitou o consórcio.":"Puntuación del último diagnóstico calculado de cada municipio que aceptó el consorcio.","Pontuação final:":"Puntuación final:","Pontuação parcial (objetivas):":"Puntuación parcial (objetivas):","Pontuação parcial (questões objetivas):":"Puntuación parcial (preguntas objetivas):","Pontuação:":"Puntuación:","População estimada":"Población estimada","População, PIB per capita, Ãrea territorial, Densidade":"Población, PIB per cápita, Ãrea territorial, Densidad","Populações tradicionais que dependem do manguezal":"Poblaciones tradicionales que dependen del manglar","Por Destino":"Por Destino","Por Destino: planos diretores, legislação municipal, pesquisas locais":"Por Destino: planes directores, legislación municipal, investigaciones locales","Por Escopo":"Por Alcance","Por Pilar":"Por Pilar","Por Tier":"Por Nivel","Por padrão, todos os módulos ficam habilitados. Desabilite para criar pacotes customizados (ex: ICP A apenas com Diagnóstico).":"Por defecto, todos los módulos están habilitados. Deshabilite para crear paquetes personalizados (ej: ICP A solo con Diagnóstico).","Por que RA tem prioridade sobre os outros pilares?":"¿Por qué RA tiene prioridad sobre los otros pilares?","Por que a geração de relatório agora roda em segundo plano?":"¿Por qué la generación de informes ahora se ejecuta en segundo plano?","Por que este curso?":"¿Por qué este curso?","Por que este item se relaciona ao projeto?":"¿Por qué este elemento se relaciona con el proyecto?","Por que não vi nenhum indicador MST no meu pré-preenchimento?":"¿Por qué no vi ningún indicador MST en mi pre-relleno?","Por que preciso validar os dados pré-preenchidos?":"¿Por qué necesito validar los datos pre-rellenados?","Por que recomendamos:":"Por qué lo recomendamos:","Por tempo indeterminado":"Por tiempo indeterminado","Porcentagem (%)":"Porcentaje (%)","Pos.:":"Pos.:","Posicionamento de Preço (ADR)":"Posicionamiento de Precio (ADR)","Posicionamento de preço analisado":"Posicionamiento de precio analizado","Posso acessar os treinamentos a qualquer momento?":"¿Puedo acceder a los entrenamientos en cualquier momento?","Posso trocar de plano depois?":"¿Puedo cambiar de plan después?","Posso usar SISTUR AnalÃtico e Empresarial na mesma organização?":"¿Puedo usar SISTUR AnalÃtico y Empresarial en la misma organización?",Post:MW,"Posts com categorias, imagens moderadas por IA e sistema de likes":"Publicaciones con categorÃas, imágenes moderadas por IA y sistema de likes","Posts fixados são exibid
357os no topo.":"Las publicaciones fijadas se muestran en la parte superior.","Posts podem incluir links e referências.":"Las publicaciones pueden incluir enlaces y referencias.","Posts são organizados por data (mais recentes primeiro).":"Las publicaciones se organizan por fecha (las más recientes primero).","Posts, comentários e moderação":"Publicaciones, comentarios y moderación",Pousada:NW,"Pousada de Montanha":"Posada de Montaña","Pousadas sustentáveis geram renda sem destruir.":"Las posadas sostenibles generan ingresos sin destruir.","Poço artesiano":"Pozo artesiano","Praia Limpa, Coração Cheio":"Playa Limpia, Corazón Lleno","Praia poluÃda â Não expandir rede hoteleira":"Playa contaminada â No expandir red hotelera",Prazo:zW,"Prazo planejado no formato AAAA-MM-DD.":"Plazo planificado en formato AAAA-MM-DD.","Prazo prorrogado e alunos notificados":"Plazo prorrogado y alumnos notificados","Prazos definidos pelo professor serão visÃveis no seu painel.":"Los plazos definidos por el profesor serán visibles en su panel.","Praça limpa e organizada! Os moradores adoraram! â¨":"¡Plaza limpia y organizada! ¡A los residentes les encantó! â¨",Precificação:"Fijación de precios","Precificação dinâmica:":"Fijación de precios dinámica:","Precisa de mais ajuda?":"¿Necesita más ayuda?","Precisa de uma proposta institucional, nota de empenho ou volume acima de 100 usuários?":"¿Necesita una propuesta institucional, nota de compromiso o volumen superior a 100 usuarios?","Precisamos de mais energia! De onde tirar?":"¡Necesitamos más energÃa! ¿De dónde sacarla?","Preciso de ajuda":"Necesito ayuda","Predador de topo essencial para o equilÃbrio marinho":"Depredador tope esencial para el equilibrio marino","Preencha a diária média (ADR) na aba Sazonalidade para gerar sugestões.":"Rellene la tarifa media diaria (ADR) en la pestaña Estacionalidad para generar sugerencias.","Preencha ao menos 3 meses para que o Ãndice de sazonalidade seja calculado. O Ãndice (coeficiente de variação da ocupação) alimenta automaticamente o indicador":"Rellene al menos 3 meses para que se calcule el Ãndice de estacionalidad. El Ãndice (coeficiente de variación de la ocupación) alimenta automáticamente el indicador","Preencha ao menos 50% dos indicadores (":"Rellene al menos el 50% de los indicadores (","Preencha ao menos o tipo e número de UHs para continuar.":"Rellene al menos el tipo y número de UHs para continuar.","Preencha ao menos um indicador para habilitar o cálculo":"Complete al menos un indicador para habilitar el cálculo","Preencha as informações da questão":"Rellena la información de la pregunta","Preencha as informações do treinamento":"Completa la información de la capacitación","Preencha chave, tÃtulo e conteúdo.":"Rellena clave, tÃtulo y contenido.","Preencha o assunto e o conteúdo do e-mail":"Rellene el asunto y el contenido del correo electrónico","Preencha o formulário descrevendo o conteúdo que você precisa":"Rellene el formulario describiendo el contenido que necesita","Preencha os KPIs de hospitalidade para gerar o diagnóstico":"Rellene los KPIs de hospitalidad para generar el diagnóstico","Preencha os dados do novo usuário. Ele receberá acesso imediato.":"Rellene los datos del nuevo usuario. Recibirá acceso inmediato.","Preencha os dados para calcular":"Complete los datos para calcular","Preencha os dados para criar um novo treinamento":"Completa los datos para crear una nueva capacitación","Preencha os dados para criar uma nova organização":"Rellene los datos para crear una nueva organización","Preencha os detalhes do projeto. {{v0}} ação(ões) serão convertidas em tarefas.":"Rellene los detalles del proyecto. {{v0}} acción(es) serán convertidas en tareas.","Preencha seu perfil educacional com áreas de interesse, nÃvel de experiência e disponibilidade semanal. Isso permite recomendações personalizadas de conteúdo.":"Complete su perfil educativo con áreas de interés, nivel de experiencia y disponibilidad semanal. Esto permite recomendaciones personalizadas de contenido.","Preencha seu perfil educacional para receber recomendações personalizadas de conteúdo baseadas nos seus interesses e objetivos.":"Rellene su perfil educativo para recibir recomendaciones personalizadas de contenido basadas en sus intereses y objetivos.","Preencha seu perfil para receber recomendações de cursos e trilhas personalizadas de acordo com seus interesses e objetivos.":"Rellene su perfil para recibir recomendaciones de cursos y rutas personalizadas de acuerdo con sus intereses y objetivos.","Preencha todos os campos obrigatórios":"Rellena todos los campos obligatorios","Preencher Dados":"Completar Datos","Preencher Perfil":"Completar Perfil","Preencher dados manualmente por formulário":"Rellenar datos manualmente por formulario","Preencher o formulário com um exemplo válido":"Completar el formulario con un ejemplo válido",Preenchido:jW,"Preenchido automaticamente":"Rellenado automáticamente","Preenchidos pela equipe":"Completados por el equipo",Preenchimento:kW,"Preenchimento Manual":"Carga Manual","Preenchimento assistido com dados de APIs oficiais (IBGE, CADASTUR, Mapa do Turismo)":"Relleno asistido con datos de APIs oficiales (IBGE, CADASTUR, Mapa del Turismo)","Preenchimento geral":"Avance general de registro","Preenchimento manual":"Relleno manual","Prefeitura, empresa...":"Ayuntamiento, empresa...",Preferências:"Preferencias",Premium:_W,"Preparando para retomar de onde você parou...":"Preparando para retomar desde donde lo dejaste...","Preparando vÃdeo seguro...":"Preparando video seguro...","Prescrito porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}":"Prescrito porque el indicador {{0}} está {{1}} en el pilar {{2}}.{{3}}",Prescrição:"Prescripción","Prescrição DeterminÃstica":"Prescripción DeterminÃstica","Prescrição de Capacitação (SISTUR EDU)":"Prescripción de Capacitación (SISTUR EDU)","Prescrição de capacitação baseada em diagnóstico":"Prescripción de capacitación basada en el diagnóstico","Prescrição determinÃstica: cada resultado de diagnóstico mapeia para capacitações especÃficas":"Prescripción determinÃstica: cada resultado de diagnóstico mapea a capacitaciones especÃficas",Prescrições:"Prescripciones","Prescrições (SISTUR EDU)":"Prescripciones (SISTUR EDU)","Prescrições Ativas":"Prescripciones Activas","Prescrições EDU":"Prescripciones EDU","Prescrições EDU para os indicadores deste projeto":"Prescripciones EDU para los indicadores de este proyecto","Prescrições SISTUR EDU":"Prescripciones SISTUR EDU","Prescrições automáticas baseadas nos indicadores crÃticos e em atenção":"Prescripciones automáticas basadas en los indicadores crÃticos y en atención","Prescrições automáticas por regras":"Prescripciones automáticas por reglas","Prescrições de capacitação":"Prescripciones de capacitación","Prescrições de capacitação direcionadas":"Prescripciones de capacitación dirigid
357as","Prescrições e cursos:":"Prescripciones y cursos:","Prescrições são geradas para cada issue encontrada.":"Se generan prescripciones para cada problema encontrado.","Prescrições vinculadas a capacitações":"Prescripciones vinculadas a capacitaciones","Prescrições vs. Relatórios":"Prescripciones vs. Informes",Presença:"Asistencia","Presença Digital":"Presencia Digital","Presença Digital Automática":"Presencia Digital Automática","Presença Digital Pública (site e redes)":"Presencia Digital Pública (sitio web y redes)","Presença Digital â site oficial e diretórios (Auto)":"Presencia Digital â sitio oficial y directorios (Auto)","Presença digital analisada":"Presencia digital analizada","Presença digital analisada com sucesso":"Presencia digital analizada con éxito","Presença em Redes Sociais":"Presencia en Redes Sociales","Presença, progresso em atividades e desempenho em provas â consolidado por aluno.":"Asistencia, progreso en actividades y desempeño en exámenes â consolidado por estudiante.","Preservar espécies nativas!":"¡Preservar especies nativas!","Preservação total sem desenvolvimento":"Preservación total sin desarrollo","Preserve as montanhas e suas nascentes.":"Conserva las montañas y sus nacientes.","Preserve nascentes, fauna endêmica e comunidades tradicionais das montanhas.":"Conserva nacientes, fauna endémica y comunidades tradicionales de las montañas.","Pressionar por prazos mais agressivos com apoio legal":"Presionar por plazos más agresivos con apoyo legal","Pressione Enter ou clique no botão para adicionar uma aula":"Presiona Enter o haz clic en el botón para añadir una clase","Preste atenção ao virar â memorize as posições!":"¡Presta atención al voltear â memoriza las posiciones!",Preview:qW,Preço:"Precio","Preço & Posicionamento":"Precio & Posicionamiento","Preço da Ganância":"Precio de la Codicia","Preço/Posicionamento":"Precio/Posicionamiento","Preços vigentes. O plano Territorial (gestão pública) é contratado por proposta/empenho; os demais podem ser assinados online e alterados a qualquer momento.":"Precios vigentes. El plan Territorial (gestión pública) se contrata por propuesta/compromiso de pago; los demás se pueden contratar online y modificar en cualquier momento.","Primata endêmico da Mata Atlântica em risco crÃtico":"Primate endémico de la Mata Atlántica en riesgo crÃtico","Primeira avaliação":"Primera evaluación","Primeira avaliação de um destino":"Primera evaluación de un destino","Primeira iteração de desenvolvimento":"Primera iteración de desarrollo","Primeira rodada para este destino. Comparativos estarão disponÃveis após a segunda rodada.":"Primera ronda para este destino. Las comparaciones estarán disponibles después de la segunda ronda.","Primeiro passo é escolher o municÃpio ou destino turÃstico que será avaliado.":"El primer paso es elegir el municipio o destino turÃstico que será evaluado.","Primeiros Passos":"Primeros Pasos","Principais Mercados Emissores":"Principales Mercados Emisores","Principais gargalos":"Principales cuellos de botella",Principal:LW,"Principal ameaça aos manguezais: poluição por esgoto":"Principal amenaza a los manglares: contaminación por aguas residuales","PrincÃpios Fundamentais":"Principios Fundamentales","PrincÃpios sistêmicos de Mario Beni aplicados ao turismo: pilares RA, OE e AO, regras IGMA e interpretação territorial dos diagnósticos.":"Principios sistémicos de Mario Beni aplicados al turismo: pilares RA, OE y AO, reglas IGMA e interpretación territorial de los diagnósticos.","PrincÃpios sistêmicos do turismo sustentável":"Principios sistémicos del turismo sostenible",Prioridade:UW,"Prioridade #{{v0}}":"Prioridad #{{v0}}","Prioridade da tarefa.":"Prioridad de la tarea.","Prioridade {{v0}}":"Prioridad {{v0}}","Prioridades editoriais":"Prioridades editoriales","Prioriza dados integráveis":"Prioriza datos integrables",Priorização:"Priorización","Priorização automática por severidade":"Priorización automática por severidad",'Priorize alertas com "governance_block" pois impedem certificação do destino.':'Priorice alertas con "governance_block" ya que impiden la certificación del destino.',"Privacidade competitiva":"Privacidad competitiva","Privacidade no Social Turismo":"Privacidad en el Social Turismo","Problema de login/autenticação":"Problema de inicio de sesión/autenticación","Problema:":"Problema:","Problemas identificados com severidade (crÃtico/moderado/bom)":"Problemas identificados con severidad (crÃtico/moderado/bueno)","Problemas identificados pelo Motor IGMA":"Problemas identificados por el Motor IGMA","Proc.":"Proc.",Procedência:"Procedencia","Procedência dos Dados":"Procedencia de los Datos","Procedência dos dados:":"Procedencia de los datos:",Processados:BW,Processamento:FW,"Processando...":"Procesando...","Processar diagnóstico":"Procesar diagnóstico","Processo de cadastramento e benefÃcios da formalização":"Proceso de registro y beneficios de la formalización","Processo de transformar resÃduos em novos produtos":"Proceso de transformar residuos en nuevos productos",Procon:GW,"Product Backlog":"Lista de pendientes del producto","Produtivida
357de por Colaborador":"Productividad por Colaborador","Produtos certificados alcançam mercados do Brasil inteiro!":"¡Productos certificados alcanzan mercados de todo Brasil!","Produz mais de 50% do oxigênio da atmosfera terrestre":"Produce más del 50% del oxÃgeno de la atmósfera terrestre",Produção:"Producción",Professor:VW,"Professor Beni":"Profesor Beni","Professor Beni (IA)":"Professor Beni (IA)","Professor Beni AI (chatbot com TTS)":"Professor Beni AI (chatbot con TTS)","Professor Beni não respondeu. Tente novamente.":"El Profesor Beni no respondió. Inténtelo de nuevo.","Professor Beni â Regras de Conversa & Contexto":"Profesor Beni â Reglas de Conversación y Contexto","Professor Beni, contexto dos relatórios, camada semântica, estrutura de análise e integração MCP.":"Professor Beni, contexto de los informes, capa semántica, estructura de análisis e integración MCP.","Professor Mario Beni":"Profesor Mario Beni",'Professor Mario Beni â acadêmico brasileiro, autor de "Análise Estrutural do Turismo". Didático, paciente, apaixonado pelo turismo sustentável. Combina rigor acadêmico com linguagem acessÃvel; sempre conecta teoria à prática. Idioma: Português brasileiro.':'Professor Mario Beni â académico brasileño, autor de "Análisis Estructural del Turismo". Didáctico, paciente, apasionado por el turismo sostenible. Combina rigor académico con lenguaje accesible; siempre conecta teorÃa con práctica. Idioma: Portugués brasileño.',Professores:$W,"Professores com 5+ alunos referenciados são isentos automaticamente!":"¡Profesores con 5+ alumnos referenciados son exentos automáticamente!","Professores gerenciam turmas, prazos, diário de classe e podem indicar novos alunos via código de referência. Têm acesso a leaderboard, mensagens e relatórios de aproveitamento.":"Los profesores gestionan grupos, plazos, diario de clase y pueden indicar nuevos alumnos vÃa código de referencia. Tienen acceso a leaderboard, mensajes e informes de rendimiento.","Profissionais autônomos":"Profesionales autónomos","Profundidade adequada para gestão ativa":"Profundidad adecuada para gestión activa","Programa de Limpeza":"Programa de Limpieza","Programa de Reciclagem":"Programa de Reciclaje","Programa de Referência":"Programa de Referencia",Progresso:HW,"Progresso do Diagnóstico":"Progreso del Diagnóstico","Progresso do Preenchimento":"Progreso del Registro","Progresso do aluno com watch_seconds":"Progreso del alumno con watch_seconds","Progresso do tópico":"Progreso del tema","Progresso geral":"Progreso general","Progresso por Pilar":"Progreso por Pilar","Progresso salvo â pode sair e voltar":"Progreso guardado â puede salir y volver","Progresso, frequência e identificação automática de alunos em risco.":"Progreso, asistencia e identificación automática de estudiantes en riesgo.",Progressão:"Progresión","Progressão Curricular":"Progresión Curricular","Proibir pesca por um mês":"Prohibir pesca por un mes",Projeto:WW,"Projeto Criado":"Proyecto Creado","Projeto criado com sucesso!":"¡Proyecto creado correctamente!","Projeto excluÃdo":"Proyecto excluido","Projeto não encontrado":"Proyecto no encontrado",Projetos:QW,"Projetos Ativos":"Proyectos Activos","Projetos Atrasados":"Proyectos Atrasados","Projetos Atrasados ({{v0}})":"Proyectos Atrasados ({{v0}})","Projetos ativos, tarefas e prazos":"Proyectos activos, tareas y plazos","Projetos bloqueados até assinar":"Proyectos bloqueados hasta suscribirse","Projetos criados":"Proyectos creados","Projetos criados pelo Modo Prescrição do diagnóstico já trazem os indicadores-alvo com baseline registrado. Para projetos antigos, recrie a partir do diagnóstico para ativar a trilha de impacto.":"Los proyectos creados por el Modo Prescripción del diagnóstico ya incluyen los indicadores objetivo con una lÃnea base registrada. Para proyectos antiguos, vuelva a crearlos a partir del diagnóstico para activar la ruta de impacto.","Projetos de grande investimento turÃstico":"Proyectos de gran inversión turÃstica","Projetos de intervenção da organização, com status e vÃnculo diagnóstico.":"Proyectos de intervención de la organización, con estado y vÃnculo diagnóstico.","Projetos e planos ativos":"Proyectos y planes activos","Projetos em Andamento ({{v0}})":"Proyectos en Curso ({{v0}})","Projetos que ultrapassaram a data de término prevista":"Proyectos que superaron la fecha de finalización prevista","Promover um destino com problemas ambientais graves ou falhas operacionais sérias pode gerar danos à reputação e frustrar turistas. Marketing só é liberado quando pilares essenciais estão saudáveis.":"Promover un destino con problemas ambientales graves o fallos operativos serios puede generar daños a la reputación y frustrar a los turistas. El marketing solo se libera cuando los pilares esenciales están saludables.","Promoção bloqueada se RA ou AO crÃticos":"Promoción bloqueada si RA o AO crÃticos","Promoção bloqueada se RA ou AO estão crÃticos. Protege a reputação do destino.":"Promoción bloqueada si RA o AO están crÃticos. Protege la reputación del destino.","Promoção do destino":"Promoción del destino","Promoção e marketing do destino":"Promoción y marketing del destino","Promoções e cortesias com acesso sem limite de perguntas.":"Promociones y cortesÃas con acceso sin lÃmite de preguntas.",Prompt:KW,Pronto:YW,"Pronto para a missão!":"¡Listo para la misión!","Pronto para calcular":"Listo para calcular","Pronto para calcular diagnóstico":"Listo para calcular el diagnóstico","Propor um plano de uso sustentável que atenda todos":"Proponer un plan de uso sostenible que atienda a todos",Prorrogar:JW,"Prorrogar prazo":"Prorrogar plazo","Protege e organiza a comunidade":"Protege y organiza a la comunidad","Protegem recursos hÃdricos e biodiversidade":"Protegen recursos hÃdricos y biodiversidad","Proteja ecossistemas costeiros contra poluição marinha, turismo predatório e erosão.":"Proteja ecosistemas costeros contra la contaminación marina, el turismo depredador y la erosión.","Proteja os ecossistemas costeiros do Brasil.":"Proteja los ecosistemas costeros de Brasil.","Proteção Costeira":"Protección Costera","Proteção contra queimadas!":"¡Protección contra incendios!","Proteção máxima da natureza!":"¡Protección máxima de la naturaleza!",Prova:XW,"Prova *":"Examen *","Prova / Exame":"Prueba / Examen","Prova iniciada!":"¡Prueba iniciada!",Provas:ZW,"Provas Finais da Trilha":"Exámenes Finales de la Ruta","Provas cadastradas":"Exámenes registrados","Provas com anti-cheat e histórico":"Pruebas con anti-cheat e historial","Provas, trilhas e treinamentos atribuÃdos pelos seus professores":"Pruebas, rutas y entrenamientos asignados por sus profesores","Provas: Alcance a nota mÃnima definida para cada exame.":"Pruebas: Alcance la nota mÃnima definida para cada examen.",Provedor:e4,"Provedor de VÃdeo":"Proveedor de Video","Provedor não registrado (relatório anterior à v1.38.62)":"Proveedor no registrado (informe anterior a la v1.38.62)",Provider:a4,"Provider Falhou":"Proveedor Falló","Provider OK":"Proveedor OK",Prática:"Práctica","Práticas de sustentabilidade ambiental no turismo":"Prácticas de sostenibilidad ambiental en el turismo","Práticas identificadas":"Prácticas identificadas","Pré-preencher":"Precompletar","Pré-preenchido":"Pre-rellenado","Pré-preenchido (Reviews)":"Pre-rellenado (Reviews)","Pré-preenchido:":"Pre-rellenado:","Pré-preenchimento":"Pre-relleno","Pré-preenchimento Automático":"Pre-relleno Automático","Pré-preenchimento automático: {{v0}}/{{v1}} itens":"Pre-relleno automático: {{v0}}/{{v1}} Ãtems","Pré-preenchimento de Dados Oficiais":"Precompletado de Datos Oficiales","Pré-preenchimento de tipo, porte e razão social":"Pre-rellenado de tipo, tamaño y razón social","Pré-requisitos":"Prerrequisitos","Pré-visualização ao vivo":"Vista previa en vivo","Pré-visualização da importação":"Vista previa de la importación","Prévia gratuita encerrada":"Vista previa gratuita finalizada",Próxima:"Siguiente","Próxima Revisão Recomendada":"Próxima Revisión Recomendada",Próximo:"Siguiente","Próximo passo: Complementar dados":"Siguiente paso: Complementar datos","Próximo â
357¡ï¸":"Siguiente â¡ï¸","Próximos eventos":"Próximos eventos","Próximos eventos (Observatório)":"Próximos eventos (Observatorio)","Próximos itens a serem trabalhados":"Próximos elementos por trabajar","Próximos passos":"Próximos pasos",Publicada:o4,Publicado:i4,Publicados:t4,Publicar:r4,Pular:s4,"Pular (não adicionar carta)":"Omitir (no añadir carta)","Pular para Preenchimento Manual":"Saltar a Relleno Manual","Pular para o conteúdo":"Saltar al contenido","Pular tutorial":"Omitir tutorial","Puxa automaticamente conectividade aérea (ANAC), cobertura de telecom (ANATEL), eventos do destino, Mapa do Turismo e indicadores socioeconômicos do municÃpio.":"Extrae automáticamente conectividad aérea (ANAC), cobertura de telecom (ANATEL), eventos del destino, Mapa del Turismo e indicadores socioeconómicos del municipio.",Página:"Página","Página Pública":"Página Pública","Página não carrega/lenta":"Página no carga/lenta","Pérola Natural":"Perla Natural","Pérola formada naturalmente":"Perla formada naturalmente",Público:"Público","Público estimado":"Público estimado","Público-Alvo":"Público Objetivo","Público-alvo":"Público objetivo","Público-alvo compatÃvel":"Público objetivo compatible","Público:":"Público:","Público: {{v0}}":"Público: {{v0}}","QR Code de verificação":"Código QR de verificación","QR Code permite verificação pública por qualquer pessoa.":"El QR Code permite la verificación pública por cualquier persona.","QR code + verificação pública + exames com anti-cheat":"QR code + verificación pública + exámenes con anti-cheat","QR code + verificação pública + validade":"QR code + verificación pública + validez","Quais capacitações do catálogo servem para gestores no pilar Organização Estrutural?":"¿Qué capacitaciones del catálogo sirven para gestores en el pilar de Organización Estructural?","Quais capacitações priorizar para a minha equipe?":"Qué capacitaciones priorizar para mi equipo?","Quais formas de pagamento são aceitas?":"¿Qué formas de pago son aceptadas?","Quais indicadores MST são preenchidos automaticamente?":"¿Qué indicadores MST se rellenan automáticamente?","Quais indicadores estão disponÃveis no Empresarial?":"¿Qué indicadores están disponibles en Empresarial?","Quais pilares do turismo sustentável te interessam?":"¿Qué pilares del turismo sostenible te interesan?","Quais são as fontes de dados oficiais?":"¿Cuáles son las fuentes de datos oficiales?","Quais são os principais gargalos do meu destino hoje?":"Cuáles son los principales cuellos de botella de mi destino hoy?","Quais são seus objetivos de aprendizado?":"¿Cuáles son sus objetivos de aprendizaje?","Quais áreas do turismo sustentável te interessam?":"¿Qué áreas del turismo sostenible te interesan?","Quaisquer litÃgios serão dirimidos pelo Foro da Comarca da sede do Titular, com exclusão de qualquer outro por mais privilegiado que seja.":"Cualquier litigio será dirimido por el Foro de la Comarca de la sede del Titular, con exclusión de cualquier otro por más privilegiado que sea.","Qual a diferença entre Organizações Públicas e Privadas?":"¿Cuál es la diferencia entre Organizaciones Públicas y Privadas?","Qual a importância das áreas de preservação permanente (APP)?":"¿Cuál es la importancia de las áreas de preservación permanente (APP)?","Qual animal é considerado polinizador essencial?":"¿Qué animal es considerado polinizador esencial?","Qual bioma brasileiro é considerado berço das águas?":"¿Qué bioma brasileño es considerado cuna de las aguas?","Qual foi o resultado do diagnóstico mais recente de Barretos? Quais pilares estão em Atenção ou CrÃtico?":"¿Cuál fue el resultado del diagnóstico más reciente de Barretos? ¿Qué pilares están en Atención o CrÃtico?","Qual gás as árvores absorvem da atmosfera?":"¿Qué gas absorben los árboles de la atmósfera?","Qual gás é o principal causador do efeito estufa?":"¿Qué gas es el principal causante del efecto invernadero?","Qual material leva mais tempo para se decompor?":"¿Qué material tarda más tiempo en descomponerse?","Qual modelo de IA gera os relatórios do SISTUR?":"¿Qué modelo de IA genera los informes de SISTUR?","Qual nÃvel escolher?":"¿Qué nivel elegir?","Qual prática agrÃcola preserva o solo?":"¿Qué práctica agrÃcola preserva el suelo?","Qual prática reduz a pegada de carbono?":"¿Qué práctica reduce la huella de carbono?","Qual seu nÃvel de experiência?":"¿Cuál es su nivel de experiencia?","Qual é a função da camada de ozônio?":"¿Cuál es la función de la capa de ozono?","Qual é a função dos corredores ecológicos?":"¿Cuál es la función de los corredores ecológicos?","Qual é a principal causa de extinção de espécies?":"¿Cuál es la principal causa de extinción de especies?","Qual é a principal fonte de energia do Brasil?":"¿Cuál es la principal fuente de energÃa de Brasil?","Qual é o efeito do desmatamento nos rios?":"¿Cuál es el efecto de la deforestación en los rÃos?","Qual é o maior bioma brasileiro?":"¿Cuál es el bioma brasileño más grande?","Qual é o maior recife de coral do mundo?":"¿Cuál es el arrecife de coral más grande del mundo?","Qual é o papel dos manguezais?":"¿Cuál es el papel de los manglares?","Qual é sua área de atuação?":"¿Cuál es su área de actuación?",Qualidade:n4,"Qualidade da Infraestrutura":"Calidad de la Infraestructura","Qualidade da água":"Calidad del agua","Qualidade de Serviço":"Calidad de Servicio","Qualidade de Serviços":"Calidad de Servicios","Qualidade dos Dados Oficiais":"Calidad de los Datos Oficiales","Qualidade: {{v0}}%":"Calidad: {{v0}}%","Qualificação de Serviços TurÃsticos":"Cualificación de Servicios TurÃsticos","Qualificação profissional":"Cualificación profesional","Qualquer conteúdo não-turÃstico":"Cualquier contenido no turÃstico","Qualquer pessoa com o link poderá ler esta conversa, sem precisar entrar no SISTUR.":"Cualquier persona con el enlace podrá leer esta conversación, sin necesidad de entrar en SISTUR.","Quando não há esperança, partem.":"Cuando no hay esperanza, se van.","Quando o usuário tem diagnósticos/treinamentos/projetos selecionados, esses dados são anexados ao prompt:\n- Diagnóstico selecionado: tÃtulo, destino, status, tipo, scores dos pilares, flags IGMA e interpretação\n- Treinamentos disponÃveis: tÃtulo, pilar, tipo\n- Projetos: nome, status, metodologia, destino\n- Diagnósticos acessÃveis (até 10 mais recentes) via RLS\n- Relatórios gerados (até 5 mais recentes) com trecho de até 1500 caracteres, via RLS":`Cuando el usuario tiene diagnósticos/entrenamientos/proyectos seleccionados, estos datos se adjuntan al prompt: 358- Diagnóstico seleccionado: tÃtulo, destino, estado, tipo, puntuaciones de los pilares, flags IGMA e interpretación 359- Entrenamientos disponibles: tÃtulo, pilar, tipo 360- Proyectos: nombre, estado, metodologÃa, destino 361- Diagnósticos accesibles (hasta 10 más recientes) vÃa RLS 362- Informes generados (hasta 5 más recientes) con fragmento de hasta 1500 caracteres, vÃa RLS`,"Quando o usuário tem diagnósticos/treinamentos/projetos selecionados, esses dados são anexados ao prompt: - Diagnóstico selecionado: tÃtulo, destino, status, tipo, scores dos pilares, flags IGMA e interpretação - Treinamentos disponÃveis: tÃtulo, pilar, tipo - Projetos: nome, status, metodologia, destino - Diagnósticos acessÃveis (até 10 mais recentes) via RLS - Relatórios gerados (até 5 mais recentes) com trecho de até 1500 caracteres, via RLS":"Cuando el usuario tiene diagnósticos/entrenamientos/proyectos seleccionados, estos datos se adjuntan al prompt: - Diagnóstico seleccionado: tÃtulo, destino, estado, tipo, puntuaciones de los pilares, flags IGMA e interpretación - Entrenamientos disponibles: tÃtulo, pilar, tipo - Proyectos: nombre, estado, metodologÃa, destino - Diagnósticos accesibles (hasta 10 más recientes) vÃa RLS - Informes generados (hasta 5 más recientes) con fragmento de hasta 1500 caracteres, vÃa RLS","Quando todos ajudam, tudo fica melhor.":"Cuando todos ayudan, todo mejora.","Quando um indicador regride mais de 2% em dois ciclos consecutivos, o sistema dispara alerta automático para gestores e registra evento auditável no painel.":"Cuando un indicador retrocede más del 2% en dos ciclos consecutivos, el sistema dispara una alerta automática para los gestores y registra un evento auditable en el panel.","Quando um professor atribuir provas, trilhas ou treinamentos, eles aparecerão aqui.":"Cuando un profesor asigne pruebas, rutas o entrenamientos, aparecerán aquÃ.","Quando uma organização tem contexto próprio, ele substitui o global ao gerar relatórios daquela org.":"Cuando una organización tiene contexto propio, este reemplaza al global al generar informes de esa org.","Quando é recomendada a próxima revisão?":"¿Cuándo se recomienda la próxima revisión?","Quantas horas por semana você pode dedicar aos estudos?":"¿Cuántas horas por semana puedes dedicar al estudio?","Quantas tentativas extras adicionar":"Cuántos intentos adicionales agregar",Quantidade:c4,"Quantidade de perguntas":"Cantidad de preguntas","Quanto menor, melhor":"Cuanto menor, mejor","Quarta iteração de desenvolvimento":"Cuarta iteración de desarrollo","Quedas superiores a 2 pontos percentuais em 2 rodadas consecutivas.
362Comparação interna deste":"CaÃdas superiores a 2 puntos porcentuales en 2 rondas consecutivas. Comparación interna de este","Queima de lixo":"Quema de basura","Queimada na Floresta":"Incendio forestal","Queimada na floresta!":"¡Incendio forestal!","Quem já tem conta é vinculado ao entrar pelo link; quem ainda não tem cria a conta com o código. Depois disso você adiciona a pessoa à turma em Grupos.":"Quien ya tiene cuenta se vincula al ingresar por el link; quien aún no tiene, crea la cuenta con el código. Después de eso, usted añade a la persona a la clase en Grupos.","Quem não entregou":"Quién no entregó","Quem não iniciou":"Quién no inició","Quem protege a água é pago por isso! Modelo justo e sustentável.":"¡Quien protege el agua es pagado por ello! Modelo justo y sostenible.","Quem recebe":"Quién recibe","Quem são os agentes-alvo dos cursos?":"¿Quiénes son los agentes objetivo de los cursos?","Quer experimentar agora?":"¿Quiere probar ahora?","Quero contratar":"Quiero contratar",'Questione o resultado da prova "{{v0}}". Descreva os motivos do recurso de forma clara e objetiva.':'Cuestione el resultado de la prueba "{{v0}}". Describa los motivos del recurso de forma clara y objetiva.',Questão:"Pregunta","Questão atualizada com sucesso!":"Pregunta actualizada con éxito!","Questão criada com sucesso":"Pregunta creada con éxito","Questão criada com sucesso!":"Pregunta creada con éxito!","Questão excluÃda":"Pregunta eliminada",Questões:"Preguntas","Questões dissertativas aguardam correção manual do professor":"Preguntas de desarrollo esperan corrección manual del profesor","Questões selecionadas aleatoriamente do banco":"Preguntas seleccionadas aleatoriamente del banco","Questões selecionadas para a nova prova":"Preguntas seleccionadas para el nuevo examen","Questões são selecionadas aleatoriamente nas provas.":"Las preguntas se seleccionan aleatoriamente en los exámenes.",Quizzes:d4,"R - Responsável":"R - Responsable","R$ 150k direto de R$ 500k total = 30%":"R$ 150k directos de R$ 500k total = 30%","R$ 180,00 por quarto disponÃvel":"R$ 180,00 por habitación disponible","R$ 45 milhões/ano":"R$ 45 millones/año","R$ 450.000 ÷ 1.200 diárias = R$ 375,00":"R$ 450.000 ÷ 1.200 diarias = R$ 375,00","R$ 520,00 por quarto disponÃvel":"R$ 520,00 por habitación disponible","R$ por habitante/ano":"R$ por habitante/año","RA (Relações Ambientais), OE (Organização Estrutural), AO (Ações Operacionais). Nomenclatura fixa.":"RA (Relaciones Ambientales), OE (Organización Estructural), AO (Acciones Operacionales). Nomenclatura fija.","RA (Relações Ambientais): Avalia sustentabilidade e recursos naturais.":"RA (Relaciones Ambientales): Evalúa sostenibilidad y recursos naturales.","RA - Recursos e Atrativos":"RA - Recursos y Atractivos","RA - Relações Ambientais":"RA - Relaciones Ambientales","RA / OE / AO:":"RA / OE / AO:","RA = CRÃTICO":"RA = CRÃTICO","RA = CRÃTICO ou AO = CRÃTICO":"RA = CRÃTICO o AO = CRÃTICO","RA CrÃtico":"RA CrÃtico","RA CrÃtico bloqueia expansão estrutural (OE) e marketing.":"RA CrÃtico bloquea expansión estructural (OE) y marketing.","RA está CrÃtico?":"¿RA está CrÃtico?","RA é a Base do Sistema":"RA es la Base del Sistema","RA â 4 indicadores":"RA â 4 indicadores","RA ⥠80 por 3 turnos":"RA ⥠80 por 3 turnos","RA/OE/AO mÃn:":"RA/OE/AO mÃn:","RA001,75,IBGE":"RA001,75,IBGE","RA002,92,Pesquisa Local":"RA002,92,Encuesta Local","RA:":"RA:","RAIS â Relação Anual de Informações Sociais (MTE)":"RAIS â Relación Anual de Información Social (MTE)",RA_LIMITATION:l4,"RELATÃRIO DE DIAGNÃSTICO SISTUR":"INFORME DE DIAGNÃSTICO SISTUR","RELATÃRIO ENTERPRISE â DIAGNÃSTICO OPERACIONAL & ESTRATÃGICO":"INFORME ENTERPRISE â DIAGNÃSTICO OPERATIVO & ESTRATÃGICO","RETURNS boolean LANGUAGE sql STABLE SECURITY DEFINER AS $$":"RETURNS boolean LANGUAGE sql STABLE SECURITY DEFINER AS $$",ROI:u4,"ROI = (retorno anual â investimento) ÷ investimento; payback = investimento ÷ retorno anual. Investimento vem do orçamento do projeto.":"ROI = (retorno anual â inversión) ÷ inversión; payback = inversión ÷ retorno anual. La inversión proviene del presupuesto del proyecto.","ROI de projeto:":"ROI de proyecto:","RPG Missão Bioma: Aventura narrativa com escolhas.":"RPG Misión Bioma: Aventura narrativa con elecciones.","RPG narrativo onde suas escolhas determinam o destino de biomas brasileiros. Restaure a natureza através de decisões estratég
362icas.":"RPG narrativo donde tus elecciones determinan el destino de los biomas brasileños. Restaura la naturaleza mediante decisiones estratégicas.","RPG â Missão Bioma":"RPG â Misión Bioma","RPG: narrativas interativas com escolhas que afetam indicadores ambientais":"RPG: narrativas interactivas con elecciones que afectan indicadores ambientales",RSS:m4,"RaciocÃnio profundo":"Razonamiento profundo",Radiografia:p4,"Radiografia do Destino":"RadiografÃa del Destino","Radiografia dos Pilares":"RadiografÃa de los Pilares","Rainforest Alliance":"Rainforest Alliance","Raio de influência: {{v0}} km":"Radio de influencia: {{v0}} km","Ranking de Turmas":"Clasificación de Grupos","Ranking interno das unidades":"Ranking interno de las unidades",Rascunho:g4,"Rascunho salvo":"Borrador guardado","Rascunho salvo automaticamente":"Borrador guardado automáticamente",Rascunhos:h4,"Rastreamento de presença, interações e alertas automáticos para certificação AVA":"Seguimiento de asistencia, interacciones y alertas automáticas para la certificación AVA","Rastreio visual desde a fonte original até o score final do diagnóstico â {{v0}} indicadores processados. Passe o mouse sobre qualquer nó para destacar o fluxo correspondente.":"Rastreo visual desde la fuente original hasta la puntuación final del diagnóstico â {{v0}} indicadores procesados. Pase el ratón sobre cualquier nodo para destacar el flujo correspondiente.","Razão (0-1)":"Razón (0-1)","Razão social:":"Razón social:","RaÃzes seguram o solo!":"¡Las raÃces sujetan el suelo!","RaÃzes seguram o solo! Solução duradoura!":"¡Las raÃces sujetan el suelo! ¡Solución duradera!",Realizado:f4,"Realize ações administrativas sobre licenças especÃficas.":"Realice acciones administrativas sobre licencias especÃficas.",Reaproveitado:v4,"Reativar indicador":"Reactivar indicador","Recalculandoâ¦":"Recalculandoâ¦",Recalcular:b4,"Recalcular agora":"Recalcular ahora","Recalcular todos ({{v0}})":"Recalcular todos ({{v0}})","Recalcule para incorporar os novos valores de IBGE, CADASTUR, STN ou Mapa do Turismo.":"Recalcule para incorporar los nuevos valores de IBGE, CADASTUR, STN o Mapa do Turismo.","Recarregando vÃdeo...":"Recargando video...",Recarregar:A4,"Recarregue a página (Ctrl+Shift+R) e tente novamente. Se persistir, troque de rede.":"Recarga la página (Ctrl+Shift+R) e intenta de nuevo. Si el problema persiste, cambia de red.","Recarregue a página (Ctrl+Shift+R). Se persistir, contate o suporte.":"Recarga la página (Ctrl+Shift+R). Si el problema persiste, contacta al soporte.","Receba recomendações personalizadas de treinamentos":"Recibe recomendaciones personalizadas de capacitaciones","Recebe atualizações":"Recibe actualizaciones","Recebemos seu interesse!":"¡Hemos recibido su interés!","Receber recomendações":"Recibir recomendaciones","Recebeu um código de um professor? Informe abaixo para entrar na lista de estudantes dele. Depois, o professor adiciona você à s turmas.":"¿Recibió un código de un profesor? Infórmelo a continuación para unirse a su lista de estudiantes. Luego, el profesor lo agregará a las clases.",Receita:y4,"Receita & Canais":"Ingresos y canales","Receita Federal: razão social, CNAE, situação cadastral e anos de operação":"Impuesto sobre la Renta Federal: razón social, CNAE, situación catastral y años de operación","Receita estimada":"Ingresos estimados","Receita per capita = ((visitantes nacionais à gasto médio diário à permanência) + (visitantes internacionais à gasto médio diário à permanência)) ÷ população":"Ingresos per cápita = ((visitantes nacionales à gasto promedio diario à estancia) + (visitantes internacionales à gasto promedio diario à estancia)) ÷ población","Receita por quarto disponÃvel":"Ingresos por habitación disponible","Receita total (hospedagem + A&B + eventos + spa + outros) ÷ quartos disponÃveis.":"Ingresos totales (hospedaje + A&B + eventos + spa + otros) ÷ habitaciones disponibles.","Reciclagem de plástico":"Reciclaje de plástico","Reciclar economiza recursos e protege a natureza.":"Reciclar ahorra recursos y protege la naturaleza.","Recife de Abrolhos":"Arrecife de Abrolhos","Recife de Coral":"Arrecife de Coral","Recife do Caribe":"Arre
362cife del Caribe",Reclamações:"Reclamaciones","Reclamações Públicas":"Reclamaciones Públicas","Reclamações públicas (Reclame Aqui / Procon)":"Reclamaciones públicas (Reclame Aquà / Procon)","Reclamações públicas analisadas":"Reclamaciones públicas analizadas","Reclame Aqui + Procon":"Reclame Aquà + Procon","Reclame Aqui e Procon â reputação pública e taxa de solução":"Reclame Aqui y Procon â reputación pública y tasa de solución",Recolher:S4,"Recomendado para Você":"Recomendado para Ti","Recomendamos usar todos os indicadores na primeira rodada para ter uma visão completa.":"Recomendamos usar todos los indicadores en la primera ronda para tener una visión completa.",Recomendações:"Recomendaciones","Recomendações EDU acopladas":"Recomendaciones EDU acopladas","Recomendações Personalizadas":"Recomendaciones Personalizadas","Recomendações Prioritárias":"Recomendaciones Prioritarias","Recomendações automáticas de aprendizado a partir do diagnóstico":"Recomendaciones automáticas de aprendizaje a partir del diagnóstico","Recomendações de Aprendizagem":"Recomendaciones de Aprendizaje","Recomendações determinÃsticas vinculadas a capacitações EDU":"Recomendaciones determinÃsticas vinculadas a capacitaciones EDU","Recomendações personalizadas":"Recomendaciones personalizadas","Recomendações são atualizadas conforme você completa conteúdos.":"Las recomendaciones se actualizan a medida que completas contenidos.","Recomeço na Serra":"Recomienzo en la Sierra","Recomeço no Sertão":"Recomienzo en el Sertão",Recompensas:E4,"Reconecte à internet (Wi-Fi ou 4G/5G) e tente novamente.":"Vuelve a conectarte a internet (Wi-Fi o 4G/5G) e intenta de nuevo.","Recuperando valores automáticos e recalculando...":"Recuperando valores automáticos y recalculando...","Recuperar Senha":"Recuperar Contraseña","Recuperar valores automáticos":"Recuperar valores automáticos",Recurso:C4,"Recurso enviado com sucesso":"Recurso enviado con éxito","Recurso enviado com sucesso!":"¡Recurso enviado con éxito!","Recurso já enviado para esta prova":"Recurso ya enviado para esta prueba",Recursos:T4,"Recursos ({{v0}})":"Recursos ({{v0}})","Recursos Ambientais":"Recursos Ambientales","Recursos HÃdricos":"Recursos HÃdricos","Recursos de Acessibilidade":"Funciones de Accesibilidad","Recursos para Deficientes Auditivos":"Recursos para Personas con Discapacidad Auditiva","Recursos para Deficientes Visuais":"Recursos para Personas con Discapacidad Visual",Recusar:P4,"Recusar e criar eco-negócios":"Rechazar y crear eco-negocios",Recálculo:"Recálculo",Rede:R4,"Rede de Parcerias":"Red de Asociaciones","Rede de Pesca":"Red de Pesca","Rede de arrasto ilegal!":"¡Red de arrastre ilegal!","Rede própria":"Red propia","Redes Sociais":"Redes Sociales","Redes Sociais (Instagram / Facebook / TikTok)":"Redes Sociales (Instagram / Facebook / TikTok)","Redução das Desigualdades":"Reducción de las Desigualdades","Redução de Plástico":"Reducción de Plástico","Reestruturação organizacional":"Reestructuración organizacional","Ref. Máximo":"Ref. Máximo","Ref. Máximo:":"Ref. Máximo:","Ref. MÃnimo":"Ref. MÃnimo","Ref. MÃnimo:":"Ref. MÃnimo:","Ref: {{v0}}":"Ref: {{v0}}","Referência atualizada":"Referencia actualizada","Referência removida":"Referencia eliminada",Referências:"Referencias","Referências Globais":"Referencias Globales","Referências Oficiais":"Referencias Oficiales","Reflorestamento de Encosta":"Reforestación de Ladera","Reflorestamento de encostas":"Reforestación de laderas","Reflorestar é devolver a vida ao solo.":"Reforestar es devolver la vida al suelo.",Regenerar:x4,"Regenerar provas da trilha?":"¿Regenerar pruebas de la ruta?","Regionalização e categorização":"Regionalización y categorización","Registrando...":"Registrando...",Registrar:w4,"Registrar Medição":"Registrar Medición","Registro imutável dos dados, fontes e confiabilidade para rastreabilidade":"Registro inmutable de los datos, fuentes y confiabilidad para trazabilidad","Registro:":"Registro:",Registros:I4,"Registros incluem: quem, o que, quando e de onde.":"Los registros incluyen: quién, qué, cuándo y dónde.","Registros manuais da organização.":"Registros manuales de la organización.","Região TurÃstica":"Región TurÃstica","Região turÃstica, Categoria A-E, Empregos, Estabelecimentos, Visitantes, Arrecadação":"Región turÃstica, CategorÃa A-E, Empleos, Establecimientos, Visitantes, Recaudación","Regra 1: Prioridade RA - limitações ambientais bloqueiam OE":"Regla 1: Prioridad RA - las limitaciones ambientales bloquean OE","Regra 2 â Ciclo ContÃnuo de Revisão":"Regla 2 â Ciclo Continuo de Revisión","Regra 2: Calcular Revisão":"Regla 2: Calcular Revisión","Regra 2: Ciclo ContÃnuo":"Regla 2: Ciclo Continuo","Regra 2: Ciclo contÃnuo - revisão programada por severi
362dade":"Regla 2: Ciclo continuo - revisión programada por severidad","Regra 3: Externalidades - alerta se OE melhora e RA piora":"Regla 3: Externalidades - alerta si OE mejora y RA empeora","Regra 3: OEâ e RAâ?":"¿Regla 3: OEâ y RAâ?","Regra 4 â Governança Central (AO)":"Regla 4 â Gobernanza Central (AO)","Regra 4: Governança Central":"Regla 4: Gobernanza Central","Regra 4: Governança central - AO crÃtico bloqueia expansão":"Regla 4: Gobernanza central - AO crÃtico bloquea expansión","Regra 5: Marketing bloqueado se RA ou AO crÃticos":"Regla 5: Marketing bloqueado si RA o AO crÃticos","Regra 5: RA ou AO < 3.33?":"¿Regla 5: RA o AO < 3.33?","Regra 6 â Interdependência Setorial":"Regla 6 â Interdependencia Sectorial","Regra 6: Interdependência Setorial":"Regla 6: Interdependencia Sectorial","Regra 6: Interdependência setorial identificada":"Regla 6: Interdependencia sectorial identificada","Regra Aplicada":"Regla Aplicada","Regra {{v0}}: {{v1}}":"Regla {{v0}}: {{v1}}",Regras:D4,"Regras & Planos":"Reglas y Planes","Regras ativas para este curso":"Reglas activas para este curso","Regras de Exame Configuradas":"Reglas de Examen Configuradas","Regras de Retentativa":"Reglas de Reintento","Regras de comércio internacional":"Reglas de comercio internacional","Regras de exames":"Reglas de exámenes","Regras de prova criadas":"Reglas de examen creadas","Regras determinÃsticas aplicadas automaticamente a cada diagnóstico":"Reglas determinÃsticas aplicadas automáticamente a cada diagnóstico","Regras fixas da metodologia":"Reglas fijas de la metodologÃa",Regrediram:O4,Regressão:"Regresión","Regressão detectada ({{v0}})":"Regresión detectada ({{v0}})","Regressão:":"Regresión:",Regulamentação:"Reglamentación","Regular marés":"Regular mareas",Reiniciar:M4,"Reiniciar jogo":"Reiniciar juego",Rejeitado:N4,Rejeitar:z4,"Rejeitar Recurso":"Rechazar Recurso","Rejeição Automática":"Rechazo Automático",Relatório:"Informe","Relatório Empresarial â Diagnóstico Operacional & Estratégico (concorrentes anonimizados: Concorrente A/B/C)":"Informe Empresarial â Diagnóstico Operacional & Estratégico (competidores anonimizados: Competidor A/B/C)","Relatório Gerado":"Informe Generado","Relatório IA":"Informe IA","Relatório SISTUR":"Informe SISTUR","Relatório Word baixado!":"¡Informe Word descargado!","Relatório atualizado.":"Informe actualizado.","Relatório consolidado por Escopo, Pilar e Tier":"Informe consolidado por Alcance, Pilar y Nivel","Relatório excluÃdo":"Informe eliminado","Relatório gerado e salvo com sucesso!":"¡Informe generado y guardado correctamente!","Relatório gerado pela Mente Sistur com base no diagnóstico":"Informe generado por Mente Sistur con base en el diagnóstico","Relatório para captação":"Informe para captación","Relatório será gerado no ambiente de demonstração":"El informe se generará en el entorno de demostración","Relatório será gerado no ambiente de produção":"El informe se generará en el entorno de producción","Relatório técnico de diagnóstico territorial gerado pelo Sistema SISTUR conforme metodologia de Mario Carlos Beni, seguindo padrões MEC/ABNT.":"Informe técnico de diagnóstico territorial generado por el Sistema SISTUR conforme a la metodologÃa de Mario Carlos Beni, siguiendo los estándares MEC/ABNT.","Relatório técnico detalhado (50+ páginas)":"Informe técnico detallado (50+ páginas)","Relatório técnico para captação de recursos":"Informe técnico para captación de recursos","Relatório técnico-estratégico de diagnóstico de empreendimento turÃstico gerado pelo Sistema SISTUR, com base nos pilares I-RA, I-OE e I-AO da metodologia de Mario Carlos Beni e em indicadores operacionais (PMS, reputação online, posicionamento competitivo e ESG). Concorrentes são tratados de forma anonimizada (Concorrente A/B/C), conforme regras semânticas Empresarial.":"Informe técnico-estratégico de diagnóstico de una empresa turÃstica generado por el Sistema SISTUR, con base en los pilares I-RA, I-OE e I-AO de la metodologÃa de Mario Carlos Beni y en indicadores operativos (PMS, reputación en lÃnea, posicionamiento competitivo y ESG). Los competidores se tratan de forma anonimizada (Compet
362idor A/B/C), conforme a las reglas semánticas de Empresarial.","Relatório â {{v0}}":"Informe â {{v0}}",Relatórios:"Informes","Relatórios Estratégicos":"Informes Estratégicos","Relatórios Salvos":"Informes Guardados","Relatórios com IA":"Informes con IA",'Relatórios completos (template "Completo" com 100+ indicadores) levam de 2 a 7 minutos só na fase de inferência da IA. Para evitar que a aba do navegador fique presa esperando a resposta â e que timeouts intermediários do proxy interrompam a geração â o SISTUR enfileira o pedido em report_jobs e dispara um worker dedicado (process-report-job) por trigger de banco. Você pode fechar a aba ou navegar livremente: quando o relatório ficar pronto, o sistema dispara um toast e uma notificação do navegador (se permitida). O histórico mostra o relatório recém-criado automaticamente.':'Los informes completos (plantilla "Completo" con más de 100 indicadores) tardan de 2 a 7 minutos solo en la fase de inferencia de la IA. Para evitar que la pestaña del navegador se quede atascada esperando la respuesta ây que los tiempos de espera intermedios del proxy interrumpan la generaciónâ SISTUR encola la solicitud en report_jobs y lanza un trabajador dedicado (process-report-job) mediante un trigger de base de datos. Puede cerrar la pestaña o navegar libremente: cuando el informe esté listo, el sistema disparará un toast y una notificación del navegador (si está permitida). El historial muestra el informe recién creado automáticamente.',"Relatórios personalizáveis com logo, cabeçalho/rodapé, cor primária, tamanho de fonte e notas adicionais. Visibilidade pessoal ou organizacional. Templates: Completo, Executivo e Investidores.":"Informes personalizables con logo, encabezado/pie de página, color principal, tamaño de fuente y notas adicionales. Visibilidad personal u organizacional. Plantillas: Completo, Ejecutivo e Inversores.","Relatórios profissionais com identidade visual da organização":"Informes profesionales con la identidad visual de la organización","Relatórios salvos (últimos 50)":"Informes guardados (últimos 50)","Relatórios são um recurso do plano Pro e Enterprise.":"Los informes son una caracterÃstica del plan Pro y Enterprise.","Relatórios/Dashboards":"Informes/Dashboards","Relação demanda/oferta no raio:":"Relación demanda/oferta en el radio:","Relação saudável.":"Relación saludable.","Relações Ambientais":"Relaciones Ambientales","Relações Ambientais (IRA)":"Relaciones Ambientales (IRA)","Relações Ambientais (RA)":"Relaciones Ambientales (RA)","Relações Ambientais (sustentabilidade)":"Relaciones Ambientales (sostenibilidad)","Relevância:":"Relevancia:",Religioso:j4,Remover:k4,"Remover anexo":"Eliminar adjunto","Remover arquivo?":"¿Eliminar archivo?","Remover badge?":"¿Eliminar insignia?","Remover curtida":"Quitar Me gusta","Remover da Organização":"Remover de la Organización","Remover esta trilha e todas as etapas?":"¿Eliminar esta pista y todas las etapas?","Remover este anúncio?":"¿Eliminar este anuncio?","Remover este municÃpio do consórcio?":"¿Eliminar este municipio del consorcio?","Remover material?":"¿Remover material?","Remover referência?":"¿Remover referencia?","Remover usuário da organização?":"¿Remover usuario de la organización?","Remédios, alimentos, materiais... O cerrado oferece tudo.":"Medicamentos, alimentos, materiales... El cerrado ofrece de todo.",Renomear:_4,"Renomear conversa":"Renombrar conversación","Replantio de Mangue":"Reforestación de Manglar","Replantio de mangue":"Reforestación de manglar","Replicar o modelo em outras serras do Brasil":"Replicar el modelo en otras sierras de Brasil","Report ID":"ID de Informe","Reportar erro":"Reportar error",Reprovado:q4,"Reprovado (pode refazer)":"Reprobado (puede volver a intentarlo)",Reprovados:L4,Reprovações:"Reprobaciones",Reputação:"Reputación","Reputação Competitiva":"Reputación Competitiva","Reputação Consolidada":"Reputación Consolidada","Reputação Consolidada OTAs":"Reputación Consolidada OTAs","Reputação OTAs":"Reputación OTAs","Reputação Pública":"Reputación Pública","Reputação consolidada":"Reputación consolidada","Requer 2-3 horas de coleta":"Requiere 2-3 horas de recolección","Requer acesso Empresarial habilitado":"Requiere acceso Empresarial habilitado","Requerem atenção":"Requieren atención","Reservas naturais salvam espécies em extinção.":"Las reservas naturales salvan especies en extinción.","Reservatório natural de água doce em derretimento acelerado":"Reservorio natural de agua dulce en derretimiento acelerado",Resetar:U4,"Resistir e expandir o viveiro para toda a região":"Resistir y expandir el vivero a toda la región","Resolução:":"Resolución:","Resolve organização efetiva considerando modo demonstração:":"Resuelve organización efectiva considerando modo demostración:","Resolveu agora, mas e aman
362hã?":"¿Se resolvió ahora, pero y mañana?",Resolvida:B4,Resolvido:F4,Resolvidos:G4,Resort:V4,"Resp.: {{v0}}":"Resp.: {{v0}}","Responda algumas perguntas rápidas para que possamos recomendar cursos e trilhas que se encaixem perfeitamente no seu perfil.":"Responda algunas preguntas rápidas para que podamos recomendar cursos y rutas que se ajusten perfectamente a su perfil.","Responda todas as questões antes de enviar":"Responde todas las preguntas antes de enviar","Respondendo a":"Respondiendo a",Responder:$4,"Responsabilidades por tarefa":"Responsabilidades por tarea",Responsável:"Responsable","Responsável alterado":"Responsable cambiado","Responsável pelo plano":"Responsable del plan",Resposta:H4,"Resposta do aluno:":"Respuesta del alumno:","Resposta:":"Respuesta:","Respostas ({{v0}})":"Respuestas ({{v0}})","Respostas lidas em voz alta pelo ElevenLabs.":"Respuestas leÃdas en voz alta por ElevenLabs.","Respostas por voz ativadas":"Respuestas por voz activadas","Respostas por voz desativadas":"Respuestas por voz desactivadas",'Respostas são lidas em voz alta pelo ElevenLabs.\n- Sem markdown (sem **, ##, -, asteriscos ou itálicos)\n- Texto corrido, conversacional, parágrafos curtos\n- Enumerações naturais ("primeiro⦠segundo⦠terceiroâ¦") em vez de listas\n- Frases claras e diretas, prontas para narração':`Las respuestas son leÃdas en voz alta por ElevenLabs. 363- Sin markdown (sin **, ##, -, asteriscos o cursivas) 364- Texto fluido, conversacional, párrafos cortos 365- Enumeraciones naturales ("primero⦠segundo⦠terceroâ¦") en lugar de listas 366- Frases claras y directas, listas para narración`,'Respostas são lidas em voz alta pelo ElevenLabs. - Sem markdown (sem **, ##, -, asteriscos ou itálicos) - Texto corrido, conversacional, parágrafos curtos - Enumerações naturais ("primeiro⦠segundo⦠terceiroâ¦") em vez de listas - Frases claras e diretas, prontas para narração':'Las respuestas son leÃdas en voz alta por ElevenLabs. - Sin markdown (sin **, ##, -, asteriscos o itálicas) - Texto corrido, conversacional, párrafos cortos - Enumeraciones naturales ("primero⦠segundo⦠terceroâ¦") en lugar de listas - Frases claras y directas, listas para narración',Restaurante:W4,Restaurar:Q4,"Restaurar padrão":"Restaurar valores predeterminados","Restauração Ambiental":"Restauración Ambiental",Restritivo:K4,"Restrição: Σ(peso_i) = 100% por pilar":"Restricción: Σ(peso_i) = 100% por pilar",Restrições:"Restricciones","Restrições estruturais, históricas ou socioeconômicas do território":"Restricciones estructurales, históricas o socioeconómicas del territorio",Resultado:Y4,"Resultado Atual":"Resultado Actual","Resultado Misto":"Resultado Mixto","Resultado da Importação":"Resultado de la Importación","Resultado da Simulação":"Resultado de la Simulación","Resultado da auditoria":"Resultado de la auditorÃa","Resultado do Exame":"Resultado del Examen","Resultado em modo teaser (pilares ofuscados + paywall)":"Resultado en modo teaser (pilares ofuscados + paywall)","Resultado em:":"Resultado en:",Resultados:J4,Resumo:X4,"Resumo + palavras-chave, Introdução, Contextualização do municÃpio, Metodologia, Análise por pilar (RA/OE/AO), Indicadores crÃticos, Recomendações, Plano de ação, Conclusão e Referências.":"Resumen + palabras clave, Introducción, Contextualización del municipio, MetodologÃa, Análisis por pilar (RA/OE/AO), Indicadores crÃticos, Recomendaciones, Plan de acción, Conclusión y Referencias.","Resumo de Acessos":"Resumen de Accesos","Resumo de {{n}} diagnóstico(s) empresarial(is)":"Resumen de {{n}} diagnóstico(s) empresarial(es)","Resumo de {{n}} diagnóstico(s) territorial(is)":"Resumen de {{n}} diagnóstico(s) territorial(es)","Resumo detalhado dos projetos":"Resumen detallado de los proyectos","Resumo do Diagnóstico":"Resumen del Diagnóstico","Resumo do documento (injetado nos relatórios via IA)":"Resumen del documento (inyectado en los informes vÃa IA)","Resumo do documento (será injetado nos prompts de geração de relatórios)":"Resumen del documento (se inyectará en los prompts de generación de informes)","Resumo dos Treinamentos":"Resumen de las Capacitaciones","Resumo programático do curs
366o":"Resumen programático del curso","Resumo â":"Resumen â","Resumo: 8 Fontes Oficiais Integradas":"Resumen: 8 Fuentes Oficiales Integradas","Retomando diagnóstico com dados prontos":"Retomando diagnóstico con datos listos","Retomar Diagnóstico":"Retomar Diagnóstico","Retorna um diagnóstico com notas por pilar (RA, OE, AO), bloqueios sistêmicos e interpretação IGMA.":"Devuelve un diagnóstico con notas por pilar (RA, OE, AO), bloqueos sistémicos e interpretación IGMA.","Retorno do investimento (ROI)":"Retorno de la inversión (ROI)","Retrospectiva e melhoria contÃnua":"Retrospectiva y mejora continua","Retrospectiva e planejamento do próximo PI":"Retrospectiva y planificación del próximo PI","Retry individual em caso de falha":"Reintento individual en caso de fallo","Reunir a comunidade local para discutir os problemas":"Reunir a la comunidad local para discutir los problemas",Reunião:"Reunión","Reuso de Ãgua":"Reutilización de Agua",RevPAR:Z4,"RevPAR Médio":"RevPAR Promedio","Revenue por Canal":"Ingresos por Canal",Reverter:e6,"Reviews Online":"Reseñas Online",Revisar:a6,"Revisar Alerta":"Revisar Alerta","Revisar evidência":"Revisar evidencia","Revisar trilhas adaptativas a cada novo cálculo de diagnóstico.":"Revisar rutas adaptativas con cada nuevo cálculo de diagnóstico.","Revisar valor fixado":"Revisar valor fijado","Revise a tabela abaixo antes de importar.":"Revisa la tabla a continuación antes de importar.","Revise e edite questões existentes.":"Revise y edite preguntas existentes.","Revise os campos obrigatórios para salvar o destino.":"Revise los campos obligatorios para guardar el destino.",'Revise os dados e clique em "Aprovar" ou "Rejeitar".':'Revise los datos y haga clic en "Aprobar" o "Rechazar".',"Revise os dados pré-preenchidos e confirme antes de prosseguir.":"Revise los datos precargados y confirme antes de continuar.","Revisitando diagnóstico concluÃdo":"Revisitando diagnóstico concluido","Revisão Manual":"Revisión Manual","Revisão das Questões":"Revisión de las Preguntas","Revisão do Exame":"Revisión del Examen","Revisão não encontrada":"Revisión no encontrada","Revisão recomendada":"Revisión recomendada","Revisão técnica do diagnóstico":"Revisión técnica del diagnóstico","Revisões programadas baseadas na severidade":"Revisiones programadas basadas en la severidad","Revisões programadas: CrÃtico = 6 meses, Atenção = 12 meses, Adequado = 18 meses.":"Revisiones programadas: CrÃtico = 6 meses, Atención = 12 meses, Adecuado = 18 meses.",Revogado:o6,"Revogado em":"Revocado el",Revogados:i6,Revogar:t6,"Revogar acesso?":"¿Revocar acceso?","Revogar certificado":"Revocar certificado","Rica em natureza e biodiversidade":"Rica en naturaleza y biodiversidad","Rifa surpresa de prêmios":"Sorteo sorpresa de premios","Rio limpinho! Os peixes voltaram! ð":"¡RÃo limpito! ¡Los peces volvieron! ð","Rios e lagoas naturais":"RÃos y lagunas naturales","Riqueza de curto prazo, ruÃna eterna.":"Riqueza a corto plazo, ruina eterna.","Rodada A (base)":"Ronda A (base)","Rodada B (comparação)":"Ronda B (comparación)","Rodada Criada":"Ronda Creada",Rodadas:r6,"Rodadas de avaliação com nota final e classificação (Adequado, Atenção, CrÃtico).":"Rondas de evaluación con calificación final y clasificación (Adecuado, Atención, CrÃtico).","Rodadas de avaliação dos destinos":"Rondas de evaluación de los destinos","Rodadas de diagnóstico com resultados IGMA":"Rondas de diagnóstico con resultados IGMA","Rodado em {{date}}":"Ejecutado el {{date}}","Rodar todos":"Ejecutar todos","RodÃzio de placas":"Restricción vehicular por matrÃcula","Role até o final do documento para habilitar a aceitação":"Desplácese hasta el final del documento para habilitar la aceptación","Role até o final para habilitar o botão de aceitar.":"Desplácese hasta el final para habilitar el botón de aceptar.","Romper o acordo e denunciar as violações":"Romper el acuerdo y denunciar las violaciones",Rotas:s6,"Row Level Security (RLS) em todas as 40+ tabelas do banco de dados":"Seguridad a Nivel de Fila (RLS) en todas las más de 40 tablas de la base de datos","Row Level Security: get_effective_org_id() em todas as queries":"Seguridad a Nivel de Fila: get_effective_org_id() en todas las consultas","Rubrica de Avaliação":"Rúbrica de Evaluación","Rubrica de avaliação":"Rúbrica de evaluación",Rápidas:"Rápidas","Rápido e barato":"Rápido y barato","Régua oficial de classificação (5 nÃveis)":"Escala oficial de clasificación (5 niveles)","Réptil ameaçado por plástico e perda de habitat costeiro":"Reptil amenazado por plástico y pérdida de hábitat costero","Réptil endêmico que vive apenas em altitudes elevadas":"Reptil endémico que vive solo en altitudes elevadas","Réptil que ajuda a controlar populações de peixes":"Reptil que ayuda a controlar poblaciones de peces",SAFe:n6,"SAFe (Scaled Agile Framework)":"SAFe (Scaled Agile Framework)",SAÃDE:"SALUD","SE score_AO < 3.33 ENTÃO governance_block = TRUE â bloqueia todo o sistema. Sem governança operacional, nenhuma melhoria pode ser implementada.":"SI score_AO < 3.33 ENTONCES governance_block = TRUE â bloquea todo el sistema. Sin gobernanza o
366peracional, ninguna mejora puede ser implementada.","SE score_OE melhora E score_RA piora simultaneamente ENTÃO externality_warning = TRUE. Detecta crescimento estrutural predatório ao meio ambiente.":"SI score_OE mejora Y score_RA empeora simultáneamente ENTONCES externality_warning = TRUE. Detecta crecimiento estructural depredador al medio ambiente.","SE score_RA < 3.33 ENTÃO ra_limitation = TRUE â bloqueia expansão de OE e marketing turÃstico. Fundamento: recursos ambientais degradados inviabilizam crescimento sustentável da infraestrutura.":"SI score_RA < 3.33 ENTONCES ra_limitation = TRUE â bloquea expansión de OE y marketing turÃstico. Fundamento: recursos ambientales degradados inviabilizan el crecimiento sostenible de la infraestructura.","SE score_RA < 3.33 OU score_AO < 3.33 ENTÃO marketing_blocked = TRUE. Promoção de destino com base ambiental ou governança precárias gera dano reputacional.":"SI score_RA < 3.33 O score_AO < 3.33 ENTONCES marketing_blocked = TRUE. La promoción de un destino con base ambiental o gobernanza precarias genera daño reputacional.",'SICONFI/STN: Despesas na função "Turismo" (código 23) no orçamento municipal.':'SICONFI/STN: Gastos en la función "Turismo" (código 23) en el presupuesto municipal.',"SIDRA tab. 5938 (var. 37)":"SIDRA tab. 5938 (var. 37)","SIDRA tab. 5938 (var. 39)":"SIDRA tab. 5938 (var. 39)","SIDRA tab. 6579":"SIDRA tab. 6579","SISMAPA â Mapa do Turismo":"SISMAPA â Mapa del Turismo",SISTUR:c6,"SISTUR AnalÃtico":"SISTUR AnalÃtico","SISTUR AnalÃtico (territorial)":"SISTUR AnalÃtico (territorial)","SISTUR EDU":"SISTUR EDU","SISTUR EDU (Prescrições)":"SISTUR EDU (Prescripciones)","SISTUR EDU â Plano de Capacitação":"SISTUR EDU â Plan de Capacitación","SISTUR Empresarial":"SISTUR Empresarial","SISTUR {{v0}}":"SISTUR {{v0}}","SISTUR â Falha no relatório":"SISTUR â Fallo en el informe","SISTUR â Glossário de Indicadores":"SISTUR â Glosario de Indicadores","SISTUR â Guia EDU":"SISTUR â GuÃa EDU","SISTUR â Manual de Diagnósticos":"SISTUR â Manual de Diagnósticos","SISTUR â Manual do Usuário":"SISTUR â Manual del Usuario","SISTUR â Relatório de Diagnóstico":"SISTUR â Informe de Diagnóstico","SISTUR â Sistema Integrado de Suporte para Turismo em Regiões":"SISTUR â Sistema Integrado de Apoyo para el Turismo en Regiones","SISTUR_Glossario_de_Indicadores.docx":"SISTUR_Glosario_de_Indicadores.docx","SISTUR_Guia_EDU.docx":"SISTUR_Guia_EDU.docx","SISTUR_Manual_de_Diagnosticos.docx":"SISTUR_Manual_de_Diagnosticos.docx","SISTUR_Manual_do_Usuario.docx":"SISTUR_Manual_del_Usuario.docx","SSP + notÃcias regionais":"SSP + noticias regionales",STABLE:d6,"STN / Tesouro Nacional":"STN / Tesoro Nacional","STN â Finanças Municipais":"STN â Finanzas Municipales","STN â Secretaria do Tesouro Nacional":"STN â SecretarÃa del Tesoro Nacional","STN: gestão fiscal municipal":"STN: gestión fiscal municipal","Sabores do Cerrado":"Sabores del Cerrado","Sabores do Mar":"Sabores del Mar","Sabotar os equipamentos para atrasar a operação":"Sabotear los equipos para retrasar la operación",Sair:l6,"Sair e voltar ao login":"Salir y volver al inicio de sesión","Sala 12 ou online":"Sala 12 o en lÃnea","Sala criada com sucesso!":"¡Sala creada con éxito!","Salas de Aula":"Salas de Clase",Saldo:u6,"Saldo visÃvel":"Saldo visible","Salvamento e retomada de sessões de jogo":"Guardado y reanudación de sesiones de juego","Salvando rascunhoâ¦":"Guardando borradorâ¦","Salvando...":"Guardando...","Salvandoâ¦":"Guardandoâ¦",Salvar:m6,"Salvar Alterações":"Guardar Cambios","Salvar Correção":"Guardar Corrección","Salvar Personalização":"Guardar Personalización","Salvar Todos":"Guardar Todos","Salvar cenário":"Guardar escenario","Salvar como PDF":"Guardar como PDF","Salvar contexto":"Guardar contexto","Salvar estrutura":"Guardar estructura","Salvar pesos":"Guardar pesos","Saneamento, Desmatamento, Ãreas protegidas":"Saneamiento, Deforestación, Ãreas protegidas","Santuário Azul":"Santuario Azul","Satisfação do Hóspede":"Satisfacción del Huésped",Saudável:"Saludable",Sazonalidade:p6,"Sazonalidade Mensal":"Estacionalidad Mensual","Sazonalidade Tarifária":"Estacionalidad Tarifaria","Sazonalidade não pôde ser calculada â fontes upstream ausentes.":"La estacionalidad no pudo ser calculada â fuentes upstream ausentes.","Sazonalidade tarifária derivada":"Estacionalidad tarifaria derivada","Sazonalidade: fontes upstream ausentes â rode Demanda/Eventos/Preço primeiro":"Estacionalidad: fuentes upstream ausentes â ejecute Demanda/Eventos/Precio primero",S
366aúde:"Salud","Saúde Financeira":"Salud Financiera","Saúde comunitária!":"¡Salud comunitaria!","Saúde das Ingestões Oficiais":"Estado de las Ingestas de Datos Oficiales","Saúde do Entorno":"Salud del Entorno","Saúde e mortalidade":"Salud y mortalidad","Saúde para toda comunidade!":"¡Salud para toda la comunidad!","Saúde para todos":"Salud para todos","Saúde pública é prioridade.":"La salud pública es prioridad.","Saúde restante:":"Salud restante:",Score:g6,"Score 34% â 66% â Atenção (amarelo)":"Puntuación 34% â 66% â Atención (amarillo)","Score Final":"Puntuación Final","Score Médio (%)":"Puntaje Promedio (%)","Score Normalizado":"Puntuación Normalizada","Score Telecom":"Puntuación Telecom","Score aumentou":"La puntuación aumentó","Score de Segurança":"Puntuación de Seguridad","Score diminuiu":"La puntuación disminuyó","Score do Pilar":"Puntuación del Pilar","Score do empreendimento vs. score do municÃpio no mesmo pilar sistêmico (RA/OE/AO). Î positivo indica que o empreendimento está acima do entorno.":"Puntuación de la empresa vs. puntuación del municipio en el mismo pilar sistémico (RA/OE/AO). Î positivo indica que la empresa está por encima del entorno.","Score estável":"Puntuación estable","Score geral por pilar (RA, OE, AO)":"Puntuación general por pilar (RA, OE, AO)","Score geral:":"Puntuación general:","Score à Peso":"Puntuación à Peso","Score ⤠33%":"Puntuación ⤠33%","Score ⤠33% â CrÃtico (vermelho)":"Puntuación ⤠33% â CrÃtico (rojo)","Score ⥠67%":"Puntuación ⥠67%","Scores RA, OE, AO com gauges visuais":"Puntuaciones RA, OE, AO con medidores visuales","Scores RA/OE/AO + Flags + Issues + Prescrições":"Puntuaciones RA/OE/AO + Banderas + Problemas + Prescripciones","Scores atuais dos pilares:":"Puntuaciones actuales de los pilares:","Scores e gargalos gerados":"Puntajes y cuellos de botella generados","Scores por Destino:":"Puntuaciones por Destino:","Scores por Indicador":"Puntuaciones por Indicador","Scores por Pilar":"Puntuaciones por Pilar","Scores são normalizados para a escala 0-100 por pilar.":"Las puntuaciones se normalizan a la escala 0-100 por pilar.","Scraping inteligente do portal oficial para dados mais recentes":"Scraping inteligente del portal oficial para datos más recientes",Scrum:h6,"Se a cobrança mensal do cartão for recusada, o acesso aos recursos do plano é suspenso até o pagamento ser regularizado em Gerenciar conta.":"Si el cargo mensual de la tarjeta es rechazado, el acceso a los recursos del plan se suspende hasta que el pago sea regularizado en Gestionar cuenta.","Se aprovado, o conteúdo será produzido e você será notificado":"Si se aprueba, el contenido será producido y usted será notificado","Se desligada, a regra é mantida no histórico mas não é usada nos próximos relatórios.":"Si está desactivada, la regla se mantiene en el historial pero no se usa en los próximos informes.","Se este hotel faz parte de uma rede com unidades em outros municÃpios, selecione (ou crie) a marca. A análise comparativa da rede usará esta associação para confrontar desempenho da marca em diferentes destinos.":"Si este hotel forma parte de una red con unidades en otros municipios, seleccione (o cree) la marca. El análisis comparativo de la red utilizará esta asociación para confrontar el desempeño de la marca en diferentes destinos.","Se não sabe qual escolher, converse com seu gestor ou comece com EDU para explorar.":"Si no sabe cuál elegir, hable con su gestor o empiece con EDU para explorar.","Se não selecionar, estes itens permanecerão sem vÃnculo ao diagnóstico.":"Si no selecciona, estos elementos permanecerán sin vincular al diagnóstico.","Se o pilar AO (governança/operações) está crÃtico, não há capacidade de gestão para implementar melhorias. O sistema bloqueia expansão de OE até a governança melhorar.":"Si el pilar AO (gobernanza/operaciones) está crÃtico, no hay capacidad de gestión para implementar mejoras. El sistema bloquea la expansión de OE hasta que la gobernanza mejore.","Se o pilar RA (Relações Ambientais) está crÃtico, o sistema bloqueia capacitações e investimentos em OE (infraestrutura). Não adianta construir hotéis se o ambiente está degradado.":"Si el pilar RA (Relaciones Ambientales) está crÃtico, el sistema bloquea capacitaciones e inversiones en OE (infraestructura). No sirve de nada construir hoteles si el ambiente está degradado.","Se qualquer pilar cair a zero, você perde!":"¡Si cualquier pilar llega a cero, pierdes!","Se recebeu um código de uma organização, insira para ingressar automaticamente.":"Si recibió un código de una organización, insértelo para unirse automáticamente.","Se sua saúde chegar a zero, a missão falha!":"¡Si tu salud llega a cero, la misión fracasa!","Se um professor compartilhou um código ou link de convite com você, insira abaixo.":"Si un profesor compartió un código o enlace de invitación con usted, insértelo a continuación.","Se você foi convidado por um professor, informe o código (opcional)":"Si fue invitado por un profesor, ingrese el código (opcional)","Se você foi convidado por um professor, insira o código de referral durante o cadastro. Isso vincula você ao professor e permite que ele acompanhe seu progresso e atribua conteúdo.":"Si ha sido invitado por un profesor, inserte el código de referal durante el registro. Esto lo vincula al profesor y le permite seguir su progreso y asignar contenido.","Se você foi convidado por um professor, use o código de referral para se vincular a ele e participar de turmas.":"Si fue invitado por un profesor, use el código de referido para vincularse a él y participar en clases.","Se você não encontrou a resposta que procurava, entre em contato com nossa equipe de suporte através do email":"Si no encontró la respuesta que buscaba, póngase en contacto con nuestro equipo de soporte a través del correo electrónico","Se você recebeu um código de convite de uma organização, insira abaixo para ingressar":"Si ha recibido un código de invitación de una organización, insértelo a continuación para unirse","Secretaria do Tesouro Nacional (STN).":"SecretarÃa del Tesoro Nacional (STN).","Secretarias de Turismo e órgãos governamentais":"SecretarÃas de Turismo y organismos gubernamentales","Secretarias de Turismo estruturadas, destinos em fase de desenvolvimento":"SecretarÃas de Turismo estructuradas, destinos en fase de desarrollo","Secrets necessários":"Secrets necesarios","Secretários, diretores e gestores de turismo":"Secretarios, directores y gestores de turismo","Seguidores (est.)":"Seguidores (est.)","Segunda iteração de desenvolvimento":"Segunda iteración de desarrollo","Segundo Mario Beni, as Relações Ambientais (RA) são a base do sistema turÃstico. Se o ambiente está degradado, não adianta investir em infraestrutura (OE). Por isso, quando RA está crÃtico, o sistema bloqueia capacitações de OE até que as questões ambientais
366sejam resolvidas.":"Según Mario Beni, las Relaciones Ambientales (RA) son la base del sistema turÃstico. Si el ambiente está degradado, no sirve de nada invertir en infraestructura (OE). Por eso, cuando RA está crÃtico, el sistema bloquea capacitaciones de OE hasta que las cuestiones ambientales sean resueltas.","Segundo Mario Beni, sem um ambiente saudável e recursos naturais preservados, não há turismo sustentável. Por isso, RA sempre tem prioridade sobre os demais pilares.":"Según Mario Beni, sin un ambiente saludable y recursos naturales preservados, no hay turismo sostenible. Por ello, RA siempre tiene prioridad sobre los demás pilares.",Segurança:"Seguridad","Segurança TurÃstica":"Seguridad TurÃstica","Segurança TurÃstica â fontes públicas (Auto)":"Seguridad TurÃstica â fuentes públicas (Auto)","Segurança ao Turista (notÃcias e oficial)":"Seguridad al Turista (noticias y oficial)","Segurança turÃstica analisada":"Seguridad turÃstica analizada","Segurança, Infraestrutura: peso 5-6x maior":"Seguridad, Infraestructura: peso 5-6x mayor","Seguro de Responsabilidade Civil":"Seguro de Responsabilidad Civil","Seguro por padrão":"Seguro por defecto","Segurou por agora, mas não é sustentável...":"Sostuvo por ahora, pero no es sostenible...","Seja especÃfico nas perguntas para respostas mais úteis.":"Sea especÃfico en las preguntas para respuestas más útiles.","Seja o primeiro a criar um post!":"Sé el primero en crear una publicación!",Selecionar:f6,"Selecionar Aluno":"Seleccionar Estudiante","Selecionar Arquivo CSV":"Seleccionar Archivo CSV","Selecionar Base do Projeto":"Seleccionar Base del Proyecto","Selecionar CSV":"Seleccionar CSV","Selecionar arquivo":"Seleccionar archivo","Selecionar destino":"Seleccionar destino","Selecionar diagnóstico":"Seleccionar diagnóstico","Selecionar existente":"Seleccionar existente","Selecionar responsável...":"Seleccionar responsable...","Selecionar todas ({{v0}} ações)":"Seleccionar todas ({{v0}} acciones)","Selecionar todos":"Seleccionar todos","Selecionar tudo":"Seleccionar todo","Selecionar usuário":"Seleccionar usuario","Selecionar...":"Seleccionar...",Selecione:v6,"Selecione a resposta correta":"Selecciona la respuesta correcta","Selecione ao menos um aluno-alvo":"Selecciona al menos un estudiante destinatario","Selecione ao menos uma sugestão.":"Seleccione al menos una sugerencia.","Selecione as ações identificadas pelo diagnóstico que deseja incluir como tarefas no novo projeto. Após selecionar, você poderá configurar os detalhes do projeto.":"Seleccione las acciones identificadas por el diagnóstico que desea incluir como tareas en el nuevo proyecto. Después de seleccionar, podrá configurar los detalles del proyecto.","Selecione as questões para compor uma nova prova":"Seleccione las preguntas para componer un nuevo examen","Selecione até 5 destinos para comparar os Ãndices dos pilares":"Seleccione hasta 5 destinos para comparar los Ãndices de los pilares","Selecione diagnósticos, treinamentos ou projetos para que o Professor Beni tenha contexto sobre suas perguntas.":"Seleccione diagnósticos, capacitaciones o proyectos para que el Profesor Beni tenga contexto sobre sus preguntas.","Selecione duas rodadas diferentes.":"Seleccione dos rondas diferentes.",'Selecione e clique "Validar" para confirmar este dado':'Seleccione y haga clic en "Validar" para confirmar este dato',"Selecione entre AnalÃtico (gestão de destinos) ou EDU (educação e capacitação).":"Seleccione entre AnalÃtico (gestión de destinos) o EDU (educación y capacitación).","Selecione indicadores para gerar recomendações personalizadas":"Selecciona indicadores para generar recomendaciones personalizadas","Selecione mais 1 destino para iniciar a comparação":"Selecciona 1 destino más para iniciar la comparación","Selecione na lista abaixo":"Seleccione de la lista a continuación","Selecione o Diagnóstico":"Seleccione el Diagnóstico","Selecione o conteúdo do catálogo ou crie conteúdo customizado.":"Seleccione el contenido del catálogo o cree contenido personalizado.","Selecione o curso para configurar as regras de exame":"Seleccione el curso para configurar las reglas del examen","Selecione o estado":"Seleccione el estado","Selecione o formato desejado (PDF, visualização em tela).":"Seleccione el formato deseado (PDF, visualización en pantalla).","Selecione o indicador.":"Seleccione el indicador.","Selecione o nÃvel...":"Selecciona el nivel...","Selecione o papel":"Seleccione el rol","Selecione o pilar":"Selecciona el pilar","Selecione o pilar.":"Seleccione el pilar.","Selecione o sistema":"Seleccione el sistema","Selecione o tipo de acesso":"Seleccione el tipo de acceso","Selecione o tipo de diagnóstico que deseja realizar.":"Seleccione el tipo de diagnóstico que desea realizar.","Selecione organização e nÃvel":"Selecciona organización y nivel",'Selecione os alunos e clique em "Matricular".':'Seleccione los alumnos y haga clic en "Matricular".',"Selecione os cursos/lives recomendados e crie uma trilha para acompanhar seu progresso.":"Selecciona los cursos/transmisiones en vivo recomendados y crea una ruta de aprendizaje para seguir tu progreso.","Selecione os indicadores IGMA que representam desafios ou áreas de melhoria do seu destino. O sistema irá recomendar cursos e lives mais relevantes com base no mapeamento IGMAâEDU.":"Seleccione los indicadores IGMA que representan desafÃos o áreas de mejora de su destino. El sistema recomendará cursos y transmisiones en vivo más relevantes con base en el mapeo IGMAâEDU.","Selecione os indicadores que serão avalia
366dos nesta rodada.":"Seleccione los indicadores que serán evaluados en esta ronda.","Selecione os temas que mais te atraem":"Selecciona los temas que más te interesan","Selecione ou crie um destino":"Seleccione o cree un destino","Selecione ou pesquise um destino":"Seleccione o busque un destino","Selecione para gerenciar o pacote contratado.":"Seleccione para gestionar el paquete contratado.","Selecione pelo menos 2 destinos para comparar":"Selecciona al menos 2 destinos para comparar","Selecione pelo menos um indicador":"Seleccione al menos un indicador","Selecione pelo menos um item para criar o projeto":"Seleccione al menos un elemento para crear el proyecto","Selecione pelo menos uma questão":"Seleccione al menos una pregunta","Selecione questões ao lado":"Seleccione preguntas al lado","Selecione seu perfil":"Seleccione su perfil","Selecione seu perfil educacional":"Seleccione su perfil educativo","Selecione seu perfil no SISTUR EDU":"Seleccione su perfil en SISTUR EDU","Selecione seus pilares de interesse (RA, OE, AO).":"Seleccione sus pilares de interés (RA, OE, AO).","Selecione todos que se aplicam":"Selecciona todos los que correspondan","Selecione um Diagnóstico":"Seleccione un Diagnóstico","Selecione um arquivo de imagem":"Seleccione un archivo de imagen","Selecione um curso":"Seleccione un curso","Selecione um curso LMS primeiro":"Seleccione un curso LMS primero","Selecione um curso...":"Seleccione un curso...","Selecione um destino":"Seleccione un destino","Selecione um destino para visualizar sua mandala sistêmica.":"Seleccione un destino para visualizar su mandala sistémica.","Selecione um diagnóstico calculado":"Seleccione un diagnóstico calculado",'Selecione um diagnóstico calculado acima e clique em "Gerar Relatório" para criar um plano de desenvolvimento turÃstico personalizado com a Mente Sistur.':'Seleccione un diagnóstico calculado arriba y haga clic en "Generar Informe" para crear un plan de desarrollo turÃstico personalizado con Mente SISTUR.',"Selecione um diagnóstico calculado para gerar um plano de desenvolvimento turÃstico personalizado":"Seleccione un diagnóstico calculado para generar un plan de desarrollo turÃstico personalizado","Selecione um indicador":"Seleccione un indicador","Selecione um motivo":"Selecciona un motivo","Selecione um ou mais pilares":"Selecciona uno o más pilares","Selecione um relatório da lista para visualizar":"Seleccione un informe de la lista para visualizarlo","Selecione um template de e-mail":"Seleccione una plantilla de correo electrónico","Selecione um template...":"Seleccione una plantilla...","Selecione um treinamento":"Selecciona una capacitación","Selecione um usuário":"Seleccione un usuario","Selecione um usuário para adicionar a esta organização":"Seleccione un usuario para añadir a esta organización","Selecione um usuário...":"Seleccione un usuario...","Selecione uma categoria":"Selecciona una categorÃa","Selecione uma conversa":"Selecciona una conversación","Selecione uma entrada":"Seleccione una entrada","Selecione uma entrada na lista ou clique no botão abaixo para adicionar uma nova regra.":"Seleccione una entrada de la lista o haga clic en el botón de abajo para añadir una nueva regla.","Selecione uma marca existente ou crie uma nova":"Seleccione una marca existente o cree una nueva","Selecione uma opção válida":"Seleccione una opción válida","Selecione uma organização":"Seleccione una organización","Selecione uma organização para ver seus usuários":"Seleccione una organización para ver sus usuarios","Selecione uma organização.":"Seleccione una organización.","Selecione uma organização...":"Seleccione una organización...","Selecione uma prova":"Selecciona una prueba","Selecione uma sala para ver o progresso consolidado da turma.":"Seleccione una sala para ver el progreso consolidado de la clase.","Selecione uma trilha":"Selecciona una ruta de aprendizaje","Selecione...":"Seleccione...","Selecioneâ¦":"Seleccioneâ¦",Seleção:"Selección","Seleção do Destino TurÃstico":"Selección del Destino TurÃstico","Seleção: AnalÃtico ou EDU + Role + Organização":"Selección: AnalÃtico o EDU + Rol + Organización","Selfies e fotos pessoais":"Selfies y fotos personales","Selo Turismo Responsável":"Sello Turismo Responsable","Selos ambientais ativos":"Sellos ambientales activos","Sem Licença":"Sin Licencia","Sem a caatinga, a erosão destruiu terras férteis. Você lidera um esforço de recuperação, mas a comunidade desconfia.":"Sin la caatinga, la erosión destruyó tierras fértiles. Usted lidera un esfuerzo de recuperación, pero la comunidad desconfÃa.","Sem acesso":"Sin acceso","Sem aeroporto associado":"Sin aeropuerto asociado","Sem aeroporto no municÃpio":"Sin aeropuerto en el municipio","Sem alertas":"Sin alertas","Sem alunos matriculados nesta sala.":"Sin estudiantes inscritos en esta aula.","Sem análise de tendências históricas":"Sin análisis de tendencias históricas","Sem ação decisiva, o cerrado ao redor continua sendo desmatado. A área protegida se torna uma ilha verde isolada.":"Sin acción decisiva, el cerrado circundante sigue siendo deforestado. El área protegida se convierte en una isla verde aislada.","Sem coleta registrada":"Sin re
366colección registrada","Sem comparação":"Sin comparación","Sem curso":"Sin curso","Sem dados":"Sin datos","Sem dados ainda.":"Aún no hay datos.","Sem dados disponÃveis":"Sin datos disponibles","Sem dados em":"Sin datos en","Sem dados em {{year}}":"Sin datos en {{year}}","Sem dados retornados":"Sin datos devueltos","Sem dados suficientes.":"Sin datos suficientes.","Sem descrição":"Sin descripción","Sem diagnóstico calculado para esta organização.":"Sin diagnóstico calculado para esta organización.","Sem eventos ainda. Conclua cursos e etapas para começar.":"Aún no hay eventos. Completa cursos y etapas para comenzar.","Sem fase":"Sin fase","Sem fonte automática disponÃvel â atualize periodicamente para manter a confiabilidade.":"Sin fuente automática disponible â actualice periódicamente para mantener la confiabilidad.","Sem gatilho":"Sin activador","Sem gestão â Não investir em infraestrutura":"Sin gestión â No invertir en infraestructura","Sem histórico.":"Sin historial.","Sem indicadores comparáveis entre as rodadas selecionadas.":"Sin indicadores comparables entre las rondas seleccionadas.","Sem infraestrutura, os moradores estão abandonando a cidade!":"¡Sin infraestructura, los habitantes están abandonando la ciudad!","Sem intermediários, a comunidade fica com todo o lucro! Modelo replicado em todo o cerrado.":"¡Sin intermediarios, la comunidad se queda con todas las ganancias! Modelo replicado en todo el cerrado.","Sem lei, a proteção depende de vontade. E vontade pode enfraquecer.":"Sin ley, la protección depende de la voluntad. Y la voluntad puede debilitarse.","Sem liderança, tudo desmorona.":"Sin liderazgo, todo se desmorona.","Sem nenhuma organização, o caos tomou conta!":"¡Sin ninguna organización, el caos se apoderó!","Sem nome":"Sin nombre","Sem nome do empreendimento para buscar CNPJ":"Sin nombre del emprendimiento para buscar CNPJ","Sem nÃvel":"Sin nivel","Sem nÃvel definido":"Sin nivel definido","Sem organização":"Sin organización","Sem organização, estruturas entraram em colapso!":"¡Sin organización, las estructuras colapsaron!","Sem organização, muitos voltam aos agrotóxicos por pressão econômica.":"Sin organización, muchos vuelven a los agrotóxicos por presión económica.","Sem pasta":"Sin carpeta","Sem permissão para salvar cenários nesta organização.":"Sin permiso para guardar escenarios en esta organización.","Sem prazo":"Sin plazo","Sem queimar lenha, a caatinga pode se regenerar!":"¡Sin quemar leña, la caatinga puede regenerarse!","Sem rankings públicos entre municÃpios; o Ãndice I-SISTUR é apenas interno.":"Sin rankings públicos entre municipios; el Ãndice I-SISTUR es solo interno.","Sem rankings:":"Sin clasificaciones:","Sem reciclagem, o lixo cresce.":"Sin reciclaje, la basura crece.","Sem recuperação, a serra se degrada permanentemente.":"Sin recuperación, la sierra se degrada permanentemente.","Sem registros.":"Sin registros.","Sem regra especÃfica â exibido com até 2 casas decimais.":"Sin regla especÃfica â se muestra con hasta 2 decimales.","Sem responsável":"Sin responsable","Sem resposta":"Sin respuesta","Sem resultados":"Sin resultados","Sem sinal forte: manter diária":"Sin señal fuerte: mantener diaria","Sem usuário autenticado":"Sin usuario autenticado","Sem usuários.":"Sin usuarios.","Sem vigilância ativa, os navios continuam invadindo esporadicamente.":"Sin vigilancia activa, los barcos continúan invadiendo esporádicamente.","Sem você, a floresta fica sem defesa. Os madeireiros avançam sem parar.":"Sin usted, el bosque queda indefenso. Los madereros avanzan sin parar.","Sem árvores, o solo não segura.":"Sin árboles, el suelo no aguanta.","Semente de Futuro":"Semilla del Futuro","Sementes de Esperança":"Semillas de Esperanza","Sementes nativas são tesouros do cerrado.":"Las semillas nativas son tesoros del cerrado.","Sementes viajam pelo vento e criam novas florestas.":"Las semillas viajan por el viento y crean nuevos bosques.",Semântica:"Semántica",Senha:b6,"Senha *":"Contraseña *","Senha alterada com sucesso!":"¡Contraseña camb
366iada con éxito!","Senha inicial (mÃnimo 6 caracteres)":"Contraseña inicial (mÃnimo 6 caracteres)",Sensibilização:"Sensibilización",Sentimento:A6,"Separe os mercados por vÃrgula":"Separe los mercados por coma","Serra AcessÃvel":"Sierra Accesible","Serra da Mantiqueira":"Sierra de Mantiqueira","Sertão Educador":"Sertón Educador","Sertão Elétrico":"Sertón Eléctrico","Servidor de autenticação indisponÃvel":"Servidor de autenticación no disponible","Serviço de Fila":"Servicio de Cola",Serviços:"Servicios","Serviços TurÃsticos":"Servicios TurÃsticos","Serviços turÃsticos registrados":"Servicios turÃsticos registrados","Serão enviados {{v0}} e-mail(s) individualmente":"Se enviarán {{v0}} correo(s) electrónico(s) individualmente","Sessão excluÃda!":"¡Sesión eliminada!",Sessões:"Sesiones","Sessões Salvas ({{v0}})":"Sesiones Guardadas ({{v0}})","Sessões são salvas automaticamente.":"Las sesiones se guardan automáticamente.",Set:"Establecer","Setor Público":"Sector Público","Seu Perfil":"Su Perfil",'Seu bar faz sucesso, mas gera mais lixo na praia. Tartarugas marinhas não conseguem mais desovar por c
366ausa das luzes e do barulho. Dona Carmem, pescadora de 70 anos, te confronta: "Você veio ajudar ou destruir?"':'Su bar tiene éxito, pero genera más basura en la playa. Las tortugas marinas ya no pueden desovar debido a las luces y el ruido. Doña Carmen, una pescadora de 70 años, le confronta: "¿Vino a ayudar o a destruir?"',"Seu municÃpio será o lÃder do consórcio. Você poderá convidar outros municÃpios em seguida.":"Su municipio será el lÃder del consorcio. Podrá invitar a otros municipios a continuación.","Seu navegador não suporta reconhecimento de voz":"Su navegador no es compatible con el reconocimiento de voz","Seu nome":"Su nombre","Seu nome completo":"Tu nombre completo","Seu nome e avatar são visÃveis para todos":"Su nombre y avatar son visibles para todos","Seu perÃodo de avaliação expirou":"Su perÃodo de evaluación ha expirado","Seu perÃodo de avaliação expirou.":"Su perÃodo de evaluación ha expirado.","Seu progresso na trilha":"Tu progreso en la ruta de aprendizaje","Seu trabalho transformou a região! A floresta se recupera, a biodiversidade retorna, e a comunidade vive em harmonia com o meio ambiente. Você se tornou uma referência em conservação ambiental. A floresta amazônica, patrimônio da humanidade, tem um futuro mais esperançoso graças à s suas escolhas.":"¡Su trabajo transformó la región! El bosque se recupera, la biodiversidad regresa y la comunidad vive en armonÃa con el medio ambiente. Usted se convirtió en una referencia en conservación ambiental. La selva amazónica, patrimonio de la humanidad, tiene un futuro más esperanzador gracias a sus elecciones.","Seu valor foi preservado. Compare com o que foi encontrado online e escolha qual manter.":"Su valor fue preservado. Compare con lo que se encontró en lÃnea y elija cuál mantener.","Seu valor:":"Su valor:","Seus diagnósticos:":"Sus diagnósticos:","Seus relatórios:":"Sus informes:",Severidade:y6,"Severidade dos pilares":"Severidad de los pilares","Seções incluem: resumo executivo, scores por pilar, indicadores detalhados.":"Las secciones incluyen: resumen ejecutivo, puntuaciones por pilar, indicadores detallados.","Share %":"Share %","Share:":"Share:",ShieldAlert:S6,"Siga o fluxo para criar uma nova avaliação":"Siga el flujo para crear una nueva evaluación",Sim:E6,"Sim (1) ou Não (0)":"Sà (1) o No (0)","Sim ou Não":"Sà o No","Sim! Os 22 indicadores Empresarial foram mapeados para os três pilares (RA, OE, AO) da teoria sistêmica de Mario Beni. Indicadores de sustentabilidade pertencem ao RA, infraestrutura ao OE, e operações ao AO. As mesmas 6 regras IGMA são aplicadas, e 6 indicadores (NPS, Reviews, Treinamento, Emprego Local, Compras Locais, Certificações) são compartilhados entre módulos.":"¡SÃ! Los 22 indicadores Empresarial fueron mapeados a los tres pilares (RA, OE, AO) de la teorÃa sistémica de Mario Beni. Los indicadores de sostenibilidad pertenecen a RA, la infraestructura a OE y las operaciones a AO. Se aplican las mismas 6 reglas IGMA, y 6 indicadores (NPS, Reseñas, Capacitación, Empleo Local, Compras Locales, Certificaciones) se comparten entre módulos.","Sim! Todo o conteúdo educacional está disponÃvel 24/7. Você pode pausar e retomar de onde parou a qualquer momento. Seu progresso é salvo automaticamente.":"¡SÃ! Todo el contenido educativo está disponible 24/7. Puede pausar y reanudar donde lo dejó en cualquier momento. Su progreso se guarda automáticamente.","Sim, adicionar dados":"SÃ, agregar datos","Sim, voltar para edição":"SÃ, volver a la edición","Sim. A troca é imediata e o valor é ajustado proporcionalmente na próxima fatura.":"SÃ. El cambio es inmediato y el valor se ajusta proporcionalmente en la próxima factura.","Sim/Não (1 = sim, 0 = não).":"SÃ/No (1 = sÃ, 0 = no).",Simulador:C6,"Simulador de Indicadores":"Simulador de Indicadores","Simular Indicador":"Simular Indicador","Simulação de cenários":"Simulación de escenarios","Simulação local: ajuste os indicadores para estimar o efeito no Ãndice de cada pilar. Nada é salvo e o diagnóstico oficial permanece inalterado.":"Simulación local: ajuste los indicadores para estimar el efecto en el Ãndice de cada pilar. Nada se guarda y el diagnóstico oficial permanece inalterado.","Simulações de cenários futuros":"Simulaciones de escenarios futuros","Simule o cálculo de normalização de indicadores":"Simule el cálculo de normalización de indicadores","Simule o cálculo de normalização de indicadores SISTUR":"Simule el cálculo de normalización de indicadores SISTUR","Simule o
366impacto de um valor em um indicador especÃfico":"Simule el impacto de un valor en un indicador especÃfico","Simule valores e veja o impacto nos pilares":"Simule valores y vea el impacto en los pilares","Sinais Públicos de Sustentabilidade":"Señales Públicas de Sostenibilidad","Sinais de Demanda e Interesse (Trends)":"Señales de Demanda e Interés (Trends)","Sinais de Sustentabilidade â fontes públicas (Auto)":"Señales de Sostenibilidad â fuentes públicas (Auto)","Sinais de sustentabilidade analisados":"Señales de sostenibilidad analizadas","Sinais negativos":"Señales negativas","Sinais positivos":"Señales positivas","Sinais públicos de segurança: notÃcias, presença de polÃcia turÃstica e alertas ativos":"Señales públicas de seguridad: noticias, presencia de policÃa turÃstica y alertas activas","Sinaliza risco de overtourism quando excede limites da capacidade de carga.":"Señaliza riesgo de overtourism cuando excede lÃmites de la capacidad de carga.",Sinalização:"Señalización","Sinalização de dependência":"Señalización de dependencia","Sinalização em Braille":"Señalización en Braille","Sinalização turÃstica":"Señalización turÃstica","Sincronizando registro de testes...":"Sincronizando registro de pruebas...","Sincronizando...":"Sincronizando...",Sincronizar:T6,"Sincronizar Testes":"Sincronizar Pruebas",Sincronização:"Sincronización","Sincronização automática diária de ADR, RevPAR, ocupação e demais KPIs operacionais. Substitui o CSV manual quando ativo.":"Sincronización automática diaria de ADR, RevPAR, ocupación y demás KPIs operacionales. Sustituye el CSV manual cuando está activo.","Sincronização disparada.":"Sincronización disparada.","Sincronização iniciada!":"¡Sincronización iniciada!","Sistema Integrado de Gestão do Turismo":"Sistema Integrado de Gestión del Turismo","Sistema Operacional":"Sistema Operativo","Sistema Saudável":"Sistema Saludable","Sistema busca automaticamente dados de fontes públicas nacionais, explicitando fonte, ano e nÃvel de confiança.":"El sistema busca automáticamente datos de fuentes públicas nacionales, explicitando fuente, año y nivel de confianza.","Sistema de Acesso *":"Sistema de Acceso *","Sistema de Inteligência Territorial":"Sistema de Inteligencia Territorial","Sistema de Inteligência Territorial para Sustentabilidade TurÃstica":"Sistema de Inteligencia Territorial para la Sostenibilidad TurÃstica","Sistema de Inteligência Territorial para o Turismo":"Sistema de Inteligencia Territorial para el Turismo","Sistema de Inteligência Territorial para o Turismo (SISTUR)":"Sistema de Inteligencia Territorial para el Turismo (SISTUR)","Sistema de Referral":"Sistema de Referral","Sistema de Turismo Sustentável":"Sistema de Turismo Sostenible","Sistema de denúncia e moderação de conteúdo configurável por organização":"Sistema de denuncia y moderación de contenido configurable por organización","Sistema de exames com anti-cheat: fullscreen enforcement, tab-switch detection, time limits":"Sistema de exámenes con anti-cheat: fullscreen enforcement, tab-switch detection, time limits","Sistema de mensagens entre alunos e professores":"Sistema de mensajes entre alumnos y profesores","Sistema de prescrição determinÃstica de capacitação":"Sistema de prescripción determinista de capacitación","Sistema de prescrição determinÃstica: mapeamento indicador â capacitação":"Sistema de prescripción determinÃstica: mapeo indicador â capacitación","Sistema educacional integrado ao diagnóstico.":"Sistema educativo integrado al diagnóstico.","Sistema onde tudo é reutilizado e reciclado":"Sistema donde todo se reutiliza y recicla","Sistema unificado de notificações":"Sistema unificado de notificaciones","Sistema visual de fluxo contÃnuo de trabalho":"Sistema visual de flujo continuo de trabajo",Site:P6,"Site (opcional)":"Sitio web (opcional)","Site Oficial":"Sitio Web Oficial","Site oficial + certificadoras":"Sitio oficial + certificadoras",Situação:"Situación","Situação:":"Situación:","Smoke test":"Smoke test","Snapshot imutável de dados, fontes e confiabilidade por diagnóstico":"Snapshot inmutable de datos, fuentes y confiabilidad por diagnóstico","Sob Demanda":"Bajo Demanda","Sob consulta":"Bajo consulta","Sobre o CADASTUR":"Sobre CADASTUR","Sobre o Professor Beni":"Sobre el Profesor Beni","Sobre o Professor e tópicos":"Sobre el Profesor y temas","Sobre o SISTUR":"Acerca de SISTUR","Sobre o diagnóstico":"Sobre el diagnóstico","Sobre os NÃveis de Diagnóstico":"Acerca de los Niveles de Diagnóstico","Sobre um indicador":"Sobre un indicador","Sobre um pilar":"Sobre un pilar","S
366obreposições de Peso por Indicador":"Anulaciones de Peso por Indicador",Social:R6,"Social Turismo":"Social Turismo",Socioeconômica:"Socioeconómica",Socioeconômico:"Socioeconómico","Socorrer o lobo e denunciar a queimada ilegal":"Socorrer al lobo y denunciar la quema ilegal","Sol do Sertão":"Sol del Sertón","Solar, eólica e hidrelétrica são fontes renováveis de energia.":"Solar, eólica e hidroeléctrica son fuentes renovables de energÃa.","Solicitado em":"Solicitado el","Solicitar Acesso":"Solicitar Acceso","Solicitação Recebida":"Solicitud Recibida","Solicitação criada! Gerando conteúdo...":"¡Solicitud creada! Generando contenido...","Solicitação do usuário":"Solicitud del usuario","Solicitação enviada com sucesso!":"¡Solicitud enviada con éxito!","Solicitação enviada! Aguarde aprovação do administrador.":"¡Solicitud enviada! Espere la aprobación del administrador.","Solicitação rejeitada":"Solicitud rechazada","Solicite conteúdos personalizados para suas necessidades":"Solicita contenidos personalizados según tus necesidades","Solicite dados à associação hoteleira local, ABIH regional ou Secretaria de Turismo. Média anual da ocupação dos meios de hospedagem.":"Solicite datos a la asociación hotelera local, ABIH regional o SecretarÃa de Turismo. Promedio anual de ocupación de los medios de hospedaje.","Solte o arquivo aqui para importar":"Suelte el archivo aquà para importar","Solte tarefas aqui":"Suelte tareas aquÃ",Solução:"Solución","Solução cara e temporária...":"Solución cara y temporal...","Soma atual:":"Suma actual:","Soma deve totalizar 100%":"La suma debe totalizar 100%","Soma dos pesos":"Suma de los pesos","Soma dos pesos é zero â não é possÃvel normalizar":"La suma de los pesos es cero â no es posible normalizar","Soma total":"Suma total",'Some o total de avaliações em todas as plataformas: Google Maps + TripAdvisor + Booking + Expedia. A "Busca Automática" também pode calcular isso.':'Sume el total de evaluaciones en todas las plataformas: Google Maps + TripAdvisor + Booking + Expedia. La "Búsqueda Automática" también puede calcular esto.',"Somente admins podem adicionar/remover":"Solo los administradores pueden añadir/eliminar","Somente alunos vinculados via referral aparecem na lista.":"Solamente alumnos vinculados vÃa referral aparecen en la lista.","Somente meus":"Solo los mÃos","Somente você terá acesso a este diagnóstico.":"Solo usted tendrá acceso a este diagnóstico.","Sou o Professor Mario Beni. Posso ajudá-lo a entender a teoria sistêmica do turismo e como ela se aplica ao seu território.":"Soy el Profesor Mario Beni. Puedo ayudarle a comprender la teorÃa sistémica del turismo y cómo se aplica a su territorio.","Spam e memes":"Spam y memes","Spam na internet":"Spam en internet","Spam ou propaganda":"Spam o publicidad","Sprint 1":"Sprint 1","Sprint 2":"Sprint 2","Sprint 3":"Sprint 3","Sprint 4":"Sprint 4","Sprint Execution":"Ejecución del Sprint","Sprint Planning":"Planificación del Sprint","Sprint Retrospective":"Retrospectiva del Sprint","Sprint Review":"Revisión del Sprint","Sprints com entregas incrementais":"Sprints con entregas incrementales",Stage:x6,Status:w6,"Status atual por função":"Estado actual por función","Status canônico (CRÃTICO/ATENÃÃO/ADEQUADO/FORTE/EXCELENTE) e padrão BRL.":"Estado canónico (CRÃTICO/ATENCIÃN/ADECUADO/FUERTE/EXCELENTE) y estándar BRL.","Status da Conexão":"Estado de la Conexión","Status das MatrÃculas":"Estado de las Inscripciones","Status determinÃstico (Adequado/Atenção/CrÃtico)":"Estado determinÃstico (Adecuado/Atención/CrÃtico)","Status do Fluxo":"Estado del Flujo","Status do lead atualizado.":"Estado del lead actualizado.","Status é calculado automaticamente com base no score normalizado. Nunca é editável manualmente.":"El estado se calcula automáticamente en base al score normalizado. Nunca es editable manualmente.","Status:":"Estado:","Stays (API Key)":"Stays (Clave API)",Storage:I6,"Story Points":"Puntos de Historia",Streak:D6,"Streak atual:":"Racha actual:",Streaks:O6,"Streaks ativos":"Rachas activas","Sua arrogância destruiu a última chance de cooperação.":"Tu arrogancia destruyó la última oportunidad de cooperación.","Sua assinatura está ativa. Use Gerenciar conta para ajustar usuários, forma de pagamento e faturas.":"Su suscripción está activa. Use Administrar cuenta para ajustar usuarios, forma de pago y facturas.","Sua avaliação":"Tu evaluación","Sua conta está bloqueada. Entre em contato com o administrador da sua organização para restabelecer o acesso.":"Su cuenta está bloqueada. Póngase en contacto con el administrador de su organización para restablecer el acceso.","Sua conta está bloqueada. Entre em contato com o administrador da sua organização.":"Su
366cuenta está bloqueada. Póngase en contacto con el administrador de su organización.","Sua diária (média)":"Su tarifa diaria (media)","Sua identidade será exibida em posts públicos":"Su identidad se mostrará en publicaciones públicas","Sua investigação revela que três grandes hotéis despejam esgoto sem tratamento no oceano. Os recifes de coral estão morrendo e peixes desaparecendo.":"Tu investigación revela que tres grandes hoteles vierten aguas residuales sin tratar en el océano. Los arrecifes de coral están muriendo y los peces desapareciendo.","Sua investigação revela uma rede organizada de extração ilegal de madeira. Você encontra um acampamento oculto com equipamentos pesados. De repente, ouve vozes se aproximando.":"Tu investigación revela una red organizada de extracción ilegal de madera. Encuentras un campamento oculto con equipos pesados. De repente, oyes voces acercándose.","Sua nota (último snapshot)":"Su nota (última instantánea)","Sua omissão e ganância permitiram a destruição total. O cerrado virou cinzas, os rios secaram e as comunidades tradicionais perderam tudo. Onde havia vida, só resta pó e arrependimento. O coração do Brasil parou de bater.":"Tu omisión y avaricia permitieron la destrucción total. El cerrado se volvió cenizas, los rÃos se secaron y las comunidades tradicionales lo perdieron todo. Donde habÃa vida, solo quedan polvo y arrepentimiento. El corazón de Brasil dejó de latir.","Sua opinião é importante para melhorar o SISTUR":"Su opinión es importante para mejorar SISTUR","Sua organização ainda não tem acesso ao diagnóstico enterprise. Fluxo territorial selecionado.":"Su organización aún no tiene acceso al diagnóstico enterprise. Flujo territorial seleccionado.","Sua organização foi convidada a participar de um arranjo regional.":"Su organización ha sido invitada a participar en un arreglo regional.","Sua rede está lenta ou bloqueando. Tente outra rede (4G/5G) ou desative VPN.":"Tu red está lenta o bloquea la conexión. Prueba otra red (4G/5G) o desactiva la VPN.","Sua resposta":"Tu respuesta","Sua resposta:":"Tu respuesta:","Sua rodada de teste foi concluÃda. Os resultados completos â scores dos pilares RA, OE e AO, gargalos, prescrições EDU e relatórios â ficam disponÃveis ao contratar um plano.":"Su ronda de prueba ha concluido. Los resultados completos âscores de los pilares RA, OE y AO, cuellos de botella, prescripciones EDU e informesâ están disponibles al contratar un plan.","Sua saúde chegou a zero pelas armadilhas ambientais.":"Su salud llegó a cero por las trampas ambientales.","Sua sessão expirou. Entre novamente para gerenciar a conta.":"Su sesión ha expirado. Inicie sesión de nuevo para gestionar la cuenta.","Sua solicitação de acesso foi recebida e está sendo analisada.":"Tu solicitud de acceso fue recibida y está siendo revisada.","Suas Cartas":"Tus Cartas","Suas ações definem quem você é.":"Tus acciones definen quién eres.","Suas conversas são salvas e você pode retomá-las depois.":"Tus conversaciones se guardan y puedes retomarlas después.","Suas decisões determinam o destino do bioma:\nð Restaurado â você salvou o bioma!\nð Degradado â o bioma não resistiu\nð Neutro â sobreviveu, mas poderia ser melhor":`Tus decisiones determinan el destino del bioma: 367ð Restaurado â ¡salvaste el bioma! 368ð Degradado â el bioma no resistió 369ð Neutro â sobrevivió, pero podrÃa ser mejor`,"Suas decisões determinam o destino do bioma: ð Restaurado â você salvou o bioma! ð Degradado â o bioma não resistiu ð Neutro â sobreviveu, mas poderia ser melhor":"Sus decisiones determinan el destino del bioma: ð Restaurado â ¡usted salvó el bioma! ð Degradado â el bioma no resistió ð Neutro â sobrevivió, pero podrÃa ser mejor","Suas decisões determinam o destino do bioma:\\nð Restaurado â você salvou o bioma!\\nð Degradado â o bioma não resistiu\\nð Neutro â sobreviveu, mas poderia ser melhor":"Tus decisiones determinan el destino del bioma:\\nð Restaurado â ¡salvaste el bioma!\\nð Degradado â el bioma no resistió\\nð Neutro â sobrevivió, pero podrÃa estar mejor","Suas escolhas levaram ao pior cenário possÃvel. A floresta foi devastada, a comunidade se dispersou e a biodiversidade foi perdida de forma irreversÃvel. Os rios secaram, o clima mudou e o que era paraÃso virou deserto verde. Esta é uma lição dolorosa: cada decisão importa, e a inação é a pior das ações.":"Tus elecciones llevaron al peor escenario posible. La selva fue devastada, la comunidad se dispersó y la biodiversidad se perdió de forma irreversible. Los rÃos se secaron, el clima cambió y lo que era paraÃso se convirtió en desierto verde. Esta es una lección dolorosa: cada decisión importa, y la inacción es la peor de las acciones.","Suas escolhas sustentáveis restauraram o bioma!":"¡Sus elecciones sostenibles restauraron el bioma!","Suas fotos serão provas cruciais. Você consegue sair sem ser visto.":"Tus fotos serán pruebas cruciales. Logras salir sin ser visto.",Submeter:M6,"Submeter evidência":"Enviar evidencia","Substitui o antigo trial de 7 dias.":"Sustituye el antiguo trial de 7 dÃas.","Substitui o preenchimento manual. Se apenas um dos componentes existir, será usado isoladamente.":"Sustituye el llenado manual. Si solo uno de los componentes existe, se usará aisladamente.",Substituir:N6,"Sugerir tarefas com inteligência SISTUR":"Sugerir tareas con inteligencia SISTUR",Sugestão:"Sugerencia","Sugestão de diária por mês com base em ocupação, eventos e referência de mercado. à só uma sugestão: nenhum preço é alterado em outros sistemas.":"Sugerencia de tarifa diaria por mes basada en ocupación, eventos y referencia de mercado. Es solo una sugerencia: ningún precio se modifica en otros sistemas.","Sugestão de seções:":"Sugerencia de secciones:","Sugestão enviada com sucesso!":"¡Sugerencia enviada con éxito!","Sugestão oficial:":"Sugerencia oficial:","Sugestão:":"Sugerencia:",Sugestões:"Sugerencias","Sugestões automáticas â revise datas e nomes antes de importar. Fontes consultadas: {{v0}}.":"Sugerencias automáticas â revise fechas y nombres antes de importar. Fuentes consultadas: {{v0}}.","Sugestões de capacitação":"Sugerencias de capacitación","Sugestões de features e bugs reportados pelos usuários":"Sugerencias de caracterÃsticas y errores reportados por los usuarios",Sumário:"Ãndice","Sumário Executivo â":"Resumen Ejecutivo â","Sumário executivo, Diagnóstico consolidado por pilar, Top 5 indicadores crÃticos, Recomendações priorizadas e Próximos passos.":"Resumen ejecutivo, Diagnóstico consolidado por pilar, Top 5 indicadores crÃticos, Recomendaciones priorizadas y Próximos pasos.","Supabase Auth (email/password) com Row Level Security":"Supabase Auth (email/password) con Row Level Security","Supabase Auth: email/password + verificação":"Supabase Auth: email/password + verificación",Superestrutura:z6,Superlotação:"Sobrepoblación","Suporte UTF-8/Latin1 e vÃrgula decimal BR":"Soporte UTF-8/Latin1 y coma decimal BR","Suporte a YouTube embeddings com ingestão automática de metadados":"Soporte a YouTube embeddings con ingesta automática de metadatos","Suporte a certificações":"Soporte a certificaciones","Suporte a decisões estratég
369icas":"Soporte a decisiones estratégicas","Suporte insatisfatório":"Soporte insatisfactorio","Surto de Doença":"Brote de Enfermedad",Sustentabilidade:j6,"Sustentabilidade & Acessibilidade":"Sostenibilidad y Accesibilidad","Sustentabilidade & ESG":"Sostenibilidad y ESG","Sustentabilidade Ambiental":"Sostenibilidad Ambiental","Sustentabilidade e meio ambiente":"Sostenibilidad y medio ambiente","Sympla + Eventbrite + agendas municipais":"Sympla + Eventbrite + agendas municipales","São 6 indicadores que aparecem tanto em diagnósticos territoriais quanto empresariais: NPS, Nota de Reviews Online, Horas de Treinamento por Funcionário, % Funcionários Locais, % Compras Locais e Nº de Certificações Ambientais. Eles medem aspectos relevantes para ambos os contextos (público e privado).":"Son 6 indicadores que aparecen tanto en diagnósticos territoriales como empresariales: NPS, Nota de Reviews Online, Horas de Capacitación por Empleado, % Empleados Locales, % Compras Locales y Nº de Certificaciones Ambientales. Miden aspectos relevantes para ambos contextos (público y privado).","São necessárias pelo menos 2 rodadas calculadas":"Se necesitan al menos 2 rondas calculadas","São reservas de madeira":"Son reservas de madera","São áreas de mineração":"Son áreas de minerÃa","São áreas naturais protegidas legalmente para conservação.":"Son áreas naturales protegidas legalmente para la conservación.","São áreas para construção":"Son áreas para construcción","Série histórica em {{v0}}":"Serie histórica en {{v0}}","SÃmbolos de ódio":"SÃmbolos de odio","Só existem com gatilho de diagnóstico (Atenção/CrÃtico) + pilar correspondente + interpretação territorial.":"Solo existen con gatillo de diagnóstico (Atención/CrÃtico) + pilar correspondiente + interpretación territorial.","TCG (Trading Card Game): batalhas com cartas de ameaças turÃsticas vs. defesas dos pilares":"TCG (Trading Card Game): batallas con cartas de amenazas turÃsticas vs. defensas de los pilares","TCG Guardião do Território: Jogo de cartas estratég
369ico.":"TCG Guardián del Territorio: Juego de cartas estratégico.","TCG â Guardião do Território":"TCG â Guardián del Territorio","TSE (Eleições)":"TSE (Elecciones)","TSE â Eleições":"TSE â Elecciones","TSE â Tribunal Superior Eleitoral":"TSE â Tribunal Superior Electoral","TSE, Anatel, CADASTUR":"TSE, Anatel, CADASTUR","TTS: ElevenLabs via":"TTS: ElevenLabs vÃa","Tabela Comparativa":"Tabla Comparativa","Tabela N â TÃtulo":"Tabla N â TÃtulo","Tabela de Referência MTur (gastos turÃsticos por UF)":"Tabla de Referencia MTur (gastos turÃsticos por UF)","Tabela de gastos médios por UF (referência interna)":"Tabla de gastos promedio por UF (referencia interna)","Tabelas Supabase":"Tablas Supabase","Tags indicam duração estimada e certificação.":"Las etiquetas indican duración estimada y certificación.","Tamanho da fonte":"Tamaño de fuente","Tamanho de fonte":"Tamaño de fuente","Tamanho máximo: 5 MB.":"Tamaño máximo: 5 MB.","Tamanho:":"Tamaño:","Tarde demais para impedir o estrago, mas talvez haja tempo para minimizar.":"Demasiado tarde para evitar el daño, pero tal vez haya tiempo para minimizarlo.","Tarde, mas melhor que nunca. A denúncia para a destruição, mas o estrago é grande.":"Tarde, pero mejor que nunca. La denuncia detiene la destrucción, pero el daño es grande.","Tarde, mas melhor que nunca. O cerrado sobrevive em fragmentos.":"Tarde, pero mejor que nunca. El cerrado sobrevive en fragmentos.","Tarde, mas necessário. A caatinga precisa urgente de recuperação.":"Tarde, pero necesario. La caatinga necesita recuperación urgente.",Tarefa:k6,"Tarefa criada":"Tarea creada","Tarefa movida":"Tarea movida",Tarefas:_6,"Tarefas Recentes":"Tareas Recientes","Tarefas atrasadas são destacadas em vermelho.":"Las tareas atrasadas se resaltan en rojo.","Tarefas concluÃdas":"Tareas completadas","Tarefas de um projeto, com responsável, prazo e status.":"Tareas de un proyecto, con responsable, plazo y estado.","Tarefas em que você é responsável ou aprovador, em todos os projetos da sua organização.":"Tareas en las que eres responsable o aprobador, en todos los proyectos de tu organización.","Tarefas que serão criadas ({{v0}})":"Tareas que se crearán ({{v0}})","Tarefas são atividades especÃficas dentro de cada fase.":"Las tareas son actividades especÃficas dentro de cada fase.","Tarefas: {{v0}}/{{v1}}":"Tareas: {{v0}}/{{v1}}",Taxa:q6,"Taxa Aprovação":"Tasa de Aprobación","Taxa Ocupação":"Tasa de Ocupación","Taxa de Conversão":"Tasa de Conversión","Taxa de Criminalidade":"Tasa de Criminalidad","Taxa de Cálculo":"Tasa de Cálculo","Taxa de Escolarização":"Tasa de Escolarización","Taxa de Escolarização: dados via Censo Escolar (coleta manual)":"Tasa de Escolarización: datos vÃa Censo Escolar (recopilación manual)","Taxa de Ocupação":"Tasa de Ocupación","Taxa de Ocupação Hoteleira":"Tasa de Ocupación Hotelera","Taxa de Ocupação Média (%)":"Tasa de Ocupación Media (%)","Taxa de Retorno":"Tasa de Retorno","Taxa de Sucesso":"Tasa de Ãxito","Taxa de aprovação":"Tasa de aprobación","Taxa de ocupação hoteleira abaixo do potencial":"Tasa de ocupación hotelera por debajo del potencial","Taxa de ocupação moderada - marketing e comercialização prescrito":"Tasa de ocupación moderada - marketing y comercialización prescriptos","Taxa de ocupação média mensal":"Tasa de ocupación promedio mensual","Taxa média anual de ocupação dos meios de hospedagem":"Tasa promedio anual de ocupación de los medios de hospedaje","Taxa per capita":"Tasa per cápita","Taxa por mil/100 mil habitantes ou similar â exibido com a unidade.":"Tasa por mil/100 mil habitantes o similar â se muestra con la unidad.","Tecido de algodão":"Tejido de algodón",Tecnologia:L6,"Tecnologia a serviço de todos!":"¡TecnologÃa al servicio de todos!","Tecnologia e comunidade juntas! Nenhum fogo passa despercebido.":"¡TecnologÃa y comunidad juntas! Ningún fuego pasa desapercibido.","Tecnologia na escola! Muito bom! ð¡":"¡TecnologÃa en la escuela! ¡Muy bien! ð¡",Telecom:U6,"Telefone (opcional)":"Teléfono (opcional)","Telhad
369os verdes resfriam edifÃcios e purificam o ar.":"Los techos verdes enfrÃan edificios y purifican el aire.","Tem certeza que deseja excluir":"¿Está seguro de que desea eliminar","Tem certeza que deseja excluir esta questão? Esta ação não pode ser desfeita.":"¿Está seguro de que desea eliminar esta pregunta? Esta acción no se puede deshacer.","Tem certeza que deseja excluir este treinamento? Esta ação não pode ser desfeita.":"Confirmas que deseas eliminar esta capacitación? Esta acción no se puede deshacer.",'Tem certeza que deseja excluir o módulo "':'¿Está seguro de que desea eliminar el módulo "',"Tem certeza que deseja excluir o projeto":"¿Está seguro de que desea eliminar el proyecto",Tema:B6,"Tema *":"Tema *","Tema:":"Tema:",Temas:F6,"Temas especÃficos de interesse":"Temas especÃficos de interés","Temperatura média (°C) por mês":"Temperatura media (°C) por mes",Template:G6,"Template Existente":"Plantilla Existente",Tempo:V6,"Tempo (min)":"Tiempo (min)","Tempo (minutos)":"Tiempo (minutos)","Tempo Médio":"Tiempo Promedio","Tempo Total":"Tiempo Total","Tempo Total Assistido":"Tiempo Total de Visualización","Tempo ativo":"Tiempo activo","Tempo de Check-in":"Tiempo de Check-in","Tempo de espera antes de nova tentativa":"Tiempo de espera antes de nuevo intento","Tempo de preenchimento":"Tiempo de llenado","Tempo de resposta saudável":"Tiempo de respuesta saludable","Tempo esgotado ao contatar o servidor":"Se agotó el tiempo de espera al contactar al servidor","Tempo esgotado! Exame enviado automaticamente.":"Tiempo agotado! Examen enviado automáticamente.","Tempo limite excedido aguardando o cálculo (5 min). Tente novamente.":"Tiempo lÃmite excedido esperando el cálculo (5 min). Intente nuevamente.","Tempo limite excedido. Tente uma pergunta mais curta.":"Tiempo lÃmite excedido. Intente una pregunta más corta.","Tempo máximo para completar o exame":"Tiempo máximo para completar el examen","Tempo restante:":"Tiempo restante:",Temporário:"Temporal","Tendência Temporal":"Tendencia Temporal","Tendência: {{v0}}":"Tendencia: {{v0}}","Tendências de demanda â busca pública (Auto)":"Tendencias de demanda â búsqueda pública (Auto)","Tendências de queda são destacadas com alertas.":"Las tendencias a la baja se destacan con alertas.","Tentar Novamente":"Intentar de Nuevo","Tentar novamente":"Intentar de nuevo","Tentativa não encontrada.":"Intento no encontrado.",Tentativas:$6,"Tentativas extras":"Intentos extra","Tentativas máx":"Intentos máx","Tente ajustar os filtros de busca para encontrar o conteúdo desejado.":"Intenta ajustar los filtros de búsqueda para encontrar el contenido deseado.","Tente ajustar os filtros de busca.":"Intenta ajustar los filtros de búsqueda.","Tente ajustar seus filtros para encontrar o que procura.":"Intenta ajustar tus filtros para encontrar lo que buscas.","Tente ajustar sua busca.":"Intenta ajustar tu búsqueda.",'Tente alcançar o final "Restaurado" em todos os biomas! ð':'¡Intenta alcanzar el final "Restaurado" en todos los biomas! ð',"Tente novamente em alguns minutos. Se persistir, contate o suporte.":"Intenta de nuevo en unos minutos. Si el problema persiste, contacta al soporte.","Tente novamente.":"Intente de nuevo.","Tente um termo diferente":"Intente un término diferente","Tente usar outros termos de busca":"Intenta usar otros términos de búsqueda","Terceira Idade":"Tercera Edad","Terceira iteração de desenvolvimento":"Tercera iteración de desarrollo",Termos:H6,"Termos aceitos com sucesso":"Términos aceptados con éxito","Termos de Uso":"Términos de Uso","Termos e Condições de Uso":"Términos y Condiciones de Uso","Terra Seca, Coração Forte":"Tierra Seca, Corazón Fuerte","Terra de Direito":"Tierra de Derecho","Terras tituladas são terras protegidas!":"¡Tierras tituladas son tierras protegidas!","Terreno elevado e clima frio":"Terreno elevado y clima frÃo",Territoriais:W6,Territorial:Q6,"Territorial ({{v0}})":"Territorial ({{v0}})","Territorial vs Empresarial vs Ambos":"Territorial vs Empresarial vs Ambos","Território (opcional)":"Territorio (opcional)","Tese de investimento, Contexto de mercado, Indicadores de atratividade, Riscos e mitigadores, Oportunidades de aporte, Indicadores de retorno esperado e Pipeline de projetos correlatos.":"Tesis de inversión, Contexto de mercado, Indicadores de atractivo, Riesgos y mitigadores, Oportunidades de inversión, Indicadores de retorno esperado y Pipeline de proyectos correlacionados.",Tesouros:K6,"Tesouros valem pontos â colete todos para a pontuação máxima!":"¡Los tesoros valen pu
369ntos â recógelos todos para obtener la puntuación máxima!","Tesouros:":"Tesoros:","Testa banco de dados, edge functions, armazenamento e integridade de dados":"Prueba base de datos, edge functions, almacenamiento e integridad de datos","Teste manual (smoke test) registra a execução no histórico abaixo.":"La prueba manual (smoke test) registra la ejecución en el historial a continuación.","Texto do Cabeçalho":"Texto del Encabezado","Texto do Rodapé":"Texto del Pie de Página","Texto exibido no topo de cada página":"Texto que se muestra en la parte superior de cada página","Texto/Artigo":"Texto/ArtÃculo","Texto/markdown injetado no prompt do gerador de relatórios. Seja imperativo e direto (use 'sempre', 'nunca', listas numeradas).":"Texto/markdown inyectado en el prompt del generador de informes. Sea imperativo y directo (use 'siempre', 'nunca', listas numeradas).",Teórica:"Teórica",Tier:Y6,"Tier atualizado com sucesso":"Nivel actualizado correctamente","Tier de Diagnóstico":"Nivel de Diagnóstico","Tier:":"Nivel:",TikTok:J6,Timeline:X6,Tipo:Z6,"Tipo da regra. 'methodology' = base teórica; 'classification' = réguas/limiares; 'anti_hallucination' = regras de proibição; 'formatting' = formato de saÃda; 'sources' = fontes oficiais; 'glossary' = definições.":"Tipo de regla. 'methodology' = base teórica; 'classification' = umbrales/lÃmites; 'anti_hallucination' = reglas de prohibición; 'formatting' = formato de salida; 'sources' = fuentes oficiales; 'glossary' = definiciones.","Tipo de Acesso":"Tipo de Acceso","Tipo de Dados":"Tipo de Datos","Tipo de Diagnóstico":"Tipo de Diagnóstico","Tipo de E-mail":"Tipo de Correo Electrónico","Tipo de Empreendimento":"Tipo de Emprendimiento","Tipo de Entidade":"Tipo de Entidad","Tipo de Normalização":"Tipo de Normalización","Tipo de feedback":"Tipo de feedback","Tipo e Porte":"Tipo y Tamaño","Tipo:":"Tipo:","Tipologias detectadas":"TipologÃas detectadas","Tipos de Escolha":"Tipos de Elección","Tipos de Eventos":"Tipos de Eventos","Tipos de Relatório":"Tipos de Informe","Tipos de solo":"Tipos de suelo","Tirar fotos e postar":"Tomar fotos y publicar","Tire nota de aprovação em 1 exame.":"Obtenga una nota de aprobación en 1 examen.","Tire suas dúvidas sobre o SISTUR":"Resuelve tus dudas sobre SISTUR","Tire suas dúvidas sobre o Sistema de Inteligência Territorial para o Turismo":"Resuelva sus dudas sobre el Sistema de Inteligencia Territorial para el Turismo","Tirou 100% em um exame":"Obtuvo 100% en un examen","Toast por bloco com origem (Google, Booking, ANACâ¦)":"Toast por bloque con origen (Google, Booking, ANACâ¦)","Toda a base anterior foi convertida automaticamente (grandfathering): usuários e organizações existentes não passam pelo trial.":"Toda la base anterior fue convertida automáticamente (grandfathering): usuarios y organizaciones existentes no pasan por la prueba.","Toda a turma":"Toda la clase","Toda a turma ({{v0}} alunos)":"Toda la clase ({{v0}} alumnos)","Toda prescrição obedece a três condições obrigatórias:":"Toda prescripción obedece a tres condiciones obligatorias:",'Toda trilha pode ter provas finais por pilar coberto (RA, OE e/ou AO). A configuração padrão usa 20 questões, nota mÃnima de 70%, 60 minutos de duração e 2 tentativas. Ao criar uma trilha, o checkbox "Gerar provas finais automaticamente" (marcado por padrão) cria os rulesets imediatamente; o botão "Gerar provas" no detalhe da trilha permite regenerar a qualquer momento. As trilhas pré-prontas existentes receberam backfill automático dessas provas.':'Cada ruta puede tener pruebas finales por pilar cubierto (RA, OE y/o AO). La configuración predeterminada utiliza 20 preguntas, nota mÃnima del 70%, 60 minutos de duración y 2 intentos. Al crear una ruta, la casilla de verificación "Generar pruebas finales automáticamente" (marcada por defecto) crea los rulesets inmediatamente; el botón "Generar pruebas" en el detalle de la ruta permite regenerar en cualquier momento. Las rutas pre-diseñadas existentes recibieron un backfill automático de estas pruebas.',Todas:eQ,"Todas (territorial + enterprise)":"Todas (territorial + enterprise)","Todas UFs":"Todas las UFs","Todas as Tarefas":"Todas las Tareas","Todas as ações são registradas no log de auditoria.":"Todas las acciones se registran en el log de auditorÃa.","Todas as barras acima de 50":"Todas las barras por encima de 50","Todas as categorias":"Todas las categorÃas","Todas as nascentes da serra estão mapeadas e protegidas. A água volta a fluir e cidades inteiras se beneficiam.":"Todos los nacimientos de la sierra están mapeados y protegidos. El agua vuelve a fluir y ciudades enteras se benefician.","Todas as nascentes da serra são mapeadas e protegidas!":"¡Todos los nacimientos de la sierra están mapeados y protegidos!","Todas as organizações":"Todas las organizaciones","Todas as questões dissertativas foram corrigidas.":"Todas las preguntas discursivas han sido corregidas.","Todas as recomendações":"Todas las recomendaciones","Todas as unidades":"Todas las unidades","Todas as unidades (marca)":"Todas las unidades (marca)","Todas as âncoras":"Todas las anclas","Todas coletas":"Todas las recolecciones","Todo mundo pode andar com segurança! ð¶ââï¸":"¡Todo el mund
369o puede caminar con seguridad! ð¶ââï¸","Todo novo usuário recebe 7 dias gratuitos com acesso completo ao AnalÃtico, EDU e Jogos. Aproveite para explorar todas as funcionalidades!":"Todo nuevo usuario recibe 7 dÃas gratuitos con acceso completo a AnalÃtico, EDU y Juegos. ¡Aproveche para explorar todas las funcionalidades!","Todo relatório passa por duas etapas obrigatórias antes de ser persistido: (1) Auto-correção determinÃstica â o pipeline compara cada número citado pelo texto contra a tabela canônica de assessment_indicator_audit; divergências acima de 5% são corrigidas automaticamente. (2) Validação por agente IA (gemini-2.5-pro) que relê o texto pós-correção e produz um relatório de validação salvo em report_validations. O resultado aparece como um banner no topo do relatório (limpo, com avisos ou auto-corrigido). Esta é a polÃtica Zero Alucinação: nenhum número, ano ou fonte pode ser inventado pela IA.":"Todo informe pasa por dos etapas obligatorias antes de ser persistido: (1) Auto-corrección determinÃstica â el pipeline compara cada número citado por el texto contra la tabla canónica de assessment_indicator_audit; las divergencias superiores al 5% se corrigen automáticamente. (2) Validación por agente IA (gemini-2.5-pro) que relee el texto post-corrección y produce un informe de validación guardado en report_validations. El resultado aparece como un banner en la parte superior del informe (limpio, con advertencias o auto-corregido). Esta es la polÃtica Cero Alucinación: ningún número, año o fuente puede ser inventado por la IA.",Todos:aQ,"Todos (":"Todos (","Todos da organização":"Todos los de la organización","Todos escopos ({{v0}})":"Todos los alcances ({{v0}})","Todos os Destinos":"Todos los Destinos","Todos os Status":"Todos los Estados","Todos os dados foram preenchidos. Clique no botão abaixo para calcular os Ãndices e gerar o diagnóstico.":"Se completaron todos los datos. Haz clic en el botón de abajo para calcular los Ãndices y generar el diagnóstico.","Todos os destinos":"Todos los destinos","Todos os destinos disponÃveis já foram adicionados.":"Todos los destinos disponibles ya han sido añadidos.","Todos os eventos do pipeline são gravados em":"Todos los eventos del pipeline se graban en","Todos os indicadores ativos":"Todos los indicadores activos","Todos os indicadores estão com status Adequado. Não há prescrições corretivas necessárias neste momento.":"Todos los indicadores están en estado Adecuado. No hay prescripciones correctivas necesarias en este momento.","Todos os indicadores estão dentro dos limites saudáveis.":"Todos los indicadores están dentro de los lÃmites saludables.","Todos os indicadores preenchidos! O diagnóstico pode ser calculado.":"¡Todos los indicadores completados! El diagnóstico puede ser calculado.","Todos os indicadores. Ideal para capitais, polos turÃsticos ou planejamento estratégico de longo prazo.":"Todos los indicadores. Ideal para capitales, polos turÃsticos o planificación estratég
369ica a largo plazo.","Todos os membros da sua organização poderão visualizar e colaborar com este diagnóstico.":"Todos los miembros de su organización podrán visualizar y colaborar con este diagnóstico.","Todos os nÃveis":"Todos los niveles","Todos os pilares":"Todos los pilares","Todos os provedores":"Todos los proveedores","Todos os temas":"Todos los temas","Todos os tipos":"Todos los tipos","Todos os usuários têm acesso":"Todos los usuarios tienen acceso","Todos os valores foram salvos!":"Todos los valores se guardaron!","Todos pendentes":"Todos pendientes","Todos seguros, mas perderam casas...":"Todos a salvo, pero perdieron casas...","Todos tipos":"Todos los tipos","Todos têm voz!":"¡Todos tienen voz!",Tom:oQ,"Tom:":"Tono:","Toneladas de lixo são recolhidas! A praia começa a voltar a brilhar.":"¡Toneladas de basura son recogidas! La playa empieza a brillar de nuevo.","Top 10 alunos por XP":"Top 10 estudiantes por XP","Topo de linha GPT-5.6":"Alta gama GPT-5.6","Toque em uma carta para virá-la. Depois toque em outra carta. Se a imagem e a descrição combinarem, o par é revelado!":"Toca una carta para voltearla. Luego toca otra carta. ¡Si la imagen y la descripción coinciden, el par se revela!","Toque nas células adjacentes para se mover. Células não exploradas ficam cobertas por névoa â revele o mapa passo a passo!":"Toca las casillas adyacentes para moverte. Las casillas sin explorar están cubiertas de niebla â ¡revela el mapa paso a paso!","Toque nas células brilhantes para explorar":"Toca las celdas brillantes para explorar",Total:iQ,"Total Geral":"Total General","Total MatrÃculas":"Total de Inscripciones","Total construções:":"Total de construcciones:","Total de Certificados":"Total de Certificados","Total de Logs":"Total de Registros","Total de Planos":"Total de Planes","Total de Projetos":"Total de Proyectos","Total de Provas":"Total de Pruebas","Total de Questões":"Total de Preguntas","Total de cartas jogadas":"Total de cartas jugadas","Total de horas de treinamento realizadas ÷ número de funcionários no perÃodo. Inclua cursos internos, externos e online.":"Total de horas de capacitación realizadas ÷ número de empleados en el perÃodo. Incluya cursos internos, externos y en lÃnea.","Total de kWh consumidos ÷ número de pernoites. Consulte faturas de energia e relatório de ocupação.":"Total de kWh consumidos ÷ número de pernoctaciones. Consulte facturas de energÃa e informe de ocupación.","Total de litros ou m³ consumidos ÷ número de pernoites. Consulte faturas da concessionária de água.":"Total de litros o m³ consumidos ÷ número de pernoctaciones. Consulte facturas de la empresa de agua.","Total de questões:":"Total de preguntas:","Total de tentativas permitidas":"Total de intentos permitidos","Total de {{v0}} ciclo(s) de diagnóstico":"Total de {{v0}} ciclo(s) de diagnóstico","Total declarado":"Total declarado","Total estimado:":"Total estimado:",Tour:tQ,"Tour do módulo":"Tour del módulo","Trabalhando na fazenda, você vê de perto a devastação: hectares de cerrado são queimados e arados diariamente. Animais fogem em desespero. Um lobo-guará ferido aparece na beira da estrada.":"Trabajando en la hacienda, usted ve de cerca la devastación: hectáreas de cerrado son quemadas y aradas diariamente. Animales huyen en desesperación. Un lobo de crin herido aparece al borde de la carretera.","Trabalho Decente e Crescimento Econômico":"Trabajo Decente y Crecimiento Económico",Trace:rQ,"Trace ID":"Trace ID","Tracking de progresso, histórico escolar e notas":"Seguimiento de progreso, historial académico y notas",Trade:sQ,"Trade TurÃstico":"Sector TurÃstico","Transacionais (OTA)":"Transaccionales (OTA)","Transfira usuários entre organizações quando necessário.":"Transfiera usuarios entre organizaciones cuando sea necesario.","Transformando indicadores em decisões estratégicas":"Transformando indicadores en decisiones estratégicas","Transformar cenário em projeto":"Convertir escenario en proyecto","Transformar gatilhos em projeto":"Convertir desencadenantes en proyecto","Transformar o projeto em programa estadual contra desertificação":"Transformar el proyecto en programa estatal contra la desertificación","Transformar pescadores em guias de mergulho":"Transformar pescadores en guÃas de buceo","Transformação Digital":"Transformación Digital","Transformação de resÃduos orgânicos em adubo":"Transformación de residuos orgánicos en abono","Transparência na Normalização":"Trans
369parencia en la Normalización","Transparência:":"Transparencia:",Transporte:nQ,"Transporte Intra-Destino":"Transporte Intra-Destino","Transporte Local â busca pública (Auto)":"Transporte Local â búsqueda pública (Auto)","Transporte Urbano":"Transporte Urbano","Transporte e LogÃstica":"Transporte y LogÃstica","Transporte intra-destino analisado":"Transporte intra-destino analizado","Transporte limpo e eficiente!":"¡Transporte limpio y eficiente!","Transporte limpo e saudável! ð¿":"¡Transporte limpio y saludable! ð¿","Transporte limpo reduz a poluição do ar.":"El transporte limpio reduce la contaminación del aire.","Transporte público":"Transporte público",Tratamento:cQ,"Tratamento Biológico":"Tratamiento Biológico","Tratamento biológico":"Tratamiento biológico","Tratamento de esgoto":"Tratamiento de aguas residuales",Treinamento:dQ,"Treinamento *":"Capacitación *","Treinamento arquivado":"Capacitación archivada","Treinamento arquivado!":"Capacitación archivada!","Treinamento atualizado com sucesso!":"Capacitación actualizada con éxito!","Treinamento atualizado!":"Capacitación actualizada!","Treinamento criado com sucesso!":"Capacitación creada con éxito!","Treinamento criado!":"Capacitación creada!","Treinamento excluÃdo":"Capacitación eliminada","Treinamento excluÃdo!":"Capacitación eliminada!","Treinamento não encontrado":"Capacitación no encontrada","Treinamento por Colaborador":"Capacitación por Colaborador","Treinamento publicado!":"Capacitación publicada!",Treinamentos:lQ,"Treinamentos da Trilha":"Capacitaciones de la Ruta de Aprendizaje","Treinamentos da Trilha * ({{v0}} selecionados)":"Entrenamientos de la Ruta * ({{v0}} seleccionados)","Treinamentos prescritos são recomendações automáticas geradas pelo Motor IGMA baseadas nos resultados dos diagnósticos territoriais. Quando um indicador apresenta status crÃtico ou em atenção, o sistema recomenda cursos especÃficos para aquele tema.":"Las capacitaciones prescritas son recomendaciones automáticas generadas por el Motor IGMA basadas en los resultados de los diagnósticos territoriales. Cuando un indicador presenta un estado crÃtico o en atención, el sistema recomienda cursos especÃficos para ese tema.","Treinamentos, trilhas de aprendizado e trilhas adaptativas":"Capacitaciones, rutas de aprendizaje y rutas adaptativas","Treinar condutores locais como guias de ecoturismo":"Entrenar a conductores locales como guÃas de ecoturismo",TrendingUp:uQ,"Triagem inicial para priorização":"Clasificación inicial para priorización","Trial Automático":"Prueba Automática","Trial cancelado com sucesso.":"Trial cancelado con éxito.","Trial convertido (acesso integral liberado)":"Trial convertido (acceso integral liberado)","Trial por consumo":"Trial por consumo",Trials:mQ,'Trigger cria profile na org "Temporário"':'Trigger crea perfil en la org "Temporal"',"Trigger: Atenção":"Activador: Atención","Trigger: CrÃtico":"Activador: CrÃtico","Trigger: {{v0}}":"Activador: {{v0}}",Trilha:pQ,"Trilha *":"Ruta de aprendizaje *","Trilha Ecológica":"Ruta Ecológica","Trilha atualizada":"Ruta de aprendizaje actualizada","Trilha bloqueada":"Ruta de aprendizaje bloqueada","Trilha completa para certificação":"Ruta de aprendizaje completa para la certificación","Trilha concluÃda":"Ruta completada","Trilha criada":"Ruta de aprendizaje creada","Trilha criada a partir das recomendações do seu Perfil de Aprendizado.":"Ruta creada a partir de las recomendaciones de su Perfil de Aprendizaje.","Trilha da Montanha":"Ruta de la Montaña","Trilha de Auditoria â Procedência por Indicador":"Registro de AuditorÃa â Procedencia por Indicador","Trilha de Impacto":"Ruta de Impacto","Trilha de aprendizado":"Ruta de aprendizaje","Trilha de auditoria por indicador":"Ruta de auditorÃa por indicador","Trilha destinada ao seu perfil":"Ruta de aprendizaje destinada a tu perfil","Trilha disponÃvel nos planos":"Ruta de aprendizaje disponible en los planes","Trilha não encontrada":"Ruta no encontrada","Trilha não encontrada.":"Ruta de aprendizaje no encontrada.","Trilha removida":"Ruta de aprendizaje eliminada",Trilhas:gQ,"Trilhas Adaptativas":"Rutas Adaptativas","Trilhas Formativas":"Rutas Formativas","Trilhas conectam as pessoas com o meio ambiente.":"Las rutas conectan a las personas con el medio ambiente.","Trilhas de aprendizado (tracks) compostas por múltiplos treinamentos ordenados":"Rutas de aprendizaje (tracks) compuestas por múltiples capacitaciones ordenadas","Trilhas de aprendizado ordenadas":"Rutas de aprendizaje ordena
369das","Trilhas de capacitação 100% personalizadas":"Rutas de capacitación 100% personalizadas","Trilhas de capacitação adaptativas e certificados":"Rutas de capacitación adaptativas y certificados","Trilhas demarcadas, guias obrigatórios e limite diário. A serra respira!":"Rutas delimitadas, guÃas obligatorios y lÃmite diario. ¡La sierra respira!","Trilhas matriculadas e percentual de conclusão de cada uma.":"Rutas inscritas y porcentaje de finalización de cada una.","Trilhas para turistas":"Rutas para turistas","Trilhas, treinamentos, provas e conteúdo atribuÃdos":"Rutas, capacitaciones, pruebas y contenido asignados","Trilhas: Complete 100% do conteúdo para receber o certificado de trilha.":"Rutas: Complete el 100% del contenido para recibir el certificado de ruta.",Trimestral:hQ,"TripAdvisor: {{v0}} resultado(s)":"TripAdvisor: {{v0}} resultado(s)",Trocar:fQ,"Trocar arquivo":"Cambiar archivo","Trânsito Parado":"Tráfico Parado","Trânsito parado! Poluição do ar subindo!":"¡Tráfico parado! ¡La contaminación del aire subiendo!",'Três causas possÃveis: (1) o diagnóstico foi criado SEM o opt-in "Expandir com Mandala (MST)" no Step 3 da Nova Rodada â nesse caso os indicadores MST nem aparecem (assessments.expand_with_mandala = false). (2) O municÃpio está fora das 15 capitais âncora E o scraping sob demanda falhou â nesse caso a linha MANUAL com valor vazio aparece no painel de validação com badge ð MST, basta clicar em "Recarregar dados oficiais" e depois preencher manualmente com o valor da fonte oficial linkada na nota do indicador. (3) A função edge ingest-tse/ingest-anatel não conseguiu persistir por falta de configuração de fonte (external_data_sources) â esse problema foi corrigido na v1.30.7 com a inserção das fontes TSE e ANATEL. Recomendação: ative o switch MST, clique em "Recarregar dados oficiais" no painel de pré-preenchimento e os 9 indicadores MST aparecerão (alguns automáticos, outros como linha manual com link à fonte).':'Tres causas posibles: (1) el diagnóstico fue creado SIN la opción "Expandir con Mandala (MST)" en el Paso 3 de la Nueva Ronda â en ese caso los indicadores MST ni siquiera aparecen (assessments.expand_with_mandala = false). (2) El municipio está fuera de las 15 capitales ancla Y el scraping bajo demanda falló â en ese caso la lÃnea MANUAL con valor vacÃo aparece en el panel de validación con el distintivo ð MST, basta con hacer clic en "Recargar datos oficiales" y luego completar manualmente con el valor de la fuente oficial vinculada en la nota del indicador. (3) La función edge ingest-tse/ingest-anatel no pudo persistir por falta de configuración de fuente (external_data_sources) â este problema fue corregido en la v1.30.7 con la inserción de las fuentes TSE y ANATEL. Recomendación: active el interruptor MST, haga clic en "Recargar datos oficiales" en el panel de pre-relleno y los 9 indicadores MST aparecerán (algunos automáticos, otros como lÃnea manual con enlace a la fuente).',"Três pilares do sistema turÃstico:\n- RA â Relações Ambientais (base; prioridade máxima)\n- OE â Organização Estrutural (infraestrutura)\n- AO â Ações Operacionais (governança central)\n\n6 regras do Motor IGMA:\n1. Limitação Estrutural do Território (RA crÃtico bloqueia OE)\n2. Planejamento como Ciclo ContÃnuo (6/12/18 meses)\n3. Alerta de Externalidades Negativas (OEâ enquanto RAâ)\n4. Governança como Condição de Eficácia (AO crÃtico bloqueia OE)\n5. Território Antes do Marketing (RA e AO não crÃticos)\n6. Intersetorialidade Obrigatória (saúde, educação, saneamento)\n\nSeveridade: CrÃtico ⤠33% | Atenção 34â66% | Adequado ⥠67%.":`Tres pilares del sistema turÃstico: 370- RA â Relaciones Ambientales (base; prioridad máxima) 371- OE â Organización Estructural (infraestructura) 372- AO â Acciones Operacionales (gobernanza central) 373 3746 reglas del Motor IGMA: 3751. Limitación Estructural del Territorio (RA crÃtico bloquea OE) 3762. Planificación como Ciclo Continuo (6/12/18 meses)
3773. Alerta de Externalidades Negativas (OEâ mientras RAâ) 3784. Gobernanza como Condición de Eficacia (AO crÃtico bloquea OE) 3795. Territorio Antes del Marketing (RA y AO no crÃticos) 3806. Intersectorialidad Obligatoria (salud, educación, saneamiento) 381 382Severidad: CrÃtico ⤠33% | Atención 34â66% | Adecuado ⥠67%.`,"Três pilares do sistema turÃstico: - RA â Relações Ambientais (base; prioridade máxima) - OE â Organização Estrutural (infraestrutura) - AO â Ações Operacionais (governança central) 6 regras do Motor IGMA: 1. Limitação Estrutural do Território (RA crÃtico bloqueia OE) 2. Planejamento como Ciclo ContÃnuo (6/12/18 meses) 3. Alerta de Externalidades Negativas (OEâ enquanto RAâ) 4. Governança como Condição de Eficácia (AO crÃtico bloqueia OE) 5. Território Antes do Marketing (RA e AO não crÃticos) 6. Intersetorialidade Obrigatória (saúde, educação, saneamento) Severidade: CrÃtico ⤠33% | Atenção 34â66% | Adequado ⥠67%.":"Tres pilares del sistema turÃstico: - RA â Relaciones Ambientales (base; prioridad máxima) - OE â Organización Estructural (infraestructura) - AO â Acciones Operacionales (gobernanza central) 6 reglas del Motor IGMA: 1. Limitación Estructural del Territorio (RA crÃtico bloquea OE) 2. Planificación como Ciclo Continuo (6/12/18 meses) 3. Alerta de Externalidades Negativas (OEâ mientras RAâ) 4. Gobernanza como Condición de Eficacia (AO crÃtico bloquea OE) 5. Territorio Antes del Marketing (RA y AO no crÃticos) 6. Intersectorialidad Obligatoria (salud, educación, saneamiento) Severidad: CrÃtico ⤠33% | Atención 34â66% | Adecuado ⥠67%.",Tubarão:"Tiburón","Tudo do Essencial +":"Todo lo Esencial +","Tudo do Estratégico +":"Todo lo Estratégico +","Tudo em dia":"Todo al dÃa","Tudo não-turÃstico":"Todo no turÃstico","Tudo que não é profissional/educacional":"Todo lo que no es profesional/educativo","Tudo que o assistente pode fazer em nome de quem conectou. Dados de leitura consultam o que a pessoa já pode ver no SISTUR; a criação de tarefas é registrada como se tivesse sido feita pela própria pessoa.":"Todo lo que el asistente puede hacer en n
382ombre de quien se conectó. Los datos de lectura consultan lo que la persona ya puede ver en SISTUR; la creación de tareas se registra como si hubiera sido realizada por la propia persona.",Turismo:vQ,"Turismo Sustentável e Meio Ambiente":"Turismo Sostenible y Medio Ambiente","Turismo controlado com guias":"Turismo controlado con guÃas","Turismo de aventura":"Turismo de aventura","Turismo que preserva o ambiente e a cultura local":"Turismo que preserva el ambiente y la cultura local","Turismo responsável! Todos felizes! ð":"¡Turismo responsable! ¡Todos felices! ð","Turismo sem planejamento causa problemas.":"El turismo sin planificación causa problemas.","Turismo sustentável minimiza impactos e beneficia comunidades locais.":"El turismo sostenible minimiza impactos y beneficia a las comunidades locales.","Turismo sustentável! A natureza e a comunidade prosperam juntas.":"¡Turismo sostenible! La naturaleza y la comunidad prosperan juntas.","Turismo sustentável:":"Turismo sostenible:","Turistas sem orientação.":"Turistas sin orientación.",Turma:bQ,"Turmas & Mensagens":"Grupos & Mensajes","Turmas e acompanhamento":"Clases y seguimiento","Turmas em que você está matriculado e anúncios dos professores.":"Grupos en los que estás inscrito y anuncios de los profesores.","Turno {{v0}}":"Turno {{v0}}","Turnos no verde:":"Turnos en verde:","Turnos no vermelho:":"Turnos en rojo:","Turnos:":"Turnos:",Turnover:AQ,Tutorial:yQ,"Tutorial Passo a Passo":"Tutorial Paso a Paso","Tutorial do SISTUR":"Tutorial de SISTUR",Técnico:"Técnico","Técnico (50+ pág)":"Técnico (50+ pág)",Técnicos:"Técnicos",TÃtulo:"TÃtulo","TÃtulo *":"TÃtulo *","TÃtulo da aula...":"TÃtulo de la clase...","TÃtulo da pergunta":"TÃtulo de la pregunta","TÃtulo da seção":"TÃtulo de la sección","TÃtulo da sugestão":"TÃtulo de la sugerencia","TÃtulo da tarefa":"TÃtulo de la tarea","TÃtulo da tarefa.":"TÃtulo de la tarea.","TÃtulo deve ter no máximo 200 caracteres":"El tÃtulo debe tener un máximo de 200 caracteres","TÃtulo deve ter pelo menos 5 caracteres":"El tÃtulo debe tener al menos 5 caracteres","TÃtulo do Módulo *":"TÃtulo del Módulo *","TÃtulo do bug":"TÃtulo del error","TÃtulo do diagnóstico *":"TÃtulo del diagnóstico *","TÃtulo do treinamento":"TÃtulo de la capacitación","TÃtulo obrigatório":"TÃtulo obligatorio","TÃtulo é obrigatório":"El tÃtulo es obligatorio","Tópico / Assunto *":"Tema / Asunto *","Tópico de tutorial não encontrado.":"Tema de tutorial no encontrado.","Tópico não encontrado":"Tema no encontrado","Tópicos que o Professor Domina":"Temas que el Profesor Domina","UF da matriz":"UF de la matriz","UFs com Dados":"UFs con Datos","UI / Libs":"UI / Libs","URL da Thumbnail":"URL de la Miniatura","URL da evidência":"URL de la evidencia","URL de vÃdeo inválida":"URL de video no válida","URL do VÃdeo":"URL del Video","URL ou será preenchido após upload":"URL o se completará después de la carga","USO ÃNICO":"USO ÃNICO","Um administrador irá revisar sua solicitação em breve. Você receberá acesso assim que sua conta for aprovada.":"Un administrador revisará su solicitud en breve. Recibirá acceso una vez que su cuenta sea aprobada.","Um aluno pode estar em múltiplas salas.":"Un alumno puede estar en varias aulas.","Um animal raro apareceu perto da vila!":"¡Un animal raro apareció cerca del pueblo!","Um banner no topo da tela mostra quantos dias restam do seu perÃodo de teste.":"Un banner en la parte superior de la pantalla muestra cuántos dÃas quedan de su perÃodo de prueba.","Um diagnóstico é a fotografia estruturada de um destino turÃstico em um determinado momento, baseado nos pilares RA, OE e AO. Pode ser Territorial (municÃpio, região turÃstica, consórcio) ou Empresarial (empreendimento privado).":"Un diagnóstico es la fotografÃa estructurada de un destino turÃstico en un momento determinado, basado en los pilares RA, OE y AO. Puede ser Territorial (municipio, región turÃstica, consorcio) o Empresarial (emprendimiento privado).","Um incêndio ameaça a vegetação! Aja rápido!":"¡Un incendio amenaza la vegetación! ¡Actúe rápido!","Um visitante famoso quer conhecer sua vila!":"¡Un visitante famoso quiere conocer su pueblo!","Uma ONG envia voluntários e equipamentos. Ainda há esperança.":"Una ONG envÃa voluntarios y equipos. Aún hay esperanza.","Uma doença está se espalhando! Precisamos agir!":"¡Una enfermedad se está propagando! ¡Necesitamos actuar!","Uma fábrica quer se instalar perto da vila!":"¡Una fábrica quiere instalarse cerca del pueblo!","Uma jornada pela maior floresta tropical do mundo.":"Un viaje por la selva tropical más grande del mundo.","Uma marca agrupa unidades do mesmo empreendimento em municÃpios diferentes. Cada unidade mantém seu próprio diagnóstico, e a marca permite análises consolidadas da rede.":"Una marca agrupa unidades del mismo emprendimiento en municipios diferentes. Cada unidad mantiene su propio diagnóstico, y la marca permite análisis consolidados de la red.","Uma marca agrupa unidades do mesmo empreendimento em municÃpios diferentes. Cada unidade mantém seu próprio diagnóstico, e a marca permite consolidar a análise de desempenho da rede em diferentes territórios.":"Una marca agrupa unidades del mismo emprendimiento en municipios diferentes. Cada unidad mantiene su propio diagnóstico, y la marca permite consolidar el análisis de desempeño de la red en diferentes territorios.","Uma organização privada com Empresarial habilitado pode usar tanto os indicadores territoriais padrão (quando aplicável) quanto os indicadores especÃficos de hospital
382idade. Os 6 indicadores compartilhados facilitam a integração entre diagnósticos territoriais e empresariais. Organizações públicas não têm acesso ao módulo Empresarial.":"Una organización privada con Empresarial habilitado puede usar tanto los indicadores territoriales estándar (cuando sea aplicable) como los indicadores especÃficos de hospitalidad. Los 6 indicadores compartidos facilitan la integración entre diagnósticos territoriales y empresariales. Las organizaciones públicas no tienen acceso al módulo Empresarial.","Uma prova por pilar coberto pelos treinamentos. Aprovação garante o certificado.":"Una prueba por cada pilar cubierto por las capacitaciones. La aprobación garantiza el certificado.","Uma queimada se espalha pela floresta! O que fazer?":"¡Un incendio forestal se extiende por el bosque! ¿Qué hacer?","Uma rede de guardiões protege toda a cadeia montanhosa!":"¡Una red de guardianes protege toda la cadena montañosa!","Uma semente de espécie nativa ameaçada":"Una semilla de especie nativa amenazada","Uma tempestade atingiu sua vila! O que fazer?":"¡Una tormenta ha golpeado su pueblo! ¿Qué hacer?","Uma trilha baseada nas minhas recomendações":"Una ruta de aprendizaje basada en mis recomendaciones","Uma vez iniciado, o exame não pode ser pausado":"Una vez iniciado, el examen no se puede pausar","Uma árvore nova para o mundo!":"¡Un árbol nuevo para el mundo!","Umbuzeiros, juremas e catingueiras voltam ao dia a dia.":"Umbuzeiros, juremas y catingueiras vuelven al dÃa a dÃa.",Unidade:SQ,"Unidade mais frágil por pilar":"Unidad más frágil por pilar","Unidade principal (flagship) da marca":"Unidad principal (flagship) de la marca",Unidades:EQ,"Unidades cadastradas":"Unidades registradas","Unidades da rede (":"Unidades de la red (","Unidades do diagnóstico":"Unidades del diagnóstico","Uniforme (sem sazonalidade)":"Uniforme (sin estacionalidad)","Upgrade Recomendado":"Actualización Recomendada","Upgrade: Muda o plano do usuário.":"Upgrade: Cambia el plan del usuario.",Upload:CQ,"Upload de arquivo":"Cargar archivo","Upload direto":"Carga directa","Upload para Base de Conhecimento":"Cargar a Base de Conocimiento",Urbanista:TQ,Urgente:PQ,Urgência:"Urgencia","Usa valores de referência da MTur/FGV quando dados especÃficos da UF não estão disponÃveis.":"Usa valores de referencia de MTur/FGV cuando no hay datos especÃficos de la UF disponibles.",Usado:RQ,"Usar Firecrawl (Scraping Inteligente)":"Usar Firecrawl (Scraping Inteligente)","Usar transporte público":"Usar transporte público",'Use "Salvar como PDF" na janela de impressão.':'Use "Guardar como PDF" en la ventana de impresión.',"Use @ para mencionar membros da organização":"Use @ para mencionar miembros de la organización","Use SEMPRE estes 5 nÃveis ao classificar indicadores e pilares:\n- CrÃtico: 0â33%\n- Atenção: 34â66%\n- Adequado: 67â84%\n- Bom: 85â94%\n- Excelente: 95â100%\n\nRegras:\n1. Exiba sempre em percentual inteiro (ex.: 72%), nunca decimais.\n2. Nunca invente categorias fora desta régua.\n3. Não use rankings comparativos entre municÃpios.":`Use SIEMPRE estos 5 niveles al clasificar indicadores y pilares: 383- CrÃtico: 0â33% 384- Atención: 34â66% 385- Adecuado: 67â84% 386- Bueno: 85â94% 387- Excelente: 95â100% 388 389Reglas: 3901. Muestre siempre en porcentaje entero (ej.: 72%), nunca decimales. 3912. Nunca invente categorÃas fuera de esta escala. 3923. No use rankings comparativos entre municipios.`,"Use SEMPRE estes 5 nÃveis ao classificar indicadores e pilares: - CrÃtico: 0â33% - Atenção: 34â66% - Adequado: 67â84% - Bom: 85â94% - Excelente: 95â100% Regras: 1. Exiba sempre em percentual inteiro (ex.: 72%), nunca decimais. 2. Nunca invente categorias fora desta régua. 3. Não use rankings comparativos entre municÃpios.":"Use SIEMPRE estos 5 niveles al clasificar indicadores y pilares: - CrÃtico: 0â33% - Atención: 34â66% - Adecuado: 67â84% - Bueno: 85â94% - Excelente: 95â100% Reglas: 1. Muestre siempre en porcentaje entero (ej.: 72%), nunca decimales. 2. Nunca invente categorÃas fuera de esta escala. 3. No use rankings comparativos entre municipios.",'Use a "Busca Automática de Reviews Online" para avaliação automática. Ou pontue de 0-10: presença em OTAs, site responsivo, motor de reservas, redes sociais ativas, Wi-Fi, PMS integrado.':'Use la "Búsqueda Automática de Reviews Online" para evaluación automática. O puntúe de 0-10: presencia en OTAs, sitio web responsivo, motor de reservas, redes sociales activas, Wi-Fi, PMS integrado.','Use a aba "Importar" para buscar dados do Mapa do Turismo.':'Usa la pestaña "Importar" para buscar datos del Mapa del Turismo.','Use a ferramenta "Busca Automática de Reviews Online" acima para preencher automaticamente. Ou consulte manualmente Google Maps, TripAdvisor e Booking e calcule a média ponderada dos scores.':'Use la herramienta "Búsqueda Automática de Reviews Online" de arriba para rellenar automáticamente. O consulte manualmente Google Maps, TripAdvisor y Booking y calcule el promedio ponderado de los scores.',"Use calculadoras de pegada de carbono (GHG Protocol, CBCS) considerando energia, combustÃvel, gases refrigerantes. Divida pelo total de pernoites.":"Use calculadoras de huella de carbono (GHG Protocol, CBCS) considerando energÃa, combustible, gases refrigerantes. Divida por el total de pernoctaciones.","Use cartas de ação para combater ameaças no campo de batalha.":"Use cartas de acción para combatir amenazas en el campo de batalla.","Use dados de pesquisas de campo, bases oficiais ou estimativas qualificadas.":"Use datos de investigaciones de campo, bases oficiales o estimaciones calificadas.","Use o Dashboard AnalÃtico para uma visão consolidada de todos os projetos.":"Use el Panel AnalÃtico para una visión consolidada de todos los proyectos.","Use o comparativo de destinos para benchmarking.":"Use la comparación de destinos para benchmarking.","Use os feedbacks para priorizar melhorias na plataforma.":"Use los comentarios para priorizar mejoras en la plataforma.","Use para contratos Territoriais (empenho) e ativações negociadas.":"Use para contratos Territoriales (compromiso) y activaciones negociadas.","Use para importar FOHB (ocupação hoteleira), CGE/SECTUR estaduais ou qualquer outra fonte que não tenha API.":"Use para importar FOHB (ocupación hotelera), CGE/SECTUR estatales o cualquier otra fuente que no tenga API.","Use seu email institucional para aprovação mais rápida.":"Use su email institucional para una aprobación más rápida.","Use tags para filtrar por assunto.":"Use etiquetas para filtrar por tema.","Use um email válido â você receberá um link de confirmação.":"Use un email válido â recibirá un enlace de confirmación.","User Agent":"User Agent",Users:xQ,"Usinas de reciclagem":"Plantas de reciclaje","Uso de Recursos":"Uso de Recursos","Uso de drogas":"Uso de drogas","Uso do Banco de Dados":"Uso de la Base de Datos","Uso elevado â planeje expansão":"Uso elevado â planifique expansión","Uso intensivo de agrotóxicos":"Uso intensivo de agrotóxicos","Uso no mês":"Uso en el mes","Uso recente":"Uso reciente","Uso sustentável da madeira sem destruir a floresta":"Uso sostenible de la madera sin destruir el bosque",Usuário:"Usuario","Usuário EspecÃfico":"Usuario EspecÃfico","Usuário adicionado à organização":"Usuario añadido a la organización","Usuário aprovado com sucesso":"Usuario aprobado con éxito","Usuário bloqueado":"Usuario bloqueado","Usuário criado com sucesso":"Usuario creado con éxito","Usuário desbloqueado":"Usuario desbloqueado","Usuário especÃfico":"Usuario especÃfico","Usuário individual":"Usuario individual","Usuário novo: curso base + 10 perguntas ao Professor Beni. Organização nova: 1 diagnóstico com resultado em teaser e projetos bloqueados. Não há mais trial por tempo.":"Usuario nuevo: curso base + 10 preguntas al Profesor Beni. Organización nueva: 1 diagnóstico con resultado en teaser y proyectos bloqueados. Ya no hay trial por tiempo.","Usuário não autenticado":"Usuario no autenticado","Usuário não encontrado":"Usuario no encontrado","Usuário removido com sucesso":"Usuario eliminado con éxito","Usuário removido da organização":"Usuario eliminado de la organización","Usuário revisa, confirma ou ajusta cada valor antes do cálculo. Nenhum dado é 'verdade absoluta'.":"El usuario revisa, confirma o ajusta cada valor antes del cálculo. Ningún dato es 'verdad absoluta'.","Usuário sem e-mail cadastrado":"Usuario sin e-mail registrado",Usuários:"Usuarios","Usuários Ativos":"Usuarios Activos","Usuários Totais":"Usuarios Totales","Usuários aguardando aprovação para acessar o sistema":"Usuarios esperando aprobación para acceder al sistema","Usuários de uma organização não veem dados de outras.":"Los usuarios de una organización no ven datos de otras.","Usuários em trial":"Usuarios en trial","Usuários pendentes são gerenciados pelo fluxo de aprovação.":"Los usuarios pendientes son gestionados por el flujo de aprobación.","Usuários por Organização":"Usuarios por Organización","Utilitários para cálculo, simulação e exportação de dados":"Utilidades para cálculo, simulación y exportación de datos","Utilizado â resultados em prévia":"Utilizado â resultados en vista previa","Utilizam IA para sÃntese e contextualização dos dados diagnósticos. A IA analisa resultados, mas não prescreve capacitações.":"Utilizan IA para sÃntesis y contextualización de los datos diagnósticos. La IA analiza resultados, pero no prescribe capacitaciones.","V/F":"V/F",VIEWER:wQ,"VITE_SUPABASE_URL ausente":"VITE_SUPABASE_URL ausente","Vai ter festa na praça. O que fazer primeiro?":"Habrá una fiesta en la plaza. ¿Qué hacer primero?",Validade:IQ,"Validade:":"Vigencia:",Validado:DQ,Validados:OQ,Validar:MQ,"Validar dados oficiais":"Validar datos oficiales",Validação:"Validación","Validação (determinÃstica + IA)":"Validación (determinÃstica + IA)","Validação CNPJ & Dados Cadastrais":"Validación CNPJ & Datos de Registro","Validação CNPJ via Receita Federal":"Validación CNPJ vÃa Receita Federal","Validação Humana Obrigatória":"Validación Humana Obligatoria","Validação Pré-Cálculo":"Validación Previa al Cálculo","Validação automática via CNPJ":"Validación automática vÃa CNPJ","Validação cruzada":"Validación cruzada","Validação de Dados Oficiais":"Validación de Datos Oficiales","Validação de bounds antes do commit":"Validación de lÃmites antes del commit","Validação final: rode build/typecheck, abra cada rota nova e confirme que as queries retornam dados (RLS pode bloquear silenciosamente se faltar GRANT).":"Validación final: ejecute build/typecheck, abra cada nueva ruta y confirme que las consultas devuelven datos (RLS puede bloquear silenciosamente si falta GRANT).","Validação por agente IA (gemini-2.5-pro) sobre o texto pós-correção.":"Validación por agente IA (gemini-2.5-pro) sobre el texto poscorrección.","Validação removida":"Validación eliminada","Validação salva com falha parcial":"Validación guardada con fallo parcial","Validação: â¥60% dos indicadores preenchidos":"Validación: â¥60% de los indicadores completados","Valide a autenticidade do Selo Institucional do Destino.":"Valida la autenticidad del Sello Institucional del Destino.",Valor:NQ,"Valor Bruto":"Valor Bruto","Valor Máximo":"Valor Máximo","Valor MÃnimo":"Valor MÃnimo","Valor Simulado":"Valor Simulado","Valor de 0 a 1, exibido como fração decimal.":"Valor de 0 a 1, mostrado como fracción decimal.","Valor deve ser numérico":"El valor debe ser numérico","Valor deve ser um número inteiro":"El valor debe ser un número entero","Valor do indicador atualizado. Recalcule o diagnóstico para refletir no relatório.":"Valor del indicador actualizado. Recalcule el diagnóstico para reflejar el cambio en el informe.","Valor expresso de 0 a 100, exibido com sufixo %.":"Valor expresado de 0 a 100, mostrado con el sufijo %.","Valor inválido (deve ser numérico)":"Valor inválido (debe ser numérico)","Valor já em milhares â exibido como R$ X mil.":"
392Valor ya en miles â mostrado como R$ X mil.","Valor já em milhões â exibido como R$ X mi.":"Valor ya en millones â mostrado como R$ X mi.","Valor monetário em reais, exibido como R$ X,XX.":"Valor monetario en reales, mostrado como R$ X,XX.","Valor numérico":"Valor numérico","Valor numérico do indicador":"Valor numérico del indicador","Valor numérico inválido.":"Valor numérico no válido.","Valor textual (opcional)":"Valor textual (opcional)","Valor usado para cada indicador no momento do cálculo":"Valor utilizado para cada indicador en el momento del cálculo","Valores de indicadores por assessment":"Valores de indicadores por evaluación","Valores importados com sucesso":"Valores importados con éxito","Valores são normalizados e processados pelo motor IGMA que aplica os 6 princÃpios sistêmicos de Mario Beni.":"Los valores son normalizados y procesados por el motor IGMA que aplica los 6 principios sistémicos de Mario Beni.",Value:zQ,"Vamos personalizar sua experiência de aprendizado":"Vamos a personalizar su experiencia de aprendizaje","Variante Empresarial":"Variante Empresarial",Variação:"Variación","Variação máx. (%)":"Variación máx. (%)","Variações superiores a 10% em relação ao perÃodo anterior. Alertas crÃticos sinalizam quedas acima de 25%.":"Variaciones superiores al 10% en relación con el perÃodo anterior. Alertas crÃticas señalan caÃdas superiores al 25%.","Variedade de climas":"Variedad de climas","Variedade de seres vivos":"Variedad de seres vivos","Variedade de seres vivos em um ecossistema":"Variedad de seres vivos en un ecosistema","Vazamento Tóxico":"Fuga Tóxica","Vazamento de petróleo!":"¡Derame de petróleo!","Vegetação tÃpica do interior":"Vegetación tÃpica del interior","Veias da Terra":"Venas de la Tierra","Veja e gerencie feedbacks enviados pelos usuários.":"Vea y gestione los comentarios enviados por los usuarios.","Veja notas de provas e percentual de conclusão.":"Vea las notas de exámenes y el porcentaje de finalización.","Veja o progresso de cada aluno por sala. Acompanhe quem completou atividades, notas em provas e engajamento com as trilhas atribuÃdas.":"Vea el progreso de cada alumno por aula. Siga quién completó actividades, calificaciones en exámenes y compromiso con las rutas asignadas.","Veja o status da isenção no seu Painel do Professor.":"Vea el estado de la exención en su Panel del Profesor.","Veja quais alunos completaram cada atribuição.":"Vea qué alumnos completaron cada asignación.","Veja seu desempenho":"Consulta tu desempeño","Veja todos os projetos em andamento, planos atrasados e métricas de execução.":"Vea todos los proyectos en curso, planes atrasados y métricas de ejecución.","Vence em":"Vence en",Vencido:jQ,Vencidos:kQ,"Vender a lenha da caatinga para carvoarias":"Vender la leña de la caatinga a carboneras","Vender a madeira apreendida para financiar outras ações":"Vender la madera incautada para financiar otras acciones","Vender direto ao consumidor via internet e feiras":"Vender directamente al consumidor vÃa internet y ferias","Vender o selo para uma multinacional":"Vender el sello a una multinacional",Ver:_Q,"Ver Certificado":"Ver Certificado","Ver Certificados":"Ver Certificados","Ver Detalhes":"Ver Detalles","Ver Minhas Recomendações":"Ver Mis Recomendaciones","Ver Planos":"Ver Planes","Ver Trilha":"Ver Ruta de Aprendizaje","Ver Trilhas (":"Ver Rutas (","Ver catálogo SISTUR EDU":"Ver catálogo SISTUR EDU","Ver conteúdo":"Ver contenido","Ver detalhes":"Ver detalles","Ver diagnóstico":"Ver diagnóstico","Ver diagnósticos":"Ver diagnósticos","Ver diagnósticos enterprise":"Ver diagnósticos empresariales","Ver diagnósticos territoriais":"Ver diagnósticos territoriales","Ver evidência":"Ver evidencia","Ver histórico":"Ver historial","Ver metodologia":"Ver metodologÃa","Ver minha assinatura":"Ver mi suscripción","Ver no YouTube":"Ver en YouTube","Ver perfil":"Ver perfil","Ver planos":"Ver planes","Ver planos e liberar resultados":"Ver planes y desbloquear resultados","Ver recomendações":"Ver recomendaciones","Ver relatório":"Ver informe","Ver todas as {{n}} recomendações":"Ver todas las {{n}} recomendaciones","Ver todas as {{v0}} lives":"Ver todas las {{v0}} transmisiones en vivo","Ver todas as {{v0}} recomendações":"Ver todas las {{v0}} recomendaciones","Ver todas atividades":"Ver todas las actividades","Ver todos":"Ver todos","Ver todos ({{v0}})":"Ver todos ({{v0}})","Ver todos os {{v0}} cursos":"Ver todos los {{v0}} cursos","Ver tutorial completo":"Ver tutorial completo","Verdadeiro/Falso":"Verdadero/Falso","Verde no Sertão":"Verde en el Sertón","Verificando OTAs, Google Business, site oficial e redes sociais...":"Verificando OTAs, Google Business, sitio oficial y redes sociales...","Verificando alertas...":"Verificando alertas...","Verificando dados relacionados...":"Verificando datos relacionados...","Verificando licença...":"Verificando licencia...","Verificando permissões...":"Verificando permisos...","Verificando relevância do arquivo...":"Verificando relevancia del ar
392chivo...","Verificando...":"Verificando...",Verificar:qQ,"Verificar Status":"Verificar Estado","Verificação de Certificado":"Verificación de Certificado","Verificação de Certificado SISTUR":"Verificación de Certificado SISTUR","Verificação de Saúde do Sistema":"Verificación de Salud del Sistema","Verificação realizada em":"Verificación realizada el","Verificação: {{v0}}":"Verificación: {{v0}}","Verifique no SNIS ou Atlas Esgotos da ANA. % de domicÃlios com coleta de esgoto adequada.":"Verifique en el SNIS o Atlas de Alcantarillados de la ANA. % de domicilios con recolección de alcantarillado adecuada.","Verifique se existe Conselho Municipal de Turismo ativo (COMTUR). Consulte a Secretaria de Turismo ou legislação municipal.":"Verifique si existe Consejo Municipal de Turismo activo (COMTUR). Consulte la SecretarÃa de Turismo o legislación municipal.","Verifique se o código foi digitado corretamente ou entre em contato com o emissor.":"Verifica si el código se ingresó correctamente o comunÃcate con el emisor.","Verifique se o municÃpio pertence a alguma Região TurÃstica no Mapa do Turismo Brasileiro do MTur.":"Verifique si el municipio pertenece a alguna Región TurÃstica en el Mapa del Turismo Brasileño del MTur.","Verifique se o municÃpio possui Fundo Municipal de Turismo (FUMTUR) instituÃdo por lei.":"Verifique si el municipio posee Fondo Municipal de Turismo (FUMTUR) instituido por ley.","Verifique se o municÃpio possui Plano Municipal de Turismo vigente. Consulte a Secretaria de Turismo ou Diário Oficial.":"Verifique si el municipio posee Plan Municipal de Turismo vigente. Consulte la SecretarÃa de Turismo o el Diario Oficial.","Verifique se o municÃpio possui Plano Municipal de Turismo vigente. Consulte a Secretaria de Turismo ou o Diário Oficial.":"Verifique si el municipio posee Plan Municipal de Turismo vigente. Consulte la SecretarÃa de Turismo o el Diario Oficial.","Verifique se você está logado e tem permissão para acessar este conteúdo.":"Verifica si iniciaste sesión y tienes permiso para acceder a este contenido.","Versão 1.0 â Ãltima atualização: 25 de março de 2026":"Versión 1.0 â Ãltima actualización: 25 de marzo de 2026","Versão atual":"Versión actual","Versão do Sistema":"Versión del Sistema","Versão do algoritmo: {{v0}}":"Versión del algoritmo: {{v0}}","Versão mobile/responsividade":"Versión móvil/responsividad","Vida na Ãgua":"Vida en el Agua",Views:LQ,Vigência:"Vigencia",Vimeo:UQ,Vinculado:BQ,Vinculados:FQ,Vincular:GQ,"Vincular a uma Organização":"Vincular a una Organización","Vincular capacitação":"Vincular capacitación","Vinculação à organização responsável":"Vinculación a la organización responsable","Vincule a trilhas existentes ou crie novas.":"Vincule a rutas existentes o cree nuevas.","Vincule a um diagnóstico e destino especÃficos.":"Vincule a un diagnóstico y destino especÃficos.","Violação de direitos autorais":"Infracción de derechos de autor","Violação de termos":"Violación de términos",Violência:"Violencia","Violência gráfica":"Violencia gráfica",Visibilidade:VQ,"Visibilidade orgânica: resultados de busca, autoridade de domÃnios, mÃdia e OTAs":"Visibilidad orgánica: resultados de búsqueda, autoridad de dominios, medios y OTAs",Visitantes:$Q,"Visitar uma comunidade quilombola para entender seus desafios":"Visitar una comunidad quilombola para entender sus desafÃos","Visual da sua jornada de aprendizado":"Vista de tu recorrido de aprendizaje",Visualizador:HQ,"Visualizador â apenas leitura":"Visualizador â solo lectura","Visualizando dados de outra organização":"Visualizando datos de otra organización",Visualizar:WQ,"Visualizar Dataset Demo":"Visualizar Dataset Demo","Visualizar como Usuário":"Visualizar como Usuario","Visualizar destino:":"Ver destino:","Visualizar e compartilhar":"Visualizar y compartir","Visualizar os termos":"Visualizar los términos",Visualização:"Visualización","Visualização de fonte, ano e confiança":"Visualización de fuente, año y confianza","Visualização:":"Visualización:","Visualize dados de demonstração do SISTUR com diagnósticos pré-configurados":"Visualice datos de demostración del SISTUR con diagnósticos preconfigurados","Visualize e gerencie usuários de cada organização":"Visualice y gestione usuarios de cada organización","Visualize os dados de outro usuário/organização":"Visualice los datos de otro usuario/organización","Visualize todas as ações realizadas na plataforma.":"Visualice todas las acciones realizadas en la plataforma.","Visualize todas as licenças ativas, trials, conversões. Cancele ou estenda licenças. Gerencie cotas por organização e monitore métricas de conversão.":"Visualice todas las licencias activas, pruebas, conversiones. Cancele o extienda licencias. Gestione cuotas por organización y monitoree métricas de conversión.","Visão 360° do ecossistema turÃstico":"Visión 360° del ecosistema turÃstico","Visão Enterprise: Mostra dad
392os das organizações do trade turÃstico.":"Visión Enterprise: Muestra datos de las organizaciones del trade turÃstico.","Visão Geral":"Vista General","Visão Integrada indisponÃvel":"Vista Integrada no disponible","Visão Integrada â Empreendimento à MunicÃpio":"Vista Integrada â Emprendimiento à Municipio","Visão Regional":"Vista Regional","Visão Territorial: Foca nos dados do destino turÃstico.":"Visión Territorial: Se enfoca en los datos del destino turÃstico.","Visão completa do modelo de acesso: planos, avaliação gratuita por consumo, cotas do Professor Beni e regras fixas da metodologia.":"Visión completa del modelo de acceso: planes, evaluación gratuita por consumo, cuotas del Profesor Beni y reglas fijas de la metodologÃa.","Visão consolidada do setor hoteleiro":"Visión consolidada del sector hotelero","Visão consolidada por categorias: Performance, Sustentabilidade, Governança e mais":"Vista consolidada por categorÃas: Desempeño, Sostenibilidad, Gobernanza y más","Visão de Projetos":"Visión de Proyectos","Visão focada apenas em indicadores que disparam ações corretivas (status Atenção ou CrÃtico) com cursos prescritos automaticamente pelo motor SISTUR EDU.":"Visión enfocada solo en indicadores que disparan acciones correctivas (estado Atención o CrÃtico) con cursos prescritos automáticamente por el motor SISTUR EDU.","Visão geral":"Vista general","Visão geral do catálogo":"Vista general del catálogo","Visão geral do estado atual do SISTUR":"Descripción general del estado actual de SISTUR","Visão geral dos pilares":"Visión general de los pilares","Visão geral por turma":"Descripción general por grupo","Visão macro estratégica do destino":"Visión macro estratégica del destino","Visão por sala":"Visión por sala","Visão sistêmica baseada em Mario Beni (2007)":"Visión sistémica basada en Mario Beni (2007)","VisÃvel ao aluno":"Visible para el estudiante","Vitrine de destinos certificados com selo de qualidade SISTUR":"Vitrina de destinos certificados con sello de calida
392d SISTUR",Vitória:"Victoria","Vitória da Comunidade":"Victoria de la Comunidad","Vive em simbiose com anêmonas nos recifes de coral":"Vive en simbiosis con anémonas en los arrecifes de coral","Vizinhos em Crise":"Vecinos en Crisis","Vocação, abrangência geográfica, objetivos...":"Vocación, alcance geográfico, objetivos...",Você:"Usted","Você Venceu!":"¡Ganaste!","Você ainda não está matriculado em nenhuma turma.":"Aún no estás inscrito en ningún grupo.","Você ainda não fez nenhuma solicitação de conteúdo":"TodavÃa no has hecho ninguna solicitud de contenido","Você ainda não tem tarefas atribuÃdas.":"TodavÃa no tienes tareas asignadas.","Você ainda não tem uma assinatura online ativa. Escolha um plano para começar.":"TodavÃa no tiene una suscripción en lÃnea activa. Elija un plan para empezar.","Você analisa antes de decidir. Continue assim!":"Analizas antes de decidir. ¡Sigue asÃ!",'Você aparece como "Usuário Anônimo"':'Usted aparece como "Usuario Anónimo"',"Você aparecerá como anônimo em posts públicos":"Aparecerá como anónimo en publicaciones públicas","Você aprende sobre mandala de cultivo, barragens subterrâneas e plantas nativas resistentes à seca. O sertanejo tem soluções que a ciência está redescobrindo.":"Usted aprende sobre mandala de cultivo, represas subterráneas y plantas nativas resistentes a la sequÃa. El sertanero tiene soluciones que la ciencia está redescubriendo.","Você atingiu o número máximo de tentativas.":"Usted alcanzó el número máximo de intentos.","Você chega a uma vila de pescadores no litoral nordestino. A praia que antes era paradisÃaca agora sofre com lixo nas areias, esgoto despejado no mar e recifes de coral morrendo. O turismo desordenado tomou conta e os pescadores tradicionais mal conseguem pescar.":"Usted llega a una villa de pescadores en el litoral noreste. La playa que antes era paradisÃaca ahora sufre con basura en la arena, aguas residuales vertidas al mar y arrecifes de coral muriendo. El turismo desordenado se apoderó y los pescadores tradicionales apenas consiguen pescar.","Você chega ao cerrado mineiro, onde o avanço da soja e do gado devora a vegetação nativa. Nascentes estão secando, lobos-guarás perdem habitat e comunidades quilombolas lutam para manter suas terras.":"Usted llega al cerrado mineiro, donde el avance de la soja y el ganado devora la vegetación nativa. Los manantiales se están secando, los lobos de crin pierden hábitat y las comunidades quilombolas luchan por mantener sus tierras.",'Você chega ao sertão nordestino durante uma seca severa. A caatinga sofre com desmatamento para lenha, criação extensiva de cabras e mudanças climáticas. Dona Francisca mostra uma nascente que secou: "Antes tinha água o ano todo. Agora, só saudade."':'Usted llega al sertón noreste durante una sequÃa severa. La caatinga sufre con la deforestación para leña, la crÃa extensiva de cabras y los cambios climáticos. Doña Francisca muestra un manantial que se secó: "Antes tenÃa agua todo el año. Ahora, solo nostalgia."',"Você chega à Serra da Mantiqueira, onde picos enevoados abrigam nascentes cristalinas e florestas de altitude. Mas o turismo desordenado, a expansão urbana e o fogo ameaçam esse santuário.":"Usted llega a la Sierra de la Mantiqueira, donde picos nublados albergan manantiales cristalinos y bosques de altitud. Pero el turismo desordenado, la expansión urbana y el fuego amenazan este santuario.","Você concluiu o curso base do teste gratuito. Para acessar esta e todas as demais trilhas formativas, conheça os planos do SISTUR EDU.":"Has completado el curso base de la prueba gratuita. Para acceder a esta y todas las demás rutas formativas, conoce los planes de SISTUR EDU.","Você concluiu o curso base do teste gratuito. Para acessar este e todos os demais treinamentos, com certificados e o Professor Beni sem limites, conheça os planos.":"Has completado el curso base de la prueba gratuita. Para acceder a este y a todos los demás entrenamientos, con certificados y al Profesor Beni sin lÃmites, conoce los planes.","Você concluiu o curso base incluÃdo no teste gratuito. Para seguir nas trilhas formativas, com certificados e o Professor Beni sem limites, conheça os planos.":"Has completado el curso base incluido en la prueba gratuita. Para continuar en las rutas formativas, con certificados y al Profesor Beni sin lÃmites, conoce los planes.","Você descobre que hotéis despejam esgoto sem tratamento direto no mar.":"Usted descubre que los hoteles vierten aguas residuales sin tratar directamente en el mar.","Você encontra trilhas erodidas, lixo e sinais de queimadas recentes.":"Usted encuentra senderos erosionados, basura y señales de quemas recientes.","Você entrou no placar semanal!":"¡Usted entró en el marcador semanal!","Você equilibrou o destino!":"¡Usted equilibró el destino!","Você está na avaliação por uso: sem prazo, liberada até você consumir os itens de cortesia abaixo.":"Está en la evaluación por uso: sin plazo, liberada hasta que consuma los elementos de cortesÃa a continuación.","Você está no nÃvel {{level}} â desbloqueie itens conforme evolui.":"Está en el nivel {{level}} â desbloquee elementos a medida que evoluciona.","Você está offline":"Estás sin conexión","Você está visualizando dados de demonstração (Gramado, Bonito, Itanhaém)":"Está visualizando datos de demostración (Gramado, Bonito, Itanhaém)","Você foi aprovado no exame!":"¡Aprobaste el examen!","Você foi vinculado à organização com sucesso!":"¡Usted fue vinculado a la organización con éxito!","Você já está neste plano com essa quantidade de usuários.":"Ya está en este plan con esa cantidad de usuarios.","Você já está vinculado a um professor.":"Ya está vinculado a un profesor.","Você não atingiu a pontuação mÃnima":"No alcanzaste el puntaje mÃnimo","Você não está matriculado nesta turma.":"Usted no está matriculado en este grupo.","Você não tem permissão para comentar aqui.":"No tienes permiso para comentar aquÃ.","Você não tem permissão para comentar aqui. Contas pen
392dentes de aprovação ou em organização padrão não podem participar de discussões.":"No tienes permiso para comentar aquÃ. Las cuentas pendientes de aprobación o en organización estándar no pueden participar en discusiones.","Você não tem permissão para gerenciar feedbacks. Use o botão no cabeçalho para enviar sugestões.":"No tiene permiso para gestionar comentarios. Utilice el botón en el encabezado para enviar sugerencias.","Você não tem permissão para gravar dados neste diagnóstico. Peça a um administrador ou analista da organização para executar o pré-preenchimento.":"No tiene permiso para grabar datos en este diagnóstico. Pida a un administrador o analista de la organización que realice el precargado.","Você perde o emprego, mas ganha a consciência limpa.":"Usted pierde el empleo, pero gana la conciencia limpia.","Você pode criar dados no ambiente de demonstração.":"Puedes crear datos en el entorno de demostración.","Você pode descartar recomendações que não interessam.":"Usted puede descartar recomendaciones que no le interesan.","Você pode evoluir o nÃvel do diagnóstico a qualquer momento, adicionando mais indicadores conforme a maturidade do destino aumenta.":"Puedes evolucionar el nivel del diagnóstico en cualquier momento, añadiendo más indicadores a medida que aumenta la madurez del destino.","Você pode prosseguir para preenchimento manual ou editar o destino para adicionar o código IBGE.":"Puedes proceder al llenado manual o editar el destino para añadir el código IBGE.","Você pode revisar os termos a qualquer momento nas Configurações.":"Usted puede revisar los términos en cualquier momento en la Configuración.","Você pode se matricular em várias trilhas simultaneamente.":"Usted puede matricularse en varias rutas simultáneamente.","Você pode usar o template padrão ou personalizar os indicadores.":"Usted puede usar la plantilla estándar o personalizar los indicadores.","Você precisa estar autenticado para gerar relatórios":"Debes iniciar sesión para generar informes","Você precisa estar logado para enviar feedback":"Usted necesita estar logueado para enviar comentarios","Você prioriza o meio ambiente! Excelente!":"¡Priorizas el medio ambiente! ¡Excelente!","Você recebe 5 cartas por turno e pode jogar até 3. Cada carta tem custo em moedas ð° e fortalece um pilar do seu território.":"Recibes 5 cartas por turno y puedes jugar hasta 3. Cada carta tiene un costo en monedas ð° y fortalece un pilar de tu territorio.","Você recebe notificações de respostas aos seus posts.":"Usted recibe notificaciones de respuestas a sus publicaciones.","Você receberá notificação quando for adicionado a uma sala.":"Usted recibirá notificación cuando sea añadido a una sala.","Você receberá um alerta quando restarem 2 dias.":"Usted recibirá una alerta cuando queden 2 dÃas.","Você respondeu":"Usted respondió","Você saiu da sua conta":"Cerraste sesión en tu cuenta","Você saiu do placar semanal":"Usted salió del marcador semanal","Você será direcionado para a página de importação onde poderá:":"Serás dirigido a la página de importación donde podrás:","Você será redirecionado para autorizar no Cloudbeds. Ao retornar, a sincronização diária inicia automaticamente.":"Serás redirigido para autorizar en Cloudbeds. Al regresar, la sincronización diaria se iniciará automáticamente.","Você só pode andar para cima, baixo, esquerda ou direita.":"Solo puedes moverte hacia arriba, abajo, izquierda o derecha.","Você só pode virar 2 cartas por vez.":"Solo puedes voltear 2 cartas a la vez.","Você tem um número limitado de erros. Se errar demais, o jogo acaba! Pense bem antes de virar a segunda carta.":"Tienes un número limitado de errores. ¡Si te equivocas demasiado, el juego termina! Piensa bien antes de voltear la segunda carta.","Você tenta montar uma patrulha, mas a comunidade desconfia. Poucos se voluntariam. Enquanto isso, os madeireiros expandem suas operações para uma área de nascentes.":"Usted intenta montar una patrulla, pero la comunidad desconfÃa. Pocos se voluntarian. Mientras tanto, los madereros expanden sus operaciones a un área de manantiales.","Você terá tempo limitado para completar o exame":"Tendrás tiempo limitado para completar el examen","Você usou todas as perguntas disponÃveis.":"Usó todas las preguntas disponibles.",'Você verá uma tela de "Aprovação Pendente" enquanto aguarda.':'Usted verá una pantalla de "Aprobación Pendiente" mientras espera.',"Você é o guardião de um território! Defenda-o de ameaças jogando cartas estratég
392icas e mantendo o equilÃbrio entre os 3 pilares.":"¡Eres el guardián de un territorio! Defiéndelo de las amenazas jugando cartas estratégicas y manteniendo el equilibrio entre los 3 pilares.","Você é um agente de restauração ambiental! Sua missão é restaurar o bioma escolhido tomando as melhores decisões ao longo da jornada.":"¡Eres un agente de restauración ambiental! Tu misión es restaurar el bioma elegido tomando las mejores decisiones a lo largo del recorrido.",'Você é um jovem guardião ambiental que acaba de chegar a uma comunidade ribeirinha na Amazônia. A floresta ao redor está ameaçada: madeireiros ilegais avançam, queimadas se aproximam e a comunidade local precisa de ajuda. O lÃder da comunidade, Seu Raimundo, te recebe com preocupação: "A floresta está pedindo socorro. Precisamos de alguém corajoso para nos ajudar."':'Usted es un joven guardián ambiental que acaba de llegar a una comunidad ribereña en la AmazonÃa. La selva circundante está amenazada: madereros ilegales avanzan, quemas se aproximan y la comunidad local necesita ayuda. El lÃder de la comunidad, Seu Raimundo, le recibe con preocupación: "La selva está pidiendo socorro. Necesitamos a alguien valiente para ayudarnos."',"Voltando para seus próprios dados":"Volviendo a sus propios datos",Voltar:QQ,"Voltar ao Catálogo":"Volver al Catálogo","Voltar ao Dashboard":"Volver al Dashboard","Voltar ao Histórico":"Volver al Historial","Voltar ao InÃcio":"Volver al Inicio","Voltar ao Perfil":"Volver al Perfil","Voltar ao SISTUR":"Volver a SISTUR","Voltar ao Tutorial":"Volver al Tutorial","Voltar ao catálogo":"Volver al catálogo","Voltar ao inÃcio":"Volver al inicio","Voltar ao login":"Volver al inicio de sesión","Voltar aos jogos":"Volver a los juegos","Voltar para diagnósticos":"Volver a diagnósticos","Voltar para edição?":"¿Volver a la edición?","Voltar para turmas":"Volver a grupos","Voltar à s Trilhas":"Volver a las Rutas",Volume:KQ,"Volume adequado para instância atual":"Volumen adecuado para la instancia actual","Volume de Dados":"Volumen de Datos","Volume de Usuários":"Volumen de Usuarios","Volume de dados leve":"Volumen de datos ligero","Volume de água para produzir um bem":"Volumen de agua para producir un bien","Volume orgânico, sinais transacionais em OTAs, distribuição mensal e picos de interesse":"Volumen orgánico, señales transaccionales en OTAs, distribución mensual y picos de interés","Voos 12m":"Vuelos 12m","Voos e acesso rodoviário":"Vuelos y acceso por carretera","Voos/semana":"Vuelos/semana","Vozes da Serra":"Voces de la Sierra","Vá em Diagnósticos â Nova Rodada, escolha o destino/empreendimento, o nÃvel e o perÃodo de referência.":"Vaya a Diagnósticos â Nueva Ronda, elija el destino/emprendimiento, el nivel y el perÃodo de referencia.",Válido:"Válido","Válido até":"Válido hasta",Válidos:"Válidos",VÃdeo:"Video","VÃdeo demonstrativo em breve":"Video demostrativo próximamente","VÃdeo em breve":"Video próximamente","VÃdeo enviado":"Video enviado","VÃdeo enviado com sucesso!":"¡Video enviado con éxito!","VÃdeo-aulas":"Videoclases","VÃdeos podem ser assistidos em velocidade 1x, 1.5x ou 2x.":"Los videos pueden ser vistos en velocidad 1x, 1.5x o 2x.","VÃnculo com professor":"Vinculación con el profesor","VÃnculo criado":"VÃnculo creado","VÃnculo removido":"VÃnculo eliminado",VÃnculos:"VÃnculos","VÃnculos Externos":"Enlaces Externos",Warn:YQ,"Watch tracking + anti-cheat + score mÃnimo":"Watch tracking + anti-cheat + puntuación mÃnima",Waterfall:JQ,"Wi-Fi público":"Wi-Fi público","Widgets do Dashboard":"Widgets del panel",Word:XQ,"X de Y indicadores preenchidos":"X de Y indicadores completados","XP Total":"XP Total","XP de recompensa":"XP de recompensa","XP do Top 10":"XP del Top 10","XP ganho nos últimos 7 dias â apenas alunos que optaram aparecem.":"XP ganado en los últimos 7 dÃas â solo aparecen los estudiantes que eligieron participar.","XP médio":"XP promedio","XP, badges, conquistas, missões diárias e recompensas":"XP, insignias, logros, misiones diarias y recompensas","XP, nÃvel e badges acumulados na plataforma.":"XP, nivel e insignias acumulados en la plataforma.",YouTube:ZQ,"Zero Alucinação":"Cero Alucinación","` for human-readable display * (e.g. tables, charts, report text). */ export function formatIndicatorValueWithUnit( value: number | null | undefined, indicator?: IndicatorLike | null, ): string":"` para visualización legible por humanos * (ej. tablas, gráficos, texto de informe). */ export function formatIndicatorValueWithUnit( value: number | null | undefined, indicator?: IndicatorLike | null, ): string","a cada subseção concluÃda (RA â OE â AO â envelope), e a tela renderiza esse conteúdo parcial em tempo real, com barra de progresso e badge animado. Quando o job completa, troca-se naturalmente para o conteúdo final persistido em":"a cada subsección completada (RA â OE â AO â envelope), y la pantalla renderiza ese contenido parcial en tiempo real, con barra de progreso y distintivo animado. Cuando el trabajo se completa, se cambia naturalmente al contenido final persistido en","a diária sugerida parte da diária média do mês e é ajustada pela distância entre a ocupação real e a meta, pelo número de eventos e pela diária de mercado informada. A variação respeita o limite mensal, o piso e o teto. Elasticidade simplificada: cada +1% no preço reduz 0,3% da ocupação. RevPAR = diária à ocupação. à apenas sugestão; nenhum sistema externo é alterado. A justificativa por IA é opcional e só explica o cálculo.":"la tarifa diaria sugerida parte de la tarifa diaria promedio del mes y se ajusta por la distancia entre la ocupación real y la meta, por el número de eventos y por la tarifa de mercado informada. La variación respeta el lÃmite mensual, el piso y el techo. Elasticidad simplificada: cada +1% en el precio reduce 0,3% de la ocupación. RevPAR = tarifa diaria à ocupación. Es solo una sugerencia;
392 ningún sistema externo es alterado. La justificación por IA es opcional y solo explica el cálculo.","aceita 1â12 ou vazio (medição anual).":"acepta 1â12 o vacÃo (medición anual).","aceita vÃrgula ou ponto decimal.":"acepta coma o punto decimal.","acima.":"arriba.",adicionar:eK,admin:aK,ai_model:oK,ai_provider:iK,"alta gestão, secretários, prefeitos, comitês gestores.":"alta dirección, secretarios, alcaldes, comités de gestión.","[email protected], [email protected]":"[email protected], [email protected]",anatel_coverage_cache:tK,ano:rK,"anúncio publicado":"anuncio publicado","anúncios publicados":"anuncios publicados","as edge functions":"como edge functions",assessment_indicator_audit:sK,ativas:nK,"ativos no perÃodo":"activos en el perÃodo",até:"hasta","auth-email-hook: Templates customizados de e-mail de autenticação":"auth-email-hook: Plantillas personalizadas de correo electrónico de autenticación",auto:cK,avaliação:"evaluación",avaliações:"evaluaciones","baseado nos comentários":"basado en los comentarios","benchmark_max = 0.862 (melhor municÃpio BR)":"benchmark_max = 0.862 (mejor municipio BR)","benchmark_max = 60 (pior cenário)":"benchmark_max = 60 (peor escenario)","benchmark_min = 0.500 (pior municÃpio BR)":"benchmark_min = 0.500 (peor municipio BR)","beni-chat":"beni-chat","beni-chat: IA conversacional contextualizada com dados do destino":"beni-chat: IA conversacional contextualizada con datos del destino",binário:"binario","boas práticas, governança, planejamento e gestão de destinos.":"buenas prácticas, gobernanza, planificación y gestión de destinos.","c.training_id) || null, target_roles: ['GESTORES', 'TECNICOS'], reasoning: `Baseado no diagnóstico do $":"c.training_id) || null, target_roles: ['GESTORES', 'TECNICOS'], reasoning: `Basado en el diagnóstico del $","calculate-assessment: Execução do pipeline IGMA completo":"calculate-assessment: Ejecución del pipeline IGMA completo",claude_budget_pillar:dK,codigo:lK,"codigo,valor,fonte":"codigo,valor,fuente","coerência narrativa":"coherencia narrativa",comentário:"comentario",community:uK,"conceitos dos pilares RA, OE e AO, as 6 regras do IGMA, teoria sistêmica do turismo.":"conceptos de los pilares RA, OE y AO, las 6 reglas del IGMA, teorÃa sistémica del turismo.","concluiu com êxito a trilha formativa":"completó con éxito la ruta formativa","concluiu com êxito o curso":"completó con éxito el curso","concluiu com êxito o curso acima":"completó con éxito el curso anterior",conformidade:mK,consumo:pK,"[email protected]":"[email protected]",'copyToClipboard( buildModuleManifestJson(m), `Manifesto de "$':'copyToClipboard( buildModuleManifestJson(m), `Manifiesto de "$','copyToClipboard( buildModuleMigrationPrompt(m), `Prompt de migração de "$':'copyToClipboard( buildModuleMigrationPrompt(m), `Prompt de migración de "$',"correção automática aplicada":"corrección automática aplicada","correções automáticas aplicadas":"correcciones automáticas aplicadas","criados no perÃodo":"creados en el perÃodo",cursos:gK,"d.course_id).filter(Boolean) as string[]; let courseMap = new Map":"d.course_id).filter(Boolean) as string[]; let courseMap = new Map",'d.id !== id)); toast.success(`Valor online adotado em "$':'d.id !== id)); toast.success(`Valor en lÃnea adoptado en "$',"da camada semântica, retornando aprovações, alertas e violações com trechos citados.":"de la capa semántica, devolviendo aprobaciones, alertas y violaciones con fragmentos citados.","dados.turismo.gov.br":"datos.turismo.gov.br","datasets oficiais abertos":"datasets oficiales abiertos","dd 'de' MMM":"dd 'de' MMM","dd 'de' MMM yyyy":"dd 'de' MMM yyyy","dd 'de' MMMM 'de' yyyy":"dd 'de' MMMM 'de' yyyy","dd 'de' MMMM 'de' yyyy 'à s' HH:mm":"dd 'de' MMMM 'de' yyyy 'a las' HH:mm","dd/MM/yyyy 'à s' HH:mm":"dd/MM/yyyy 'a las' HH:mm","dd/MM/yyyy 'à s' HH:mm:ss":"dd/MM/yyyy 'a las' HH:mm:ss",de:hK,"de exemplo. Use como modelo. Para carregá-la no editor, clique em":"de ejemplo. Ãselo como modelo. Para cargarlo en el editor, haga clic en","de hospital
392idade, sendo que":"de hospitalidad, siendo que",desativa:fK,"desenvolvida pelo Prof. Mario Carlos Beni. A teoria estabelece que o turismo é um sistema aberto, composto por subsistemas interdependentes que devem ser analisados de forma holÃstica.":"desarrollada por el Prof. Mario Carlos Beni. La teorÃa establece que el turismo es un sistema abierto, compuesto por subsistemas interdependientes que deben ser analizados de forma holÃstica.","deste destino: alimenta-se de fontes oficiais (Cadastur, ANAC, CAGED, IGMA) e de registros manuais. Complementa o Diagnóstico (que avalia capacidade estrutural em ciclos) acompanhando os":"de este destino: se alimenta de fuentes oficiales (Cadastur, ANAC, CAGED, IGMA) y de registros manuales. Complementa el Diagnóstico (que evalúa la capacidad estructural en ciclos) acompañando los","diagnósticos finalizados":"diagnósticos finalizados",dias:vK,"direto do":"directo del","direto, orientado a decisão, com destaque para riscos e oportunidades. Reduz citações acadêmicas, mantém apenas o essencial para legitimidade.":"directo, orientado a la decisión, con énfasis en riesgos y oportunidades. Reduce citas académicas, mantiene solo lo esencial para la legitimidad.","dispara três chamadas paralelas (uma por pilar I-RA, I-OE, I-AO), cada uma restrita ao seu escopo;":"dispara tres llamadas paralelas (una por pilar I-RA, I-OE, I-AO), cada una restringida a su alcance;","do SISTUR.":"de SISTUR.","documentos de referência":"documentos de referencia",duration_ms:bK,"e a janela de contexto são calibrados dinamicamente por tier (essencial / estratégico / integral), template e quantidade real de indicadores, evitando tanto respostas truncadas em diagnósticos integrais quanto reservas excessivas em diagnósticos pequenos. Templates Executivo e Investidor mantêm pipeline monolÃtico (estrutura curta sem subseções por pilar).":"y la ventana de contexto se calibran dinámicamente por nivel (esencial / estratégico / integral), plantilla y cantidad real de indicadores, evitando tanto respuestas truncadas en diagnósticos integrales como reservas excesivas en diagnósticos pequeños. Las plantillas Ejecutivo e Inversor mantienen un pipeline monolÃtico (estructura corta sin subsecciones por pilar).","e dispara toast + Notification do navegador quando o relatório fica pronto.":"y dispara toast + Notificación del navegador cuando el informe está listo.","e o painel Comercial (admin) refletem estas mesmas regras.":"y el panel Comercial (admin) reflejan estas mismas reglas.","e o pipeline de validação cruzada, mas diferem em público-alvo, tamanho, estrutura e tom.":"y el pipeline de validación cruzada, pero difieren en público objetivo, tamaño, estructura y tono.","e processado por um worker dedicado (":"y procesado por un worker dedicado (","e todos os dados de indicadores, pontuações e planos de ação serão permanentemente excluÃdos.":"y todos los datos de indicadores, puntuaciones y planes de acción se eliminarán permanentemente.","e.course_title === r.course_title); return (":"e.course_title === r.course_title); return (","e.destination_id) ?? []); return":"e.destination_id) ?? []); return","e.evolutionState !== null); return (":"e.evolutionState !== null); return (","e.evolutionState === 'REGRESSION').length; setStats(":"e.evolutionState === 'REGRESSION').length; setStats(","e.is_mandatory && e.enrollment_status !== 'completed' && e.enrollment_status !== 'waived').length; return (":"e.is_mandatory && e.enrollment_status !== 'completed' && e.enrollment_status !== 'waived').length; return (","e.key === r.key); return (":"e.key === r.key); return (","e.message === error.message && e.page_url === error.page_url ); if (!isDupe && errorQueue.current.length":"e.message === error.message && e.page_url === error.page_url ); if (!isDupe && errorQueue.current.length",editado:AK,"edu-professor":"edu-professor","edu-student":"edu-student","election_year ⥠2024":"election_year ⥠2024","elevenlabs-tts":"elevenlabs-tts","[email protected]":"[email protected]","entradas ativas que não estão no arquivo (não exclui, permite reverter).":"entradas activas que no están en el archivo (no excluye, permite revertir).","entre os diagnósticos territoriais e empresariais (NPS, Reviews Online, Horas de Treinamento, % Funcionários Locais, % Compras Locais e Certificações Ambientais), mantendo a mesma lógica sistêmica e as 6 regras do Motor IGMA.":"entre los diagnósticos territoriales y empresariales (NPS, Reviews Online, Horas de Entrenamiento, % Empleados Locales, % Compras Locales y Certificaciones Ambientales), manteniendo la misma lógica sistémica y las 6 reglas del Motor IGMA.","equipe técnica e gestores públicos.":"equipo técnico y gestores públicos.","erp-diagnostics":"erp-diagnostics","estende a teoria sistêmica de Mario Beni para organizações do setor privado, especialmente hotéis, resorts e redes hoteleiras. O módulo utiliza":"extiende la teorÃa sistémica de Mario Beni a organizaciones del sector privado, especialmente hoteles, resorts y cadenas hoteleras. El módulo utiliza","está ativo no diagnóstico (zero custo extra para rodadas sem opt-in).":"está activo en el diagnóstico (cero costo extra para rondas sin opt-in).","ex.: 42.5":"ej.: 42.5","ex.: CLASSIFICAÃÃO (régua oficial 5 nÃveis)":"ej.: CLASIFICACIÃN (escala oficial 5 niveles)","ex.: classification.scale_5_levels":"ej.: classification.scale_5_levels","ex.: reports":"ej.: reports","ex: CAGED, IBGE, levantamento próprio":"ej: CAGED, IBGE, relevamiento propio","ex: Concluir 5 cursos":"ej: Completar 5 cursos","ex: course_master":"ej: course_master",'exibe os logs com filtros por provider, busca livre, dialog de detalhes e auto-refresh a 15s, além do bloco "Pipeline Claude â Tempo Real" com as 4 fases mapeadas (Pilares, Envelope, Validação, Persistência) e barra de progresso geral.':'muestra los logs con filtros por proveedor, búsqueda libre, diálogo de detalles y auto-actualización a 15s, además del bloque "Pipeline Claude â Tiempo Real" con las 4 fases mapeadas (Pilares, Sobre, Validación, Persistencia) y barra de progreso general.',"fale com o time":"hable con el equipo","fallback manual":"fallback manual","fetch-official-data: Proxy para APIs oficiais (IBGE, DATASUS, STN, CADASTUR, Mapa do Turismo)":"fetch-official-data: Proxy para APIs oficiales (IBGE, DATASUS, STN, CADASTUR, Mapa do Turismo)","filtre Indicadores, Gargalos e Tratamento por unidade da marca.":"filtra Indicadores, Cuellos de Botella y Tratamiento por unidad de la marca.",first_course:yK,fonte:SK,"fonte de verdade":"fuente de verdad",gargalo:EK,"gasto por estadia à estadias por ano à anos de relacionamento à margem. CAC sugerido pela comissão média ponderada dos canais. LTV/CAC abaixo de 3 indica aquisição cara.":"gasto por estancia à estancias por año à años de relación à margen. CAC sugerido por la comisión media ponderada de los canales. LTV/CAC inferior a 3 indica adquisición cara.","generate-report: Relatórios personalizados via IA com templates":"generate-report: Informes personalizados vÃa IA con plantillas",generated_reports:CK,"gera o envelope (introdução, ficha técnica, metodologia, alertas IGMA, análise integrada, gargalos, benchmarks, prognóstico, banco de ações, fontes, considerações finais, referências, glossário, apêndice) recebendo os textos dos pilares como contexto de leitura para garantir":"genera el sobre (introducción, ficha técnica, metodologÃa, alertas IGMA, análisis integrado, cuellos de botella, benchmarks, pronóstico, banco de acciones, fuentes, consideraciones finales, referencias, glosario, apéndice) recibiendo los textos de los pilares como contexto de lectura para garantizar","getting-started":"getting-started",global:TK,"global mantém o acompanhamento via":"global mantiene el seguimiento vÃa","grupos de capacitação, salas e atividades":"grupos de capacitación, salas y actividades","histórico sem modelo":"histórico sin modelo","horas por semana":"horas por semana","hover:no-underline":"hover:no-underline","https://<tenant>
392.hospitality.oracleindustry.com":"https://<tenant>.hospitality.oracleindustry.com","https://api.hitsmobile.com.br/v1":"https://api.hitsmobile.com.br/v1","https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap":"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@400;500;600&display=swap","https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap":"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Inter:wght@400;500;600&display=swap","https://www.gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged":"https://www.gov.br/trabalho-e-emprego/pt-br/assuntos/estatisticas-trabalho/novo-caged","https://www.youtube.com/iframe_api":"https://www.youtube.com/iframe_api","https://youtube.com/...":"https://youtube.com/...","igma_pib_per_capita (IBGE â automático)":"igma_pib_per_capita (IBGE â automático)","imediatamente (HTTP 202) e faz polling. Mesmo se o usuário fechar a aba ou navegar para outra página, o":"inmediatamente (HTTP 202) y realiza polling. Aunque el usuario cierre la pestaña o navegue a otra página, el","implementa os princÃpios da":"implementa los principios de la",inativa:PK,indicadores:RK,"indicadores selecionados":"indicadores seleccionados","indicadores · {{v0}}%":"indicadores · {{v0}}%",indicator_values:xK,"ingest-anatel":"ingest-anatel","ingest-cadastur":"ingest-cadastur","ingest-mapa-turismo: Ingestão de dados do Mapa do Turismo Brasileiro":"ingest-mapa-turismo: Ingesta de datos del Mapa del Turismo Brasileño","ingest-tse":"ingest-tse","ingest-youtube: Metadados de vÃdeos para biblioteca EDU":"ingest-youtube: Metadatos de videos para biblioteca EDU","integral MEC/ABNT (NBR 14724, 6024, 6023, 6028, 10520).":"integral MEC/ABNT (NBR 14724, 6024, 6023, 6028, 10520).","investidores, fundos, parceiros privados e captação.":"inversores, fondos, socios privados y captación de capital.",jobId:wK,job_id:IK,"já fixada":"ya fijada","já fixadas":"ya fijadas","já foram pré-preenchidos e validados com dados oficiais.":"ya fueron pre-rellenados y validados con datos oficiales.","kWh/UH/mês":"kWh/UH/mes","l.code === lng); /** * Sincroniza o idioma escolhido com a conta do usuário: * - Ao entrar, se a conta tiver um idioma salvo diferente do atual, aplica-o. * - Se a conta não tiver idioma salvo, grava o idioma atual (do navegador). * - Ao trocar de idioma, grava a nova escolha na conta. * Assim a preferência vale em qualquer dispositivo/sessão. */ export function useLanguageSync()":"l.code === lng); /** * Sincroniza el idioma elegido con la cuenta del usuario: * - Al iniciar sesión, si la cuenta tiene un idioma guardado diferente del actual, lo aplica. * - Si la cuenta no tiene idioma guardado, graba el idioma actual (del navegador). * - Al cambiar de idioma, graba la nueva elección en la cuenta. * Asà la preferencia es válida en cualquier dispositivo/sesión. */ export function useLanguageSync()","leitos por mil habitantes":"camas por mil habitantes",lives:DK,localStorage:OK,"m.user_id))), [mentions] ); function handleChange(e: React.ChangeEvent":"m.user_id))), [mentions] ); function handleChange(e: React.ChangeEvent","mailto:[email protected]?subject=Proposta%20SISTUR":"mailto:[email protected]?subject=Propuesta%20SISTUR","mailto:[email protected]":"mailto:[email protected]","mailto:[email protected]?subject=Ajuda%20com%20o%20acesso%20ao%20SISTUR":"mailto:[email protected]?subject=Ayuda%20con%20el%20acceso%20a%20SISTUR","mapa do destino com raio de influência, concorrentes (intensidade pelo número de avaliações), unidades da rede, eventos, demanda aérea (ANAC) e origem dos visitantes informada. Não há ranking entre municÃpios.":"mapa del destino con radio de influencia, competidores (intensidad por el número de evaluaciones), unidades de la red, eventos, demanda aérea (ANAC) y origen de los visitantes informado. No hay ranking entre municipios.",max_tokens:MK,metadata:NK,"metric_code, reference_year, reference_month, value, source, notes":"metric_code, reference_year, reference_month, value, source, notes",min:zK,model:jK,"moderate-image: Moderação de conteúdo via IA":"moderate-image: Moderación de contenido vÃa IA","monitor permanente":"monitor permanente",municÃpios:"municipios",mês:"mes","mÃnimo de 2.500 palavras.":"mÃnimo de 2.500 palabras.","na origem dos dados. Cada indicador é classificado por sua fonte e método de coleta, com nÃveis de confiabilidade
392claramente exibidos.":"en el origen de los datos. Cada indicador se clasifica por su fuente y método de recopilación, con niveles de fiabilidad claramente exhibidos.","nenhum resultado":"ningún resultado","no Dashboard Territorial renderiza os 3 conjuntos como setores circulares, com anel externo MST quando o opt-in está ativo.":"en el Dashboard Territorial renderiza los 3 conjuntos como sectores circulares, con anillo externo MST cuando el opt-in está activo.","no catálogo e só são exigidos quando o opt-in":"en el catálogo y solo se exigen cuando el opt-in","no próximo cálculo do diagnóstico.":"en el próximo cálculo del diagnóstico.","no topo do painel.":"en la parte superior del panel.","no unique constraint matching":"no unique constraint matching","[email protected], [email protected]":"[email protected], [email protected]","não encontrado":"no encontrado","não verificado":"no verificado","o Beni não responde sobre programação, saúde, polÃtica, religião ou temas fora do turismo e da metodologia SISTUR.":"el Beni no responde sobre programación, salud, polÃtica, religión o temas fuera del turismo y de la metodologÃa SISTUR.","o agente identificou afirmações que não encontrou respaldo direto na bibliografia ou na tabela de auditoria. Confirme ou ajuste manualmente antes de publicar â pode ser tanto um falso positivo quanto uma fragilidade real do texto.":"el agente identificó afirmaciones que no encontró respaldo directo en la bibliografÃa o en la tabla de auditorÃa. Confirme o ajuste manualmente antes de publicar â puede ser tanto un falso positivo como una fragilidad real del texto.","o componente":"el componente","o fim do perÃodo":"el fin del perÃodo","o motor de coerência identificou estes pontos mas não tinha um valor oficial a substituir. Revisão humana recomendada antes de publicar.":"el motor de coherencia identificó estos puntos pero no tenÃa un valor oficial para sustituir. Se recomienda revisión humana antes de publicar.","o valor já foi substituÃdo pelo número oficial da tabela de auditoria antes do relatório ser salvo. Nenhuma ação adicional é necessária â o documento já está consistente.":"el valor ya fue sustituido por el número oficial de la tabla de auditorÃa antes de que se guardara el informe. No es necesaria ninguna acción adicional â el documento ya es consistente.",'o.id === id)?.name ?? "Organização") : "Global (padrão)"; return (':'o.id === id)?.name ?? "Organización") : "Global (predeterminado)"; return (',"ocorrências/100k":"ocurrencias/100k",organizacional:kK,ou:_K,"p.destination_id).filter(Boolean) as string[]; if (peerIds.length":"p.destination_id).filter(Boolean) as string[]; if (peerIds.length","p.pillar === \"OE\");', '', ' // REGRA 1 â RA PRIORITÃRIO', ' if (RA?.severity === \"CRITICO\")":`p.pillar === "OE");', '', ' // REGLA 1 â RA PRIORITARIO', ' if (RA?.severity === "CRITICO")`,padrão:"predeterminado","para ajustar os recursos de CPU, memória e I/O do banco de dados.":"para ajustar los recursos de CPU, memoria e I/O de la base de datos.","para carregar uma regra válida.":"para cargar una regla válida.","para começar.":"para empezar.","para endereçar os problemas identificados.":"para abordar los problemas identificados.","para liberar as trilhas formativas.":"para liberar las rutas formativas.","para localizar o CNPJ de":"para localizar el CNPJ de","para planejamento anual ou captação de recursos. Reserve o":"para planificación anual o captación de recursos. Reserve el","para projetos de grande porte ou certificações de destino.":"para proyectos de gran envergadura o certificaciones de destino.","para pré-preencher mais de 25 indicadores: IBGE Agregados, IBGE SIDRA (Censo), IBGE Pesquisas, DATASUS, INEP, STN/Tesouro Nacional, CADASTUR (datasets abertos), Mapa do Turismo Brasileiro (API REST do MTur) e ANA/Hidroweb (Qualiágua) para o IQA municipal. Indicadores que não possuem API pública (como taxa de escolarização e dados de levantamento local) são preenchidos manualmente pelo operador do diagnóstico, sempre com confirmação humana antes do cálculo.":"para precargar más de 25 indicadores: IBGE Agregados, IBGE SIDRA (Censo), IBGE Pesquisas, DATASUS, INEP, STN/Tesouro Nacional, CADASTUR (datasets abiertos), Mapa del Turismo Brasileño (API REST del MTur) y ANA/Hidroweb (Qualiágua) para el IQA municipal. Los indicadores que no tienen API pública (como la tasa de escolarización y los datos de encuestas locales) son rellenados manualmente por el operador del diagnóstico, siempre con confirmación humana antes del cálculo.",'para valores numéricos. As correções automáticas já foram aplicadas no texto; apenas os itens listados como "para revisão manual" exigem ação.':'para valores numéricos. Las correcciones automáticas ya se aplicaron en el texto; solo los elementos listados como "para revisión manual" exigen acción.',"para {{n}} usuários. Acima de {{max}} usuários, fale com o time comercial.":"para {{n}} usuarios. Por encima de {{max}} usuarios, hable con el equipo comercial.",pares:qK,"pergunte sobre diagnósticos que você já realizou. O Beni vai confirmar o nome exato antes de analisar.":"pregunte sobre diagnósticos que ya haya realizado. El Beni confirmará el nombre exacto antes de analizar.","pergunte sobre relatórios gerados no sistema. O Beni vai confirmar o nome exato antes de analisar.":"pregunte sobre informes generados en el sistema. El Beni confirmará el nombre exacto antes de analizar.",persist_inserted:LK,"persona, audiência, tom e prioridades editoriais":"persona, audiencia, tono y prioridades editoriales","peso_i = peso estratég
392ico do indicador i":"peso_i = peso estratégico del indicador i","peso_i = peso estratégico do indicador i":"peso_i = peso estratégico del indicador i",phase1_pillars_start:UK,phase2_envelope_done:BK,"ponto crÃtico":"punto crÃtico","ponto requer revisão manual":"punto requiere revisión manual","ponto-vÃrgula":"punto y coma","pontos requerem revisão manual":"puntos requieren revisión manual","por 100":"por 100","por mil":"por mil","por usuário":"por usuario","process-report-job":"process-report-job","profissional-financeiro, com valores monetários no padrão BRL canônico (R$), foco em ROI, demanda turÃstica, capacidade instalada e evidências de viabilidade.":"profesional-financiero, con valores monetarios en el estándar BRL canónico (R$), foco en ROI, demanda turÃstica, capacidad instalada y evidencias de viabilidad.","projeção de 1 a 5 anos dos pilares RA, OE e AO a partir de alavancas. Regras sistêmicas: com RA abaixo de 34%, ganhos em AO caem pela metade; com OE abaixo de 34%, todos os ganhos caem 30%. Resultados limitados entre 0% e 100%. Cenários são projeções, não previsões.":"proyección de 1 a 5 años de los pilares RA, OE y AO a partir de palancas. Reglas sistémicas: con RA por debajo del 34%, las ganancias en AO se reducen a la mitad; con OE por debajo del 34%, todas las ganancias caen un 30%. Resultados limitados entre 0% y 100%. Los escenarios son proyecciones, no previsiones.",provider:FK,provider_failed:GK,provider_selected:VK,"pré-visualização ao vivo":"previsualización en vivo","publicados em dados.gov.br para ingestão periódica de guias e agências. Quando o arquivo do trimestre não está acessÃvel ou não contém o municÃpio consultado, o indicador permanece fora do pré-preenchimento automático.":"publicados en datos.gov.br para ingestión periódica de guÃas y agencias. Cuando el archivo del trimestre no está accesible o no contiene el municipio consultado, el indicador permanece fuera del pre-relleno automático.",pública:"pública","que o agente de IA aplica em TODO relatório gerado. O contexto da organização (quando existir) prevalece sobre o contexto global. à usado junto com a camada semântica, a estrutura canônica e os dados do diagnóstico.":"que el agente de IA aplica en TODO informe generado. El contexto de la organización (cuando exista) prevalece sobre el contexto global. Se usa junto con la capa semántica, la estructura canónica y los datos del diagnóstico.","que são utilizados automaticamente pela IA na geração de relatórios e na contextualização dos diagnósticos. Existem dois nÃveis de documentos:":"que son utilizados automáticamente por la IA en la generación de informes y en la contextualización de los diagnósticos. Existen dos niveles de documentos:","recomendações de formação baseadas em indicadores em Atenção ou CrÃtico.":"recomendaciones de formación basadas en indicadores en Atención o CrÃtico.","recomendações pedagógicas nem detalhamento metodológico extenso.":"recomendaciones pedagógicas ni un detallado metodológico extenso.","refere-se a dados, textos, diagnósticos, avaliações, materiais educacionais e quaisquer informações inseridas pelo Usuário na Plataforma.":"se refiere a datos, textos, diagnósticos, evaluaciones, materiales educativos y cualquier información introducida por el Usuario en la Plataforma.","refere-se a qualquer pessoa fÃsica ou jurÃdica que acesse ou utilize a Plataforma mediante registro.":"se refiere a cualquier persona fÃsica o jurÃdica que acceda o utilice la Plataforma mediante registro.","refere-se ao SISTUR â Sistema Integrado de Suporte para Turismo em Regiões, incluindo todos os módulos (AnalÃtico, EDU, Jogos, Fórum, Professor Beni) e quaisquer aplicações relacionadas.":"se refiere a SISTUR â Sistema Integrado de Soporte para Turismo en Regiones, incluyendo todos los módulos (AnalÃtico, EDU, Juegos, Foro, Profesor Beni) y cualesquiera aplicaciones relacionadas.","refere-se ao detentor dos direitos de propriedade intelectual sobre a Plataforma, incluindo seus sócios, desenvolvedores e parceiros autorizados.":"se refiere al titular de los derechos de propiedad intelectual sobre la Plataforma, incluyendo sus socios, desarrolladores y socios autorizados.","refere-se aos indicadores, pontuações, interpretações IGMA e demais dad
392os gerados pelo motor de cálculo da Plataforma.":"se refiere a los indicadores, puntuaciones, interpretaciones IGMA y demás datos generados por el motor de cálculo de la Plataforma.",reference_month:$K,"registram em qual modelo cada relatório foi efetivamente gerado; o histórico exibe um badge com essa informação para administradores.":"registran en qué modelo cada informe fue efectivamente generado; el historial muestra una insignia con esa información para administradores.",registro:HK,registros:WK,"regra válida":"regla válida","renderTrainingCard(t as EduTraining &":"renderTrainingCard(t as EduTraining &","renderTrainingCard(training as EduTraining &":"renderTrainingCard(training as EduTraining &",report_generation_logs:QK,report_id:KK,report_jobs:YK,"report_jobs.partial_content":"report_jobs.partial_content",report_validations:JK,"restrita a órgãos públicos federais":"restringida a organismos públicos federales","resultados operacionais contÃnuos":"resultados operativos continuos",routes:XK,"salas de aula, alunos e atividades":"aulas, alumnos y actividades","salvo de generated_reports":"guardado de generated_reports","score_i = valor normalizado do indicador i (0-10)":"score_i = valor normalizado del indicador i (0-10)","se é seu primeiro diagnóstico ou se precisa de resultados rápidos. Use o":"si es su primer diagnóstico o si necesita resultados rápidos. Use el","sem dado":"sin dato","sem teto":"sin techo","será permanentemente removida.":"será eliminada permanentemente.","será removido desta organização. Ele ainda terá acesso ao sistema, mas precisará ser adicionado a outra organização.":"será eliminado de esta organización. Aún tendrá acceso al sistema, pero necesitará ser añadido a otra organización.","serão usadas nesta prova":"serán usadas en esta prueba","setMutedState((e as CustomEvent":"setMutedState((e as CustomEvent","seu diagnóstico":"su diagnóstico","[email protected]":"[email protected]","sim/não":"sÃ/no","src/components/ â Componentes reutilizáveis (UI, layout, dashboard, diagnostics, edu, admin, forum, games)":"src/components/ â Componentes reutilizables (UI, layout, dashboard, diagnostics, edu, admin, forum, games)","src/hooks/ â 50+ custom hooks para lógica de negócio (useAuth, useAssessments, useIndicators, etc.)":"src/hooks/ â 50+ custom hooks para lógica de negocio (useAuth, useAssessments, useIndicators, etc.)","src/lib/igmaEngine.ts â Núcleo: Motor IGMA com as 6 regras sistêmicas":"src/lib/igmaEngine.ts â Núcleo: Motor IGMA con las 6 reglas sistémicas","src/pages/ â 44 páginas lazy-loaded com React.lazy() + Suspense":"src/pages/ â 44 páginas lazy-loaded con React.lazy() + Suspense",stage:ZK,"state.bars.ra + 30) alerts.push('ð Muita construção! A poluição aumentou!'); if (state.bars.ao":"state.bars.ra + 30) alerts.push('ð ¡Mucha construcción! ¡La contaminación aumentó!'); if (state.bars.ao","state.bars.ra + 30) alerts.push('ð Muita poluição!'); if (state.bars.ao":"state.bars.ra + 30) alerts.push('ð ¡Mucha contaminación!'); if (state.bars.ao","state.coins * 0.5) alerts.push(`ð§ Manutenção alta: $":"state.coins * 0.5) alerts.push(`ð§ Mantenimiento alto: $",stream_closed_ok:eY,"supabase/migrations/ â 30+ migrações de schema com RLS policies":"supabase/migrations/ â 30+ migraciones de esquema con RLS policies","[email protected]":"[email protected]","tempo ativo vs total":"tiempo activo vs total","text-xs text-amber-700 dark:text-amber-200 underline hover:no-underline mt-1 inline-block break-all":"text-xs text-amber-700 dark:text-amber-200 underline hover:no-underline mt-1 inline-block break-all","todos os diagnósticos futuros":"todos los diagnósticos futuros",trace_id:aY,"transparência total":"transparencia total",tse_turnout_cache:oY,"técnico, fundamentado, com citações diretas a Beni (1997/2007), IGMA, IBGE, MTur, IGMA-IBT e demais fontes oficiais.":"técnico, fundamentado, con citas directas a Beni (1997/2007), IGMA, IBGE, MTur, IGMA-IBT y demás fuentes oficiales.",tópico:"tema",tópicos:"temas","uma marca pode ter várias unidades em municÃpios diferentes. Selecione a marca e adicione abaixo os municÃpios onde o empreendimento opera â o diagnóstico será único, mas a coleta de dados será por unidade.":"una marca puede tener varias unidades en municipios diferentes. Seleccione la marca y añada abajo los municipios donde la empresa opera â el diagnóstico será único, pero la recolección de datos será por unidad.",useReportJobWatcher:iY,uuid:tY,validation_agent_done:rY,valor:sY,"valor substituÃdo por":"valor sustituido por",value:nY,"visibilidade pessoal":"visibilidad personal","visitantes por avaliação de concorrente â quanto maior, mais espaço de mercado.":"visitantes por evaluación de competidor â cuanto mayor, más espacio de mercado.","[email protected]":"[email protected]","void; /** Quando informado, planos com preço online abrem o checkout em vez do formulário */ onCheckout?: (plan:":"void; /** Cuando se informa, los planes con precio en lÃnea abren el checkout en lugar del formulario */ onCheckout?: (plan:","void; onKeyDown: (e: React.KeyboardEvent":"void; onKeyDown: (e: React.KeyboardEvent","vs. anterior":"vs. anterior",vÃrgula:"coma","{{0}} em nÃvel {{1}} ({{2}}) â Interpretação: {{3}}":"{{0}} en nivel {{1}} ({{2}}) â Interpretación: {{3}}","{{n}} pergunta(s) restante(s)":"{{n}} pregunta(s) restante(s)","{{v0}} (+bônus)":"{{v0}} (+bonificación)","{{v0}} (erros: {{v1}})":"{{v0}} (errores: {{v1}})","{{v0}} XP totais":"{{v0}} XP totales","{{v0}} alerta(s)":"{{v0}} alerta(s)","{{v0}} alerta(s) pendente(s)":"{{v0}} alerta(s) pendiente(s)","{{v0}} alterado(s)":"{{v0}} cambiado(s)","{{v0}} aluno(s)":"{{v0}} alumno(s)","{{v0}} alunos · {{v1}} ativos (7d)":"{{v0}} alumnos · {{v1}} activos (7d)","{{v0}} amostras":"{{v0}} muestras","{{v0}} aprovados":"{{v0}} aprobados","{{v0}} arquivos":"{{v0}} archivos","{{v0}} ativos / {{v1}} inativos":"{{v0}} activos / {{v1}} inactivos","{{v0}} aula(s)":"{{v0}} clase(s)","{{v0}} aviso(s)":"{{v0}} aviso(s)","{{v0}} calculados no perÃodo":"{{v0}} calculados en el perÃodo","{{v0}} capturados":"{{v0}} capturados","{{v0}} caracteres":"{{v0}} caracteres","{{v0}} categorias":"{{v0}} categorÃas","{{v0}} certificados":"{{v0}} certificados","{{v0}} com erro":"{{v0}} con error","{{v0}} com erro de validação":"{{v0}} con error de validación","{{v0}} confirmado(s)":"{{v0}} confirmado(s)","{{v0}} cursos de capacitação":"{{v0}} cursos de capacitación","{{v0}} cursos ⢠{{v1}} lives ⢠{{v2}} trilhas":"{{v0}} cursos ⢠{{v1}} transmisiones en vivo ⢠{{v2}} rutas","{{v0}} de {{v1}}
392 gargalos exibidos":"{{v0}} de {{v1}} cuellos de botella mostrados","{{v0}} de {{v1}} indicadores via fontes oficiais ou derivados":"{{v0}} de {{v1}} indicadores vÃa fuentes oficiales o derivados","{{v0}} de {{v1}} métricas com média calculada.":"{{v0}} de {{v1}} métricas con media calculada.","{{v0}} der.":"{{v0}} der.","{{v0}} destinos prontos":"{{v0}} destinos listos","{{v0}} dia(s)":"{{v0}} dÃa(s)","{{v0}} e-mail(s) válido(s). Máximo de 30 por envio.":"{{v0}} e-mail(s) válido(s). Máximo de 30 por envÃo.","{{v0}} encontrados":"{{v0}} encontrados","{{v0}} erro(s)":"{{v0}} error(es)","{{v0}} erros":"{{v0}} errores","{{v0}} estáveis":"{{v0}} estables","{{v0}} eventos no perÃodo selecionado":"{{v0}} eventos en el perÃodo seleccionado","{{v0}} falha(s)":"{{v0}} fallo(s)","{{v0}} faz parte dos planos Pro e Enterprise":"{{v0}} forma parte de los planes Pro y Enterprise","{{v0}} fraude":"{{v0}} fraude","{{v0}} gargalos":"{{v0}} cuellos de botella","{{v0}} hits":"{{v0}} hits","{{v0}} importados com sucesso":"{{v0}} importados con éxito","{{v0}} ind.":"{{v0}} ind.","{{v0}} indicador(es) com dados com mais de 2 anos. Considere atualizar.":"{{v0}} indicador(es) con datos de más de 2 años. Considere actualizar.","{{v0}} indicadores":"{{v0}} indicadores","{{v0}} indicadores avaliados ⢠Metodologia Mario Beni":"{{v0}} indicadores evaluados ⢠MetodologÃa Mario Beni","{{v0}} indicadores para este nÃvel":"{{v0}} indicadores para este nivel","{{v0}} indicadores processados neste cálculo":"{{v0}} indicadores procesados en este cálculo","{{v0}} inválidos":"{{v0}} inválidos","{{v0}} man.":"{{v0}} man.","{{v0}} melhoraram":"{{v0}} mejoraron","{{v0}} meses":"{{v0}} meses","{{v0}} min":"{{v0}} min","{{v0}} minutos":"{{v0}} minutos","{{v0}} módulos":"{{v0}} módulos","{{v0}} módulos estruturados para o aprendizado":"{{v0}} módulos estructurados para el aprendizaje","{{v0}} no total":"{{v0}} en total","{{v0}} novas":"{{v0}} nuevas","{{v0}} organização(ões)":"{{v0}} organización(es)","{{v0}} para revisão manual":"{{v0}} para revisión manual","{{v0}} passos detalhados":"{{v0}} pasos detallados","{{v0}} pendente(s)":"{{v0}} pendiente(s)","{{v0}} perguntas Beni/mês":"{{v0}} preguntas Beni/mes","{{v0}} prescrição(ões)":"{{v0}} prescripción(es)","{{v0}} prescrições":"{{v0}} prescripciones","{{v0}} problema(s)":"{{v0}} problema(s)","{{v0}} pts":"{{v0}} pts","{{v0}} questões":"{{v0}} preguntas","{{v0}} regrediram":"{{v0}} retrocedieron","{{v0}} reprovados":"{{v0}} reprobados","{{v0}} reviews":"{{v0}} reseñas","{{v0}} selecionado(s)":"{{v0}} seleccionado(s)","{{v0}} selecionados":"{{v0}} seleccionados","{{v0}} sessões":"{{v0}} sesiones","{{v0}} seções":"{{v0}} secciones","{{v0}} tentativa(s)":"{{v0}} intento(s)","{{v0}} testes":"{{v0}} pruebas","{{v0}} treinamentos":"{{v0}} capacitaciones","{{v0}} treinamentos concluÃdos":"{{v0}} capacitaciones completadas","{{v0}} treinamentos importados aguardando revisão":"{{v0}} capacitaciones importadas esperando revisión","{{v0}} unidades":"{{v0}} unidades","{{v0}} usuário(s)":"{{v0}} usuario(s)","{{v0}} usuário(s) na organização":"{{v0}} usuario(s) en la organización","{{v0}} valor(es) fora do intervalo permitido foram ignorados. Verifique a coluna correspondente no CSV.":"{{v0}} valor(es) fuera del intervalo permitido fueron ignorados. Verifique la columna correspondiente en el CSV.","{{v0}} válidas":"{{v0}} válidas","{{v0}} válidos":"{{v0}} válidos","{{v0}} â histórico de reviews e benchmarking":"{{v0}} â historial de reseñas y benchmarking","{{v0}} â mix de distribuição e sazonalidade real":"{{v0}} â mix de distribución y estacionalidad real","{{v0}} ⢠Código IBGE: {{v1}}":"{{v0}} ⢠Código IBGE: {{v1}}","{{v0}}% concluÃdo":"{{v0}}% completado","{{v0}}% solucionadas":"{{v0}}% solucionadas","{{v0}}/pág":"{{v0}}/pág","{{v0}}/{{v1}} concluÃdos ({{v2}}%)":"{{v0}}/{{v1}} completados ({{v2}}%)","{{v0}}/{{v1}} etapas ⢠{{v2}}%":"{{v0}}/{{v1}} etapas ⢠{{v2}}%","{{v0}}/{{v1}} jogadas":"{{v0}}/{{v1}} jugadas","{{v0}}/{{v1}} passos ({{v2}}%)":"{{v0}}/{{v1}} pasos ({{v2}}%)","{{v0}}d atraso":"{{v0}}d de retraso","{{v0}}h de estudo acumuladas":"{{v0}}h de estudio acumuladas","{{v0}}min":"{{v0}}min","{{xp}} XP para nÃvel {{level}}":"{{xp}} XP para nivel {{level}}","| unknown; export type AutoFillStatus = 'idle' | 'running' | 'success' | 'error' | 'no_data'; /** * Sinaliza que o bloco rodou com sucesso, mas a fonte de dados não retornou * informações suficientes para preencher os indicadores. O orquestrador trata * isso como um estado neutro (não-erro) e exibe a causa para o usuário. * * Componentes de busca podem usar `throw new NoDataError('motivo')` para * sinalizar isso explicitamente. Para evitar editar 18 componentes, o * `runEntry` também detecta mensagens de erro comuns (\"Sem dados retornados\", * \"não encontrado\", \"nenhum resultado\", etc.) e converte para no_data. */ export class NoDataError extends
392Error":`| unknown; export type AutoFillStatus = 'idle' | 'running' | 'success' | 'error' | 'no_data'; /** * Señala que el bloque se ejecutó con éxito, pero la fuente de datos no devolvió * información suficiente para rellenar los indicadores. El orquestador trata * esto como un estado neutro (no-error) y muestra la causa al usuario. * * Los componentes de búsqueda pueden usar \`throw new NoDataError('motivo')\` para * señalar esto explÃcitamente. Para evitar editar 18 componentes, el * \`runEntry\` también detecta mensajes de error comunes ("Sin datos devueltos", * "no encontrado", "ningún resultado", etc.) y los convierte a no_data. */ export class NoDataError extends Error`,"}\n {e.indicator_code &&":`} 393 {e.indicator_code &&`,"}\n {e.target_audience &&":`} 394 {e.target_audience &&`,"}\n onConfirm={confirmDeletePhase}\n isPending={deletePhase.isPending}\n />\n\n {/* Task Dialogs */}\n <TaskFormDialog\n projectId={projectId}\n phases={phases || []}\n task={editingTask}\n defaultPhaseId={defaultTaskPhaseId}
394\n open={taskFormOpen}\n onOpenChange={setTaskFormOpen}\n />\n <DeleteConfirmDialog\n open={deleteTaskOpen}\n onOpenChange={setDeleteTaskOpen}\n title={tx('Excluir Tarefa')}\n description={":`} 395 onConfirm={confirmDeletePhase} 396 isPending={deletePhase.isPending} 397 /> 398 399 {/* Task Dialogs */} 400 <TaskFormDialog 401 projectId={projectId} 402 phases={phases || []} 403 task={editingTask} 404 defaultPhaseId={defaultTaskPhaseId} 405 open={taskFormOpen} 406 onOpenChange={setTaskFormOpen} 407 /> 408 <DeleteConfirmDialog 409 open={deleteTaskOpen} 410 onOpenChange={setDeleteTaskOpen} 411 title={tx('Eliminar Tarea')} 412 description={`,"}\n onConfirm={confirmDeleteTask}\n isPending={deleteTask.isPending}\n />\n\n {/* Milestone Dialogs */}\n <MilestoneFormDialog\n projectId={projectId}\n milestone={editingMilestone}\n open={milestoneFormOpen}\n onOpenChange={setMilestoneFormOpen}\n />\n <DeleteConfirmDialog\n open={deleteMilestoneOpen}\n onOpenChange={setDeleteMilestoneOpen}\n title={tx('Excluir Marco')}\n description={":`} 413 onConfirm={confirmDeleteTask} 414 isPending={deleteTask.isPending} 415 /> 416 417 {/* Milestone Dialogs */} 418 <MilestoneFormDialog 419 projectId={projectId} 420 milestone={editingMilestone} 421 open={milestoneFormOpen} 422 onOpenChange={setMilestoneFormOpen} 423 /> 424 <DeleteConfirmDialog 425 open={deleteMilestoneOpen} 426 onOpenChange={setDeleteMilestoneOpen} 427 title={tx('Eliminar Hito')} 428 description={`,"} onConfirm={confirmDeletePhase} isPending={deletePhase.isPending} /> {/* Task Dialogs */} <TaskFormDialog projectId={projectId} phases={phases || []} task={editingTask} defaultPhaseId={defaultTaskPhaseId} open={taskFormOpen} onOpenChange={setTaskFormOpen} /> <DeleteConfirmDialog open={deleteTaskOpen} onOpenChange={setDeleteTaskOpen} title={tx('Excluir Tarefa')} description={":"} onConfirm={confirmDeletePhase} isPending={deletePhase.isPending} /> {/* Task Dialogs */} <TaskFormDialog projectId={projectId} phases={phases || []} task={editingTask} defaultPhaseId={defaultTaskPhaseId} open={taskFormOpen} onOpenChange={setTaskFormOpen} /> <DeleteConfirmDialog open={deleteTaskOpen} onOpenChange={setDeleteTaskOpen} title={tx('Eliminar Tarea')} description={","} onConfirm={confirmDeleteTask} isPending={deleteTask.isPending} /> {/* Milestone Dialogs */} <MilestoneFormDialog projectId={projectId} milestone={editingMilestone} open={milestoneFormOpen} onOpenChange={setMilestoneFormOpen} /> <DeleteConfirmDialog open={deleteMilestoneOpen} onOpenChange={setDeleteMilestoneOpen} title={tx('Excluir Marco')} description={":"} onConfirm={confirmDeleteTask} isPending={deleteTask.isPending} /> {/* Milestone Dialogs */} <MilestoneFormDialog projectId={projectId} milestone={editingMilestone} open={milestoneFormOpen} onOpenChange={setMilestoneFormOpen} /> <DeleteConfirmDialog open={deleteMilestoneOpen} onOpenChange={setDeleteMilestoneOpen} title={tx('Eliminar Hito')} description={","} {e.indicator_code &&":"} {e.indicator_code &&","} {e.target_audience &&":"} {e.target_audience &&","~2 minutos":"~2 minutos","~20 indicadores essenciais. Ideal para municÃpios menores ou primeira avaliação rápida.":"~20 indicadores esenciales. Ideal para municipios pequeños o una primera evaluación rápida.","~50 indicadores. Análise tática para cidades médias ou acompanhamento contÃnuo.":"~50 indicadores. Análisis táctico para ciudades medianas o seguimiento continuo.","~96 indicadores IGMA + oficiais":"~96 indicadores IGMA + oficiales","© 2026 SISTUR â Instituto Mario Beni. Todos os direitos reservados.":"© 2026 SISTUR â Instituto Mario Beni. Todos los derechos reservados.","© 2026 SISTUR â Todos os direitos reservados.":"© 2026 SISTUR â Todos los derechos reservados.","· diagnóstico territorial de":"· diagnóstico territorial de","Ãgua Limpa":"Agua Limpia","Ãgua de nascente protegida":"Agua de manantial protegida","Ãgua guardada e plantas resistentes!":"¡Agua guardada y plantas resistentes!","Ãgua guardada e árvores atraem chuva! ð§ï¸":"¡Agua guardada y árboles atrae
428n la lluvia! ð§ï¸","Ãgua guardada para a seca!":"¡Agua guardada para la sequÃa!","Ãgua no Sertão":"Agua en el Sertón","Ãgua no curto prazo, mas seca os rios...":"Agua a corto plazo, pero seca los rÃos...","Ãgua é vida no sertão! As cisternas garantem sobrevivência.":"¡El agua es vida en el sertón! Las cisternas garantizan la supervivencia.","Ãgua, esgoto e resÃduos":"Agua, alcantarillado y residuos","Ãguas Protegidas":"Aguas Protegidas","Ãguas Turvas":"Aguas Turbias","Ãguas que Nascem":"Aguas que Nacen",Ãguia:"Ãguila","Ãrea / Densidade":"Ãrea / Densidad","Ãrea Desmatada":"Ãrea Deforestada","Ãrea Protegida":"Ãrea Protegida","Ãrea de transição entre terra e mar, rica em vida":"Ãrea de transición entre tierra y mar, rica en vida","Ãrea ou densidade espacial (km², hab./km²).":"Ãrea o densidad espacial (km², hab./km²).","Ãrea verde para todos":"Ãrea verde para todos","Ãrea verde para todos curtirem!":"¡Ãrea verde para el disfrute de todos!","Ãreas de preservação":"Ãreas de preservación","Ãreas protegidas por lei":"Ãreas protegidas por ley",Ãrvore:"Ãrbol","Ãrvore Nativa":"Ãrbol Nativo","Ãrvore com raÃzes aéreas que filtra sal da água":"Ãrbol con raÃces aéreas que filtra sal del agua","Ãrvore sÃmbolo do Sul, ameaçada de extinção":"Ãrbol sÃmbolo del Sur, amenazado de extinción","Ãrvores absorvem COâ no processo de fotossÃntese!":"¡Los árboles absorben COâ en el proceso de fotosÃntesis!","Ãrvores fortalecem o parque!":"¡Los árboles fortalecen el parque!","Ãrvores nas encostas previnem deslizamentos.":"Los árboles en las laderas previenen deslizamientos.","Ãrvores purificam o ar e protegem o solo.":"Los árboles purifican el aire y protegen el suelo.","à a visualização circular dos 3 conjuntos de Mario Beni (RA / OE / AO) com seus subsistemas explÃcitos (Ecológico, Social, Econômico, Cultural; Superestrutura, Infraestrutura; Mercado, Oferta, Demanda, Distribuição). Quando o diagnóstico tem MST ativo, um anel externo mostra as 4 dimensões adicionais (Tecnologia, Inclusão, TBC, Sensibilização). O Score Final SISTUR aparece no centro da mandala como média dos pilares.":"Es la visualización circular de los 3 conjuntos de Mario Beni (RA / OE / AO) con sus subsistemas explÃcitos (Ecológico, Social, Económico, Cultural; Superestructura, Infraestructura; Mercado, Oferta, Demanda, Distribución). Cuando el diagnóstico tiene MST activo, un anillo externo muestra las 4 dimensiones adicionales (TecnologÃa, Inclusión, TBC, Sensibilización). El Score Final SISTUR aparece en el centro de la mandala como promedio de los pilares.","à expressamente proibido ao Usuário: (a) copiar, reproduzir, modificar, descompilar ou realizar engenharia reversa de qualquer componente da Plataforma; (b) extrair dados em massa para fins de replicação de funcionalidades; (c) utilizar a metodologia SISTUR para desenvolver produtos concorrentes; (d) sublicenciar, alugar ou transferir o acesso à Plataforma a terceiros sem autorização prévia.":"Está expresamente prohibido al Usuario: (a) copiar, reproducir, modificar, descompilar o realizar ingenierÃa inversa de cualquier componente de la Plataforma; (b) extraer datos en masa para fines de replicación de funcionalidades; (c) utilizar la metodologÃa SISTUR para desarrollar productos competidores; (d) sublicenciar, alquilar o transferir el acceso a la Plataforma a terceros sin autorización previa.","à necessário ter pelo menos duas rodadas calculadas deste destino para comparar ciclos.":"Es necesario tener al menos dos rondas calculadas de este destino para comparar ciclos.","à o aumento da temperatura média do planeta causado por gases de efeito estufa.":"Es el aumento de la temperatura media del planeta causado por gases de efecto invernadero.","à proibido gravar, reproduzir, distribuir ou disponibilizar conteúdos educacionais da Plataforma em qualquer meio sem autorização prévia.":"Está prohibido grabar, reproducir, distribuir o disponibilizar contenidos educativos de la Plataforma por cualquier medio sin autorización previa.","à um jogo de cartas estilo TCG â pense antes de jogar!":"¡Es un juego de cartas estilo TCG â piensa antes de jugar!",Ãpico:"Ãpica","Ãxodo dos Moradores":"Ãxodo de Residentes","Ãxodo em Massa":"Ãxodo Masivo",Ãcone:"Ãcono","Ãndice (100 = paridade)":"Ãndice (100 = paridad)","Ãndice / Score":"Ãndice / Puntaje","Ãndice Geral Empresarial":"Ãndice General Empresarial","Ãndice Geral Empresarial (média)":"Ãndice General Empresarial (promedio)","Ãndice Geral SISTUR":"Ãndice General SISTUR","Ãndice Geral SISTUR (média)":"Ãndice General SISTUR (promedio)",'Ãndice composto com quórum mÃnimo: exige pelo menos 2 dos 3 componentes. Com menos que isso, aparece como "Aguardando componentes" e não entra na média do pilar.':'Ãndice compuesto con quórum mÃnimo: exige al menos 2 de los 3 componentes. Con menos que eso, aparece como "Esperando componentes" y no entra en el promedio del pilar.',"Ãndice de Conformidade":"Ãndice de Conformidad","Ãndice de Desenvolvimento Humano":"Ãndice de Desarrollo Humano","Ãndice de Desenvolvimento da Educação Básica":"Ãndice de Desarrollo de la Educación Básica","Ãndice de Impacto Territorial":"Ãndice de Impacto Territorial","Ãndice de Quali
428dade da Ãgua (IQA / ANA) â sem dados disponÃveis":"Ãndice de Calidad del Agua (IQA / ANA) â sin datos disponibles","Ãndice de sazonalidade:":"Ãndice de estacionalidad:","Ãndice {{v0}}":"Ãndice {{v0}}","Ãndices Calculados":"Ãndices Calculados","Ãntegro â {{v0}} arquivos escaneados, {{v1}} imports verificados.":"Ãntegro â {{v0}} archivos escaneados, {{v1}} importaciones verificadas.","Ãleo contamina a costa!":"¡El petróleo contamina la costa!","Ãltima Sincronização":"Ãltima Sincronización","Ãltima atividade":"Ãltima actividad","Ãltima atividade e tempo total de estudo.":"Ãltima actividad y tiempo total de estudio.","Ãltima atualização":"Ãltima actualización","Ãltima entrega":"Ãltima entrega","Ãltima execução":"Ãltima ejecución","Ãltima importação":"Ãltima importación","Ãltima importação:":"Ãltima importación:","Ãltima sincronização:":"Ãltima sincronización:","Ãltimas 50 execuções":"Ãltimas 50 ejecuciones","Ãltimo cálculo":"Ãltimo cálculo","Ãltimo dia do trial!":"¡Ãltimo dÃa de la prueba!","Ãltimo dia do trial! Atualize agora.":"¡Ãltimo dÃa de la prueba! Actualice ahora.","Ãltimo diagnóstico calculado em:":"Ãltimo diagnóstico calculado en:","Ãltimos 50 eventos":"Ãltimos 50 eventos","Ãltimos Acessos":"Ãltimos Accesos","Ãltimos diagnósticos e seus status":"Ãltimos diagnósticos y su estado","Ãnica implementação computacional das 6 regras sistêmicas de Mario Beni":"Ãnica implementación computacional de las 6 reglas sistémicas de Mario Beni","Ãtil para apresentações e treinamentos internos.":"Ãtil para presentaciones y capacitaciones internas.","é ativado no Step 3 da Nova Rodada.":"se activa en el Paso 3 de la Nueva Ronda.","é professor emérito da USP e autor da teoria sistêmica do turismo, base cientÃfica do SISTUR.":"es profesor emérito de la USP y autor de la teorÃa sistémica del turismo, base cientÃfica del SISTUR.",Ãndice:"Ãndice","Ãndice (% do PIB)":"Ãndice (% del PIB)","Ãndice (0â100)":"Ãndice (0â100)","Ãndice (Brasil = 100)":"Ãndice (Brasil = 100)","Ãndice (visitantes por habitante)":"Ãndice (visitantes por habitante)","Ãndice 0-1":"Ãndice 0-1",único:"único","â acionada quando o diagnóstico é de empreendimento (não destino). Substitui os eixos territoriais (RA/OE/AO) por categorias funcionais (governança, ESG, satisfação do hóspede, ocupação) e troca o foco territorial por KPIs de negócio e ROI.":"â activada cuando el diagnóstico es de emprendimiento (no destino). Sustituye los ejes territoriales (RA/OE/AO) por categorÃas funcionales (gobernanza, ESG, satisfacción del huésped, ocupación) y cambia el enfoque territorial por KPIs de negocio y ROI.","â aplicada em tÃtulos, destaques e bordas":"â aplicada en tÃtulos, destacados y bordes","â bloco final com observações ou disclaimers":"â bloque final con observaciones o descargos de responsabilidad","â cada valor citado na narrativa é comparado, indicador a indicador, com a tabela oficial de auditoria do diagnóstico (fontes IBGE, CADASTUR, STN, DATASUS, INEP e derivados).":"â cada valor citado en la narrativa se compara, indicador por indicador, con la tabla oficial de auditorÃa del diagnóstico (fuentes IBGE, CADASTUR, STN, DATASUS, INEP y derivados).","â cruza o texto com a bibliografia canônica (Beni, IGMA, PNT, ODS) e sinaliza afirmações sem respaldo nas fontes anexadas.":"â cruza el texto con la bibliografÃa canónica (Beni, IGMA, PNT, ODS) y señala afirmaciones sin respaldo en las fuentes adjuntas.","â exibido no topo do relatório":"â mostrado en la parte superior del informe","â formato":"â formato","â insere novas chaves e atualiza existentes. Entradas atuais não presentes no arquivo são mantidas.":"â inserta nuevas claves y actualiza las existentes. Las entradas actuales no presentes en el archivo se mantienen.","â insere/atualiza do arquivo e":"â inserta/actualiza desde el archivo y","â pequeno, médio ou grande para adequar à audiência":"â pequeño, mediano o grande para adecuar a la audiencia","â sem flicker. PDF e DOCX só são liberados após a persistência final (não exporta versões inacabadas).":"â sin parpadeo. PDF y DOCX solo se liberan después de la persistencia final (no exporta versiones inacabadas).","â textos customizáveis para identificação institucional":"â textos personalizables para identificación institucional","â verifica contradições internas, status (Adequado/Atenção/CrÃtico) coerentes com os percentuais e citações dentro das faixas permitidas.":"â verifica contradicciones internas, estatus (Adecuado/Atención/CrÃtico) coherentes con los porcentajes y citas dentro de los rangos permitidos.","⢠41 indicadores distribuÃdos entre os 3 pilares":"⢠41 indicadores distribuidos entre los 3 pilares","⢠Calcular scores dos pilares (RA, OE, AO)":"⢠Calcular puntuaciones de los pilares (RA, OE, AO)","⢠Gerar prescrições de capacitação":"⢠Generar prescripciones de capacitación","⢠Identificar gargalos":"⢠Identificar cuellos de botella","⢠MST_5G_WIFI â Conectividade (Anatel)":"⢠MST_5G_WIFI â Conectividad (Anatel)","⢠MST_ACC_NBR9050 â Acessibilidade":"⢠MST_ACC_NBR9050 â Acce
428sibilidad","⢠MST_DIGITAL_PROMO â Promoção digital":"⢠MST_DIGITAL_PROMO â Promoción digital","⢠MST_GREEN_AREA â Ãreas verdes":"⢠MST_GREEN_AREA â Ãreas verdes","⢠MST_HERITAGE â Patrimônio cultural":"⢠MST_HERITAGE â Patrimonio cultural","⢠MST_PNQT_QUAL â Qualificação CADASTUR":"⢠MST_PNQT_QUAL â Calificación CADASTUR","⢠MST_TBC â Turismo de Base Comunitária":"⢠MST_TBC â Turismo de Base Comunitaria","⢠MST_TSE_TURNOUT â Engajamento eleitoral":"⢠MST_TSE_TURNOUT â Compromiso electoral","⢠MST_WATER_QUALITY â Balneabilidade":"⢠MST_WATER_QUALITY â Balneabilidad","⢠Normalizar os indicadores":"⢠Normalizar los indicadores","⢠Um diagnóstico com status CALCULATED":"⢠Un diagnóstico con estado CALCULATED","⢠Um relatório gerado para esse diagnóstico":"⢠Un informe generado para ese diagnóstico","⢠Você ainda pode editar e excluir seus próprios posts":"⢠TodavÃa puedes editar y eliminar tus propias publicaciones","⢠erro detectado":"⢠error detectado","⢠sem novos eventos":"⢠sin nuevos eventos","â Voltar":"â Volver","â Maior é melhor":"â Mayor es mejor","â módulo que o declara.\n * Diretórios (entries terminadas em":`â módulo que lo declara. 429 * Directorios (entradas terminadas en`,"â módulo que o declara. * Diretórios (entries terminadas em":"â módulo que lo declara. * Directorios (entries terminadas en","â Menor é melhor":"â Menor es mejor","â Sem informações disponÃveis â":"â Sin información disponible â","âï¸ Painéis solares":"âï¸ Paneles solares","â»ï¸ Mutirão de limpeza":"â»ï¸ Jornada de limpieza","âï¸ Ameaças â Turno":"âï¸ Amenazas â Turno","âï¸ Guardião do Território":"âï¸ Guardián del Territorio","âï¸ Novo turno â ameaças surgem!":"âï¸ Â¡Nuevo turno â surgen amenazas!","âï¸ EquilÃbrio":"âï¸ Equilibrio","âï¸ EquilÃbrio Frágil":"âï¸ Equilibrio Frágil","âï¸ Maré Indecisa":"âï¸ Marea Indecisa","âï¸ Sertão em Transição":"âï¸ Sertón en Transición","âï¸ Auto (ClaudeâGPT-6 AstraâGemini)":"âï¸ Auto (ClaudeâGPT-6 AstraâGemini)","â 6 manuais":"â 6 manuales","â ï¸ Este destino não possui código IBGE. O pré-preenchimento automático não estará disponÃvel.":"â ï¸ Este destino no tiene código IBGE. El auto-relleno no estará disponible.","â¡ Arriscado":"â¡ Arriesgado","â¡ Essencial":"â¡ Esencial","â¡ Rápida":"â¡ Rápida","â¡ Toque novamente para jogar!":"⡠¡Toca nuevamente para jugar!","â°ï¸ Missão Fracassada":"â°ï¸ Misión Fracasada","â + Projeções":"â + Proyecciones","â 3 automáticos":"â 3 automáticos","â Código IBGE disponÃvel":"â Código IBGE disponible","⨠Carta adicionada ao deck!":"⨠¡Carta añadida al mazo!","⨠Escolha um bioma para explorar:":"⨠Elige un bioma para explorar:","⨠Escolha um bioma para jogar:":"⨠Elige un bioma para jugar:","â¬ ï¸ Voltar":"â¬ ï¸ Volver","ð Sem cartas na mão. Passe o turno para comprar!":"ð No tienes cartas en la mano. ¡Pasa el turno para robar cartas!","ð Sem cartas. Passe o turno para comprar!":"ð No tienes cartas. ¡Pasa el turno para robar cartas!","ð Suas Cartas em Campo":"ð Tus Cartas en el Campo","ð MST":"ð MST","ð Mandala da Sustentabilidade no Turismo (MST)":"ð Mandala de la Sostenibilidad en el Turismo (MST)","ð Missão Fracassada":"ð Misión Fracasada","ð Biomas":"ð Biomas","ð Sustentabilidade":"ð Sostenibilidad","ð Escolha seu Bioma":"ð Elige tu Bioma","ð Sobre o MunicÃpio / Destino":"ð Sobre el Municipio / Destino","ð Jogar":"ð Jugar","ð Nova Batalha":"ð Nueva Batalla","ð± Sustentável â protege o bioma a longo prazo\nâ¡ Arriscado â ganho rápido, mas pode prejudicar\nâï¸ Neutro â caminho seguro, sem extremos":`ð± Sostenible â protege el bioma a largo plazo 430â¡ Arriesgado â ganancia rápida, pero puede perjudicar 431âï¸ Neutro â camino seguro, sin extremos`,"ð± Sustentável â protege o bioma a longo prazo â¡ Arriscado â ganho rápido, mas pode prejudicar âï¸ Neutro â caminho seguro, sem extremos":"ð± Sostenible â protege el bioma a largo plazo â¡ Arriesgado â ganancia rápida, pero puede perjudicar âï¸ Neutro â camino seguro, sin extremos","ð³ Natureza":"
431ð³ Naturaleza","ð³ Plantar árvores ao redor":"ð³ Plantar árboles alrededor","ð³ Pró-Natureza":"ð³ Pro-Naturaleza","ð³ RA (Recursos Ambientais) â natureza e meio ambiente\nðï¸ OE (Oferta & Estrutura) â infraestrutura e conforto\nð¤ AO (Articulação & Organização) â governança e cooperação":`ð³ RA (Recursos Ambientales) â naturaleza y medio ambiente 432ðï¸ OE (Oferta & Estructura) â infraestructura y confort 433ð¤ AO (Articulación & Organización) â gobernanza y cooperación`,"ð³ RA (Recursos Ambientais) â natureza e meio ambiente ðï¸ OE (Oferta & Estrutura) â infraestrutura e conforto ð¤ AO (Articulação & Organização) â governança e cooperação":"ð³ RA (Recursos Ambientales) â naturaleza y medio ambiente ðï¸ OE (Oferta & Estructura) â infraestructura y confort ð¤ AO (Articulación & Organización) â gobernanza y cooperación","ð¿ Começar!":"ð¿ ¡Comenzar!","ð¿ Sustentável":"ð¿ Sostenible","ð® Jogo salvo encontrado":"ð® Partida guardada encontrada","ð¯ Comece por Aqui":"ð¯ Empiece por AquÃ","ð¯ Integral":"ð¯ Integral","ð¯ Objetivo: Cidade do Futuro":"ð¯ Objetivo: Ciudad del Futuro","ð² Tipos de Escolha":"ð² Tipos de Elección","ðï¸ Conforto":"ðï¸ Comodidad","ðï¸ Construir muro para esconder":"ðï¸ Construir muro para esconder","ðï¸ Pró-Infraestrutura":"ðï¸ Pro-Infraestructura","ðï¸ Missão Fracassada":"ðï¸ Misión Fracasada","ð¨ Sobre o Empreendimento":"ð¨ Sobre el Emprendimiento","ð Termoelétrica":"ð Termoeléctrica","ð Clique no mapa para construir!":"ð ¡Haz clic en el mapa para construir!","ð Toque de novo para jogar":"ð Toca de nuevo para jugar","ð Toque no mapa para construir!":"ð ¡Toca el mapa para construir!","ð Cerrado em Agonia":"ð Cerrado en AgonÃa","ð Floresta em Perigo":"ð Bosque en Peligro","ð Litoral em Perigo":"ð Litoral en Peligro","ð¡ Como obter este dado":"ð¡ Cómo obtener este dato","ð¡ Como obter:":"ð¡ Cómo obtener:","ð¡ Inclua os pontos-chave: metas quantitativas, princÃpios, eixos de atuação, tendências e diretrizes que devem contextualizar os relatórios.":"ð¡ Incluya los puntos clave: metas cuantitativas, principios, ejes de actuación, tendencias y directrices que deben contextualizar los informes.","ð¡ O resumo é fundamental: ele será incluÃdo automaticamente no contexto da IA ao gerar relatórios e diagnósticos.":"ð¡ El resumen es fundamental: será incluido automáticamente en el contexto de la IA al generar informes y diagnósticos.","ð¡ Recomendação":"ð¡ Recomendación","ð¨ Moinho de vento":"ð¨ Molino de viento","ð¬ Comentários Representativos":"ð¬ Comentarios Representativos","ð° Investidores":"ð° Inversionistas","ð° Sem moedas":"ð° Sin monedas","ð» Sala de computadores":"ð» Sala de computadoras","ð Cadastro Legal":"ð Registro Legal","ð Página":"ð Página","ð Dimensões da Experiência do Hóspede":"ð Dimensiones de la Experiencia del Huésped","ð Estratégico":"ð Estratégico","ð Executivo":"ð Ejecutivo","ð Relatório Educacional":"ð Informe Educativo","ð Suas Decisões (":"ð Tus Decisiones (","ð Completo":"ð Completo","ð Sessões":"ð Sesiones","ð Executivo (sÃntese para tomada de decisão)":"ð Ejecutivo (sÃntesis para la toma de decisiones)","ð Completo (técnico-acadêmico)":"ð Completo (técnico-académico)","ð Investidores (atratividade econômica)":"ð Inversores (atractivo económico)","ð Diário da Jornada":"ð Diario del Recorrido","ð Histórico":"ð Historial","ð Log de Eventos":"ð Registro de Eventos","ð InÃcio Prova":"ð Inicio Prueba","ðº Lives Recomendadas":"ðº Lives Recomendadas","ð Indicadores Derivados":"ð Indicadores Derivados","ð Neutro":"ð Neutro","ð Nova Batalha":"ð Nueva Batalla","ð Nova BatalhaAO - Ações Operacionais":"ð Nueva BatallaAO - Acciones Operativas","ð Pré-preenchido automaticamente via Atlas Esgotos da ANA. Indica se o municÃpio necessita atenção quanto ao lançamento de fósforo nos corpos hÃdricos (0=Não, 1=Sim).":"ð Pre-rellenado automáticamente vÃa Atlas Esgotos de la ANA. Indica si el municipio necesita atención en cuanto al vertido de fósforo en los cuerpos hÃdricos (0=No, 1=SÃ).","ð Pré-preenchido automaticamente via integração com a ANA (Agência Nacional de Ãguas). Ãndice de Quali
433dade da Ãgua (IQA) médio das estações de monitoramento em raio de 50 km.":"ð Pre-rellenado automáticamente vÃa integración con la ANA (Agencia Nacional de Aguas). Ãndice de Calidad del Agua (ICA) promedio de las estaciones de monitoreo en un radio de 50 km.","ð Pré-preenchido automaticamente via integração com o Mapa do Turismo Brasileiro (MTur). Categorias: A (mais desenvolvido), B, C.":"ð Pre-rellenado automáticamente vÃa integración con el Mapa del Turismo Brasileño (MTur). CategorÃas: A (más desarrollado), B, C.","ð Pré-preenchido via CADASTUR (Meios de Hospedagem) quando disponÃvel. Caso contrário, consulte a Secretaria de Turismo ou associação hoteleira.":"ð Pre-rellenado vÃa CADASTUR (Medios de Alojamiento) cuando esté disponible. De lo contrario, consulte la SecretarÃa de Turismo o la asociación hotelera.","ð Pré-preenchido via Mapa do Turismo (visitantes nacionais + internacionais estimados). Caso necessário, ajuste com dados da Secretaria de Turismo local.":"ð Pre-rellenado vÃa Mapa del Turismo (visitantes nacionales + internacionales estimados). Si es necesario, ajuste con datos de la SecretarÃa de Turismo local.","ð Tentar":"ð Intentar","ð¥ Firecrawl (primário):":"ð¥ Firecrawl (primario):","ð¥ Missão Fracassada":"ð¥ Misión Fracasada","ð´ SaÃda":"ð´ Salida","ðµ Gemini 3.1 Pro":"ðµ Gemini 3.1 Pro","ðºï¸ Biomas":"ðºï¸ Biomas","ðºï¸ Caça ao Tesouro Ecológico":"ðºï¸ Búsqueda del Tesoro Ecológico","ð Começar!":"ð ¡Comenzar!","ð Estradas para carros":"ð Carreteras para coches","ð¶ Calçadas largas":"ð¶ Aceras anchas","ð¤ï¸ Trilha Recomendada":"ð¤ï¸ Ruta Recomendada","ð **ATENÃÃO**":"ð **ATENCIÃN**","ð¢ GPT-6 Astra":"ð¢ GPT-6 Astra","ð£ Claude Sonnet 5.5":"ð£ Claude Sonnet 5.5","ð¤ Conselho Mirim":"ð¤ Consejo Infantil","ð¤ Grêmio estudantil":"ð¤ Gremio estudiantil","ð¤ Organização":"ð¤ Organización","ð¤ Pró-Governança":"ð¤ Pro-Gobernanza","ð¤ Pró-GovernançaVisão geral":"ð¤ Pro-GobernanzaVista general","ð¦ Biodiversidade â saúde dos ecossistemas\nð Poluição â quanto menor, melhor!\nð¥ Comunidade â bem-estar das pessoas\nð Recursos â materiais disponÃveis":`ð¦ Biodiversidad â salud de los ecosistemas 434ð Polución â ¡cuanto menor, mejor! 435ð¥ Comunidad â bienestar de las personas 436ð Recursos â materiales disponibles`,"ð¦ Biodiversidade â saúde dos ecossistemas ð Poluição â quanto menor, melhor! ð¥ Comunidade â bem-estar das pessoas ð Recursos â materiais disponÃveis":"ð¦ Biodiversidad â salud de los ecosistemas ð Contaminación â ¡cuanto menor, mejor! ð¥ Comunidad â bienestar de las personas ð Recursos â materiales disponibles","ð§ Memória Ecológica":"ð§ Memoria Ecológica","ð§ Jogue para descobrir seu perfil!":"ð§ ¡Juega para descubrir tu perfil!","ð§ Seu perfil será definido pelas suas ações!":"ð§ ¡Tu perfil será definido por tus acciones!","ð§ Seu perfil será definido pelas suas ações!1-3 anos de experiência":"ð§ ¡Tu perfil se definirá por tus acciones!1-3 años de experiencia","ð§® Calculado automaticamente":"ð§® Calculado automáticamente","ð§¹ Limpar a praça":"ð§¹ Limpiar la plaza","𪧠Colocar placas de aviso":"𪧠Colocar carteles de aviso","Quer experimentar primeiro?":"¿Quiere probar primero?","Ative a degustação gratuita e conheça o SISTUR por 7 dias, com acesso limitado e sem precisar de cartão.":"Active la prueba gratuita y conozca SISTUR por 7 dÃas, con acceso limitado y sin tarjeta.",Grátis:"Gratis","Curso base do SISTUR EDU":"Curso base de SISTUR EDU","Acesso completo ao curso introdutório da metodologia.":"Acceso completo al curso introductorio de la metodologÃa.","1 diagnóstico de teste":"1 diagnóstico de prueba","Rode uma avaliação e veja os resultados em prévia.":"Ejecute una evaluación y vea los resultados en vista previa.","10 perguntas ao Professor Beni":"10 preguntas al Profesor Beni","Converse com a inteligência do SISTUR e teste as respostas.":"Converse con la inteligencia de SISTUR y pruebe las respuestas.","Exclusivo dos planos pagos":"Exclusivo de los planes pagos","Demais cursos, trilhas e certificados":"Demás cursos, rutas y certificados","Resultados completos dos pilares RA, OE e AO":"Resultados completos de los pilares RA, OE y AO","Relatórios executivos e planos de ação":"Informes ejecutivos y planes de acción","Projetos, Observatório e Consórcios":"Proyectos, Observatorio y Consorcios","Começar avaliação gratuita":"Comenzar prueba gratuita","Ativando...":"Activando...","Ou escolha um dos planos abaixo para liberar tudo desde o primeiro dia.":"O elija uno de los planes a continuación para desbloquear todo desde el primer dÃa.","Avaliação gratuita ativada. Bom uso!":"¡Prueba gratuita activada. Buen uso!","Não foi possÃvel ativar a avaliação gratuita":"No se pudo activar la prueba gratuita","Você já tem um plano ativo na sua conta.":"Ya tiene un plan activo en su cuenta.","Sua avaliação gratuita já foi utilizada. Escolha um plano para continuar.":"Su prueba gratuita ya fue utilizada. Elija un plan para continuar.","Como funciona a degustação gratuita?":"¿Cómo funciona la prueba gratuita?","Você pode ativar a degustação gratuita sem cartão: ela dura 7 dias e libera o curso base do SISTUR EDU, 1 diagnóstico com resultado em prévia e 10 perguntas ao Professor Beni. Cursos completos, resultados detalhados, relatórios e projetos ficam disponÃveis ao escolher um plano.":"Puede activar la prueba gratuita sin tarjeta: dura 7 dÃas y desbloquea el curso base de SISTUR EDU, 1 diagnóstico con resultado en vista previa y 10 preguntas al Profesor Beni. Los cursos completos, resultados detallados, informes y proyectos quedan disponibles al elegir un plan."},Ri=[{code:"pt-BR",label:"Português",short:"PT"},{code:"en",label:"English",short:"EN"},{code:"es",label:"Español",short:"ES"}],Cl="sistur-lang";function cY(){if(typeof window>"u")return"pt-BR";const a=window.localStorage.getItem(Cl);return a&&Ri.some(e=>e.code===a)?a:"pt-BR"}const dY=[[/^(.+) em nÃvel (\S+) \((.+)\) â Interpretação: (.+)$/,"{{0}} em nÃvel {{1}} ({{2}}) â Interpretação: {{3}}"],[/^Esta capacitação foi prescrita porque o indicador (.+) está (\S+) no pilar (.+?)\.(.*)$/,"Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}"],[/^Prescrito porque o indicador (.+) está (\S+) no pilar (.+?)\.(.*)$/,"Prescrito porque o indicador {{0}} está {{1}} no pilar {{2}}.{{3}}"],[/^Esta capacitação foi prescrita porque o indicador (.+) está (\S+) â (.+)$/,"Esta capacitação foi prescrita porque o indicador {{0}} está {{1}} â {{2}}"],[/^Evidência: (.+)$/,"Evidência: {{0}}"]];let Or=!1;function lY(a){if(Or||!ce.language||ce.language==="pt-BR")return a;for(const[e,o]of dY){const i=a.match(e);if(i){Or=!0;try{const t={};
436return i.slice(1).forEach((r,s)=>{const n=r.trim();t[String(s)]=n?r.replace(n,String(ce.t(n))):r}),Or=!1,String(ce.t(o,{...t,interpolation:{escapeValue:!1}}))}finally{Or=!1}}}return a}ce.use(cD).init({resources:{"pt-BR":{translation:{}},en:{translation:iv},es:{translation:tv}},lng:cY(),fallbackLng:"pt-BR",keySeparator:!1,nsSeparator:!1,interpolation:{escapeValue:!1},returnEmptyString:!1,returnNull:!1,saveMissing:!1,parseMissingKeyHandler:a=>lY(a),missingKeyHandler:(a,e,o)=>{}});const rv=a=>{typeof document<"u"&&(document.documentElement.lang=a)};rv(ce.language);ce.on("languageChanged",a=>{rv(a);try{window.localStorage.setItem(Cl,a)}catch{}});const Cse=()=>Ri.some(a=>a.code===ce.language)?ce.language:"pt-BR",k=(a,e)=>{const o=ce.t(a,e),i=typeof o=="string"&&o.trim().length>0?o:a;return e&&i.includes("{{")?i.replace(/\{\{\s*(\w+)\s*\}\}/g,(t,r)=>r in e?String(e[r]??""):t):i},np={plan:null,features:{},org_id:null,source:"none"};function sv(){const{user:a}=ze(),e=Li({queryKey:["entitlements",a==null?void 0:a.id],enabled:!!(a!=null&&a.id),staleTime:6e4,queryFn:async()=>{const{data:i,error:t}=await ie.rpc("get_my_entitlements");if(t)throw t;return i??np}}),o=e.data??np;return{...e,entitlements:o,plan:o.plan,hasEntitlement:i=>{var t;return((t=o.features)==null?void 0:t[i])===!0}}}function Tse(){return Li({queryKey:["plans"],staleTime:5*6e4,queryFn:async()=>{const{data:a,error:e}=await ie.from("plans").select("*").eq("is_active",!0).order("sort_order",{ascending:!0});if(e)throw e;return a??[]}})}function Pse(a){if(a.quote_only||a.price_cents===null)return k("Sob consulta");if(a.price_cents===0)return k("Gratuito");const e=(a.price_cents/100).toLocaleString("pt-BR",{style:"currency",currency:a.currency||"BRL"}),o=a.billing_period==="annual"?k("/ano"):k("/mês");return a.seat_based?`${e} ${k("por usuário")} ${o}`:`${e} ${o}`}const nv=h.createContext(void 0);function uY({children:a}){const{user:e}=ze(),[o,i]=h.useState(null),[t,r]=h.useState([]),[s,n]=h.useState(!0),[c,d]=h.useState(!1),u=h.useRef(null),{entitlements:m,isLoading:g}=sv(),p=h.useCallback(async()=>{if(!e){i(null),r([]),n(!1),d(!0),u.current=null;return}if(u.current===e.id&&c&&o){n(!1);return}try{const[y,E]=await Promise.all([ie.from("profiles").select("user_id, org_id, full_name, avatar_url, system_access, pending_approval, approval_requested_at, viewing_demo_org_id, forum_show_identity, blocked_at, created_at, updated_at").eq("user_id",e.id).single(),ie.from("user_roles").select("role, org_id").eq("user_id",e.id)]);y.error&&y.error.code!=="PGRST116"&&console.error("Error fetching profile:",y.error),y.data&&i({user_id:y.data.user_id,org_id:y.data.org_id,full_name:y.data.full_name,avatar_url:y.data.avatar_url,system_access:y.data.system_access,pending_approval:y.data.pending_approval??!1,approval_requested_at:y.data.approval_requested_at??null,viewing_demo_org_id:y.data.viewing_demo_org_id??null,forum_show_identity:y.data.forum_show_identity??!0,blocked_at:y.data.blocked_at??null,blocked_reason:null,created_at:y.data.created_at,updated_at:y.data.updated_at}),E.error&&console.error("Error fetching roles:",E.error),E.data&&r(E.data.map(C=>({role:C.role,org_id:C.org_id}))),u.current=e.id}catch(y){console.error("Error in ProfileProvider:",y)}finally{n(!1),d(!0)}},[e,c,o]);h.useEffect(()=>{((e==null?void 0:e.id)!==u.current||!c)&&(n(!0),p())},[e==null?void 0:e.id,p,c]);const f=h.useMemo(()=>{const y=_=>t.some(z=>z.role===_),E=y("ADMIN"),C=y("ORG_ADMIN"),P=y("ANALYST")||E,R=y("PROFESSOR"),I=y("ESTUDANTE"),x=m.features||{},w=E||C||x.erp===!0||x.enterprise===!0,L=E||C||R||I||x.edu===!0||w,M=(o==null?void 0:o.pending_approval)===!0&&!(o!=null&&o.approval_requested_at),N=(o==null?void 0:o.pending_approval)===!0&&!!(o!=null&&o.approval_requested_at),T=(o==null?void 0:o.viewing_demo_org_id)!==null,q=!!(o!=null&&o.blocked_at),O=(o==null?void 0:o.viewing_demo_org_id)||(o==null?void 0:o.org_id);return{hasRoleFn:y,isAdmin:E,isOrgAdmin:C,isAnalyst:P,isProfessor:R,isEstudante:I,hasERPAccess:w,hasEDUAccess:L,needsOnboarding:M,awaitingApproval:N,isViewingDemoData:T,isBlocked:q,effectiveOrgId:O}},[t,o,m]),v=async(y,E="VIEWER")=>{if(!e)return{success:!1,error:k("No user")};try{const{error:C}=await ie.rpc("complete_user_onboarding",{_user_id:e.id,_system_access:y,_role:E});if(C)throw C;return e.email&&ie.functions.invoke("notify-access-requested",{body:{userName:(o==null?void 0:o.full_name)||void 0,role:E,systemAccess:y}}).catch(P=>console.error("Failed to send access-requested email:",P)),u.current=null,await p(),{success:!0}}catch(C){return console.error("Error completing onboarding:",C),{success:!1,error:C.message}}},b=async y=>{if(!e)return{success:!1,error:k("No user")};try{const{error:E}=await ie.rpc("toggle_demo_mode",{_enable:y});if(E)throw E;return u.current=null,await p(),{success:!0}}catch(E){return console.error("Error toggling demo mode:",E),{success:!1,error:E.message}}},S=async y=>{if(!e)return{success:!1,error:k("No user")};try{const{error:E}=await ie.from("profiles").update({forum_show_identity:y}).eq("user_id",e.id);if(E)throw E;return u.current=null,await p(),{success:!0}}catch(E){return console.error("Error updating forum privacy:",E),{success:!1,error:E.message}}},A=async()=>{u.current=null,await p()};return l.jsx(nv.Provider,{value:{profile:o,roles:t,loading:s,initialized:c&&(!e||!g),hasRole:f.hasRoleFn,isAdmin:f.isAdmin,isOrgAdmin:f.isOrgAdmin,isAnalyst:f.isAnalyst,isProfessor:f.isProfessor,isEstudante:f.isEstudante,hasERPAccess:f.hasERPAccess,hasEDUAccess:f.hasEDUAccess,needsOnboarding:f.needsOnboarding,awaitingApproval:f.awaitingApproval,isViewingDemoData:f.isViewingDemoData,isBlocked:f.isBlocked,effectiveOrgId:f.effectiveOrgId,completeOnboarding:v,toggleDemoMode:b,updateForumPrivacy:S,refetchProfile:A},children:a})}function la(){const a=h.useContext(nv);if(a===void 0)throw new Error("useProfileContext must be used within a ProfileProvider");return a}const cv=h.createContext(void 0),mY={trial:"Avaliação Gratuita",estudante:"Estudante",professor:"Professor",pro:"Territorial",enterprise:"Empresarial"};function pY({children:a}){const{user:e}=ze(),{isAdmin:o,isOrgAdmin:i}=la(),{entitlements:t}=sv(),[r,s]=h.useState(null),[n,c]=h.useState({isValid:!1,isTrialActive:!1,isTrialExpired:!1,isPaidPlan:!1,serverNow:new Date}
436),[d,u]=h.useState(!0),[m,g]=h.useState(!1),p=h.useRef(null),f=h.useCallback(async()=>{if(!e){s(null),c({isValid:!1,isTrialActive:!1,isTrialExpired:!1,isPaidPlan:!1,serverNow:new Date}),u(!1),g(!0),p.current=null;return}try{const{data:A,error:y}=await ie.rpc("get_license_status");y&&y.code!=="PGRST116"&&console.error("Error fetching license status:",y);const E=Array.isArray(A)?A[0]:A;E?(s({id:E.id,user_id:E.user_id,org_id:E.org_id,plan:E.plan,status:E.status,trial_started_at:E.trial_started_at,trial_ends_at:E.trial_ends_at,activated_at:E.activated_at,expires_at:E.expires_at,max_users:E.max_users??1,features:E.features??{},notes:E.notes,assigned_by:E.assigned_by,created_at:E.created_at,updated_at:E.updated_at}),c({isValid:E.is_valid??!1,isTrialActive:E.is_trial_active??!1,isTrialExpired:E.is_trial_expired??!1,isPaidPlan:E.is_paid_plan??!1,serverNow:E.server_now?new Date(E.server_now):new Date})):(s(null),c({isValid:!1,isTrialActive:!1,isTrialExpired:!1,isPaidPlan:!1,serverNow:new Date})),p.current=e.id}catch(A){console.error("Error in LicenseProvider:",A)}finally{u(!1),g(!0)}},[e]);h.useEffect(()=>{(e==null?void 0:e.id)!==p.current&&(g(!1),u(!0),f())},[e==null?void 0:e.id,f]);const v=h.useMemo(()=>{const A=o||i,{isTrialActive:y,isTrialExpired:E,isPaidPlan:C,isValid:P,serverNow:R}=n,I=A||P,x=(()=>
436{if(!(r!=null&&r.trial_ends_at))return 0;const q=new Date(r.trial_ends_at).getTime()-R.getTime();return Math.max(0,Math.ceil(q/(1e3*60*60*24)))})(),w=7,L=(r==null?void 0:r.plan)==="trial"?Math.min(100,Math.max(0,(w-x)/w*100)):0,M=(r==null?void 0:r.plan)??null,N=M?mY[M]:"Sem Licença";return{isTrialActive:y,isTrialExpired:E,isPaidPlan:C,isLicenseValid:I,trialDaysRemaining:x,trialDaysTotal:w,trialProgress:L,plan:M,planLabel:N}},[r,n,o,i]),b=h.useCallback(A=>{var y;return o||i||((y=t.features)==null?void 0:y[A])===!0?!0:!r||!v.isLicenseValid?!1:r.plan==="enterprise"?!0:r.features[A]===!0},[r,v.isLicenseValid,o,i,t]),S=async()=>{p.current=null,await f()};return l.jsx(cv.Provider,{value:{license:r,loading:d,initialized:m,isTrialActive:v.isTrialActive,isTrialExpired:v.isTrialExpired,isPaidPlan:v.isPaidPlan,isLicenseValid:v.isLicenseValid,trialDaysRemaining:v.trialDaysRemaining,trialDaysTotal:v.trialDaysTotal,trialProgress:v.trialProgress,plan:v.plan,planLabel:v.planLabel,hasFeature:b,refetchLicense:S},children:a})}function So(){const a=h.useContext(cv);if(a===void 0)throw new Error("useLicense must be used within a LicenseProvider");return a}const dv=h.createContext(void 0);function gY({children:a}){const{effectiveOrgId:e,isAdmin:o}=la(),{data:i,isLoading:t}=Li({queryKey:["org-modules-effective",e],enabled:!!e,staleTime:6e4,queryFn:async()=>{const{data:s,error:n}=await ie.from("org_module_overrides").select("module_key, enabled").eq("org_id",e);if(n)throw n;return s||[]}}),r=h.useMemo(()=>{const s={};return(i||[]).forEach(n=>{s[n.module_key]=n.enabled}),{overrides:s,loading:t,isModuleEnabled:n=>o?!0:n in s?s[n]:!0}},[i,t,o]);return l.jsx(dv.Provider,{value:r,children:a})}function Tl(){const a=h.useContext(dv);if(!a)throw new Error("useOrgModulesContext must be used within OrgModulesProvider");return a}const Zn="1.0";function er(){const{user:a}=ze(),e=Gs(),{data:o,isLoading:i}=Li({queryKey:["terms-acceptance",a==null?void 0:a.id],queryFn:async()=>{if(!a)return!1;const{data:r,error:s}=await ie.from("terms_acceptance").select("id").eq("user_id",a.id).eq("terms_version",Zn).maybeSingle();return s?(console.error("Error checking terms acceptance:",s),!1):!!r},enabled:!!a,staleTime:1/0}),t=al({mutationFn:async()=>{if(!a)throw new Error("Not authenticated");const{error:r}=await ie.from("terms_acceptance").upsert({user_id:a.id,terms_version:Zn,user_agent:navigator.userAgent},{onConflict:"user_id,terms_version"});if(r)throw console.error("Terms acceptance error:",r),r},onSuccess:()=>{e.setQueryData(["terms-acceptance",a==null?void 0:a.id],!0)}});return{hasAccepted:o??!1,isLoading:i,acceptTerms:t,currentVersion:Zn}}var ec="focusScope.autoFocusOnMount",ac="focusScope.autoFocusOnUnmount",cp={bubbles:!1,cancelable:!0},hY="FocusScope",nn=h.forwardRef((a,e)=>{const{loop:o=!1,trapped:i=!1,onMountAutoFocus:t,onUnmountAutoFocus:r,...s}=a,[n,c]=h.useState(null),d=Ce(t),u=Ce(r),m=h.useRef(null),g=ne(e,v=>c(v)),p=h.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;h.useEffect(()=>{if(i){let v=function(y){if(p.paused||!n)return;const E=y.target;n.contains(E)?m.current=E:no(m.current,{select:!0})},b=function(y){if(p.paused||!n)return;const E=y.relatedTarget;E!==null&&(n.contains(E)||no(m.current,{select:!0}))},S=function(y){if(document.activeElement===document.body)for(const C of y)C.removedNodes.length>0&&no(n)};document.addEventListener("focusin",v),document.addEventListener("focusout",b);const A=new MutationObserver(S);return n&&A.observe(n,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",v),document.removeEventListener("focusout",b),A.disconnect()}}},[i,n,p.paused]),h.useEffect(()=>{if(n){lp.add(p);const v=document.activeElement;if(!n.contains(v)){const S=new CustomEvent(ec,cp);n.addEventListener(ec,d),n.dispatchEvent(S),S.defaultPrevented||(fY(SY(lv(n)),{select:!0}),document.activeElement===v&&no(n))}return()=>{n.removeEventListener(ec,d),setTimeout(()=>{const S=new CustomEvent(ac,cp);n.addEventListener(ac,u),n.dispatchEvent(S),S.defaultPrevented||no(v??document.body,{select:!0}),n.removeEventListener(ac,u),lp.remove(p)}
vendor: 4,125 bytes, line 436
436,0)}}},[n,d,u,p]);const f=h.useCallback(v=>{if(!o&&!i||p.paused)return;const b=v.key==="Tab"&&!v.altKey&&!v.ctrlKey&&!v.metaKey,S=document.activeElement;if(b&&S){const A=v.currentTarget,[y,E]=vY(A);y&&E?!v.shiftKey&&S===E?(v.preventDefault(),o&&no(y,{select:!0})):v.shiftKey&&S===y&&(v.preventDefault(),o&&no(E,{select:!0})):S===A&&v.preventDefault()}},[o,i,p.paused]);return l.jsx(J.div,{tabIndex:-1,...s,ref:g,onKeyDown:f})});nn.displayName=hY;function fY(a,{select:e=!1}={}){const o=document.activeElement;for(const i of a)if(no(i,{select:e}),document.activeElement!==o)return}function vY(a){const e=lv(a),o=dp(e,a),i=dp(e.reverse(),a);return[o,i]}function lv(a){const e=[],o=document.createTreeWalker(a,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const t=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||t?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;o.nextNode();)e.push(o.currentNode);return e}function dp(a,e){for(const o of a)if(!bY(o,{upTo:e}))return o}function bY(a,{upTo:e}){if(getComputedStyle(a).visibility==="hidden")return!0;for(;a;){if(e!==void 0&&a===e)return!1;if(getComputedStyle(a).display==="none")return!0;a=a.parentElement}return!1}function AY(a){return a instanceof HTMLInputElement&&"select"in a}function no(a,{select:e=!1}={}){if(a&&a.focus){const o=document.activeElement;a.focus({preventScroll:!0}),a!==o&&AY(a)&&e&&a.select()}}var lp=yY();function yY(){let a=[];return{add(e){const o=a[0];e!==o&&(o==null||o.pause()),a=up(a,e),a.unshift(e)},remove(e){var o;a=up(a,e),(o=a[0])==null||o.resume()}}}function up(a,e){const o=[...a],i=o.indexOf(e);return i!==-1&&o.splice(i,1),o}function SY(a){return a.filter(e=>e.tagName!=="A")}var oc=0;function Pl(){h.useEffect(()=>{const a=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",a[0]??mp()),document.body.insertAdjacentElement("beforeend",a[1]??mp()),oc++,()=>{oc===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(e=>e.remove()),oc--}},[])}function mp(){const a=document.createElement("span");return a.setAttribute("data-radix-focus-guard",""),a.tabIndex=0,a.style.outline="none",a.style.opacity="0",a.style.position="fixed",a.style.pointerEvents="none",a}var Jr="right-scroll-bar-position",Xr="width-before-scroll-bar",EY="with-scroll-bars-hidden",CY="--removed-body-scroll-bar-size";function ic(a,e){return typeof a=="function"?a(e):a&&(a.current=e),a}function TY(a,e){var o=h.useState(function(){return{value:a,callback:e,facade:{get current(){return o.value},set current(i){var t=o.value;t!==i&&(o.value=i,o.callback(i,t))}}}})[0];return o.callback=e,o.facade}var PY=typeof window<"u"?h.useLayoutEffect:h.useEffect,pp=new WeakMap;function RY(a,e){var o=TY(null,function(i){return a.forEach(function(t){return ic(t,i)})});return PY(function(){var i=pp.get(o);if(i){var t=new Set(i),r=new Set(a),s=o.current;t.forEach(function(n){r.has(n)||ic(n,null)}),r.forEach(function(n){t.has(n)||ic(n,s)})}pp.set(o,a)},[a]),o}function xY(a){return a}function wY(a,e){e===void 0&&(e=xY);var o=[],i=!1,t={read:function(){if(i)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return o.length?o[o.length-1]:a},useMedium:function(r){var s=e(r,i);return o.push(s),function(){o=o.filter(function(n){return n!==s})}},assignSyncMedium:function(r){for(i=!0;o.length;){var s=o;o=[],s.forEach(r)}o={push:function(n){return r(n)},filter:function(){return o}}},assignMedium:function(r){i=!0;var s=[];if(o.length){var n=o;o=[],n.forEach(r),s=o}var c=function(){var u=s;s=[],u.forEach(r)},d=function(){return Promise.resolve().then(c)};d(),o={push:function(u){s.push(u),d()},filter:function(u){return s=s.filter(u),o}}}};return t}function IY(a){a===void 0&&(a={});var e=wY(null);return e.options=Ma({async:!0,ssr:!1},a),e}var uv=function(a){var e=a.sideCar,o=$i(a,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=e.read();if(!i)throw new Error("Sidecar medium not found");return h.createElement(i,Ma({},o))};
vendor: 4,887 bytes, lines 436-473
436uv.isSideCarExport=!0;function DY(a,e){return a.useMedium(e),uv}var mv=IY(),tc=function(){},cn=h.forwardRef(function(a,e){var o=h.useRef(null),i=h.useState({onScrollCapture:tc,onWheelCapture:tc,onTouchMoveCapture:tc}),t=i[0],r=i[1],s=a.forwardProps,n=a.children,c=a.className,d=a.removeScrollBar,u=a.enabled,m=a.shards,g=a.sideCar,p=a.noRelative,f=a.noIsolation,v=a.inert,b=a.allowPinchZoom,S=a.as,A=S===void 0?"div":S,y=a.gapMode,E=$i(a,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=g,P=RY([o,e]),R=Ma(Ma({},E),t);return h.createElement(h.Fragment,null,u&&h.createElement(C,{sideCar:mv,removeScrollBar:d,shards:m,noRelative:p,noIsolation:f,inert:v,setCallbacks:r,allowPinchZoom:!!b,lockRef:o,gapMode:y}),s?h.cloneElement(h.Children.only(n),Ma(Ma({},R),{ref:P})):h.createElement(A,Ma({},R,{className:c,ref:P}),n))});cn.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};cn.classNames={fullWidth:Xr,zeroRight:Jr};var OY=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function MY(){if(!document)return null;var a=document.createElement("style");a.type="text/css";var e=OY();return e&&a.setAttribute("nonce",e),a}function NY(a,e){a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}function zY(a){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(a)}var jY=function(){var a=0,e=null;return{add:function(o){a==0&&(e=MY())&&(NY(e,o),zY(e)),a++},remove:function(){a--,!a&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},kY=function(){var a=jY();return function(e,o){h.useEffect(function(){return a.add(e),function(){a.remove()}},[e&&o])}},pv=function(){var a=kY(),e=function(o){var i=o.styles,t=o.dynamic;return a(i,t),null};return e},_Y={left:0,top:0,right:0,gap:0},rc=function(a){return parseInt(a||"",10)||0},qY=function(a){var e=window.getComputedStyle(document.body),o=e[a==="padding"?"paddingLeft":"marginLeft"],i=e[a==="padding"?"paddingTop":"marginTop"],t=e[a==="padding"?"paddingRight":"marginRight"];return[rc(o),rc(i),rc(t)]},LY=function(a){if(a===void 0&&(a="margin"),typeof window>"u")return _Y;var e=qY(a),o=document.documentElement.clientWidth,i=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,i-o+e[2]-e[0])}},UY=pv(),xi="data-scroll-locked",BY=function(a,e,o,i){var t=a.left,r=a.top,s=a.right,n=a.gap;return o===void 0&&(o="margin"),` 437 .`.concat(EY,` { 438 overflow: hidden `).concat(i,`; 439 padding-right: `).concat(n,"px ").concat(i,`; 440 } 441 body[`).concat(xi,`] { 442 overflow: hidden `).concat(i,`; 443 overscroll-behavior: contain; 444 `).concat([e&&"position: relative ".concat(i,";"),o==="margin"&&` 445 padding-left: `.concat(t,`px; 446 padding-top: `).concat(r,`px; 447 padding-right: `).concat(s,`px; 448 margin-left:0; 449 margin-top:0; 450 margin-right: `).concat(n,"px ").concat(i,`; 451 `),o==="padding"&&"padding-right: ".concat(n,"px ").concat(i,";")].filter(Boolean).join(""),` 452 } 453 454 .`).concat(Jr,` { 455 right: `).concat(n,"px ").concat(i,`; 456 } 457 458 .`).concat(Xr,` { 459 margin-right: `).concat(n,"px ").concat(i,`; 460 } 461 462 .`).concat(Jr," .").concat(Jr,` { 463 right: 0 `).concat(i,`; 464 } 465 466 .`).concat(Xr," .").concat(Xr,` { 467 margin-right: 0 `).concat(i,`; 468 } 469 470 body[`).concat(xi,`] { 471 `).concat(CY,": ").concat(n,`px; 472 } 473`)},gp=function(){var a=parseInt(document.body.getAttribute(xi)||"0",10);return isFinite(a)?a:0},FY=function(){h.useEffect(function(){return document.body.setAttribute(xi,(gp()+1).toString()),function(){var a=gp()-1;a<=0?document.body.removeAttribute(xi):document.body.setAttribute(xi,a.toString())}},[])},GY=function(a){var e=a.noRelative,o=a.noImportant,i=a.gapMode,t=i===void 0?"margin":i;FY();var r=h.useMemo(function(){return LY(t)},[t]);return h.createElement(UY,{styles:BY(r,!e,t,o?"":"!important")})},nd=!1;if(typeof window<"u")try{var Mr=Object.defineProperty({},"passive",{get:function(){return nd=!0,!0}});window.addEventListener("test",Mr,Mr),window.removeEventListener("test",Mr,Mr)}catch{nd=!1}var ri=nd?{passive:!1}:!1,VY=function(a){return a.tagName==="TEXTAREA"},gv=function(a,e){if(!(a instanceof Element))return!1;var o=window.getComputedStyle(a);return o[e]!=="hidden"&&!(o.overflowY===o.overflowX&&!VY(a)&&o[e]==="visible")},$Y=function(a){return gv(a,"overflowY")},HY=function(a){return gv(a,"overflowX")},hp=function(a,e){var o=e.ownerDocument,i=e;do{typeof ShadowRoot<"u"&&i instanceof ShadowRoot&&(i=i.host);var t=hv(a,i);if(t){var r=fv(a,i),s=r[1],n=r[2];if(s>n)return!0}i=i.parentNode}while(i&&i!==o.body);return!1},WY=function(a){var e=a.scrollTop,o=a.scrollHeight,i=a.clientHeight;return[e,o,i]},QY=function(a){var e=a.scrollLeft,o=a.scrollWidth,i=a.clientWidth;return[e,o,i]},hv=function(a,e){return a==="v"?$Y(e):HY(e)},fv=function(a,e){return a==="v"?WY(e):QY(e)}
vendor: 4,803 bytes, lines 473-476
473,KY=function(a,e){return a==="h"&&e==="rtl"?-1:1},YY=function(a,e,o,i,t){var r=KY(a,window.getComputedStyle(e).direction),s=r*i,n=o.target,c=e.contains(n),d=!1,u=s>0,m=0,g=0;do{if(!n)break;var p=fv(a,n),f=p[0],v=p[1],b=p[2],S=v-b-r*f;(f||S)&&hv(a,n)&&(m+=S,g+=f);var A=n.parentNode;n=A&&A.nodeType===Node.DOCUMENT_FRAGMENT_NODE?A.host:A}while(!c&&n!==document.body||c&&(e.contains(n)||e===n));return(u&&(Math.abs(m)<1||!t)||!u&&(Math.abs(g)<1||!t))&&(d=!0),d},Nr=function(a){return"changedTouches"in a?[a.changedTouches[0].clientX,a.changedTouches[0].clientY]:[0,0]},fp=function(a){return[a.deltaX,a.deltaY]},vp=function(a){return a&&"current"in a?a.current:a},JY=function(a,e){return a[0]===e[0]&&a[1]===e[1]},XY=function(a){return` 474 .block-interactivity-`.concat(a,` {pointer-events: none;} 475 .allow-interactivity-`).concat(a,` {pointer-events: all;} 476`)},ZY=0,si=[];function e8(a){var e=h.useRef([]),o=h.useRef([0,0]),i=h.useRef(),t=h.useState(ZY++)[0],r=h.useState(pv)[0],s=h.useRef(a);h.useEffect(function(){s.current=a},[a]),h.useEffect(function(){if(a.inert){document.body.classList.add("block-interactivity-".concat(t));var v=xx([a.lockRef.current],(a.shards||[]).map(vp),!0).filter(Boolean);return v.forEach(function(b){return b.classList.add("allow-interactivity-".concat(t))}),function(){document.body.classList.remove("block-interactivity-".concat(t)),v.forEach(function(b){return b.classList.remove("allow-interactivity-".concat(t))})}}},[a.inert,a.lockRef.current,a.shards]);var n=h.useCallback(function(v,b){if("touches"in v&&v.touches.length===2||v.type==="wheel"&&v.ctrlKey)return!s.current.allowPinchZoom;var S=Nr(v),A=o.current,y="deltaX"in v?v.deltaX:A[0]-S[0],E="deltaY"in v?v.deltaY:A[1]-S[1],C,P=v.target,R=Math.abs(y)>Math.abs(E)?"h":"v";if("touches"in v&&R==="h"&&P.type==="range")return!1;var I=hp(R,P);if(!I)return!0;if(I?C=R:(C=R==="v"?"h":"v",I=hp(R,P)),!I)return!1;if(!i.current&&"changedTouches"in v&&(y||E)&&(i.current=C),!C)return!0;var x=i.current||C;return YY(x,b,v,x==="h"?y:E,!0)},[]),c=h.useCallback(function(v){var b=v;if(!(!si.length||si[si.length-1]!==r)){var S="deltaY"in b?fp(b):Nr(b),A=e.current.filter(function(C){return C.name===b.type&&(C.target===b.target||b.target===C.shadowParent)&&JY(C.delta,S)})[0];if(A&&A.should){b.cancelable&&b.preventDefault();return}if(!A){var y=(s.current.shards||[]).map(vp).filter(Boolean).filter(function(C){return C.contains(b.target)}),E=y.length>0?n(b,y[0]):!s.current.noIsolation;E&&b.cancelable&&b.preventDefault()}}},[]),d=h.useCallback(function(v,b,S,A){var y={name:v,delta:b,target:S,should:A,shadowParent:a8(S)};e.current.push(y),setTimeout(function(){e.current=e.current.filter(function(E){return E!==y})},1)},[]),u=h.useCallback(function(v){o.current=Nr(v),i.current=void 0},[]),m=h.useCallback(function(v){d(v.type,fp(v),v.target,n(v,a.lockRef.current))},[]),g=h.useCallback(function(v){d(v.type,Nr(v),v.target,n(v,a.lockRef.current))},[]);h.useEffect(function(){return si.push(r),a.setCallbacks({onScrollCapture:m,onWheelCapture:m,onTouchMoveCapture:g}),document.addEventListener("wheel",c,ri),document.addEventListener("touchmove",c,ri),document.addEventListener("touchstart",u,ri),function(){si=si.filter(function(v){return v!==r}),document.removeEventListener("wheel",c,ri),document.removeEventListener("touchmove",c,ri),document.removeEventListener("touchstart",u,ri)}},[]);var p=a.removeScrollBar,f=a.inert;return h.createElement(h.Fragment,null,f?h.createElement(r,{styles:XY(t)}):null,p?h.createElement(GY,{noRelative:a.noRelative,gapMode:a.gapMode}):null)}function a8(a){for(var e=null;a!==null;)a instanceof ShadowRoot&&(e=a.host,a=a.host),a=a.parentNode;return e}const o8=DY(mv,e8);var dn=h.forwardRef(function(a,e){return h.createElement(cn,Ma({},a,{ref:e,sideCar:o8}))});dn.classNames=cn.classNames;var i8=function(a){if(typeof document>"u")return null;var e=Array.isArray(a)?a[0]:a;return e.ownerDocument.body},ni=new WeakMap,zr=new WeakMap,jr={},sc=0,vv=function(a){return a&&(a.host||vv(a.parentNode))},t8=function(a,e){return e.map(function(o){if(a.contains(o))return o;var i=vv(o);return i&&a.contains(i)?i:(console.error("aria-hidden",o,"in not contained inside",a,". Doing nothing"),null)}).filter(function(o){return!!o})},r8=function(a,e,o,i){var t=t8(e,Array.isArray(a)?a:[a]);jr[o]||(jr[o]=new WeakMap);var r=jr[o],s=[],n=new Set,c=new Set(t),d=function(m){!m||n.has(m)||(n.add(m),d(m.parentNode))};t.forEach(d);var u=function(m){!m||c.has(m)||Array.prototype.forEach.call(m.children,function(g){if(n.has(g))u(g);else try{var p=g.getAttribute(i),f=p!==null&&p!=="false",v=(ni.get(g)||0)+1,b=(r.get(g)||0)+1;ni.set(g,v),r.set(g,b),s.push(g),v===1&&f&&zr.set(g,!0),b===1&&g.setAttribute(o,"true"),f||g.setAttribute(i,"true")}catch(S){console.error("aria-hidden: cannot operate on ",g,S)}})};
vendor: 6,468 bytes, lines 476-480
476return u(e),n.clear(),sc++,function(){s.forEach(function(m){var g=ni.get(m)-1,p=r.get(m)-1;ni.set(m,g),r.set(m,p),g||(zr.has(m)||m.removeAttribute(i),zr.delete(m)),p||m.removeAttribute(o)}),sc--,sc||(ni=new WeakMap,ni=new WeakMap,zr=new WeakMap,jr={})}},Rl=function(a,e,o){o===void 0&&(o="data-aria-hidden");var i=Array.from(Array.isArray(a)?a:[a]),t=i8(a);return t?(i.push.apply(i,Array.from(t.querySelectorAll("[aria-live]"))),r8(i,t,o,"aria-hidden")):function(){return null}},ln="Dialog",[bv,Rse]=Ze(ln),[s8,xa]=bv(ln),Av=a=>{const{__scopeDialog:e,children:o,open:i,defaultOpen:t,onOpenChange:r,modal:s=!0}=a,n=h.useRef(null),c=h.useRef(null),[d,u]=Ya({prop:i,defaultProp:t??!1,onChange:r,caller:ln});return l.jsx(s8,{scope:e,triggerRef:n,contentRef:c,contentId:sa(),titleId:sa(),descriptionId:sa(),open:d,onOpenChange:u,onOpenToggle:h.useCallback(()=>u(m=>!m),[u]),modal:s,children:o})};Av.displayName=ln;var yv="DialogTrigger",Sv=h.forwardRef((a,e)=>{const{__scopeDialog:o,...i}=a,t=xa(yv,o),r=ne(e,t.triggerRef);return l.jsx(J.button,{type:"button","aria-haspopup":"dialog","aria-expanded":t.open,"aria-controls":t.contentId,"data-state":Il(t.open),...i,ref:r,onClick:U(a.onClick,t.onOpenToggle)})});Sv.displayName=yv;var xl="DialogPortal",[n8,Ev]=bv(xl,{forceMount:void 0}),Cv=a=>{const{__scopeDialog:e,forceMount:o,children:i,container:t}=a,r=xa(xl,e);return l.jsx(n8,{scope:e,forceMount:o,children:h.Children.map(i,s=>l.jsx($e,{present:o||r.open,children:l.jsx(Qt,{asChild:!0,container:t,children:s})}))})};Cv.displayName=xl;var Es="DialogOverlay",Tv=h.forwardRef((a,e)=>{const o=Ev(Es,a.__scopeDialog),{forceMount:i=o.forceMount,...t}=a,r=xa(Es,a.__scopeDialog);return r.modal?l.jsx($e,{present:i||r.open,children:l.jsx(d8,{...t,ref:e})}):null});Tv.displayName=Es;var c8=Fo("DialogOverlay.RemoveScroll"),d8=h.forwardRef((a,e)=>{const{__scopeDialog:o,...i}=a,t=xa(Es,o);return l.jsx(dn,{as:c8,allowPinchZoom:!0,shards:[t.contentRef],children:l.jsx(J.div,{"data-state":Il(t.open),...i,ref:e,style:{pointerEvents:"auto",...i.style}})})}),$o="DialogContent",Pv=h.forwardRef((a,e)=>{const o=Ev($o,a.__scopeDialog),{forceMount:i=o.forceMount,...t}=a,r=xa($o,a.__scopeDialog);return l.jsx($e,{present:i||r.open,children:r.modal?l.jsx(l8,{...t,ref:e}):l.jsx(u8,{...t,ref:e})})});Pv.displayName=$o;var l8=h.forwardRef((a,e)=>{const o=xa($o,a.__scopeDialog),i=h.useRef(null),t=ne(e,o.contentRef,i);return h.useEffect(()=>{const r=i.current;if(r)return Rl(r)},[]),l.jsx(Rv,{...a,ref:t,trapFocus:o.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:U(a.onCloseAutoFocus,r=>{var s;r.preventDefault(),(s=o.triggerRef.current)==null||s.focus()}),onPointerDownOutside:U(a.onPointerDownOutside,r=>{const s=r.detail.originalEvent,n=s.button===0&&s.ctrlKey===!0;(s.button===2||n)&&r.preventDefault()}),onFocusOutside:U(a.onFocusOutside,r=>r.preventDefault())})}),u8=h.forwardRef((a,e)=>{const o=xa($o,a.__scopeDialog),i=h.useRef(!1),t=h.useRef(!1);return l.jsx(Rv,{...a,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:r=>{var s,n;(s=a.onCloseAutoFocus)==null||s.call(a,r),r.defaultPrevented||(i.current||(n=o.triggerRef.current)==null||n.focus(),r.preventDefault()),i.current=!1,t.current=!1},onInteractOutside:r=>{var c,d;(c=a.onInteractOutside)==null||c.call(a,r),r.defaultPrevented||(i.current=!0,r.detail.originalEvent.type==="pointerdown"&&(t.current=!0));const s=r.target;((d=o.triggerRef.current)==null?void 0:d.contains(s))&&r.preventDefault(),r.detail.originalEvent.type==="focusin"&&t.current&&r.preventDefault()}})}),Rv=h.forwardRef((a,e)=>{const{__scopeDialog:o,trapFocus:i,onOpenAutoFocus:t,onCloseAutoFocus:r,...s}=a,n=xa($o,o),c=h.useRef(null),d=ne(e,c);return Pl(),l.jsxs(l.Fragment,{children:[l.jsx(nn,{asChild:!0,loop:!0,trapped:i,onMountAutoFocus:t,onUnmountAutoFocus:r,children:l.jsx(Ui,{role:"dialog",id:n.contentId,"aria-describedby":n.descriptionId,"aria-labelledby":n.titleId,"data-state":Il(n.open),...s,ref:d,onDismiss:()=>n.onOpenChange(!1)})}),l.jsxs(l.Fragment,{children:[l.jsx(m8,{titleId:n.titleId}),l.jsx(g8,{contentRef:c,descriptionId:n.descriptionId})]})]})}),wl="DialogTitle",xv=h.forwardRef((a,e)=>{const{__scopeDialog:o,...i}=a,t=xa(wl,o);return l.jsx(J.h2,{id:t.titleId,...i,ref:e})});xv.displayName=wl;var wv="DialogDescription",Iv=h.forwardRef((a,e)=>{const{__scopeDialog:o,...i}=a,t=xa(wv,o);return l.jsx(J.p,{id:t.descriptionId,...i,ref:e})});Iv.displayName=wv;var Dv="DialogClose",Ov=h.forwardRef((a,e)=>{const{__scopeDialog:o,...i}=a,t=xa(Dv,o);return l.jsx(J.button,{type:"button",...i,ref:e,onClick:U(a.onClick,()=>t.onOpenChange(!1))})});Ov.displayName=Dv;function Il(a){return a?"open":"closed"}var Mv="DialogTitleWarning",[xse,Nv]=jC(Mv,{contentName:$o,titleName:wl,docsSlug:"dialog"}),m8=({titleId:a})=>{const e=Nv(Mv),o=`\`${e.contentName}\` requires a \`${e.titleName}\` for the component to be accessible for screen reader users. 477 478If you want to hide the \`${e.titleName}\`, you can wrap it with our VisuallyHidden component. 479 480For more information, see https://radix-ui.com/primitives/docs/components/${e.docsSlug}`;return h.useEffect(()=>{a&&(document.getElementById(a)||console.error(o))},[o,a]),null},p8="DialogDescriptionWarning",g8=({contentRef:a,descriptionId:e})=>{const i=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${Nv(p8).contentName}}.`;return h.useEffect(()=>{var r;const t=(r=a.current)==null?void 0:r.getAttribute("aria-describedby");e&&t&&(document.getElementById(e)||console.warn(i))},[i,a,e]),null},zv=Av,jv=Sv,kv=Cv,un=Tv,mn=Pv,pn=xv,gn=Iv,Dl=Ov;const hn=zv,h8=jv,f8=kv,_v=h.forwardRef(({className:a,...e},o)=>l.jsx(un,{ref:o,className:$("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...e}));_v.displayName=un.displayName;const ar=h.forwardRef(({className:a,children:e,...o},i)=>l.jsxs(f8,{children:[l.jsx(_v,{}),l.jsxs(mn,{ref:i,className:$("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rou
480nded-lg",a),...o,children:[e,l.jsxs(Dl,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity data-[state=open]:bg-accent data-[state=open]:text-muted-foreground hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[l.jsx($t,{className:"h-4 w-4"}),l.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));ar.displayName=mn.displayName;const or=({className:a,...e})=>l.jsx("div",{className:$("flex flex-col space-y-1.5 text-center sm:text-left",a),...e});or.displayName="DialogHeader";const Ol=({className:a,...e})=>l.jsx("div",{className:$("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",a),...e});Ol.displayName="DialogFooter";const ir=h.forwardRef(({className:a,...e},o)=>l.jsx(pn,{ref:o,className:$("text-lg font-semibold leading-none tracking-tight",a),...e}));ir.displayName=pn.displayName;const tr=h.forwardRef(({className:a,...e},o)=>l.jsx(gn,{ref:o,className:$("text-sm text-muted-foreground",a),...e}));tr.displayName=gn.displayName;const v8=Yt("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-xl text-sm font-semibold ring-offset-background transition-all duration-200 ease-out focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 active:scale-[0.97]",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-sm hover:bg-primary/90 hover:shadow-md hover:-translate-y-px",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90 hover:shadow-md hover:-translate-y-px",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground hover:shadow-sm",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 hover:shadow-sm",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2 min-h-[44px] sm:min-h-0",sm:"h-9 rounded-md px-3 min-h-[44px] sm:min-h-0",lg:"h-11 rounded-md px-8",icon:"h-10 w-10 min-h-[44px] min-w-[44px] sm:min-h-0 sm:min-w-0"}},defaultVariants:{variant:"default",size:"default"}}),Ae=h.forwardRef(({className:a,variant:e,size:o,asChild:i=!1,...t},r)=>{const s=i?_C:"button";return l.jsx(s,{className:$(v8({variant:e,size:o,className:a})),ref:r,...t})});Ae.displayName="Button";const b8=Yt("inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",outline:"text-foreground",critical:"border-transparent bg-severity-critical/10 text-severity-critical",moderate:"border-transparent bg-severity-moderate/10 text-severity-moderate",good:"border-transparent bg-severity-good/10 text-severity-good",ra:"border-transparent bg-pillar-ra/10 text-pillar-ra",oe:"border-transparent bg-pillar-oe/10 text-pillar-oe",ao:"border-transparent bg-pillar-ao/10 text-pillar-ao",draft:"border-transparent bg-muted text-muted-foreground",ready:"border-transparent bg-severity-moderate/10 text-severity-moderate",calculated:"border-transparent bg-severity-good/10 text-severity-good"}},defaultVariants:{variant:"default"}});function bo({className:a,variant:e,...o}){return l.jsx("div",{className:$(b8({variant:e}),a),...o})}const A8=[{id:"getting-started",title:"Primeiros Passos",description:"Configure sua conta e conheça a plataforma",roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],steps:[{id:"gs-profile",title:"Seu Perfil",description:"Após o cadastro, você passa pelo onboarding onde escolhe seu tipo de acesso (AnalÃtico ou EDU) e seu papel. Seu perfil é aprovado pela equipe administrativa antes de ter acesso completo.",icon:pt,roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],category:"getting-started"},{id:"gs-terms",title:"Termos de Uso",description:"Na primeira vez que acessar, será necessário ace
480itar os Termos e Condições do SISTUR. Isso garante que você está ciente das regras de uso da plataforma.",icon:ss,roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],category:"getting-started"},{id:"gs-trial",title:"PerÃodo de Teste",description:"Novos usuários recebem 7 dias de trial gratuito com acesso a AnalÃtico, EDU e Jogos. O acesso é gerenciado pelo administrador da organização.",icon:Kd,roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],category:"getting-started"},{id:"gs-beni",title:"Professor Beni (IA)",description:"O Professor Beni é seu assistente inteligente. Faça perguntas sobre turismo, metodologia SISTUR, ou peça ajuda para interpretar diagnósticos. AcessÃvel pelo menu lateral.",icon:Ht,route:"/professor-beni",roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],category:"getting-started"}]},{id:"erp-diagnostics",title:"Diagnósticos Territoriais",description:"Avalie destinos turÃsticos usando a metodologia de Mario Beni",roles:["ERP","ADMIN"],steps:[{id:"erp-dashboard",title:"Dashboard Principal",description:"O Dashboard apresenta uma visão geral dos diagnósticos: scores dos 3 pilares (RA, OE, AO), alertas IGMA, tendências e planos de ação. Use o toggle Territorial/Enterprise para alternar entre visões.",icon:qs,route:"/",roles:["ERP","ADMIN"],category:"erp-diagnostics"},{id:"erp-diagnosticos",title:"Criar Diagnósticos",description:"Em Diagnósticos, crie novas rodadas de avaliação para seus destinos. Selecione indicadores, insira valores e o sistema calcula automaticamente scores normalizados, issues e prescrições via motor IGMA.",icon:Ls,route:"/diagnosticos",roles:["ERP","ADMIN"],category:"erp-diagnostics"},{id:"erp-projetos",title:"Gestão de Projetos",description:"Crie projetos vinculados a planos de ação. Organize em fases, milestones e tarefas. Acompanhe o progresso e associe a diagnósticos especÃficos.",icon:Ai,route:"/projetos",roles:["ERP","ADMIN"],category:"erp-diagnostics"},{id:"erp-monitoring",title:"Monitoramento AnalÃtico",description:"O painel de Monitoramento AnalÃtico acompanha evolução dos ciclos, progresso por pilar e projetos atrasados. Ideal para gestores acompanharem KPIs em tempo real.",icon:Yd,route:"/erp",roles:["ERP","ADMIN"],category:"erp-diagnostics"},{id:"erp-reports",title:"Relatórios",description:"Gere relatórios personalizados dos diagnósticos com logo, cabeçalho, rodapé e cores customizáveis. Escolha visibilidade pessoal ou organizacional. Exportação em Word e PDF.",icon:_u,route:"/relatorios",roles:["ERP","ADMIN"],category:"erp-diagnostics"},{id:"erp-kb",title:"Base de Conhecimento",description:"Faça upload de documentos de referência (PDFs, planilhas) por destino. Os arquivos são usados automaticamente para enriquecer diagnósticos e relatórios com IA.",icon:Di,route:"/base-conhecimento",roles:["ERP","ADMIN"],category:"erp-diagnostics"}]},{id:"edu-student",title:"Educação â Estudante",description:"Aprenda sobre turismo sustentável através de trilhas e capacitações",roles:["ESTUDANTE","ADMIN"],steps:[{id:"edu-catalog",title:"Catálogo de Cursos",description:"O SISTUR EDU oferece um catálogo de trilhas e capacitações organizadas por pilar (RA, OE, AO). Explore o conteúdo disponÃvel e matricule-se nas trilhas de seu interesse.",icon:Tt,route:"/edu",roles:["ESTUDANTE","ADMIN"],category:"edu-student"},{id:"edu-profile",title:"Perfil de Estudante",description:"Preencha seu perfil educacional com áreas de interesse, nÃvel de experiência e disponibilidade semanal. Isso permite recomendações personalizadas de conteúdo.",icon:pt,route:"/edu/perfil",roles:["ESTUDANTE","ADMIN"],category:"edu-student"},{id:"edu-referral",title:"Código do Professor",description:"Se você foi convidado por um professor, insira o código de referral durante o cadastro. Isso vincula você ao professor e permite que ele acompanhe seu progresso e atribua conteúdo.",icon:NE,roles:["ESTUDANTE"],category:"edu-student"},{id:"edu-certificates",title:"Certificados",description:"Ao completar trilhas e provas, você recebe certificados digitais verificáveis com QR Code. Acesse-os na página de Certificados.",icon:ss,route:"/certificados",roles:["ESTUDANTE","ADMIN"],category:"edu-student"}
480,{id:"edu-games",title:"Jogos Educacionais",description:"Aprenda jogando! O SISTUR oferece 4 jogos educacionais: TCG (cartas), RPG (narrativa), Memória e Caça ao Tesouro. Todos ensinam conceitos de turismo sustentável de forma divertida.",icon:Jd,route:"/game",roles:["ESTUDANTE","ADMIN"],category:"edu-student"}]},{id:"edu-professor",title:"Painel do Professor",description:"Gerencie alunos, salas e conteúdo educacional",roles:["PROFESSOR","ADMIN"],steps:[{id:"prof-referral",title:"Sistema de Referral",description:"Gere seu código e link de convite únicos. Compartilhe com alunos para que eles se vinculem a você no cadastro. Com 5+ alunos ativos, sua mensalidade é isenta automaticamente!",icon:zE,route:"/professor",roles:["PROFESSOR","ADMIN"],category:"edu-professor"},{id:"prof-classrooms",title:"Gestão de Salas",description:"Crie turmas com nome, disciplina e perÃodo. Matricule seus alunos referenciados nas salas para organizar o conteúdo por grupo.",icon:jE,route:"/professor",roles:["PROFESSOR","ADMIN"],category:"edu-professor"},{id:"prof-assignments",title:"Atribuição de Conteúdo",description:"Atribua trilhas, capacitações, provas ou conteúdo próprio à s salas. Defina datas de disponibilidade e prazos de entrega para cada atividade.",icon:Di,route:"/professor",roles:["PROFESSOR","ADMIN"],category:"edu-professor"},{id:"prof-monitoring",title:"Acompanhamento",description:"Veja o progresso de cada aluno por sala. Acompanhe quem completou atividades, notas em provas e engajamento com as trilhas atribuÃdas.",icon:_u,route:"/professor",roles:["PROFESSOR","ADMIN"],category:"edu-professor"}]},{id:"admin",title:"Administração",description:"Gerencie usuários, organizações, licenças e configurações",roles:["ADMIN"],steps:[{id:"admin-users",title:"Gestão de Usuários",description:"Aprove novos usuários, altere papéis (Admin, Analista, Viewer, Estudante, Professor), gerencie organizações e exporte dados de usuários.",icon:pt,route:"/configuracoes",roles:["ADMIN"],category:"admin"},{id:"admin-licenses",title:"Gestão de Licenças",description:"Visualize todas as licenças ativas, trials, conversões. Cancele ou estenda licenças. Gerencie cotas por organização e monitore métricas de conversão.",icon:Us,route:"/admin/comercial",roles:["ADMIN"],category:"admin"},{id:"admin-edu",title:"Gestão EDU",description:"Administre o catálogo de treinamentos, gerencie questões do banco de provas, configure regras de exames e revise conteúdo importado.",icon:kE,route:"/admin/edu",roles:["ADMIN"],category:"admin"},{id:"admin-settings",title:"Configurações do Sistema",description:"Acesse configurações avançadas: modo demo, privacidade do fórum, aprovações pendentes, feedback dos usuários, referências globais e logs de auditoria.",icon:Bs,route:"/configuracoes",roles:["ADMIN"],category:"admin"}]},{id:"community",title:"Comunidade",description:"Interaja com outros profissionais do turismo",roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],steps:[{id:"comm-forum",title:"Social Turismo",description:"O fórum da comunidade permite trocar experiências, tirar dúvidas e compartilhar boas práticas com outros profissionais do turismo. Publique posts, comente e curta conteúdos.",icon:Fs,route:"/forum",roles:["ERP","ESTUDANTE","PROFESSOR","ADMIN"],category:"community"}]}];function y8(a){return A8.filter(e=>e.roles.includes(a)).map(e=>({...e,steps:e.steps.filter(o=>o.roles.includes(a))})).filter(e=>e.steps.length>0)}function S8(a,e,o,i){return a?"ADMIN":e?"PROFESSOR":o?"ESTUDANTE":"ERP"}function E8({open:a,onClose:e}){const o=qi(),{isAdmin:i,isProfessor:t,isEstudante:r,hasERPAccess:s}=la(),n=S8(i,t,r),c=h.useMemo(()=>y8(n).flatMap(A=>A.steps.map(y=>({...y,categoryTitle:A.title}))),[n]),[d,u]=h.useState(0),m=c[d],g=d===0,p=d===c.length-1,f=()=>{localStorage.setItem("sistur_tutorial_seen","true"),e()},v=()=>{localStorage.setItem("sistur_tutorial_seen","true"),e()},b=()=>{m!=null&&m.route&&(f(),o(m.route))};return m?l.jsx(hn,{open:a,onOpenChange:S=>{S||v()},children:l.jsxs(ar,{className:"w-[calc(100vw-2rem)] max-w-lg rounded-xl max-h-[90vh] overflow-y-auto",children:[l.jsxs(or,{children:[l.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[l.jsx(_E,{className:"h-5 w-5 text-primary"}),l.jsxs(bo,{variant:"outline",className:"text-xs",children:[d+1," / ",c.length]}),l.jsx(bo,{variant:"secondary",className:"text-xs ml-auto mr-6 truncate max-w-[55%]",children:m.categoryTitle})]}),l.jsxs(ir,{className:"flex items-center gap-2",children:[l.jsx("div",{className:"h-8 w-8 rounded-lg bg-primary/10 flex items-center justify-center",children:l.jsx(m.icon,{className:"h-4 w-4 text-primary"})}),k(String(m.title??""))]}),l.jsx(tr,{className:"text-sm leading-relaxed pt-2",children:k(String(m.description??""))})]}),c.length>10?l.jsx("div",{className:"py-2",children:l.jsx("div",{className:"h-1.5 w-full rounded-full bg-muted overflow-hidden",children:l.jsx("div",{className:"h-full bg-primary transition-all",style:{width:`${(d+1)/c.length*100}%`}})})}):l.jsx("div",{className:"flex flex-wrap justify-center gap-1.5 py-2",children:c.map((S,A)=>l.jsx("button",{onClick:()=>u(A),"aria-label":`Ir para o passo ${A+1}`,className:$("h-2 rounded-full transition-all",A===d?"w-6 bg-primary":"w-2 bg-muted-foreground
480/30 hover:bg-muted-foreground/50")},A))}),l.jsxs(Ol,{className:"flex-row justify-between sm:justify-between gap-2",children:[l.jsx("div",{className:"flex gap-2",children:l.jsx(Ae,{variant:"ghost",size:"sm",onClick:v,children:k("Pular tutorial")})}),l.jsxs("div",{className:"flex gap-2",children:[m.route&&l.jsx(Ae,{variant:"outline",size:"sm",onClick:b,children:k("Acessar")}),!g&&l.jsx(Ae,{variant:"outline",size:"sm",onClick:()=>u(S=>S-1),children:l.jsx(Jg,{className:"h-4 w-4"})}),p?l.jsx(Ae,{size:"sm",onClick:f,children:k("Concluir")}):l.jsxs(Ae,{size:"sm",onClick:()=>u(S=>S+1),children:[k("Próximo"),l.jsx(Xd,{className:"h-4 w-4 ml-1"})]})]})]})]})}):null}function We({children:a,redirectStudentsToEdu:e=!0,skipLicenseCheck:o=!1}){const{user:i,loading:t}=ze(),{needsOnboarding:r,awaitingApproval:s,initialized:n,profile:c,isEstudante:d,isProfessor:u,isOrgAdmin:m,hasERPAccess:g,isAdmin:p,isBlocked:f}=la(),{hasAccepted:v,isLoading:b}=er(),{isLicenseValid:S,initialized:A,loading:y}=So(),E=eo(),[C,P]=h.useState(!1);if(h.useEffect(()=>{i&&n&&!r&&!s&&v&&(localStorage.getItem("sistur_tutorial_seen")||P(!0))},[i,n,r,s,v]),t&&i===null||!n&&c===null||!!i&&!n||!!i&&b&&!v||!!i&&!o&&!A)return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:l.jsxs("div",{className:"flex flex-col items-center gap-4",children:[l.jsx("div",{className:"h-12 w-12 rounded-xl gradient-hero flex items-center justify-center animate-pulse",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-xl",children:"S"})}),l.jsx(Qo,{className:"h-6 w-6 animate-spin text-primary"}),l.jsx("p",{className:"text-sm text-muted-foreground",children:k("Carregando...")})]})});if(!i){const L=encodeURIComponent(`${E.pathname}${E.search}`);return l.jsx(te,{to:`/auth?redirect=${L}`,replace:!0})}if(f)return l.jsx(te,{to:"/acesso-bloqueado",replace:!0});if(!v)return l.jsx(te,{to:"/termos",replace:!0});if(r)return l.jsx(te,{to:"/onboarding",replace:!0});if(s)return l.jsx(te,{to:"/pending-approval",replace:!0});if(!o&&!p&&!m&&!S)return l.jsx(te,{to:"/assinatura",replace:!0});if(e&&!p&&!m&&!g){if(u)return l.jsx(te,{to:"/professor",replace:!0});if(d)return l.jsx(te,{to:"/edu",replace:!0})}return l.jsxs(l.Fragment,{children:[a,l.jsx(E8,{open:C,onClose:()=>P(!1)})]})}function wa({children:a,platformOnly:e=!1}){const{user:o,loading:i}=ze(),{isAdmin:t,isOrgAdmin:r,isBlocked:s,loading:n,initialized:c,needsOnboarding:d,awaitingApproval:u,profile:m}=la(),{hasAccepted:g,isLoading:p}=er(),f=eo();if(i&&o===null||!c&&m===null||!!o&&p)return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:l.jsxs("div",{className:"flex flex-col items-center gap-4",children:[l.jsx("div",{className:"h-12 w-12 rounded-xl gradient-hero flex items-center justify-center animate-pulse",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-xl",children:"S"})}),l.jsx(Qo,{className:"h-6 w-6 animate-spin text-primary"}),l.jsx("p",{className:"text-sm text-muted-foreground",children:k("Verificando permissões...")})]})});if(!o){const b=encodeURIComponent(`${f.pathname}${f.search}`);return l.jsx(te,{to:`/auth?redirect=${b}`,replace:!0})}return s?l.jsx(te,{to:"/acesso-bloqueado",replace:!0}):g?d?l.jsx(te,{to:"/onboarding",replace:!0}):u?l.jsx(te,{to:"/pending-approval",replace:!0}):(e?!t:!t&&!r)?l.jsx(te,{to:"/",replace:!0}):l.jsx(l.Fragment,{children:a}):l.jsx(te,{to:"/termos",replace:!0})}function oa({children:a}){const{user:e,loading:o}=ze(),{hasERPAccess:i,isAdmin:t,isBlocked:r,initialized:s,needsOnboarding:n,awaitingApproval:c,profile:d}=la(),{hasAccepted:u,isLoading:m}=er(),{isLicenseValid:g,initialized:p}=So(),f=eo();if(o&&e===null||!s&&d===null||!!e&&m&&!u||!!e&&!p)return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:l.jsxs("div",{className:"flex flex-col items-center gap-4",children:[l.jsx("div",{className:"h-12 w-12 rounded-xl gradient-hero flex items-center justify-center animate-pulse",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-xl",children:"S"})}),l.jsx(Qo,{className:"h-6 w-6 animate-spin text-primary"}),l.jsx("p",{className:"text-sm text-muted-foreground",children:k("Carregando...")})]})});if(!e){const b=encodeURIComponent(`${f.pathname}${f.search}`);return l.jsx(te,{to:`/auth?redirect=${b}`,replace:!0})}return r?l.jsx(te,{to:"/acesso-bloqueado",replace:!0}):u?n?l.jsx(te,{to:"/onboarding",replace:!0}):c?l.jsx(te,{to:"/pending-approval",replace:!0}):t?l.jsx(l.Fragment,{children:a}):g?i?l.jsx(l.Fragment,{children:a}):l.jsx(te,{to:"/edu",replace:!0}):l.jsx(te,{to:"/assinatura",replace:!0}):l.jsx(te,{to:"/termos",replace:!0})}const qv=h.forwardRef(({className:a,...e},o)=>l.jsx("div",{ref:o,className:$("rounded-2xl border bg-card text-card-foreground shadow-sm transition-shadow duration-300 hover:shadow-md",a),...e}));
480qv.displayName="Card";const Lv=h.forwardRef(({className:a,...e},o)=>l.jsx("div",{ref:o,className:$("flex flex-col space-y-1.5 p-6",a),...e}));Lv.displayName="CardHeader";const Uv=h.forwardRef(({className:a,...e},o)=>l.jsx("h3",{ref:o,className:$("text-2xl font-semibold leading-none tracking-tight",a),...e}));Uv.displayName="CardTitle";const Bv=h.forwardRef(({className:a,...e},o)=>l.jsx("p",{ref:o,className:$("text-sm text-muted-foreground",a),...e}));Bv.displayName="CardDescription";const Fv=h.forwardRef(({className:a,...e},o)=>l.jsx("div",{ref:o,className:$("p-6 pt-0",a),...e}));Fv.displayName="CardContent";const C8=h.forwardRef(({className:a,...e},o)=>l.jsx("div",{ref:o,className:$("flex items-center p-6 pt-0",a),...e}));C8.displayName="CardFooter";function Ml(){const{user:a}=ze();return Li({queryKey:["forum-notifications",a==null?void 0:a.id],queryFn:async()=>{if(!a)return{unreadCount:0,notifications:[]};const e=`forum_last_seen_${a.id}`,o=localStorage.getItem(e),i=o?new Date(o):new Date(Date.now()-7*24*60*60*1e3),{data:t,error:r}=await ie.from("forum_posts").select("id, title, created_at").gt("created_at",i.toISOString()).neq("user_id",a.id).order("created_at",{ascending:!1}).limit(20);if(r)return console.error("Error fetching new posts:",r),{unreadCount:0,notifications:[]};const{data:s}=await ie.from("forum_posts").select("id").eq("user_id",a.id),n=(s==null?void 0:s.map(p=>p.id))||[];let c=[];if(n.length>0){const{data:p}=await ie.from("forum_replies").select("id, post_id, content, created_at").in("post_id",n).neq("user_id",a.id).gt("created_at",i.toISOString()).order("created_at",{ascending:!1}).limit(20);c=p||[]}const{data:d}=await ie.from("profiles").select("full_name").eq("user_id",a.id).single();let u=0;if(d!=null&&d.full_name){const p=`@${d.full_name}`,{count:f}=await ie.from("forum_replies").select("id",{count:"exact",head:!0}).ilike("content",`%${p}%`).neq("user_id",a.id).gt("created_at",i.toISOString());u=f||0}const m=[];return t==null||t.forEach(p=>{m.push({id:`post-${p.id}`,type:"new_post",title:p.title,post_id:p.id,created_at:p.created_at})}),c.forEach(p=>{m.push({id:`reply-${p.id}`,type:"reply_to_post",title:"Nova resposta no seu post",post_id:p.post_id,reply_id:p.id,created_at:p.created_at})}),{unreadCount:((t==null?void 0:t.length)||0)+c.length+u,notifications:m.slice(0,20),newPostsCount:(t==null?void 0:t.length)||0,repliesCount:c.length,mentionsCount:u}},enabled:!!a,refetchInterval:6e4,staleTime:3e4})}function Nl(){const{user:a}=ze(),e=Gs();return al({mutationFn:async()=>{if(!a)return;const o=`forum_last_seen_${a.id}`;localStorage.setItem(o,new Date().toISOString())},onSuccess:()=>{e.invalidateQueries({queryKey:["forum-notifications"]})}})}const Uo=h.forwardRef(({className:a,type:e,...o},i)=>l.jsx("input",{type:e,className:$("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-base ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",a),ref:i,...o}));Uo.displayName="Input";const Gv=h.forwardRef(({className:a,...e},o)=>l.jsx("textarea",{className:$("flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm r
480ing-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",a),ref:o,...e}));Gv.displayName="Textarea";var T8="Label",Vv=h.forwardRef((a,e)=>l.jsx(J.label,{...a,ref:e,onMouseDown:o=>{var t;o.target.closest("button, input, select, textarea")||((t=a.onMouseDown)==null||t.call(a,o),!o.defaultPrevented&&o.detail>1&&o.preventDefault())}}));Vv.displayName=T8;var $v=Vv;const P8=Yt("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),Ye=h.forwardRef(({className:a,...e},o)=>l.jsx($v,{ref:o,className:$(P8(),a),...e}));Ye.displayName=$v.displayName;var R8=h.createContext(void 0);function rr(a){const e=h.useContext(R8);return a||e||"ltr"}var nc="rovingFocusGroup.onEntryFocus",x8={bubbles:!1,cancelable:!0},sr="RovingFocusGroup",[cd,Hv,w8]=Hs(sr),[I8,fn]=Ze(sr,[w8]),[D8,O8]=I8(sr),Wv=h.forwardRef((a,e)=>l.jsx(cd.Provider,{scope:a.__scopeRovingFocusGroup,children:l.jsx(cd.Slot,{scope:a.__scopeRovingFocusGroup,children:l.jsx(M8,{...a,ref:e})})}));Wv.displayName=sr;var M8=h.forwardRef((a,e)=>{const{__scopeRovingFocusGroup:o,orientation:i,loop:t=!1,dir:r,currentTabStopId:s,defaultCurrentTabStopId:n,onCurrentTabStopIdChange:c,onEntryFocus:d,preventScrollOnEntryFocus:u=!1,...m}=a,g=h.useRef(null),p=ne(e,g),f=rr(r),[v,b]=Ya({prop:s,defaultProp:n??null,onChange:c,caller:sr}),[S,A]=h.useState(!1),y=Ce(d),E=Hv(o),C=h.useRef(!1),[P,R]=h.useState(0);return h.useEffect(()=>{const I=g.current;if(I)return I.addEventListener(nc,y),()=>I.removeEventListener(nc,y)},[y]),l.jsx(D8,{scope:o,orientation:i,dir:f,loop:t,currentTabStopId:v,onItemFocus:h.useCallback(I=>b(I),[b]),onItemShiftTab:h.useCallback(()=>A(!0),[]),onFocusableItemAdd:h.useCallback(()=>R(I=>I+1),[]),onFocusableItemRemove:h.useCallback(()=>R(I=>I-1),[]),children:l.jsx(J.div,{tabIndex:S||P===0?-1:0,"data-orientation":i,...m,ref:p,style:{outline:"none",...a.style},onMouseDown:U(a.onMouseDown,()=>{C.current=!0}),onFocus:U(a.onFocus,I=>{const x=!C.current;if(I.target===I.currentTarget&&x&&!S){const w=new CustomEvent(nc,x8);if(I.currentTarget.dispatchEvent(w),!w.defaultPrevented){const L=E().filter(O=>O.focusable),M=L.find(O=>O.active),N=L.find(O=>O.id===v),q=[M,N,...L].filter(Boolean).map(O=>O.ref.current);Yv(q,u)}}C.current=!1}),onBlur:U(a.onBlur,()=>A(!1))})})}),Qv="RovingFocusGroupItem",Kv=h.forwardRef((a,e)=>{const{__scopeRovingFocusGroup:o,focusable:i=!0,active:t=!1,tabStopId:r,children:s,...n}=a,c=sa(),d=r||c,u=O8(Qv,o),m=u.currentTabStopId===d,g=Hv(o),{onFocusableItemAdd:p,onFocusableItemRemove:f,currentTabStopId:v}=u;return h.useEffect(()=>{if(i)return p(),()=>f()},[i,p,f]),l.jsx(cd.ItemSlot,{scope:o,id:d,focusable:i,active:t,children:l.jsx(J.span,{tabIndex:m?0:-1,"data-orientation":u.orientation,...n,ref:e,onMouseDown:U(a.onMouseDown,b=>{i?u.onItemFocus(d):b.preventDefault()}),onFocus:U(a.onFocus,()=>u.onItemFocus(d)),onKeyDown:U(a.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){u.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const S=j8(b,u.orientation,u.dir);if(S!==void 0){if(b.metaKey||b.ctrlKey||b.altKey||b.shiftKey)return;b.preventDefault();let y=g().filter(E=>E.focusable).map(E=>E.ref.current);if(S==="last")y.reverse();else if(S==="prev"||S==="next"){S==="prev"&&y.reverse();const E=y.indexOf(b.currentTarget);y=u.loop?k8(y,E+1):y.slice(E+1)}setTimeout(()=>Yv(y))}}),children:typeof s=="function"?s({isCurrentTabStop:m,hasTabStop:v!=null}):s})})});Kv.displayName=Qv;var N8={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function z8(a,e){return e!=="rtl"?a:a==="ArrowLeft"?"ArrowRight":a==="ArrowRight"?"ArrowLeft":a}function j8(a,e,o){const i=z8(a.key,o);if(!(e==="vertical"&&["ArrowLeft","ArrowRight"].includes(i))&&!(e==="horizontal"&&["ArrowUp","ArrowDown"].includes(i)))return N8[i]}function Yv(a,e=!1){const o=document.activeElement;for(const i of a)if(i===o||(i.focus({preventScroll:e}),document.activeElement!==o))return}function k8(a,e){return a.map((o,i)=>a[(e+i)%a.length])}var Jv=Wv,Xv=Kv;function Zv(a){const e=h.useRef({value:a,previous:a});return h.useMemo(()=>(e.current.value!==a&&(e.current.previous=e.current.value,e.current.value=a),e.current.previous),[a])}var zl="Radio",[_8,eb]=Ze(zl),[q8,L8]=_8(zl),ab=h.forwardRef((a,e)=>{const{__scopeRadio:o,name:i,checked:t=!1,required:r,disabled:s,value:n="on",onCheck:c,form:d,...u}=a,[m,g]=h.useState(null),p=ne(e,b=>g(b)),f=h.useRef(!1),v=m?d||!!m.closest("form"):!0;return l.jsxs(q8,{scope:o,checked:t,disabled:s,children:[l.jsx(J.button,{type:"button",role:"radio","aria-checked":t,"data-state":rb(t),"data-disabled":s?"":void 0,disabled:s,value:n,...u,ref:p,onClick:U(a.onClick,b=>{t||c==null||c(),v&&(f.current=b.isPropagationStopped(),f.current||b.stopPropagation())})}),v&&l.jsx(tb,{control:m,bubbles:!f.current,name:i,value:n,checked:t,required:r,disabled:s,form:d,style:{transform:"translateX(-100%)"}})]})});ab.displayName=zl;var ob="RadioIndicator",ib=h.forwardRef((a,e)=>{const{__scopeRadio:o,forceMount:i,...t}=a,r=L8(ob,o);return l.jsx($e,{present:i||r.checked,children:l.jsx(J.span,{"data-state":rb(r.checked),"data-disabled":r.disabled?"":void 0,...t,ref:e})})});ib.displayName=ob;var U8="RadioBubbleInput",tb=h.forwardRef(({__scopeRadio:a,control:e,checked:o,bubbles:i=!0,...t},r)=>{const s=h.useRef(null),n=ne(s,r),c=Zv(o),d=df(e);return h.useEffect(()=>{const u=s.current;if(!u)return;const m=window.HTMLInputElement.prototype,p=Object.getOwnPropertyDescriptor(m,"checked").set;if(c!==o&&p){const f=new Event("click",{bubbles:i});p.call(u,o),u.dispatchEvent(f)}},[c,o,i]),l.jsx(J.input,{type:"radio","aria-hidden":!0,defaultChecked:o,...t,tabIndex:-1,ref:n,style:{...t.style,...d,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});tb.displayName=U8;function rb(a){return a?"checked":"unchecked"}var B8=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],vn="RadioGroup",[F8,wse]=Ze(vn,[fn,eb]),sb=fn(),nb=eb(),[G8,V8]=F8(vn),cb=h.forwardRef((a,e)=>{const{__scopeRadioGroup:o,name:i,defaultValue:t,value:r,required:s=!1,disabled:n=!1,orientation:c,dir:d,loop:u=!0,onValueChange:m,...g}=a,p=sb(o),f=rr(d),[v,b]=Ya({prop:r,defaultProp:t??null,onChange:m,caller:vn});return l.jsx(G8,{scope:o,name:i,required:s,disabled:n,value:v,onValueChange:b,children:l.jsx(Jv,{asChild:!0,...p,orientation:c,dir:f,loop:u,children:l.jsx(J.div,{role:"radiogroup","aria-required":s,"aria-orientation":c,"data-disabled":n?"":void 0,dir:f,...g,ref:e})})})});cb.displayName=vn;var db="RadioGroupItem",lb=h.forwardRef((a,e)=>{const{__scopeRadioGroup:o,disabled:i,...t}=a,r=V8(db,o),s=r.disabled||i,n=sb(o),c=nb(o),d=h.useRef(null),u=ne(e,d),m=r.value===t.value,g=h.useRef(!1);return h.useEffect(()=>{const p=v=>
vendor: 19,435 bytes, line 480
480{B8.includes(v.key)&&(g.current=!0)},f=()=>g.current=!1;return document.addEventListener("keydown",p),document.addEventListener("keyup",f),()=>{document.removeEventListener("keydown",p),document.removeEventListener("keyup",f)}},[]),l.jsx(Xv,{asChild:!0,...n,focusable:!s,active:m,children:l.jsx(ab,{disabled:s,required:r.required,checked:m,...c,...t,name:r.name,ref:u,onCheck:()=>r.onValueChange(t.value),onKeyDown:U(p=>{p.key==="Enter"&&p.preventDefault()}),onFocus:U(t.onFocus,()=>{var p;g.current&&((p=d.current)==null||p.click())})})})});lb.displayName=db;var $8="RadioGroupIndicator",ub=h.forwardRef((a,e)=>{const{__scopeRadioGroup:o,...i}=a,t=nb(o);return l.jsx(ib,{...t,...i,ref:e})});ub.displayName=$8;var mb=cb,pb=lb,H8=ub;const gb=h.forwardRef(({className:a,...e},o)=>l.jsx(mb,{className:$("grid gap-2",a),...e,ref:o}));gb.displayName=mb.displayName;const dd=h.forwardRef(({className:a,...e},o)=>l.jsx(pb,{ref:o,className:$("aspect-square h-4 w-4 rounded-full border border-primary text-primary ring-offset-background focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",a),...e,children:l.jsx(H8,{className:"flex items-center justify-center",children:l.jsx(Xg,{className:"h-2.5 w-2.5 fill-current text-current"})})}));dd.displayName=pb.displayName;function ld(a,[e,o]){return Math.min(o,Math.max(e,a))}var W8=[" ","Enter","ArrowUp","ArrowDown"],Q8=[" ","Enter"],Ho="Select",[bn,An,K8]=Hs(Ho),[Wi,Ise]=Ze(Ho,[K8,Vi]),yn=Vi(),[Y8,Eo]=Wi(Ho),[J8,X8]=Wi(Ho),hb=a=>{const{__scopeSelect:e,children:o,open:i,defaultOpen:t,onOpenChange:r,value:s,defaultValue:n,onValueChange:c,dir:d,name:u,autoComplete:m,disabled:g,required:p,form:f}=a,v=yn(e),[b,S]=h.useState(null),[A,y]=h.useState(null),[E,C]=h.useState(!1),P=rr(d),[R,I]=Ya({prop:i,defaultProp:t??!1,onChange:r,caller:Ho}),[x,w]=Ya({prop:s,defaultProp:n,onChange:c,caller:Ho}),L=h.useRef(null),M=b?f||!!b.closest("form"):!0,[N,T]=h.useState(new Set),q=Array.from(N).map(O=>O.props.value).join(";");return l.jsx(Xs,{...v,children:l.jsxs(Y8,{required:p,scope:e,trigger:b,onTriggerChange:S,valueNode:A,onValueNodeChange:y,valueNodeHasChildren:E,onValueNodeHasChildrenChange:C,contentId:sa(),value:x,onValueChange:w,open:R,onOpenChange:I,dir:P,triggerPointerDownPosRef:L,disabled:g,children:[l.jsx(bn.Provider,{scope:e,children:l.jsx(J8,{scope:a.__scopeSelect,onNativeOptionAdd:h.useCallback(O=>{T(_=>new Set(_).add(O))},[]),onNativeOptionRemove:h.useCallback(O=>{T(_=>{const z=new Set(_);return z.delete(O),z})},[]),children:o})}),M?l.jsxs(Lb,{"aria-hidden":!0,required:p,tabIndex:-1,name:u,autoComplete:m,value:x,onChange:O=>w(O.target.value),disabled:g,form:f,children:[x===void 0?l.jsx("option",{value:""}):null,Array.from(N)]},q):null]})})};hb.displayName=Ho;var fb="SelectTrigger",vb=h.forwardRef((a,e)=>{const{__scopeSelect:o,disabled:i=!1,...t}=a,r=yn(o),s=Eo(fb,o),n=s.disabled||i,c=ne(e,s.onTriggerChange),d=An(o),u=h.useRef("touch"),[m,g,p]=Bb(v=>{const b=d().filter(y=>!y.disabled),S=b.find(y=>y.value===s.value),A=Fb(b,v,S);A!==void 0&&s.onValueChange(A.value)}),f=v=>{n||(s.onOpenChange(!0),p()),v&&(s.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})};return l.jsx(vl,{asChild:!0,...r,children:l.jsx(J.button,{type:"button",role:"combobox","aria-controls":s.contentId,"aria-expanded":s.open,"aria-required":s.required,"aria-autocomplete":"none",dir:s.dir,"data-state":s.open?"open":"closed",disabled:n,"data-disabled":n?"":void 0,"data-placeholder":Ub(s.value)?"":void 0,...t,ref:c,onClick:U(t.onClick,v=>{v.currentTarget.focus(),u.current!=="mouse"&&f(v)}),onPointerDown:U(t.onPointerDown,v=>{u.current=v.pointerType;const b=v.target;b.hasPointerCapture(v.pointerId)&&b.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(f(v),v.preventDefault())}),onKeyDown:U(t.onKeyDown,v=>{const b=m.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&g(v.key),!(b&&v.key===" ")&&W8.includes(v.key)&&(f(),v.preventDefault())})})})});vb.displayName=fb;var bb="SelectValue",Ab=h.forwardRef((a,e)=>{const{__scopeSelect:o,className:i,style:t,children:r,placeholder:s="",...n}=a,c=Eo(bb,o),{onValueNodeHasChildrenChange:d}=c,u=r!==void 0,m=ne(e,c.onValueNodeChange);return we(()=>{d(u)},[d,u]),l.jsx(J.span,{...n,ref:m,style:{pointerEvents:"none"},children:Ub(c.value)?l.jsx(l.Fragment,{children:s}):r})});Ab.displayName=bb;var Z8="SelectIcon",yb=h.forwardRef((a,e)=>{const{__scopeSelect:o,children:i,...t}=a;return l.jsx(J.span,{"aria-hidden":!0,...t,ref:e,children:i||"â¼"})});yb.displayName=Z8;var e9="SelectPortal",Sb=a=>l.jsx(Qt,{asChild:!0,...a});Sb.displayName=e9;var Wo="SelectContent",Eb=h.forwardRef((a,e)=>{const o=Eo(Wo,a.__scopeSelect),[i,t]=h.useState();if(we(()=>{t(new DocumentFragment)},[]),!o.open){const r=i;return r?Vt.createPortal(l.jsx(Cb,{scope:a.__scopeSelect,children:l.jsx(bn.Slot,{scope:a.__scopeSelect,children:l.jsx("div",{children:a.children})})}),r):null}return l.jsx(Tb,{...a,ref:e})});Eb.displayName=Wo;var ya=10,[Cb,Co]=Wi(Wo),a9="SelectContentImpl",o9=Fo("SelectContent.RemoveScroll"),Tb=h.forwardRef((a,e)=>{const{__scopeSelect:o,position:i="item-aligned",onCloseAutoFocus:t,onEscapeKeyDown:r,onPointerDownOutside:s,side:n,sideOffset:c,align:d,alignOffset:u,arrowPadding:m,collisionBoundary:g,collisionPadding:p,sticky:f,hideWhenDetached:v,avoidCollisions:b,...S}=a,A=Eo(Wo,o),[y,E]=h.useState(null),[C,P]=h.useState(null),R=ne(e,G=>E(G)),[I,x]=h.useState(null),[w,L]=h.useState(null),M=An(o),[N,T]=h.useState(!1),q=h.useRef(!1);h.useEffect(()=>{if(y)return Rl(y)},[y]),Pl();const O=h.useCallback(G=>{const[ue,...me]=M().map(pe=>pe.ref.current),[de]=me.slice(-1),le=document.activeElement;for(const pe of G)if(pe===le||(pe==null||pe.scrollIntoView({block:"nearest"}),pe===ue&&C&&(C.scrollTop=0),pe===de&&C&&(C.scrollTop=C.scrollHeight),pe==null||pe.focus(),document.activeElement!==le))return},[M,C]),_=h.useCallback(()=>O([I,y]),[O,I,y]);h.useEffect(()=>{N&&_()},[N,_]);const{onOpenChange:z,triggerPointerDownPosRef:D}=A;h.useEffect(()=>{if(y){let G={x:0,y:0};const ue=de=>{var le,pe;G={x:Math.abs(Math.round(de.pageX)-(((le=D.current)==null?void 0:le.x)??0)),y:Math.abs(Math.round(de.pageY)-(((pe=D.current)==null?void 0:pe.y)??0))}},me=de=>{G.x<=10&&G.y<=10?de.preventDefault():y.contains(de.target)||z(!1),document.removeEventListener("pointermove",ue),D.current=null};return D.current!==null&&(document.addEventListener("pointermove",ue),document.addEventListener("pointerup",me,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",ue),document.removeEventListener("pointerup",me,{capture:!0})}}},[y,z,D]),h.useEffect(()=>{const G=()=>z(!1);return window.addEventListener("blur",G),window.addEventListener("resize",G),()=>{window.removeEventListener("blur",G),window.removeEventListener("resize",G)}},[z]);const[K,X]=Bb(G=>{const ue=M().filter(le=>!le.disabled),me=ue.find(le=>le.ref.current===document.activeElement),de=Fb(ue,G,me);de&&setTimeout(()=>de.ref.current.focus())}),Y=h.useCallback((G,ue,me)=>{const de=!q.current&&!me;(A.value!==void 0&&A.value===ue||de)&&(x(G),de&&(q.current=!0))},[A.value]),ae=h.useCallback(()=>y==null?void 0:y.focus(),[y]),re=h.useCallback((G,ue,me)=>{const de=!q.current&&!me;(A.value!==void 0&&A.value===ue||de)&&L(G)},[A.value]),he=i==="popper"?ud:Pb,Ie=he===ud?{side:n,sideOffset:c,align:d,alignOffset:u,arrowPadding:m,collisionBoundary:g,collisionPadding:p,sticky:f,hideWhenDetached:v,avoidCollisions:b}:{};return l.jsx(Cb,{scope:o,content:y,viewport:C,onViewportChange:P,itemRefCallback:Y,selectedItem:I,onItemLeave:ae,itemTextRefCallback:re,focusSelectedItem:_,selectedItemText:w,position:i,isPositioned:N,searchRef:K,children:l.jsx(dn,{as:o9,allowPinchZoom:!0,children:l.jsx(nn,{asChild:!0,trapped:A.open,onMountAutoFocus:G=>{G.preventDefault()},onUnmountAutoFocus:U(t,G=>{var ue;(ue=A.trigger)==null||ue.focus({preventScroll:!0}),G.preventDefault()}),children:l.jsx(Ui,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:r,onPointerDownOutside:s,onFocusOutside:G=>G.preventDefault(),onDismiss:()=>A.onOpenChange(!1),children:l.jsx(he,{role:"listbox",id:A.contentId,"data-state":A.open?"open":"closed",dir:A.dir,onContextMenu:G=>G.preventDefault(),...S,...Ie,onPlaced:()=>T(!0),ref:R,style:{display:"flex",flexDirection:"column",outline:"none",...S.style},onKeyDown:U(S.onKeyDown,G=>{const ue=G.ctrlKey||G.altKey||G.metaKey;if(G.key==="Tab"&&G.preventDefault(),!ue&&G.key.length===1&&X(G.key),["ArrowUp","ArrowDown","Home","End"].includes(G.key)){let de=M().filter(le=>!le.disabled).map(le=>le.ref.current);if(["ArrowUp","End"].includes(G.key)&&(de=de.slice().reverse()),["ArrowUp","ArrowDown"].includes(G.key)){const le=G.target,pe=de.indexOf(le);de=de.slice(pe+1)}setTimeout(()=>O(de)),G.preventDefault()}})})})})})})});Tb.displayName=a9;var i9="SelectItemAlignedPosition",Pb=h.forwardRef((a,e)=>{const{__scopeSelect:o,onPlaced:i,...t}=a,r=Eo(Wo,o),s=Co(Wo,o),[n,c]=h.useState(null),[d,u]=h.useState(null),m=ne(e,R=>u(R)),g=An(o),p=h.useRef(!1),f=h.useRef(!0),{viewport:v,selectedItem:b,selectedItemText:S,focusSelectedItem:A}=s,y=h.useCallback(()=>{if(r.trigger&&r.valueNode&&n&&d&&v&&b&&S){const R=r.trigger.getBoundingClientRect(),I=d.getBoundingClientRect(),x=r.valueNode.getBoundingClientRect(),w=S.getBoundingClientRect();if(r.dir!=="rtl"){const le=w.left-I.left,pe=x.left-le,_e=R.left-pe,ea=R.width+_e,Ro=Math.max(ea,I.width),ao=window.innerWidth-ya,xo=ld(pe,[ya,Math.max(ya,ao-Ro)]);n.style.minWidth=ea+"px",n.style.left=xo+"px"}else{const le=I.right-w.right,pe=window.innerWidth-x.right-le,_e=window.innerWidth-R.right-pe,ea=R.width+_e,Ro=Math.max(ea,I.width),ao=window.innerWidth-ya,xo=ld(pe,[ya,Math.max(ya,ao-Ro)]);n.style.minWidth=ea+"px",n.style.right=xo+"px"}const L=g(),M=window.innerHeight-ya*2,N=v.scrollHeight,T=window.getComputedStyle(d),q=parseInt(T.borderTopWidth,10),O=parseInt(T.paddingTop,10),_=parseInt(T.borderBottomWidth,10),z=parseInt(T.paddingBottom,10),D=q+O+N+z+_,K=Math.min(b.offsetHeight*5,D),X=window.getComputedStyle(v),Y=parseInt(X.paddingTop,10),ae=parseInt(X.paddingBottom,10),re=R.top+R.height/2-ya,he=M-re,Ie=b.offsetHeight/2,G=b.offsetTop+Ie,ue=q+O+G,me=D-ue;if(ue<=re){const le=L.length>0&&b===L[L.length-1].ref.current;n.style.bottom="0px";const pe=d.clientHeight-v.offsetTop-v.offsetHeight,_e=Math.max(he,Ie+(le?ae:0)+pe+_),ea=ue+_e;n.style.height=ea+"px"}else{const le=L.length>0&&b===L[0].ref.current;n.style.top="0px";const _e=Math.max(re,q+v.offsetTop+(le?Y:0)+Ie)+me;n.style.height=_e+"px",v.scrollTop=ue-re+v.offsetTop}n.style.margin=`${ya}px 0`,n.style.minHeight=K+"px",n.style.maxHeight=M+"px",i==null||i(),requestAnimationFrame(()=>p.current=!0)}},[g,r.trigger,r.valueNode,n,d,v,b,S,r.dir,i]);we(()=>y(),[y]);const[E,C]=h.useState();we(()=>{d&&C(window.getComputedStyle(d).zIndex)},[d]);const P=h.useCallback(R=>{R&&f.current===!0&&(y(),A==null||A(),f.current=!1)},[y,A]);return l.jsx(r9,{scope:o,contentWrapper:n,shouldExpandOnScrollRef:p,onScrollButtonChange:P,children:l.jsx("div",{ref:c,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:E},children:l.jsx(J.div,{...t,ref:m,style:{boxSizing:"border-box",maxHeight:"100%",...t.style}})})})});Pb.displayName=i9;var t9="SelectPopperPosition",ud=h.forwardRef((a,e)=>{const{__scopeSelect:o,align:i="start",collisionPadding:t=ya,...r}=a,s=yn(o);return l.jsx(bl,{...s,...r,ref:e,align:i,collisionPadding:t,style:{boxSizing:"border-box",...r.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});ud.displayName=t9;var[r9,jl]=Wi(Wo,{}),md="SelectViewport",Rb=h.forwardRef((a,e)=>{const{__scopeSelect:o,nonce:i,...t}=a,r=Co(md,o),s=jl(md,o),n=ne(e,r.onViewportChange),c=h.useRef(0);return l.jsxs(l.Fragment,{children:[l.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),l.jsx(bn.Slot,{scope:o,children:l.jsx(J.div,{"data-radix-select-viewport":"",role:"presentation",...t,ref:n,style:{position:"relative",flex:1,overflow:"hidden auto",...t.style},onScroll:U(t.onScroll,d=>{const u=d.currentTarget,{contentWrapper:m,shouldExpandOnScrollRef:g}=s;if(g!=null&&g.current&&m){const p=Math.abs(c.current-u.scrollTop);if(p>0){const f=window.innerHeight-ya*2,v=parseFloat(m.style.minHeight),b=parseFloat(m.style.height),S=Math.max(v,b);if(S<f){const A=S+p,y=Math.min(f,A),E=A-y;m.style.height=y+"px",m.style.bottom==="0px"&&(u.scrollTop=E>0?E:0,m.style.justifyContent="flex-end")}}}c.current=u.scrollTop})})})]})});Rb.displayName=md;var xb="SelectGroup",[s9,n9]=Wi(xb),c9=h.forwardRef((a,e)=>{const{__scopeSelect:o,...i}=a,t=sa();return l.jsx(s9,{scope:o,id:t,children:l.jsx(J.div,{role:"group","aria-labelledby":t,...i,ref:e})})});c9.displayName=xb;var wb="SelectLabel",Ib=h.forwardRef((a,e)=>{const{__scopeSelect:o,...i}=a,t=n9(wb,o);return l.jsx(J.div,{id:t.id,...i,ref:e})});Ib.displayName=wb;var Cs="SelectItem",[d9,Db]=Wi(Cs),Ob=h.forwardRef((a,e)=>{const{__scopeSelect:o,value:i,disabled:t=!1,textValue:r,...s}=a,n=Eo(Cs,o),c=Co(Cs,o),d=n.value===i,[u,m]=h.useState(r??""),[g,p]=h.useState(!1),f=ne(e,A=>{var y;return(y=c.itemRefCallback)==null?void 0:y.call(c,A,i,t)}),v=sa(),b=h.useRef("touch"),S=()=>{t||(n.onValueChange(i),n.onOpenChange(!1))};if(i==="")throw new Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");return l.jsx(d9,{scope:o,value:i,disabled:t,textId:v,isSelected:d,onItemTextChange:h.useCallback(A=>{m(y=>y||((A==null?void 0:A.textContent)??"").trim())},[]),children:l.jsx(bn.ItemSlot,{scope:o,value:i,disabled:t,textValue:u,children:l.jsx(J.div,{role:"option","aria-labelledby":v,"data-highlighted":g?"":void 0,"aria-selected":d&&g,"data-state":d?"checked":"unchecked","aria-disabled":t||void 0,"data-disabled":t?"":void 0,tabIndex:t?void 0:-1,...s,ref:f,onFocus:U(s.onFocus,()=>p(!0)),onBlur:U(s.onBlur,()=>p(!1)),onClick:U(s.onClick,()=>{b.current!=="mouse"&&S()}),onPointerUp:U(s.onPointerUp,()=>{b.current==="mouse"&&S()}),onPointerDown:U(s.onPointerDown,A=>{b.current=A.pointerType}),onPointerMove:U(s.onPointerMove,A=>{var y;b.current=A.pointerType,t?(y=c.onItemLeave)==null||y.call(c):b.current==="mouse"&&A.currentTarget.focus({preventScroll:!0})}),onPointerLeave:U(s.onPointerLeave,A=>{var y;A.currentTarget===document.activeElement&&((y=c.onItemLeave)==null||y.call(c))}),onKeyDown:U(s.onKeyDown,A=>{var E;((E=c.searchRef)==null?void 0:E.current)!==""&&A.key===" "||(Q8.includes(A.key)&&S(),A.key===" "&&A.preventDefault())})})})})});Ob.displayName=Cs;var lt="SelectItemText",Mb=h.forwardRef((a,e)=>{const{__scopeSelect:o,className:i,style:t,...r}=a,s=Eo(lt,o),n=Co(lt,o),c=Db(lt,o),d=X8(lt,o),[u,m]=h.useState(null),g=ne(e,S=>m(S),c.onItemTextChange,S=>{var A;return(A=n.itemTextRefCallback)==null?void 0:A.call(n,S,c.value,c.disabled)}),p=u==null?void 0:u.textContent,f=h.useMemo(()=>l.jsx("option",{value:c.value,disabled:c.disabled,children:p},c.value),[c.disabled,c.value,p]),{onNativeOptionAdd:v,onNativeOptionRemove:b}=d;return we(()=>(v(f),()=>b(f)),[v,b,f]),l.jsxs(l.Fragment,{children:[l.jsx(J.span,{id:c.textId,...r,ref:g}),c.isSelected&&s.valueNode&&!s.valueNodeHasChildren?Vt.createPortal(r.children,s.valueNode):null]})});Mb.displayName=lt;var Nb="SelectItemIndicator",zb=h.forwardRef((a,e)=>{const{__scopeSelect:o,...i}=a;return Db(Nb,o).isSelected?l.jsx(J.span,{"aria-hidden":!0,...i,ref:e}):null});zb.displayName=Nb;var pd="SelectScrollUpButton",jb=h.forwardRef((a,e)=>{const o=Co(pd,a.__scopeSelect),i=jl(pd,a.__scopeSelect),[t,r]=h.useState(!1),s=ne(e,i.onScrollButtonChange);return we(()=>{if(o.viewport&&o.isPositioned){let n=function(){const d=c.scrollTop>0;r(d)};const c=o.viewport;return n(),c.addEventListener("scroll",n),()=>c.removeEventListener("scroll",n)}},[o.viewport,o.isPositioned]),t?l.jsx(_b,{...a,ref:s,onAutoScroll:()=>{const{viewport:n,selectedItem:c}=o;n&&c&&(n.scrollTop=n.scrollTop-c.offsetHeight)}}):null});jb.displayName=pd;var gd="SelectScrollDownButton",kb=h.forwardRef((a,e)=>{const o=Co(gd,a.__scopeSelect),i=jl(gd,a.__scopeSelect),[t,r]=h.useState(!1),s=ne(e,i.onScrollButtonChange);return we(()=>{if(o.viewport&&o.isPositioned){let n=function(){const d=c.scrollHeight-c.clientHeight,u=Math.ceil(c.scrollTop)<d;r(u)};const c=o.viewport;return n(),c.addEventListener("scroll",n),()=>c.removeEventListener("scroll",n)}},[o.viewport,o.isPositioned]),t?l.jsx(_b,{...a,ref:s,onAutoScroll:()=>{const{viewport:n,selectedItem:c}=o;n&&c&&(n.scrollTop=n.scrollTop+c.offsetHeight)}}):null});kb.displayName=gd;var _b=h.forwardRef((a,e)=>{const{__scopeSelect:o,onAutoScroll:i,...t}=a,r=Co("SelectScrollButton",o),s=h.useRef(null),n=An(o),c=h.useCallback(()=>{s.current!==null&&(window.clearInterval(s.current),s.current=null)},[]);return h.useEffect(()=>()=>c(),[c]),we(()=>{var u;const d=n().find(m=>m.ref.current===document.activeElement);(u=d==null?void 0:d.ref.current)==null||u.scrollIntoView({block:"nearest"})},[n]),l.jsx(J.div,{"aria-hidden":!0,...t,ref:e,style:{flexShrink:0,...t.style},onPointerDown:U(t.onPointerDown,()=>{s.current===null&&(s.current=window.setInterval(i,50))}),onPointerMove:U(t.onPointerMove,()=>{var d;(d=r.onItemLeave)==null||d.call(r),s.current===null&&(s.current=window.setInterval(i,50))}),onPointerLeave:U(t.onPointerLeave,()=>{c()})})}),l9="SelectSeparator",qb=h.forwardRef((a,e)=>{const{__scopeSelect:o,...i}=a;return l.jsx(J.div,{"aria-hidden":!0,...i,ref:e})});qb.displayName=l9;var hd="SelectArrow",u9=h.forwardRef((a,e)=>{const{__scopeSelect:o,...i}=a,t=yn(o),r=Eo(hd,o),s=Co(hd,o);return r.open&&s.position==="popper"?l.jsx(Al,{...t,...i,ref:e}):null});u9.displayName=hd;var m9="SelectBubbleInput",Lb=h.forwardRef(({__scopeSelect:a,value:e,...o},i)=>{const t=h.useRef(null),r=ne(i,t),s=Zv(e);return h.useEffect(()=>{const n=t.current;if(!n)return;const c=window.HTMLSelectElement.prototype,u=Object.getOwnPropertyDescriptor(c,"value").set;if(s!==e&&u){const m=new Event("change",{bubbles:!0});u.call(n,e),n.dispatchEvent(m)}},[s,e]),l.jsx(J.select,{...o,style:{...bh,...o.style},ref:r,defaultValue:e})});Lb.displayName=m9;function Ub(a){return a===""||a===void 0}function Bb(a){const e=Ce(a),o=h.useRef(""),i=h.useRef(0),t=h.useCallback(s=>{const n=o.current+s;e(n),function c(d){o.current=d,window.clearTimeout(i.current),d!==""&&(i.current=window.setTimeout(()=>c(""),1e3))}(n)},[e]),r=h.useCallback(()=>{o.current="",window.clearTimeout(i.current)},[]);return h.useEffect(()=>()=>window.clearTimeout(i.current),[]),[o,t,r]}function Fb(a,e,o){const t=e.length>1&&Array.from(e).every(d=>d===e[0])?e[0]:e,r=o?a.indexOf(o):-1;let s=p9(a,Math.max(r,0));t.length===1&&(s=s.filter(d=>d!==o));const c=s.find(d=>d.textValue.toLowerCase().startsWith(t.toLowerCase()));return c!==o?c:void 0}function p9(a,e){return a.map((o,i)=>a[(e+i)%a.length])}var g9=hb,Gb=vb,h9=Ab,f9=yb,v9=Sb,Vb=Eb,b9=Rb,$b=Ib,Hb=Ob,A9=Mb,y9=zb,Wb=jb,Qb=kb,Kb=qb;
480const S9=g9,E9=h9,Yb=h.forwardRef(({className:a,children:e,...o},i)=>l.jsxs(Gb,{ref:i,className:$("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",a),...o,children:[e,l.jsx(f9,{asChild:!0,children:l.jsx(Zd,{className:"h-4 w-4 opacity-50"})})]}));Yb.displayName=Gb.displayName;const Jb=h.forwardRef(({className:a,...e},o)=>l.jsx(Wb,{ref:o,className:$("flex cursor-default items-center justify-center py-1",a),...e,children:l.jsx(qE,{className:"h-4 w-4"})}));Jb.displayName=Wb.displayName;const Xb=h.forwardRef(({className:a,...e},o)=>l.jsx(Qb,{ref:o,className:$("flex cursor-default items-center justify-center py-1",a),...e,children:l.jsx(Zd,{className:"h-4 w-4"})}));Xb.displayName=Qb.displayName;const Zb=h.forwardRef(({className:a,children:e,position:o="popper",...i},t)=>l.jsx(v9,{children:l.jsxs(Vb,{ref:t,className:$("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",o==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:o,...i,children:[l.jsx(Jb,{}),l.jsx(b9,{className:$("p-1",o==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:e}),l.jsx(Xb,{})]})}));Zb.displayName=Vb.displayName;const C9=h.forwardRef(({className:a,...e},o)=>l.jsx($b,{ref:o,className:$("py-1.5 pl-8 pr-2 text-sm font-semibold",a),...e}));C9.displayName=$b.displayName;const eA=h.forwardRef(({className:a,children:e,...o},i)=>l.jsxs(Hb,{ref:i,className:$("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 focus:bg-accent focus:text-accent-foreground",a),...o,children:[l.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsx(y9,{children:l.jsx(el,{className:"h-4 w-4"})})}),l.jsx(A9,{children:e})]}));eA.displayName=Hb.displayName;const T9=h.forwardRef(({className:a,...e},o)=>l.jsx(Kb,{ref:o,className:$("-mx-1 my-1 h-px bg-muted",a),...e}));T9.displayName=Kb.displayName;function P9(){const{user:a}=ze(),[e,o]=h.useState([]),[i,t]=h.useState(!1),r=h.useCallback(async()=>{if(a)try{t(!0);const{data:u,error:m}=await ie.from("user_feedback").select("*").order("created_at",{ascending:!1});if(m)throw m;o(u||[])}catch(u){console.error("Error fetching feedbacks:",u)}finally{t(!1)}},[a]);return h.useEffect(()=>{r()},[r]),{feedbacks:e,loading:i,submitFeedback:async(u,m,g,p)=>{if(!a)return Ee.error("Você precisa estar logado para enviar feedback"),!1;try{const{error:f}=await ie.from("user_feedback").insert({user_id:a.id,feedback_type:u,category:p,title:m,description:g,page_url:window.location.pathname,user_agent:navigator.userAgent});if(f)throw f;return Ee.success(u==="feature"?"Sugestão enviada com sucesso!":"Bug reportado com sucesso!"),r(),!0}catch(f){return console.error("Error submitting feedback:",f),Ee.error("Erro ao enviar feedback"),!1}},updateFeedbackStatus:async(u,m,g)=>
480{try{const p={status:m};g!==void 0&&(p.admin_notes=g);const{error:f}=await ie.from("user_feedback").update(p).eq("id",u);if(f)throw f;return Ee.success("Status atualizado"),r(),!0}catch(p){return console.error("Error updating feedback:",p),Ee.error("Erro ao atualizar feedback"),!1}},updateFeedbackPriority:async(u,m)=>{try{const{error:g}=await ie.from("user_feedback").update({priority:m}).eq("id",u);if(g)throw g;return Ee.success("Prioridade atualizada"),r(),!0}catch(g){return console.error("Error updating priority:",g),Ee.error("Erro ao atualizar prioridade"),!1}},deleteFeedback:async u=>{try{const{error:m}=await ie.from("user_feedback").delete().eq("id",u);if(m)throw m;return Ee.success("Feedback removido"),r(),!0}catch(m){return console.error("Error deleting feedback:",m),Ee.error("Erro ao remover feedback"),!1}},refetch:r}}const R9=[{value:"nova_funcionalidade",label:k("Nova funcionalidade")},{value:"melhoria_ux",label:k("Melhoria de usabilidade (UX)")},{value:"integracao",label:k("Integração com outros sistemas")},{value:"relatorios",label:k("Novos relatórios/dashboards")},{value:"performance",label:k("Melhorias de performance")},{value:"documentacao",label:k("Documentação/Tutoriais")},{value:"mobile",label:k("Versão mobile/responsividade")},{value:"outro_sugestao",label:k("Outro")}],x9=[{value:"erro_visual",label:k("Erro visual/layout quebrado")},{value:"erro_dados",label:k("Dados incorretos/não aparecem")},{value:"erro_login",label:k("Problema de login/autenticação")},{value:"erro_carregamento",label:k("Página não carrega/lenta")},{value:"erro_funcionalidade",label:k("Funcionalidade não funciona")},{value:"erro_calculo",label:k("Erro de cálculo/processamento")},{value:"erro_exportacao",label:k("Erro ao exportar/gerar relatório")},{value:"outro_bug",label:k("Outro")}];function fd({trigger:a}){const[e,o]=h.useState(!1),[i,t]=h.useState("feature"),[r,s]=h.useState(""),[n,c]=h.useState(""),[d,u]=h.useState(""),[m,g]=h.useState(!1),{submitFeedback:p}=P9(),f=async A=>{if(A.preventDefault(),!n.trim()||!d.trim()||!r)return;g(!0);const y=await p(i,n,d,r);g(!1),y&&(c(""),u(""),s(""),t("feature"),o(!1))},v=()=>{c(""),u(""),s(""),t("feature")},b=A=>{t(A),s("")},S=i==="feature"?R9:x9;return l.jsxs(hn,{open:e,onOpenChange:A=>{o(A),A||v()},children:[l.jsx(h8,{asChild:!0,children:a||l.jsx(Ae,{variant:"ghost",size:"icon",className:"h-9 w-9",children:l.jsx(Pt,{className:"h-5 w-5"})})}),l.jsxs(ar,{className:"sm:max-w-md",children:[l.jsxs(or,{children:[l.jsxs(ir,{className:"flex items-center gap-2",children:[l.jsx(Pt,{className:"h-5 w-5 text-primary"}),k("Enviar Feedback")]}),l.jsx(tr,{children:k("Sua opinião é importante para melhorar o SISTUR")})]}),l.jsxs("form",{onSubmit:f,className:"space-y-4",children:[l.jsxs("div",{className:"space-y-3",children:[l.jsx(Ye,{children:k("Tipo de feedback")}),l.jsxs(gb,{value:i,onValueChange:A=>b(A),className:"grid grid-cols-2 gap-4",children:[l.jsxs("div",{className:"relative",children:[l.jsx(dd,{value:"feature",id:"feature",className:"peer sr-only"}),l.jsxs(Ye,{htmlFor:"feature",className:"flex flex-col items-center justify-between rounded-md border-2 border-muted bg-popover p-4 hover:bg-accent hover:text-accent-foreground peer-data-[state=checked]:border-primary cursor-pointer transition-colors",children:[l.jsx(Zg,{className:"h-6 w-6 mb-2 text-yellow-500"}),l.jsx("span",{className:"text-sm font-medium",children:k("Sugestão")}),l.jsx("span",{className:"text-xs text-muted-foreground",children:k("Nova feature")})]})]}),l.jsxs("div",{className:"relative",children:[l.jsx(dd,{value:"bug",id:"bug",className:"peer sr-only"}),l.jsxs(Ye,{htmlFor:"bug",className:"flex flex-col items-center justify-between rounded-md border-2 border-muted bg-popover p-4 hover:bg-accent hover:text-accent-foreground peer-data-[state=checked]:border-primary cursor-pointer transition-colors",children:[l.jsx(LE,{className:"h-6 w-6 mb-2 text-red-500"}),l.jsx("span",{className:"text-sm font-medium",children:k("Bug")}),l.jsx("span",{className:"text-xs text-muted-foreground",children:k("Reportar erro")})]})]})]})]}),l.jsxs("div",{className:"space-y-2",children:[l.jsx(Ye,{htmlFor:"category",children:k("Categoria")}),l.jsxs(S9,{value:r,onValueChange:s,children:[l.jsx(Yb,{children:l.jsx(E9,{placeholder:k("Selecione uma categoria")})}),l.jsx(Zb,{children:S.map(A=>l.jsx(eA,{value:A.value,children:k(String(A.label??""))},A.value))})]})]}),l.jsxs("div",{className:"space-y-2",children:[l.jsx(Ye,{htmlFor:"title",children:k(i==="feature"?"TÃtulo da sugestão":"TÃtulo do bug")}),l.jsx(Uo,{id:"title",value:n,onChange:A=>c(A.target.value),placeholder:k(i==="feature"?"Ex: Adicionar exportação para Excel":"Ex: Erro ao salvar diagnóstico"),required:!0})]}),l.jsxs("div",{className:"space-y-2",children:[l.jsx(Ye,{htmlFor:"description",children:k("Descrição detalhada")}),l.jsx(Gv,{id:"description",value:d,onChange:A=>u(A.target.value),placeholder:k(i==="feature"?"Descreva a funcionalidade que gostaria de ver no sistema...":"Descreva o que aconteceu, os passos para reproduzir o erro e o que era esperado..."),rows:4,required:!0})]}),l.jsxs("div",{className:"flex justify-end gap-2 pt-2",children:[l.jsx(Ae,{type:"button",variant:"outline",onClick:()=>o(!1),children:k("Cancelar")}
480),l.jsx(Ae,{type:"submit",disabled:m||!n.trim()||!d.trim()||!r,children:m?l.jsxs(l.Fragment,{children:[l.jsx(Qo,{className:"h-4 w-4 mr-2 animate-spin"}),k("Enviando...")]}):"Enviar Feedback"})]})]})]})]})}const w9=[{label:k("AnalÃtico"),icon:UE,items:[{name:"Dashboard",href:"/",icon:qs,requiresERP:!0},{name:"Diagnósticos",href:"/diagnosticos",icon:Ls,requiresERP:!0,module:"diagnostico"},{name:"Consórcios",href:"/consorcios",icon:eh,requiresERP:!0,module:"consorcios"},{name:"Observatório (Beta)",href:"/observatorio",icon:Yd,requiresERP:!0,module:"observatorio"},{name:"Relatórios",href:"/relatorios",icon:ss,requiresERP:!0,requiredFeature:"reports",module:"relatorios"},{name:"Base de Conhecimento",href:"/base-conhecimento",icon:ah,requiresERP:!0}]},{label:k("Gerenciamento de Projeto"),icon:Ai,items:[{name:"Projetos",href:"/projetos",icon:Ai,requiresERP:!0,module:"projetos"},{name:"Minhas tarefas",href:"/minhas-tarefas",icon:Ai,requiresERP:!0}]},{label:k("Educação"),icon:Tt,items:[{name:"Minha Jornada",href:"/edu",icon:Tt,requiresEDU:!0,module:"edu"},{name:"Aprender",href:"/edu/catalogo",icon:Di,requiresEDU:!0,module:"edu"},{name:"Avaliações",href:"/edu/minhas-provas",icon:oh,requiresEDU:!0,module:"edu"},{name:"Turmas & Mensagens",href:"/edu/turmas",icon:pt,requiresEDU:!0,module:"edu"},{name:"Painel do Professor",href:"/professor",icon:Di,requiresProfessor:!0},{name:"Admin EDU",href:"/admin/edu",icon:Us,requiresAdmin:!0}]}
480,{label:k("Recursos"),icon:Zg,items:[{name:"Professor Beni",href:"/professor-beni",icon:Ht},{name:"Social Turismo",href:"/forum",icon:Fs},{name:"Jogos Educacionais",href:"/game",icon:Jd}]}],aA=[{name:"Inteligência",href:"/admin/inteligencia",icon:Ht,requiresAdmin:!0},{name:"Configurações",href:"/configuracoes",icon:Bs,requiresAdmin:!0},{name:"Planos",href:"/assinatura",icon:Kd},{name:"Ajuda",href:"/ajuda",icon:ih},{name:"Comercial",href:"/admin/comercial",icon:Us,requiresAdmin:!0},{name:"Certificações",href:"/admin/certificacoes",icon:BE,requiresAdmin:!0}],I9=aA.filter(a=>!a.requiresERP&&!a.requiresEDU&&!a.requiresProfessor&&!a.requiresAdmin);function D9(){const{t:a}=Zt(),e=eo(),o=qi(),{signOut:i}=ze(),{isAdmin:t,isOrgAdmin:r,isProfessor:s,isAnalyst:n,hasERPAccess:c,hasEDUAccess:d,isEstudante:u,initialized:m,loading:g}=la(),{hasFeature:p,isTrialActive:f}=So(),{isModuleEnabled:v}=Tl(),{data:b}=Ml(),S=Nl(),[A,y]=h.useState(!1),[E,C]=h.useState({}),P=c||t?"/":"/edu";h.useEffect(()=>{e.pathname==="/forum"&&S.mutate()},[e.pathname]);const R=async()=>{await i(),Ee.success(a("Você saiu da sua conta")),o("/auth")},I=h.useCallback(T=>m?!(T.requiresAdmin&&!t||T.requiresProfessor&&!s&&!t&&!r&&!(c&&n)||T.requiresERP&&!c&&!t||T.requiresEDU&&!d&&!t||T.module&&!v(T.module)):!T.requiresERP&&!T.requiresEDU&&!T.requiresProfessor&&!T.requiresAdmin,[m,t,r,n,s,c,d,v]),x=h.useMemo(()=>w9.map(T=>({...T,items:T.items.filter(I)})).filter(T=>T.items.length>0),[I]);h.useEffect(()=>{const T=x.find(q=>q.items.some(O=>e.pathname===O.href||O.href!=="/"&&e.pathname.startsWith(O.href)));T&&C(q=>({...q,[T.label]:!0}))},[e.pathname,x]);const w=h.useMemo(()=>m?aA.filter(T=>!(T.requiresAdmin&&!t||T.requiresProfessor&&!s&&!t||T.requiresERP&&!c&&!t||T.requiresEDU&&!d&&!t)):I9,[m,t,s,c,d]),L=T=>{C(q=>({...q,[T]:!q[T]}))},M=({item:T})=>{const q=e.pathname===T.href||T.href!=="/"&&e.pathname.startsWith(T.href),O=!t&&T.requiredFeature&&!p(T.requiredFeature),_=T.href==="/forum"&&((b==null?void 0:b.unreadCount)??0)>0,z=l.jsxs(po,{to:O?"/assinatura":T.href,className:$("flex items-center gap-3 px-3 py-2 rounded-lg transition-all duration-200 group relative",A?"justify-center":"pl-9",O?"text-muted-foreground/50 hover:bg-muted/30 cursor-not-allowed":q?"bg-sidebar-primary text-sidebar-primary-foreground shadow-glow":"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[l.jsxs("div",{className:"relative",children:[l.jsx(T.icon,{className:$("h-4.5 w-4.5 flex-shrink-0 transition-transform",!q&&!O&&"group-hover:scale-110")}),_&&A&&l.jsx("span",{className:"absolute -top-1 -right-1 h-2 w-2 bg-destructive rounded-full"})]}),!A&&l.jsx("span",{className:"font-medium text-sm truncate flex-1",children:a(T.name)}),O&&!A&&l.jsx(Wt,{className:"h-3.5 w-3.5 text-muted-foreground/50 flex-shrink-0"}),_&&!A&&!O&&l.jsx(bo,{variant:"destructive",className:"h-5 min-w-5 px-1.5 text-xs",children:((b==null?void 0:b.unreadCount)??0)>99?"99+":b==null?void 0:b.unreadCount})]});return A?l.jsxs(yr,{delayDuration:0,children:[l.jsx(Sr,{asChild:!0,children:z}),l.jsxs(st,{side:"right",className:"font-medium flex items-center gap-2",children:[a(T.name),_&&l.jsx(bo,{variant:"destructive",className:"h-5 min-w-5 px-1.5 text-xs",children:((b==null?void 0:b.unreadCount)??0)>99?"99+":b==null?void 0:b.unreadCount})]})]}):z},N=({item:T})=>{const q=e.pathname===T.href||T.href!=="/"&&e.pathname.startsWith(T.href),O=l.jsxs(po,{to:T.href,className:$("flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all duration-200 group",q?"bg-sidebar-primary text-sidebar-primary-foreground shadow-glow":"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[l.jsx(T.icon,{className:$("h-5 w-5 flex-shrink-0 transition-transform",!q&&"group-hover:scale-110")}),!A&&l.jsx("span",{className:"font-medium text-sm truncate",children:a(T.name)})]});return A?l.jsxs(yr,{delayDuration:0,children:[l.jsx(Sr,{asChild:!0,children:O}),l.jsx(st,{side:"right",className:"font-medium",children:a(T.name)})]}):O};return l.jsxs("aside",{className:$("fixed left-0 top-0 z-40 h-screen bg-sidebar border-r border-sidebar-border transition-all duration-300 flex flex-col",A?"w-16":"w-64"),children:[l.jsxs("div",{className:"flex h-16 items-center justify-between px-4 border-b border-sidebar-border",children:[!A&&l.jsxs(po,{to:P,className:"flex items-center gap-2",children:[l.jsx("div",{className:"h-8 w-8 rounded-lg gradient-hero flex items-center justify-center",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-sm",children:"S"})}),l.jsx("span",{className:"font-display font-bold text-lg text-sidebar-foreground",children:k("SISTUR")})]}),A&&l.jsx(po,{to:P,className:"h-8 w-8 mx-auto rounded-lg gradient-hero flex items-center justify-center",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-sm",children:"S"})})]}),l.jsx("nav",{className:"flex-1 px-3 py-3 space-y-1 overflow-y-auto scroll-momentum",children:x.map(T=>{const q=E[T.label]??!1,O=T.icon,_=T.items.some(z=>e.pathname===z.href||z.href!=="/"&&e.pathname.startsWith(z.href));return A?l.jsx("div",{className:"space-y-0.5 mb-2",children:T.items.map(z=>l.jsx(M,{item:z},z.name))},T.label):l.jsxs("div",{className:"mb-1",children:[l.jsxs("button",{type:"button",onClick:()=>L(T.label),className:$("w-full flex items-center gap-2 px-3 py-2 rounded-lg text-xs font-semibold uppercase tracking-wider transition-colors",_?"text-primary":"text-muted-foreground hover:text-sidebar-foreground"),children:[l.jsx(O,{className:"h-4 w-4 flex-shrink-0"}),l.jsx("span",{className:"flex-1 text-left",children:a(T.label)}),l.jsx(Zd,{className:$("h-3.5 w-3.5 transition-transform duration-200",q&&"rotate-180")}
480)]}),l.jsx("div",{className:$("overflow-hidden transition-all duration-200",q?"max-h-96 opacity-100":"max-h-0 opacity-0"),children:l.jsx("div",{className:"space-y-0.5 mt-0.5",children:T.items.map(z=>l.jsx(M,{item:z},z.name))})})]},T.label)})}),l.jsxs("div",{className:"px-3 py-3 border-t border-sidebar-border space-y-0.5",children:[w.map(T=>l.jsx(N,{item:T},T.name)),A?l.jsxs(yr,{delayDuration:0,children:[l.jsx(Sr,{asChild:!0,children:l.jsx("div",{children:l.jsx(fd,{trigger:l.jsx(Ae,{variant:"ghost",size:"icon",className:"w-full text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",children:l.jsx(Pt,{className:"h-5 w-5"})})})})}),l.jsx(st,{side:"right",className:"font-medium",children:a("Feedback")})]}):l.jsx(fd,{trigger:l.jsxs(Ae,{variant:"ghost",className:"w-full justify-start px-3 text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",children:[l.jsx(Pt,{className:"h-5 w-5 mr-3"}),l.jsx("span",{className:"text-sm",children:a("Feedback")})]})}),A?l.jsxs(yr,{delayDuration:0,children:[l.jsx(Sr,{asChild:!0,children:l.jsx(Ae,{variant:"ghost",size:"icon",onClick:R,className:"w-full text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",children:l.jsx(Ic,{className:"h-5 w-5"})})}),l.jsx(st,{side:"right",className:"font-medium",children:a("Sair")})]}):l.jsxs(Ae,{variant:"ghost",onClick:R,className:"w-full justify-start px-3 text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",children:[l.jsx(Ic,{className:"h-5 w-5 mr-3"}),l.jsx("span",{className:"text-sm",children:a("Sair")})]}),l.jsx(Ae,{variant:"ghost",size:"sm",onClick:()=>y(!A),className:$("w-full justify-center text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",!A&&"justify-start px-3"),children:A?l.jsx(Xd,{className:"h-4 w-4"}):l.jsxs(l.Fragment,{children:[l.jsx(Jg,{className:"h-4 w-4 mr-2"}),l.jsx("span",{className:"text-sm",children:a("Recolher")})]})})]})]})}var vd=["Enter"," "],O9=["ArrowDown","PageUp","Home"],oA=["ArrowUp","PageDown","End"],M9=[...O9,...oA],N9={ltr:[...vd,"ArrowRight"],rtl:[...vd,"ArrowLeft"]},z9={ltr:["ArrowLeft"],rtl:["ArrowRight"]},nr="Menu",[_t,j9,k9]=Hs(nr),[Ko,iA]=Ze(nr,[k9,Vi,fn]),cr=Vi(),tA=fn(),[rA,To]=Ko(nr),[_9,dr]=Ko(nr),sA=a=>{const{__scopeMenu:e,open:o=!1,children:i,dir:t,onOpenChange:r,modal:s=!0}=a,n=cr(e),[c,d]=h.useState(null),u=h.useRef(!1),m=Ce(r),g=rr(t);return h.useEffect(()=>{const p=()=>{u.current=!0,document.addEventListener("pointerdown",f,{capture:!0,once:!0}),document.addEventListener("pointermove",f,{capture:!0,once:!0})},f=()=>u.current=!1;return document.addEventListener("keydown",p,{capture:!0}),()=>{document.removeEventListener("keydown",p,{capture:!0}),document.removeEventListener("pointerdown",f,{capture:!0}),document.removeEventListener("pointermove",f,{capture:!0})}},[]),l.jsx(Xs,{...n,children:l.jsx(rA,{scope:e,open:o,onOpenChange:m,content:c,onContentChange:d,children:l.jsx(_9,{scope:e,onClose:h.useCallback(()=>m(!1),[m]),isUsingKeyboardRef:u,dir:g,modal:s,children:i})})})};sA.displayName=nr;var q9="MenuAnchor",kl=h.forwardRef((a,e)=>{const{__scopeMenu:o,...i}=a,t=cr(o);return l.jsx(vl,{...t,...i,ref:e})});kl.displayName=q9;var _l="MenuPortal",[L9,nA]=Ko(_l,{forceMount:void 0}),cA=a=>{const{__scopeMenu:e,forceMount:o,children:i,container:t}=a,r=To(_l,e);return l.jsx(L9,{scope:e,forceMount:o,children:l.jsx($e,{present:o||r.open,children:l.jsx(Qt,{asChild:!0,container:t,children:i})})})};cA.displayName=_l;var na="MenuContent",[U9,ql]=Ko(na),dA=h.forwardRef((a,e)=>{const o=nA(na,a.__scopeMenu),{forceMount:i=o.forceMount,...t}=a,r=To(na,a.__scopeMenu),s=dr(na,a.__scopeMenu);return l.jsx(_t.Provider,{scope:a.__scopeMenu,children:l.jsx($e,{present:i||r.open,children:l.jsx(_t.Slot,{scope:a.__scopeMenu,children:s.modal?l.jsx(B9,{...t,ref:e}):l.jsx(F9,{...t,ref:e})})})})}),B9=h.forwardRef((a,e)=>{const o=To(na,a.__scopeMenu),i=h.useRef(null),t=ne(e,i);return h.useEffect(()=>{const r=i.current;if(r)return Rl(r)},[]),l.jsx(Ll,{...a,ref:t,trapFocus:o.open,disableOutsidePointerEvents:o.open,disableOutsideScroll:!0,onFocusOutside:U(a.onFocusOutside,r=>r.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>o.onOpenChange(!1)})}),F9=h.forwardRef((a,e)=>{const o=To(na,a.__scopeMenu);return l.jsx(Ll,{...a,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>o.onOpenChange(!1)})}),G9=Fo("MenuContent.ScrollLock"),Ll=h.forwardRef((a,e)=>{const{__scopeMenu:o,loop:i=!1,trapFocus:t,onOpenAutoFocus:r,onCloseAutoFocus:s,disableOutsidePointerEvents:n,onEntryFocus:c,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:m,onInteractOutside:g,onDismiss:p,disableOutsideScroll:f,...v}
vendor: 14,940 bytes, line 480
480=a,b=To(na,o),S=dr(na,o),A=cr(o),y=tA(o),E=j9(o),[C,P]=h.useState(null),R=h.useRef(null),I=ne(e,R,b.onContentChange),x=h.useRef(0),w=h.useRef(""),L=h.useRef(0),M=h.useRef(null),N=h.useRef("right"),T=h.useRef(0),q=f?dn:h.Fragment,O=f?{as:G9,allowPinchZoom:!0}:void 0,_=D=>{var G,ue;const K=w.current+D,X=E().filter(me=>!me.disabled),Y=document.activeElement,ae=(G=X.find(me=>me.ref.current===Y))==null?void 0:G.textValue,re=X.map(me=>me.textValue),he=aJ(re,K,ae),Ie=(ue=X.find(me=>me.textValue===he))==null?void 0:ue.ref.current;(function me(de){w.current=de,window.clearTimeout(x.current),de!==""&&(x.current=window.setTimeout(()=>me(""),1e3))})(K),Ie&&setTimeout(()=>Ie.focus())};h.useEffect(()=>()=>window.clearTimeout(x.current),[]),Pl();const z=h.useCallback(D=>{var X,Y;return N.current===((X=M.current)==null?void 0:X.side)&&iJ(D,(Y=M.current)==null?void 0:Y.area)},[]);return l.jsx(U9,{scope:o,searchRef:w,onItemEnter:h.useCallback(D=>{z(D)&&D.preventDefault()},[z]),onItemLeave:h.useCallback(D=>{var K;z(D)||((K=R.current)==null||K.focus(),P(null))},[z]),onTriggerLeave:h.useCallback(D=>{z(D)&&D.preventDefault()},[z]),pointerGraceTimerRef:L,onPointerGraceIntentChange:h.useCallback(D=>{M.current=D},[]),children:l.jsx(q,{...O,children:l.jsx(nn,{asChild:!0,trapped:t,onMountAutoFocus:U(r,D=>{var K;D.preventDefault(),(K=R.current)==null||K.focus({preventScroll:!0})}),onUnmountAutoFocus:s,children:l.jsx(Ui,{asChild:!0,disableOutsidePointerEvents:n,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:m,onInteractOutside:g,onDismiss:p,children:l.jsx(Jv,{asChild:!0,...y,dir:S.dir,orientation:"vertical",loop:i,currentTabStopId:C,onCurrentTabStopIdChange:P,onEntryFocus:U(c,D=>{S.isUsingKeyboardRef.current||D.preventDefault()}),preventScrollOnEntryFocus:!0,children:l.jsx(bl,{role:"menu","aria-orientation":"vertical","data-state":RA(b.open),"data-radix-menu-content":"",dir:S.dir,...A,...v,ref:I,style:{outline:"none",...v.style},onKeyDown:U(v.onKeyDown,D=>{const X=D.target.closest("[data-radix-menu-content]")===D.currentTarget,Y=D.ctrlKey||D.altKey||D.metaKey,ae=D.key.length===1;X&&(D.key==="Tab"&&D.preventDefault(),!Y&&ae&&_(D.key));const re=R.current;if(D.target!==re||!M9.includes(D.key))return;D.preventDefault();const Ie=E().filter(G=>!G.disabled).map(G=>G.ref.current);oA.includes(D.key)&&Ie.reverse(),Z9(Ie)}),onBlur:U(a.onBlur,D=>{D.currentTarget.contains(D.target)||(window.clearTimeout(x.current),w.current="")}),onPointerMove:U(a.onPointerMove,qt(D=>{const K=D.target,X=T.current!==D.clientX;if(D.currentTarget.contains(K)&&X){const Y=D.clientX>T.current?"right":"left";N.current=Y,T.current=D.clientX}}))})})})})})})});dA.displayName=na;var V9="MenuGroup",Ul=h.forwardRef((a,e)=>{const{__scopeMenu:o,...i}=a;return l.jsx(J.div,{role:"group",...i,ref:e})});Ul.displayName=V9;var $9="MenuLabel",lA=h.forwardRef((a,e)=>{const{__scopeMenu:o,...i}=a;return l.jsx(J.div,{...i,ref:e})});lA.displayName=$9;var Ts="MenuItem",bp="menu.itemSelect",Sn=h.forwardRef((a,e)=>{const{disabled:o=!1,onSelect:i,...t}=a,r=h.useRef(null),s=dr(Ts,a.__scopeMenu),n=ql(Ts,a.__scopeMenu),c=ne(e,r),d=h.useRef(!1),u=()=>{const m=r.current;if(!o&&m){const g=new CustomEvent(bp,{bubbles:!0,cancelable:!0});m.addEventListener(bp,p=>i==null?void 0:i(p),{once:!0}),il(m,g),g.defaultPrevented?d.current=!1:s.onClose()}};return l.jsx(uA,{...t,ref:c,disabled:o,onClick:U(a.onClick,u),onPointerDown:m=>{var g;(g=a.onPointerDown)==null||g.call(a,m),d.current=!0},onPointerUp:U(a.onPointerUp,m=>{var g;d.current||(g=m.currentTarget)==null||g.click()}),onKeyDown:U(a.onKeyDown,m=>{const g=n.searchRef.current!=="";o||g&&m.key===" "||vd.includes(m.key)&&(m.currentTarget.click(),m.preventDefault())})})});Sn.displayName=Ts;var uA=h.forwardRef((a,e)=>{const{__scopeMenu:o,disabled:i=!1,textValue:t,...r}=a,s=ql(Ts,o),n=tA(o),c=h.useRef(null),d=ne(e,c),[u,m]=h.useState(!1),[g,p]=h.useState("");return h.useEffect(()=>{const f=c.current;f&&p((f.textContent??"").trim())},[r.children]),l.jsx(_t.ItemSlot,{scope:o,disabled:i,textValue:t??g,children:l.jsx(Xv,{asChild:!0,...n,focusable:!i,children:l.jsx(J.div,{role:"menuitem","data-highlighted":u?"":void 0,"aria-disabled":i||void 0,"data-disabled":i?"":void 0,...r,ref:d,onPointerMove:U(a.onPointerMove,qt(f=>{i?s.onItemLeave(f):(s.onItemEnter(f),f.defaultPrevented||f.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:U(a.onPointerLeave,qt(f=>s.onItemLeave(f))),onFocus:U(a.onFocus,()=>m(!0)),onBlur:U(a.onBlur,()=>m(!1))})})})}),H9="MenuCheckboxItem",mA=h.forwardRef((a,e)=>{const{checked:o=!1,onCheckedChange:i,...t}=a;return l.jsx(vA,{scope:a.__scopeMenu,checked:o,children:l.jsx(Sn,{role:"menuitemcheckbox","aria-checked":Ps(o)?"mixed":o,...t,ref:e,"data-state":Gl(o),onSelect:U(t.onSelect,()=>i==null?void 0:i(Ps(o)?!0:!o),{checkForDefaultPrevented:!1})})})});mA.displayName=H9;var pA="MenuRadioGroup",[W9,Q9]=Ko(pA,{value:void 0,onValueChange:()=>{}}),gA=h.forwardRef((a,e)=>{const{value:o,onValueChange:i,...t}=a,r=Ce(i);return l.jsx(W9,{scope:a.__scopeMenu,value:o,onValueChange:r,children:l.jsx(Ul,{...t,ref:e})})});gA.displayName=pA;var hA="MenuRadioItem",fA=h.forwardRef((a,e)=>{const{value:o,...i}=a,t=Q9(hA,a.__scopeMenu),r=o===t.value;return l.jsx(vA,{scope:a.__scopeMenu,checked:r,children:l.jsx(Sn,{role:"menuitemradio","aria-checked":r,...i,ref:e,"data-state":Gl(r),onSelect:U(i.onSelect,()=>{var s;return(s=t.onValueChange)==null?void 0:s.call(t,o)},{checkForDefaultPrevented:!1})})})});fA.displayName=hA;var Bl="MenuItemIndicator",[vA,K9]=Ko(Bl,{checked:!1}),bA=h.forwardRef((a,e)=>{const{__scopeMenu:o,forceMount:i,...t}=a,r=K9(Bl,o);return l.jsx($e,{present:i||Ps(r.checked)||r.checked===!0,children:l.jsx(J.span,{...t,ref:e,"data-state":Gl(r.checked)})})});bA.displayName=Bl;var Y9="MenuSeparator",AA=h.forwardRef((a,e)=>{const{__scopeMenu:o,...i}=a;return l.jsx(J.div,{role:"separator","aria-orientation":"horizontal",...i,ref:e})});AA.displayName=Y9;var J9="MenuArrow",yA=h.forwardRef((a,e)=>{const{__scopeMenu:o,...i}=a,t=cr(o);return l.jsx(Al,{...t,...i,ref:e})});yA.displayName=J9;var Fl="MenuSub",[X9,SA]=Ko(Fl),EA=a=>{const{__scopeMenu:e,children:o,open:i=!1,onOpenChange:t}=a,r=To(Fl,e),s=cr(e),[n,c]=h.useState(null),[d,u]=h.useState(null),m=Ce(t);return h.useEffect(()=>(r.open===!1&&m(!1),()=>m(!1)),[r.open,m]),l.jsx(Xs,{...s,children:l.jsx(rA,{scope:e,open:i,onOpenChange:m,content:d,onContentChange:u,children:l.jsx(X9,{scope:e,contentId:sa(),triggerId:sa(),trigger:n,onTriggerChange:c,children:o})})})};EA.displayName=Fl;var ut="MenuSubTrigger",CA=h.forwardRef((a,e)=>{const o=To(ut,a.__scopeMenu),i=dr(ut,a.__scopeMenu),t=SA(ut,a.__scopeMenu),r=ql(ut,a.__scopeMenu),s=h.useRef(null),{pointerGraceTimerRef:n,onPointerGraceIntentChange:c}=r,d={__scopeMenu:a.__scopeMenu},u=h.useCallback(()=>{s.current&&window.clearTimeout(s.current),s.current=null},[]);return h.useEffect(()=>u,[u]),h.useEffect(()=>{const m=n.current;return()=>{window.clearTimeout(m),c(null)}},[n,c]),l.jsx(kl,{asChild:!0,...d,children:l.jsx(uA,{id:t.triggerId,"aria-haspopup":"menu","aria-expanded":o.open,"aria-controls":t.contentId,"data-state":RA(o.open),...a,ref:$s(e,t.onTriggerChange),onClick:m=>{var g;(g=a.onClick)==null||g.call(a,m),!(a.disabled||m.defaultPrevented)&&(m.currentTarget.focus(),o.open||o.onOpenChange(!0))},onPointerMove:U(a.onPointerMove,qt(m=>{r.onItemEnter(m),!m.defaultPrevented&&!a.disabled&&!o.open&&!s.current&&(r.onPointerGraceIntentChange(null),s.current=window.setTimeout(()=>{o.onOpenChange(!0),u()},100))})),onPointerLeave:U(a.onPointerLeave,qt(m=>{var p,f;u();const g=(p=o.content)==null?void 0:p.getBoundingClientRect();if(g){const v=(f=o.content)==null?void 0:f.dataset.side,b=v==="right",S=b?-5:5,A=g[b?"left":"right"],y=g[b?"right":"left"];r.onPointerGraceIntentChange({area:[{x:m.clientX+S,y:m.clientY},{x:A,y:g.top},{x:y,y:g.top},{x:y,y:g.bottom},{x:A,y:g.bottom}],side:v}),window.clearTimeout(n.current),n.current=window.setTimeout(()=>r.onPointerGraceIntentChange(null),300)}else{if(r.onTriggerLeave(m),m.defaultPrevented)return;r.onPointerGraceIntentChange(null)}})),onKeyDown:U(a.onKeyDown,m=>{var p;const g=r.searchRef.current!=="";a.disabled||g&&m.key===" "||N9[i.dir].includes(m.key)&&(o.onOpenChange(!0),(p=o.content)==null||p.focus(),m.preventDefault())})})})});CA.displayName=ut;var TA="MenuSubContent",PA=h.forwardRef((a,e)=>{const o=nA(na,a.__scopeMenu),{forceMount:i=o.forceMount,...t}=a,r=To(na,a.__scopeMenu),s=dr(na,a.__scopeMenu),n=SA(TA,a.__scopeMenu),c=h.useRef(null),d=ne(e,c);return l.jsx(_t.Provider,{scope:a.__scopeMenu,children:l.jsx($e,{present:i||r.open,children:l.jsx(_t.Slot,{scope:a.__scopeMenu,children:l.jsx(Ll,{id:n.contentId,"aria-labelledby":n.triggerId,...t,ref:d,align:"start",side:s.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:u=>{var m;s.isUsingKeyboardRef.current&&((m=c.current)==null||m.focus()),u.preventDefault()},onCloseAutoFocus:u=>u.preventDefault(),onFocusOutside:U(a.onFocusOutside,u=>{u.target!==n.trigger&&r.onOpenChange(!1)}),onEscapeKeyDown:U(a.onEscapeKeyDown,u=>{s.onClose(),u.preventDefault()}),onKeyDown:U(a.onKeyDown,u=>{var p;const m=u.currentTarget.contains(u.target),g=z9[s.dir].includes(u.key);m&&g&&(r.onOpenChange(!1),(p=n.trigger)==null||p.focus(),u.preventDefault())})})})})})});PA.displayName=TA;function RA(a){return a?"open":"closed"}function Ps(a){return a==="indeterminate"}function Gl(a){return Ps(a)?"indeterminate":a?"checked":"unchecked"}function Z9(a){const e=document.activeElement;for(const o of a)if(o===e||(o.focus(),document.activeElement!==e))return}function eJ(a,e){return a.map((o,i)=>a[(e+i)%a.length])}function aJ(a,e,o){const t=e.length>1&&Array.from(e).every(d=>d===e[0])?e[0]:e,r=o?a.indexOf(o):-1;let s=eJ(a,Math.max(r,0));t.length===1&&(s=s.filter(d=>d!==o));const c=s.find(d=>d.toLowerCase().startsWith(t.toLowerCase()));return c!==o?c:void 0}function oJ(a,e){const{x:o,y:i}=a;let t=!1;for(let r=0,s=e.length-1;r<e.length;s=r++){const n=e[r],c=e[s],d=n.x,u=n.y,m=c.x,g=c.y;u>i!=g>i&&o<(m-d)*(i-u)/(g-u)+d&&(t=!t)}return t}function iJ(a,e){if(!e)return!1;const o={x:a.clientX,y:a.clientY};return oJ(o,e)}function qt(a){return e=>e.pointerType==="mouse"?a(e):void 0}var tJ=sA,rJ=kl,sJ=cA,nJ=dA,cJ=Ul,dJ=lA,lJ=Sn,uJ=mA,mJ=gA,pJ=fA,gJ=bA,hJ=AA,fJ=yA,vJ=EA,bJ=CA,AJ=PA,En="DropdownMenu",[yJ,Dse]=Ze(En,[iA]),Ue=iA(),[SJ,xA]=yJ(En),wA=a=>{const{__scopeDropdownMenu:e,children:o,dir:i,open:t,defaultOpen:r,onOpenChange:s,modal:n=!0}=a,c=Ue(e),d=h.useRef(null),[u,m]=Ya({prop:t,defaultProp:r??!1,onChange:s,caller:En});return l.jsx(SJ,{scope:e,triggerId:sa(),triggerRef:d,contentId:sa(),open:u,onOpenChange:m,onOpenToggle:h.useCallback(()=>m(g=>!g),[m]),modal:n,children:l.jsx(tJ,{...c,open:u,onOpenChange:m,dir:i,modal:n,children:o})})};wA.displayName=En;var IA="DropdownMenuTrigger",DA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,disabled:i=!1,...t}=a,r=xA(IA,o),s=Ue(o);return l.jsx(rJ,{asChild:!0,...s,children:l.jsx(J.button,{type:"button",id:r.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":r.open?r.contentId:void 0,"data-state":r.open?"open":"closed","data-disabled":i?"":void 0,disabled:i,...t,ref:$s(e,r.triggerRef),onPointerDown:U(a.onPointerDown,n=>{!i&&n.button===0&&n.ctrlKey===!1&&(r.onOpenToggle(),r.open||n.preventDefault())}),onKeyDown:U(a.onKeyDown,n=>{i||(["Enter"," "].includes(n.key)&&r.onOpenToggle(),n.key==="ArrowDown"&&r.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(n.key)&&n.preventDefault())})})})});DA.displayName=IA;var EJ="DropdownMenuPortal",OA=a=>{const{__scopeDropdownMenu:e,...o}=a,i=Ue(e);return l.jsx(sJ,{...i,...o})};OA.displayName=EJ;var MA="DropdownMenuContent",NA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=xA(MA,o),r=Ue(o),s=h.useRef(!1);return l.jsx(nJ,{id:t.contentId,"aria-labelledby":t.triggerId,...r,...i,ref:e,onCloseAutoFocus:U(a.onCloseAutoFocus,n=>{var c;s.current||(c=t.triggerRef.current)==null||c.focus(),s.current=!1,n.preventDefault()}),onInteractOutside:U(a.onInteractOutside,n=>{const c=n.detail.originalEvent,d=c.button===0&&c.ctrlKey===!0,u=c.button===2||d;(!t.modal||u)&&(s.current=!0)}),style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});NA.displayName=MA;var CJ="DropdownMenuGroup",TJ=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(cJ,{...t,...i,ref:e})});TJ.displayName=CJ;var PJ="DropdownMenuLabel",zA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(dJ,{...t,...i,ref:e})});zA.displayName=PJ;var RJ="DropdownMenuItem",jA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(lJ,{...t,...i,ref:e})});jA.displayName=RJ;var xJ="DropdownMenuCheckboxItem",kA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(uJ,{...t,...i,ref:e})});kA.displayName=xJ;var wJ="DropdownMenuRadioGroup",IJ=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(mJ,{...t,...i,ref:e})});IJ.displayName=wJ;var DJ="DropdownMenuRadioItem",_A=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(pJ,{...t,...i,ref:e})});_A.displayName=DJ;var OJ="DropdownMenuItemIndicator",qA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(gJ,{...t,...i,ref:e})});qA.displayName=OJ;var MJ="DropdownMenuSeparator",LA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(hJ,{...t,...i,ref:e})});LA.displayName=MJ;var NJ="DropdownMenuArrow",zJ=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(fJ,{...t,...i,ref:e})});zJ.displayName=NJ;var jJ=a=>{const{__scopeDropdownMenu:e,children:o,open:i,onOpenChange:t,defaultOpen:r}=a,s=Ue(e),[n,c]=Ya({prop:i,defaultProp:r??!1,onChange:t,caller:"DropdownMenuSub"});return l.jsx(vJ,{...s,open:n,onOpenChange:c,children:o})},kJ="DropdownMenuSubTrigger",UA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(bJ,{...t,...i,ref:e})});UA.displayName=kJ;var _J="DropdownMenuSubContent",BA=h.forwardRef((a,e)=>{const{__scopeDropdownMenu:o,...i}=a,t=Ue(o);return l.jsx(AJ,{...t,...i,ref:e,style:{...a.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});BA.displayName=_J;
480var qJ=wA,LJ=DA,UJ=OA,FA=NA,GA=zA,VA=jA,$A=kA,HA=_A,WA=qA,QA=LA,BJ=jJ,KA=UA,YA=BA;const Vl=qJ,$l=LJ,Ose=BJ,FJ=h.forwardRef(({className:a,inset:e,children:o,...i},t)=>l.jsxs(KA,{ref:t,className:$("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[state=open]:bg-accent focus:bg-accent",e&&"pl-8",a),...i,children:[o,l.jsx(Xd,{className:"ml-auto h-4 w-4"})]}));FJ.displayName=KA.displayName;const GJ=h.forwardRef(({className:a,...e},o)=>l.jsx(YA,{ref:o,className:$("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...e}));GJ.displayName=YA.displayName;const Cn=h.forwardRef(({className:a,sideOffset:e=4,...o},i)=>l.jsx(UJ,{children:l.jsx(FA,{ref:i,sideOffset:e,className:$("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",a),...o})}));Cn.displayName=FA.displayName;const go=h.forwardRef(({className:a,inset:e,...o},i)=>l.jsx(VA,{ref:i,className:$("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 focus:bg-accent focus:text-accent-foreground",e&&"pl-8",a),...o}));go.displayName=VA.displayName;const VJ=h.forwardRef(({className:a,children:e,checked:o,...i},t)=>l.jsxs($A,{ref:t,className:$("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 focus:bg-accent focus:text-accent-foreground",a),checked:o,...i,children:[l.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsx(WA,{children:l.jsx(el,{className:"h-4 w-4"})})}),e]}));VJ.displayName=$A.displayName;const $J=h.forwardRef(({className:a,children:e,...o},i)=>l.jsxs(HA,{ref:i,className:$("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors data-[disabled]:pointer-events-none data-[disabled]:opacity-50 focus:bg-accent focus:text-accent-foreground",a),...o,children:[l.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:l.jsx(WA,{children:l.jsx(Xg,{className:"h-2 w-2 fill-current"})})}),e]}));$J.displayName=HA.displayName;const Hl=h.forwardRef(({className:a,inset:e,...o},i)=>l.jsx(GA,{ref:i,className:$("px-2 py-1.5 text-sm font-semibold",e&&"pl-8",a),...o}));Hl.displayName=GA.displayName;const wi=h.forwardRef(({className:a,...e},o)=>l.jsx(QA,{ref:o,className:$("-mx-1 my-1 h-px bg-muted",a),...e}));wi.displayName=QA.displayName;var JA={exports:{}},XA={};/** 481 * @license React 482 * use-sync-external-store-shim.production.js 483 * 484 * Copyright (c) Meta Platforms, Inc. and affiliates. 485 * 486 * This source code is licensed under the MIT license found in the 487 * LICENSE file in the root directory of this source tree. 488 */var zi=h;function HJ(a,e){return a===e&&(a!==0||1/a===1/e)||a!==a&&e!==e}var WJ=typeof Object.is=="function"?Object.is:HJ,QJ=zi.useState,KJ=zi.useEffect,YJ=zi.useLayoutEffect,JJ=zi.useDebugValue;function XJ(a,e){var o=e(),i=QJ({inst:{value:o,getSnapshot:e}}),t=i[0].inst,r=i[1];return YJ(function(){t.value=o,t.getSnapshot=e,cc(t)&&r({inst:t})},[a,o,e]),KJ(function(){return cc(t)&&r({inst:t}),a(function(){cc(t)&&r({inst:t})})},[a]),JJ(o),o}function cc(a){var e=a.getSnapshot;a=a.value;try{var o=e();
488return!WJ(a,o)}catch{return!0}}function ZJ(a,e){return e()}var eX=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?ZJ:XJ;XA.useSyncExternalStore=zi.useSyncExternalStore!==void 0?zi.useSyncExternalStore:eX;JA.exports=XA;var aX=JA.exports;function oX(){return aX.useSyncExternalStore(iX,()=>!0,()=>!1)}function iX(){return()=>{}}var Wl="Avatar",[tX,Mse]=Ze(Wl),[rX,ZA]=tX(Wl),ey=h.forwardRef((a,e)=>{const{__scopeAvatar:o,...i}=a,[t,r]=h.useState("idle");return l.jsx(rX,{scope:o,imageLoadingStatus:t,onImageLoadingStatusChange:r,children:l.jsx(J.span,{...i,ref:e})})});ey.displayName=Wl;var ay="AvatarImage",oy=h.forwardRef((a,e)=>{const{__scopeAvatar:o,src:i,onLoadingStatusChange:t=()=>{},...r}=a,s=ZA(ay,o),n=sX(i,r),c=Ce(d=>{t(d),s.onImageLoadingStatusChange(d)});return we(()=>{n!=="idle"&&c(n)},[n,c]),n==="loaded"?l.jsx(J.img,{...r,ref:e,src:i}):null});oy.displayName=ay;var iy="AvatarFallback",ty=h.forwardRef((a,e)=>{const{__scopeAvatar:o,delayMs:i,...t}=a,r=ZA(iy,o),[s,n]=h.useState(i===void 0);return h.useEffect(()=>{if(i!==void 0){const c=window.setTimeout(()=>n(!0),i);return()=>window.clearTimeout(c)}},[i]),s&&r.imageLoadingStatus!=="loaded"?l.jsx(J.span,{...t,ref:e}):null});ty.displayName=iy;function Ap(a,e){return a?e?(a.src!==e&&(a.src=e),a.complete&&a.naturalWidth>0?"loaded":"loading"):"error":"idle"}function sX(a,{referrerPolicy:e,crossOrigin:o}){const i=oX(),t=h.useRef(null),r=i?(t.current||(t.current=new window.Image),t.current):null,[s,n]=h.useState(()=>Ap(r,a));return we(()=>{n(Ap(r,a))},[r,a]),we(()=>{const c=m=>()=>{n(m)};if(!r)return;const d=c("loaded"),u=c("error");return r.addEventListener("load",d),r.addEventListener("error",u),e&&(r.referrerPolicy=e),typeof o=="string"&&(r.crossOrigin=o),()=>{r.removeEventListener("load",d),r.removeEventListener("error",u)}},[r,o,e]),s}var ry=ey,sy=oy,ny=ty;const bd=h.forwardRef(({className:a,...e},o)=>l.jsx(ry,{ref:o,className:$("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",a),...e}));bd.displayName=ry.displayName;const nX=h.forwardRef(({className:a,...e},o)=>l.jsx(sy,{ref:o,className:$("aspect-square h-full w-full",a),...e}));nX.displayName=sy.displayName;const Ad=h.forwardRef(({className:a,...e},o)=>l.jsx(ny,{ref:o,className:$("flex h-full w-full items-center justify-center rounded-full bg-muted",a),...e}));Ad.displayName=ny.displayName;function Ka(a){return(e={})=>{const o=e.width?String(e.width):a.defaultWidth;return a.formats[o]||a.formats[a.defaultWidth]}}function Be(a){return(e,o)=>{const i=o!=null&&o.context?String(o.context):"standalone";let t;if(i==="formatting"&&a.formattingValues){const s=a.defaultFormattingWidth||a.defaultWidth,n=o!=null&&o.width?String(o.width):s;t=a.formattingValues[n]||a.formattingValues[s]}else{const s=a.defaultWidth,n=o!=null&&o.width?String(o.width):a.defaultWidth;t=a.values[n]||a.values[s]}const r=a.argumentCallback?a.argumentCallback(e):e;return t[r]}}function Fe(a){return(e,o={})=>{const i=o.width,t=i&&a.matchPatterns[i]||a.matchPatterns[a.defaultMatchWidth],r=e.match(t);if(!r)return null;const s=r[0],n=i&&a.parsePatterns[i]||a.parsePatterns[a.defaultParseWidth],c=Array.isArray(n)?dX(n,m=>m.test(s)):cX(n,m=>m.test(s));let d;d=a.valueCallback?a.valueCallback(c):c,d=o.valueCallback?o.valueCallback(d):d;const u=e.slice(s.length);return{value:d,rest:u}}}function cX(a,e){for(const o in a)if(Object.prototype.hasOwnProperty.call(a,o)&&e(a[o]))return o}function dX(a,e){for(let o=0;o<a.length;o++)if(e(a[o]))return o}function Ql(a){return(e,o={})=>{const i=e.match(a.matchPattern);if(!i)return null;const t=i[0],r=e.match(a.parsePattern);if(!r)return null;let s=a.valueCallback?a.valueCallback(r[0]):r[0];s=o.valueCallback?o.valueCallback(s):s;const n=e.slice(t.length);return{value:s,rest:n}}}function ke(a){const e=Object.prototype.toString.call(a);return a instanceof Date||typeof a=="object"&&e==="[object Date]"?new a.constructor(+a):typeof a=="number"||e==="[object Number]"||typeof a=="string"||e==="[object String]"?new Date(a):new Date(NaN)}let lX={};function uX(){return lX}const mX={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},pX=(a,e,o)=>{let i;const t=mX[a];
488return typeof t=="string"?i=t:e===1?i=t.one:i=t.other.replace("{{count}}",e.toString()),o!=null&&o.addSuffix?o.comparison&&o.comparison>0?"in "+i:i+" ago":i},gX={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},hX=(a,e,o,i)=>gX[a],fX={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},vX={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},bX={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},AX={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},yX={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},SX={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},EX=(a,e)=>{const o=Number(a),i=o%100;if(i>20||i<10)switch(i%10){case 1:return o+"st";case 2:return o+"nd";case 3:return o+"rd"}return o+"th"},CX={ordinalNumber:EX,era:Be({values:fX,defaultWidth:"wide"}),quarter:Be({values:vX,defaultWidth:"wide",argumentCallback:a=>a-1}),month:Be({values:bX,defaultWidth:"wide"}),day:Be({values:AX,defaultWidth:"wide"}),dayPeriod:Be({values:yX,defaultWidth:"wide",formattingValues:SX,defaultFormattingWidth:"wide"})},TX=/^(\d+)(th|st|nd|rd)?/i,PX=/\d+/i,RX={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},xX={any:[/^b/i,/^(a|c)/i]},wX={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},IX={any:[/1/i,/2/i,/3/i,/4/i]},DX={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},OX={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},MX={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},NX={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},zX={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},jX={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},kX={ordinalNumber:Ql({matchPattern:TX,parsePattern:PX,valueCallback:a=>parseInt(a,10)}),era:Fe({matchPatterns:RX,defaultMatchWidth:"wide",parsePatterns:xX,defaultParseWidth:"any"}),quarter:Fe({matchPatterns:wX,defaultMatchWidth:"wide",parsePatterns:IX,defaultParseWidth:"any",valueCallback:a=>a+1}),month:Fe({matchPatterns:DX,defaultMatchWidth:"wide",parsePatterns:OX,defaultParseWidth:"any"}),day:Fe({matchPatterns:MX,defaultMatchWidth:"wide",parsePatterns:NX,defaultParseWidth:"any"}),dayPeriod:Fe({matchPatterns:zX,defaultMatchWidth:"any",parsePatterns:jX,defaultParseWidth:"any"})},_X={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},qX={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},LX={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},UX={date:Ka({formats:_X,defaultWidth:"full"}),time:Ka({formats:qX,defaultWidth:"full"}),dateTime:Ka({formats:LX,defaultWidth:"full"})},cy={code:"en-US",formatDistance:pX,formatLong:UX,formatRelative:hX,localize:CX,match:kX,options:{weekStartsOn:0,firstWeekContainsDate:1}},BX={lessThanXSeconds:{one:"menos de un segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"medio minuto",lessThanXMinutes:{one:"menos de un minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"alrededor de 1 hora",other:"alrededor de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dÃa",other:"{{count}} dÃas"},aboutXWeeks:{one:"alrededor de 1 semana",other:"alrededor de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"alrededor de 1 mes",other:"alrededor de {{count}} meses"},xMonths:{one:"1 mes",other:"{{count}} meses"},aboutXYears:{one:"alrededor de 1 año",other:"alrededor de {{count}} años"},xYears:{one:"1 año",other:"{{count}} años"},overXYears:{one:"más de 1 año",other:"más de {{count}} años"},almostXYears:{one:"casi 1 año",other:"casi {{count}} años"}},FX=(a,e,o)=>{let i;const t=BX[a];
488return typeof t=="string"?i=t:e===1?i=t.one:i=t.other.replace("{{count}}",e.toString()),o!=null&&o.addSuffix?o.comparison&&o.comparison>0?"en "+i:"hace "+i:i},GX={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/y"},VX={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},$X={full:"{{date}} 'a las' {{time}}",long:"{{date}} 'a las' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},HX={date:Ka({formats:GX,defaultWidth:"full"}),time:Ka({formats:VX,defaultWidth:"full"}),dateTime:Ka({formats:$X,defaultWidth:"full"})},WX={lastWeek:"'el' eeee 'pasado a la' p",yesterday:"'ayer a la' p",today:"'hoy a la' p",tomorrow:"'mañana a la' p",nextWeek:"eeee 'a la' p",other:"P"},QX={lastWeek:"'el' eeee 'pasado a las' p",yesterday:"'ayer a las' p",today:"'hoy a las' p",tomorrow:"'mañana a las' p",nextWeek:"eeee 'a las' p",other:"P"},KX=(a,e,o,i)=>e.getHours()!==1?QX[a]:WX[a],YX={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","después de cristo"]},JX={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},XX={narrow:["e","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic"],wide:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]},ZX={narrow:["d","l","m","m","j","v","s"],short:["do","lu","ma","mi","ju","vi","sá"],abbreviated:["dom","lun","mar","mié","jue","vie","sáb"],wide:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"]},e7={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"mañana",afternoon:"tarde",evening:"tarde",night:"noche"}},a7={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},abbreviated:{am:"AM",pm:"PM",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"},wide:{am:"a.m.",pm:"p.m.",midnight:"medianoche",noon:"mediodia",morning:"de la mañana",afternoon:"de la tarde",evening:"de la tarde",night:"de la noche"}},o7=(a,e)=>Number(a)+"º",i7={ordinalNumber:o7,era:Be({values:YX,defaultWidth:"wide"}),quarter:Be({values:JX,defaultWidth:"wide",argumentCallback:a=>Number(a)-1}),month:Be({values:XX,defaultWidth:"wide"}),day:Be({values:ZX,defaultWidth:"wide"}),dayPeriod:Be({values:e7,defaultWidth:"wide",formattingValues:a7,defaultFormattingWidth:"wide"})},t7=/^(\d+)(º)?/i,r7=/\d+/i,s7={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,wide:/^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i},n7={any:[/^ac/i,/^dc/i],wide:[/^(antes de cristo|antes de la era com[uú]n)/i,/^(despu[eé]s de cristo|era com[uú]n)/i]},c7={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},d7={any:[/1/i,/2/i,/3/i,/4/i]},l7={narrow:/^[efmajsond]/i,abbreviated:/^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,wide:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i},u7={narrow:[/^e/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^en/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i]},m7={narrow:/^[dlmjvs]/i,short:/^(do|lu|ma|mi|ju|vi|s[áa])/i,abbreviated:/^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,wide:/^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i},p7={narrow:[/^d/i,/^l/i,/^m/i,/^m/i,/^j/i,/^v/i,/^s/i],any:[/^do/i,/^lu/i,/^ma/i,/^mi/i,/^ju/i,/^vi/i,/^sa/i]},g7={narrow:/^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,any:/^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i},h7={any:{am:/^a/i,pm:/^p/i,midnight:/^mn/i,noon:/^md/i,morning:/mañana/i,afternoon:/tarde/i,evening:/tarde/i,night:/noche/i}},f7={ordinalNumber:Ql({matchPattern:t7,parsePattern:r7,valueCallback:function(a){return parseInt(a,10)}}),era:Fe({matchPatterns:s7,defaultMatchWidth:"wide",parsePatterns:n7,defaultParseWidth:"any"}),quarter:Fe({matchPatterns:c7,defaultMatchWidth:"wide",parsePatterns:d7,defaultParseWidth:"any",valueCallback:a=>a+1}),month:Fe({matchPatterns:l7,defaultMatchWidth:"wide",parsePatterns:u7,defaultParseWidth:"any"}),day:Fe({matchPatterns:m7,defaultMatchWidth:"wide",parsePatterns:p7,defaultParseWidth:"any"}),dayPeriod:Fe({matchPatterns:g7,defaultMatchWidth:"any",parsePatterns:h7,defaultParseWidth:"any"})},v7={code:"es",formatDistance:FX,formatLong:HX,formatRelative:KX,localize:i7,match:f7,options:{weekStartsOn:1,firstWeekContainsDate:1}},b7={lessThanXSeconds:{one:"menos de um segundo",other:"menos de {{count}} segundos"},xSeconds:{one:"1 segundo",other:"{{count}} segundos"},halfAMinute:"meio minuto",lessThanXMinutes:{one:"menos de um minuto",other:"menos de {{count}} minutos"},xMinutes:{one:"1 minuto",other:"{{count}} minutos"},aboutXHours:{one:"cerca de 1 hora",other:"cerca de {{count}} horas"},xHours:{one:"1 hora",other:"{{count}} horas"},xDays:{one:"1 dia",other:"{{count}} dias"},aboutXWeeks:{one:"cerca de 1 semana",other:"cerca de {{count}} semanas"},xWeeks:{one:"1 semana",other:"{{count}} semanas"},aboutXMonths:{one:"cerca de 1 mês",other:"cerca de {{count}} meses"},xMonths:{one:"1 mês",other:"{{count}} meses"},aboutXYears:{one:"cerca de 1 ano",other:"cerca de {{count}} anos"},xYears:{one:"1 ano",other:"{{count}} anos"},overXYears:{one:"mais de 1 ano",other:"mais de {{count}} anos"},almostXYears:{one:"quase 1 ano",other:"quase {{count}} anos"}},A7=(a,e,o)=>{let i;const t=b7[a];
488return typeof t=="string"?i=t:e===1?i=t.one:i=t.other.replace("{{count}}",String(e)),o!=null&&o.addSuffix?o.comparison&&o.comparison>0?"em "+i:"há "+i:i},y7={full:"EEEE, d 'de' MMMM 'de' y",long:"d 'de' MMMM 'de' y",medium:"d MMM y",short:"dd/MM/yyyy"},S7={full:"HH:mm:ss zzzz",long:"HH:mm:ss z",medium:"HH:mm:ss",short:"HH:mm"},E7={full:"{{date}} 'à s' {{time}}",long:"{{date}} 'à s' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},C7={date:Ka({formats:y7,defaultWidth:"full"}),time:Ka({formats:S7,defaultWidth:"full"}),dateTime:Ka({formats:E7,defaultWidth:"full"})},T7={lastWeek:a=>{const e=a.getDay();return"'"+(e===0||e===6?"último":"última")+"' eeee 'à s' p"},yesterday:"'ontem à s' p",today:"'hoje à s' p",tomorrow:"'amanhã à s' p",nextWeek:"eeee 'à s' p",other:"P"},P7=(a,e,o,i)=>{const t=T7[a];return typeof t=="function"?t(e):t},R7={narrow:["AC","DC"],abbreviated:["AC","DC"],wide:["antes de cristo","depois de cristo"]},x7={narrow:["1","2","3","4"],abbreviated:["T1","T2","T3","T4"],wide:["1º trimestre","2º trimestre","3º trimestre","4º trimestre"]},w7={narrow:["j","f","m","a","m","j","j","a","s","o","n","d"],abbreviated:["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez"],wide:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]},I7={narrow:["D","S","T","Q","Q","S","S"],short:["dom","seg","ter","qua","qui","sex","sab"],abbreviated:["domingo","segunda","terça","quarta","quinta","sexta","sábado"],wide:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"]},D7={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"manhã",afternoon:"tarde",evening:"tarde",night:"noite"}},O7={narrow:{am:"a",pm:"p",midnight:"mn",noon:"md",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},abbreviated:{am:"AM",pm:"PM",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"},wide:{am:"a.m.",pm:"p.m.",midnight:"meia-noite",noon:"meio-dia",morning:"da manhã",afternoon:"da tarde",evening:"da tarde",night:"da noite"}},M7=(a,e)=>{const o=Number(a);return(e==null?void 0:e.unit)==="week"?o+"ª":o+"º"},N7={ordinalNumber:M7,era:Be({values:R7,defaultWidth:"wide"}),quarter:Be({values:x7,defaultWidth:"wide",argumentCallback:a=>a-1}),month:Be({values:w7,defaultWidth:"wide"}),day:Be({values:I7,defaultWidth:"wide"}),dayPeriod:Be({values:D7,defaultWidth:"wide",formattingValues:O7,defaultFormattingWidth:"wide"})},z7=/^(\d+)[ºªo]?/i,j7=/\d+/i,k7={narrow:/^(ac|dc|a|d)/i,abbreviated:/^(a\.?\s?c\.?|d\.?\s?c\.?)/i,wide:/^(antes de cristo|depois de cristo)/i},_7={any:[/^ac/i,/^dc/i],wide:[/^antes de cristo/i,/^depois de cristo/i]},q7={narrow:/^[1234]/i,abbreviated:/^T[1234]/i,wide:/^[1234](º)? trimestre/i},L7={any:[/1/i,/2/i,/3/i,/4/i]},U7={narrow:/^[jfmajsond]/i,abbreviated:/^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,wide:/^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i},B7={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^fev/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dez/i]},F7={narrow:/^(dom|[23456]ª?|s[aá]b)/i,short:/^(dom|[23456]ª?|s[aá]b)/i,abbreviated:/^(dom|seg|ter|qua|qui|sex|s[aá]b)/i,wide:/^(domingo|(segunda|ter[cç]a|quarta|quinta|sexta)([- ]feira)?|s[aá]bado)/i},G7={short:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],narrow:[/^d/i,/^2/i,/^3/i,/^4/i,/^5/i,/^6/i,/^s[aá]/i],any:[/^d/i,/^seg/i,/^t/i,/^qua/i,/^qui/i,/^sex/i,/^s[aá]b/i]},V7={narrow:/^(a|p|mn|md|(da) (manhã|tarde|noite))/i,any:/^([ap]\.?\s?m\.?|meia[-\s]noite|meio[-\s]dia|(d
vendor: 10,080 bytes, line 488
488a) (manhã|tarde|noite))/i},$7={any:{am:/^a/i,pm:/^p/i,midnight:/^mn|^meia[-\s]noite/i,noon:/^md|^meio[-\s]dia/i,morning:/manhã/i,afternoon:/tarde/i,evening:/tarde/i,night:/noite/i}},H7={ordinalNumber:Ql({matchPattern:z7,parsePattern:j7,valueCallback:a=>parseInt(a,10)}),era:Fe({matchPatterns:k7,defaultMatchWidth:"wide",parsePatterns:_7,defaultParseWidth:"any"}),quarter:Fe({matchPatterns:q7,defaultMatchWidth:"wide",parsePatterns:L7,defaultParseWidth:"any",valueCallback:a=>a+1}),month:Fe({matchPatterns:U7,defaultMatchWidth:"wide",parsePatterns:B7,defaultParseWidth:"any"}),day:Fe({matchPatterns:F7,defaultMatchWidth:"wide",parsePatterns:G7,defaultParseWidth:"any"}),dayPeriod:Fe({matchPatterns:V7,defaultMatchWidth:"any",parsePatterns:$7,defaultParseWidth:"any"})},W7={code:"pt-BR",formatDistance:A7,formatLong:C7,formatRelative:P7,localize:N7,match:H7,options:{weekStartsOn:0,firstWeekContainsDate:1}},Q7=()=>{const a=ce.language||"pt-BR";return a.startsWith("en")?cy:a.startsWith("es")?v7:W7},Nse=()=>{const a=ce.language||"pt-BR";return a.startsWith("en")?"en-US":a.startsWith("es")?"es-ES":"pt-BR"};function K7(a,e){return h.useReducer((o,i)=>e[o][i]??o,a)}var Kl="ScrollArea",[dy,zse]=Ze(Kl),[Y7,ua]=dy(Kl),ly=h.forwardRef((a,e)=>{const{__scopeScrollArea:o,type:i="hover",dir:t,scrollHideDelay:r=600,...s}=a,[n,c]=h.useState(null),[d,u]=h.useState(null),[m,g]=h.useState(null),[p,f]=h.useState(null),[v,b]=h.useState(null),[S,A]=h.useState(0),[y,E]=h.useState(0),[C,P]=h.useState(!1),[R,I]=h.useState(!1),x=ne(e,L=>c(L)),w=rr(t);return l.jsx(Y7,{scope:o,type:i,dir:w,scrollHideDelay:r,scrollArea:n,viewport:d,onViewportChange:u,content:m,onContentChange:g,scrollbarX:p,onScrollbarXChange:f,scrollbarXEnabled:C,onScrollbarXEnabledChange:P,scrollbarY:v,onScrollbarYChange:b,scrollbarYEnabled:R,onScrollbarYEnabledChange:I,onCornerWidthChange:A,onCornerHeightChange:E,children:l.jsx(J.div,{dir:w,...s,ref:x,style:{position:"relative","--radix-scroll-area-corner-width":S+"px","--radix-scroll-area-corner-height":y+"px",...a.style}})})});ly.displayName=Kl;var uy="ScrollAreaViewport",my=h.forwardRef((a,e)=>{const{__scopeScrollArea:o,children:i,nonce:t,...r}=a,s=ua(uy,o),n=h.useRef(null),c=ne(e,n,s.onViewportChange);return l.jsxs(l.Fragment,{children:[l.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:t}),l.jsx(J.div,{"data-radix-scroll-area-viewport":"",...r,ref:c,style:{overflowX:s.scrollbarXEnabled?"scroll":"hidden",overflowY:s.scrollbarYEnabled?"scroll":"hidden",...a.style},children:l.jsx("div",{ref:s.onContentChange,style:{minWidth:"100%",display:"table"},children:i})})]})});my.displayName=uy;var Ba="ScrollAreaScrollbar",Yl=h.forwardRef((a,e)=>{const{forceMount:o,...i}=a,t=ua(Ba,a.__scopeScrollArea),{onScrollbarXEnabledChange:r,onScrollbarYEnabledChange:s}=t,n=a.orientation==="horizontal";return h.useEffect(()=>(n?r(!0):s(!0),()=>{n?r(!1):s(!1)}),[n,r,s]),t.type==="hover"?l.jsx(J7,{...i,ref:e,forceMount:o}):t.type==="scroll"?l.jsx(X7,{...i,ref:e,forceMount:o}):t.type==="auto"?l.jsx(py,{...i,ref:e,forceMount:o}):t.type==="always"?l.jsx(Jl,{...i,ref:e}):null});Yl.displayName=Ba;var J7=h.forwardRef((a,e)=>{const{forceMount:o,...i}=a,t=ua(Ba,a.__scopeScrollArea),[r,s]=h.useState(!1);return h.useEffect(()=>{const n=t.scrollArea;let c=0;if(n){const d=()=>{window.clearTimeout(c),s(!0)},u=()=>{c=window.setTimeout(()=>s(!1),t.scrollHideDelay)};return n.addEventListener("pointerenter",d),n.addEventListener("pointerleave",u),()=>{window.clearTimeout(c),n.removeEventListener("pointerenter",d),n.removeEventListener("pointerleave",u)}}},[t.scrollArea,t.scrollHideDelay]),l.jsx($e,{present:o||r,children:l.jsx(py,{"data-state":r?"visible":"hidden",...i,ref:e})})}),X7=h.forwardRef((a,e)=>{const{forceMount:o,...i}=a,t=ua(Ba,a.__scopeScrollArea),r=a.orientation==="horizontal",s=Pn(()=>c("SCROLL_END"),100),[n,c]=K7("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return h.useEffect(()=>{if(n==="idle"){const d=window.setTimeout(()=>c("HIDE"),t.scrollHideDelay);return()=>window.clearTimeout(d)}},[n,t.scrollHideDelay,c]),h.useEffect(()=>{const d=t.viewport,u=r?"scrollLeft":"scrollTop";if(d){let m=d[u];const g=()=>{const p=d[u];m!==p&&(c("SCROLL"),s()),m=p};return d.addEventListener("scroll",g),()=>d.removeEventListener("scroll",g)}},[t.viewport,r,c,s]),l.jsx($e,{present:o||n!=="hidden",children:l.jsx(Jl,{"data-state":n==="hidden"?"hidden":"visible",...i,ref:e,onPointerEnter:U(a.onPointerEnter,()=>c("POINTER_ENTER")),onPointerLeave:U(a.onPointerLeave,()=>c("POINTER_LEAVE"))})})}),py=h.forwardRef((a,e)=>{const o=ua(Ba,a.__scopeScrollArea),{forceMount:i,...t}=a,[r,s]=h.useState(!1),n=a.orientation==="horizontal",c=Pn(()=>{if(o.viewport){const d=o.viewport.offsetWidth<o.viewport.scrollWidth,u=o.viewport.offsetHeight<o.viewport.scrollHeight;s(n?d:u)}},10);return ji(o.viewport,c),ji(o.content,c),l.jsx($e,{present:i||r,children:l.jsx(Jl,{"data-state":r?"visible":"hidden",...t,ref:e})})}),Jl=h.forwardRef((a,e)=>{const{orientation:o="vertical",...i}=a,t=ua(Ba,a.__scopeScrollArea),r=h.useRef(null),s=h.useRef(0),[n,c]=h.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=by(n.viewport,n.content),u={...i,sizes:n,onSizesChange:c,hasThumb:d>0&&d<1,onThumbChange:g=>r.current=g,onThumbPointerUp:()=>s.current=0,onThumbPointerDown:g=>s.current=g};function m(g,p){return tZ(g,s.current,n,p)}return o==="horizontal"?l.jsx(Z7,{...u,ref:e,onThumbPositionChange:()=>{if(t.viewport&&r.current){const g=t.viewport.scrollLeft,p=yp(g,n,t.dir);r.current.style.transform=`translate3d(${p}px, 0, 0)`}},onWheelScroll:g=>{t.viewport&&(t.viewport.scrollLeft=g)},onDragScroll:g=>{t.viewport&&(t.viewport.scrollLeft=m(g,t.dir))}}):o==="vertical"?l.jsx(eZ,{...u,ref:e,onThumbPositionChange:()=>{if(t.viewport&&r.current){const g=t.viewport.scrollTop,p=yp(g,n);r.current.style.transform=`translate3d(0, ${p}px, 0)`}},onWheelScroll:g=>{t.viewport&&(t.viewport.scrollTop=g)},onDragScroll:g=>{t.viewport&&(t.viewport.scrollTop=m(g))}}):null}),Z7=h.forwardRef((a,e)=>{const{sizes:o,onSizesChange:i,...t}=a,r=ua(Ba,a.__scopeScrollArea),[s,n]=h.useState(),c=h.useRef(null),d=ne(e,c,r.onScrollbarXChange);return h.useEffect(()=>{c.current&&n(getComputedStyle(c.current))},[c]),l.jsx(hy,{"data-orientation":"horizontal",...t,ref:d,sizes:o,style:{bottom:0,left:r.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:r.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Tn(o)+"px",...a.style},onThumbPointerDown:u=>a.onThumbPointerDown(u.x),onDragScroll:u=>a.onDragScroll(u.x),onWheelScroll:(u,m)=>{if(r.viewport){const g=r.viewport.scrollLeft+u.deltaX;a.onWheelScroll(g),yy(g,m)&&u.preventDefault()}},onResize:()=>{c.current&&r.viewport&&s&&i({content:r.viewport.scrollWidth,viewport:r.viewport.offsetWidth,scrollbar:{size:c.current.clientWidth,paddingStart:xs(s.paddingLeft),paddingEnd:xs(s.paddingRight)}})}})}),eZ=h.forwardRef((a,e)=>{const{sizes:o,onSizesChange:i,...t}=a,r=ua(Ba,a.__scopeScrollArea),[s,n]=h.useState(),c=h.useRef(null),d=ne(e,c,r.onScrollbarYChange);return h.useEffect(()=>{c.current&&n(getComputedStyle(c.current))},[c]),l.jsx(hy,{"data-orientation":"vertical",...t,ref:d,sizes:o,style:{top:0,right:r.dir==="ltr"?0:void 0,left:r.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Tn(o)+"px",...a.style},onThumbPointerDown:u=>a.onThumbPointerDown(u.y),onDragScroll:u=>a.onDragScroll(u.y),onWheelScroll:(u,m)=>{if(r.viewport){const g=r.viewport.scrollTop+u.deltaY;a.onWheelScroll(g),yy(g,m)&&u.preventDefault()}},onResize:()=>{c.current&&r.viewport&&s&&i({content:r.viewport.scrollHeight,viewport:r.viewport.offsetHeight,scrollbar:{size:c.current.clientHeight,paddingStart:xs(s.paddingTop),paddingEnd:xs(s.paddingBottom)}})}})}),[aZ,gy]=dy(Ba),hy=h.forwardRef((a,e)=>{const{__scopeScrollArea:o,sizes:i,hasThumb:t,onThumbChange:r,onThumbPointerUp:s,onThumbPointerDown:n,onThumbPositionChange:c,onDragScroll:d,onWheelScroll:u,onResize:m,...g}=a,p=ua(Ba,o),[f,v]=h.useState(null),b=ne(e,x=>v(x)),S=h.useRef(null),A=h.useRef(""),y=p.viewport,E=i.content-i.viewport,C=Ce(u),P=Ce(c),R=Pn(m,10);function I(x){if(S.current){const w=x.clientX-S.current.left,L=x.clientY-S.current.top;d({x:w,y:L})}}return h.useEffect(()=>{const x=w=>{const L=w.target;(f==null?void 0:f.contains(L))&&C(w,E)};return document.addEventListener("wheel",x,{passive:!1}),()=>document.removeEventListener("wheel",x,{passive:!1})},[y,f,E,C]),h.useEffect(P,[i,P]),ji(f,R),ji(p.content,R),l.jsx(aZ,{scope:o,scrollbar:f,hasThumb:t,onThumbChange:Ce(r),onThumbPointerUp:Ce(s),onThumbPositionChange:P,onThumbPointerDown:Ce(n),children:l.jsx(J.div,{...g,ref:b,style:{position:"absolute",...g.style},onPointerDown:U(a.onPointerDown,x=>{x.button===0&&(x.target.setPointerCapture(x.pointerId),S.current=f.getBoundingClientRect(),A.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",p.viewport&&(p.viewport.style.scrollBehavior="auto"),I(x))}),onPointerMove:U(a.onPointerMove,I),onPointerUp:U(a.onPointerUp,x=>{const w=x.target;w.hasPointerCapture(x.pointerId)&&w.releasePointerCapture(x.pointerId),document.body.style.webkitUserSelect=A.current,p.viewport&&(p.viewport.style.scrollBehavior=""),S.current=null})})})}),Rs="ScrollAreaThumb",fy=h.forwardRef((a,e)=>{const{forceMount:o,...i}=a,t=gy(Rs,a.__scopeScrollArea);return l.jsx($e,{present:o||t.hasThumb,children:l.jsx(oZ,{ref:e,...i})})}),oZ=h.forwardRef((a,e)=>{const{__scopeScrollArea:o,style:i,...t}=a,r=ua(Rs,o),s=gy(Rs,o),{onThumbPositionChange:n}=s,c=ne(e,m=>s.onThumbChange(m)),d=h.useRef(void 0),u=Pn(()=>{d.current&&(d.current(),d.current=void 0)},100);return h.useEffect(()=>{const m=r.viewport;if(m){const g=()=>
vendor: 4,213 bytes, line 488
488{if(u(),!d.current){const p=rZ(m,n);d.current=p,n()}};return n(),m.addEventListener("scroll",g),()=>m.removeEventListener("scroll",g)}},[r.viewport,u,n]),l.jsx(J.div,{"data-state":s.hasThumb?"visible":"hidden",...t,ref:c,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...i},onPointerDownCapture:U(a.onPointerDownCapture,m=>{const p=m.target.getBoundingClientRect(),f=m.clientX-p.left,v=m.clientY-p.top;s.onThumbPointerDown({x:f,y:v})}),onPointerUp:U(a.onPointerUp,s.onThumbPointerUp)})});fy.displayName=Rs;var Xl="ScrollAreaCorner",vy=h.forwardRef((a,e)=>{const o=ua(Xl,a.__scopeScrollArea),i=!!(o.scrollbarX&&o.scrollbarY);return o.type!=="scroll"&&i?l.jsx(iZ,{...a,ref:e}):null});vy.displayName=Xl;var iZ=h.forwardRef((a,e)=>{const{__scopeScrollArea:o,...i}=a,t=ua(Xl,o),[r,s]=h.useState(0),[n,c]=h.useState(0),d=!!(r&&n);return ji(t.scrollbarX,()=>{var m;const u=((m=t.scrollbarX)==null?void 0:m.offsetHeight)||0;t.onCornerHeightChange(u),c(u)}),ji(t.scrollbarY,()=>{var m;const u=((m=t.scrollbarY)==null?void 0:m.offsetWidth)||0;t.onCornerWidthChange(u),s(u)}),d?l.jsx(J.div,{...i,ref:e,style:{width:r,height:n,position:"absolute",right:t.dir==="ltr"?0:void 0,left:t.dir==="rtl"?0:void 0,bottom:0,...a.style}}):null});function xs(a){return a?parseInt(a,10):0}function by(a,e){const o=a/e;return isNaN(o)?0:o}function Tn(a){const e=by(a.viewport,a.content),o=a.scrollbar.paddingStart+a.scrollbar.paddingEnd,i=(a.scrollbar.size-o)*e;return Math.max(i,18)}function tZ(a,e,o,i="ltr"){const t=Tn(o),r=t/2,s=e||r,n=t-s,c=o.scrollbar.paddingStart+s,d=o.scrollbar.size-o.scrollbar.paddingEnd-n,u=o.content-o.viewport,m=i==="ltr"?[0,u]:[u*-1,0];return Ay([c,d],m)(a)}function yp(a,e,o="ltr"){const i=Tn(e),t=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=e.scrollbar.size-t,s=e.content-e.viewport,n=r-i,c=o==="ltr"?[0,s]:[s*-1,0],d=ld(a,c);return Ay([0,s],[0,n])(d)}function Ay(a,e){return o=>{if(a[0]===a[1]||e[0]===e[1])return e[0];const i=(e[1]-e[0])/(a[1]-a[0]);return e[0]+i*(o-a[0])}}function yy(a,e){return a>0&&a<e}var rZ=(a,e=()=>{})=>{let o={left:a.scrollLeft,top:a.scrollTop},i=0;return function t(){const r={left:a.scrollLeft,top:a.scrollTop},s=o.left!==r.left,n=o.top!==r.top;(s||n)&&e(),o=r,i=window.requestAnimationFrame(t)}(),()=>window.cancelAnimationFrame(i)};function Pn(a,e){const o=Ce(a),i=h.useRef(0);return h.useEffect(()=>()=>window.clearTimeout(i.current),[]),h.useCallback(()=>{window.clearTimeout(i.current),i.current=window.setTimeout(o,e)},[o,e])}function ji(a,e){const o=Ce(e);we(()=>{let i=0;if(a){const t=new ResizeObserver(()=>{cancelAnimationFrame(i),i=window.requestAnimationFrame(o)});return t.observe(a),()=>{window.cancelAnimationFrame(i),t.unobserve(a)}}},[a,o])}var Sy=ly,sZ=my,nZ=vy;const Ey=h.forwardRef(({className:a,children:e,...o},i)=>l.jsxs(Sy,{ref:i,className:$("relative overflow-hidden",a),...o,children:[l.jsx(sZ,{className:"h-full w-full rounded-[inherit]",children:e}),l.jsx(Cy,{}),l.jsx(nZ,{})]}));Ey.displayName=Sy.displayName;const Cy=h.forwardRef(({className:a,orientation:e="vertical",...o},i)=>l.jsx(Yl,{ref:i,orientation:e,className:$("flex touch-none select-none transition-colors",e==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",e==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",a),...o,children:l.jsx(fy,{className:"relative flex-1 rounded-full bg-border"})}));Cy.displayName=Yl.displayName;function cZ(){return Li({queryKey:["notifications"],queryFn:async()=>{var t,r,s;const[a,e,o]=await Promise.all([ie.from("assessments").select("id, title, status, created_at, calculated_at, destinations(name)").order("created_at",{ascending:!1}).limit(5),ie.from("issues").select("id, title, severity, created_at, assessment_id").eq("severity","CRITICO").order("created_at",{ascending:!1}).limit(5),ie.from("alerts").select("id, pillar, consecutive_cycles, message, created_at, is_read, is_dismissed, destination_id, destinations(name)").eq("is_dismissed",!1).order("created_at",{ascending:!1}).limit(10)]),i=[];return(t=o.data)==null||t.forEach(n=>{const c=n.destinations;i.push({id:`alert-${n.id}`,type:"regression_alert",title:`Regressão Consecutiva: ${n.pillar}
488`,description:`${(c==null?void 0:c.name)||"Destino"}: ${n.consecutive_cycles} ciclos de regressão no pilar ${n.pillar}`,timestamp:n.created_at,read:n.is_read,entityId:n.destination_id,severity:n.consecutive_cycles>=3?"critical":"warning",alertId:n.id})}),(r=a.data)==null||r.forEach(n=>{const c=n.destinations;n.status==="CALCULATED"&&n.calculated_at?i.push({id:`calc-${n.id}`,type:"assessment_calculated",title:"Diagnóstico calculado",description:`${n.title} - ${(c==null?void 0:c.name)||"Destino"} foi calculado`,timestamp:n.calculated_at,read:!1,entityId:n.id,severity:"info"}):i.push({id:`created-${n.id}`,type:"assessment_created",title:"Novo diagnóstico",description:`${n.title} - ${(c==null?void 0:c.name)||"Destino"} criado`,timestamp:n.created_at,read:!1,entityId:n.id,severity:"info"})}),(s=e.data)==null||s.forEach(n=>{i.push({id:`issue-${n.id}`,type:"issue_detected",title:"Gargalo crÃtico detectado",description:n.title,timestamp:n.created_at,read:!1,entityId:n.assessment_id,severity:"warning"})}),i.sort((n,c)=>new Date(c.timestamp).getTime()-new Date(n.timestamp).getTime()),i.slice(0,15)},refetchInterval:6e4})}function dZ(){const a=Gs();return al({mutationFn:async e=>{const{error:o}=await ie.from("alerts").update({is_dismissed:!0}).eq("id",e);if(o)throw o},onSuccess:()=>{a.invalidateQueries({queryKey:["notifications"]})}})}function lZ(a,e){return a instanceof Date?new a.constructor(e):new Date(e)}const jse=6048e5,kse=864e5,_se=6e4,qse=36e5,kr=43200,Sp=1440;function Ep(a){const e=ke(a),o=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return o.setUTCFullYear(e.getFullYear()),+a-+o}function Zr(a,e){const o=ke(a),i=ke(e),t=o.getTime()-i.getTime();return t<0?-1:t>0?1:t}function uZ(a){return lZ(a,Date.now())}function mZ(a,e){const o=ke(a),i=ke(e),t=o.getFullYear()-i.getFullYear(),r=o.getMonth()-i.getMonth();return t*12+r}function pZ(a){return e=>{const i=(a?Math[a]:Math.trunc)(e);return i===0?0:i}}function gZ(a,e){return+ke(a)-+ke(e)}function hZ(a){const e=ke(a);return e.setHours(23,59,59,999),e}function fZ(a){const e=ke(a),o=e.getMonth();return e.setFullYear(e.getFullYear(),o+1,0),e.setHours(23,59,59,999),e}function vZ(a){const e=ke(a);return+hZ(e)==+fZ(e)}function bZ(a,e){const o=ke(a),i=ke(e),t=Zr(o,i),r=Math.abs(mZ(o,i));let s;if(r<1)s=0;else{o.getMonth()===1&&o.getDate()>27&&o.setDate(30),o.setMonth(o.getMonth()-t*r);let n=Zr(o,i)===-t;vZ(ke(a))&&r===1&&Zr(a,i)===1&&(n=!1),s=t*(r-Number(n))}return s===0?0:s}function AZ(a,e,o){const i=gZ(a,e)/1e3;return pZ(o==null?void 0:o.roundingMethod)(i)}function yZ(a,e,o){const i=uX(),t=(o==null?void 0:o.locale)??i.locale??cy,r=2520,s=Zr(a,e);if(isNaN(s))throw new RangeError("Invalid time value");const n=Object.assign({},o,{addSuffix:o==null?void 0:o.addSuffix,comparison:s});let c,d;s>0?(c=ke(e),d=ke(a)):(c=ke(a),d=ke(e));const u=AZ(d,c),m=(Ep(d)-Ep(c))/1e3,g=Math.round((u-m)/60);let p;if(g<2)return o!=null&&o.includeSeconds?u<5?t.formatDistance("lessThanXSeconds",5,n):u<10?t.formatDistance("lessThanXSeconds",10,n):u<20?t.formatDistance("lessThanXSeconds",20,n):u<40?t.formatDistance("halfAMinute",0,n):u<60?t.formatDistance("lessThanXMinutes",1,n):t.formatDistance("xMinutes",1,n):g===0?t.formatDistance("lessThanXMinutes",1,n):t.formatDistance("xMinutes",g,n);if(g<45)return t.formatDistance("xMinutes",g,n);if(g<90)return t.formatDistance("aboutXHours",1,n);if(g<Sp){const f=Math.round(g/60);return t.formatDistance("aboutXHours",f,n)}else{if(g<r)return t.formatDistance("xDays",1,n);if(g<kr){const f=Math.round(g/Sp);return t.formatDistance("xDays",f,n)}else if(g<kr*2)return p=Math.round(g/kr),t.formatDistance("aboutXMonths",p,n)}if(p=bZ(d,c),p<12){const f=Math.round(g/kr);return t.formatDistance("xMonths",f,n)}else{const f=p%12,v=Math.trunc(p/12);return f<3?t.formatDistance("aboutXYears",v,n):f<9?t.formatDistance("overXYears",v,n):t.formatDistance("almostXYears",v+1,n)}}function SZ(a,e){return yZ(a,uZ(a),e)}const EZ={assessment_created:Ls,assessment_calculated:GE,data_imported:th,issue_detected:rh,regression_alert:Dc}
488,CZ={assessment_created:"text-primary",assessment_calculated:"text-severity-good",data_imported:"text-accent",issue_detected:"text-severity-critical",regression_alert:"text-severity-critical"};function TZ(){const{data:a=[],isLoading:e}=cZ(),o=dZ(),i=qi(),t=a.filter(d=>!d.read).length,r=a.filter(d=>d.type==="regression_alert"),s=d=>{d.entityId&&(d.type==="regression_alert"?i("/destinos"):(d.type==="issue_detected"||d.type==="assessment_calculated"||d.type==="assessment_created")&&i(`/diagnosticos/${d.entityId}`))},n=(d,u)=>{d.stopPropagation(),o.mutate(u)},c=d=>{try{return SZ(new Date(d),{addSuffix:!0,locale:Q7()})}catch{return""}};return l.jsxs(Vl,{children:[l.jsx($l,{asChild:!0,children:l.jsxs(Ae,{variant:"ghost",size:"icon",className:"relative",children:[l.jsx(FE,{className:"h-5 w-5 text-muted-foreground"}),t>0&&l.jsx("span",{className:"absolute -top-0.5 -right-0.5 h-4 w-4 rounded-full bg-severity-critical text-[10px] font-bold text-white flex items-center justify-center",children:t>9?"9+":t})]})}),l.jsxs(Cn,{align:"end",className:"w-96",children:[l.jsxs(Hl,{className:"flex items-center justify-between",children:[l.jsx("span",{children:k("Notificações")}),t>0&&l.jsx("span",{className:"text-xs text-muted-foreground",children:k("{{v0}} novas",{v0:t})})]}),r.length>0&&l.jsxs(l.Fragment,{children:[l.jsx(wi,{}),l.jsx("div",{className:"px-2 py-1.5",children:l.jsxs("span",{className:"text-xs font-semibold text-severity-critical flex items-center gap-1",children:[l.jsx(Dc,{className:"h-3 w-3"}),k("Alertas de Regressão")]})}),r.map(d=>l.jsxs("div",{className:"flex items-start gap-3 p-3 mx-1 mb-1 rounded-md bg-severity-critical/10 border border-severity-critical/20 cursor-pointer hover:bg-severity-critical/15 transition-colors",onClick:()=>s(d),children:[l.jsx("div",{className:"mt-0.5 text-severity-critical",children:l.jsx(Dc,{className:"h-4 w-4"})}),l.jsxs("div",{className:"flex-1 space-y-1",children:[l.jsxs("div",{className:"flex items-center gap-2",children:[l.jsx("p",{className:"text-sm font-medium leading-none text-severity-critical",children:d.title}),d.severity==="critical"&&l.jsx(bo,{variant:"destructive",className:"text-[10px] px-1 py-0",children:k("Urgente")})]}),l.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:d.description}),l.jsx("p",{className:"text-xs text-muted-foreground/70",children:c(d.timestamp)})]}),d.alertId&&l.jsx(Ae,{variant:"ghost",size:"icon",className:"h-6 w-6 shrink-0 hover:bg-severity-critical/20",onClick:u=>n(u,d.alertId),children:l.jsx($t,{className:"h-3 w-3"})})]},d.id))]}),l.jsx(wi,{}),l.jsx(Ey,{className:"h-64",children:e?l.jsx("div",{className:"p-4 text-center text-sm text-muted-foreground",children:k("Carregando...")}):a.filter(d=>d.type!=="regression_alert").length===0?l.jsx("div",{className:"p-4 text-center text-sm text-muted-foreground",children:k("Nenhuma outra notificação")}):a.filter(d=>d.type!=="regression_alert").map(d=>{const u=EZ[d.type],m=CZ[d.type];return l.jsxs(go,{className:"flex items-start gap-3 p-3 cursor-pointer",onClick:()=>s(d),children:[l.jsx("div",{className:$("mt-0.5",m),children:l.jsx(u,{className:"h-4 w-4"})}),l.jsxs("div",{className:"flex-1 space-y-1",children:[l.jsx("p",{className:"text-sm font-medium leading-none",children:d.title}),l.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:d.description}),l.jsx("p",{className:"text-xs text-muted-foreground/70",children:c(d.timestamp)})]})]},d.id)})}),a.length>0&&l.jsxs(l.Fragment,{children:[l.jsx(wi,{}),l.jsx(go,{className:"text-center text-sm text-primary cursor-pointer",onClick:()=>i("/diagnosticos"),children:k("Ver todas atividades")})]})]})]})}function PZ({open:a,onOpenChange:e}){const{updatePassword:o}=ze(),[i,t]=h.useState(""),[r,s]=h.useState(""),[n,c]=h.useState(!1),[d,u]=h.useState(!1),m=async p=>{if(p.preventDefault(),i.length<6){Ee.error(k("A senha deve ter pelo menos 6 caracteres"));return}if(i!==r){Ee.error(k("As senhas não coincidem"));return}u(!0);const{error:f}=await o(i);u(!1),f?Ee.error(k("Erro ao alterar senha: ")+f.message):(Ee.success(k("Senha alterada com sucesso!")),t(""),s(""),e(!1))},g=p=>{p||(t(""),s("")),e(p)};return l.jsx(hn,{open:a,onOpenChange:g,children:l.jsxs(ar,{className:"sm:max-w-md",children:[l.jsxs(or,{children:[l.jsxs(ir,{className:"flex items-center gap-2",children:[l.jsx(Wt,{className:"h-5 w-5 text-primary"}),k("Alterar Senha")]}),l.jsx(tr,{children:k("Digite sua nova senha. Ela deve ter pelo menos 6 caracteres.")})]}),l.jsxs("form",{onSubmit:m,children:[l.jsxs("div",{className:"space-y-4 py-4",children:[l.jsxs("div",{className:"space-y-2",children:[l.jsx(Ye,{htmlFor:"new-password",children:k("Nova Senha")}),l.jsxs("div",{className:"relative",children:[l.jsx(Uo,{id:"new-password",type:n?"text":"password",value:i,onChange:p=>t(p.target.value),placeholder:k("Digite a nova senha"),required:!0,minLength:6}),l.jsx(Ae,{type:"button",variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-full px-3 hover:bg-transparent",onClick:()=>c(!n),children:n?l.jsx(VE,{className:"h-4 w-4 text-muted-foreground"}):l.jsx($E,{className:"h-4 w-4 text-muted-foreground"})})]})]}),l.jsxs("div",{className:"space-y-2",children:[l.jsx(Ye,{htmlFor:"confirm-password",children:k("Confirmar Nova Senha")}),l.jsx(Uo,{id:"confirm-password",type:n?"text":"password",value:r,onChange:p=>s(p.target.value),placeholder:k("Confirme a nova senha"),required:!0,minLength:6})]})]}),l.jsxs(Ol,{children:[l.jsx(Ae,{type:"button",variant:"outline",onClick:()=>g(!1),disabled:d,children:k("Cancelar")}
488),l.jsxs(Ae,{type:"submit",disabled:d,children:[d&&l.jsx(Qo,{className:"mr-2 h-4 w-4 animate-spin"}),"Alterar Senha"]})]})]})]})})}function RZ({className:a}){const{i18n:e,t:o}=Zt(),i=Ri.find(t=>t.code===e.language)??Ri[0];return l.jsxs(Vl,{children:[l.jsx($l,{asChild:!0,children:l.jsxs(Ae,{variant:"ghost",size:"sm",className:a,"aria-label":o("Idioma"),children:[l.jsx(HE,{className:"h-4 w-4 sm:mr-1.5"}),l.jsx("span",{className:"hidden sm:inline text-xs font-semibold",children:i.short})]})}),l.jsx(Cn,{align:"end",children:Ri.map(t=>l.jsxs(go,{onClick:()=>e.changeLanguage(t.code),children:[l.jsx(el,{className:`mr-2 h-4 w-4 ${t.code===i.code?"opacity-100":"opacity-0"}`}),k(String(t.label??""))]},t.code))})]})}function xZ({title:a,subtitle:e,onMobileMenuClick:o,actions:i}){var R,I;const{user:t,signOut:r}=ze(),{isViewingDemoData:s,isAdmin:n,isOrgAdmin:c,profile:d,roles:u}=la(),m=qi(),{t:g,i18n:p}=Zt(),[f,v]=h.useState(!1),[b,S]=h.useState(!1),A=((R=t==null?void 0:t.app_metadata)==null?void 0:R.provider)&&t.app_metadata.provider!=="email",y=async()=>{await r(),Ee.success(g("Você saiu da sua conta")),m("/auth")},E=()=>{var x,w;return(x=t==null?void 0:t.user_metadata)!=null&&x.full_name?t.user_metadata.full_name.split(" ").map(M=>M[0]).join("").toUpperCase().slice(0,2):((w=t==null?void 0:t.email)==null?void 0:w.slice(0,2).toUpperCase())||"U"},C=()=>{var x,w;return((x=t==null?void 0:t.user_metadata)==null?void 0:x.full_name)||((w=t==null?void 0:t.email)==null?void 0:w.split("@")[0])||"Usuário"},P=x=>({ADMIN:"Administrador",ANALYST:"Analista",VIEWER:"Visualizador",ESTUDANTE:"Estudante",PROFESSOR:"Professor"})[x]||x;return l.jsxs("header",{className:"h-14 md:h-16 border-b border-border bg-card/50 backdrop-blur-sm sticky top-0 z-30",children:[l.jsxs("div",{className:"h-full px-3 sm:px-4 md:px-6 flex items-center justify-between",children:[l.jsxs("div",{className:"flex items-center gap-2 sm:gap-3 min-w-0 flex-1",children:[o&&l.jsx(Ae,{variant:"ghost",size:"icon",className:"md:hidden h-9 w-9",onClick:o,"aria-label":g("Abrir menu"),children:l.jsx(sh,{className:"h-5 w-5"})}),l.jsxs("div",{className:"min-w-0",children:[l.jsxs("div",{className:"flex items-center gap-2",children:[l.jsx("h1",{className:"text-lg md:text-xl font-display font-semibold text-foreground truncate",children:g(a)}),s&&l.jsxs(bo,{variant:"outline",className:"bg-amber-100 text-amber-800 border-amber-300 text-xs shrink-0",children:[l.jsx(th,{className:"h-3 w-3 sm:mr-1"}),l.jsx("span",{className:"hidden sm:inline",children:g("Demo")})]})]}),e&&l.jsx("p",{className:"text-xs md:text-sm text-muted-foreground truncate hidden sm:block",children:g(e)})]})]}),l.jsxs("div",{className:"flex items-center gap-1.5 sm:gap-2 md:gap-4 shrink-0 pl-2",children:[i,l.jsx(RZ,{className:"h-9 px-2"}),l.jsx(TZ,{}),l.jsxs(Vl,{children:[l.jsx($l,{asChild:!0,children:l.jsxs(Ae,{variant:"ghost",className:"gap-2 px-2",children:[l.jsx(bd,{className:"h-8 w-8",children:l.jsx(Ad,{className:"bg-primary text-primary-foreground text-sm font-medium",children:E()})}),l.jsx("span",{className:"hidden md:inline text-sm font-medium",children:C()})]})}),l.jsxs(Cn,{align:"end",className:"w-56",children:[l.jsx(Hl,{children:l.jsxs("div",{className:"flex flex-col",children:[l.jsx("span",{children:C()}),l.jsx("span",{className:"text-xs font-normal text-muted-foreground",children:t==null?void 0:t.email})]})}),l.jsx(wi,{}),l.jsxs(go,{onClick:()=>S(!0),children:[l.jsx(WE,{className:"mr-2 h-4 w-4"}),g("Meu perfil")]}),!A&&l.jsxs(go,{onClick:()=>v(!0),children:[l.jsx(Wt,{className:"mr-2 h-4 w-4"}),g("Alterar Senha")]}),(n||c)&&l.jsxs(go,{onClick:()=>m("/configuracoes"),children:[l.jsx(Bs,{className:"mr-2 h-4 w-4"}),g("Configurações")]}),l.jsx(wi,{}),l.jsx(go,{onClick:y,className:"text-destructive",children:g("Sair")})]})]})]})]}),l.jsx(PZ,{open:f,onOpenChange:v}),l.jsx(hn,{open:b,onOpenChange:S,children:l.jsxs(ar,{className:"sm:max-w-md",children:[l.jsxs(or,{children:[l.jsx(ir,{children:g("Meu Perfil")}),l.jsx(tr,{children:g("Informações da sua conta no SISTUR")})]}),l.jsxs("div",{className:"space-y-4",children:[l.jsxs("div",{className:"flex items-center gap-4",children:[l.jsx(bd,{className:"h-16 w-16",children:l.jsx(Ad,{className:"bg-primary text-primary-foreground text-xl font-medium",children:E()})}),l.jsxs("div",{children:[l.jsx("p",{className:"font-medium text-lg",children:C()}),l.jsx("p",{className:"text-sm text-muted-foreground",children:t==null?void 0:t.email})]})]}),l.jsxs("div",{className:"space-y-3",children:[l.jsxs("div",{className:"space-y-1",children:[l.jsx(Ye,{className:"text-xs text-muted-foreground",children:g("Nome Completo")}),l.jsx(Uo,{value:(d==null?void 0:d.full_name)||((I=t==null?void 0:t.user_metadata)==null?void 0:I.full_name)||g("Não informado"),readOnly:!0,className:"bg-muted"})]}),l.jsxs("div",{className:"space-y-1",children:[l.jsx(Ye,{className:"text-xs text-muted-foreground",children:k("Email")}),l.jsx(Uo,{value:(t==null?void 0:t.email)||"",readOnly:!0,className:"bg-muted"})]}),l.jsxs("div",{className:"space-y-1",children:[l.jsx(Ye,{className:"text-xs text-muted-foreground",children:g("Papéis")}),l.jsx("div",{className:"flex flex-wrap gap-2 mt-1",children:u.length>0?u.map((x,w)=>l.jsx(bo,{variant:"secondary",children:g(P(x.role))},w)):l.jsx("span",{className:"text-sm text-muted-foreground",children:g("Nenhum papel atribuÃdo")})})]}),l.jsxs("div",{className:"space-y-1",children:[l.jsx(Ye,{className:"text-xs text-muted-foreground",children:g("Membro desde")}),l.jsx(Uo,{value:d!=null&&d.created_at?new Date(d.created_at).toLocaleDateString(p.language):"N/A",readOnly:!0,className:"bg-muted"})]})]})]})]})})]})}const wZ=zv,Lse=jv,Cp=Dl,IZ=kv,Ty=h.forwardRef(({className:a,...e},o)=>l.jsx(un,{className:$("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...e,ref:o}));Ty.displayName=un.displayName;const DZ=Yt("fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Py=h.forwardRef(({side:a="right",className:e,children:o,...i},t)=>l.jsxs(IZ,{children:[l.jsx(Ty,{}),l.jsxs(mn,{ref:t,className:$(DZ({side:a}),e),...i,children:[o,l.jsxs(Dl,{className:"absolute right-4 top-4 roun
488ded-sm opacity-70 ring-offset-background transition-opacity data-[state=open]:bg-secondary hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",children:[l.jsx($t,{className:"h-4 w-4"}),l.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Py.displayName=mn.displayName;const Ry=({className:a,...e})=>l.jsx("div",{className:$("flex flex-col space-y-2 text-center sm:text-left",a),...e});Ry.displayName="SheetHeader";const OZ=h.forwardRef(({className:a,...e},o)=>l.jsx(pn,{ref:o,className:$("text-lg font-semibold text-foreground",a),...e}));OZ.displayName=pn.displayName;const MZ=h.forwardRef(({className:a,...e},o)=>l.jsx(gn,{ref:o,className:$("text-sm text-muted-foreground",a),...e}));MZ.displayName=gn.displayName;const NZ={light:10,medium:25,heavy:50,success:[10,50,10],warning:[30,50,30],error:[50,100,50],selection:5};function xy(){const a=typeof navigator<"u"&&"vibrate"in navigator,e=h.useCallback((d="light")=>{if(!a)return!1;try{const u=NZ[d];return navigator.vibrate(u)}catch(u){return console.warn("Haptic feedback failed:",u),!1}},[a]),o=h.useCallback(()=>e("light"),[e]),i=h.useCallback(()=>e("medium"),[e]),t=h.useCallback(()=>e("heavy"),[e]),r=h.useCallback(()=>e("success"),[e]),s=h.useCallback(()=>e("warning"),[e]),n=h.useCallback(()=>e("error"),[e]),c=h.useCallback(()=>e("selection"),[e]);return{isSupported:a,vibrate:e,lightTap:o,mediumTap:i,heavyTap:t,success:r,warning:s,error:n,selection:c}}function zZ(a={}){const{threshold:e=50,preventScroll:o=!1,onSwipeLeft:i,onSwipeRight:t,onSwipeUp:r,onSwipeDown:s}=a,n=h.useRef(null),c=h.useRef(null),d=h.useCallback(f=>{const v=f.touches[0];n.current={x:v.clientX,y:v.clientY,time:Date.now()}},[]),u=h.useCallback(f=>{if(o&&n.current){const v=f.touches[0],b=Math.abs(v.clientX-n.current.x),S=Math.abs(v.clientY-n.current.y);b>S&&b>10&&f.preventDefault()}},[o]),m=h.useCallback(f=>{if(!n.current)return;const v=f.changedTouches[0],b=v.clientX-n.current.x,S=v.clientY-n.current.y;if(Date.now()-n.current.time>300){n.current=null;return}const y=Math.abs(b),E=Math.abs(S);y>E&&y>e?b>0&&t?t():b<0&&i&&i():E>y&&E>e&&(S>0&&s?s():S<0&&r&&r()),n.current=null},[e,i,t,r,s]),g=h.useCallback(()=>({onTouchStart:d,onTouchMove:u,onTouchEnd:m}),[d,u,m]),p=h.useCallback(f=>{c.current&&(c.current.removeEventListener("touchstart",d),c.current.removeEventListener("touchmove",u),c.current.removeEventListener("touchend",m)),c.current=f,f&&(f.addEventListener("touchstart",d,{passive:!o}),f.addEventListener("touchmove",u,{passive:!o}),f.addEventListener("touchend",m))},[d,u,m,o]);return h.useEffect(()=>()=>{c.current&&(c.current.removeEventListener("touchstart",d),c.current.removeEventListener("touchmove",u),c.current.removeEventListener("touchend",m))},[d,u,m]),{bind:g,setRef:p}}const wy=[{label:k("AnalÃtico"),items:[{name:"Dashboard",href:"/",icon:qs,requiresERP:!0},{name:"Diagnósticos",href:"/diagnosticos",icon:Ls,requiresERP:!0,module:"diagnostico"},{name:"Consórcios",href:"/consorcios",icon:eh,requiresERP:!0,module:"consorcios"},{name:"Observatório (Beta)",href:"/observatorio",icon:Yd,requiresERP:!0,module:"observatorio"},{name:"Relatórios",href:"/relatorios",icon:ss,requiresERP:!0,requiredFeature:"reports",module:"relatorios"},{name:"Base de Conhecimento",href:"/base-conhecimento",icon:ah,requiresERP:!0}]},{label:k("Gerenciamento de Projeto"),items:[{name:"Projetos",href:"/projetos",icon:Ai,requiresERP:!0,module:"projetos"},{name:"Minhas tarefas",href:"/minhas-tarefas",icon:Ai,requiresERP:!0}]},{label:k("Educação"),items:[{name:"Minha Jornada",href:"/edu",icon:Tt,requiresEDU:!0,module:"edu"},{name:"Aprender",href:"/edu/catalogo",icon:Di,requiresEDU:!0,module:"edu"},{name:"Avaliações",href:"/edu/minhas-provas",icon:oh,requiresEDU:!0,module:"edu"},{name:"Turmas & Mensagens",href:"/edu/turmas",icon:pt,requiresEDU:!0,module:"edu"},{name:"Painel do Professor",href:"/professor",icon:Di,requiresProfessor:!0},{name:"Admin EDU",href:"/admin/edu",icon:Us,requiresAdmin:!0}]},{label:k("Recursos"),items:[{name:"Professor Beni",href:"/professor-beni",icon:Ht},{name:"Social Turismo",href:"/forum",icon:Fs},{name:"Jogos Educacionais",href:"/game",icon:Jd}]}],Iy=[{name:"Planos",href:"/assinatura",icon:Kd},{name:"Ajuda",href:"/ajuda",icon:ih},{name:"Configurações",href:"/configuracoes",icon:Bs}],jZ=wy.flatMap(a=>a.items).filter(a=>!a.requiresERP&&!a.requiresEDU&&!a.requiresProfessor&&!a.requiresAdmin),kZ=Iy.filter(a=>!a.requiresERP&&!a.requiresEDU&&!a.requiresProfessor&&!a.requiresAdmin);function _Z({open:a,onOpenChange:e}){const{t:o}=Zt(),i=eo(),t=qi(),{signOut:r}=ze(),{isAdmin:s,isProfessor:n,hasERPAccess:c,hasEDUAccess:d,initialized:u}=la(),{hasFeature:m}=So(),{isModuleEnabled:g}=Tl(),{data:p}=Ml(),f=Nl(),{lightTap:v,selection:b}=xy(),S=c||s?"/":"/edu";h.useEffect(()=>{i.pathname==="/forum"&&f.mutate()},[i.pathname]);const A=h.useCallback(()=>{v(),e(!1)},[v,e]),{bind:y}=zZ({onSwipeLeft:A,threshold:50,preventScroll:!0}),E=async()=>{v(),await r(),Ee.success(o("Você saiu da sua conta")),e(!1),t("/auth")},C=()=>{b(),e(!1)},P=h.useCallback(w=>!(w.requiresAdmin&&!s||w.requiresProfessor&&!n&&!s||w.requiresERP&&!c&&!s||w.requiresEDU&&!d&&!s||w.module&&!g(w.module)),[s,n,c,d,g]),R=h.useMemo(()=>u?wy.map(w=>({...w,items:w.items.filter(P)})).filter(w=>w.items.length>0):[{label:"",items:jZ}],[u,P]),I=h.useMemo(()=>u?Iy.filter(w=>!(w.requiresAdmin&&!s||w.requiresProfessor&&!n&&!s||w.requiresERP&&!c&&!s||w.requiresEDU&&!d&&!s)):kZ,[u,s,n,c,d]),x=({item:w})=>{const L=i.pathname===w.href||w.href!=="/"&&i.pathname.startsWith(w.href),M=!s&&w.requiredFeature&&!m(w.requiredFeature),N=w.href==="/forum"&&((p==null?void 0:p.unreadCount)??0)>0;return l.jsx(Cp,{asChild:!0,children:l.jsxs(po,{to:M?"/assinatura":w.href,onClick:C,className:$("flex items-center gap-3 px-4 py-3.5 rounded-lg transition-all duration-200 touch-target active:scale-[0.98]",M?"text-muted-foreground
488/50":L?"bg-primary text-primary-foreground":"text-foreground hover:bg-muted active:bg-muted/80"),children:[l.jsx(w.icon,{className:"h-5 w-5 flex-shrink-0"}),l.jsx("span",{className:"font-medium text-sm flex-1",children:o(w.name)}),M&&l.jsx(Wt,{className:"h-3.5 w-3.5 text-muted-foreground/50 flex-shrink-0"}),N&&!M&&l.jsx(bo,{variant:"destructive",className:"h-5 min-w-5 px-1.5 text-xs",children:p.unreadCount>99?"99+":p.unreadCount})]})})};return l.jsx(wZ,{open:a,onOpenChange:e,children:l.jsxs(Py,{side:"left",className:"w-72 p-0 bg-background",...y(),children:[l.jsx(Ry,{className:"flex h-16 items-center px-4 border-b border-border",children:l.jsx(Cp,{asChild:!0,children:l.jsxs(po,{to:S,className:"flex items-center gap-2",onClick:()=>b(),children:[l.jsx("div",{className:"h-8 w-8 rounded-lg gradient-hero flex items-center justify-center",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-sm",children:"S"})}),l.jsx("span",{className:"font-display font-bold text-lg",children:k("SISTUR")})]})})}),l.jsx("nav",{className:"flex-1 px-3 py-4 space-y-1 overflow-y-auto max-h-[calc(100vh-200px)] overscroll-contain",children:R.map(w=>l.jsxs("div",{className:"mb-3",children:[w.label&&l.jsx("div",{className:"px-4 py-2 text-xs font-semibold uppercase tracking-wider text-muted-foreground",children:o(w.label)}),l.jsx("div",{className:"space-y-0.5",children:w.items.map(L=>l.jsx(x,{item:L},L.name))})]},w.label))}),l.jsxs("div",{className:"px-3 py-4 border-t border-border space-y-1",children:[I.map(w=>l.jsx(x,{item:w},w.name)),l.jsx(fd,{trigger:l.jsxs(Ae,{variant:"ghost",className:"w-full justify-start gap-3 px-3 py-3 h-auto text-foreground hover:bg-muted",children:[l.jsx(Pt,{className:"h-5 w-5"}),l.jsx("span",{className:"font-medium text-sm",children:o("Feedback")})]})}),l.jsxs(Ae,{variant:"ghost",onClick:E,className:"w-full justify-start gap-3 px-3 py-3 h-auto text-destructive hover:text-destructive hover:bg-destructive/10",children:[l.jsx(Ic,{className:"h-5 w-5"}),l.jsx("span",{className:"font-medium text-sm",children:o("Sair")})]})]})]})})}const Tp=[{name:"InÃcio",href:"/",icon:qs,requiresERP:!0},{name:"EDU",href:"/edu",icon:Tt,requiresEDU:!0},{name:"Beni",href:"/professor-beni",icon:Ht},{name:"Social",href:"/forum",icon:Fs}];function qZ({onMenuClick:a}){const{t:e}=Zt(),o=eo(),{isAdmin:i,hasERPAccess:t,hasEDUAccess:r,initialized:s}=la(),{data:n}=Ml(),c=Nl(),{selection:d}=xy();h.useEffect(()=>{o.pathname==="/forum"&&c.mutate()},[o.pathname]);const m=h.useMemo(()=>s?Tp.filter(f=>!(f.requiresAdmin&&!i||f.requiresERP&&!t&&!i||f.requiresEDU&&!r&&!i)):Tp.filter(f=>!f.requiresERP&&!f.requiresEDU&&!f.requiresAdmin),[s,i,t,r]).slice(0,4),g=()=>{d()},p=()=>{d(),a()};return l.jsx("nav",{"aria-label":k("Navegação principal"),className:"md:hidden fixed bottom-0 left-0 right-0 z-40 bg-background/80 backdrop-blur-2xl backdrop-saturate-150 border-t border-border/50 safe-bottom",children:l.jsxs("div",{className:"flex items-center justify-around h-16 px-2",children:[m.map(f=>{const v=o.pathname===f.href||f.href!=="/"&&o.pathname.startsWith(f.href),b=f.href==="/forum"&&((n==null?void 0:n.unreadCount)??0)>0;return l.jsxs(po,{to:f.href,onClick:g,"aria-label":e(f.name),"aria-current":v?"page":void 0,className:$("flex flex-col items-center justify-center gap-1 px-3 py-2 rounded-lg transition-all duration-200 touch-target no-tap-highlight mobile-active relative",v?"text-primary":"text-muted-foreground"),children:[l.jsxs("div",{className:"relative",children:[l.jsx(f.icon,{className:$("h-5 w-5 transition-transform",v&&"scale-110")}),b&&l.jsx("span",{className:"absolute -top-1 -right-1.5 h-4 min-w-4 flex items-center justify-center bg-destructive text-destructive-foreground text-[9px] font-bold rounded-full px-1",children:((n==null?void 0:n.unreadCount)??0)>9?"9+":n==null?void 0:n.unreadCount})]}),l.jsx("span",{className:"text-[11px] font-medium",children:e(f.name)})]},f.href)}),l.jsxs("button",{onClick:p,"aria-label":k("Abrir menu de navegação"),className:"flex flex-col items-center justify-center gap-1 px-3 py-2 rounded-lg transition-all duration-200 touch-target no-tap-highlight mobile-active text-muted-foreground",children:[l.jsx(sh,{className:"h-5 w-5"}),l.jsx("span",{className:"text-[11px] font-medium",children:e("Menu")})]})]})})}const Zl=h.createContext({});function eu(a){const e=h.useRef(null);return e.current===null&&(e.current=a()),e.current}const Dy=typeof window<"u",Oy=Dy?h.useLayoutEffect:h.useEffect,Rn=h.createContext(null);function au(a,e){a.indexOf(e)===-1&&a.push(e)}function ws(a,e){const o=a.indexOf(e);o>-1&&a.splice(o,1)}const qa=(a,e,o)=>o>e?e:o<a?a:o;let xn=()=>{},ki=()=>{};const Za={},My=a=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(a);function Ny(a){return typeof a=="object"&&a!==null}const zy=a=>/^0[^.\s]+$/u.test(a);function ou(a){let e;return()=>(e===void 0&&(e=a()),e)}const ca=a=>a,LZ=(a,e)=>o=>e(a(o)),lr=(...a)=>a.reduce(LZ),Lt=(a,e,o)=>{const i=e-a;return i===0?1:(o-a)/i};class iu{constructor(){this.subscriptions=[]}add(e){return au(this.subscriptions,e),()=>ws(this.subscriptions,e)}notify(e,o,i){const t=this.subscriptions.length;if(t)if(t===1)this.subscriptions[0](e,o,i);else for(let r=0;r<t;r++){const s=this.subscriptions[r];s&&s(e,o,i)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const da=a=>a*1e3,ra=a=>a/1e3;function jy(a,e){return e?a*(1e3/e):0}const ky=(a,e,o)=>(((1-3*o+3*e)*a+(3*o-6*e))*a+3*e)*a,UZ=1e-7,BZ=12;function FZ(a,e,o,i,t){let r,s,n=0;do s=e+(o-e)/2,r=ky(s,i,t)-a,r>
vendor: 4,524 bytes, line 488
4880?o=s:e=s;while(Math.abs(r)>UZ&&++n<BZ);return s}function ur(a,e,o,i){if(a===e&&o===i)return ca;const t=r=>FZ(r,0,1,a,o);return r=>r===0||r===1?r:ky(t(r),e,i)}const _y=a=>e=>e<=.5?a(2*e)/2:(2-a(2*(1-e)))/2,qy=a=>e=>1-a(1-e),Ly=ur(.33,1.53,.69,.99),tu=qy(Ly),Uy=_y(tu),By=a=>(a*=2)<1?.5*tu(a):.5*(2-Math.pow(2,-10*(a-1))),ru=a=>1-Math.sin(Math.acos(a)),Fy=qy(ru),Gy=_y(ru),GZ=ur(.42,0,1,1),VZ=ur(0,0,.58,1),Vy=ur(.42,0,.58,1),$Z=a=>Array.isArray(a)&&typeof a[0]!="number",$y=a=>Array.isArray(a)&&typeof a[0]=="number",Pp={linear:ca,easeIn:GZ,easeInOut:Vy,easeOut:VZ,circIn:ru,circInOut:Gy,circOut:Fy,backIn:tu,backInOut:Uy,backOut:Ly,anticipate:By},HZ=a=>typeof a=="string",Rp=a=>{if($y(a)){ki(a.length===4,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");const[e,o,i,t]=a;return ur(e,o,i,t)}else if(HZ(a))return ki(Pp[a]!==void 0,`Invalid easing type '${a}'`,"invalid-easing-type"),Pp[a];return a},_r=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"],xp={value:null,addProjectionMetrics:null};function WZ(a,e){let o=new Set,i=new Set,t=!1,r=!1;const s=new WeakSet;let n={delta:0,timestamp:0,isProcessing:!1},c=0;function d(m){s.has(m)&&(u.schedule(m),a()),c++,m(n)}const u={schedule:(m,g=!1,p=!1)=>{const v=p&&t?o:i;return g&&s.add(m),v.has(m)||v.add(m),m},cancel:m=>{i.delete(m),s.delete(m)},process:m=>{if(n=m,t){r=!0;return}t=!0,[o,i]=[i,o],o.forEach(d),e&&xp.value&&xp.value.frameloop[e].push(c),c=0,o.clear(),t=!1,r&&(r=!1,u.process(m))}};return u}const QZ=40;function Hy(a,e){let o=!1,i=!0;const t={delta:0,timestamp:0,isProcessing:!1},r=()=>o=!0,s=_r.reduce((y,E)=>(y[E]=WZ(r,e?E:void 0),y),{}),{setup:n,read:c,resolveKeyframes:d,preUpdate:u,update:m,preRender:g,render:p,postRender:f}=s,v=()=>{const y=Za.useManualTiming?t.timestamp:performance.now();o=!1,Za.useManualTiming||(t.delta=i?1e3/60:Math.max(Math.min(y-t.timestamp,QZ),1)),t.timestamp=y,t.isProcessing=!0,n.process(t),c.process(t),d.process(t),u.process(t),m.process(t),g.process(t),p.process(t),f.process(t),t.isProcessing=!1,o&&e&&(i=!1,a(v))},b=()=>{o=!0,i=!0,t.isProcessing||a(v)};return{schedule:_r.reduce((y,E)=>{const C=s[E];return y[E]=(P,R=!1,I=!1)=>(o||b(),C.schedule(P,R,I)),y},{}),cancel:y=>{for(let E=0;E<_r.length;E++)s[_r[E]].cancel(y)},state:t,steps:s}}const{schedule:ve,cancel:Ao,state:je,steps:dc}=Hy(typeof requestAnimationFrame<"u"?requestAnimationFrame:ca,!0);let es;function KZ(){es=void 0}const Ge={now:()=>(es===void 0&&Ge.set(je.isProcessing||Za.useManualTiming?je.timestamp:performance.now()),es),set:a=>{es=a,queueMicrotask(KZ)}},Wy=a=>e=>typeof e=="string"&&e.startsWith(a),Qy=Wy("--"),YZ=Wy("var(--"),su=a=>YZ(a)?JZ.test(a.split("/*")[0].trim()):!1,JZ=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu;function wp(a){return typeof a!="string"?!1:a.split("/*")[0].includes("var(--")}const Qi={test:a=>typeof a=="number",parse:parseFloat,transform:a=>a},Ut={...Qi,transform:a=>qa(0,1,a)},qr={...Qi,default:1},yt=a=>Math.round(a*1e5)/1e5,nu=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function XZ(a){return a==null}const ZZ=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,cu=(a,e)=>o=>!!(typeof o=="string"&&ZZ.test(o)&&o.startsWith(a)||e&&!XZ(o)&&Object.prototype.hasOwnProperty.call(o,e)),Ky=(a,e,o)=>i=>{if(typeof i!="string")return i;const[t,r,s,n]=i.match(nu);return{[a]:parseFloat(t),[e]:parseFloat(r),[o]:parseFloat(s),alpha:n!==void 0?parseFloat(n):1}},eee=a=>qa(0,255,a),lc={...Qi,transform:a=>Math.round(eee(a))},_o={test:cu("rgb","red"),parse:Ky("red","green","blue"),transform:({red:a,green:e,blue:o,alpha:i=1})=>"rgba("+lc.transform(a)+", "+lc.transform(e)+", "+lc.transform(o)+", "+yt(Ut.transform(i))+")"};function aee(a){let e="",o="",i="",t="";return a.length>5?(e=a.substring(1,3),o=a.substring(3,5),i=a.substring(5,7),t=a.substring(7,9)):(e=a.substring(1,2),o=a.substring(2,3),i=a.substring(3,4),t=a.substring(4,5),e+=e,o+=o,i+=i,t+=t),{red:parseInt(e,16),green:parseInt(o,16),blue:parseInt(i,16),alpha:t?parseInt(t,16)/255:1}}const yd={test:cu("#"),parse:aee,transform:_o.transform},mr=a=>({test:e=>typeof e=="string"&&e.endsWith(a)&&e.split(" ").length===1,parse:parseFloat,transform:e=>`${e}${a}`}),co=mr("deg"),ka=mr("%"),W=mr("px"),oee=mr("vh"),iee=mr("vw"),Ip={...ka,parse:a=>ka.parse(a)/100,transform:a=>ka.transform(a*100)},pi={test:cu("hsl","hue"),parse:Ky("hue","saturation","lightness"),transform:({hue:a,saturation:e,lightness:o,alph
vendor: 1,884 bytes, line 488
488a:i=1})=>"hsla("+Math.round(a)+", "+ka.transform(yt(e))+", "+ka.transform(yt(o))+", "+yt(Ut.transform(i))+")"},Oe={test:a=>_o.test(a)||yd.test(a)||pi.test(a),parse:a=>_o.test(a)?_o.parse(a):pi.test(a)?pi.parse(a):yd.parse(a),transform:a=>typeof a=="string"?a:a.hasOwnProperty("red")?_o.transform(a):pi.transform(a),getAnimatableNone:a=>{const e=Oe.parse(a);return e.alpha=0,Oe.transform(e)}},tee=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function ree(a){var e,o;return isNaN(a)&&typeof a=="string"&&(((e=a.match(nu))==null?void 0:e.length)||0)+(((o=a.match(tee))==null?void 0:o.length)||0)>0}const Yy="number",Jy="color",see="var",nee="var(",Dp="${}",cee=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Bt(a){const e=a.toString(),o=[],i={color:[],number:[],var:[]},t=[];let r=0;const n=e.replace(cee,c=>(Oe.test(c)?(i.color.push(r),t.push(Jy),o.push(Oe.parse(c))):c.startsWith(nee)?(i.var.push(r),t.push(see),o.push(c)):(i.number.push(r),t.push(Yy),o.push(parseFloat(c))),++r,Dp)).split(Dp);return{values:o,split:n,indexes:i,types:t}}function Xy(a){return Bt(a).values}function Zy(a){const{split:e,types:o}=Bt(a),i=e.length;return t=>{let r="";for(let s=0;s<i;s++)if(r+=e[s],t[s]!==void 0){const n=o[s];n===Yy?r+=yt(t[s]):n===Jy?r+=Oe.transform(t[s]):r+=t[s]}return r}}const dee=a=>typeof a=="number"?0:Oe.test(a)?Oe.getAnimatableNone(a):a;function lee(a){const e=Xy(a);return Zy(a)(e.map(dee))}const yo={test:ree,parse:Xy,createTransformer:Zy,getAnimatableNone:lee};function uc(a,e,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?a+(e-a)*6*o:o<1/2?e:o<2/3?a+(e-a)*(2/3-o)*6:a}function uee({hue:a,saturation:e,lightness:o,alpha:i}
vendor: 16,558 bytes, line 488
488){a/=360,e/=100,o/=100;let t=0,r=0,s=0;if(!e)t=r=s=o;else{const n=o<.5?o*(1+e):o+e-o*e,c=2*o-n;t=uc(c,n,a+1/3),r=uc(c,n,a),s=uc(c,n,a-1/3)}return{red:Math.round(t*255),green:Math.round(r*255),blue:Math.round(s*255),alpha:i}}function Is(a,e){return o=>o>0?e:a}const Te=(a,e,o)=>a+(e-a)*o,mc=(a,e,o)=>{const i=a*a,t=o*(e*e-i)+i;return t<0?0:Math.sqrt(t)},mee=[yd,_o,pi],pee=a=>mee.find(e=>e.test(a));function Op(a){const e=pee(a);if(xn(!!e,`'${a}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!e)return!1;let o=e.parse(a);return e===pi&&(o=uee(o)),o}const Mp=(a,e)=>{const o=Op(a),i=Op(e);if(!o||!i)return Is(a,e);const t={...o};return r=>(t.red=mc(o.red,i.red,r),t.green=mc(o.green,i.green,r),t.blue=mc(o.blue,i.blue,r),t.alpha=Te(o.alpha,i.alpha,r),_o.transform(t))},Sd=new Set(["none","hidden"]);function gee(a,e){return Sd.has(a)?o=>o<=0?a:e:o=>o>=1?e:a}function hee(a,e){return o=>Te(a,e,o)}function du(a){return typeof a=="number"?hee:typeof a=="string"?su(a)?Is:Oe.test(a)?Mp:bee:Array.isArray(a)?eS:typeof a=="object"?Oe.test(a)?Mp:fee:Is}function eS(a,e){const o=[...a],i=o.length,t=a.map((r,s)=>du(r)(r,e[s]));return r=>{for(let s=0;s<i;s++)o[s]=t[s](r);return o}}function fee(a,e){const o={...a,...e},i={};for(const t in o)a[t]!==void 0&&e[t]!==void 0&&(i[t]=du(a[t])(a[t],e[t]));return t=>{for(const r in i)o[r]=i[r](t);return o}}function vee(a,e){const o=[],i={color:0,var:0,number:0};for(let t=0;t<e.values.length;t++){const r=e.types[t],s=a.indexes[r][i[r]],n=a.values[s]??0;o[t]=n,i[r]++}return o}const bee=(a,e)=>{const o=yo.createTransformer(e),i=Bt(a),t=Bt(e);return i.indexes.var.length===t.indexes.var.length&&i.indexes.color.length===t.indexes.color.length&&i.indexes.number.length>=t.indexes.number.length?Sd.has(a)&&!t.values.length||Sd.has(e)&&!i.values.length?gee(a,e):lr(eS(vee(i,t),t.values),o):(xn(!0,`Complex values '${a}' and '${e}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),Is(a,e))};function aS(a,e,o){return typeof a=="number"&&typeof e=="number"&&typeof o=="number"?Te(a,e,o):du(a)(a,e)}const Aee=a=>{const e=({timestamp:o})=>a(o);return{start:(o=!0)=>ve.update(e,o),stop:()=>Ao(e),now:()=>je.isProcessing?je.timestamp:Ge.now()}},oS=(a,e,o=10)=>{let i="";const t=Math.max(Math.round(e/o),2);for(let r=0;r<t;r++)i+=Math.round(a(r/(t-1))*1e4)/1e4+", ";return`linear(${i.substring(0,i.length-2)})`},Ds=2e4;function lu(a){let e=0;const o=50;let i=a.next(e);for(;!i.done&&e<Ds;)e+=o,i=a.next(e);return e>=Ds?1/0:e}function yee(a,e=100,o){const i=o({...a,keyframes:[0,e]}),t=Math.min(lu(i),Ds);return{type:"keyframes",ease:r=>i.next(t*r).value/e,duration:ra(t)}}const See=5;function iS(a,e,o){const i=Math.max(e-See,0);return jy(o-a(i),e-i)}const Se={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},pc=.001;function Eee({duration:a=Se.duration,bounce:e=Se.bounce,velocity:o=Se.velocity,mass:i=Se.mass}){let t,r;xn(a<=da(Se.maxDuration),"Spring duration must be 10 seconds or less","spring-duration-limit");let s=1-e;s=qa(Se.minDamping,Se.maxDamping,s),a=qa(Se.minDuration,Se.maxDuration,ra(a)),s<1?(t=d=>{const u=d*s,m=u*a,g=u-o,p=Ed(d,s),f=Math.exp(-m);return pc-g/p*f},r=d=>{const m=d*s*a,g=m*o+o,p=Math.pow(s,2)*Math.pow(d,2)*a,f=Math.exp(-m),v=Ed(Math.pow(d,2),s);return(-t(d)+pc>0?-1:1)*((g-p)*f)/v}):(t=d=>{const u=Math.exp(-d*a),m=(d-o)*a+1;return-pc+u*m},r=d=>{const u=Math.exp(-d*a),m=(o-d)*(a*a);return u*m});const n=5/a,c=Tee(t,r,n);if(a=da(a),isNaN(c))return{stiffness:Se.stiffness,damping:Se.damping,duration:a};{const d=Math.pow(c,2)*i;return{stiffness:d,damping:s*2*Math.sqrt(i*d),duration:a}}}const Cee=12;function Tee(a,e,o){let i=o;for(let t=1;t<Cee;t++)i=i-a(i)/e(i);return i}function Ed(a,e){return a*Math.sqrt(1-e*e)}const Pee=["duration","bounce"],Ree=["stiffness","damping","mass"];function Np(a,e){return e.some(o=>a[o]!==void 0)}function xee(a){let e={velocity:Se.velocity,stiffness:Se.stiffness,damping:Se.damping,mass:Se.mass,isResolvedFromDuration:!1,...a};if(!Np(a,Ree)&&Np(a,Pee))if(a.visualDuration){const o=a.visualDuration,i=2*Math.PI/(o*1.2),t=i*i,r=2*qa(.05,1,1-(a.bounce||0))*Math.sqrt(t);e={...e,mass:Se.mass,stiffness:t,damping:r}}else{const o=Eee(a);e={...e,...o,mass:Se.mass},e.isResolvedFromDuration=!0}return e}function Os(a=Se.visualDuration,e=Se.bounce){const o=typeof a!="object"?{visualDuration:a,keyframes:[0,1],bounce:e}:a;let{restSpeed:i,restDelta:t}=o;const r=o.keyframes[0],s=o.keyframes[o.keyframes.length-1],n={done:!1,value:r},{stiffness:c,damping:d,mass:u,duration:m,velocity:g,isResolvedFromDuration:p}=xee({...o,velocity:-ra(o.velocity||0)}),f=g||0,v=d/(2*Math.sqrt(c*u)),b=s-r,S=ra(Math.sqrt(c/u)),A=Math.abs(b)<5;i||(i=A?Se.restSpeed.granular:Se.restSpeed.default),t||(t=A?Se.restDelta.granular:Se.restDelta.default);let y;if(v<1){const C=Ed(S,v);y=P=>{const R=Math.exp(-v*S*P);return s-R*((f+v*S*b)/C*Math.sin(C*P)+b*Math.cos(C*P))}}else if(v===1)y=C=>s-Math.exp(-S*C)*(b+(f+S*b)*C);else{const C=S*Math.sqrt(v*v-1);y=P=>{const R=Math.exp(-v*S*P),I=Math.min(C*P,300);return s-R*((f+v*S*b)*Math.sinh(I)+C*b*Math.cosh(I))/C}}const E={calculatedDuration:p&&m||null,next:C=>{const P=y(C);if(p)n.done=C>=m;else{let R=C===0?f:0;v<1&&(R=C===0?da(f):iS(y,C,P));const I=Math.abs(R)<=i,x=Math.abs(s-P)<=t;n.done=I&&x}return n.value=n.done?s:P,n},toString:()=>{const C=Math.min(lu(E),Ds),P=oS(R=>E.next(C*R).value,C,30);return C+"ms "+P},toTransition:()=>{}};return E}Os.applyToOptions=a=>{const e=yee(a,100,Os);return a.ease=e.ease,a.duration=da(e.duration),a.type="keyframes",a};function Cd({keyframes:a,velocity:e=0,power:o=.8,timeConstant:i=325,bounceDamping:t=10,bounceStiffness:r=500,modifyTarget:s,min:n,max:c,restDelta:d=.5,restSpeed:u}){const m=a[0],g={done:!1,value:m},p=I=>n!==void 0&&I<n||c!==void 0&&I>c,f=I=>n===void 0?c:c===void 0||Math.abs(n-I)<Math.abs(c-I)?n:c;let v=o*e;const b=m+v,S=s===void 0?b:s(b);S!==b&&(v=S-m);const A=I=>-v*Math.exp(-I/i),y=I=>S+A(I),E=I=>{const x=A(I),w=y(I);g.done=Math.abs(x)<=d,g.value=g.done?S:w};let C,P;const R=I=>{p(g.value)&&(C=I,P=Os({keyframes:[g.value,f(g.value)],velocity:iS(y,I,g.value),damping:t,stiffness:r,restDelta:d,restSpeed:u}))};return R(0),{calculatedDuration:null,next:I=>{let x=!1;return!P&&C===void 0&&(x=!0,E(I),R(I)),C!==void 0&&I>=C?P.next(I-C):(!x&&E(I),g)}}}function wee(a,e,o){const i=[],t=o||Za.mix||aS,r=a.length-1;for(let s=0;s<r;s++){let n=t(a[s],a[s+1]);if(e){const c=Array.isArray(e)?e[s]||ca:e;n=lr(c,n)}i.push(n)}return i}function Iee(a,e,{clamp:o=!0,ease:i,mixer:t}={}){const r=a.length;if(ki(r===e.length,"Both input and output ranges must be the same length","range-length"),r===1)return()=>e[0];if(r===2&&e[0]===e[1])return()=>e[1];const s=a[0]===a[1];a[0]>a[r-1]&&(a=[...a].reverse(),e=[...e].reverse());const n=wee(e,i,t),c=n.length,d=u=>{if(s&&u<a[0])return e[0];let m=0;if(c>1)for(;m<a.length-2&&!(u<a[m+1]);m++);const g=Lt(a[m],a[m+1],u);return n[m](g)};return o?u=>d(qa(a[0],a[r-1],u)):d}function Dee(a,e){const o=a[a.length-1];for(let i=1;i<=e;i++){const t=Lt(0,e,i);a.push(Te(o,1,t))}}function Oee(a){const e=[0];return Dee(e,a.length-1),e}function Mee(a,e){return a.map(o=>o*e)}function Nee(a,e){return a.map(()=>e||Vy).splice(0,a.length-1)}function St({duration:a=300,keyframes:e,times:o,ease:i="easeInOut"}){const t=$Z(i)?i.map(Rp):Rp(i),r={done:!1,value:e[0]},s=Mee(o&&o.length===e.length?o:Oee(e),a),n=Iee(s,e,{ease:Array.isArray(t)?t:Nee(e,t)});return{calculatedDuration:a,next:c=>(r.value=n(c),r.done=c>=a,r)}}const zee=a=>a!==null;function uu(a,{repeat:e,repeatType:o="loop"},i,t=1){const r=a.filter(zee),n=t<0||e&&o!=="loop"&&e%2===1?0:r.length-1;return!n||i===void 0?r[n]:i}const jee={decay:Cd,inertia:Cd,tween:St,keyframes:St,spring:Os};function tS(a){typeof a.type=="string"&&(a.type=jee[a.type])}class mu{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(e=>{this.resolve=e})}notifyFinished(){this.resolve()}then(e,o){return this.finished.then(e,o)}}const kee=a=>a/100;class pu extends mu{constructor(e){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var i,t;const{motionValue:o}=this.options;o&&o.updatedAt!==Ge.now()&&this.tick(Ge.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(t=(i=this.options).onStop)==null||t.call(i))},this.options=e,this.initAnimation(),this.play(),e.autoplay===!1&&this.pause()}initAnimation(){const{options:e}=this;tS(e);const{type:o=St,repeat:i=0,repeatDelay:t=0,repeatType:r,velocity:s=0}=e;let{keyframes:n}=e;const c=o||St;c!==St&&typeof n[0]!="number"&&(this.mixKeyframes=lr(kee,aS(n[0],n[1])),n=[0,100]);const d=c({...e,keyframes:n});r==="mirror"&&(this.mirroredGenerator=c({...e,keyframes:[...n].reverse(),velocity:-s})),d.calculatedDuration===null&&(d.calculatedDuration=lu(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+t,this.totalDuration=this.resolvedDuration*(i+1)-t,this.generator=d}updateTime(e){const o=Math.round(e-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=o}tick(e,o=!1){const{generator:i,totalDuration:t,mixKeyframes:r,mirroredGenerator:s,resolvedDuration:n,calculatedDuration:c}=this;if(this.startTime===null)return i.next(0);const{delay:d=0,keyframes:u,repeat:m,repeatType:g,repeatDelay:p,type:f,onUpdate:v,finalKeyframe:b}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,e):this.speed<0&&(this.startTime=Math.min(e-t/this.speed,this.startTime)),o?this.currentTime=e:this.updateTime(e);const S=this.currentTime-d*(this.playbackSpeed>=0?1:-1),A=this.playbackSpeed>=0?S<0:S>t;this.currentTime=Math.max(S,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=t);let y=this.currentTime,E=i;if(m){const I=Math.min(this.currentTime,t)/n;let x=Math.floor(I),w=I%1;!w&&I>=1&&(w=1),w===1&&x--,x=Math.min(x,m+1),!!(x%2)&&(g==="reverse"?(w=1-w,p&&(w-=p/n)):g==="mirror"&&(E=s)),y=qa(0,1,w)*n}const C=A?{done:!1,value:u[0]}:E.next(y);r&&(C.value=r(C.value));let{done:P}=C;!A&&c!==null&&(P=this.playbackSpeed>=0?this.currentTime>=t:this.currentTime<=0);const R=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&P);return R&&f!==Cd&&(C.value=uu(u,this.options,b,this.speed)),v&&v(C.value),R&&this.finish(),C}then(e,o){return this.finished.then(e,o)}get duration(){return ra(this.calculatedDuration)}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+ra(e)}get time(){return ra(this.currentTime)}set time(e){var o;e=da(e),this.currentTime=e,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=e:this.driver&&(this.startTime=this.driver.now()-e/this.playbackSpeed),(o=this.driver)==null||o.start(!1)}get speed(){return this.playbackSpeed}set speed(e){this.updateTime(Ge.now());const o=this.playbackSpeed!==e;this.playbackSpeed=e,o&&(this.time=ra(this.currentTime))}play(){var t,r;if(this.isStopped)return;const{driver:e=Aee,startTime:o}=this.options;this.driver||(this.driver=e(s=>this.tick(s))),(r=(t=this.options).onPlay)==null||r.call(t);const i=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=i):this.holdTime!==null?this.startTime=i-this.holdTime:this.startTime||(this.startTime=o??i),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(Ge.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var e,o;this.notifyFinished(),this.teardown(),this.state="finished",(o=(e=this.options).onComplete)==null||o.call(e)}cancel(){var e,o;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(o=(e=this.options).onCancel)==null||o.call(e)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(e){return this.startTime=0,this.tick(e,!0)}attachTimeline(e){var o;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(o=this.driver)==null||o.stop(),e.observe(this)}}function _ee(a){for(let e=1;e<a.length;e++)a[e]??(a[e]=a[e-1])}const qo=a=>a*180/Math.PI,Td=a=>{const e=qo(Math.atan2(a[1],a[0]));return Pd(e)},qee={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:a=>(Math.abs(a[0])+Math.abs(a[3]))/2,rotate:Td,rotateZ:Td,skewX:a=>qo(Math.atan(a[1])),skewY:a=>qo(Math.atan(a[2])),skew:a=>(Math.abs(a[1])+Math.abs(a[2]))/2},Pd=a=>(a=a%360,a<0&&(a+=360),a),zp=Td,jp=a=>Math.sqrt(a[0]*a[0]+a[1]*a[1]),kp=a=>Math.sqrt(a[4]*a[4]+a[5]*a[5]),Lee={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:jp,scaleY:kp,scale:a=>(jp(a)+kp(a))/2,rotateX:a=>Pd(qo(Math.atan2(a[6],a[5]))),rotateY:a=>Pd(qo(Math.atan2(-a[2],a[0]))),rotateZ:zp,rotate:zp,skewX:a=>qo(Math.atan(a[4])),skewY:a=>qo(Math.atan(a[1])),skew:a=>(Math.abs(a[1])+Math.abs(a[4]))/2};function Rd(a){return a.includes("scale")?1:0}function xd(a,e){if(!a||a==="none")return Rd(e);const o=a.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let i,t;if(o)i=Lee,t=o;else{const n=a.match(/^matrix\(([-\d.e\s,]+)\)$/u);i=qee,t=n}if(!t)return Rd(e);const r=i[e],s=t[1].split(",").map(Bee);return typeof r=="function"?r(s):s[r]}const Uee=(a,e)=>{const{transform:o="none"}=getComputedStyle(a);return xd(o,e)};function Bee(a){return parseFloat(a.trim())}const Ki=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Yi=new Set(Ki),_p=a=>a===Qi||a===W,Fee=new Set(["x","y","z"]),Gee=Ki.filter(a=>!Fee.has(a));function Vee(a){const e=[];return Gee.forEach(o=>{const i=a.getValue(o);i!==void 0&&(e.push([o,i.get()]),i.set(o.startsWith("scale")?1:0))}),e}const ho={width:({x:a},{paddingLeft:e="0",paddingRight:o="0"})=>a.max-a.min-parseFloat(e)-parseFloat(o),height:({y:a},{paddingTop:e="0",paddingBottom:o="0"})=>a.max-a.min-parseFloat(e)-parseFloat(o),top:(a,{top:e})=>parseFloat(e),left:(a,{left:e})=>parseFloat(e),bottom:({y:a},{top:e})=>parseFloat(e)+(a.max-a.min),right:({x:a},{left:e})=>parseFloat(e)+(a.max-a.min),x:(a,{transform:e})=>xd(e,"x"),y:(a,{transform:e})=>xd(e,"y")};ho.translateX=ho.x;ho.translateY=ho.y;const Bo=new Set;let wd=!1,Id=!1,Dd=!1;function rS(){if(Id){const a=Array.from(Bo).filter(i=>i.needsMeasurement),e=new Set(a.map(i=>i.element)),o=new Map;e.forEach(i=>{const t=Vee(i);t.length&&(o.set(i,t),i.render())}),a.forEach(i=>i.measureInitialState()),e.forEach(i=>{i.render();const t=o.get(i);t&&t.forEach(([r,s])=>{var n;(n=i.getValue(r))==null||n.set(s)})}),a.forEach(i=>i.measureEndState()),a.forEach(i=>{i.suspendedScrollY!==void 0&&window.scrollTo(0,i.suspendedScrollY)})}Id=!1,wd=!1,Bo.forEach(a=>a.complete(Dd)),Bo.clear()}function sS(){Bo.forEach(a=>{a.readKeyframes(),a.needsMeasurement&&(Id=!0)})}function $ee(){Dd=!0,sS(),rS(),Dd=!1}class gu{constructor(e,o,i,t,r,s=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...e],this.onComplete=o,this.name=i,this.motionValue=t,this.element=r,this.isAsync=s}scheduleResolve(){this.state="scheduled",this.isAsync?(Bo.add(this),wd||(wd=!0,ve.read(sS),ve.resolveKeyframes(rS))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:e,name:o,element:i,motionValue:t}=this;if(e[0]===null){const r=t==null?void 0:t.get(),s=e[e.length-1];if(r!==void 0)e[0]=r;else if(i&&o){const n=i.readValue(o,s);n!=null&&(e[0]=n)}e[0]===void 0&&(e[0]=s),t&&r===void 0&&t.set(e[0])}_ee(e)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(e=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,e),Bo.delete(this)}cancel(){this.state==="scheduled"&&(Bo.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Hee=a=>a.startsWith("--");function Wee(a,e,o){Hee(e)?a.style.setProperty(e,o):a.style[e]=o}const Qee=ou(()=>window.ScrollTimeline!==void 0),Kee={};function Yee(a,e){const o=ou(a);return()=>Kee[e]??o()}const nS=Yee(()=>{try{document.createElement("div").animate({opacity:0}
488,{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),mt=([a,e,o,i])=>`cubic-bezier(${a}, ${e}, ${o}, ${i})`,qp={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:mt([0,.65,.55,1]),circOut:mt([.55,0,1,.45]),backIn:mt([.31,.01,.66,-.59]),backOut:mt([.33,1.53,.69,.99])};function cS(a,e){if(a)return typeof a=="function"?nS()?oS(a,e):"ease-out":$y(a)?mt(a):Array.isArray(a)?a.map(o=>cS(o,e)||qp.easeOut):qp[a]}function Jee(a,e,o,{delay:i=0,duration:t=300,repeat:r=0,repeatType:s="loop",ease:n="easeOut",times:c}={},d=void 0){const u={[e]:o};c&&(u.offset=c);const m=cS(n,t);Array.isArray(m)&&(u.easing=m);const g={delay:i,duration:t,easing:Array.isArray(m)?"linear":m,fill:"both",iterations:r+1,direction:s==="reverse"?"alternate":"normal"};return d&&(g.pseudoElement=d),a.animate(u,g)}function dS(a){return typeof a=="function"&&"applyToOptions"in a}function Xee({type:a,...e}){return dS(a)&&nS()?a.applyToOptions(e):(e.duration??(e.duration=300),e.ease??(e.ease="easeOut"),e)}class lS extends mu{constructor(e){if(super(),this.finishedTime=null,this.isStopped=!1,this.manualStartTime=null,!e)return;const{element:o,name:i,keyframes:t,pseudoElement:r,allowFlatten:s=!1,finalKeyframe:n,onComplete:c}=e;this.isPseudoElement=!!r,this.allowFlatten=s,this.options=e,ki(typeof e.type!="string",`Mini animate() doesn't support "type" as a string.`,"mini-spring");const d=Xee(e);this.animation=Jee(o,i,t,d,r),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!r){const u=uu(t,this.options,n,this.speed);this.updateMotionValue?this.updateMotionValue(u):Wee(o,i,u),this.animation.cancel()}c==null||c(),this.notifyFinished()}}play(){this.isStopped||(this.manualStartTime=null,this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var e,o;(o=(e=this.animation).finish)==null||o.call(e)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:e}=this;e==="idle"||e==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var o,i,t;const e=(o=this.options)==null?void 0:o.element;!this.isPseudoElement&&(e!=null&&e.isConnected)&&((t=(i=this.animation).commitStyles)==null||t.call(i))}get duration(){var o,i;const e=((i=(o=this.animation.effect)==null?void 0:o.getComputedTiming)==null?void 0:i.call(o).duration)||0;return ra(Number(e))}get iterationDuration(){const{delay:e=0}=this.options||{};return this.duration+ra(e)}get time(){return ra(Number(this.animation.currentTime)||0)}set time(e){this.manualStartTime=null,this.finishedTime=null,this.animation.currentTime=da(e)}get speed(){return this.animation.playbackRate}set speed(e){e<0&&(this.finishedTime=null),this.animation.playbackRate=e}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return this.manualStartTime??Number(this.animation.startTime)}set startTime(e){this.manualStartTime=this.animation.startTime=e}attachTimeline({timeline:e,observe:o}){var i;return this.allowFlatten&&((i=this.animation.effect)==null||i.updateTiming({easing:"linear"})),this.animation.onfinish=null,e&&Qee()?(this.animation.timeline=e,ca):o(this)}}const uS={anticipate:By,backInOut:Uy,circInOut:Gy};function Zee(a){return a in uS}function eae(a){typeof a.ease=="string"&&Zee(a.ease)&&(a.ease=uS[a.ease])}const gc=10;class aae extends lS{constructor(e){eae(e),tS(e),super(e),e.startTime!==void 0&&(this.startTime=e.startTime),this.options=e}updateMotionValue(e){const{motionValue:o,onUpdate:i,onComplete:t,element:r,...s}=this.options;if(!o)return;if(e!==void 0){o.set(e);return}const n=new pu({...s,autoplay:!1}),c=Math.max(gc,Ge.now()-this.startTime),d=qa(0,gc,c-gc);o.setWithVelocity(n.sample(Math.max(0,c-d)).value,n.sample(c).value,d),n.stop()}}const Lp=(a,e)=>e==="zIndex"?!1:!!(typeof a=="number"||Array.isArray(a)||typeof a=="string"&&(yo.test(a)||a==="0")&&!a.startsWith("url("));function oae(a){const e=a[0];if(a.length===1)return!0;for(let o=0;o<a.length;o++)if(a[o]!==e)return!0}function iae(a,e,o,i){const t=a[0];if(t===null)return!1;if(e==="display"||e==="visibility")return!0;const r=a[a.length-1],s=Lp(t,e),n=Lp(r,e);return xn(s===n,`You are trying to animate ${e} from "${t}" to "${r}". "${s?r:t}" is not an animatable value.`,"value-not-animatable"),!s||!n?!1:oae(a)||(o==="spring"||dS(o))&&i}function Od(a){a.duration=0,a.type="keyframes"}const tae=new Set(["opacity","clipPath","filter","transform"]),rae=ou(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function sae(a){var u;const{motionValue:e,name:o,repeatDelay:i,repeatType:t,damping:r,type:s}=a;if(!(((u=e==null?void 0:e.owner)==null?void 0:u.current)instanceof HTMLElement))return!1;const{onUpdate:c,transformTemplate:d}=e.owner.getProps();return rae()&&o&&tae.has(o)&&(o!=="transform"||!d)&&!c&&!i&&t!=="mirror"&&r!==0&&s!=="inertia"}const nae=40;class cae extends mu{constructor({autoplay:e=!0,delay:o=0,type:i="keyframes",repeat:t=0,repeatDelay:r=0,repeatType:s="loop",keyframes:n,name:c,motionValue:d,element:u,...m}){var f;super(),this.stop=()=>{var v,b;this._animation&&(this._animation.stop(),(v=this.stopTimeline)==null||v.call(this)),(b=this.keyframeResolver)==null||b.cancel()},this.createdAt=Ge.now();
488const g={autoplay:e,delay:o,type:i,repeat:t,repeatDelay:r,repeatType:s,name:c,motionValue:d,element:u,...m},p=(u==null?void 0:u.KeyframeResolver)||gu;this.keyframeResolver=new p(n,(v,b,S)=>this.onKeyframesResolved(v,b,g,!S),c,d,u),(f=this.keyframeResolver)==null||f.scheduleResolve()}onKeyframesResolved(e,o,i,t){var b,S;this.keyframeResolver=void 0;const{name:r,type:s,velocity:n,delay:c,isHandoff:d,onUpdate:u}=i;this.resolvedAt=Ge.now(),iae(e,r,s,n)||((Za.instantAnimations||!c)&&(u==null||u(uu(e,i,o))),e[0]=e[e.length-1],Od(i),i.repeat=0);const g={startTime:t?this.resolvedAt?this.resolvedAt-this.createdAt>nae?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:o,...i,keyframes:e},p=!d&&sae(g),f=(S=(b=g.motionValue)==null?void 0:b.owner)==null?void 0:S.current,v=p?new aae({...g,element:f}):new pu(g);v.finished.then(()=>{this.notifyFinished()}).catch(ca),this.pendingTimeline&&(this.stopTimeline=v.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=v}get finished(){return this._animation?this.animation.finished:this._finished}then(e,o){return this.finished.finally(e).then(()=>{})}get animation(){var e;return this._animation||((e=this.keyframeResolver)==null||e.resume(),$ee()),this._animation}get duration(){return this.animation.duration}get iterationDuration(){return this.animation.iterationDuration}get time(){return this.animation.time}set time(e){this.animation.time=e}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(e){this.animation.speed=e}get startTime(){return this.animation.startTime}attachTimeline(e){return this._animation?this.stopTimeline=this.animation.attachTimeline(e):this.pendingTimeline=e,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var e;this._animation&&this.animation.cancel(),(e=this.keyframeResolver)==null||e.cancel()}}function mS(a,e,o,i=0,t=1){const r=Array.from(a).sort((d,u)=>d.sortNodePosition(u)).indexOf(e),s=a.size,n=(s-1)*i;return typeof o=="function"?o(r,s):t===1?r*i:n-r*i}const dae=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function lae(a){const e=dae.exec(a);if(!e)return[,];const[,o,i,t]=e;return[`--${o??i}`,t]}const uae=4;function pS(a,e,o=1){ki(o<=uae,`Max CSS variable fallback depth detected in property "${a}". This may indicate a circular fallback dependency.`,"max-css-var-depth");const[i,t]=lae(a);if(!i)return;const r=window.getComputedStyle(e).getPropertyValue(i);if(r){const s=r.trim();return My(s)?parseFloat(s):s}return su(t)?pS(t,e,o+1):t}const mae={type:"spring",stiffness:500,damping:25,restSpeed:10},pae=a=>({type:"spring",stiffness:550,damping:a===0?2*Math.sqrt(550):30,restSpeed:10}),gae={type:"keyframes",duration:.8},hae={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},fae=(a,{keyframes:e})=>e.length>2?gae:Yi.has(a)?a.startsWith("scale")?pae(e[1]):mae:hae,vae=a=>a!==null;function bae(a,{repeat:e,repeatType:o="loop"},i){const t=a.filter(vae),r=e&&o!=="loop"&&e%2===1?0:t.length-1;return!r||i===void 0?t[r]:i}function gS(a,e){if(a!=null&&a.inherit&&e){const{inherit:o,...i}=a;return{...e,...i}}return a}function hu(a,e){const o=(a==null?void 0:a[e])??(a==null?void 0:a.default)??a;return o!==a?gS(o,a):o}function Aae({when:a,delay:e,delayChildren:o,staggerChildren:i,staggerDirection:t,repeat:r,repeatType:s,repeatDelay:n,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const fu=(a,e,o,i={},t,r)=>s=>{const n=hu(i,a)||{},c=n.delay||i.delay||0;let{elapsed:d=0}=i;d=d-da(c);const u={keyframes:Array.isArray(o)?o:[null,o],ease:"easeOut",velocity:e.getVelocity(),...n,delay:-d,onUpdate:g=>{e.set(g),n.onUpdate&&n.onUpdate(g)},onComplete:()=>{s(),n.onComplete&&n.onComplete()},name:a,motionValue:e,element:r?void 0:t};Aae(n)||Object.assign(u,fae(a,u)),u.duration&&(u.duration=da(u.duration)),u.repeatDelay&&(u.repeatDelay=da(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let m=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(Od(u),u.delay===0&&(m=!0)),(Za.instantAnimations||Za.skipAnimations||t!=null&&t.shouldSkipAnimations)&&(m=!0,Od(u),u.delay=0),u.allowFlatten=!n.type&&!n.ease,m&&!r&&e.get()!==void 0){const g=bae(u.keyframes,n);if(g!==void 0){ve.update(()=>{u.onUpdate(g),u.onComplete()});return}}return n.isSync?new pu(u):new cae(u)};function Up(a){const e=[{},{}];
488return a==null||a.values.forEach((o,i)=>{e[0][i]=o.get(),e[1][i]=o.getVelocity()}),e}function vu(a,e,o,i){if(typeof e=="function"){const[t,r]=Up(i);e=e(o!==void 0?o:a.custom,t,r)}if(typeof e=="string"&&(e=a.variants&&a.variants[e]),typeof e=="function"){const[t,r]=Up(i);e=e(o!==void 0?o:a.custom,t,r)}return e}function Ii(a,e,o){const i=a.getProps();return vu(i,e,o!==void 0?o:i.custom,a)}const hS=new Set(["width","height","top","left","right","bottom",...Ki]),Bp=30,yae=a=>!isNaN(parseFloat(a));class Sae{constructor(e,o={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=i=>{var r;const t=Ge.now();if(this.updatedAt!==t&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(i),this.current!==this.prev&&((r=this.events.change)==null||r.notify(this.current),this.dependents))for(const s of this.dependents)s.dirty()},this.hasAnimated=!1,this.setCurrent(e),this.owner=o.owner}setCurrent(e){this.current=e,this.updatedAt=Ge.now(),this.canTrackVelocity===null&&e!==void 0&&(this.canTrackVelocity=yae(this.current))}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,o){this.events[e]||(this.events[e]=new iu);const i=this.events[e].add(o);return e==="change"?()=>{i(),ve.read(()=>{this.events.change.getSize()||this.stop()})}:i}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,o){this.passiveEffect=e,this.stopPassiveEffect=o}set(e){this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e)}setWithVelocity(e,o,i){this.set(o),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-i}jump(e,o=!0){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,o&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var e;(e=this.events.change)==null||e.notify(this.current)}addDependent(e){this.dependents||(this.dependents=new Set),this.dependents.add(e)}removeDependent(e){this.dependents&&this.dependents.delete(e)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const e=Ge.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||e-this.updatedAt>Bp)return 0;const o=Math.min(this.updatedAt-this.prevUpdatedAt,Bp);return jy(parseFloat(this.current)-parseFloat(this.prevFrameValue),o)}start(e){return this.stop(),new Promise(o=>{this.hasAnimated=!0,this.animation=e(o),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var e,o;(e=this.dependents)==null||e.clear(),(o=this.events.destroy)==null||o.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function _i(a,e){return new Sae(a,e)}const Md=a=>Array.isArray(a);function Eae(a,e,o){a.hasValue(e)?a.getValue(e).set(o):a.addValue(e,_i(o))}function Cae(a){return Md(a)?a[a.length-1]||0:a}function Tae(a,e){const o=Ii(a,e);let{transitionEnd:i={},transition:t={},...r}=o||{};r={...r,...i};for(const s in r){const n=Cae(r[s]);Eae(a,s,n)}}const Le=a=>!!(a&&a.getVelocity);function Pae(a){return!!(Le(a)&&a.add)}function Nd(a,e){const o=a.getValue("willChange");if(Pae(o))return o.add(e);if(!o&&Za.WillChange){const i=new Za.WillChange("auto");a.addValue("willChange",i),i.add(e)}}function bu(a){return a.replace(/([A-Z])/g,e=>`-${e.toLowerCase()}`)}const Rae="framerAppearId",fS="data-"+bu(Rae);function vS(a){return a.props[fS]}function xae({protectedKeys:a,needsAnimating:e},o){const i=a.hasOwnProperty(o)&&e[o]!==!0;return e[o]=!1,i}function bS(a,e,{delay:o=0,transitionOverride:i,type:t}={}){let{transition:r,transitionEnd:s,...n}=e;const c=a.getDefaultTransition();r=r?gS(r,c):c;const d=r==null?void 0:r.reduceMotion;i&&(r=i);const u=[],m=t&&a.animationState&&a.animationState.getState()[t];for(const g in n){const p=a.getValue(g,a.latestValues[g]??null),f=n[g];if(f===void 0||m&&xae(m,g))continue;const v={delay:o,...hu(r||{},g)},b=p.get();if(b!==void 0&&!p.isAnimating&&!Array.isArray(f)&&f===b&&!v.velocity)continue;let S=!1;if(window.MotionHandoffAnimation){const E=vS(a);if(E){const C=window.MotionHandoffAnimation(E,g,ve);C!==null&&(v.startTime=C,S=!0)}}Nd(a,g);const A=d??a.shouldReduceMotion;p.start(fu(g,p,f,A&&hS.has(g)?{type:!1}:v,a,S));const y=p.animation;y&&u.push(y)}if(s){const g=()=>ve.update(()=>{s&&Tae(a,s)});u.length?Promise.all(u).then(g):g()}return u}function zd(a,e,o={}){var c;const i=Ii(a,e,o.type==="exit"?(c=a.presenceContext)==null?void 0:c.custom:void 0);let{transition:t=a.getDefaultTransition()||{}}=i||{};o.transitionOverride&&(t=o.transitionOverride);const r=i?()=>Promise.all(bS(a,i,o)):()=>Promise.resolve(),s=a.variantChildren&&a.variantChildren.size?(d=0)=>{const{delayChildren:u=0,staggerChildren:m,staggerDirection:g}=t;return wae(a,e,d,u,m,g,o)}:()=>Promise.resolve(),{when:n}=t;if(n){const[d,u]=n==="beforeChildren"?[r,s]:[s,r];return d().then(()=>u())}else return Promise.all([r(),s(o.delay)])}function wae(a,e,o=0,i=0,t=0,r=1,s){const n=[];for(const c of a.variantChildren)c.notify("AnimationStart",e),n.push(zd(c,e,{...s,delay:o+(typeof i=="function"?0:i)+mS(a.variantChildren,c,i,t,r)}).then(()=>c.notify("AnimationComplete",e)));return Promise.all(n)}function Iae(a,e,o={}){a.notify("AnimationStart",e);let i;if(Array.isArray(e)){const t=e.map(r=>zd(a,r,o));i=Promise.all(t)}else if(typeof e=="string")i=zd(a,e,o);else{const t=typeof e=="function"?Ii(a,e,o.custom):e;i=Promise.all(bS(a,t,o))}return i.then(()=>{a.notify("AnimationComplete",e)})}const Dae={test:a=>a==="auto",parse:a=>a},AS=a=>e=>
vendor: 3,694 bytes, line 488
488e.test(a),yS=[Qi,W,ka,co,iee,oee,Dae],Fp=a=>yS.find(AS(a));function Oae(a){return typeof a=="number"?a===0:a!==null?a==="none"||a==="0"||zy(a):!0}const Mae=new Set(["brightness","contrast","saturate","opacity"]);function Nae(a){const[e,o]=a.slice(0,-1).split("(");if(e==="drop-shadow")return a;const[i]=o.match(nu)||[];if(!i)return a;const t=o.replace(i,"");let r=Mae.has(e)?1:0;return i!==o&&(r*=100),e+"("+r+t+")"}const zae=/\b([a-z-]*)\(.*?\)/gu,jd={...yo,getAnimatableNone:a=>{const e=a.match(zae);return e?e.map(Nae).join(" "):a}},Gp={...Qi,transform:Math.round},jae={rotate:co,rotateX:co,rotateY:co,rotateZ:co,scale:qr,scaleX:qr,scaleY:qr,scaleZ:qr,skew:co,skewX:co,skewY:co,distance:W,translateX:W,translateY:W,translateZ:W,x:W,y:W,z:W,perspective:W,transformPerspective:W,opacity:Ut,originX:Ip,originY:Ip,originZ:W},Au={borderWidth:W,borderTopWidth:W,borderRightWidth:W,borderBottomWidth:W,borderLeftWidth:W,borderRadius:W,borderTopLeftRadius:W,borderTopRightRadius:W,borderBottomRightRadius:W,borderBottomLeftRadius:W,width:W,maxWidth:W,height:W,maxHeight:W,top:W,right:W,bottom:W,left:W,inset:W,insetBlock:W,insetBlockStart:W,insetBlockEnd:W,insetInline:W,insetInlineStart:W,insetInlineEnd:W,padding:W,paddingTop:W,paddingRight:W,paddingBottom:W,paddingLeft:W,paddingBlock:W,paddingBlockStart:W,paddingBlockEnd:W,paddingInline:W,paddingInlineStart:W,paddingInlineEnd:W,margin:W,marginTop:W,marginRight:W,marginBottom:W,marginLeft:W,marginBlock:W,marginBlockStart:W,marginBlockEnd:W,marginInline:W,marginInlineStart:W,marginInlineEnd:W,fontSize:W,backgroundPositionX:W,backgroundPositionY:W,...jae,zIndex:Gp,fillOpacity:Ut,strokeOpacity:Ut,numOctaves:Gp},kae={...Au,color:Oe,backgroundColor:Oe,outlineColor:Oe,fill:Oe,stroke:Oe,borderColor:Oe,borderTopColor:Oe,borderRightColor:Oe,borderBottomColor:Oe,borderLeftColor:Oe,filter:jd,WebkitFilter:jd},SS=a=>kae[a];function ES(a,e){let o=SS(a);return o!==jd&&(o=yo),o.getAnimatableNone?o.getAnimatableNone(e):void 0}const _ae=new Set(["auto","none","0"]);function qae(a,e,o){let i=0,t;for(;i<a.length&&!t;){const r=a[i];typeof r=="string"&&!_ae.has(r)&&Bt(r).values.length&&(t=a[i]),i++}if(t&&o)for(const r of e)a[r]=ES(o,t)}class Lae extends gu{constructor(e,o,i,t,r){super(e,o,i,t,r,!0)}readKeyframes(){const{unresolvedKeyframes:e,element:o,name:i}=this;if(!o||!o.current)return;super.readKeyframes();for(let u=0;u<e.length;u++){let m=e[u];if(typeof m=="string"&&(m=m.trim(),su(m))){const g=pS(m,o.current);g!==void 0&&(e[u]=g),u===e.length-1&&(this.finalKeyframe=m)}}if(this.resolveNoneKeyframes(),!hS.has(i)||e.length!==2)return;const[t,r]=e,s=Fp(t),n=Fp(r),c=wp(t),d=wp(r);if(c!==d&&ho[i]){this.needsMeasurement=!0;return}if(s!==n)if(_p(s)&&_p(n))for(let u=0;u<e.length;u++){const m=e[u];typeof m=="string"&&(e[u]=parseFloat(m))}else ho[i]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:e,name:o}=this,i=[];for(let t=0;t<e.length;t++)(e[t]===null||Oae(e[t]))&&i.push(t);i.length&&qae(e,i,o)}measureInitialState(){const{element:e,unresolvedKeyframes:o,name:i}=this;if(!e||!e.current)return;i==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=ho[i](e.measureViewportBox(),window.getComputedStyle(e.current)),o[0]=this.measuredOrigin;const t=o[o.length-1];t!==void 0&&e.getValue(i,t).jump(t,!1)}measureEndState(){var n;const{element:e,name:o,unresolvedKeyframes:i}=this;if(!e||!e.current)return;const t=e.getValue(o);t&&t.jump(this.measuredOrigin,!1);const r=i.length-1,s=i[r];i[r]=ho[o](e.measureViewportBox(),window.getComputedStyle(e.current)),s!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=s),(n=this.removedTransforms)!=null&&n.length&&this.removedTransforms.forEac
vendor: 9,694 bytes, line 488
488h(([c,d])=>{e.getValue(c).set(d)}),this.resolveNoneKeyframes()}}const Uae=new Set(["opacity","clipPath","filter","transform"]);function CS(a,e,o){if(a==null)return[];if(a instanceof EventTarget)return[a];if(typeof a=="string"){const t=document.querySelectorAll(a);return t?Array.from(t):[]}return Array.from(a).filter(i=>i!=null)}const TS=(a,e)=>e&&typeof a=="number"?e.transform(a):a;function kd(a){return Ny(a)&&"offsetHeight"in a}const{schedule:yu,cancel:Use}=Hy(queueMicrotask,!1),Sa={x:!1,y:!1};function PS(){return Sa.x||Sa.y}function Bae(a){return a==="x"||a==="y"?Sa[a]?null:(Sa[a]=!0,()=>{Sa[a]=!1}):Sa.x||Sa.y?null:(Sa.x=Sa.y=!0,()=>{Sa.x=Sa.y=!1})}function RS(a,e){const o=CS(a),i=new AbortController,t={passive:!0,...e,signal:i.signal};return[o,t,()=>i.abort()]}function Fae(a){return!(a.pointerType==="touch"||PS())}function Gae(a,e,o={}){const[i,t,r]=RS(a,o);return i.forEach(s=>{let n=!1,c=!1,d;const u=()=>{s.removeEventListener("pointerleave",f)},m=b=>{d&&(d(b),d=void 0),u()},g=b=>{n=!1,window.removeEventListener("pointerup",g),window.removeEventListener("pointercancel",g),c&&(c=!1,m(b))},p=()=>{n=!0,window.addEventListener("pointerup",g,t),window.addEventListener("pointercancel",g,t)},f=b=>{if(b.pointerType!=="touch"){if(n){c=!0;return}m(b)}},v=b=>{if(!Fae(b))return;c=!1;const S=e(s,b);typeof S=="function"&&(d=S,s.addEventListener("pointerleave",f,t))};s.addEventListener("pointerenter",v,t),s.addEventListener("pointerdown",p,t)}),r}const xS=(a,e)=>e?a===e?!0:xS(a,e.parentElement):!1,Su=a=>a.pointerType==="mouse"?typeof a.button!="number"||a.button<=0:a.isPrimary!==!1,Vae=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function $ae(a){return Vae.has(a.tagName)||a.isContentEditable===!0}const Hae=new Set(["INPUT","SELECT","TEXTAREA"]);function Wae(a){return Hae.has(a.tagName)||a.isContentEditable===!0}const as=new WeakSet;function Vp(a){return e=>{e.key==="Enter"&&a(e)}}function hc(a,e){a.dispatchEvent(new PointerEvent("pointer"+e,{isPrimary:!0,bubbles:!0}))}const Qae=(a,e)=>{const o=a.currentTarget;if(!o)return;const i=Vp(()=>{if(as.has(o))return;hc(o,"down");const t=Vp(()=>{hc(o,"up")}),r=()=>hc(o,"cancel");o.addEventListener("keyup",t,e),o.addEventListener("blur",r,e)});o.addEventListener("keydown",i,e),o.addEventListener("blur",()=>o.removeEventListener("keydown",i),e)};function $p(a){return Su(a)&&!PS()}const Hp=new WeakSet;function Kae(a,e,o={}){const[i,t,r]=RS(a,o),s=n=>{const c=n.currentTarget;if(!$p(n)||Hp.has(n))return;as.add(c),o.stopPropagation&&Hp.add(n);const d=e(c,n),u=(p,f)=>{window.removeEventListener("pointerup",m),window.removeEventListener("pointercancel",g),as.has(c)&&as.delete(c),$p(p)&&typeof d=="function"&&d(p,{success:f})},m=p=>{u(p,c===window||c===document||o.useGlobalTarget||xS(c,p.target))},g=p=>{u(p,!1)};window.addEventListener("pointerup",m,t),window.addEventListener("pointercancel",g,t)};return i.forEach(n=>{(o.useGlobalTarget?window:n).addEventListener("pointerdown",s,t),kd(n)&&(n.addEventListener("focus",d=>Qae(d,t)),!$ae(n)&&!n.hasAttribute("tabindex")&&(n.tabIndex=0))}),r}function Eu(a){return Ny(a)&&"ownerSVGElement"in a}const os=new WeakMap;let lo;const wS=(a,e,o)=>(i,t)=>t&&t[0]?t[0][a+"Size"]:Eu(i)&&"getBBox"in i?i.getBBox()[e]:i[o],Yae=wS("inline","width","offsetWidth"),Jae=wS("block","height","offsetHeight");function Xae({target:a,borderBoxSize:e}){var o;(o=os.get(a))==null||o.forEach(i=>{i(a,{get width(){return Yae(a,e)},get height(){return Jae(a,e)}})})}function Zae(a){a.forEach(Xae)}function eoe(){typeof ResizeObserver>"u"||(lo=new ResizeObserver(Zae))}function aoe(a,e){lo||eoe();const o=CS(a);return o.forEach(i=>{let t=os.get(i);t||(t=new Set,os.set(i,t)),t.add(e),lo==null||lo.observe(i)}),()=>{o.forEach(i=>{const t=os.get(i);t==null||t.delete(e),t!=null&&t.size||lo==null||lo.unobserve(i)})}}const is=new Set;let gi;function ooe(){gi=()=>{const a={get width(){return window.innerWidth},get height(){return window.innerHeight}};is.forEach(e=>e(a))},window.addEventListener("resize",gi)}function ioe(a){return is.add(a),gi||ooe(),()=>{is.delete(a),!is.size&&typeof gi=="function"&&(window.removeEventListener("resize",gi),gi=void 0)}}function Wp(a,e){return typeof a=="function"?ioe(a):aoe(a,e)}function toe(a){return Eu(a)&&a.tagName==="svg"}const roe=[...yS,Oe,yo],soe=a=>roe.find(AS(a)),Qp=()=>({translate:0,scale:1,origin:0,originPoint:0}),hi=()=>({x:Qp(),y:Qp()}),Kp=()=>({min:0,max:0}),Me=()=>({x:Kp(),y:Kp()}),noe=new WeakMap;function wn(a){return a!==null&&typeof a=="object"&&typeof a.start=="function"}function Ft(a){return typeof a=="string"||Array.isArray(a)}const Cu=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Tu=["initial",...Cu];function In(a){return wn(a.animate)||Tu.some(e=>Ft(a[e]))}function IS(a){return!!(In(a)||a.variants)}function coe(a,e,o){for(const i in e){const t=e[i],r=o[i];if(Le(t))a.addValue(i,t);else if(Le(r))a.addValue(i,_i(t,{owner:a}));else if(r!==t)if(a.hasValue(i)){const s=a.getValue(i);s.liveStyle===!0?s.jump(t):s.hasAnimated||s.set(t)}else{const s=a.getStaticValue(i);a.addValue(i,_i(s!==void 0?s:t,{owner:a}))}}for(const i in o)e[i]===void 0&&a.removeValue(i);return e}const _d={current:null},DS={current:!1},doe=typeof window<"u";function loe(){if(DS.current=!0,!!doe)if(window.matchMedia){const a=window.matchMedia("(prefers-reduced-motion)"),e=()=>_d.current=a.matches;a.addEventListener("change",e),e()}else _d.current=!1}const Yp=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];let Ms={};function OS(a){Ms=a}function uoe(){return Ms}class moe{scrapeMotionValuesFromProps(e,o,i){return{}}constructor({parent:e,props:o,presenceContext:i,reducedMotionConfig:t,skipAnimations:r,blockInitialAnimation:s,visualState:n},c={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.shouldSkipAnimations=!1,this.values=new Map,this.KeyframeResolver=gu,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.hasBeenMounted=!1,this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const p=Ge.now();this.renderScheduledAt<p&&(this.renderScheduledAt=p,ve.render(this.render,!1,!0))};const{latestValues:d,renderState:u}=n;this.latestValues=d,this.baseTarget={...d},this.initialValues=o.initial?{...d}:{},this.renderState=u,this.parent=e,this.props=o,this.presenceContext=i,this.depth=e?e.depth+1:0,this.reducedMotionConfig=t,this.skipAnimationsConfig=r,this.options=c,this.blockInitialAnimation=!!s,this.isControllingVariants=In(o),this.isVariantNode=IS(o),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(e&&e.current);const{willChange:m,...g}=this.scrapeMotionValuesFromProps(o,{},this);for(const p in g){const f=g[p];d[p]!==void 0&&Le(f)&&f.set(d[p])}}mount(e){var o,i;if(this.hasBeenMounted)for(const t in this.initialValues)(o=this.values.get(t))==null||o.jump(this.initialValues[t]),this.latestValues[t]=this.initialValues[t];this.current=e,noe.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((t,r)=>this.bindToMotionValue(r,t)),this.reducedMotionConfig==="never"?this.shouldReduceMotion=!1:this.reducedMotionConfig==="always"?this.shouldReduceMotion=!0:(DS.current||loe(),this.shouldReduceMotion=_d.current),this.shouldSkipAnimations=this.skipAnimationsConfig??!1,(i=this.parent)==null||i.addChild(this),this.update(this.props,this.presenceContext),this.hasBeenMounted=!0}unmount(){var e;this.projection&&this.projection.unmount(),Ao(this.notifyUpdate),Ao(this.render),this.valueSubscriptions.forEach(o=>o()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(e=this.parent)==null||e.removeChild(this);for(const o in this.events)this.events[o].clear();for(const o in this.features){const i=this.features[o];i&&(i.unmount(),i.isMounted=!1)}this.current=null}addChild(e){this.children.add(e),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(e)}removeChild(e){this.children.delete(e),this.enteringChildren&&this.enteringChildren.delete(e)}bindToMotionValue(e,o){if(this.valueSubscriptions.has(e)&&this.valueSubscriptions.get(e)(),o.accelerate&&Uae.has(e)&&this.current instanceof HTMLElement){const{factory:s,keyframes:n,times:c,ease:d,duration:u}=o.accelerate,m=new lS({element:this.current,name:e,keyframes:n,times:c,ease:d,duration:da(u)}),g=s(m);this.valueSubscriptions.set(e,()=>{g(),m.cancel()});return}const i=Yi.has(e);i&&this.onBindTransform&&this.onBindTransform();const t=o.on("change",s=>{this.latestValues[e]=s,this.props.onUpdate&&ve.preRender(this.notifyUpdate),i&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let r;typeof window<"u"&&window.MotionCheckAppearSync&&(r=window.MotionCheckAppearSync(this,e,o)),this.valueSubscriptions.set(e,()=>{t(),r&&r(),o.owner&&o.stop()})}sortNodePosition(e){return!this.current||!this.sortInstanceNodePosition||this.type!==e.type?0:this.sortInstanceNodePosition(this.current,e.current)}updateFeatures(){let e="animation";for(e in Ms){const o=Ms[e];if(!o)continue;const{isEnabled:i,Feature:t}=o;if(!this.features[e]&&t&&i(this.props)&&(this.features[e]=new t(this)),this.features[e]){const r=this.features[e];
vendor: 15,770 bytes, line 488
488r.isMounted?r.update():(r.mount(),r.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Me()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,o){this.latestValues[e]=o}update(e,o){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=o;for(let i=0;i<Yp.length;i++){const t=Yp[i];this.propEventSubscriptions[t]&&(this.propEventSubscriptions[t](),delete this.propEventSubscriptions[t]);const r="on"+t,s=e[r];s&&(this.propEventSubscriptions[t]=this.on(t,s))}this.prevMotionValues=coe(this,this.scrapeMotionValuesFromProps(e,this.prevProps||{},this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(e){const o=this.getClosestVariantNode();if(o)return o.variantChildren&&o.variantChildren.add(e),()=>o.variantChildren.delete(e)}addValue(e,o){const i=this.values.get(e);o!==i&&(i&&this.removeValue(e),this.bindToMotionValue(e,o),this.values.set(e,o),this.latestValues[e]=o.get())}removeValue(e){this.values.delete(e);const o=this.valueSubscriptions.get(e);o&&(o(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,o){if(this.props.values&&this.props.values[e])return this.props.values[e];let i=this.values.get(e);return i===void 0&&o!==void 0&&(i=_i(o===null?void 0:o,{owner:this}),this.addValue(e,i)),i}readValue(e,o){let i=this.latestValues[e]!==void 0||!this.current?this.latestValues[e]:this.getBaseTargetFromProps(this.props,e)??this.readValueFromInstance(this.current,e,this.options);return i!=null&&(typeof i=="string"&&(My(i)||zy(i))?i=parseFloat(i):!soe(i)&&yo.test(o)&&(i=ES(e,o)),this.setBaseTarget(e,Le(i)?i.get():i)),Le(i)?i.get():i}setBaseTarget(e,o){this.baseTarget[e]=o}getBaseTarget(e){var r;const{initial:o}=this.props;let i;if(typeof o=="string"||typeof o=="object"){const s=vu(this.props,o,(r=this.presenceContext)==null?void 0:r.custom);s&&(i=s[e])}if(o&&i!==void 0)return i;const t=this.getBaseTargetFromProps(this.props,e);return t!==void 0&&!Le(t)?t:this.initialValues[e]!==void 0&&i===void 0?void 0:this.baseTarget[e]}on(e,o){return this.events[e]||(this.events[e]=new iu),this.events[e].add(o)}notify(e,...o){this.events[e]&&this.events[e].notify(...o)}scheduleRenderMicrotask(){yu.render(this.render)}}class MS extends moe{constructor(){super(...arguments),this.KeyframeResolver=Lae}sortInstanceNodePosition(e,o){return e.compareDocumentPosition(o)&2?1:-1}getBaseTargetFromProps(e,o){const i=e.style;return i?i[o]:void 0}removeValueFromRenderState(e,{vars:o,style:i}){delete o[e],delete i[e]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:e}=this.props;Le(e)&&(this.childSubscription=e.on("change",o=>{this.current&&(this.current.textContent=`${o}`)}))}}class Po{constructor(e){this.isMounted=!1,this.node=e}update(){}}function NS({top:a,left:e,right:o,bottom:i}){return{x:{min:e,max:o},y:{min:a,max:i}}}function poe({x:a,y:e}){return{top:e.min,right:a.max,bottom:e.max,left:a.min}}function goe(a,e){if(!e)return a;const o=e({x:a.left,y:a.top}),i=e({x:a.right,y:a.bottom});return{top:o.y,left:o.x,bottom:i.y,right:i.x}}function fc(a){return a===void 0||a===1}function qd({scale:a,scaleX:e,scaleY:o}){return!fc(a)||!fc(e)||!fc(o)}function jo(a){return qd(a)||zS(a)||a.z||a.rotate||a.rotateX||a.rotateY||a.skewX||a.skewY}function zS(a){return Jp(a.x)||Jp(a.y)}function Jp(a){return a&&a!=="0%"}function Ns(a,e,o){const i=a-o,t=e*i;return o+t}function Xp(a,e,o,i,t){return t!==void 0&&(a=Ns(a,t,i)),Ns(a,o,i)+e}function Ld(a,e=0,o=1,i,t){a.min=Xp(a.min,e,o,i,t),a.max=Xp(a.max,e,o,i,t)}function jS(a,{x:e,y:o}){Ld(a.x,e.translate,e.scale,e.originPoint),Ld(a.y,o.translate,o.scale,o.originPoint)}const Zp=.999999999999,eg=1.0000000000001;function hoe(a,e,o,i=!1){const t=o.length;if(!t)return;e.x=e.y=1;let r,s;for(let n=0;n<t;n++){r=o[n],s=r.projectionDelta;const{visualElement:c}=r.options;c&&c.props.style&&c.props.style.display==="contents"||(i&&r.options.layoutScroll&&r.scroll&&r!==r.root&&vi(a,{x:-r.scroll.offset.x,y:-r.scroll.offset.y}),s&&(e.x*=s.x.scale,e.y*=s.y.scale,jS(a,s)),i&&jo(r.latestValues)&&vi(a,r.latestValues))}e.x<eg&&e.x>Zp&&(e.x=1),e.y<eg&&e.y>Zp&&(e.y=1)}function fi(a,e){a.min=a.min+e,a.max=a.max+e}function ag(a,e,o,i,t=.5){const r=Te(a.min,a.max,t);Ld(a,e,o,r,i)}function vi(a,e){ag(a.x,e.x,e.scaleX,e.scale,e.originX),ag(a.y,e.y,e.scaleY,e.scale,e.originY)}function kS(a,e){return NS(goe(a.getBoundingClientRect(),e))}function foe(a,e,o){const i=kS(a,o),{scroll:t}=e;return t&&(fi(i.x,t.offset.x),fi(i.y,t.offset.y)),i}const voe={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},boe=Ki.length;function Aoe(a,e,o){let i="",t=!0;for(let r=0;r<boe;r++){const s=Ki[r],n=a[s];if(n===void 0)continue;let c=!0;if(typeof n=="number")c=n===(s.startsWith("scale")?1:0);else{const d=parseFloat(n);c=s.startsWith("scale")?d===1:d===0}if(!c||o){const d=TS(n,Au[s]);if(!c){t=!1;const u=voe[s]||s;i+=`${u}(${d}) `}o&&(e[s]=d)}}return i=i.trim(),o?i=o(e,t?"":i):t&&(i="none"),i}function Pu(a,e,o){const{style:i,vars:t,transformOrigin:r}=a;let s=!1,n=!1;for(const c in e){const d=e[c];if(Yi.has(c)){s=!0;continue}else if(Qy(c)){t[c]=d;continue}else{const u=TS(d,Au[c]);c.startsWith("origin")?(n=!0,r[c]=u):i[c]=u}}if(e.transform||(s||o?i.transform=Aoe(e,a.transform,o):i.transform&&(i.transform="none")),n){const{originX:c="50%",originY:d="50%",originZ:u=0}=r;i.transformOrigin=`${c} ${d} ${u}`}}function _S(a,{style:e,vars:o},i,t){const r=a.style;let s;for(s in e)r[s]=e[s];t==null||t.applyProjectionStyles(r,i);for(s in o)r.setProperty(s,o[s])}function og(a,e){return e.max===e.min?0:a/(e.max-e.min)*100}const rt={correct:(a,e)=>{if(!e.target)return a;if(typeof a=="string")if(W.test(a))a=parseFloat(a);else return a;const o=og(a,e.target.x),i=og(a,e.target.y);return`${o}% ${i}%`}},yoe={correct:(a,{treeScale:e,projectionDelta:o})=>{const i=a,t=yo.parse(a);if(t.length>5)return i;const r=yo.createTransformer(a),s=typeof t[0]!="number"?1:0,n=o.x.scale*e.x,c=o.y.scale*e.y;t[0+s]/=n,t[1+s]/=c;const d=Te(n,c,.5);return typeof t[2+s]=="number"&&(t[2+s]/=d),typeof t[3+s]=="number"&&(t[3+s]/=d),r(t)}},Ud={borderRadius:{...rt,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:rt,borderTopRightRadius:rt,borderBottomLeftRadius:rt,borderBottomRightRadius:rt,boxShadow:yoe};function qS(a,{layout:e,layoutId:o}){return Yi.has(a)||a.startsWith("origin")||(e||o!==void 0)&&(!!Ud[a]||a==="opacity")}function Ru(a,e,o){var s;const i=a.style,t=e==null?void 0:e.style,r={};if(!i)return r;for(const n in i)(Le(i[n])||t&&Le(t[n])||qS(n,a)||((s=o==null?void 0:o.getValue(n))==null?void 0:s.liveStyle)!==void 0)&&(r[n]=i[n]);return r}function Soe(a){return window.getComputedStyle(a)}class Eoe extends MS{constructor(){super(...arguments),this.type="html",this.renderInstance=_S}readValueFromInstance(e,o){var i;if(Yi.has(o))return(i=this.projection)!=null&&i.isProjecting?Rd(o):Uee(e,o);{const t=Soe(e),r=(Qy(o)?t.getPropertyValue(o):t[o])||0;return typeof r=="string"?r.trim():r}}measureInstanceViewportBox(e,{transformPagePoint:o}){return kS(e,o)}build(e,o,i){Pu(e,o,i.transformTemplate)}scrapeMotionValuesFromProps(e,o,i){return Ru(e,o,i)}}const Coe={offset:"stroke-dashoffset",array:"stroke-dasharray"},Toe={offset:"strokeDashoffset",array:"strokeDasharray"};function Poe(a,e,o=1,i=0,t=!0){a.pathLength=1;const r=t?Coe:Toe;a[r.offset]=`${-i}`,a[r.array]=`${e} ${o}`}const Roe=["offsetDistance","offsetPath","offsetRotate","offsetAnchor"];function LS(a,{attrX:e,attrY:o,attrScale:i,pathLength:t,pathSpacing:r=1,pathOffset:s=0,...n},c,d,u){if(Pu(a,n,d),c){a.style.viewBox&&(a.attrs.viewBox=a.style.viewBox);return}a.attrs=a.style,a.style={};const{attrs:m,style:g}=a;m.transform&&(g.transform=m.transform,delete m.transform),(g.transform||m.transformOrigin)&&(g.transformOrigin=m.transformOrigin??"50% 50%",delete m.transformOrigin),g.transform&&(g.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete m.transformBox);for(const p of Roe)m[p]!==void 0&&(g[p]=m[p],delete m[p]);e!==void 0&&(m.x=e),o!==void 0&&(m.y=o),i!==void 0&&(m.scale=i),t!==void 0&&Poe(m,t,r,s,!1)}const US=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]),BS=a=>typeof a=="string"&&a.toLowerCase()==="svg";function xoe(a,e,o,i){_S(a,e,void 0,i);for(const t in e.attrs)a.setAttribute(US.has(t)?t:bu(t),e.attrs[t])}function FS(a,e,o){const i=Ru(a,e,o);for(const t in a)if(Le(a[t])||Le(e[t])){const r=Ki.indexOf(t)!==-1?"attr"+t.charAt(0).toUpperCase()+t.substring(1):t;i[r]=a[t]}return i}class woe extends MS{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=Me}getBaseTargetFromProps(e,o){return e[o]}readValueFromInstance(e,o){if(Yi.has(o)){const i=SS(o);return i&&i.default||0}return o=US.has(o)?o:bu(o),e.getAttribute(o)}scrapeMotionValuesFromProps(e,o,i){return FS(e,o,i)}build(e,o,i){LS(e,o,this.isSVGTag,i.transformTemplate,i.style)}renderInstance(e,o,i,t){xoe(e,o,i,t)}mount(e){this.isSVGTag=BS(e.tagName),super.mount(e)}}const Ioe=Tu.length;function GS(a){if(!a)return;if(!a.isControllingVariants){const o=a.parent?GS(a.parent)||{}:{};return a.props.initial!==void 0&&(o.initial=a.props.initial),o}const e={};for(let o=0;o<Ioe;o++){const i=Tu[o],t=a.props[i];(Ft(t)||t===!1)&&(e[i]=t)}return e}function VS(a,e){if(!Array.isArray(e))return!1;const o=e.length;if(o!==a.length)return!1;for(let i=0;i<o;i++)if(e[i]!==a[i])return!1;return!0}const Doe=[...Cu].reverse(),Ooe=Cu.length;function Moe(a){return e=>Promise.all(e.map(({animation:o,options:i})=>Iae(a,o,i)))}function Noe(a){let e=Moe(a),o=ig(),i=!0;const t=c=>(d,u)=>{var g;const m=Ii(a,u,c==="exit"?(g=a.presenceContext)==null?void 0:g.custom:void 0);if(m){const{transition:p,transitionEnd:f,...v}=m;d={...d,...v,...f}}return d};function r(c){e=c(a)}function s(c){const{props:d}=a,u=GS(a.parent)||{},m=[],g=new Set;let p={},f=1/0;for(let b=0;b<Ooe;b++){const S=Doe[b],A=o[S],y=d[S]!==void 0?d[S]:u[S],E=Ft(y),C=S===c?A.isActive:null;C===!1&&(f=b);let P=y===u[S]&&y!==d[S]&&E;if(P&&i&&a.manuallyAnimateOnMount&&(P=!1),A.protectedKeys={...p},!A.isActive&&C===null||!y&&!A.prevProp||wn(y)||typeof y=="boolean")continue;if(S==="exit"&&A.isActive&&C!==!0){A.prevResolvedValues&&(p={...p,...A.prevResolvedValues});continue}const R=zoe(A.prevProp,y);let I=R||S===c&&A.isActive&&!P&&E||b>f&&E,x=!1;const w=Array.isArray(y)?y:[y];let L=w.reduce(t(S),{});C===!1&&(L={});const{prevResolvedValues:M={}}=A,N={...M,...L},T=_=>{I=!0,g.has(_)&&(x=!0,g.delete(_)),A.needsAnimating[_]=!0;const z=a.getValue(_);z&&(z.liveStyle=!1)};for(const _ in N){const z=L[_],D=M[_];if(p.hasOwnProperty(_))continue;let K=!1;Md(z)&&Md(D)?K=!VS(z,D):K=z!==D,K?z!=null?T(_):g.add(_):z!==void 0&&g.has(_)?T(_):A.protectedKeys[_]=!0}A.prevProp=y,A.prevResolvedValues=L,A.isActive&&(p={...p,...L}),i&&a.blockInitialAnimation&&(I=!1);const q=P&&R;I&&(!q||x)&&m.push(...w.map(_=>{const z={type:S};if(typeof _=="string"&&i&&!q&&a.manuallyAnimateOnMount&&a.parent){const{parent:D}=a,K=Ii(D,_);if(D.enteringChildren&&K){const{delayChildren:X}=K.transition||{};z.delay=mS(D.enteringChildren,a,X)}}return{animation:_,options:z}}))}if(g.size){const b={};if(typeof d.initial!="boolean"){const S=Ii(a,Array.isArray(d.initial)?d.initial[0]:d.initial);S&&S.transition&&(b.transition=S.transition)}g.forEach(S=>{const A=a.getBaseTarget(S),y=a.getValue(S);y&&(y.liveStyle=!0),b[S]=A??null}),m.push({animation:b})}let v=!!m.length;return i&&(d.initial===!1||d.initial===d.animate)&&!a.manuallyAnimateOnMount&&(v=!1),i=!1,v?e(m):Promise.resolve()}function n(c,d){var m;if(o[c].isActive===d)return Promise.resolve();(m=a.variantChildren)==null||m.forEach(g=>{var p;return(p=g.animationState)==null?void 0:p.setActive(c,d)}),o[c].isActive=d;const u=s(c);for(const g in o)o[g].protectedKeys={};return u}return{animateChanges:s,setActive:n,setAnimateFunction:r,getState:()=>o,reset:()=>{o=ig()}}}function zoe(a,e){return typeof e=="string"?e!==a:Array.isArray(e)?!VS(e,a):!1}function No(a=!1){return{isActive:a,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function ig(){return{animate:No(!0),whileInView:No(),whileHover:No(),whileTap:No(),whileDrag:No(),whileFocus:No(),exit:No()}}function tg(a,e){a.min=e.min,a.max=e.max}function ba(a,e){tg(a.x,e.x),tg(a.y,e.y)}function rg(a,e){a.translate=e.translate,a.scale=e.scale,a.originPoint=e.originPoint,a.origin=e.origin}const $S=1e-4,joe=1-$S,koe=1+$S,HS=.01,_oe=0-HS,qoe=0+HS;function Ve(a){return a.max-a.min}function Loe(a,e,o){return Math.abs(a-e)<=o}function sg(a,e,o,i=.5){a.origin=i,a.originPoint=Te(e.min,e.max,a.origin),a.scale=Ve(o)/Ve(e),a.translate=Te(o.min,o.max,a.origin)-a.originPoint,(a.scale>=joe&&a.scale<=koe||isNaN(a.scale))&&(a.scale=1),(a.translate>=_oe&&a.translate<=qoe||isNaN(a.translate))&&(a.translate=0)}function Et(a,e,o,i){sg(a.x,e.x,o.x,i?i.originX:void 0),sg(a.y,e.y,o.y,i?i.originY:void 0)}function ng(a,e,o){a.min=o.min+e.min,a.max=a.min+Ve(e)}function Uoe(a,e,o){ng(a.x,e.x,o.x),ng(a.y,e.y,o.y)}function cg(a,e,o){a.min=e.min-o.min,a.max=a.min+Ve(e)}function zs(a,e,o){cg(a.x,e.x,o.x),cg(a.y,e.y,o.y)}function dg(a,e,o,i,t){return a-=e,a=Ns(a,1/o,i),t!==void 0&&(a=Ns(a,1/t,i)),a}function Boe(a,e=0,o=1,i=.5,t,r=a,s=a){if(ka.test(e)&&(e=parseFloat(e),e=Te(s.min,s.max,e/100)-s.min),typeof e!="number")return;let n=Te(r.min,r.max,i);a===r&&(n-=e),a.min=dg(a.min,e,o,n,t),a.max=dg(a.max,e,o,n,t)}function lg(a,e,[o,i,t],r,s){Boe(a,e[o],e[i],e[t],e.scale,r,s)}const Foe=["x","scaleX","originX"],Goe=["y","scaleY","originY"];function ug(a,e,o,i){lg(a.x,e,Foe,o?o.x:void 0,i?i.x:void 0),lg(a.y,e,Goe,o?o.y:void 0,i?i.y:void 0)}function mg(a){return a.translate===0&&a.scale===1}function WS(a){return mg(a.x)&&mg(a.y)}function pg(a,e){return a.min===e.min&&a.max===e.max}function Voe(a,e){return pg(a.x,e.x)&&pg(a.y,e.y)}function gg(a,e){return Math.round(a.min)===Math.round(e.min)&&Math.round(a.max)===Math.round(e.max)}function QS(a,e){return gg(a.x,e.x)&&gg(a.y,e.y)}function hg(a){return Ve(a.x)/Ve(a.y)}function fg(a,e){return a.translate===e.translate&&a.scale===e.scale&&a.originPoint===e.originPoint}function Ia(a){return[a("x"),a("y")]}function $oe(a,e,o){let i="";const t=a.x.translate/e.x,r=a.y.translate/e.y,s=(o==null?void 0:o.z)||0;if((t||r||s)&&(i=`translate3d(${t}px, ${r}px, ${s}px) `),(e.x!==1||e.y!==1)&&(i+=`scale(${1/e.x}, ${1/e.y}) `),o){const{transformPerspective:d,rotate:u,rotateX:m,rotateY:g,skewX:p,skewY:f}=o;d&&(i=`perspective(${d}px) ${i}`),u&&(i+=`rotate(${u}deg) `),m&&(i+=`rotateX(${m}deg) `),g&&(i+=`rotateY(${g}deg) `),p&&(i+=`skewX(${p}deg) `),f&&(i+=`skewY(${f}deg) `)}const n=a.x.scale*e.x,c=a.y.scale*e.y;return(n!==1||c!==1)&&(i+=`scale(${n}, ${c})`),i||"none"}const KS=["TopLeft","TopRight","BottomLeft","BottomRight"],Hoe=KS.length,vg=a=>
488typeof a=="string"?parseFloat(a):a,bg=a=>typeof a=="number"||W.test(a);function Woe(a,e,o,i,t,r){t?(a.opacity=Te(0,o.opacity??1,Qoe(i)),a.opacityExit=Te(e.opacity??1,0,Koe(i))):r&&(a.opacity=Te(e.opacity??1,o.opacity??1,i));for(let s=0;s<Hoe;s++){const n=`border${KS[s]}Radius`;let c=Ag(e,n),d=Ag(o,n);if(c===void 0&&d===void 0)continue;c||(c=0),d||(d=0),c===0||d===0||bg(c)===bg(d)?(a[n]=Math.max(Te(vg(c),vg(d),i),0),(ka.test(d)||ka.test(c))&&(a[n]+="%")):a[n]=d}(e.rotate||o.rotate)&&(a.rotate=Te(e.rotate||0,o.rotate||0,i))}function Ag(a,e){return a[e]!==void 0?a[e]:a.borderRadius}const Qoe=YS(0,.5,Fy),Koe=YS(.5,.95,ca);function YS(a,e,o){return i=>i<a?0:i>e?1:o(Lt(a,e,i))}function Yoe(a,e,o){const i=Le(a)?a:_i(a);return i.start(fu("",i,e,o)),i.animation}function Gt(a,e,o,i={passive:!0}){return a.addEventListener(e,o,i),()=>a.removeEventListener(e,o)}const Joe=(a,e)=>a.depth-e.depth;class Xoe{constructor(){this.children=[],this.isDirty=!1}add(e){au(this.children,e),this.isDirty=!0}remove(e){ws(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(Joe),this.isDirty=!1,this.children.forEach(e)}}function Zoe(a,e){const o=Ge.now(),i=({timestamp:t})=>{const r=t-o;r>=e&&(Ao(i),a(r-e))};return ve.setup(i,!0),()=>Ao(i)}function ts(a){return Le(a)?a.get():a}class eie{constructor(){this.members=[]}add(e){au(this.members,e);for(let o=this.members.length-1;o>=0;o--){const i=this.members[o];if(i===e||i===this.lead||i===this.prevLead)continue;const t=i.instance;t&&t.isConnected===!1&&i.isPresent!==!1&&!i.snapshot&&ws(this.members,i)}e.scheduleRender()}remove(e){if(ws(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const o=this.members[this.members.length-1];o&&this.promote(o)}}relegate(e){const o=this.members.findIndex(t=>e===t);if(o===0)return!1;let i;for(let t=o;t>=0;t--){const r=this.members[t],s=r.instance;if(r.isPresent!==!1&&(!s||s.isConnected!==!1)){i=r;break}}return i?(this.promote(i),!0):!1}promote(e,o){const i=this.lead;if(e!==i&&(this.prevLead=i,this.lead=e,e.show(),i)){i.instance&&i.scheduleRender(),e.scheduleRender();const t=i.options.layoutDependency,r=e.options.layoutDependency;if(!(t!==void 0&&r!==void 0&&t===r)){const c=i.instance;c&&c.isConnected===!1&&!i.snapshot||(e.resumeFrom=i,o&&(e.resumeFrom.preserveOpacity=!0),i.snapshot&&(e.snapshot=i.snapshot,e.snapshot.latestValues=i.animationValues||i.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0))}const{crossfade:n}=e.options;n===!1&&i.hide()}}exitAnimationComplete(){this.members.forEach(e=>{const{options:o,resumingFrom:i}=e;o.onExitComplete&&o.onExitComplete(),i&&i.options.onExitComplete&&i.options.onExitComplete()})}scheduleRender(){this.members.forEach(e=>{e.instance&&e.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}const rs={hasAnimatedSinceResize:!0,hasEverUpdated:!1},vc=["","X","Y","Z"],aie=1e3;let oie=0;function bc(a,e,o,i){const{latestValues:t}=e;t[a]&&(o[a]=t[a],e.setStaticValue(a,0),i&&(i[a]=0))}function JS(a){if(a.hasCheckedOptimisedAppear=!0,a.root===a)return;const{visualElement:e}=a.options;if(!e)return;const o=vS(e);if(window.MotionHasOptimisedAnimation(o,"transform")){const{layout:t,layoutId:r}=a.options;window.MotionCancelOptimisedAnimation(o,"transform",ve,!(t||r))}const{parent:i}=a;i&&!i.hasCheckedOptimisedAppear&&JS(i)}function XS({attachResizeListener:a,defaultParent:e,measureScroll:o,checkIsScrollRoot:i,resetTransform:t}){return class{constructor(s={},n=e==null?void 0:e()){this.id=oie++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.layoutVersion=0,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>
vendor: 14,744 bytes, line 488
488{this.projectionUpdateScheduled=!1,this.nodes.forEach(rie),this.nodes.forEach(die),this.nodes.forEach(lie),this.nodes.forEach(sie)},this.resolvedRelativeTargetAt=0,this.linkedParentVersion=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=s,this.root=n?n.root||n:this,this.path=n?[...n.path,n]:[],this.parent=n,this.depth=n?n.depth+1:0;for(let c=0;c<this.path.length;c++)this.path[c].shouldResetTransform=!0;this.root===this&&(this.nodes=new Xoe)}addEventListener(s,n){return this.eventHandlers.has(s)||this.eventHandlers.set(s,new iu),this.eventHandlers.get(s).add(n)}notifyListeners(s,...n){const c=this.eventHandlers.get(s);c&&c.notify(...n)}hasListeners(s){return this.eventHandlers.has(s)}mount(s){if(this.instance)return;this.isSVG=Eu(s)&&!toe(s),this.instance=s;const{layoutId:n,layout:c,visualElement:d}=this.options;if(d&&!d.current&&d.mount(s),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||n)&&(this.isLayoutDirty=!0),a){let u,m=0;const g=()=>this.root.updateBlockedByResize=!1;ve.read(()=>{m=window.innerWidth}),a(s,()=>{const p=window.innerWidth;p!==m&&(m=p,this.root.updateBlockedByResize=!0,u&&u(),u=Zoe(g,250),rs.hasAnimatedSinceResize&&(rs.hasAnimatedSinceResize=!1,this.nodes.forEach(Eg)))})}n&&this.root.registerSharedNode(n,this),this.options.animate!==!1&&d&&(n||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:m,hasRelativeLayoutChanged:g,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const f=this.options.transition||d.getDefaultTransition()||hie,{onLayoutAnimationStart:v,onLayoutAnimationComplete:b}=d.getProps(),S=!this.targetLayout||!QS(this.targetLayout,p),A=!m&&g;if(this.options.layoutRoot||this.resumeFrom||A||m&&(S||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const y={...hu(f,"layout"),onPlay:v,onComplete:b};(d.shouldReduceMotion||this.options.layoutRoot)&&(y.delay=0,y.type=!1),this.startAnimation(y),this.setAnimationOrigin(u,A)}else m||Eg(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const s=this.getStack();s&&s.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),Ao(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(uie),this.animationId++)}getTransformTemplate(){const{visualElement:s}=this.options;return s&&s.getProps().transformTemplate}willUpdate(s=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&JS(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const m=this.path[u];m.shouldResetTransform=!0,m.updateScroll("snapshot"),m.options.layoutRoot&&m.willUpdate(!1)}const{layoutId:n,layout:c}=this.options;if(n===void 0&&!c)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),s&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(yg);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(Sg);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(cie),this.nodes.forEach(iie),this.nodes.forEach(tie)):this.nodes.forEach(Sg),this.clearAllSnapshots();const n=Ge.now();je.delta=qa(0,1e3/60,n-je.timestamp),je.timestamp=n,je.isProcessing=!0,dc.update.process(je),dc.preRender.process(je),dc.render.process(je),je.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,yu.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(nie),this.sharedNodes.forEach(mie)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,ve.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){ve.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Ve(this.snapshot.measuredBox.x)&&!Ve(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let c=0;c<this.path.length;c++)this.path[c].updateScroll();const s=this.layout;this.layout=this.measure(!1),this.layoutVersion++,this.layoutCorrected=Me(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:n}=this.options;n&&n.notify("LayoutMeasure",this.layout.layoutBox,s?s.layoutBox:void 0)}updateScroll(s="measure"){let n=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===s&&(n=!1),n&&this.instance){const c=i(this.instance);this.scroll={animationId:this.root.animationId,phase:s,isRoot:c,offset:o(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!t)return;const s=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,n=this.projectionDelta&&!WS(this.projectionDelta),c=this.getTransformTemplate(),d=c?c(this.latestValues,""):void 0,u=d!==this.prevTransformTemplateValue;s&&this.instance&&(n||jo(this.latestValues)||u)&&(t(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(s=!0){const n=this.measurePageBox();let c=this.removeElementScroll(n);return s&&(c=this.removeTransform(c)),fie(c),{animationId:this.root.animationId,measuredBox:n,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var d;const{visualElement:s}=this.options;if(!s)return Me();const n=s.measureViewportBox();if(!(((d=this.scroll)==null?void 0:d.wasRoot)||this.path.some(vie))){const{scroll:u}=this.root;u&&(fi(n.x,u.offset.x),fi(n.y,u.offset.y))}return n}removeElementScroll(s){var c;const n=Me();if(ba(n,s),(c=this.scroll)!=null&&c.wasRoot)return n;for(let d=0;d<this.path.length;d++){const u=this.path[d],{scroll:m,options:g}=u;u!==this.root&&m&&g.layoutScroll&&(m.wasRoot&&ba(n,s),fi(n.x,m.offset.x),fi(n.y,m.offset.y))}return n}applyTransform(s,n=!1){const c=Me();ba(c,s);for(let d=0;d<this.path.length;d++){const u=this.path[d];!n&&u.options.layoutScroll&&u.scroll&&u!==u.root&&vi(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),jo(u.latestValues)&&vi(c,u.latestValues)}return jo(this.latestValues)&&vi(c,this.latestValues),c}removeTransform(s){const n=Me();ba(n,s);for(let c=0;c<this.path.length;c++){const d=this.path[c];if(!d.instance||!jo(d.latestValues))continue;qd(d.latestValues)&&d.updateSnapshot();const u=Me(),m=d.measurePageBox();ba(u,m),ug(n,d.latestValues,d.snapshot?d.snapshot.layoutBox:void 0,u)}return jo(this.latestValues)&&ug(n,this.latestValues),n}setTargetDelta(s){this.targetDelta=s,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(s){this.options={...this.options,...s,crossfade:s.crossfade!==void 0?s.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==je.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(s=!1){var p;const n=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=n.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=n.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=n.isSharedProjectionDirty);const c=!!this.resumingFrom||this!==n;if(!(s||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(p=this.parent)!=null&&p.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:m}=this.options;if(!this.layout||!(u||m))return;this.resolvedRelativeTargetAt=je.timestamp;const g=this.getClosestProjectingParent();g&&this.linkedParentVersion!==g.layoutVersion&&!g.options.layoutRoot&&this.removeRelativeTarget(),!this.targetDelta&&!this.relativeTarget&&(g&&g.layout?this.createRelativeTarget(g,this.layout.layoutBox,g.layout.layoutBox):this.removeRelativeTarget()),!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=Me(),this.targetWithTransforms=Me()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),Uoe(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):ba(this.target,this.layout.layoutBox),jS(this.target,this.targetDelta)):ba(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget&&(this.attemptToResolveRelativeTarget=!1,g&&!!g.resumingFrom==!!this.resumingFrom&&!g.options.layoutScroll&&g.target&&this.animationProgress!==1?this.createRelativeTarget(g,this.target,g.target):this.relativeParent=this.relativeTarget=void 0))}getClosestProjectingParent(){if(!(!this.parent||qd(this.parent.latestValues)||zS(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}createRelativeTarget(s,n,c){this.relativeParent=s,this.linkedParentVersion=s.layoutVersion,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Me(),this.relativeTargetOrigin=Me(),zs(this.relativeTargetOrigin,n,c),ba(this.relativeTarget,this.relativeTargetOrigin)}removeRelativeTarget(){this.relativeParent=this.relativeTarget=void 0}calcProjection(){var f;const s=this.getLead(),n=!!this.resumingFrom||this!==s;let c=!0;if((this.isProjectionDirty||(f=this.parent)!=null&&f.isProjectionDirty)&&(c=!1),n&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===je.timestamp&&(c=!1),c)return;const{layout:d,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(d||u))return;ba(this.layoutCorrected,this.layout.layoutBox);const m=this.treeScale.x,g=this.treeScale.y;hoe(this.layoutCorrected,this.treeScale,this.path,n),s.layout&&!s.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(s.target=s.layout.layoutBox,s.targetWithTransforms=Me());const{target:p}=s;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(rg(this.prevProjectionDelta.x,this.projectionDelta.x),rg(this.prevProjectionDelta.y,this.projectionDelta.y)),Et(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==m||this.treeScale.y!==g||!fg(this.projectionDelta.x,this.prevProjectionDelta.x)||!fg(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(s=!0){var n;if((n=this.options.visualElement)==null||n.scheduleRender(),s){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=hi(),this.projectionDelta=hi(),this.projectionDeltaWithTransform=hi()}setAnimationOrigin(s,n=!1){const c=this.snapshot,d=c?c.latestValues:{},u={...this.latestValues},m=hi();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!n;const g=Me(),p=c?c.source:void 0,f=this.layout?this.layout.source:void 0,v=p!==f,b=this.getStack(),S=!b||b.members.length<=1,A=!!(v&&!S&&this.options.crossfade===!0&&!this.path.some(gie));this.animationProgress=0;let y;this.mixTargetDelta=E=>{const C=E/1e3;Cg(m.x,s.x,C),Cg(m.y,s.y,C),this.setTargetDelta(m),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(zs(g,this.layout.layoutBox,this.relativeParent.layout.layoutBox),pie(this.relativeTarget,this.relativeTargetOrigin,g,C),y&&Voe(this.relativeTarget,y)&&(this.isProjectionDirty=!1),y||(y=Me()),ba(y,this.relativeTarget)),v&&(this.animationValues=u,Woe(u,d,this.latestValues,C,A,S)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=C},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(s){var n,c,d;this.notifyListeners("animationStart"),(n=this.currentAnimation)==null||n.stop(),(d=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||d.stop(),this.pendingAnimation&&(Ao(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=ve.update(()=>{rs.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_i(0)),this.currentAnimation=Yoe(this.motionValue,[0,1e3],{...s,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),s.onUpdate&&s.onUpdate(u)},onStop:()=>{},onComplete:()=>{s.onComplete&&s.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const s=this.getStack();s&&s.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(aie),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const s=this.getLead();let{targetWithTransforms:n,target:c,layout:d,latestValues:u}=s;if(!(!n||!c||!d)){if(this!==s&&this.layout&&d&&ZS(this.options.animationType,this.layout.layoutBox,d.layoutBox)){c=this.target||Me();const m=Ve(this.layout.layoutBox.x);
vendor: 5,334 bytes, line 488
488c.x.min=s.target.x.min,c.x.max=c.x.min+m;const g=Ve(this.layout.layoutBox.y);c.y.min=s.target.y.min,c.y.max=c.y.min+g}ba(n,c),vi(n,u),Et(this.projectionDeltaWithTransform,this.layoutCorrected,n,u)}}registerSharedNode(s,n){this.sharedNodes.has(s)||this.sharedNodes.set(s,new eie),this.sharedNodes.get(s).add(n);const d=n.options.initialPromotionConfig;n.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(n):void 0})}isLead(){const s=this.getStack();return s?s.lead===this:!0}getLead(){var n;const{layoutId:s}=this.options;return s?((n=this.getStack())==null?void 0:n.lead)||this:this}getPrevLead(){var n;const{layoutId:s}=this.options;return s?(n=this.getStack())==null?void 0:n.prevLead:void 0}getStack(){const{layoutId:s}=this.options;if(s)return this.root.sharedNodes.get(s)}promote({needsReset:s,transition:n,preserveFollowOpacity:c}={}){const d=this.getStack();d&&d.promote(this,c),s&&(this.projectionDelta=void 0,this.needsReset=!0),n&&this.setOptions({transition:n})}relegate(){const s=this.getStack();return s?s.relegate(this):!1}resetSkewAndRotation(){const{visualElement:s}=this.options;if(!s)return;let n=!1;const{latestValues:c}=s;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(n=!0),!n)return;const d={};c.z&&bc("z",s,d,this.animationValues);for(let u=0;u<vc.length;u++)bc(`rotate${vc[u]}`,s,d,this.animationValues),bc(`skew${vc[u]}`,s,d,this.animationValues);s.render();for(const u in d)s.setStaticValue(u,d[u]),this.animationValues&&(this.animationValues[u]=d[u]);s.scheduleRender()}applyProjectionStyles(s,n){if(!this.instance||this.isSVG)return;if(!this.isVisible){s.visibility="hidden";return}const c=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,s.visibility="",s.opacity="",s.pointerEvents=ts(n==null?void 0:n.pointerEvents)||"",s.transform=c?c(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(s.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,s.pointerEvents=ts(n==null?void 0:n.pointerEvents)||""),this.hasProjected&&!jo(this.latestValues)&&(s.transform=c?c({},""):"none",this.hasProjected=!1);return}s.visibility="";const u=d.animationValues||d.latestValues;this.applyTransformsToTarget();let m=$oe(this.projectionDeltaWithTransform,this.treeScale,u);c&&(m=c(u,m)),s.transform=m;const{x:g,y:p}=this.projectionDelta;s.transformOrigin=`${g.origin*100}% ${p.origin*100}% 0`,d.animationValues?s.opacity=d===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:s.opacity=d===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const f in Ud){if(u[f]===void 0)continue;const{correct:v,applyTo:b,isCSSVariable:S}=Ud[f],A=m==="none"?u[f]:v(u[f],d);if(b){const y=b.length;for(let E=0;E<y;E++)s[b[E]]=A}else S?this.options.visualElement.renderState.vars[f]=A:s[f]=A}this.options.layoutId&&(s.pointerEvents=d===this?ts(n==null?void 0:n.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(s=>{var n;return(n=s.currentAnimation)==null?void 0:n.stop()}),this.root.nodes.forEach(yg),this.root.sharedNodes.clear()}}}function iie(a){a.updateLayout()}function tie(a){var o;const e=((o=a.resumeFrom)==null?void 0:o.snapshot)||a.snapshot;if(a.isLead()&&a.layout&&e&&a.hasListeners("didUpdate")){const{layoutBox:i,measuredBox:t}=a.layout,{animationType:r}=a.options,s=e.source!==a.layout.source;r==="size"?Ia(m=>{const g=s?e.measuredBox[m]:e.layoutBox[m],p=Ve(g);g.min=i[m].min,g.max=g.min+p}):ZS(r,e.layoutBox,i)&&Ia(m=>{const g=s?e.measuredBox[m]:e.layoutBox[m],p=Ve(i[m]);g.max=g.min+p,a.relativeTarget&&!a.currentAnimation&&(a.isProjectionDirty=!0,a.relativeTarget[m].max=a.relativeTarget[m].min+p)});const n=hi();Et(n,i,e.layoutBox);const c=hi();s?Et(c,a.applyTransform(t,!0),e.measuredBox):Et(c,i,e.layoutBox);const d=!WS(n);let u=!1;if(!a.resumeFrom){const m=a.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:g,layout:p}=m;if(g&&p){const f=Me();zs(f,e.layoutBox,g.layoutBox);const v=Me();zs(v,i,p.layoutBox),QS(f,v)||(u=!0),m.options.layoutRoot&&(a.relativeTarget=v,a.relativeTargetOrigin=f,a.relativeParent=m)}}}a.notifyListeners("didUpdate",{layout:i,snapshot:e,delta:c,layoutDelta:n,hasLayoutChanged:d,hasRelativeLayoutChanged:u})}else if(a.isLead()){const{onExitComplete:i}=a.options;i&&i()}a.options.transition=void 0}function rie(a){a.parent&&(a.isProjecting()||(a.isProjectionDirty=a.parent.isProjectionDirty),a.isSharedProjectionDirty||(a.isSharedProjectionDirty=!!(a.isProjectionDirty||a.parent.isProjectionDirty||a.parent.isSharedProjectionDirty)),a.isTransformDirty||(a.isTransformDirty=a.parent.isTransformDirty))}function sie(a){a.isProjectionDirty=a.isSharedProjectionDirty=a.isTransformDirty=!1}function nie(a){a.clearSnapshot()}function yg(a){a.clearMeasurements()}function Sg(a){a.isLayoutDirty=!1}function cie(a){const{visualElement:e}=a.options;e&&e.getProps().onBeforeLayoutMeasure&&e.notify("BeforeLayoutMeasure"),a.resetTransform()}function Eg(a){a.finishAnimation(),a.targetDelta=a.relativeTarget=a.target=void 0,a.isProjectionDirty=!0}function die(a){a.resolveTargetDelta()}function lie(a){a.calcProjection()}
488function uie(a){a.resetSkewAndRotation()}function mie(a){a.removeLeadSnapshot()}function Cg(a,e,o){a.translate=Te(e.translate,0,o),a.scale=Te(e.scale,1,o),a.origin=e.origin,a.originPoint=e.originPoint}function Tg(a,e,o,i){a.min=Te(e.min,o.min,i),a.max=Te(e.max,o.max,i)}function pie(a,e,o,i){Tg(a.x,e.x,o.x,i),Tg(a.y,e.y,o.y,i)}function gie(a){return a.animationValues&&a.animationValues.opacityExit!==void 0}const hie={duration:.45,ease:[.4,0,.1,1]},Pg=a=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(a),Rg=Pg("applewebkit/")&&!Pg("chrome/")?Math.round:ca;function xg(a){a.min=Rg(a.min),a.max=Rg(a.max)}function fie(a){xg(a.x),xg(a.y)}function ZS(a,e,o){return a==="position"||a==="preserve-aspect"&&!Loe(hg(e),hg(o),.2)}function vie(a){var e;return a!==a.root&&((e=a.scroll)==null?void 0:e.wasRoot)}const bie=XS({attachResizeListener:(a,e)=>Gt(a,"resize",e),measureScroll:()=>{var a,e;return{x:document.documentElement.scrollLeft||((a=document.body)==null?void 0:a.scrollLeft)||0,y:document.documentElement.scrollTop||((e=document.body)==null?void 0:e.scrollTop)||0}},checkIsScrollRoot:()=>!0}),Ac={current:void 0},eE=XS({measureScroll:a=>({x:a.scrollLeft,y:a.scrollTop}),defaultParent:()=>{if(!Ac.current){const a=new bie({});a.mount(window),a.setOptions({layoutScroll:!0}),Ac.current=a}return Ac.current},resetTransform:(a,e)=>{a.style.transform=e!==void 0?e:"none"},checkIsScrollRoot:a=>window.getComputedStyle(a).position==="fixed"}),xu=h.createContext({transformPagePoint:a=>a,isStatic:!1,reducedMotion:"never"});function wg(a,e){if(typeof a=="function")return a(e);a!=null&&(a.current=e)}function Aie(...a){return e=>{let o=!1;const i=a.map(t=>{const r=wg(t,e);return!o&&typeof r=="function"&&(o=!0),r});if(o)return()=>{for(let t=0;t<i.length;t++){const r=i[t];typeof r=="function"?r():wg(a[t],null)}}}}function yie(...a){return h.useCallback(Aie(...a),a)}class Sie extends h.Component{getSnapshotBeforeUpdate(e){const o=this.props.childRef.current;if(o&&e.isPresent&&!this.props.isPresent&&this.props.pop!==!1){const i=o.offsetParent,t=kd(i)&&i.offsetWidth||0,r=kd(i)&&i.offsetHeight||0,s=this.props.sizeRef.current;s.height=o.offsetHeight||0,s.width=o.offsetWidth||0,s.top=o.offsetTop,s.left=o.offsetLeft,s.right=t-s.width-s.left,s.bottom=r-s.height-s.top}return null}componentDidUpdate(){}render(){return this.props.children}}function Eie({children:a,isPresent:e,anchorX:o,anchorY:i,root:t,pop:r}){var g;const s=h.useId(),n=h.useRef(null),c=h.useRef({width:0,height:0,top:0,left:0,right:0,bottom:0}),{nonce:d}=h.useContext(xu),u=((g=a.props)==null?void 0:g.ref)??(a==null?void 0:a.ref),m=yie(n,u);return h.useInsertionEffect(()=>{const{width:p,height:f,top:v,left:b,right:S,bottom:A}=c.current;if(e||r===!1||!n.current||!p||!f)return;const y=o==="left"?`left: ${b}`:`right: ${S}`,E=i==="bottom"?`bottom: ${A}`:`top: ${v}`;n.current.dataset.motionPopId=s;const C=document.createElement("style");d&&(C.nonce=d);const P=t??document.head;return P.appendChild(C),C.sheet&&C.sheet.insertRule(` 489 [data-motion-pop-id="${s}"] { 490 position: absolute !important; 491 width: ${p}px !important; 492 height: ${f}px !important; 493 ${y}px !important; 494 ${E}px !important; 495 } 496 `),()=>{P.contains(C)&&P.removeChild(C)}},[e]),l.jsx(Sie,{isPresent:e,childRef:n,sizeRef:c,pop:r,children:r===!1?a:h.cloneElement(a,{ref:m})})}const Cie=({children:a,initial:e,isPresent:o,onExitComplete:i,custom:t,presenceAffectsLayout:r,mode:s,anchorX:n,anchorY:c,root:d})=>{const u=eu(Tie),m=h.useId();let g=!0,p=h.useMemo(()=>(g=!1,{id:m,initial:e,isPresent:o,custom:t,onExitComplete:f=>{u.set(f,!0);for(const v of u.values())if(!v)return;i&&i()},register:f=>(u.set(f,!1),()=>u.delete(f))}),[o,u,i]);return r&&g&&(p={...p}),h.useMemo(()=>{u.forEach((f,v)=>u.set(v,!1))},[o]),h.useEffect(()=>{!o&&!u.size&&i&&i()},[o]),a=l.jsx(Eie,{pop:s==="popLayout",isPresent:o,anchorX:n,anchorY:c,root:d,children:a}),l.jsx(Rn.Provider,{value:p,children:a})};function Tie(){return new Map}function aE(a=!0){const e=h.useContext(Rn);if(e===null)return[!0,null];const{isPresent:o,onExitComplete:i,register:t}=e,r=h.useId();h.useEffect(()=>{if(a)return t(r)},[a]);const s=h.useCallback(()=>a&&i&&i(r),[r,i,a]);return!o&&i?[!1,s]:[!0]}const Lr=a=>a.key||"";function Ig(a){const e=[];
vendor: 4,585 bytes, line 496
496return h.Children.forEach(a,o=>{h.isValidElement(o)&&e.push(o)}),e}const Pie=({children:a,custom:e,initial:o=!0,onExitComplete:i,presenceAffectsLayout:t=!0,mode:r="sync",propagate:s=!1,anchorX:n="left",anchorY:c="top",root:d})=>{const[u,m]=aE(s),g=h.useMemo(()=>Ig(a),[a]),p=s&&!u?[]:g.map(Lr),f=h.useRef(!0),v=h.useRef(g),b=eu(()=>new Map),S=h.useRef(new Set),[A,y]=h.useState(g),[E,C]=h.useState(g);Oy(()=>{f.current=!1,v.current=g;for(let I=0;I<E.length;I++){const x=Lr(E[I]);p.includes(x)?(b.delete(x),S.current.delete(x)):b.get(x)!==!0&&b.set(x,!1)}},[E,p.length,p.join("-")]);const P=[];if(g!==A){let I=[...g];for(let x=0;x<E.length;x++){const w=E[x],L=Lr(w);p.includes(L)||(I.splice(x,0,w),P.push(w))}return r==="wait"&&P.length&&(I=P),C(Ig(I)),y(g),null}const{forceRender:R}=h.useContext(Zl);return l.jsx(l.Fragment,{children:E.map(I=>{const x=Lr(I),w=s&&!u?!1:g===E||p.includes(x),L=()=>{if(S.current.has(x))return;if(S.current.add(x),b.has(x))b.set(x,!0);else return;let M=!0;b.forEach(N=>{N||(M=!1)}),M&&(R==null||R(),C(v.current),s&&(m==null||m()),i&&i())};return l.jsx(Cie,{isPresent:w,initial:!f.current||o?void 0:!1,custom:e,presenceAffectsLayout:t,mode:r,root:d,onExitComplete:w?void 0:L,anchorX:n,anchorY:c,children:I},x)})})},oE=h.createContext({strict:!1}),Dg={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]};let Og=!1;function Rie(){if(Og)return;const a={};for(const e in Dg)a[e]={isEnabled:o=>Dg[e].some(i=>!!o[i])};OS(a),Og=!0}function iE(){return Rie(),uoe()}function xie(a){const e=iE();for(const o in a)e[o]={...e[o],...a[o]};OS(e)}const wie=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","propagate","ignoreStrict","viewport"]);function js(a){return a.startsWith("while")||a.startsWith("drag")&&a!=="draggable"||a.startsWith("layout")||a.startsWith("onTap")||a.startsWith("onPan")||a.startsWith("onLayout")||wie.has(a)}let tE=a=>!js(a);function Iie(a){typeof a=="function"&&(tE=e=>e.startsWith("on")?!js(e):a(e))}try{Iie(require("@emotion/is-prop-valid").default)}catch{}function Die(a,e,o){const i={};for(const t in a)t==="values"&&typeof a.values=="object"||(tE(t)||o===!0&&js(t)||!e&&!js(t)||a.draggable&&t.startsWith("onDrag"))&&(i[t]=a[t]);return i}const Dn=h.createContext({});function Oie(a,e){if(In(a)){const{initial:o,animate:i}=a;return{initial:o===!1||Ft(o)?o:void 0,animate:Ft(i)?i:void 0}}return a.inherit!==!1?e:{}}function Mie(a){const{initial:e,animate:o}=Oie(a,h.useContext(Dn));return h.useMemo(()=>({initial:e,animate:o}),[Mg(e),Mg(o)])}function Mg(a){return Array.isArray(a)?a.join(" "):a}const wu=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function rE(a,e,o){for(const i in e)!Le(e[i])&&!qS(i,o)&&(a[i]=e[i])}function Nie({transformTemplate:a},e){return h.useMemo(()=>{const o=wu();return Pu(o,e,a),Object.assign({},o.vars,o.style)},[e])}function zie(a,e){const o=a.style||{},i={};return rE(i,o,a),Object.assign(i,Nie(a,e)),i}function jie(a,e){const o={},i=zie(a,e);return a.drag&&a.dragListener!==!1&&(o.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=a.drag===!0?"none":`pan-${a.drag==="x"?"y":"x"}`),a.tabIndex===void 0&&(a.onTap||a.onTapStart||a.whileTap)&&(o.tabIndex=0),o.style=i,o}const sE=()=>({...wu(),attrs:{}});function kie(a,e,o,i){const t=h.useMemo(()=>{const r=sE();return LS(r,e,BS(i),a.transformTemplate,a.style),{...r.attrs,style:{...r.style}}},[e]);if(a.style){const r={};rE(r,a.style,a),t.style={...r,...t.style}}return t}const _ie=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Iu(a){return typeof a!="string"||a.includes("-")?!1:!!(_ie.indexOf(a)>-1||/[A-Z]/u.test(a))}function qie(a,e,o,{latestValues:i},t,r=!1,s){const c=(s??Iu(a)?kie:jie)(e,i,t,a),d=Die(e,typeof a=="str
496ing",r),u=a!==h.Fragment?{...d,...c,ref:o}:{},{children:m}=e,g=h.useMemo(()=>Le(m)?m.get():m,[m]);return h.createElement(a,{...u,children:g})}function Lie({scrapeMotionValuesFromProps:a,createRenderState:e},o,i,t){return{latestValues:Uie(o,i,t,a),renderState:e()}}function Uie(a,e,o,i){const t={},r=i(a,{});for(const g in r)t[g]=ts(r[g]);let{initial:s,animate:n}=a;const c=In(a),d=IS(a);e&&d&&!c&&a.inherit!==!1&&(s===void 0&&(s=e.initial),n===void 0&&(n=e.animate));let u=o?o.initial===!1:!1;u=u||s===!1;const m=u?n:s;if(m&&typeof m!="boolean"&&!wn(m)){const g=Array.isArray(m)?m:[m];for(let p=0;p<g.length;p++){const f=vu(a,g[p]);if(f){const{transitionEnd:v,transition:b,...S}=f;for(const A in S){let y=S[A];if(Array.isArray(y)){const E=u?y.length-1:0;y=y[E]}y!==null&&(t[A]=y)}for(const A in v)t[A]=v[A]}}}return t}const nE=a=>(e,o)=>{const i=h.useContext(Dn),t=h.useContext(Rn),r=()=>Lie(a,e,i,t);return o?r():eu(r)},Bie=nE({scrapeMotionValuesFromProps:Ru,createRenderState:wu}),Fie=nE({scrapeMotionValuesFromProps:FS,createRenderState:sE}),Gie=Symbol.for("motionComponentSymbol");function Vie(a,e,o){const i=h.useRef(o);h.useInsertionEffect(()=>{i.current=o});const t=h.useRef(null);return h.useCallback(r=>{var n;r&&((n=a.onMount)==null||n.call(a,r)),e&&(r?e.mount(r):e.unmount());const s=i.current;if(typeof s=="function")if(r){const c=s(r);typeof c=="function"&&(t.current=c)}else t.current?(t.current(),t.current=null):s(r);else s&&(s.current=r)},[e])}const cE=h.createContext({});function ui(a){return a&&typeof a=="object"&&Object.prototype.hasOwnProperty.call(a,"current")}function $ie(a,e,o,i,t,r){var y,E;const{visualElement:s}=h.useContext(Dn),n=h.useContext(oE),c=h.useContext(Rn),d=h.useContext(xu),u=d.reducedMotion,m=d.skipAnimations,g=h.useRef(null),p=h.useRef(!1);i=i||n.renderer,!g.current&&i&&(g.current=i(a,{visualState:e,parent:s,props:o,presenceContext:c,blockInitialAnimation:c?c.initial===!1:!1,reducedMotionConfig:u,skipAnimations:m,isSVG:r}),p.current&&g.current&&(g.current.manuallyAnimateOnMount=!0));const f=g.current,v=h.useContext(cE);f&&!f.projection&&t&&(f.type==="html"||f.type==="svg")&&Hie(g.current,o,t,v);const b=h.useRef(!1);h.useInsertionEffect(()=>{f&&b.current&&f.update(o,c)});const S=o[fS],A=h.useRef(!!S&&!((y=window.MotionHandoffIsComplete)!=null&&y.call(window,S))&&((E=window.MotionHasOptimisedAnimation)==null?void 0:E.call(window,S)));return Oy(()=>{p.current=!0,f&&(b.current=!0,window.MotionIsMounted=!0,f.updateFeatures(),f.scheduleRenderMicrotask(),A.current&&f.animationState&&f.animationState.animateChanges())}),h.useEffect(()=>{f&&(!A.current&&f.animationState&&f.animationState.animateChanges(),A.current&&(queueMicrotask(()=>{var C;(C=window.MotionHandoffMarkAsComplete)==null||C.call(window,S)}),A.current=!1),f.enteringChildren=void 0)}),f}function Hie(a,e,o,i){const{layoutId:t,layout:r,drag:s,dragConstraints:n,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=e;a.projection=new o(a.latestValues,e["data-framer-portal-id"]?void 0:dE(a.parent)),a.projection.setOptions({layoutId:t,layout:r,alwaysMeasureLayout:!!s||n&&ui(n),visualElement:a,animationType:typeof r=="string"?r:"both",initialPromotionConfig:i,crossfade:u,layoutScroll:c,layoutRoot:d})}function dE(a){if(a)return a.options.allowProjection!==!1?a.projection:dE(a.parent)}function yc(a,{forwardMotionProps:e=!1,type:o}={},i,t){i&&xie(i);const r=o?o==="svg":Iu(a),s=r?Fie:Bie;function n(d,u){let m;const g={...h.useContext(xu),...d,layoutId:Wie(d)},{isStatic:p}=g,f=Mie(d),v=s(d,p);if(!p&&Dy){Qie();const b=Kie(g);m=b.MeasureLayout,f.visualElement=$ie(a,v,g,t,b.ProjectionNode,r)}return l.jsxs(Dn.Provider,{value:f,children:[m&&f.visualElement?l.jsx(m,{visualElement:f.visualElement,...g}):null,qie(a,d,Vie(v,f.visualElement,u),v,p,e,r)]})}n.displayName=`motion.${typeof a=="string"?a:`create(${a.displayName??a.name??""})`}`;const c=h.forwardRef(n);return c[Gie]=a,c}function Wie({layoutId:a}){const e=h.useContext(Zl).id;return e&&a!==void 0?e+"-"+a:a}function Qie(a,e){h.useContext(oE).strict}function Kie(a){const e=iE(),{drag:o,layout:i}=e;if(!o&&!i)return{};const t={...o,...i};return{MeasureLayout:o!=null&&o.isEnabled(a)||i!=null&&i.isEnabled(a)?t.MeasureLayout:void 0,ProjectionNode:t.ProjectionNode}}
vendor: 5,343 bytes, line 496
496function Yie(a,e){if(typeof Proxy>"u")return yc;const o=new Map,i=(r,s)=>yc(r,s,a,e),t=(r,s)=>i(r,s);return new Proxy(t,{get:(r,s)=>s==="create"?i:(o.has(s)||o.set(s,yc(s,void 0,a,e)),o.get(s))})}const Jie=(a,e)=>e.isSVG??Iu(a)?new woe(e):new Eoe(e,{allowProjection:a!==h.Fragment});class Xie extends Po{constructor(e){super(e),e.animationState||(e.animationState=Noe(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();wn(e)&&(this.unmountControls=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:o}=this.node.prevProps||{};e!==o&&this.updateAnimationControlsSubscription()}unmount(){var e;this.node.animationState.reset(),(e=this.unmountControls)==null||e.call(this)}}let Zie=0;class ete extends Po{constructor(){super(...arguments),this.id=Zie++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:o}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===i)return;const t=this.node.animationState.setActive("exit",!e);o&&!e&&t.then(()=>{o(this.id)})}mount(){const{register:e,onExitComplete:o}=this.node.presenceContext||{};o&&o(this.id),e&&(this.unmount=e(this.id))}unmount(){}}const ate={animation:{Feature:Xie},exit:{Feature:ete}};function pr(a){return{point:{x:a.pageX,y:a.pageY}}}const ote=a=>e=>Su(e)&&a(e,pr(e));function Ct(a,e,o,i){return Gt(a,e,ote(o),i)}const lE=({current:a})=>a?a.ownerDocument.defaultView:null,Ng=(a,e)=>Math.abs(a-e);function ite(a,e){const o=Ng(a.x,e.x),i=Ng(a.y,e.y);return Math.sqrt(o**2+i**2)}const zg=new Set(["auto","scroll"]);class uE{constructor(e,o,{transformPagePoint:i,contextWindow:t=window,dragSnapToOrigin:r=!1,distanceThreshold:s=3,element:n}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.scrollPositions=new Map,this.removeScrollListeners=null,this.onElementScroll=p=>{this.handleScroll(p.target)},this.onWindowScroll=()=>{this.handleScroll(window)},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const p=Ec(this.lastMoveEventInfo,this.history),f=this.startEvent!==null,v=ite(p.offset,{x:0,y:0})>=this.distanceThreshold;if(!f&&!v)return;const{point:b}=p,{timestamp:S}=je;this.history.push({...b,timestamp:S});const{onStart:A,onMove:y}=this.handlers;f||(A&&A(this.lastMoveEvent,p),this.startEvent=this.lastMoveEvent),y&&y(this.lastMoveEvent,p)},this.handlePointerMove=(p,f)=>{this.lastMoveEvent=p,this.lastMoveEventInfo=Sc(f,this.transformPagePoint),ve.update(this.updatePoint,!0)},this.handlePointerUp=(p,f)=>{this.end();const{onEnd:v,onSessionEnd:b,resumeAnimation:S}=this.handlers;if((this.dragSnapToOrigin||!this.startEvent)&&S&&S(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const A=Ec(p.type==="pointercancel"?this.lastMoveEventInfo:Sc(f,this.transformPagePoint),this.history);this.startEvent&&v&&v(p,A),b&&b(p,A)},!Su(e))return;this.dragSnapToOrigin=r,this.handlers=o,this.transformPagePoint=i,this.distanceThreshold=s,this.contextWindow=t||window;const c=pr(e),d=Sc(c,this.transformPagePoint),{point:u}=d,{timestamp:m}=je;this.history=[{...u,timestamp:m}];const{onSessionStart:g}=o;g&&g(e,Ec(d,this.history)),this.removeListeners=lr(Ct(this.contextWindow,"pointermove",this.handlePointerMove),Ct(this.contextWindow,"pointerup",this.handlePointerUp),Ct(this.contextWindow,"pointercancel",this.handlePointerUp)),n&&this.startScrollTracking(n)}startScrollTracking(e){let o=e.parentElement;for(;o;){const i=getComputedStyle(o);(zg.has(i.overflowX)||zg.has(i.overflowY))&&this.scrollPositions.set(o,{x:o.scrollLeft,y:o.scrollTop}),o=o.parentElement}this.scrollPositions.set(window,{x:window.scrollX,y:window.scrollY}),window.addEventListener("scroll",this.onElementScroll,{capture:!0,passive:!0}),window.addEventListener("scroll",this.onWindowScroll,{passive:!0}),this.removeScrollListeners=()=>{window.removeEventListener("scroll",this.onElementScroll,{capture:!0}),window.removeEventListener("scroll",this.onWindowScroll)}}handleScroll(e){const o=this.scrollPositions.get(e);if(!o)return;const i=e===window,t=i?{x:window.scrollX,y:window.scrollY}:{x:e.scrollLeft,y:e.scrollTop},r={x:t.x-o.x,y:t.y-o.y};r.x===0&&r.y===0||(i?this.lastMoveEventInfo&&(this.lastMoveEventInfo.point.x+=r.x,this.lastMoveEventInfo.point.y+=r.y):this.history.length>0&&(this.history[0].x-=r.x,this.history[0].y-=r.y),this.scrollPositions.set(e,t),ve.update(this.updatePoint,!0))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),this.removeScrollListeners&&this.removeScrollListeners(),this.scrollPositions.clear(),Ao(this.updatePoint)}}function Sc(a,e){return e?{point:e(a.point)}:a}function jg(a,e){return{x:a.x-e.x,y:a.y-e.y}}function Ec({point:a},e){return{point:a,delta:jg(a,mE(e)),offset:jg(a,tte(e)),velocity:rte(e,.1)}}function tte(a){return a[0]}function mE(a){return a[a.length-1]}function rte(a,e){if(a.length<2)return{x:0,y:0};let o=a.length-1,i=null;const t=mE(a);for(;o>=0&&(i=a[o],!(t.timestamp-i.timestamp>da(e)));)o--;if(!i)return{x:0,y:0};i===a[0]&&a.length>2&&t.timestamp-i.timestamp>da(e)*2&&(i=a[1]);const r=ra(t.timestamp-i.timestamp);if(r===0)return{x:0,y:0};const s={x:(t.x-i.x)/r,y:(t.y-i.y)/r};return s.x===1/0&&(s.x=0),s.y===1/0&&(s.y=0),s}
vendor: 14,000 bytes, line 496
496function ste(a,{min:e,max:o},i){return e!==void 0&&a<e?a=i?Te(e,a,i.min):Math.max(a,e):o!==void 0&&a>o&&(a=i?Te(o,a,i.max):Math.min(a,o)),a}function kg(a,e,o){return{min:e!==void 0?a.min+e:void 0,max:o!==void 0?a.max+o-(a.max-a.min):void 0}}function nte(a,{top:e,left:o,bottom:i,right:t}){return{x:kg(a.x,o,t),y:kg(a.y,e,i)}}function _g(a,e){let o=e.min-a.min,i=e.max-a.max;return e.max-e.min<a.max-a.min&&([o,i]=[i,o]),{min:o,max:i}}function cte(a,e){return{x:_g(a.x,e.x),y:_g(a.y,e.y)}}function dte(a,e){let o=.5;const i=Ve(a),t=Ve(e);return t>i?o=Lt(e.min,e.max-i,a.min):i>t&&(o=Lt(a.min,a.max-t,e.min)),qa(0,1,o)}function lte(a,e){const o={};return e.min!==void 0&&(o.min=e.min-a.min),e.max!==void 0&&(o.max=e.max-a.min),o}const Bd=.35;function ute(a=Bd){return a===!1?a=0:a===!0&&(a=Bd),{x:qg(a,"left","right"),y:qg(a,"top","bottom")}}function qg(a,e,o){return{min:Lg(a,e),max:Lg(a,o)}}function Lg(a,e){return typeof a=="number"?a:a[e]||0}const mte=new WeakMap;class pte{constructor(e){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Me(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=e}start(e,{snapToCursor:o=!1,distanceThreshold:i}={}){const{presenceContext:t}=this.visualElement;if(t&&t.isPresent===!1)return;const r=m=>{o&&this.snapToCursor(pr(m).point),this.stopAnimation()},s=(m,g)=>{const{drag:p,dragPropagation:f,onDragStart:v}=this.getProps();if(p&&!f&&(this.openDragLock&&this.openDragLock(),this.openDragLock=Bae(p),!this.openDragLock))return;this.latestPointerEvent=m,this.latestPanInfo=g,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Ia(S=>{let A=this.getAxisMotionValue(S).get()||0;if(ka.test(A)){const{projection:y}=this.visualElement;if(y&&y.layout){const E=y.layout.layoutBox[S];E&&(A=Ve(E)*(parseFloat(A)/100))}}this.originPoint[S]=A}),v&&ve.update(()=>v(m,g),!1,!0),Nd(this.visualElement,"transform");const{animationState:b}=this.visualElement;b&&b.setActive("whileDrag",!0)},n=(m,g)=>{this.latestPointerEvent=m,this.latestPanInfo=g;const{dragPropagation:p,dragDirectionLock:f,onDirectionLock:v,onDrag:b}=this.getProps();if(!p&&!this.openDragLock)return;const{offset:S}=g;if(f&&this.currentDirection===null){this.currentDirection=hte(S),this.currentDirection!==null&&v&&v(this.currentDirection);return}this.updateAxis("x",g.point,S),this.updateAxis("y",g.point,S),this.visualElement.render(),b&&ve.update(()=>b(m,g),!1,!0)},c=(m,g)=>{this.latestPointerEvent=m,this.latestPanInfo=g,this.stop(m,g),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>{const{dragSnapToOrigin:m}=this.getProps();(m||this.constraints)&&this.startAnimation({x:0,y:0})},{dragSnapToOrigin:u}=this.getProps();this.panSession=new uE(e,{onSessionStart:r,onStart:s,onMove:n,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:i,contextWindow:lE(this.visualElement),element:this.visualElement.current})}stop(e,o){const i=e||this.latestPointerEvent,t=o||this.latestPanInfo,r=this.isDragging;if(this.cancel(),!r||!t||!i)return;const{velocity:s}=t;this.startAnimation(s);const{onDragEnd:n}=this.getProps();n&&ve.postRender(()=>n(i,t))}cancel(){this.isDragging=!1;const{projection:e,animationState:o}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.endPanSession();const{dragPropagation:i}=this.getProps();!i&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),o&&o.setActive("whileDrag",!1)}endPanSession(){this.panSession&&this.panSession.end(),this.panSession=void 0}updateAxis(e,o,i){const{drag:t}=this.getProps();if(!i||!Ur(e,t,this.currentDirection))return;const r=this.getAxisMotionValue(e);let s=this.originPoint[e]+i[e];this.constraints&&this.constraints[e]&&(s=ste(s,this.constraints[e],this.elastic[e])),r.set(s)}resolveConstraints(){var r;const{dragConstraints:e,dragElastic:o}=this.getProps(),i=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(r=this.visualElement.projection)==null?void 0:r.layout,t=this.constraints;e&&ui(e)?this.constraints||(this.constraints=this.resolveRefConstraints()):e&&i?this.constraints=nte(i.layoutBox,e):this.constraints=!1,this.elastic=ute(o),t!==this.constraints&&!ui(e)&&i&&this.constraints&&!this.hasMutatedConstraints&&Ia(s=>{this.constraints!==!1&&this.getAxisMotionValue(s)&&(this.constraints[s]=lte(i.layoutBox[s],this.constraints[s]))})}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:o}=this.getProps();if(!e||!ui(e))return!1;const i=e.current;ki(i!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");const{projection:t}=this.visualElement;if(!t||!t.layout)return!1;const r=foe(i,t.root,this.visualElement.getTransformPagePoint());let s=cte(t.layout.layoutBox,r);if(o){const n=o(poe(s));this.hasMutatedConstraints=!!n,n&&(s=NS(n))}return s}startAnimation(e){const{drag:o,dragMomentum:i,dragElastic:t,dragTransition:r,dragSnapToOrigin:s,onDragTransitionEnd:n}=this.getProps(),c=this.constraints||{},d=Ia(u=>{if(!Ur(u,o,this.currentDirection))return;let m=c&&c[u]||{};s&&(m={min:0,max:0});const g=t?200:1e6,p=t?40:1e7,f={type:"inertia",velocity:i?e[u]:0,bounceStiffness:g,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...r,...m};return this.startAxisValueAnimation(u,f)});return Promise.all(d).then(n)}startAxisValueAnimation(e,o){const i=this.getAxisMotionValue(e);return Nd(this.visualElement,e),i.start(fu(e,i,0,o,this.visualElement,!1))}stopAnimation(){Ia(e=>this.getAxisMotionValue(e).stop())}getAxisMotionValue(e){const o=`_drag${e.toUpperCase()}`,i=this.visualElement.getProps(),t=i[o];return t||this.visualElement.getValue(e,(i.initial?i.initial[e]:void 0)||0)}snapToCursor(e){Ia(o=>{const{drag:i}=this.getProps();if(!Ur(o,i,this.currentDirection))return;const{projection:t}=this.visualElement,r=this.getAxisMotionValue(o);if(t&&t.layout){const{min:s,max:n}=t.layout.layoutBox[o],c=r.get()||0;r.set(e[o]-Te(s,n,.5)+c)}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:o}=this.getProps(),{projection:i}=this.visualElement;if(!ui(o)||!i||!this.constraints)return;this.stopAnimation();const t={x:0,y:0};Ia(s=>{const n=this.getAxisMotionValue(s);if(n&&this.constraints!==!1){const c=n.get();t[s]=dte({min:c,max:c},this.constraints[s])}});const{transformTemplate:r}=this.visualElement.getProps();this.visualElement.current.style.transform=r?r({},""):"none",i.root&&i.root.updateScroll(),i.updateLayout(),this.constraints=!1,this.resolveConstraints(),Ia(s=>{if(!Ur(s,e,null))return;const n=this.getAxisMotionValue(s),{min:c,max:d}=this.constraints[s];n.set(Te(c,d,t[s]))}),this.visualElement.render()}addListeners(){if(!this.visualElement.current)return;mte.set(this.visualElement,this);const e=this.visualElement.current,o=Ct(e,"pointerdown",d=>{const{drag:u,dragListener:m=!0}=this.getProps(),g=d.target,p=g!==e&&Wae(g);u&&m&&!p&&this.start(d)});let i;const t=()=>{const{dragConstraints:d}=this.getProps();ui(d)&&d.current&&(this.constraints=this.resolveRefConstraints(),i||(i=gte(e,d.current,()=>this.scalePositionWithinConstraints())))},{projection:r}=this.visualElement,s=r.addEventListener("measure",t);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),ve.read(t);const n=Gt(window,"resize",()=>this.scalePositionWithinConstraints()),c=r.addEventListener("didUpdate",({delta:d,hasLayoutChanged:u})=>{this.isDragging&&u&&(Ia(m=>{const g=this.getAxisMotionValue(m);g&&(this.originPoint[m]+=d[m].translate,g.set(g.get()+d[m].translate))}),this.visualElement.render())});return()=>{n(),o(),s(),c&&c(),i&&i()}}getProps(){const e=this.visualElement.getProps(),{drag:o=!1,dragDirectionLock:i=!1,dragPropagation:t=!1,dragConstraints:r=!1,dragElastic:s=Bd,dragMomentum:n=!0}=e;return{...e,drag:o,dragDirectionLock:i,dragPropagation:t,dragConstraints:r,dragElastic:s,dragMomentum:n}}}function Ug(a){let e=!0;return()=>{if(e){e=!1;return}a()}}function gte(a,e,o){const i=Wp(a,Ug(o)),t=Wp(e,Ug(o));return()=>{i(),t()}}function Ur(a,e,o){return(e===!0||e===a)&&(o===null||o===a)}function hte(a,e=10){let o=null;return Math.abs(a.y)>e?o="y":Math.abs(a.x)>e&&(o="x"),o}class fte extends Po{constructor(e){super(e),this.removeGroupControls=ca,this.removeListeners=ca,this.controls=new pte(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||ca}update(){const{dragControls:e}=this.node.getProps(),{dragControls:o}=this.node.prevProps||{};e!==o&&(this.removeGroupControls(),e&&(this.removeGroupControls=e.subscribe(this.controls)))}unmount(){this.removeGroupControls(),this.removeListeners(),this.controls.isDragging||this.controls.endPanSession()}}const Cc=a=>(e,o)=>{a&&ve.update(()=>a(e,o),!1,!0)};class vte extends Po{constructor(){super(...arguments),this.removePointerDownListener=ca}onPointerDown(e){this.session=new uE(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:lE(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:o,onPan:i,onPanEnd:t}=this.node.getProps();return{onSessionStart:Cc(e),onStart:Cc(o),onMove:Cc(i),onEnd:(r,s)=>{delete this.session,t&&ve.postRender(()=>t(r,s))}}}mount(){this.removePointerDownListener=Ct(this.node.current,"pointerdown",e=>this.onPointerDown(e))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}let Tc=!1;class bte extends h.Component{componentDidMount(){const{visualElement:e,layoutGroup:o,switchLayoutGroup:i,layoutId:t}=this.props,{projection:r}=e;r&&(o.group&&o.group.add(r),i&&i.register&&t&&i.register(r),Tc&&r.root.didUpdate(),r.addEventListener("animationComplete",()=>{this.safeToRemove()}),r.setOptions({...r.options,layoutDependency:this.props.layoutDependency,onExitComplete:()=>this.safeToRemove()})),rs.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:o,visualElement:i,drag:t,isPresent:r}=this.props,{projection:s}=i;return s&&(s.isPresent=r,e.layoutDependency!==o&&s.setOptions({...s.options,layoutDependency:o}),Tc=!0,t||e.layoutDependency!==o||o===void 0||e.isPresent!==r?s.willUpdate():this.safeToRemove(),e.isPresent!==r&&(r?s.promote():s.relegate()||ve.postRender(()=>{const n=s.getStack();(!n||!n.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),yu.postRender(()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:e,layoutGroup:o,switchLayoutGroup:i}=this.props,{projection:t}=e;Tc=!0,t&&(t.scheduleCheckAfterUnmount(),o&&o.group&&o.group.remove(t),i&&i.deregister&&i.deregister(t))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function pE(a){const[e,o]=aE(),i=h.useContext(Zl);return l.jsx(bte,{...a,layoutGroup:i,switchLayoutGroup:h.useContext(cE),isPresent:e,safeToRemove:o})}const Ate={pan:{Feature:vte},drag:{Feature:fte,ProjectionNode:eE,MeasureLayout:pE}};function Bg(a,e,o){const{props:i}=a;a.animationState&&i.whileHover&&a.animationState.setActive("whileHover",o==="Start");const t="onHover"+o,r=i[t];r&&ve.postRender(()=>r(e,pr(e)))}class yte extends Po{mount(){const{current:e}=this.node;e&&(this.unmount=Gae(e,(o,i)=>(Bg(this.node,i,"Start"),t=>Bg(this.node,t,"End"))))}unmount(){}}class Ste extends Po{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch{e=!0}!e||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=lr(Gt(this.node.current,"focus",()=>this.onFocus()),Gt(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Fg(a,e,o){const{props:i}=a;if(a.current instanceof HTMLButtonElement&&a.current.disabled)return;a.animationState&&i.whileTap&&a.animationState.setActive("whileTap",o==="Start");const t="onTap"+(o==="End"?"":o),r=i[t];r&&ve.postRender(()=>r(e,pr(e)))}class Ete extends Po{mount(){const{current:e}=this.node;if(!e)return;const{globalTapTarget:o,propagate:i}=this.node.props;this.unmount=Kae(e,(t,r)=>(Fg(this.node,r,"Start"),(s,{success:n})=>Fg(this.node,s,n?"End":"Cancel")),{useGlobalTarget:o,stopPropagation:(i==null?void 0:i.tap)===!1})}unmount(){}}const Fd=new WeakMap,Pc=new WeakMap,Cte=a=>{const e=Fd.get(a.target);e&&e(a)},Tte=a=>{a.forEach(Cte)};function Pte({root:a,...e}){const o=a||document;Pc.has(o)||Pc.set(o,{});const i=Pc.get(o),t=JSON.stringify(e);return i[t]||(i[t]=new IntersectionObserver(Tte,{root:a,...e})),i[t]}function Rte(a,e,o){const i=Pte(e);return Fd.set(a,o),i.observe(a),()=>{Fd.delete(a),i.unobserve(a)}}const xte={some:0,all:1};class wte extends Po{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:o,margin:i,amount:t="some",once:r}=e,s={root:o?o.current:void 0,rootMargin:i,threshold:typeof t=="number"?t:xte[t]},n=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,r&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:m}=this.node.getProps(),g=d?u:m;g&&g(c)};return Rte(this.node.current,s,n)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:e,prevProps:o}=this.node;["amount","margin","root"].some(Ite(e,o))&&this.startObserver()}unmount(){}}
496function Ite({viewport:a={}},{viewport:e={}}={}){return o=>a[o]!==e[o]}const Dte={inView:{Feature:wte},tap:{Feature:Ete},focus:{Feature:Ste},hover:{Feature:yte}},Ote={layout:{ProjectionNode:eE,MeasureLayout:pE}},Mte={...ate,...Dte,...Ate,...Ote},Nte=Yie(Mte,Jie);function zte(){const{isTrialActive:a,isTrialExpired:e,isPaidPlan:o,trialDaysRemaining:i,plan:t}=So(),[r,s]=h.useState(!1),n=qi();if(o||r||!t||!a&&!e)return null;const c=e||i<=2;return l.jsx(Pie,{children:l.jsx(Nte.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},className:$("relative overflow-hidden border-b",c?"bg-gradient-to-r from-red-950/80 to-orange-950/60 border-red-800/50":"bg-gradient-to-r from-amber-950/60 to-yellow-950/40 border-amber-800/30"),children:l.jsxs("div",{className:"max-w-7xl mx-auto px-4 py-2 flex items-center justify-between gap-3",children:[l.jsxs("div",{className:"flex items-center gap-2 text-sm min-w-0",children:[c?l.jsx(rh,{className:"h-4 w-4 text-red-400 flex-shrink-0"}):l.jsx(QE,{className:"h-4 w-4 text-amber-400 flex-shrink-0"}),l.jsx("span",{className:$("font-medium truncate",c?"text-red-300":"text-amber-300"),children:e?k("Seu perÃodo de avaliação expirou."):i<=1?k("Ãltimo dia do trial! Atualize agora."):`${i} dias restantes no trial gratuito.`})]}),l.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[l.jsxs("button",{onClick:()=>n("/assinatura"),className:$("text-xs font-bold px-3 py-1.5 rounded-lg flex items-center gap-1.5 transition-colors",c?"bg-red-500 hover:bg-red-600 text-white":"bg-amber-500 hover:bg-amber-600 text-amber-950"),children:[k("Ver Planos")," ",l.jsx(KE,{className:"h-3 w-3"})]}),!e&&l.jsx("button",{onClick:()=>s(!0),className:"text-muted-foreground hover:text-foreground p-1",children:l.jsx($t,{className:"h-3.5 w-3.5"})})]})]})})})}function jte(){const{isTrialActive:a,isTrialExpired:e,trialDaysRemaining:o,plan:i}=So(),t=h.useRef(null);h.useEffect(()=>{if(i==="trial"){if(e&&t.current!==-1){t.current=-1,Ee.error("Seu perÃodo de avaliação expirou",{description:"Escolha um plano para continuar usando o SISTUR.",duration:1e4,action:{label:"Ver Planos",onClick:()=>window.location.assign("/assinatura")}});return}a&&(o<=1&&t.current!==1?(t.current=1,Ee.warning("Ãltimo dia do trial!",{description:"Atualize para um plano para não perder o acesso.",duration:8e3,action:{label:"Ver Planos",onClick:()=>window.location.assign("/assinatura")}})):o<=3&&o>1&&t.current!==3&&(t.current=3,Ee.warning(`${o} dias restantes no trial`,{description:"Explore as funcionalidades antes que expire.",duration:6e3})))}},[a,e,o,i])}function kte({items:a,className:e}){const{pathname:o}=eo();return l.jsx("div",{className:$("sticky top-0 z-20 -mx-3 sm:-mx-4 md:-mx-6 mb-4 px-3 sm:px-4 md:px-6 border-b border-border bg-background/80 backdrop-blur supports-[backdrop-filter]:bg-background/60",e),children:l.jsx("nav",{className:"flex gap-1 overflow-x-auto scrollbar-thin py-2",children:a.map(i=>{const t=i.exact?o===i.href:o===i.href||o.startsWith(i.href+"/"),r=i.icon;return l.jsxs(IE,{to:i.href,end:i.exact,className:$("flex items-center gap-2 px-3 py-1.5 rounded-md text-sm font-medium whitespace-nowrap transition-colors",t?"bg-primary text-primary-foreground shadow-sm":"text-muted-foreground hover:bg-muted hover:text-foreground"),children:[r&&l.jsx(r,{className:"h-4 w-4"}),l.jsx("span",{children:k(i.name)})]},i.href)})})})}function _te({children:a,title:e,subtitle:o,actions:i,subNav:t}){const[r,s]=h.useState(!1);return jte(),l.jsxs("div",{className:"min-h-screen bg-background",children:[l.jsx("a",{href:"#main-content",className:"sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-[100] focus:px-4 focus:py-2 focus:bg-primary focus:text-primary-foreground focus:rounded-md focus:outline-none",children:k("Pular para o conteúdo")}),l.jsx("div",{className:"hidden md:block",children:l.jsx(D9,{})}),l.jsx(_Z,{open:r,onOpenChange:s}),l.jsxs("div",{className:"md:pl-64 transition-all duration-300 overflow-x-clip",children:[l.jsx(zte,{}),l.jsx(xZ,{title:e,subtitle:o,onMobileMenuClick:()=>s(!0),actions:i}),l.jsxs("main",{id:"main-content",className:"p-3 sm:p-4 md:p-6 pb-20 md:pb-6 animate-in fade-in-0 duration-300 ease-out scroll-momentum",role:"main",children:[t&&t.length>0&&l.jsx(kte,{items:t}),a]})]}),l.jsx(qZ,{onMenuClick:()=>s(!0)})]})}function $a({module:a,children:e,fallbackTo:o}){const{isModuleEnabled:i,loading:t}=Tl();return t?l.jsx(l.Fragment,{children:e}):i(a)?l.jsx(l.Fragment,{children:e}):o?l.jsx(te,{to:o,replace:!0}):l.jsx(_te,{title:k("Módulo indisponÃvel"),children:l.jsx("div",{className:"max-w-xl mx-auto py-12",children:l.jsxs(qv,{children:[l.jsxs(Lv,{children:[l.jsxs(Uv,{className:"flex items-center gap-2",children:[l.jsx(Wt,{className:"h-5 w-5 text-muted-foreground"}
496),k("Módulo não habilitado")]}),l.jsx(Bv,{children:k("Este módulo não está incluÃdo no pacote contratado pela sua organização. Entre em contato com o administrador para solicitar a ativação.")})]}),l.jsx(Fv,{children:l.jsx(Ae,{asChild:!0,variant:"outline",children:l.jsx(po,{to:"/",children:k("Voltar ao Dashboard")})})})]})})})}function Pe({children:a,requireProfessor:e=!1}){const{user:o,loading:i}=ze(),{hasEDUAccess:t,isProfessor:r,isAdmin:s,isOrgAdmin:n,isBlocked:c,initialized:d,needsOnboarding:u,awaitingApproval:m,profile:g}=la(),{hasAccepted:p,isLoading:f}=er(),{isLicenseValid:v,initialized:b}=So(),S=eo();if(i&&o===null||!d&&g===null||!!o&&f&&!p||!!o&&!b)return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:l.jsxs("div",{className:"flex flex-col items-center gap-4",children:[l.jsx("div",{className:"h-12 w-12 rounded-xl gradient-hero flex items-center justify-center animate-pulse",children:l.jsx("span",{className:"text-primary-foreground font-display font-bold text-xl",children:"S"})}),l.jsx(Qo,{className:"h-6 w-6 animate-spin text-primary"}),l.jsx("p",{className:"text-sm text-muted-foreground",children:k("Carregando...")})]})});if(!o){const y=encodeURIComponent(`${S.pathname}${S.search}`);return l.jsx(te,{to:`/auth?redirect=${y}`,replace:!0})}return c?l.jsx(te,{to:"/acesso-bloqueado",replace:!0}):p?u?l.jsx(te,{to:"/onboarding",replace:!0}):m?l.jsx(te,{to:"/pending-approval",replace:!0}):s||n?l.jsx(l.Fragment,{children:a}):v?e&&!r&&!n?l.jsx(te,{to:"/edu",replace:!0}):t?l.jsx($a,{module:"edu",children:a}):l.jsx(te,{to:"/onboarding",replace:!0}):l.jsx(te,{to:"/assinatura",replace:!0}):l.jsx(te,{to:"/termos",replace:!0})}function Br({children:a,requiredFeature:e,allowExpired:o=!1,requirePaid:i=!1}){const{user:t,loading:r}=ze(),{isAdmin:s,isBlocked:n,initialized:c}=la(),{loading:d,initialized:u,isLicenseValid:m,hasFeature:g,isPaidPlan:p}=So(),{hasAccepted:f,isLoading:v}=er(),b=eo();if(r&&t===null||!c||!u||!!t&&v)return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background",children:l.jsxs("div",{className:"flex flex-col items-center gap-4",children:[l.jsx(Qo,{className:"h-6 w-6 animate-spin text-primary"}),l.jsx("p",{className:"text-sm text-muted-foreground",children:k("Verificando licença...")})]})});if(!t){const A=encodeURIComponent(`${b.pathname}${b.search}`);return l.jsx(te,{to:`/auth?redirect=${A}`,replace:!0})}return n?l.jsx(te,{to:"/acesso-bloqueado",replace:!0}):f?s?l.jsx(l.Fragment,{children:a}):!m&&!o?l.jsx(te,{to:"/assinatura",replace:!0}):e&&!g(e)?l.jsx(te,{to:"/assinatura",replace:!0}):i&&!p?l.jsx(te,{to:"/assinatura",replace:!0}):l.jsx(l.Fragment,{children:a}):l.jsx(te,{to:"/termos",replace:!0})}const qte=({onComplete:a,minDuration:e=1200})=>{const[o,i]=h.useState(!1);return h.useEffect(()=>{const t=setTimeout(()=>{i(!0),setTimeout(a,500)},e);return()=>clearTimeout(t)},[a,e]),l.jsxs("div",{className:`fixed inset-0 z-[100] flex flex-col items-center justify-center gradient-hero transition-opacity duration-500 ${o?"opacity-0":"opacity-100"}`,children:[l.jsxs("div",{className:"absolute inset-0 overflow-hidden",children:[l.jsx("div",{className:"absolute top-0 left-0 w-96 h-96 bg-primary-foreground/5 rounded-full blur-3xl -translate-x-1/2 -translate-y-1/2"}),l.jsx("div",{className:"absolute bottom-0 right-0 w-96 h-96 bg-accent/10 rounded-full blur-3xl translate-x-1/2 translate-y-1/2"})]}),l.jsxs("div",{className:"relative flex flex-col items-center gap-8",children:[l.jsxs("div",{className:"relative",children:[l.jsx("div",{className:"absolute inset-0 bg-accent/30 rounded-full blur-2xl animate-pulse"}),l.jsx("div",{className:"relative w-24 h-24 md:w-32 md:h-32 bg-card rounded-2xl shadow-2xl flex items-center justify-center transform animate-[scale-in_0.6s_ease-out]",children:l.jsxs("svg",{viewBox:"0 0 100 100",className:"w-16 h-16 md:w-20 md:h-20",fill:"none",children:[l.jsx("path",{d:"M70 25C70 25 60 20 50 20C35 20 25 30 25 40C25 55 45 55 50 60C55 65 35 65 35 75C35 85 45 90 55 90C65 90 75 85 75 85",stroke:"hsl(187 65% 28%)",strokeWidth:"8",strokeLinecap:"round",className:"animate-[draw-path_1.5s_ease-out_forwards]",style:{strokeDasharray:200,strokeDashoffset:200}}),l.jsx("circle",{cx:"75",cy:"25",r:"6",fill:"hsl(38 95% 50%)",className:"animate-[fade-scale_0.5s_ease-out_1s_forwards]",style:{opacity:0}
496})]})})]}),l.jsxs("div",{className:"flex flex-col items-center gap-2 animate-[fade-up_0.6s_ease-out_0.3s_forwards]",style:{opacity:0},children:[l.jsx("h1",{className:"text-4xl md:text-5xl font-display font-bold text-primary-foreground tracking-tight",children:k("SISTUR")}),l.jsx("p",{className:"text-primary-foreground/70 text-sm md:text-base font-medium tracking-widest uppercase",children:k("Sistema de Inteligência Territorial")})]}),l.jsxs("div",{className:"flex items-center gap-2 animate-[fade-up_0.6s_ease-out_0.6s_forwards]",style:{opacity:0},children:[l.jsxs("div",{className:"flex gap-1",children:[l.jsx("span",{className:"w-2 h-2 bg-accent rounded-full animate-[bounce_1s_ease-in-out_infinite]"}),l.jsx("span",{className:"w-2 h-2 bg-accent rounded-full animate-[bounce_1s_ease-in-out_0.2s_infinite]"}),l.jsx("span",{className:"w-2 h-2 bg-accent rounded-full animate-[bounce_1s_ease-in-out_0.4s_infinite]"})]}),l.jsx("span",{className:"text-primary-foreground/50 text-sm ml-2",children:k("Carregando...")})]})]}),l.jsx("div",{className:"absolute bottom-8 text-center animate-[fade-up_0.6s_ease-out_0.9s_forwards]",style:{opacity:0},children:l.jsx("p",{className:"text-primary-foreground/40 text-xs",children:k("Transformando indicadores em decisões estratégicas")})}),l.jsx("style",{children:` 497 @keyframes draw-path { 498 to { 499 stroke-dashoffset: 0; 500 } 501 } 502 @keyframes fade-scale { 503 to { 504 opacity: 1; 505 transform: scale(1); 506 } 507 } 508 @keyframes fade-up { 509 from { 510 opacity: 0; 511 transform: translateY(20px); 512 } 513 to { 514 opacity: 1; 515 transform: translateY(0); 516 } 517 } 518 @keyframes scale-in { 519 from { 520 transform: scale(0.8); 521 opacity: 0; 522 } 523 to { 524 transform: scale(1); 525 opacity: 1; 526 } 527 } 528 @keyframes bounce { 529 0%, 100% { 530 transform: translateY(0); 531 } 532 50% { 533 transform: translateY(-6px); 534 } 535 } 536 `})]})};function Lte(){const{user:a}=ze(),e=h.useRef([]),o=h.useRef(null),i=h.useCallback(r=>{!e.current.some(n=>n.message===r.message&&n.page_url===r.page_url)&&e.current.length<50&&e.current.push(r)},[]),t=h.useCallback(async()=>{if(!(a!=null&&a.id)||e.current.length===0)return;const r=[...e.current];e.current=[];try{const{data:s}=await ie.from("profiles").select("org_id").eq("user_id",a.id).single(),n=r.map(c=>{var d;return{user_id:a.id,org_id:(s==null?void 0:s.org_id)||null,error_type:c.error_type,message:c.message.substring(0,500),stack_trace:((d=c.stack_trace)==null?void 0:d.substring(0,2e3))||null,page_url:c.page_url,user_agent:navigator.userAgent,metadata:c.metadata||{}}});await ie.from("client_error_reports").insert(n)}catch{}},[a==null?void 0:a.id]);h.useEffect(()=>{const r=d=>{var u;i({error_type:"unhandled_error",message:d.message||"Unknown error",stack_trace:(u=d.error)==null?void 0:u.stack,page_url:window.location.pathname,metadata:{filename:d.filename,lineno:d.lineno,colno:d.colno}})},s=d=>{var m,g,p;const u=((m=d.reason)==null?void 0:m.message)||((g=d.reason)==null?void 0:g.toString())||"Unhandled promise rejection";i({error_type:"unhandled_rejection",message:u,stack_trace:(p=d.reason)==null?void 0:p.stack,page_url:window.location.pathname})},n=window.fetch;window.fetch=async(...d)=>{var u,m;try{const g=await n(...d);if(g.status>=500){const p=typeof d[0]=="string"?d[0]:((u=d[0])==null?void 0:u.url)||"";(p.includes("supabase")||p.includes("functions/v1"))&&i({error_type:"api_error",message:`API ${g.status}: ${p.split("?")[0]}`,page_url:window.location.pathname,metadata:{status:g.status,url:p.split("?")[0]}})}return g}catch(g){const p=typeof d[0]=="string"?d[0]:((m=d[0])==null?void 0:m.url)||"";throw(p.includes("supabase")||p.includes("functions/v1"))&&i({error_type:"network_error",message:`Network error: ${p.split("?")[0]}`,page_url:window.location.pathname,metadata:{url:p.split("?")[0]}}),g}},window.addEventListener("error",r),window.addEventListener("unhandledrejection",s),o.current=setInterval(t,3e4);const c=()=>t();return window.addEventListener("beforeunload",c),()=>{window.removeEventListener("error",r),window.removeEventListener("unhandledrejection",s),window.removeEventListener("beforeunload",c),window.fetch=n,o.current&&clearInterval(o.current),t()}},[i,t])}
536function Ute(){return Lte(),null}const Gd="sistur:pendingReportJobs",Bte=5e3,Fte=2;function Du(){try{const a=localStorage.getItem(Gd);if(!a)return[];const e=JSON.parse(a);if(!Array.isArray(e))return[];const o=Date.now();return e.filter(i=>typeof(i==null?void 0:i.jobId)=="string"&&typeof(i==null?void 0:i.assessmentId)=="string"&&typeof(i==null?void 0:i.startedAt)=="number"&&o-i.startedAt<Fte*3600*1e3)}catch{return[]}}function gE(a){try{a.length===0?localStorage.removeItem(Gd):localStorage.setItem(Gd,JSON.stringify(a))}catch{}}function Rc(a){gE(Du().filter(e=>e.jobId!==a))}function Gte(a){const e=Du().filter(o=>o.jobId!==a.jobId);e.push(a),gE(e)}async function Fr(a,e){if(!(typeof Notification>"u"))try{Notification.permission==="granted"&&new Notification(a,{body:e,icon:"/favicon.ico",tag:"sistur-report"})}catch{}}async function Fse(){if(typeof Notification>"u")return"unsupported";if(Notification.permission==="default")try{return await Notification.requestPermission()}catch{return"denied"}return Notification.permission}function Vte(){const a=Gs(),e=h.useRef(new Map),o=h.useCallback(s=>{const n=e.current.get(s);n!==void 0&&(window.clearInterval(n),e.current.delete(s))},[]),i=h.useCallback(async s=>{const{data:n}=await ie.from("report_jobs").select("status, report_id, error_message, created_at, started_at, finished_at").eq("id",s.jobId).maybeSingle();if(!n)return;const c=n.started_at?new Date(n.started_at).getTime():s.startedAt,d=Date.now()-c;if(n.status==="processing"&&!n.finished_at&&d>16*60*1e3){o(s.jobId),Rc(s.jobId);const m=`Geração de ${s.destinationName||"Diagnóstico"} excedeu o tempo limite`;Ee.error(m,{description:"O job ficou preso no servidor. Tente gerar novamente; se persistir, o histórico mostrará a falha técnica.",duration:12e3}),Fr("SISTUR â Relatório não concluÃdo",m),a.invalidateQueries({queryKey:["generated-reports"]}),a.invalidateQueries({queryKey:["destinations-with-report-data"]});return}if(n.status==="completed"){o(s.jobId),Rc(s.jobId);const m=`Relatório de ${s.destinationName||"Diagnóstico"} pronto`;Ee.success(m,{description:"Geração concluÃda em segundo plano. Abra a aba Relatórios para visualizar.",duration:1e4}),Fr("SISTUR â Relatório pronto",m),a.invalidateQueries({queryKey:["generated-reports"]}),a.invalidateQueries({queryKey:["destinations-with-report-data"]})}else if(n.status==="failed"){o(s.jobId),Rc(s.jobId);const u=s.destinationName||"Diagnóstico",m=n.error_message||"";if(/auto-cleanup|excedeu o limite|worker-(idle|hard)-timeout|504|gateway/i.test(m)){const p=`Geração de ${u} demorou mais que o esperado`;Ee.warning(p,{description:"O provedor de IA está lento agora. Tente novamente em alguns minutos â os trechos já gerados serão reaproveitados.",duration:14e3}),Fr("SISTUR â Geração interrompida",p)}else{const p=`Falha ao gerar relatório de ${u}`;Ee.error(p,{description:m.slice(0,200)||"Tente novamente.",duration:12e3}),Fr("SISTUR â Falha no relatório",p)}}},[a,o]),t=h.useCallback(s=>{if(e.current.has(s.jobId))return;i(s);const n=window.setInterval(()=>{i(s)},Bte);e.current.set(s.jobId,n)},[i]),r=h.useCallback((s,n,c)=>{const d={jobId:s,assessmentId:n,destinationName:c,startedAt:Date.now()};Gte(d),t(d)},[t]);return h.useEffect(()=>(Du().forEach(t),()=>{e.current.forEach(n=>window.clearInterval(n)),e.current.clear()}),[t]),{track:r}}function $te(){return Vte(),null}const xc=a=>!!a&&Ri.some(e=>e.code===a);function Hte(){const{user:a}=ze(),e=h.useRef(null);h.useEffect(()=>{!a||e.current===a.id||(e.current=a.id,(async()=>{const{data:o}=await ie.from("profiles").select("language").eq("user_id",a.id).maybeSingle(),i=o==null?void 0:o.language;if(xc(i)){if(i!==ce.language){try{window.localStorage.setItem(Cl,i)}catch{}await ce.changeLanguage(i)}}else xc(ce.language)&&await ie.from("profiles").update({language:ce.language}).eq("user_id",a.id)})())},[a]),h.useEffect(()=>{if(!a)return;const o=i=>{xc(i)&&(async()=>{try{await ie.from("profiles").update({language:i}).eq("user_id",a.id)}catch{}})()};return ce.on("languageChanged",o),()=>{ce.off("languageChanged",o)}},[a])}function Wte(){return Hte(),null}class Qte extends j.Component{constructor(){super(...arguments);ha(this,"state",{error:null});ha(this,"handleReload",()=>{this.setState({error:null}),window.location.reload()})}static getDerivedStateFromError(o){return{error:o}}componentDidCatch(o,i){console.error(`[ErrorBoundary${this.props.label?` ${this.props.label}`:""}]`,o,i==null?void 0:i.componentStack)}
536render(){if(!this.state.error)return this.props.children;const o=this.state.error.message||String(this.state.error);return l.jsx("div",{className:"min-h-screen flex items-center justify-center bg-background p-6",children:l.jsxs("div",{className:"max-w-lg w-full border border-border rounded-lg p-6 bg-card text-card-foreground space-y-3",children:[l.jsx("h1",{className:"text-lg font-semibold",children:k("Ocorreu um erro ao carregar a página")}),l.jsx("p",{className:"text-sm text-muted-foreground break-words",children:o}),l.jsxs("div",{className:"flex gap-2",children:[l.jsx("button",{onClick:this.handleReload,className:"text-sm px-3 py-1.5 rounded-md bg-primary text-primary-foreground",children:k("Recarregar")}),l.jsx("a",{href:"/",className:"text-sm px-3 py-1.5 rounded-md border border-border",children:k("Voltar ao inÃcio")})]})]})})}}const Vd="sistur:chunk-reload";typeof window<"u"&&window.addEventListener("load",()=>{setTimeout(()=>sessionStorage.removeItem(Vd),5e3)});function H(a){return h.lazy(()=>a().catch(e=>{const o=String((e==null?void 0:e.message)||e);if((o.includes("Failed to fetch dynamically imported module")||o.includes("Importing a module script failed")||o.includes("error loading dynamically imported module"))&&!sessionStorage.getItem(Vd))return sessionStorage.setItem(Vd,"1"),window.location.reload(),new Promise(()=>{});throw e}))}const Kte=H(()=>V(()=>import("./Index-CPc9zy_U.js"),[])),Yte=H(()=>V(()=>import("./Auth-BD-hZVic.js"),[])),Jte=H(()=>V(()=>import("./Onboarding-QzeskSEN.js"),[])),Xte=H(()=>V(()=>import("./PendingApproval-Cot9a__j.js"),[])),Zte=H(()=>V(()=>import("./Destinos-BhMv03qy.js"),[])),ere=H(()=>V(()=>import("./Diagnosticos-2JDqj3NP.js"),[])),are=H(()=>V(()=>import("./DiagnosticoDetalhe-B0K5sgeS.js"),__vite__mapDeps([0]))),ore=H(()=>V(()=>import("./AdminEdu-pDuTtHAC.js"),[])),ire=H(()=>V(()=>import("./EduDashboard-CUd7teQF.js"),[])),tre=H(()=>V(()=>import("./EduCatalogo-B9BkJHHY.js"),[])),rre=H(()=>V(()=>import("./EduPerfil-DZu7EbHi.js"),[])),sre=H(()=>V(()=>import("./EduTrilhas-C-xHNXFS.js"),[])),nre=H(()=>V(()=>import("./EduTrilhas-C-xHNXFS.js"),[]).then(a=>({default:a.EduTrilhaDetalhe}))),cre=H(()=>V(()=>import("./EduTrainingDetalhe-Cfcw02E6.js"),[])),dre=H(()=>V(()=>import("./EduMensagens-DXP6EU18.js"),[])),lre=H(()=>V(()=>import("./EduMinhasTurmas-Bs0cXaQY.js"),[])),ure=H(()=>V(()=>import("./EduTrilhasAdaptativas-C7YA-QKB.js"),[])),mre=H(()=>V(()=>import("./EduTrilhasAdaptativas-C7YA-QKB.js"),[]).then(a=>({default:a.EduTrilhaAdaptativaDetalhe}))),pre=H(()=>V(()=>import("./EduConquistas-B5_lxp2O.js"),[])),gre=H(()=>V(()=>import("./EduCalendario-DHABSr_q.js"),[])),hre=H(()=>V(()=>import("./EduRecompensas-DcRAMaTx.js"),[])),fre=H(()=>V(()=>import("./Configuracoes-vOeuJ7Kg.js"),[])),vre=H(()=>V(()=>import("./AdminInteligencia-DJHJCtKr.js"),[])),bre=H(()=>V(()=>import("./Relatorios-BbeGPfrF.js"),[])),Are=H(()=>V(()=>import("./NovaRodada-B62x8oXT.js"),[])),yre=H(()=>V(()=>import("./FAQ-CMq0Wwtt.js"),[])),Sre=H(()=>V(()=>import("./Metodologia-U1u2gjT6.js"),[])),Gg=H(()=>V(()=>import("./BeniChat-CSbDHX5J.js"),[])),Ere=H(()=>V(()=>import("./Ajuda-ZghZWY2a.js"),[])),Cre=H(()=>V(()=>import("./ERPIntegration-DSdr83ef.js"),[])),Tre=H(()=>V(()=>import("./PublicDestinations-1q8pTNuK.js"),[])),Pre=H(()=>V(()=>import("./ExamTaking-BlyWji6R.js"),[])),Rre=H(()=>V(()=>import("./ExamHistory-nezNfATE.js"),[])),xre=H(()=>V(()=>import("./ExamReview-D9lvowUj.js"),[])),wre=H(()=>V(()=>import("./Certificates-C_7XDBkI.js"),[])),Vg=H(()=>V(()=>import("./VerifyCertificate-WkOXpyjV.js"),[])),Ire=H(()=>V(()=>import("./OnDemandRequests-OscWoZy9.js"),[])),Dre=H(()=>V(()=>import("./AuditLogs-Cdc4QA7H.js"),[])),Ore=H(()=>V(()=>import("./AdminComercial-DBdW0gsS.js"),[])),Mre=H(()=>V(()=>import("./AdminReportLogs-D3OS2Ngu.js"),[])),Nre=H(()=>V(()=>import("./AdminSemanticLayer-fU4J4iDn.js"),[])),zre=H(()=>V(()=>import("./Projetos-iT1cQ5xo.js"),[])),jre=H(()=>V(()=>import("./MinhasTarefas-Bh5OeFH_.js"),[])),kre=H(()=>V(()=>import("./Forum-Dr3rEvxi.js"),[])),_re=H(()=>V(()=>import("./GamesHub-CVObOW8n.js"),[])),qre=H(()=>V(()=>import("./Game-x67KMtkd.js"),[])),Lre=H(()=>V(()=>import("./RPGGame-kZta0Ki1.js"),[])),Ure=H(()=>V(()=>import("./TreasureGame-BycleQoQ.js"),[])),Bre=H(()=>V(()=>import("./MemoryGame-BIja3Ek8.js"),[])),Fre=H(()=>V(()=>import("./Subscription-HlMSFJj8.js"),[])),Gre=H(()=>V(()=>import("./Precos-B8LlHw1F.js"),[])),Vre=H(()=>V(()=>import("./CheckoutReturn-Dp3C2W9N.js"),[])),$re=H(()=>V(()=>import("./OAuthConsent-Dsutmo2h.js"),[])),Hre=H(()=>V(()=>import("./AdminIngestionHealth-CopckT0u.js"),[])),Wre=H(()=>V(()=>import("./TermsAcceptance-CWXTUUdX.js"),[])),Qre=H(()=>V(()=>import("./NotFound-BokW_QqS.js"),[])),Kre=H(()=>V(()=>import("./AccessBlocked-BRNP6Cfq.js"),[])),Yre=H(()=>V(()=>import("./ProfessorDashboard-RKCeD8wl.js"),[]));H(()=>V(()=>import("./Tutorial-CdBjjhTx.js"),[]));const Jre=H(()=>V(()=>import("./TutorialDetail-QTuISeY_.js"),[])),Xre=H(()=>V(()=>import("./KnowledgeBase-DhIQ7jY5.js"),[])),Zre=H(()=>V(()=>import("./MinhasAtividades-Cbsk0G4t.js"),[])),$g=H(()=>V(()=>import("./EduHistoricoEscolar-1zkc7Hx4.js"),[])),ese=H(()=>V(()=>import("./Consorcios-Cc2ZmMK9.js"),[])),ase=H(()=>V(()=>import("./ConsorcioDetalhe-BdKampuF.js"),[])),ose=H(()=>V(()=>import("./AdminCertificacoes-BrDWiDYU.js"),[])),ise=H(()=>V(()=>import("./BeniShared-CYuHZ4Vt.js"),[])),Hg=H(()=>V(()=>import("./VerificarCertificado-WWPfnO_N.js"),[])),tse=H(()=>V(()=>import("./Observatorio-DmS5WFkE.js"),[])),rse=()=>{const a=()=>{V(()=>import("./Index-CPc9zy_U.js"),[]),V(()=>import("./EduCatalogo-B9BkJHHY.js"),[]),V(()=>import("./Configuracoes-vOeuJ7Kg.js"),[]),V(()=>import("./Subscription-HlMSFJj8.js"),[])};if(typeof window<"u"&&typeof window.requestIdleCallback=="function"){window.requestIdleCallback(a);return}window.setTimeout(a,3e3)},sse=new YE({defaultOptions:{queries:{staleTime:1e3*60*10,gcTime:1e3*60*30,refetchOnWindowFocus:!1,retry:1}}}),nse=()=>l.jsxs("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"100vh",background:"#0a0e17",flexDirection:"column",gap:"16px"},children:[l.jsx("div",{style:{width:"40px",height:"40px",border:"3px solid #1e293b",borderTopColor:"#3b82f6",borderRadius:"50%",animation:"spin 1s linear infinite"}}),l.jsx("p",{style:{color:"#94a3b8",fontFamily:"system-ui,sans-serif",fontSize:"14px",margin:"0"},children:k("Carregando...")})]}),cse=()=>{const[a,e]=h.useState(!0);return l.jsxs(l.Fragment,{children:[a&&l.jsx(qte,{onComplete:()=>{e(!1),rse()}}),l.jsx(JE,{client:sse,children:l.jsxs(Px,{children:[l.jsx(nP,{}),l.jsx(LP,{}),l.jsx(DE,{children:l.jsxs(O0,{children:[l.jsx(Ute,{}),l.jsxs(uY,{children:[l.jsx(Wte,{}),l.jsx(pY,{children:l.jsxs(gY,{children:[l.jsx($te,{}),l.jsx(h.Suspense,{fallback:l.jsx(nse,{}),children:l.jsx(Qte,{label:k("routes"),children:l.jsxs(OE,{children:[l.jsx(B,{path:"/auth",element:l.jsx(Yte,{})}),l.jsx(B,{path:"/onboarding",element:l.jsx(Jte,{})}),l.jsx(B,{path:"/pending-approval",element:l.jsx(Xte,{})}),l.jsx(B,{path:"/acesso-bloqueado",element:l.jsx(Kre,{})}),l.jsx(B,{path:"/termos",element:l.jsx(Wre,{})}),l.jsx(B,{path:"/beni/compartilhado/:token",element:l.jsx(ise,{})}),l.jsx(B,{path:"/verificar-certificado",element:l.jsx(Hg,{})}),l.jsx(B,{path:"/verificar-certificado/:code",element:l.jsx(Hg,{})}),l.jsx(B,{path:"/planos",element:l.jsx(Gre,{})}),l.jsx(B,{path:"/checkout/retorno",element:l.jsx(Vre,{})}),l.jsx(B,{path:"/.lovable/oauth/consent",element:l.jsx($re,{})}),l.jsx(B,{path:"/",element:l.jsx(We,{children:l.jsx(Kte,{})})}),l.jsx(B,{path:"/destinos",element:l.jsx(oa,{children:l.jsx($a,{module:"cadastro",children:l.jsx(Zte,{})})})}),l.jsx(B,{path:"/diagnosticos",element:l.jsx(oa,{children:l.jsx($a,{module:"diagnostico",children:l.jsx(ere,{})})})}),l.jsx(B,{path:"/diagnosticos/:id",element:l.jsx(oa,{children:l.jsx($a,{module:"diagnostico",children:l.jsx(are,{})})})}),l.jsx(B,{path:"/cursos",element:l.jsx(te,{to:"/edu",replace:!0})}),l.jsx(B,{path:"/admin/cursos",element:l.jsx(te,{to:"/professor",replace:!0})}),l.jsx(B,{path:"/learning",element:l.jsx(te,{to:"/edu",replace:!0})}),l.jsx(B,{path:"/admin/edu",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(ore,{})})}),l.jsx(B,{path:"/admin/certificacoes",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(ose,{})})}),l.jsx(B,{path:"/admin/empacotamento",element:l.jsx(te,{to:"/configuracoes?tab=empacotamento",replace:!0})}),l.jsx(B,{path:"/edu",element:l.jsx(Pe,{children:l.jsx(ire,{})})}),l.jsx(B,{path:"/edu/catalogo",element:l.jsx(Pe,{children:l.jsx(tre,{})})}),l.jsx(B,{path:"/edu/perfil",element:l.jsx(Pe,{children:l.jsx(rre,{})})}),l.jsx(B,{path:"/edu/trilhas",element:l.jsx(Pe,{children:l.jsx(sre,{})})}),l.jsx(B,{path:"/edu/trilha/:id",element:l.jsx(Pe,{children:l.jsx(nre,{})})}),l.jsx(B,{path:"/edu/training/:id",element:l.jsx(Pe,{children:l.jsx(cre,{})})}),l.jsx(B,{path:"/edu/minhas-atividades",element:l.jsx(Pe,{children:l.jsx(Zre,{})})}),l.jsx(B,{path:"/edu/boletim",element:l.jsx(Pe,{children:l.jsx($g,{})})}),l.jsx(B,{path:"/edu/historico",element:l.jsx(Pe,{children:l.jsx($g,{})})}),l.jsx(B,{path:"/edu/mensagens",element:l.jsx(Pe,{children:l.jsx(dre,{})})}),l.jsx(B,{path:"/edu/turmas",element:l.jsx(Pe,{children:l.jsx(lre,{})})}),l.jsx(B,{path:"/edu/trilhas-adaptativas",element:l.jsx(Pe,{children:l.jsx(ure,{})})}),l.jsx(B,{path:"/edu/trilhas-adaptativas/:id",element:l.jsx(Pe,{children:l.jsx(mre,{})})}),l.jsx(B,{path:"/edu/conquistas",element:l.jsx(Pe,{children:l.jsx(pre,{})})}),l.jsx(B,{path:"/edu/calendario",element:l.jsx(Pe,{children:l.jsx(gre,{})})}),l.jsx(B,{path:"/edu/recompensas",element:l.jsx(Pe,{children:l.jsx(hre,{})})}),l.jsx(B,{path:"/configuracoes",element:l.jsx(wa,{children:l.jsx(fre,{})})}),l.jsx(B,{path:"/admin/inteligencia",element:l.jsx(wa,{children:l.jsx(vre,{})})}),l.jsx(B,{path:"/relatorios",element:l.jsx(oa,{children:l.jsx(Br,{requiredFeature:"reports",children:l.jsx($a,{module:"relatorios",children:l.jsx(bre,{})})})})}),l.jsx(B,{path:"/base-conhecimento",element:l.jsx(oa,{children:l.jsx(Xre,{})})}),l.jsx(B,{path:"/nova-rodada",element:l.jsx(oa,{children:l.jsx(Are,{})})}),l.jsx(B,{path:"/faq",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(yre,{})})}),l.jsx(B,{path:"/ajuda",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Ere,{})})}),l.jsx(B,{path:"/metodologia",element:l.jsx(wa,{children:l.jsx(Sre,{})})}),l.jsx(B,{path:"/professor-beni",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Gg,{})})}),l.jsx(B,{path:"/professor-beni/c/:conversationId",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Gg,{})})}),l.jsx(B,{path:"/destinos-publicos",element:l.jsx(We,{children:l.jsx(Tre,{})})}),l.jsx(B,{path:"/erp/integracao",element:l.jsx(oa,{children:l.jsx(Br,{requiredFeature:"integrations",children:l.jsx(Cre,{})})})}),l.jsx(B,{path:"/admin/quizzes",element:l.jsx(te,{to:"/admin/edu",replace:!0})}),l.jsx(B,{path:"/edu/exam/:examId",element:l.jsx(Pe,{children:l.jsx(Pre,{})})}),l.jsx(B,{path:"/edu/minhas-provas",element:l.jsx(Pe,{children:l.jsx(Rre,{})})}),l.jsx(B,{path:"/edu/exam-review/:attemptId",element:l.jsx(Pe,{children:l.jsx(xre,{})})}),l.jsx(B,{path:"/certificados",element:l.jsx(Pe,{children:l.jsx(wre,{})})}),l.jsx(B,{path:"/verificar-certificado",element:l.jsx(Vg,{})}),l.jsx(B,{path:"/verificar-certificado/:code",element:l.jsx(Vg,{})}),l.jsx(B,{path:"/edu/solicitacoes",element:l.jsx(Pe,{children:l.jsx(Ire,{})})}),l.jsx(B,{path:"/admin/audit",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(Dre,{})})}),l.jsx(B,{path:"/admin/report-logs",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(Mre,{})})}),l.jsx(B,{path:"/admin/semantica",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(Nre,{})})}),l.jsx(B,{path:"/projetos",element:l.jsx(oa,{children:l.jsx($a,{module:"projetos",children:l.jsx(zre,{})})})}),l.jsx(B,{path:"/minhas-tarefas",element:l.jsx(oa,{children:l.jsx(jre,{})})}),l.jsx(B,{path:"/consorcios",element:l.jsx(oa,{children:l.jsx(Br,{requirePaid:!0,children:l.jsx($a,{module:"consorcios",children:l.jsx(ese,{})})})})}),l.jsx(B,{path:"/consorcios/:id",element:l.jsx(oa,{children:l.jsx(Br,{requirePaid:!0,children:l.jsx($a,{module:"consorcios",children:l.jsx(ase,{})})})})}),l.jsx(B,{path:"/observatorio",element:l.jsx(oa,{children:l.jsx($a,{module:"observatorio",children:l.jsx(tse,{})})})}),l.jsx(B,{path:"/forum",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(kre,{})})}),l.jsx(B,{path:"/game",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(_re,{})})}),l.jsx(B,{path:"/game/tcg",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(qre,{})})}),l.jsx(B,{path:"/game/rpg",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Lre,{})})}),l.jsx(B,{path:"/game/treasure",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Ure,{})})}),l.jsx(B,{path:"/game/memory",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Bre,{})})}),l.jsx(B,{path:"/assinatura",element:l.jsx(We,{redirectStudentsToEdu:!1,skipLicenseCheck:!0,children:l.jsx(Fre,{})})}),l.jsx(B,{path:"/admin/comercial",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(Ore,{})})}),l.jsx(B,{path:"/admin/licencas",element:l.jsx(te,{to:"/admin/comercial",replace:!0})}),l.jsx(B,{path:"/admin/ingestoes",element:l.jsx(wa,{platformOnly:!0,children:l.jsx(Hre,{})})}),l.jsx(B,{path:"/professor",element:l.jsx(Pe,{requireProfessor:!0,children:l.jsx(Yre,{})})}),l.jsx(B,{path:"/tutorial",element:l.jsx(te,{to:"/ajuda",replace:!0})}),l.jsx(B,{path:"/tutorial/:topicId",element:l.jsx(We,{redirectStudentsToEdu:!1,children:l.jsx(Jre,{})})}),l.jsx(B,{path:"*",element:l.jsx(Qre,{})})]})})})]})})]})]})})]})})]})},hE={en:iv,es:tv},fE=["placeholder","title","aria-label"],vE=new Set(["SCRIPT","STYLE","TEXTAREA","INPUT","CODE","PRE","NOSCRIPT"]);let ks=null,$d=null,bi=null;const _s=a=>a.replace(/\s+/g," ").trim();function dse(a){const e=hE[a];if(ks=new Map,$d=new Set,!!e)for(const[o,i]of Object.entries(e))!i||o.includes("{{")||(ks.set(_s(o),i),$d.add(_s(i)))}function lse(a){var e;
536for(let o=a;o;o=o.parentElement)if(vE.has(o.tagName)||o.isContentEditable||(e=o.hasAttribute)!=null&&e.call(o,"data-no-translate"))return!0;return!1}function Hd(a){const e=a.nodeValue;if(!e||e.length<2)return;const o=_s(e);if(!o||$d.has(o))return;const i=ks.get(o);if(!i||i===o||lse(a.parentElement))return;const t=e.match(/^\s*/)[0],r=e.match(/\s*$/)[0];a.nodeValue=t+i+r}function Wd(a){for(const e of fE){const o=a.getAttribute(e);if(!o)continue;const i=ks.get(_s(o));i&&i!==o&&a.setAttribute(e,i)}}function Wg(a){if(a.nodeType===Node.TEXT_NODE)return Hd(a);if(a.nodeType!==Node.ELEMENT_NODE)return;const e=a;if(vE.has(e.tagName)&&e.tagName!=="INPUT"&&e.tagName!=="TEXTAREA")return;Wd(e);const o=document.createTreeWalker(e,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT);let i=o.nextNode();for(;i;)i.nodeType===Node.TEXT_NODE?Hd(i):Wd(i),i=o.nextNode()}function Qg(a){if(use(),typeof document>"u"||!hE[a])return;dse(a);const e=()=>{Wg(document.body),bi=new MutationObserver(o=>{for(const i of o)i.type==="characterData"?Hd(i.target):i.type==="attributes"?Wd(i.target):i.addedNodes.forEach(Wg)}),bi.observe(document.body,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:fE})};document.body?e():document.addEventListener("DOMContentLoaded",e,{once:!0})}function use(){bi==null||bi.disconnect(),bi=null}function mse(){Qg(ce.language),ce.on("languageChanged",a=>Qg(a))}function pse({children:a}){return h.useEffect(()=>{const e=()=>{window.setTimeout(()=>window.location.reload(),400)};return ce.on("languageChanged",e),()=>{ce.off("languageChanged",e)}},[]),l.jsx(l.Fragment,{children:a})}mse();ME(document.getElementById("root")).render(l.jsx(ph,{children:l.jsx(pse,{children:l.jsx(cse,{})})}));export{Ya as $,_te as A,bo as B,qv as C,Vl as D,Nse as E,hn as F,ar as G,or as H,Uo as I,ir as J,tr as K,Ye as L,Gv as M,Ol as N,h8 as O,SZ as P,wi as Q,bd as R,S9 as S,yr as T,Ad as U,wZ as V,Lse as W,Py as X,Ry as Y,OZ as Z,MZ as _,Sr as a,we as a$,J as a0,U as a1,Ze as a2,fn as a3,rr as a4,Jv as a5,Xv as a6,Yt as a7,So as a8,Px as a9,bse as aA,Ose as aB,FJ as aC,GJ as aD,y8 as aE,S8 as aF,C8 as aG,Vi as aH,vl as aI,$e as aJ,Rl as aK,dn as aL,Pl as aM,nn as aN,Ui as aO,bl as aP,Al as aQ,Xs as aR,sa as aS,Qt as aT,Fo as aU,$s as aV,zv as aW,kv as aX,un as aY,mn as aZ,kse as a_,gb as aa,dd as ab,V as ac,ke as ad,lZ as ae,Ep as af,jse as ag,uX as ah,nX as ai,fZ as aj,mZ as ak,cy as al,v8 as am,hZ as an,P9 as ao,Tse as ap,Pse as aq,Hs as ar,ne as as,df as at,Zv as au,ld as av,Vte as aw,Fse as ax,Cse as ay,NC as az,st as b,Rse as b0,jv as b1,xse as b2,pn as b3,gn as b4,Dl as b5,LC as b6,_C as b7,zC as b8,Hl as b9,qse as ba,_se as bb,xy as bc,Nte as bd,Pie as be,DS as bf,loe as bg,_d as bh,sv as bi,er as bj,A8 as bk,Ese as bl,$ as c,Ae as d,Lh as e,Lv as f,Uv as g,Bv as h,Fv as i,Yb as j,E9 as k,Zb as l,eA as m,Q7 as n,Ey as o,Cy as p,Zt as q,ze as r,ie as s,k as t,la as u,RZ as v,Ee as w,$l as x,Cn as y,go as z};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.