{
  "projectHistory": {
    "title": "Histórico do projeto",
    "description": "Navegue pelos instantâneos salvos automaticamente neste dispositivo.",
    "empty": "Ainda não há instantâneos salvos automaticamente.",
    "summary": "{{count}} camadas · zoom {{zoom}}",
    "restore": "Restaurar",
    "discard": "Descartar",
    "restoreError": "Não foi possível restaurar este instantâneo. Ele pode estar danificado ou ser incompatível com esta versão do GeoLibre.",
    "recoveryTitle": "Recuperar o trabalho não salvo?",
    "recoveryDescription": "O GeoLibre não foi fechado corretamente. Há um salvamento automático mais recente de \"{{name}}\" disponível."
  },
  "browser": {
    "title": "Navegador",
    "services": "Serviços",
    "recent": "Recentes",
    "databases": "Bancos de dados",
    "newDatabaseConnection": "Nova conexão de banco de dados",
    "searchPlaceholder": "Pesquisar fontes de dados",
    "empty": "Nenhum serviço salvo ou projeto recente ainda.",
    "emptyGroup": "Vazio",
    "noMatches": "Nenhum resultado.",
    "addFailed": "Não foi possível adicionar esta fonte de dados.",
    "builtinBadge": "integrado",
    "newConnection": "Nova conexão {{kind}}",
    "loadingTables": "Carregando tabelas…",
    "files": "Arquivos",
    "addFolder": "Adicionar pasta",
    "addFolderFailed": "Não foi possível adicionar esta pasta.",
    "addFileFailed": "Não foi possível adicionar este arquivo.",
    "loadFolderFailed": "Não foi possível ler esta pasta.",
    "unpinFolder": "Remover “{{name}}” da lista",
    "loadingFolder": "Carregando…",
    "folderTruncated": "Mostrando os primeiros {{shown}} de {{total}}",
    "favorites": "Favoritos",
    "favorite": "Adicionar “{{name}}” aos favoritos",
    "unfavorite": "Remover “{{name}}” dos favoritos",
    "favoriteMissing": "Essa fonte de dados não existe mais — removida dos Favoritos.",
    "myData": "Meus dados",
    "renameLibraryLayer": "Renomear \"{{name}}\"",
    "deleteLibraryLayer": "Remover \"{{name}}\" de Meus dados",
    "desktopOnlyBadge": "desktop",
    "importLibrary": "Importar camadas salvas",
    "exportLibrary": "Exportar camadas salvas",
    "libraryFilterName": "JSON da biblioteca de camadas",
    "libraryImportFailed": "Não foi possível ler este arquivo de biblioteca de camadas.",
    "libraryExportFailed": "Não foi possível exportar a biblioteca de camadas.",
    "libraryLayerMissing": "Essa camada salva não existe mais.",
    "libraryLayerNeedsDesktop": "Esta camada salva lê um arquivo do disco, portanto precisa do GeoLibre Desktop. Adicione o arquivo novamente para salvar uma nova entrada.",
    "libraryLayerConfigNotApplied": "O arquivo de \"{{name}}\" foi adicionado, mas o estilo salvo não pôde ser associado a uma única camada, então não foi reaplicado.",
    "libraryLayerJoinsUnresolved_one": "A camada foi adicionada, mas 1 junção salva não pôde ser reaplicada: a camada à qual ela se junta não está neste projeto.",
    "libraryLayerJoinsUnresolved_other": "A camada foi adicionada, mas {{count}} junções salvas não puderam ser reaplicadas: as camadas às quais elas se juntam não estão neste projeto."
  },
  "about": {
    "trigger": "Sobre",
    "title": "Sobre o GeoLibre",
    "description": "O GeoLibre é uma plataforma SIG leve e nativa da nuvem.",
    "version": "Versão",
    "checkForUpdates": "Verificar atualizações",
    "tryAgain": "Tentar novamente",
    "checking": "Verificando atualizações",
    "upToDate": "Você está atualizado ({{version}}).",
    "upToDateNoVersion": "Você está atualizado.",
    "generalSectionTitle": "Geral",
    "homePage": "Página inicial",
    "githubRepository": "Repositório do GitHub"
  },
  "updates": {
    "changelogTitle": "Novidades",
    "noChangelog": "As notas de versão não estão disponíveis. Consulte a página de downloads para mais detalhes.",
    "stepsTitle": "Como atualizar",
    "download": "Baixar atualização",
    "steps": {
      "download": "Baixe o instalador para sua plataforma na página de downloads.",
      "install": "Execute o instalador. Seus projetos locais, configurações e chaves de API são mantidos.",
      "reopen": "Reabra o GeoLibre para concluir a atualização."
    },
    "severity": {
      "major": "Versão principal",
      "minor": "Atualização de recursos",
      "patch": "Atualização de correção"
    },
    "available": {
      "title": "A versão {{version}} está disponível",
      "fallback": "Uma nova versão",
      "summary": "Você está executando a versão {{current}}."
    },
    "error": {
      "message": "Não foi possível verificar atualizações.",
      "rateLimit": "Limite de taxa do GitHub excedido. Tente novamente mais tarde.",
      "http": "O GitHub retornou {{status}}.",
      "noTag": "A versão mais recente não inclui uma tag de versão.",
      "network": "Não foi possível acessar o GitHub. Verifique sua conexão e tente novamente.",
      "viewDownloads": "Ver downloads",
      "viewDownloadsHint": "Abre a página de downloads do GeoLibre no seu navegador para que você possa verificar a versão mais recente manualmente."
    },
    "startup": {
      "title": "Atualização disponível",
      "currentVersion": "Sua versão atual",
      "latestVersion": "Versão mais recente disponível",
      "download": "Baixar pacote de atualização",
      "remindLater": "Lembrar mais tarde",
      "skipVersion": "Ignorar esta versão",
      "settingsHint": "Você pode alterar as verificações de atualização em Configurações → Atualizações."
    }
  },
  "masBuild": {
    "unavailable": "Este recurso não está disponível na versão da Mac App Store do GeoLibre Desktop."
  },
  "bookmark": {
    "captureStateLabel": "Incluir estado completo das camadas (ativas, inativas e ordem das camadas)",
    "captureStateTooltip": "Aplica-se ao próximo favorito que você salvar, não como uma configuração global. Deixe ativado para restaurar exatamente este arranjo de camadas mais tarde.",
    "export": "Exportar",
    "exportSelected": "Exportar selecionados",
    "exportAll": "Exportar todos",
    "newFolder": "Nova pasta",
    "defaultFolderName": "Pasta"
  },
  "managePlugins": {
    "failed": "Falhou",
    "failedToLoad": "Falha ao carregar: {{message}}",
    "trust": {
      "title": "Carregar plugins deste projeto?",
      "description_one": "Este projeto quer carregar 1 plugin externo de uma URL que você não instalou. Os plugins executam código com acesso total ao aplicativo.",
      "description_other": "Este projeto quer carregar {{count}} plugins externos de URLs que você não instalou. Os plugins executam código com acesso total ao aplicativo.",
      "warning": "Carregue apenas plugins de fontes confiáveis. Os plugins carregados são executados com os mesmos privilégios do próprio GeoLibre.",
      "trustButton": "Confiar e carregar",
      "dismissButton": "Não carregar"
    },
    "title": "Gerenciar plugins",
    "searchAria": "Pesquisar plugins",
    "searchPlaceholder": "Pesquisar plugins",
    "refresh": "Atualizar",
    "loadingRegistry": "Carregando o registro…",
    "registryEmpty": "Nenhum plugin está listado no registro.",
    "noPluginsHere": "Nenhum plugin aqui.",
    "sectionAll": "Todos ({{total}})",
    "sectionInstalled": "Instalados ({{total}})",
    "sectionNotInstalled": "Não instalados ({{total}})",
    "sectionUpgradeable": "Atualizáveis ({{total}})",
    "sectionSettings": "Configurações",
    "openHomepageAria": "Abrir a página de {{name}}",
    "byAuthor": "por {{author}}",
    "updateAvailable": "atualização disponível",
    "requiresVersion": "requer o GeoLibre {{version}}+",
    "install": "Instalar",
    "installAria": "Instalar {{name}}",
    "removeConfirm": "Remover?",
    "uninstall": "Desinstalar",
    "uninstallAria": "Desinstalar {{name}}",
    "confirmUninstallAria": "Confirmar a desinstalação de {{name}}",
    "update": "Atualizar",
    "updateAria": "Atualizar {{name}}",
    "loading": "Carregando…",
    "installed": "Instalado",
    "settingsIntro": "O GeoLibre sempre varre seu diretório de plugins nos dados do aplicativo. Instale um plugin empacotado (.zip) a partir de um arquivo, ou adicione diretórios locais extras (somente no desktop). URLs de manifesto (incluindo instalações pelo marketplace) são carregadas pela rede; as alterações aqui têm efeito imediato.",
    "installFromFile": "Instalar a partir de arquivo",
    "chooseZip": "Escolher .zip…",
    "installFromFileHintDesktop": "Copia um arquivo de plugin empacotado para o diretório de plugins do GeoLibre.",
    "installFromFileHintWeb": "Carrega um arquivo de plugin empacotado; ele é armazenado no seu navegador e recarregado na próxima visita.",
    "localDirectories": "Diretórios locais",
    "directoryAria": "Diretório de plugins",
    "browseDirectoryAria": "Procurar o diretório de plugins",
    "noDirectories": "Nenhum diretório de plugins adicional configurado.",
    "manifestUrls": "URLs de manifesto",
    "manifestUrlAria": "URL do manifesto do plugin",
    "noManifestUrls": "Nenhuma URL de manifesto de plugin configurada.",
    "removeAria": "Remover {{name}}",
    "errorLoadRegistry": "Não foi possível carregar o registro de plugins.",
    "errorUpdate": "Não foi possível atualizar o plugin.",
    "errorDirectoryPicker": "Não foi possível abrir o seletor de diretórios.",
    "errorInstall": "Não foi possível instalar o plugin.",
    "errorUninstall": "Não foi possível desinstalar o plugin.",
    "description": "Navegue, instale, atualize e remova plugins externos do GeoLibre. Os plugins estão listados no <registryLink>registro de plugins do GeoLibre</registryLink>."
  },
  "viewState": {
    "panelTitle": "Informações"
  },
  "terrainMeasure": {
    "title": "Terreno (3D)",
    "surfaceDistance": "Distância na superfície",
    "surfaceArea": "Área da superfície",
    "elevationGainLoss": "Ganho / perda",
    "elevationRange": "Elevação mín. / máx.",
    "meanSlope": "Declividade média",
    "computing": "Calculando terreno…",
    "partialData": "Algumas amostras não tinham dados de terreno"
  },
  "fileNamePrompt": {
    "title": "Salvar arquivo como",
    "description": "Digite um nome de arquivo. O arquivo será baixado para a pasta de downloads do seu navegador.",
    "label": "Nome do arquivo"
  },
  "newProject": {
    "basemapDescription": "Escolha um mapa base do OpenFreeMap ou Protomaps, um fundo em branco ou uma URL de estilo MapLibre.",
    "basemapDescriptionNoProtomaps": "Escolha um mapa base do OpenFreeMap, um fundo em branco ou uma URL de estilo MapLibre.",
    "sectionOpenFreeMap": "OpenFreeMap",
    "sectionProtomaps": "Protomaps",
    "sectionOther": "Outro",
    "customUrlButton": "URL personalizada",
    "invalidCustomUrl": "Digite uma URL válida de style.json ou .pmtiles.",
    "savePromptTitle": "Salvar o projeto atual?",
    "savePromptDescription": "O projeto atual tem alterações não salvas. Salvá-las antes de criar um novo projeto?",
    "doNotSave": "Não salvar",
    "saving": "Salvando...",
    "title": "Novo projeto",
    "projectName": "Nome do projeto",
    "savedTemplates": "Modelos salvos",
    "deleteTemplate": "Excluir modelo",
    "basemapLabel": "Mapa base",
    "create": "Criar"
  },
  "basemapPicker": {
    "title": "Alterar mapa base",
    "applyCustom": "Aplicar",
    "invalidUrl": "Digite uma URL de estilo HTTP ou HTTPS válida.",
    "sectionMoon": "A Lua",
    "sectionMars": "Marte",
    "sectionOther": "Outros corpos celestes"
  },
  "planetSwitcher": {
    "label": "Corpo celeste",
    "earth": "Terra",
    "mercury": "Mercúrio",
    "venus": "Vênus",
    "moon": "Lua",
    "mars": "Marte",
    "io": "Io",
    "europa": "Europa",
    "ganymede": "Ganimedes",
    "callisto": "Calisto",
    "titan": "Titã",
    "pluto": "Plutão",
    "charon": "Caronte"
  },
  "common": {
    "pickColorFromScreen": "Escolher uma cor da tela",
    "save": "Salvar",
    "cancel": "Cancelar",
    "close": "Fechar",
    "retry": "Tentar novamente",
    "reset": "Redefinir",
    "remove": "Remover",
    "add": "Adicionar",
    "ok": "OK",
    "done": "Concluído",
    "openWebApp": "Abrir o aplicativo web do GeoLibre"
  },
  "addData": {
    "title": "Adicionar dados",
    "kind": {
      "xyz": {
        "label": "Adicionar camada XYZ",
        "description": "Adicione um modelo de tile raster usando os marcadores x, y e z."
      },
      "wms": {
        "label": "Adicionar camada WMS",
        "description": "Adicione um serviço WMS GetMap como uma camada raster em blocos (tiled)."
      },
      "wfs": {
        "label": "Adicionar camada WFS",
        "description": "Adicione feições WFS solicitando GeoJSON de um serviço GetFeature."
      },
      "wmts": {
        "label": "Adicionar camada WMTS",
        "description": "Adicione um modelo de URL de tile WMTS como uma camada raster."
      },
      "ogcVectorTiles": {
        "label": "Adicionar OGC Vector Tiles",
        "description": "Adicione um serviço OGC API - Tiles (vetorial) a partir de um TileJSON ou modelo de tile, lendo opcionalmente suas camadas de origem a partir de uma URL de estilo."
      },
      "gpx": {
        "label": "Adicionar camada GPX",
        "description": "Adicione waypoints, rotas e trilhas GPX como uma ou mais camadas vetoriais."
      },
      "georss": {
        "label": "Adicionar camada GeoRSS",
        "description": "Adicione um feed GeoRSS (RSS, Atom ou RDF) de uma URL ou arquivo como uma camada vetorial."
      },
      "delimitedText": {
        "label": "Adicionar camada de texto delimitado",
        "description": "Adicione um arquivo ou URL de texto delimitado como uma camada de pontos usando campos de longitude e latitude, ou como uma tabela de atributos não espacial quando não houver coordenadas disponíveis."
      },
      "cad": {
        "label": "Adicionar camada CAD (DXF/DWG)",
        "description": "Adicione um desenho AutoCAD DXF ou DWG como uma camada vetorial, escolhendo qual camada carregar e o sistema de referência de coordenadas para projetá-la."
      },
      "gdb": {
        "label": "Adicionar camada de File Geodatabase",
        "description": "Adicione uma camada de um File Geodatabase da Esri (pasta .gdb). A camada é lida com o servidor local do GeoLibre e reprojetada para WGS84."
      },
      "photos": {
        "label": "Adicionar fotos geomarcadas",
        "description": "Importe fotos JPEG/HEIC como uma camada de pontos, posicionando cada uma a partir de sua localização GPS EXIF."
      },
      "mbtiles": {
        "label": "Adicionar camada MBTiles",
        "description": "Adicione um arquivo MBTiles local como uma camada de tiles raster ou vetorial."
      },
      "arcgis": {
        "label": "Adicionar camada ArcGIS",
        "description": "Adicione uma camada ArcGIS FeatureServer, VectorTileServer, MapServer ou ImageServer, ou um item de portal."
      },
      "postgres": {
        "label": "Adicionar camada PostgreSQL",
        "description": "Inicie o Martin localmente, descubra fontes PostGIS e adicione uma fonte como tiles vetoriais."
      },
      "deckglViz": {
        "label": "Adicionar camada Deck.gl",
        "description": "Escolha um tipo de camada deck.gl e carregue os dados de exemplo ou envie um arquivo ou URL CSV/JSON/GeoJSON."
      },
      "video": {
        "label": "Adicionar camada de vídeo",
        "description": "Adicione uma sobreposição de vídeo georreferenciada fornecendo uma URL MP4 e quatro coordenadas de canto."
      },
      "ogcFeatures": {
        "label": "Adicionar camada OGC API - Features",
        "description": "Adicione as feições de uma coleção OGC API - Features como camada vetorial, seguindo os links de paginação do serviço até carregar a quantidade de feições solicitada."
      }
    },
    "shared": {
      "layerName": "Nome da camada",
      "insertBelow": "Inserir abaixo",
      "insertTop": "Topo da lista de camadas (padrão)",
      "layersGroup": "Camadas",
      "basemapLayersGroup": "Camadas de mapa base",
      "showBasemapLayers": "Mostrar camadas de mapa base (avançado)",
      "addLayer": "Adicionar camada",
      "adding": "Adicionando…",
      "addError": "Não foi possível adicionar a camada.",
      "sampleData": "Dados de exemplo",
      "loadSampleData": "Carregar dados de exemplo…"
    },
    "common": {
      "serviceUrl": "URL do serviço",
      "tileSize": "Tamanho do tile",
      "tileUrlTemplate": "Modelo de URL do tile",
      "sourceType": "Tipo de fonte",
      "layerType": "Tipo de camada",
      "format": "Formato",
      "optional": "Opcional",
      "chooseFile": "Escolher arquivo",
      "noFileSelected": "Nenhum arquivo selecionado",
      "loading": "Carregando...",
      "workspaceLayerPlaceholder": "workspace:camada",
      "requestFailed": "Falha na solicitação com status {{status}}",
      "networkFailure": "Não foi possível acessar o serviço. Verifique se o host está acessível e se o certificado TLS, o firewall e as configurações de proxy permitem a solicitação; no navegador, ela também pode ser bloqueada por CORS — nesse caso, experimente o aplicativo desktop.",
      "requestTimedOut": "A solicitação expirou. O host pode estar lento, inacessível ou bloqueado por um firewall ou proxy."
    },
    "serviceLibrary": {
      "title": "Serviços salvos",
      "saveCurrent": "Salvar atual",
      "importLibrary": "Importar biblioteca do JSON",
      "exportLibrary": "Exportar biblioteca para JSON",
      "loadAria": "Carregar um serviço salvo",
      "loadPlaceholder": "Carregar um serviço salvo…",
      "builtin": "{{name}} (integrado)",
      "deleteAria": "Excluir serviço salvo",
      "empty": "Nenhum serviço salvo ainda — preencha o formulário e escolha “Salvar atual”.",
      "name": "Nome",
      "category": "Categoria",
      "categoryPlaceholder": "Opcional (ex.: país, tema)",
      "uncategorized": "Sem categoria",
      "errorName": "Digite um nome para o serviço salvo.",
      "saved": "\"{{name}}\" foi salvo na biblioteca de serviços.",
      "removed": "\"{{name}}\" foi removido.",
      "errorExport": "Não foi possível exportar a biblioteca.",
      "errorTooLarge": "O arquivo é muito grande para importar (máx. 5 MB).",
      "errorNoServices": "Nenhum serviço válido foi encontrado nesse arquivo.",
      "errorRead": "Não foi possível ler esse arquivo como uma biblioteca de serviços.",
      "imported_one": "{{count}} serviço importado.",
      "imported_other": "{{count}} serviços importados.",
      "importedWithDropped_one": "{{count}} serviço importado ({{dropped}} ignorado — biblioteca cheia).",
      "importedWithDropped_other": "{{count}} serviços importados ({{dropped}} ignorados — biblioteca cheia)."
    },
    "xyz": {
      "defaultName": "Camada XYZ",
      "sampleLabel": "Imagens USGS",
      "errorUrl": "Digite um modelo de URL de tile XYZ.",
      "urlPlaceholder": "https://example.com/{z}/{x}/{y}.png",
      "shortUrlPlaceholder": "https://go.example.com/layer",
      "shortUrl": "URL curta"
    },
    "wms": {
      "defaultName": "Camada WMS",
      "sampleLabel": "Imagens USGS NAIP",
      "sampleLabelGebco": "Batimetria oceânica GEBCO",
      "errorUrl": "Digite uma URL de serviço WMS.",
      "errorLayers": "Digite um ou mais nomes de camadas WMS.",
      "urlPlaceholder": "https://example.com/geoserver/wms",
      "layers": "Camadas",
      "styles": "Estilos",
      "transparent": "Fundo transparente",
      "retrieveLayers": "Recuperar camadas",
      "retrieving": "Recuperando...",
      "retrievedLayers": "Camadas recuperadas",
      "selectLayer_one": "Selecionar entre {{count}} camada",
      "selectLayer_other": "Selecionar entre {{count}} camadas",
      "noLayersFound": "Nenhuma camada foi encontrada para este serviço.",
      "retrieveError": "Não foi possível recuperar as camadas deste serviço.",
      "version": "Versão do WMS"
    },
    "wfs": {
      "defaultName": "Camada WFS",
      "sampleLabel": "Estados dos EUA (GeoServer)",
      "errorUrl": "Digite uma URL de serviço WFS.",
      "errorTypeName": "Digite um nome de tipo de feição WFS.",
      "errorOutputFormat": "Digite um formato de saída WFS.",
      "urlPlaceholder": "https://example.com/geoserver/wfs",
      "featureType": "Tipo de feição",
      "version": "Versão",
      "outputFormat": "Formato de saída",
      "srsName": "Nome do SRS",
      "maxFeatures": "Máximo de feições",
      "errorMaxFeaturesNumeric": "Digite um valor numérico para o máximo de feições.",
      "retrieveTypes": "Recuperar tipos",
      "retrieving": "Recuperando...",
      "retrievedTypes": "Tipos de feição recuperados",
      "selectType_one": "Selecionar entre {{count}} tipo de feição",
      "selectType_other": "Selecionar entre {{count}} tipos de feição",
      "noTypesFound": "Nenhum tipo de feição foi encontrado para este serviço.",
      "retrieveError": "Não foi possível recuperar os tipos de feição deste serviço."
    },
    "wmts": {
      "defaultName": "Camada WMTS",
      "sampleLabel": "EOX Imagens mundiais (Sentinel-2)",
      "errorUrl": "Digite um modelo de URL de tile WMTS.",
      "urlPlaceholder": "https://example.com/wmts/{z}/{y}/{x}.png"
    },
    "ogcVectorTiles": {
      "defaultName": "Camada OGC Vector Tiles",
      "tilesUrl": "URL dos tiles",
      "tilesUrlPlaceholder": "https://example.com/tiles/WebMercatorQuad?f=tilejson",
      "tilesUrlHint": "Uma URL de metadados TileJSON ou um modelo de tile MVT {z}/{y}/{x}.",
      "styleUrl": "URL do estilo",
      "styleUrlPlaceholder": "https://example.com/styles/default?f=mapbox",
      "styleUrlHint": "JSON de estilo Mapbox/MapLibre opcional. Usado para descobrir as camadas de origem do conjunto de tiles quando o TileJSON as omite.",
      "sourceLayers": "Camadas de origem",
      "sourceLayersPlaceholder": "layer_a, layer_b",
      "sourceLayersHint": "Nomes de camadas de origem opcionais, separados por vírgula. Substitui as camadas encontradas no TileJSON ou no estilo.",
      "sampleLabel": "PDOK BGT (Países Baixos)",
      "errorUrl": "Digite uma URL de tiles ou uma URL de estilo.",
      "errorNoTiles": "Não foi possível determinar o endpoint de tiles vetoriais. Digite uma URL de TileJSON, um modelo de tile ou uma URL de estilo.",
      "errorNoLayers": "Não foi possível determinar as camadas de origem dos tiles vetoriais. Adicione uma URL de estilo ou digite os nomes das camadas de origem."
    },
    "arcgis": {
      "defaultName": "Camada ArcGIS",
      "sampleFeatureLabel": "Principais cidades dos EUA (feição)",
      "sampleVectorTileLabel": "Lotes de Santa Monica (tiles vetoriais)",
      "sampleMapServiceLabel": "Limites dos EUA (serviço de mapa)",
      "sampleImageServiceLabel": "Sombreamento USGS 3DEP (serviço de imagem)",
      "featureLayer": "Camada de feições",
      "vectorTileLayer": "Camada de tiles vetoriais",
      "mapServiceLayer": "Serviço de mapa",
      "imageServiceLayer": "Serviço de imagem",
      "portalItemId": "ID do item do portal",
      "featureUrlPlaceholder": "https://services.arcgis.com/.../FeatureServer/0",
      "vectorTileUrlPlaceholder": "https://.../arcgis/rest/services/.../VectorTileServer",
      "mapServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../MapServer",
      "imageServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../ImageServer",
      "sublayers": "Subcamadas",
      "sublayersPlaceholder": "Todas as subcamadas visíveis",
      "sublayersHint": "Ids de subcamadas opcionais separados por vírgulas, por exemplo 0,2,5. Selecionar subcamadas desenha o serviço dinamicamente em vez de usar seus tiles em cache.",
      "renderingRule": "Regra de renderização",
      "renderingRulePlaceholder": "{\"rasterFunction\":\"Hillshade\"}",
      "renderingRuleHint": "JSON opcional de uma função raster aplicada pelo serviço. Uma regra de renderização desenha o serviço dinamicamente em vez de usar seus tiles em cache.",
      "portalUrl": "URL do portal",
      "portalUrlPlaceholder": "https://www.arcgis.com/sharing/rest",
      "accessToken": "Token de acesso"
    },
    "gpx": {
      "defaultName": "Camada GPX",
      "sampleLabel": "Trilha Fells Loop",
      "errorFileMissing": "Faltam os dados do arquivo GPX.",
      "readError": "Não foi possível ler o arquivo GPX.",
      "errorChooseFile": "Escolha um arquivo GPX.",
      "errorUrl": "Digite uma URL GPX.",
      "errorSelectType": "Selecione pelo menos um tipo de camada GPX.",
      "errorNotFound": "Os tipos de camada GPX selecionados não foram encontrados.",
      "waypoints": "Waypoints",
      "tracks": "Trilhas",
      "trackPoints": "Pontos da trilha",
      "routes": "Rotas",
      "routePoints": "Pontos da rota",
      "url": "URL GPX",
      "file": "Arquivo GPX",
      "urlPlaceholder": "https://example.com/route.gpx",
      "layerTypes": "Tipos de camada"
    },
    "georss": {
      "defaultName": "Camada GeoRSS",
      "sampleLabel": "Terremotos USGS (último dia)",
      "errorFileMissing": "Faltam os dados do arquivo GeoRSS.",
      "readError": "Não foi possível ler o arquivo GeoRSS.",
      "errorChooseFile": "Escolha um arquivo GeoRSS.",
      "errorUrl": "Digite uma URL GeoRSS.",
      "url": "URL GeoRSS",
      "file": "Arquivo GeoRSS",
      "urlPlaceholder": "https://example.com/feed.atom"
    },
    "cad": {
      "defaultName": "Camada CAD",
      "fileFilter": "CAD (DXF/DWG)",
      "layer": "Camada CAD",
      "layerPlaceholder": "Escolha primeiro um arquivo CAD",
      "readingLayers": "Lendo camadas...",
      "layerOption": "{{name}} ({{type}}, {{count}} feições)",
      "crs": "CRS de origem",
      "crsPlaceholder": "ex.: EPSG:26915",
      "crsPresetLabel": "Sistemas de coordenadas comuns...",
      "crsHelp": "Deixe em branco se o desenho já estiver em longitude/latitude (WGS84). Caso contrário, digite o código EPSG do sistema de coordenadas do desenho para reprojetá-lo.",
      "readError": "Não foi possível ler este arquivo CAD.",
      "errorNoLayers": "Nenhuma camada foi encontrada neste arquivo CAD.",
      "errorChooseFile": "Escolha primeiro um arquivo CAD (DXF/DWG).",
      "errorNoLayer": "Selecione uma camada CAD para carregar.",
      "errorUnsupportedGeometry": "Esta camada CAD contém geometria mista ou de coleção que não pode ser exibida. Tente outra camada."
    },
    "gdb": {
      "defaultName": "Camada de Geodatabase",
      "chooseFolder": "Escolher pasta .gdb...",
      "noFolderSelected": "Nenhum geodatabase selecionado",
      "layer": "Classe de feição",
      "layerPlaceholder": "Escolha um geodatabase primeiro",
      "readingLayers": "Lendo camadas...",
      "layerOption": "{{name}} ({{type}}, {{count}} feições)",
      "help": "Tabelas somente de atributos não são listadas. A classe de feição selecionada é carregada pelo servidor local do GeoLibre e reprojetada para WGS84.",
      "desktopOnly": "Camadas de File Geodatabase estão disponíveis apenas no GeoLibre Desktop. Este recurso lê uma pasta .gdb local por meio do servidor local do GeoLibre, que o aplicativo web não pode acessar.",
      "readError": "Não foi possível ler este File Geodatabase.",
      "convertError": "Não foi possível carregar esta classe de feição.",
      "errorNotGdb": "Escolha uma pasta terminada em .gdb (um File Geodatabase da Esri).",
      "errorNoLayers": "Nenhuma classe de feição com geometria foi encontrada neste geodatabase.",
      "errorChooseFolder": "Escolha uma pasta .gdb primeiro.",
      "errorNoLayer": "Selecione uma classe de feição para carregar.",
      "errorTimeout": "A leitura do geodatabase expirou.",
      "crs": "CRS de origem",
      "crsPlaceholder": "ex.: EPSG:26915",
      "crsHelp": "Não foi possível detectar o sistema de coordenadas desta classe de feição. Digite o código EPSG (ou ESRI) em que ela foi armazenada para que possa ser reprojetada para WGS84.",
      "errorMissingCrs": "Não foi possível detectar o sistema de coordenadas desta classe de feição. Digite seu CRS de origem para adicioná-la."
    },
    "delimitedText": {
      "defaultName": "Camada de texto delimitado",
      "sampleLabel": "Cidades dos EUA",
      "errorChooseFile": "Escolha um arquivo de texto delimitado.",
      "errorUrl": "Digite uma URL de texto delimitado.",
      "errorFileMissing": "Faltam os dados do arquivo de texto delimitado.",
      "readError": "Não foi possível ler o arquivo de texto delimitado.",
      "errorDataMissing": "Faltam os dados do texto delimitado.",
      "retrievedColumns_one": "{{count}} coluna recuperada.",
      "retrievedColumns_other": "{{count}} colunas recuperadas.",
      "retrievedColumnsTable_one": "{{count}} coluna recuperada. Nenhuma coluna de coordenadas detectada; será adicionada como uma tabela de atributos.",
      "retrievedColumnsTable_other": "{{count}} colunas recuperadas. Nenhuma coluna de coordenadas detectada; será adicionada como uma tabela de atributos.",
      "errorRetrieveColumns": "Não foi possível recuperar os nomes das colunas.",
      "url": "URL de texto delimitado",
      "file": "Arquivo de texto delimitado",
      "urlPlaceholder": "https://example.com/data.csv",
      "retrieving": "Recuperando...",
      "retrieveColumns": "Recuperar colunas",
      "delimiter": "Delimitador",
      "delimiterComma": "Vírgula",
      "delimiterTab": "Tabulação",
      "delimiterSemicolon": "Ponto e vírgula",
      "delimiterPipe": "Barra vertical",
      "delimiterCustom": "Personalizado",
      "customDelimiter": "Delimitador personalizado",
      "longitudeField": "Campo de longitude",
      "latitudeField": "Campo de latitude",
      "noneField": "Nenhum (tabela de atributos)",
      "tableHint": "Deixe ambos os campos de coordenadas como Nenhum para adicionar o arquivo como uma tabela de atributos não espacial (para uso em uma junção de atributos).",
      "crs": "Sistema de coordenadas",
      "crsPlaceholder": "ex.: EPSG:32643",
      "crsPresetLabel": "Sistemas de coordenadas comuns...",
      "crsHelp": "Deixe em branco se as coordenadas já estiverem em longitude/latitude (WGS84). Caso contrário, digite o código EPSG das colunas de coordenadas e os pontos serão reprojetados para WGS84. Para um CRS projetado, os campos de longitude e latitude selecionam as colunas X (leste) e Y (norte).",
      "importMode": "Importar como",
      "modeCoordinates": "Coordenadas",
      "modeAddresses": "Endereços (geocodificar)",
      "addressColumns": "Colunas de endereço",
      "addressColumnsEmptyHint": "Obtenha as colunas primeiro para selecionar as colunas de endereço.",
      "addressColumnsHint": "Selecione uma ou mais colunas para concatenar no endereço enviado ao geocodificador (ex.: rua, cidade, estado).",
      "errorNoAddressColumns": "Selecione pelo menos uma coluna de endereço.",
      "errorNoAddressesFound": "Nenhuma linha tinha valor nas colunas de endereço selecionadas."
    },
    "photos": {
      "defaultName": "Fotos",
      "chooseLabel": "Fotos",
      "choosePhotos": "Escolher fotos",
      "hint": "Selecione fotos JPEG, PNG, TIFF ou HEIC. Cada uma é posicionada a partir de sua localização GPS EXIF. Fotos HEIC são localizadas, mas exibidas sem miniatura.",
      "readError": "Não foi possível ler as fotos selecionadas.",
      "errorChooseFiles": "Escolha uma ou mais fotos.",
      "selectedCount_one": "{{count}} foto selecionada",
      "selectedCount_other": "{{count}} fotos selecionadas",
      "errorNoGps_one": "Nenhuma localização GPS foi encontrada na foto selecionada.",
      "errorNoGps_other": "Nenhuma localização GPS foi encontrada nas {{count}} fotos selecionadas.",
      "addedSummary_one": "{{count}} foto geomarcada adicionada.",
      "addedSummary_other": "{{count}} fotos geomarcadas adicionadas.",
      "skippedNote_one": "{{count}} foto foi ignorada (sem localização GPS).",
      "skippedNote_other": "{{count}} fotos foram ignoradas (sem localização GPS).",
      "noThumbnailNote_one": "{{count}} foto não tem miniatura (HEIC ou formato não suportado).",
      "noThumbnailNote_other": "{{count}} fotos não têm miniatura (HEIC ou formato não suportado).",
      "manualPromptTitle": "Nenhuma localização GPS foi encontrada nesta foto.",
      "manualPromptBody": "Posicione-a no centro do mapa atual e arraste-a até o local correto no mapa.",
      "manualPromptCenter": "Centro do mapa: {{lng}}, {{lat}}",
      "manualPlace": "Posicionar no centro do mapa",
      "manualHint": "Arraste este marcador para posicionar a foto e clique em Concluído."
    },
    "mbtiles": {
      "defaultName": "Camada MBTiles",
      "readError": "Não foi possível ler o arquivo MBTiles.",
      "errorChooseFile": "Escolha um arquivo MBTiles.",
      "errorSourceLayers": "Digite pelo menos uma camada de origem vetorial.",
      "tileType": "Tipo de tile",
      "sourceLayers": "Camadas de origem",
      "sourceLayersPlaceholder": "building, place, water"
    },
    "postgres": {
      "defaultName": "Camada PostgreSQL",
      "errorDesktopOnly": "As camadas PostgreSQL exigem o GeoLibre Desktop.",
      "errorConnectionString": "Digite uma string de conexão PostgreSQL.",
      "statusCheckingBinary": "Verificando o binário do Martin...",
      "statusDownloaded": "Martin baixado. Iniciando servidor local...",
      "statusStarting": "Iniciando servidor Martin local...",
      "statusReadingCatalog": "Lendo o catálogo do Martin...",
      "statusFound_one": "{{count}} fonte encontrada.",
      "statusFound_other": "{{count}} fontes encontradas.",
      "statusNoSources": "O Martin está em execução, mas nenhuma fonte PostGIS compatível foi encontrada.",
      "errorConnect": "Não foi possível conectar ao PostgreSQL.",
      "statusStopped": "Martin interrompido.",
      "errorStop": "Não foi possível interromper o Martin.",
      "errorConnectFirst": "Conecte-se ao PostgreSQL primeiro.",
      "errorNoVectorLayers": "A fonte Martin selecionada não tem camadas vetoriais.",
      "errorSelectSource": "Selecione uma fonte Martin para adicionar.",
      "desktopOnlyNotice": "As camadas PostgreSQL estão disponíveis apenas no GeoLibre Desktop. Este recurso executa um servidor de tiles Martin local, que o aplicativo web não pode iniciar.",
      "savedConnection": "Conexão salva",
      "selectSavedConnection": "Selecionar conexão salva",
      "connectionString": "String de conexão PostgreSQL",
      "connectionStringPlaceholder": "postgres://usuario:senha@host:5432/banco",
      "defaultSrid": "SRID padrão",
      "connect": "Conectar",
      "stop": "Parar",
      "martinSource": "Fonte Martin",
      "runningOnPort": "O Martin está em execução na porta {{port}}.",
      "loadMode": "Carregar como",
      "loadModeTiles": "Tiles vetoriais (Martin, somente leitura)",
      "loadModeEditable": "Camada editável (carrega todas as feições)",
      "editableNotice": "Carrega as feições da tabela através do servidor de processamento local para que possam ser editadas. Salve as alterações de volta com a ação \"Salvar edições na tabela PostGIS\" da camada.",
      "statusListingTables": "Lendo tabelas espaciais...",
      "statusTablesFound_one": "{{count}} tabela espacial encontrada.",
      "statusTablesFound_other": "{{count}} tabelas espaciais encontradas.",
      "statusNoTables": "Nenhuma tabela espacial foi encontrada neste banco de dados.",
      "editableTable": "Tabela",
      "tableReadOnly": "{{table}} (somente leitura: sem chave primária)",
      "errorSelectTable": "Selecione uma tabela para carregar.",
      "errorRuntimeMissing": "O servidor de processamento não tem o runtime do PostGIS (psycopg) instalado. Instale o extra \"postgis\" do geolibre-server para carregar camadas editáveis."
    },
    "video": {
      "defaultName": "Camada de vídeo",
      "sampleLabel": "Ondas costeiras perto de São Francisco",
      "errorUrl": "Digite uma URL de vídeo.",
      "errorHttps": "As URLs de vídeo devem começar com https://.",
      "cornerTopLeft": "superior esquerdo",
      "cornerTopRight": "superior direito",
      "cornerBottomRight": "inferior direito",
      "cornerBottomLeft": "inferior esquerdo",
      "errorCornerFormat": "Digite o canto {{corner}} como \"longitude, latitude\".",
      "errorCornerNumber": "Digite uma longitude e latitude numéricas para o canto {{corner}}.",
      "errorCornerLng": "A longitude do canto {{corner}} deve estar entre -180 e 180.",
      "errorCornerLat": "A latitude do canto {{corner}} deve estar entre -90 e 90.",
      "primaryUrl": "URL de vídeo principal",
      "primaryUrlPlaceholder": "https://example.com/clip.mp4",
      "fallbackUrl": "URL de vídeo alternativa (opcional)",
      "fallbackUrlPlaceholder": "https://example.com/clip.webm",
      "topLeft": "Superior esquerdo (lng, lat)",
      "topRight": "Superior direito (lng, lat)",
      "bottomRight": "Inferior direito (lng, lat)",
      "bottomLeft": "Inferior esquerdo (lng, lat)",
      "cornersNote": "Os quatro cantos georreferenciam o vídeo no mapa. O vídeo deve ser servido via HTTPS, e o host deve permitir solicitações entre origens (CORS) para que os quadros sejam renderizados."
    },
    "netcdf": {
      "sampleLabel": "Temperatura do ar",
      "title": "Adicionar NetCDF / HDF",
      "description": "Renderize um conjunto de dados NetCDF ou HDF5: um arquivo remoto Cloud-Optimized via uma referência kerchunk (lido por meio de solicitações HTTP range), ou um arquivo NetCDF ou HDF5 local lido no seu navegador.",
      "sourceLabel": "Fonte",
      "sourceCloud": "Cloud-Optimized (URL kerchunk)",
      "sourceLocal": "Arquivo local (NetCDF / HDF5)",
      "localFileLabel": "Arquivo local",
      "chooseDifferentFile": "Escolher outro arquivo",
      "readingFile": "Lendo...",
      "readingRemote": "Lendo os metadados do arquivo por HTTP...",
      "localFileHelp": "Selecione um arquivo NetCDF ou HDF5 local (.nc, .nc4, .cdf, .h5 ou .hdf5); NetCDF-3 clássico e NetCDF-4/HDF5 são ambos compatíveis. Ele é decodificado no seu navegador; arquivos grandes usam mais memória.",
      "errorNoVariables": "Nenhuma variável renderizável (2D ou superior) foi encontrada no arquivo.",
      "errorNoFile": "Nenhum arquivo carregado.",
      "kerchunkUrlLabel": "URL de referência kerchunk",
      "kerchunkUrlHelp": "Escolha um conjunto de dados de exemplo acima, ou cole sua própria URL de referência kerchunk, e então clique em Carregar variáveis.",
      "loading": "Carregando...",
      "loadVariables": "Carregar variáveis",
      "variableLabel": "Variável",
      "dimIndexLabel": "Índice de {{dim}}",
      "colormapLabel": "Mapa de cores",
      "bandCombinationLabel": "Combinação de bandas",
      "bandCombinationHelp": "Uma única banda é representada por um mapa de cores; uma composição RGB desenha três bandas desta variável como os canais vermelho, verde e azul, cada um esticado no seu próprio intervalo de 2-98 %.",
      "modeSingleBand": "Banda única (com mapa de cores)",
      "modeRgb": "Composição RGB (três bandas)",
      "colorMin": "Cor mínima (opcional)",
      "colorMax": "Cor máxima (opcional)",
      "adding": "Adicionando...",
      "addLayer": "Adicionar camada",
      "channel": {
        "red": "Banda vermelha",
        "green": "Banda verde",
        "blue": "Banda azul"
      }
    },
    "deckViz": {
      "defaultName": "Camada Deck.gl",
      "errorChooseFile": "Escolha um arquivo CSV, JSON ou GeoJSON.",
      "errorUrl": "Digite uma URL de dados.",
      "errorUnknownType": "Tipo de camada desconhecido.",
      "needsGeojson": "{{label}} precisa de um arquivo GeoJSON.",
      "needsTabular": "{{label}} precisa de dados tabulares CSV/JSON, não GeoJSON.",
      "mapRequiredFields_one": "Mapeie o campo obrigatório: {{fields}}.",
      "mapRequiredFields_other": "Mapeie os campos obrigatórios: {{fields}}.",
      "errorExample": "Não foi possível carregar os dados de exemplo.",
      "loadedFeatures_one": "{{count}} feição carregada.",
      "loadedFeatures_other": "{{count}} feições carregadas.",
      "loadedRows_one": "{{count}} linha",
      "loadedRows_other": "{{count}} linhas",
      "loadedColumns_one": "{{count}} coluna",
      "loadedColumns_other": "{{count}} colunas",
      "loadedTabular": "Carregado {{rows}} · {{columns}}.",
      "errorLoad": "Não foi possível carregar os dados.",
      "errorLoadFirst": "Carregue primeiro os dados de exemplo ou um arquivo/URL.",
      "useExample": "Usar dados de exemplo",
      "loadYourOwn": "Ou carregue os seus próprios",
      "dataUrl": "URL dos dados",
      "localFile": "Arquivo local",
      "urlPlaceholder": "https://example.com/data.csv",
      "chooseFileLoad": "Escolher arquivo e carregar",
      "loadData": "Carregar dados",
      "selectRole": "— selecionar —",
      "roleNone": "(nenhum)",
      "closeAfterAdd": "Fechar diálogo após adicionar a camada",
      "color": "Cor",
      "pointSize": "Tamanho do ponto",
      "cellSize": "Tamanho da célula",
      "lineWidth": "Espessura da linha",
      "extrusion": "Extrusão 3D",
      "modelUrlPlaceholder": "https://example.com/model.glb"
    },
    "ogcFeatures": {
      "defaultName": "Camada OGC API - Features",
      "sampleLabel": "Lagos do mundo (demo do pygeoapi)",
      "urlPlaceholder": "https://example.com/ogcapi",
      "urlHint": "A página inicial do serviço, ou qualquer URL copiada dela (uma URL /collections ou /collections/{id}/items também funciona).",
      "retrieveCollections": "Recuperar coleções",
      "retrieving": "Recuperando...",
      "retrievedCollections": "Coleções recuperadas",
      "selectCollection_one": "Selecionar entre {{count}} coleção",
      "selectCollection_other": "Selecionar entre {{count}} coleções",
      "noCollectionsFound": "Nenhuma coleção de feições foi encontrada para este serviço.",
      "retrieveError": "Não foi possível recuperar as coleções deste serviço.",
      "collection": "Coleção",
      "collectionPlaceholder": "collection-id",
      "maxFeatures": "Máximo de feições",
      "bbox": "Caixa delimitadora",
      "datetime": "Data e hora",
      "errorCollection": "Informe um id de coleção do OGC API - Features.",
      "errorMaxFeatures": "Informe um valor de máximo de feições igual ou maior que 1.",
      "errorBbox": "Informe a caixa delimitadora como “oeste,sul,leste,norte”.",
      "errorNoFeatures": "Esta coleção não retornou nenhuma feição."
    },
    "nonGeographicCoordinates": "As coordenadas em {{names}} não são de longitude/latitude, portanto nada será desenhado no mapa. O CRS está incorreto — reprojete os dados (ou corrija o .prj) e carregue novamente."
  },
  "offline": {
    "title": "Baixar área offline",
    "description": "Salve os tiles do mapa base da visualização atual do mapa para que esta área continue funcionando sem conexão de rede.",
    "noServiceWorker": "O cache offline requer o aplicativo web instalado. Os tiles baixados aqui não serão salvos para uso offline nesta versão.",
    "uncacheable": "As seguintes fontes de mapa base não suportam download offline e ficarão ausentes no seu mapa offline: {{hosts}}.",
    "cacheable": "As seguintes fontes de mapa base serão baixadas e ficarão disponíveis offline: {{hosts}}.",
    "includeExtra": "Incluir níveis de detalhe extras para aproximar o zoom",
    "currentViewOnly": "Somente visualização atual · Zoom {{zoom}}",
    "detailLevels": "Níveis de detalhe extras",
    "relativeLevels_one": "+{{count}} nível · Zoom {{min}}–{{max}}",
    "relativeLevels_other": "+{{count}} níveis · Zoom {{min}}–{{max}}",
    "tiles": "Recursos para baixar",
    "tooManyTiles": "Esta área excede o limite de cache offline ({{max}} recursos); os tiles em cache mais antigos podem ser removidos à medida que novos recursos são baixados. Reduza os níveis de detalhe ou escolha uma área menor.",
    "acknowledgeEviction": "Baixar mesmo assim, removendo tiles mais antigos se necessário",
    "download": "Baixar",
    "cancel": "Cancelar",
    "progress": "Baixando {{done}} / {{total}}…",
    "complete_one": "Área offline salva. {{count}} recurso armazenado em cache para uso offline.",
    "complete_other": "Área offline salva. {{count}} recursos armazenados em cache para uso offline.",
    "completeWithFailures": "Salvos {{done}} de {{total}} recursos ({{failed}} falharam).",
    "retryFailed_one": "Repetir {{count}} recurso com falha",
    "retryFailed_other": "Repetir {{count}} recursos com falha",
    "retryAll": "Repetir todos os recursos",
    "advanced": "Opções avançadas",
    "concurrency": "Solicitações simultâneas",
    "concurrencyHint": "Reduza este valor para aliviar servidores que limitam solicitações rápidas de tiles.",
    "timeout": "Tempo limite da solicitação (segundos)",
    "timeoutHint": "Cada solicitação de tile tem até {{seconds}}s antes de ser contada como falha.",
    "timeoutDisabled": "Sem tempo limite — as solicitações usam o padrão do navegador. Aumente para conexões lentas."
  },
  "offlineManager": {
    "title": "Gerenciar áreas offline",
    "description": "Revise as áreas de mapa base que você baixou para uso offline, atualize-as ou exclua-as para liberar espaço de armazenamento.",
    "noServiceWorker": "O cache offline requer o aplicativo web instalado. Atualizar áreas não salvará tiles para uso offline nesta versão.",
    "empty": "Nenhuma área offline ainda. Use \"Baixar área offline\" para salvar a visualização atual do mapa para uso offline.",
    "zoomRange": "Zoom {{min}}–{{max}}",
    "tilesCount_one": "{{count}} tile",
    "tilesCount_other": "{{count}} tiles",
    "savedOn": "Salvo em {{date}}",
    "rename": "Renomear esta área",
    "nameLabel": "Nome da área",
    "update": "Atualizar esta área",
    "delete": "Excluir esta área",
    "confirmDelete": "Excluir",
    "updateAll": "Atualizar tudo",
    "updating": "Atualizando {{done}} / {{total}}…",
    "totalFootprint_one": "{{size}} em {{count}} área",
    "totalFootprint_other": "{{size}} em {{count}} áreas",
    "deviceUsage": "{{usage}} de {{quota}} usados"
  },
  "recordTour": {
    "title": "Gravar tour do mapa",
    "hint": "Movimente e amplie o mapa e, em seguida, capture cada visualização. O mapa permanece interativo enquanto este painel está aberto.",
    "unsupported": "Este navegador não pode gravar a tela do mapa. Experimente uma versão recente do Chrome, Edge ou Firefox.",
    "addView": "Adicionar visualização atual",
    "pathTitle": "Gerar a partir de um caminho",
    "pathNoLayers": "Adicione uma camada LineString para gerar quadros-chave a partir de um caminho.",
    "pathLayer": "Camada do caminho",
    "pathLayerOption": "{{name}} ({{count}} pontos)",
    "pathKeyframes": "Quadros-chave",
    "pathZoom": "Zoom",
    "pathPitch": "Inclinação",
    "pathHold": "Pausa",
    "pathTransition": "Movimento",
    "pathGenerate": "Gerar",
    "pathConfirmReplace": "Substituir os quadros-chave atuais pelos quadros-chave gerados a partir deste caminho?",
    "pathGenerated_one": "{{count}} quadro-chave gerado a partir do caminho.",
    "pathGenerated_other": "{{count}} quadros-chave gerados a partir do caminho.",
    "pathGenerateError": "Não foi possível gerar quadros-chave a partir deste caminho.",
    "loadConfig": "Carregar configuração",
    "saveConfig": "Salvar configuração",
    "confirmLoad": "Substituir os quadros-chave atuais pela configuração carregada?",
    "configFileType": "Configuração do tour",
    "configSaved": "Configuração salva como {{name}}",
    "configLoaded_one": "Configuração carregada com {{count}} quadro-chave.",
    "configLoaded_other": "Configuração carregada com {{count}} quadros-chave.",
    "configSaveError": "Não foi possível salvar a configuração do tour. Tente novamente.",
    "configLoadError": "Não foi possível carregar a configuração do tour. O arquivo pode estar inválido.",
    "keyframeCount_one": "{{count}} quadro-chave",
    "keyframeCount_other": "{{count}} quadros-chave",
    "empty": "Movimente e amplie o mapa até uma visualização inicial e, em seguida, adicione-a como o primeiro quadro-chave. Adicione pelo menos dois quadros-chave para gravar um tour.",
    "flyToKeyframe": "Ir para esta visualização",
    "hold": "Manter",
    "transition": "Transição",
    "secondsShort": "s",
    "holdSeconds": "Segundos para manter nesta visualização",
    "segmentSeconds": "Segundos para mover até a próxima visualização",
    "resizeLeft": "Redimensionar painel a partir do canto inferior esquerdo",
    "resizeRight": "Redimensionar painel a partir do canto inferior direito",
    "recapture": "Atualizar para a visualização atual do mapa",
    "moveUp": "Mover quadro-chave para cima",
    "moveDown": "Mover quadro-chave para baixo",
    "removeKeyframe": "Remover quadro-chave",
    "fps": "Quadros por segundo",
    "estimatedLength": "Cerca de {{seconds}}s",
    "record": "Gravar",
    "videoFileType": "Vídeo WebM",
    "recordingStatus": "Gravando… {{percent}}%",
    "savingStatus": "Salvando vídeo…",
    "stop": "Parar",
    "recordingReady": "Gravação pronta. Nomeie e salve, ou descarte para gravar novamente.",
    "fileNameLabel": "Nome do arquivo",
    "saveVideo": "Salvar vídeo…",
    "discard": "Descartar",
    "saved": "{{name}} salvo",
    "saveCancelled": "Salvamento cancelado.",
    "recordError": "Não foi possível gravar o tour. Tente novamente.",
    "saveError": "Não foi possível salvar o vídeo. Tente novamente."
  },
  "recordVideo": {
    "title": "Gravar vídeo",
    "hint": "Grave o mapa ao vivo como um vídeo. Movimente e amplie o mapa durante a gravação — cada movimento é capturado. Este painel e o quadro de seleção não fazem parte do vídeo.",
    "unsupported": "Este navegador não pode gravar a tela do mapa. Experimente uma versão recente do Chrome, Edge ou Firefox.",
    "area": "Área de captura",
    "wholeMap": "Mapa inteiro",
    "selectArea": "Selecionar área…",
    "redrawArea": "Redesenhar área…",
    "drawHint": "Arraste um retângulo no mapa para definir a área de gravação, ou pressione Escape para cancelar.",
    "regionChosen": "Área de gravação: {{width}} × {{height}} px. O quadro permanece fixo enquanto o mapa se move sob ele.",
    "noRegion": "Desenhe um retângulo no mapa para escolher a área de gravação.",
    "needRegion": "Selecione primeiro uma área no mapa.",
    "fps": "Quadros por segundo",
    "caption": "Legenda (gravada no vídeo)",
    "captionTitlePlaceholder": "Título (opcional)",
    "captionTextLabel": "Subtítulo da legenda ou fonte dos dados",
    "captionTextPlaceholder": "Subtítulo ou fonte dos dados (opcional)",
    "captionPosition": "Posição da legenda",
    "captionPos": {
      "top-left": "Superior esquerda",
      "top-center": "Superior central",
      "top-right": "Superior direita",
      "bottom-left": "Inferior esquerda",
      "bottom-center": "Inferior central",
      "bottom-right": "Inferior direita"
    },
    "includePanels": "Incluir painéis do mapa (legenda, barra de cores, HTML) no vídeo",
    "record": "Gravar",
    "preparing": "Preparando…",
    "stop": "Parar",
    "savingStatus": "Salvando vídeo…",
    "recordingReady": "Gravação pronta. Nomeie e salve, ou descarte para gravar novamente.",
    "fileNameLabel": "Nome do arquivo",
    "saveVideo": "Salvar vídeo…",
    "discard": "Descartar",
    "videoFileType": "Vídeo",
    "saved": "{{name}} salvo",
    "saveCancelled": "Salvamento cancelado.",
    "recordError": "Não foi possível gravar o vídeo. Tente novamente.",
    "saveError": "Não foi possível salvar o vídeo. Tente novamente."
  },
  "fieldCollection": {
    "title": "Coleta de campo",
    "description": "Capture observações de pontos, linhas ou polígonos usando um formulário personalizado. Posicione um ponto por GPS ou tocando no mapa, e desenhe linhas e polígonos vértice por vértice.",
    "captureDescription": "Capture uma localização por GPS ou no mapa e, em seguida, preencha o formulário para salvá-la.",
    "captureReviewDescription": "Revise a localização capturada, preencha o formulário e salve-a na camada.",
    "reopen": "Abrir coleta de campo",
    "targetLayer": "Camada de coleta",
    "newLayer": "Nova camada de coleta…",
    "layerName": "Nome da camada",
    "layerNamePlaceholder": "Observações de campo",
    "geometry": "Geometria",
    "geom": {
      "point": "Ponto",
      "line": "Linha",
      "polygon": "Polígono"
    },
    "fields": "Campos do formulário",
    "addField": "Adicionar campo",
    "fieldLabel": "Rótulo",
    "fieldType": "Tipo",
    "options": "Opções (separadas por vírgula)",
    "required": "Obrigatório",
    "noFields": "Nenhum campo ainda. Adicione campos para capturar atributos, ou crie a camada para capturar apenas pontos de localização.",
    "type": {
      "text": "Texto",
      "number": "Número",
      "date": "Data",
      "choice": "Escolha"
    },
    "createLayer": "Criar camada",
    "captureHint": "Use o GPS ou escolha um ponto no mapa para iniciar uma captura.",
    "drawHint": "Desenhe a forma no mapa para iniciar uma captura.",
    "useGps": "Usar GPS",
    "pickOnMap": "Escolher no mapa",
    "reposition": "Reposicionar ponto",
    "drawOnMap": "Desenhar no mapa",
    "pickBannerTitle": "Modo de posicionamento ativo",
    "pickBannerHint": "Clique em qualquer lugar do mapa para escolher um ponto, ou pressione Esc para cancelar.",
    "addGpsVertex": "Adicionar vértice GPS",
    "undo": "Desfazer",
    "finish": "Concluir",
    "vertices_one": "{{count}} vértice",
    "vertices_other": "{{count}} vértices",
    "needMore": "Adicione pelo menos {{min}} vértices",
    "dblClickHint": "Toque para adicionar vértices; clique duas vezes para concluir.",
    "locating": "Localizando…",
    "photo": "Foto",
    "photoOptional": "Foto (opcional)",
    "choosePhoto": "Escolher foto…",
    "removePhoto": "Remover",
    "save": {
      "point": "Salvar ponto",
      "line": "Salvar linha",
      "polygon": "Salvar polígono"
    },
    "saved": {
      "point_one": "{{count}} ponto salvo em {{layer}}.",
      "point_other": "{{count}} pontos salvos em {{layer}}.",
      "line_one": "{{count}} linha salva em {{layer}}.",
      "line_other": "{{count}} linhas salvas em {{layer}}.",
      "polygon_one": "{{count}} polígono salvo em {{layer}}.",
      "polygon_other": "{{count}} polígonos salvos em {{layer}}."
    },
    "layerGone": "A camada de coleta não está mais disponível.",
    "noGeolocation": "A geolocalização não está disponível neste dispositivo.",
    "geolocationDenied": "Não foi possível obter sua localização. Verifique as permissões de localização e tente novamente.",
    "photoTooLarge": "Essa foto é muito grande (máx. {{max}}). Escolha uma imagem menor.",
    "photoReadError": "Não foi possível ler essa imagem. Tente outro arquivo.",
    "errorRequired": "Este campo é obrigatório.",
    "errorNumber": "Digite um número válido.",
    "errorChoice": "Escolha uma das opções listadas."
  },
  "gps": {
    "title": "Rastreamento GPS",
    "description": "Transmita a posição do seu dispositivo no mapa, grave um registro de trajeto e capture pontos na sua localização atual.",
    "start": "Iniciar GPS",
    "stop": "Parar GPS",
    "follow": "Manter o mapa centralizado na minha posição",
    "waitingForFix": "Aguardando sinal do GPS…",
    "noGeolocation": "A geolocalização não está disponível neste dispositivo.",
    "permissionDenied": "A permissão de localização foi negada. Ative-a nas configurações do navegador ou do sistema e tente novamente.",
    "trackLog": "Registro de trajeto",
    "record": "Gravar trajeto",
    "pause": "Pausar",
    "resume": "Retomar",
    "discard": "Descartar",
    "saveTrack": "Salvar como camada",
    "exportGpx": "Exportar GPX",
    "exportGeojson": "Exportar GeoJSON",
    "points_one": "{{count}} ponto",
    "points_other": "{{count}} pontos",
    "trackLayerName": "Trajeto GPS",
    "trackSaved": "{{name}} salvo como camada.",
    "trackExported": "Trajeto exportado.",
    "exportCancelled": "Exportação cancelada.",
    "exportFailed": "Não foi possível exportar o trajeto. Tente novamente.",
    "capture": "Digitalizar",
    "capturePoint": "Capturar ponto",
    "captureLayerName": "Pontos GPS",
    "captured_one": "{{count}} ponto capturado nesta sessão.",
    "captured_other": "{{count}} pontos capturados nesta sessão.",
    "pointCaptured": "Ponto salvo em {{layer}}.",
    "captureBlocked": "A precisão do sinal é ±{{accuracy}}, pior que o limite de {{max}} m. O ponto não foi salvo.",
    "satellites": "Satélites",
    "satellitesShort": "Sat",
    "satellitesValue": "Satélites: {{value}}",
    "satellitesShortValue": "Sat: {{value}}",
    "notAvailable": "—",
    "settings": "Filtros de registro",
    "minDistance": "Distância mín. (m)",
    "minTime": "Tempo mín. (s)",
    "maxAccuracy": "Precisão máx. (m)",
    "settingsHint": "Posições mais próximas que a distância ou o tempo mínimos são ignoradas no trajeto. Posições menos precisas que o limite de precisão não são registradas, e a captura de pontos é bloqueada. 0 desativa um filtro.",
    "openDialog": "Abrir Rastreamento GPS",
    "altitudeValue": "Alt: {{value}} m",
    "speedValue": "{{value}} km/h",
    "headingValue": "{{value}}°",
    "source": "Fonte de posição",
    "sourceDevice": "Este dispositivo",
    "sourceNmea": "Receptor NMEA (serial ou Bluetooth)",
    "nmeaBaudRate": "Taxa de transmissão",
    "nmeaConnectSerial": "Conectar serial",
    "nmeaConnectBluetooth": "Conectar Bluetooth",
    "nmeaConnecting": "Conectando…",
    "nmeaConnected": "Conectado a {{device}}.",
    "nmeaDisconnect": "Desconectar",
    "nmeaNotConnected": "Conecte um receptor NMEA acima para começar a transmitir posições.",
    "nmeaWaiting": "Aguardando sentenças…",
    "nmeaStats": "{{parsed}} sentenças · {{fixes}} fixes",
    "nmeaConnectFailed": "Não foi possível conectar ao receptor.",
    "nmeaDisconnected": "O receptor foi desconectado.",
    "nmeaUnsupportedDevice": "Nenhum serviço NMEA foi encontrado nesse dispositivo. Ele pode ser um receptor Bluetooth clássico, que precisa ser pareado nas configurações do sistema e depois conectado aqui como porta serial.",
    "nmeaUnsupported": "A leitura de um receptor NMEA requer as APIs Web Serial ou Web Bluetooth, que este navegador não fornece. Abra o GeoLibre em um navegador Chromium como Chrome ou Edge.",
    "nmeaSerialUnsupported": "O Web Serial não está disponível aqui, então receptores seriais não podem ser abertos.",
    "nmeaBluetoothUnsupported": "O Web Bluetooth não está disponível aqui, então receptores Bluetooth Low Energy não podem ser abertos.",
    "nmeaBluetoothHint": "A maioria dos receptores GPS Bluetooth usa Bluetooth clássico: pareie um nas configurações do sistema e ele aparecerá aqui como porta serial. Use \"Conectar Bluetooth\" apenas para receptores Bluetooth Low Energy.",
    "fixQuality": {
      "invalid": "Sem fix",
      "gps": "Fix de GPS",
      "dgps": "GPS diferencial",
      "pps": "Fix PPS",
      "rtk-fixed": "RTK fixo",
      "rtk-float": "RTK flutuante",
      "estimated": "Navegação estimada",
      "manual": "Entrada manual",
      "simulation": "Simulado"
    }
  },
  "georeferencer": {
    "title": "Georreferenciar imagem",
    "description": "Fixe uma imagem no mapa: carregue-a, vincule pontos da imagem a locais do mapa e, em seguida, adicione-a como uma sobreposição georreferenciada.",
    "loadImage": "Clique para carregar uma imagem (PNG, JPG, TIFF)",
    "imageTooLarge": "Essa imagem é muito grande (máx. {{max}}). Escolha uma imagem menor.",
    "imageReadError": "Não foi possível ler essa imagem. Tente outro arquivo.",
    "imageNoDimensions": "Não foi possível determinar o tamanho da imagem. Use uma imagem raster (PNG, JPG, TIFF).",
    "sourceImage": "Imagem de origem ({{w}} × {{h}} px)",
    "clickImageHint": "Clique em um ponto na imagem e, em seguida, vincule-o no mapa.",
    "pixelPicked": "Ponto da imagem: {{x}}, {{y}}",
    "linkOnMap": "Vincular no mapa",
    "zoomIn": "Aproximar",
    "zoomOut": "Afastar",
    "zoomReset": "Redefinir zoom",
    "importGcps": "Importar",
    "exportGcps": "Exportar",
    "gcpsImported": "{{count}} ponto(s) de controle importado(s).",
    "gcpsReadError": "Não foi possível ler os pontos de controle desse arquivo.",
    "gcpsOutsideImage": "Alguns pontos de controle ficam fora da imagem carregada — podem ser de uma imagem diferente.",
    "transformNeedsMore": "Esta transformação requer pelo menos {{min}} pontos de controle.",
    "gcps": "Pontos de controle ({{count}})",
    "needGcps": "Adicione pelo menos {{min}} pontos de controle para georreferenciar.",
    "collinear": "Os pontos de controle são colineares ou coincidentes — mova um deles para fora da linha.",
    "cornersOutOfRange": "Este ajuste posiciona a imagem fora dos limites válidos do mapa. Ajuste os pontos de controle.",
    "residual": "Resíduo",
    "rms": "RMS {{rms}} m",
    "opacity": "Opacidade da sobreposição",
    "addToMap": "Adicionar ao mapa",
    "clear": "Limpar",
    "defaultName": "Imagem georreferenciada",
    "exportTiff": "Exportar GeoTIFF",
    "exportTiffButton": "Exportar",
    "exportTiffHint": "Deforma (warp) a imagem para um GeoTIFF Cloud-Optimized no seu navegador (GDAL/WASM). O mecanismo é baixado no primeiro uso.",
    "transform": {
      "affine": "Afim (linear)",
      "polynomial": "Polinomial (ordem 2)",
      "tps": "Spline de placa fina"
    },
    "exporting": "Exportando GeoTIFF… (carregando GDAL no primeiro uso)",
    "exported": "GeoTIFF exportado.",
    "exportFailed": "Falha na exportação do GeoTIFF. Veja o console para mais detalhes."
  },
  "collaborate": {
    "title": "Colaboração ao vivo",
    "description": "Compartilhe uma sessão ao vivo para que outras pessoas possam ver e editar este mapa com você em tempo real.",
    "displayName": "Seu nome",
    "displayNamePlaceholder": "ex.: Alex",
    "color": "Sua cor",
    "startHeading": "Iniciar uma sessão",
    "joinHeading": "Entrar em uma sessão",
    "mode": "Quem pode editar",
    "modeCoEdit": "Qualquer pessoa pode editar",
    "modeViewOnly": "Somente você pode editar (os outros apenas visualizam)",
    "start": "Iniciar sessão",
    "join": "Entrar",
    "joinSession": "Entrar na sessão",
    "invitedHeading": "Você foi convidado",
    "invitedDescription": "Escolha seu nome e cor e, em seguida, entre na sessão ao vivo do anfitrião.",
    "startInstead": "Iniciar uma nova sessão",
    "sessionCode": "Código da sessão",
    "sessionCodePlaceholder": "Digite um código",
    "shareLink": "Link de compartilhamento",
    "scanToJoin": "Escaneie para entrar",
    "copyLink": "Copiar link",
    "copyCode": "Copiar código",
    "copied": "Copiado",
    "participants": "Participantes ({{count}})",
    "host": "Anfitrião",
    "you": "você",
    "guest": "Convidado",
    "connectFailed": "Não foi possível conectar ao servidor de colaboração.",
    "copyFailed": "Não foi possível copiar para a área de transferência.",
    "connecting": "Conectando…",
    "reconnecting": "Reconectando…",
    "connected": "Sessão ao vivo ativa",
    "followHost": "Seguir a visualização do anfitrião",
    "goToMap": "Ir para o mapa e colaborar",
    "goToMapViewOnly": "Ir para o mapa e observar",
    "collapseRoster": "Recolher lista de participantes",
    "manageSession": "Gerenciar sessão",
    "sessionStatusTooltip": "Sessão de colaboração ao vivo. Clique para ver quem está conectado.",
    "announcements": "Anúncios da sessão",
    "participantJoined": "{{name}} entrou na sessão",
    "participantLeft": "{{name}} saiu da sessão",
    "leave": "Sair da sessão",
    "switchToCoEdit": "Permitir que todos editem",
    "switchToViewOnly": "Tornar somente visualização",
    "nameRequired": "Digite seu nome para continuar.",
    "codeRequired": "Digite um código de sessão para entrar.",
    "canEdit": "Pode editar",
    "viewOnly": "Somente visualização",
    "allowEdit": "Permitir que esta pessoa edite",
    "setViewOnly": "Definir esta pessoa como somente visualização",
    "chatLog": "Chat da sessão",
    "chatCompose": "Digite uma mensagem",
    "chatEmpty": "Ainda não há mensagens.",
    "chatPlaceholder": "Enviar uma mensagem…",
    "chatSend": "Enviar mensagem",
    "chatAttachLocation": "Anexar a localização atual do mapa",
    "chatLocationAttached": "Localização anexada (clique para remover)",
    "chatGoToLocation": "Ir para esta localização",
    "sessionStatusUnread_one": "Sessão de colaboração ao vivo, {{count}} mensagem não lida. Clique para ver quem está conectado e conversar.",
    "sessionStatusUnread_other": "Sessão de colaboração ao vivo, {{count}} mensagens não lidas. Clique para ver quem está conectado e conversar."
  },
  "share": {
    "title": "Compartilhar projeto",
    "description": "Envie o projeto atual para {{shareHost}} e obtenha um link compartilhável.",
    "setupIntro": "Conecte sua conta {{shareHost}} antes de enviar.",
    "step1Title": "1. Obtenha um token de API",
    "step1Description": "Faça login em {{shareHost}} e, em seguida, crie um token em Configurações → Tokens de API.",
    "getToken": "Obter token de API",
    "step2Title": "2. Adicione o token ao GeoLibre",
    "step2Description": "Cole o token em Configurações → Variáveis de ambiente neste dispositivo.",
    "configureToken": "Configurar token local",
    "liveAt": "Seu projeto está disponível em:",
    "copyLink": "Copiar link",
    "open": "Abrir",
    "done": "Concluído",
    "projectTitle": "Título do projeto",
    "titlePlaceholder": "Nomeie seu projeto",
    "titleRequired": "Digite um título de projeto antes de compartilhar.",
    "visibility": "Visibilidade",
    "visibilityUnlisted": "Não listado (qualquer pessoa com o link)",
    "visibilityPublic": "Público (listado na galeria)",
    "visibilityPrivate": "Privado (somente você)",
    "shareButton": "Compartilhar",
    "sharing": "Compartilhando…",
    "errorFallback": "Não foi possível compartilhar o projeto.",
    "usernameRequired": "Defina um nome de usuário na sua conta {{shareHost}} antes de compartilhar. Abra as configurações da sua conta para escolher um e tente novamente.",
    "openAccountSettings": "Abrir configurações da conta",
    "credentialsRemoved": "{{count}} campo(s) de credenciais não foram incluídos. Os destinatários devem fornecer as próprias credenciais ou usar uma referência intermediada."
  },
  "gallery": {
    "title": "Galeria de projetos",
    "description": "Explore projetos públicos compartilhados em {{shareHost}} e abra um no GeoLibre.",
    "searchPlaceholder": "Filtrar projetos carregados por título, autor ou tag",
    "loading": "Carregando projetos…",
    "loadingMore": "Carregando mais…",
    "loadMore": "Carregar mais",
    "empty": "Ainda não há projetos públicos para mostrar.",
    "noMatches": "Nenhum projeto carregado corresponde ao seu filtro.",
    "errorFallback": "Não foi possível carregar a galeria de projetos.",
    "errorTimeout": "A galeria de projetos expirou. Tente novamente.",
    "errorNetwork": "Não foi possível acessar {{shareHost}}. Verifique sua conexão com a internet.",
    "errorHttp": "Não foi possível carregar a galeria (HTTP {{status}}).",
    "errorInvalidResponse": "Não foi possível carregar a galeria (resposta inválida do servidor).",
    "errorUnauthorized": "Seu token de API do {{shareHost}} é inválido ou expirou. Atualize-o em Configurações.",
    "errorUsernameRequired": "Defina um nome de usuário na sua conta {{shareHost}} antes de carregar seus projetos.",
    "errorNotConfigured": "Esta implantação não tem nenhum servidor de compartilhamento de projetos configurado.",
    "retry": "Tentar novamente",
    "open": "Abrir",
    "openCopy": "Abrir uma cópia",
    "opening": "Abrindo…",
    "openingCopy": "Abrindo cópia…",
    "openOnWeb": "Ver na web",
    "openError": "Não foi possível abrir este projeto.",
    "byAuthor": "por {{author}}",
    "views_one": "{{count}} visualização",
    "views_other": "{{count}} visualizações",
    "untitled": "Projeto sem título",
    "noThumbnail": "Sem pré-visualização",
    "resizeDialog": "Redimensionar galeria",
    "scopeFeatured": "Em destaque",
    "scopeAll": "Todos os projetos",
    "scopeMine": "Meus projetos",
    "signedOutHint": "Adicione um token de API do {{shareHost}} em Configurações para ver seus próprios projetos não listados e privados.",
    "emptyFeatured": "Ainda não há projetos em destaque.",
    "emptyMine": "Você ainda não compartilhou nenhum projeto.",
    "visibilityUnlisted": "Não listado",
    "visibilityPrivate": "Privado"
  },
  "template": {
    "saveTitle": "Salvar como modelo",
    "saveDescription": "Salve este projeto pré-configurado como um modelo reutilizável na sua biblioteca pessoal.",
    "defaultName": "Modelo sem título",
    "nameLabel": "Nome do modelo",
    "namePlaceholder": "ex.: Mapa padrão da organização",
    "descriptionLabel": "Descrição (opcional)",
    "descriptionPlaceholder": "ex.: Mapa base, estilos e layout de painel pré-configurados para mapas da equipe",
    "stripDataLayersLabel": "Remover camadas de dados",
    "stripDataLayersDesc": "Manter mapa base, grupos de camadas, estilos, legenda, widgets e layout, mas remover o conteúdo das camadas de dados.",
    "saveAction": "Salvar na biblioteca de modelos"
  },
  "language": {
    "label": "Idioma",
    "description": "Escolha o idioma usado na interface."
  },
  "printLayout": {
    "title": "Layout de impressão",
    "description": "Componha um mapa pronto para impressão com título, legenda, barra de escala e seta norte e, em seguida, exporte-o para PNG ou PDF.",
    "preview": "Pré-visualização",
    "resizeControls": "Redimensionar painel de controles",
    "resizeDialog": "Redimensionar diálogo",
    "recapture": "Recapturar mapa",
    "copyToClipboard": "Copiar para a área de transferência",
    "copied": "Copiado",
    "exportPng": "Exportar PNG",
    "exportPdf": "Exportar PDF",
    "titleLabel": "Título",
    "titlePlaceholder": "Título do mapa",
    "subtitleLabel": "Subtítulo",
    "subtitlePlaceholder": "Subtítulo opcional",
    "size": "Tamanho",
    "sizeGroup": {
      "paper": "Papel",
      "screen": "Tela / digital"
    },
    "sizeCustom": "Personalizado…",
    "orientation": "Orientação",
    "portrait": "Retrato",
    "landscape": "Paisagem",
    "width": "Largura",
    "height": "Altura",
    "unit": "Unidade",
    "titlePlacement": "Posicionamento do título",
    "placement": {
      "outside": "Fora do quadro",
      "inside": "Dentro do quadro"
    },
    "alignment": "Alinhamento",
    "align": {
      "left": "Esquerda",
      "center": "Centro",
      "right": "Direita"
    },
    "mapElements": "Elementos do mapa",
    "element": {
      "title": "Título",
      "subtitle": "Subtítulo",
      "legend": "Legenda",
      "scaleBar": "Barra de escala",
      "northArrow": "Seta norte",
      "groupNavigation": "Agrupar seta norte e barra de escala",
      "footer": "Texto de rodapé",
      "date": "Data",
      "attribution": "Incluir atribuição do GeoLibre",
      "pageBorder": "Borda da página",
      "infoBlock": "Bloco de informações (selo)",
      "colorbar": "Barra de cores",
      "customLegend": "Legenda personalizada",
      "dataTable": "Tabela de atributos",
      "dataChart": "Gráfico"
    },
    "dataBlocks": {
      "layer": "Camada",
      "titleLabel": "Cabeçalho",
      "position": "Posição",
      "filterToPage": "Apenas feições na extensão da página",
      "filterToPageHint": "Aplica-se a páginas de atlas e a uma extensão de impressão desenhada; caso contrário, toda a camada é usada."
    },
    "dataTable": {
      "columns": "Colunas",
      "columnsHint": "Os primeiros {{count}} campos são selecionados por padrão. Marque colunas para personalizar.",
      "maxRows": "Máx. de linhas",
      "moreRows_one": "+{{count}} mais",
      "moreRows_other": "+{{count}} mais",
      "noRows": "Nenhuma linha para mostrar com as configurações atuais."
    },
    "dataChart": {
      "type": "Tipo de gráfico",
      "typeBar": "Barras",
      "typePie": "Pizza",
      "typeLine": "Linhas",
      "categoryField": "Campo de categoria",
      "aggregation": "Agregação",
      "aggCount": "Contagem",
      "aggSum": "Soma",
      "aggMean": "Média",
      "valueField": "Campo de valor",
      "noNumericFields": "Esta camada não tem campo numérico para agregar.",
      "noData": "Nenhum dado de gráfico com as configurações atuais."
    },
    "customLegend": {
      "title": "Título da legenda",
      "color": "Cor",
      "itemLabel": "Rótulo",
      "position": "Posição",
      "addItem": "Adicionar item",
      "removeItem": "Remover item",
      "importFromDict": "Importar de dicionário",
      "import": "Importar",
      "importError": "Digite um dicionário {\"rótulo\": \"cor\"} válido."
    },
    "colorbar": {
      "colormap": "Mapa de cores",
      "min": "Valor mín.",
      "max": "Valor máx.",
      "label": "Rótulo",
      "labelPlaceholder": "ex.: Elevação (m)",
      "orientation": "Orientação",
      "vertical": "Vertical",
      "horizontal": "Horizontal",
      "position": "Posição",
      "length": "Comprimento"
    },
    "position": {
      "topLeft": "Superior esquerda",
      "topRight": "Superior direita",
      "bottomLeft": "Inferior esquerda",
      "bottomRight": "Inferior direita"
    },
    "footerTextLabel": "Texto de rodapé",
    "footerPlaceholder": "Texto de rodapé personalizado",
    "margin": "Margem",
    "marginOption": {
      "normal": "Normal",
      "narrow": "Estreita",
      "none": "Nenhuma (sem borda)"
    },
    "mapBackground": "Fundo do mapa",
    "scaleLabel": "Escala (1:N)",
    "scalePlaceholder": "ex.: 25000",
    "scalePresets": "Predefinições…",
    "scalePresetsAria": "Predefinição de escala",
    "extent": {
      "label": "Extensão de impressão",
      "draw": "Desenhar extensão no mapa",
      "redraw": "Redesenhar extensão no mapa",
      "useViewport": "Usar visualização ativa",
      "useCustom": "Recortar para extensão personalizada",
      "clear": "Limpar extensão",
      "hint": "Arraste uma caixa no mapa para definir a área exata de impressão. Mantenha Shift pressionado para corresponder às proporções da página."
    },
    "info": {
      "author": "Autor",
      "authorPlaceholder": "Autor ou organização",
      "project": "Nº do projeto",
      "projectPlaceholder": "Número de referência",
      "crs": "CRS",
      "crsPlaceholder": "ex.: EPSG:4326",
      "scale": "Escala",
      "revision": "Revisão",
      "revisionPlaceholder": "ex.: Rev 01"
    },
    "borderColor": "Cor da borda",
    "borderWidth": "Espessura da borda",
    "mapBorderColor": "Cor do quadro do mapa",
    "mapBorderWidth": "Espessura do quadro do mapa",
    "errors": {
      "mapNotReady": "O mapa ainda não está pronto. Tente novamente em instantes.",
      "captureFailed": "Não foi possível capturar a imagem do mapa.",
      "captureFirst": "Capture o mapa antes de exportar.",
      "exportFailed": "Falha ao exportar {{format}}.",
      "clipboardFailed": "Não foi possível copiar o layout para a área de transferência.",
      "scaleOutOfRange": "Esta escala está fora do intervalo que a visualização atual pode alcançar; exibindo a escala disponível mais próxima."
    },
    "legend": {
      "section": "Legenda",
      "titleLabel": "Título da legenda",
      "defaultTitle": "Legenda",
      "groupByLayer": "Agrupar classes por camada",
      "empty": "Nenhuma camada visível para incluir na legenda.",
      "labelPlaceholder": "Rótulo",
      "moveUp": "Mover entrada para cima",
      "moveDown": "Mover entrada para baixo",
      "showEntry": "Mostrar entrada",
      "hideEntry": "Ocultar entrada",
      "moreItems_one": "+{{count}} mais",
      "moreItems_other": "+{{count}} mais"
    },
    "atlas": {
      "section": "Atlas (série de mapas)",
      "enable": "Gerar uma série de mapas com várias páginas",
      "coverageLayer": "Camada de cobertura",
      "coverage": "Cobertura",
      "coveragePerFeature": "Uma página por feição",
      "coverageAlongLine": "Páginas ao longo de uma linha",
      "segmentLength": "Comprimento do segmento (km)",
      "segmentRequired": "Digite um comprimento de segmento de pelo menos 0,1 km.",
      "segmentTruncated": "Série limitada a {{count}} páginas. Aumente o comprimento do segmento.",
      "noLineFeatures": "A camada de cobertura não tem feições de linha.",
      "noLayers": "Nenhuma camada vetorial com feições carregadas. Adicione primeiro uma camada GeoJSON ou outra camada vetorial local.",
      "nameField": "Campo do nome da página",
      "nameFieldNone": "Número da feição",
      "extentMode": "Extensão da página",
      "extentMargin": "Margem ao redor da feição",
      "extentScale": "Escala fixa",
      "marginLabel": "Margem (%)",
      "scaleLabel": "Escala",
      "scaleRequired": "Digite uma escala maior que zero.",
      "sortField": "Ordenar por",
      "sortNone": "Ordem da camada",
      "sortOrder": "Ordem",
      "sortAsc": "Crescente",
      "sortDesc": "Decrescente",
      "filterLabel": "Filtro",
      "filterPlaceholder": "ex.: POP2000 > 100000 and ST = \"CA\"",
      "filterError": "Não foi possível interpretar o filtro. Use comparações campo-operador-valor (=, !=, >, >=, <, <=, contains) unidas por \"and\".",
      "filenamePattern": "Nome do arquivo da página (exportação ZIP)",
      "pages_one": "{{count}} página",
      "pages_other": "{{count}} páginas",
      "noPages": "Nenhuma feição corresponde ao filtro atual.",
      "pageOf": "Página {{current}} de {{total}}",
      "prevPage": "Página anterior do atlas",
      "nextPage": "Próxima página do atlas",
      "exportZip": "Exportar ZIP de PNG",
      "exportPdfPages_one": "Exportar PDF ({{count}} página)",
      "exportPdfPages_other": "Exportar PDF ({{count}} páginas)",
      "exporting": "Exportando página {{current}} de {{total}}...",
      "tokensHint": "Os tokens {atlas.name}, {atlas.pagenumber}, {atlas.total} e {atlas.attr:FIELD} são substituídos por página no título, no subtítulo, no rodapé e no nome do arquivo da página.",
      "alongLineHint": "As páginas seguem cada linha em ordem; km_start, km_end, segment e segments ficam disponíveis como tokens {atlas.attr:FIELD}."
    }
  },
  "kml": {
    "importFailed": "Não foi possível importar o KML/KMZ.",
    "timeOverlayGroup": "Animação de sobreposição temporal"
  },
  "map": {
    "boundsRestricted": "Limites travados",
    "boundsRestrictedTooltip": "Os limites do mapa estão restritos. Você pode alterar isso em Configurações.",
    "directionsMode": {
      "title": "Modo de rotas ativo",
      "hint": "Clique no mapa para adicionar waypoints. Arraste um waypoint para movê-lo, ou clique nele para removê-lo. As rotas são atualizadas automaticamente.",
      "removeLast": "Remover último",
      "clear": "Limpar",
      "exit": "Sair",
      "calculating": "Calculando rota...",
      "totalDistance": "Distância",
      "estimatedTime": "Tempo estimado",
      "segment": "Segmento {{index}}",
      "metricsUnavailable": "Métricas da rota indisponíveis",
      "distanceKilometers": "{{value}} km",
      "distanceMeters": "{{value}} m",
      "durationLessThanMinute": "< 1 min",
      "durationMinutes": "{{value}} min",
      "durationHours": "{{value}} h",
      "durationHoursMinutes": "{{hours}} h {{minutes}} min",
      "waypointCount_zero": "Nenhum waypoint colocado ainda",
      "waypointCount_one": "{{count}} waypoint colocado",
      "waypointCount_other": "{{count}} waypoints colocados"
    },
    "reverseGeocodeMode": {
      "title": "Modo de geocodificação reversa ativo",
      "hint": "Clique em qualquer lugar do mapa para consultar o endereço nesse ponto.",
      "exit": "Sair"
    },
    "pixelTimeSeriesMode": {
      "start": "Série temporal de pixels"
    }
  },
  "terrainSettings": {
    "title": "Exagero do terreno",
    "description": "Ajuste o exagero vertical do terreno 3D. Valores mais altos fazem colinas e montanhas parecerem mais íngremes.",
    "label": "Exagero vertical",
    "controlLabel": "Alternar terreno (clique duas vezes para exagero)",
    "reset": "Redefinir",
    "done": "Concluído"
  },
  "pixelTimeSeries": {
    "title": "Série temporal de pixels",
    "empty": "Clique em um pixel no mapa para plotar seu valor ao longo do tempo. Adicione mais pixels para comparar.",
    "band": "Banda",
    "bandOption": "Banda {{index}}",
    "pointLabel": "Ponto {{number}}",
    "pickPoints": "Escolher pontos",
    "stopPicking": "Parar de escolher",
    "clearAll": "Limpar tudo",
    "removePoint": "Remover {{label}}",
    "close": "Fechar",
    "erroredExcluded": "A exportação exclui {{n}} leitura(s) com falha.",
    "querying": "Lendo valores de pixel ao longo da linha do tempo...",
    "progress": "Lendo {{done}} de {{total}}...",
    "noValues": "Nenhum valor para a banda selecionada nesses locais (fora do raster ou todas as etapas são nodata).",
    "truncated": "Mostrando {{kept}} de {{total}} etapas da linha do tempo (subamostrado para limitar leituras).",
    "chartAria": "Gráfico de linha do valor do pixel ao longo do tempo",
    "yAxis": "Eixo Y",
    "yMin": "Mín",
    "yMax": "Máx",
    "axisAuto": "auto",
    "gapNote": "Os segmentos tracejados abrangem datas sem leitura (nodata ou fora da cobertura).",
    "exportCsv": "Exportar CSV",
    "exportGeoParquet": "Exportar GeoParquet"
  },
  "basemapExtract": {
    "title": "Extrair mapa base offline",
    "url": "URL do mapa base",
    "urlPlaceholder": "https://data.source.coop/…/planet.pmtiles",
    "useView": "Usar visualização do mapa",
    "drawBbox": "Desenhar no mapa",
    "drawing": "Desenhando…",
    "drawHint": "Arraste uma caixa no mapa para definir a área de extração.",
    "clearBbox": "Limpar a área desenhada",
    "north": "Norte",
    "south": "Sul",
    "west": "Oeste",
    "east": "Leste",
    "bboxHint": "Digite uma caixa delimitadora válida: oeste < leste e sul < norte, dentro de [-180, 180] e [-90, 90].",
    "minZoom": "Zoom mín.",
    "maxZoom": "Zoom máx.",
    "zoomHint": "Os níveis de zoom devem ser números inteiros com mín ≤ máx (0–30). Os níveis acima do máximo do arquivo são ignorados.",
    "errorNoSourceLayers": "Este arquivo vetorial não tem metadados de camada, portanto não pode ser renderizado. Tente outro arquivo.",
    "savedTitle": "Mapas base salvos",
    "openFile": "Abrir arquivo…",
    "savedEmpty": "Nenhum mapa base salvo ainda. Extraia um acima ou abra um arquivo .pmtiles.",
    "errorNotBasemap": "Este arquivo não é um mapa base vetorial Protomaps, portanto não pode ser estilizado.",
    "apply": "Usar como mapa base",
    "rename": "Renomear",
    "delete": "Excluir",
    "confirmDelete": "Excluir?",
    "style": "Estilo do mapa base",
    "flavor": {
      "light": "Claro",
      "dark": "Escuro",
      "white": "Branco",
      "grayscale": "Escala de cinza",
      "black": "Preto"
    },
    "flavorOverlay": "Nenhum (camada de sobreposição)",
    "styleHintBasemap": "Renderiza a extração como um mapa base Protomaps estilizado (vias, água, rótulos), offline.",
    "styleHintOverlay": "Adiciona a extração como uma camada de sobreposição simples em vez de um mapa base estilizado.",
    "phaseDirectories": "Lendo os diretórios do arquivo…",
    "phaseData": "Baixando tiles…",
    "resize": "Redimensionar painel",
    "estimatedSize": "≈ {{size}} · {{tiles}} tiles",
    "estimatedSizeLarge": "Download grande: ≈ {{size}} · {{tiles}} tiles",
    "planWarning": "Esta extração tem cerca de {{size}} em {{tiles}} tiles e é montada na memória. Continuar?",
    "planContinue": "Continuar",
    "extract": "Extrair",
    "extracting": "Extraindo…",
    "successSaved": "Salvo em {{path}} e adicionado ao mapa.",
    "successAdded": "Adicionado ao mapa (o arquivo não foi salvo).",
    "successAddedSaveFailed": "Adicionado ao mapa, mas não foi possível salvar no disco: {{error}}",
    "successBasemapSaved": "Salvo em {{path}} e definido como mapa base.",
    "successBasemapApplied": "Definido como mapa base (o arquivo não foi salvo).",
    "successBasemapSaveFailed": "Definido como mapa base, mas não foi possível salvar no disco: {{error}}"
  },
  "rasterSubset": {
    "title": "Extrair subconjunto",
    "drawBbox": "Desenhar caixa delimitadora",
    "drawing": "Desenhando…",
    "drawHint": "Clique e arraste no mapa para desenhar a área de extração. Pressione Esc para cancelar.",
    "useView": "Usar vista atual",
    "north": "Norte",
    "south": "Sul",
    "west": "Oeste",
    "east": "Leste",
    "bboxHint": "Digite uma caixa válida: oeste/leste entre -180 e 180, sul/norte entre -90 e 90, com oeste < leste e sul < norte.",
    "bboxAntimeridianHint": "Oeste deve ser menor que Leste. Caixas que cruzam o meridiano de 180° não são suportadas; divida-as em duas extrações.",
    "zoom": "Nível de zoom",
    "zoomHint": "Digite um nível de zoom inteiro entre 0 e 30.",
    "resolution": "Resolução",
    "resolutionPlaceholder": "Nativa",
    "resolutionHint": "Tamanho do pixel de saída nas unidades do CRS de saída. Deixe em branco para manter a resolução original.",
    "advanced": "Opções avançadas",
    "outputCrs": "CRS de saída (EPSG)",
    "outputCrsPlaceholder": "Igual ao de entrada",
    "nodata": "Valor nodata",
    "nodataPlaceholder": "Nenhum",
    "additionalArgs": "Opções adicionais",
    "additionalArgsPlaceholder": "level=2\nwidth=512",
    "additionalArgsHint": "Um par chave=valor por linha, ex.: level, width, height.",
    "errorResolution": "A resolução deve ser um número positivo.",
    "errorOutputCrs": "O CRS de saída deve ser um código EPSG positivo.",
    "errorNodata": "Nodata deve ser um número.",
    "errorAdditionalArgs": "As opções adicionais devem ter um par chave=valor por linha.",
    "extract": "Extrair e salvar",
    "extracting": "Extraindo…",
    "success": "Subconjunto salvo."
  },
  "mapGrid": {
    "layers": "Camadas",
    "layersLabel": "Visibilidade de camadas para o mapa {{number}}",
    "noLayers": "Ainda não há camadas",
    "labelPlaceholder": "Rótulo",
    "labelLabel": "Rótulo do mapa {{number}}",
    "removePane": "Remover mapa {{number}}",
    "show3d": "Mostrar mapa {{number}} como um globo 3D",
    "show2d": "Mostrar mapa {{number}} como um mapa 2D",
    "only2d": "Somente 2D"
  },
  "mapContextMenu": {
    "copyCoordinatesHint": "Copiar coordenadas para a área de transferência",
    "quickActions": "Ações rápidas",
    "whatsHere": "O que há aqui?",
    "copyGeoJson": "Copiar como GeoJSON",
    "centerHere": "Centralizar mapa aqui",
    "zoomInHere": "Ampliar aqui",
    "viewInGoogleMaps": "Ver no Google Maps",
    "viewInGoogleEarth": "Ver no Google Earth"
  },
  "quickAnalysis": {
    "menu": "Análise rápida",
    "bufferHere": "Buffer de {{distance}} aqui",
    "bufferFeatures": "Buffer de {{distance}} em todas as feições",
    "driveTimeHere": "Tempo de carro a partir daqui ({{contours}} min)",
    "walkTimeHere": "Tempo a pé a partir daqui ({{contours}} min)",
    "centroids": "Centroides",
    "convexHull": "Envoltória convexa",
    "boundingBox": "Caixa delimitadora",
    "openInProcessing": "Abrir em Processamento…",
    "bufferLayerName": "Buffer {{distance}}",
    "bufferOfLayerName": "{{name}} buffer {{distance}}",
    "driveTimeLayerName": "Tempo de carro",
    "walkTimeLayerName": "Tempo a pé",
    "centroidsLayerName": "{{name}} centroides",
    "convexHullLayerName": "{{name}} envoltória convexa",
    "boundingBoxLayerName": "{{name}} caixa delimitadora",
    "running": "Executando {{tool}}…",
    "failed": "{{tool}} falhou",
    "viewDetails": "Ver detalhes",
    "unit": {
      "meters": "m",
      "kilometers": "km",
      "miles": "mi"
    }
  },
  "knowledgeCard": {
    "title": "Informações do lugar",
    "loading": "Consultando este lugar…",
    "empty": "Nenhum artigo da Wikipédia encontrado perto deste lugar.",
    "error": "Não foi possível carregar as informações do lugar. Tente novamente.",
    "readMore": "Leia mais na Wikipédia",
    "nearby": "Lugares próximos",
    "attribution": "Conteúdo da Wikipédia, licenciado sob CC BY-SA.",
    "noticeTitle": "Os cartões de conhecimento usam a Wikipédia",
    "noticeDesc": "Abrir um cartão de conhecimento envia as coordenadas do lugar clicado (e o título de qualquer artigo próximo que você abrir) à API pública da Wikipédia para buscar um resumo e uma foto — suas coordenadas saem do seu dispositivo nessas solicitações."
  },
  "onboarding": {
    "title": "Bem-vindo ao GeoLibre",
    "description": "Escolha seu nível de experiência para personalizar a interface. Você pode alterar isso a qualquer momento em Configurações → Interface.",
    "level": {
      "beginner": {
        "title": "Iniciante",
        "description": "Mostrar apenas as fontes de dados e ferramentas essenciais."
      },
      "intermediate": {
        "title": "Intermediário",
        "description": "Mostrar fontes de dados, serviços e plugins comuns."
      },
      "advanced": {
        "title": "Avançado",
        "description": "Mostrar tudo o que o GeoLibre tem a oferecer."
      }
    },
    "showEverything": "Pular — mostrar tudo"
  },
  "settings": {
    "title": "Configurações",
    "description": "Configure as preferências do projeto e as configurações de execução.",
    "saveButton": "Salvar configurações",
    "section": {
      "map": "Mapa",
      "layout": "Layout",
      "appearance": "Aparência",
      "interface": "Interface",
      "geocoding": "Geocodificação",
      "ai": "Provedores de IA",
      "environment": "Ambiente",
      "updates": "Atualizações"
    },
    "menu": {
      "mapPreferences": "Preferências do mapa",
      "layoutSettings": "Configurações de layout",
      "appearanceSettings": "Configurações de aparência",
      "interfaceSettings": "Configurações de interface",
      "geocoding": "Geocodificação",
      "ai": "Provedores de IA",
      "environmentVariables": "Variáveis de ambiente",
      "updates": "Configurações de atualização",
      "managePlugins": "Gerenciar plugins",
      "styleManager": "Gerenciador de estilos",
      "urlOverrideNote": "Os parâmetros de layout da URL substituem as configurações salvas."
    },
    "updates": {
      "title": "Atualizações de software",
      "description": "Controle como o GeoLibre verifica novas versões quando o aplicativo desktop é iniciado.",
      "checkOnStartup": "Verificar atualizações ao iniciar",
      "checkOnStartupHint": "Quando ativado, o GeoLibre verifica uma versão mais recente sempre que o aplicativo é iniciado. Desative para um fluxo de trabalho totalmente offline.",
      "notificationLevel": "Notificar-me sobre",
      "notificationLevelHint": "Escolha quais tipos de versões acionam uma notificação de inicialização.",
      "level": {
        "all": "Todas as versões (principais, secundárias e correções)",
        "minor": "Somente versões principais e secundárias",
        "major": "Somente versões principais"
      }
    },
    "map": {
      "constraintsTitle": "Restrições do mapa",
      "restrictBounds": "Restringir limites do mapa",
      "west": "Oeste",
      "south": "Sul",
      "east": "Leste",
      "north": "Norte",
      "useCurrentView": "Usar visualização atual",
      "useCurrentViewHint": "Captura a extensão atual do mapa e ativa Restringir limites do mapa.",
      "useCurrentViewGlobeHint": "Mude para a projeção Mercator antes de usar isto. Na projeção Globo, o mapa ainda pode desviar ligeiramente para além dos limites capturados.",
      "minZoom": "Zoom mín.",
      "maxZoom": "Zoom máx.",
      "maxPitch": "Inclinação máx.",
      "renderWorldCopies": "Renderizar cópias do mundo",
      "ellipsoid": "Corpo celeste",
      "ellipsoidHint": "Define o raio usado para medições de distância, área e escala. Escolha um mapa base planetário correspondente em Adicionar dados.",
      "scaleUnit": "Unidades da barra de escala",
      "scaleUnitMetric": "Métrico (m / km)",
      "scaleUnitImperial": "Imperial (ft / mi)",
      "scaleUnitNautical": "Náutico (nmi)",
      "scaleUnitHint": "Escolha as unidades mostradas na barra de escala na parte inferior do mapa.",
      "errorBoundsUnavailable": "Os limites do mapa ainda não estão disponíveis."
    },
    "layout": {
      "title": "Layout",
      "description": "Visibilidade do espaço de trabalho e apresentação da barra de ferramentas.",
      "toolbar": "Barra de ferramentas",
      "panels": "Painéis",
      "showToolbarLabels": "Mostrar rótulos da barra de ferramentas",
      "showProjectInfo": "Mostrar informações do projeto",
      "showProjectInfoToolbar": "Mostrar informações do projeto na barra de ferramentas",
      "showLayersPanel": "Mostrar painel de camadas",
      "showStylePanel": "Mostrar painel de estilo",
      "showBrowserPanel": "Mostrar painel do navegador",
      "showCommentsPanel": "Mostrar painel de comentários",
      "showAttributePanel": "Mostrar painel de atributos",
      "urlParamsNote": "Os parâmetros de layout da URL ainda se aplicam quando presentes em links de visualizador compartilhados."
    },
    "appearance": {
      "title": "Aparência",
      "description": "Escolha um modo claro ou escuro e uma cor de destaque que se aplica sobre ele.",
      "themeMode": "Modo",
      "mode": {
        "light": "Claro",
        "dark": "Escuro"
      },
      "accentColor": "Cor de destaque",
      "custom": "Personalizado",
      "customColor": "Cor personalizada",
      "customColorHex": "Código hexadecimal da cor personalizada",
      "scheme": {
        "blue": "Azul",
        "violet": "Violeta",
        "emerald": "Esmeralda",
        "rose": "Rosa",
        "amber": "Âmbar"
      }
    },
    "interface": {
      "title": "Perfil de interface",
      "description": "Escolha um nível de experiência para simplificar a interface. Nada é removido, então você pode alternar níveis ou reativar itens aqui a qualquer momento.",
      "presets": "Nível de experiência",
      "presetsHint": "Iniciante, Intermediário e Avançado aplicam um layout selecionado instantaneamente. Editar qualquer item abaixo muda para Personalizado, ou clique em Personalizado para manter a configuração atual no modo personalizado.",
      "level": {
        "beginner": "Iniciante",
        "intermediate": "Intermediário",
        "advanced": "Avançado",
        "custom": "Personalizado"
      },
      "dataSources": "Fontes de dados",
      "plugins": "Plugins",
      "menus": "Menus",
      "lockedNote": "Este perfil de interface é gerenciado pelo seu administrador e não pode ser alterado."
    },
    "env": {
      "tokenTitle": "Token de API do Share.GeoLibre",
      "tokenDescription": "Projeto > Compartilhar usa este token para enviar seus mapas para {{shareHost}}. Abra <tokenLink>{{shareHost}}/settings</tokenLink>, crie um token em Configurações > Tokens de API e, em seguida, cole-o no campo abaixo.",
      "tokenStorageNote": "Armazenado localmente neste dispositivo e enviado apenas para {{shareHost}} para autenticar envios. Na versão web, ele compartilha o mesmo armazenamento do navegador que outros dados do site, então revogue-o em {{shareHost}} se sua máquina for comprometida.",
      "tokenUnavailable": "Esta implantação não tem nenhum servidor de compartilhamento de projetos configurado, portanto nenhum token de API é necessário.",
      "tokenHostInvalid": "O endereço do servidor de compartilhamento de projetos desta implantação não é válido, portanto este token não pode ser usado.",
      "tokenPlaceholder": "glb_…",
      "cesiumTokenTitle": "Token do Cesium Ion",
      "cesiumTokenDescription": "O globo 3D (um painel de visualização dividida) usa imagens e terreno mundiais do Cesium Ion, que precisam de um token de acesso. Crie uma conta gratuita em <tokenLink>ion.cesium.com/tokens</tokenLink>, copie seu token de acesso padrão e cole-o abaixo. Sem um token, o alternador do globo 3D fica oculto.",
      "cesiumTokenStorageNote": "Armazenado localmente neste dispositivo (não no arquivo do projeto, portanto nunca é compartilhado) e enviado apenas para o Cesium Ion. Na versão web, ele compartilha o mesmo armazenamento do navegador que outros dados do site.",
      "cesiumTokenPlaceholder": "eyJhbGciOi…",
      "variablesTitle": "Variáveis de ambiente",
      "variablesCount_one": "{{count}} variável de execução ativada.",
      "variablesCount_other": "{{count}} variáveis de execução ativadas.",
      "secretsWarning": "Os valores são armazenados em texto simples no arquivo do projeto e podem ser expostos quando o projeto é compartilhado. Evite colocar segredos aqui, a menos que o arquivo do projeto permaneça privado.",
      "empty": "Nenhuma variável de ambiente configurada.",
      "variableFallback": "variável",
      "enableAria": "Ativar {{name}}",
      "nameAria": "Nome da variável",
      "namePlaceholder": "VITE_EXAMPLE_KEY",
      "valueAria": "Valor da variável",
      "valuePlaceholder": "Valor",
      "showValueAria": "Mostrar valor de {{name}}",
      "hideValueAria": "Ocultar valor de {{name}}",
      "removeAria": "Remover {{name}}",
      "errorNamePattern": "Os nomes das variáveis de ambiente devem começar com uma letra ou sublinhado e conter apenas letras, números e sublinhados.",
      "errorDuplicate": "A variável de ambiente \"{{name}}\" está duplicada.",
      "stripPromptTitle": "Remover credenciais?",
      "stripPromptDesc": "Este projeto tem {{count}} campo(s) com credenciais, como chaves de API, cabeçalhos de solicitação ou configurações de plugins. Removê-los do arquivo salvo? O espaço de trabalho atual os mantém de qualquer forma.",
      "stripButton": "Remover credenciais",
      "keepButton": "Manter no arquivo"
    },
    "geocoding": {
      "title": "Geocodificação",
      "description": "Escolha o mecanismo de geocodificação usado por Geocodificar endereços e Geocodificação reversa. Nominatim é o padrão e não requer chave.",
      "provider": "Provedor",
      "requiresKey": "Este provedor precisa de uma chave de API ou token de acesso.",
      "optionalKey": "O serviço hospedado precisa de uma chave de API; uma instância autoexecutada não precisa.",
      "noKey": "Este provedor funciona sem uma chave de API.",
      "apiKey": "Chave de API",
      "apiKeyPlaceholder": "Cole a chave ou token de API do provedor",
      "toggleApiKey": "Alternar visibilidade da chave de API",
      "forwardEndpoint": "Endpoint direto (opcional)",
      "reverseEndpoint": "Endpoint reverso (opcional)",
      "email": "E-mail de contato (opcional)",
      "emailPlaceholder": "voce@exemplo.org",
      "emailHint": "Usado apenas pelo Nominatim, que recomenda fornecê-lo para ajudar a identificar seu aplicativo — enviado somente quando fornecido.",
      "secretsWarning": "As chaves são armazenadas em texto simples no arquivo do projeto e podem ser expostas quando o projeto é compartilhado. Elas também são enviadas como parâmetros de consulta, portanto aparecem nas URLs de solicitação de geocodificação visíveis nas ferramentas de desenvolvedor do navegador e em quaisquer logs de proxy.",
      "corsNote": "O Google não permite oficialmente solicitações do navegador para sua API de geocodificação, portanto as solicitações podem ser bloqueadas, a menos que sejam atendidas por um proxy de mesma origem."
    },
    "ai": {
      "title": "Provedores do assistente de IA",
      "description": "Configure as credenciais do assistente de IA. Escolha um provedor, preencha os campos necessários e salve. Apenas um provedor configurado é necessário para começar a conversar.",
      "providerLabel": "Provedor",
      "providerHint": "Escolha um provedor para revelar os campos exatos que ele precisa.",
      "configuredMark": "(configurado)",
      "optionalMark": "(opcional)",
      "statusReady": "{{provider}} está configurado e pronto para uso.",
      "statusIncomplete": "Preencha os campos obrigatórios abaixo para ativar {{provider}}.",
      "secretsNote": "As credenciais são salvas localmente neste dispositivo, não no arquivo de projeto que você compartilha, e por isso persistem entre reinicializações. Qualquer pessoa com acesso a este dispositivo pode lê-las.",
      "getCredentials": "Onde obter credenciais do {{provider}}",
      "showValue": "Mostrar {{name}}",
      "hideValue": "Ocultar {{name}}",
      "osEnvNote": "O aplicativo desktop também lê chaves de API correspondentes das variáveis de ambiente do seu sistema. Elas são usadas automaticamente e nunca são salvas no arquivo do projeto — deixe um campo em branco para continuar usando o valor do ambiente.",
      "osEnvField": "Lido da variável de ambiente do sistema {{name}}.",
      "osEnvPlaceholder": "Definido no ambiente do seu sistema",
      "newProfile": "Novo perfil",
      "cancel": "Cancelar",
      "addProfile": "Adicionar perfil",
      "profileName": "Nome do perfil",
      "profileNamePlaceholder": "ex.: Gemini do trabalho, Ollama local",
      "profileCount_one": "{{count}} perfil",
      "profileCount_other": "{{count}} perfis",
      "noProfiles": "Ainda não há perfis. Adicione um abaixo para configurar o assistente de IA.",
      "setDefault": "Definir como padrão",
      "defaultProfile": "Padrão",
      "edit": "Editar",
      "deleteProfile": "Excluir perfil",
      "backToProfiles": "← Voltar aos perfis",
      "saveProfile": "Salvar perfil",
      "profileEditSaveHint": "Salve ou descarte as alterações do perfil acima e depois clique em “Salvar configurações” para aplicar todas as alterações.",
      "field": {
        "apiKey": "Chave de API",
        "baseUrl": "URL base",
        "model": "Modelo",
        "region": "Região",
        "accessKeyId": "ID da chave de acesso",
        "secretAccessKey": "Chave de acesso secreta",
        "sessionToken": "Token de sessão"
      },
      "placeholder": {
        "geminiKey": "AIza…",
        "anthropicKey": "sk-ant-…",
        "openaiKey": "sk-…",
        "ollamaBaseUrl": "http://localhost:11434",
        "ollamaModel": "llama3.2",
        "awsAccessKey": "AKIA…",
        "awsSecretKey": "wJalrXUtnFEMI…",
        "awsRegion": "us-east-1",
        "awsSessionToken": "FwoGZXIvYXdz… (se estiver usando credenciais temporárias)",
        "customBaseUrl": "https://api.example.com/v1",
        "customModel": "model-id",
        "customApiKey": "sk-… (se necessário)"
      }
    }
  },
  "toolbar": {
    "menu": {
      "project": "Projeto",
      "import": "Importar",
      "edit": "Editar",
      "view": "Exibir",
      "addData": "Adicionar dados",
      "processing": "Processamento",
      "controls": "Controles",
      "plugins": "Plugins",
      "help": "Ajuda",
      "settings": "Configurações"
    },
    "atmosphere": {
      "haloColor": "Cor do halo",
      "haloExtent": "Extensão do halo",
      "haloExtentHint": "A distância que o brilho atmosférico alcança além do globo. Valores mais baixos mantêm os dados próximos à superfície; valores mais altos criam um halo amplo e etéreo.",
      "haloOpacity": "Intensidade do halo",
      "spaceColor": "Cor do espaço",
      "reset": "Redefinir para os padrões",
      "globeOnly": "Os efeitos atmosféricos só estão disponíveis quando a visualização de Globo está ativada."
    },
    "sun": {
      "title": "Sol",
      "date": "Data",
      "time": "Hora",
      "timeOfDay": "Hora do dia",
      "play": "Reproduzir",
      "pause": "Pausar",
      "stepBack": "Retroceder uma hora",
      "stepForward": "Avançar uma hora",
      "speed": "Velocidade da animação",
      "loop": "Repetir animação",
      "now": "Agora",
      "shade": "Sombreamento noturno",
      "close": "Fechar",
      "localTimeNote": "Horários exibidos no fuso horário do seu computador."
    },
    "routeAnimation": {
      "title": "Animação de rota",
      "layer": "Camada de rota",
      "selectLayer": "Selecione uma camada de linhas…",
      "noLineLayers": "Nenhuma camada de linhas no projeto",
      "play": "Reproduzir",
      "pause": "Pausar",
      "loop": "Repetir animação",
      "progress": "Progresso",
      "speed": "Velocidade",
      "followCamera": "Seguir",
      "followPitch": "Inclinação da câmera",
      "followZoom": "Zoom da câmera",
      "followRotate": "Girar para a direção do percurso",
      "color": "Cor da rota",
      "marker": "Marcador",
      "markerStyle": {
        "arrow": "Seta (direção)",
        "point": "Ponto",
        "none": "Nenhum"
      },
      "trail": "Rastro",
      "saveVideoMp4": "Salvar como MP4",
      "saveVideoWebm": "Salvar como WebM",
      "estimatedLength": "≈ {{seconds}} s",
      "recordingStatus": "Gravando… {{percent}}%",
      "savingVideo": "Salvando vídeo…",
      "stop": "Parar",
      "videoSaved": "{{name}} salvo",
      "videoError": "Não foi possível gravar a animação. Tente novamente.",
      "videoUnsupported": "A gravação de vídeo não é suportada neste navegador.",
      "videoFileTypeMp4": "Vídeo MP4",
      "videoFileTypeWebm": "Vídeo WebM",
      "collapse": "Recolher",
      "expand": "Expandir",
      "close": "Fechar"
    },
    "flightSim": {
      "title": "Simulador de voo",
      "start": "Iniciar voo",
      "stop": "Parar voo",
      "collapse": "Recolher",
      "expand": "Expandir",
      "close": "Fechar",
      "speed": "Velocidade",
      "altitude": "Altitude",
      "heading": "Rumo",
      "agl": "Acima do solo",
      "throttle": "Acelerador",
      "maxSpeed": "Velocidade máxima",
      "minAgl": "Margem do terreno",
      "units": "Unidades",
      "imperial": "Nós / pés",
      "metric": "km/h / metros",
      "bankCamera": "Inclinar o horizonte nas curvas",
      "invertPitch": "Inverter o eixo de arfagem",
      "knots": "kt",
      "kph": "km/h",
      "feet": "ft",
      "meters": "m",
      "terrainWarning": "Terreno — suba",
      "help": "Setas ou A/D para virar · W/S ou Page Up/Down para o acelerador · Espaço nivela as asas · Esc sai."
    },
    "setView": {
      "title": "Definir visualização",
      "description": "Mova o mapa para uma câmera exata.",
      "sectionCoordinates": "Coordenadas",
      "smartPaste": "Colar coordenadas",
      "smartPasteInputLabel": "String de coordenadas",
      "smartPastePlaceholder": "ex.: 51.5074, -0.1278 ou 51°30'26\"N, 0°07'39\"W",
      "smartPasteInfo": "Digite ou cole uma string de coordenadas completa em DD, DMS ou DDM e, em seguida, execute Processar entrada. O GeoLibre detecta o formato e preenche os campos de longitude e latitude abaixo. Ajuste zoom, inclinação e direção separadamente antes de ir.",
      "smartPasteInfoLabel": "Sobre colar coordenadas",
      "smartPasteInvalid": "Não foi possível ler essas coordenadas. Digite uma longitude e latitude completas em DD, DMS ou DDM, por exemplo 51.5074, -0.1278. Uma string parcial ou incompleta não pode ser interpretada.",
      "processInput": "Processar entrada",
      "processed": "Os campos de longitude e latitude abaixo foram preenchidos.",
      "sectionZoom": "Zoom da câmera",
      "sectionOrientation": "Orientação da câmera",
      "orientationHint": "A inclinação e a direção assumem 0 por padrão se deixadas em branco.",
      "format": "Formato de entrada manual",
      "formatInfo": "Estes botões apenas escolhem como você digita o centro manualmente. A caixa de colagem acima já aceita qualquer formato.\nDD: 51.5074, -0.1278\nDMS: 51°30'26\"N, 0°07'39\"W\nDDM: 51°30.44'N, 0°07.65'W",
      "formatInfoLabel": "Sobre formatos de coordenadas",
      "formatDd": "Graus decimais (DD)",
      "formatDms": "Graus, minutos, segundos (DMS)",
      "formatDdm": "Graus e minutos decimais (DDM)",
      "formatDdShort": "DD",
      "formatDmsShort": "DMS",
      "formatDdmShort": "DDM",
      "longitude": "Longitude",
      "latitude": "Latitude",
      "degrees": "Graus",
      "minutes": "Minutos",
      "seconds": "Segundos",
      "hemisphere": "Hemisfério",
      "zoom": "Zoom",
      "pitch": "Inclinação",
      "bearing": "Direção",
      "go": "Ir",
      "invalid": "Digite uma longitude válida (−180 a 180), latitude (−90 a 90) e zoom.",
      "invalidDms": "Digite graus, minutos (0 a 59), segundos (0 a 59) e zoom válidos.",
      "invalidDdm": "Digite graus, minutos decimais (0 a < 60) e zoom válidos."
    },
    "commandGroup": {
      "project": "Projeto",
      "addData": "Adicionar dados",
      "processing": "Processamento",
      "controls": "Controles",
      "view": "Exibir",
      "help": "Ajuda",
      "plugins": "Plugins",
      "settings": "Configurações"
    },
    "command": {
      "projectNew": "Novo projeto",
      "projectOpenFile": "Abrir projeto de arquivo",
      "projectOpenUrl": "Abrir projeto de URL",
      "projectSave": "Salvar projeto",
      "projectSaveAs": "Salvar projeto como…",
      "projectShare": "Compartilhar projeto…",
      "projectCollaborate": "Colaborar…",
      "projectPrint": "Imprimir…",
      "addVectorLayer": "Adicionar camada vetorial",
      "addRasterLayer": "Adicionar camada raster",
      "addOsmPbfLayer": "Adicionar camada OSM PBF",
      "addLayer": "Adicionar {{name}}",
      "addStacLayer": "Adicionar camada STAC",
      "addGeoparquetLayer": "Adicionar camada GeoParquet",
      "addFlatgeobufLayer": "Adicionar camada FlatGeobuf",
      "addPmtilesLayer": "Adicionar camada PMTiles",
      "addZarrLayer": "Adicionar camada Zarr",
      "addNetcdfLayer": "Adicionar camada NetCDF / HDF",
      "addLidarLayer": "Adicionar camada LiDAR",
      "addSplattingLayer": "Adicionar Gaussian Splatting",
      "add3dTilesLayer": "Adicionar camada 3D Tiles",
      "addDuckdbLayer": "Adicionar camada DuckDB",
      "whiteboxTools": "Ferramentas Whitebox",
      "sqlWorkspace": "Área de trabalho SQL",
      "pythonConsole": "Console Python",
      "notebook": "Notebook Jupyter",
      "dashboard": "Painel",
      "assistant": "Assistente de IA",
      "geocode": "Geocodificar endereços",
      "modelBuilder": "Lotes e modelos",
      "planetaryComputer": "Planetary Computer",
      "earthEngine": "Earth Engine",
      "segmentation": "Segmentação por IA",
      "objectDetection": "Detecção de objetos",
      "segmentEverything": "Segmentar tudo",
      "toggleControl": "Alternar controle {{name}}",
      "toggleAtmosphereEffects": "Alternar efeitos atmosféricos",
      "toggleDirections": "Alternar rotas",
      "toggleSearch": "Alternar pesquisa",
      "toggleColorbar": "Alternar barra de cores",
      "toggleLegend": "Alternar legenda",
      "toggleHtmlPanel": "Alternar painel HTML",
      "toggleMeasure": "Alternar medição",
      "toggleBookmark": "Alternar favorito",
      "toggleMinimap": "Alternar minimapa",
      "toggleViewState": "Alternar estado da visualização",
      "previousView": "Visualização anterior",
      "nextView": "Próxima visualização",
      "resetNorth": "Redefinir direção",
      "resetPitch": "Redefinir inclinação",
      "resetPitchBearing": "Redefinir inclinação e direção",
      "setView": "Definir visualização",
      "viewComments": "Ver comentários",
      "zoomIn": "Ampliar",
      "zoomOut": "Reduzir",
      "switchToLight": "Mudar para modo claro",
      "switchToDark": "Mudar para modo escuro",
      "keyboardShortcuts": "Atalhos de teclado",
      "website": "Site",
      "githubRepository": "Repositório do GitHub",
      "diagnostics": "Diagnósticos",
      "giveFeedback": "Enviar feedback",
      "checkForUpdates": "Verificar atualizações",
      "about": "Sobre",
      "togglePlugin": "Alternar {{name}}",
      "managePlugins": "Gerenciar plugins",
      "styleManager": "Gerenciador de estilos…"
    },
    "layerType": {
      "delimitedText": "Camada de texto delimitado",
      "photos": "Fotos geomarcadas",
      "gpx": "Camada GPX",
      "mbtiles": "Camada MBTiles",
      "xyz": "Camada XYZ",
      "wms": "Camada WMS",
      "wfs": "Camada WFS",
      "wmts": "Camada WMTS",
      "ogcFeatures": "OGC API - Features",
      "ogcVectorTiles": "OGC Vector Tiles",
      "arcgis": "Camada ArcGIS",
      "georss": "Camada GeoRSS",
      "video": "Camada de vídeo",
      "deckglViz": "Camada Deck.gl",
      "gltfModel": "Modelo 3D (glTF)",
      "postgres": "Camada PostgreSQL"
    },
    "conversion": {
      "vectorToVector": "Vetor para vetor",
      "zipInputBrowserError": "Shapefiles compactados só podem ser convertidos no aplicativo desktop do GeoLibre. No navegador, selecione o .shp descompactado junto com seus arquivos .dbf, .shx e .prj.",
      "browserOutputUnsupported": "No navegador, a saída pode ser GeoJSON, CSV, GeoParquet, GeoPackage ou Shapefile (.zip). A saída \".{{extension}}\" requer o aplicativo desktop do GeoLibre.",
      "outputExtensionRequired": "Adicione uma extensão de arquivo ao nome de saída para escolher o formato.",
      "readingWithDuckDb": "Lendo {{name}} com DuckDB-WASM",
      "readFeatures": "{{features}} feições lidas de {{name}}",
      "savedFile": "{{name}} salvo",
      "saveCanceled": "Conversão concluída; o salvamento foi cancelado.",
      "vectorToGeoparquet": "Vetor para GeoParquet",
      "vectorToFlatgeobuf": "Vetor para FlatGeobuf",
      "vectorToShapefile": "Vetor para Shapefile",
      "vectorToGeopackage": "Vetor para GeoPackage",
      "csvToGeoparquet": "CSV para GeoParquet",
      "vectorToPmtiles": "Vetor para PMTiles",
      "rasterToCog": "Raster para COG",
      "rasterToPmtiles": "Raster para PMTiles",
      "needsDesktop": "Esta conversão precisa do aplicativo desktop do GeoLibre ou de um sidecar em execução.",
      "runsInBrowserDuckDb": "A conversão é executada no seu navegador com DuckDB-WASM.",
      "runsInBrowserWriters": "A conversão é executada no seu navegador com DuckDB-WASM e os gravadores incluídos.",
      "runsInBrowserWasm": "A conversão é executada no seu navegador com geolibre-wasm. Não precisa de sidecar.",
      "convertingWithWasm": "Convertendo {{name}} com geolibre-wasm",
      "rasterShape": "Raster de {{width}}×{{height}} lido com {{bands}} banda(s)",
      "wroteCog": "Foi gravado um COG em tiles com overviews ({{compression}})",
      "notAGeoTiff": "Este arquivo não é um GeoTIFF legível. No navegador, Raster para COG lê apenas GeoTIFF; outros formatos precisam do aplicativo desktop.",
      "zoomRangeError": "Os níveis de zoom devem satisfazer 0 ≤ mín ≤ máx ≤ {{max}}.",
      "colormap": "Mapa de cores",
      "resampling": "Reamostragem",
      "colormapDefault": "Padrão (viridis)",
      "zoomNative": "nativo",
      "rasterToPmtilesDesc": "Renderiza um raster em um único arquivo PMTiles de tiles PNG em Web Mercator, pronto para servir na nuvem. Uma banda é renderizada por meio de um mapa de cores, portanto imagens multibanda não são desenhadas em cores reais. É executado inteiramente em WebAssembly, portanto não precisa de sidecar nem no aplicativo web nem no desktop.",
      "cogBrowserNote": "No navegador, rasters de 8 bits mantêm seu tipo e todo o resto (DEMs Int16, Float64, …) é gravado como Float32. O aplicativo desktop preserva o tipo original.",
      "noSidecarConversion": "{{kind}} não tem conversão via sidecar.",
      "minZoom": "Zoom mínimo",
      "maxZoom": "Zoom máximo",
      "convertFailed": "Não foi possível converter este arquivo.",
      "notAGeoTiffRasterOnly": "Este arquivo não é um GeoTIFF legível. O Raster para PMTiles lê apenas GeoTIFF, tanto no aplicativo web quanto no desktop.",
      "band": "Banda",
      "bandError": "A banda deve ser um número inteiro positivo.",
      "bandOutOfRange": "A banda {{band}} não existe; este raster tem {{bands}} banda(s).",
      "runsInBrowserVectorEngines": "A conversão é executada no seu navegador com DuckDB-WASM, ou geolibre-wasm para saída FlatGeobuf.",
      "vectorToVectorDesc": "Converte entre quaisquer formatos vetoriais suportados pela extensão spatial do DuckDB. Os formatos de entrada e saída são detectados pelas extensões dos arquivos. O aplicativo desktop grava qualquer formato (FlatGeobuf, GeoPackage, Shapefile, KML, GML, …); o navegador grava GeoJSON, CSV, GeoParquet, GeoPackage, FlatGeobuf e Shapefile.",
      "vectorToVectorInputLabel": "Arquivo vetorial de entrada",
      "vectorToVectorOutputLabel": "Arquivo vetorial de saída",
      "vectorToGeoparquetDesc": "Converte um conjunto de dados vetorial em um arquivo GeoParquet comprimido e ordenado por Hilbert, otimizado para requisições de intervalo cloud-native.",
      "vectorToGeoparquetInputLabel": "Arquivo vetorial de entrada",
      "vectorToGeoparquetOutputLabel": "Arquivo GeoParquet de saída",
      "vectorToFlatgeobufDesc": "Converte um conjunto de dados vetorial em um FlatGeobuf ordenado por Hilbert com um índice espacial compactado para acesso cloud-native rápido.",
      "vectorToFlatgeobufInputLabel": "Arquivo vetorial de entrada",
      "vectorToFlatgeobufOutputLabel": "Arquivo FlatGeobuf de saída",
      "vectorToShapefileDesc": "Converte um conjunto de dados vetorial em um Shapefile da ESRI compactado em zip (.shp/.shx/.dbf/.prj). Os nomes dos campos são truncados em 10 caracteres.",
      "vectorToShapefileInputLabel": "Arquivo vetorial de entrada",
      "vectorToShapefileOutputLabel": "Shapefile compactado de saída",
      "vectorToGeopackageDesc": "Converte um conjunto de dados vetorial em um GeoPackage (.gpkg) para compartilhar com QGIS, ArcGIS e outras ferramentas SIG.",
      "vectorToGeopackageInputLabel": "Arquivo vetorial de entrada",
      "vectorToGeopackageOutputLabel": "Arquivo GeoPackage de saída",
      "csvToGeoparquetDesc": "Constrói geometrias de pontos a partir de colunas de longitude/latitude e grava um GeoParquet comprimido e ordenado por Hilbert.",
      "csvToGeoparquetInputLabel": "Arquivo CSV de entrada",
      "csvToGeoparquetOutputLabel": "Arquivo GeoParquet de saída",
      "vectorToPmtilesDesc": "Gera ladrilhos de um conjunto de dados vetorial em um único arquivo PMTiles de ladrilhos vetoriais, pronto para servir de forma cloud-native.",
      "vectorToPmtilesInputLabel": "Arquivo vetorial de entrada",
      "vectorToPmtilesOutputLabel": "Arquivo PMTiles de saída",
      "rasterToPmtilesInputLabel": "Arquivo raster de entrada",
      "rasterToPmtilesOutputLabel": "Arquivo PMTiles de saída",
      "rasterToCogDesc": "Converte um conjunto de dados raster em um GeoTIFF Cloud Optimized válido e comprimido, com ladrilhamento interno e visões gerais.",
      "rasterToCogInputLabel": "Arquivo raster de entrada",
      "rasterToCogOutputLabel": "Arquivo COG de saída",
      "outputFileName": "Nome do arquivo de saída",
      "shapefileSidecarHint": "Para Shapefiles, selecione o .shp junto com seus arquivos .dbf, .shx e .prj.",
      "longitudeColumn": "Coluna de longitude",
      "latitudeColumn": "Coluna de latitude",
      "compression": "Compressão",
      "rowGroupSize": "Tamanho do grupo de linhas",
      "layerName": "Nome da camada",
      "noOutput": "Ainda não há saída.",
      "fallbackTitle": "Conversão"
    },
    "vectorTool": {
      "buffer": "Buffer",
      "centroids": "Centroides",
      "convexHull": "Envoltória convexa",
      "dissolve": "Dissolver",
      "boundingBox": "Caixa delimitadora",
      "simplify": "Simplificar",
      "clip": "Recortar",
      "intersection": "Interseção",
      "difference": "Diferença",
      "union": "União",
      "spatialJoin": "Junção espacial",
      "attributeJoin": "Junção de atributos",
      "selectByValue": "Selecionar por valor",
      "selectByLocation": "Selecionar por localização",
      "randomExtract": "Extração aleatória",
      "reproject": "Reprojetar",
      "explode": "Explodir",
      "aggregate": "Agregar por atributo",
      "smooth": "Suavizar",
      "grid": "Grade regular",
      "voronoi": "Voronoi / Delaunay",
      "cellSectors": "Cobertura de estações de célula",
      "dggsGenerator": "Gerador DGGS",
      "dggsBinning": "Agrupamento DGGS",
      "dggsCompact": "Compactação DGGS",
      "trajectorySpeed": "Velocidade da trajetória",
      "detectStops": "Detectar paradas",
      "spaceTimeProximity": "Proximidade espaço-temporal",
      "checkValidity": "Verificar validade",
      "fixGeometries": "Corrigir geometrias",
      "checkTopologyRules": "Verificar regras de topologia",
      "fixTopology": "Corrigir topologia"
    },
    "networkTool": {
      "isochrone": "Isócrona / área de serviço",
      "odMatrix": "Matriz de custo OD",
      "sequentialRoute": "Rota sequencial (direções)"
    },
    "statisticsTool": {
      "globalMoransI": "I de Moran global",
      "localMoransI": "I de Moran local (LISA)",
      "getisOrd": "Pontos quentes Getis-Ord Gi*",
      "averageNearestNeighbor": "Vizinho mais próximo médio",
      "kernelDensity": "Densidade de kernel (mapa de calor)",
      "emergingHotSpot": "Pontos quentes emergentes (cubo espaço-tempo)"
    },
    "rasterTool": {
      "hillshade": "Sombreamento de relevo",
      "slope": "Declividade",
      "aspect": "Orientação",
      "reproject": "Reprojetar",
      "resample": "Reamostrar",
      "clipExtent": "Recortar por extensão",
      "clipMask": "Recortar por camada de máscara",
      "polygonize": "Poligonizar",
      "contour": "Contorno",
      "interpolate": "Interpolação (IDW / Krigagem)",
      "zonal": "Estatísticas zonais",
      "rasterCalc": "Calculadora raster",
      "spectralIndex": "Índice espectral",
      "invalidSpectralIndex": "Índice espectral inválido.",
      "reclassify": "Reclassificar",
      "mosaic": "Mosaico / mesclar",
      "focal": "Estatísticas focais",
      "inputRaster": "Raster de entrada",
      "inputRasterA": "Raster de entrada A",
      "inputRaster1": "Primeiro raster",
      "inputPoints": "Pontos de entrada (GeoJSON)",
      "engine": "Mecanismo",
      "engineClient": "Cliente (navegador)",
      "engineSidecar": "Sidecar (rasterio/GDAL)",
      "clientHint": "Calcula no seu navegador e adiciona o resultado ao mapa. Para rasters grandes ou terreno em CRS geográfico, prefira o sidecar.",
      "switchToClientHint": "Ou mude o mecanismo para Cliente para executar esta ferramenta no seu navegador.",
      "chooseGeoTiff": "Escolher um GeoTIFF",
      "downloadGeoTiff": "Baixar GeoTIFF",
      "chooseInputRaster": "Escolha um raster de entrada.",
      "useAddedLayer": "Usar uma camada no mapa",
      "useAddedLayerPlaceholder": "Escolher uma camada…",
      "loadingLayer": "Carregando camada…",
      "layerLoadError": "Não foi possível carregar a camada selecionada.",
      "runningInBrowser": "Executando \"{{tool}}\" no seu navegador...",
      "loadedRaster": "Raster carregado: {{width}}×{{height}}, {{bands}} banda(s).",
      "computedInBrowser": "\"{{tool}}\" calculado no navegador.",
      "addedToMap": "\"{{name}}\" adicionado ao mapa.",
      "largeRasterWarning": "Raster grande ({{mp}} M pixels); o navegador pode não responder durante o cálculo.",
      "mapAddFailed": "Falha ao adicionar ao mapa (o resultado ainda está disponível para download): {{message}}",
      "mapAddError": "Não foi possível adicionar o resultado ao mapa.",
      "runError": "Não foi possível executar a ferramenta raster.",
      "saveError": "Não foi possível salvar o resultado.",
      "dialogTitle": "Ferramentas raster",
      "dialogDescription": "Execute operações raster comuns no sidecar Python (rasterio/GDAL), ou no seu navegador quando não houver sidecar disponível.",
      "outputFile": "Arquivo de saída",
      "noOutput": "Ainda não há saída.",
      "errorConnect": "Não foi possível conectar ao sidecar.",
      "needsDesktopSidecar": "As ferramentas raster precisam do aplicativo GeoLibre Desktop com um sidecar em execução.",
      "errorPoll": "Não foi possível consultar o trabalho.",
      "errorStartSidecar": "Não foi possível iniciar o sidecar do GeoLibre.",
      "errorStartTool": "Não foi possível iniciar a ferramenta raster."
    },
    "mapControl": {
      "navigation": "Navegação",
      "fullscreen": "Tela cheia",
      "compass": "Bússola",
      "geolocate": "Geolocalizar",
      "globe": "Globo",
      "terrain": "Terreno",
      "scale": "Escala",
      "attribution": "Atribuição",
      "logos": "Logotipos",
      "logo": "Logotipo do MapLibre",
      "maptoolkitLogo": "Logotipo do Maptoolkit",
      "maptoolkitLogoHint": "Adicione um mapa base do Maptoolkit para exibir o seu logotipo."
    },
    "position": {
      "topLeft": "Superior esquerda",
      "topRight": "Superior direita",
      "bottomLeft": "Inferior esquerda",
      "bottomRight": "Inferior direita"
    },
    "item": {
      "newEllipsis": "Novo...",
      "openFrom": "Abrir de",
      "fileEllipsis": "Arquivo...",
      "urlEllipsis": "URL...",
      "galleryEllipsis": "Galeria...",
      "openRecent": "Abrir recente",
      "projectHistoryEllipsis": "Histórico...",
      "noRecentProjects": "Nenhum projeto recente",
      "removeFromRecent": "Remover {{name}} dos projetos recentes",
      "clearRecentProjects": "Limpar projetos recentes",
      "duplicate": "Duplicar projeto",
      "saveAsEllipsis": "Salvar como...",
      "saveAsTemplateEllipsis": "Salvar como modelo...",
      "shareEllipsis": "Compartilhar...",
      "shareHostUnavailable": "Indisponível: o endereço do servidor de compartilhamento desta implantação não é válido.",
      "exportHtmlEllipsis": "Exportar como HTML...",
      "htmlFile": "HTML",
      "collaborateEllipsis": "Colaborar...",
      "printEllipsis": "Imprimir...",
      "printLayoutEllipsis": "Layout de impressão...",
      "offlineBasemapEllipsis": "Mapa base offline...",
      "undo": "Desfazer",
      "redo": "Refazer",
      "selectByExpressionEllipsis": "Selecionar por expressão...",
      "selectByLocationEllipsis": "Selecionar por localização...",
      "zoomToSelection": "Aproximar na seleção",
      "invertSelection": "Inverter seleção",
      "clearSelection": "Limpar seleção",
      "exportSelection": "Exportar feições selecionadas como camada",
      "previousView": "Visualização anterior",
      "nextView": "Próxima visualização",
      "resetOrientation": "Redefinir orientação",
      "resetPitch": "Redefinir inclinação",
      "resetBearing": "Redefinir direção",
      "resetPitchBearing": "Redefinir inclinação e direção",
      "setView": "Definir visualização…",
      "splitView": "Divisão de visualização",
      "splitViewSingle": "Mapa único",
      "splitViewTwoColumns": "Duas colunas",
      "splitViewTwoRows": "Duas linhas",
      "splitViewGrid2x2": "Grade 2 × 2",
      "splitViewGrid2x3": "Grade 2 × 3",
      "splitViewGrid3x3": "Grade 3 × 3",
      "splitViewSync": "Sincronizar visualizações",
      "viewInGoogleMaps": "Ver no Google Maps",
      "viewInGoogleEarth": "Ver no Google Earth",
      "zoomIn": "Ampliar",
      "zoomOut": "Reduzir",
      "sectionFiles": "Arquivos",
      "sectionWebServices": "Serviços web",
      "sectionCloudFormats": "Formatos em nuvem",
      "section3dLayers": "Camadas 3D",
      "sectionDatabases": "Bancos de dados",
      "georeferencing": "Georreferenciamento",
      "vectorLayer": "Camada vetorial",
      "cadLayer": "Camada CAD (DXF/DWG)",
      "gdbLayer": "File Geodatabase (GDB)",
      "rasterLayer": "Camada raster",
      "osmPbfLayer": "Camada OSM PBF",
      "stacLayer": "Camada STAC",
      "geoparquetLayer": "Camada GeoParquet",
      "flatgeobufLayer": "Camada FlatGeobuf",
      "pmtilesLayer": "Camada PMTiles",
      "basemapExtract": "Extração de mapa base offline",
      "zarrLayer": "Camada Zarr",
      "netcdfHdf": "NetCDF / HDF",
      "lidarLayer": "Camada LiDAR",
      "splattingLayer": "Gaussian Splatting",
      "threeDTilesLayer": "Camada 3D Tiles",
      "duckdbLayer": "Camada DuckDB",
      "whitebox": "Whitebox",
      "geocode": "Geocodificar endereços",
      "modelBuilder": "Lotes e modelos",
      "processingHistory": "Histórico",
      "conversion": "Conversão",
      "vector": "Vetor",
      "network": "Rede",
      "statistics": "Estatística espacial",
      "raster": "Raster",
      "hydrology": "Hidrologia",
      "lidar": "LiDAR",
      "terrain": "Terreno",
      "remoteSensing": "Sensoriamento remoto",
      "projection": "Projeção",
      "geolibre": "GeoLibre",
      "subGroupGeometry": "Geometria",
      "subGroupOverlay": "Sobreposição",
      "subGroupJoin": "Junção",
      "subGroupSelect": "Seleção",
      "subGroupDggs": "DGGS",
      "subGroupH3": "H3",
      "subGroupMovement": "Movimento e tempo",
      "subGroupDataQuality": "Qualidade dos dados",
      "subGroupTerrain": "Terreno",
      "subGroupReproject": "Reprojeção",
      "subGroupClip": "Recorte",
      "subGroupRasterToVector": "Raster para vetor",
      "subGroupVectorToRaster": "Vetor para raster",
      "subGroupAnalysis": "Análise",
      "mapControls": "Controles do mapa",
      "fieldCollection": "Coleta de campo...",
      "gpsTracking": "Rastreamento GPS...",
      "recordTour": "Gravar tour do mapa...",
      "recordVideo": "Gravar vídeo...",
      "atmosphereEffects": "Efeitos atmosféricos",
      "atmosphereEnabled": "Ativado",
      "spinGlobe": "Globo giratório",
      "graticule": "Linhas de grade",
      "weather": "Clima",
      "weatherTooltip": "Sobreponha camadas de clima quase em tempo real que você pode animar.",
      "weatherPlay": "Reproduzir animação",
      "weatherPause": "Pausar animação",
      "clouds": "Nuvens",
      "cloudsShow": "Mostrar nuvens",
      "cloudsTooltip": "Sobreponha nuvens de satélite da NASA quase em tempo real, como no Google Earth. Adiciona uma camada que você pode animar dia a dia.",
      "cloudsDate": "Data",
      "precipitation": "Precipitação",
      "precipitationShow": "Mostrar precipitação",
      "precipitationTooltip": "Radar meteorológico RainViewer quase em tempo real. Anime as últimas ~2 horas.",
      "precipitationTime": "Hora",
      "sun": "Sol",
      "sunTooltip": "Simule a posição do sol e o terminador dia/noite para qualquer data e hora.",
      "routeAnimation": "Animação de rota",
      "routeAnimationTooltip": "Anima um marcador ao longo de uma camada de linhas, com reproduzir/pausar, velocidade, um rastro e acompanhamento de câmera.",
      "flightSimulator": "Simulador de voo",
      "flightSimulatorTooltip": "Sobrevoe o terreno com o teclado, como num simulador de voo.",
      "spinGlobeBoundsTitle": "Os limites estão travados",
      "spinGlobeBoundsDesc": "O globo não pode girar enquanto os limites do mapa estiverem travados.",
      "spinGlobeBoundsHint": "Destravar os limites permite que o globo gire livremente. Você pode travá-los novamente a qualquer momento em Configurações.",
      "spinGlobeBoundsUnlock": "Destravar limites e girar",
      "directions": "Rotas",
      "directionsTooltip": "O roteamento envia seus waypoints para o servidor de demonstração público do OSRM (router.project-osrm.org).",
      "search": "Pesquisar",
      "colorbar": "Barra de cores",
      "legend": "Legenda",
      "html": "HTML",
      "measure": "Medir",
      "bookmark": "Favorito",
      "minimap": "Minimapa",
      "viewState": "Estado da visualização",
      "activatePlugin": "Ativar plugin",
      "deactivate": "Desativar",
      "activate": "Ativar",
      "position": "Posição",
      "webServices": "Serviços web",
      "dggs": "DGGS",
      "commandPalette": "Paleta de comandos",
      "openProjectFromUrl": "Abrir projeto de URL",
      "importQgisProjectEllipsis": "Importar projeto do QGIS…",
      "importArcgisProjectEllipsis": "Importar projeto do ArcGIS Pro…",
      "arcgisImportComplete": "Projeto do ArcGIS Pro importado",
      "arcgisImportWarnings_one": "O projeto foi importado, mas {{count}} camada não pôde ser carregada.",
      "arcgisImportWarnings_other": "O projeto foi importado, mas {{count}} camadas não puderam ser carregadas.",
      "arcgisUnknownLayerType": "desconhecido",
      "qgisImportComplete": "Projeto do QGIS importado",
      "qgisImportWarnings_one": "O projeto foi importado, mas {{count}} camada não pôde ser carregada.",
      "qgisImportWarnings_other": "O projeto foi importado, mas {{count}} camadas não puderam ser carregadas.",
      "qgisUnknownProvider": "desconhecido",
      "qgisImportReason": {
        "non-vector": "Somente camadas vetoriais baseadas em arquivo são compatíveis nesta primeira versão.",
        "provider": "O provedor de dados {{provider}} não é compatível.",
        "missing-source": "A camada não tem uma fonte de dados legível.",
        "format": "O formato de arquivo da camada não é compatível.",
        "remote-file": "Fontes de arquivos remotos do QGIS ainda não são compatíveis.",
        "network-path": "Caminhos de compartilhamento de rede não são carregados por motivos de segurança.",
        "browser-local-file": "O arquivo local é referenciado, mas navegadores não conseguem reabrir caminhos de dados do QGIS. Use o GeoLibre Desktop para carregá-lo.",
        "browser-local-raster": "O raster é referenciado por um caminho local. Use o GeoLibre Desktop para carregá-lo."
      },
      "openProjectFromUrlDesc": "Carregue um projeto `.geolibre.json` e adicione-o aos projetos recentes.",
      "projectUrl": "URL do projeto",
      "opening": "Abrindo...",
      "open": "Abrir",
      "somethingWentWrong": "Algo deu errado",
      "dismiss": "Dispensar",
      "saveProjectAsTitle": "Salvar projeto como",
      "saveProjectAsDesc": "Digite um nome de arquivo. O projeto será baixado para a pasta de downloads do seu navegador quando você clicar em Salvar.",
      "embedVectorTitle": "Incorporar dados vetoriais locais?",
      "embedVectorDesc": "Este projeto tem {{count}} camada(s) vetorial(is) local(is) carregada(s) do seu computador. O navegador não pode relê-las quando o projeto é reaberto, então seus dados precisam ser incorporados no arquivo do projeto para serem restaurados. A incorporação adiciona cerca de {{size}} ao arquivo.",
      "embedVectorDescDesktop": "Este projeto tem {{count}} camada(s) vetorial(is) local(is) carregada(s) do seu computador. Incorpore seus dados para tornar o projeto autocontido (adiciona cerca de {{size}}), ou salve referências de arquivo que recarregam do disco quando o projeto é reaberto. As referências mantêm o arquivo pequeno, mas quebram se um arquivo de origem for movido ou excluído posteriormente.",
      "embedVectorEmbedButton": "Incorporar dados",
      "embedVectorReferenceButton": "Salvar referências de arquivo",
      "embedVectorSkipButton": "Salvar sem dados",
      "saveProjectFileName": "Nome do arquivo",
      "saveProjectFileNamePlaceholder": "meu-projeto.geolibre.json",
      "exportHtmlAsTitle": "Exportar como HTML interativo",
      "exportHtmlAsDesc": "Digite um nome de arquivo. A página HTML será baixada para a pasta de downloads do seu navegador quando você clicar em Salvar.",
      "exportHtmlFileName": "Nome do arquivo",
      "exportHtmlFileNamePlaceholder": "meu-mapa.html",
      "vectorDataFilter": "Dados vetoriais",
      "directionsNoticeTitle": "Rotas usa um servidor de roteamento público",
      "directionsNoticeDesc": "Ativar Rotas envia os waypoints que você posicionar para o servidor de demonstração público do OSRM (router.project-osrm.org) para calcular rotas — suas coordenadas saem do seu dispositivo para essas solicitações. O servidor de demonstração tem limite de taxa e suporta apenas condução.",
      "reverseGeocode": "Geocodificação reversa",
      "reverseGeocodeTooltip": "Clique no mapa para consultar um endereço. As coordenadas clicadas são enviadas ao provedor de geocodificação configurado (Nominatim público por padrão; altere em Configurações → Geocodificação).",
      "reverseGeocodeNoticeTitle": "Geocodificação reversa usa um serviço externo",
      "reverseGeocodeNoticeDesc": "Ativar Geocodificação reversa envia as coordenadas de cada ponto que você clicar ao provedor de geocodificação configurado (o serviço público Nominatim por padrão) para resolver um endereço — suas coordenadas saem do seu dispositivo para essas solicitações. Você pode escolher um provedor diferente em Configurações → Geocodificação.",
      "networkNoticeTitle": "A análise de rede usa um servidor de roteamento externo",
      "networkNoticeDesc": "Executar uma ferramenta de análise de Rede envia as coordenadas dos seus pontos de entrada a um servidor de roteamento para calcular isócronas, matrizes de custo e rotas.",
      "networkNoticePrivacyHeading": "Privacidade de dados",
      "networkNoticePrivacy": "Suas coordenadas de entrada saem deste dispositivo e são enviadas ao servidor público Valhalla em valhalla1.openstreetmap.de. Pressione Cancelar se o seu projeto estiver sujeito a regras de privacidade ou soberania de dados.",
      "networkNoticePrivacyCustom": "Suas coordenadas de entrada saem deste dispositivo e são enviadas ao servidor de roteamento configurado ({{endpoint}}). Pressione Cancelar se o seu projeto estiver sujeito a regras de privacidade ou soberania de dados.",
      "networkNoticePerformanceHeading": "Desempenho e limites",
      "networkNoticePerformance": "O servidor público é gratuito, mas tem limite de taxa, então grandes lotes de pontos podem ser limitados ou falhar. Para uso intenso, execute seu próprio servidor Valhalla e digite sua URL no campo \"Servidor de roteamento (Valhalla)\" da ferramenta (ou defina VITE_ROUTING_ENDPOINT em Configurações → Variáveis de ambiente para torná-lo o padrão).",
      "continue": "Continuar",
      "largeOsmPbfTitle": "Arquivo OSM PBF grande",
      "largeOsmPbfDesc": "Este arquivo tem cerca de {{sizeMb}} MB. Analisá-lo converte cada feição para GeoJSON na memória, o que pode ser lento e usar bastante memória no navegador. Continuar?",
      "largeVectorDesc": "{{name}} tem cerca de {{count}} feições. Carregá-lo converte cada feição para GeoJSON na memória e pode deixar o aplicativo lento ou travado. Continuar?",
      "addOsmPbfLayerTitle": "Adicionar camada OSM PBF",
      "addOsmPbfLayerDesc": "Carregue um arquivo .osm.pbf do OpenStreetMap. Ele é analisado no seu navegador e dividido em camadas separadas de pontos, linhas e polígonos.",
      "urlLabel": "URL",
      "osmPbfUrlPlaceholder": "https://example.com/region.osm.pbf",
      "osmPbfSampleLabel": "Las Vegas",
      "osmPbfUrlHint": "URLs remotas carregam no aplicativo desktop; no navegador, o servidor deve permitir solicitações entre origens (CORS).",
      "chooseLocalFile": "Escolher arquivo local…",
      "loadFromUrl": "Carregar de URL",
      "loadingOsmPbf": "Carregando OSM PBF…",
      "loadingOsmPbfDesc": "Analisando o arquivo e convertendo feições para GeoJSON. Isso é executado em segundo plano e pode levar um momento para extratos grandes.",
      "loadingOsmPbfProgress": "Convertendo feições para GeoJSON… {{processed}} de {{total}} entidades OSM processadas.",
      "projectName": "Nome do projeto",
      "storymapEllipsis": "Story Map...",
      "arcgisImportReason": {
        "layer-type": "O tipo de camada {{layerType}} não é compatível.",
        "missing-source": "A camada não tem uma fonte de dados local legível.",
        "format": "O formato de dados da camada não é compatível.",
        "network-path": "Caminhos de compartilhamento de rede não são carregados por motivos de segurança.",
        "service": "Camadas de serviço do ArcGIS em projetos ainda não são compatíveis.",
        "browser-local-file": "O arquivo local é referenciado, mas navegadores não conseguem reabrir caminhos de dados do ArcGIS Pro. Use o GeoLibre Desktop para carregá-lo.",
        "map-extent": "A extensão de mapa salva usa um sistema de coordenadas que o GeoLibre não consegue converter, então o mapa abriu em uma visualização padrão.",
        "nesting": "O grupo está aninhado em profundidade demais, ou o projeto remete a um grupo que já o contém."
      }
    },
    "plugin": {
      "maplibre-gl-annotations": "Anotações",
      "maplibre-gl-streetview": "Visão da rua",
      "maplibre-gl-time-slider": "Controle de tempo",
      "geolibre-timelapse": "Timelapse",
      "maplibre-gl-esri-wayback": "Imagens históricas",
      "maplibre-gl-openaerialmap": "OpenAerialMap",
      "maplibre-gl-arcgis-hub": "ArcGIS Hub",
      "geolibre-stac-catalogs": "Catálogos STAC",
      "maplibre-gl-source-coop": "Source Cooperative",
      "maplibre-gl-natural-earth": "Natural Earth",
      "maplibre-gl-swipe": "Comparação de camadas",
      "geolibre-elevation-profile": "Perfil de elevação",
      "maplibre-gl-basemap-control": "Mapas base",
      "maplibre-layer-control": "Controle de camadas",
      "maplibre-gl-huggingface": "Hugging Face",
      "carto-light": "Mapa base Carto Light",
      "geolibre-flight-simulator": "Simulador de voo",
      "geolibre-route-animation": "Animação de rota",
      "geolibre-sun": "Simulação solar",
      "maplibre-atmosphere-effects": "Efeitos atmosféricos",
      "maplibre-deckgl-viz": "Camada Deck.gl",
      "maplibre-gl-clouds": "Nuvens",
      "maplibre-gl-components": "Componentes",
      "maplibre-gl-directions": "Rotas",
      "maplibre-gl-earthdata-gis": "Earthdata GIS",
      "maplibre-gl-enviroatlas": "US EPA EnviroAtlas",
      "maplibre-gl-fema-wms": "FEMA NFHL",
      "maplibre-gl-geo-editor": "GeoEditor",
      "maplibre-gl-geoagent": "GeoAgent",
      "maplibre-gl-geolens": "GeoLens",
      "maplibre-gl-graticule": "Linhas de grade",
      "maplibre-gl-mapillary": "Mapillary",
      "maplibre-gl-nasa-earthdata": "NASA Earthdata",
      "maplibre-gl-national-map": "USGS National Map",
      "maplibre-gl-overture-maps": "Overture Maps",
      "maplibre-gl-precipitation": "Precipitação",
      "maplibre-gl-usgs-lidar": "USGS LiDAR",
      "maplibre-h3-grid": "Grade H3",
      "maplibre-s2-grid": "S2",
      "maplibre-a5-grid": "A5",
      "maplibre-dggrid": "DGGRID",
      "maplibre-dggal": "DGGAL",
      "maplibre-olc": "OLC",
      "maplibre-geohash": "Geohash",
      "maplibre-tilecode": "Tilecode",
      "maplibre-reverse-geocode": "Geocodificação reversa",
      "osm-basemap": "Mapa base do OpenStreetMap"
    },
    "fileDrop": {
      "overlayTitle": "Solte arquivos vetoriais ou raster aqui para adicionar camadas",
      "overlaySubtext": "Seus dados são adicionados instantaneamente ao painel de camadas.",
      "addedLayer": "\"{{name}}\" adicionado ao painel de camadas.",
      "addedVectorLayers_one": "{{count}} camada vetorial adicionada ao painel de camadas.",
      "addedVectorLayers_other": "{{count}} camadas vetoriais adicionadas ao painel de camadas.",
      "addedRasterLayers_one": "{{count}} camada raster adicionada ao painel de camadas.",
      "addedRasterLayers_other": "{{count}} camadas raster adicionadas ao painel de camadas.",
      "addedBoth": "{{vector}} e {{raster}} adicionados ao painel de camadas.",
      "bothVectorLayers_one": "{{count}} camada vetorial",
      "bothVectorLayers_other": "{{count}} camadas vetoriais",
      "bothRasterLayers_one": "{{count}} camada raster",
      "bothRasterLayers_other": "{{count}} camadas raster"
    },
    "error": {
      "couldNotOpenProject": "Não foi possível abrir o projeto.",
      "couldNotImportQgisProject": "Não foi possível importar o projeto do QGIS.",
      "couldNotImportArcgisProject": "Não foi possível importar o projeto do ArcGIS Pro.",
      "invalidProjectUrl": "Digite uma URL de projeto HTTP ou HTTPS válida.",
      "couldNotOpenProjectUrl": "Não foi possível abrir a URL do projeto.",
      "couldNotOpenRecentProject": "Não foi possível abrir o projeto recente.",
      "couldNotLoadRecentProject": "Não foi possível carregar o projeto recente.",
      "couldNotSaveProject": "Não foi possível salvar o projeto.",
      "couldNotExportHtml": "Não foi possível exportar o projeto para HTML.",
      "osmPbfNoFeatures": "Nenhuma feição de ponto, linha ou polígono foi encontrada neste arquivo OSM PBF.",
      "couldNotLoadOsmPbf": "Não foi possível carregar o arquivo OSM PBF.",
      "osmPbfLoadFailedWithHint": "{{message}} Se este for um Mapbox Vector Tile (.pbf), ele não pode ser carregado como um extrato OSM.",
      "osmPbfTooLarge": "Este extrato OSM é grande demais para carregar e ficou sem memória ou tempo. Tente uma região menor, ou pré-filtre o arquivo primeiro (por exemplo, com osmium-tool ou QGIS) antes de carregá-lo.",
      "couldNotOpenOsmPbf": "Não foi possível abrir o arquivo OSM PBF.",
      "invalidOsmPbfUrl": "Digite uma URL http(s) válida para um arquivo .osm.pbf.",
      "couldNotDownloadOsmPbf": "Não foi possível baixar o arquivo OSM PBF.",
      "scenegraphModelUrlRequired": "Digite uma URL de modelo glTF/GLB.",
      "scenegraphInvalidLngLat": "Digite uma longitude e latitude válidas.",
      "scenegraphOutOfRange": "A longitude deve estar entre -180 e 180, e a latitude entre -90 e 90.",
      "scenegraphNoPointFeatures": "O GeoJSON não tem feições de ponto para posicionar modelos."
    },
    "scenegraph": {
      "modelUrl": "URL do modelo glTF / GLB",
      "placement": "Posicionamento",
      "placementSingle": "Local único",
      "placementData": "A partir de dados de pontos",
      "longitude": "Longitude",
      "latitude": "Latitude",
      "scale": "Escala",
      "bearing": "Direção°",
      "altitude": "Altitude m"
    },
    "sqlWorkspace": {
      "description": {
        "postgis": "Execute SQL PostGIS nas camadas carregadas. A extensão PostGIS está carregada, então as funções ST_* estão disponíveis. A primeira execução carrega um mecanismo de banco de dados de ~19 MB.",
        "duckdb": "Execute SQL DuckDB em camadas, arquivos e URLs carregados. A extensão espacial está carregada, então as funções ST_* estão disponíveis. URLs em nuvem (s3://, gs://, az://) são suportadas para dados públicos.",
        "sedona": "Execute SQL espacial do Apache Sedona nas camadas carregadas. Executa no navegador via CereusDB (uma compilação WebAssembly do SedonaDB); no desktop, usa o sidecar SedonaDB quando o extra opcional sedona está instalado. As funções ST_* estão disponíveis."
      },
      "title": "Área de trabalho SQL",
      "engine": "Mecanismo SQL",
      "resize": "Redimensionar área de trabalho SQL",
      "resizeEditor": "Redimensionar painéis de editor e resultados",
      "collapse": "Recolher área de trabalho SQL",
      "expand": "Expandir área de trabalho SQL",
      "close": "Fechar área de trabalho SQL",
      "run": "Executar",
      "runHint": "Executar (Ctrl/Cmd+Enter)",
      "clear": "Limpar",
      "completions": "Autocompletar",
      "placeholder": "SQL aqui · Ctrl/Cmd+Enter para executar · Tab ou Ctrl+Espaço para autocompletar",
      "resultsPlaceholder": "Execute uma consulta para ver os resultados aqui.",
      "queryableHint": "Camadas consultáveis: {{names}}",
      "queryableLayers": "Camadas consultáveis:",
      "queryLabel": "Consulta SQL",
      "engineOption": "Mecanismo: {{name}}",
      "sampleQueries": "Consultas de exemplo…",
      "sampleQueriesLabel": "Inserir uma consulta de exemplo",
      "history": "Histórico…",
      "historyLabel": "Reutilizar uma consulta do histórico",
      "sampleForLayer": "Consulta de exemplo para camada…",
      "sampleForLayerLabel": "Inserir uma consulta de exemplo para uma camada",
      "noLayersEngine": "Nenhuma camada vetorial está carregada como tabela ainda. Carregue uma camada vetorial para consultá-la com {{engine}}.",
      "noLayersReaders": "Nenhuma camada vetorial está carregada como tabela ainda. Você ainda pode ler arquivos e URLs com read_parquet(), read_csv_auto() ou ST_Read().",
      "layerName": "Nome da camada",
      "layerNamePlaceholder": "Nome da camada (opcional)",
      "addAsLayer": "Adicionar como camada",
      "exportCsv": "Exportar CSV",
      "exportGeoParquet": "Exportar GeoParquet",
      "addedAsLayer_one": "{{count}} feição adicionada ao mapa como \"{{name}}\".",
      "addedAsLayer_other": "{{count}} feições adicionadas ao mapa como \"{{name}}\".",
      "addAsQueryLayer": "Adicionar como camada de consulta",
      "addAsQueryLayerHint": "Adiciona o resultado como uma camada dinâmica que executa novamente este SQL ao atualizar",
      "addedAsQueryLayer_one": "Adicionada {{count}} feição ao mapa como camada de consulta \"{{name}}\". Atualize-a no painel de Camadas para executar o SQL novamente.",
      "addedAsQueryLayer_other": "Adicionadas {{count}} feições ao mapa como camada de consulta \"{{name}}\". Atualize-a no painel de Camadas para executar o SQL novamente.",
      "savedAs": "{{label}} salvo como {{name}}.",
      "noRows": "Instrução executada. Nenhuma linha retornada.",
      "showingRows": "Mostrando as primeiras {{shown}} de {{total}} linhas. Exporte para ver todas.",
      "rowsCount_one": "{{count}} linha",
      "rowsCount_other": "{{count}} linhas",
      "columnsCount_one": "{{count}} coluna",
      "columnsCount_other": "{{count}} colunas",
      "samples": {
        "countriesGeom": "Países com geometria",
        "attributesOnly": "Somente atributos (sem geometria)",
        "populationByContinent": "População por continente (agregado)",
        "mostPopulous": "Países mais populosos (geometria)",
        "countryCentroids": "Centroides de países (espacial)",
        "largestByArea": "Maiores países por área (espacial)",
        "postgisVersion": "Versão do PostGIS",
        "makePoint": "Criar um ponto (geometria)",
        "firstRows": "Primeiras linhas de uma camada",
        "featureCount": "Contagem de feições",
        "layerCentroids": "Centroides de uma camada (espacial)",
        "bufferFeatures": "Buffer de feições em 0.01 grau (espacial)",
        "boundingBox": "Caixa delimitadora de uma camada (espacial)",
        "bufferPoint": "Buffer de um ponto (espacial)",
        "areaPerFeature": "Área de cada feição (espacial)"
      }
    }
  },
  "selection": {
    "byExpressionTitle": "Selecionar por expressão",
    "byExpressionDescription": "Selecione feições cujos atributos correspondem a uma expressão booleana. As correspondências tornam-se a seleção ativa, destacadas no mapa e na tabela de atributos.",
    "byLocationTitle": "Selecionar por localização",
    "byLocationDescription": "Selecione feições pela sua relação espacial com as feições de outra camada.",
    "targetLayer": "Selecionar feições de",
    "referenceLayer": "Comparando com as feições de",
    "predicate": "Onde a feição",
    "predicateIntersects": "Intersecta",
    "predicateWithin": "Está dentro de",
    "predicateContains": "Contém",
    "predicateDisjoint": "É disjunta (sem interseção)",
    "mode": "Modificar a seleção atual",
    "modeNew": "Criando uma nova seleção",
    "modeAdd": "Adicionando à seleção atual",
    "modeRemove": "Removendo da seleção atual",
    "modeIntersect": "Selecionando dentro da seleção atual",
    "expression": "Expressão",
    "expressionPlaceholder": "[\">=\", [\"get\", \"population\"], 100000]",
    "expressionTarget": "Filtro de seleção",
    "openBuilder": "Construtor de expressões...",
    "invalidExpression": "Digite uma expressão booleana válida.",
    "select": "Selecionar feições",
    "noLayers": "Adicione uma camada vetorial com feições para fazer uma seleção.",
    "needTwoLayers": "Selecionar por localização requer duas camadas vetoriais com feições.",
    "summary": "{{selected}} de {{total}} feição(ões) selecionada(s) ({{matched}} correspondentes).",
    "evaluationErrors": "{{count}} feição(ões) não puderam ser avaliadas e não foram correspondidas.",
    "unevaluableDisjoint": "{{count}} feição(ões) foram excluídas porque sua geometria não pôde ser avaliada.",
    "tooManyPairs": "Esta comparação requer {{pairs}} testes de pares de feições (limite {{limit}}). Em vez disso, use Processamento → GeoLibre → Vetor → Selecionar por localização com o mecanismo Sidecar.",
    "exportedLayerName": "{{name}} (seleção)"
  },
  "loadEditorFeatures": {
    "menuItem": "Carregar feições no editor…",
    "title": "Carregar feições no editor",
    "collapse": "Recolher painel",
    "expand": "Expandir painel",
    "description": "Carregue as feições vetoriais visíveis na visualização atual do mapa no GeoEditor para editá-las e, em seguida, salve todas as feições ou apenas suas alterações como GeoJSON.",
    "vectorLayer": "Camada vetorial",
    "selectPlaceholder": "Selecionar uma camada…",
    "refresh": "Atualizar lista de camadas",
    "noLayers": "Nenhuma camada vetorial está na visualização atual. Adicione uma camada vetorial ou mova o mapa para uma área de mapa base com feições vetoriais e, em seguida, atualize.",
    "editSessionActive": "Termine a edição de geometria no local (painel Camadas → Concluir edição de geometria) antes de carregar ou salvar feições aqui.",
    "editorName": "Nome do editor",
    "editorNamePlaceholder": "Seu nome (opcional)",
    "loadFeatures": "Carregar feições",
    "loading": "Carregando feições…",
    "selectLayer": "Selecione uma camada primeiro.",
    "noneInView": "Nenhuma feição foi encontrada na visualização atual para esta camada.",
    "editorUnavailable": "Não foi possível ativar o GeoEditor. Tente novamente assim que o mapa terminar de carregar.",
    "noEditable": "Nenhuma feição editável foi encontrada na visualização atual para esta camada.",
    "loaded": "{{count}} feição(ões) carregada(s) de \"{{layer}}\".",
    "appended": "{{count}} feição(ões) anexada(s) de \"{{layer}}\".",
    "loadedWithDropped": "{{message}} ({{dropped}} inválida(s) ignorada(s))",
    "loadFailed": "Falha ao carregar feições no editor.",
    "confirmExisting": "O editor já contém {{count}} feição(ões). Anexar a elas, ou descartar e substituir?",
    "tooMany": "Carregar {{count}} feições pode deixar o editor lento para responder. Carregar mesmo assim?",
    "loadAnyway": "Carregar mesmo assim",
    "append": "Anexar",
    "appendHint": "Adicione as novas feições junto com as existentes.",
    "discard": "Descartar e substituir",
    "discardHint": "Remova as feições existentes e carregue as novas.",
    "noChanges": "Nenhuma alteração para salvar ainda.",
    "nothingToSave": "Nenhuma feição para salvar.",
    "saved": "{{count}} feição(ões) salva(s).",
    "savedChanges": "Alterações salvas: {{added}} adicionada(s), {{modified}} modificada(s), {{deleted}} excluída(s).",
    "saveFailed": "Falha ao salvar as feições.",
    "saveChanges": "Salvar alterações",
    "saveChangesHint": "Salve apenas as feições que você adicionou, editou ou excluiu.",
    "saveAll": "Salvar tudo"
  },
  "geocode": {
    "title": "Geocodificar endereços",
    "description": "Geocodifique um CSV de endereços em uma camada de pontos. Cada linha correspondente se torna um ponto que carrega as colunas originais mais as coordenadas resolvidas e a pontuação de correspondência.",
    "chooseFile": "Escolher arquivo CSV",
    "noFile": "Nenhum arquivo CSV selecionado.",
    "fileLoaded": "{{name}} ({{count}} linhas)",
    "provider": "Provedor de geocodificação",
    "providerHint": "As chaves de API e os endpoints são gerenciados em Configurações.",
    "apiKeyRequired": "{{provider}} precisa de uma chave de API. Adicione uma em Configurações para obter resultados.",
    "corsNote": "O Google não permite oficialmente solicitações do navegador para sua API de geocodificação; as solicitações podem ser bloqueadas, a menos que sejam atendidas por um proxy de mesma origem.",
    "addressColumn": "Coluna de endereço",
    "run": "Iniciar geocodificação",
    "cancel": "Cancelar",
    "outputPlaceholder": "O progresso aparecerá aqui.",
    "usingEndpoint": "Usando {{endpoint}}",
    "usingProvider": "Usando {{provider}} ({{endpoint}})",
    "rowCapWarning": "Somente as primeiras {{cap}} linhas serão geocodificadas para respeitar a política de uso público do Nominatim. Configure um endpoint autoexecutado para lotes maiores.",
    "skippedEmpty": "{{count}} linha(s) ignorada(s) com endereço vazio.",
    "progress": "Geocodificando linha {{current}} de {{total}}: {{address}}",
    "summary": "{{matched}} de {{total}} linha(s) geocodificada(s); {{failed}} sem correspondência.",
    "failedRows": "Linhas sem correspondência: {{rows}}",
    "noMatches": "Nenhuma linha pôde ser geocodificada.",
    "cancelledNoRows": "Cancelado antes que qualquer linha fosse geocodificada.",
    "cancelled": "Cancelado. {{matched}} linha(s) correspondente(s) adicionada(s).",
    "error": "Erro: {{message}}",
    "reverseLookingUp": "Consultando endereço...",
    "reverseNoAddress": "Nenhum endereço encontrado.",
    "reverseCopyAddress": "Copiar endereço",
    "reverseFailed": "Falha na geocodificação reversa."
  },
  "graticule": {
    "title": "Linhas de grade",
    "controlTitle": "Configurações de linhas de grade",
    "gridType": "Tipo de grade",
    "typeGeographic": "Geográfica (lat/long)",
    "typeUtm": "UTM (este/norte)",
    "spacing": "Espaçamento",
    "spacingAuto": "Automático (por zoom)",
    "spacingFixed": "Intervalo fixo",
    "interval": "Intervalo (°)",
    "intervalMeters": "Intervalo (m)",
    "lineColor": "Cor da linha",
    "lineWidth": "Espessura da linha",
    "lineOpacity": "Opacidade da linha",
    "dashedLines": "Linhas tracejadas",
    "showLabels": "Mostrar rótulos",
    "labelFormat": "Formato do rótulo",
    "formatDecimal": "Graus decimais",
    "formatDms": "Graus/Min/Seg",
    "labelEdges": "Rotular bordas",
    "edgesLeftBottom": "Esquerda + inferior",
    "edgesAll": "Todos os lados",
    "labelColor": "Cor do rótulo",
    "labelSize": "Tamanho do rótulo"
  },
  "h3Plugin": {
    "title": "Grade H3",
    "controlTitle": "Configurações da grade H3",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula H3.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "copied": "Copiado",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "baseCell": "Célula base",
    "center": "Centro",
    "pentagon": "Pentágono",
    "yes": "Sim",
    "no": "Não",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParents": "Incluir as células pai da célula selecionada",
    "showIcosahedron": "Mostrar o icosaedro"
  },
  "timelapse": {
    "title": "Timelapse",
    "provider": "Fonte de imagens",
    "legend": "Legenda",
    "yearSlider": "Ano do timelapse",
    "play": "Reproduzir",
    "pause": "Pausar",
    "speed": "Velocidade",
    "secondsPerYear": "Segundos por ano",
    "secondsPerYearSuffix": "s/ano",
    "loop": "Repetir",
    "record": "Gravar vídeo",
    "stopRecording": "Parar gravação",
    "recording": "Gravando",
    "recordingFailed": "Falha na gravação.",
    "recordingUnsupported": "A gravação do canvas não é suportada neste navegador.",
    "loadingTiles": "Carregando blocos…"
  },
  "mapillary": {
    "title": "Mapillary",
    "hint": "Clique em um ponto de cobertura no mapa para ver imagens em nível de rua.",
    "noToken": "É necessário um token de acesso do Mapillary para carregar a cobertura e as imagens. Cole um abaixo para começar.",
    "tokenPlaceholder": "MLY|…",
    "tokenSave": "Salvar token",
    "tokenHelp": "Obter um token",
    "tokenLabel": "Token de acesso do Mapillary",
    "loading": "Carregando imagens…",
    "loadError": "Não foi possível carregar esta imagem.",
    "coverageLines": "Sequências do Mapillary",
    "coveragePoints": "Imagens do Mapillary"
  },
  "openAerialMap": {
    "hint": "Pesquise imagens do OpenAerialMap pela vista do mapa, por uma caixa desenhada ou por coordenadas.",
    "search": "Pesquisar esta vista",
    "loadMore": "Carregar mais",
    "searching": "Pesquisando…",
    "loadingMore": "Carregando mais…",
    "noResults": "Nenhuma imagem encontrada nesta área.",
    "showing": "Mostrando {{shown}} de {{total}} imagens.",
    "searchError": "Não foi possível acessar o OpenAerialMap: {{message}}. Tente novamente.",
    "add": "Adicionar",
    "remove": "Remover",
    "zoom": "Zoom",
    "download": "Baixar",
    "metadata": "Metadados",
    "addTitle": "Adicionar esta imagem ao mapa",
    "removeTitle": "Remover esta imagem do mapa",
    "addUnavailableTitle": "Nenhum serviço de tiles disponível para esta imagem",
    "zoomTitle": "Aproximar a esta imagem",
    "downloadTitle": "Baixar o GeoTIFF de origem",
    "metadataTitle": "Ver os metadados desta imagem",
    "modeView": "Vista do mapa",
    "modeDraw": "Desenhar caixa",
    "modeBbox": "Coordenadas",
    "drawHint": "Clique e arraste no mapa para desenhar uma caixa de pesquisa.",
    "drawStart": "Desenhar caixa no mapa",
    "drawCancel": "Cancelar desenho",
    "drawnBox": "Caixa de pesquisa: {{box}}",
    "coordWest": "Oeste",
    "coordSouth": "Sul",
    "coordEast": "Leste",
    "coordNorth": "Norte",
    "coordSearch": "Pesquisar esta caixa",
    "bboxInvalid": "Digite quatro coordenadas válidas com oeste < leste e sul < norte.",
    "footprintsLayer": "Contornos do OpenAerialMap",
    "footprintUnavailable": "Nenhum serviço de tiles disponível para esta imagem.",
    "metadataHeading": "Metadados da imagem",
    "close": "Fechar",
    "metaTitle": "Título",
    "metaProvider": "Provedor",
    "metaPlatform": "Plataforma",
    "metaResolution": "Resolução",
    "metaAcquired": "Adquirida",
    "metaBounds": "Limites (O, S, L, N)",
    "metaSource": "GeoTIFF de origem",
    "metaRaw": "Metadados brutos"
  },
  "arcgisHub": {
    "hint": "Pesquise conjuntos de dados públicos do ArcGIS Hub. Adicione camadas compatíveis ao mapa ou baixe os dados.",
    "searchPlaceholder": "Pesquisar conjuntos de dados do ArcGIS Hub",
    "search": "Pesquisar",
    "searchCurrentView": "Pesquisar na área atual do mapa",
    "enterKeyword": "Digite uma palavra-chave para começar.",
    "loadMore": "Carregar mais",
    "searching": "Pesquisando…",
    "loadingMore": "Carregando mais conjuntos de dados…",
    "noResults": "Nenhum conjunto de dados público encontrado.",
    "searchError": "Não foi possível pesquisar no ArcGIS Hub.",
    "showing": "Mostrando {{shown}} de {{total}} conjuntos de dados.",
    "noDescription": "Nenhuma descrição fornecida.",
    "add": "Adicionar ao mapa",
    "adding": "Adicionando {{title}}…",
    "added": "{{title}} adicionado.",
    "addError": "Não foi possível adicionar este conjunto de dados.",
    "zoom": "Zoom",
    "download": "Baixar",
    "preparing": "Preparando {{title}}…",
    "downloading": "Baixando {{title}}: {{completed}} de {{total}} feições…",
    "downloadStarted": "Download iniciado para {{title}}.",
    "downloadFirstLayer": "{{title}} tem {{layerCount}} camadas; apenas a primeira foi baixada.",
    "downloadError": "Não foi possível baixar este conjunto de dados.",
    "details": "Detalhes"
  },
  "openDataCatalogs": {
    "socrataHint": "Pesquise catálogos públicos de dados abertos Socrata e adicione conjuntos de dados GeoJSON.",
    "ckanHint": "Pesquise o catálogo CKAN do Humanitarian Data Exchange e adicione os recursos GeoJSON disponíveis.",
    "searchPlaceholder": "Pesquisar {{name}}",
    "search": "Pesquisar",
    "enterKeyword": "Digite uma palavra-chave para começar.",
    "loadMore": "Carregar mais",
    "searching": "Pesquisando…",
    "noResults": "Nenhum conjunto de dados encontrado.",
    "showing": "Mostrando {{shown}} de {{total}} conjuntos de dados.",
    "noDescription": "Nenhuma descrição fornecida.",
    "add": "Adicionar ao mapa",
    "details": "Detalhes",
    "adding": "Adicionando {{title}}…",
    "added": "{{title}} adicionado.",
    "addError": "Não foi possível adicionar o conjunto de dados.",
    "searchError": "A pesquisa falhou."
  },
  "earthdataGis": {
    "hint": "Pesquise no NASA Earthdata GIS por serviços de imagens, de mapas e de feições.",
    "searchPlaceholder": "Pesquisar no Earthdata GIS…",
    "search": "Pesquisar",
    "searching": "Pesquisando…",
    "loadingMore": "Carregando mais…",
    "loadMore": "Carregar mais",
    "noResults": "Nenhum serviço corresponde a esta pesquisa.",
    "showing": "Serviços exibidos: {{shown}} de {{total}}.",
    "searchError": "Não foi possível acessar o Earthdata GIS: {{message}}. Tente novamente.",
    "limitToView": "Limitar à visualização do mapa",
    "limitToViewTitle": "Retornar apenas os serviços que intersectam a visualização atual do mapa",
    "filterAll": "Todos",
    "filterImage": "Imagens",
    "filterMap": "Mapas",
    "filterFeature": "Feições",
    "kindImage": "Serviço de imagens",
    "kindMap": "Serviço de mapas",
    "kindFeature": "Serviço de feições",
    "kindWebMap": "Mapa web",
    "filterWebMap": "Mapas web",
    "webMapAdded_one": "{{count}} camada adicionada deste mapa web.",
    "webMapAdded_other": "{{count}} camadas adicionadas deste mapa web.",
    "webMapAddedPartial": "Camadas adicionadas: {{added}} de {{total}} deste mapa web; não foi possível acessar as demais.",
    "webMapEmpty": "este mapa web não tem camadas que o GeoLibre consiga renderizar.",
    "add": "Adicionar",
    "adding": "Adicionando…",
    "remove": "Remover",
    "zoom": "Zoom",
    "details": "Detalhes",
    "portal": "Portal",
    "portalTitle": "Abrir este item no portal do Earthdata GIS",
    "cog": "COG",
    "cogTitle": "Baixar este serviço como Cloud Optimized GeoTIFF",
    "cogHeading": "Baixar como COG",
    "cogAreaView": "Visualização atual",
    "cogAreaExtent": "Extensão completa",
    "cogSize": "Tamanho da exportação: {{width}} x {{height}} px",
    "cogResolution": "Resolução no terreno: {{metres}} m/px",
    "cogNote": "O serviço é reexportado neste tamanho e recodificado como COG, portanto esta é uma visão reamostrada da área, e não o raster de origem na resolução nativa.",
    "cogDownload": "Baixar",
    "cogDownloading": "Exportando e convertendo…",
    "cogRetrying": "O serviço recusou esse tamanho; tentando novamente com {{width}} x {{height}} px…",
    "cogConverting": "Convertendo para COG…",
    "cogDone": "COG salvo em {{width}} x {{height}} px.",
    "cogFailed": "Não foi possível baixar o COG: {{message}}",
    "cogUnavailable": "O download exige o aplicativo de desktop ou uma caixa de diálogo de salvamento do navegador.",
    "cancel": "Cancelar",
    "addTitle": "Adicionar este serviço ao mapa",
    "removeTitle": "Remover este serviço do mapa",
    "zoomTitle": "Ampliar para este serviço",
    "zoomUnavailableTitle": "Este serviço não publica uma extensão",
    "detailsTitle": "Ver os metadados deste serviço",
    "addError": "Não foi possível adicionar o serviço: {{message}}",
    "addTimeout": "ele não respondeu em um minuto. A camada ainda aparecerá se a operação terminar.",
    "zoomedToData": "Zoom além da extensão completa desta camada: o serviço só é renderizado em níveis de zoom maiores.",
    "detailsHeading": "Detalhes do serviço",
    "close": "Fechar",
    "metaTitle": "Título",
    "metaType": "Tipo",
    "metaSummary": "Resumo",
    "metaDescription": "Descrição",
    "metaOwner": "Publicado por",
    "metaModified": "Última modificação",
    "metaTags": "Tags",
    "metaExtent": "Extensão (O, S, L, N)",
    "metaCredits": "Créditos",
    "metaLicense": "Restrições de uso",
    "metaService": "URL do serviço",
    "metaPortalItem": "Item do portal",
    "metaRaw": "Metadados brutos"
  },
  "sourceCoop": {
    "hint": "Pesquise dados geoespaciais abertos no Source Cooperative ou insira um id de conta/produto.",
    "searchPlaceholder": "Pesquisar dados ou conta/produto",
    "search": "Pesquisar",
    "searching": "Pesquisando…",
    "loading": "Carregando catálogo…",
    "loadError": "Não foi possível acessar o Source Cooperative: {{message}}. Tente novamente.",
    "noResults": "Nenhum produto correspondente.",
    "retry": "Tentar novamente",
    "featured": "Em destaque",
    "showing": "Mostrando {{shown}} de {{total}} produtos.",
    "browseAccount": "Navegar por todos os produtos de {{account}}",
    "back": "Voltar",
    "files": "Arquivos",
    "noFiles": "Nenhum arquivo nesta pasta.",
    "loadingFiles": "Carregando arquivos…",
    "loadMore": "Carregar mais",
    "parent": "Subir um nível",
    "add": "Adicionar",
    "adding": "Adicionando…",
    "added": "Adicionado",
    "stream": "Transmitir",
    "streaming": "Transmitindo",
    "remove": "Remover",
    "download": "Baixar",
    "copyUrl": "Copiar URL",
    "copied": "Copiado",
    "openProduct": "Abrir no source.coop",
    "addTitle": "Adicionar este arquivo ao mapa",
    "streamTitle": "Consulte este arquivo onde ele está, lendo apenas as partes em exibição. O arquivo inteiro nunca é copiado para o DuckDB — ideal para arquivos grandes.",
    "removeTitle": "Remover este arquivo do mapa",
    "downloadTitle": "Baixar este arquivo",
    "copyUrlTitle": "Copiar a URL deste arquivo",
    "openProductTitle": "Abrir a página deste produto no source.coop",
    "unsupportedTitle": "O GeoLibre não pode renderizar este formato — baixe-o em vez disso",
    "addError": "Não foi possível adicionar este arquivo: {{message}}",
    "largeFileWarning": "Este arquivo tem {{size}}. Ele é transmitido da origem, portanto apenas as partes em exibição são lidas.",
    "streamHint": "Este arquivo tem {{size}}. Adicionar o copia para a memória; Transmitir lê apenas as partes em exibição.",
    "tooLargeToOpen": "Este arquivo tem {{size}} — grande demais para o navegador abrir (limite de {{limit}}). Baixe-o ou use uma versão particionada deste conjunto de dados."
  },
  "huggingFace": {
    "browseTab": "Explorar",
    "uploadTab": "Enviar",
    "settingsTab": "Configurações",
    "hint": "Pesquise repositórios de conjuntos de dados no Hugging Face, ou informe um nome de conta ou um id owner/dataset.",
    "searchPlaceholder": "Pesquisar conjuntos de dados, conta ou owner/dataset",
    "search": "Pesquisar",
    "searching": "Pesquisando…",
    "loadError": "Não foi possível acessar o Hugging Face: {{message}}. Tente novamente.",
    "noResults": "Nenhum conjunto de dados correspondente.",
    "retry": "Tentar novamente",
    "suggestions": "Conjuntos de dados sugeridos",
    "showing_one": "{{count}} conjunto de dados.",
    "showing_other": "{{count}} conjuntos de dados.",
    "browseOwner": "Explorar todos os conjuntos de dados de {{owner}}",
    "back": "Voltar",
    "private": "Privado",
    "gated": "Acesso restrito",
    "privateHint": "Este conjunto de dados é privado ou de acesso restrito. Seus arquivos exigem uma requisição autenticada, o que uma fonte de mapa não consegue fazer, portanto não podem ser adicionados nem baixados aqui.",
    "stats": "{{likes}} curtidas · {{downloads}} downloads",
    "noFiles": "Nenhum arquivo nesta pasta.",
    "loadingFiles": "Carregando arquivos…",
    "loadMore": "Carregar mais",
    "parent": "Subir um nível",
    "add": "Adicionar",
    "adding": "Adicionando…",
    "stream": "Transmitir",
    "streaming": "Transmitindo",
    "remove": "Remover",
    "download": "Baixar",
    "copyUrl": "Copiar URL",
    "copied": "Copiado",
    "openDataset": "Abrir no Hugging Face",
    "addTitle": "Adicionar este arquivo ao mapa",
    "streamTitle": "Consulte este arquivo onde ele está, lendo apenas as partes em exibição. O arquivo inteiro nunca é copiado para o DuckDB — ideal para arquivos grandes.",
    "removeTitle": "Remover este arquivo do mapa",
    "downloadTitle": "Baixar este arquivo",
    "copyUrlTitle": "Copiar a URL deste arquivo",
    "openDatasetTitle": "Abrir a página deste conjunto de dados em huggingface.co",
    "unsupportedTitle": "O GeoLibre não pode renderizar este formato — baixe-o em vez disso",
    "addError": "Não foi possível adicionar este arquivo: {{message}}",
    "notRasterIndex": "Este arquivo JSON não indexa nenhum raster, portanto não há nada para colocar no mapa. MosaicJSON e coleções STAC são compatíveis.",
    "largeFileWarning": "Este arquivo tem {{size}}. Ele é transmitido da origem, portanto apenas as partes em exibição são lidas.",
    "streamHint": "Este arquivo tem {{size}}. Adicionar o copia para a memória; Transmitir lê apenas as partes em exibição.",
    "tooLargeToOpen": "Este arquivo tem {{size}} — grande demais para o navegador abrir (limite de {{limit}}). Baixe-o ou use uma versão particionada deste conjunto de dados.",
    "tokenLabel": "Token de acesso",
    "tokenHint": "Criar um repositório de conjunto de dados e enviar arquivos exige um token de acesso do Hugging Face com permissão de escrita. Ele é armazenado apenas neste navegador e enviado somente para huggingface.co.",
    "tokenPlaceholder": "hf_…",
    "tokenSave": "Salvar token",
    "tokenClear": "Limpar",
    "tokenHelp": "Obter um token",
    "tokenChecking": "Verificando o token…",
    "tokenError": "Não foi possível verificar este token: {{message}}",
    "signedInAs": "Conectado como {{name}}",
    "readOnlyToken": "Este token é somente leitura. Crie um token com permissão de escrita para enviar arquivos.",
    "createHeading": "Criar um repositório de conjunto de dados",
    "ownerLabel": "Proprietário",
    "datasetNameLabel": "Nome do conjunto de dados",
    "datasetNamePlaceholder": "my-geodata",
    "privateLabel": "Privado",
    "create": "Criar",
    "creating": "Criando…",
    "createdRepo": "{{repoId}} criado.",
    "createError": "Não foi possível criar este conjunto de dados: {{message}}",
    "uploadHeading": "Enviar arquivos",
    "targetLabel": "Conjunto de dados",
    "targetPlaceholder": "owner/dataset",
    "folderLabel": "Pasta (opcional)",
    "folderPlaceholder": "data/",
    "chooseFiles": "Escolher arquivos",
    "chooseLayer": "Escolher camada",
    "chooseLayerTitle": "Enviar as feições de uma camada do mapa como arquivo GeoJSON",
    "layerPickerHeading": "Enviar uma camada como GeoJSON",
    "layerFeatures_one": "{{count}} feição",
    "layerFeatures_other": "{{count}} feições",
    "layerOriginalFile": "Arquivo original",
    "layerUnavailable": "{{name}} não está mais disponível para envio.",
    "remoteRasterNote": "Rasters carregados de uma URL não são listados: seus dados não estão no navegador e eles já têm um link que você pode compartilhar. Somente arquivos abertos localmente podem ser enviados.",
    "noUploadableLayers": "Nenhuma camada do mapa contém feições que possam ser enviadas. Adicione primeiro uma camada vetorial.",
    "clearSelection": "Limpar",
    "selectedFiles_one": "{{count}} arquivo selecionado ({{size}}).",
    "selectedFiles_other": "{{count}} arquivos selecionados ({{size}}).",
    "commitMessageLabel": "Mensagem de commit (opcional)",
    "commitMessagePlaceholder": "Enviado com o GeoLibre",
    "upload": "Enviar",
    "uploadPreparing": "Preparando o envio…",
    "uploadHashing": "Calculando o hash de {{name}} ({{index}}/{{total}})…",
    "uploadSending": "Enviando {{name}} ({{index}}/{{total}})…",
    "uploadCommitting": "Fazendo o commit…",
    "uploadDone_one": "{{count}} arquivo enviado.",
    "uploadDone_other": "{{count}} arquivos enviados.",
    "uploadError": "Falha no envio: {{message}}",
    "fileTooLarge": "{{name}} é maior que o limite de envio de {{limit}}.",
    "selectionTooLarge": "Os arquivos selecionados somam {{size}}, acima do limite de {{limit}} para um único envio. Envie-os em lotes menores.",
    "openUploaded": "Abrir o conjunto de dados",
    "rgbHeading": "Imagens multibanda",
    "rgbHint": "Quais bandas serão usadas como vermelho, verde e azul quando a imagem tiver três ou mais bandas. Numeradas a partir de 1; o painel de estilos ainda pode alterar qualquer camada depois.",
    "bandR": "Vermelho",
    "bandG": "Verde",
    "bandB": "Azul",
    "colormapHeading": "Imagens de banda única",
    "colormapHint": "O mapa de cores aplicado quando uma imagem tem uma única banda.",
    "colormapLabel": "Mapa de cores",
    "engineHeading": "Mecanismo de renderização",
    "engineHint": "Qual renderizador decodifica as imagens. Diferente das configurações acima, esta não é por camada: vale para todos os rasters do mapa, inclusive os já adicionados.",
    "engineLabel": "Motor",
    "engineAuto": "Deixar sem alteração",
    "engineGpu": "GPU (deck.gl)",
    "engineWasm": "Gerador de tiles WebAssembly",
    "engineTitiler": "Servidor TiTiler",
    "resetDefaults": "Redefinir para os padrões"
  },
  "basemaps": {
    "confirmStyleReplace_one": "Mudar para \"{{name}}\" substitui todo o estilo do mapa e removerá o mapa base empilhado que você adicionou. Continuar?",
    "confirmStyleReplace_other": "Mudar para \"{{name}}\" substitui todo o estilo do mapa e removerá os {{count}} mapas base empilhados que você adicionou. Continuar?"
  },
  "annotations": {
    "toolbar": "Ferramentas de anotação",
    "layerName": "Anotações",
    "elementsPanelTitle": "Elementos",
    "tools": {
      "text": "Texto",
      "arrow": "Seta",
      "rectangle": "Destaque retangular",
      "ellipse": "Destaque elíptico",
      "freehand": "Destaque à mão livre",
      "pin": "Alfinete",
      "sticky_note": "Nota adesiva",
      "placed_image": "Imagem posicionada"
    },
    "color": "Cor da anotação",
    "width": "Espessura da linha",
    "widthOptions": {
      "thin": "Fina",
      "medium": "Média",
      "thick": "Grossa"
    },
    "deleteLast": "Excluir última anotação",
    "clearAll": "Limpar todas as anotações",
    "textPlaceholder": "Digite o rótulo, Enter para posicionar",
    "pinTitlePrompt": "Título",
    "pinDescPrompt": "Descrição",
    "stickyNotePrompt": "Conteúdo da nota",
    "imageUrlPrompt": "URL da imagem",
    "cancel": "Cancelar",
    "saveElement": "Salvar elemento",
    "atPoint": "No ponto",
    "pinnedToExtent": "Fixado à extensão"
  },
  "pythonConsole": {
    "title": "Console Python",
    "resize": "Redimensionar console Python",
    "clear": "Limpar saída",
    "collapse": "Recolher console Python",
    "expand": "Expandir console Python",
    "close": "Fechar console Python",
    "run": "Executar",
    "runHint": "Executar (Ctrl/Cmd+Enter)",
    "completions": "Autocompletar",
    "placeholder": "Python aqui · Ctrl/Cmd+Enter para executar · Tab para autocompletar · ↑/↓ para histórico",
    "intro": "Console Python pronto. Use o objeto `geolibre` para programar o mapa, por exemplo, geolibre.get_center(). Tab autocompleta, ↑/↓ recuperam comandos anteriores, e `await geolibre.load_package(\"numpy\")` adiciona pacotes.",
    "loadFailed": "Falha ao carregar o runtime Python.",
    "showEditor": "Mostrar editor",
    "hideEditor": "Ocultar editor",
    "resizeEditor": "Redimensionar editor",
    "fileNew": "Novo script",
    "fileOpen": "Abrir script…",
    "fileSave": "Salvar script (Ctrl/Cmd+S)",
    "fileSaveAs": "Salvar script como…",
    "clearEditor": "Limpar editor",
    "runScript": "Executar script ou seleção (Ctrl/Cmd+Enter)",
    "untitled": "sem-titulo.py",
    "discardChanges": "Descartar alterações não salvas no script atual?",
    "editorPlaceholder": "Escreva um script Python de várias linhas aqui. Ctrl/Cmd+Enter executa-o (ou a seleção) no console; Tab recua; Ctrl+Espaço autocompleta."
  },
  "notebook": {
    "title": "Notebook",
    "resize": "Redimensionar painel do notebook",
    "collapse": "Recolher notebook",
    "expand": "Expandir notebook",
    "close": "Fechar notebook",
    "copyServerUrl": "Copiar a URL do servidor para clientes externos (VS Code…)",
    "serverUrlCopied": "URL do servidor copiada",
    "loading": "Carregando notebook…",
    "loadFailed": "Falha ao carregar o notebook."
  },
  "dashboard": {
    "title": "Painel",
    "resize": "Redimensionar painel do dashboard",
    "collapse": "Recolher dashboard",
    "expand": "Expandir dashboard",
    "close": "Fechar dashboard",
    "columns": "Colunas",
    "addWidget": "Adicionar widget",
    "widgetCount_one": "{{count}} widget",
    "widgetCount_other": "{{count}} widgets",
    "empty": "Nenhum widget ainda. Adicione um gráfico para resumir uma camada.",
    "emptyNoLayers": "Nenhuma camada compatível encontrada. Adicione uma camada vetorial ou de consulta DuckDB ao seu projeto usando o menu Adicionar dados acima e, em seguida, volte aqui para começar a criar gráficos.",
    "noLayersHint": "Adicione primeiro uma camada vetorial ou de consulta DuckDB.",
    "layerMissing": "Camada indisponível",
    "noData": "Esta camada não tem atributos que possam ser transformados em gráfico.",
    "selectorMatches_one": "{{count}} de {{total}} feição",
    "selectorMatches_other": "{{count}} de {{total}} feições",
    "selectorClear": "Limpar",
    "moveBack": "Mover para trás",
    "moveForward": "Mover para frente",
    "editWidget": "Editar widget",
    "removeWidget": "Remover widget",
    "chartType": {
      "histogram": "Histograma",
      "scatter": "Dispersão",
      "bar": "Barras",
      "line": "Linha",
      "box": "Diagrama de caixa",
      "pie": "Pizza",
      "indicator": "Indicador",
      "selector": "Seletor",
      "list": "Lista"
    },
    "aggregate": {
      "count": "Contagem",
      "sum": "Soma",
      "mean": "Média"
    },
    "chart": {
      "emptyNumeric": "Nenhum valor numérico para plotar.",
      "emptyScatter": "Nenhuma linha tem ambos os campos definidos como número.",
      "emptyBar": "Nenhuma linha para agrupar.",
      "emptyPie": "Nenhum valor positivo para exibir no gráfico.",
      "pieCaptionCount_one": "contagem de linhas · {{count}} categoria",
      "pieCaptionCount_other": "contagem de linhas · {{count}} categorias",
      "pieCaptionSum_one": "soma · {{count}} categoria",
      "pieCaptionSum_other": "soma · {{count}} categorias"
    },
    "editor": {
      "addTitle": "Adicionar widget",
      "editTitle": "Editar widget",
      "description": "Escolha uma camada, um tipo de gráfico e os campos para plotar.",
      "noLayers": "Nenhuma camada com dados para gráfico. Adicione primeiro uma camada vetorial ou de consulta DuckDB.",
      "noFields": "Esta camada não tem campos numéricos ou categóricos para gráfico.",
      "layer": "Camada",
      "chartType": "Tipo de gráfico",
      "field": "Campo",
      "bins": "Intervalos",
      "xAxis": "Eixo X",
      "yAxis": "Eixo Y",
      "category": "Categoria",
      "aggregate": "Agregação",
      "value": "Valor",
      "prefix": "Prefixo",
      "suffix": "Sufixo",
      "multiSelect": "Permitir seleção múltipla",
      "listColumns": "Colunas",
      "sortBy": "Ordenar por",
      "sortDir": "Direção",
      "ascending": "Crescente",
      "descending": "Decrescente",
      "limit": "Limite de linhas",
      "titleLabel": "Título",
      "titlePlaceholder": "Título opcional",
      "color": "Cor",
      "colorReset": "Redefinir",
      "colorDefault": "Cores padrão do gráfico",
      "cancel": "Cancelar",
      "save": "Salvar"
    },
    "indicatorAggregation": {
      "count": "Contagem",
      "sum": "Soma",
      "mean": "Média",
      "min": "Mínimo",
      "max": "Máximo",
      "median": "Mediana"
    }
  },
  "assistant": {
    "title": "Assistente de IA",
    "resize": "Redimensionar painel do assistente",
    "clear": "Limpar conversa",
    "close": "Fechar assistente",
    "send": "Enviar",
    "sendHint": "Enviar (Ctrl/Cmd+Enter)",
    "stop": "Parar",
    "placeholder": "Pergunte sobre seus dados, ex.: \"mostrar países com população acima de 50 milhões\" · Ctrl/Cmd+Enter para enviar",
    "intro": "Converse com seus dados. Posso executar SQL espacial, adicionar ou remover camadas, reestilizá-las e mover o mapa — toda alteração pode ser desfeita. Experimente \"colorir os países por população com uma rampa vermelha graduada\".",
    "setupTitle": "Configurar o assistente de IA",
    "setupStatus": "O assistente precisa de um provedor de IA para pensar. Adicione credenciais para qualquer um dos provedores abaixo e o painel muda para o modo de conversa assim que você salvar.",
    "setupProviders": "Adicione credenciais para qualquer um dos provedores",
    "setupOpenSettings": "Abrir Configurações → Provedores de IA",
    "thinking": "Trabalhando…",
    "toolError": "falhou",
    "provider": "Provedor LLM",
    "profile": "Perfil de IA",
    "deploymentProxy": "Proxy de implantação",
    "model": "Modelo",
    "codeApprovalTitle": "Executar código do assistente?",
    "codeApprovalBody": "O assistente quer executar código {{language}} no aplicativo. Revise-o primeiro — ele pode alterar o mapa e acessar os dados do aplicativo.",
    "codeApprovalAlways": "Permitir código do assistente pelo restante desta sessão",
    "codeApprovalRun": "Executar",
    "codeApprovalDecline": "Cancelar"
  },
  "storymap": {
    "title": "Story Map",
    "description": "Crie uma história com rolagem a partir de capítulos do mapa. Cada capítulo captura uma visualização de câmera e texto.",
    "chapters": "Capítulos ({{count}})",
    "addChapter": "Adicionar capítulo",
    "empty": "Ainda não há capítulos. Navegue pelo mapa e, em seguida, adicione um capítulo para capturar a visualização atual.",
    "defaultChapterTitle": "Capítulo {{index}}",
    "untitledChapter": "Capítulo sem título",
    "present": "Apresentar",
    "exportHtml": "Exportar HTML",
    "exitPresentation": "Sair",
    "preview": "Ir para este capítulo",
    "captureView": "Definir como visualização atual",
    "composeOnMap": "Compor no mapa",
    "resizeDialog": "Redimensionar diálogo",
    "composeMode": {
      "title": "Compondo capítulo",
      "hint": "Movimente, amplie e incline o mapa e, em seguida, salve a visualização neste capítulo.",
      "save": "Salvar visualização e voltar ao Story Map",
      "cancel": "Cancelar",
      "waiting": "Aguarde o mapa terminar de se mover"
    },
    "moveUp": "Mover para cima",
    "moveDown": "Mover para baixo",
    "onEnter": "Ao entrar",
    "onExit": "Ao sair",
    "addEffect": "Adicionar efeito de camada",
    "field": {
      "title": "Título",
      "subtitle": "Subtítulo",
      "byline": "Assinatura",
      "footer": "Rodapé",
      "theme": "Tema do painel",
      "showMarkers": "Mostrar marcadores",
      "markerColor": "Cor do marcador",
      "inset": "Minimapa de recorte",
      "hideChapterNav": "Ocultar lista de capítulos",
      "startView": "Ativar visualização inicial",
      "closingSlide": "Ativar slide de encerramento",
      "chapterTitle": "Título do capítulo",
      "description": "Descrição (HTML permitido)",
      "image": "URL da imagem",
      "alignment": "Alinhamento do painel",
      "animation": "Animação do mapa",
      "hidden": "Ocultar painel",
      "rotate": "Girar câmera",
      "imagePlaceholder": "https://example.com/image.jpg"
    },
    "theme": {
      "dark": "Escuro",
      "light": "Claro"
    },
    "align": {
      "left": "Esquerda",
      "center": "Centro",
      "right": "Direita",
      "full": "Completo"
    },
    "inset": {
      "topLeft": "Superior esquerda",
      "topRight": "Superior direita",
      "bottomLeft": "Inferior esquerda",
      "bottomRight": "Inferior direita"
    },
    "slide": {
      "blank": "Tela vazia",
      "black": "Tela preta",
      "global": "Visualização global",
      "startAdjacent": "Pré-visualização do primeiro capítulo",
      "endAdjacent": "Manter no último capítulo"
    },
    "loadSample": "Carregar história de exemplo",
    "htmlFile": "HTML",
    "handout": {
      "button": "Apostila (PDF)",
      "title": "Gerador de apostila em PDF",
      "description": "Exporte as visualizações de capítulos selecionados como uma apostila em PDF de várias páginas.",
      "screens": "Telas ({{count}}/{{total}})",
      "selectAll": "Selecionar tudo",
      "selectNone": "Selecionar nenhum",
      "paperSize": "Tamanho do papel",
      "orientation": "Orientação",
      "portrait": "Retrato",
      "landscape": "Paisagem",
      "documentTitle": "Título do documento",
      "documentTitlePlaceholder": "Título mostrado no topo de cada página",
      "subtitle": "Subtítulo",
      "subtitlePlaceholder": "Subtítulo mostrado abaixo do título em cada página",
      "byline": "Assinatura",
      "bylinePlaceholder": "Autor ou crédito",
      "footerText": "Texto de rodapé",
      "footerPlaceholder": "Rodapé mostrado na parte inferior de cada página",
      "startSlide": "Slide inicial",
      "endSlide": "Slide de encerramento",
      "generate": "Gerar PDF",
      "stop": "Parar",
      "cancelled": "Exportação cancelada.",
      "progress": "Capturando visualização {{current}} de {{total}}…",
      "pdfFile": "Documento PDF",
      "noMap": "O mapa ainda não está pronto. Tente novamente em instantes.",
      "noneSelected": "Selecione pelo menos uma tela para exportar."
    },
    "opacityLabel": "Opacidade",
    "toggleNav": "Alternar lista de capítulos",
    "chapterNav": "Capítulos da história",
    "durationLabel": "Transição (ms)",
    "dragHint": "Arraste para mover (clique duas vezes para redefinir)",
    "resizeHint": "Arraste para redimensionar",
    "import": "Importar",
    "importJson": "Importar JSON…",
    "importCsv": "Importar CSV…",
    "exportData": "Exportar",
    "exportJson": "Exportar JSON",
    "exportCsv": "Exportar CSV",
    "reset": "Redefinir",
    "resetTitle": "Limpar a história e começar de novo",
    "resetConfirm": "Limpar este story map? Todos os capítulos e configurações serão removidos para que você possa começar o seu próprio."
  },
  "network": {
    "title": "Análise de rede",
    "description": "Isócronas, áreas de serviço e matrizes de custo origem-destino a partir das suas camadas de pontos.",
    "heading": "Rede",
    "run": "Executar",
    "outputPlaceholder": "A saída aparecerá aqui.",
    "endpointNotice": "As coordenadas dos pontos são enviadas ao servidor de roteamento ({{endpoint}}). O padrão é um servidor Valhalla público compartilhado (FOSSGIS), que tem limite de taxa. Para uso intenso, digite a URL do seu próprio servidor no campo \"Servidor de roteamento (Valhalla)\" acima."
  },
  "statistics": {
    "title": "Estatística espacial",
    "description": "Autocorrelação espacial, análise de pontos quentes e medidas de densidade. Todas as ferramentas são executadas no lado do cliente em suas camadas GeoJSON.",
    "heading": "Estatística espacial",
    "run": "Executar",
    "requiredFieldLegend": "Indica um campo obrigatório",
    "outputPlaceholder": "A saída aparecerá aqui."
  },
  "processing": {
    "filePicker": {
      "filePath": "Caminho do arquivo",
      "chooseFile": "Escolher arquivo",
      "chooseFilePlaceholder": "Escolher um arquivo",
      "chooseInputFile": "Escolher arquivo de entrada",
      "chooseOutputFile": "Escolher arquivo de saída"
    },
    "searchTools": "Pesquisar ferramentas",
    "refreshCatalog": "Atualizar catálogo",
    "increaseValue": "Aumentar valor",
    "decreaseValue": "Diminuir valor",
    "distance": {
      "unitLabel": "Unidade de distância",
      "units": {
        "degrees": "Graus",
        "meters": "Metros",
        "kilometers": "Quilômetros",
        "feet": "Pés",
        "miles": "Milhas"
      },
      "north": "{{latitude}}°N",
      "south": "{{latitude}}°S",
      "equator": "o equador",
      "geographicNote": "As camadas selecionadas usam um CRS geográfico (WGS84), portanto as distâncias estão em graus. Escolha uma unidade ao lado de um campo de distância para digitar metros, ou reprojete para um CRS projetado para obter resultados exatos.",
      "converted": "Enviado à ferramenta como {{degrees}}°, com a conversão calculada para {{latitude}}. Um grau varia com a latitude e a direção, então este valor é aproximado.",
      "convertedEmpty": "Os valores serão convertidos em graus, com a conversão calculada para {{latitude}}. Um grau varia com a latitude e a direção, então este valor é aproximado.",
      "notANumber": "Não é um número, então é passado à ferramenta como digitado em vez de convertido. Use um decimal simples como 12000 ou 1.5."
    },
    "history": {
      "title": "Histórico de processamento",
      "description": "Cada execução de processamento neste projeto, da mais recente primeiro. Execute uma ferramenta novamente, reabra-a com os mesmos parâmetros ou copie a execução como JSON ou Python.",
      "empty": "Nenhuma execução de processamento registrada ainda. Execute uma ferramenta no menu Processamento e ela aparecerá aqui.",
      "rerun": "Executar novamente",
      "editRerun": "Editar e executar novamente",
      "copyJson": "Copiar JSON",
      "copyPython": "Copiar Python",
      "copied": "Copiado",
      "clear": "Limpar histórico",
      "count_one": "{{count}} execução registrada",
      "count_other": "{{count}} execuções registradas",
      "toolUnavailable": "A ferramenta \"{{toolId}}\" não está mais disponível"
    },
    "modelBuilder": {
      "moveStepUp": "Mover etapa para cima",
      "moveStepDown": "Mover etapa para baixo",
      "removeStep": "Remover etapa",
      "title": "Lotes e modelos",
      "description": "Execute uma ferramenta vetorial em várias camadas, ou encadeie ferramentas em um modelo reutilizável salvo com o seu projeto.",
      "tabBatch": "Lote",
      "tabModels": "Modelos",
      "outputPlaceholder": "A saída aparecerá aqui.",
      "tool": "Ferramenta",
      "sharedParameters": "Parâmetros compartilhados",
      "noExtraParameters": "Esta ferramenta não tem parâmetros adicionais.",
      "inputLayers": "Camadas de entrada",
      "selectAll": "Selecionar tudo",
      "clearSelection": "Limpar",
      "noCompatibleLayers": "Nenhuma camada GeoJSON compatível.",
      "newModel": "Novo modelo",
      "noSavedModels": "Ainda não há modelos salvos.",
      "untitledModel": "Modelo sem título",
      "modelName": "Nome do modelo",
      "emptyPipelineHint": "Adicione uma etapa para começar a montar o fluxo. A primeira etapa lê uma camada de entrada; cada etapa seguinte recebe a saída da etapa anterior.",
      "addStep": "Adicionar etapa",
      "runModel": "Executar o modelo",
      "deleteModel": "Excluir",
      "inputPreviousStep": "Entrada: ← saída da etapa anterior",
      "unknownTool": "Ferramenta desconhecida “{{id}}”",
      "noParameters": "Sem parâmetros."
    },
    "parameterField": {
      "selectLayer": "Selecionar uma camada...",
      "selectField": "Selecionar um campo...",
      "selectLayerFirst": "Selecione uma camada primeiro"
    },
    "whitebox": {
      "run": "Executar",
      "running": "Executando…",
      "runLocal": "Executar localmente (WASM)",
      "runLocalHint": "Executar localmente em WebAssembly (sem sidecar Python)",
      "runningLocally": "Executando localmente com WebAssembly. Nenhum sidecar necessário.",
      "copyLink": "Copiar link",
      "copyLinkCopied": "Copiado!",
      "copyLinkHint": "Copiar um link compartilhável que abre esta ferramenta com as configurações atuais",
      "copyLinkFailed": "Não foi possível copiar o link para a área de transferência.",
      "catalogSnapshotError": "Não foi possível carregar o snapshot do catálogo Whitebox.",
      "localRunnerError": "Não foi possível carregar o executor de ferramentas local (WASM). Atualize e tente novamente, ou use o sidecar se estiver disponível.",
      "output": {
        "geojson": "GeoJSON (adicionar ao mapa)",
        "geoparquet": "GeoParquet (baixar, mantém o CRS)",
        "flatgeobuf": "FlatGeobuf (baixar, mantém o CRS)",
        "shapefile": "Shapefile (baixar, mantém o CRS)",
        "projectedHint": "Salvo em seus downloads no CRS de destino. O mapa exibe apenas EPSG:4326, então um resultado projetado não é adicionado como camada."
      },
      "filterBySource": "Filtrar por origem",
      "allSources": "Todas as origens",
      "geolibreTools": "Ferramentas GeoLibre",
      "whiteboxTools": "Ferramentas Whitebox",
      "toolbox": "Caixa de ferramentas Whitebox",
      "checkingRuntime": "Verificando ambiente de execução.",
      "toolsAvailable_one": "{{count}} ferramenta disponível.",
      "toolsAvailable_other": "{{count}} ferramentas disponíveis.",
      "runtimeUnavailable": "O ambiente de execução do Whitebox está indisponível.",
      "useMapExtent": "Usar extensão do mapa",
      "fromLayer": "Da camada",
      "drawBbox": "Desenhar no mapa",
      "drawingBbox": "Desenhando…",
      "drawBboxHint": "Arraste uma caixa no mapa para definir a caixa delimitadora. Pressione Esc para cancelar.",
      "mapExtentPlaceholder": "minX,minY,maxX,maxY",
      "mapExtentUnavailable": "A vista do mapa ainda não está disponível. Aguarde o mapa carregar e tente novamente.",
      "mapExtentInvalid": "A vista atual do mapa não pode ser usada como caixa delimitadora: ela cruza o meridiano de 180° ou se estende além dos limites válidos de longitude/latitude. Ajuste a vista e tente novamente.",
      "extentLabel": "Área de interesse",
      "extentNorth": "Norte",
      "extentSouth": "Sul",
      "extentWest": "Oeste",
      "extentEast": "Leste",
      "extentHint": "Use o retângulo da vista atual do mapa, ou desenhe um no mapa, em vez de digitar cada limite. As coordenadas são preenchidas como WGS84 (EPSG:4326).",
      "noToolSelected": "Nenhuma ferramenta selecionada",
      "optionDefault": "Padrão",
      "optionPath": "Caminho",
      "selectedLayer": "Camada selecionada",
      "filePath": "Caminho do arquivo",
      "auto": "Automático",
      "chooseOutputPath": "Escolher o caminho de saída",
      "chooseInputPath": "Escolher o caminho de entrada",
      "categoryGeneral": "Geral",
      "categoryAll": "Todas ({{total}})",
      "errorLoadSnapshot": "Não foi possível carregar o snapshot do catálogo do Whitebox.",
      "errorLoadLive": "Não foi possível carregar o catálogo ao vivo.",
      "errorConnect": "Não foi possível conectar ao sidecar.",
      "errorPoll": "Não foi possível consultar o trabalho.",
      "errorStartTool": "Não foi possível iniciar a ferramenta do Whitebox.",
      "errorStartSidecar": "Não foi possível iniciar o sidecar do GeoLibre.",
      "errorStopSidecar": "Não foi possível parar o sidecar do GeoLibre.",
      "noToolsFound": "Nenhuma ferramenta encontrada.",
      "noParameters": "Esta ferramenta não tem parâmetros.",
      "noOutput": "Ainda não há saída.",
      "enabled": "Ativado",
      "requiredSuffix": " | obrigatório",
      "selectField": "Selecione um campo",
      "fieldName": "Nome do campo",
      "crs": {
        "browse": "Procurar",
        "codePlaceholder": "Código EPSG",
        "searchLabel": "Pesquisar sistemas de referência de coordenadas",
        "searchPlaceholder": "Pesquisar por nome ou código EPSG",
        "geographic": "Geográfico",
        "projected": "Projetado",
        "noResults": "Nenhum sistema de coordenadas correspondente. Qualquer código EPSG ainda pode ser digitado."
      },
      "vectorUnitsNote": "As camadas vetoriais são lidas como WGS84, portanto os valores de distância, espaçamento e tolerância estão em graus, não em metros. 1° equivale a cerca de 111 km e 0,001° a cerca de 111 m."
    },
    "sidecar": {
      "unavailableTitle": "O servidor de processamento não está disponível.",
      "showHelp": "Mostrar o que isso significa e como corrigir",
      "hideHelp": "Ocultar detalhes",
      "intro": "O servidor de processamento é um auxiliar local opcional ({{sidecarUrl}}) que executa ferramentas mais pesadas baseadas em Python em segundo plano, separado do aplicativo. A maioria das ferramentas Whitebox não precisa dele: elas podem ser executadas inteiramente no seu navegador com WebAssembly.",
      "wasmTipTitle": "Executar sem o servidor",
      "wasmTip": "Ative \"Executar localmente (WASM)\" para executar as ferramentas Whitebox no seu navegador. Nenhum servidor, instalação ou configuração necessária.",
      "runLocallyButton": "Executar localmente (WASM)",
      "troubleshootingTitle": "Ainda quer usar o servidor?",
      "stepStartServerDesktop": "Clique em \"Iniciar servidor\" no painel da lista de ferramentas para iniciá-lo e, em seguida, aguarde alguns segundos para que fique online.",
      "stepStartServerBrowser": "O servidor só pode ser iniciado a partir do aplicativo desktop do GeoLibre. No navegador, mantenha \"Executar localmente (WASM)\" ativado.",
      "stepCheckPort": "Certifique-se de que um firewall, antivírus ou política de rede não esteja bloqueando a porta local {{port}}.",
      "stepRestart": "Se o servidor parou inesperadamente, reinicie o aplicativo desktop do GeoLibre e reabra este diálogo."
    },
    "vectorTools": {
      "title": "Ferramentas vetoriais",
      "description": "Execute operações comuns de geometria vetorial nas suas camadas GeoJSON.",
      "engine": "Motor",
      "engineClient": "Cliente (Turf.js)",
      "engineSidecar": "Sidecar (GeoPandas)",
      "enginePyodide": "Python (Pyodide)",
      "checkingSidecar": "Verificando a disponibilidade do sidecar...",
      "sidecarUnavailableClient": "O sidecar do GeoPandas não está disponível. Inicie o sidecar com o extra vector, ou mude para o motor cliente.",
      "sidecarUnavailablePyodide": "O sidecar do GeoPandas não está disponível. Inicie o sidecar com o extra vector, ou mude para Python (Pyodide).",
      "pyodideNote": "Executa o GeoPandas no seu navegador. A primeira execução baixa o runtime do Python (uma única vez, precisa de conexão com a internet).",
      "run": "Executar",
      "outputPlaceholder": "A saída aparecerá aqui.",
      "resolutionRange": "Resolução (0-{{max}})"
    }
  },
  "segmentation": {
    "title": "Segmentação por IA",
    "description": "Transforme imagens em feições vetoriais com SAM3 (segment-geospatial). Escolha um GeoTIFF, descreva o que segmentar e obtenha polígonos de volta como uma nova camada.",
    "startServer": "Iniciar servidor",
    "downloadDesktop": "Baixar aplicativo desktop",
    "imageLabel": "Imagem (GeoTIFF)",
    "imagePlaceholder": "Escolher um GeoTIFF…",
    "chooseImage": "Escolher imagem",
    "modeLabel": "Modo",
    "modeText": "Prompt de texto",
    "modeAutomatic": "Automático (tudo)",
    "promptLabel": "Prompt",
    "promptPlaceholder": "ex.: árvores, edifícios, água",
    "confidenceLabel": "Limite de confiança",
    "segment": "Segmentar",
    "status": {
      "checking": "Verificando o serviço de segmentação por IA…",
      "unavailableDesktop": "O serviço de segmentação por IA ainda não está em execução. Inicie o servidor GeoLibre com segment-geospatial ativado para usá-lo.",
      "unavailableWeb": "A segmentação por IA não está disponível no navegador. Use o aplicativo desktop do GeoLibre para executá-la."
    },
    "error": {
      "chooseImage": "Escolha uma imagem (GeoTIFF) para segmentar.",
      "enterPrompt": "Digite um prompt de texto, ex.: “árvores” ou “edifícios”.",
      "startServer": "Não foi possível iniciar o sidecar do GeoLibre.",
      "failed": "Falha na segmentação."
    },
    "noObjects": "Nenhum objeto encontrado.",
    "added": "{{count}} feição(ões) adicionada(s) como “{{name}}”.",
    "layerName": "Segmentação: {{prompt}}",
    "layerNameDefault": "Segmentação",
    "sidecar": {
      "title": "Não foi possível iniciar o servidor de segmentação por IA.",
      "intro": "A segmentação por IA é executada em um servidor auxiliar local ({{sidecarUrl}}) que hospeda o modelo SAM3 do segment-geospatial. Ele executa Python em segundo plano, separado do aplicativo, e não faz parte da versão para navegador.",
      "troubleshootingTitle": "Como colocar o servidor em execução",
      "stepInstall": "Certifique-se de que o servidor GeoLibre esteja instalado com o backend segment-geospatial ativado, para que o modelo de segmentação esteja disponível.",
      "stepStartServerDesktop": "Clique em \"Iniciar servidor\" acima para iniciá-lo e, em seguida, aguarde alguns segundos para que o modelo fique online."
    }
  },
  "objectDetection": {
    "title": "Detecção de objetos",
    "description": "Execute um modelo YOLO exportado para ONNX sobre um GeoTIFF, inteiramente no navegador. As caixas detectadas são georreferenciadas e cada classe é adicionada como sua própria camada.",
    "hint": "Use um modelo COCO integrado (baixado e armazenado em cache uma vez) ou traga seu próprio ONNX YOLOv5/v8/v11. A detecção é executada localmente no navegador. Os modelos integrados detectam objetos do dia a dia; para imagens aéreas, forneça seu próprio modelo treinado com vistas superiores.",
    "imageLabel": "Imagem (GeoTIFF)",
    "imagePlaceholder": "Escolha um GeoTIFF…",
    "chooseImage": "Escolher imagem",
    "modelLabel": "Modelo",
    "modelSourceBuiltin": "Integrado (download)",
    "modelSourceLocal": "Arquivo local",
    "builtinModelLabel": "Modelo integrado",
    "modelFileLabel": "Arquivo de modelo (ONNX)",
    "modelPlaceholder": "Escolha um modelo .onnx…",
    "chooseModel": "Escolher modelo",
    "downloadingModel": "Baixando modelo…",
    "classNamesLabel": "Nomes das classes (separados por vírgula, opcional)",
    "classNamesPlaceholder": "ex.: carro, árvore, edifício",
    "confidenceLabel": "Confiança",
    "iouLabel": "IoU (NMS)",
    "inputSizeLabel": "Tamanho de entrada",
    "detect": "Detectar",
    "noObjects": "Nenhum objeto detectado. Tente reduzir o limite de confiança.",
    "added": "Adicionada(s) {{count}} detecção(ões) em {{classes}} classe(s).",
    "layerName": "Detecção: {{class}}",
    "error": {
      "chooseImage": "Escolha uma imagem (GeoTIFF) para executar a detecção.",
      "photoLocation": "Esta foto não tem coordenadas GPS utilizáveis. Escolha uma foto geoetiquetada.",
      "chooseModel": "Escolha um modelo YOLO exportado para ONNX (.onnx).",
      "downloadModel": "Não foi possível baixar o modelo. Verifique sua conexão e tente novamente.",
      "failed": "A detecção falhou."
    }
  },
  "segmentEverything": {
    "title": "Segmentar tudo",
    "description": "Execute o SlimSAM automaticamente sobre um GeoTIFF, inteiramente no navegador. Cada objeto detectado torna-se um polígono georreferenciado adicionado como uma camada.",
    "hint": "Uma grade de pontos é amostrada por toda a imagem e segmentada com o SlimSAM (baixado e armazenado em cache uma vez). Sem cliques nem rótulos — grades mais densas encontram mais objetos, mas levam mais tempo.",
    "imageLabel": "Imagem (GeoTIFF)",
    "imagePlaceholder": "Escolha um GeoTIFF…",
    "chooseImage": "Escolher imagem",
    "gridLabel": "Grade",
    "qualityLabel": "Qualidade",
    "minSizeLabel": "Tamanho mín. %",
    "run": "Segmentar",
    "downloadingModel": "Baixando modelo…",
    "progress": "Segmentando… {{done}}/{{total}}",
    "noObjects": "Nenhum objeto segmentado. Tente uma grade mais densa ou um limite de qualidade mais baixo.",
    "added": "Adicionado(s) {{count}} segmento(s).",
    "layerName": "Segmentos",
    "error": {
      "chooseImage": "Escolha uma imagem (GeoTIFF) para segmentar.",
      "downloadModel": "Não foi possível baixar o modelo. Verifique sua conexão e tente novamente.",
      "failed": "A segmentação falhou."
    }
  },
  "pluginPanel": {
    "expand": "Expandir painel",
    "collapse": "Recolher painel",
    "close": "Fechar painel",
    "resize": "Redimensionar painel",
    "moveLeft": "Mover painel para a esquerda",
    "moveRight": "Mover painel para a direita",
    "mergeIntoStyleRail": "Mesclar na barra de Estilo",
    "mergeIntoLayersRail": "Mesclar na barra de Camadas",
    "detach": "Destacar como painel móvel",
    "collapsedLabel": "{{title}} (recolhido)"
  },
  "sharedRail": {
    "label": "Barra lateral",
    "layers": "Camadas",
    "style": "Estilo",
    "expand": "Expandir {{title}}",
    "collapse": "Recolher {{title}}"
  },
  "attributeTable": {
    "title": "Tabela de atributos",
    "resize": "Redimensionar tabela de atributos",
    "editValues": "Editar valores de atributos",
    "editTitleFinishGeometry": "Termine a edição de geometria para editar atributos",
    "editTitleReadOnly": "A edição não está disponível para camadas do tipo Adicionar camada vetorial",
    "editTitleUseSaveCancel": "Use Salvar ou Cancelar para terminar a edição",
    "exitEditMode": "Sair do modo de edição",
    "editTitleDuckdb": "Editar os atributos de consulta DuckDB exibidos na memória",
    "saveEdits": "Salvar edições de atributos",
    "saveTitleInvalid": "Corrija o JSON inválido antes de salvar",
    "saveTitleDuckdb": "Salvar edições de atributos DuckDB em memória",
    "addFieldTitle": "Adicionar um novo campo",
    "addField": "Adicionar campo",
    "fieldCalculatorTitle": "Calcular valores de campo a partir de uma expressão",
    "fieldCalculator": "Calculadora de campo",
    "manageFieldsTitle": "Mostrar ou ocultar campos",
    "manageFields": "Gerenciar campos",
    "columnExplorerTitle": "Explorar todos os campos rapidamente",
    "columnExplorerTitleDisabled": "O explorador de colunas requer uma camada vetorial ou de consulta DuckDB",
    "columnExplorer": "Explorador de colunas",
    "statisticsTitle": "Resumo de estatísticas de campo",
    "statisticsTitleDisabled": "As estatísticas requerem uma camada vetorial ou de consulta DuckDB",
    "statistics": "Estatísticas de campo",
    "chartsTitle": "Criar gráfico de campos numéricos",
    "chartsTitleDisabled": "Os gráficos requerem uma camada vetorial ou de consulta DuckDB",
    "charts": "Gráficos",
    "dashboardTitle": "Abrir o dashboard para criar widgets de gráfico",
    "dashboard": "Dashboard",
    "exportSelectedLayer": "Exportar camada selecionada",
    "exportTitleDisabled": "A exportação requer uma camada baseada em GeoJSON",
    "cancelEdits": "Cancelar edições de atributos",
    "searchPlaceholder": "Pesquisar atributos...",
    "searchAria": "Pesquisar atributos",
    "clearSelectedFeature": "Limpar feição selecionada",
    "statusFeatures_one": "{{count}} feição",
    "statusFeatures_other": "{{count}} feições",
    "statusShown_one": "{{count}} exibida",
    "statusShown_other": "{{count}} exibidas",
    "statusSelected_one": "{{count}} selecionada",
    "statusSelected_other": "{{count}} selecionadas",
    "featureViewAria": "Visualização de feições",
    "showAllFeatures": "Mostrar todas as feições",
    "showSelectedFeatures": "Mostrar selecionadas ({{count}})",
    "expand": "Expandir tabela de atributos",
    "collapse": "Recolher tabela de atributos",
    "close": "Fechar tabela de atributos",
    "newFieldPlaceholder": "ex.: categoria",
    "defaultValuePlaceholder": "Deixe em branco para vazio",
    "newFieldNamePlaceholder": "Nome do novo campo",
    "showFields": "Mostrar campos",
    "noFields": "Nenhum campo",
    "showAllFields": "Mostrar todos os campos",
    "buttons": {
      "edit": "Editar",
      "calculate": "Calcular",
      "fields": "Campos",
      "explore": "Explorar",
      "statistics": "Estatísticas",
      "export": "Exportar"
    },
    "chart": {
      "field": "Campo",
      "xAxis": "Eixo X",
      "yAxis": "Eixo Y",
      "category": "Categoria",
      "value": "Valor",
      "title": "Gráficos",
      "description": "Visualizar campos em “{{layer}}”.",
      "noChartableFields": "Esta camada não tem campos numéricos ou categóricos para representar.",
      "chartType": "Tipo de gráfico",
      "typeHistogram": "Histograma",
      "typeScatter": "Dispersão",
      "typeBar": "Barras",
      "typeLine": "Linhas",
      "typeBox": "Diagrama de caixa",
      "typePie": "Pizza",
      "bins": "Classes",
      "aggregate": "Agregação",
      "aggCount": "Contagem",
      "aggSum": "Soma",
      "aggAverage": "Média",
      "download": "Baixar",
      "downloadPng": "Imagem PNG",
      "downloadSvg": "Vetor SVG",
      "exportError": "Não foi possível exportar o gráfico."
    },
    "selectedLayerName": "- {{name}}",
    "noLayerSelected": "- selecione uma camada com atributos",
    "zoomToSelection": "Aproximar na seleção",
    "loadingAttributes": "Carregando atributos da camada…",
    "requiresVectorLayer": "A tabela de atributos requer uma camada vetorial ou uma camada de consulta DuckDB.",
    "invalidJson": "JSON inválido",
    "editCellAria": "Editar {{col}} da feição {{featureId}}",
    "resizeColumn": "Redimensionar a coluna {{name}}",
    "renameFieldAria": "Renomear o campo {{name}}",
    "manageFieldTitle": "Gerenciar o campo \"{{name}}\"",
    "manageFieldAria": "Gerenciar o campo {{name}}",
    "renameField": "Renomear campo",
    "hideField": "Ocultar campo",
    "excludeField": "Excluir o campo na exportação",
    "includeField": "Incluir o campo na exportação",
    "moveLeft": "Mover para a esquerda",
    "moveRight": "Mover para a direita",
    "deleteField": "Excluir campo",
    "joinedColumnTitle": "Coluna unida, derivada de uma tabela de junção. Edite a tabela ou a definição da junção em vez disso.",
    "virtualColumnTitle": "Campo virtual, calculado a partir de uma expressão. Edite a definição dele no painel de estilo da camada em vez disso.",
    "deleteFieldConfirm": "Isso remove permanentemente o campo \"{{field}}\" de todas as feições em \"{{layer}}\". O estilo ou os rótulos que fazem referência a ele serão apagados. Isso não pode ser desfeito.",
    "addFieldDescription": "Adicione um novo campo a todas as feições em \"{{layer}}\".",
    "fieldName": "Nome do campo",
    "fieldExists": "Já existe um campo chamado \"{{name}}\".",
    "fieldType": "Tipo",
    "typeText": "Texto",
    "typeNumber": "Número",
    "typeBoolean": "Booleano",
    "defaultValue": "Valor padrão",
    "noDefault": "(sem valor padrão)",
    "noFeaturesForField": "Esta camada não tem feições às quais adicionar um campo.",
    "calcDescription": "Calcule valores a partir de uma expressão JavaScript e grave-os em um campo em \"{{layer}}\".",
    "targetField": "Campo de destino",
    "updateField": "Atualizar campo",
    "createField": "Criar campo",
    "outputType": "Tipo de saída",
    "outputAuto": "Automático (manter o tipo calculado)",
    "expression": "Expressão",
    "calcExpressionPlaceholder": "ex.: pop / area, ou upper(name), ou pop > 100 ? \"big\" : \"small\"",
    "fieldsLabel": "Campos:",
    "insertField": "Inserir {{name}}",
    "functionsLabel": "Funções:",
    "insertFunction": "Inserir {{name}}()",
    "geomMeasureLabel": "Geometria:",
    "geomMetric": {
      "length": "Comprimento",
      "perimeter": "Perímetro",
      "area": "Área"
    },
    "geomInsert": "Inserir",
    "sampleRowErrored": "Erro na linha de exemplo (outras linhas ainda podem ser calculadas): {{message}}",
    "preview": "Pré-visualização:",
    "onlySelectedFeature": "Atualizar apenas a feição selecionada",
    "evaluationFailed": "Falha na avaliação.",
    "invalidExpression": "Expressão inválida.",
    "calcCouldNotApply": "Não foi possível aplicar o cálculo a esta camada.",
    "calcAppliedWithErrors": "Aplicado, mas {{errors}} de {{evaluated}} feição(ões) apresentaram erro e foram gravadas como nulas.",
    "exportFailed": "Não foi possível exportar a camada selecionada.",
    "saveTitleFormErrors": "Corrija as violações do formulário de atributos antes de salvar"
  },
  "styleManager": {
    "title": "Gerenciador de estilos",
    "description": "Salve, navegue e aplique estilos, símbolos, predefinições de rótulos e rampas de cores reutilizáveis em camadas e projetos.",
    "searchPlaceholder": "Pesquisar estilos e tags…",
    "presetsSection": "Predefinições integradas",
    "librarySection": "Minha biblioteca",
    "projectSection": "Este projeto",
    "empty": "Nenhum estilo salvo corresponde. Salve o estilo de uma camada ou importe uma biblioteca para começar.",
    "apply": "Aplicar",
    "delete": "Excluir",
    "saveCurrent": "Salvar estilo atual…",
    "nameLabel": "Nome",
    "kindLabel": "O que salvar",
    "kindStyle": "Estilo completo",
    "kindSymbol": "Apenas símbolo",
    "kindLabels": "Apenas rótulos",
    "kindRamp": "Apenas rampa de cores",
    "tagsLabel": "Tags",
    "tagsPlaceholder": "limite, mapa base (separados por vírgula)",
    "scopeLabel": "Armazenar em",
    "scopeApp": "Minha biblioteca (todos os projetos)",
    "scopeProject": "Apenas este projeto",
    "saveButton": "Salvar estilo",
    "cancel": "Cancelar",
    "import": "Importar…",
    "export": "Exportar…",
    "importFilterName": "Biblioteca de estilos / QML / SLD",
    "exportFilterName": "Biblioteca de estilos do GeoLibre",
    "applied": "Aplicado \"{{name}}\" a {{layer}}.",
    "appliedRampHint": "Aplicado \"{{name}}\". Mude a camada para estilização graduada ou categorizada para ver a rampa.",
    "saved": "Salvo \"{{name}}\" na biblioteca.",
    "deleted": "Excluído \"{{name}}\".",
    "importedCount_one": "Importado {{count}} estilo.",
    "importedCount_other": "Importados {{count}} estilos.",
    "importedEntryName": "Estilo importado",
    "importInvalid": "Esse arquivo não é uma biblioteca de estilos, QML ou SLD.",
    "importNoMatch": "Não foi possível ler nenhuma simbologia desse estilo.",
    "exportEmpty": "Não há estilos salvos para exportar.",
    "exportFailed": "Não foi possível exportar a biblioteca de estilos.",
    "exportSuccess": "Biblioteca de estilos exportada.",
    "noLayer": "Selecione uma camada vetorial para salvar ou aplicar estilos."
  },
  "style": {
    "panelLabel": "Estilo da camada",
    "panelLabelCollapsed": "Estilo da camada (recolhido)",
    "heading": "Estilo",
    "headingWithLayer": "Estilo - {{name}}",
    "resizePanel": "Redimensionar painel de estilo",
    "expand": "Expandir estilo",
    "collapse": "Recolher estilo",
    "openStyleManager": "Estilos salvos…",
    "addClass": "Adicionar classe",
    "removeClass": "Remover classe",
    "beforeIdSavedUnavailable": "Salvo (indisponível)",
    "raster": {
      "greyscale": "Escala de cinza",
      "greyscaleHint": "Alternar um mapa base em escala de cinza (leva a saturação ao mínimo)",
      "reset": "Redefinir",
      "resetHint": "Redefinir ajustes para seus valores padrão",
      "exactValueHint": "Clique duas vezes para digitar um valor exato",
      "opacity": "Opacidade",
      "brightnessMin": "Brilho mínimo",
      "brightnessMax": "Brilho máximo",
      "saturation": "Saturação",
      "contrast": "Contraste",
      "hueRotate": "Rotação de matiz",
      "footerDeck": "As alterações são aplicadas ao vivo à opacidade da camada raster.",
      "footerMaplibre": "As alterações são aplicadas ao vivo às propriedades paint raster do MapLibre.",
      "valueAria": "Valor de {{label}}",
      "editValueAria": "Editar o valor de {{label}}"
    },
    "visibility": {
      "minZoom": "Zoom mín.",
      "maxZoom": "Zoom máx.",
      "minZoomTooltip": "Nível de zoom em que esta camada aparece. Números mais altos indicam mais aproximação.",
      "maxZoomTooltip": "Nível de zoom em que esta camada desaparece. Números mais altos indicam mais aproximação."
    },
    "joins": {
      "heading": "Junções",
      "empty": "Adicione colunas de outra camada ou tabela combinando campos-chave. As colunas unidas são atualizadas quando a tabela muda e ficam salvas com o projeto.",
      "addJoin": "Adicionar junção",
      "joinLayer": "Camada de junção",
      "selectLayer": "Selecione uma camada…",
      "joinField": "Campo de junção",
      "targetField": "Campo de destino",
      "selectField": "Selecione um campo…",
      "fields": "Campos a unir",
      "fieldCount_one": "{{count}} campo",
      "fieldCount_other": "{{count}} campos",
      "prefix": "Prefixo do nome do campo",
      "prefixPlaceholder": "ex.: census_",
      "add": "Adicionar",
      "cancel": "Cancelar",
      "remove": "Remover junção",
      "enabledTitle": "Aplicar esta junção",
      "missingLayer": "Camada de junção não encontrada",
      "noCandidates": "Nenhuma outra camada tem tabela de atributos para unir",
      "statsMatched": "{{matched}} de {{total}} feições correspondidas",
      "statsUnmatchedJoin_one": "{{count}} linha da tabela sem correspondência",
      "statsUnmatchedJoin_other": "{{count}} linhas da tabela sem correspondência"
    },
    "virtualFields": {
      "heading": "Campos virtuais",
      "empty": "Adicione colunas baseadas em expressões que são recalculadas sempre que os dados mudam. Os campos virtuais ficam salvos com o projeto e aparecem em todos os lugares onde os campos aparecem: tabela de atributos, estilo, rótulos e seleção.",
      "addField": "Adicionar campo virtual",
      "name": "Nome do campo",
      "namePlaceholder": "ex.: density",
      "nameTaken": "Já existe uma coluna com este nome",
      "nameConflict": "Não aplicado: o nome entra em conflito com uma coluna existente",
      "expression": "Expressão",
      "expressionPlaceholder": "[\"/\", [\"get\", \"pop\"], [\"get\", \"area_km2\"]]",
      "expressionTarget": "Expressão do campo virtual",
      "openBuilder": "Abrir o editor",
      "invalidExpression": "Expressão inválida",
      "add": "Adicionar",
      "save": "Salvar",
      "cancel": "Cancelar",
      "edit": "Editar campo virtual",
      "remove": "Remover campo virtual",
      "enabledTitle": "Aplicar este campo virtual",
      "evaluationErrors_one": "{{count}} feição não pôde ser avaliada (célula nula)",
      "evaluationErrors_other": "{{count}} feições não puderam ser avaliadas (células nulas)"
    },
    "labels": {
      "heading": "Rótulos",
      "show": "Mostrar rótulos",
      "field": "Campo do rótulo",
      "noAttributes": "Nenhum atributo encontrado",
      "selectField": "Selecionar um campo…",
      "placement": "Posicionamento",
      "placementPoint": "Centroide / ponto",
      "placementLine": "Ao longo da linha / borda do polígono",
      "textSize": "Tamanho do texto",
      "haloWidth": "Espessura do halo",
      "textColor": "Cor do texto",
      "haloColor": "Cor do halo",
      "minZoom": "Zoom mín.",
      "maxZoom": "Zoom máx.",
      "allowOverlap": "Permitir sobreposição de rótulos",
      "anchor": "Âncora",
      "anchorCenter": "Centro",
      "anchorLeft": "Esquerda",
      "anchorRight": "Direita",
      "anchorTop": "Superior",
      "anchorBottom": "Inferior",
      "anchorTopLeft": "Superior esquerda",
      "anchorTopRight": "Superior direita",
      "anchorBottomLeft": "Inferior esquerda",
      "anchorBottomRight": "Inferior direita",
      "offsetX": "Deslocamento X (em)",
      "offsetY": "Deslocamento Y (em)",
      "rotation": "Rotação (°)",
      "maxWidth": "Largura de quebra (em)",
      "transform": "Caixa das letras",
      "transformNone": "Como digitado",
      "transformUppercase": "MAIÚSCULAS",
      "transformLowercase": "minúsculas",
      "dedupe": "Rótulos duplicados",
      "dedupeOff": "Rotular cada feição",
      "dedupeUnique": "Um rótulo por local",
      "dedupeConcatenate": "Mesclar valores em um local",
      "dedupeHint": "Recolhe pontos empilhados na mesma coordenada. Usa o campo de rótulo em camadas de pontos locais.",
      "expression": "Expressão (opcional)",
      "expressionHint": "Uma expressão MapLibre (JSON). Substitui o campo quando definida.",
      "expressionInvalid": "Não é uma expressão MapLibre válida (deve ser um array JSON). Este valor é ignorado.",
      "dataDefined": {
        "heading": "Substituições definidas por dados",
        "size": "Tamanho",
        "color": "Cor",
        "opacity": "Opacidade",
        "visibility": "Visibilidade",
        "priority": "Prioridade",
        "sizeTarget": "Expressão de tamanho do rótulo",
        "colorTarget": "Expressão de cor do rótulo",
        "opacityTarget": "Expressão de opacidade do rótulo",
        "visibilityTarget": "Expressão de visibilidade do rótulo",
        "priorityTarget": "Expressão de prioridade do rótulo",
        "notSet": "Não definido",
        "clear": "Limpar expressão",
        "hint": "Expressões MapLibre por feição. Tamanho, opacidade e prioridade produzem números (rótulos com valores de prioridade mais baixos são posicionados primeiro), cor uma cor e visibilidade verdadeiro/falso. Ignoradas enquanto o agrupamento de rótulos duplicados está ativo. Uma expressão de opacidade substitui a opacidade da camada para os rótulos."
      }
    },
    "elevation3d": {
      "mode": "3D (valores Z)",
      "fillColor": "Cor de preenchimento",
      "outlineColor": "Cor do contorno",
      "strokeWidth": "Espessura do traço",
      "strokeWidthMeters": "Espessura do traço (metros)",
      "fillOpacity": "Opacidade do preenchimento",
      "circleRadius": "Raio do círculo",
      "verticalScale": "Exagero vertical",
      "verticalScaleTooltip": "Multiplica o valor Z de cada coordenada. 1 renderiza elevações reais; valores maiores enfatizam o relevo.",
      "offset": "Deslocamento de altitude (m)",
      "offsetTooltip": "Altura constante em metros adicionada a cada feição, por exemplo, para elevar uma trilha acima de edifícios 3D ou terreno.",
      "footer": "Renderizado em 3D nos valores Z das coordenadas via deck.gl. As alterações são aplicadas ao vivo. Identificar e destacar feições não estão disponíveis neste modo."
    },
    "diagrams": {
      "heading": "Diagramas",
      "chartType": "Tipo de gráfico",
      "typeNone": "Nenhum",
      "typePie": "Gráfico de pizza",
      "typeDonut": "Gráfico de rosca",
      "typeBar": "Gráfico de barras",
      "typeStackedBar": "Barras empilhadas",
      "fields": "Atributos",
      "addField": "Adicionar atributo",
      "removeField": "Remover atributo",
      "noFields": "Adicione atributos numéricos para representar em cada feição.",
      "fieldAttribute": "Atributo do diagrama {{index}}",
      "sizeMode": "Tamanho",
      "sizeFixed": "Tamanho fixo",
      "sizeSum": "Escalado pela soma dos atributos",
      "sizeAttribute": "Escalado por atributo",
      "sizeField": "Atributo de tamanho",
      "size": "Tamanho (px)",
      "minZoom": "Zoom mínimo",
      "declutter": "Ocultar diagramas sobrepostos",
      "truncated": "Os diagramas são desenhados apenas para {{count}} feições; as demais não são representadas.",
      "atlasFull": "{{count}} diagramas não cabem neste tamanho e estão ocultos. Reduza o tamanho do diagrama."
    },
    "symbology": {
      "colormap": "Mapa de cores",
      "modeSingle": "Simbologia única",
      "modeGraduated": "Graduada",
      "modeCategorized": "Categorizada",
      "modeRuleBased": "Baseada em regras",
      "modeExpression": "Expressão avançada",
      "rules": "Regras",
      "addRule": "Adicionar regra",
      "removeRule": "Remover regra",
      "noRulesPrefix": "Nenhuma regra ainda. Adicione uma regra e dê a ela uma expressão de filtro MapLibre (ex.: ",
      "noRulesSuffix": "). A primeira regra correspondente vence; a regra Senão colore todo o resto.",
      "ruleColor": "Cor da regra {{index}}",
      "ruleColorPick": "Escolher a cor da regra {{index}} na tela",
      "ruleLabel": "Rótulo da regra {{index}}",
      "ruleFilter": "Filtro da regra {{index}}",
      "ruleEnabled": "Ativar a regra {{index}}",
      "ruleAddChild": "Adicionar sub-regra",
      "ruleOptions": "Símbolo e visibilidade",
      "ruleMinZoom": "Zoom mín.",
      "ruleMaxZoom": "Zoom máx.",
      "ruleZoomInvalid": "O zoom mínimo deve ser menor que o máximo - esta regra nunca se aplica enquanto o intervalo estiver vazio.",
      "ruleStrokeWidth": "Largura do traço",
      "ruleFillOpacity": "Opacidade do preenchimento",
      "ruleCircleSize": "Raio do círculo",
      "ruleOutlineColor": "Substituir a cor do contorno",
      "ruleOutlineColorPick": "Escolher a cor do contorno da regra {{index}} na tela",
      "ruleInherit": "Herdado",
      "ruleGroupNote": "Esta regra tem sub-regras: ela restringe o que as sub-regras correspondem e não desenha nada por si mesma.",
      "labelPlaceholder": "Rótulo (opcional)",
      "filterInvalid": "Filtro inválido — deve ser uma expressão de array JSON. Esta regra é ignorada até ser corrigida.",
      "elseRuleColor": "Cor da regra Senão",
      "elseRuleColorPick": "Escolher a cor da regra Senão na tela",
      "elseRuleEnabled": "Ativar a regra «senão» (quando desativada, os elementos que não correspondem a nenhuma regra ficam ocultos)",
      "elseAllOtherFeatures": "Senão (todas as outras feições)",
      "applyHint": "Clique em Aplicar para ativar a renderização baseada em regras.",
      "rulesApplyLive": "As alterações às regras são aplicadas imediatamente ao mapa — não é necessário um passo de aplicação separado.",
      "proportionalSize": "Tamanho proporcional",
      "sizeByValue": "Tamanho por valor",
      "sizeField": "Campo de tamanho",
      "chooseField": "Escolher um campo…",
      "minValue": "Valor mín.",
      "maxValue": "Valor máx.",
      "minSize": "Tamanho mín. (px)",
      "maxSize": "Tamanho máx. (px)",
      "sizeLegend": "Legenda de tamanho",
      "fillPattern": "Padrão de preenchimento",
      "patternColor": "Cor do padrão",
      "patternSvg": "SVG do padrão",
      "svgPlaceholder": "<svg xmlns='http://www.w3.org/2000/svg' ...>…</svg> ou uma URL data/https",
      "marker": "Marcador",
      "useMarkerIcon": "Usar ícone de marcador",
      "markerShape": "Forma do marcador",
      "markerColor": "Cor do marcador",
      "markerSize": "Tamanho do marcador (px)",
      "markerSvg": "SVG do marcador",
      "markerShapes": {
        "circle": "Círculo",
        "square": "Quadrado",
        "triangle": "Triângulo",
        "diamond": "Losango",
        "star": "Estrela",
        "cross": "Cruz",
        "pin": "Alfinete",
        "custom": "SVG personalizado"
      },
      "fillPatterns": {
        "none": "Nenhum (preenchimento sólido)",
        "hatch": "Hachura",
        "crossHatch": "Hachura cruzada",
        "horizontal": "Linhas horizontais",
        "vertical": "Linhas verticais",
        "dots": "Pontos",
        "svg": "SVG personalizado"
      },
      "transparent": "Transparente",
      "transparentSwatch": "Sem cor (transparente). Clique para escolher uma cor.",
      "styleType": "Tipo de estilo",
      "attribute": "Atributo",
      "classes": "Classes",
      "allClasses": "Todas ({{total}})",
      "scheme": "Esquema",
      "stops": "Limites",
      "categories": "Categorias",
      "classColor": "Cor da classe {{index}}",
      "classColorPick": "Escolher a cor da classe {{index}} da tela",
      "classValue": "Valor da classe {{index}}",
      "colorExpression": "Expressão de cor",
      "applyStyleType": "Aplicar tipo de estilo",
      "pointRenderer": "Renderizador de pontos",
      "pointRendererSingle": "Símbolo único",
      "pointRendererHeatmap": "Mapa de calor",
      "pointRendererClustered": "Agrupado",
      "heatmapRadius": "Raio do mapa de calor",
      "heatmapIntensity": "Intensidade do mapa de calor",
      "clusterRadius": "Raio do agrupamento (px)",
      "clusterMaxZoom": "Zoom máximo do agrupamento",
      "strokeWidthUnit": "Unidade da espessura do traço",
      "strokeWidthUnitPixels": "Pixels (constante na tela)",
      "strokeWidthUnitMeters": "Metros (dimensiona com o mapa)",
      "textHaloColor": "Cor do halo do texto",
      "textHaloWidth": "Espessura do halo do texto",
      "schemeEqualInterval": "Intervalo igual",
      "schemeQuantile": "Quantil",
      "schemeNaturalBreaks": "Quebras naturais",
      "schemeTopValues": "Mais frequentes",
      "schemeAlphabetical": "Alfabético",
      "schemeFirstValues": "Primeiros valores",
      "errorChooseAttribute": "Escolha um atributo para este modo de estilo.",
      "errorAttributesUnavailable": "Não foi possível carregar os valores de atributo desta camada.",
      "errorProportionalSizeField": "O campo de tamanho deve ser numérico e ter mais de um valor distinto.",
      "errorGraduatedStops": "O estilo graduado requer pelo menos dois limites numéricos.",
      "errorCategorizedStops": "O estilo categorizado requer pelo menos uma categoria.",
      "invertedFill": "Preenchimento invertido",
      "invertedFillHint": "Preencher fora das feições"
    },
    "suggestions": {
      "title": "Sugestões de estilo",
      "dismiss": "Dispensar sugestões",
      "categorize": "Categorizar por {{field}}",
      "graduate": "Graduar por {{field}}",
      "heatmap": "Mapa de calor"
    },
    "selectLayerHint": "Selecione uma camada para editar seu estilo.",
    "layerOrderDefault": "Ordem das camadas (padrão)",
    "increaseValue": "Aumentar {{label}}",
    "decreaseValue": "Diminuir {{label}}",
    "visualization": "Visualização",
    "mode2d": "2D",
    "mode3dExtrusion": "Extrusão 3D",
    "noControls": "Os controles de estilo ainda não estão disponíveis para este tipo de camada.",
    "selectedLayerType": "Tipo de camada selecionado: {{type}}",
    "footerDeck": "As alterações são aplicadas ao vivo ao estilo da camada deck.gl do DuckDB.",
    "footerMaplibre": "As alterações são aplicadas ao vivo às propriedades paint do MapLibre.",
    "pluginPaintedFooter": "Esta camada é desenhada pelo seu plugin, que oferece os próprios controles de estilo.",
    "extrusion": {
      "color": "Cor da extrusão",
      "opacity": "Opacidade da extrusão",
      "advanced": "Expressão de altura avançada",
      "heightExpression": "Expressão de altura",
      "heightProperty": "Propriedade de altura",
      "heightScale": "Escala de altura",
      "base": "Altura da base",
      "apply": "Aplicar extrusão 3D",
      "footer": "As configurações de extrusão 3D são aplicadas ao salvar."
    },
    "expressionLabels": {
      "style": "Expressão de estilo",
      "color": "Expressão de cor",
      "height": "Expressão de altura"
    },
    "expressionErrors": {
      "notArray": "{{label}} deve ser uma expressão de array JSON.",
      "notOperator": "{{label}} deve começar com um operador, ex.: [\"==\", [\"get\", \"field\"], value].",
      "notJson": "{{label}} não é um JSON válido: {{message}}"
    },
    "expressionBuilder": {
      "title": "Construtor de expressões",
      "openBuilder": "Abrir o construtor de expressões",
      "openBuilderForRule": "Abrir o construtor de expressões para a regra {{index}}",
      "expressionLabel": "Expressão",
      "clear": "Limpar expressão",
      "valid": "Expressão válida.",
      "apply": "Aplicar",
      "preview": "Pré-visualização",
      "previewEmpty": "Digite uma expressão para ver uma pré-visualização ao vivo.",
      "previewNoFeatures": "Nenhuma feição para pré-visualizar.",
      "sampleFeature": "Feição {{index}} de {{count}}",
      "previousFeature": "Feição anterior",
      "nextFeature": "Próxima feição",
      "filterMatches": "Corresponde a esta feição",
      "filterNoMatch": "Não corresponde a esta feição",
      "fields": "Campos",
      "noFields": "Esta camada não tem campos de atributo.",
      "insertField": "Inserir campo {{name}}",
      "functionsHeading": "Funções",
      "functionSearch": "Pesquisar funções",
      "noFunctionMatches": "Nenhuma função corresponde à pesquisa.",
      "variables": "Variáveis",
      "variablesHint": "As variáveis são substituídas pelos seus valores atuais quando a expressão é aplicada.",
      "categories": {
        "data": "Dados e consulta",
        "decision": "Condicionais e comparação",
        "math": "Matemática",
        "string": "Strings",
        "conversion": "Conversão de tipo",
        "camera": "Zoom e cor"
      },
      "functions": {
        "get": "Retorna o valor do atributo de feição indicado.",
        "has": "Verdadeiro quando a feição tem o atributo indicado.",
        "id": "Retorna o id da feição.",
        "properties": "Retorna o objeto completo de atributos da feição.",
        "geometryType": "Retorna o tipo de geometria da feição (Point, LineString, Polygon, ...).",
        "at": "Retorna o elemento do array no índice indicado.",
        "in": "Verdadeiro quando o primeiro valor está contido no segundo (string ou array).",
        "indexOf": "Retorna a posição do primeiro valor no segundo, ou -1.",
        "length": "Retorna o comprimento de uma string ou array.",
        "literal": "Insere um array ou objeto literal na expressão.",
        "typeofOp": "Retorna o nome do tipo do valor.",
        "caseOp": "Retorna a primeira saída cuja condição é verdadeira; caso contrário, o valor padrão.",
        "match": "Compara uma entrada com os valores listados e retorna a saída correspondente.",
        "coalesce": "Retorna o primeiro valor não nulo.",
        "eq": "Verdadeiro quando os dois valores são iguais.",
        "neq": "Verdadeiro quando os valores são diferentes.",
        "gt": "Verdadeiro quando o primeiro valor é maior que o segundo.",
        "gte": "Verdadeiro quando o primeiro valor é maior ou igual ao segundo.",
        "lt": "Verdadeiro quando o primeiro valor é menor que o segundo.",
        "lte": "Verdadeiro quando o primeiro valor é menor ou igual ao segundo.",
        "all": "Verdadeiro quando todas as condições são verdadeiras.",
        "any": "Verdadeiro quando pelo menos uma condição é verdadeira.",
        "not": "Nega um booleano.",
        "add": "Soma números.",
        "subtract": "Subtrai o segundo número do primeiro.",
        "multiply": "Multiplica números.",
        "divide": "Divide o primeiro número pelo segundo.",
        "modulo": "Retorna o resto de uma divisão.",
        "power": "Eleva o primeiro número à potência do segundo.",
        "abs": "Retorna o valor absoluto.",
        "ceil": "Arredonda para cima até o inteiro mais próximo.",
        "floor": "Arredonda para baixo até o inteiro mais próximo.",
        "round": "Arredonda para o inteiro mais próximo.",
        "sqrt": "Retorna a raiz quadrada.",
        "ln": "Retorna o logaritmo natural.",
        "log10": "Retorna o logaritmo de base 10.",
        "min": "Retorna o menor dos valores.",
        "max": "Retorna o maior dos valores.",
        "concat": "Junta valores em uma única string.",
        "upcase": "Converte uma string para maiúsculas.",
        "downcase": "Converte uma string para minúsculas.",
        "slice": "Retorna uma parte de uma string ou array.",
        "toNumber": "Converte um valor em número.",
        "toString": "Converte um valor em string.",
        "toBoolean": "Converte um valor em verdadeiro ou falso.",
        "toColor": "Converte um valor em cor.",
        "zoom": "O nível de zoom atual do mapa (avaliado ao vivo pelo mapa).",
        "interpolate": "Mescla suavemente entre as saídas à medida que a entrada muda.",
        "step": "Retorna saídas em etapas nos limites de entrada indicados.",
        "rgb": "Cria uma cor a partir de vermelho, verde e azul (0-255).",
        "rgba": "Cria uma cor a partir de vermelho, verde, azul e alfa."
      }
    },
    "decorations": {
      "heading": "Decoração de linha",
      "typeNone": "Nenhuma",
      "typeArrow": "Setas",
      "typeTriangle": "Triângulos",
      "typeCircle": "Círculos",
      "typeSquare": "Quadrados",
      "color": "Cor da decoração",
      "size": "Tamanho do símbolo (px)",
      "spacing": "Espaçamento (px)"
    },
    "generator": {
      "heading": "Gerador de geometria",
      "type": "Geometria derivada",
      "typeNone": "Nenhuma",
      "typeCentroid": "Centroides",
      "typeBoundingBox": "Caixas delimitadoras",
      "typeConvexHull": "Envoltórias convexas",
      "typeBuffer": "Buffers",
      "bufferDistance": "Distância do buffer (m)",
      "fillColor": "Cor de preenchimento",
      "strokeColor": "Cor do contorno",
      "strokeWidth": "Largura do contorno (px)",
      "opacity": "Opacidade do preenchimento",
      "circleRadius": "Raio do ponto (px)"
    },
    "attributeForm": {
      "heading": "Formulário de atributos",
      "empty": "Nenhum campo configurado. Atribua um widget de edição, uma restrição ou uma regra de visibilidade a um campo.",
      "configureField": "Configurar campo",
      "field": "Campo",
      "selectField": "Selecionar campo…",
      "widgetLabel": "Widget de edição",
      "widget": {
        "text": "Texto",
        "number": "Número",
        "range": "Intervalo",
        "checkbox": "Caixa de seleção",
        "date": "Data",
        "valueMap": "Mapa de valores"
      },
      "alias": "Alias",
      "required": "Obrigatório",
      "requiredTag": "obrigatório",
      "constraintTag": "restrição",
      "visibilityTag": "visibilidade",
      "valueMap": "Entradas do mapa de valores",
      "valueMapPlaceholder": "residential=Residential\ncommercial=Commercial",
      "valueMapHint": "Uma entrada por linha: valor ou valor=Rótulo.",
      "min": "Mín",
      "max": "Máx",
      "step": "Passo",
      "constraintExpression": "Expressão de restrição",
      "constraintPlaceholder": "[\">\", [\"get\", \"population\"], 0]",
      "constraintDescription": "Descrição da restrição",
      "constraintDescriptionPlaceholder": "Exibida quando a restrição falha",
      "visibilityExpression": "Expressão de visibilidade",
      "visibilityPlaceholder": "[\"==\", [\"get\", \"type\"], \"school\"]",
      "invalidExpression": "Expressão inválida",
      "openBuilder": "Abrir o construtor de expressões",
      "edit": "Editar configuração do campo",
      "remove": "Remover configuração do campo",
      "cancel": "Cancelar",
      "save": "Salvar",
      "noFields": "A camada não tem campos de atributos para configurar.",
      "minMaxInvalid": "O mínimo deve ser menor ou igual ao máximo."
    }
  },
  "layers": {
    "panelCollapsedLabel": "Camadas (recolhido)",
    "expand": "Expandir camadas",
    "collapse": "Recolher camadas",
    "resizePanel": "Redimensionar painel de camadas",
    "dragToReorder": "Arraste para reordenar",
    "saveGeometryEdits": "Salvar edições de geometria",
    "discardGeometryEdits": "Descartar edições de geometria",
    "moveUp": "Mover para cima",
    "moveDown": "Mover para baixo",
    "zoomToLayer": "Ampliar para a camada",
    "layerActions": "Ações da camada",
    "metadata": "Metadados",
    "removeLayer": "Remover camada",
    "identifyFeatures": "Identificar feições",
    "identifyDeactivate": "Desativar identificação",
    "identifyInspectPixels": "Inspecionar valores de pixel",
    "identifyStopInspectPixels": "Parar de inspecionar valores de pixel",
    "identifyUnavailable": "A identificação está disponível apenas para camadas vetoriais, WMS e COG",
    "exportGeoTiff": "GeoTIFF (COG)",
    "extractSubset": "Extrair subconjunto…",
    "stylesMenu": "Estilos",
    "exportMapboxStyle": "Exportar como estilo Mapbox GL",
    "exportSldStyle": "Exportar como OGC SLD",
    "exportQmlStyle": "Exportar como QGIS QML",
    "exportStyleSuccess": "Estilo exportado.",
    "exportStyleDataNotReady": "Os dados da camada ainda não estão prontos. Tente novamente em instantes.",
    "exportStyleNeedsFeatures": "A exportação de estilo requer uma camada vetorial com feições.",
    "exportStyleError": "Não foi possível exportar o estilo desta camada.",
    "importStyle": "Importar estilo (Mapbox GL / SLD / QML)…",
    "openStyleManager": "Estilos salvos (Gerenciador de estilos)…",
    "importStyleSuccess": "Estilo importado.",
    "importStyleInvalid": "Esse arquivo não é JSON, SLD ou QML válido.",
    "importStyleNoMatch": "Nenhuma simbologia pôde ser lida desse estilo.",
    "importStyleError": "Não foi possível importar este estilo.",
    "copyStyle": "Copiar estilo",
    "pasteStyle": "Colar estilo",
    "pasteStyleFrom": "Colar o estilo de “{{name}}”",
    "pasteStyleEmpty": "Copie primeiro o estilo de uma camada",
    "pasteStyleMismatch": "O estilo copiado é de outro tipo de camada",
    "styleCopied": "Estilo copiado de “{{name}}”.",
    "stylePasted": "Estilo colado de “{{name}}”.",
    "saveToLibrary": "Salvar em Meus dados",
    "savedToLibrary": "\"{{name}}\" salvo em Meus dados.",
    "saveToLibraryNoSource": "Esta camada não tem uma fonte que possa ser readicionada, portanto não pode ser salva em Meus dados.",
    "saveToLibraryTooLarge": "As feições desta camada são a única cópia delas e são grandes demais para salvar em Meus dados.",
    "saveToLibraryConfigTooLarge": "A configuração salva desta camada é grande demais para Meus dados.",
    "bindToTimeSlider": "Vincular ao controle deslizante de tempo…",
    "bindTimeDimensionToTimeSlider": "Vincular a dimensão temporal ao controle deslizante de tempo",
    "bindNoTimeDimension": "Esta camada não tem uma dimensão temporal legível.",
    "unbindFromTimeSlider": "Desvincular do controle deslizante de tempo",
    "bindDialogDescription": "Filtre as feições desta camada por uma propriedade de data ou timestamp enquanto você navega pela linha do tempo. A camada mantém seu estilo e opacidade.",
    "bindScanning": "Verificando feições em busca de propriedades de data e timestamp…",
    "bindNoProperty": "Nenhuma propriedade de data ou timestamp foi encontrada nesta camada.",
    "bindNoTimestamps": "A propriedade selecionada não tem timestamps legíveis. Escolha outra propriedade.",
    "bindTileNoFeatures": "Ainda não há tiles carregados para esta camada. Amplie para a camada e tente novamente.",
    "bindRange": "Intervalo de tempo",
    "bindRangeEnd": "Fim do intervalo de tempo",
    "bindRangeHint": "Obtido dos tiles carregados até agora, portanto pode ser mais estreito que o conjunto de dados completo. Informe um ano (1958) ou uma data (1958-03-01).",
    "bindRangeInvalid": "Informe ambos os limites como um ano (1958) ou uma data (1958-03-01).",
    "bindProperty": "Propriedade de tempo",
    "bindWindow": "Mostrar feições",
    "bindWindowStep": "Na etapa atual",
    "bindWindowWide": "Dentro de uma etapa antes e depois",
    "bindWindowWider": "Dentro de três etapas antes e depois",
    "bindWindowCumulative": "Tudo até a etapa atual (cumulativo)",
    "bindCancel": "Cancelar",
    "bindConfirm": "Vincular",
    "openRasterStylePanel": "Editar estilo raster…",
    "exportRasterSuccess": "Raster exportado.",
    "exportRasterError": "Não foi possível exportar este raster.",
    "saveEditsToSource": "Salvar edições no arquivo de origem",
    "saveEditsSuccess": "{{count}} feição(ões) salva(s) no arquivo de origem.",
    "saveEditsNoFeatures": "Esta camada não tem feições para salvar.",
    "saveEditsError": "Não foi possível salvar as edições no arquivo de origem.",
    "saveEditsToPostgis": "Salvar edições na tabela PostGIS",
    "saveEditsPostgisSuccess": "Salvo em {{table}}: {{inserted}} inserida(s), {{updated}} atualizada(s), {{deleted}} excluída(s).",
    "saveEditsPostgisSkippedFields": "Os campos sem uma coluna correspondente na tabela não foram salvos: {{fields}}.",
    "saveEditsPostgisRefreshWarning": "As edições foram salvas na tabela, mas a atualização da camada falhou. Recarregue a camada antes de salvar novamente, ou novas feições podem ser inseridas duas vezes.",
    "saveEditsPostgisNoConnection": "Nenhuma conexão PostgreSQL está disponível para esta camada. Reconecte em Adicionar dados > PostgreSQL e tente novamente.",
    "typeBasemap": "mapa base",
    "searchPlaces": "Pesquisar lugares",
    "searchPlacesPlaceholder": "Pesquisar lugares, coordenadas ou célula H3...",
    "searchPlacesSearching": "Pesquisando...",
    "searchPlacesNoResults": "Nenhum lugar encontrado",
    "searchPlacesError": "Falha na pesquisa. Tente novamente.",
    "searchPlacesClear": "Limpar pesquisa",
    "searchPlacesGoToCoordinate": "Ir para {{coordinate}}",
    "searchPlacesGoToH3Cell": "Ir para a célula H3 {{cell}} (res. {{resolution}})",
    "background": "Fundo",
    "backgroundCannotReorder": "O fundo não pode ser reordenado",
    "hideBackground": "Ocultar fundo",
    "showBackground": "Mostrar fundo",
    "opacity": "Opacidade",
    "opacityExactHint": "Clique duas vezes para digitar um valor exato",
    "opacityFor": "Opacidade de {{name}}",
    "opacityValueInputAria": "Valor de {{label}}",
    "opacityValueEditAria": "Editar valor de {{label}}",
    "basemapOpacity": "Opacidade do mapa base",
    "newGroup": "Novo grupo",
    "basemaps": "Mapas base",
    "geoEditor": "GeoEditor",
    "collapseGroup": "Recolher grupo",
    "expandGroup": "Expandir grupo",
    "hideGroup": "Ocultar grupo",
    "showGroup": "Mostrar grupo",
    "renameGroup": "Renomear grupo",
    "moveGroupUp": "Mover grupo para cima",
    "moveGroupDown": "Mover grupo para baixo",
    "ungroupKeepLayers": "Desagrupar (manter camadas)",
    "deleteGroupAndLayers": "Excluir grupo e camadas",
    "groupActions": "Ações do grupo",
    "addDataToGroup": "Adicionar dados ao grupo",
    "groupOpacity": "Opacidade",
    "groupOpacityAria": "Opacidade do grupo {{name}}",
    "doubleClickToRename": "Clique duas vezes para renomear",
    "doubleClickToChangeBasemap": "Clique duas vezes para alterar o mapa base",
    "renameNamed": "Renomear {{name}}",
    "newGroupFromLayer": "Novo grupo a partir da camada",
    "newGroupFromSelectedLayers": "Novo grupo a partir das camadas selecionadas",
    "moveToGroup": "Mover para o grupo",
    "moveSelectedToGroup": "Mover camadas selecionadas para o grupo",
    "removeFromGroup": "Remover do grupo",
    "hiddenByGroup": "Oculto porque seu grupo não está visível",
    "empty": "Nenhuma camada de dados. Adicione dados pela barra de ferramentas.",
    "emptyBeginner": "Ainda não há camadas. Adicione mapas base em Plugins → Mapas base, ou seus próprios dados pelo menu Adicionar dados.",
    "hideAllLayers": "Ocultar todas as camadas",
    "showAllLayers": "Mostrar todas as camadas",
    "dragNamedToReorder": "Arraste {{name}} para reordenar",
    "hideLayer": "Ocultar camada",
    "showLayer": "Mostrar camada",
    "editingGeometry": "Editando geometria",
    "rename": "Renomear",
    "materializeToEditable": "Materializar em camada editável",
    "finishEditingGeometry": "Concluir edição da geometria",
    "editGeometry": "Editar geometria",
    "openAttributeTable": "Abrir tabela de atributos",
    "openRasterAttributeTable": "Abrir a tabela de atributos raster",
    "export": "Exportar",
    "refresh": "Atualizar",
    "autoRefreshOn": "Atualização automática ativada",
    "lastSynced": "Última sincronização {{time}}",
    "syncErrorStatus": "Falha na sincronização: {{message}}",
    "autoRefresh": "Atualização automática",
    "refreshWfsGeojsonOnly": "Apenas URLs WFS e GeoJSON",
    "editSqlQuery": "Editar consulta na Área de trabalho SQL",
    "reloadFromDisk": "Recarregar do disco",
    "watchFile": "Monitorar alterações no arquivo",
    "watchError": "Não foi possível monitorar as alterações deste arquivo.",
    "autoRefreshDialogTitle": "Atualização automática de {{name}}",
    "layerFallback": "Camada",
    "autoRefreshDialogDescription": "Recarrega esta camada de sua fonte em um intervalo fixo.",
    "interval": "Intervalo",
    "custom": "Personalizado",
    "customIntervalSeconds": "Intervalo personalizado (segundos)",
    "refreshFailurePolicy": "Se a atualização falhar",
    "refreshFailureKeepLast": "Manter os últimos dados bem-sucedidos",
    "refreshFailureClear": "Limpar a camada",
    "apply": "Aplicar",
    "enterPositiveSeconds": "Digite um número positivo de segundos.",
    "metadataDialogTitle": "Metadados de {{name}}",
    "metadataDialogDescription": "Metadados da camada e informações da fonte",
    "metadataRasterLoading": "Lendo os metadados do raster…",
    "metadataRasterError": "Não foi possível ler os metadados deste raster.",
    "resizeMetadataDialog": "Redimensionar a caixa de diálogo de metadados",
    "removeLayerConfirmTitle": "Remover camada?",
    "removeLayerConfirmBody": "Isso remove {{name}} do projeto e do mapa.",
    "thisLayerFallback": "esta camada",
    "refreshingAuto": "Atualizando automaticamente...",
    "refreshing": "Atualizando...",
    "refreshVectorControlError": "Não foi possível atualizar esta camada. Tente reabrir o painel Adicionar camada vetorial.",
    "refreshed": "Atualizado.",
    "refreshedCount": "{{count}} feições atualizadas.",
    "refreshError": "Não foi possível atualizar esta camada.",
    "exportNeedsFeatures": "A exportação requer uma camada vetorial com feições.",
    "exportedWithWarnings": "Camada exportada. {{warnings}}",
    "exported": "Camada exportada.",
    "exportLayerError": "Não foi possível exportar esta camada.",
    "refreshIntervals": {
      "off": "Desativado",
      "s15": "15 segundos",
      "s30": "30 segundos",
      "m1": "1 minuto",
      "m5": "5 minutos",
      "m15": "15 minutos"
    }
  },
  "timeSliderSymbology": {
    "bands": "Bandas",
    "bandsPlaceholder": "auto",
    "bandsHint": "Números de banda a partir de 1, separados por vírgulas (ex.: 4,3,2). Deixe vazio para o padrão.",
    "bandsInvalid": "Informe números de banda inteiros de 1 ou mais, separados por vírgulas.",
    "colormapNone": "Nenhum (RGB / multibanda)"
  },
  "rasterSymbology": {
    "gamma": "Gama",
    "min": "Mín.",
    "max": "Máx.",
    "value": "Valor",
    "autoPlaceholder": "automático",
    "colorRampLabel": "Rampa de cores",
    "reverseRamp": "Inverter rampa",
    "customRamp": "Personalizado…",
    "customColors": "Cores personalizadas",
    "customColorsValid": "{{count}} cores, do menor ao maior. Use Inverter para trocar.",
    "customColorsHint": "Digite pelo menos dois códigos hexadecimais, separados por vírgulas ou espaços.",
    "imagePalette": "Paleta da imagem",
    "createLegend": "Criar legenda a partir da paleta",
    "createLegendHint": "Adiciona uma legenda com um item por valor de pixel, usando as cores da paleta do raster. Renomeie os itens para nomes de classe depois.",
    "createLegendPending": "Lendo paleta…",
    "createLegendEmpty": "Nenhuma cor de paleta encontrada para este raster.",
    "createLegendError": "Não foi possível ler a paleta do raster.",
    "heading": "Simbologia raster",
    "renderMode": "Modo de renderização",
    "modeSingle": "Banda única (pseudocor)",
    "modeIndex": "Índice (diferença normalizada)",
    "modeRgb": "Composição RGB",
    "band": "Banda",
    "stretch": "Contraste",
    "stretchLinear": "Linear",
    "stretchLog": "Logarítmico",
    "stretchSqrt": "Raiz quadrada",
    "index": "Índice",
    "classifyToggle": "Classificar em classes discretas",
    "method": "Método",
    "methodEqualInterval": "Intervalo igual",
    "methodQuantile": "Quantil",
    "methodManual": "Quebras manuais",
    "classes": "Classes",
    "classEdges": "Limites das classes",
    "noData": "Sem dados",
    "nodataAuto": "Automático (do arquivo)",
    "nodataOff": "Renderizar todos os pixels",
    "nodataCustom": "Valor personalizado"
  },
  "rasterAttributeTable": {
    "title": "Tabela de atributos raster",
    "resize": "Redimensionar a tabela de atributos raster",
    "noRasterSelected": "Selecione uma camada raster para ver sua tabela de atributos.",
    "computing": "Lendo as classes do raster…",
    "empty": "Ainda não há classes. Use Recalcular para construir a tabela.",
    "band": "Banda",
    "bandOption": "Banda {{band}}",
    "close": "Fechar a tabela de atributos raster",
    "noSource": "Este raster não tem um arquivo de origem legível.",
    "readError": "Não foi possível ler os dados do raster.",
    "bandMissing": "A banda {{band}} não foi encontrada neste raster.",
    "notCategorical": "Esta banda tem valores distintos demais para ser categórica.",
    "tooManyClasses": "Aplicar simbologia suporta até {{max}} classes.",
    "symbologyApplied": "Simbologia aplicada a partir da tabela.",
    "noPalette": "Este raster não tem uma paleta incorporada.",
    "legendError": "Não foi possível abrir a legenda.",
    "csvError": "Não foi possível exportar o arquivo CSV.",
    "recomputeTitle": "Verificar o raster e reconstruir a tabela de classes",
    "applyTitle": "Colorir o raster pelas classes da tabela",
    "paletteTitle": "Redefinir as cores a partir da paleta incorporada",
    "legendTitle": "Preencher a legenda do mapa com as classes da tabela",
    "csvTitle": "Exportar a tabela para CSV",
    "buttons": {
      "recompute": "Recalcular",
      "apply": "Aplicar simbologia",
      "palette": "Da paleta",
      "legend": "Para legenda",
      "csv": "CSV"
    },
    "columns": {
      "value": "Valor",
      "count": "Contagem",
      "percent": "%",
      "area_m2": "Área (m²)",
      "area_ha": "Área (ha)",
      "area_km2": "Área (km²)",
      "color": "Cor",
      "label": "Rótulo"
    },
    "rowColor": "Cor para o valor {{value}}",
    "rowLabel": "Rótulo para o valor {{value}}"
  },
  "raster": {
    "filePickerLabel": "Rasters",
    "cogConvertConfirm": "\"{{name}}\" é um GeoTIFF simples (em faixas), que não pode ser exibido diretamente. Convertê-lo agora para um GeoTIFF Cloud-Optimized e carregá-lo?",
    "cogConvertRemoteConfirm": "\"{{name}}\" é um GeoTIFF simples (em faixas), que não pode ser exibido diretamente. Exibi-lo significa baixar o arquivo completo e convertê-lo para um GeoTIFF Cloud-Optimized no navegador, o que pode ser lento e consumir muita memória para arquivos grandes. Continuar?",
    "cogConvertLargeConfirm": "\"{{name}}\" é um GeoTIFF grande de {{width}}×{{height}} que não é um GeoTIFF Cloud-Optimized. Convertê-lo no navegador pode ser lento e consumir muita memória. Converter e carregar mesmo assim?",
    "cogConvertFailed": "Não foi possível converter \"{{name}}\" para um GeoTIFF Cloud-Optimized. Tente convertê-lo com gdal_translate ou rio cogeo e, em seguida, carregue o resultado.",
    "rasterDownloadFailed": "Não foi possível baixar \"{{name}}\". O servidor pode estar lento, inacessível ou bloqueando solicitações entre origens, ou o arquivo pode ser grande demais para caber na memória. Verifique a URL e tente novamente.",
    "rasterNotGeotiff": "\"{{name}}\" não retornou um GeoTIFF. O servidor pode ter enviado uma página de erro ou login em vez disso. Verifique a URL e tente novamente."
  },
  "attributeForm": {
    "error": {
      "required": "Um valor é obrigatório",
      "number": "Deve ser um número",
      "range": "Deve estar entre {{min}} e {{max}}",
      "rangeMin": "Deve ser pelo menos {{min}}",
      "rangeMax": "Deve ser no máximo {{max}}",
      "valueMap": "O valor não está na lista permitida",
      "constraint": "Restrição não satisfeita"
    }
  },
  "legendPanel": {
    "edit": "Editar legenda",
    "done": "Concluir edição",
    "close": "Fechar legenda",
    "empty": "Nenhuma camada visível para listar.",
    "renameTitle": "Título da legenda",
    "renameEntry": "Renomear {{name}}",
    "renameItem": "Renomear {{name}}",
    "moveUp": "Mover para cima",
    "moveDown": "Mover para baixo",
    "hideEntry": "Ocultar da legenda",
    "showEntry": "Mostrar na legenda",
    "hideItem": "Ocultar item",
    "showItem": "Mostrar item",
    "customizeEntry": "Personalizar itens",
    "resetEntry": "Redefinir para automático",
    "removeSection": "Remover seção",
    "addSection": "Adicionar seção personalizada",
    "newSectionTitle": "Nova seção",
    "newItemLabel": "Novo item",
    "addItem": "Adicionar item",
    "removeItem": "Remover item",
    "itemColor": "Cor do item",
    "position": "Posição",
    "positions": {
      "top-left": "Superior esquerdo",
      "top-right": "Superior direito",
      "bottom-left": "Inferior esquerdo",
      "bottom-right": "Inferior direito"
    },
    "low": "Baixo",
    "high": "Alto",
    "addFromDictionary": "Adicionar de dicionário",
    "dictionaryHint": "Um objeto JSON com pares {\"rótulo\": \"cor\"}, ou um \"rótulo: cor\" por linha.",
    "dictionaryAdd": "Adicionar seção",
    "cancel": "Cancelar",
    "resize": "Redimensionar legenda",
    "collapseEntry": "Recolher seção",
    "expandEntry": "Expandir seção",
    "collapsePanel": "Recolher legenda",
    "expandPanel": "Expandir legenda",
    "exportJson": "Exportar como JSON"
  },
  "errorBoundary": {
    "title": "Algo deu errado",
    "description": "O GeoLibre encontrou um erro inesperado e não pôde continuar. Seu trabalho pode não estar salvo — tente recuperá-lo antes de recarregar.",
    "tryAgain": "Tentar novamente",
    "reload": "Recarregar o aplicativo",
    "sectionFailed": "Não foi possível renderizar {{label}}. O restante do GeoLibre continua disponível."
  },
  "commandPalette": {
    "title": "Paleta de comandos",
    "searchAria": "Pesquisar comandos",
    "searchPlaceholder": "Pesquisar comandos…",
    "listAria": "Comandos",
    "noMatches": "Nenhum comando correspondente"
  },
  "shortcuts": {
    "title": "Atalhos de teclado",
    "description": "Pressione {{shortcut}} para pesquisar qualquer ação na paleta de comandos.",
    "groupGeneral": "Geral",
    "groupMapNavigation": "Navegação do mapa",
    "openCommandPalette": "Abrir a paleta de comandos",
    "showKeyboardShortcuts": "Mostrar os atalhos de teclado",
    "nav": {
      "zoomIn": "Aproximar",
      "zoomOut": "Afastar",
      "pan": "Deslocar",
      "rotate": "Girar",
      "tilt": "Inclinar"
    }
  },
  "diagnostics": {
    "title": "Diagnóstico",
    "description": "Requisições de rede recentes, erros do MapLibre, avisos do console e exceções em tempo de execução.",
    "countTotal_one": "{{count}} no total",
    "countTotal_other": "{{count}} no total",
    "countErrors_one": "{{count}} erro",
    "countErrors_other": "{{count}} erros",
    "countWarnings_one": "{{count}} aviso",
    "countWarnings_other": "{{count}} avisos",
    "countNetwork_one": "{{count}} de rede",
    "countNetwork_other": "{{count}} de rede",
    "countNetworkErrors_one": "{{count}} erro de rede",
    "countNetworkErrors_other": "{{count}} erros de rede",
    "logAllRequests": "Registrar todas as requisições de rede",
    "logAllRequestsHint": "Registra a partir de agora as requisições de rede bem-sucedidas e abortadas; as requisições feitas enquanto o registro estava desligado não são recuperadas. Desligado por padrão porque registrar cada requisição deixa o aplicativo mais lento.",
    "copyJson": "Copiar JSON",
    "copied": "Copiado",
    "clear": "Limpar",
    "emptyAll": "Nenhum diagnóstico capturado.",
    "emptyError": "Nenhum diagnóstico de erro capturado.",
    "emptyWarning": "Nenhum diagnóstico de aviso capturado.",
    "emptyInfo": "Nenhum diagnóstico informativo capturado.",
    "emptyNetwork": "Nenhum diagnóstico de rede capturado.",
    "emptyNetworkError": "Nenhum diagnóstico de erro de rede capturado."
  },
  "shell": {
    "workspaceTitle": "Espaço de trabalho do mapa do GeoLibre",
    "section": {
      "toolbar": "Barra de ferramentas",
      "sharedLeftSidebar": "Barra lateral esquerda compartilhada",
      "pluginPanelLeftOfLayers": "Painel de plugins (à esquerda de Camadas)",
      "layerPanel": "Painel de camadas",
      "pluginPanelRightOfLayers": "Painel de plugins (à direita de Camadas)",
      "map": "Mapa",
      "pluginFloatingPanels": "Painéis flutuantes de plugins",
      "selectionPanels": "Painéis de seleção",
      "sunSimulationPanel": "Painel de simulação solar",
      "routeAnimationPanel": "Painel de animação de rota",
      "flightSimulatorPanel": "Painel do simulador de voo",
      "sharedRightSidebar": "Barra lateral direita compartilhada",
      "pluginPanelLeftOfStyle": "Painel de plugins (à esquerda de Estilo)",
      "stylePanel": "Painel de estilo",
      "pluginPanelRightOfStyle": "Painel de plugins (à direita de Estilo)",
      "notebook": "Notebook",
      "attributeTable": "Tabela de atributos",
      "rasterAttributeTable": "Tabela de atributos raster",
      "dashboard": "Painel",
      "pythonConsole": "Console Python",
      "sqlWorkspace": "Espaço de trabalho SQL",
      "assistant": "Assistente",
      "statusBar": "Barra de status"
    }
  },
  "attributeStats": {
    "title": "Estatísticas do campo",
    "description": "Estatísticas resumidas de um campo em “{{layer}}”.",
    "noFields": "Esta camada não tem campos para resumir.",
    "field": "Campo",
    "scope": "Escopo",
    "scopeAll": "Todas as feições ({{total}})",
    "scopeFiltered": "Filtradas ({{total}})",
    "copiedToClipboard": "Copiado para a área de transferência.",
    "copy": "Copiar",
    "copyHeader": "Estatísticas do campo — {{field}}",
    "copyHeaderFiltered": "Estatísticas do campo — {{field}} (filtradas)",
    "noValues": "Nenhum valor para resumir.",
    "mostFrequent": "Valores mais frequentes",
    "noPopulated": "Nenhum valor preenchido.",
    "stat": {
      "count": "Contagem",
      "nulls": "Nulos",
      "nonNumeric": "Não numéricos",
      "unique": "Únicos",
      "min": "Mín",
      "max": "Máx",
      "mean": "Média",
      "median": "Mediana",
      "std": "Desvio padrão",
      "sum": "Soma"
    }
  },
  "columnExplorer": {
    "title": "Explorador de colunas",
    "description": "Tipo, completude e distribuição de cada campo em “{{layer}}”.",
    "noFields": "Esta camada não tem campos para explorar.",
    "findField": "Localizar campo",
    "findFieldPlaceholder": "Filtrar campos por nome...",
    "scope": "Escopo",
    "scopeAll": "Todas as feições ({{total}})",
    "scopeFiltered": "Filtradas ({{total}})",
    "fieldsShown": "{{shown}} de {{total}} campos",
    "noMatches": "Nenhum campo corresponde a “{{search}}”.",
    "typeNumeric": "Numérico",
    "typeText": "Texto",
    "completenessTitle": "{{populated}} preenchidos, {{nulls}} nulos",
    "populated": "{{total}} preenchidos",
    "null": "{{total}} nulos",
    "unique": "{{total}} únicos",
    "min": "Mín",
    "mean": "Média",
    "max": "Máx",
    "noNumericValues": "Nenhum valor numérico para plotar.",
    "distributionAria": "Distribuição de {{field}}: {{total}} valores de {{min}} a {{max}}",
    "noPopulated": "Nenhum valor preenchido.",
    "moreValues": "+{{total}} outros valores"
  },
  "stacPlugin": {
    "title": "Catálogos STAC",
    "footprintLayerName": "Contornos de busca STAC",
    "catalogSearch": "Encontrar um catálogo público no STAC Index",
    "catalogSearchPlaceholder": "Buscar nomes de catálogos…",
    "indexLoading": "Carregando STAC Index…",
    "indexUnavailable": "STAC Index indisponível: informe uma URL",
    "indexLoadFailed": "Não foi possível carregar o STAC Index",
    "urlLabel": "URL do catálogo ou da API STAC",
    "connect": "Conectar",
    "connecting": "Conectando ao STAC…",
    "connected": "Conectado. Escolha os filtros e busque.",
    "connectFailed": "Não foi possível conectar ao STAC",
    "selectCatalog": "Selecione um catálogo…",
    "noMatchingCatalogs": "Nenhum catálogo correspondente",
    "catalogApiSuffix": " (API)",
    "catalogStaticSuffix": " (estático)",
    "kindApi": "API STAC",
    "kindStatic": "catálogo estático",
    "collectionsHint": "Segure Ctrl/Cmd para selecionar várias coleções; arraste a borda inferior para redimensionar",
    "limitToExtent": "Limitar a busca à extensão atual do mapa",
    "bboxLabel": "Caixa delimitadora (oeste, sul, leste, norte)",
    "bboxPlaceholder": "Opcional; substitui a extensão do mapa",
    "bboxInvalid": "Informe uma caixa delimitadora válida: oeste, sul, leste, norte.",
    "drawBbox": "Desenhar caixa no mapa",
    "cancelDrawing": "Cancelar desenho",
    "clearDrawnBbox": "Limpar caixa desenhada",
    "drawHint": "Clique e arraste no mapa para desenhar uma caixa de busca.",
    "drawnBbox": "Caixa desenhada: {{bbox}}",
    "drawnBboxCleared": "Caixa desenhada limpa.",
    "mapNotReady": "O mapa não está pronto para desenhar.",
    "startDate": "Data inicial",
    "endDate": "Data final",
    "additionalParams": "Parâmetros de busca adicionais (JSON, somente API STAC)",
    "additionalInvalid": "Os parâmetros de busca adicionais devem ser um objeto JSON.",
    "searchItems": "Buscar itens",
    "clearResults": "Limpar resultados",
    "resultsCleared": "Resultados da busca limpos.",
    "searching": "Buscando itens STAC…",
    "loadingMore": "Carregando mais itens…",
    "noResults": "Nenhum item STAC corresponde a esses filtros.",
    "searchFailed": "Falha na busca STAC",
    "showing": "Mostrando {{count}} itens.",
    "showingOfMatched": "Mostrando {{count}} de {{matched}} itens.",
    "loadMore": "Carregar mais",
    "renderOptions": "Opções de renderização raster",
    "bands": "Bandas",
    "bandsPlaceholder": "ex.: 1 ou 1,2,3 (padrão: automático)",
    "colormap": "Mapa de cores (apenas banda única)",
    "colormapDefault": "Padrão do renderizador",
    "minValue": "Valor mínimo",
    "maxValue": "Valor máximo",
    "nodata": "Valor NoData",
    "nodataPlaceholder": "Substitui a tag NoData do arquivo",
    "renderHint": "Deixe um campo em branco para o renderizador inferir do GeoTIFF. As opções valem para os recursos adicionados depois.",
    "initialStatus": "Escolha um catálogo do STAC Index ou informe uma URL.",
    "catalogInfo": "{{title}} · {{kind}}",
    "zoom": "Ampliar",
    "add": "Adicionar",
    "download": "Baixar",
    "adding": "Adicionando {{asset}}…",
    "added": "{{asset}} adicionado ao mapa.",
    "addUnsupported": "Apenas recursos GeoTIFF/COG e GeoJSON podem ser adicionados ao mapa",
    "addFailed": "Não foi possível adicionar o recurso",
    "cogUnsupported": "Este host do GeoLibre não consegue visualizar recursos GeoTIFF remotos"
  },
  "vectorExport": {
    "invalidKmlCoordinatesByPosition": "A exportação KML não conseguiu gravar a feição {{position}} porque ela tem coordenadas inválidas.",
    "invalidKmlCoordinatesById": "A exportação KML não conseguiu gravar a feição de ID {{id}} porque ela tem coordenadas inválidas."
  },
  "comments": {
    "title": "Comentários",
    "addDialogTitle": "Adicionar comentário de revisão",
    "addDialogDescription": "Publique uma nota ancorada neste projeto para revisão da equipe ou referência offline.",
    "authorNameLabel": "Seu nome (solicitado uma vez, salvo automaticamente)",
    "authorNamePlaceholder": "ex.: Alex ou Sara",
    "commentLabel": "Comentário / Feedback",
    "commentPlaceholder": "Digite aqui sua nota de revisão ou feedback...",
    "confirmDelete": "Tem certeza de que deseja excluir esta discussão de comentários?",
    "sessionDisconnected": "Sessão desconectada.",
    "defaultAuthorName": "Autor"
  },
  "s2Plugin": {
    "title": "Grade S2",
    "controlTitle": "Configurações da grade S2",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula S2.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParents": "Incluir as células pai da célula selecionada"
  },
  "a5Plugin": {
    "title": "Grade A5",
    "controlTitle": "Configurações da grade A5",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula A5.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParents": "Incluir as células pai da célula selecionada"
  },
  "dggridPlugin": {
    "title": "DGGRID",
    "controlTitle": "Configurações do DGGRID",
    "cellType": "Tipo de célula",
    "topologyHexagon": "Hexágono",
    "topologyDiamond": "Losango",
    "topologyTriangle": "Triângulo",
    "projection": "Projeção",
    "aperture": "Abertura",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula DGGRID.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParents": "Incluir as células pai da célula selecionada"
  },
  "dggalPlugin": {
    "title": "DGGAL",
    "controlTitle": "Configurações do DGGAL",
    "gridType": "Tipo de DGGS",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula DGGAL.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParents": "Incluir as células pai da célula selecionada"
  },
  "olcPlugin": {
    "title": "OLC",
    "controlTitle": "Configurações do OLC",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula OLC.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParent": "Incluir a célula pai da célula selecionada"
  },
  "geohashPlugin": {
    "title": "Geohash",
    "controlTitle": "Configurações do Geohash",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "Células na visualização: {{count}}",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} células. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids das células",
    "identifyHint": "Clique no mapa para identificar uma célula Geohash.",
    "selectedCell": "Célula selecionada",
    "noSelection": "Nenhuma célula selecionada",
    "copyId": "Copiar id",
    "parent": "Célula pai",
    "children": "Células filhas",
    "neighbors": "Vizinhas",
    "center": "Centro",
    "zoomToCell": "Ampliar para a célula",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir as vizinhas da célula selecionada",
    "includeParent": "Incluir a célula pai da célula selecionada"
  },
  "tilecodePlugin": {
    "title": "Tilecode",
    "controlTitle": "Configurações do Tilecode",
    "autoResolution": "Resolução automática",
    "resolution": "Resolução",
    "cellCount": "{{count}} blocos na visualização",
    "tooManyCells": "Esta visualização excede o limite de {{limit}} blocos. Aproxime o zoom ou reduza a resolução.",
    "fillColor": "Cor de preenchimento",
    "fillOpacity": "Opacidade do preenchimento",
    "lineColor": "Cor do contorno",
    "lineWidth": "Espessura do contorno",
    "showLabels": "Mostrar os ids dos blocos",
    "identifyHint": "Clique no mapa para identificar um bloco.",
    "selectedCell": "Bloco selecionado",
    "noSelection": "Nenhum bloco selecionado",
    "copyId": "Copiar id",
    "quadkey": "Quadkey",
    "parent": "Bloco pai",
    "children": "Blocos filhos",
    "neighbors": "Vizinhos",
    "center": "Centro",
    "zoomToCell": "Ampliar para o bloco",
    "addAsLayer": "Adicionar a grade como camada",
    "exportGeoJson": "Exportar GeoJSON",
    "exportCsv": "Exportar CSV",
    "includeNeighbors": "Incluir os vizinhos do bloco selecionado",
    "includeParent": "Incluir o bloco pai do bloco selecionado"
  },
  "netcdfSymbology": {
    "heading": "Simbologia NetCDF",
    "colorRampLabel": "Mapa de cores",
    "reverse": "Inverter o mapa de cores",
    "colorMin": "Cor mín.",
    "colorMax": "Cor máx.",
    "resetRange": "Redefinir para o intervalo dos dados",
    "openCube": "Cubo 3D"
  },
  "netcdfCube": {
    "heading": "Cubo de imagem 3D",
    "close": "Fechar",
    "settings": "Configurações",
    "setupTitle": "Cubo de imagem 3D",
    "setupDescription": "Escolha o que ler antes de construir o cubo. Cada banda é uma leitura separada, então a extensão e a quantidade de bandas determinam quanto tempo leva.",
    "extent": "Extensão",
    "extentView": "Visualização atual do mapa",
    "extentDraw": "Desenhar no mapa",
    "extentFull": "Extensão completa da camada",
    "viewHint": "Lê o que o mapa estiver mostrando quando o cubo for construído.",
    "fullHint": "Lê a grade inteira. Lento para um cubo do tamanho de uma cena.",
    "drawBbox": "Desenhar no mapa",
    "drawing": "Arraste uma caixa no mapa para definir a extensão do cubo",
    "drawHint": "Arraste uma caixa no mapa para definir a extensão.",
    "drawnExtent": "O {{west}}, S {{south}}, L {{east}}, N {{north}}",
    "detail": "Detalhe",
    "detailOption": "{{size}} células por lado",
    "bands": "Bandas",
    "allBands": "Todas ({{count}})",
    "rgbOverlay": "Imagem RGB por cima",
    "rgbHint": "Compõe três bandas em uma imagem colorida assentada sobre a face superior, para que o cubo seja reconhecível como um lugar.",
    "red": "Vermelho",
    "green": "Verde",
    "blue": "Azul",
    "planeEstimate": "{{count}} leituras de banda",
    "create": "Criar o cubo",
    "colorRampLabel": "Mapa de cores",
    "reverse": "Inverter",
    "showRgb": "RGB no topo",
    "rgbBands": "Bandas RGB",
    "recomposing": "lendo...",
    "zScale": "Altura",
    "slice": "Corte",
    "sliceAt": "corte em {{band}} {{units}}",
    "reading": "Lendo a banda {{done}} de {{total}}...",
    "summary": "{{nx}} x {{ny}} células, {{nz}} bandas ao longo de {{axis}}",
    "errorNoCube": "O arquivo de origem desta camada não está mais aberto, então não é possível ler um cubo.",
    "error": {
      "shapeMismatch": "Os planos de banda da variável não têm todos a mesma forma, então não podem ser empilhados em um cubo.",
      "rgbShapeMismatch": "As bandas RGB escolhidas não correspondem à forma do cubo.",
      "noBands": "Esta variável não tem bandas para ler.",
      "noReadWindow": "Este cubo não pode ser atualizado no lugar. Reconstrua-o pelas Configurações."
    }
  },
  "netcdfProfile": {
    "heading": "Perfil espectral",
    "clear": "Limpar",
    "chartAria": "Valores de pixel amostrados ao longo do eixo das bandas",
    "popOut": "Destacar",
    "dock": "Encaixar",
    "poppedOutHint": "O gráfico está aberto em uma janela sobre o mapa.",
    "noValues": "Nenhum valor para representar nestes pixels.",
    "exportPng": "PNG",
    "exportCsv": "CSV",
    "exportError": "Não foi possível exportar o gráfico."
  },
  "netcdfIdentify": {
    "noData": "sem dados",
    "coordinates": "lon, lat",
    "cell": "linha, coluna"
  }
}
