pt-BR-u7vOhYKQ.js 353 KB

1234
  1. var e={nav:{printers:`Impressoras`,archives:`Arquivos`,queue:`Fila de impressão`,stats:`Estatísticas`,profiles:`Perfis`,maintenance:`Manutenção`,projects:`Projetos`,inventory:`Inventário`,finance:`Finanças`,files:`Gerenciador de Arquivos`,makerworld:`MakerWorld`,modelSources:`Fontes de modelos`,notifications:`Notificações`,settings:`Configurações`,system:`Sistema`,collapseSidebar:`Recolher barra lateral`,expandSidebar:`Expandir barra lateral`,update:`Atualizar`,updateAvailable:`Atualização disponível: v{{version}}`,updateAvailableBanner:`Versão {{version}} está disponível!`,viewUpdate:`Ver atualização`,viewOnGithub:`Ver no GitHub`,keyboardShortcuts:`Atalhos de teclado (?)`,switchToLight:`Mudar para modo claro`,switchToDark:`Mudar para modo escuro`,switchToSystem:`Mudar para modo do sistema`,smartSwitches:`Interruptores inteligentes`,logout:`Sair`,installApp:`Instalar app`,installAppSuccess:`Bambuddy foi instalado`},announcements:{title:`Anúncios`,unread:`Anúncios não lidos: {{count}}`,empty:`Nenhum anúncio no momento.`,earlier:`Anteriores ({{count}})`,new:`Novo`,readMore:`Saiba mais`,readMoreCount:`Saiba mais (+{{count}})`,gotIt:`Entendi`,source:`Dos desenvolvedores do Bambuddy, obtidos do GitHub. Você pode desativá-los nas configurações.`,level:{info:`Aviso`,important:`Importante`,critical:`Crítico`}},common:{plusNMore:`+{{count}} outros`,save:`Salvar`,saving:`Salvando...`,cancel:`Cancelar`,delete:`Excluir`,edit:`Editar`,add:`Adicionar`,close:`Fechar`,confirm:`Confirmar`,loading:`Carregando...`,error:`Erro`,errorLoading:`Erro ao carregar`,retry:`Tentar novamente`,success:`Sucesso`,warning:`Aviso`,enabled:`Ativado`,disabled:`Desativado`,yes:`Sim`,no:`Não`,on:`Ligado`,off:`Desligado`,all:`Todos`,none:`Nenhum`,search:`Pesquisar`,filter:`Filtrar`,sort:`Ordenar`,refresh:`Atualizar`,download:`Baixar`,upload:`Enviar`,uploading:`Enviando...`,uploadFailed:`Falha no envio`,actions:`Ações`,status:`Status`,name:`Nome`,description:`Descrição`,date:`Data`,time:`Hora`,hours:`Horas`,minutes:`Minutos`,seconds:`Segundos`,days:`Dias`,enable:`Ativar`,disable:`Desativar`,permissions:`Permissões`,noPrinters:`Nenhuma impressora configurada`,noData:`Nenhum dado disponível`,linkNotFound:`Link não encontrado`,required:`Obrigatório`,optional:`Opcional`,dismiss:`Dispensar`,apply:`Aplicar`,reset:`Redefinir`,export:`Exportar`,import:`Importar`,clear:`Limpar`,selectAll:`Selecionar tudo`,deselectAll:`Desmarcar tudo`,noChange:`— Sem alterações —`,unchanged:`Inalterado`,unassigned:`Não atribuído`,unknown:`Desconhecido`,unknownError:`Erro desconhecido`,today:`Hoje`,tomorrow:`Amanhã`,asap:`O mais rápido possível`,overdue:`Atrasado`,now:`Agora`,collapse:`Recolher`,expand:`Expandir`,previous:`Anterior`,next:`Próximo`,viewArchive:`Ver arquivo`,viewInFileManager:`Ver no Gerenciador de Arquivos`,addedBy:`Adicionado por {{username}}`,prints:`impressões`,more:`+{{count}} mais`,ascending:`Crescente`,descending:`Decrescente`,back:`Voltar`,copy:`Copiar`,copied:`Copiado!`,printer:`Impressora`,remove:`Remover`,type:`Tipo`,print:`Imprimir`,rename:`Renomear`,move:`Mover`,create:`Criar`,duplicate:`Duplicar`,left:`Esquerda`,right:`Direita`,user:`Usuário`,run:`Executar`,running:`Executando...`},finance:{allTypes:`Todos os tipos`,allCostCenters:`Todos os centros de custo`,title:`Finanças`,subtitle:`Carteira, transações pessoais e centros de custo`,noAccess:`Você não tem permissão para visualizar dados financeiros.`,personalView:`Visualização pessoal`,adminView:`Visualização do administrador`,createCostCenter:`Criar centro de custo`,adjustWallet:`Ajustar carteira`,addManualPrint:`Adicionar impressão manual`,manageMembers:`Gerenciar membros do centro de custo`,currentBalance:`Saldo pessoal`,transactions:`Transações`,personalTransactions:`Transações pessoais`,costCenters:`Centros de custo`,availableForPrinting:`Disponível para atribuição de impressão`,costCenterName:`Nome`,budgetType:`Tipo de orçamento`,monthlyBudget:`Orçamento mensal`,totalBudget:`Orçamento total`,noBudget:`Sem orçamento`,create:`Criar`,selectUser:`Selecionar usuário`,transactionType:`Tipo`,amount:`Valor`,noCostCenter:`Sem centro de custo`,descriptionOptional:`Descrição (opcional)`,applyAdjustment:`Aplicar ajuste`,memberCanPrint:`Membro pode imprimir`,addMember:`Adicionar membro`,canPrint:`Pode imprimir`,noMembers:`Nenhum membro atribuído.`,editCostCenter:`Editar centro de custo`,myCostCenters:`Meus centros de custo`,costCentersHint:`Revise os limites de orçamento e mantenha os custos sob controle`,noCostCenters:`Nenhum centro de custo encontrado.`,owner:`Proprietário`,balance:`Saldo da conta`,unlimited:`Ilimitado`,budgetPolicyHint:`Os saldos das contas registram os custos. A impressão é limitada apenas pelo orçamento do centro de custo selecionado; sem orçamento, é ilimitada.`,budget:`Orçamento`,shared:`Compartilhado`,cannotEditPrivateCostCenter:`Centros de custo privados não podem ser editados aqui`,recentTransactions:`Transações recentes`,transactionsHint:`Filtre por tipo e centro de custo`,first:`Primeira`,prev:`Anterior`,next:`Próxima`,last:`Última`,pageNumberOf:`Página {{page}} de {{total}}`,noTransactions:`Nenhuma transação disponível.`,noTransactionsForFilter:`Nenhuma transação corresponde aos filtros selecionados.`,costCenter:`Centro de custo`,balanceAfter:`Saldo após`,userWithId:`Usuário #{{id}}`,partial:`Parcial`,editTransaction:`Editar transação`,selectCostCenter:`Selecionar centro de custo...`,costCenterRequired:`Por favor, selecione um centro de custo`,amountExample:`ex.: 4,00`,manualAdjustmentExample:`ex.: Ajuste manual`,userRequired:`Por favor, selecione um usuário`,amountInvalid:`O valor deve ser um número válido`,createdCostCenter:`Centro de custo criado`,createCostCenterFailed:`Falha ao criar o centro de custo`,transactionDeleted:`Transação excluída`,deleteTransactionFailed:`Falha ao excluir a transação`,transactionEdited:`Transação atualizada e razão recalculada`,editTransactionFailed:`Falha ao editar a transação`,manualPrintCreated:`Cobrança de impressão manual adicionada e razão recalculada`,manualPrintFailed:`Falha ao criar a impressão manual`,memberSaved:`Membro salvo`,memberSaveFailed:`Falha ao salvar o membro`,memberRemoved:`Membro removido`,memberRemoveFailed:`Falha ao remover o membro`,costCenterNameRequired:`O nome do centro de custo é obrigatório`,costCenterUpdated:`Centro de custo atualizado`,costCenterUpdateFailed:`Falha ao atualizar o centro de custo`,confirmDeleteCostCenter:`Excluir o centro de custo "{{name}}"?`,costCenterDeleted:`Centro de custo excluído`,costCenterDeleteFailed:`Falha ao excluir o centro de custo`,deleteTransactionConfirm:`Excluir essa transação? Os saldos serão recalculados automaticamente.`,deposit:`Depósito`,withdraw:`Saque`,printCharge:`Cobrança de impressão`,deleteTransaction:`Excluir transação`},printers:{locations:{title:`Locais das impressoras`,backToPrinters:`Voltar para as impressoras`,subtitle:`{{grouped}} com local, {{ungrouped}} sem local`,search:`Buscar locais...`,showEmpty:`Mostrar vazios`,hideEmpty:`Ocultar vazios`,select:`Selecionar`,done:`Concluído`,sortNameAsc:`Nome A→Z`,sortNameDesc:`Nome Z→A`,sortCountAsc:`Menos impressoras`,sortCountDesc:`Mais impressoras`,create:`Novo local`,createTitle:`Criar local`,editTitle:`Editar local`,namePlaceholder:`Nome do local`,icon:`Ícone`,color:`Cor`,noColor:`Sem cor`,none:`Ainda não há locais de impressoras`,noResults:`Nenhum local corresponde à busca`,printerCount:`Impressoras: {{count}}`,noPrinters:`Nenhuma impressora neste local`,selectPrinter:`Selecionar impressora`,move:`Mover para outro local`,moveButton:`Mover`,removeFromLocation:`Remover do local`,ungroupedPrinters:`Impressoras sem local: {{count}}`,selected:`Selecionados: {{count}}`,deleteSelected:`Excluir selecionados`,moveTitle:`Mover impressora`,moveTitleMany:`Mover impressoras ({{count}})`,targetPlaceholder:`Selecione um local...`,noLocation:`Sem local`,deleteTitle:`Excluir local`,deleteTitleMany:`Excluir locais ({{count}})`,deleteMessage:`Excluir {{names}}? Impressoras que ficarão sem local: {{count}}.`,created:`Local criado`,saved:`Local atualizado`,deleted:`Locais excluídos: {{count}}`,moved:`Impressoras movidas: {{count}}`,failed:`Não foi possível salvar a alteração: {{error}}`},addPreflight:{checking:`Verificando a conexão...`,warning:`Algumas verificações de conexão falharam. Esta impressora pode aparecer como offline. Revise as verificações abaixo, corrija o que puder ou salve mesmo assim.`,back:`Voltar`,saveAnyway:`Salvar mesmo assim`},title:`Impressoras`,addPrinter:`Adicionar Impressora`,editPrinter:`Editar Impressora`,deletePrinter:`Excluir Impressora`,printerName:`Nome da Impressora`,serialNumber:`Número de Série`,ipAddress:`Endereço IP / Nome do Host`,accessCode:`Código de Acesso`,model:`Modelo`,nozzleCount:`Número de Bicos`,autoArchive:`Arquivamento Automático`,status:{available:`Disponível`,idle:`Ocioso`,printing:`Imprimindo`,paused:`Pausado`,offline:`Offline`,problem:`Problema`,error:`Erro`,finished:`Concluído`,unknown:`Desconhecido`},temperatures:{nozzle:`Bico`,bed:`Cama`,chamber:`Câmara`},heaterHistory:{title:`Histórico de aquecedores`,openLabel:`Ver histórico de aquecedores`,nozzle:`Bico`,nozzle2:`Bico 2`,bed:`Cama`,chamber:`Câmara`,error:`Falha ao carregar histórico`,empty:`Nenhum dado registrado ainda`},progress:`{{percent}}% concluído`,timeRemaining:`{{time}} restante`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,maintenanceOk:`Manutenção OK`,maintenanceWarning:`{{count}} aviso`,maintenanceWarning_plural:`{{count}} avisos`,maintenanceDue:`{{count}} devido`,maintenanceDue_plural:`{{count}} devido`,sort:{name:`Nome`,status:`Status`,model:`Modelo`,location:`Localização`,eta:`Tempo restante`,ascending:`Ordem crescente`,descending:`Ordem decrescente`},cardSize:{small:`Cartões pequenos`,medium:`Cartões médios`,large:`Cartões grandes`,extraLarge:`Cartões extra grandes`},pageView:{openCamWallPage:`Abrir o mural de câmeras como página`,cards:`Cartões`,camWall:`Mural de câmeras`},camWall:{page:{tokenRejected:`Este link do mural de câmeras não é mais válido. O token pode ter expirado ou sido revogado.`,loadFailed:`Não foi possível carregar as impressoras.`},tileSize:{small:`Blocos pequenos`,medium:`Blocos médios`,large:`Blocos grandes`,extraLarge:`Blocos extra grandes`},noPrinters:`Nenhuma impressora para exibir`,noSignal:`Sem sinal`,live:`Ao vivo`,snap:`Foto`,off:`Desligado`,summary:`{{live}} ao vivo, {{snap}} fotos, {{total}} no total`,layer:`Camada {{cur}}/{{total}}`,timeLeft:`faltam {{time}}`,statusMode:{off:`Desligado`,compact:`Compacto`,full:`Completo`},settings:{title:`Configurações do mural de câmeras`,maxLive:`Máx. transmissões ao vivo`,maxLiveHint:`Quantos blocos transmitem ao vivo simultaneamente. Os demais atualizam como fotos.`,snapshotInterval:`Intervalo de foto (segundos)`,snapshotIntervalHint:`Com que frequência os blocos não ao vivo buscam uma nova foto.`,statusOverlay:`Sobreposição de status`,statusOverlayHint:`Compacto: apenas o selo de status. Completo: + progresso, camada e tempo restante.`}},hideOffline:`Ocultar offline`,nextAvailable:`Próximo disponível`,powerOn:`Ligar`,offlinePrintersWithPlugs:`Impressoras offline com tomadas inteligentes`,noPrintersConfigured:`Nenhuma impressora configurada ainda`,search:`Pesquisar impressoras...`,noSearchResults:`Nenhuma impressora corresponde à sua pesquisa ou filtros`,filter:{allStatuses:`Todos os status`,allLocations:`Todos os locais`},toolbar:{filters:`Filtros`,view:`Visualização`,actions:`Ações`},readyToPrint:`Pronto para imprimir`,external:`Externo`,ext:`Externo`,extL:`Ext-L`,extR:`Ext-R`,deleteArchives:`Excluir arquivos de impressão`,noLabel:`Sem etiqueta`,printPreview:`Pré-visualização de impressão`,width:`Largura`,height:`Altura`,noObjectsFound:`Nenhum objeto encontrado`,objectsLoadedOnPrintStart:`Objetos são carregados quando uma impressão começa`,willBeSkipped:`Será ignorado`,name:`Nome`,serialCannotBeChanged:`Número de série não pode ser alterado`,locationHelp:`Usado para agrupar impressoras e filtrar trabalhos na fila`,wifiSignal:{veryWeak:`Muito fraco`,weak:`Fraco`,fair:`Regular`,good:`Bom`,excellent:`Excelente`},maintenanceUpToDate:`Toda a manutenção está em dia - Clique para ver`,maintenance:{title:`Em manutenção`,subtitle:`Esta impressora está pausada — sem conexão, não elegível para a fila, sem enviar notificações.`,pillLabel:`Manutenção`,exitButton:`Sair da manutenção`,menuEnter:`Entrar no modo manutenção`,menuExit:`Sair do modo manutenção`,toastEntered:`{{name}} está agora em modo manutenção`,toastExited:`{{name}} está online novamente`,confirmMidPrintTitle:`Entrar em modo manutenção durante uma impressão?`,confirmMidPrintMessage:`{{name}} está imprimindo no momento. Entrar em modo manutenção desconectará o MQTT e interromperá o acompanhamento do progresso e as notificações de conclusão para este trabalho. Continuar?`,editFieldLabel:`Modo manutenção`,editFieldHelp:`Quando ativado, esta impressora é pausada do MQTT, despacho de fila e notificações — útil para reparos, instalações paralelas do Bambuddy ou suspensão temporária.`},chamberLightOn:`Ligar luz da câmara`,chamberLightOff:`Desligar luz da câmara`,files:`Arquivos`,browseFiles:`Procurar arquivos da impressora`,autoOffAfterPrint:`Desligamento automático após impressão`,autoOffExecuted:`Desligamento automático executado - ligue a impressora para reiniciar`,hmsErrors:`Erros HMS`,viewHmsErrors:`Ver {{count}} erro(s) HMS`,resume:`Retomar`,pause:`Pausar`,stop:`Parar`,camera:`Câmera`,skipObject:`Ignorar objeto`,reconnect:`Reconectar`,forceRefresh:`Forçar atualização`,forceRefreshSuccess:`Atualização solicitada`,mqttDebug:`Depuração MQTT`,printerInformation:`Informações da impressora`,copyToClipboard:`Copiar`,copied:`Copiado!`,state:`Estado`,wifiSignalLabel:`Sinal WiFi`,developerMode:`Modo desenvolvedor`,enabled:`Ativado`,disabled:`Desativado`,addedOn:`Adicionada em`,sdCard:`Cartão SD`,inserted:`Inserido`,notInserted:`Não inserido`,totalPrintHours:`Horas de impressão`,activeNozzle:`Ativo: {{nozzle}} bico`,amsSwitchInletTooltip:`Comutador de trajeto de filamento IN-{{inlet}} ({{side}}) — alimenta os dois bicos`,nozzleRack:`Suporte de bicos`,nozzleDocked:`Acoplado`,nozzleMounted:`Montado`,nozzleActive:`Ativo`,nozzleIdle:`Ocioso`,nozzleDiameter:`Diâmetro`,nozzleType:`Tipo`,nozzleStatus:`Status`,nozzleFilament:`Filamento`,nozzleWear:`Desgaste`,nozzleMaxTemp:`Temp Máx`,nozzleSerial:`Número de série`,nozzleHardenedSteel:`Aço Endurecido`,nozzleStainlessSteel:`Aço Inoxidável`,nozzleTungstenCarbide:`Carboneto de Tungstênio`,nozzleFlow:`Fluxo`,nozzleHighFlow:`Alto Fluxo`,nozzleStandardFlow:`Fluxo Padrão`,firmwareUpdate:`Atualização de Firmware`,firmwareInstructions:`No visor da impressora, vá para`,firmwareNav:`Navegar para`,settings:`Configurações`,firmware:`Firmware`,discoverPrinters:`Descobrir Impressoras`,searching:`Procurando...`,manualEntry:`Entrada Manual`,addFromCloud:`Adicionar da Nuvem`,toast:{printerDeleted:`Impressora excluída`,missingSpoolAssignment:`Impressão iniciada em {{printer}}. Atribuição de bobina ausente para: {{slots}}`,killSwitchTriggered:`O bloqueio de segurança de cobrança interrompeu uma impressão não autorizada em {{printer}}: {{filename}}`,billingChargeFailed:`A cobrança de {{filename}} em {{printer}} falhou. A reserva do orçamento foi mantida; verifique os logs do servidor.`,assignmentVerified:`Filamento carregado no compartimento {{slot}} ({{printer}})`,assignmentVerifiedNoKprofile:`Compartimento {{slot}} em {{printer}} carregado, mas o perfil de calibração de fluxo (perfil K) não foi aplicado`,assignmentNotConfirmed:`Não foi possível confirmar a atribuição do compartimento {{slot}} em {{printer}} — verifique o compartimento AMS`,printerAdded:`Impressora adicionada`,printerUpdated:`Impressora atualizada`,failedToDelete:`Falha ao excluir impressora`,failedToAdd:`Falha ao adicionar impressora`,connectionFailedNotAdded:`Não foi possível conectar à impressora. Verifique o IP, o número de série e o código de acesso, e confirme que o modo somente LAN está ativado. A impressora não foi adicionada.`,failedToUpdate:`Falha ao atualizar impressora`,commandSent:`Comando enviado`,failedToSendCommand:`Falha ao enviar comando`,turnedOn:`{{name}} ligado`,failedToPowerOn:`Falha ao ligar {{name}}`,scriptTriggered:`Script acionado`,printStopped:`Impressão parada`,printPaused:`Impressão pausada`,printResumed:`Impressão retomada`,referenceDeleted:`Referência excluída`,detectionAreaSaved:`Área de detecção salva`,failedToRunScript:`Falha ao executar script`,failedToStopPrint:`Falha ao parar impressão`,failedToPausePrint:`Falha ao pausar impressão`,failedToResumePrint:`Falha ao retomar impressão`,failedToControlChamberLight:`Falha ao controlar a luz da câmara`,failedToSetSpeed:`Falha ao definir a velocidade de impressão`,failedToUpdateSetting:`Falha ao atualizar configuração`,failedToSkipObjects:`Falha ao ignorar objetos`,failedToRereadRfid:`Falha ao reler RFID`,failedToCheckPlate:`Falha ao verificar a placa`,failedToUpdateLabel:`Falha ao atualizar etiqueta`,failedToDeleteReference:`Falha ao excluir referência`,failedToSaveDetectionArea:`Falha ao salvar área de detecção`,plateCheckEnabled:`Verificação da placa ativada`,plateCheckDisabled:`Verificação da placa desativada`,calibrationSaved:`Calibração salva!`,calibrationFailed:`Falha na calibração`,rfidRereadInitiated:`Releitura de RFID iniciada`,loadInitiated:`Carregando filamento…`,unloadInitiated:`Descarregando filamento…`,failedToLoad:`Falha ao carregar filamento`,failedToUnload:`Falha ao descarregar filamento`},connection:{connected:`Conectado`,offline:`Offline`},plateStatus:{markCleared:`Marcar placa como liberada`,cleared:`Placa liberada`,notCleared:`Placa não liberada`,inUse:`Placa em uso`},queue:{inQueue:`{{count}} impressão na fila`,inQueue_plural:`{{count}} impressões na fila`},controls:`Controles`,rfid:{reread:`Releitura de RFID`},ams:{load:`Carregar`,unload:`Descarregar`,feedTitle:`Carregar {{slot}} em qual bico?`,feedPrompt:`O Filament Track Switch pode direcionar este slot para qualquer um dos hotends. Escolha qual alimentar.`,feedLeft:`Bico esquerdo`,feedRight:`Bico direito`,feedAlreadyLoaded:`Já carregado`,switchNotReady:`O Filament Track Switch ainda não foi configurado. Atribua cada AMS a uma entrada na impressora e tente novamente.`},bedJog:{limitWarning:`Os limites de curso não são aplicados durante movimentos manuais — um bug do firmware da Bambu ignora os fins de curso por software em comandos remotos. Mova com cuidado para evitar colisões.`,title:`Controles de movimento`,bed:`Mesa`,step:`Passo (mm)`,up:`Mover mesa para cima`,down:`Mover mesa para baixo`,toolheadUp:`Mover cabeçote para cima`,toolheadDown:`Mover cabeçote para baixo`,disabledWhilePrinting:`Desativado durante a impressão`,notHomedTitle:`Impressora não referenciada`,notHomedMessage:`A impressora não foi referenciada desde a última impressão. Execute a referência automática primeiro para um posicionamento seguro (estaciona o cabeçote, depois referencia X, Y e Z), ou mova assim mesmo — os fins de curso de software serão ignorados.`,homeZ:`Referência automática`,moveAnyway:`Mover assim mesmo`,homingStarted:`Referenciando impressora automaticamente…`},permission:{noAdd:`Você não tem permissão para adicionar impressoras`,noEdit:`Você não tem permissão para editar impressoras`,noDelete:`Você não tem permissão para excluir impressoras`,noControl:`Você não tem permissão para controlar impressoras`,noFiles:`Você não tem permissão para acessar arquivos de impressora`,noAmsRfid:`Você não tem permissão para reler RFID AMS`,noSmartPlugControl:`Você não tem permissão para controlar tomadas inteligentes`,noCamera:`Você não tem permissão para visualizar câmeras`},modal:{addTitle:`Adicionar Impressora`,editTitle:`Editar Impressora`,myPrinter:`Minha Impressora`,selectModel:`Selecionar modelo...`,locationGroup:`Localização / Grupo (opcional)`,locationPlaceholder:`ex.: Oficina, Escritório, Porão`,autoArchiveLabel:`Arquivar automaticamente impressões concluídas`,wearCostLabel:`Custo de desgaste por hora de impressão ({{currency}})`,wearCostHelp:`Quanto uma hora de impressão custa a esta impressora em desgaste e peças. É somado ao custo de cada impressão a partir de agora; impressões anteriores não mudam. Deixe vazio para desativar.`,fromPrinterSettings:`A partir das configurações da impressora`,modelOptional:`Modelo (opcional)`,saveChanges:`Salvar alterações`},skipObjects:{tooltip:`Ignorar objetos`,onlyWhilePrinting:`Ignorar objetos (apenas durante a impressão)`,requiresMultiple:`Ignorar objetos (requer 2+ objetos)`,title:`Ignorar Objetos`,matchIdsInfo:`Correspondência de IDs com o display da sua impressora`,printerShowsIds:`A tela da impressora mostra os IDs dos objetos na placa de construção`,skipSelected:`Ignorar Selecionados`,skipping:`Ignorando...`,noObjectsSelected:`Nenhum objeto selecionado`,selectObjectsToSkip:`Selecione os objetos que deseja ignorar na impressão atual`,skipped:`Ignorado`,objectsSkipped:`Objetos ignorados`,activeCount:`{{count}} ativo`,waitForLayer:`Aguarde a camada 2+ para ignorar objetos (atualmente na camada {{layer}})`,skip:`Ignorar`,confirmTitle:`Ignorar Objeto?`,confirmMessage:`Tem certeza de que deseja ignorar "{{name}}"? Isso não pode ser desfeito.`,confirmAllMessage:`Todos os objetos restantes estão selecionados. Isso interromperá o trabalho de impressão. Continuar?`,confirmMultipleMessage:`Ignorar {{count}} objetos selecionados? Isso não pode ser desfeito.`},confirm:{deleteTitle:`Excluir Impressora`,deleteMessage:`Tem certeza de que deseja excluir "{{name}}"? Isso removerá todas as configurações de conexão.`,deleteArchivesNote:`Todo o histórico de impressão desta impressora será permanentemente excluído.`,keepArchivesNote:`O histórico de impressão será mantido, mas não estará mais associado a esta impressora.`,stopTitle:`Parar Impressão`,stopMessage:`Tem certeza de que deseja parar a impressão atual em "{{name}}"? Isso cancelará o trabalho de impressão.`,stopButton:`Parar Impressão`,pauseTitle:`Pausar Impressão`,pauseMessage:`Tem certeza de que deseja pausar a impressão atual em "{{name}}"?`,pauseButton:`Pausar Impressão`,resumeTitle:`Retomar Impressão`,resumeMessage:`Tem certeza de que deseja retomar a impressão em "{{name}}"?`,resumeButton:`Retomar Impressão`,powerOnTitle:`Ligar Impressora`,powerOnMessage:`Tem certeza de que deseja ligar a impressora "{{name}}"?`,powerOnButton:`Ligar`,powerOffTitle:`Desligar Impressora`,powerOffMessage:`Tem certeza de que deseja desligar a impressora "{{name}}"?`,powerOffWarning:`AVISO: "{{name}}" está imprimindo no momento! Tem certeza de que deseja desligar a impressora? Isso interromperá a impressão e pode danificar a impressora.`,powerOffButton:`Desligar`,haToggleTitle:`Alternar "{{name}}"`,haToggleMessage:`Alternar a entidade Home Assistant {{entity}}? Isso pode desligar a energia se estiver ligada no momento.`,haToggleWarning:`AVISO: "{{name}}" está imprimindo no momento! Alternar {{entity}} pode cortar a energia e interromper a impressão. Continuar?`,haToggleButton:`Alternar`},bulk:{select:`Selecionar`,selectAll:`Selecionar tudo`,selectByLocation:`Selecionar por local`,selected:`{{count}} selecionado(s)`,actions:{stop:`Parar`,pause:`Pausar`,resume:`Retomar`,clearPlate:`Limpar mesa`,clearHMS:`Limpar notificações`},confirm:{stopTitle:`Parar {{count}} impressões`,stopMessage:`Isso cancelará as impressões ativas em {{count}} impressora(s). Esta ação não pode ser desfeita.`,stopButton:`Parar todas`,pauseTitle:`Pausar {{count}} impressões`,pauseMessage:`Isso pausará as impressões ativas em {{count}} impressora(s).`,pauseButton:`Pausar todas`,clearPlateTitle:`Limpar {{count}} mesas de impressão`,clearPlateMessage:`Isso limpará a mesa de impressão em {{count}} impressora(s) e pode iniciar trabalhos na fila.`,clearPlateButton:`Limpar todas`},success:`{{action}} concluído em {{count}} impressora(s)`,partial:`{{succeeded}} bem-sucedido(s), {{failed}} falhou/falharam`,noneApplicable:`Nenhuma impressora selecionada está no estado correto para esta ação`,selectByState:`Selecionar por estado`},discovery:{title:`Descobrir Impressoras`,searching:`Procurando...`,scanning:`Escaneando...`,scanProgress:`Escaneando... {{scanned}}/{{total}}`,foundPrinters:`{{count}} impressora(s) encontrada(s)`,noPrintersFound:`Nenhuma impressora encontrada`,noPrintersFoundSubnet:`Nenhuma impressora encontrada na sub-rede especificada.`,noPrintersFoundNetwork:`Nenhuma impressora encontrada na rede.`,allConfigured:`Todas as impressoras descobertas já estão configuradas.`,alreadyAdded:`Já adicionada`,select:`Selecionar`,manualEntry:`Entrada Manual`,addFromCloud:`Adicionar da Nuvem`,subnetToScan:`Sub-rede para escanear`,dockerNote:`Docker detectado. Insira a sub-rede da sua impressora em notação CIDR. Requer network_mode: host no docker-compose.yml.`,scanSubnet:`Escanear Sub-rede para Impressoras`,discoverNetwork:`Descobrir Impressoras na Rede`,scanningSubnet:`Escaneando sub-rede para impressoras Bambu...`,scanningNetwork:`Escaneando rede...`,serialRequired:`Serial necessário`,unknown:`Desconhecido`,failedToStart:`Falha ao iniciar a descoberta`,customSubnetOption:`Sub-rede personalizada...`,customSubnetLabel:`Sub-rede personalizada (CIDR)`,customSubnetNote:`Use uma sub-rede personalizada se sua impressora estiver em uma rede diferente deste servidor. As portas FTP (990) e MQTT (8883) devem estar acessíveis através do limite de roteamento.`},drying:{start:`Iniciar secagem`,stop:`Parar secagem`,temperature:`Temperatura`,duration:`Duração`,hours:`horas`,timeRemaining:`{{time}} restante`,active:`Secagem`,notRunning:`Secagem não está em andamento`,notRunningHint:`A impressora tem um temporizador de secagem, mas a contagem regressiva parou e o AMS não informa nenhuma fase de secagem. O ciclo nunca começou ou foi pausado, por exemplo pelo limite de energia ou pela impressão em andamento.`,targetSummary:`{{filament}} @ {{temp}}°C`,notSupported:`Secagem não suportada`,powerRequired:`Conecte o adaptador de energia AMS para ativar a secagem`,cannotDryNow:`O AMS não pode iniciar a secagem no momento`,startingDrying:`Iniciando secagem...`,toastCommandSent:`Comando de secagem enviado`,toastStopped:`Secagem interrompida`,toastNotStarted:`A impressora aceitou o comando, mas o AMS não iniciou a secagem. Verifique se o adaptador de energia do AMS está conectado e se a impressora está ociosa.`,screenOnly:`Nesta impressora, a secagem do AMS só pode ser controlada pela tela da própria impressora (limitação da Bambu)`,stoppingDrying:`Parando secagem...`,rotateTray:`Girar o carretel durante a secagem`,rotateUnavailableReason:`Indisponível — um slot deste AMS está carregado em direção ao cabeçote. O carretel está travado pelo tubo de alimentação e não pode girar. Retraia o filamento primeiro.`,startMode:`Horário de início`,modeNow:`Agora`,modeDelay:`Após um atraso`,modeAtTime:`Em um horário`,schedule:`Agendar`,scheduledFor:`Secagem agendada para {{time}}`,scheduledAsap:`Secagem agendada (aguardando a impressora)`,cancelScheduled:`Cancelar secagem agendada`,scheduleFailed:`Falha ao agendar a secagem`,retractFilament:`Recolha o filamento na saída do AMS para iniciar a secagem`,waitingAmsNotFound:`Aguardando a detecção do AMS`,waitingOffline:`Aguardando a impressora ficar online`,waitingPrinterBusy:`Aguardando a impressora ficar livre`,waitingAlreadyDrying:`Aguardando o ciclo de secagem atual terminar`,waitingInterrupted:`Interrompida, será retomada quando a impressora estiver livre`,scheduleFailedReason:`Falha na secagem agendada: {{reason}}`,scheduleFailedUnknown:`Erro desconhecido`,scheduleFailedDidNotStart:`A impressora aceitou o comando, mas o AMS não começou a secar`,dismissFailed:`Dispensar`},amsBackup:{titleOn:`AMS Filament Backup está LIGADO. Clique para desativar.`,titleOff:`AMS Filament Backup está DESLIGADO. Clique para ativar.`,titleUnknown:`Estado do AMS Filament Backup indisponível nesta impressora.`,toastEnabled:`AMS Filament Backup ativado`,toastDisabled:`AMS Filament Backup desativado`,modalTitle:`AMS Filament Backup`,modalHelp:`Quando o slot ativo termina, a impressora alterna para slots com o mesmo preset e cor nesta ordem.`,modalNoSlots:`Nenhum filamento carregado.`,modalNoPairs:`Sem pares de backup — nenhum par de slots compartilha preset e cor.`,extruderRightShort:`D`,extruderLeftShort:`E`,stateOn:`Ativado`,stateOff:`Desativado`,stateUnknown:`Não suportado nesta impressora`},activeJobSlot:{title:`Este slot é o filamento {{n}} na impressão ativa`,ariaLabel:`Slot de impressão ativa {{n}}`},expectedSlot:{title:`A impressora está aguardando filamento neste slot`,ariaLabel:`Slot de filamento esperado {{n}}`,label:`{{ams}} · Slot {{slot}}`,external:`Bobina externa`},filaments:`Filamentos`,externalSpool:{hide:`Ocultar bobina externa`,show:`Mostrar bobina externa`},openCameraOverlay:`Abrir sobreposição da câmera`,openCameraWindow:`Abrir câmera em nova janela`,firmwareUpdateAvailable:`Atualização de firmware disponível: {{current}} → {{latest}}`,firmwareUpToDate:`Firmware {{version}} — Atualizado`,firmwareUpdateButton:`Atualizar`,plateDetection:{noPermission:`Você não tem permissão para atualizar impressoras`,enabledClick:`Verificação da placa ativada - Clique para desativar`,disabledClick:`Verificação da placa desativada - Clique para ativar`,manageCalibration:`Gerenciar calibração da detecção da placa`,calibrationRequired:`Calibração necessária`,calibrationInstructions:`Certifique-se de que a placa de construção esteja <strong>completamente vazia</strong>, em seguida clique em Calibrar.`,calibrationDescription:`A calibração captura uma imagem de referência da placa vazia. Verificações futuras compararão com esta referência para detectar objetos.`,calibrationTip:`<strong>Dica:</strong> Você pode armazenar até 5 calibrações para diferentes placas. O sistema usa automaticamente a melhor correspondência ao verificar.`,plateEmpty:`A placa parece vazia`,objectsDetected:`Objetos detectados na placa`,confidence:`Confiança`,difference:`Diferença`,analysisPreview:`Pré-visualização da análise:`,analysisLegend:`Caixa verde = área de detecção, Sobreposição vermelha = diferenças em relação à calibração`,savedReferences:`Referências salvas ({{count}}/{{max}})`,deleteReference:`Excluir referência`,labelPlaceholder:`Etiqueta...`,clickToEdit:`{{label}} - Clique para editar`,clickToAddLabel:`Clique para adicionar etiqueta`},speed:{title:`Velocidade de impressão`,silent:`Silencioso (50%)`,standard:`Padrão (100%)`,sport:`Sport (124%)`,ludicrous:`Ludicrous (166%)`},airduct:{title:`Modo do duto de ar`,cooling:`Resfriamento`,heating:`Aquecimento`},noSdCard:`Sem SD`,door:{open:`Aberta`,closed:`Fechada`},fans:{partCooling:`Ventilador de resfriamento da peça`,auxiliary:`Ventilador auxiliar`,leftAuxiliary:`Ventilador auxiliar esquerdo`,exhaust:`Exaustão`,chamber:`Ventilador da câmara`},clickToViewHmsErrors:`Clique para ver erros do HMS`,aiDetection:{safe:`Seguro`,warning:`Aviso`,failure:`Falha`,idle:`Ocioso`,error:`Não verificando`,unknown:`Iniciando`,tooltipError:`A Detecção de Falhas por IA não está verificando esta impressão: {{reason}} - clique para detalhes`,tooltipUnknown:`Detecção de Falhas por IA: aguardando o primeiro resultado - clique para detalhes`,errorHint:`Esta impressão não está sendo verificada. A detecção será retomada automaticamente assim que o problema abaixo for resolvido.`,tooltip:`Detecção de Falhas por IA: {{status}} (pontuação {{score}}) - clique para detalhes`,tooltipIdle:`Detecção de Falhas por IA ativada - o monitoramento começa na próxima impressão - clique para detalhes`,modalTitle:`Detecção de Falhas por IA - {{name}}`,currentStatus:`Status`,score:`Pontuação`,framesAnalyzed:`Quadros analisados`,idleHint:`Nenhuma impressão está sendo monitorada no momento. O monitoramento começa automaticamente na próxima impressão.`,lastError:`Último erro`,openSettings:`Abrir configurações`},estimatedCompletion:`Tempo estimado de conclusão`,plateNumber:`Placa {{number}}`,slotOptions:`Opções de slot`,amsPopup:{friendlyName:`Nome do AMS`,friendlyNamePlaceholder:`ex.: Nome amigável do AMS`,serialNumber:`Número de série`,firmwareVersion:`Firmware`,save:`Salvar`,clear:`Limpar`,noEditPermission:`Você não tem permissão para renomear unidades AMS`},firmwareModal:{title:`Atualização de Firmware`,titleUpToDate:`Informações do Firmware`,currentVersion:`Atual:`,latestVersion:`Última:`,releaseNotes:`Notas de Lançamento`,checkingPrereqs:`Verificando pré-requisitos...`,sdCardReady:`Cartão SD pronto. Clique abaixo para enviar o firmware.`,uploadedSuccess:`Firmware enviado para o cartão SD!`,applyInstructions:`Para aplicar a atualização na sua impressora:`,step1:`Na tela sensível ao toque da impressora, vá para <strong>Configurações</strong>`,step2:`Navegue até <strong>Firmware</strong>`,step3:`Selecione <strong>Atualizar a partir do cartão SD</strong>`,step4:`A atualização levará de 10 a 20 minutos`,done:`Concluído`,starting:`Iniciando...`,uploadFirmware:`Enviar Firmware`,uploadFailed:`Falha ao iniciar o envio: {{error}}`,uploadedToast:`Firmware enviado! Inicie a atualização na tela da impressora.`,availableVersions:`Versões disponíveis`,usable:`Utilizável`,unavailable:`Indisponível`,installed:`Instalada`,newerBadge:`mais recente`,olderBadge:`mais antiga`,currentBadge:`atual`},accessCodePlaceholder:`Deixe vazio para manter o atual`,roi:{title:`Área de Detecção (ROI)`,xStart:`Início X`,yStart:`Início Y`,width:`Largura`,height:`Altura`,instruction:`Ajuste a área de detecção para focar na placa de construção. A caixa verde na pré-visualização mostra a área atual.`},developerModeWarning:`O modo desenvolvedor LAN não está ativado em: {{names}}. Alguns recursos podem não funcionar.`,howToEnable:`Como ativar`,incompatibleFile:`Este arquivo foi fatiado para {{slicedFor}}, mas esta impressora é uma {{printerModel}}`,dropNotPrintable:`Apenas arquivos .gcode e .gcode.3mf podem ser impressos`,dropToPrint:`Solte para imprimir`,dropToQueue:`Solte para adicionar à fila`},archives:{media:{title:`Vídeos da impressão`,download:`Baixar vídeos da impressão`,searching:`Procurando vídeos na impressora…`,searchFailed:`Não foi possível procurar vídeos na impressora.`,none:`Nenhum timelapse ou trecho da câmera IP foi encontrado para esta impressão.`,attachedTimelapse:`Timelapse anexado`,printerFiles:`Arquivos ainda presentes na impressora`,downloadSelected:`Baixar selecionados`,printerMissing:`A impressora não está mais configurada`,timelapseUnavailable:`Não foi possível ler o diretório de timelapses`,ipcamUnavailable:`Não foi possível ler o diretório da câmera IP`},title:`Arquivos de Impressão`,no3mfBanner:{title:`Algumas impressões recentes não puderam ser arquivadas com miniaturas`,body:`O fatiador não deixou o arquivo .gcode.3mf no cartão SD da impressora, então o Bambuddy não conseguiu obter nem a miniatura nem os metadados do fatiador. Normalmente isso acontece porque "Armazenar arquivos enviados no armazenamento externo" está desligado no fatiador (aba Dispositivo do Bambu Studio / OrcaSlicer).`,docsLink:`Ver passo 4 da instalação`,docsLinkInternalStorage:`Por que isso acontece`,titleInternalStorage:`Algumas impressões recentes ficaram no armazenamento interno da impressora`,bodyInternalStorage:`O Bambu Studio colocou o arquivo fatiado no armazenamento interno da impressora em vez do cartão, então o Bambuddy não tinha nada para ler via FTP. Na série H2, na P2S e na X2D o botão «Imprimir» sempre faz isso: só «Enviar» oferece escolha, e ela também vem com «Cache» por padrão. Essas impressões continuam arquivadas com nome e tempos, apenas sem miniatura nem metadados do fatiador. Para arquivos completos, inicie a impressão pelo Bambuddy ou fatie no OrcaSlicer, ou então no Bambu Studio use «Enviar» com «Externo» e inicie a impressão depois. Todos precisam de um cartão ou pendrive na impressora.`,titleNoExternalStorage:`Algumas impressões recentes não puderam ser arquivadas — sem armazenamento na impressora`,bodyNoExternalStorage:`A impressora não detecta cartão nem pendrive no slot, então o arquivo fatiado não tinha onde ficar e o Bambuddy nada para ler. Insira um e a próxima impressão será arquivada por completo.`,titleInternalHistory:`Algumas impressões recentes começaram a partir de um arquivo que já estava na impressora`,bodyInternalHistory:`Essas impressões saíram da própria biblioteca da impressora: uma reimpressão pela tela dela, um início pelo Handy ou um arquivo enviado antes e impresso depois. O Bambuddy lê os arquivos de impressão por FTP, que só serve o cartão ou o pendrive, enquanto a impressora guarda essa biblioteca em uma área que o FTP não alcança, então não havia nenhum 3MF para ler. Nenhuma opção do fatiador muda isso, porque nada foi enviado para essas impressões. Elas continuam arquivadas com nome e tempos, e «Editar Arquivo» permite preencher à mão o filamento usado. Para um arquivo completo, inicie a impressão pelo Bambuddy ou pelo seu fatiador.`,titleFtpsCooloff:`Algumas impressões recentes não puderam ser arquivadas — a impressora recusou a conexão de arquivos`,bodyFtpsCooloff:`O Bambuddy abriu a porta de transferência de arquivos da impressora (FTPS 990) e a impressora respondeu com algo que não é TLS, então nada pôde ser lido dela. Essas impressões continuam arquivadas com nome e tempos, apenas sem miniatura nem metadados do fatiador. Não é uma configuração do fatiador nem algo que você mudou — os mesmos modelos e firmwares funcionam normalmente em outras instalações, e uma impressora afetada costuma voltar a funcionar sozinha depois. Após uma falha dessas, o Bambuddy pausa as transferências para essa impressora por cinco minutos e volta a buscar o arquivo quando a pausa termina, de modo que um episódio curto se resolve sozinho; um cartão ainda vazio significa que a recusa durou mais que a nova tentativa. Ainda não se sabe o que provoca isso. Se continuar acontecendo, ative o registro de depuração na página Sistema e anexe um pacote de suporte ao seu relato.`,titleFtpTransferFailed:`Algumas impressões recentes não puderam ser arquivadas — a transferência do arquivo esgotou o tempo`,bodyFtpTransferFailed:`O arquivo fatiado estava no cartão da impressora e a impressora chegou a servi-lo, mas a transferência não terminou no tempo permitido. No início da impressão a impressora também cuida da câmera, das mensagens de status e do envio do trabalho, e um 3MF grande nem sempre consegue passar no meio disso. Essas impressões continuam arquivadas com nome e tempos, apenas sem miniatura nem metadados do fatiador. Não é uma configuração do fatiador nem algo que você mudou. O Bambuddy volta a buscar o arquivo três vezes ao longo dos dez minutos seguintes, então a maioria se resolve sozinha; um cartão ainda vazio significa que todas essas tentativas também esgotaram o tempo. Se continuar acontecendo, aumente Tempo limite de conexão em Configurações > Rede > Nova tentativa de FTP.`,dismissLabel:`Dispensar este aviso`},searchPlaceholder:`Pesquisar arquivos...`,filterByPrinter:`Filtrar por impressora`,filterByStatus:`Filtrar por status`,sortBy:`Ordenar por`,sortNewest:`Mais recentes primeiro`,sortOldest:`Mais antigos primeiro`,sortName:`Nome`,sortDuration:`Duração`,sortLargest:`Maiores primeiro`,sortSmallest:`Menores primeiro`,sortSize:`Tamanho`,noArchives:`Nenhum arquivo encontrado`,noArchivesSearch:`Nenhum arquivo corresponde à sua pesquisa`,originalPrintNotVisible:`Impressão original não visível - tente limpar os filtros`,noArchivesYet:`Ainda não há arquivos`,prints:`impressões`,pagination:{showing:`Mostrando`,to:`a`,of:`de`,show:`Mostrar`,page:`Página`,all:`Todos`},loadingArchives:`Carregando arquivos...`,releaseToUpload:`Solte para enviar`,showAll:`Mostrar todos`,showFavoritesOnly:`Mostrar apenas favoritos`,gridView:`Visualização em grade`,listView:`Visualização em lista`,calendarView:`Visualização em calendário`,logView:`Registro de impressão`,manageTags:`Gerenciar etiquetas`,showFailedPrints:`Mostrar impressões falhas`,hideFailedPrints:`Ocultar impressões falhas`,hideDuplicates:`Ocultar duplicados`,filterUnconfirmed:`Não confirmadas`,filterUnconfirmedTitle:`Mostrar apenas impressões que ainda aguardam o veredito de resultado`,viewOriginalPrint:`Clique para visualizar a impressão original (#{{id}})`,printTime:`Tempo de impressão`,filamentUsed:`Filamento usado`,cost:`Custo`,preview:`Pré-visualizar`,deleteArchive:`Excluir arquivo`,deleteConfirm:`Tem certeza de que deseja excluir este arquivo?`,favorite:`Favorito`,unfavorite:`Remover dos favoritos`,viewDetails:`Ver detalhes`,status:{completed:`Concluído`,failed:`Falhou`,stopped:`Parado`},toast:{source3mfAttached:`Arquivo de origem 3MF anexado: {{filename}}`,failedUploadSource3mf:`Falha ao enviar arquivo de origem 3MF`,source3mfRemoved:`Arquivo de origem 3MF removido`,failedRemoveSource3mf:`Falha ao remover arquivo de origem 3MF`,f3dAttached:`F3D anexado: {{filename}}`,failedUploadF3d:`Falha ao enviar F3D`,f3dRemoved:`F3D removido`,failedRemoveF3d:`Falha ao remover F3D`,timelapseAttached:`Timelapse anexado: {{filename}}`,timelapseAlreadyAttached:`Timelapse já anexado`,noMatchingTimelapse:`Nenhum timelapse correspondente encontrado`,failedScanTimelapse:`Falha ao escanear timelapse`,failedAttachTimelapse:`Falha ao anexar timelapse`,timelapseRemoved:`Timelapse removido`,failedRemoveTimelapse:`Falha ao remover timelapse`,timelapseUploaded:`Timelapse enviado: {{filename}}`,failedUploadTimelapse:`Falha ao enviar timelapse`,archiveDeleted:`Arquivo excluído`,failedDeleteArchive:`Falha ao excluir arquivo`,addedToFavorites:`Adicionado aos favoritos`,removedFromFavorites:`Removido dos favoritos`,projectUpdated:`Projeto atualizado`,failedUpdateProject:`Falha ao atualizar projeto`,linkCopied:`Link copiado para a área de transferência`,failedCopyLink:`Falha ao copiar link`,photoDeleted:`Foto excluída`,failedDeletePhoto:`Falha ao excluir foto`,failedDeleteArchives:`Falha ao excluir arquivos`,failedUpdateFavorites:`Falha ao atualizar favoritos`,exportDownloaded:`Exportação baixada`,exportFailed:`Falha na exportação`},menu:{print:`Imprimir`,openInBambuStudio:`Abrir no Slicer`,slice:`Fatiar`,externalLink:`Link externo`,viewOnMakerWorld:`Ver no MakerWorld`,confirmOutcome:`Confirmar Resultado`,preview3d:`Pré-visualização 3D`,viewTimelapse:`Ver Timelapse`,scanForTimelapse:`Escanear Timelapse`,uploadTimelapse:`Enviar Timelapse`,removeTimelapse:`Remover Timelapse`,downloadSource3mf:`Baixar Source 3MF`,uploadSource3mf:`Enviar Source 3MF`,replaceSource3mf:`Substituir Source 3MF`,removeSource3mf:`Remover Source 3MF`,uploadF3d:`Enviar F3D`,replaceF3d:`Substituir F3D`,downloadF3d:`Baixar F3D`,removeF3d:`Remover F3D`,download:`Baixar`,copyDownloadLink:`Copiar link de download`,qrCode:`Qr Code`,viewPhotos:`Ver fotos`,viewPhotosCount:`Ver fotos ({{count}})`,projectPage:`Página do projeto`,addToFavorites:`Adicionar aos favoritos`,removeFromFavorites:`Remover dos favoritos`,edit:`Editar`,printLog:`Histórico de impressões`,goToProject:`Ir para o projeto: {{name}}`,addToProject:`Adicionar ao projeto`,removeFromProject:`Remover do projeto`,loading:`Carregando...`,noProjectsAvailable:`Nenhum projeto disponível`,searchProjects:`Pesquisar projetos…`,select:`Selecionar`,deselect:`Desmarcar`,delete:`Excluir`},permission:{noReprint:`Você não tem permissão para reimprimir este arquivo`,noAddToQueue:`Você não tem permissão para adicionar à fila`,noUpdateArchives:`Você não tem permissão para atualizar arquivos`,noUploadFiles:`Você não tem permissão para enviar arquivos`,noDownload:`Você não tem permissão para baixar arquivos`,noCopyLink:`Você não tem permissão para copiar links de download`,noDelete:`Você não tem permissão para excluir este arquivo`,noEdit:`Você não tem permissão para editar esta entrada`,noCreate:`Você não tem permissão para criar arquivos`},platePicker:{title:`Selecione a placa para visualizar`,hint:`Este arquivo contém várias placas. Escolha uma para abrir no visualizador GCode.`,plateLabel:`Placa {{index}}`,objectCount:`{{count}} objeto`,objectCount_plural:`{{count}} objetos`,noGcode:`Este arquivo não contém G-code fatiado para visualizar. Abra-o no Bambu Studio para fatiar primeiro.`},card:{previousPlate:`Placa anterior`,nextPlate:`Próxima placa`,plateNumber:`Placa {{index}}`,moreOptions:`Clique com o botão direito para mais opções`,addToFavorites:`Adicionar aos favoritos`,removeFromFavorites:`Remover dos favoritos`,cancelled:`cancelado`,failed:`falha`,confirmPending:`resultado?`,confirmPendingTitle:`Esta impressão pediu um veredito de resultado — clique para responder`,rejected:`rejeitado`,rejectedTitle:`Concluída na impressora, marcada como rejeitada pelo usuário`,confirmedGood:`boa`,confirmedGoodTitle:`Confirmada como uma peça boa pelo usuário`,duplicate:`duplicado`,duplicateTitle:`Este modelo já foi impresso antes`,openSource3mf:`Abrir source 3MF no Bambu Studio (clique com o botão direito para mais opções)`,downloadF3d:`Baixar arquivo de design do Fusion 360`,viewTimelapse:`Ver timelapse`,viewPhoto:`Ver 1 foto`,viewPhotos:`Ver {{count}} fotos`,openFolder:`Abrir pasta: {{name}}`,slicedFile:`Arquivo fatiado - pronto para imprimir`,sourceFile:`Apenas arquivo fonte - nenhum mapeamento AMS disponível`,gcode:`GCODE`,source:`SOURCE`,project:`Projeto: {{name}}`,runsBadge:`{{count}} impressões`,runsBadgeTitle:`{{count}} impressões no total — {{successful}} bem-sucedidas, {{failed}} com falha. Clique para ver o histórico completo.`,estimated:`Estimado: {{time}}`,actual:`Real: {{time}}`,accuracy:`Precisão: {{percent}}%`,filament:`{{weight}} g`,layer:`{{count}} camada`,layers:`{{count}} camadas`,wearCost:`Desgaste da impressora`,costEstimate:`Estimativa — o custo final é definido quando a impressão termina`,object:`{{count}} objeto`,objects:`{{count}} objetos`,slicedFor:`Fatiado para {{model}}`,uploadedBy:`Enviado por`,noPermissionReprint:`Você não tem permissão para reimprimir`,noFileForReprint:`Nenhum arquivo 3MF disponível — o arquivo não pôde ser baixado da impressora quando a impressão foi registrada`,slicerAmsMapping:`Mapeamento de AMS salvo ({{printer}})`,slicerAmsMappingTooltip:`A escolha de slot AMS do fatiador foi salva para {{printer}}. Os números de slot só significam algo naquela impressora, portanto uma reimpressão só os reutiliza se voltar a mirar {{printer}}.`,noPermissionEdit:`Você não tem permissão para editar arquivos`,noPermissionDelete:`Você não tem permissão para excluir arquivos`,openInBambuStudio:`Abrir no Bambu Studio`,openInBambuStudioToSlice:`Abrir no Bambu Studio para fatiar`,slice:`Fatiar`,externalLink:`Link externo`,makerWorld:`MakerWorld – {{designer}}`,viewProject:`Ver projeto`,noExternalLink:`Nenhum link externo`,preview3d:`Visualização 3D`,download:`Baixar`,edit:`Editar`,delete:`Excluir`},runLog:{title:`Histórico de impressões`,modalTitle:`Histórico de impressões — {{name}}`,modalTitleFallback:`este arquivo`,empty:`Nenhum evento de impressão registrado para este arquivo ainda.`,col:{date:`Data`,status:`Status`,duration:`Duração`,filament:`Filamento`,cost:`Custo`},status:{completed:`Concluída`,failed:`Falhou`,cancelled:`Cancelada`,stopped:`Interrompida`,skipped:`Ignorada`,printing:`Imprimindo`}},modal:{deleteArchive:`Excluir Arquivo`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"? Esta ação não pode ser desfeita.`,deleteButton:`Excluir`,deletePurgeStats:`Remover também esta impressão das Quick Stats (filamento, tempo, custo, energia)`,deleteQueueItemsWarning:`{{count}} item(ns) de fila vinculado(s) a este arquivo também serão removidos.`,deleteBlockedByPrinting:`Não é possível excluir — {{count}} item(ns) de fila estão imprimindo agora. Pare a impressão primeiro e tente novamente.`,removeSource3mf:`Remover Source 3MF`,removeSource3mfConfirm:`Tem certeza de que deseja remover o arquivo source 3MF de "{{name}}"? Isso excluirá o arquivo original do projeto do fatiador.`,removeButton:`Remover`,removeF3d:`Remover F3D`,removeF3dConfirm:`Tem certeza de que deseja remover o arquivo de design do Fusion 360 de "{{name}}"?`,removeTimelapse:`Remover Timelapse`,removeTimelapseConfirm:`Tem certeza de que deseja remover o vídeo timelapse de "{{name}}"?`,timelapse:`{{name}} – Timelapse`,selectTimelapse:`Selecionar Timelapse`,selectTimelapseDesc:`Nenhuma correspondência automática encontrada. Selecione o timelapse para esta impressão:`,deleteArchives:`Excluir Arquivos`,deleteArchivesConfirm:`Tem certeza de que deseja excluir {{count}} arquivo(s)? Esta ação não pode ser desfeita.`,deleteCount:`Excluir {{count}}`},page:{title:`Arquivos`,printsCount:`{{filtered}} de {{total}} impressões`,dropFilesHere:`Solte arquivos .3mf aqui`,releaseToUpload:`Solte para enviar`,only3mfSupported:`Apenas arquivos .3mf são suportados`,close:`Fechar`,selected:`{{count}} selecionado(s)`,selectAll:`Selecionar Todos`,tags:`Etiquetas`,project:`Projeto`,favorite:`Favorito`,delete:`Excluir`,toggledFavorites:`Favoritos alternados para {{count}} arquivo(s)`,failedUpdateFavorites:`Falha ao atualizar favoritos`,archivesDeleted:`{{count}} arquivo(s) excluído(s)`,failedDeleteArchives:`Falha ao excluir arquivos`,photoDeleted:`Foto excluída`,failedDeletePhoto:`Falha ao excluir foto`},list:{name:`Nome`,printer:`Impressora`,date:`Data`,size:`Tamanho`,actions:`Ações`,hasTimelapse:`Possui timelapse`},log:{date:`Data`,printName:`Nome da Impressão`,printer:`Impressora`,user:`Usuário`,status:`Status`,duration:`Duração`,filament:`Filamento`,filamentUsed:`Filamento usado`,cost:`Custo`,energy:`Energia`,energyCost:`Custo de energia`,wearCost:`Custo de desgaste`,completedAt:`Concluído`,columns:`Colunas`,sortBy:`Ordenar por {{column}}`,allPrinters:`Todas as Impressoras`,allUsers:`Todos os Usuários`,allStatuses:`Todos os Status`,cancelled:`Cancelado`,skipped:`Ignorado`,dateFrom:`De`,dateTo:`Até`,noEntries:`Nenhuma entrada de registro de impressão encontrada`,showing:`Mostrando {{count}} de {{total}} entradas`,rowsPerPage:`Linhas`,page:`Página`,prev:`Anterior`,next:`Próxima`,clearLog:`Limpar Registro`,clearLogTitle:`Limpar Registro de Impressão`,clearLogConfirm:`Todas as entradas do registro de impressão serão permanentemente excluídas. Arquivos e itens da fila não serão afetados. Esta ação não pode ser desfeita. Tem certeza?`,clearLogButton:`Limpar Tudo`,cleared:`{{count}} entradas do registro de impressão limpas`,clearFailed:`Falha ao limpar o registro de impressão`,deleteEntryTitle:`Excluir entrada do registro de impressão`,deleteEntryConfirm:`Esta entrada será removida do registro e suas contribuições de filamento, tempo e custo desaparecerão das estatísticas rápidas. O arquivo correspondente (se houver) não é afetado. Esta ação não pode ser desfeita.`,entryDeleted:`Entrada do registro de impressão excluída`,entryDeleteFailed:`Falha ao excluir entrada do registro de impressão`,editEntryTitle:`Editar entrada do registro de impressão`,editEntryDescription:`Classifique esta impressão. O widget Análise de falhas agrupa por esses valores, então as atualizações são refletidas nas estatísticas imediatamente.`,entryUpdated:`Entrada do registro atualizada`,entryUpdateFailed:`Falha ao atualizar a entrada do registro`,statuses:{completed:`Concluída`,failed:`Falhou`,stopped:`Parada`,cancelled:`Cancelada`,skipped:`Ignorada`}}},dispatchToast:{untitled:`Trabalho de impressão`,startingPrints:`Iniciando impressões`,progressSummary:`{{complete}}/{{total}} concluídas • Processando: {{processing}}`,expandDetails:`Expandir detalhes do envio`,collapseDetails:`Recolher detalhes do envio`,awaitingPrinter:`Aguardando impressora…`,status:{processing:`Processando`,completed:`Concluída`,failed:`Falhou`},failed:{generic:`Falha no envio`,upload_failed:`Falha ao enviar para a impressora`,start_command_failed:`Impressora rejeitou o comando de início`},dismiss:`Fechar`},pipelineRuns:{title:`Execuções de pipeline`,loading:`Carregando…`,empty:`Nenhuma execução de pipeline ainda.`,filter:{pipeline:`Pipeline`,status:`Status`,target:`Destino`,all:`Todas`,allPipelines:`Todas as pipelines`,allStatus:`Todos os status`,allTargets:`Todos os destinos`,clear:`Limpar filtros`,noMatches:`Nenhuma execução corresponde aos filtros atuais.`},totalCount_one:`{{n}} execução`,totalCount_other:`{{n}} execuções`,copies:`{{n}} cópias`,failedCount:`{{n}} falharam`,copyN:`Cópia {{n}}`,retryFailed:`Repetir falhas`,retryOf:`nova tentativa de #{{n}}`,pagination:`{{start}}–{{end}} de {{total}}`,toast:{cancelled:`Execução cancelada`,cancelFailed:`Cancelamento falhou`,retryStarted:`Nova tentativa iniciada`,retryFailed:`Nova tentativa falhou`,cleared:`{{n}} execuções limpas`,clearFailed:`Falha ao limpar`},clearLog:`Limpar histórico`,clearConfirmTitle:`Limpar histórico?`,clearConfirmBody:`Excluir todas as execuções de pipeline concluídas, falhas, canceladas e com falha parcial? Execuções em andamento são mantidas. Isso não pode ser desfeito.`,clearConfirmAction:`Limpar`,jobStatus:{pending:`pendente`,awaiting_printer:`aguardando impressora`,queued:`na fila`,printing:`imprimindo`,completed:`concluída`,failed:`falhou`,cancelled:`cancelada`},cancelledByUser:`Cancelado pelo usuário`},queue:{filamentShort:{rowBadge:`Filamento insuficiente para a bobina atribuida`,rowTooltip:`O escalonador sinalizou este item. Clique em Play para ver o deficit por slot e decidir se quer imprimir mesmo assim.`,confirmTitle:`Filamento insuficiente`,confirmIntro:`A bobina atribuida nao pode cobrir pelo menos um slot. Imprimir mesmo assim?`,lineItem:`Slot {{slot}}: precisa de {{required}} g, restam {{remaining}} g`,unknown:`desconhecido`,printAnyway:`Imprimir mesmo assim`},filamentMissing:{confirmTitle:`Filamento nao carregado`,confirmIntro:`A impressora nao tem nenhuma bandeja com este filamento. Carregue-o e pressione Iniciar novamente, ou imprima mesmo assim:`},slicerAmsMapping:{rowBadge:`Slots AMS salvos para esta impressora`,rowTooltip:`Este arquivo mantém os slots AMS exatos escolhidos pelo fatiador, salvos para a impressora deste item. Uma reimpressão nela pode reutilizar esses carretéis em vez de casar novamente por tipo e cor.`},title:`Fila de Impressão`,subtitle:`Agende e gerencie seus trabalhos de impressão`,editQueueItem:`Editar Item da Fila`,selectAllPlates:`Selecionar todas as {{count}} placas`,deselectAll:`Desmarcar tudo`,printQueued:`Impressão adicionada à fila`,printQueuedWillStartWhenIdle:`Iniciará quando a impressora estiver ociosa`,itemsQueued:`{{count}} itens adicionados à fila`,sending:`Enviando...`,sendingProgress:`Enviando {{current}}/{{total}}...`,adding:`Adicionando...`,addingProgress:`Adicionando {{current}}/{{total}}...`,savingProgress:`Salvando {{current}}/{{total}}...`,clearQueue:`Limpar Fila`,clearHistory:`Limpar Histórico`,emptyQueue:`Fila vazia`,position:`Posição`,scheduledTime:`Hora Agendada`,moveUp:`Mover para Cima`,moveDown:`Mover para Baixo`,startNow:`Iniciar Agora`,printingInProgress:`Impressão em andamento...`,viewArchive:`Ver Arquivo`,viewInFileManager:`Ver no Gerenciador de Arquivos`,itemCount:`{{count}} item`,itemCount_plural:`{{count}} itens`,dragToReorder:`Arraste para reordenar (apenas ASAP)`,reorderHint:`A posição afeta apenas itens ASAP. Itens agendados são executados no horário definido.`,sjf:{label:`SJF`,tooltip:`Trabalho mais curto primeiro — o agendador prioriza impressões mais curtas`},addedBy:`Adicionado por {{name}}`,nextInQueue:`Próximo na fila`,clearPlateSuccess:`Placa limpa — pronta para a próxima impressão`,plateNumber:`Placa {{index}}`,quantity:`Quantidade`,quantityHint:`Cria {{count}} itens na fila`,plateQuantityLabel:`Impressões de {{plate}}`,plateQuantityTotal_one:`{{count}} impressão no total`,plateQuantityTotal_other:`{{count}} impressões no total`,batchOrders:{title:`Pedidos em lote`,emptyTitle:`Nenhum pedido em lote`,emptyDescription:`Coloque na fila um arquivo com várias mesas, ou mais de uma cópia de uma mesa, e o pedido aparece aqui com o progresso.`,filter:{active:`Ativos`,completed:`Concluídos`,cancelled:`Cancelados`,all:`Todos`},status:{active:`Ativo`,completed:`Concluído`,cancelled:`Cancelado`},noTargets:`Apenas agrupamento`,noTargetsHint:`Criado antes das quantidades por mesa, então acompanha as impressões enfileiradas em vez de uma meta.`,dispatchRemaining:`Enfileirar {{count}} restantes`,dispatchPlate:`Enfileirar restantes`,strandedPlate:`Nada de onde copiar as configurações`,strandedNotice:`Não é possível enfileirar {{runs}} das {{owed}} impressões ainda devidas: essa placa não tem mais nenhuma impressão na fila ou concluída de onde copiar as configurações. Enfileire a placa uma vez a partir do arquivo ou cancele o pedido.`,dispatched:`Impressões restantes enfileiradas para {{name}}`,plateProgress:`{{completed}} de {{target}} prontas`,remaining:`{{count}} ainda devidas`,failed:`{{count}} falharam`,printing:`{{count}} imprimindo`,wholeFile:`Arquivo inteiro`,due:`Vence {{date}}`,costSoFar:`{{amount}} até agora`,costRemaining:`({{amount}} a gastar)`},activeBatches:`Lotes ativos`,batchProgress:`{{completed}} de {{total}} concluídos`,cancelBatch:`Cancelar restantes`,batchCancelled:`Itens restantes do lote cancelados`,cancelBatchConfirmTitle:`Cancelar lote`,cancelBatchConfirmMessage:`Encerrar este pedido? As impressões ainda na fila são canceladas e ele para de cobrar o que não produziu.`,batch:{defaultName:`Lote`,label:`{{count}} item`,label_plural:`{{count}} itens`,pendingCount:`{{count}} pendente`,pendingCount_plural:`{{count}} pendentes`,expand:`Expandir lote`,collapse:`Recolher lote`,groupAsBatch:`Agrupar como lote…`,groupAsBatchDescription:`Combine os {{count}} itens selecionados em um único lote recolhível.`,nameLabel:`Nome do lote`,namePlaceholder:`ex. Presentes de sexta`,create:`Criar lote`,ungroup:`Desagrupar`,ungroupConfirmTitle:`Desagrupar lote?`,ungroupConfirmMessage:`Os itens permanecerão na fila mas não estarão mais agrupados.`,dragGroup:`Arrastar grupo`},tabs:{batches:`Lotes`,queue:`Fila`,history:`Histórico`,timeline:`Linha do tempo`,pipelines:`Processos`},layout:{flatList:`Lista`,byPrinter:`Por impressora`,groupByPrinter:`Agrupar por impressora`},history:{emptyTitle:`Sem histórico ainda`,emptyDescription:`Impressões concluídas, canceladas e com falha aparecerão aqui.`,showMore:`Mostrar mais`,showingCount:`Mostrando {{shown}} de {{total}}`},dragGhost:{multiCount:`{{count}} itens`,batch:`{{name}} ({{count}} cópia)`,batch_plural:`{{name}} ({{count}} cópias)`},sections:{currentlyPrinting:`Imprimindo Atualmente`,queued:`Na Fila`,history:`Histórico`},status:{pending:`Pendente`,waiting:`Aguardando`,printing:`Imprimindo`,paused:`Pausado`,completed:`Concluído`,failed:`Falhou`,skipped:`Ignorado`,cancelled:`Cancelado`},summary:{printing:`Imprimindo`,queued:`Na Fila`,totalTime:`Tempo Total da Fila`,totalWeight:`Peso Total da Fila`,history:`Histórico`},filter:{allPrinters:`Todas as Impressoras`,unassigned:`Não Atribuído`,allStatus:`Todos os Status`,allLocations:`Todos os Locais`,any:`Qualquer`},sort:{byPosition:`Ordenar por Posição`,byName:`Ordenar por Nome`,byPrinter:`Ordenar por Impressora`,bySchedule:`Ordenar por Agendamento`,byDate:`Ordenar por Data`,ascendingOldest:`Crescente (mais antigo primeiro)`,descendingNewest:`Decrescente (mais recente primeiro)`},badges:{awaitingReview:`Aguardando revisão`,staged:`Preparado (início manual)`,requiresPrevious:`Requer sucesso anterior`,autoPowerOff:`Desligamento automático`,gcodeInjection:`G-code`,confirmOutcome:`Consulta de resultado`,confirmOutcomeTitle:`Pergunta como a impressão ficou depois de concluída`},empty:{title:`Nenhuma impressão agendada`,description:`Agende uma impressão a partir da página de Arquivos usando a opção "Agendar" no menu de contexto, ou arraste e solte arquivos para começar.`},time:{etaIfStartedNow:`Horário de conclusão se este trabalho começasse agora`,whenFree:`Quando uma impressora estiver livre`,overdue:`Atrasado`,now:`Agora`,lessThanMinute:`Em menos de um minuto`,inMinutes:`Em {{count}} min`,inHours:`Em {{count}} horas`},actions:{startPrint:`Iniciar Impressão`,stopPrint:`Parar Impressão`,requeue:`Reenfileirar`},bulkEdit:{title:`Editar {{count}} Item`,title_plural:`Editar {{count}} Itens`,description:`Apenas as configurações alteradas serão aplicadas aos itens selecionados.`,printer:`Impressora`,noChange:`— Sem alterações —`,queueOptions:`Opções de Fila`,staged:`Preparado (início manual)`,autoPowerOff:`Desligamento automático após impressão`,requirePrevious:`Requer sucesso anterior`,gcodeInjection:`Injetar G-code`,printOptions:`Opções de Impressão`,bedLevelling:`Nivelamento da Mesa`,flowCalibration:`Calibração de Fluxo`,vibrationCalibration:`Calibração de Vibração`,layerInspection:`Inspeção da Primeira Camada`,timelapse:`Timelapse`,useAms:`Usar AMS`,confirmOutcome:`Perguntar o resultado`,nozzleOffsetCali:`Calibração de offset dos bicos`,applyChanges:`Aplicar Alterações`,selectAll:`Selecionar Todos`,deselectAll:`Desmarcar Todos`,selected:`{{count}} selecionado(s)`,editSelected:`Editar Selecionados`,cancelSelected:`Cancelar Selecionados`},confirm:{cancelTitle:`Cancelar Impressão Agendada`,cancelMessage:`Tem certeza de que deseja cancelar "{{name}}"?`,stopTitle:`Parar Impressão`,stopMessage:`Tem certeza de que deseja parar a impressão atual "{{name}}"? Isso cancelará o trabalho de impressão na impressora.`,removeTitle:`Remover do Histórico`,removeMessage:`Tem certeza de que deseja remover "{{name}}" do histórico da fila?`,clearHistoryTitle:`Limpar Histórico`,clearHistoryMessage:`Tem certeza de que deseja remover todos os {{count}} itens do histórico?`,cancelButton:`Cancelar Impressão`,stopButton:`Parar Impressão`,thisPrint:`esta impressão`,thisItem:`este item`},toast:{cancelled:`Item da fila cancelado`,cancelFailed:`Falha ao cancelar item`,removed:`Item da fila removido`,keptForOrder:`Cancelado em vez de removido: é a única impressão de onde o pedido pode reenfileirar esta placa`,historyKeptForOrders:`{{kept}} mantidas porque pedidos ainda precisam delas.`,removeFailed:`Falha ao remover item`,stopped:`Impressão parada`,stopFailed:`Falha ao parar impressão`,released:`Impressão liberada para a fila`,startFailed:`Falha ao iniciar impressão`,reorderFailed:`Falha ao reordenar fila`,historyCleared:`Limpar {{count}} item(s) do histórico`,clearHistoryFailed:`Falha ao limpar histórico`,updateFailed:`Falha ao atualizar itens`,bulkCancelled:`Cancelado {{count}} item(s)`,bulkCancelFailed:`Falha ao cancelar itens`,batchCreated:`Lote "{{name}}" criado`,batchCreateFailed:`Falha ao criar o lote`,batchUngrouped:`{{count}} item(ns) desagrupado(s)`,batchUngroupFailed:`Falha ao desagrupar o lote`,resumedAfterFailure:`Fila retomada — {{restored}} trabalho(s) restaurado(s) para pendente`,resumeAfterFailureFailed:`Falha ao retomar a fila`},resumeAfterFailure:{banner:`{{printer}} está bloqueada por uma falha de impressão anterior — {{count}} trabalho(s) ignorado(s)`,bannerHint:`Resolva o problema da impressora e retome para restaurar os trabalhos ignorados e remover o bloqueio.`,button:`Retomar após falha`,confirmTitle:`Retomar a fila após a falha?`,confirmMessage:`Restaurar {{count}} trabalho(s) ignorado(s) em {{printer}} para pendente e remover o bloqueio da impressão anterior. Verifique se a impressora está pronta antes de continuar.`},timeline:{listView:`Lista`,timelineView:`Linha do tempo`,unassigned:`Não atribuído`,noData:`Nenhuma impressão agendada para este dia`,nothingCommitted:`Sem programações confirmadas nesta janela. Itens preparados, itens em espera e trabalhos ASAP em impressoras ociosas não são mostrados — defina um horário agendado ou libere um item preparado para vê-lo aqui.`,allDoneBy:`Todas as impressões concluídas até {{time}}`,staged:`Preparado`,filterAll:`Mostrar tudo`,filterPrinting:`Imprimindo`,filterQueued:`Na fila`,time:{anyMoment:`a qualquer momento`,minutesLeft:`{{minutes}}m restantes`,hoursLeft:`{{hours}}h restantes`,hoursMinutesLeft:`{{hours}}h {{minutes}}m restantes`},day:{previous:`Dia anterior`,next:`Próximo dia`,today:`Hoje`},window:{back12h:`Voltar 12 horas`,forward12h:`Avançar 12 horas`,now:`Agora`},printerColumnHeader:`Impressora`},permissions:{noStopPrint:`Você não tem permissão para parar impressões`,noStartPrint:`Você não tem permissão para iniciar impressões`,awaitingReview:`Aguardando revisão: alguém que gerencia a fila inicia este trabalho`,noEdit:`Você não tem permissão para editar este item da fila`,noCancel:`Você não tem permissão para cancelar este item da fila`,noRequeue:`Você não tem permissão para reenfileirar itens`,noRemove:`Você não tem permissão para remover este item da fila`,noClearHistory:`Você não tem permissão para limpar todo o histórico`,noEditItems:`Você não tem permissão para editar itens da fila`,noCancelItems:`Você não tem permissão para cancelar itens da fila`}},stats:{title:`Estatísticas`,subtitle:`Arraste os widgets para reorganizar. Clique no ícone de olho para ocultar.`,overview:`Visão Geral`,totalPrints:`Total de Impressões`,successRate:`Taxa de Sucesso`,totalPrintTime:`Tempo Total de Impressão`,printTime:`Tempo de Impressão`,totalFilament:`Filamento Total Utilizado`,filamentUsed:`Filamento Utilizado`,filamentCost:`Custo do Filamento`,totalCost:`Custo Total`,energyUsed:`Energia Utilizada`,energyCost:`Custo da Energia`,wearCost:`Custo de desgaste`,energyWarmingUpTooltip:`O monitoramento de energia ainda está coletando snapshots por hora. Os totais por período ficarão precisos quando houver pelo menos um snapshot antes do intervalo selecionado. Valores iniciais podem ser subestimados.`,averagePrintTime:`Tempo Médio de Impressão`,printsPerDay:`Impressões por Dia`,byPrinter:`Por Impressora`,printsByPrinter:`Impressões por Impressora`,byMaterial:`Por Material`,byMonth:`Por Mês`,last7Days:`Últimos 7 Dias`,last30Days:`Últimos 30 Dias`,last90Days:`Últimos 90 Dias`,allTime:`Todo o Tempo`,quickStats:`Estatísticas Rápidas`,printActivity:`Atividade de Impressão`,filamentTypes:`Tipos de Filamento`,filamentTrends:`Tendências de Filamento`,materialNumbers:{title:`Por Número de Material`,empty:`Nenhum número de material atribuído ainda. Adicione-os aos carretéis no inventário para agrupar consumo e custos aqui.`,loadFailed:`Não foi possível carregar as estatísticas por número de material.`,spools:`Carretéis`,remaining:`Restante`,consumed:`Consumido`,cost:`Custo`},suppliers:{title:`Por Fornecedor`,empty:`Nenhuma compra registrada ainda. Marque em um carretel de qual fornecedor ele foi comprado para agrupar consumo e custos aqui.`,error:`Não foi possível carregar as estatísticas de fornecedores`,supplier:`Fornecedor`,spools:`Carretéis`,remaining:`Restante`,consumed:`Consumido`,cost:`Custo`},failureAnalysis:`Análise de Falhas`,timeAccuracy:`Precisão do Tempo`,successful:`Bem-sucedido:`,failed:`Falhou:`,cancelled:`Cancelado:`,perfectEstimate:`100% = estimativa perfeita`,noTimeAccuracyData:`Nenhum dado de precisão de tempo disponível`,noFilamentData:`Nenhum dado de filamento disponível`,noPrinterData:`Nenhum dado de impressora disponível`,noPrintData:`Nenhum dado de impressão disponível`,noPrintDataLast30Days:`Nenhum dado de impressão nos últimos 30 dias`,failureReasons:`Razões de Falha`,topFailureReasons:`Principais Razões de Falha`,failedPrintsCount:`{{failed}} / {{total}} impressões falharam`,rejectedPrintsCount:`{{rejected}} rejeitadas após a conclusão`,yieldRate:`Rendimento: {{rate}}%`,lastWeekRate:`Última semana: {{rate}}%`,resetLayout:`Redefinir Layout`,recalculateCosts:`Recalcular Custos`,recalculateCostsHint:`Recalcular todos os custos do arquivo usando os preços atuais do filamento`,exportStats:`Exportar Estatísticas`,exportAsCsv:`Exportar como CSV`,exportAsExcel:`Exportar como Excel`,hiddenCount:`{{count}} Oculto`,exportDownloaded:`Exportação baixada`,exportFailed:`Falha na exportação`,layoutReset:`Layout redefinido`,recalculatedCosts:`Custos recalculados para {{count}} arquivos`,recalculateFailed:`Falha ao recalcular custos`,loadingStats:`Carregando estatísticas...`,noPermissionResetLayout:`Você não tem permissão para redefinir o layout`,noPermissionRecalculate:`Você não tem permissão para recalcular custos`,noPrintDataInRange:`Sem dados no período selecionado`,periodFilament:`Filamento usado`,periodCost:`Custo`,avgPerPrint:`Média por impressão`,usageOverTime:`Uso ao longo do tempo`,energyOverTime:`Energia ao longo do tempo`,filamentByWeight:`Peso`,printDuration:`Duração da impressão`,printerUtilization:`Utilização da impressora`,filamentSuccess:`Sucesso por material`,printHabits:`Hábitos de impressão`,printTimeOfDay:`Horário de impressão`,colorDistribution:`Distribuição de cores`,noColorData:`Nenhum dado de cor disponível`,records:`Recordes`,longestPrint:`Impressão mais longa`,heaviestPrint:`Impressão mais pesada`,mostExpensivePrint:`Mais cara`,busiestDay:`Dia mais movimentado`,successStreak:`Sequência de sucesso`,streakPrint:`impressão consecutiva`,streakPrints:`{{count}} impressões consecutivas`,printerStats:`Estatísticas da impressora`,hours:`horas`,avgPrints:`Méd. impressões`,noArchiveData:`Nenhum dado de impressão disponível`,filamentByTime:`Tempo`,avgWeight:`Méd. peso`,avgTime:`Méd. tempo`,filamentByPrints:`Impressões`,timeframe:{today:`Hoje`,"this-week":`Esta semana`,"this-month":`Este mês`,"last-7":`Últimos 7 dias`,"last-30":`Últimos 30 dias`,"last-90":`Últimos 90 dias`,"this-year":`Este ano`,"all-time":`Todo o período`,custom:`Personalizado`,from:`De`,to:`Até`},allUsers:`Todos os Usuários`,noUser:`Sem Usuário (Sistema)`,filterByUser:`Filtrar por Usuário`},maintenance:{title:`Manutenção`,overview:`Visão Geral`,allOk:`Todas as manutenções estão em dia`,dueCount:`{{count}} item pendente`,dueCount_plural:`{{count}} itens pendentes`,warningCount:`{{count}} aviso`,warningCount_plural:`{{count}} avisos`,totalPrintTime:`Tempo Total de Impressão`,nextMaintenance:`Próxima Manutenção`,nothingDue:`Nada pendente`,tasks:`Tarefas`,lastPerformed:`Última execução`,interval:`Intervalo`,hoursRemaining:`{{hours}}h restantes`,hoursOverdue:`{{hours}}h atrasadas`,markDone:`Marcar como Concluída`,performMaintenance:`Realizar Manutenção`,history:`Histórico`,noHistory:`Nenhum histórico de manutenção`,editPrintHours:`Editar Horas de Impressão`,currentHours:`Horas Atuais`,statusTab:`Status`,settingsTab:`Configurações`,overdueCount:`{{count}} atrasado`,dueSoonCount:`{{count}} prestes a vencer`,dueSoon:`Prestes a vencer`,allGood:`Tudo certo`,overdueBy:`Atrasado por {{duration}}`,dueIn:`Vence em {{duration}}`,timeLeft:`{{duration}} restantes`,day:`1 dia`,days:`{{count}} dias`,week:`1 semana`,weeks:`{{count}} semanas`,month:`1 mês`,months:`{{count}} meses`,year:`1 ano`,maintenanceTypes:`Tipos de Manutenção`,maintenanceTypesDescription:`Tipos de sistema e suas tarefas de manutenção personalizadas`,addCustomType:`Adicionar Tipo Personalizado`,restoreDefaults:`Restaurar Tarefas Padrão`,intervalType:`Tipo de Intervalo`,intervalValue:`Intervalo ({{type}})`,icon:`Ícone`,documentationLink:`Link da Documentação (opcional)`,assignToPrinters:`Atribuir a Impressoras`,selectAtLeastOnePrinter:`Selecione pelo menos uma impressora`,addType:`Adicionar Tipo`,custom:`Personalizado`,printHours:`Horas de Impressão`,calendarDays:`Dias de Calendário`,exampleName:`ex., Substituir Filtro HEPA`,viewDocumentation:`Ver documentação`,timeBasedInterval:`Intervalo baseado em tempo`,intervalOverrides:`Substituições de Intervalo`,intervalOverridesDescription:`Personalize os intervalos para impressoras específicas`,assignedToPrinters:`Atribuído a impressoras:`,noPrintersAssigned:`Nenhuma impressora atribuída`,addPrinterShort:`Adicionar:`,printersAssignedClick:`{{count}} impressora(s) atribuída(s) - clique para gerenciar`,removeFromPrinter:`Remover desta impressora`,types:{lubricateCarbonRods:`Lubricar Barras de Carbono`,lubricateRails:`Lubricar Trilhos Lineares`,cleanNozzle:`Limpar Bico/Hotend`,checkBelts:`Verificar Tensão das Correias`,cleanBuildPlate:`Limpar Plataforma de Impressão`,checkExtruder:`Verificar Engrenagens do Extrusor`,checkCooling:`Verificar Ventiladores de Resfriamento`,generalInspection:`Inspeção Geral`,cleanCarbonRods:`Limpar Barras de Carbono`,lubricateSteelRods:`Lubrificar Barras de Aço`,cleanSteelRods:`Limpar Barras de Aço`,cleanLinearRails:`Limpar Trilhos Lineares`,checkPtfeTube:`Verificar Tubo PTFE`,replaceHepaFilter:`Substituir Filtro HEPA`,replaceCarbonFilter:`Substituir Filtro de Carbono`,lubricateLeftNozzleRail:`Lubrificar Trilho do Bico Esquerdo`},maintenanceComplete:`Manutenção marcada como concluída`,typeUpdated:`Tipo de manutenção atualizado`,typeDeleted:`Tipo de manutenção excluído`,defaultsRestored:`Restauradas {{count}} tarefa(s) padrão`,printHoursUpdated:`Horas de impressão atualizadas`,printerAssigned:`Impressora atribuída`,printerRemoved:`Impressora removida`,deleteTypeConfirm:`Excluir "{{name}}"?`,deleteSystemTypeTitle:`Excluir tarefa de manutenção padrão?`,deleteSystemTypeMessage:`Tem certeza de que deseja excluir a tarefa de manutenção padrão "{{name}}"?`,noPermissionUpdate:`Você não tem permissão para atualizar itens de manutenção`,noPermissionPerform:`Você não tem permissão para realizar manutenção`,noPermissionEditTypes:`Você não tem permissão para editar tipos de manutenção`,noPermissionDeleteTypes:`Você não tem permissão para excluir tipos de manutenção`,noPermissionEditHours:`Você não tem permissão para editar horas de impressão`,noPermissionRemovePrinter:`Você não tem permissão para remover atribuições de impressora`,noPermissionAssignPrinter:`Você não tem permissão para atribuir impressoras`,noPermissionEditIntervals:`Você não tem permissão para editar intervalos`,configureSettings:`Configure tipos de manutenção e intervalos`},settings:{sliceEngine:`Motor de fatiamento`,sliceEngineSidecar:`Sidecar do servidor`,sliceEngineSidecarHint:`O fatiamento roda no servidor, no contêiner sidecar do fatiador.`,sliceEngineBrowser:`No navegador`,sliceEngineBrowserHint:`O fatiamento roda neste dispositivo, sem envolver o servidor.`,title:`Configurações`,general:`Geral`,tabs:{general:`Geral`,smartPlugs:`Tomadas Inteligentes`,sensors:`Sensores`,notifications:`Notificações`,queue:`Fluxo`,queueDispatch:`Fila e Dispatch`,queuePipelines:`Pipelines`,filament:`Filamento`,camera:`Câmera`,network:`Rede`,apiKeys:`Chaves API`,virtualPrinter:`Impressora Virtual`,failureDetection:`Detecção de Falhas`,users:`Autenticação`,backup:`Backup`,emailAuth:`Autenticação por Email`,ldap:`LDAP`,twoFa:`Autenticação 2FA`,oidc:`SSO / OIDC`,security:`Segurança`,spoolbuddy:`SpoolBuddy`},ldap:{title:`Autenticação LDAP`,enabledDesc:`A autenticação LDAP está ativada`,disabledDesc:`A autenticação LDAP está desativada`,disabledHint:`Configure e salve as configurações LDAP abaixo, depois ative.`,enabled:`Autenticação LDAP ativada`,disabled:`Autenticação LDAP desativada`,feature1:`Usuários podem fazer login com credenciais LDAP`,feature2:`A conta de administrador local permanece como fallback`,feature3:`Grupos LDAP são mapeados para grupos BamBuddy no login`,serverConfig:`Configuração do Servidor LDAP`,serverUrl:`URL do servidor`,serverUrlHint:`Use ldap:// para padrão ou ldaps:// para conexões SSL`,security:`Segurança`,securityHint:`StartTLS atualiza uma conexão simples para TLS. LDAPS usa TLS desde o início.`,bindDn:`Bind DN (conta de serviço)`,bindPassword:`Senha Bind`,searchBase:`Base DN de pesquisa`,userFilter:`Filtro de pesquisa de usuário`,userFilterHint:`{username} é substituído pelo nome de usuário. Use (uid={username}) para OpenLDAP.`,advanced:`Avançado`,autoProvision:`Provisionamento automático de usuários`,autoProvisionHint:`Criar automaticamente uma conta BamBuddy no primeiro login LDAP`,defaultGroup:`Grupo padrão`,defaultGroupNone:`— Nenhum (sem fallback) —`,defaultGroupHint:`Grupo de fallback atribuído quando um usuário LDAP se autentica mas não está em nenhum grupo LDAP mapeado. Deixe vazio para manter usuários não mapeados sem permissões.`,groupMapping:`Mapeamento de grupos (JSON)`,groupMappingHint:`Mapear DNs de grupos LDAP para grupos BamBuddy. Grupos disponíveis: `,testConnection:`Testar conexão`,settingsSaved:`Configurações LDAP salvas`,errors:{serverRequired:`URL do servidor LDAP é obrigatória`,searchBaseRequired:`Base DN de pesquisa é obrigatória`,enableAuthFirst:`Ative a autenticação primeiro`,configureLdapFirst:`Salve as configurações LDAP primeiro`}},email:{smtpSettings:`Configuração SMTP`,smtpHost:`Servidor SMTP`,smtpPort:`Porta SMTP`,security:`Segurança`,authentication:`Autenticação`,username:`Nome de Usuário`,password:`Senha`,fromEmail:`Email de Remetente`,fromName:`Nome de Remetente`,testConnection:`Testar Conexão SMTP`,testRecipient:`Email de Teste`,sendTest:`Enviar Email de Teste`,sending:`Enviando...`,save:`Salvar Configurações`,saving:`Salvando...`,advancedAuth:`Autenticação Avançada`,advancedAuthEnabled:`Autenticação Avançada está habilitada`,advancedAuthEnabledDesc:`Recursos de gerenciamento de usuários baseados em email estão ativos. Novos usuários receberão senhas geradas automaticamente por email, e os usuários podem redefinir suas senhas através do recurso de esqueci minha senha.`,advancedAuthDisabled:`Autenticação Avançada está desabilitada`,advancedAuthDisabledDesc:`Habilite a autenticação avançada para ativar recursos baseados em email para gerenciamento de usuários.`,enable:`Habilitar`,disable:`Desabilitar`,feature1:`Senhas são geradas automaticamente e enviadas por email para novos usuários`,feature2:`Usuários podem fazer login com nome de usuário ou email`,feature3:`Recurso de esqueci minha senha está disponível`,feature4:`Administradores podem redefinir senhas de usuários via email`,errors:{requiredFields:`Por favor, preencha todos os campos obrigatórios`,usernameRequired:`Nome de usuário é obrigatório quando a autenticação está habilitada`,enterTestEmail:`Por favor, insira um endereço de email de teste`,smtpServerAndEmail:`Por favor, preencha o servidor SMTP e o email de remetente antes de testar`,usernamePasswordRequired:`Nome de usuário e senha são obrigatórios quando a autenticação está habilitada`,configureSmtpFirst:`Por favor, configure e teste as configurações SMTP primeiro`,enableAuthFirst:`Por favor, habilite a autenticação primeiro para usar os recursos baseados em e-mail.`},success:{settingsSaved:`Configurações SMTP salvas com sucesso`},securityOptions:{starttls:`STARTTLS (Porta 587)`,ssl:`SSL/TLS (Porta 465)`,none:`Nenhuma (Porta 25)`},authOptions:{enabled:`Habilitado`,disabled:`Desabilitado`}},appearance:`Aparência`,notifications:`Notificações`,smartPlugs:`Tomadas Inteligentes`,spoolman:`Spoolman`,updates:`Atualizações`,language:`Idioma`,languageDescription:`Selecione seu idioma preferido`,theme:`Tema`,themeLight:`Claro`,themeDark:`Escuro`,themeSystem:`Sistema`,defaultView:`Visualização Padrão`,defaultViewDescription:`Página a ser exibida ao abrir o aplicativo`,checkForUpdates:`Verificar Atualizações`,autoUpdate:`Atualização Automática`,currentVersion:`Versão Atual`,latestVersion:`Última Versão`,upToDate:`Você está atualizado`,updateAvailable:`Atualização disponível`,notificationLanguage:`Idioma das Notificações`,notificationLanguageDescription:`Idioma para notificações push`,bedCooledThreshold:`Limite de Resfriamento da Cama`,bedCooledThresholdDescription:`Temperatura abaixo da qual a cama é considerada resfriada após uma impressão`,userNotificationsEnabled:`Notificações do Usuário`,userNotificationsEnabledDescription:`Ativa o menu de notificações do usuário e notificações por e-mail para eventos de impressão. Requer Autenticação Avançada.`,userNotificationsDisabledHint:`Ative a Autenticação Avançada para usar as notificações do usuário.`,notificationProviders:`Provedores de Notificação`,addProvider:`Adicionar Provedor`,editProvider:`Editar Provedor`,providerType:`Tipo de Provedor`,testNotification:`Testar Notificação`,testSuccess:`Notificação de teste enviada com sucesso`,testFailed:`Falha ao enviar notificação de teste`,quietHours:`Horas de Silêncio`,quietHoursDescription:`Não perturbe durante essas horas`,quietHoursStart:`Início`,quietHoursEnd:`Fim`,events:{title:`Eventos de Notificação`,printStart:`Impressão Iniciada`,printComplete:`Impressão Concluída`,printFailed:`Falha na Impressão`,printStopped:`Impressão Interrompida`,printProgress:`Marcos de Progresso`,printProgressDescription:`Notificar em 25%, 50%, 75%`,printerOffline:`Impressora Offline`,printerError:`Erro na Impressora`,filamentLow:`Filamento Baixo`,maintenanceDue:`Manutenção Pendente`,maintenanceDueDescription:`Notificar quando a manutenção for necessária`},smartPlug:{title:`Tomadas Inteligentes`,add:`Adicionar Tomada Inteligente`,edit:`Editar Tomada Inteligente`,name:`Nome`,ipAddress:`Endereço IP`,linkedPrinter:`Impressora Vinculada`,autoOn:`Ligar Automaticamente`,autoOnDescription:`Ligar quando a impressão começar`,autoOff:`Desligar Automaticamente`,autoOffDescription:`Desligar após a conclusão da impressão`,offDelay:`Atraso para Desligar`,offDelayMinutes:`Minutos após a impressão`,offDelayTemp:`Quando o bico estiver abaixo da temperatura`,currentState:`Estado Atual`,turnOn:`Ligar`,turnOff:`Desligar`},filamentTracking:`Rastreamento de Filamento`,filamentTrackingDesc:`Escolha como rastrear seus rolos de filamento. Você pode usar o inventário interno ou conectar a um servidor Spoolman externo.`,autoAddUnknownRfid:`Adicionar automaticamente carretéis RFID desconhecidos`,autoAddUnknownRfidDesc:`Cria automaticamente uma entrada de inventário quando um carretel com tag RFID desconhecido é detectado. Desligue se você pré-registra novos carretéis manualmente para evitar duplicatas.`,filamentChecks:`Verificações de filamento`,disableFilamentWarnings:`Desativar avisos de filamento`,disableFilamentWarningsDesc:`Não mostrar avisos sobre filamento insuficiente ao imprimir ou adicionar à fila`,preferLowestFilament:`Preferir filamento com menor resto`,preferLowestFilamentDesc:`Quando vários carretéis correspondem, usar o com menos filamento restante`,preferLowestFilamentBackupNote:`Só tem efeito quando o AMS Filament Backup está habilitado na impressora — caso contrário, a impressora não pode trocar para um segundo carretel quando o escolhido acabar.`,trackingModeBuiltIn:`Inventário Interno`,trackingModeBuiltInDesc:`Correspondência automática de RFID e rastreamento de uso incluídos`,trackingModeSpoolmanDesc:`Servidor de gerenciamento de filamento externo`,builtInFeatureRfid:`Detecta automaticamente rolos RFID da Bambu Lab no AMS`,builtInFeatureUsage:`Rastreia o consumo de filamento por impressão`,builtInFeatureCatalog:`Gerencia rolos, cores e perfis de fator K`,builtInFeatureThirdParty:`Rolos de terceiros podem ser atribuídos aos rolos do inventário`,amsSyncButton:`Sincronizar Pesos do AMS`,amsSyncTitle:`Sincronizar Pesos dos Rolos do AMS`,amsSyncMessage:`Isso substituirá todos os pesos dos rolos do inventário pelos valores atuais de % restante do AMS das impressoras conectadas. Use isso para recuperar dados de peso corrompidos. As impressoras devem estar online.`,amsSyncing:`Sincronizando...`,amsSyncSuccess:`{{synced}} rolo(s) sincronizado(s), {{skipped}} ignorado(s)`,amsSyncError:`Falha ao sincronizar pesos do AMS`,spoolmanAmsSyncButton:`Sincronizar pesos do Spoolman pelo AMS`,spoolmanAmsSyncTitle:`Sincronizar pesos dos rolos Spoolman pelo AMS`,spoolmanAmsSyncMessage:`Isso atualizará os pesos de todos os rolos Spoolman com base nos valores atuais de % restante do AMS das impressoras conectadas. As impressoras devem estar online.`,spoolmanAmsSyncing:`Sincronizando...`,spoolmanAmsSyncSuccess:`{{synced}} rolo(s) Spoolman sincronizado(s), {{skipped}} ignorado(s)`,spoolmanAmsSyncError:`Falha ao sincronizar pesos do Spoolman pelo AMS`,spoolmanAmsSyncErrorUnreachable:`Falha na sincronização (Spoolman inacessível)`,spoolmanAmsSyncErrorNotConfigured:`Falha na sincronização (Spoolman não configurado)`,spoolmanNotConfigured:`Spoolman não configurado`,spoolmanFilamentCatalogTitle:`Catálogo de filamentos Spoolman`,spoolmanFilamentCatalogDesc:`Nomes de filamentos e pesos tara da sua instância Spoolman. Nome e peso do carretel são editáveis aqui; todas as outras propriedades são gerenciadas diretamente no Spoolman.`,spoolmanUrl:`Spoolman URL`,spoolmanUrlHint:`URL do seu servidor Spoolman (por exemplo, http://localhost:7912)`,spoolmanConnected:`Conectado`,spoolmanDisconnected:`Desconectado`,status:`Status`,connect:`Conectar`,disconnect:`Desconectar`,howSyncWorks:`Como a Sincronização Funciona`,syncInfoRfidOnly:`Apenas rolos oficiais da Bambu Lab com RFID são sincronizados`,syncInfoAutoCreate:`Novos rolos são criados automaticamente no Spoolman na primeira sincronização`,syncInfoThirdPartySkipped:`Rolos não oficiais da Bambu Lab (terceiros, reabastecidos) são ignorados`,linkingExistingSpools:`Vinculando Rolos Existentes`,linkingExistingSpoolsDesc:`Para vincular rolos existentes do Spoolman ao seu AMS, passe o mouse sobre um slot do AMS e clique em "Vincular ao Spoolman".`,syncMode:`Modo de Sincronização`,syncModeAuto:`Automático`,syncModeManual:`Apenas Manual`,syncModeAutoDesc:`Os dados do AMS são sincronizados automaticamente quando alterações são detectadas`,syncModeManualDesc:`Somente sincronize quando acionado manualmente`,syncAmsData:`Sincronizar Dados do AMS`,syncAmsDataDesc:`Sincronize manualmente os dados do AMS da impressora com o Spoolman`,allPrinters:`Todas as Impressoras`,noDefaultPrinter:`Sem padrão (perguntar a cada vez)`,sidebarOrder:`Ordem da barra lateral`,saveThumbnails:`Salvar miniaturas`,captureFinishPhoto:`Capturar foto de conclusão`,noPrintersConfigured:`Nenhuma impressora configurada`,archiveMode:{always:`Sempre criar entrada de arquivo`,never:`Nunca criar entrada de arquivo`,ask:`Perguntar a cada vez`},checkForUpdatesLabel:`Verificar atualizações`,checkPrinterFirmware:`Verificar firmware da impressora`,includeBetaUpdates:`Incluir versões beta`,includeBetaUpdatesDesc:`Notificar sobre versões beta e pré-lançamento ao verificar atualizações`,announcementsEnabled:`Receber anúncios`,announcementsEnabledDesc:`Mensagens dos desenvolvedores do Bambuddy, como correções de segurança e mudanças incompatíveis. O Bambuddy baixa um arquivo assinado do GitHub a cada poucas horas; nada sobre esta instalação é enviado.`,announcementsLearnMore:`Saiba mais`,announcementsAllUsers:`Mostrar para todos os usuários`,announcementsAllUsersDesc:`Desativado: apenas administradores os veem. Sem efeito enquanto a autenticação estiver desativada.`,localLogin:{disable:`Desativar login local com usuário/senha`,disableHint:`Quando ativado, somente provedores SSO podem fazer login. O LDAP não é afetado. Defina BAMBUDDY_LOCAL_LOGIN=true no servidor para manter um caminho de recuperação.`},enableRetry:`Habilitar tentativa`,homeAssistantDescription:`Controlar tomadas inteligentes via Home Assistant`,environmentManagedLabel:`(Gerenciado pelo Ambiente)`,autoEnabledViaEnv:`Habilitado automaticamente via variáveis de ambiente`,urlFromEnvReadOnly:`Valor definido pela variável de ambiente HA_URL (somente leitura)`,tokenFromEnvReadOnly:`Valor definido pela variável de ambiente HA_TOKEN (somente leitura)`,mqttConnectedTo:`Conectado a`,prometheusDescription:`Expor dados da impressora no formato Prometheus`,noSmartPlugsTitle:`Nenhuma tomada inteligente configurada`,noSmartPlugsDescription:`Adicione uma tomada inteligente baseada em Tasmota para monitorar o consumo de energia e automatizar o controle de energia.`,noProvidersTitle:`Nenhum provedor configurado`,noProvidersDescription:`Adicione um provedor para receber alertas.`,noTemplatesAvailable:`Nenhum modelo disponível. Reinicie o backend para gerar os modelos padrão.`,apiPermissionView:`Visualizar status da impressora e fila`,apiPermissionEdit:`Adicionar e remover itens da fila de impressão`,apiKeysEmptyTitle:`Nenhuma chave API`,apiKeysEmptyDescription:`Crie uma chave API para integrar com serviços externos.`,noUsersFound:`Nenhum usuário encontrado`,noGroupsFound:`Nenhum grupo encontrado`,noGroupsAvailable:`Nenhum grupo disponível`,passwordsDoNotMatch:`As senhas não coincidem`,systemGroupWarning:`Os nomes dos grupos do sistema não podem ser alterados`,authDisabledTitle:`Autenticação Desativada`,authDisabledFeature1:`Exigir login para acessar o sistema`,authDisabledFeature2:`Criar múltiplos usuários com permissões baseadas em grupos`,authDisabledFeature3:`Controlar acesso com mais de 50 permissões granulares`,userHasCreated:`Este usuário criou:`,userItemsQuestion:`O que você gostaria de fazer com esses itens?`,deleteUserConfirm:`Tem certeza de que deseja excluir este usuário?`,actionCannotBeUndone:`Esta ação não pode ser desfeita.`,addFirstSmartPlug:`Adicione sua primeira tomada inteligente`,providers:`Provedores`,log:`Registro`,testAll:`Testar tudo`,testResults:`Resultados do teste`,testPassedCount:`{{count}} aprovado`,testFailedCount:`{{count}} falhou`,messageTemplates:`Modelos de mensagem`,messageTemplatesDescription:`Personalize as mensagens de notificação para cada evento.`,apiKeys:`Chaves API`,apiKeysDescription:`Crie chaves API para integrações externas e webhooks.`,createKey:`Criar Chave`,apiKeyCreated:`Chave API criada com sucesso`,apiKeyCopyWarning:`Copie esta chave agora - ela não será exibida novamente!`,useInApiBrowser:`Usar no Navegador API`,apiKeyQrButton:`Código QR`,apiKeyQrTitle:`Escaneie para configurar`,apiKeyQrCaption:`Escaneie com seu app móvel para adicionar este servidor e a chave de API.`,apiKeyQrWarning:`Contém sua chave de API secreta — não compartilhe nem faça captura de tela onde outros possam ver.`,createNewApiKey:`Criar Nova Chave API`,keyName:`Nome da Chave`,keyNamePlaceholder:`e.g., Home Assistant, OctoPrint`,readStatus:`Status de Leitura`,readStatusDescription:`Visualizar status da impressora, fila, biblioteca, arquivos de impressão e pipelines do slicer`,manageQueue:`Gerenciar Fila`,manageQueueDescription:`Adicionar e remover itens da fila de impressão. Junto com "Gerenciar biblioteca", executar pipelines do slicer`,controlPrinter:`Controlar Impressora`,controlPrinterDescription:`Pausar, retomar e parar impressões`,manageLibrary:`Gerenciar biblioteca`,manageLibraryDescription:`Enviar, renomear, excluir e fatiar arquivos da biblioteca; importar modelos do MakerWorld. Junto com "Gerenciar Fila", executar pipelines do slicer`,manageInventory:`Gerenciar estoque`,manageInventoryDescription:`Criar, atualizar e excluir bobinas e registros de estoque. Necessário para quiosques SpoolBuddy (escaneamento NFC, leituras da balança, comandos de sistema do quiosque).`,manageMaintenance:`Gerenciar manutenção`,manageMaintenanceDescription:`Registrar manutenções concluídas, redefinir contadores, editar intervalos e gerenciar o catálogo de tipos de manutenção. Adequado a automações do Home Assistant que registram "limpei o bico" sem conceder controle mais amplo da impressora.`,manageArchives:`Gerenciar arquivos de impressão`,manageArchivesDescription:`Editar e excluir arquivos de impressão, incluindo a remoção de impressões antigas e da contribuição delas para as estatísticas. Adequado a automações que reduzem o histórico de impressão.`,manageProjects:`Gerenciar projetos`,manageProjectsDescription:`Criar, atualizar e excluir projetos e adicionar arquivos de impressão a eles. Adequado a automações que organizam as impressões em projetos.`,maintenanceBadge:`Manutenção`,archivesBadge:`Arquivos`,projectsBadge:`Projetos`,libraryBadge:`Biblioteca`,inventoryBadge:`Estoque`,cloudAccess:`Permitir acesso à nuvem`,cloudAccessDescription:`Lê predefinições e filamentos do Bambu Cloud em seu nome. Requer login no Bambu Cloud.`,cloudBadge:`Nuvem`,updateEnergyCost:`Atualizar preço da eletricidade`,updateEnergyCostDescription:`Permitir que esta chave envie POST de um novo preço por kWh para /settings/electricity-price. Útil para automações de tarifa dinâmica do Home Assistant (Tibber, Octopus, etc.). Este é o único campo de configuração gravável via API key.`,energyCostBadge:`Energia`,sendNotifications:`Enviar notificações`,sendNotificationsDescription:`Permite que esta chave envie mensagens pelos canais de notificação que aceitam mensagens de aplicativos conectados (POST /notifications/app-message). Para aplicativos como o Bambuddy Orders. Nada além disso: a chave não pode ler nem alterar os canais.`,sendNotificationsBadge:`Notif.`,legacyKey:`Legado`,legacyKeyTooltip:`Criado antes da propriedade por usuário; recrie para acesso à nuvem`,unnamedKey:`Chave Sem Nome`,lastUsed:`Último uso`,read:`Ler`,control:`Controlar`,createFirstKey:`Crie sua primeira chave`,webhookEndpoints:`Endpoints de Webhook`,webhookApiKeyHint:`Use sua chave API no cabeçalho X-API-Key.`,webhook:{getAllStatus:`Obter status de todas as impressoras`,getSpecificStatus:`Obter status de uma impressora específica`,addToQueue:`Adicionar à fila de impressão`,pausePrint:`Pausar impressão`,resumePrint:`Retomar impressão`,stopPrint:`Parar impressão`},apiBrowser:`Navegador API`,apiBrowserDescription:`Explore e teste todos os endpoints de API disponíveis.`,apiKeyForTesting:`Chave API para Teste`,apiKeyPlaceholder:`Cole sua chave API aqui para testar endpoints autenticados...`,apiKeyHint:`Esta chave será enviada como cabeçalho X-API-Key nas solicitações.`,deleteApiKeyTitle:`Excluir Chave API`,deleteApiKeyMessage:`Tem certeza de que deseja excluir esta chave API? Quaisquer integrações usando esta chave deixarão de funcionar.`,deleteKey:`Excluir Chave`,amsDisplayThresholds:`Limiares de Exibição AMS`,amsThresholdsDescription:`Configure os limiares de cores para os indicadores de umidade e temperatura do AMS.`,humidity:`Umidade`,goodGreen:`Bom (verde)`,fairOrange:`Razoável (laranja)`,aboveFairBad:`Acima do limiar razoável mostra como vermelho (ruim)`,fairAlsoDryingThreshold:`Este limiar também é usado para acionar a secagem automática`,fairBelowDryingFloor:`A secagem automática não consegue atingir este valor: um AMS indica {{floor}}% ou mais enquanto aquece, então cada ciclo terminaria e recomeçaria de imediato. Aumente-o acima de {{floor}}% se usar a secagem automática.`,temperature:`Temperatura`,goodBlue:`Bom (azul)`,aboveFairHot:`Acima do limiar razoável mostra como vermelho (quente)`,tempAlarmThreshold:`Alarme acima de`,tempAlarmSeparateFromBand:`Apenas o limiar de alarme envia notificações — Bom e Razoável apenas colorem a exibição. Deixe vazio para alarmar no limiar razoável, como antes.`,tempAlarmMustBePositive:`Um limiar de 0 ou menos é ignorado — o alarme usa o limiar razoável.`,historyRetention:`Retenção de Histórico`,keepSensorHistory:`Manter histórico do sensor por`,historyRetentionDescription:`Dados antigos de umidade e temperatura serão automaticamente excluídos`,defaultPrintOptions:`Opções de impressão padrão`,defaultPrintOptionsDescription:`Defina valores padrão para opções de impressão. Podem ser alterados no diálogo de impressão.`,defaultBedLevelling:`Nivelamento da mesa`,defaultBedLevellingDesc:`Nivelar automaticamente a mesa antes da impressão`,defaultFlowCali:`Calibração de fluxo`,defaultFlowCaliDesc:`Calibrar fluxo de extrusão`,defaultVibrationCali:`Calibração de vibração`,defaultVibrationCaliDesc:`Reduzir artefatos de ringing`,defaultLayerInspect:`Inspeção da primeira camada`,defaultLayerInspectDesc:`Inspeção IA da primeira camada`,defaultTimelapse:`Timelapse`,defaultTimelapseDesc:`Gravar vídeo timelapse`,defaultConfirmOutcome:`Perguntar o Resultado`,defaultConfirmOutcomeDesc:`Perguntar se a impressão saiu bem após a conclusão`,confirmOutcomeExternalPrints:`Perguntar também em impressões iniciadas fora do Bambuddy`,confirmOutcomeExternalPrintsDesc:`Impressões iniciadas na impressora, no Bambu Studio ou no app Handy também são arquivadas pelo Bambuddy. Com esta opção, elas recebem a mesma pergunta de resultado das impressões da fila.`,confirmDefaultGoodOnPlateClear:`Contar resultados sem resposta como bons ao liberar a placa`,confirmDefaultGoodOnPlateClearDescription:`Quando a placa é liberada (manualmente ou pela próxima impressão na fila) e a pergunta sobre o resultado da impressão ainda não foi respondida, registrá-la automaticamente como peça boa. A impressão passa a contar como boa assim que a placa é liberada; uma resposta posterior por Telegram ou por link apenas mostra o resultado registrado.`,defaultNozzleOffsetCali:`Calibração de offset dos bicos`,defaultNozzleOffsetCaliDesc:`Calibrar offsets entre extrusores`,tempFanPresetsTitle:`Predefinições de temperatura e ventilador`,tempFanPresetsDescription:`Personalize os valores de seleção rápida exibidos nos popovers de temperatura e velocidade do ventilador do cartão da impressora. O botão Desligar sempre é exibido.`,tempFanPresetsNozzle:`Temperatura do bico`,tempFanPresetsBed:`Temperatura da mesa`,tempFanPresetsChamber:`Temperatura da câmara`,tempFanPresetsFan:`Velocidade do ventilador`,tempFanPresetsReset:`Restaurar padrões`,concurrentUploadsTitle:`Envios simultâneos`,concurrentUploadsDescription:`Quantas impressoras a fila pode abastecer com arquivos ao mesmo tempo. As impressoras recebem os arquivos lentamente (uma impressão grande pode levar vários minutos) e cada uma espera sua vez — portanto, em um parque maior, aumentar este valor evita que a última impressora de um lote tenha de esperar todas as transferências anteriores. Reduza-o se a sua rede ou o host do Bambuddy tiver dificuldade com transferências paralelas.`,concurrentUploadsLabel:`Impressoras abastecidas de uma vez`,concurrentUploadsHelp:`1 envia para uma impressora por vez (o comportamento anterior). O padrão é 4.`,staggeredStart:`Início escalonado`,staggeredStartDescription:`Tamanho de grupo e intervalo padrão ao escalonar inícios de lotes multi-impressora. Pode ser sobrescrito por lote no modal de impressão.`,preheatTitle:`Pré-aquecimento & Heat Soak`,preheatDescription:`Aquece a mesa (e a câmara, se suportada) e mantém a temperatura antes de iniciar cada impressão da fila. Útil para filamentos técnicos (PA, ABS) em impressoras sem aquecedor ativo de câmara — a mesa aquece a câmara por radiação enquanto o temporizador de soak roda. A temperatura alvo da mesa vem do arquivo de impressão; o comportamento da câmara depende do modelo da impressora.`,preheatEnabled:`Ativar pré-aquecimento & soak`,preheatEnabledDesc:`Quando desligado, as impressões na fila iniciam imediatamente. Cada item pode sobrescrever por impressão.`,preheatFilamentTargetsLabel:`Alvo da câmara por filamento (°C)`,preheatFilamentTargetsHint:`Bambuddy escolhe o alvo mais alto entre os slots AMS carregados. Uma impressão cujos slots derivam todos 0 — PLA, PETG, TPU, PVA — pula o preaquecimento por completo e começa imediatamente.`,preheatFilamentTargetsReset:`Redefinir para padrões`,preheatFilamentTargetsDefaultRow:`Outro / sem mapeamento`,preheatMaxWait:`Espera máx. (segundos)`,preheatMaxWaitHelp:`Teto da fase de aquecimento da câmara antes de passar ao soak.`,preheatSoak:`Soak (segundos)`,preheatSoakHelp:`Tempo de retenção após atingir o alvo ou expirar a espera máx.`,preheatHardwareTitle:`Comportamento por impressora:`,preheatHardwareDetail:`H2C/H2D/H2D Pro/H2S/X2D/X1E aquecem ativamente a câmara via M141. X1C/P2S leem a temperatura mas só aquecem a câmara por radiação da mesa. P1S/P1P/A1/A1 Mini não têm sensor de câmara — apenas o temporizador de soak se aplica.`,preheatPerItemDesc:`Aquece a mesa e a câmara antes desta impressão começar. Por padrão usa o interruptor global em Configurações → Workflow.`,preheatOverride_inherit:`Herdar`,preheatOverride_on:`Ligado`,preheatOverride_off:`Desligado`,calibrationMode_off:`Desligado`,calibrationMode_on:`Ligado`,calibrationMode_auto:`Auto`,preheatTargetOverride:`Sobrescrever alvo da câmara (°C, vazio = por filamento)`,preheatTargetOverrideHelp:`0 aquece a mesa e executa a estabilização sem a câmara. Em branco, uma impressão que não precisa de câmara pula o preaquecimento por completo.`,plateClear:`Confirmação de placa livre`,requirePlateClear:`Exigir confirmação de placa livre`,requirePlateClearDescription:`Quando ativado, o agendador aguarda uma confirmação de placa livre por impressora antes de iniciar impressões na fila em impressoras com trabalhos concluídos. Desativar isso também oculta o indicador de status da placa e o botão "Marcar placa como liberada" nos cartões das impressoras.`,keepBedWarm:`Manter a mesa aquecida entre impressões`,keepBedWarmDesc:`Enquanto aguarda a confirmação de placa limpa, mantém a mesa na temperatura de aquecimento definida abaixo para que a câmara continue quente — ou na temperatura da mesa da próxima impressão, se for maior. Aplica-se apenas quando a próxima impressão requer aquecimento de câmara (ASA, ABS, PA, PC, etc.). Requer a confirmação de placa limpa ativada.`,keepWarmBedTemp:`Temperatura da mesa em aquecimento (°C)`,keepWarmBedTempHelp:`Usado sempre que a mesa serve para aquecer a câmara: durante a manutenção aquecida e no pré-aquecimento quando o arquivo de impressão não traz temperatura da mesa. Uma temperatura maior vinda do arquivo sempre prevalece.`,keepWarmMaxMinutes:`Parar de manter aquecido após (minutos)`,keepWarmMaxMinutesHelp:`Se a placa não for liberada dentro desse tempo, os aquecedores são desligados em vez de ficarem ligados indefinidamente.`,gcodeInjection:`Injeção de G-code`,gcodeInjectionDescription:`Configure G-code personalizado para injetar no início e/ou no final das impressões para sistemas de impressão automática como Farmloop, SwapMod, AutoClear e Printflow 3D. Os snippets são configurados por modelo de impressora e aplicados quando "Injetar G-code" está ativado em um item da fila.`,gcodeInjectionNoPrinters:`Nenhuma impressora encontrada. Adicione impressoras para configurar snippets de G-code.`,gcodeStartLabel:`G-code inicial`,gcodeEndLabel:`G-code final`,gcodeStartPlaceholder:`G-code inserido antes do início da impressão...`,gcodeEndPlaceholder:`G-code adicionado após o término da impressão...`,staggerGroupSize:`Tamanho do grupo`,staggerGroupSizeHelp:`Impressoras para iniciar simultaneamente por grupo`,staggerInterval:`Intervalo (minutos)`,staggerIntervalHelp:`Atraso entre o início de cada grupo`,queueDrying:`Secagem Automática`,queueDryingDescription:`Secar automaticamente o filamento AMS quando a impressora estiver ociosa entre impressões na fila. Usa o limite de umidade acima.`,queueDryingEnabled:`Ativar secagem automática`,queueDryingEnabledDescription:`Iniciar secagem AMS automaticamente quando a impressora estiver ociosa e a umidade estiver acima do limite`,queueDryingBlock:`Aguardar conclusão da secagem`,queueDryingBlockDescription:`Bloquear a fila de impressão até a secagem terminar. Quando desativado, impressões têm prioridade.`,ambientDryingEnabled:`Secagem ambiente`,ambientDryingEnabledDescription:`Secar automaticamente o filamento em impressoras ociosas quando a umidade exceder o limite, mesmo sem impressões na fila.`,ambientDryingSustainedEnabled:`Exigir umidade sustentada`,ambientDryingSustainedDescription:`Aguardar até que a umidade permaneça acima do limite por um tempo definido antes de iniciar uma secagem ambiente — absorve o pico causado ao abrir a tampa do AMS.`,ambientDryingSustainedMinutes:`Tempo sustentado (minutos)`,printDryingEnabled:`Continuar secagem durante a impressão`,printDryingEnabledDescription:`Permite que a secagem automática continue funcionando durante uma impressão em hardware compatível (H2D, H2C, H2S, P2S, H2D Pro, X2D, X1C, A2L com firmware recente). A temperatura de secagem é limitada automaticamente 5°C abaixo do valor de inatividade para proteger as bobinas.`,dryingPresets:`Predefinições de secagem`,dryingPresetsDescription:`Temperatura e duração por tipo de filamento. AMS 2 Pro usa temperaturas mais baixas, AMS-HT suporta temperaturas mais altas.`,dryingFilament:`Filamento`,humidityThresholds:`Limites de umidade`,humidityThresholdsDescription:`Gatilho de umidade por tipo de filamento para secagem automática e alarmes. Cargas mistas em um AMS usam o limite mais baixo.`,humidityThresholdCol:`Limite`,humidityThresholdDefault:`Padrão (tipos desconhecidos)`,printModal:`Modal de Impressão`,expandCustomMapping:`Expandir mapeamento personalizado por padrão`,expandCustomMappingDescription:`Ao imprimir em várias impressoras, mostrar o mapeamento AMS por impressora expandido`,authentication:`Autenticação`,authEnabledDescription:`Sua instância está protegida com autenticação de usuário`,authDisabledDescription:`Ative para exigir login e gerenciar o acesso dos usuários`,authDisabledMessage:`Ative a autenticação para criar contas de usuário, gerenciar permissões e proteger sua instância do Bambuddy.`,enableAuthentication:`Ativar Autenticação`,currentUser:`Usuário Atual`,changePassword:`Alterar Senha`,admin:`Administrador`,users:`Usuários`,addUser:`Adicionar Usuário`,groups:`Grupos`,addGroup:`Adicionar Grupo`,system:`Sistema`,noDescription:`Sem descrição`,userCount:`{{count}} usuários`,permissionCount:`{{count}} permissões`,createUser:`Criar Usuário`,username:`Nome de Usuário`,enterUsername:`Digite o nome de usuário`,password:`Senha`,enterPassword:`Digite a senha`,passwordRequirements:`Pelo menos 8 caracteres, com uma maiúscula, uma minúscula, um dígito e um caractere especial.`,confirmPassword:`Confirmar Senha`,confirmPasswordPlaceholder:`Confirme a senha`,viewReleaseOnGitHub:`Ver lançamento no GitHub`,turnAllPlugsOn:`Ligar todas as tomadas`,turnAllPlugsOff:`Desligar todas as tomadas`,clearNotificationLogs:`Limpar Logs de Notificação`,clearLogsMessage:`Isso excluirá permanentemente todos os logs de notificação com mais de 30 dias. Esta ação não pode ser desfeita.`,clearLogs:`Limpar Logs`,resetUiPreferences:`Redefinir Preferências de UI`,resetUiPreferencesMessage:`Isso redefinirá todas as preferências de UI para os padrões: ordem da barra lateral, tema, layout do painel, modos de exibição e preferências de classificação. Suas impressoras, arquivos e configurações do servidor NÃO serão afetados. A página será recarregada após a limpeza.`,resetPreferences:`Redefinir Preferências`,deleteGroupTitle:`Excluir Grupo`,deleteGroupMessage:`Tem certeza de que deseja excluir este grupo? Usuários neste grupo perderão essas permissões.`,deleteGroup:`Excluir Grupo`,disableAuthenticationTitle:`Desativar Autenticação`,disableAuthenticationMessage:`Tem certeza de que deseja desativar a autenticação? Isso tornará sua instância do Bambuddy acessível sem login. Todos os usuários permanecerão no banco de dados, mas a autenticação será desativada.`,disableAuthentication:`Desativar Autenticação`,configureBambuddy:`Configurar Bambuddy`,systemDefault:`Padrão do Sistema`,archiveSettings:`Configurações de Arquivo`,newWindow:`Nova Janela`,embeddedOverlay:`Sobreposição Incorporada`,preferredSlicer:`Fatiador Preferido`,preferredSlicerDescription:`Fatiador usado para fatiamento no aplicativo via sidecar da API`,openInSlicerLabel:`Abrir no fatiador`,openInSlicerInherit:`Mesmo do fatiador da API`,openInSlicerDescription:`Fatiador de desktop usado pelo botão 'Abrir no fatiador'. Mantenha em 'Mesmo do fatiador da API' para herdar, ou escolha um fatiador diferente para uso local.`,orcaslicerKnownIssuesWarning:`OrcaSlicer 2.3.2 / 2.4.0-dev têm bugs CLI conhecidos que bloqueiam o fatiamento de muitos 3MFs criados pela Bambu — veja issues upstream #12426 (segfault em arquivos multi-extrusor pintados) e #13386 (rejeição de validação estrita de intervalos de parâmetros). Bambu Studio é recomendado até as correções upstream chegarem.`,useSlicerApi:`Usar API do fatiador`,useSlicerApiDescription:`Quando ativo, as ações "Slice" abrem o modal do fatiador interno e chamam o sidecar slicer-API. Quando inativo (padrão), redirecionam ao fatiador desktop via esquema URI.`,slicerCard:`Fatiador`,orcaslicerApiUrl:`OrcaSlicer sidecar URL`,bambuStudioApiUrl:`Bambu Studio sidecar URL`,slicerStallTimeout:`Tempo limite de inatividade do fatiador (minutos)`,slicerStallTimeoutDescription:`Desiste de um fatiamento apos esse tempo sem progresso do sidecar. Modelos pesados que continuam relatando progresso nunca sao interrompidos, por mais que demorem. Sidecars que nao relatam progresso usam este valor como limite de tempo total.`,slicerApiUrlDescription:`URL do contêiner sidecar slicer-API. Deixe em branco para usar SLICER_API_URL / BAMBU_STUDIO_API_URL.`,externalCameras:`Câmeras Externas`,costTracking:`Rastreamento de Custos`,printsOnly:`Apenas Impressões`,totalConsumption:`Consumo Total`,dataManagement:`Gerenciamento de Dados`,storageUsage:`Uso de Armazenamento`,storageUsageDescription:`Detalhamento do uso de dados por categoria`,storageUsageTotal:`Total`,storageUsageErrors:`Erros`,storageUsageOtherBreakdown:`Outros (inclui ativos estáticos, scripts e arquivos de configuração)`,storageUsageSystem:`Sistema`,storageUsageData:`Dados`,storageUsageUnavailable:`Informações de uso de armazenamento indisponíveis`,clearNotificationLogsDescription:`Excluir logs de notificação com mais de 30 dias`,resetUiPreferencesDescription:`Redefinir ordem da barra lateral, tema, modos de exibição e preferências de layout. Impressoras, arquivos e configurações não são afetados.`,enableHomeAssistant:`Ativar Home Assistant`,enableMqtt:`Ativar MQTT`,useTls:`Usar TLS`,enableMetricsEndpoint:`Ativar Endpoint de Métricas`,availableMetrics:`Métricas Disponíveis`,billingEnabled:`Habilitar cobrança`,billingEnabledDescription:`Cobrar dos usuários por impressões e habilitar recursos de financeiro`,printerKillSwitch:`Parada Automática de Impressão`,printerKillSwitchDescription:`Interromper imediatamente impressões não autorizadas`,financeBudgetReset:`Redefinir Orçamento Financeiro Mensal`,financeBudgetResetDay:`Dia de Redefinição`,financeBudgetResetDayHelp:`Para meses curtos, a redefinição utiliza o último dia do mês.`,financeBudgetResetTimezone:`Fuso Horário de Redefinição`,financeBudgetResetTimezoneHelp:`Der Budget-Fenster-Start wird in dieser Zeitzone berechnet.`,rebuildLedger:`Reconstruir razão da carteira`,rebuildLedgerStarted:`Reconstrução da razão iniciada`,rebuildLedgerConfirmTitle:`Reconstruir razão da carteira?`,rebuildLedgerConfirmMessage:`Isto reconstruirá a razão da carteira para reparar valores de saldo histórico. Execute isso apenas se você souber o que está fazendo.`,rebuildLedgerInProgress:`Iniciando reconstrução...`,editUser:`Editar Usuário`,deleteUserTitle:`Excluir Usuário`,groupName:`Nome do Grupo`,leaveEmptyForAnonymous:`Deixe vazio para anônimo`,leaveEmptyForNoAuth:`Deixe vazio para sem autenticação`,enterNewPassword:`Digite a nova senha`,confirmNewPassword:`Confirme a nova senha`,enterGroupName:`Digite o nome do grupo`,enterDescriptionOptional:`Digite a descrição (opcional)`,enterCurrentPassword:`Digite a senha atual`,enterNewPasswordMin6:`Digite a nova senha (mínimo 6 caracteres)`,toast:{keyCopied:`Chave copiada para a área de transferência`,copyFailed:`Falha ao copiar a chave`,keyAddedToBrowser:`Chave adicionada ao Navegador de API`,clearLogsFailed:`Falha ao limpar logs`,uiPreferencesReset:`Preferências de UI redefinidas. Atualizando...`,authDisabled:`Autenticação desativada com sucesso`,authDisableFailed:`Falha ao desativar a autenticação`,apiKeyCreated:`Chave de API criada`,apiKeyDeleted:`Chave de API excluída`,userCreated:`Usuário criado com sucesso`,userUpdated:`Usuário atualizado com sucesso`,userDeleted:`Usuário excluído com sucesso`,groupCreated:`Grupo criado com sucesso`,groupUpdated:`Grupo atualizado com sucesso`,groupDeleted:`Grupo excluído com sucesso`,fillRequiredFields:`Por favor, preencha todos os campos obrigatórios`,passwordsDoNotMatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 8 caracteres`,passwordNeedsUppercase:`A senha deve conter pelo menos uma letra maiúscula`,passwordNeedsLowercase:`A senha deve conter pelo menos uma letra minúscula`,passwordNeedsDigit:`A senha deve conter pelo menos um dígito`,passwordNeedsSpecial:`A senha deve conter pelo menos um caractere especial`,enterGroupName:`Por favor, insira um nome de grupo`,settingsSaved:`Configurações salvas`,noPermissionUpdate:`Você não tem permissão para alterar as configurações`,cameraSettingsSaved:`Configurações da câmera salvas`,enterCameraUrl:`Por favor, insira a URL da câmera`,passwordChanged:`Senha alterada com sucesso`,connectionFailed:`Falha na conexão`,testFailed:`Falha no teste`,cameraConnected:`Câmera conectada{{resolution}}`,cameraConnectedCoalesced:`Câmera conectada{{resolution}} (compartilhada com uma captura já em andamento)`},testConnection:`Testar Conexão`,catalog:{spoolCatalog:`Catálogo de Carretéis`,spoolCatalogDescription:`Pesos de carretéis vazios por marca/tipo. Usado para pesquisa automática de peso ao adicionar carretéis.`,searchCatalog:`Pesquisar no catálogo...`,addNewEntry:`Adicionar Nova Entrada`,namePlaceholder:`Nome (ex.: Bambu Lab - Plástico)`,weight:`Peso`,type:`Tipo`,default:`Padrão`,custom:`Personalizado`,noMatch:`Nenhuma entrada corresponde à sua pesquisa`,empty:`Nenhuma entrada no catálogo`,deleteEntry:`Excluir Entrada`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,resetCatalog:`Redefinir Catálogo`,resetConfirm:`Redefinir catálogo para os padrões? Isso removerá todas as entradas personalizadas.`,loadFailed:`Falha ao carregar o catálogo de carretéis`,nameWeightRequired:`Nome e peso são obrigatórios`,entryAdded:`Entrada adicionada`,addFailed:`Falha ao adicionar entrada`,entryUpdated:`Entrada atualizada`,updateFailed:`Falha ao atualizar entrada`,entryDeleted:`Entrada excluída`,deleteFailed:`Falha ao excluir entrada`,resetSuccess:`Catálogo redefinido para os padrões`,resetFailed:`Falha ao redefinir catálogo`,exported:`Exportadas {{count}} entradas`,imported:`Importadas {{added}} entradas ({{skipped}} ignoradas)`,importFailed:`Falha ao importar: formato JSON inválido`,exportTooltip:`Exportar catálogo para JSON`,importTooltip:`Importar catálogo de JSON`,resetTooltip:`Redefinir para os padrões`,selectedCount:`{{count}} selecionados`,deleteSelected:`Excluir Selecionados`,bulkDeleteConfirm:`Tem certeza de que deseja excluir {{count}} entradas?`,bulkDeleted:`{{count}} entradas excluídas`,bulkDeleteFailed:`Falha ao excluir entradas`,material:`Material`,spoolWeight:`Peso do carretel`,color:`Cor`,updateSpoolWeight:`Atualizar peso do carretel`,filamentUpdated:`Filamento atualizado`,filamentUpdateFailed:`Falha ao atualizar filamento`,filamentUpdateInvalid:`Dados de filamento inválidos`,keepExistingSpoolWeight:`Manter peso antigo para carretéis existentes`,keepExistingSpoolWeightDesc:`Os carretéis já criados com este tipo de filamento mantêm o peso tara antigo. Novos carretéis usam o valor atualizado.`,applyToAllSpools:`Aplicar a todos os carretéis`,applyToAllSpoolsDesc:`Todos os cálculos de peso para este tipo de filamento usam imediatamente o novo peso tara.`},colorCatalog:{title:`Catálogo de Cores`,description:`Cores de filamento por fabricante/material. Usado para pesquisa automática de cores ao adicionar carretéis.`,searchColors:`Pesquisar cores...`,allManufacturers:`Todos os fabricantes`,addNewColor:`Adicionar Nova Cor`,manufacturer:`Fabricante`,colorName:`Nome da Cor`,hex:`Hex`,materialOptional:`Material (opcional)`,showing:`Mostrando {{filtered}} de {{total}} cores`,noMatch:`Nenhuma cor corresponde à sua pesquisa`,empty:`Nenhuma cor no catálogo`,deleteColor:`Excluir Cor`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,resetCatalog:`Redefinir Catálogo de Cores`,resetConfirm:`Redefinir catálogo para os padrões? Isso removerá todas as cores personalizadas.`,sync:`Sincronizar`,starting:`Iniciando...`,syncTooltip:`Sincronizar do FilamentColors.xyz (2000+ cores, pode levar um minuto)`,loadFailed:`Falha ao carregar o catálogo de cores`,fieldsRequired:`Fabricante, nome da cor e cor hex são obrigatórios`,colorAdded:`Cor adicionada`,addFailed:`Falha ao adicionar cor`,colorUpdated:`Cor atualizada`,updateFailed:`Falha ao atualizar cor`,colorDeleted:`Cor excluída`,deleteFailed:`Falha ao excluir cor`,resetSuccess:`Catálogo de cores redefinido para os padrões`,resetFailed:`Falha ao redefinir catálogo`,syncUpToDate:`Já está atualizado ({{count}} cores verificadas)`,syncComplete:`Adicionadas {{added}} novas cores ({{skipped}} já existiam)`,syncError:`Erro de sincronização`,syncFailed:`Falha ao sincronizar do FilamentColors.xyz`,exported:`Exportadas {{count}} cores`,imported:`Importadas {{added}} cores ({{skipped}} ignoradas)`,importFailed:`Falha ao importar: formato JSON inválido`,selectedCount:`{{count}} selecionados`,deleteSelected:`Excluir Selecionados`,bulkDeleteConfirm:`Tem certeza de que deseja excluir {{count}} cores?`,bulkDeleted:`{{count}} cores excluídas`,bulkDeleteFailed:`Falha ao excluir cores`},dateFormat:`Formato de data`,dateFormatUs:`US (MM/DD/AAAA)`,dateFormatEu:`EU (DD/MM/AAAA)`,dateFormatIso:`ISO (AAAA-MM-DD)`,timeFormat:`Formato de hora`,timeFormat12:`12 horas (3:30 PM)`,timeFormat24:`24 horas (15:30)`,defaultPrinter:`Impressora padrão`,defaultPrinterDescription:`Pré-selecionar esta impressora para uploads, reimpressões e outras operações.`,slicerBambuStudio:`Bambu Studio`,slicerOrcaSlicer:`OrcaSlicer`,sidebarOrderDescription:`Use o layout da barra lateral para reordenar itens, restaurar a visibilidade e gerenciar links personalizados.`,setDefault:`Definir padrão`,sidebarOrderSetDefaultHint:`Definir padrão aplica a ordem atual do menu aos usuários que ainda não personalizaram o seu.`,sidebarDefaultSet:`Ordem padrão do menu foi definida.`,sidebarDefaultCleared:`Ordem padrão do menu removida.`,sidebarDefaultFailed:`Falha ao definir a ordem padrão do menu.`,reset:`Redefinir`,darkMode:`Modo escuro`,lightMode:`Modo claro`,active:`(ativo)`,background:`Fundo`,accent:`Destaque`,style:`Estilo`,bgNeutral:`Neutro`,bgWarm:`Quente`,bgCool:`Frio`,bgOled:`OLED Preto`,bgSlate:`Azul ardósia`,bgForest:`Verde floresta`,accentGreen:`Verde`,accentTeal:`Azul-petróleo`,accentBlue:`Azul`,accentOrange:`Laranja`,accentPurple:`Roxo`,accentRed:`Vermelho`,styleClassic:`Clássico`,styleGlow:`Brilhante`,styleVibrant:`Vibrante`,themeToggleHint:`Alternar entre modo escuro, claro e sistema usando o ícone na barra lateral.`,progressInTitle:`Progresso na aba`,progressInTitleDescription:`Mostra a porcentagem da impressão ativa e um anel de progresso na aba do navegador.`,autoArchivePrints:`Arquivar impressões automaticamente`,autoArchiveDescription:`Salvar automaticamente arquivos 3MF quando impressões forem concluídas`,saveThumbnailsDescription:`Extrair e salvar imagens de pré-visualização dos arquivos 3MF`,captureFinishPhotoDescription:`Tirar foto da câmera da impressora quando a impressão for concluída. Bambuddy grava um timelapse curto durante a impressão para que a foto possa ser obtida do momento antes da mesa descer; o arquivo do timelapse é mantido se você habilitou o timelapse para esta impressão, caso contrário ele é excluído automaticamente após a captura da foto.`,finishPhotoRestorePlate:`Elevar a mesa para a foto final`,finishPhotoRestorePlateDescription:`A impressora baixa a mesa cerca de 100 mm ao fim de uma impressão, deixando a peça pronta abaixo do enquadramento da câmera. O Bambuddy a eleva novamente até logo acima da última camada impressa, tira a foto e depois a baixa de novo. Ignorado quando a altura da impressão é desconhecida ou há outro trabalho na fila.`,ffmpegNotInstalled:`ffmpeg não instalado`,ffmpegRequired:`A captura de câmera requer ffmpeg. Instale via <brew>brew install ffmpeg</brew> (macOS) ou <apt>apt install ffmpeg</apt> (Linux).`,camera:`Câmera`,cameraViewMode:`Modo de visualização da câmera`,cameraOverlayDescription:`A câmera abre em uma sobreposição redimensionável na tela principal`,cameraWindowDescription:`A câmera abre em uma janela separada do navegador`,externalCamerasDescription:`Configure câmeras externas para substituir a câmera integrada da impressora. Suporta streams MJPEG, RTSP, snapshots HTTP e câmeras USB (V4L2). Quando habilitada, a câmera externa é usada para visualização ao vivo e fotos de conclusão.`,cameraPlaceholderUsb:`Caminho do dispositivo (/dev/video0)`,cameraPlaceholderUrl:`URL da câmera (rtsp://... ou http://...)`,cameraTypeMjpeg:`Stream MJPEG`,cameraTypeRtsp:`Stream RTSP`,cameraTypeSnapshot:`Snapshot HTTP`,cameraTypeUsb:`Câmera USB (V4L2)`,cameraSnapshotUrl:`URL de captura (opcional)`,cameraSnapshotUrlPlaceholder:`http://192.168.1.61:1984/api/frame.jpeg?src=printer`,cameraSnapshotUrlHelp:`URL de frame único usado para miniaturas de notificação, fotos de finalização, frames do timelapse por camada e detecção de mesa. Timelapse e detecção de mesa requerem cada um seu próprio toggle por impressora — esta URL é apenas a fonte de imagem que eles usam quando ativos. Deixe em branco para capturar do stream ao vivo acima. Útil para go2rtc (/api/frame.jpeg) e câmeras IP com endpoint de captura dedicado.`,cameraRotation:`Rotação`,cameraLight:`Acender a luz da câmara para a câmera`,cameraLightHint:`Acende a luz enquanto alguém assiste à câmera e para as capturas automáticas, como fotos de notificações, fotos de conclusão e imagens do Home Assistant. Depois apaga de novo, mas só se o Bambuddy a acendeu.`,cameraLightDelay:`Espera antes da captura`,cameraLightDelayHint:`Só quando a luz estava apagada. Dá tempo para a luz, e qualquer luz sincronizada com ela, acender.`,cameraLightMode_off:`Desligado`,cameraLightMode_all:`Todas as impressoras`,cameraLightMode_selected:`Impressoras escolhidas`,cameraLightDelayUnit:`segundos`,cameraLightNoneSelected:`Nenhuma impressora escolhida ainda.`,cameraLightAddPrinter:`Adicionar impressora`,cameraLightRemovePrinter:`Remover {{name}}`,externalCameraAdd:`Adicionar câmera externa`,externalCameraRemove:`Remover a câmera externa de {{name}}`,printerPickerSearch:`Pesquisar impressoras`,printerPickerNoMatch:`Nenhuma impressora corresponde.`,cameraShowSettings:`Configurações da câmera`,test:`Testar`,connected:`Conectado`,disconnected:`Desconectado`,currency:`Moeda`,defaultFilamentCost:`Custo padrão do filamento (por kg)`,electricityCost:`Custo da eletricidade por kWh`,energyPriceSource:`Origem do preço da eletricidade`,energyPriceSourceFixed:`Preço fixo`,energyPriceSourceHomeAssistant:`Sensor do Home Assistant`,energyPriceHaEntity:`Sensor de preço`,energyPriceLastRead:`Último preço lido por kWh`,energyPriceFixedHint:`Um novo preço vale para a energia consumida a partir de então; a energia já consumida mantém o preço em que foi consumida.`,energyPriceHaHint:`Lido a cada hora e no início e no fim de cada impressão, e cada hora de energia é calculada pelo seu próprio preço. O sensor deve informar o preço por kWh (por MWh e por Wh são convertidos).`,energyPriceHaNotConfigured:`O Home Assistant não está configurado. Conecte-o em Configurações → Rede → Home Assistant.`,energyDisplayMode:`Modo de exibição de energia`,energyModePrintDescription:`O painel mostra a soma da energia usada durante as impressões`,energyModeTotalDescription:`O painel mostra a energia total dos plugues inteligentes`,fileManager:`Gerenciador de arquivos`,createArchiveEntry:`Criar entrada de arquivo ao imprimir`,createArchiveEntryDescription:`Ao imprimir pelo gerenciador de arquivos, criar opcionalmente uma entrada de arquivo`,lowDiskSpaceWarning:`Aviso de pouco espaço em disco`,lowDiskSpaceDescription:`Mostrar aviso quando o espaço livre em disco ficar abaixo deste limite`,printerFirmware:`Firmware da impressora`,checkFirmwareDescription:`Verificar atualizações de firmware da Bambu Lab`,bambuddySoftware:`Software Bambuddy`,autoCheckDescription:`Verificar automaticamente novas versões ao iniciar`,checkNow:`Verificar agora`,updateAvailableVersion:`Atualização disponível: v{{version}}`,releaseNotes:`Notas da versão`,updateViaDocker:`Atualizar via Docker Compose:`,composeDirectory:`Diretório do Compose`,composeDirectoryHint:`Diretório que contém seu docker-compose.yml. Deixe em branco para omitir o cd.`,copyUpdateCommand:`Copiar comando de atualização`,updateViaHomeAssistant:`As atualizações são gerenciadas pelo Supervisor do Home Assistant. Abra Configurações → Complementos → Bambuddy no Home Assistant para instalar a nova versão.`,updateViaWindowsInstaller:`Instalações no Windows são atualizadas executando o instalador novamente. Baixe a nova versão abaixo — seus dados, configurações e impressoras são preservados.`,downloadWindowsInstaller:`Baixar instalador da v{{version}}`,installUpdate:`Instalar atualização`,latestVersionRunning:`Você está usando a versão mais recente`,failedToCheckUpdates:`Falha ao verificar atualizações: {{error}}`,backupRestore:`Backup e Restauração`,backupRestoreDescription:`Exportar/importar configurações e configurar backup do GitHub`,goToBackup:`Ir para backup`,externalUrl:`URL externa`,externalUrlDescription:`A URL externa onde o Bambuddy está acessível. Usada para imagens de notificação e integrações externas.`,bambuddyUrl:`URL do Bambuddy`,externalUrlHint:`Inclua protocolo e porta (ex: http://192.168.1.100:8000)`,ftpRetry:`Tentativa FTP`,ftpRetryDescription:`Tentar novamente operações FTP quando o WiFi da impressora é instável. Aplica-se a downloads 3MF, uploads de impressão, downloads de timelapse e atualizações de firmware.`,autoRetryDescription:`Tentar novamente automaticamente operações FTP que falharam`,retryAttempts:`Tentativas de reenvio`,retryDelay:`Atraso entre tentativas`,connectionTimeout:`Tempo limite de conexão`,time_one:`{{count}} vez`,time_other:`{{count}} vezes`,second_one:`{{count}} segundo`,second_other:`{{count}} segundos`,nSeconds:`{{count}} segundos`,increaseForWeakWifi:`Aumente para impressoras com WiFi fraco`,homeAssistant:`Home Assistant`,homeAssistantFullDescription:`Conecte ao Home Assistant para controlar plugues inteligentes via API REST do HA. Suporta entidades switch, light, input_boolean e script.`,homeAssistantUrl:`URL do Home Assistant`,longLivedAccessToken:`Token de acesso de longa duração`,haTokenHint:`Crie um token no HA: Perfil → Tokens de acesso de longa duração → Criar token`,connectionSuccessful:`Conexão bem-sucedida`,connectionFailed:`Falha na conexão`,haConnectionSuccess:`Conectado com sucesso ao Home Assistant.`,haConnectionFailed:`Falha ao conectar ao Home Assistant.`,mqttPublishing:`Publicação MQTT`,mqttDescription:`Publique eventos do BamBuddy para um broker MQTT externo para integração com Node-RED, Home Assistant e outros sistemas de automação.`,mqttEnableDescription:`Publicar eventos no broker MQTT externo`,brokerHostname:`Hostname do broker`,port:`Porta`,usernameOptional:`Usuário (opcional)`,passwordOptional:`Senha (opcional)`,topicPrefix:`Prefixo do tópico`,topicPrefixHint:`Os tópicos serão: {{prefix}}/printers/<serial>/status, etc.`,prometheusMetrics:`Métricas Prometheus`,prometheusEndpointDescription:`Expor métricas da impressora em <code>/api/v1/metrics</code> para monitoramento Prometheus/Grafana.`,bearerTokenOptional:`Token Bearer (opcional)`,bearerTokenHint:`Se definido, as requisições devem incluir <code>Authorization: Bearer <token></code>`,metricsConnectionStatus:`Status da conexão`,metricsPrinterState:`Estado da impressora (idle/printing/etc)`,metricsPrintProgress:`Progresso da impressão 0-100%`,metricsBedTemp:`Temperatura da mesa`,metricsNozzleTemp:`Temperatura do bico`,metricsPrintsTotal:`Total de impressões por resultado`,metricsMore:`...e mais (camadas, ventoinhas, fila, uso de filamento)`,smartPlugsDescription:`Conecte plugues inteligentes (Tasmota ou Home Assistant) para automatizar o controle de energia e rastrear o consumo energético das suas impressoras.`,allOn:`Ligar todos`,allOff:`Desligar todos`,addSmartPlug:`Adicionar plugue inteligente`,energySummary:`Resumo de energia`,currentPower:`Potência atual`,plugsOnline:`{{reachable}}/{{total}} plugues online`,today:`Hoje`,yesterday:`Ontem`,total:`Total`,enablePlugsForSummary:`Habilite os plugues para ver o resumo de energia`,addNotificationProvider:`Adicionar`,systemBadge:`(Sistema)`,creating:`Criando...`,changing:`Alterando...`,deleteUserAndItems:`Excluir usuário E seus itens`,deleteUserKeepItems:`Excluir usuário, manter itens (ficarão sem dono)`,ok:`OK`,twoFa:{totpTitle:`App Autenticador (TOTP)`,totpDesc:`Use um app como Google Authenticator, Aegis ou Authy.`,emailOtpTitle:`OTP por e-mail`,emailOtpDesc:`Envie um código único para {{email}} ao fazer login.`,emailOtpNoEmail:`Adicione um endereço de e-mail à sua conta para ativar este método.`,addEmailFirst:`Sua conta não tem endereço de e-mail. Peça a um administrador para adicionar um.`,setupTotp:`Configurar App Autenticador`,setupAuthApp:`Configurar App Autenticador`,setupInstructions:`Escaneie o código QR com seu app autenticador e confirme com um código.`,manualEntry:`Não consegue escanear? Digite este segredo manualmente:`,scannedContinue:`Código escaneado — continuar`,enterCodeToConfirm:`Digite o código de 6 dígitos do seu app autenticador para confirmar.`,activate:`Ativar`,disableTotp:`Desativar Autenticador`,disableConfirmHint:`Digite um código TOTP válido ou um código de backup para desativar o autenticador.`,totpDisabled:`App autenticador desativado.`,emailOtpEnabled:`OTP por e-mail ativado.`,emailOtpDisabled:`OTP por e-mail desativado.`,smtpRequired:`Por favor, configure e teste as configurações SMTP primeiro.`,invalidCode:`Código inválido. Por favor, tente novamente.`,enableEmailOtp:`Ativar OTP por e-mail`,disableEmailOtp:`Desativar OTP por e-mail`,emailSetupEnterCode:`Um código de verificação foi enviado para o seu endereço de e-mail. Digite-o abaixo para confirmar que você possui esta caixa de entrada.`,verifyAndEnable:`Verificar e Ativar`,emailDisablePasswordHint:`Digite a senha da sua conta para confirmar a desativação do OTP por e-mail.`,passwordPlaceholder:`Digite sua senha`,backupCodesTitle:`Salve seus códigos de backup`,backupCodesWarning:`Guarde estes códigos em lugar seguro. Cada código só pode ser usado uma vez.`,backupCodesRemaining:`{{count}} códigos de backup restantes`,savedCodes:`Códigos salvos`,regenBackup:`Regenerar códigos de backup`,regenBackupHint:`Digite seu código TOTP atual para gerar 10 novos códigos de backup.`,newBackupCodes:`Novos códigos de backup`,linkedAccounts:`Contas SSO vinculadas`,linkedAccountsDesc:`Estes provedores de identidade externos estão vinculados à sua conta.`,oidcUnlinked:`Conta desvinculada.`},sessionPolicy:{title:`Política de sessão`,description:`Duração máxima da sessão para novos logins de usuário. Tokens já emitidos mantêm sua expiração original.`,preset24h:`24 horas`,preset7d:`7 dias`,preset30d:`30 dias`,customHoursLabel:`Duração personalizada da sessão em horas`,hoursSuffix:`horas`,warning:`Sessões mais longas reduzem a proteção de logout automático. Recomendado apenas para implantações de usuário único confiáveis.`},oidc:{title:`Provedores SSO / OIDC`,desc:`Configure provedores OpenID Connect para login único.`,addProvider:`Adicionar provedor`,newProvider:`Novo provedor`,empty:`Nenhum provedor OIDC configurado ainda.`,created:`Provedor criado.`,updated:`Provedor atualizado.`,deleted:`Provedor excluído.`,refreshIcon:`Atualizar ícone`,removeIcon:`Remover ícone`,iconRefreshed:`Ícone atualizado.`,iconRemoved:`Ícone removido.`,iconFetchFailed:`Não foi possível obter o ícone da URL do provedor.`,deleteTitle:`Excluir provedor`,deleteMessage:`Excluir "{{name}}"? Todas as contas vinculadas serão desconectadas.`,form:{name:`Nome de exibição`,issuerUrl:`URL do emissor`,clientId:`ID do cliente`,clientSecret:`Client secret`,scopes:`Escopos`,iconUrl:`URL do ícone (opcional)`,enabled:`Ativado`,autoCreate:`Criar usuários automaticamente`,autoCreateDesc:`Cria automaticamente uma conta local no primeiro login.`,autoLink:`Vincular contas existentes automaticamente`,autoLinkDesc:`Vincula contas locais existentes por e-mail no primeiro login.`,secretHint:`deixe em branco para manter`,secretPlaceholder:`novo segredo`,emailClaim:`Claim de e-mail`,emailClaimDesc:`Claim JWT usado como identidade de e-mail. Use 'preferred_username' ou 'upn' para Azure Entra ID (que não envia email_verified). Use apenas nomes de claim confiáveis.`,emailClaimPlaceholder:`e-mail`,emailClaimCustomClaimAutoLinkWarning:`Claims personalizadas são seguras para vinculação automática apenas quando o valor é administrado pelo tenant (ex. Azure Entra ID upn / preferred_username). Não ative a vinculação automática se seu IdP permite que usuários auto-declarem essa claim.`,requireEmailVerified:`Exigir e-mail verificado`,requireEmailVerifiedDesc:`Aceitar o claim de e-mail apenas quando o provedor o marcar como verificado.`,requireEmailVerifiedWarning:`Aviso: o e-mail será aceito sem verificação. Use apenas com provedores confiáveis.`,requireEmailVerifiedAutoLink:`Desabilite o vínculo automático primeiro para alterar esta configuração.`,defaultGroup:`Grupo padrão`,defaultGroupDesc:`Grupo atribuído aos usuários criados automaticamente. Retorna a Viewers se não definido.`,defaultGroupViewersFallback:`Viewers (padrão)`,autologin:`Login automático`,autologinDesc:`Redirecionar visitantes não autenticados diretamente para este provedor. Apenas um provedor pode ter esta marcação.`,groupClaim:`Claim de grupos`,groupClaimDesc:`Claim JWT que contém os grupos do usuário no provedor de identidade. A maioria usa 'groups'; o valor pode ser um array JSON ou uma string.`,groupMapping:`Mapeamento de grupos`,groupMappingDesc:`Os grupos mapeados são sincronizados a cada login. Grupos não listados aqui não são alterados, preservando atribuições manuais. Deixe vazio para desativar a sincronização de grupos.`,groupSync:`Sincronização de grupos`,groupSyncOn:`Ativa`,groupMappingIdpGroupPlaceholder:`Nome do grupo no provedor de identidade`,groupMappingSelectGroup:`Selecionar grupo do Bambuddy…`,groupMappingAddRow:`Adicionar mapeamento`,groupMappingDeletedGroupOption:`{{group}} (excluído)`,groupMappingDeletedGroupWarning:`Este grupo do Bambuddy foi excluído. Escolha um substituto ou remova este mapeamento.`,groupMappingIncompleteRow:`Informe o grupo do provedor de identidade e escolha um grupo do Bambuddy, ou remova este mapeamento.`,groupMappingDuplicateRow:`Este grupo do provedor de identidade já está mapeado acima. Os nomes de grupo são comparados sem diferenciar maiúsculas de minúsculas.`}},encryption:{title:`Status de criptografia MFA`,enabledFromEnv:`Criptografia em repouso ativa (chave da variável de ambiente MFA_ENCRYPTION_KEY)`,enabledFromFile:`Criptografia em repouso ativa (chave do diretório de dados)`,enabledGenerated:`Criptografia em repouso ativa com chave auto-gerada`,notConfigured:`Criptografia em repouso não configurada`,notConfiguredDesc:`Os segredos TOTP e client_secrets OIDC são armazenados em texto plano. Defina MFA_ENCRYPTION_KEY ou reinicie o Bambuddy com um diretório de dados gravável para gerar automaticamente.`,allEncrypted:`Todos os segredos MFA são criptografados em repouso.`,legacyRowsLabel:`Linhas legadas em texto plano`,encryptedRowsLabel:`Linhas criptografadas`,legacyRowsWarning:`{{count}} linha(s) legada(s) em texto plano detectada(s). Salve novamente o provedor OIDC ou registre novamente o autenticador do usuário para migrar ao armazenamento criptografado.`,backupHint:`A chave auto-gerada é armazenada em DATA_DIR/.mfa_encryption_key e incluída em ZIPs de backup locais. Mantenha seus backups seguros ou defina MFA_ENCRYPTION_KEY explicitamente.`,decryptionBrokenTitle:`Chave de criptografia ausente`,decryptionBrokenError:`{{count}} registro(s) criptografado(s) não podem ser descriptografados pois a chave de criptografia não está mais disponível. Restaure o MFA_ENCRYPTION_KEY anterior ou DATA_DIR/.mfa_encryption_key para recuperar.`,migrationErrorWarning:`{{count}} linha(s) antiga(s) não puderam ser recriptografadas na inicialização. Verifique os logs do servidor e reinicie o Bambuddy para tentar novamente.`},spoolbuddy:{infoTitle:`Dispositivos SpoolBuddy`,infoBody:`Os kiosks SpoolBuddy se registram automaticamente via heartbeat. Cancele o registro de um dispositivo aqui se não estiver mais em uso ou se um duplicado obsoleto foi deixado por uma falha do daemon.`,duplicatesTitle:`{{count}} dispositivos registrados`,duplicatesBody:`Apenas o primeiro dispositivo registrado é usado pela interface do kiosk. Se algum destes for um duplicado obsoleto após uma falha, cancele seu registro — um dispositivo online se registrará novamente no próximo heartbeat.`,empty:`Nenhum dispositivo SpoolBuddy registrado ainda.`,online:`Online`,offline:`Offline`,unregister:`Cancelar registro`,unregisterSuccess:`Dispositivo removido`,unregisterError:`Falha ao cancelar registro`,confirmTitle:`Cancelar registro do dispositivo SpoolBuddy?`,confirmBody:`Isso removerá "{{hostname}}" ({{deviceId}}) do banco de dados. Se o dispositivo estiver online, ele se registrará novamente no próximo heartbeat.`,ipAddress:`Endereço IP`,firmware:`Firmware`,lastSeen:`Visto pela última vez`,daemonUptime:`Tempo ativo do daemon`,systemUptime:`Tempo ativo do sistema`,never:`nunca`,nfc:`NFC`,scale:`Balança`,cpuTemp:`Temp. CPU`,cpuLoad:`Carga da CPU`,memory:`Memória`,disk:`Disco`,update:`Atualizar`,updateConfirmTitle:`Atualizar daemon do Spoolbuddy?`,updateConfirmBody:`Iniciar uma atualização de software em "{{hostname}}"? O daemon será reiniciado após a aplicação.`,restartBrowser:`Reiniciar navegador`,restartBrowserConfirmTitle:`Reiniciar o navegador do kiosk?`,restartBrowserConfirmBody:`Reiniciar o navegador do kiosk em "{{hostname}}"? A tela ficará em branco brevemente.`,restartDaemon:`Reiniciar daemon`,restartDaemonConfirmTitle:`Reiniciar daemon do Spoolbuddy?`,restartDaemonConfirmBody:`Reiniciar o daemon do Spoolbuddy em "{{hostname}}"? O dispositivo ficará offline por alguns segundos.`,reboot:`Reiniciar`,rebootConfirmTitle:`Reiniciar o dispositivo?`,rebootConfirmBody:`Reiniciar "{{hostname}}"? O dispositivo ficará offline por cerca de um minuto.`,shutdown:`Desligar`,shutdownConfirmTitle:`Desligar o dispositivo?`,shutdownConfirmBody:`Desligar "{{hostname}}"? Será necessário acesso físico para ligá-lo novamente.`,commandConfirm:`Confirmar`,commandQueued:`Comando enfileirado`,commandError:`Falha ao enviar comando`},pipelineLimits:{title:`Limites de pipelines do slicer`,maxCopiesLabel:`Cópias máximas por execução`,maxCopiesDesc:`Limite superior de cópias que operadores podem solicitar ao executar uma pipeline. O limite rígido no lado do servidor é 1000.`},pipelines:{title:`Pipelines do Slicer`,subtitle:`Pacotes de predefinições reutilizáveis (impressora + processo + filamentos + tipo de mesa). Salve um a partir do diálogo Cortar e aplique com um clique no próximo arquivo.`,loading:`Carregando pipelines…`,loadError:`Não foi possível carregar as pipelines.`,confirmDelete:`Excluir esta pipeline? Isso não pode ser desfeito.`,staleWarning:`Uma ou mais predefinições referenciadas não existem mais. Salve novamente esta pipeline a partir do diálogo Cortar para corrigir.`,empty:{title:`Ainda não há pipelines.`,howto:`Abra o diálogo Cortar em qualquer arquivo, escolha impressora / processo / filamentos / mesa e clique em "Salvar como pipeline". Suas pipelines salvas aparecerão aqui.`},field:{name:`Nome da pipeline`,description:`Descrição`,targetPrinter:`Impressora de destino`,noTarget:`— Sem destino —`,targetKind:`Tipo de destino`,targetKindSpecific:`Impressora específica`,targetKindClass:`Classe de impressora`,targetModelClass:`Modelo de impressora`,fanoutStrategy:`Estratégia de distribuição`,fanout:{max_parallel:`Máximo paralelo — distribuir em qualquer impressora ociosa compatível`,round_robin:`Round robin — alternar entre impressoras elegíveis`,fill_one_first:`Encher uma primeiro — fixar todas as cópias em uma impressora`},fanoutShort:{max_parallel:`paralelo`,round_robin:`round robin`,fill_one_first:`primeiro um`}},action:{save:`Salvar`,cancel:`Cancelar`,rename:`Renomear`,delete:`Excluir`},slot:{printer:`Impressora`,process:`Processo`,filament:`Filamento`,filamentN:`Filamento {{n}}`,filamentAll:`Todos os {{n}} slots`,bed:`Mesa`},group:{profiles:`Perfis`,filaments:`Filamentos`},searchPlaceholder:`Buscar pipelines…`,filterTargetType:`Filtrar por tipo de destino`,filterTarget:`Filtrar por destino`,filter:{all:`Todos os destinos`,noTarget:`Sem destino`,count:`{{shown}} / {{total}}`,noMatches:`Nenhuma pipeline corresponde aos filtros atuais.`},toast:{saved:`Pipeline salva`,saveFailed:`Falha ao salvar`,deleted:`Pipeline excluída`,deleteFailed:`Falha ao excluir`},noTargetHint:`Defina uma impressora de destino para executar`,noTargetWarning:`Defina uma impressora de destino antes de executar esta pipeline.`,runs:{lastRun:`Última execução`,status:{queued:`na fila`,slicing:`cortando`,dispatching:`enviando`,in_progress:`imprimindo`,completed:`concluída`,failed:`falhou`,partial_failure:`falha parcial`,cancelled:`cancelada`}}}},notification:{printStarted:{title:`Impressão Iniciada`,body:`{{printer}}: {{filename}} iniciou a impressão`},printCompleted:{title:`Impressão Concluída`,body:`{{printer}}: {{filename}} foi concluída com sucesso`},printFailed:{title:`Falha na Impressão`,body:`{{printer}}: {{filename}} falhou`},printStopped:{title:`Impressão Interrompida`,body:`{{printer}}: {{filename}} foi interrompida`},printProgress:{title:`Progresso da Impressão`,body:`{{printer}}: {{filename}} está {{percent}}% concluída`},printerOffline:{title:`Impressora Offline`,body:`{{printer}} está offline`},printerError:{title:`Erro na Impressora`,body:`{{printer}} – {{error}}`},filamentLow:{title:`Filamento Baixo`,body:`{{printer}}: O filamento está acabando`},maintenanceDue:{title:`Manutenção Pendente`,body:`{{printer}}: {{items}} precisam de atenção`}},errors:{generic:`Algo deu errado`,networkError:`Erro de rede. Por favor, verifique sua conexão.`,notFound:`Não encontrado`,unauthorized:`Não autorizado`,serverError:`Erro no servidor`,validationError:`Por favor, verifique sua entrada`,printerConnectionFailed:`Falha ao conectar à impressora`,saveFailed:`Falha ao salvar alterações`,deleteFailed:`Falha ao excluir`,loadFailed:`Falha ao carregar dados`},hmsErrors:{title:`Erros - {{name}}`,noErrors:`Nenhum erro`,viewOnWiki:`Ver no Bambu Lab Wiki`,mqttVerifyFailedRemedy:`Ative o Modo Desenvolvedor na impressora, reinicie a impressora e inicie o trabalho novamente.`,mqttVerifyFailedDescription:`A impressora rejeitou um comando porque não conseguiu verificá-lo. Impressões, mudanças de temperatura e carregamentos de filamento enviados pelo Bambuddy serão ignorados até que isso seja corrigido.`,severityError:`Erro`,severityWarning:`Aviso`,severityNotice:`Notificação`,severityUnknown:`Nível desconhecido`,uncountedSummary:`Também relatados, não contados ({{n}})`,uncountedHint:`Avisos que não exigem ação e códigos para os quais a Bambu não publica texto. Eles não contam como problemas no cartão da impressora e não enviam notificações.`,unknownCode:`Código HMS desconhecido — consulte o wiki da Bambu Lab para mais detalhes.`,clearInstructions:`Limpe os erros na impressora para descartá-los aqui.`,clearErrors:`Limpar Erros`,clearSuccess:`Erros HMS limpos`,clearFailed:`Falha ao limpar erros HMS`,actionSuccess:`Ação enviada à impressora`,actionFailed:`Falha ao enviar ação`,runoutExpectedSlot:`O filamento acabou em {{ranOut}}. A impressora agora aguarda filamento compatível em {{expected}}. Insira uma bobina em {{expected}} e selecione Tentar novamente.`,runoutExpectedSlotOnly:`A impressora está aguardando filamento compatível em {{expected}}. Insira uma bobina ali e selecione Tentar novamente.`,runoutSlotUnknown:`O filamento acabou e a impressão está pausada. O Bambuddy não conseguiu determinar qual slot a impressora agora espera — verifique a tela da impressora para o slot solicitado.`,actions:{RESUME_PRINTING:`Retomar impressão`,RESUME_PRINTING_DEFECTS:`Retomar (defeitos aceitáveis)`,RESUME_PRINTING_PROBELM_SOLVED:`Retomar (problema resolvido)`,STOP_PRINTING:`Parar impressão`,CHECK_ASSISTANT:`Ver assistente`,FILAMENT_EXTRUDED:`Filamento extrudado, continuar`,RETRY_FILAMENT_EXTRUDED:`Ainda não extrudado, tentar novamente`,CONTINUE:`Finalizado, continuar`,LOAD_VIRTUAL_TRAY:`Carregar filamento`,OK_BUTTON:`OK`,FILAMENT_LOAD_RESUME:`Filamento carregado, retomar`,JUMP_TO_LIVEVIEW:`Ver ao vivo`,NO_REMINDER_NEXT_TIME:`Não lembrar da próxima vez`,REFRESH_NOZZLE:`Verificar novamente`,IGNORE_NO_REMINDER_NEXT_TIME:`Ignorar e não lembrar`,IGNORE_RESUME:`Ignorar e retomar`,PROBLEM_SOLVED_RESUME:`Problema resolvido, retomar`,TURN_OFF_FIRE_ALARM:`Entendido, desligar alarme de incêndio`,RETRY_PROBLEM_SOLVED:`Tentar novamente (problema resolvido)`,CANCLE:`Cancelar`,STOP_DRYING:`Parar secagem`,PROCEED:`Prosseguir`,OK_JUMP_RACK:`OK`,ABORT:`Abortar`,DISABLE_PURIFICATION:`Desativar purificação para esta impressão`,DONT_REMIND_NEXT_TIME:`Não me lembrar`,DBL_CHECK_CANCEL:`Cancelar`,DBL_CHECK_DONE:`Concluído`,DBL_CHECK_RETRY:`Tentar novamente`,DBL_CHECK_RESUME:`Retomar`,DBL_CHECK_OK:`Confirmar`,REMOVE_CLOSE_BTN:`Fechar`}},mqttDebug:{title:`MQTT Log de Depuração`,searchPlaceholder:`Pesquisar tópico ou payload...`,noMessages:`Nenhuma mensagem registrada ainda`,startLoggingHint:`Clique em "Iniciar Registro" para começar a capturar mensagens MQTT`,noMessagesMatch:`Nenhuma mensagem corresponde ao seu filtro`,adjustFilterHint:`Tente ajustar seus critérios de pesquisa ou filtro`,incoming:`Entrada`,outgoing:`Saída`,loggingStopped:`Registro interrompido`,loggingActive:`Registro ativo - as mensagens serão atualizadas automaticamente`,startLogging:`Iniciar Registro`,stopLogging:`Parar Registro`,clearLog:`Limpar Registro`,topic:`ópico`,timestamp:`Carimbo de Data/Hora`,direction:`Direção`,all:`Todos`},printerFiles:{zipStarted_one:`Download ZIP iniciado para {{count}} arquivo`,zipStarted_other:`Download ZIP iniciado para {{count}} arquivos`,zipPartial:`Download ZIP iniciado com {{successful}} de {{total}} arquivos; não foi possível obter os demais`,downloadFailed:`Falha no download: {{error}}`,unknownError:`Erro desconhecido`,shiftSelectHint:`Shift+clique para selecionar um intervalo`,selectFile:`Selecionar {{name}}`,deselectFile:`Desmarcar {{name}}`,title:`Gerenciador de Arquivos`,storageUsed:`Usado:`,storageFree:`Livre:`,filterPlaceholder:`Filtrar arquivos...`,deleteButton:`Excluir`,deleteFiles:`Excluir {{count}} arquivos`,deleteFileConfirm:`Excluir "{{name}}"? Isso não pode ser desfeito.`,deleteFilesConfirm:`Excluir {{count}} arquivos selecionados? Isso não pode ser desfeito.`,noFiles:`Nenhum arquivo na impressora`,printerUnavailable:`O serviço de arquivos da impressora está indisponível. Tente novamente quando a impressora estiver acessível.`,loadingFiles:`Carregando arquivos...`,failedToLoad:`Falha ao carregar arquivos`,toast:{filesDeleted:`Arquivos excluídos: {{count}}`,deleteFailed:`Falha ao excluir: {{error}}`}},confirm:{delete:`Tem certeza de que deseja excluir isso?`,unsavedChanges:`Você tem alterações não salvas. Tem certeza de que deseja sair?`,clearQueue:`Tem certeza de que deseja limpar a fila?`},login:{title:`Login Bambuddy`,subtitle:`Faça login na sua conta`,username:`Nome de usuário`,usernamePlaceholder:`Digite seu nome de usuário`,usernameOrEmail:`Nome de usuário ou Email`,usernameOrEmailPlaceholder:`Nome de usuário ou Email`,password:`Senha`,passwordPlaceholder:`Digite sua senha`,signIn:`Entrar`,signingIn:`Entrando...`,rememberMe:`Lembrar de mim`,forgotPassword:`Esqueceu sua senha?`,autologinFailed:`O login SSO automático falhou. Escolha um provedor abaixo para continuar.`,localDisabledNotice:`O login local está desativado. Use um dos provedores SSO abaixo.`,loginSuccess:`Login realizado com sucesso`,loginFailed:`Falha no login`,enterCredentials:`Por favor, insira nome de usuário e senha`,enterEmail:`Por favor, insira seu endereço de e-mail`,oidcLoginFailed:`Falha no login OIDC`,oidcErrors:{providerError:`O provedor de identidade retornou um erro`,missingParameters:`Parâmetros obrigatórios ausentes no callback OIDC`,invalidState:`Estado OIDC inválido ou já utilizado`,stateExpired:`Sessão OIDC expirada — tente novamente`,providerNotFound:`Provedor OIDC não encontrado`,discoveryFailed:`Falha ao obter o documento de descoberta OIDC`,invalidDiscovery:`Documento de descoberta OIDC inválido`,networkError:`Erro de rede durante a troca de token OIDC`,badResponse:`Resposta inesperada durante a troca de token OIDC`,noIdToken:`O provedor OIDC não retornou um token de ID`,validationFailed:`Falha na validação do token OIDC`,nonceMismatch:`Nonce OIDC não corresponde — possível ataque de replay`,missingSubClaim:`Token OIDC sem claim sub`,noLinkedAccount:`Nenhuma conta local vinculada a esta identidade OIDC`,accountInactive:`Sua conta está inativa`,userResolutionFailed:`Falha ao resolver sua conta`,internalError:`Erro interno durante o login OIDC`,tokenExchangeFailed:`Falha na troca de token OIDC`},forgotPasswordTitle:`Esqueceu a Senha`,forgotPasswordMessage:`Se você esqueceu sua senha, entre em contato com o administrador do sistema para redefini-la.`,forgotPasswordEmailMessage:`Digite seu endereço de email e enviaremos uma nova senha.`,emailAddress:`Endereço de Email`,emailPlaceholder:`seu.email@exemplo.com`,cancel:`Cancelar`,sending:`Enviando...`,sendResetEmail:`Enviar Email de Redefinição`,howToReset:`Como redefinir sua senha:`,resetStep1:`Entre em contato com o administrador do Bambuddy`,resetStep2:`Peça para redefinir sua senha na Gestão de Usuários`,resetStep3:`Eles podem definir uma nova senha temporária para você`,resetStep4:`Faça login com a nova senha e altere-a nas Configurações`,gotIt:`Entendi`,resetPassword:{title:`Definir nova senha`,subtitle:`Digite e confirme sua nova senha abaixo.`,newPassword:`Nova senha`,newPasswordPlaceholder:`Pelo menos 8 caracteres`,confirmPassword:`Confirmar senha`,confirmPasswordPlaceholder:`Repetir nova senha`,saving:`Salvando…`,submit:`Definir nova senha`,backToLogin:`Voltar para o login`,passwordsDoNotMatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 8 caracteres`,resetFailed:`Falha ao redefinir senha. O link pode ter expirado.`},twoFA:{title:`Autenticação em dois fatores`,subtitle:`Sua conta está protegida com 2FA. Insira o código de verificação abaixo.`,methodAuthenticator:`Aplicativo autenticador`,methodEmail:`Código por e-mail`,methodBackup:`Código de recuperação`,instructionsTotp:`Abra seu aplicativo autenticador e insira o código de 6 dígitos gerado para o Bambuddy.`,instructionsEmail:`Um código de 6 dígitos foi enviado para o seu e-mail. Ele é válido por 10 minutos.`,instructionsEmailNotSent:`Clique no botão abaixo para receber um código de verificação por e-mail.`,instructionsBackup:`Insira um dos seus códigos de recuperação de 8 caracteres. Cada código só pode ser utilizado uma vez.`,sendCodeButton:`Enviar código por e-mail`,sendingCode:`Enviando...`,resendCode:`Reenviar código`,codeLabel:`Código de verificação`,backupCodeLabel:`Código de recuperação`,codePlaceholder:`000000`,backupCodePlaceholder:`XXXXXXXX`,verifyButton:`Verificar`,verifyingButton:`Verificando...`,backToLogin:`← Voltar para o login`,orContinueWith:`ou entrar com`,signInWith:`Entrar com {{provider}}`,enterCode:`Por favor, insira o código de verificação`,sendCodeFailed:`Falha ao enviar o código de verificação`,invalidCode:`Código inválido. Por favor, tente novamente.`}},setup:{title:`Bambuddy Configuração`,subtitle:`Configure a autenticação para sua instância do Bambuddy`,enableAuth:`Ativar Autenticação`,adminAccount:`Conta de Administrador`,adminAccountDesc:`Se usuários administradores já existirem, a autenticação será ativada usando as contas de administrador existentes. Deixe os campos abaixo vazios para usar os administradores existentes ou insira novas credenciais para criar um novo usuário administrador.`,adminUsername:`Nome de usuário do administrador`,adminPassword:`Senha do administrador`,optionalIfAdminExists:`(opcional se usuários administradores existirem)`,adminUsernamePlaceholder:`Digite o nome de usuário do administrador (opcional)`,adminPasswordPlaceholder:`Digite a senha do administrador (opcional)`,confirmPassword:`Confirmar Senha`,confirmPasswordPlaceholder:`Confirme a senha do administrador`,settingUp:`Configurando...`,completeSetup:`Concluir Configuração`,toast:{authEnabledAdminCreated:`Autenticação ativada e usuário administrador criado`,authEnabledExistingAdmins:`Autenticação ativada usando usuários administradores existentes`,setupCompleted:`Configuração concluída`,enterBothCredentials:`Por favor, insira o nome de usuário e a senha do administrador, ou deixe ambos vazios para usar os usuários administradores existentes`,passwordsDoNotMatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 6 caracteres`}},changePassword:{title:`Alterar Senha`,currentPassword:`Senha Atual`,currentPasswordPlaceholder:`Digite a senha atual`,newPassword:`Nova Senha`,newPasswordPlaceholder:`Digite a nova senha (mínimo 6 caracteres)`,confirmPassword:`Confirmar Senha`,confirmPasswordPlaceholder:`Confirme a nova senha`,passwordsDoNotMatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 6 caracteres`,changing:`Alterando...`,success:`Senha alterada com sucesso`,failed:`Falha ao alterar a senha`},plateAlert:{title:`Impressão Pausada!`,message:`Objetos detectados na mesa de impressão. A impressão foi automaticamente pausada. Por favor, limpe a mesa e retome a impressão.`,understand:`Entendi`},camera:{title:`Visualização da Câmera`,invalidPrinterId:`ID da impressora inválido`,live:`Ao Vivo`,snapshot:`Captura`,restartStream:`Reiniciar transmissão`,refreshSnapshot:`Atualizar captura`,fullscreen:`Tela Cheia`,exitFullscreen:`Sair da Tela Cheia`,connectingToCamera:`Conectando à câmera...`,capturingSnapshot:`Capturando imagem...`,connectionLost:`Conexão perdida`,connectionFailed:`Falha na conexão com a câmera`,reconnecting:`Reconectando em {{countdown}}s... (tentativa {{attempt}}/{{max}})`,reconnectNow:`Reconectar agora`,cameraUnavailable:`Câmera indisponível`,cameraUnavailableDesc:`Certifique-se de que a impressora está ligada e conectada.`,noCamera:`Nenhuma câmera disponível`,retry:`Tentar novamente`,cameraStream:`Transmissão da câmera`,zoomOut:`Reduzir zoom`,zoomIn:`Aumentar zoom`,resetZoom:`Redefinir zoom`,recording:`Gravando`,startRecording:`Iniciar gravação`,stopRecording:`Parar gravação`,chamberLight:`Alternar luz da câmara`,unavailable:`Câmera indisponível`,diagnose:{button:`Diagnóstico`,modalTitle:`Diagnóstico da câmera`,running:`Executando diagnóstico...`,runFailed:`Não foi possível executar o diagnóstico: {{error}}`,retry:`Executar novamente`,stage:{tcp_reachable:`Conectividade de rede`,first_frame:`Captura de frame`,live_stream_active:`Transmissão ao vivo ativa`},summary:{all_ok:`A câmera está funcionando. O diagnóstico concluiu todas as etapas com sucesso.`,live_stream_active_healthy:`A câmera está transmitindo com frames recentes — nenhum teste necessário.`,printer_unreachable:`Impressora inacessível. Verifique o endereço IP, a conexão de rede e se a impressora está ligada.`,camera_port_closed:`A impressora responde mas a porta da câmera está fechada. Verifique se o modo LAN e o modo desenvolvedor estão ativados nas configurações da impressora.`,no_frame:`Conexão com a câmera estabelecida mas nenhum frame recebido. Tente novamente ou verifique se a câmera está habilitada nas configurações da impressora.`,unknown_failure:`Diagnóstico da câmera falhou por motivo desconhecido. Consulte o log de suporte para mais detalhes.`},meta:{protocol:`Protocolo`,port:`Porta`,profile:`Perfil`}}},groups:{title:`Gerenciamento de Grupos`,subtitle:`Gerenciar grupos de permissão para controle de acesso`,backToSettings:`Voltar para Configurações`,createGroup:`Criar Grupo`,noPermission:`Você não tem permissão para acessar esta página.`,system:`Sistema`,noDescription:`Sem descrição`,usersCount:`{{count}} usuários`,permissionsCount:`{{count}} permissões`,edit:`Editar`,delete:`Excluir`,toast:{created:`Grupo criado com sucesso`,updated:`Grupo atualizado com sucesso`,deleted:`Grupo excluído com sucesso`,enterGroupName:`Por favor, insira um nome para o grupo`},modal:{editGroup:`Editar Grupo`,createGroup:`Criar Grupo`,cancel:`Cancelar`,saving:`Salvando...`,creating:`Criando...`,saveChanges:`Salvar Alterações`},form:{groupName:`Nome do Grupo`,groupNamePlaceholder:`Insira o nome do grupo`,systemGroupWarning:`Os nomes dos grupos do sistema não podem ser alterados`,description:`Descrição`,descriptionPlaceholder:`Insira a descrição (opcional)`,permissions:`Permissões ({{count}} selecionadas)`},deleteModal:{title:`Excluir Grupo`,message:`Tem certeza de que deseja excluir este grupo? Os usuários deste grupo perderão essas permissões.`,confirm:`Excluir Grupo`},editor:{title:`Editar Grupo`,createTitle:`Criar Grupo`,search:`Pesquisar permissões...`,selectAll:`Selecionar Tudo`,clearAll:`Limpar Tudo`,permissionsSelected:`{{count}} selecionada(s)`,noResults:`Nenhuma permissão corresponde à sua pesquisa`,websocketHint:`Necessário para atualizações em tempo real. Sem esta permissão, a interface recorre à sondagem periódica.`,printerAccess:`Acesso às impressoras`,adminsSeeAllPrinters:`Administradores sempre veem todas as impressoras.`,printerAccessAfterCreate:`Depois de criar o grupo, escolha as impressoras dele em Configurações → Autenticação → Acesso às impressoras.`,printerAccessLimited:`Limitado: {{printers}} impressoras escolhidas, {{locations}} locais`,printerAccessOpen:`Sem limite: os membros veem todas as impressoras.`,managePrinterAccess:`Gerenciar acesso às impressoras`}},printerAccess:{tab:`Acesso às impressoras`,intro:`Escolha quais impressoras os membros de cada grupo podem ver e controlar. Um grupo sem limite não restringe nada: um usuário que não está em nenhum grupo limitado vê todas as impressoras, e os administradores sempre veem.`,byGroup:`Por grupo`,byPrinter:`Por impressora`,searchGroups:`Buscar grupos`,groupFilter:{all:`Todos`,limited:`Limitados`,open:`Sem limite`},noGroupsMatch:`Nenhum grupo encontrado.`,alwaysAll:`Sempre todas as impressoras`,notLimited:`Todas as impressoras`,reachShort:`{{count}} de {{total}} impressoras`,unsaved:`Alterações não salvas`,pickGroup:`Escolha um grupo para selecionar as impressoras dele.`,memberCount:`Membros: {{count}}`,editGroup:`Editar grupo`,adminsSeeAll:`Administradores sempre veem todas as impressoras.`,limit:`Limitar os membros às impressoras e locais escolhidos aqui`,limitHint:`Desativado: este grupo não restringe quais impressoras seus membros veem.`,reach:`Os membros podem usar {{count}} de {{total}} impressoras.`,noneGranted:`Nada selecionado: os membros deste grupo não verão nenhuma impressora.`,noPrinters:`Nenhuma impressora foi adicionada ainda.`,searchPrinters:`Buscar por nome, modelo, número de série ou local`,allLocations:`Todos os locais`,noLocation:`Sem local`,allModels:`Todos os modelos`,accessFilter:`Acesso`,accessAll:`Com e sem acesso`,accessWith:`Com acesso`,accessWithout:`Sem acesso`,tickShown:`Marcar todas as exibidas`,untickShown:`Desmarcar todas as exibidas`,emptyLocation:`nenhuma impressora aqui no momento`,wholeLocation:`Local inteiro`,wholeLocationHint:`Todas as impressoras em {{location}}, incluindo as adicionadas depois`,noPrintersMatch:`Nenhuma impressora encontrada.`,viaLocation:`pelo local`,alsoVisible:`Além dos grupos listados aqui, todas as impressoras são visíveis para administradores e para usuários que não estão em nenhum grupo limitado.`,openUsers:`Usuários sem grupo limitado: {{names}}`,noOpenUsers:`Todos os usuários, exceto administradores, estão em um grupo limitado.`,noLimitedGroups:`Nenhum grupo está limitado ainda, então todos os usuários veem todas as impressoras. Limite um grupo em "Por grupo".`,noLimitedGroupReaches:`Nenhum grupo limitado`,showingOne:`Exibindo uma impressora.`,showAll:`Mostrar todas as impressoras`,viaLocationTitle:`Pelo local {{location}}. Altere em "Por grupo".`,removeGroup:`Remover acesso de {{group}}`,addGroup:`Dar acesso a…`,changedGroups:`Alterações não salvas: {{names}}`,discard:`Descartar`,saved:`Acesso às impressoras salvo`,whoHasAccess:`Quem tem acesso`,moveWarning:`Mover esta impressora para outro local muda quem pode usá-la: {{groups}}.`},users:{title:`Gerenciamento de Usuários`,subtitle:`Gerenciar usuários e seu acesso à sua instância do Bambuddy`,backToSettings:`Voltar para Configurações`,createUser:`Criar Usuário`,noPermission:`Você não tem permissão para acessar esta página.`,admin:`Administrador`,noGroups:`Sem grupos`,active:`Ativo`,inactive:`Inativo`,edit:`Editar`,delete:`Excluir`,system:`Sistema`,noGroupsAvailable:`Nenhum grupo disponível`,table:{username:`Nome de Usuário`,groups:`Grupos`,status:`Status`,actions:`Ações`},toast:{created:`Usuário criado com sucesso`,updated:`Usuário atualizado com sucesso`,deleted:`Usuário excluído com sucesso`,fillRequired:`Por favor, preencha todos os campos obrigatórios`,passwordsDoNotMatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 6 caracteres`,ldapProvisioned:`Usuário LDAP "{{username}}" provisionado`},modal:{createUser:`Criar Usuário`,editUser:`Editar Usuário`,cancel:`Cancelar`,creating:`Criando...`,saving:`Salvando...`,saveChanges:`Salvar Alterações`,advancedAuthSubtitle:`com Autenticação Avançada`,tabsAriaLabel:`Fonte do usuário`,localTab:`Local`,ldapTab:`LDAP`,ldapSearchLabel:`Pesquisar diretório`,ldapSearchPlaceholder:`Digite um nome de usuário, nome ou e-mail...`,ldapMinChars:`Digite ao menos 2 caracteres para pesquisar`,ldapTypeToSearch:`Comece a digitar para pesquisar o diretório LDAP`,ldapSearching:`Pesquisando diretório...`,ldapNoResults:`Nenhum usuário correspondente no diretório`,ldapSearchError:`Falha na pesquisa do diretório. Verifique o status do servidor LDAP.`,ldapAlreadyProvisioned:`Já provisionado`,ldapSelectedLabel:`Selecionado`,ldapProvision:`Provisionar usuário`,ldapProvisioning:`Provisionando...`,ldapErrorProvision:`Falha no provisionamento. Verifique o status do servidor LDAP e tente novamente.`},form:{username:`Nome de Usuário`,usernamePlaceholder:`Insira o nome de usuário`,email:`E-mail`,emailPlaceholder:`user@example.com`,password:`Senha`,passwordPlaceholder:`Insira a senha`,confirmPassword:`Confirmar Senha`,confirmPasswordPlaceholder:`Confirme a senha`,newPasswordPlaceholder:`Insira a nova senha`,confirmNewPasswordPlaceholder:`Confirme a nova senha`,leaveBlankToKeep:`deixe em branco para manter a atual`,groups:`Grupos`,optional:`opcional`,autoGeneratedPassword:`Uma senha segura será gerada automaticamente e enviada por e-mail ao usuário.`,passwordManagedByAdvancedAuth:`A senha é gerenciada pela Autenticação Avançada. Use "Redefinir Senha" para enviar uma nova senha ao usuário por e-mail.`,resetPassword:`Redefinir Senha`,resettingPassword:`Redefinindo Senha...`},deleteModal:{title:`Excluir Usuário`,message:`Tem certeza de que deseja excluir este usuário? Esta ação não pode ser desfeita.`,confirm:`Excluir Usuário`}},streamOverlay:{branding:{title:`Identidade visual`,hint:`Um logotipo compartilhado nesta instalação. PNG ou WebP, até 2 MiB e 4 milhões de pixels. Substituir ou remover afeta as sobreposições que o utilizam.`,upload:`Enviar logotipo`,logo:`Logotipo personalizado`,from:`Cor inicial`,to:`Cor final`,reset:`Redefinir cores`,failed:`Não foi possível salvar o logotipo. Verifique o formato e o tamanho.`},title:`Sobreposição de stream`,invalidPrinterId:`ID da impressora inválido`,cameraStream:`Transmissão da câmera`,progress:`Progresso da impressão`,eta:`ETA`,printerIdle:`Impressora ociosa`,printerOffline:`Impressora offline`,layer:`Camada`,remaining:`Tempo restante`,builder:{backgroundTransparency:`Transparência do fundo`,backgroundTransparencyHint:`Atenua apenas os fundos escuros. Texto, logotipos e câmera continuam visíveis.`,layout:`Disposição`,landscape:`Paisagem`,portrait:`Retrato`,both:`Ambos`,orientationUrl:`URL em {{orientation}}`,orientationPreview:`Prévia em {{orientation}}`,sourceDimensions:`Fonte do navegador: {{width}} × {{height}} px`,artwork:`Visual`,artworkClassic:`Clássico`,artworkV2:`Versão 2`,createToken:`Criar token de sobreposição`,showToken:`Mostrar token`,hideToken:`Ocultar token`,credentialHint:`Crie um token acima, insira um existente ou importe uma URL de sobreposição. Copie a URL antes de sair: os tokens ficam apenas na memória e não podem ser recuperados do hash armazenado.`,importUrl:`URL de sobreposição existente`,importAction:`Importar URL`,importHint:`Importe uma URL localmente para reutilizar o token e as configurações neste servidor. Configurações que o Bambuddy não reconhece são ignoradas.`,rememberedHint:`Suas escolhas ficam salvas neste navegador. O token não.`,resetChoices:`Redefinir escolhas`,importError:`Insira uma URL de sobreposição HTTP(S) válida com um número de impressora positivo, no máximo um token e sem usuário ou senha.`,manualToken:`Token manual`,title:`Sobreposição de transmissão`,description:`Monta a URL de uma sobreposição de transmissão: a câmera em tela cheia com os dados da impressão sobrepostos, para OBS, um painel de parede ou qualquer fonte de navegador. Escolha os campos e copie a URL.`,printer:`Impressora`,size:`Tamanho do texto`,sizeSmall:`Pequeno`,sizeMedium:`Médio`,sizeLarge:`Grande`,fps:`Taxa de quadros`,fpsHint:`Câmeras A1 e P1 chegam no máximo a cerca de 5 fps, qualquer que seja o valor pedido.`,tokenWarning:`Esta URL contém um token: quem conseguir lê-la pode assistir à transmissão e ver o nome do arquivo. Revogue o token para cortar o acesso.`,fields:`Campos a exibir`,fieldPrinter:`Nome da impressora`,fieldModel:`Modelo da impressora`,fieldFilename:`Nome do arquivo`,fieldStatus:`Status`,fieldProgress:`Barra de progresso`,fieldLayers:`Contagem de camadas`,fieldEta:`Tempo restante e previsão de término`,fieldCamera:`Imagem da câmera`,chamberHint:`A temperatura da câmara aparece apenas em modelos com sensor real: P1 e A1 informam um valor sem sentido, por isso ela é omitida.`,urlTitle:`URL da sobreposição`,open:`Abrir`,showPreview:`Mostrar prévia`,hidePreview:`Ocultar prévia`,previewTitle:`Prévia da sobreposição`},status:{printing:`Imprimindo`,paused:`Pausado`,finished:`Concluído`,failed:`Falhou`,idle:`Ocioso`,unknown:`Desconhecido`}},profiles:{title:`Perfis`,subtitle:`Gerencie seus presets de fatiador e calibrações de avanço de pressão`,tabs:{bambuCloud:`Bambu Cloud`,orcaCloud:`Orca Cloud`,local:`Perfis Locais`,kprofiles:`K-Perfis`},orcaCloud:{connectedAs:`Conectado como`,connectedShort:`Conectado ao Orca Cloud`,logout:`Desconectar`,noLogoutPermission:`Você não tem permissão para desconectar`,noConnectPermission:`Você não tem permissão para conectar ao Orca Cloud`,retry:`Tentar novamente`,connectButton:`Conectar Orca Cloud`,connect:{title:`Conectar ao Orca Cloud`,description:`Entre na sua conta Orca Cloud para sincronizar seus perfis de slicer no Bambuddy.`},device:{title:`Aprovar o Bambuddy no Orca Cloud`,instruction:`Abra o Orca Cloud e aprove este código. O Bambuddy se conecta automaticamente assim que você aprovar.`,codeLabel:`Seu código de pareamento`,openButton:`Abrir a página de aprovação do Orca Cloud`,manualHint:`Ou acesse {{url}} e insira o código acima.`,waiting:`Aguardando sua aprovação…`,cancel:`Cancelar`},profiles:{title:`Seus perfis do Orca Cloud ({{count}})`,refresh:`Atualizar`,empty:`Nenhum perfil encontrado na sua conta Orca Cloud ainda.`},toast:{disconnected:`Desconectado do Orca Cloud`},errors:{startFailed:`Não foi possível iniciar o login do Orca Cloud.`,denied:`O pareamento foi negado no Orca Cloud.`,expired:`O código de pareamento expirou. Clique em Conectar para tentar novamente.`,pollFailed:`A conexão foi perdida enquanto aguardava a aprovação. Tente novamente.`}},localProfiles:{title:`Perfis Locais`,subtitle:`Importe e gerencie presets de fatiador do OrcaSlicer`,import:`Importar Perfis`,importDesc:`Solte arquivos .bbscfg, .bbsflmt, .orca_filament, .zip ou .json aqui`,importing:`Importando...`,search:`Pesquisar presets locais...`,noPresets:`Nenhum preset local ainda`,noSearchResults:`Nenhum preset corresponde à sua busca`,badge:`Local`,edit:`Editar`,delete:`Excluir`,cancel:`Cancelar`,deleteConfirmTitle:`Excluir Preset`,deleteConfirm:`Tem certeza de que deseja excluir este preset? Esta ação não pode ser desfeita.`,source:`Fonte`,inheritsFrom:`Herdado de`,filamentType:`Tipo`,vendor:`Fornecedor`,compatiblePrinters:`Impressoras Compatíveis`,nozzleTemp:`Temperatura do Bico`,cost:`Custo`,density:`Densidade`,pressureAdvance:`Avanço de Pressão`,filament:`Filamento`,process:`Processo`,printer:`Impressora`,toast:{importSuccess:`{{count}} preset(s) importada(s)`,importSkipped:`{{count}} preset(s) ignorada(s) (duplicadas)`,importError:`{{count}} erro(s) durante a importação`,deleted:`Preset excluído`,updated:`Preset atualizado`}},connectedAs:`Conectado como`,signInExpiredTitle:`Sessão do Bambu Cloud expirada`,signInExpiredBody:`A Bambu Lab não aceita mais o token armazenado. Entre novamente para restaurar os perfis na nuvem, as importações do MakerWorld e a verificação de firmware.`,logout:`Sair`,noLogoutPermission:`Você não tem permissão para sair`,failedToLoad:`Falha ao carregar perfis`,retry:`Tentar novamente`,time:{justNow:`Agora mesmo`,minsAgo:`há {{count}} minutos`,hoursAgo:`há {{count}} horas`,daysAgo:`há {{count}} dias`},toast:{loggedOut:`Desconectado`},login:{title:`Conectar ao Bambu Cloud`,subtitle:`Sincronize seus presets de fatiador entre dispositivos`,email:`E-mail`,password:`Senha`,region:`Região`,regionGlobal:`Global`,regionChina:`China`,verificationCode:`Código de Verificação`,totpCode:`Código do Autenticador`,checkEmail:`Verifique seu email ({{email}}) para um código de 6 dígitos`,enterTotpHint:`Digite o código de 6 dígitos do seu aplicativo autenticador`,accessToken:`Token de Acesso`,accessTokenHint:`Cole seu token de acesso da Bambu Cloud. Contas da região China precisam usar este caminho (vinculadas ao celular — login por e-mail indisponível). Veja no wiki como obter o token dos cookies do MakerWorld.`,back:`Voltar`,loginButton:`Entrar`,verifyButton:`Verificar`,setTokenButton:`Definir Token`,useToken:`Usar token de acesso em vez disso`,captchaTitle:`O Bambu Cloud está pedindo um CAPTCHA`,captchaBody:`O Bambu está exigindo um CAPTCHA da sua rede antes de aceitar um login, e esse desafio não pode ser respondido pelo Bambuddy. Seu e-mail e sua senha não são o problema. O bloqueio está ligado ao seu endereço IP público e costuma passar sozinho em algumas horas; tentar de novo repetidamente prolonga o bloqueio. Para entrar agora, use um token de acesso obtido em uma sessão do navegador.`,useEmail:`Entrar com email em vez disso`,toast:{loggedIn:`Conectado com sucesso`,codeSent:`Código de verificação enviado para seu email`,enterTotp:`Digite o código do seu aplicativo autenticador`,tokenSet:`Token definido com sucesso`}},presets:{myPreset:`Meu preset (editável)`,duplicate:`Duplicar`,editable:`Editável`,failedToLoadDetails:`Falha ao carregar detalhes do preset`,deleteConfirm:`Excluir este preset?`,deleteWarning:`Isso excluirá permanentemente "{{name}}" do Bambu Cloud. Esta ação não pode ser desfeita.`,noDuplicatePermission:`Você não tem permissão para duplicar presets`,noEditPermission:`Você não tem permissão para editar presets`,noDeletePermission:`Você não tem permissão para excluir presets`,types:{filament:`Preset de filamento`,printer:`Preset de impressora`,process:`Preset de processo`},toast:{deleted:`Preset excluído`,created:`Preset criado`,updated:`Preset atualizado`,duplicated:`Preset duplicado`,fieldAdded:`Campo "{{key}}" adicionado`,exported:`Preset exportado`},baseLabel:`Base: {{name}}`,currentLabel:`Atual: {{name}}`,newPreset:`Novo Preset`,editPreset:`Editar Preset`,duplicatePreset:`Duplicar Preset`,createNewPreset:`Criar Novo Preset`,customizeSettings:`Personalizar configurações para seu novo preset`,compareWithBase:`Comparar com o preset base`,compare:`Comparar`,basePreset:`Preset Base`,selectBasePreset:`Selecionar preset base...`,presetName:`Nome do Preset`,myCustomPreset:`Meu preset personalizado`,inheritsFrom:`Herdado de`,dropJsonToImport:`Solte o arquivo JSON para importar`,tabs:{common:`Comum`,allFields:`Todos os Campos`},availableFields:`Campos Disponíveis`,searchFieldsPlaceholder:`Pesquisar campos...`,noMatchingFields:`Nenhum campo correspondente`,allFieldsAdded:`Todos os campos adicionados`,addCustomField:`Adicionar campo personalizado`,yourOverrides:`Suas Substituições`,noOverridesYet:`Nenhuma substituição ainda`,clickFieldsToAdd:`Clique nos campos à esquerda para adicioná-los`,saveAsTemplate:`Salvar como modelo`,jsonTip:`Dica: Arraste e solte um arquivo .json em qualquer lugar deste modal para importar configurações`},cloudView:{searchPlaceholder:`Pesquisar presets...`,templates:`Modelos`,refresh:`Atualizar`,newPreset:`Novo Preset`,clearFilters:`Limpar filtros`,compareMode:`Modo de Comparação`,selectAnotherPreset:`Selecionar outro preset {{type}}`,clickTwoPresets:`Clique em dois presets do mesmo tipo para comparar`,selectFirst:`1. Selecionar primeiro`,selectSecond:`2. Selecionar segundo`,compareNow:`Comparar Agora`,lastSynced:`Última sincronização:`,showingCount:`Mostrando {{showing}} de {{total}} presets`,noPresetsFound:`Nenhum preset encontrado`,columns:{filament:`Filamento`,process:`Processo`,printer:`Impressora`},noFilamentPresets:`Nenhum preset de filamento`,noProcessPresets:`Nenhum preset de processo`,noPrinterPresets:`Nenhum preset de impressora`,filters:{type:`Tipo`,owner:`Proprietário`,printer:`Impressora`,nozzle:`Bico`,filament:`Filamento`,layer:`Camada`,all:`Todos`,myPresets:`Meus Presets`,builtIn:`Integrado`,process:`Processo`},noTemplatesPermission:`Você não tem permissão para gerenciar modelos`,noRefreshPermission:`Você não tem permissão para atualizar perfis`,noCreatePermission:`Você não tem permissão para criar presets`},templates:{title:`Modelos Rápidos`,noTemplates:`Nenhum modelo ainda`,createFirst:`Crie modelos a partir do editor de presets`,typeFilter:`Tipo:`,deleteTitle:`Excluir Modelo`,deleteWarning:`Esta ação não pode ser desfeita`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,namePlaceholder:`Nome do modelo`,descriptionPlaceholder:`Descrição`,settingsJson:`Configurações (JSON)`,fieldsCount:`{{count}} campos`,shownInModals:`Exibido em modais`,hiddenInModals:`Oculto em modais`,apply:`Aplicar`,toast:{deleted:`Modelo excluído`,updated:`Modelo atualizado`,created:`Modelo criado`,applied:`Modelo aplicado`}}},support:{debugLoggingActive:`Registro de depuração ativo`,manageLogs:`Gerenciar`,collectItem7:`Conectividade da impressora e versões de firmware`,collectItem8:`Status de integração (Spoolman, MQTT, HA)`,collectItem9:`Interfaces de rede (somente sub-redes)`,collectItem10:`Versões de pacotes Python`,collectItem11:`Verificações de integridade do banco de dados`,collectItem12:`Detalhes do ambiente Docker`,bundleGenerating:`Gerando pacote...`,bundleStepConnection:`Executando verificações de conectividade das impressoras`,bundleStepVirtualPrinters:`Executando verificações de configuração das impressoras virtuais`,bundleStepLogScan:`Analisando registros recentes em busca de problemas conhecidos`,bundleStepBuild:`Criando o ZIP do pacote de suporte`},fileManager:{combine:{action:`Combinar em 3MF`,tooltip:`Combina os STLs selecionados em um 3MF para fatiá-los em uma única placa`,title:`Combinar em 3MF`,description:`Cria um 3MF com todos os modelos abaixo, pronto para fatiar em uma única placa. Ative o arranjo automático ao fatiar para distribuí-los na mesa.`,nameLabel:`Nome do arquivo`,defaultName:`{{name}} + {{count}} outros`,model:`Modelo`,copies:`Cópias`,copiesFor:`Cópias de {{filename}}`,total:`Objetos na placa: {{count}}`,tooMany:`No máximo {{max}} objetos por placa`,sliceNext:`Abrir o fatiador ao concluir`,submit:`Combinar`,done:`{{filename}} criado com {{count}} objetos`},variants:{badge:`{{count}} versões`,groupAction:`Agrupar como versões`,groupTooltip:`Marcar estes arquivos como o mesmo trabalho fatiado para impressoras diferentes`,grouped:`{{count}} arquivos agrupados como versões`,printAlternatives:`Imprimir ({{count}} alternativas)`},title:`Gerenciador de Arquivos`,subtitle:`Organize e gerencie seus arquivos de impressão`,uploadFiles:`Enviar Arquivos`,newFolder:`Nova Pasta`,folderName:`Nome da Pasta`,folderNamePlaceholder:`ex.: Peças Funcionais`,renameFile:`Renomear Arquivo`,renameFolder:`Renomear Pasta`,invalidFilenameChar:`O caractere "{{char}}" não é permitido em nomes de arquivos de impressão. O cartão SD da impressora rejeita: < > : " / \\ | ? *`,moveFiles:`Mover {{count}} Arquivo(s)`,rootNoFolder:`Raiz (Sem Pasta)`,current:`Atual`,linkFolder:`Vincular Pasta`,linkFolderDescription:`Vincular "{{name}}" a um projeto ou arquivo para acesso rápido.`,project:`Projeto`,archive:`Arquivo`,noProjectsFound:`Nenhum projeto encontrado`,noArchivesFound:`Nenhum arquivo encontrado`,unlink:`Desvincular`,link:`Vincular`,dragDropFiles:`Arraste e solte os arquivos aqui`,dropFilesHere:`Solte os arquivos aqui`,releaseToUpload:`Solte para enviar`,orClickToBrowse:`ou clique para procurar`,allFileTypesSupported:`Todos os tipos de arquivos são suportados. Arquivos ZIP serão extraídos.`,zipFilesDetected:`Arquivos ZIP detectados`,zipExtractOptions:`Arquivos ZIP serão extraídos. Escolha como lidar com a estrutura de pastas:`,preserveZipStructure:`Preservar estrutura de pastas do ZIP`,createFolderFromZip:`Criar pasta a partir do nome do arquivo ZIP`,stlThumbnailGeneration:`Geração de miniaturas STL`,zipMayContainStl:`Arquivos ZIP podem conter arquivos STL. Miniaturas podem ser geradas durante a extração.`,thumbnailsCanBeGenerated:`Miniaturas podem ser geradas para arquivos STL. Modelos grandes podem levar mais tempo para processar.`,generateThumbnailsForStl:`Gerar miniaturas para arquivos STL`,threemfDetected:`Arquivos 3MF detectados`,threemfExtractionInfo:`Modelo da impressora, material, cor e configurações de impressão serão extraídos automaticamente dos arquivos 3MF.`,willBeExtracted:`Será extraído`,filesExtracted:`{{count}} arquivos extraídos`,uploadComplete:`Upload concluído: {{succeeded}} bem-sucedidos`,uploadFailed:`Falha no envio`,zipFilesFailed:`{{count}} arquivos falharam`,uploading:`Enviando...`,changeLink:`Alterar link...`,linkTo:`Vincular a...`,linkToProjectOrArchive:`Vincular a projeto ou arquivo`,generateThumbnail:`Gerar miniatura`,generateThumbnails:`Gerar miniaturas`,generateThumbnailsForMissing:`Gerar miniaturas para arquivos STL e PDF que não possuem`,gridView:`Visualização em grade`,listView:`Visualização em lista`,columnsView:`Visualização em colunas`,lowDiskSpaceWarning:`Aviso de pouco espaço em disco`,lowDiskSpaceDetails:`Apenas {{free}} livres de {{total}} no total. O limite está definido para {{threshold}} GB nas configurações.`,files:`Arquivos`,folders:`Pastas`,size:`Tamanho`,free:`Livre`,allFiles:`Todos os arquivos`,allExternal:`Externos`,externalIsEmpty:`Nenhum arquivo externo`,externalEmptyDescription:`Os arquivos das suas pastas externas vinculadas aparecerão aqui.`,wrap:`Quebrar texto`,enableTextWrapping:`Ativar quebra de texto`,disableTextWrapping:`Desativar quebra de texto`,collapse:`Recolher`,collapseFoldersByDefault:`Recolher pastas por padrão`,expandFoldersByDefault:`Expandir pastas por padrão`,folderSort:`Ordenar pastas`,folderSortByName:`Por nome`,folderSortByActivity:`Por atividade recente`,dragToResizeTooltip:`Arraste para redimensionar, clique duas vezes para redefinir`,searchFiles:`Pesquisar arquivos...`,searchSubfoldersHint:`Incluindo subpastas`,readme:{truncated:`Truncado`,show:`Mostrar README`,hide:`Ocultar README`,label:`README`},tags:{title:`Tags`,subtitle:`Rotule arquivos para filtros transversais — brinquedos, seguro para crianças, somente PETG, o que precisar.`,manage:`Tags`,manageTitle:`Gerenciar catálogo de tags`,add:`Nova tag`,edit:`Renomear tag`,name:`Nome`,fileCount:`Arquivos`,empty:`Ainda não há tags. Crie uma para começar a rotular arquivos.`,noMatches:`Nenhuma tag correspondente.`,createPlaceholder:`ex.: brinquedos, infantil, petg`,createButton:`Criar`,nameRequired:`O nome é obrigatório.`,searchPlaceholder:`Filtrar tags...`,created:`Tag criada.`,updated:`Tag renomeada.`,deleted:`Tag removida.`,saveFailed:`Não foi possível salvar a tag.`,deleteFailed:`Não foi possível remover a tag.`,applyFailed:`Não foi possível aplicar as tags.`,applyAdd:`Adicionar tags`,applyRemove:`Remover tags`,applyAddSuccess:`{{count}} tag(s) adicionada(s) em {{files}} arquivo(s).`,applyRemoveSuccess:`{{count}} tag(s) removida(s) em {{files}} arquivo(s).`,actionAdd:`Adicionar aos arquivos selecionados`,actionRemove:`Remover dos arquivos selecionados`,tagAction:`Marcar`,bulkTitle:`Marcar {{count}} arquivo(s) selecionado(s)`,bulkTooltip:`Adicionar ou remover tags em cada arquivo selecionado.`,noPermission:`Você não tem permissão para marcar arquivos.`,filterLabel:`Filtrando por:`,clearAll:`Limpar tudo`,confirmDelete:`Excluir a tag "{{name}}"?`,confirmDeleteMessage:`Isto remove a tag do catálogo. Os arquivos mantêm as outras tags.`,confirmDeleteInUseMessage:`Esta tag está em {{count}} arquivo(s). Excluí-la remove o chip de todos; os arquivos em si ficam intactos.`,editAria:`Editar {{name}}`,deleteAria:`Excluir {{name}}`},allTypes:`Todos os tipos`,prints:`Impressões`,ascending:`Crescente`,descending:`Decrescente`,showModified:`Mostrar datas de modificação`,hideModified:`Ocultar datas de modificação`,lastModified:`Última modificação`,lastActivity:`Última atividade`,resultsCount:`{{showing}} de {{total}} arquivos`,selectAll:`Selecionar tudo`,deselectAll:`Desmarcar tudo`,selected:`{{count}} selecionado(s)`,adding:`Adicionando...`,loadingFiles:`Carregando arquivos...`,folderIsEmpty:`A pasta está vazia`,noFilesOutsideFolders:`Nenhum arquivo fora das pastas`,noFilesYet:`Nenhum arquivo ainda`,folderEmptyDescription:`Envie arquivos ou mova arquivos para esta pasta para começar.`,noFilesDescription:`Envie arquivos para começar a organizar seus arquivos relacionados à impressão.`,noMatchingFiles:`Nenhum arquivo correspondente`,noMatchingFilesDescription:`Nenhum arquivo corresponde aos seus critérios de pesquisa ou filtro.`,clearFilters:`Limpar filtros`,printedCount:`Impresso {{count}}x`,uploadedBy:`Enviado por`,deleteFolder:`Excluir pasta`,deleteFile:`Excluir arquivo`,deleteFilesCount:`Excluir {{count}} arquivos`,deleteFolderConfirm:`Tem certeza de que deseja excluir esta pasta? Todos os arquivos dentro também serão excluídos.`,deleteFileConfirm:`Tem certeza de que deseja excluir este arquivo?`,deleteFilesConfirm:`Tem certeza de que deseja excluir {{count}} arquivos selecionados? Esta ação não pode ser desfeita.`,deleting:`Excluindo...`,noPermissionRenameFolder:`Você não tem permissão para renomear pastas`,noPermissionLinkFolder:`Você não tem permissão para vincular pastas`,noPermissionDeleteFolder:`Você não tem permissão para excluir pastas`,onlyOwnFoldersDeletable:`Você só pode excluir suas próprias pastas quando todo o conteúdo é seu, ou pastas vazias sem dono`,shareFolder:`Compartilhar com todos`,unshareFolder:`Parar de compartilhar`,shareFolderHint:`Pastas compartilhadas ficam visíveis para todos os usuários, que podem adicionar arquivos e subpastas`,sharedFolder:`Compartilhada com todos`,folderNotWritable:`Você só pode adicionar às suas próprias pastas e às pastas compartilhadas com todos`,noPermissionPrint:`Você não tem permissão para imprimir`,noPermissionSlice:`Você não tem permissão para fatiar arquivos`,noPermissionAddToQueue:`Você não tem permissão para adicionar à fila`,noPermissionDownload:`Você não tem permissão para baixar arquivos`,noPermissionPreview:`Você não tem permissão para pré-visualizar arquivos`,preview3d:`Pré-visualização 3D`,preview:{open:`Pré-visualizar`,error:`Este arquivo não pode ser pré-visualizado.`,tooLarge:`O arquivo é muito grande para pré-visualizar ({{size}}).`,page:`Página {{current}} de {{total}}`,prevPage:`Página anterior`,nextPage:`Próxima página`,zoomIn:`Aumentar zoom`,zoomOut:`Diminuir zoom`,resetZoom:`Redefinir zoom`,fullscreen:`Tela Cheia`,exitFullscreen:`Sair da Tela Cheia`,emptySheet:`Esta planilha está vazia`,truncatedRows:`Mostrando as primeiras {{shown}} de {{total}} linhas`,truncatedCols:`Mostrando as primeiras {{shown}} de {{total}} colunas`},details:{title:`Detalhes do arquivo`,size:`Tamanho`,type:`Tipo`,printName:`Nome da impressão`,printTime:`Tempo de impressão`,filament:`Filamento`,slicedFor:`Fatiado para`,source:`Origem`,created:`Criado`,modified:`Modificado`,notes:`Notas`,notesPlaceholder:`Configurações de impressão, dicas, o que funcionou...`,externalLink:`Link externo`,externalLinkPlaceholder:`https://printables.com/model/...`,openLink:`Abrir link`,photos:`Fotos`,addPhoto:`Adicionar foto`,noPhotos:`Ainda não há fotos`,deletePhoto:`Excluir foto`,photoCount_one:`{{count}} foto`,photoCount_other:`{{count}} fotos`,hasNotes:`Tem notas`,save:`Salvar`,saved:`Detalhes do arquivo salvos`,saveFailed:`Falha ao salvar os detalhes do arquivo`,uploadFailed:`Falha ao enviar a foto`,deleteFailed:`Falha ao excluir a foto`},noPermissionRenameFile:`Você não tem permissão para renomear este arquivo`,noPermissionGenerateThumbnail:`Você não tem permissão para gerar miniaturas`,noPermissionDeleteFile:`Você não tem permissão para excluir este arquivo`,noPermissionCreateFolder:`Você não tem permissão para criar pastas`,noPermissionUpload:`Você não tem permissão para enviar arquivos`,noPermissionMoveFiles:`Você não tem permissão para mover arquivos`,noPermissionDeleteFiles:`Você não tem permissão para excluir arquivos`,linkExternal:`Vincular externo`,linkExternalFolder:`Vincular pasta externa`,linkExternalFolderDescription:`Montar um diretório do host (NAS, USB, compartilhamento de rede) no Gerenciador de Arquivos. Os arquivos não são copiados — são acessados diretamente do caminho original.`,externalFolderNamePlaceholder:`ex. Impressões NAS`,externalPath:`Caminho do host`,externalPathHelp:`Caminho absoluto do diretório no host Docker. Deve estar montado como bind no contêiner.`,readOnly:`Somente leitura`,readOnlyHelp:`impede uploads e exclusões`,showHiddenFiles:`Mostrar arquivos ocultos (arquivos ponto)`,externalFolder:`Pasta externa`,scanFolder:`Escanear`,toast:{folderCreated:`Pasta criada`,openInSlicerFailed:`Não foi possível abrir no fatiador`,folderDeleted:`Pasta excluída`,fileDeleted:`Arquivo excluído`,filesDeleted:`Excluídos {{count}} arquivos`,filesMoved:`Arquivos movidos`,folderLinked:`Pasta vinculada`,folderUnlinked:`Pasta desvinculada`,externalFolderLinked:`Pasta externa vinculada e escaneada`,folderScanned:`Escaneamento concluído: {{added}} adicionados, {{removed}} removidos`,addedToQueue:`Adicionado {{count}} arquivo(s) à fila`,addedToQueuePartial:`Adicionado {{added}} arquivo(s), {{failed}} falharam`,failedToAddToQueue:`Falha ao adicionar arquivos: {{error}}`,fileRenamed:`Arquivo renomeado`,folderRenamed:`Pasta renomeada`,folderShared:`Pasta compartilhada com todos`,folderUnshared:`A pasta não está mais compartilhada`,thumbnailsGenerated:`Geradas {{count}} miniatura(s)`,thumbnailsGeneratedPartial:`Geradas {{succeeded}} miniatura(s), {{failed}} falharam`,noStlMissingThumbnails:`Nenhum arquivo STL ou PDF sem miniatura`,failedToGenerateThumbnails:`Falha ao gerar miniaturas: {{error}}`,thumbnailGenerated:`Miniatura gerada`,failedToGenerateThumbnail:`Falha ao gerar miniatura: {{error}}`}},projects:{parentLabel:`Projeto principal`,parentNone:`Nenhum (projeto de nível superior)`,parentHint:`Aninhe este projeto em outro para que seus números sejam somados em um projeto mestre`,partOf:`Parte de {{name}}`,subProjectCount:`{{count}} sub-projetos`,subProjectsOf:`Sub-projetos de {{name}}`,collapseSubProjects:`Recolher sub-projetos`,expandSubProjects:`Expandir sub-projetos`,title:`Projetos`,subtitle:`Organize e acompanhe seus projetos de impressão 3D`,newProject:`Novo Projeto`,editProject:`Editar Projeto`,deleteProject:`Excluir Projeto`,projectName:`Nome do Projeto`,description:`Descrição`,noProjects:`Nenhum projeto ainda`,noProjectsFiltered:`Nenhum projeto {{status}}`,noProjectsFilteredHelp:`Você não tem nenhum projeto {{status}}. Os projetos aparecerão aqui quando seu status mudar.`,createFirst:`Crie seu primeiro projeto para começar a organizar impressões relacionadas, acompanhar o progresso e gerenciar suas construções.`,createFirstButton:`Crie Seu Primeiro Projeto`,create:`Criar`,files:`Arquivos`,prints:`Impressões`,plates:`Placas`,parts:`Peças`,lastModified:`Última Modificação`,deleteConfirm:`Tem certeza de que deseja excluir este projeto? Arquivos e itens da fila serão desvinculados, mas não excluídos.`,addFiles:`Adicionar Arquivos`,removeFile:`Remover Arquivo`,viewDetails:`Ver Detalhes`,namePlaceholder:`ex., Voron 2.4 Build`,descriptionPlaceholder:`Descrição opcional...`,urlLabel:`URL`,urlPlaceholder:`https://makerworld.com/...`,urlInvalid:`A URL deve começar com http:// ou https://`,openExternalUrl:`Abrir URL do projeto`,coverImageLabel:`Imagem de capa`,coverImageAlt:`Imagem de capa do projeto`,coverImageUpload:`Enviar`,coverImageReplace:`Substituir`,coverImageRemove:`Remover`,color:`Cor`,targetPlates:`Placas Alvo`,targetPlatesPlaceholder:`ex., 25`,targetPlatesHelp:`Número de trabalhos de impressão`,targetParts:`Peças Alvo`,targetPartsPlaceholder:`ex., 150`,targetPartsHelp:`Total de objetos necessários`,targetSets:`Cópias por arquivo`,targetSetsPlaceholder:`ex.: 10`,targetSetsHelp:`Quantas vezes cada arquivo imprimível deve ser impresso`,tagsLabel:`Tags (separadas por vírgula)`,tagsPlaceholder:`ex., voron, funcional, presente`,dueDate:`Data de Vencimento`,priority:`Prioridade`,priorityLow:`Baixa`,priorityNormal:`Normal`,priorityHigh:`Alta`,priorityUrgent:`Urgente`,statusActive:`Ativo`,statusCompleted:`Concluído`,statusArchived:`Arquivado`,done:`Concluído`,completed:`Concluído`,failed:`Falhou`,inQueue:`Na fila`,noPrintsYet:`Nenhuma impressão ainda`,printJobs:`Trabalhos de impressão (placas)`,partsPrinted:`Peças impressas`,failedParts:`Peças falhadas`,import:`Importar`,export:`Exportar`,importProject:`Importar projeto`,exportAll:`Exportar todos os projetos`,loading:`Carregando projetos...`,noEditPermission:`Você não tem permissão para editar projetos`,noDeletePermission:`Você não tem permissão para excluir projetos`,noCreatePermission:`Você não tem permissão para criar projetos`,noImportPermission:`Você não tem permissão para importar projetos`,noExportPermission:`Você não tem permissão para exportar projetos`,toast:{created:`Projeto criado`,updated:`Projeto atualizado`,deleted:`Projeto excluído`,imported:`Projeto importado`,multipleImported:`{{count}} projetos importados`,importFailed:`Falha na importação`,exported:`Projetos exportados (apenas metadados)`}},projectDetail:{notFound:`Projeto não encontrado`,backToProjects:`Voltar para Projetos`,export:`Exportar`,exportProject:`Exportar projeto`,noExportPermission:`Você não tem permissão para exportar projetos`,noEditPermission:`Você não tem permissão para editar projetos`,partOf:`Parte de:`,priorityLabel:`Prioridade:`,noPrints:`Nenhuma impressão neste projeto ainda`,status:{active:`Ativo`,completed:`Concluído`,archived:`Arquivado`},priority:{low:`Baixa`,normal:`Normal`,high:`Alta`,urgent:`Urgente`},dueDate:{overdue:`Atrasado`,today:`Vence hoje`,daysLeft:`{{count}} dias restantes`},progress:{platesProgress:`Progresso das Placas`,partsProgress:`Progresso das Peças`,setsProgress:`Conjuntos completos`,sets:`conjuntos`,setsHint:`Um conjunto está completo quando cada arquivo imprimível atinge esse número`,printJobs:`Trabalhos de Impressão`,parts:`Peças`,percentComplete:`{{percent}}% concluído`,remaining:`{{count}} restantes`},stats:{printJobs:`Trabalhos de Impressão`,total:`total`,failed:`{{count}} falhou`,partsPrinted:`{{count}} peças impressas`,printTime:`Tempo de Impressão`,filamentUsed:`Filamento Usado`},cost:{title:`Rastreamento de Custos`,filamentCost:`Custo do Filamento`,energy:`Energia`,totalCost:`Custo Total`,total:`Total`,includesBom:`incl. lista de materiais`,wear:`Desgaste da impressora`,budget:`Orçamento`,remaining:`Restante`},subProjects:{title:`Sub-projetos ({{count}})`,jobs:`{{count}} trabalhos`},rollup:{title:`Incluindo {{count}} sub-projetos`,progress:`Progresso geral`,percentComplete:`{{percent}}% concluído`},notes:{title:`Notas`,noEditPermission:`Você não tem permissão para editar notas`,placeholder:`Adicione notas sobre este projeto...`,empty:`Nenhuma nota ainda. Clique em Editar para adicionar notas.`},files:{title:`Arquivos`,linkFolders:`Vincular pastas do Gerenciador de Arquivos`,forQuickAccess:`a este projeto para acesso rápido.`,fileCount:`{{count}} arquivo(s)`,empty:`Nenhuma pasta vinculada. Vá para o Gerenciador de Arquivos e vincule uma pasta a este projeto.`,printedCount:`Impresso {{count}} vez(es)`,progressTooltip:`{{done}} de {{target}} impressões concluídas`,noFiles:`Nenhum arquivo nesta pasta.`},bom:{title:`Lista de Materiais`,acquired:`{{completed}}/{{total}} adquiridos`,showAll:`Mostrar todos`,hideDone:`Ocultar concluídos`,addPart:`Adicionar Peça`,noAddPermission:`Você não tem permissão para adicionar peças`,partNamePlaceholder:`Nome da peça (ex.: parafusos M3x8)`,partName:`Nome da peça`,qty:`Quantidade`,price:`Preço ({{currency}})`,sourcingUrlPlaceholder:`URL de fornecimento (opcional)`,remarksPlaceholder:`Observações (opcional)`,deletePart:`Excluir Peça`,deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,noUpdatePermission:`Você não tem permissão para atualizar peças`,noEditPermission:`Você não tem permissão para editar peças`,noDeletePermission:`Você não tem permissão para excluir peças`,totalCost:`Custo total:`,empty:`Nenhuma peça na lista de materiais. Adicione hardware, eletrônicos ou outros componentes para rastrear o que precisa ser adquirido.`},timeline:{title:`Linha do Tempo de Atividades`,empty:`Nenhuma atividade ainda.`},template:{saveAsTemplate:`Salvar como Modelo`,noCreatePermission:`Você não tem permissão para criar modelos`},queue:{title:`Fila`,viewAll:`Ver todos`,printing:`{{count}} imprimindo`,queued:`{{count}} na fila`},prints:{title:`Impressões ({{count}})`},toast:{projectUpdated:`Projeto atualizado`,partAdded:`Peça adicionada`,partRemoved:`Peça removida`,exportFailed:`Falha na exportação`,projectExported:`Projeto exportado`,templateCreated:`Modelo criado`}},system:{title:`Informações do Sistema`,version:`Versão`,uptime:`Tempo de Atividade`,cpuUsage:`Uso da CPU`,memoryUsage:`Uso da Memória`,diskUsage:`Uso do Disco`,networkInfo:`Informações de Rede`,logs:`Registros`,debugMode:`Modo de Depuração`,enableDebug:`Ativar Registro de Depuração`,disableDebug:`Desativar Registro de Depuração`,downloadLogs:`Baixar Logs`,clearLogs:`Limpar Logs`,dockerInfo:`Informações do Docker`,containerName:`Nome do Contêiner`,imageName:`Nome da Imagem`,platform:`Plataforma`,architecture:`Arquitetura`},sponsors:{sectionTitle:`Independente e financiado pela comunidade`,tagline:`O Bambuddy é gratuito e continua assim porque há quem escolha apoiá-lo. Sem VC, sem dependência de nuvem.`,viewSupporters:`Ver apoiadores`,toastPrints:`Você concluiu {{count}} impressões com o Bambuddy. O Bambuddy continua gratuito graças a quem o apoia.`,toastCost:`Você acompanhou {{total}} de filamento com o Bambuddy. Veja quem mantém o projeto independente.`,toastArchives:`{{count}} impressões arquivadas com o Bambuddy. Veja quem o mantém independente.`,toastAnniversary:`Um ano com o Bambuddy! Veja quem mantém o projeto independente.`,toastVersionUpdate:`Atualizado para v{{version}}. O Bambuddy continua gratuito graças a quem o apoia.`,toastBusiness:`Você usa o Bambuddy em {{count}} impressoras? Existe um plano de suporte para equipes: correções prioritárias, emissão de nota fiscal e contato direto com o mantenedor.`,businessCta:`Bambuddy para empresas`,businessTitle:`Bambuddy para empresas`,businessTagline:`Você está gerenciando {{count}} impressoras. Suporte prioritário, licenciamento comercial e faturamento estão disponíveis para equipes e fazendas de impressão.`},library:{title:`Biblioteca de Filamentos`,addFilament:`Adicionar Filamento`,editFilament:`Editar Filamento`,deleteFilament:`Excluir Filamento`,vendor:`Fornecedor`,material:`Material`,color:`Cor`,kFactor:`Fator K`,temperature:`Temperatura`,noFilaments:`Nenhum filamento na biblioteca`,deleteConfirm:`Tem certeza de que deseja excluir este filamento?`,importFromPrinter:`Importar da Impressora`,exportToFile:`Exportar para Arquivo`,runWithPipeline:{actionLabel:`Executar com pipeline`,noPermission:`Você não tem permissão para executar pipelines`,modalTitle:`Executar com pipeline`,confirmTitle:`Confirmar execução`,confirmIntro:`A pré-verificação encontrou problemas com esta execução`,sourceHint:`Origem`,pipelineHint:`Pipeline`,targetHint:`Destino`,pipelineListAria:`Pipelines disponíveis`,runAnyway:`Executar mesmo assim`,loading:`Carregando…`,empty:`Ainda não há pipelines salvas. Abra o diálogo Cortar e clique em "Salvar como pipeline" para criar uma.`,noTarget:`Sem impressora de destino`,noTargetMessage:`Esta pipeline não tem impressora de destino. Abra-a em Configurações para escolher uma.`,copies:`Cópias`,copiesHint:`máx {{n}}`,classTarget:`Qualquer {{model}}`,toast:{started:`Execução da pipeline iniciada`,failed:`Não foi possível iniciar a execução`},issue:{printerNotSet:`Sem impressora de destino nesta pipeline.`,printerNotFound:`Impressora de destino não existe mais.`,printerDisabled:`Impressora de destino está desativada.`,printerOffline:`Impressora de destino está offline.`,filamentType:`Slot de filamento {{slot}}: esperado {{expected}}, AMS tem {{actual}}`,filamentColor:`Slot de filamento {{slot}}: cor diferente (esperado {{expected}}, AMS tem {{actual}})`,amsSlotMissing:`Slot AMS {{slot}} indisponível nesta impressora`,filamentUnverified:`Slot de filamento {{slot}} vem de uma predefinição da nuvem / padrão e não pôde ser verificado estaticamente.`,noClassMatches:`Nenhuma impressora nesta instalação corresponde à classe de modelo de destino da pipeline ({{expected}}).`,classNotSet:`O destino da pipeline está configurado como classe de impressora, mas nenhum modelo foi escolhido.`}}},slicerSettings:{presetValuesOutdatedSidecar:`Exibindo os padrões do fatiador: seu sidecar é mais antigo que este recurso e não consegue informar os valores de um perfil. Atualize a imagem do sidecar para vê-los. Tudo o que você não alterar continua usando o perfil.`,presetValuesNotConfigured:`Exibindo os padrões do fatiador: nenhum sidecar está configurado, portanto os valores de um perfil não podem ser lidos. Tudo o que você não alterar continua usando o perfil.`,presetValuesSidecarUnavailable:`Exibindo os padrões do fatiador: o sidecar não respondeu, portanto os valores de um perfil não podem ser lidos. Tudo o que você não alterar continua usando o perfil.`,presetValuesUnavailable:`Exibindo os padrões do fatiador: não foi possível ler os valores do perfil escolhido. Tudo o que você não alterar continua usando o perfil.`,filamentDefault:`Padrão`,fromFile:`do arquivo`,fromFileHint:`O designer alterou isto no arquivo de origem. O valor é {{value}}.`,fromFilePrinterCoupled:`impressora do designer`,fromFilePrinterCoupledHint:`Ajustado para a impressora para a qual este arquivo foi projetado — pode estar errado ou fora de faixa na sua.`,fromFileOverridesPreset:`substitui o perfil`,fromFileOverridesPresetHint:`O arquivo define {{value}} enquanto o perfil escolhido usa {{preset}}. Marque apenas se o arquivo deve prevalecer.`,useFromFile:`Usar o valor do arquivo de origem para {{option}}`,otherFromFile:`Outras configurações deste arquivo`,fromFileSummary:`O designer alterou {{count}} configurações de processo neste arquivo. Só as que você marcar são usadas.`,fromFileUseAll:`Usar as configurações do designer`,fromFileUseAllHint:`Marca as configurações que valem em outras impressoras. As ajustadas para a impressora do designer, e as que definem o preset escolhido, ficam desmarcadas.`,fromFileClear:`Limpar {{count}}`,loading:`Carregando configurações do fatiador…`,mode:{simple:`Simples`,advanced:`Avançado`,expert:`Especialista`},searchPlaceholder:`Buscar configurações`,resetAll:`Redefinir {{count}}`,resetOption:`Redefinir para o padrão`,noMatches:`Nenhuma configuração corresponde a esta busca.`},slice:{filamentSlotUnset:`não definido`,processSettingsEmbedded:`Não é usado enquanto “Usar as configurações internas do arquivo” estiver ativo — as configurações do próprio arquivo conduzem este fatiamento.`,processSettingsInactive:`Inativo`,presetsHidden:`{{count}} ocultos`,showAllPresets:`Mostrar todos`,showFewerPresets:`Mostrar menos`,processSettings:`Configurações de processo`,processSettingsHint:`Ajuste o perfil escolhido para este fatiamento. Tudo o que você não alterar permanece como o perfil define.`,processSettingsChanged:`{{count}} alterados`,processSettingsUnchanged:`Padrões do perfil`,title:`Fatiar modelo`,action:`Fatiar`,actionAll:`Fatiar todas as {{count}} bandejas`,actionAllTitle:`Fatiar todas as bandejas em uma saída multi-bandeja única (um único arquivo). A seleção de filamento cobre cada slot definido pelo projeto.`,allPlatesToggle:`Fatiar todas as {{count}} bandejas`,slicing:`Fatiando…`,printer:`Perfil de impressora`,process:`Perfil de processo`,filament:`Perfil de filamento`,filamentSlot:`Filamento {{index}} ({{type}})`,filamentColour:`Cor do filamento`,selectPreset:`— Selecione uma predefinição —`,loadingPresets:`Carregando predefinições…`,analyzingPlateFilaments:`Analisando filamentos da mesa…`,analyzingPlateFilamentsHint:`Executando uma fatia de pré-visualização para descobrir quais slots AMS esta mesa usa. Cacheado depois — reabrir é instantâneo.`,previewToast:`Analisando {{name}} – {{elapsed}}`,previewWithProgress:`Analisando {{name}} – {{stage}} ({{percent}}%) – {{elapsed}}`,notUsedByPlate:`— não usado por esta mesa`,noPresetsForSlot:`Nenhuma predefinição disponível`,otherPrinters:`Outras impressoras`,presetsLoadFailed:`Falha ao carregar predefinições. Abra Configurações → Perfis para importá-las primeiro.`,refreshPresets:`Atualizar`,refreshPresetsTitle:`Atualizar predefinições — buscar as listagens mais recentes da nuvem e dos pacotes (use após excluir uma predefinição no Bambu Studio ou Bambu Handy)`,allPresetsRequired:`Todas as predefinições devem ser selecionadas`,useEmbedded:`Usar as configurações incorporadas do arquivo`,useEmbeddedHint:`Fatiar como o designer configurou (paredes, preenchimento, filamento) em vez dos perfis acima. Disponível porque sua impressora corresponde à do arquivo.`,autoOrient:`Orientar os objetos automaticamente`,autoOrientHint:`O fatiador gira cada objeto para o lado que imprime melhor antes de fatiar. Substitui a orientação salva no arquivo.`,autoArrange:`Organizar automaticamente na mesa`,autoArrangeHint:`O fatiador posiciona os objetos para que não se sobreponham. Substitui a disposição do arquivo.`,enqueuing:`Enviando trabalho de fatiamento…`,queued:`Na fila…`,failed:`Falha ao fatiar. Verifique os logs do sidecar.`,startedToast:`Fatiando {{name}} em segundo plano…`,queuedToast:`Na fila: {{name}} – {{elapsed}}`,runningToast:`Fatiando {{name}} – {{elapsed}}`,runningWithProgress:`{{name}} – {{stage}} ({{percent}}%) – {{elapsed}}`,runningWithProgressMultiPlate:`Bandeja {{plateIndex}} de {{plateCount}} • {{name}} – {{stage}} ({{percent}}%) – {{elapsed}}`,completedToast:`{{name}} fatiado`,externalWriteFallbackToast:`Salvo na biblioteca interna: não foi possível gravar na pasta externa`,failedTitle:`Falha ao fatiar`,failedToast:`Falha ao fatiar {{name}}: {{detail}}`,tier:{local:`Importado`,cloud:`Bambu Cloud`,orcaCloud:`Orca Cloud`,standard:`Padrão`},cloud:{notAuthenticated:`Faça login no Bambu Cloud (Configurações → Perfis → Bambu Cloud) para ver as predefinições.`,expired:`Sessão do Bambu Cloud expirou – faça login novamente para atualizar as predefinições.`,unreachable:`Bambu Cloud está inacessível agora. Predefinições locais e padrão ainda funcionam.`},orcaCloud:{notAuthenticated:`Entre no Orca Cloud (Perfis → Orca Cloud) para ver seus presets Orca.`,expired:`Sessão do Orca Cloud expirada — entre novamente para atualizar seus presets Orca.`,unreachable:`Orca Cloud está indisponível no momento. Outros presets continuam funcionando.`},bedType:{label:`Mesa de impressão`,auto:`Auto (usar predefinição de processo)`,coolPlate:`Cool Plate`,coolPlateSuperTack:`Cool Plate SuperTack`,engineering:`Engineering Plate`,highTemp:`High Temp Plate`,texturedPEI:`Textured PEI Plate`,smoothPEI:`Smooth PEI Plate`},filters:{onlyConnectedModels:`Somente impressoras online`,onlyConnectedModelsHint:`Perfis de impressora dos modelos online agora, em todos os tamanhos de bico.`,onlyLoadedSpools:`Somente carretéis carregados`,onlyLoadedSpoolsHint:`Perfis de filamento dos carretéis nas impressoras online do modelo selecionado. Um perfil escolhido por você é mantido.`,noneOnline:`Nenhuma impressora está online, então todos os perfis são exibidos.`,noneLoaded:`Nenhum carretel carregado tem perfil para esta impressora, então todos os perfis de filamento são exibidos.`,notOnline:`Offline`,notLoaded:`Não carregado`},loadedSpools:{title:`Carretéis carregados`,pick:`Escolher`,pickTitle:`Escolher um carretel carregado em uma impressora conectada`,none:`Nenhuma impressora deste modelo está online.`,nothingLoaded:`Sem AMS e sem carretel externo.`,unknownSpool:`Carretel não identificado`,empty:`Vazio`,noProfile:`Sem perfil para a impressora selecionada`,noProfileShort:`Sem perfil para esta impressora`},pipelines:{label:`Pipeline`,applyAria:`Aplicar pipeline`,applyPrompt:`Aplicar pipeline…`,empty:`Nenhuma pipeline salva`,saveButton:`Salvar como pipeline`,saveTitle:`Salvar a seleção atual dos quatro slots como uma pipeline reutilizável`,namePlaceholder:`Nome da pipeline`,nameAria:`Novo nome de pipeline`,toast:{applied:`"{{name}}" aplicada`,saved:`Pipeline salva`,saveFailed:`Falha ao salvar`}}},spoolman:{title:`Integração com Spoolman`,enabled:`Spoolman Ativado`,url:`URL do Spoolman`,connected:`Conectado`,disconnected:`Não Conectado`,testConnection:`Testar Conexão`,sync:`Sincronizar`,syncing:`Sincronizando...`,lastSync:`Última Sincronização`,linkToSpoolman:`Vincular ao Spoolman`,openInSpoolman:`Abrir no Spoolman`,unlinkSpool:`Desvincular Carretel`,unlinkConfirmTitle:`Remover atribuição do carretel?`,unlinkConfirmMessage:`Isso removerá o carretel deste slot. Os dados do próprio carretel permanecerão inalterados.`,selectSpool:`Selecionar Carretel`,noUnlinkedSpools:`Nenhum carretel não atribuído disponível`,linkSuccess:`Carretel atribuído com sucesso`,linkFailed:`Falha ao atribuir carretel`,unlinkSuccess:`Atribuição do carretel removida com sucesso`,unlinkFailed:`Falha ao remover atribuição do carretel`,linkedSpool:`Carretel atribuído`,spoolId:`Carretel ID (Spool ID)`,fillSourceLabel:`(Spoolman)`,weight:`Peso`,remaining:`Restante`,disableWeightSync:`Desativar Sincronização de Peso Estimado do AMS`,disableWeightSyncDesc:`Não atualize a capacidade restante a partir das estimativas do AMS. Use isso se preferir o rastreamento de uso do Spoolman em vez das estimativas baseadas em porcentagem do AMS. Novos carretéis ainda usarão a estimativa do AMS como seu peso inicial.`,reportPartialUsage:`Relatar Uso Parcial para Impressões Falhadas`,reportPartialUsageDesc:`Quando uma impressão falha ou é cancelada, relate o filamento estimado usado até aquele ponto com base no progresso das camadas.`},locations:{title:`Locais de armazenamento`,subtitle:`Gerencie prateleiras, gavetas e outros locais físicos para bobinas`,add:`Adicionar local`,addShort:`Adicionar`,edit:`Editar local`,name:`Nome`,spools:`Bobinas`,sensors:`Sensores`,empty:`Nenhum local de armazenamento. Crie sua primeira prateleira ou gaveta.`,manage:`Locais`,createPlaceholder:`ex. Prateleira A, Gaveta 1`,nameRequired:`O nome do local é obrigatório`,created:`Local criado`,updated:`Local atualizado`,deleted:`Local excluído`,saveFailed:`Falha ao salvar local`,deleteFailed:`Falha ao excluir local`,deleteBlocked:`Remova todas as bobinas deste local antes de excluir`,confirmDelete:`Excluir «{{name}}»?`,confirmDeleteMessage:`Este local será removido do catálogo. Mova as bobinas primeiro.`,confirmDeleteMessageWithSensors:`Este local será removido do catálogo. Mova as bobinas primeiro. Os sensores conectados também serão excluídos.`},inventory:{title:`Inventário de Carretéis`,subtitle:`Gerencie seus carretéis`,addToInventory:`Adicionar ao Inventário`,addToInventoryPending:`Adicionando...`,addToInventorySuccess:`Carretel adicionado ao inventário`,addToInventoryFailed:`Falha ao adicionar carretel ao inventário`,unknownSpoolTitle:`Novo filamento detectado`,unknownSpoolMessage:`Um carretel com tag RFID desconhecido foi detectado em {{location}}. Adicioná-lo ao seu inventário agora?`,unknownSpoolSlot:`Slot`,bulk:{selectAllVisible:`Selecionar todos os visíveis`,selectRow:`Selecionar linha`,selectGroup:`Selecionar grupo`,selectionCount:`{{count}} selecionados`,edit:`Editar`,printLabels:`Imprimir etiquetas`,resetUsage:`Redefinir uso`,restore:`Restaurar`,archive:`Arquivar`,delete:`Excluir`,clearSelection:`Limpar seleção`,editTitle:`Editar carretéis em massa`,editSubtitle:`Aplica-se a {{count}} carretéis selecionados. Apenas os campos marcados serão atualizados.`,editHint:`Digite em um campo para marcá-lo para atualização — apenas linhas marcadas são enviadas. Deixar um campo vazio mantém os carretéis inalterados (limpar campos só é feito por carretel).`,useCustom:`Usar "{{value}}"`,toggleField:`Ativar atualização deste campo`,changeCount:`{{count}} campos serão atualizados.`,applyPending:`Aplicando...`,applyButton:`Aplicar a {{count}} carretéis`,deleteTitle:`Excluir carretéis selecionados`,archiveTitle:`Arquivar carretéis selecionados`,restoreTitle:`Restaurar carretéis selecionados`,resetUsageTitle:`Redefinir uso dos carretéis selecionados`,deleteMessage:`Excluir permanentemente {{count}} carretéis? Esta ação não pode ser desfeita.`,archiveMessage:`Arquivar {{count}} carretéis? Eles podem ser restaurados depois.`,restoreMessage:`Restaurar {{count}} carretéis arquivados?`,resetUsageMessage:`Redefinir o contador "Total Consumido" em {{count}} carretéis? O peso restante é preservado.`,updateSuccess:`{{count}} carretéis atualizados`,updateFailed:`Atualização em massa falhou`,updatePartial:`{{ok}} carretéis atualizados, {{failed}} falharam`,updateAllFailed:`Todas as {{count}} atualizações falharam — a seleção é mantida para nova tentativa`,deleteSuccess:`{{count}} carretéis excluídos`,deleteFailed:`Exclusão em massa falhou`,deletePartial:`{{ok}} carretéis excluídos, {{failed}} falharam`,deleteAllFailed:`Todas as {{count}} exclusões falharam — a seleção é mantida para nova tentativa`,archiveSuccess:`{{count}} carretéis arquivados`,archiveFailed:`Arquivamento em massa falhou`,archivePartial:`{{ok}} carretéis arquivados, {{failed}} falharam`,archiveAllFailed:`Todos os {{count}} arquivamentos falharam — a seleção é mantida para nova tentativa`,restoreSuccess:`{{count}} carretéis restaurados`,restoreFailed:`Restauração em massa falhou`,restorePartial:`{{ok}} carretéis restaurados, {{failed}} falharam`,restoreAllFailed:`Todas as {{count}} restaurações falharam — a seleção é mantida para nova tentativa`,invalidHex:`Digite 6 caracteres hex (RRGGBB) ou 8 (RRGGBBAA). Caso contrário o campo não será aplicado.`},spoolmanMixedContentTitle:`Spoolman não pode carregar em HTTPS — conteúdo misto bloqueado pelo navegador`,spoolmanMixedContentBody:`O Bambuddy é servido via HTTPS (pelo seu reverse proxy), mas a URL do Spoolman ainda é HTTP. Os navegadores bloqueiam conteúdo misto por segurança, então a interface embutida do Spoolman não consegue carregar. O Spoolman também precisa estar acessível via HTTPS.`,spoolmanMixedContentFixReverseProxy:`Coloque o Spoolman atrás do mesmo reverse proxy do Bambuddy (Traefik / Nginx / Caddy) com HTTPS e atualize a URL do Spoolman em Configurações com o novo endereço HTTPS.`,spoolmanMixedContentFixOpenNewTab:`Como alternativa, abra o Spoolman em uma nova aba via HTTP — as regras de conteúdo misto só se aplicam a frames embutidos, uma aba independente funciona normalmente.`,spoolmanOpenInNewTab:`Abrir Spoolman em nova aba`,labels:{title:`Imprimir etiquetas de bobinas`,selectedCount:`{{count}} selecionado`,pickSpools:`Escolha para quais bobinas imprimir etiquetas:`,monochrome:`Monocromático (impressora preto e branco)`,monochromeHint:`Remove a amostra de cor e amplia o texto`,startingPosition:`Posição inicial da etiqueta`,startingPositionInvalid:`Digite um número inteiro de 1 a {{capacity}}.`,startingPositionFirst:`A impressão começa na posição 1.`,startingPositionSkipped:`As posições de 1 a {{lastPosition}} ficarão vazias na primeira folha.`,searchPlaceholder:`Buscar por nome, marca ou #ID`,filterByMaterial:`Material:`,allMaterials:`Tudo`,selectVisible:`Selecionar todos visíveis ({{count}})`,deselectVisible:`Desmarcar visíveis`,clearAll:`Limpar tudo`,noSpoolsToShow:`Nenhuma bobina para mostrar. Ajuste o filtro e tente novamente.`,noMatches:`Nenhuma bobina corresponde à pesquisa ou filtro atual.`,printOne:`Imprimir etiqueta desta bobina`,printLabels:`Imprimir etiquetas…`,bulkTitle:`Escolha bobinas para etiquetar entre as {{count}} exibidas`,noSpoolsTitle:`Nenhuma bobina para rotular`,error:`Não foi possível gerar etiquetas: {{msg}}`,template:`Tamanho da etiqueta`,preview:`Pré-visualização`,previewOf:`Pré-visualização de #{{id}}`,previewNoSelection:`Selecione um carretel para ver a etiqueta.`,previewError:`Não foi possível gerar a pré-visualização: {{msg}}`,previewAlt:`Pré-visualização da etiqueta`,previewHint:`Linhas que não cabem neste tamanho de etiqueta são omitidas.`,content:`Imprimir na etiqueta`,resetFields:`Restaurar padrão`,format:`Saída:`,dpi:`Resolução`,pngHint:`Para softwares de impressoras de etiquetas que usam imagens. Use a resolução da sua impressora; várias etiquetas vêm em um ZIP.`,createPdf:`Criar PDF`,downloadPng:`Baixar PNG`,selectedTitle:`Imprimir etiquetas dos {{count}} carretéis selecionados`,fields:{brand:`Marca`,material:`Material e subtipo`,hex:`Código de cor`,name:`Nome da cor ou do filamento`,location:`Local de armazenamento`,materialNumber:`Número do material`,temps:`Temperatura do bico`,weight:`Peso líquido`,note:`Observação`,added:`Data de inclusão`,qr:`Código QR`,spoolId:`ID do carretel`},sortBy:{label:`Ordenar:`,id:`Por ID`,color:`Por cor`},templates:{amsHolderSmall:{label:`Suporte AMS — pequeno (74 × 33 mm)`,hint:`Uma etiqueta por página; corresponde à etiqueta imprimível do modelo MakerWorld 752566 (Suporte de etiquetas de filamento AMS).`},amsHolderLarge:{label:`Suporte AMS — grande (75 × 55 mm)`,hint:`Uma etiqueta por página; encaixa na variante com inserto em cartão do Suporte de etiquetas de filamento AMS. Espaço suficiente para amostra de cor, marca, material, ID e QR code.`},box40x30:{label:`Etiqueta de caixa (40 × 30 mm)`,hint:`Uma etiqueta por página; tamanho comum de rolo DK/Brother, ideal para etiquetar sacos de filamento e caixas de armazenamento.`},box:{label:`Box label (62 × 29 mm)`,hint:`Uma etiqueta por página; tamanho para Brother PT/QL e etiquetas pequenas Dymo.`},averyL7160:{label:`Avery L7160 — A4 sheet (38.1 × 63.5 mm × 21)`,hint:`Formato de folha UE; 21 etiquetas por página A4.`},avery5160:{label:`Avery 5160 — US Letter sheet (25.4 × 66.7 mm × 30)`,hint:`Formato de folha US; 30 etiquetas por página Letter.`}}},csv:{importButton:`Importar CSV`,exportButton:`Exportar CSV`,modalTitle:`Importar carretéis de CSV`,selectFile:`Escolha um arquivo CSV ou arraste-o aqui`,dragHint:`Cabeçalho: material (obrigatório), brand, subtype, color_name, rgba, …`,parsing:`Lendo arquivo…`,previewError:`Não foi possível ler o arquivo CSV`,validCount:`{{count}} válidos`,errorCount:`{{count}} com erro`,skippedCount:`{{count}} ignorados`,colRow:`Linha`,colStatus:`Status`,colColor:`Cor`,colorResolved:`Cor preenchida pelo catálogo`,colorCrossMaterial:`Cor obtida de um material diferente — sem correspondência exata no catálogo`,duplicateExisting:`Já existe uma bobina com este material, marca e cor — ela será importada mesmo assim como uma nova bobina`,spoolmanHint:`No modo Spoolman, use a importação/exportação CSV integrada do Spoolman.`,importValidRows:`Importar {{count}} linhas válidas`,noValidRows:`Nenhuma linha válida`,importing:`Importando…`,importSuccess:`{{count}} carretéis importados`,importError:`Falha na importação`,exportError:`Falha na exportação`},addSpool:`Adicionar Carretel`,editSpool:`Editar Carretel`,copySpool:`Copiar Carretel`,material:`Material`,selectMaterial:`Selecionar material...`,subtype:`Subtipo`,brand:`Marca`,searchBrand:`Pesquisar marca...`,useCustomBrand:`Usar "{{brand}}"`,useCustomMaterial:`Usar material personalizado: {{material}}`,suggestedOptions:`Sugeridos`,allOptions:`Todos`,colorName:`Nome da Cor`,colorNamePlaceholder:`Branco Jade, Vermelho Fogo...`,color:`Cor`,hexColor:`Cor Hexadecimal`,pickColor:`Escolher cor personalizada`,labelWeight:`Peso da Etiqueta`,coreWeight:`Peso do Carretel Vazio`,searchSpoolWeight:`Pesquisar peso do carretel...`,weightUsed:`Usado`,currentWeight:`Peso Restante`,measuredWeight:`Peso Medido`,spoolName:`Bobina`,costPerKg:`Custo por kg`,storageLocation:`Local de armazenamento`,temperature:`Temperatura`,humidity:`Umidade`,battery:`Bateria`,storageLocationPlaceholder:`ex. Prateleira A, Gaveta 1`,openInInventory:`Abrir no inventário`,measuredWeightError:`O peso medido deve estar entre {{min}}g e {{max}}g.`,slicerFilament:`Filamento do Fatiador`,slicerFilamentName:`Nome do Predefinido do Fatiador`,slicerPreset:`Predefinido do Fatiador`,searchPresets:`Pesquisar predefinições de filamento...`,selectedPreset:`Selecionado`,noPresetsFound:`Nenhuma predefinição encontrada`,tempOverrides:`Substituições de Temperatura`,note:`Nota`,notePlaceholder:`Quaisquer notas adicionais sobre este spool...`,category:`Categoria`,categoryPlaceholder:`ex. Produção, Protótipo, Cliente A`,categoryNone:`Sem categoria`,storageLocationNone:`Sem local definido`,lowStockThresholdOverride:`Limite de estoque baixo (este carretel)`,lowStockThresholdOverrideHelp:`Deixe em branco para usar o limite global ({{global}}%).`,materialNumber:`Nº do Material`,materialNumberPlaceholder:`ex. 15`,materialNumberHelp:`Número interno de compra - compartilhado por todos os carretéis deste produto. Novos carretéis do mesmo produto o herdam.`,lastDried:`Última secagem`,lastDriedNow:`Agora`,lastDriedHelp:`Preenchido quando termina uma secagem no AMS que durou pelo menos metade do tempo previsto. Defina aqui para um carretel secado em outro lugar.`,materialNumberNone:`Sem número de material`,suppliers:{label:`Fornecedores`,none:`Sem fornecedor`,addSupplier:`Adicionar fornecedor…`,searchPlaceholder:`Pesquisar fornecedores…`,noneLeft:`Todos os fornecedores já estão atribuídos`,createNew:`Criar "{{name}}"`,createFailed:`Falha ao criar fornecedor`,purchaseSource:`Comprado aqui`,purchaseSourceHelp:`Indica onde este carretel foi realmente comprado; as outras entradas são fontes alternativas.`,articleNumberPlaceholder:`Nº do artigo no fornecedor`,pricePlaceholder:`Preço cotado/kg`,priceHelp:`Preço cotado neste fornecedor, para comparar fontes — o custo por kg do próprio carretel continua sendo a base de custo.`,help:`Onde este produto pode ser comprado. A entrada destacada é onde este carretel foi comprado.`,saveFailed:`Falha ao salvar as atribuições de fornecedor`,title:`Fornecedores`,description:`Gerencie onde você compra filamento — diferente da marca, que é quem o fabricou. Atribua fornecedores aos carretéis no diálogo do carretel; um fornecedor que ainda está atribuído a carretéis não pode ser excluído.`,search:`Pesquisar fornecedores...`,addNew:`Adicionar novo fornecedor`,namePlaceholder:`Nome (ex. Filament24)`,websitePlaceholder:`Site / URL da loja`,customerNumberPlaceholder:`Nº de cliente`,notePlaceholder:`Observação`,nameRequired:`O nome é obrigatório`,duplicateName:`Já existe um fornecedor com esse nome`,customerNumber:`Nº de cliente`,spools:`Carretéis`,noMatch:`Nenhum fornecedor corresponde à sua pesquisa`,empty:`Nenhum fornecedor ainda`,added:`Fornecedor adicionado`,addFailed:`Falha ao adicionar fornecedor`,updated:`Fornecedor atualizado`,updateFailed:`Falha ao atualizar fornecedor`,deleted:`Fornecedor excluído`,deleteFailed:`Falha ao excluir fornecedor`,deleteBlocked:`Não é possível excluir: ainda atribuído a {{count}} carretel(éis)`,loadFailed:`Falha ao carregar fornecedores`,deleteTitle:`Excluir Fornecedor`,deleteConfirm:`Excluir "{{name}}"?`,deleteConfirmReferenced:`"{{name}}" está atribuído a {{count}} carretel(éis). A exclusão fica bloqueada até que essas atribuições sejam removidas.`},clearRfid:`Limpar tag RFID`,rfidCleared:`Tag RFID limpa`,archive:`Arquivar`,restore:`Restaurar`,noSpools:`Nenhum carretel ainda. Adicione seu primeiro carretel para começar.`,noAvailableSpools:`Nenhum carretel disponível. Adicione um carretel ao seu inventário ou desatribua um de outro slot primeiro.`,kProfiles:`K-Perfis`,addKProfile:`Adicionar K-Perfil`,assignSpool:`Atribuir Carretel`,unassignSpool:`Desatribuir`,assignSuccess:`Carretel atribuído e slot AMS configurado`,assignPendingInsert:`Atribuído. O slot será configurado quando você inserir o carretel.`,assignFailed:`Falha ao atribuir carretel`,selectSpool:`Selecione um carretel para atribuir a este slot`,assigned:`Atribuído`,assigning:`Atribuindo...`,searchSpools:`Pesquisar carretéis...`,showAllSpools:`Mostrar todos os carretéis`,spoolmanSpools:`Bobinas Spoolman`,allMaterials:`Todos os Materiais`,filterByBrand:`Filtrar por marca...`,showArchived:`Mostrar arquivados`,quickAdd:`Adição rápida (Estoque)`,quantity:`Quantidade`,stock:`Estoque`,configured:`Configurado`,spoolsCreated:`{{count}} carretéis criados`,spoolsPartiallyCreated:`{{created}} de {{total}} carretéis criados (alguns falharam)`,spoolCreated:`Carretel criado`,spoolUpdated:`Carretel atualizado`,spoolDeleted:`Carretel excluído`,deepLinkSpoolNotFound:`Carretel não encontrado`,deepLinkFetchFailed:`Não foi possível carregar o carretel — tente novamente`,spoolArchived:`Carretel arquivado`,spoolRestored:`Carretel restaurado`,kProfileSaveFailed:`Não foi possível salvar as configurações do perfil K`,syncWeightSpoolNotFound:`Carretel não encontrado — pode ter sido excluído`,syncWeightSpoolmanUnreachable:`Spoolman está inacessível — tente novamente mais tarde`,syncWeightFailed:`Falha ao sincronizar o peso`,spoolmanUnreachable:`Spoolman está inacessível — tente novamente mais tarde`,deleteSpoolNotFound:`Carretel não encontrado — pode já ter sido excluído`,deleteFailed:`Falha ao excluir carretel`,archiveSpoolNotFound:`Carretel não encontrado — pode já ter sido excluído`,archiveFailed:`Falha ao arquivar carretel`,restoreSpoolNotFound:`Carretel não encontrado — pode já ter sido excluído`,restoreFailed:`Falha ao restaurar carretel`,saveFailed:`Falha ao salvar as alterações`,tagClearFailed:`Falha ao limpar a tag`,deleteConfirm:`Tem certeza de que deseja excluir este carretel? Esta ação não pode ser desfeita.`,archiveConfirm:`Tem certeza de que deseja arquivar este carretel?`,advancedSettings:`Configurações Avançadas`,filamentInfoTab:`Informações do Filamento`,paProfileTab:`Perfil PA`,colorAndCostTab:`Cor e custo`,printersTab:`Impressoras`,filamentInfo:`Filamento`,additional:`Adicional`,loadingPresets:`Carregando predefinições da nuvem...`,cloudConnected:`Nuvem conectada`,cloudNotConnected:`Nuvem não conectada (usando padrões)`,recentColors:`Recentes`,searchColors:`Pesquisar cores...`,searchResults:`Resultados da pesquisa`,allColors:`Todas as cores`,commonColors:`Cores comuns`,showLess:`Mostrar menos`,showAll:`Mostrar tudo`,noColorsFound:`Nenhuma cor corresponde à sua pesquisa`,noResults:`Nenhum resultado encontrado`,extraColorsLabel:`Cores extras`,extraColorsPlaceholder:`EC984C,#6CD4BC,A66EB9,D87694`,extraColorsHint:`Cole 2 a 8 paradas hex, separadas por vírgulas. Renderizado como gradiente.`,extraColorsInvalid:`Hex inválidos ignorados: {{tokens}}`,colorEffectLabel:`Efeito`,colorEffect:{none:`Nenhum`,sparkle:`Brilho`,wood:`Madeira`,marble:`Mármore`,glow:`Brilho`,matte:`Fosco`,silk:`Silk`,galaxy:`Galáxia`,rainbow:`Arco-íris`,metal:`Metal`,translucent:`Translúcido`,gradient:`Gradiente`,dualColor:`Dupla cor`,triColor:`Tricolor`,multicolor:`Multicolor`},selectMaterialFirst:`Por favor, selecione um material primeiro na aba Informações do Filamento.`,noPrintersConfigured:`Nenhuma impressora configurada. Adicione impressoras para usar perfis PA.`,matchingFilter:`Correspondente`,anyBrand:`Qualquer marca`,anyVariant:`Qualquer variante`,autoSelect:`Seleção automática`,matches:`correspondências`,match:`correspondência`,noMatches:`Nenhuma correspondência`,connected:`Conectado`,offline:`Offline`,printerOffline:`A impressora está offline. Conecte-se para visualizar os perfis de calibração.`,noKProfilesMatch:`Nenhum K-perfil corresponde ao filamento selecionado.`,leftNozzle:`Bico Esquerdo`,rightNozzle:`Bico Direito`,profilesSelected:`perfil(is) de calibração selecionado(s)`,filamentPreset:`Predefinição de filamento`,presetUseSpoolDefault:`Usar a predefinição do carretel`,presetInherited:`herdada`,presetOverride:`personalizada`,presetNeedsModel:`Esta impressora ainda não informou o modelo, portanto não pode ter uma predefinição própria.`,autoMatchPresets:`Associar automaticamente`,autoMatchPresetsHint:`Encontrar a variante da predefinição do carretel que nomeia cada modelo`,kProfilesPerPrinter:`Perfis K`,kProfileNotSet:`Não definido`,kProfileFlowMismatch:`Este perfil foi medido com um bico {{profile}}, mas há um bico {{fitted}} instalado, portanto não será aplicado`,nozzle:`Bico`,unknownModel:`Modelo desconhecido`,onePrinter:`1 impressora`,nPrinters:`{{n}} impressoras`,filamentPresetsLoadFailed:`Não foi possível carregar as predefinições por modelo deste carretel`,filamentPresetSaveFailed:`Não foi possível salvar as predefinições por modelo`,totalInventory:`Inventário Total`,totalConsumed:`Total Consumido`,byMaterial:`Por Material`,inPrinter:`Na Impressora`,lowStock:`Estoque Baixo`,sinceTracking:`Desde o início do rastreamento`,resetConsumedCounter:`Zerar contador`,resetConsumedCounterTooltip:`Zerar o contador de gramas consumidas desta bobina. O peso restante não é alterado.`,resetConsumedCounterConfirm:`Zerar o contador de gramas consumidas desta bobina? As impressões futuras voltarão a contar do zero. A bobina em si, o cálculo do peso restante e as configurações não são alterados.`,resetAllConsumedCounters:`Zerar todos os contadores`,resetAllConsumedCountersTooltip:`Zerar o contador de gramas consumidas em todas as bobinas. Os pesos restantes não são alterados.`,resetAllConsumedCountersConfirm:`Zerar o contador de gramas consumidas nas {{count}} bobinas (incluindo as arquivadas)? Isso limpa o "Total Consumido" para que as impressões futuras contem do zero. Bobinas e pesos restantes não são alterados.`,consumedCounterReset:`Contador zerado`,allConsumedCountersReset:`Contador zerado em {{count}} bobina(s)`,resetConsumedCounterFailed:`Falha ao zerar o contador`,loadedInAms:`Carregado no AMS/Ext`,remaining:`Restante`,weightCheck:`Verificação de Peso`,lastWeighed:`Última pesagem`,neverWeighed:`Nunca pesado`,search:`Pesquisar carretéis...`,showing:`Mostrando`,to:`até`,of:`de`,show:`Mostrar`,spools:`carretéis`,spool:`carretel`,page:`Página`,noSpoolsMatch:`Nenhum resultado encontrado`,noSpoolsMatchDesc:`Tente ajustar sua pesquisa ou filtros para encontrar o que você está procurando.`,active:`Ativo`,archived:`Arquivado`,all:`Todos`,used:`Usado`,new:`Novo`,clearFilters:`Limpar filtros`,table:`Tabela`,cards:`Cartões`,net:`Líquido`,groupSimilar:`Agrupar`,groupedSpools:`{{count}} carretéis idênticos`,groupedRows:`linhas`,columns:`Colunas`,configureColumns:`Configurar Colunas`,configureColumnsDesc:`Arraste para reordenar as colunas ou use as setas. Alterne a visibilidade com o ícone de olho.`,visible:`Visível`,reset:`Redefinir`,cancel:`Cancelar`,applyChanges:`Aplicar Alterações`,moveUp:`Mover para cima`,moveDown:`Mover para baixo`,hideColumn:`Ocultar coluna`,showColumn:`Mostrar coluna`,linkToSpool:`Vincular ao Carretel`,tagLinked:`Tag vinculada ao carretel`,tagLinkFailed:`Falha ao vincular tag`,tagAlreadyLinked:`Tag já vinculada ao carretel #{{id}}`,unknownTag:`Tag RFID desconhecida detectada`,usageHistory:`Histórico de Uso`,noUsageHistory:`Nenhum uso registrado ainda`,printName:`Nome da Impressão`,weightConsumed:`Peso Consumido`,clearHistory:`Limpar`,historyCleared:`Histórico de uso limpo`,fillSourceLabel:`(Inv)`,lowStockThresholdError:`O limite deve estar entre 0.1 e 99.9`,assignMismatchTitle:`Incompatibilidade de material`,assignMismatchMessage:`O material do carretel selecionado "{{spoolMaterial}}" não corresponde ao material da bandeja "{{trayMaterial}}" para {{location}}. Atribuir mesmo assim?`,assignMismatchConfirm:`Atribuir mesmo assim`,assignPartialMismatchMessage:`O material do carretel "{{spoolMaterial}}" é semelhante, mas não corresponde exatamente a "{{trayMaterial}}" em {{location}}. Deseja prosseguir?`,assignProfileMismatchMessage:`O perfil do carretel "{{spoolProfile}}" não corresponde ao perfil da bandeja "{{trayProfile}}" em {{location}}. Deseja prosseguir?`,assignReconfigureNote:`O slot do AMS será reconfigurado para usar o perfil do carretel.`,spoolmanFilamentCatalog:`Catálogo de filamentos Spoolman`,pickFromSpoolmanCatalog:`Escolher do catálogo Spoolman…`,spoolmanFilamentSelected:`Filamento selecionado do catálogo Spoolman`,spoolmanFilamentUnlinked:`Vínculo com o catálogo de filamentos removido`,noSpoolmanFilaments:`Nenhum filamento encontrado no catálogo Spoolman`,spoolmanFilamentColorSwatch:`Cor do filamento`,spoolmanCatalogLoadFailed:`Falha ao carregar catálogo de filamentos do Spoolman`},timelapse:{title:`Timelapse`,create:`Criar Timelapse`,download:`Baixar`,delete:`Excluir`,preview:`Visualizar`,frameRate:`Taxa de Quadros`,quality:`Qualidade`,processing:`Processando...`,noTimelapses:`Nenhum timelapse disponível`},ams:{title:`AMS`,slot:`Slot`,empty:`Vazio`,emptySlot:`Slot vazio`,slotEmpty:`Vazio`,slotUnconfigured:`?`,emptySlotReset:`Nenhum carretel atribuído`,unknown:`Desconhecido`,humidity:`Umidade`,temperature:`Temperatura`,filamentType:`Tipo de Filamento`,filamentColor:`Cor`,remaining:`Restante`,history:`Histórico do AMS`,noHistory:`Nenhum histórico disponível`,configureSlot:`Configurar Slot`,externalSpool:`Carretel Externo`,profile:`Perfil`,kFactor:`Fator K`,kFactorShort:`K`,fill:`Preencher`,configure:`Configurar`,used:`usado`,remainingUnit:`restante`},printModal:{variants:{editNote:`Estas alternativas foram definidas ao enfileirar o trabalho. Cancele e enfileire de novo para alterá-las.`,title:`Alternativas de impressora`,help:`Um trabalho, uma vaga na fila. A primeira impressora compatível que ficar livre imprime o arquivo dela.`,unknownModel:`Modelo desconhecido`,plateFor:`Mesa para {{filename}}`,moveUp:`Mover para cima`,moveDown:`Mover para baixo`,queued:`Na fila com {{count}} alternativas`},selectPrinter:`Selecionar Impressora`,selectPlate:`Selecionar Placa`,filamentMapping:`Mapeamento de Filamento`,useArchiveMapping:`Mapeamento`,useArchiveMappingTooltip:`Selecionar todos os slots a partir do mapeamento de AMS salvo com este arquivo (do fatiador), em vez de corresponder por tipo/cor.`,clickToChangeSlot:`Clique para alterar a atribuição do slot`,reRead:`Reler`,plateN:`Placa {{n}}`,plateFilamentsUnreadable:`Não foi possível ler os filamentos de uma placa selecionada, portanto ela não pode ser mapeada. Desmarque-a para enfileirar as demais.`,totalCost:`Custo total:`,slotRemainingShort:` - {{grams}}g rest.`,printSettings:`Configurações de Impressão`,bedLeveling:`Nivelamento da Mesa`,flowCalibration:`Calibração de Fluxo`,vibrationCalibration:`Calibração de Vibração`,layerInspection:`Inspeção da Primeira Camada`,timelapse:`Timelapse`,cancel:`Cancelar`,noPrintersAvailable:`Nenhuma impressora disponível`,printerBusy:`Impressora ocupada`,printerOffline:`Impressora offline`,sameTypeDifferentColor:`Mesmo tipo, cor diferente`,filamentTypeNotLoaded:`Tipo de filamento não carregado`,statusReady:`Pronto`,statusColorMismatch:`Cor diferente`,statusTypeNotFound:`Tipo não encontrado`,requiredTooltip:`Necessário: {{name}} - {{color}}`,manuallySelected:`Selecionado manualmente`,autoMatched:`Correspondido automaticamente`,selectSlot:`Escolher slot`,exactColorMatch:`Correspondência exata de cor`,slotForFilament:`Slot da impressora para {{name}}`,overrideForFilament:`Substituição de filamento para {{name}}`,sameTypeDifferentColorDetail:`Mesmo tipo, cor diferente: precisa de {{required}}, o slot tem {{loaded}}`,requiredTypeNotInPrinter:`Tipo de filamento necessário não encontrado na impressora.`,whenToPrint:`Quando imprimir`,asap:`O quanto antes`,queue:`Fila`,schedule:`Agendar`,dateTime:`Data e hora`,invalidDateTime:`Digite uma data e hora válidas`,openCalendar:`Abrir calendário`,requireManualStart:`Exigir início manual`,awaitingReviewNote:`Sua impressão aguarda revisão: ela começa quando alguém que gerencia a fila a iniciar.`,requirePreviousSuccess:`Iniciar somente se a impressão anterior foi concluída com sucesso`,autoOffAfter:`Desligar impressora ao finalizar`,helpAsap:`A impressão será adicionada ao topo da fila e começará assim que uma impressora elegível estiver ociosa.`,helpSchedule:`A impressão começará no horário agendado se a impressora estiver ociosa. Se estiver ocupada, aguardará até ficar disponível.`,helpQueue:`A impressão será adicionada ao fim da fila.`,leftNozzle:`L`,rightNozzle:`R`,leftNozzleTooltip:`Bico esquerdo`,rightNozzleTooltip:`Bico direito`,ftsSameInletHint:`Todos os filamentos desta impressão estão no comutador de trajeto de filamento IN-{{inlet}}. Trocar entre filamentos da mesma entrada é mais lento — mova um para um AMS da outra entrada.`,rackPosition:`Posição no rack`,rackPositionTooltip:`Qual bico do rack imprime este filamento. As posições são numeradas como na impressora.`,rackEmptyPosition:`Esta posição do rack está vazia`,rackWrongNozzle:`Tem um bico {{has}}; este filamento precisa de {{needs}}`,filamentOverride:`Substituição de Filamento`,filamentOverrideHint:`Substitua opcionalmente os filamentos para atribuição baseada em modelo. O agendador usará os filamentos selecionados em vez dos valores originais do 3MF.`,originalFilament:`Original`,overrideWith:`Substituir por`,resetToOriginal:`Restaurar original`,insufficientFilamentTitle:`Filamento insuficiente`,waitingForAmsStatus:`Aguardando o status do AMS de {{printer}}…`,insufficientFilamentMessage:`Alguns dos carretéis atribuídos têm menos filamento restante do que o necessário para esta impressão:`,insufficientFilamentLine:`{{printer}} - {{slot}}: necessário {{required}}g, restante {{remaining}}g`,insufficientFilamentLinePooled:`{{printer}} - {{slot}}: necessário {{required}}g, {{remaining}}g disponíveis entre bobinas correspondentes (AMS Filament Backup)`,printAnyway:`Imprimir mesmo assim`,forceColorMatch:`Forçar correspondência de cor`,staggerPrinterStarts:`Escalonar inícios`,staggerGroupSize:`Tamanho do grupo`,staggerInterval:`Intervalo (min)`,staggerPreview:`{{printers}} impressoras → {{groups}} grupos de {{size}}, iniciando a cada {{interval}} min`,staggerLastGroup:`último grupo: {{count}}`,staggerTotal:`total: {{minutes}} min`,staggerToPrinters:`Escalonar para {{count}} impressoras`,gcodeInjection:`Injetar G-code de auto-impressão`,insufficientBudget:`Orçamento insuficiente`,unlimitedNoBudget:`Ilimitado – nenhum limite de orçamento foi definido.`,noPrintableCostCenters:`Não há nenhum centro de custo ativo disponível para impressão. Peça a um administrador para conceder acesso de impressão.`,askForOutcome:`Perguntar o resultado`,askForOutcomeTitle:`Perguntar como a impressão ficou depois de concluída`},backup:{includesEncryptionKey:`Backups locais incluem o arquivo da chave de criptografia MFA (DATA_DIR/.mfa_encryption_key), então o backup ZIP é autossuficiente. Trate o ZIP como sensível — quem tiver o arquivo pode descriptografar os client secrets OIDC e os segredos TOTP armazenados.`,title:`Bakup e Restauração`,createBackup:`Criar Backup`,restoreBackup:`Restaurar Backup`,restoreDescription:`Substituir todos os dados a partir de um arquivo de backup`,downloadBackup:`Baixar Backup`,uploadBackup:`Enviar Backup`,lastBackup:`Último Backup`,autoBackup:`Backup automático`,backupNow:`Fazer Backup Agora`,restoreWarning:`Aviso: Restaurar um backup substituirá todos os dados atuais.`,includeArchives:`Incluir Arquivos`,includeSettings:`Incluir Configurações`,includeProfiles:`Incluir Perfis`,backupSuccess:`Backup criado com sucesso`,restoreSuccess:`Backup restaurado com sucesso`,backupFailed:`Falha ao criar backup`,restoreFailed:`Falha ao restaurar backup`,restoreNote:`A impressora virtual será parada durante a restauração`,githubBackup:`Backup GitHub`,enabled:`Ativado`,cloudLoginRequired:`Login no Bambu Cloud necessário. Entre em Perfis → Perfis Cloud para ativar o backup GitHub.`,cloudLoginRequiredShort:`Login Cloud necessário`,githubDescription:`Sincronize automaticamente seus perfis com um repositório GitHub privado para backup e histórico de versões.`,repoIsPrivate:`O repositório é privado — seguro para backup.`,repoIsPublicWarning:`O repositório está PÚBLICO. Os backups do Bambuddy incluem credenciais MQTT, tokens do Home Assistant, tokens do Prometheus, seu e-mail do Bambu Cloud e os códigos de acesso das impressoras via K-profiles. Salvar está bloqueado até que você torne o repositório privado nas configurações do seu provedor.`,repoVisibilityUnknown:`Não foi possível determinar a visibilidade do repositório. O Bambuddy se recusa a fazer backup em qualquer destino não confirmado como privado; salvar será bloqueado.`,repositoryUrl:`URL do repositório`,repoUrlPlaceholderGitHub:`https://github.com/username/repo-name`,repoUrlPlaceholderGitea:`https://gitea.example.com/username/repo-name`,repoUrlPlaceholderForgejo:`https://forgejo.example.com/username/repo-name`,repoUrlPlaceholderGitLab:`https://gitlab.com/username/repo-name`,allowInsecureHttp:`Permitir HTTP inseguro`,allowInsecureHttpHint:`Ativar para instâncias auto-hospedadas em redes privadas sem TLS`,personalAccessToken:`Token de acesso pessoal`,tokenSaved:`(salvo)`,enterNewToken:`Digite um novo token para atualizar`,tokenHintGitHub:`Token de granularidade fina com acesso de leitura e escrita a Contents, ou token clássico com o escopo repo.`,tokenHintGitLab:`Token com o escopo api, ou read_repository junto com write_repository.`,tokenHintGitea:`Token com o escopo write:repository.`,tokenHintForgejo:`Token com o escopo write:repository. Um token limitado somente a este repositório já basta.`,branch:`Branch`,provider:`Provedor Git`,providerGitHub:`GitHub`,providerGitLab:`GitLab`,providerGitea:`Gitea`,providerForgejo:`Forgejo`,manualOnly:`Apenas manual`,hourly:`A cada hora`,daily:`Diário`,weekly:`Semanal`,includeInBackup:`Incluir no backup`,kProfiles:`K-Perfis`,kProfilesDescription:`Calibração de avanço de pressão das impressoras conectadas`,noPrintersConnected:`Nenhuma impressora conectada`,printersConnected:`{{connected}}/{{total}} conectadas`,cloudProfiles:`Perfis Cloud`,cloudProfilesDescription:`Predefinições de filamento, impressora e processo do Bambu Cloud e do Orca Cloud`,cloudProfilesAccounts:`Contas conectadas — Bambu Cloud: {{bambu}}, Orca Cloud: {{orca}}`,appSettings:`Configurações do App`,appSettingsDescription:`Configuração do Bambuddy (banco de dados completo)`,spoolInventory:`Inventário de bobinas`,spoolInventoryDescription:`Bobinas de filamento, histórico de uso e rastreamento de custos`,printArchives:`Arquivos de impressão`,printArchivesDescription:`Metadados do histórico de impressão (sem arquivos gcode/3MF)`,lastBackupAt:`Último backup:`,noBackupsYet:`Nenhum backup ainda`,next:`Próximo:`,startingBackup:`Iniciando backup...`,test:`Testar`,enableBackup:`Ativar backup`,testConnection:`Testar conexão`,enterRepoUrl:`Digite a URL do repositório`,enterRepoAndToken:`Digite a URL do repositório e o token de acesso`,repoRequired:`A URL do repositório é obrigatória`,tokenRequired:`O token de acesso é obrigatório`,githubBackupEnabled:`Backup GitHub ativado`,tokenUpdated:`Token atualizado`,settingsSaved:`Configurações salvas`,failedToSave:`Falha ao salvar: {{message}}`,backupCompleteFiles:`Backup concluído - {{count}} arquivos atualizados`,backupSkippedNoChanges:`Backup ignorado - sem alterações`,backupFailed2:`Falha no backup: {{message}}`,clearedLogs:`{{count}} logs removidos`,failedToClearLogs:`Falha ao limpar logs: {{message}}`,restoreFromGit:{button:`Restaurar do Git`,title:`Restaurar do backup Git`,subtitle:`Escolha um commit e o que deve ser restaurado`,commitLabel:`Commit do backup`,latestCommit:`Backup mais recente (ponta do branch)`,categoriesLabel:`O que restaurar`,inspecting:`Lendo o conteúdo do backup...`,itemCount:`{{count}} no backup`,overwriteLabel:`Sobrescrever entradas existentes`,overwriteOn:`As entradas existentes serão atualizadas a partir do backup.`,overwriteOff:`Apenas as entradas ausentes são adicionadas; as existentes permanecem intactas.`,selectedCount:`{{count}} selecionados`,restoring:`Restaurando...`,confirmTitle:`Restaurar do backup?`,confirmMessage:`As categorias selecionadas serão restauradas deste commit. As entradas ausentes são adicionadas e as existentes permanecem como estão.`,confirmMessageOverwrite:`As categorias selecionadas serão restauradas deste commit, sobrescrevendo as entradas que já existem localmente. Não é possível desfazer.`,kprofilesOverwriteCaveat:`Os perfis K são a exceção: gravar um slot sempre substitui a calibração na impressora.`,tally:`{{restored}} restaurados, {{skipped}} ignorados, {{failed}} com falha`,reloadHint:`Recarregue o Bambuddy para que os dados restaurados apareçam em todos os lugares.`,partialHint:`As categorias listadas acima foram concluídas e estão salvas. As que faltam não chegaram a ser executadas.`,failed:`Falha na restauração.`,loadFailed:`Não foi possível ler o repositório de backup.`,details:{notPresent:`Não está presente neste commit de backup`,unreadableJson:`JSON ilegível: {{paths}}`,settingsNoPayload:`Nenhuma configuração nos dados`,settingsCredentialsWillSkip:`{{count}} chaves parecidas com credenciais serão ignoradas`,settingsCompanionWillSkip:`{{count}} chaves parecidas com credenciais serão ignoradas, e {{companion}} chaves que dependem delas ficarão desligadas`,settingsCompanionOnlyWillSkip:`{{companion}} chaves ficarão desligadas - a credencial que cada uma precisa não pode ser restaurada de um backup`,spoolsUsageCount:`incluindo {{count}} registros de consumo`,archivesMetadataOnly:`Somente metadados - arquivos 3MF e miniaturas não ficam em um backup Git`,kprofilesPrinterCount:`em {{count}} impressoras`},notes:{noData:`Não há dados desse tipo neste backup`,archivesPrinterMissing:`Alguns arquivos referenciavam impressoras que não existem mais - vínculo removido`,archivesProjectMissing:`Alguns arquivos referenciavam projetos que não existem mais - vínculo removido`,archivesOwnerCleared:`Alguns arquivos referenciavam usuários que não existem mais - o proprietário foi limpo, então eles só ficam visíveis para usuários com a permissão archives:read_all até que um administrador os reatribua`,archivesOwnerUnmatched:`Alguns arquivos apontam para um proprietário que esta instância não tem - o proprietário foi limpo em vez de deduzido do id de usuário da cópia, então eles só ficam visíveis para usuários com a permissão archives:read_all até que um administrador os reatribua`,archivesOwnerUnknown:`Alguns arquivos foram restaurados sem proprietário - este backup não registra nenhum, então eles só ficam visíveis para usuários com a permissão archives:read_all até que um administrador os atribua`,archivesUndeleted:`Arquivos excluídos desde o backup voltaram a ficar visíveis - a sobrescrita estava ligada`,archivesMetadataOnly:`Os arquivos restaurados contêm apenas metadados - os arquivos 3MF e as miniaturas não ficam em um backup Git`,spoolUsageUnresolved:`{{count}} registros de consumo ignorados - o carretel deles não está na lista de carretéis deste backup, então não há a que vinculá-los.`,spoolUsageUnlinked:`{{count}} registros de consumo restaurados sem o vínculo com o histórico de impressão - selecione Arquivos de impressão junto com Inventário de carretéis para mantê-lo.`,spoolTagKept:`{{count}} etiquetas de carretel foram mantidas como estavam - o backup teria apagado uma etiqueta lida desde então, ou a teria movido para um segundo carretel.`,settingsCredentialsSkipped:`{{count}} chaves parecidas com credenciais ignoradas - digite os segredos novamente à mão`,settingsAuthSkipped:`{{count}} configurações de autenticação ignoradas - altere-as em Configurações > Autenticação para que as verificações de bloqueio continuem valendo`,settingsCompanionSkipped:`{{keys}} ficaram desligados - a credencial que cada um precisa não pode ser restaurada de um backup e esta instância não tem nenhuma armazenada, então ligá-los deixaria a integração sem autenticação`,settingsMqttRelayFailed:`Configurações MQTT restauradas, mas o relay não pôde ser reconectado - reinicie o Bambuddy`,kprofilesAlwaysOverwrite:`Os perfis K sempre sobrescrevem o slot correspondente na impressora`,kprofilesAckUnreliable:`Uma impressora que não responde ainda conta como restaurada - verifique os perfis na impressora`,kprofilesPrinterMissing:`Nenhuma impressora com o número de série {{serial}} - ignorado`,kprofilesPrinterOffline:`{{printer}} ({{serial}}) não está conectada - ignorado`,kprofilesUnknownNozzle:`Diâmetro de bico inesperado {{nozzle}} para {{serial}} - enviado como está`,kprofilesUnmatched:`{{count}} perfis para {{nozzle}} não tinham correspondente em {{printer}} - adicionados como novos perfis`,kprofilesSendFailed:`Não foi possível enviar os perfis de {{nozzle}} para {{printer}} ({{serial}})`,kprofilesRefused:`{{printer}} ({{serial}}) recusou os perfis de {{nozzle}}: {{reason}}`,kprofilesStepFailed:`Não foi possível concluir a etapa dos perfis K - {{reason}}. O que foi restaurado antes continua salvo.`}},history:`Histórico`,clear:`Limpar`,date:`Data`,status:`Status`,trigger:`Tipo`,triggers:{manual:`Backup manual`,scheduled:`Backup agendado`,restore:`Restauração`},commit:`Commit`,localBackup:`Backup local`,localBackupDescription:`Crie um backup completo dos seus dados do Bambuddy incluindo banco de dados, arquivos, uploads e todos os ficheiros.`,downloadBackupLabel:`Baixar backup`,completeBackupZip:`Backup completo: banco de dados + todos os arquivos (ZIP)`,download:`Baixar`,preparingBackup:`Preparando backup...`,creatingArchive:`Criando arquivo de backup... Isso pode demorar para backups grandes.`,downloadingFile:`Baixando arquivo de backup...`,backupDownloaded:`Backup baixado com sucesso`,failedToCreateBackup:`Falha ao criar backup: {{message}}`,restore:`Restaurar`,restoreReplacesAll:`A restauração substitui todos os dados.`,restoreReplacesAllDetail:`Seu banco de dados e arquivos atuais serão completamente substituídos. É necessário reiniciar após a restauração.`,restoreConfirmTitle:`Restaurar backup`,restoreConfirmMessage:`Tem certeza de que deseja restaurar de "{{filename}}"? Isso substituirá completamente seu banco de dados e todos os arquivos. O aplicativo precisará ser reiniciado após a restauração.`,restoreConfirmButton:`Restaurar backup`,uploadingFile:`Enviando arquivo de backup...`,backupRestoredRestart:`Backup restaurado. Por favor, reinicie o Bambuddy.`,failedToRestore:`Falha ao restaurar backup. Verifique o formato do arquivo.`,reloadNow:`Recarregar agora`,creatingBackup:`Criando backup`,restoringBackup:`Restaurando backup`,preparing:`Preparando...`,processing:`Processando...`,doNotClosePage:`Por favor, não feche esta página nem navegue para outro lugar. Esta operação pode levar vários minutos para backups grandes.`,restoring:`Restaurando...`,restoreComplete:`Restauração concluída`,restoreFailed2:`Falha na restauração`,importSettings:`Importar configurações de um arquivo de backup`,pleaseWaitRestoring:`Aguarde enquanto seus dados estão sendo restaurados`,selectBackupFile:`Clique para selecionar um arquivo de backup (.json ou .zip)`,duplicateHandling:`Como funciona o tratamento de duplicatas:`,matchPrinters:`Impressoras`,matchPrintersBy:`correspondência por número de série`,matchSmartPlugs:`Tomadas inteligentes`,matchSmartPlugsBy:`correspondência por endereço IP`,matchNotificationProviders:`Provedores de notificação`,matchNotificationProvidersBy:`correspondência por nome`,matchFilaments:`Filamentos`,matchFilamentsBy:`correspondência por nome + tipo + marca`,matchArchives:`Arquivos`,matchArchivesBy:`correspondência por hash de conteúdo (sempre ignorado)`,matchPendingUploads:`Uploads pendentes`,matchPendingUploadsBy:`correspondência por nome do arquivo`,matchSettingsTemplates:`Configurações e modelos`,matchSettingsTemplatesBy:`sempre sobrescritos`,replaceExisting:`Substituir dados existentes`,keepExisting:`Manter dados existentes`,overwriteDescription:`Sobrescrever itens que já existem com dados do backup`,keepDescription:`Restaurar apenas itens que ainda não existem`,overwriteCaution:`Cuidado:`,overwriteWarning:`A sobrescrita substituirá suas configurações atuais pelos dados do backup. Códigos de acesso das impressoras nunca são sobrescritos por segurança.`,cancel:`Cancelar`,processingBackup:`Processando arquivo de backup...`,itemsRestored:`Itens restaurados`,itemsSkipped:`Itens ignorados`,restored:`Restaurados`,skippedAlreadyExist:`Ignorados (já existem)`,filesCategory:`Arquivos (3MF, miniaturas, etc.)`,andMore:`...e mais {{count}}`,newApiKeysGenerated:`Novas chaves API geradas`,keysShownOnce:`Estas chaves são exibidas apenas uma vez. Copie-as agora!`,copy:`Copiar`,noDataFound:`Nenhum dado para restaurar foi encontrado no arquivo de backup.`,close:`Fechar`,scheduledBackup:`Backups agendados`,scheduledBackupDescription:`Cria automaticamente snapshots de backup conforme agendamento. O diretório de saída pode ser montado em um NAS ou armazenamento externo.`,frequency:`Frequência`,backupTime:`Tempo`,retention:`Retenção`,retentionDescription:`Número de backups a manter`,outputPath:`Caminho de saída`,outputPathPlaceholder:`Padrão: {{path}}`,outputPathDescription:`Deixe em branco para o local padrão`,runNow:`Executar agora`,backupFiles:`Arquivos de backup`,noScheduledBackups:`Sem backups ainda`,deleteBackup:`Excluir`,deleteBackupConfirm:`Excluir este arquivo de backup?`,backupRunning:`Backup em andamento...`,scheduledBackupComplete:`Backup concluído com sucesso`,scheduledBackupFailed:`Falha no backup`,nextBackup:`Próximo backup`,backupSize:`Tamanho`,localTimeHint:`Horário local ({{tz}})`,defaultPathLabel:`Padrão:`,pathCheck:{title:`O Bambuddy não consegue gravar neste diretório`,howToFix:`Como corrigir:`,sandboxed:`O serviço do Bambuddy não consegue gravar em {{path}}. Sua unit do systemd roda com ProtectSystem=strict, o que torna todo diretório fora dos diretórios de instalação, dados e logs somente leitura para o serviço - mesmo um em que você consegue gravar pelo seu próprio shell.`,read_only:`{{path}} está em um sistema de arquivos somente leitura.`,permission_denied:`O Bambuddy não tem permissão para gravar em {{path}}. Verifique o dono e as permissões do diretório.`,no_space:`O sistema de arquivos que contém {{path}} está cheio.`,not_a_directory:`{{path}} existe, mas não é um diretório.`,missing:`{{path}} não existe e não pôde ser criado.`,error:`O Bambuddy não consegue gravar em {{path}}.`,ephemeralTitle:`Estes backups não sobrevivem à recriação do contêiner`,container_ephemeral:`{{path}} está dentro do contêiner do Bambuddy, não no host. Backups gravados ali são perdidos quando o contêiner é recriado. Monte o diretório do host:`},categories:{settings:`Configurações`,notification_providers:`Provedores de notificação`,notification_templates:`Modelos de notificação`,smart_plugs:`Tomadas inteligentes`,printers:`Impressoras`,filaments:`Filamentos`,maintenance_types:`Tipos de manutenção`,archives:`Arquivos`,projects:`Projetos`,pending_uploads:`Uploads pendentes`,external_links:`Links externos`,api_keys:`Chaves API`}},tags:{title:`Etiquetas`,addTag:`Adicionar Tag`,editTag:`Editar Tag`,deleteTag:`Excluir Tag`,tagName:`Nome da Tag`,tagColor:`Cor da Tag`,noTags:`Nenhuma tag`,deleteConfirm:`Tem certeza de que deseja excluir esta tag?`,manageTags:`Gerenciar Tags`},uploadModal:{title:`Upload Arquivos 3MF`,dragDrop:`Arraste e solte arquivos .3mf aqui`,or:`ou`,browseFiles:`Procurar Arquivos`,extractionInfo:`O modelo da impressora será extraído automaticamente dos metadados do arquivo 3MF.`,uploaded:`enviado`,failed:`falhou`,uploading:`Enviando...`,upload:`Enviar`,uploadFailed:`Falha no envio`},confirmOutcome:{title:`Como ficou sua impressão?`,good:`Boa`,reject:`Rejeitar`,later:`Perguntar depois`,noPhoto:`Nenhuma foto do resultado disponível`,savedGood:`Marcada como peça boa`,savedReject:`Marcada como rejeitada`,saveFailed:`Não foi possível salvar o veredito`,rejectReason:`Motivo da rejeição (opcional)`,noReason:`Sem motivo`,saveReject:`Salvar`,rejectAndReprint:`Imprimir novamente`,alreadyGood:`Já confirmada como peça boa.`,alreadyRejected:`Já marcada como rejeitada.`,cardPrompt:`Como ficou a impressão?`,sources:{dialog:`Registrado no aplicativo.`,link:`Registrado com um link de um toque.`,plateClear:`Registrado ao liberar a placa.`,printerCard:`Registrado no cartão da impressora.`,api:`Registrado pela API.`,reaction:`Registrado com uma reação no chat.`}},editArchive:{title:`Editar Arquivo`,name:`Nome`,namePlaceholder:`Nome da impressão`,printer:`Impressora`,noPrinter:`Nenhuma impressora`,project:`Projeto`,noProject:`Nenhum projeto`,itemsPrinted:`Itens Impressos`,itemsPrintedHelp:`Número de itens produzidos neste trabalho de impressão. Use 0 se a placa inteira foi perdida.`,filamentUsed:`Filamento usado (g)`,filamentUsedPlaceholder:`ex.: 46.16`,filamentUsedHelp:`Informe manualmente quando uma impressão for arquivada sem o 3MF, para que ela ainda conte nos totais de filamento. Reescanear um arquivo que tem o 3MF lê o valor novamente do arquivo.`,notes:`Notas`,notesPlaceholder:`Adicione notas sobre esta impressão...`,externalLink:`Link Externo`,externalLinkPlaceholder:`https://printables.com/model/...`,externalLinkHelp:`Link para Printables, Thingiverse ou outra fonte`,tags:`Etiquetas`,tagsPlaceholder:`Adicionar tags...`,addMoreTags:`Adicionar mais tags...`,matchingTags:`Correspondendo "{{query}}"`,existingTags:`Tags existentes`,clickToAdd:`(clique para adicionar)`,status:`Status`,userVerdict:`Veredito de Resultado`,verdicts:{none:`Não definido`,good:`Peça boa`,reject:`Rejeitada`},failureReason:`Motivo da Falha`,selectReason:`Selecione o motivo...`,photos:`Fotos do Resultado da Impressão`,photosHelp:`Clique em + para adicionar fotos do seu resultado impresso`,printResult:`Resultado da Impressão`,saving:`Salvando...`,failureReasons:{adhesionFailure:`Falha de adesão`,spaghettiDetached:`Spaghetti / Destacado`,layerShift:`Deslocamento de camada`,cloggedNozzle:`Bico entupido`,filamentRunout:`Fim do filamento`,warping:`Empenamento`,stringing:`Fios`,underExtrusion:`Subextrusão`,powerFailure:`Falha de energia`,userCancelled:`Cancelado pelo usuário`,noStatusUpdate:`Nenhuma atualização de status recebida`,other:`Outro`},statuses:{completed:`Concluído`,failed:`Falhou`,aborted:`Cancelado`,printing:`Imprimindo`}},kProfiles:{title:`Perfis K`,noPrintersConfigured:`Nenhuma impressora configurada`,addPrinterInSettings:`Adicione uma impressora nas Configurações para gerenciar K-profiles`,noActivePrinters:`Nenhuma impressora ativa`,enablePrinterConnection:`Ative a conexão da impressora para visualizar seus K-profiles`,loadingProfiles:`Carregando K-Profiles...`,printerOffline:`Impressora Offline`,printerOfflineDesc:`A impressora selecionada não está conectada. Ligue-a para visualizar os K-profiles.`,noMatchingProfiles:`Nenhum Perfil Correspondente`,noMatchingProfilesDesc:`Nenhum perfil corresponde aos seus critérios de pesquisa`,noKProfiles:`Nenhum K-Profile`,noKProfilesDesc:`Nenhum perfil de avanço de pressão encontrado para bico de {{diameter}}mm`,createFirstProfile:`Criar Primeiro Perfil`,printer:`Impressora`,nozzle:`Bico`,refresh:`Atualizar`,addProfile:`Adicionar Perfil`,export:`Exportar`,import:`Importar`,select:`Selecionar`,selectAll:`Selecionar Todos`,delete:`Excluir`,searchPlaceholder:`Pesquisar por nome ou filamento...`,allExtruders:`Todos os Extrusores`,leftOnly:`Apenas Esquerdo`,rightOnly:`Apenas Direito`,allFlow:`Todo Fluxo`,hfOnly:`Apenas HF`,sOnly:`Apenas S`,sortName:`Ordenar: Nome`,sortKValue:`Ordenar: Valor K`,sortFilament:`Ordenar: Filamento`,leftExtruder:`Extrusor Esquerdo`,rightExtruder:`Extrusor Direito`,modal:{addTitle:`Adicionar K-Profile`,editTitle:`Editar K-Profile`,profileName:`Nome do Perfil`,profileNamePlaceholder:`Meu Perfil PLA`,kValue:`Valor K`,kValuePlaceholder:`0.020`,kValueHelp:`Faixa típica: 0.01 - 0.06 para PLA, 0.02 - 0.10 para PETG`,filament:`Filamento`,selectFilament:`Selecionar filamento...`,source:{local:`Importado`,orcaCloud:`Orca Cloud`,bambuCloud:`Bambu Cloud`,builtin:`Integrado`},noFilamentsHelp:`Nenhum filamento disponível. Entre na Bambu Cloud ou importe predefinições em Perfis → Perfis Locais.`,searchFilaments:`Buscar filamentos...`,noFilamentMatches:`Nenhum filamento corresponde a essa busca`,flowType:`Tipo de Fluxo`,highFlow:`Alto Fluxo`,standard:`Padrão`,nozzleSize:`Tamanho do Bico`,extruder:`Extrusor`,extruders:`Extrusores`,left:`Esquerdo`,right:`Direito`,notes:`Notas (armazenadas localmente)`,notesPlaceholder:`Adicione notas sobre este perfil...`,notesHelp:`As notas são salvas no Bambuddy, não na impressora`,syncing:`Sincronizando com a impressora...`,savingExtruder:`Salvando no extrusor {{current}}/{{total}}...`,pleaseWait:`Por favor, aguarde`},deleteConfirm:{title:`Excluir Perfil`,cannotUndo:`Isso não pode ser desfeito`,message:`Tem certeza de que deseja excluir "{{name}}" da impressora?`},bulkDelete:{title:`Excluir Perfis`,cannotUndo:`Isso não pode ser desfeito`,message:`Tem certeza de que deseja excluir {{count}} perfis selecionados da impressora?`},toast:{profileSaved:`K-profile salvo`,profilesSaved:`K-profile salvo em {{count}} extrusores`,selectAtLeastOneExtruder:`Por favor, selecione pelo menos um extrusor`,selectFilament:`Selecione um filamento primeiro`,filamentNotResolvable:`Sem ID de filamento Bambu para {{name}} — a impressora não consegue armazenar um perfil`,profileDeleted:`K-profile excluído`,profilesDeleted:`{{count}} perfis excluídos`,exportedProfiles:`{{count}} perfis exportados`,importedProfiles:`{{count}} de {{total}} perfis importados`,noProfilesToExport:`Nenhum perfil para exportar`,invalidFileFormat:`Formato de arquivo inválido`,failedToParseImport:`Falha ao analisar o arquivo de importação`,failedToSaveBatch:`Falha ao salvar K-profiles`,noteSaved:`Nota salva`,failedToSaveNote:`Falha ao salvar nota`},permission:{noRead:`Você não tem permissão para atualizar perfis`,noCreate:`Você não tem permissão para adicionar perfis`,noUpdate:`Você não tem permissão para atualizar K-profiles`,noDelete:`Você não tem permissão para excluir K-profiles`,noExport:`Você não tem permissão para exportar perfis`,noImport:`Você não tem permissão para importar perfis`}},virtualPrinter:{title:`Impressora Virtual`,running:`Em execução`,stopped:`Parada`,description:{default:`Ative uma impressora virtual que aparece no Bambu Studio e no OrcaSlicer. Os arquivos enviados para esta impressora serão arquivados diretamente sem impressão.`,proxy:`Ative um proxy que retransmite o tráfego do slicer para uma impressora real, permitindo impressão remota em qualquer rede.`},enable:{title:`Ativar Impressora Virtual`,visibleInSlicer:`Visível como "Bambuddy" na descoberta do slicer`,proxyingTo:`Proxy para {{name}}`,notActive:`Não ativo`},model:{title:`Modelo da Impressora`,description:`Selecione qual modelo de impressora emular.`,restartWarning:`Alterar o modelo reiniciará a impressora virtual`},accessCode:{title:`Código de acesso`,isSet:`O código de acesso está definido`,notSet:`Nenhum código de acesso definido — necessário para ativar.`,placeholder:`Digite um código de 8 caracteres`,placeholderChange:`Digite um novo código para alterar`,hint:`Deve ter exatamente 8 caracteres. Usado pelos slicers para autenticação.`,charCount:`({{count}}/8)`,inheritedFromTarget:`Herdado da impressora alvo`,derivedFromTargetHint:`Usa o código de acesso da impressora alvo. A ponte encaminha a autenticação do slicer para a impressora real, então os códigos precisam corresponder — edite o código nas configurações da impressora para alterá-lo.`,reveal:`Mostrar código de acesso`,hide:`Ocultar código de acesso`},targetPrinter:{title:`Impressora Alvo`,configured:`Proxy alvo configurado`,notConfigured:`Nenhuma impressora alvo selecionada - necessário para o modo proxy`,placeholder:`Selecione uma impressora...`,hint:`Selecione a impressora para a qual o tráfego do slicer será enviado. A impressora deve estar no modo LAN.`,noPrinters:`Nenhuma impressora configurada. Adicione uma impressora primeiro para usar o modo proxy.`},remoteInterface:{title:`Substituição da Interface de Rede`,configured:`Substituição da interface ativa`,optional:`Opcional - use se o IP detectado automaticamente estiver errado (por exemplo, várias NICs, Docker, VPN)`,placeholder:`Detecção automática (padrão)...`,hint:`Substitua o endereço IP anunciado via SSDP e usado no certificado TLS. Útil quando o Bambuddy possui várias interfaces de rede.`},mode:{title:`Modo`,archive:`Arquivar`,archiveDesc:`Arquivar arquivos imediatamente`,review:`Revisar`,reviewDesc:`Revisar antes de arquivar`,queue:`Fila`,queueDesc:`Arquivar e adicionar à fila`,proxy:`Proxy`,proxyDesc:`Retransmitir para impressora real`},autoDispatch:{title:`Envio automático`,description:`Iniciar impressões automaticamente quando adicionadas à fila. Quando desativado, as impressões aguardam envio manual.`},queueForceColorMatch:{title:`Forçar correspondência de cor`,description:`Recusa enviar para uma impressora que não tenha exatamente o tipo e cor de filamento carregados. Desativado por padrão — sem isto, a fila usa apenas correspondência por modelo e pode escolher uma impressora com a cor errada carregada.`},saveAmsMapping:{title:`Salvar mapeamento de AMS`,description:`Persiste a escolha de slot AMS feita pelo próprio fatiador (do comando MQTT project_file) no arquivo, para que uma reimpressão posterior reutilize o mesmo carretel físico em vez de derivá-lo novamente do tipo/cor do arquivo. Desativado por padrão.`},gcodeInjection:{title:`Injeção de G-code`,description:`Aplica os trechos de G-code configurados por modelo nas Configurações aos trabalhos deste VP. Desativado por padrão.`},tailscaleDisabled:{title:`Integração Tailscale`,description:`Ative para marcar este VP como exposto via Tailscale. Mostra o endereço Tailscale do host para você saber qual IP colar no fatiador. A etapa de importação CA é inalterada — este toggle não afeta certificados.`},setupRequired:{title:`Configuração Necessária`,description:`O recurso de impressora virtual requer configuração adicional do sistema antes de funcionar. Isso inclui encaminhamento de portas, regras de firewall e configurações específicas da plataforma.`,readGuide:`Leia o guia de configuração antes de ativar`},howItWorks:{title:`Como funciona`,step1:`Complete o guia de configuração para sua plataforma`,step2:`Ative a impressora virtual e defina um código de acesso`,step3:`No Bambu Studio ou OrcaSlicer, vá para "Adicionar Impressora"`},status:{title:`Detalhes do Status`,printerName:`Nome da Impressora`,model:`Modelo`,serialNumber:`Número de Série`,mode:`Modo`,pendingFiles:`Arquivos Pendentes`,targetPrinter:`Impressora Alvo`,ftpPort:`Porta FTP`,mqttPort:`Porta MQTT`,ftpConnections:`Conexões FTP`,mqttConnections:`Conexões MQTT`},toast:{updated:`Configurações da impressora virtual atualizadas`,failedToUpdate:`Falha ao atualizar as configurações`,copyFailed:`Falha ao copiar — selecione o texto manualmente`,accessCodeRequired:`Defina um código de acesso primeiro`,targetPrinterRequired:`Selecione uma impressora alvo primeiro`,bindIpRequired:`Defina um IP de ligação primeiro`,accessCodeEmpty:`O código de acesso não pode estar vazio`,accessCodeLength:`O código de acesso deve ter exatamente 8 caracteres`,targetCodeChangedRebind:`O código de acesso agora corresponde à nova impressora alvo. Adicione este dispositivo novamente no seu slicer para usar o novo código.`,created:`Impressora virtual criada`,failedToCreate:`Falha ao criar impressora virtual`,deleted:`Impressora virtual excluída`,failedToDelete:`Falha ao excluir impressora virtual`},list:{title:`Impressoras Virtuais`,add:`Adicionar`,addFirst:`Adicionar Impressora Virtual`,empty:`Nenhuma impressora virtual configurada. Adicione uma para começar.`},bindIp:{title:`Interface de Rede`,placeholder:`Selecionar interface...`,hint:`Interface de rede para esta impressora virtual. Deve ser única por impressora.`},proxy:{accessCodeHint:`No modo proxy, use o código de acesso da impressora alvo no slicer. A conexão é encaminhada de forma transparente para a impressora real.`},addDialog:{title:`Adicionar Impressora Virtual`,name:`Nome`,hint:`Você pode configurar o código de acesso, impressora alvo e outras configurações após a criação.`,create:`Criar`},deleteConfirm:{title:`Excluir Impressora Virtual`,message:`Tem certeza que deseja excluir "{{name}}"? Isso irá parar todos os serviços desta impressora.`},archiveNameSource:{title:`Origem do nome do arquivo`,description:`Escolha como os novos arquivos são nomeados quando chegam pela impressora virtual. "Metadados" usa o título embutido pelo slicer no 3MF (padrão). "Nome do arquivo" usa o nome que o Bambu Studio enviou via FTP. Nota: o Bambu Studio sobrescreve o nome digitado no diálogo "enviar para impressora" com o campo Título do 3MF quando presente, portanto ambos os modos costumam produzir a mesma string.`,metadata:`Metadados`,filename:`Nome do arquivo`},caCert:{title:`Certificado do slicer`,description:`As impressoras virtuais usam um certificado TLS assinado pela CA do Bambuddy. Importe este certificado CA para o armazenamento de confiança do seu slicer uma única vez para que ele aceite a conexão — sem precisar copiá-lo pela linha de comando.`,copy:`Copiar`,copied:`Copiado`,download:`Baixar`,fingerprint:`SHA-256`}},modelViewer:{stepConverting:`Convertendo o modelo STEP… {{seconds}} s`,stepSlowHint:`Arquivos STEP grandes podem levar um minuto ou mais.`,openInSlicer:`Abrir no Slicer`,openInSlicerWith:`Abrir em {{slicer}}`,moreSlicerOptions:`Mais opções de fatiador`,openInSlicerFailed:`Não foi possível abrir no fatiador`,tabs:{model:`Modelo 3D`},notAvailable:`Não disponível`,plates:`Placas`,allPlates:`Todas as Placas`,plateNumber:`Placa {{number}}`,plateCount:`{{count}} placa`,plateCount_other:`{{count}} placas`,objectCount:`{{count}} objeto`,objectCount_other:`{{count}} objetos`,filamentCount:`{{count}} filamento`,filamentCount_other:`{{count}} filamentos`,eta:`ETA {{minutes}} min`,noPreview:`Pré-visualização não disponível para este arquivo`,pagination:{pageOf:`Página {{current}} de {{total}}`,prev:`Anterior`,next:`Próximo`},errors:{failedToLoad:`Falha ao carregar o arquivo`,noMeshes:`Nenhuma malha encontrada no arquivo 3MF`,unsupportedFormat:`Formato de arquivo não suportado`}},maintenanceDescriptions:{lubricateCarbonRods:`Aplique lubrificante nos eixos de carbono para um movimento suave`,lubricateRails:`Aplique lubrificante nos trilhos lineares para um movimento suave`,cleanNozzle:`Limpe o hotend e o bico para evitar entupimentos`,checkBelts:`Verifique a tensão das correias para impressões precisas`,cleanBuildPlate:`Limpe a placa de construção para melhor adesão`,checkExtruder:`Verifique as engrenagens do extrusor quanto ao desgaste`,checkCooling:`Verifique se os ventiladores de resfriamento estão funcionando corretamente`,generalInspection:`Inspeção geral da impressora`,cleanCarbonRods:`Limpe os eixos de carbono para reduzir o atrito`,lubricateSteelRods:`Aplique lubrificante nas barras de aço para um movimento suave`,cleanSteelRods:`Limpe as barras de aço para reduzir o atrito`,cleanLinearRails:`Limpe os trilhos lineares para remover poeira e detritos`,checkPtfeTube:`Verifique o tubo PTFE quanto ao desgaste ou danos`,replaceHepaFilter:`Substitua o filtro HEPA para qualidade do ar`,replaceCarbonFilter:`Substitua o filtro de carbono ativado`,lubricateLeftNozzleRail:`Lubrifique o trilho do bico esquerdo (série H2)`},haSensors:{label:`Sensores`,unavailable:`Indisponível`,blocksPrints:`{{entity}} — segura as impressões enquanto houver alerta`,states:{open:`Aberto`,closed:`Fechado`,unlocked:`Destrancado`,locked:`Trancado`,detected:`Detectado`,clear:`Livre`,wet:`Molhado`,dry:`Seco`,problem:`Problema`,ok:`OK`,running:`Em funcionamento`,stopped:`Parado`,on:`Ligado`,off:`Desligado`},sectionTitle:`Sensores do Home Assistant (impressoras)`,add:`Adicionar sensor`,addTitle:`Adicionar sensor do Home Assistant`,editTitle:`Editar sensor do Home Assistant`,empty:`Nenhum sensor ainda. Vincule um contato de porta ou um termômetro do Home Assistant para exibi-lo no cartão da impressora.`,unknownPrinter:`Impressora desconhecida`,badgeBlocks:`Segura impressões`,badgeNotifies:`Notifica`,badgeHidden:`Oculto no cartão`,printer:`Impressora`,entity:`Entidade`,searchPlaceholder:`Buscar entidades...`,noEntities:`Nenhuma entidade correspondente`,name:`Nome exibido`,alertWhen:`Alertar quando`,alertNever:`Nunca — apenas exibir`,alertAbove:`Acima de`,alertBelow:`Abaixo de`,alertHint:`O estado de alerta destaca o sensor no cartão da impressora e habilita as opções abaixo.`,showOnCard:`Mostrar no cartão da impressora`,notifyOnAlert:`Enviar uma notificação quando o alerta começar`,blockPrint:`Segurar as impressões na fila enquanto houver alerta`,blockPrintHint:`Os trabalhos permanecem na fila e começam sozinhos quando o sensor normaliza. Ignorado enquanto o Home Assistant estiver inacessível.`,toast:{created:`Sensor adicionado`,updated:`Sensor salvo`,deleted:`Sensor removido`},error:{pickEntity:`Escolha uma entidade do Home Assistant`,nameRequired:`Informe um nome exibido`,printerRequired:`Escolha uma impressora`,alertRequired:`Defina primeiro uma condição de alerta`}},locationHaSensors:{sectionTitle:`Sensores do Home Assistant (locais de armazenamento)`,sectionDescription:`Vincule sensores de temperatura, umidade ou bateria do Home Assistant aos seus locais de armazenamento para exibir leituras em tempo real no cartão do filamento e na tabela. É permitido apenas um sensor por categoria em cada local.`,add:`Adicionar sensor`,addTitle:`Adicionar sensor do Home Assistant`,editTitle:`Editar sensor do Home Assistant`,empty:`Nenhum sensor ainda. Vincule um sensor de temperatura ou umidade do Home Assistant para exibi-lo no cartão do filamento.`,unknownLocation:`Local desconhecido`,location:`Local de armazenamento`,showOnCard:`Mostrar no cartão do filamento`,overwriteConfirm:{title:`Substituir o sensor existente?`,messageTemperature:`"{{location}}" já tem um sensor de temperatura vinculado: {{name}}. Continuar irá substituí-lo.`,messageHumidity:`"{{location}}" já tem um sensor de umidade vinculado: {{name}}. Continuar irá substituí-lo.`,messageBattery:`"{{location}}" já tem um sensor de bateria vinculado: {{name}}. Continuar irá substituí-lo.`},autoAdd:{confirmTitle:`Adicionar também os outros sensores?`,confirmMessage:`O Bambuddy também encontrou outros sensores para este local. Escolha quais adicionar também.`,added:`Também adicionado: {{names}}`,noneFound:`Nenhum sensor de temperatura, umidade ou bateria correspondente foi encontrado para este local.`,onlyThisOne:`Apenas este`},options:{buttonLabel:`Opções do sensor`,title:`Opções do Sensor de Local`,description:`Esses valores são usados quando um sensor de temperatura, umidade ou bateria é vinculado automaticamente junto com o primeiro sensor de um local.`,generalSettings:`Configurações gerais`,pollInterval:`Intervalo de atualização (segundos)`,pollIntervalHint:`Com que frequência o Bambuddy consulta o Home Assistant e atualiza os valores dos sensores na tela. Mínimo de 60 segundos.`,colorizeValues:`Colorir os valores dos sensores de acordo com seus limites de alerta`,aboveColor:`Cor acima do limite`,belowColor:`Cor abaixo do limite`,optimalColor:`Cor para o valor ideal`,colors:{red:`Vermelho`,orange:`Laranja`,yellow:`Amarelo`,green:`Verde`,blue:`Azul`,purple:`Roxo`,pink:`Rosa`},saved:`Opções salvas`,saveFailed:`Falha ao salvar as opções`,reset:`Redefinir`,resetConfirm:{title:`Redefinir todos os sensores de local existentes?`,message:`Isso sobrescreve os limites de alerta, notificações e visibilidade no cartão de todos os sensores de temperatura, umidade e bateria de locais existentes com os valores configurados acima, e restaura o nome de cada sensor para o nome amigável do Home Assistant — os sensores de impressora não são afetados. Isso não pode ser desfeito. Dependendo da quantidade de sensores, isso pode levar um momento.`},resetDone:`Aplicado a {{count}} sensores de local`,resetFailed:`Falha ao redefinir os sensores de local`},deleteAllConfirm:{title:`Excluir todos os sensores?`,message:`Isso remove todos os {{count}} sensores vinculados a "{{location}}". Esta ação não pode ser desfeita.`},currentlyBound:`Atualmente vinculado: {{entity}}`,error:{locationRequired:`Escolha um local de armazenamento`},toast:{created:`Sensor adicionado`,updated:`Sensor salvo`,deleted:`Sensor removido`}},smartPlugs:{offline:`Offline`,admin:`Administrador`,openPlugAdminPage:`Abrir o painel de administração da tomada inteligente`,deleteSmartPlug:`Excluir Tomada Inteligente`,turnOnSmartPlug:`Ligar Tomada Inteligente`,turnOffSmartPlug:`Desligar Tomada Inteligente`,turnOn:`Ligar`,turnOff:`Desligar`,addSmartPlug:{scanningNetwork:`Procurando na rede...`,chooseEntity:`Escolha uma entidade...`,connectionFailed:`Falha na conexão`,searchEntities:`Pesquisar entidades...`,searchPowerSensors:`Pesquisar sensores de energia...`,searchEnergySensors:`Pesquisar sensores de energia...`,placeholders:{plugName:`Tomada da Sala`,mqttStateOnValue:`ON, true, 1`,mqttSameAsPower:`Mesmo que o tópico de energia, ou diferente`}},linkedTo:`Vinculado a:`,monitorOnly:`Apenas monitoramento`,alerts:`Alertas`,scheduleOn:`Ligar {{time}}`,scheduleOff:`Desligar {{time}}`,on:`Ligado`,off:`Desligado`,power:`Potência`,kwhToday:`kWh Hoje`,settings:`Configurações`,automationSettings:`Configurações de automação`,showInSwitchbar:`Mostrar na barra de interruptores`,quickAccessSidebar:`Acesso rápido pela barra lateral`,enabled:`Ativado`,enableAutomation:`Ativar automação para este plugue`,autoOn:`Auto Ligar`,autoOnDescription:`Ligar quando a impressão iniciar`,autoOff:`Auto Desligar`,autoOffDescription:`Desligar quando a impressão terminar (única vez)`,autoOffPersistent:`Manter ativado`,autoOffPersistentDescription:`Permanecer ativado entre impressões em vez de única vez`,controlsPrinterPower:`Alimenta a impressora`,controlsPrinterPowerDescription:`Desative se esta tomada alimenta apenas um acessório (ventoinha do filtro, luzes). Caso contrário, desligá-la marca a impressora como offline.`,autoOffAfterDrying:`Desligar Após Secagem`,autoOffAfterDryingDescription:`Desligar quando a secagem do AMS terminar`,delayAfterDryingMinutes:`Atraso após secagem (minutos)`,turnOffDelayMode:`Modo de atraso para desligar`,time:`Tempo`,temp:`Temp.`,delayMinutes:`Atraso (minutos)`,tempThreshold:`Limite de temperatura (°C)`,tempThresholdDescription:`Desliga quando o bico esfria abaixo desta temperatura`,edit:`Editar`,deleteConfirm:`Tem certeza que deseja excluir "{{name}}"? Esta ação não pode ser desfeita.`,turnOnConfirm:`Tem certeza que deseja ligar "{{name}}"?`,turnOffConfirm:`Tem certeza que deseja desligar "{{name}}"? Isso cortará a energia do dispositivo conectado.`,failedToTurn:`Falha ao {{action}} "{{name}}"`,unknown:`Desconhecido`,addTitle:`Adicionar plugue inteligente`,editTitle:`Editar plugue inteligente`,stopScanning:`Parar varredura`,discoverTasmota:`Descobrir dispositivos Tasmota`,foundDevices:`{{count}} dispositivo(s) encontrado(s) - clique para selecionar:`,noDevicesFound:`Nenhum dispositivo Tasmota encontrado na sua rede`,haNotConfigured:`Home Assistant não está configurado. Configure em`,haSettingsPath:`Configurações → Rede → Home Assistant`,selectEntity:`Selecionar entidade *`,ipAddress:`Endereço IP *`,nameLabel:`Nome *`,username:`Usuário`,password:`Senha`,authHint:`Deixe vazio se seu dispositivo Tasmota não requer autenticação`,linkToPrinter:`Vincular à impressora`,noPrinter:`Sem impressora (apenas controle manual)`,linkingDescription:`A vinculação permite ligar/desligar automaticamente ao iniciar/terminar impressão`,powerAlerts:`Alertas de potência`,alertAbove:`Alertar se acima (W)`,alertBelow:`Alertar se abaixo (W)`,alertDescription:`Receba notificações quando o consumo de energia ultrapassar estes limites. Deixe vazio para desativar essa direção.`,dailySchedule:`Programação diária`,turnOnAt:`Ligar às`,turnOffAt:`Desligar às`,scheduleDescription:`Ligar/desligar automaticamente o plugue nestes horários diariamente. Deixe vazio para pular essa ação.`,showOnPrinterCard:`Mostrar no cartão da impressora`,displayOnPrinterCard:`Exibir botão no cartão da impressora`,connectedResult:`Conectado!`,deviceLabel:`Dispositivo: {{name}} - `,stateLabel:`Estado: {{state}}`,test:`Testar`,delete:`Excluir`,save:`Salvar`,add:`Adicionar`,cancel:`Cancelar`,failedToStartScan:`Falha ao iniciar varredura`,nameRequired:`Nome é obrigatório`,entityRequired:`Entidade é obrigatória para plugues Home Assistant`,mqttTopicRequired:`Pelo menos um tópico MQTT deve ser configurado para potência, energia ou monitoramento de estado`,loadingEntities:`Carregando entidades...`,loading:`Carregando...`,failedToLoadEntities:`Falha ao carregar entidades: {{error}}`,noEntitiesMatching:`Nenhuma entidade encontrada correspondente a "{{search}}"`,noEntitiesAvailable:`Nenhuma entidade disponível`,searchingEntities:`Buscando todas as entidades ({{count}} encontradas)`,showingEntities:`Mostrando switch, light, input_boolean ({{count}} disponíveis)`,energyMonitoringOptional:`Monitoramento de energia (Opcional)`,energyMonitoringHint:`Pesquise e selecione sensores que fornecem dados de potência/energia.`,powerSensorW:`Sensor de potência (W)`,energyTodayKwh:`Energia hoje (kWh)`,totalEnergyKwh:`Energia total (kWh)`,noMatchingSensors:`Nenhum sensor correspondente`,none:`Nenhum`,mqttNotConfigured:`Broker MQTT não configurado. Defina o endereço do broker em`,mqttSettingsPath:`Configurações → Rede → Publicação MQTT`,mqttNotConfiguredSuffix:`(você não precisa ativar a publicação, apenas preencha os detalhes do broker).`,mqttMonitorOnlyDescription:`Plugues MQTT recebem dados de potência/energia via assinatura MQTT. O controle liga/desliga não está disponível - use seu broker MQTT ou sistema de automação residencial.`,powerMonitoring:`Monitoramento de potência`,energyMonitoring:`Monitoramento de energia`,stateMonitoring:`Monitoramento de estado`,optional:`opcional`,topic:`Tópico`,jsonPath:`Caminho JSON`,multiplier:`Multiplicador`,onValue:`Valor ON`,mqttPowerHint:`O caminho JSON extrai o valor do payload JSON (ex: "power_l1"). Deixe vazio se o tópico publica valores numéricos brutos.
  2. Use multiplicador 0.001 para mW→W, 1000 para kW→W.`,mqttEnergyHint:`O caminho JSON extrai o valor do payload JSON. Deixe vazio para valores brutos.
  3. Use multiplicador 0.001 para Wh→kWh, 1000 para MWh→kWh.`,mqttStateHint:`O caminho JSON extrai o valor do payload JSON. Deixe vazio para valores brutos.
  4. Valor ON: a string exata que significa "ON". Deixe vazio para detecção automática (ON, true, 1).`,restControl:`Controle`,restOnUrl:`URL para ligar`,restOffUrl:`URL para desligar`,restOnBody:`Corpo da requisição ON`,restOffBody:`Corpo da requisição OFF`,restMethod:`Método HTTP`,restHeaders:`Custom Headers (JSON)`,restStatusUrl:`URL de status`,restStatusPath:`Caminho JSON de estado`,restStatusOnValue:`Valor ON`,restPowerUrl:`URL de potência`,restPowerPath:`Caminho JSON de energia`,restPowerMultiplier:`Multiplicador de potência`,restEnergyUrl:`URL de energia`,restEnergyPath:`Caminho JSON de energia (hoje)`,restEnergyTotalPath:`Caminho JSON de energia (contador total)`,restEnergyTotalMultiplier:`Multiplicador do contador total`,restEnergyTotalPathHint:`ex.: aenergy.total`,restEnergyTotalHint:`Muitas tomadas — todos os Shelly entre elas — informam apenas um contador acumulado que nunca é zerado. Ele vai aqui, não no campo acima: lido como o consumo de hoje, ele nunca voltaria a zero à meia-noite, e Ontem e Total ficariam vazios. O Bambuddy calcula Hoje e Ontem a partir dele, o que exige um ou dois dias de leituras. Um Shelly informa em watt-hora, então use um multiplicador de 0.001.`,restEnergyMultiplier:`Multiplicador de energia`,restUrlRequired:`Ao menos uma URL (ON ou OFF) é necessária para tomadas REST`,restHeadersHint:`ex. {"Authorization": "Bearer your-token"}`,restBodyHint:`ex. ON, {"state": "on"}`,restStatusHint:`URL para consultar o estado atual`,restPathHint:`ex. state ou data.power.status`,restPowerUrlHint:`URL separada para dados de potência (usa a URL de status se vazio)`,restEnergyUrlHint:`URL separada para dados de energia (usa a URL de status se vazio)`,restEnergyHint:`Cada valor pode usar sua própria URL ou recorrer à URL de status. Use multiplicadores para conversão de unidades (ex: 0.001 para converter Wh em kWh).`,testConnection:`Testar conexão`,connectionSuccess:`Conexão bem-sucedida`,noSwitchesInSwitchbar:`Nenhum interruptor na barra`,enableSwitchbarHint:`Ative "Mostrar na barra de interruptores" em Configurações > Smart Plugs`},notifications:{providerTypes:{callmebot:`CallMeBot/WhatsApp`,ntfy:`ntfy`,pushover:`Pushover`,telegram:`Telegram`,email:`E-mail`,discord:`Discord`,webhook:`Webhook`,homeassistant:`Home Assistant`,bark:`Bark`,gotify:`Gotify`},providerDescriptions:{email:`Notificações por e-mail SMTP`,telegram:`Notificações via bot do Telegram`,discord:`Enviar para canal do Discord via webhook`,ntfy:`Notificações push gratuitas e auto-hospedáveis`,pushover:`Notificações push simples e confiáveis`,callmebot:`Notificações gratuitas via WhatsApp pelo CallMeBot`,webhook:`POST HTTP genérico para qualquer URL`,homeassistant:`Notificações persistentes no painel do Home Assistant`,bark:`Notificações push do iOS via Bark (auto-hospedável)`,gotify:`Notificações push pelo seu próprio servidor Gotify`},lastSuccess:`Último: {{date}}`,error:`Erro`,printer:`Impressora:`,allPrinters:`Todas as impressoras`,sendTestNotification:`Enviar Notificação de Teste`,eventSettings:`Configurações de Eventos`,enabled:`Ativado`,sendFromProvider:`Enviar notificações deste provedor`,printEvents:`Eventos de Impressão`,printerStatus:`Status da Impressora`,amsAlarms:`Alarmes do AMS`,amsHtAlarms:`Alarmes do AMS-HT`,printQueue:`Fila de Impressão`,start:`Início`,plateCheck:`Verificação da Mesa`,complete:`Concluído`,failed:`Falhou`,stopped:`Parado`,progress:`Progresso`,offline:`Offline`,lowFilament:`Filamento Baixo`,maintenance:`Manutenção`,amsHumidity:`Umidade do AMS`,amsTemp:`Temp. do AMS`,amsDryingSuspended:`Secagem suspensa`,amsHtHumidity:`Umidade do AMS-HT`,amsHtTemp:`Temp. do AMS-HT`,bedCooled:`Mesa Resfriada`,firstLayer:`Primeira camada`,quiet:`Silencioso`,digest:`Resumo {{time}}`,noPhoto:`Sem foto`,printStarted:`Impressão Iniciada`,plateNotEmpty:`Mesa Não Vazia`,plateNotEmptyDescription:`Objetos detectados antes da impressão`,plateClearRequired:`Confirmar mesa livre`,plateClearRequiredDescription:`Impressão concluída, a fila aguarda confirmação`,printConfirmRequest:`Confirmação de Resultado`,printConfirmRequestDescription:`Pedir um veredito de boa/rejeitada com links de um toque quando uma impressão com a opção ativada for concluída`,plateClear:`Mesa livre`,printCompleted:`Impressão Concluída`,bedCooledLabel:`Mesa Resfriada`,bedCooledDescription:`Mesa resfriou abaixo do limite após a impressão`,firstLayerCompleteLabel:`Primeira camada concluída`,firstLayerCompleteDescription:`Notificar com foto quando a primeira camada terminar`,connectedApps:`Aplicativos conectados`,appMessages:`Mensagens de aplicativos conectados`,appMessagesDescription:`Entregar mensagens que outros aplicativos enviam pelo Bambuddy, p. ex. Bambuddy Orders`,appMessagesBadge:`Apps`,missingSpoolAssignmentLabel:`Atribuição de bobina ausente`,billingChargeFailedLabel:`Falha na cobrança`,billingChargeFailedDescription:`Notificar quando os custos de impressão não puderem ser registrados`,missingSpoolAssignmentDescription:`Notificar quando a impressão iniciar e bandejas necessárias não tiverem bobina atribuída`,printFailed:`Impressão Falhou`,printStopped:`Impressão Parada`,progressMilestones:`Marcos de Progresso`,progressMilestonesDescription:`Notificar em 25%, 50%, 75%`,printerOffline:`Impressora Offline`,printerError:`Erro da Impressora`,aiFailureDetection:`Detecção de Falhas por IA`,aiFailureDetectionDescription:`Notificar quando a IA do Obico detectar uma possível falha de impressão`,lowFilamentLabel:`Filamento Baixo`,maintenanceDue:`Manutenção Necessária`,maintenanceDueDescription:`Notificar quando manutenção for necessária`,amsHumidityHigh:`Umidade Alta do AMS`,amsHumidityHighDescription:`Umidade do AMS regular excede o limite`,amsTemperatureHigh:`Temperatura Alta do AMS`,amsTemperatureHighDescription:`Temperatura do AMS regular excede o limite`,amsDryingSuspendedTitle:`Secagem automática suspensa`,amsDryingSuspendedDescription:`A secagem automática desistiu de uma unidade AMS porque a umidade nunca ficou abaixo do limite`,amsHtHumidityHigh:`Umidade Alta do AMS-HT`,amsHtHumidityHighDescription:`Umidade do AMS-HT excede o limite`,amsHtTemperatureHigh:`Temperatura Alta do AMS-HT`,amsHtTemperatureHighDescription:`Temperatura do AMS-HT excede o limite`,inventoryAlerts:`Alertas de Estoque`,stockReorderAlert:`Alerta de Reposição`,stockReorderAlertDescription:`O SKU atingiu seu ponto de reposição`,stockBreakAlert:`Alerta de Ruptura de Estoque`,stockBreakAlertDescription:`O estoque se esgotará antes da chegada do reabastecimento`,jobAdded:`Trabalho Adicionado`,jobAddedDescription:`Trabalho adicionado à fila`,jobAssigned:`Trabalho Atribuído`,jobAssignedDescription:`Trabalho baseado em modelo atribuído à impressora`,jobStarted:`Trabalho Iniciado`,jobStartedDescription:`Trabalho da fila começou a imprimir`,jobWaiting:`Trabalho Aguardando`,jobWaitingDescription:`Trabalho aguardando filamento ou impressora`,jobSkipped:`Trabalho Pulado`,jobSkippedDescription:`Trabalho pulado (anterior falhou)`,jobFailed:`Trabalho Falhou`,jobFailedDescription:`Trabalho falhou ao iniciar`,queueComplete:`Fila Concluída`,queueCompleteDescription:`Todos os trabalhos da fila finalizados`,quietHours:`Horário de Silêncio`,noNotificationsDuring:`Sem notificações durante essas horas`,editProviderToChangeQuietHours:`Edite o provedor para alterar o horário de silêncio`,dailyDigest:`Resumo Diário`,batchNotifications:`Agrupar notificações em um único resumo diário`,sendAt:`Enviar às {{time}}`,editProviderToChangeDigestTime:`Edite o provedor para alterar o horário do resumo`,edit:`Editar`,deleteProvider:`Excluir Provedor de Notificação`,deleteConfirm:`Tem certeza que deseja excluir "{{name}}"? Isso não pode ser desfeito.`,delete:`Excluir`,addTitle:`Adicionar Provedor de Notificação`,editTitle:`Editar Provedor de Notificação`,nameLabel:`Nome *`,namePlaceholder:`Minhas Notificações`,providerTypeLabel:`Tipo de Provedor *`,configuration:`Configuração`,testConfiguration:`Testar Configuração`,printerFilter:`Filtro de Impressora`,onlyFromPrinter:`Enviar notificações apenas para eventos desta impressora`,attachPhotoLabel:`Anexar foto`,attachPhotoDescription:`Incluir uma captura da câmera nas notificações, quando uma tiver sido feita para o evento`,quietHoursDnd:`Horário de Silêncio (Não Perturbe)`,quietStart:`Início`,quietEnd:`Fim`,dailyDigestLabel:`Resumo Diário`,sendDigestAt:`Enviar resumo às`,digestCollected:`Os eventos serão coletados e enviados como um único resumo neste horário`,notificationEvents:`Eventos de Notificação`,progressPercent:`(25%, 50%, 75%)`,bedCooledAfterPrint:`(após conclusão da impressão)`,haSensorAlert:`Alerta de sensor de impressora`,haSensorAlertDescription:`(um sensor do Home Assistant vinculado precisa de atenção)`,locationHaSensorAlert:`Alerta de sensor de local`,locationHaSensorAlertDescription:`(um sensor do Home Assistant vinculado a um local de armazenamento precisa de atenção)`,eventPriority:{sectionTitle:`Prioridade ntfy`,helpNtfy:`Escolha uma prioridade para cada evento habilitado. O ntfy usa isso para escalar alertas (som, visibilidade, comportamento push). Níveis não definidos aqui usam o padrão do servidor ntfy.`,sectionTitleGotify:`Prioridade Gotify`,helpGotify:`Escolha uma prioridade para cada evento habilitado. O Bambuddy envia Mín, Baixa, Padrão, Alta e Urgente ao Gotify como 0, 2, 5, 8 e 10. No app Android do Gotify, Padrão e acima tocam um som, e Alta e Urgente aparecem como pop-up.`,min:`Mín`,low:`Baixa`,default:`Padrão`,high:`Alta`,urgent:`Urgente`},cancel:`Cancelar`,save:`Salvar`,add:`Adicionar`,nameRequired:`Nome é obrigatório`,fieldRequired:`{{field}} é obrigatório`,haDataInvalid:`O campo Data deve ser um objeto JSON válido, por ex. {"priority": "high", "ttl": 0}`,haServiceHelp:`Opcional — por padrão, uma notificação persistente na interface do Home Assistant. Defina um serviço notify (ex.: notify.mobile_app_myphone) para receber notificações push no celular, que também anexam automaticamente uma captura da câmera quando houver uma e a URL externa estiver definida em Configurações → Rede.`,phoneNumber:`Número de Telefone`,apiKey:`Chave da API`,serverUrl:`URL do Servidor`,topic:`Tópico`,authToken:`Token de Autenticação`,userKey:`Chave do Usuário`,appToken:`Token do Aplicativo`,priority:`Prioridade`,pushoverRetry:`Repetição de emergência (s)`,pushoverExpire:`Expiração de emergência (s)`,botToken:`Token do Bot`,chatId:`ID do Chat`,telegramThreadId:`ID do tópico do fórum`,telegramThreadIdHelp:`Opcional. Envia para um único tópico de um grupo de fórum: o último número no link do tópico (t.me/c/.../25). Deixe vazio para o tópico Geral.`,telegramThreadIdInvalid:`O ID do tópico do fórum deve ser um número.`,telegramVerdictMode:`Veredito do resultado via`,telegramVerdictModeButtons:`Botões inline (link)`,telegramVerdictModeReactions:`Reação (👍 / 👎)`,telegramVerdictModeBoth:`Botões e reação`,telegramVerdictModeHelp:`Como a pergunta sobre o resultado é respondida. Reações não precisam de conexão de entrada nem de URL externa — o Bambuddy as consulta no bot. Para reações, use um bot usado só pelo Bambuddy: outro app que consulte o mesmo bot (o Home Assistant, por exemplo) deixa de receber suas mensagens, mesmo depois de voltar para os botões. Em um grupo, o bot precisa ser administrador para ver as reações.`,telegramVerdictBadgeReactions:`Reações`,telegramVerdictBadgeBoth:`Botões + reações`,smtpServer:`Servidor SMTP`,smtpPort:`Porta SMTP`,security:`Segurança`,authentication:`Autenticação`,username:`Usuário`,password:`Senha`,fromEmail:`E-mail de Origem`,toEmail:`E-mail de Destino`,webhookUrl:`URL do Webhook`,payloadFormat:`Formato do Payload`,authorization:`Autorização`,titleFieldName:`Nome do Campo de Título`,messageFieldName:`Nome do Campo de Mensagem`,editTemplate:`Editar Modelo: {{name}}`,titleLabel:`Título`,bodyLabel:`Corpo`,titlePlaceholder:`Título da notificação...`,bodyPlaceholder:`Corpo da notificação...`,availableVariables:`Variáveis Disponíveis`,clickToInsert:`Clique para inserir na posição do cursor no corpo`,livePreview:`Pré-visualização ao Vivo`,hide:`Ocultar`,show:`Mostrar`,loadingPreview:`Carregando pré-visualização...`,enterTemplateContent:`Insira o conteúdo do modelo para ver a pré-visualização`,titlePreview:`Título:`,bodyPreview:`Corpo:`,photoPreview:`Foto:`,photoPreviewNote:`Apenas um exemplo — provedores que aceitam anexos (ntfy, Pushover, Telegram, Discord, Home Assistant, Bark, Slack webhook) incluem automaticamente uma captura da câmera quando uma foi feita, independentemente do que diz o corpo acima.`,photoPreviewNoteWithEmail:`Apenas um exemplo — anexada automaticamente nos provedores compatíveis (ntfy, Pushover, Telegram, Discord, Home Assistant, Bark, Slack webhook) quando uma captura foi feita. Para e-mail, adicione {finish_photo_url} ao corpo acima para incluí-la no corpo da mensagem.`,photoPreviewNoteEmailOnly:`Apenas um exemplo — isto é sempre um e-mail. Adicione {finish_photo_url} ao corpo acima para incluir a foto na mensagem; sem isso, apenas o texto é enviado.`,resetToDefault:`Restaurar Padrão`,titleRequired:`Título é obrigatório`,bodyRequired:`Corpo é obrigatório`,notificationLog:`Registro de Notificações`,showFailedOnly:`Apenas falhas`,last24Hours:`Últimas 24 horas`,last7Days:`Últimos 7 dias`,last30Days:`Últimos 30 dias`,last90Days:`Últimos 90 dias`,justNow:`Agora mesmo`,noFailedNotifications:`Nenhuma notificação com falha`,noNotificationsLogged:`Nenhuma notificação registrada`,unknownProvider:`Provedor Desconhecido`,logTitle:`Título`,logMessage:`Mensagem`,logError:`Erro`,logProvider:`Provedor: {{type}}`,logTime:`Hora: {{time}}`,refresh:`Atualizar`,clearOld:`Limpar Antigos`,statsSummary:`Últimos {{days}} dias:`,statsNotifications:`notificações`,statsSent:`{{count}} enviadas`,statsFailed:`{{count}} com falha`,eventTypes:{print_start:`Impressão Iniciada`,print_complete:`Impressão Concluída`,print_failed:`Impressão Falhou`,print_stopped:`Impressão Parada`,print_progress:`Progresso`,printer_offline:`Impressora Offline`,printer_error:`Erro da Impressora`,filament_low:`Filamento Baixo`,maintenance_due:`Manutenção Necessária`,test:`Teste`},userEmail:{title:`Notificações`,emailNotifications:`Notificações por E-mail`,emailNotificationsDesc:`Receba notificações por e-mail para seus próprios trabalhos de impressão. Os e-mails são enviados usando as configurações SMTP definidas na Autenticação Avançada.`,sendingTo:`As notificações serão enviadas para`,noEmailWarning:`Sua conta não tem um endereço de e-mail. Entre em contato com um administrador para adicionar um.`,printJobNotifications:`Notificações de Trabalhos de Impressão`,printJobNotificationsDesc:`Escolha quais eventos acionam notificações por e-mail para os trabalhos de impressão que você envia.`,printJobStarts:`Início do Trabalho de Impressão`,printJobStartsDesc:`Ser notificado quando seu trabalho de impressão começar.`,printJobFinishes:`Conclusão do Trabalho de Impressão`,printJobFinishesDesc:`Ser notificado quando seu trabalho de impressão concluir com sucesso.`,printErrors:`Erros de Impressão`,printErrorsDesc:`Ser notificado quando seu trabalho de impressão falhar ou encontrar um erro.`,printJobStops:`Trabalho de Impressão Parado`,printJobStopsDesc:`Ser notificado quando seu trabalho de impressão for cancelado ou parado.`,saveSuccess:`Preferências de notificação salvas.`,saveError:`Falha ao salvar preferências de notificação.`}},richTextEditor:{bold:`Negrito`,italic:`Itálico`,underline:`Sublinhado`,bulletList:`Lista com marcadores`,numberedList:`Lista numerada`,alignLeft:`Alinhar à esquerda`,alignCenter:`Centralizar`,alignRight:`Alinhar à direita`,addLink:`Adicionar link`,removeLink:`Remover link`},externalLinks:{title:`Links da barra lateral`,sidebarLayout:`Barra lateral`,sidebarLayoutDescription:`Mostre ou oculte páginas integradas, adicione links externos e arraste itens para reordenar a navegação lateral.`,systemPages:`Páginas do Bambuddy`,externalLinks:`Links externos`,visibleInSidebar:`Visível na barra lateral`,hiddenFromSidebar:`Oculto na barra lateral`,requiredInSidebar:`Obrigatório na barra lateral`,hidePage:`Ocultar página`,showPage:`Mostrar página`,settingsCannotBeHidden:`Configurações não pode ser ocultado`,noLinksConfigured:`Nenhum link externo configurado`,deleteLink:`Excluir link`,removeCustomIcon:`Remover ícone personalizado`,openInNewTab:`Abrir em nova aba`,placeholders:{linkName:`Meu Link`}},keyboardShortcuts:{title:`Atalhos de Teclado`,navigation:`Navegação`,archivesSection:`Arquivos`,kProfilesSection:`Perfis K`,generalSection:`Geral`,shortcuts:{goToPrinters:`Ir para Impressoras`,goToArchives:`Ir para Arquivos`,goToQueue:`Ir para Fila`,goToStats:`Ir para Estatísticas`,goToProfiles:`Ir para Perfis na Nuvem`,goToSettings:`Ir para Configurações`,focusSearch:`Focar na pesquisa`,openUploadModal:`Abrir modal de upload`,clearSelection:`Limpar seleção / desfocar input`,contextMenu:`Menu de contexto nos cartões`,refreshProfiles:`Atualizar perfis`,newProfile:`Novo perfil`,exitSelectionMode:`Sair do modo de seleção`,showHelp:`Mostrar esta ajuda`},footer:`Pressione Esc ou clique fora para fechar`},notificationLog:{title:`Registro de Notificações`,events:{printStarted:`Impressão Iniciada`,printComplete:`Impressão Concluída`,printFailed:`Impressão Falhou`,printStopped:`Impressão Interrompida`,progress:`Progresso`,printerOffline:`Impressora Offline`,printerError:`Erro na Impressora`,lowFilament:`Filamento Baixo`,maintenanceDue:`Manutenção Pendente`,test:`Teste`},timeAgo:{justNow:`Agora mesmo`,minutesAgo:`há {{minutes}} minutos`,hoursAgo:`há {{hours}} horas`}},restoreBackup:{title:`Restaurar Backup`,restoring:`Restaurando...`,restoreComplete:`Restauração Concluída`,restoreFailed:`Falha na Restauração`,importSettings:`Importar configurações de um arquivo de backup`,pleaseWait:`Aguarde enquanto seus dados estão sendo restaurados`,clickToSelect:`Clique para selecionar o arquivo de backup (.json ou .zip)`,howDuplicateHandling:`Como funciona o tratamento de duplicatas:`,categories:{printers:`Impressoras`,smartPlugs:`Tomadas Inteligentes`,notificationProviders:`Provedores de Notificação`,filaments:`Filamentos`,archives:`Arquivos`,pendingUploads:`Uploads Pendentes`,settingsTemplates:`Configurações e Modelos`},matchingInfo:{printers:`correspondem pelo número de série`,smartPlugs:`correspondem pelo endereço IP`,notificationProviders:`correspondem pelo nome`,filaments:`correspondem pelo nome + tipo + marca`,archives:`correspondem pelo hash do conteúdo`,pendingUploads:`correspondem pelo nome do arquivo`,settingsTemplates:`sempre sobrescrito`},replaceExisting:`Substituir dados existentes`,keepExisting:`Manter dados existentes`,replaceDescription:`Substituir itens que já existem com os dados do backup`,keepDescription:`Restaurar apenas itens que não existem`,caution:`Atenção:`,cautionText:`Sobrescrever substituirá suas configurações atuais pelos dados do backup. Os códigos de acesso da impressora nunca são sobrescritos por segurança.`,itemsRestored:`Itens Restaurados`,itemsSkipped:`Itens Ignorados`,restored:`Restaurado`,skipped:`Ignorado (já existe)`,filesLabel:`Arquivos (3MF, miniaturas, etc.)`,newApiKeysGenerated:`Novas Chaves API Geradas`,newApiKeysWarning:`Essas chaves são exibidas apenas uma vez. Copie-as agora!`,processingBackup:`Processando arquivo de backup...`,noDataFound:`Nenhum dado foi encontrado para restaurar no arquivo de backup.`,failedToRestore:`Falha ao restaurar o backup. Verifique o formato do arquivo.`},backupExport:{title:`Exportar Backup`,selectData:`Selecione os dados a incluir`,selectAll:`Selecionar Todos`,selectNone:`Selecionar Nenhum`,categoryDescriptions:{settings:`Idioma, tema, preferências de atualização`,notifications:`ntfy, Pushover, Discord, etc.`,templates:`Modelos de mensagens personalizadas`,smartPlugs:`Configurações de tomadas Tasmota`,externalLinks:`Links da barra lateral para serviços externos`,printers:`Informações da impressora (códigos de acesso excluídos)`,plateDetection:`Imagens de referência de placa vazia`,filaments:`Tipos e custos de filamento`,maintenance:`Cronogramas de manutenção personalizados`,archives:`Todos os dados de impressão + arquivos (3MF, miniaturas, fotos)`,projects:`Projetos, itens de BOM e anexos`,pendingUploads:`Uploads de impressora virtual aguardando revisão`,apiKeys:`Chaves API de webhook (novas chaves geradas na importação)`},requiresPrinters:`Requer que as impressoras sejam selecionadas`,zipFileWarning:`Um arquivo ZIP será criado.`,zipFileDescription:`Inclui todos os arquivos 3MF, miniaturas, timelapses e fotos. Isso pode levar algum tempo e resultar em um arquivo grande.`,includeAccessCodes:`Incluir Códigos de Acesso`,includeAccessCodesDescription:`Para transferir para outra máquina`,includeAccessCodesWarning:`Os códigos de acesso serão incluídos em texto simples. Mantenha este arquivo de backup seguro!`,categoriesSelected:`{{selectedCount}} categorias selecionadas`},pendingUploads:{placeholders:{notes:`Adicione notas sobre esta impressão...`},discardUpload:`Descartar Upload`,archiveAllUploads:`Arquivar Todos os Uploads`,discardAllUploads:`Descartar Todos os Uploads`,archive:`Arquivar`,timeAgo:{justNow:`Agora mesmo`,minutesAgo:`há {{minutes}} minutos`,hoursAgo:`há {{hours}} horas`,daysAgo:`há {{days}} dias`}},apiBrowser:{placeholders:{requestBody:`Corpo da requisição JSON...`,searchEndpoints:`Pesquisar endpoints...`}},configureAmsSlot:{title:`Configurar Slot AMS`,slotConfigured:`Slot Configurado!`,configuringSlot:`Configurando slot:`,slotLabel:`{{ams}} – Slot {{slot}}`,searchPresets:`Pesquisar predefinições...`,colorPlaceholder:`Nome da cor ou hex (ex.: marrom, FF8800)`,clearCustomColor:`Limpar cor personalizada`,noCloudPresets:`Nenhuma predefinição na nuvem. Faça login no Bambu Cloud para sincronizar.`,noPresetsAvailable:`Nenhuma predefinição disponível. Faça login no Bambu Cloud ou importe perfis locais.`,noMatchingPresets:`Nenhuma predefinição correspondente encontrada.`,custom:`Personalizado`,builtin:`Integrado`,orcaCloud:`Orca Cloud`,bambuCloud:`Bambu Cloud`,settingsSentToPrinter:`Configurações enviadas para a impressora`,filamentProfile:`Perfil de Filamento`,kProfileLabel:`Perfil K (Avanço de Pressão)`,filteringFor:`Filtrando por: {{material}}`,noKProfile:`Nenhum perfil K (usar padrão 0.020)`,noMatchingKProfiles:`Nenhum perfil K correspondente encontrado. O K padrão=0.020 será usado.`,otherKProfiles:`Outros perfis K nesta impressora`,selectFilamentFirst:`Selecione um perfil de filamento primeiro`,kFromCalibration:`K={{value}} da calibração da impressora`,customColorLabel:`Cor Personalizada (opcional)`,presetColors:`Cores de {{name}}:`,showLessColors:`Mostrar menos cores`,showMoreColors:`Mostrar mais cores`,clear:`Limpar`,hexLabel:`Hex – #{{hex}}`,resetting:`Redefinindo...`,resetSlot:`Redefinir Slot`,cancel:`Cancelar`,configuring:`Configurando...`,configureSlot:`Configurar Slot`,orcaFallback:{no_filament_id:`Este perfil do Orca não tem um ID de filamento próprio, então o OrcaSlicer verá este slot como Generic {{material}}.`,lookup_failed:`Não foi possível ler o ID de filamento deste perfil no Orca Cloud, então o OrcaSlicer verá este slot como Generic {{material}}. Tente novamente em instantes.`,no_permission:`Você não tem acesso ao Orca Cloud, então o ID de filamento deste perfil não pôde ser lido. O OrcaSlicer verá este slot como Generic {{material}}.`}},githubBackup:{title:`Backup do Git`,history:`Histórico`,downloadBackup:`Baixar Backup`,restoreBackup:`Restaurar Backup`,noBackupsYet:`Nenhum backup ainda`},emailSettings:{placeholders:{fromName:`Bambuddy`}},tagManagement:{searchTags:`Pesquisar tags...`,renameTag:`Renomear tag`,deleteTag:`Excluir tag`},notificationTemplates:{placeholders:{title:`Título da notificação...`,body:`Corpo da notificação...`}},batchTag:{placeholders:{newTag:`Digite uma nova tag...`}},photoGallery:{deletePhoto:`Excluir foto`},filamentHoverCard:{copySpoolUuid:`Copiar UUID do carretel`},kProfilesView:{hasNote:`Possui nota`,copyProfile:`Copiar perfil`},layout:{openMenu:`Abrir menu`,noPermissionSystemInfo:`Você não tem permissão para visualizar informações do sistema`},dashboard:{dragToReorder:`Arrastar para reordenar`,hideWidget:`Ocultar widget`},notificationProviderCard:{deleteNotificationProvider:`Excluir provedor de notificação`},fileManagerModal:{closeFileManager:`Fechar gerenciador de arquivos`,sortFiles:`Ordenar arquivos`,goToParentFolder:`Ir para a pasta pai`,threeView:`Visualização 3D`},embeddedCameraViewer:{refreshStream:`Atualizar stream`,close:`Fechar`,zoomOut:`Reduzir zoom`,resetZoom:`Redefinir zoom`,zoomIn:`Aumentar zoom`,dragToResize:`Arrastar para redimensionar`},timelapseViewer:{skipBack5s:`Voltar 5s`,skipForward5s:`Avançar 5s`},notificationProviders:{descriptions:{email:`Notificações por email SMTP`,telegram:`Notificações via bot do Telegram`,discord:`Enviar para canal do Discord via webhook`,ntfy:`Notificações push gratuitas e auto-hospedáveis`,pushover:`Notificações push simples e confiáveis`,callmebot:`Notificações gratuitas via WhatsApp pelo CallMeBot`,webhook:`POST HTTP genérico para qualquer URL`}},logViewer:{searchPlaceholder:`Pesquisar mensagem ou nome do logger...`,noLogEntries:`Nenhuma entrada de log encontrada`},switchbarPopover:{noSwitchesInSwitchbar:`Nenhum switch na barra de switches`},projectPageModal:{placeholders:{title:`Título`,designer:`Designer`,license:`Licença`,description:`Digite a descrição...`,profileTitle:`Título do perfil`,profileDescription:`Descrição do perfil...`}},spoolmanSettings:{},time:{unknown:`-`,waiting:`Aguardando`,justNow:`Agora mesmo`,now:`Agora`,minsAgo:`{{count}}min atrás`,inMins:`em {{count}}min`,hoursAgo:`{{count}}h atrás`,inHours:`em {{count}}h`,daysAgo:`{{count}}d atrás`,inDays:`em {{count}}d`},spoolbuddy:{nav:{dashboard:`Painel`,ams:`AMS`,inventory:`Inventário`,writeTag:`Escrever`,settings:`Configurações`},status:{nfcReady:`NFC pronto`,nfcOff:`NFC desligado`,offline:`Offline`,online:`Online`,noPrinters:`Sem impressoras`,deviceOffline:`Dispositivo offline`,waitingConnection:`Aguardando conexão do dispositivo...`,systemReady:`Sistema pronto`,status:`Status`},dashboard:{readyToScan:`Pronto para escanear`,idleMessage:`Coloque um carretel na balança para identificá-lo`,nfcHint:`A tag NFC será lida automaticamente`,device:`Dispositivo`,syncWeight:`Sincronizar peso`,weightSynced:`Sincronizado!`,unknownTag:`Tag desconhecida`,newTag:`Nova tag detectada`,onScale:`na balança`,linkSpool:`Vincular ao carretel`,linkTagTitle:`Vincular tag ao carretel`,linkTag:`Vincular tag`,selectSpool:`Selecione um carretel para vincular a esta tag:`,noUntagged:`Nenhum carretel sem tag encontrado`,tagDetected:`Tag detectada`,noTag:`Sem tag`,tagId:`Etiqueta`,grossWeight:`Peso bruto`,spoolSize:`Tamanho do carretel`,close:`Fechar`,currentSpool:`Carretel Atual`,plateReady:`Mesa pronta: {{name}}`,plateReadyLabel:`Mesas para liberar`,plateClearAction:`Liberar`,plateClearedToast:`Mesa marcada como limpa`,plateClearFailed:`Não foi possível marcar a mesa como limpa`},modal:{spoolDetected:`Carretel Detectado`,assignToAms:`Atribuir ao AMS`,syncWeight:`Sincronizar Peso`,weightSynced:`Sincronizado!`,syncing:`Sincronizando...`,newTagDetected:`Nova Tag Detectada`,addToInventory:`Adicionar ao Inventário`,assignToAmsTitle:`Atribuir ao AMS`,selectSlot:`Selecionar um slot`,assign:`Atribuir`,assigning:`Atribuindo...`,assignSuccess:`Atribuído!`,assignPendingInsert:`Atribuído. O slot será configurado quando você inserir o carretel.`,assignError:`Falha ao atribuir carretel. Tente novamente.`,noPrinterSelected:`Selecionar uma impressora...`,noAmsDetected:`Nenhum AMS detectado nesta impressora`,slot:`Slot`},weight:{noReading:`Sem leitura`,stable:`Estável`,measuring:`Medindo...`,tare:`Tarar`,calibrate:`Calibrar`},spool:{remaining:`Restante`,material:`Material`,brand:`Marca`,color:`Cor`,coreWeight:`Núcleo`,labelWeight:`Rótulo`,scaleWeight:`Balança`,netWeight:`Líquido`,lastUsed:`Último uso`,unknownColor:`Cor desconhecida`},ams:{noData:`Nenhum AMS detectado`,connectAms:`Conecte um AMS para ver os slots`,noPrinter:`Nenhuma impressora selecionada`,selectPrinter:`Selecione uma impressora na barra superior`,printerDisconnected:`Impressora desconectada`,humidity:`Umidade`,level:`Nível`,active:`Ativo`,slot:`Slot`,empty:`Vazio`},inventory:{search:`Buscar carretéis...`,empty:`Nenhum carretel no inventário`,noResults:`Nenhum carretel correspondente`,spools:`carretéis`,addSpool:`Adicionar carretel`},settings:{tabDevice:`Dispositivo`,tabDisplay:`Tela`,tabScale:`Balança`,tabUpdates:`Atualizações`,nfcReader:`Leitor NFC`,type:`Tipo`,connection:`Conexão`,notConnected:`N/D`,deviceInfo:`Info do dispositivo`,hostname:`Host`,uptime:`Tempo de atividade`,brightness:`Brilho`,saved:`Salvo`,noBacklight:`Nenhuma retroiluminação DSI detectada. O controle de brilho requer uma tela DSI.`,screenBlank:`Tempo para desligar tela`,screenBlankDesc:`A tela desliga após inatividade. Toque para despertar.`,displayNote:`O brilho é aplicado como filtro de software.`,scaleCalibration:`Calibração da balança`,currentWeight:`Peso atual`,tareOffset:`Tara`,calFactor:`Fator`,knownWeight:`Peso conhecido`,calStep1:`Remova todos os itens da balança e pressione Definir zero.`,calStep2:`Coloque o peso conhecido na balança.`,setZero:`Definir zero`,calibrateNow:`Calibrar`,calibrated:`Calibrado`,tareSet:`Comando de tara enviado. Aguardando dispositivo...`,tareComplete:`Tara concluída!`,tareTimedOut:`Tempo esgotado para a tara — o daemon do SpoolBuddy está em execução?`,tareFailed:`Falha ao enviar comando de tara`,zeroSet:`Ponto zero definido. Coloque o peso conhecido na balança.`,calibrationDone:`Calibração concluída!`,calibrationFailed:`Falha na calibração`,lastCalibrated:`Última calibração`,stable:`Estável`,settling:`Estabilizando...`,firmware:`Firmware`,scale:`Balança`,noDevice:`Nenhum dispositivo SpoolBuddy encontrado`,daemonVersion:`Versão do daemon`,currentVersion:`Atual`,versionPending:`Aguardando daemon...`,checking:`Verificando...`,checkUpdates:`Verificar atualizações`,updateAvailable:`Atualização disponível`,updateInstructions:`Atualize via SSH: execute o script de instalação do SpoolBuddy.`,upToDate:`Atualizado`,includeBeta:`Incluir versões beta`,systemConfig:`Backend e autenticação`,backendUrl:`URL do backend Bambuddy`,apiToken:`Token de API`,apiTokenPlaceholder:`Insira o token de API`,saveConfig:`Salvar configuração`,systemQueued:`Configuração enfileirada.`,systemFieldsRequired:`URL do backend é obrigatória.`,nfcDiagnostic:`Diagnóstico NFC`,scaleDiagnostic:`Diagnóstico da balança`,readTagDiagnostic:`Diagnóstico de leitura de tag`,testNfc:`Testar leitor`,testScale:`Testar precisão`,testReadTag:`Ler tag`},writeTag:{tabExisting:`Bobina existente`,tabNew:`Nova bobina`,tabReplace:`Substituir tag`,searchPlaceholder:`Buscar por material, cor, marca...`,noUntaggedSpools:`Nenhuma bobina sem tag`,noTaggedSpools:`Nenhuma bobina com tag`,selectSpool:`Selecione uma bobina e coloque um NTAG no leitor`,placeTag:`Coloque um NTAG no leitor`,tagReady:`Tag detectado — pronto para gravar`,writeTag:`Gravar Tag`,replaceTag:`Substituir Tag`,writing:`Gravando tag...`,waiting:`Aguardando SpoolBuddy...`,writeSuccess:`Tag gravado com sucesso!`,writeFailed:`Falha na gravação`,queueFailed:`Falha ao enfileirar comando de gravação`,tryAgain:`Tentar novamente`,cancel:`Cancelar`,replaceWarning:`O tag antigo será desvinculado. O novo tag o substituirá.`,deviceOffline:`SpoolBuddy está offline`,material:`Material`,colorName:`Nome da cor`,color:`Cor`,brand:`Marca`,weight:`Peso (g)`,createSpool:`Criar bobina`,creating:`Criando...`,spoolCreated:`Bobina criada! Pronto para gravar.`,createFailed:`Falha ao criar bobina`,incompleteDataWarning:`Tag gravada com dados Spoolman incompletos`},quickMenu:{printerPower:`Energia da impressora`,systemControls:`Sistema`,restartDaemon:`Reiniciar daemon`,restartBrowser:`Reiniciar navegador`,reboot:`Reiniciar`,shutdown:`Desligar`,swipeToClose:`Deslize para baixo para fechar`,confirmTitle:`Confirmar`,confirmShutdown:`Tem certeza de que deseja desligar o SpoolBuddy? Você precisará de acesso físico para ligá-lo novamente.`,confirmReboot:`Tem certeza de que deseja reiniciar o SpoolBuddy?`,confirmRestartDaemon:`Reiniciar o daemon do SpoolBuddy? NFC e balança ficarão temporariamente indisponíveis.`,confirmRestartBrowser:`Reiniciar o navegador kiosk? A tela ficará brevemente preta.`,confirm:`Confirmar`,confirmPlugOn:`Ligar {{name}}?`,confirmPlugOff:`Desligar {{name}}?`,turnOn:`Ligar`,turnOff:`Desligar`}},diagnostic:{modalTitle:`Diagnóstico de conexão — {{name}}`,running:`Executando diagnóstico...`,runningElapsed:`Executando diagnóstico... ({{elapsed}}s)`,waitingForReportHint:`Aguardando a impressora publicar um relatório de status — pode levar até {{max}} segundos.`,runFailed:`Não foi possível executar o diagnóstico: {{error}}`,retry:`Executar novamente`,runButton:`Executar diagnóstico`,sectionTitle:`Diagnóstico de conexão`,sectionDescription:`Verifique por que uma impressora não conecta ou não imprime — acessibilidade das portas, modo desenvolvedor LAN, modo de rede Docker e credenciais.`,noPrinters:`Nenhuma impressora configurada.`,overall:{ok:`Nenhum problema encontrado — a conexão da impressora parece saudável.`,warnings:`A impressora deve funcionar, mas alguns pontos exigem atenção.`,problems:`Foram encontrados problemas que explicam por que a impressora não conecta ou não imprime.`},check:{port_mqtt:{title:`Porta de controle (MQTT 8883)`,pass:`Acessível — a impressora está aceitando conexões de controle.`,fail:`A porta 8883 está inacessível. A impressora está desligada, em outro endereço IP, ou um firewall está bloqueando. Verifique o IP da impressora e se nada bloqueia a porta 8883.`},port_ftps:{title:`Porta de transferência de arquivos (FTPS 990)`,pass:`Acessível — o envio de arquivos de impressão funcionará.`,warn:`A porta 990 está inacessível. O monitoramento ainda pode funcionar, mas o envio de impressões para a impressora falhará. Verifique se a porta 990 não está bloqueada.`,warn_no_tls:`A porta 990 está aberta, mas o serviço de arquivos da impressora não conclui o handshake TLS. Os arquivos de impressão, as capas e os timelapses não podem ser obtidos, então os arquivos ficam vazios. Reinicie a impressora — desbloquear a porta não resolve.`},external_storage:{title:`Armazenar arquivos enviados no armazenamento externo (passo 4 da instalação)`,pass:`A impressora informa que esta opção está ligada — os arquivos enviados serão armazenados no cartão SD e os arquivos terão miniaturas e metadados do fatiador.`,fail:`A impressora informa que esta opção está desligada. Ative "Armazenar arquivos enviados no armazenamento externo" — em firmwares recentes (P2S 01.02 / Bambu Studio 2.6+) o interruptor fica nas Configurações de Impressão da impressora; em versões mais antigas, está na aba Dispositivo do Bambu Studio / OrcaSlicer. Sem essa opção, cada impressão arquivada fica sem miniatura nem metadados do fatiador.`,skip:`Não verificado — é necessária uma conexão MQTT ativa. Em fatiadores mais antigos onde essa configuração existe apenas no fatiador, a impressora não a reporta, então esta verificação passa mesmo com a opção desligada — verifique o passo 4 da instalação manualmente.`,skip_unsupported_model:`Este modelo tem slot SD mas nenhuma forma de ativar a opção — o firmware atual da série P1 não mostra o botão no Bambu Studio e a impressora não tem tela. Não há nada a corrigir aqui; as impressões arquivadas podem ficar sem miniaturas e metadados do fatiador até que a Bambu Lab adicione suporte por firmware.`,fail_no_media:`A opção está ligada, mas a impressora não detecta cartão nem pendrive no slot, então os arquivos enviados não têm para onde ir. Insira um e imprima novamente — até lá, toda impressão arquivada ficará sem miniatura e sem metadados do fatiador.`,warn_internal_storage:`A opção está ligada e há armazenamento presente, mas a última impressão ainda assim foi para o armazenamento interno da impressora, que o Bambuddy não consegue ler. Na série H2, na P2S e na X2D o botão «Imprimir» do Bambu Studio sempre envia para lá, independentemente desta opção. As impressões são arquivadas com nome e tempos, mas sem miniatura nem metadados do fatiador. Para arquivos completos, inicie as impressões pelo Bambuddy ou fatie no OrcaSlicer, ou então no Bambu Studio use «Enviar» com «Externo» e inicie a impressão depois.`,warn_internal_history:`A opção está ligada e há armazenamento, mas a última impressão saiu de um arquivo que já estava na impressora: uma reimpressão pela tela dela, um início pelo Handy ou um arquivo enviado antes. Essa biblioteca fica no armazenamento interno, que o Bambuddy não consegue ler, e nenhuma opção muda isso, porque nada foi enviado para essa impressão. Ela continua arquivada com nome e tempos, mas sem miniatura nem metadados do fatiador. Para arquivos completos, inicie as impressões pelo Bambuddy ou envie-as pelo fatiador.`},port_rtsps:{title:`Porta da câmera ({{protocol}} {{port}})`,pass:`Acessível — o streaming da câmera funcionará.`,warn:`A porta {{port}} está inacessível. A visualização ao vivo da câmera não funcionará. Isso não afeta a impressão.`},macos_local_network:{title:`Permissão de rede local do macOS`,pass:`O macOS está permitindo que o Bambuddy alcance a rede local.`,warn_unsigned:`O Python que executa o Bambuddy não tem assinatura de código, então o macOS não tem a que vincular a permissão de rede local e descarta silenciosamente todas as conexões com a impressora — sem erro e sem solicitação. Execute o atualizador do Bambuddy (install/update_macos.sh), que faz a assinatura, e reinicie o Bambuddy. Interpretador: {{executable}}`,warn_permission:`Se a impressora estiver ligada e acessível neste endereço, abra Ajustes do Sistema > Privacidade e Segurança > Rede Local e verifique se o Python do Bambuddy está ativado. Caso contrário, o macOS descarta conexões locais em silêncio, e atualizar o Python pode deixar a permissão antiga para trás.`},network_mode:{title:`Modo de rede do contêiner`,genericRuntime:`um contêiner`,pass:`Executando em {{runtime}} com rede host.`,warn:`O Bambuddy está sendo executado em {{runtime}} com rede bridge. A descoberta de impressoras e a impressora virtual precisam da rede host — recrie o contêiner com rede host ("network_mode: host" no docker-compose, "--network=host" no Podman).`,skip:`Não está sendo executado em um contêiner — não aplicável.`,skip_unknown:`O Bambuddy está sendo executado em {{runtime}}, mas não foi possível determinar o modo de rede. Se a descoberta de impressoras ou a impressora virtual não funcionarem, recrie o contêiner com rede host.`,skip_system_container:`O Bambuddy está sendo executado em um contêiner de sistema {{runtime}}, que fica na LAN como uma máquina virtual — não aplicável.`},subnet:{title:`Sub-rede`,pass:`A impressora e o Bambuddy estão na mesma sub-rede.`,warn:`A impressora ({{printer_ip}}) e o Bambuddy ({{host_ip}}) estão em sub-redes diferentes. Eles podem não se alcançar, a menos que o roteamento entre as sub-redes esteja configurado.`,skip:`Não foi possível determinar a sub-rede — ignorado.`},mqtt_auth:{title:`Credenciais da impressora`,pass:`A impressora aceitou a conexão.`,fail:`A impressora está acessível mas o Bambuddy não está conectado a ela. O código de acesso ou o número de série provavelmente está incorreto — o código de acesso muda toda vez que o modo Somente LAN ou o Modo Desenvolvedor é alternado, então copie-o novamente da tela da impressora. Uma impressora reiniciando, ou que já atingiu seu limite de conexões simultâneas, aparece do mesmo jeito.`,fail_auth_rejected:`A impressora recusou as credenciais do Bambuddy. O código de acesso ou o número de série está incorreto — o código de acesso muda toda vez que o modo Somente LAN ou o Modo Desenvolvedor é alternado. Copie-o novamente da tela da impressora e salve-o nas configurações da impressora.`,skip:`Não verificado — não foi possível alcançar a impressora.`},developer_mode:{title:`Modo Desenvolvedor LAN`,pass:`O Modo Desenvolvedor está ativado.`,fail:`O Modo Desenvolvedor está DESLIGADO na impressora. Ative-o nas configurações de LAN da impressora — e confirme com OK. Sem ele, as impressões não iniciarão.`,skip:`Não foi possível verificar — requer uma conexão ativa com a impressora.`},printer_publishing:{title:`Impressora publicando status`,pass:`A impressora está publicando atualizações de status — AMS, filamentos e perfis K serão espelhados corretamente para o slicer.`,fail:`O broker MQTT aceitou a conexão, mas a impressora não publicou nenhum relatório de status. Quase sempre é um número de série errado ou com maiúsculas/minúsculas incorretas — o tópico device/<serial>/report diferencia maiúsculas de minúsculas. Verifique o número de série nas configurações da impressora comparando com a tela do equipamento.`,skip:`Não foi possível verificar — requer uma conexão ativa com a impressora.`}}},systemHealth:{sectionTitle:`Saúde do sistema`,sectionDescription:`Analisa os logs recentes em busca de problemas conhecidos que você normalmente pode resolver sozinho, antes que virem um chamado de suporte.`,rescan:`Analisar novamente`,clean:`Nenhum problema conhecido encontrado nas últimas {{times}} entradas de log.`,logUnavailable:`O registro em arquivo está desativado, então os logs não podem ser analisados. Ative o registro em arquivo para usar esta verificação.`,learnMore:`Como corrigir`,fixLabel:`Correção:`,occurrences:`Visto {{times}}× — última vez às {{lastSeen}}`,category:{layer8:`Você pode corrigir isto`,environment:`Ambiente`,bug:`Por favor, relate isto`},signature:{"ftp-auth-rejected":{name:`A impressora rejeitou o código de acesso`,cause:`A impressora recusou o login de transferência de arquivos. O código de acesso está errado ou mudou após alternar o Modo Desenvolvedor.`,fix:`Copie novamente o código de acesso da tela da impressora (configurações de LAN) e atualize-o nas configurações da impressora no Bambuddy.`},"ftp-connection-timeout":{name:`Tempo limite da conexão de transferência de arquivos`,cause:`O Bambuddy não conseguiu acessar a porta de transferência de arquivos da impressora (FTPS 990). A porta está bloqueada, ou a impressora está desligada ou em outra sub-rede.`,fix:`Verifique se nada bloqueia a porta 990 entre o Bambuddy e a impressora e se ambos estão na mesma rede.`},"ftp-ssl-error":{name:`Falha no handshake seguro de transferência de arquivos`,cause:`O serviço de arquivos da impressora respondeu na porta 990 sem TLS. O servidor de arquivos dela travou: é uma falha da impressora, não do firewall nem do firmware.`,fix:`Reinicie a impressora. Até lá, arquivos de impressão, capas e timelapses não podem ser baixados; a impressão em si não é afetada.`},"bambu-cloud-captcha":{name:`O Bambu Cloud está pedindo um CAPTCHA`,cause:`A proteção antiabuso do Bambu está verificando esta rede, então nenhum login no Bambu Cloud consegue ser concluído. Isso depende do endereço IP público, não da sua conta nem desta instalação.`,fix:`Aguarde: costuma passar em algumas horas e novas tentativas prolongam o bloqueio. Enquanto isso, conecte-se com um token de acesso obtido em uma sessão do navegador.`},"mqtt-connection-flapping":{name:`A conexão com a impressora cai repetidamente`,cause:`A conexão de controle (MQTT 8883) desconecta e reconecta repetidamente — geralmente por uma rede fraca ou uma porta parcialmente bloqueada.`,fix:`Verifique o sinal de Wi-Fi perto da impressora, prefira uma conexão com fio e certifique-se de que a porta 8883 esteja acessível de forma confiável.`},"camera-connection-refused":{name:`Transmissão da câmera inacessível`,cause:`Não foi possível acessar a câmera ao vivo na porta RTSPS 322. A porta está bloqueada, ou a câmera ou a visualização ao vivo via LAN está desativada na impressora.`,fix:`Ative a câmera e a visualização ao vivo via LAN na impressora e verifique se a porta 322 não está bloqueada. Isso não afeta a impressão.`},"database-locked":{name:`Conflitos de gravação no banco de dados`,cause:`O banco de dados SQLite apresenta erros "database is locked" sob carga — comum ao usar várias impressoras ao mesmo tempo.`,fix:`Migre o Bambuddy para um banco de dados PostgreSQL externo. Consulte o guia do PostgreSQL na documentação.`}}},vpDiagnostic:{title:`Verificação de configuração — {{name}}`,runButton:`Executar verificação de configuração`,running:`Executando verificação de configuração...`,runFailed:`Não foi possível executar a verificação de configuração: {{error}}`,retry:`Verificar novamente`,overall:{ok:`Todas as verificações passaram — esta impressora virtual está configurada corretamente.`,warnings:`A impressora virtual deve funcionar, mas alguns pontos precisam de atenção.`,problems:`Foram encontrados problemas que explicam por que o slicer não consegue ver ou usar esta impressora virtual.`},check:{enabled:{title:`Impressora virtual habilitada`,fail:`Esta impressora virtual está desligada. Ative-a para torná-la detectável.`},running:{title:`Serviços em execução`,fail:`A impressora virtual está habilitada, mas seus serviços não estão em execução. Verifique o log do Bambuddy — geralmente um conflito de IP de vínculo ou um erro de permissão os interrompe.`},bind_interface:{title:`Interface de rede de vínculo`,fail:`A interface de vínculo não está definida ou não existe mais neste host. Escolha uma interface atual no menu "Interface de vínculo".`},access_code:{title:`Código de acesso definido`,fail:`Nenhum código de acesso definido. O slicer precisa receber o mesmo código de acesso de 8 caracteres que você define aqui.`},target_printer:{title:`Impressora de destino`,fail:`Nenhuma impressora de destino selecionada. O modo proxy precisa de uma impressora real para a qual encaminhar.`,warn:`A impressora de destino está offline no momento — o encaminhamento será retomado quando ela se reconectar.`},port_ftps:{title:`Serviço de upload de arquivos (porta {{port}})`,fail:`Nada está escutando na porta {{port}} do IP de vínculo, então o slicer não consegue enviar arquivos. A causa habitual é um conflito de porta nesta interface.`},port_mqtt:{title:`Serviço de controle (porta {{port}})`,fail:`Nada está escutando na porta {{port}} do IP de vínculo, então o slicer não consegue conectar nem mostrar o status.`},port_bind:{title:`Serviço de descoberta (porta {{port}})`,fail:`Nada está escutando na porta {{port}} do IP de vínculo, então a negociação de descoberta do slicer falha.`},privileged_ports:{title:`Vinculação a portas privilegiadas`,fail:`A porta {{port}} está abaixo de 1024 e este serviço não tem permissão para vinculá-la, por isso nada está escutando acima. Adicione AmbientCapabilities=CAP_NET_BIND_SERVICE em /etc/systemd/system/bambuddy.service e reinicie, ou execute "sudo setcap cap_net_bind_service=+ep $(readlink -f $(which python3))". No Docker, adicione cap_add: [NET_BIND_SERVICE].`},certificate:{title:`Certificado TLS`,pass:`Certificado pronto. Verifique se o certificado CA do Bambuddy (acima) está importado no armazenamento de confiança do seu slicer.`,fail:`O certificado TLS desta impressora virtual está ausente. Verifique se o diretório de dados do Bambuddy tem permissão de escrita.`}}},bugReport:{logHealthSummary:`Problemas conhecidos encontrados nos seus logs`,logHealthIntro:`Os logs recentes correspondem a problemas conhecidos. Veja as correções abaixo — resolvê-las pode solucionar seu problema sem um relatório de bug. Você ainda pode enviar um relatório abaixo.`,title:`Reportar um bug`,description:`Descrição`,descriptionPlaceholder:`O que deu errado? Por favor, descreva o problema...`,email:`Email (opcional)`,emailPlaceholder:`seu@email.com.br`,emailPrivacy:`Se fornecido, seu email será incluído em uma seção recolhida da issue no GitHub para que o mantenedor possa entrar em contato.`,screenshot:`Captura de tela`,uploadOrPaste:`Enviar, colar ou arrastar uma imagem`,dataCollectedSummary:`Quais dados são incluídos no relatório?`,dataIncluded:`Incluídos:`,dataIncludedList:`Versão do app, SO, arquitetura, versão Python, estatísticas do banco de dados (apenas contagens), modelos de impressora, quantidade de bicos, versões de firmware, status de conexão, status de integrações (Spoolman, MQTT, HA), configurações não sensíveis, contagem de interfaces de rede, detalhes Docker, versões de dependências.`,dataNeverIncluded:`Nunca incluídos:`,dataNeverIncludedList:`Nomes de impressoras, números de série, códigos de acesso, senhas, endereços IP, endereços de email, chaves de API, tokens, URLs de webhook, nomes de host ou nomes de usuário.`,submit:`Enviar`,startLogging:`Iniciar log de depuração`,stepEnableLogging:`Log de depuração ativado`,stepReproduce:`Reproduza o problema agora`,stepStopLogging:`Parar & enviar relatório`,stopAndSubmit:`Parar & Enviar`,maxDuration:`Para automaticamente após {{minutes}} min`,stoppingLogs:`Coletando logs & enviando...`,submitting:`Enviando relatório de bug...`,submittingStepConnection:`Executando verificações de conectividade das impressoras`,submittingStepVirtualPrinters:`Executando verificações de configuração das impressoras virtuais`,submittingStepLogScan:`Analisando registros recentes em busca de problemas conhecidos`,submittingStepSubmit:`Enviando relatório para o GitHub`,submitSuccess:`Relatório de bug enviado com sucesso!`,submitFailed:`Falha ao enviar relatório de bug`,diagnosticChecking:`Verificando as conexões das impressoras...`,diagnosticHealthy:`Verificação de conexão aprovada — nenhum problema encontrado nas suas impressoras.`,diagnosticSummary:`{{problems}} de {{total}} impressoras têm problemas de conexão`,diagnosticIntro:`Uma ou mais impressoras têm um problema de conexão que pode estar causando seu problema. Expanda uma impressora abaixo para ver a solução — resolvê-la pode solucionar o problema sem um relatório de bug. Você ainda pode enviar um relatório abaixo.`,thankYou:`Obrigado!`,submitted:`Seu relatório de bug foi enviado.`,viewIssue:`Ver issue`,closeKeepsRecording:`Você pode fechar este painel enquanto reproduz o problema: a gravação continua e, ao reabrir, você volta para cá.`,resumeRecording:`Relatório de bug gravando — {{elapsed}}. Clique para concluir.`,resumeReport:`Retomar relatório`,unexpectedError:`Ocorreu um erro inesperado`},failureDetection:{title:`Detecção de Falhas por IA`,description:`Monitora impressões via API ML do Obico auto-hospedada e age automaticamente em falhas detectadas.`,mlUrl:`URL da API ML do Obico`,mlUrlHint:`URL base do seu contêiner Obico ml_api auto-hospedado (ex.: http://192.168.1.10:3333).`,bambuddyInternalUrl:`URL interna do Bambuddy (opcional)`,bambuddyInternalUrlHint:`Endereço do Bambuddy acessível pela API de ML, como um nome de serviço do Docker ou um IP da rede local. Deixe vazio para usar a URL externa. As outras integrações continuam usando a URL externa.`,bambuddyInternalUrlInvalid:`Deve começar com http:// ou https:// (por exemplo, http://bambuddy:8000). Não é salvo até lá.`,mlToken:`Token da API ML (opcional)`,mlTokenPlaceholder:`Deixe vazio se o servidor for executado sem ML_API_TOKEN`,mlTokenHint:`Deve corresponder à variável de ambiente ML_API_TOKEN do seu contêiner Obico ml_api. Deixe vazio se o contêiner for executado sem token.`,test:`Testar`,testSuccess:`API ML acessível e operacional.`,testSuccessTokenUnknown:`API ML acessível e operacional. Não foi possível verificar o token.`,testFailed:`Não foi possível acessar a API ML.`,sensitivity:`Sensibilidade`,sensitivityLow:`Baixa (menos falsos positivos)`,sensitivityMedium:`Média (equilibrada)`,sensitivityHigh:`Alta (detecção precoce, mais falsos positivos)`,sensitivityHint:`Ajusta os limiares de confiança que disparam avisos e falhas.`,action:`Ação em falha detectada`,actionNotify:`Apenas notificar`,actionPause:`Pausar impressão`,actionPauseOff:`Pausar e cortar energia`,pollInterval:`Intervalo de verificação (segundos)`,pollIntervalHint:`Frequência de verificação de cada impressora durante a impressão. Mínimo 5s, máximo 120s.`,externalUrlMissing:`Nenhum endereço definido para a API de ML buscar as capturas.`,externalUrlHint:`Defina aqui a URL interna do Bambuddy ou a URL externa em Configurações → Rede para que a API de ML possa buscar as capturas.`,perPrinterTitle:`Impressoras monitoradas`,perPrinterHint:`Escolha quais impressoras o serviço de detecção monitora.`,monitorAll:`Monitorar todas as impressoras conectadas`,statusTitle:`Status`,serviceRunning:`Serviço em execução`,thresholds:`Limiares baixo / alto`,activePrinters:`Impressões ativas`,noActivePrints:`Nenhuma impressão em andamento.`,historyTitle:`Detecções recentes`,noHistory:`Nenhuma detecção ainda.`},modelSources:{title:`Fontes de modelos`,tabMakerworld:`MakerWorld`,tabManyfold:`Manyfold`},manyfold:{description:`Navegue e pesquise na sua biblioteca do Manyfold e importe os arquivos para fatiar e imprimir.`,notConnectedTitle:`O Manyfold não está conectado`,notConnectedBody:`Peça a um administrador para conectar sua biblioteca do Manyfold.`,connectionTitle:`Conexão com o Manyfold`,connectionHelp:`No Manyfold, abra Configurações → API e crie um aplicativo com os escopos "public" e "read". Informe aqui o ID do cliente e o segredo dele. O Bambuddy vê os modelos que o dono do aplicativo pode ver.`,url:`URL do Manyfold`,urlPlaceholder:`http://192.168.1.10:3214`,clientId:`ID do cliente`,clientSecret:`Segredo do cliente`,clientSecretStored:`Salvo. Deixe vazio para mantê-lo.`,test:`Testar conexão`,testOk:`Conectado. Modelos que o Bambuddy pode ver: {{count}}`,disconnect:`Desconectar`,disconnectTitle:`Desconectar o Manyfold?`,disconnectBody:`O Bambuddy esquece a URL, o ID do cliente e o segredo do Manyfold. Os arquivos importados continuam na sua biblioteca.`,disconnected:`Manyfold desconectado`,editConnection:`Conexão`,searchPlaceholder:`Pesquisar modelos`,modelCount:`Modelos: {{count}}`,noModels:`Nenhum modelo encontrado.`,previous:`Anterior`,next:`Próxima`,page:`Página {{page}}`,back:`Voltar aos modelos`,openInManyfold:`Abrir no Manyfold`,license:`Licença`,files:`Arquivos`,noFiles:`Este modelo não tem arquivos.`,importTo:`Importar para`,folderAuto:`Pasta "Manyfold"`,import:`Importar`,importing:`Importando…`,imported:`{{filename}} importado`,alreadyInLibrary:`Já está na sua biblioteca`,inLibrary:`Na biblioteca`,showInLibrary:`Mostrar na biblioteca`,notImportable:`O Bambuddy não consegue fatiar nem imprimir este tipo de arquivo`,selectAll:`Selecionar tudo`,selectFile:`Selecionar {{name}}`,importSelected:`Importar seleção ({{count}})`,importAll:`Importar tudo`,importProgress:`Importando {{current}}/{{total}}`,bulkDone:`Importados: {{imported}} · já na biblioteca: {{existing}} · com falha: {{failed}}`,bulkFailed:`Não importados: {{names}}. {{reason}}`,bulkNothing:`Nada para importar: todos os arquivos imprimíveis já estão na sua biblioteca.`,selectModel:`Selecionar {{name}}`,selectPage:`Selecionar página`,modelsSelected:`Modelos selecionados: {{count}}`,importModels:`Importar os arquivos deles`,clearSelection:`Limpar seleção`,collectProgress:`Lendo modelos {{current}}/{{total}}`,modelsUnreadable:`Não foi possível ler: {{names}}`,errors:{manyfold_not_configured:`O Manyfold não está conectado.`,manyfold_credentials:`O Manyfold não aceitou o ID do cliente ou o segredo.`,manyfold_scope:`O aplicativo do Manyfold precisa do escopo "read". Edite-o no Manyfold em Configurações → API.`,manyfold_rate_limited:`O Manyfold está limitando os logins. Tente novamente em alguns minutos.`,manyfold_unreachable:`O Bambuddy não consegue acessar o Manyfold. Verifique a URL e se o Manyfold está em execução.`,manyfold_forbidden:`O Manyfold recusou o acesso. Verifique se o dono do aplicativo pode ver este modelo.`,manyfold_not_found:`O Manyfold não encontra este modelo ou arquivo.`,manyfold_too_large:`O arquivo tem mais de 200 MB.`,manyfold_not_importable:`Só é possível importar arquivos 3MF, STL e STEP.`,manyfold_bad_url:`Informe a URL do Manyfold começando com http:// ou https://.`,manyfold_secret_required:`Informe o segredo do cliente.`,manyfold_failed:`O Manyfold respondeu com um erro.`}},makerworld:{title:`MakerWorld`,description:`Cole uma URL de modelo do MakerWorld para importar e imprimir diretamente do Bambuddy — sem precisar abrir o app Bambu Handy.`,pasteUrlHeader:`Importar do MakerWorld`,pasteUrlPlaceholder:`https://makerworld.com/en/models/… ou cole qualquer link do MakerWorld`,resolveButton:`Resolver`,signInRequiredTitle:`Login no Bambu Cloud necessário para baixar`,signInRequiredBody:`Você pode navegar pelos detalhes do modelo anonimamente, mas o MakerWorld exige uma conta Bambu Cloud para baixar arquivos 3MF.`,signInExpiredTitle:`Sessão do Bambu Cloud expirada`,signInExpiredBody:`Você continua conectado ao Bambuddy, mas a Bambu Lab deixou de aceitar o token armazenado, então os downloads vão falhar. Entre novamente no Bambu Cloud.`,openCloudSettings:`Abrir configurações do Cloud`,untitledModel:`Modelo sem título`,byCreator:`por {{name}}`,downloadsCount:`{{count}} downloads`,licensePrefix:`Licença`,alreadyImported:`Já na biblioteca`,openOnMakerworld:`Abrir no MakerWorld`,alreadyInLibrary:`Este modelo já está na sua biblioteca — encontre-o em Gerenciador de Arquivos → MakerWorld`,importSuccess:`{{filename}} importado — salvo em Gerenciador de Arquivos → MakerWorld`,platesHeader:`Placas ({{count}})`,plateDefaultName:`Placa {{n}}`,materialCount:`{{count}} filamentos`,amsRequired:`AMS necessário`,slicedFor:`Fatiado para {{printer}}`,alsoCompatible:`Também marcado como compatível: {{printers}}`,importToLibrary:`Salvar`,sliceIn:`Salvar e fatiar no {{slicer}}`,disclaimer:`A integração com o MakerWorld usa endpoints de API documentados pela comunidade. Bambuddy não é afiliado nem endossado pelo MakerWorld ou pela Bambu Lab.`,lastImportSuccess:`Importado para sua biblioteca`,lastImportAlreadyInLibrary:`Já na sua biblioteca`,viewInLibrary:`Ver no Gerenciador de Arquivos`,openInBambuStudio:`Abrir no Bambu Studio`,openInOrcaSlicer:`Abrir no OrcaSlicer`,importTo:`Importar para o Gerenciador de Arquivos`,recentImportsHeader:`Importações recentes`,phaseResolving:`Resolvendo`,phaseDownloading:`Baixando`,folderAuto:`MakerWorld (padrão)`,importAll:`Importar tudo`,importAllProgress:`Importando {{current}}/{{total}}`,openGallery:`Abrir galeria de imagens`,galleryPrev:`Imagem anterior`,galleryNext:`Próxima imagem`,deleteImport:`Remover da biblioteca`,importDeleting:`Removendo…`,importDeleted:`Removido da biblioteca`,confirmDelete:`Remover {{filename}} da biblioteca? O arquivo local será excluído, mas a placa pode ser reimportada do MakerWorld.`,errors:{resolveFailed:`Não foi possível resolver essa URL do MakerWorld.`,downloadFailed:`Falha no download. Tente novamente.`,deleteFailed:`Não foi possível remover o arquivo da biblioteca.`}},gcodeViewer:{filamentSlot:`Filamento {{n}}`,loading:`Lendo a trajetória…`,loadFailed:`Não foi possível carregar o G-code deste arquivo.`,showTravel:`Movimentos sem extrusão`,topLayer:`Camada superior`,bottomLayer:`Camada inferior`,noSource:`Nenhum arquivo foi indicado para visualização.`,view:{filament:`Filamento`,feature:`Elemento`,height:`Altura`,width:`Largura`},feature:{wall:`Paredes`,sparseInfill:`Preenchimento esparso`,solidInfill:`Preenchimento sólido`,bridge:`Ponte / saliência`,support:`Suporte`,skirt:`Saia / aba`,gapFill:`Preenchimento de lacunas`,ironing:`Alisamento`,primeTower:`Torre de purga`},back:`Voltar`,backToArchives:`Voltar para os arquivos de impressão`,backToFiles:`Voltar para o gerenciador de arquivos`,plates:`Placas`,plateN:`Placa {{n}}`},libraryTrash:{title:`Lixeira`,headerButton:`Lixeira`,headerTooltip:`Ver arquivos movidos para a lixeira`,backToFiles:`Voltar ao gerenciador de arquivos`,subtitleAdmin:`Arquivos excluídos ficam aqui por {{days}} dias e depois são removidos automaticamente. Esta visualização mostra a lixeira de todos os usuários.`,subtitleUser:`Arquivos excluídos ficam aqui por {{days}} dias e depois são removidos automaticamente.`,loading:`Carregando a lixeira…`,loadError:`Não foi possível carregar a lixeira.`,empty:`A lixeira está vazia.`,summary:`{{count}} arquivos · {{size}}`,emptyTrash:`Esvaziar lixeira`,restore:`Restaurar`,purgeNow:`Excluir agora`,autoPurgeIn:`Exclusão automática em {{when}}`,days:`dias`,retentionLabel:`Excluir automaticamente após`,selectAll:`Selecionar todos`,selectOne:`Selecionar {{filename}}`,selectionCount:`{{count}} selecionado(s)`,bulkRestore:`Restaurar selecionados`,bulkPurge:`Excluir selecionados`,col:{filename:`Arquivo`,folder:`Pasta`,size:`Tamanho`,deleted:`Movido para a lixeira`,autoPurge:`Exclusão auto.`,owner:`Proprietário`,actions:`Ações`},confirm:{purgeTitle:`Excluir permanentemente?`,purgeBody:`{{filename}} será excluído do disco e não poderá ser restaurado.`,emptyTitle:`Esvaziar a lixeira?`,emptyBody:`Todos os {{count}} arquivos serão excluídos do disco. Esta ação não pode ser desfeita.`,bulkPurgeTitle:`Excluir permanentemente os arquivos selecionados?`,bulkPurgeBody:`Os {{count}} arquivos selecionados serão excluídos do disco e não poderão ser restaurados.`,cta:`Excluir permanentemente`},toast:{restored:`Arquivo restaurado.`,restoreFailed:`Não foi possível restaurar o arquivo.`,purged:`Arquivo excluído permanentemente.`,purgeFailed:`Não foi possível excluir o arquivo.`,emptied:`{{count}} arquivo(s) excluído(s) da lixeira.`,emptyFailed:`Não foi possível esvaziar a lixeira.`,retentionSaved:`Exclusão automática definida para {{days}} dias.`,retentionFailed:`Não foi possível salvar a configuração de retenção.`,bulkRestored:`{{count}} arquivo(s) restaurado(s).`,bulkPurged:`{{count}} arquivo(s) excluído(s).`}},libraryPurge:{title:`Limpar arquivos antigos`,headerButton:`Limpar antigos`,headerTooltip:`Mover arquivos antigos em massa para a lixeira`,description:`Arquivos mais antigos que o limite serão movidos para a lixeira. Pastas externas são ignoradas. Você pode restaurar da lixeira antes da exclusão automática.`,ageLabel:`Mover arquivos mais antigos que`,days:`dias`,includeNeverPrinted:`Incluir arquivos que nunca foram impressos`,effectsTitle:`O que acontece quando você clica em Limpar`,effect1:`Os arquivos correspondentes são movidos para a Lixeira — ainda não são excluídos do disco.`,effect2:`Você pode restaurá-los da Lixeira a qualquer momento até o fim do período de retenção.`,effect3:`Após o período de retenção, o coletor da lixeira os remove permanentemente.`,effect4:`Arquivos em pastas externas (vinculadas) são ignorados — Bambuddy nunca exclui bytes que não possui.`,previewLoading:`Verificando quantos arquivos correspondem…`,previewFailed:`Não foi possível pré-visualizar a limpeza.`,previewSummary:`{{count}} arquivos · {{size}} seriam movidos para a lixeira`,andMore:`…e mais {{count}}`,warning:`Os arquivos são excluídos de forma suave — você pode restaurá-los da lixeira até o fim do período de retenção.`,confirmCta:`Mover {{count}} para a lixeira`,purging:`Movendo para a lixeira…`,toast:{success:`{{count}} arquivo(s) movido(s) para a lixeira.`,failed:`Não foi possível limpar os arquivos.`}},libraryAutoPurge:{enableLabel:`Limpar arquivos antigos automaticamente`,enableDescription:`Executa a limpeza administrativa uma vez por dia. Os arquivos vão primeiro para a lixeira — não são excluídos imediatamente.`,ageLabel:`Limpar automaticamente arquivos mais antigos que`,ageDescription:`Mínimo 7 dias, máximo 10 anos. Usa a mesma regra de idade do botão Limpar manual.`,days:`dias`,includeNeverPrinted:`Incluir arquivos que nunca foram impressos`,saveFailed:`Não foi possível salvar as configurações de limpeza automática.`},archivePurge:{headerButton:`Limpar antigos`,headerTooltip:`Excluir arquivos antigos em massa`,title:`Limpar arquivos antigos`,description:`Limpa o histórico de impressão antigo. Cada arquivo envelhece pela última conclusão de impressão — reimprimir reinicia a idade, então trabalho ativo nunca é removido.`,ageLabel:`Excluir arquivos não impressos nos últimos`,days:`dias`,effectsTitle:`O que acontece quando você clica em Limpar`,effect1:`Cada arquivo correspondente é ocultado das listagens e seus arquivos são removidos do disco (3MF, miniatura, timelapse, 3MF de origem, F3D, fotos).`,effect2:`A linha do arquivo permanece no banco de dados para que o Quick Stats mantenha a contribuição de filamento, tempo, custo e energia — mesmo comportamento padrão da exclusão individual.`,effect3:`Marque "Remover também das estatísticas" abaixo para descartar também a contribuição do Quick Stats (equivalente à opção da exclusão individual). Esse caminho é irreversível.`,effect4:`Reimprimir um arquivo reinicia seu cronômetro de idade, então arquivos ativos estão protegidos.`,purgeStatsLabel:`Remover também das estatísticas`,purgeStatsHint:`Remove os arquivos correspondentes do Quick Stats (filamento, tempo, custo, energia). Sem essa opção, o Quick Stats mantém cada contribuição e apenas os arquivos saem do disco.`,previewLoading:`Verificando quantos arquivos correspondem…`,previewFailed:`Não foi possível visualizar a limpeza.`,previewSummary:`{{count}} arquivos · {{size}} seriam removidos`,andMore:`…e mais {{count}}`,warning:`Os arquivos são removidos do disco e não podem ser restaurados. Baixe ou favorite o que quiser manter antes de continuar.`,confirmCta:`Remover {{count}} arquivo(s)`,purging:`Removendo…`,toast:{success:`{{count}} arquivo(s) removido(s).`,failed:`Não foi possível limpar os arquivos.`}},archiveAutoPurge:{enableLabel:`Limpar arquivos antigos auto.`,enableDescription:`Uma vez por dia oculta das listagens os arquivos não impressos dentro do limite e remove seus arquivos do disco. Reimprimir reinicia o cronômetro.`,ageLabel:`Exclusão auto. de arquivos não impressos nos últimos`,ageDescription:`Mínimo 7 dias, máximo 10 anos. Baseado na última conclusão de impressão — reimprimir reinicia a idade. Remove 3MF, miniatura, timelapse, 3MF de origem, F3D e fotos.`,days:`dias`,purgeStatsLabel:`Remover também das estatísticas`,purgeStatsDescription:`Quando ativada, a varredura diária também descarta a contribuição de cada arquivo limpo do Quick Stats (filamento, tempo, custo, energia). Desativada por padrão — o Quick Stats mantém a contribuição e apenas os arquivos saem do disco.`,runNow:`Limpar arquivos agora`,saveFailed:`Não foi possível salvar as configurações de limpeza automática.`},connectedApps:{title:`Apps conectados`,description:`Apps em que se entra com a conta do Bambuddy. Cada app recebe um ID de cliente e um segredo, e o Bambuddy só envia o login para a URL de retorno registrada aqui.`,requiresAuth:`Apps conectados precisam da autenticação do Bambuddy. Ative-a primeiro em Usuários.`,name:`Nome do app`,namePlaceholder:`ex.: Gerenciador de pedidos`,callbackUrl:`URL de retorno`,callbackHint:`A documentação do app informa a URL de retorno. Ela precisa ser exatamente igual.`,add:`Adicionar app`,empty:`Nenhum app conectado ainda.`,clientId:`ID do cliente`,clientSecret:`Segredo do cliente`,lastUsed:`Último login`,disabledBadge:`Desativado`,enable:`Ativar`,disable:`Desativar`,rotate:`Novo segredo`,delete:`Excluir`,cancel:`Cancelar`,copy:`Copiar`,secret:{title:`{{name}}: copie o segredo agora`,warning:`Cole o ID do cliente e o segredo no app. O segredo só aparece desta vez; se ele se perder, crie um novo.`,dismiss:`Já salvei`},confirmRotate:{title:`Criar um novo segredo?`,body:`"{{name}}" deixa de fazer login até você colar o novo segredo nele.`},confirmDelete:{title:`Excluir este app?`,body:`"{{name}}" não poderá mais fazer login de ninguém. Se for adicionado de novo, todos terão de dar permissão outra vez.`},toast:{created:`App adicionado`,enabled:`App ativado`,disabled:`App desativado`,rotated:`Novo segredo criado`,deleted:`App excluído`,copied:`Copiado para a área de transferência`,copyFailed:`Não foi possível copiar. Selecione o texto e copie manualmente.`,failed:`Algo deu errado`},authorize:{checking:`Verificando a solicitação de login…`,redirecting:`Fazendo seu login…`,errorTitle:`Não foi possível entrar`,invalidRequest:`Esta solicitação de login não é válida: o app não está registrado, está desativado ou usa outra URL de retorno. Peça ao administrador do Bambuddy para verificar Configurações > Chaves de API > Apps conectados.`,authDisabled:`O login com o Bambuddy não está disponível porque a autenticação do Bambuddy está desligada. Use o login próprio do app.`,failed:`Falha no login. Volte ao app e tente de novo.`,title:`{{app}} quer fazer seu login`,signedInAs:`Conectado ao Bambuddy como {{username}}`,sharedData:`{{app}} verá seu nome de usuário, e-mail, grupos e permissões. Ele não recebe sua senha nem sua sessão do Bambuddy.`,allow:`Permitir`,deny:`Cancelar`}},cameraTokens:{scope:{camera_stream:`Transmissão da câmera`,camwall:`Mural de câmeras`,overlay:`Sobreposição de streaming`},title:`Tokens da API de câmera`,navTitle:`Tokens da API de câmera`,description:`Tokens de longa duração para incorporar a transmissão da câmera no Home Assistant, no Frigate, em telas em modo quiosque ou em qualquer outra ferramenta que precise de um endereço estável. O escopo é escolhido na criação; um token pode ser revogado a qualquer momento.`,loading:`Carregando…`,confirmRevoke:{title:`Revogar este token?`,body:`Qualquer dispositivo usando "{{name}}" perderá acesso imediatamente. Isso não pode ser desfeito.`,cancel:`Cancelar`,confirm:`Revogar`},create:{scopeLabel:`Escopo`,hintCameraStream:`Um token de transmissão da câmera só consegue buscar transmissões e instantâneos. Use-o no Home Assistant, no Frigate ou em qualquer coisa que incorpore uma única câmera.`,hintCamWall:`Um token do mural de câmeras abre /camwall em uma tela sem login. Ele vê o nome e o estado de cada impressora e as transmissões das câmeras. Não vê nomes de arquivo, endereços nem códigos de acesso.`,hintOverlay:`Um token de sobreposição de streaming abre /overlay/{printerId} em uma tela sem login — para o OBS ou qualquer transmissão ao vivo. Ele vê a transmissão da câmera de uma impressora e seu status de impressão ao vivo, incluindo o nome de arquivo mostrado na tela. Não vê endereços nem códigos de acesso.`,title:`Criar novo token`,nameLabel:`Nome do token`,namePlaceholder:`ex. Home Assistant`,daysLabel:`Dias até expirar`,submit:`Criar`,hint:`Tempo de vida máximo 365 dias. O valor do token é exibido apenas na criação — copie agora.`},created:{camWallUrlTitle:`Endereço do mural de câmeras para esta tela`,camWallUrlHint:`Abra este endereço na tela. Qualquer pessoa que consiga lê-lo pode assistir ao painel, então trate-o como uma chave: revogue o token para cortar o acesso da tela.`,overlayUrlTitle:`Endereço de sobreposição para OBS`,overlayUrlHint:`Adicione isto como Fonte de navegador no OBS. Altere o número em /overlay/1 para o número da sua impressora (do endereço dela na página Impressoras). Qualquer pessoa que consiga ler o endereço pode assistir à transmissão, então trate-o como uma chave: revogue o token para cortar o acesso.`,title:`Token criado – copie agora`,warning:`Esta é a única vez que este token será visível. Após fechar este diálogo, você nunca poderá vê-lo novamente.`,copy:`Copiar`,dismiss:`Eu salvei`},list:{scope:`Escopo`,myTitle:`Meus tokens`,allTitle:`Todos os usuários (visão admin)`,empty:`Nenhum token ainda.`,name:`Nome`,owner:`Proprietário`,prefix:`Prefixo`,created:`Criado`,expires:`Expira`,lastUsed:`Último uso`,revoke:`Revogar`,expired:`Expirado`},toast:{created:`Token criado`,createFailed:`Falha ao criar token`,revoked:`Token revogado`,revokeFailed:`Falha ao revogar token`,loadFailed:`Falha ao carregar tokens`,copied:`Copiado para a área de transferência`,copyFailed:`Falha ao copiar – selecione e copie manualmente`}},forecast:{title:`Previsão de Estoque`,noSpools:`Nenhum carretel ativo encontrado. Adicione carretéis ao seu inventário para ver os dados de previsão.`,noUsageData:`Nenhum dado de uso disponível — não é possível projetar a linha do tempo do estoque.`,sku:`SKU`,material:`Material`,stock:`Estoque`,dailyRate:`Taxa`,daysLeft:`Dias Restantes`,emptyBy:`Esgota em`,reorderBy:`Reabastecer até`,actions:`Ações`,trend:`Tendência`,estimated:`Est.`,noData:`Sem dados`,timeframe:`Período`,chartTitle:`Estoque projetado — Top 5 materiais`,dashedLinesROP:`Linhas tracejadas = pontos de reposição`,stockLevel:`Nível de Estoque`,reorderPoint:`Ponto de Reposição`,safetyMargin:`Margem de Segurança`,trendLegend:`Tendência (baseada em histórico, nível de serviço 95%)`,estimatedLegend:`Estimado (delta de peso)`,noDataLegend:`Sem dados`,ropLabel:`PR`,ssLabel:`SE`,safetyStockLegend:`Estoque de segurança`,stockArrivalLegend:`Chegada do estoque`,stockoutLegend:`Ruptura de estoque`,alertCount_one:`{{count}} alerta`,alertCount_other:`{{count}} alertas`,order:`Pedir`,globalLeadTime:`Lead time global`,globalLeadTimeHint:`Lead time global mínimo — usado no cálculo do ponto de reposição para todos os SKUs`,save:`Salvar`,cancel:`Cancelar`,settingsSaved:`Configurações salvas`,failedSaveSettings:`Falha ao salvar configurações`,globalLeadTimeSaved:`Prazo global salvo`,skuLeadTimeOverride:`Override de Lead Time do SKU`,skuLeadTimeHint:`0 = usar lead time global. Defina >0 para substituir para este SKU.`,safetyMarginLabel:`Margem de Segurança`,effectiveLeadTime:`Lead Time Efetivo`,effectiveLeadTimeHint:`máx(global {{global}}d, SKU {{sku}}d)`,reorderPointHint:`d̄ × LT + safety margin — peça quando o estoque atingir este nível`,safetyMarginHint:`Estoque de segurança estatístico (z=1,65 × σ × √LT) + buffer definido pelo usuário`,safetyMarginHintDays:`Buffer adicionado ao estoque de segurança estatístico.{{approx}}`,safetyMarginHintDaysApprox:` ≈ {{g}}g na taxa atual.`,safetyMarginHintG:`Buffer de peso fixo adicionado ao estoque de segurança estatístico.{{approx}}`,safetyMarginHintGApprox:` ≈ {{days}}d na taxa atual.`,individualSpools:`Carretéis individuais`,labelWeight:`Etiqueta`,spoolCount_one:`{{count}} carretel`,spoolCount_other:`{{count}} carretéis`,stockBreakRisk:`Risco de ruptura de estoque`,stockBreakBefore:`Ruptura de estoque antes do reabastecimento`,stockBreakDetail:`{{days}}d restantes, lead time {{lt}}d.`,reorderNow:`Reabastecer agora`,reorderTriggerPassed:`A data de acionamento {{date}} já passou.`,shoppingList:`Lista de Compras`,shoppingListItems_one:`({{count}} item)`,shoppingListItems_other:`({{count}} itens)`,shoppingListEmpty:`A lista de compras está vazia. Clique no ícone do carrinho em qualquer linha para adicionar itens.`,addToCart:`Adicionar à lista de compras`,alertsSnoozed:`Silenciar alertas para este SKU`,alertsEnabled:`Ativar alertas para este SKU`,addedToCart:`Adicionado à lista de compras`,failedAddItem:`Falha ao adicionar item`,listView:`Lista`,logisticsView:`Logística`,qty:`Qtd`,weight:`Peso`,leadTime:`Prazo de entrega`,expectedRestock:`Reabastecimento Previsto`,status:`Status`,note:`Nota`,pending:`Pendente`,purchased:`Comprado`,received:`Recebido`,markPurchased:`Marcar como comprado`,markReceived:`Marcar como recebido — adiciona carretéis ao estoque`,resetToPending:`Redefinir para pendente`,remove:`Remover`,clearAll:`Limpar tudo`,downloadCsv:`CSV`,addToCartTitle:`Adicionar à lista de compras`,byQuantity:`Por quantidade`,byDuration:`Por duração`,numberOfSpools:`Número de carretéis`,lastHowManyDays:`Por quantos dias deve durar?`,noUsageQty:`Sem dados de uso — quantidade definida como 1.`,noteOptional:`Observação (opcional)`,notePlaceholder:`ex. para o projeto X, urgente…`,addNSpools_one:`Adicionar {{count}} carretel`,addNSpools_other:`Adicionar {{count}} carretéis`,onArrival:`Na Chegada`,stockBreakIn:`Ruptura de estoque em {{days}}d.`,stockRunsOutBefore:`O estoque se esgota antes do lead time de {{lt}}d decorrer.`,atRate:`A {{rate}}g/dia você precisa de`,moreSpools_one:`{{count}} carretel a mais`,moreSpools_other:`{{count}} carretéis a mais`,bridgeGap:`para cobrir a lacuna.`,noReadAccess:`Você não tem permissão para visualizar previsões de inventário.`,noWriteAccess:`Você não tem permissão para modificar as configurações de previsão.`}};export{e as default};