screentinker/frontend/js/i18n/pt.js
ScreenTinker 103803fb92 i18n batch 2b: wire designer.js (~80 keys)
- All 12 element types (text, heading, image, video, clock, date,
  weather, ticker, shape, qr, countdown, webpage)
- Background swatches, properties panel, layers list
- Translated prompts for video/weather/RSS/QR/countdown/webpage URLs
- Toasts for publish, export, load, invalid file
- 612 keys total, parity 100% across en/es/fr/de/pt

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-29 19:57:12 -05:00

629 lines
33 KiB
JavaScript

// Portuguese translations (Brazilian-leaning vocab; pt-BR is the larger market).
// Reviewed for UI register (informal você). Native review recommended before
// publicizing as fully supported.
export default {
// Nav
'nav.displays': 'Telas',
'nav.content': 'Conteúdo',
'nav.playlists': 'Playlists',
'nav.layouts': 'Layouts',
'nav.widgets': 'Widgets',
'nav.schedule': 'Agenda',
'nav.walls': 'Paredes de vídeo',
'nav.reports': 'Relatórios',
'nav.kiosk': 'Quiosque',
'nav.designer': 'Designer',
'nav.activity': 'Atividade',
'nav.teams': 'Equipes',
'nav.help': 'Ajuda',
'nav.settings': 'Configurações',
'nav.subscription': 'Assinatura',
'nav.admin': 'Admin',
// Common
'common.save': 'Salvar',
'common.cancel': 'Cancelar',
'common.delete': 'Excluir',
'common.edit': 'Editar',
'common.done': 'Concluído',
'common.loading': 'Carregando...',
'common.connected': 'Conectado',
'common.disconnected': 'Desconectado',
'common.never': 'Nunca',
'common.just_now': 'Agora mesmo',
'common.minutes_ago': 'há {n}m',
'common.hours_ago': 'há {n}h',
'common.days_ago': 'há {n}d',
'common.unknown': 'Desconhecido',
// Auth
'auth.sign_in': 'Entrar',
'auth.sign_out': 'Sair',
'auth.create_account': 'Criar conta',
'auth.create_admin_account': 'Criar conta de administrador',
'auth.email': 'E-mail',
'auth.password': 'Senha',
'auth.name': 'Nome',
'auth.placeholder_email': 'voce@exemplo.com',
'auth.placeholder_password': '••••••••',
'auth.placeholder_name': 'Seu nome',
'auth.placeholder_register_password': 'No mínimo 6 caracteres',
'auth.subtitle_setup': 'Crie sua conta de administrador para começar',
'auth.subtitle_signin': 'Entre para gerenciar suas telas',
'auth.trial_notice': 'Contas novas ganham 14 dias de avaliação Pro grátis',
'auth.divider_or': 'OU',
'auth.signin_google': 'Entrar com o Google',
'auth.signin_microsoft': 'Entrar com a Microsoft',
'auth.back_to_signin': 'Voltar ao login',
'auth.support_access': 'Acesso de suporte',
'auth.support_token_placeholder': 'Cole o token de suporte',
'auth.support_authenticate': 'Autenticar com token de suporte',
'auth.terms': 'Termos de Serviço',
'auth.privacy': 'Política de Privacidade',
'auth.error_email_password_required': 'E-mail e senha obrigatórios',
'auth.error_password_min_6': 'A senha deve ter no mínimo 6 caracteres',
'auth.error_login_failed': 'Falha no login',
'auth.error_registration_failed': 'Falha no cadastro',
'auth.error_paste_support_token': 'Cole um token de suporte',
'auth.error_support_failed': 'Falha no login de suporte',
'auth.error_google_failed': 'Falha no login com Google',
'auth.error_microsoft_failed': 'Falha no login com Microsoft',
// Dashboard
'dashboard.title': 'Telas',
'dashboard.subtitle': 'Gerencie suas telas remotas',
'dashboard.help_tip': 'Seus dispositivos pareados. Verde = online, vermelho = offline. Clique em um para gerenciar a playlist, ver telemetria ou usar o controle remoto.',
'dashboard.add': 'Adicionar tela',
'dashboard.create_group': '+ Grupo',
'dashboard.search': 'Buscar telas...',
'dashboard.all_status': 'Todos os status',
'dashboard.online': 'Online',
'dashboard.offline': 'Offline',
'dashboard.awaiting_pairing': 'Aguardando pareamento',
'dashboard.no_preview': 'Pré-visualização indisponível',
'dashboard.total_displays': 'Total de telas',
'dashboard.ungrouped': 'Sem grupo',
'dashboard.no_displays': 'Nenhuma tela ainda',
'dashboard.no_displays_desc': 'Instale o aplicativo ScreenTinker na sua TV e pareie com o botão acima.',
'dashboard.failed_to_load': 'Falha ao carregar as telas',
'dashboard.unknown_playlist': 'Playlist desconhecida',
'dashboard.mixed_playlists': 'Playlists variadas',
'dashboard.playlist_label': 'Playlist: {name}',
'dashboard.devices_count_one': '{n} dispositivo',
'dashboard.devices_count_other': '{n} dispositivos',
'dashboard.online_count': '{n} online',
'dashboard.set_playlist_placeholder': 'Definir playlist...',
'dashboard.send_command_placeholder': 'Enviar comando...',
'dashboard.manage': 'Gerenciar',
'dashboard.manage_tooltip': 'Adicionar/remover dispositivos',
'dashboard.delete_group_tooltip': 'Excluir grupo',
'dashboard.no_devices_in_group': 'Nenhum dispositivo neste grupo. Clique em Gerenciar para adicionar.',
'dashboard.manage_group_subtitle': 'Marque os dispositivos para adicioná-los a este grupo',
'dashboard.draft_suffix': '(rascunho)',
'dashboard.cmd.screen_on': 'Ligar tela',
'dashboard.cmd.screen_off': 'Desligar tela',
'dashboard.cmd.restart_app': 'Reiniciar app',
'dashboard.cmd.check_update': 'Verificar atualização',
'dashboard.cmd.reboot': 'Reiniciar',
'dashboard.cmd.shutdown': 'Desligar',
'dashboard.prompt_group_name': 'Nome do grupo:',
'dashboard.error_pairing_code': 'Digite um código de pareamento válido de 6 dígitos',
'dashboard.confirm_add_to_group': '{name} já está em: {groups}\n\nAdicionar também a "{target}"?',
'dashboard.confirm_assign_playlist': 'Atribuir a playlist "{playlist}" a todos os dispositivos de "{group}"?',
'dashboard.confirm_destructive_command': '{cmd} todos os {n} dispositivos de "{group}"?\n\nIsso não pode ser desfeito.',
'dashboard.confirm_delete_group': 'Excluir este grupo? Os dispositivos não serão afetados.',
'dashboard.toast.display_paired': 'Tela pareada com sucesso!',
'dashboard.toast.group_created': 'Grupo criado',
'dashboard.toast.group_deleted': 'Grupo excluído',
'dashboard.toast.already_in_group': '{name} já está em {group}',
'dashboard.toast.moved_device': '{name} movido para {group}',
'dashboard.toast.removed_device_one': '{name} removido de 1 grupo',
'dashboard.toast.removed_device_other': '{name} removido de {n} grupos',
'dashboard.toast.playlist_assigned_one': 'Playlist atribuída a 1 dispositivo',
'dashboard.toast.playlist_assigned_other': 'Playlist atribuída a {n} dispositivos',
'dashboard.toast.command_sent': '{cmd} enviado para {sent}/{total} dispositivos',
'dashboard.toast.command_sent_with_offline': '{cmd} enviado para {sent}/{total} dispositivos ({offline} offline)',
// Content library
'content.title': 'Biblioteca de conteúdo',
'content.subtitle': 'Envie e gerencie seus arquivos de mídia',
'content.help_tip': 'Envie vídeos e imagens aqui. Selecione vários arquivos para envio em lote. Use URL remota para transmitir de fontes externas. Clique em uma miniatura para pré-visualizar.',
'content.drop': 'Solte os arquivos aqui ou clique para enviar',
'content.upload_hint': 'Suporta MP4, WebM, AVI, MKV, JPEG, PNG, GIF, WebP',
'content.upload_progress': 'Enviando...',
'content.upload_progress_named': 'Enviando {name}...',
'content.upload_progress_named_pct': 'Enviando {name}... {pct}%',
'content.remote_url': 'URL remota',
'content.remote_desc': 'Transmita direto de uma URL. Economiza largura de banda local.',
'content.remote_url_placeholder': 'https://exemplo.com/video.mp4',
'content.remote_name_placeholder': 'Nome de exibição (opcional)',
'content.remote_add_btn': 'Adicionar URL remota',
'content.youtube': 'YouTube',
'content.youtube_desc': 'Incorpore um vídeo do YouTube nas suas telas.',
'content.youtube_url_placeholder': 'https://youtube.com/watch?v=...',
'content.youtube_name_placeholder': 'Nome de exibição (opcional)',
'content.youtube_add_btn': 'Adicionar vídeo do YouTube',
'content.search_placeholder': 'Buscar conteúdo...',
'content.new_folder_btn': '+ Nova pasta',
'content.breadcrumb_root': 'Todo o conteúdo',
'content.rename_btn': 'Renomear',
'content.delete_folder_btn': 'Excluir pasta',
'content.prompt_folder_name': 'Nome da pasta:',
'content.prompt_rename_folder': 'Renomear pasta:',
'content.confirm_delete_folder': 'Excluir esta pasta? O conteúdo voltará para o nível raiz. Subpastas também serão excluídas.',
'content.empty_folder_title': 'Esta pasta está vazia',
'content.empty_folder_desc': 'Arraste o conteúdo para cá ou use a ação Mover.',
'content.no_content': 'Nenhum conteúdo ainda',
'content.no_content_desc': 'Envie vídeos e imagens para começar.',
'content.failed_to_load': 'Falha ao carregar o conteúdo',
'content.type_youtube': 'YouTube',
'content.type_remote': 'URL remota',
'content.type_remote_short': 'Remoto',
'content.type_video': 'Vídeo',
'content.type_image': 'Imagem',
'content.btn_edit': 'Editar',
'content.btn_delete': 'Excluir',
'content.btn_confirm_delete': 'Confirmar exclusão?',
'content.btn_deleting': 'Excluindo...',
'content.edit_modal_title': 'Editar conteúdo',
'content.label_filename': 'Nome do arquivo / Exibição',
'content.label_remote_url_field': 'URL remota',
'content.label_mime_type': 'Tipo MIME',
'content.label_folder': 'Pasta',
'content.label_replace_file': 'Substituir arquivo',
'content.replace_file_hint': 'Deixe vazio para manter o arquivo atual',
'content.folder_root_option': '— Raiz —',
'content.save_changes': 'Salvar alterações',
'content.mime.video_mp4': 'Vídeo (MP4)',
'content.mime.video_webm': 'Vídeo (WebM)',
'content.mime.image_jpeg': 'Imagem (JPEG)',
'content.mime.image_png': 'Imagem (PNG)',
'content.mime.image_gif': 'Imagem (GIF)',
'content.mime.image_webp': 'Imagem (WebP)',
'content.error_enter_url': 'Digite uma URL',
'content.error_enter_youtube_url': 'Digite uma URL do YouTube',
'content.error_update_failed': 'Falha ao atualizar',
'content.toast.remote_added': 'Conteúdo remoto adicionado',
'content.toast.youtube_added': 'Vídeo do YouTube adicionado',
'content.toast.deleted': 'Conteúdo excluído',
'content.toast.updated': 'Conteúdo atualizado',
'content.toast.uploaded_named': '{name} enviado com sucesso',
'content.toast.upload_failed_named': 'Falha ao enviar {name}: {error}',
'content.toast.folder_created_named': 'Pasta "{name}" criada',
'content.toast.folder_renamed': 'Pasta renomeada',
'content.toast.folder_deleted': 'Pasta excluída',
'content.toast.moved': 'Movido',
'content.toast.moved_to_root': 'Movido para a raiz',
// Device detail
'device.back': 'Voltar para Telas',
'device.owner_label': 'Proprietário: {owner}',
'device.rename': 'Renomear',
'device.screenshot_btn': 'Captura',
'device.remove': 'Remover',
'device.click_to_confirm': 'Clique novamente para confirmar',
'device.prompt_new_name': 'Digite o novo nome:',
'device.confirm_discard_draft': 'Descartar todas as alterações não publicadas e voltar à última versão publicada?',
'device.failed_load': 'Falha ao carregar o dispositivo',
'device.no_screenshot': 'Sem captura disponível. Clique em "Captura" para tirar uma.',
'device.no_content_assigned': 'Sem conteúdo atribuído',
'device.now_playing_id': 'Reproduzindo: {id}',
'device.playlist_count_one': '1 item na playlist',
'device.playlist_count_other': '{n} itens na playlist',
'device.tab.now_playing': 'Reproduzindo agora',
'device.tab.now_playing_tip': 'Captura ao vivo do que está sendo exibido neste dispositivo.',
'device.tab.playlist': 'Playlist',
'device.tab.playlist_tip': 'Conteúdo atribuído a este dispositivo. Arraste para reordenar. Adicione mídia, widgets ou páginas de quiosque.',
'device.tab.info': 'Informações do dispositivo',
'device.tab.info_tip': 'Telemetria de hardware, orientação, notas e controles do dispositivo.',
'device.tab.remote': 'Controle remoto',
'device.tab.remote_tip': 'Visualize a tela em tempo real e envie pressionamentos de tecla. Funciona no APK do Android e no player web.',
'device.draft.banner_title': 'Alterações não publicadas',
'device.draft.devices_showing_published': 'Os dispositivos ainda exibem a última versão publicada.',
'device.draft.never_published': 'Esta playlist nunca foi publicada. Os dispositivos não exibirão nada até você publicar.',
'device.draft.discard': 'Descartar',
'device.draft.publish': 'Publicar',
'device.draft.publishing': 'Publicando...',
'device.layout.label': 'Layout da tela',
'device.layout.fullscreen_default': 'Tela cheia (padrão)',
'device.layout.zones_count': '{name} ({n} zonas)',
'device.layout.template_zones_count': '[Modelo] {name} ({n} zonas)',
'device.layout.apply': 'Aplicar',
'device.playlist.label': 'Playlist',
'device.playlist.no_playlist': 'Sem playlist',
'device.playlist.copy_to_btn': 'Copiar para...',
'device.playlist.add_content_btn': 'Adicionar conteúdo',
'device.playlist.empty_title': 'Sem conteúdo atribuído',
'device.playlist.empty_desc': 'Adicione conteúdo da sua biblioteca à playlist desta tela.',
'device.playlist_picker.with_count': '{name} — {n} itens',
'device.playlist_picker.with_auto': '{name} (auto) — {n} itens',
'device.info.status': 'Status',
'device.info.ip_address': 'Endereço IP',
'device.info.battery': 'Bateria',
'device.info.storage': 'Armazenamento',
'device.info.size_free': '{size} livres',
'device.info.player_type': 'Tipo de player',
'device.info.web_player': 'Player web',
'device.info.wifi': 'Wi-Fi',
'device.info.uptime': 'Tempo ativo',
'device.info.android_version': 'Versão do Android',
'device.info.app_version': 'Versão do app',
'device.info.screen_resolution': 'Resolução',
'device.info.ram': 'RAM',
'device.info.cpu_usage': 'Uso de CPU',
'device.timeline.title': 'Linha do tempo (últimas 24 horas)',
'device.timeline.h24_ago': 'há 24h',
'device.timeline.now': 'Agora',
'device.timeline.online': 'Online',
'device.timeline.offline': 'Offline',
'device.timeline.no_data': 'Sem dados',
'device.timeline.uptime_pct_tracked': '{pct}% ativo ({n}min monitorados)',
'device.timeline.uptime_pct_no_data': '{pct}% ativo (sem dados)',
'device.form.orientation_label': 'Orientação / Rotação',
'device.form.orientation.landscape': 'Paisagem (0°)',
'device.form.orientation.portrait': 'Retrato (90° SH)',
'device.form.orientation.landscape_flipped': 'Paisagem invertida (180°)',
'device.form.orientation.portrait_flipped': 'Retrato invertido (270° SH)',
'device.form.default_content_label': 'Conteúdo padrão',
'device.form.default_content_none': 'Nenhum (mostrar "Aguardando...")',
'device.form.notes_label': 'Notas',
'device.form.notes_placeholder': 'Localização, detalhes de instalação, etc.',
'device.form.save_settings': 'Salvar configurações',
'device.ctl.reboot_device': 'Reiniciar dispositivo',
'device.ctl.screen_off': 'Desligar tela',
'device.ctl.screen_on': 'Ligar tela',
'device.ctl.launch_player': 'Iniciar player',
'device.ctl.force_update': 'Forçar atualização',
'device.ctl.shutdown': 'Desligar',
'device.remote.start_prompt': 'Clique em "Iniciar controle remoto" para começar',
'device.remote.start': 'Iniciar controle remoto',
'device.remote.stop': 'Parar controle remoto',
'device.remote.vol_up': 'Vol +',
'device.remote.vol_down': 'Vol -',
'device.remote.home': 'Início',
'device.remote.back': 'Voltar',
'device.remote.recents': 'Recentes',
'device.remote.power': 'Energia',
'device.remote.ok': 'OK',
'device.remote.settings': 'Configurações',
'device.remote.scrn_off': 'Tela off',
'device.remote.scrn_on': 'Tela on',
'device.remote.enable_system_view': 'Ativar visão do sistema',
'device.remote.system_view_tooltip': 'Solicita ao usuário do dispositivo permitir captura de tela cheia - habilita visualização remota da tela inicial, configurações e outros apps',
'device.remote.system_view_hint': 'Aprovação única necessária no dispositivo',
'device.remote.waiting_for_approval': 'Aguardando aprovação do dispositivo...',
'device.remote.system_view_enabled': 'Visão do sistema ativada',
'device.remote.unlocked_hint': 'Navegação e controles do sistema desbloqueados',
'device.pl_item.widget_with_type': 'Widget ({type})',
'device.pl_item.youtube': 'YouTube',
'device.pl_item.video': 'Vídeo',
'device.pl_item.image': 'Imagem',
'device.pl_item.zone_label': 'Zona: {id}',
'device.pl_item.no_zone': 'Sem zona',
'device.pl_item.mute': 'Silenciar',
'device.pl_item.unmute': 'Ativar áudio',
'device.pl_item.remove': 'Remover',
'device.copy.no_other_devices': 'Não há outros dispositivos para copiar',
'device.copy.prompt': 'Copiar playlist para qual dispositivo?\n\n{list}\n\nDigite o número:',
'device.copy.invalid_selection': 'Seleção inválida',
'device.copy.toast': '{n} itens copiados para {device}',
'device.assign.empty_all': 'Ainda não há conteúdo, widgets ou páginas de quiosque. Crie algo primeiro!',
'device.assign.modal_title': 'Adicionar à playlist',
'device.assign.zone_label': 'Zona',
'device.assign.zone_default': 'Padrão (tela cheia)',
'device.assign.duration_label': 'Duração (segundos, para imagens/widgets)',
'device.assign.tab.media': 'Mídia ({n})',
'device.assign.tab.widgets': 'Widgets ({n})',
'device.assign.tab.kiosk': 'Quiosque ({n})',
'device.assign.no_media': 'Nenhuma mídia enviada ainda',
'device.assign.no_widgets': 'Nenhum widget criado ainda.',
'device.assign.no_kiosk': 'Nenhuma página de quiosque ainda.',
'device.assign.create_one': 'Crie um',
'device.assign.add_selected': 'Adicionar selecionados',
'device.assign.select_first': 'Selecione algo primeiro',
'device.assign.kiosk_widget_name': 'Quiosque: {name}',
'device.toast.screenshot_requested': 'Captura solicitada',
'device.toast.renamed': 'Tela renomeada',
'device.toast.removing': 'Removendo...',
'device.toast.removed': 'Tela removida',
'device.toast.settings_saved': 'Configurações salvas',
'device.toast.published': 'Playlist publicada — dispositivos atualizados',
'device.toast.draft_discarded': 'Alterações do rascunho descartadas',
'device.toast.playlist_changed': 'Playlist alterada',
'device.toast.layout_applied': 'Layout aplicado',
'device.toast.switched_to_fullscreen': 'Alterado para tela cheia',
'device.toast.added_to_playlist': 'Adicionado à playlist',
'device.toast.unmuted': 'Áudio ativado',
'device.toast.muted': 'Silenciado',
'device.toast.zone_updated': 'Zona atualizada',
'device.toast.removed_from_playlist': 'Conteúdo removido da playlist',
'device.toast.playlist_reordered': 'Playlist reordenada',
'device.toast.reboot_sent': 'Comando de reinício enviado',
'device.toast.shutdown_sent': 'Comando de desligamento enviado',
'device.toast.screen_off_sent': 'Comando para desligar tela enviado',
'device.toast.screen_on_sent': 'Comando para ligar tela enviado',
'device.toast.launch_sent': 'Comando de início enviado',
'device.toast.update_triggered': 'Verificação de atualização disparada',
'device.toast.remote_started': 'Sessão de controle remoto iniciada',
// Settings
'settings.title': 'Configurações',
'settings.subtitle': 'Configuração do servidor e informações de instalação',
'settings.account': 'Conta',
'settings.save_profile': 'Salvar perfil',
'settings.change_password': 'Alterar senha',
'settings.password_min_8': 'Deve ter no mínimo 8 caracteres.',
'settings.current_password': 'Senha atual',
'settings.new_password': 'Nova senha',
'settings.confirm_new_password': 'Confirmar nova senha',
'settings.sso_note': 'Você entra via {provider}. Gerencie sua senha lá.',
'settings.license': 'Licença',
'settings.license_mit': 'Licença MIT - todos os recursos incluídos.',
'settings.platform_admin_link': 'As ferramentas de admin da plataforma estão na página',
'settings.platform_admin_page_suffix': '.',
'settings.user_management': 'Gestão de usuários',
'settings.loading_users': 'Carregando usuários...',
'settings.white_label': 'Marca branca / Branding',
'settings.white_label_desc': 'Personalize a aparência do painel e do player para seus clientes.',
'settings.brand_name': 'Nome da marca',
'settings.logo_url': 'URL do logotipo',
'settings.primary_color': 'Cor primária',
'settings.bg_color': 'Cor de fundo',
'settings.custom_domain': 'Domínio personalizado',
'settings.favicon_url': 'URL do favicon',
'settings.custom_css': 'CSS personalizado (opcional)',
'settings.hide_branding': 'Ocultar marca "ScreenTinker"',
'settings.save_branding': 'Salvar branding',
'settings.preview': 'Pré-visualizar',
'settings.white_label_enterprise_only': 'Branding personalizado disponível no plano Enterprise',
'settings.view_plans': 'Ver planos',
'settings.server_info': 'Informações do servidor',
'settings.server_url': 'URL do servidor',
'settings.api_endpoint': 'Endpoint da API',
'settings.server_url_hint': 'Use esta URL ao configurar o app Android',
'settings.setup_guide': 'Guia de instalação',
'settings.setup_step_1': 'Instale o APK do ScreenTinker na sua TV via sideloading',
'settings.setup_step_2_prefix': 'Abra o app e digite esta URL do servidor:',
'settings.setup_step_3': 'O app exibirá um código de pareamento de 6 dígitos',
'settings.setup_step_4': 'Clique em "Adicionar tela" no painel e digite o código',
'settings.setup_step_5': 'Envie conteúdo na Biblioteca de conteúdo',
'settings.setup_step_6': 'Atribua conteúdo à playlist da tela',
'settings.your_data': 'Seus dados',
'settings.your_data_desc': 'Exporte ou importe seus dispositivos, conteúdo, layouts, agendas e todas as configurações. Use para migrar entre nuvem e auto-hospedado.',
'settings.export_my_data': 'Exportar meus dados',
'settings.include_media_zip': 'Incluir arquivos de mídia (ZIP)',
'settings.import_data': 'Importar dados',
'settings.language': 'Idioma',
'settings.about': 'Sobre',
'settings.about_tagline': 'Sistema de gerenciamento de sinalização digital.',
'settings.third_party_licenses': 'Licenças de terceiros',
'settings.import.reading_file': 'Lendo arquivo...',
'settings.import.zip_detected': 'Exportação ZIP detectada: <strong>{name}</strong> ({size} MB)<br>Contém dados + arquivos de mídia.',
'settings.import.confirm': 'Confirmar importação',
'settings.import.invalid_file': 'Arquivo inválido. Deve ser JSON ou ZIP de exportação do ScreenTinker.',
'settings.import.summary_devices': '{n} dispositivos',
'settings.import.summary_content': '{n} itens de conteúdo',
'settings.import.summary_widgets': '{n} widgets',
'settings.import.summary_layouts': '{n} layouts',
'settings.import.summary_schedules': '{n} agendas',
'settings.import.summary_walls': '{n} paredes de vídeo',
'settings.import.summary_kiosk': '{n} páginas de quiosque',
'settings.import.found_summary': 'Encontrado: {summary}.<br>De: {email} (exportado {date})',
'settings.import.empty_export': 'exportação vazia',
'settings.import.uploading_zip': 'Enviando e importando... Pode demorar para arquivos grandes.',
'settings.import.importing': 'Importando...',
'settings.import.complete': 'Importação concluída: {imported}.',
'settings.import.pairing_codes_title': 'Códigos de pareamento:',
'settings.import.pairing_codes_hint': 'Digite estes códigos em cada dispositivo para revinculá-los. Atribuições e agendas serão preservadas.',
'settings.import.failed': 'Falha na importação',
'settings.import.failed_with_error': 'Falha na importação: {error}',
'settings.import.read_failed': 'Falha ao ler o arquivo: {error}',
'settings.toast.support_token_generated': 'Token de suporte gerado (válido {hours}h)',
'settings.toast.import_success': 'Dados importados com sucesso',
'settings.toast.name_required': 'O nome não pode ficar em branco',
'settings.toast.profile_saved': 'Perfil salvo',
'settings.toast.current_password_required': 'Digite sua senha atual',
'settings.toast.new_password_min_8': 'A nova senha deve ter no mínimo 8 caracteres',
'settings.toast.passwords_dont_match': 'As novas senhas não conferem',
'settings.toast.password_changed': 'Senha alterada',
'settings.toast.branding_saved': 'Branding salvo',
'settings.toast.preview_applied': 'Pré-visualização aplicada (recarregue para redefinir)',
'settings.toast.plan_updated': 'Plano atualizado',
'settings.toast.user_removed': 'Usuário removido',
'settings.user.col_user': 'Usuário',
'settings.user.col_auth': 'Auth',
'settings.user.col_role': 'Função',
'settings.user.col_plan': 'Plano',
'settings.user.col_actions': 'Ações',
'settings.user.remove': 'Remover',
'settings.user.you': 'Você',
'settings.user.confirm': 'Confirmar?',
'settings.user.count_one': '1 usuário registrado',
'settings.user.count_other': '{n} usuários registrados',
// Widgets
'widget.title': 'Widgets',
'widget.subtitle': 'Adicione conteúdo dinâmico aos seus layouts',
'widget.help_tip': 'Elementos de conteúdo dinâmico: relógios ao vivo, clima, tickers RSS, texto, páginas web e feeds sociais. Crie um widget e atribua à playlist de um dispositivo.',
'widget.new_widget': 'Novo widget',
'widget.configure': 'Configurar widget',
'widget.preview': 'Pré-visualizar',
'widget.preview_title': 'Pré-visualização',
'widget.close': 'Fechar',
'widget.edit_x': 'Editar {type}',
'widget.new_x': 'Novo {type}',
'widget.empty_title': 'Nenhum widget ainda',
'widget.empty_desc': 'Crie um widget para adicionar conteúdo dinâmico aos seus layouts.',
'widget.this_widget': 'este widget',
'widget.confirm_delete': 'Excluir "{name}"? Isso não pode ser desfeito.',
'widget.toast.saved': 'Widget salvo',
'widget.toast.deleted': 'Widget excluído',
'widget.toast.preview_failed': 'Falha na pré-visualização',
'widget.type.clock.name': 'Relógio',
'widget.type.clock.desc': 'Relógio digital com data',
'widget.type.weather.name': 'Clima',
'widget.type.weather.desc': 'Condições climáticas atuais',
'widget.type.rss.name': 'Ticker de notícias',
'widget.type.rss.desc': 'Feed RSS com rolagem',
'widget.type.text.name': 'Texto/HTML',
'widget.type.text.desc': 'Texto ou conteúdo HTML personalizado',
'widget.type.webpage.name': 'Página web',
'widget.type.webpage.desc': 'Incorporar uma página web',
'widget.type.social.name': 'Feed social',
'widget.type.social.desc': 'Feed de redes sociais',
'widget.type.directory_board.name': 'Diretório',
'widget.type.directory_board.desc': 'Diretório rolante de inquilinos/salas para lobbies',
'widget.field.name': 'Nome do widget',
'widget.field.format': 'Formato',
'widget.field.format_12h': '12 horas',
'widget.field.format_24h': '24 horas',
'widget.field.timezone': 'Fuso horário',
'widget.field.font_size': 'Tamanho da fonte',
'widget.field.font_size_px': 'Tamanho da fonte (px)',
'widget.field.color': 'Cor',
'widget.field.background': 'Fundo',
'widget.field.location': 'Local',
'widget.field.location_placeholder': 'Cidade, Estado',
'widget.field.units': 'Unidades',
'widget.field.units_imperial': 'Imperial (°F)',
'widget.field.units_metric': 'Métrico (°C)',
'widget.field.feed_url': 'URL do feed',
'widget.field.scroll_speed_seconds': 'Velocidade de rolagem (segundos)',
'widget.field.max_items': 'Máx. itens',
'widget.field.html_content': 'Conteúdo HTML',
'widget.field.css_optional': 'CSS (opcional)',
'widget.field.url': 'URL',
'widget.field.zoom_pct': 'Zoom (%)',
'widget.field.refresh_interval': 'Intervalo de atualização (segundos, 0 = nunca)',
'widget.field.platform': 'Plataforma',
'widget.field.platform_twitter': 'Twitter/X',
'widget.field.platform_instagram': 'Instagram',
'widget.field.query': 'Consulta',
'widget.field.query_placeholder': '@usuario ou #hashtag',
'widget.picker.default_title': 'Selecionar imagem',
'widget.picker.select_logo': 'Selecionar logotipo',
'widget.picker.select_bg_images': 'Selecionar imagens de fundo',
'widget.picker.search': 'Buscar imagens...',
'widget.picker.no_matches': 'Sem correspondências.',
'widget.picker.no_images': 'Sem imagens na biblioteca. Envie imagens primeiro pela Biblioteca de conteúdo.',
'widget.picker.selected_count': '{n} selecionadas',
'widget.dir.title_label': 'Título',
'widget.dir.title_placeholder': 'Armazém Lincoln',
'widget.dir.logo_label': 'Logotipo (opcional)',
'widget.dir.footer_text_label': 'Texto do rodapé',
'widget.dir.footer_placeholder': 'Consultas de locação: Contato...',
'widget.dir.bg_images_label': 'Imagens de fundo (opcional)',
'widget.dir.bg_images_hint': 'As imagens alternam a cada 15 segundos com 30% de opacidade. Adicione várias para rotação.',
'widget.dir.add_bg_image': '+ Adicionar imagem de fundo',
'widget.dir.theme': 'Tema',
'widget.dir.theme_dark': 'Escuro',
'widget.dir.theme_light': 'Claro',
'widget.dir.scroll_speed': 'Velocidade de rolagem',
'widget.dir.speed_slow': 'Lenta',
'widget.dir.speed_medium': 'Média',
'widget.dir.speed_fast': 'Rápida',
'widget.dir.columns': 'Colunas',
'widget.dir.columns_auto': 'Auto',
'widget.dir.categories': 'Categorias',
'widget.dir.add_category': '+ Adicionar categoria',
'widget.dir.add_entry': '+ Adicionar entrada',
'widget.dir.empty_categories': 'Adicione seu primeiro andar ou departamento para começar',
'widget.dir.no_entries': 'Sem entradas ainda',
'widget.dir.entry': 'entrada',
'widget.dir.entries': 'entradas',
'widget.dir.collapse': 'Recolher',
'widget.dir.expand': 'Expandir',
'widget.dir.move_up': 'Mover para cima',
'widget.dir.move_down': 'Mover para baixo',
'widget.dir.delete_category': 'Excluir categoria',
'widget.dir.delete_entry': 'Excluir entrada',
'widget.dir.unnamed': '(sem nome)',
'widget.dir.confirm_delete_category': 'Excluir a categoria "{name}" e todas as entradas?',
'widget.dir.category_name_placeholder': 'ex. Primeiro andar',
'widget.dir.entry_id_placeholder': '101',
'widget.dir.entry_name_placeholder': 'Nome do inquilino',
'widget.dir.entry_subtitle_placeholder': 'Detalhes (opcional)',
'widget.dir.available': 'Disponível',
'widget.dir.change': 'Alterar',
'widget.dir.choose_logo': 'Escolher logotipo',
'widget.dir.remove_logo': 'Remover',
'widget.dir.no_bg_images': 'Nenhuma imagem de fundo selecionada',
'widget.dir.remove_bg': 'Remover',
// Designer
'designer.title': 'Designer de conteúdo',
'designer.subtitle': 'Crie conteúdo dinâmico de sinalização',
'designer.help_tip': 'Crie sinalização personalizada com elementos ao vivo: relógios, clima, tickers RSS, contagens regressivas, códigos QR. Publique como widget ou exporte como PNG.',
'designer.load_design': 'Carregar design',
'designer.export_png': 'Exportar PNG',
'designer.publish': 'Publicar na biblioteca',
'designer.preview_hint': 'Clique em elementos para selecionar. Arraste para reposicionar. Pré-visualização atualiza em tempo real.',
'designer.add_element': 'Adicionar elemento',
'designer.background': 'Fundo',
'designer.bg_image': 'Imagem',
'designer.properties': 'Propriedades',
'designer.layers': 'Camadas',
'designer.no_elements': 'Sem elementos ainda',
'designer.save_design_file': 'Salvar arquivo de design',
'designer.qr_label': 'CÓDIGO QR',
'designer.loading_news': 'Carregando notícias...',
'designer.no_items': 'Sem itens',
'designer.feed_unavailable': 'Feed indisponível',
'designer.countdown_now': 'AGORA!',
'designer.widget_name': 'Design {date}',
'designer.el.text': 'Texto',
'designer.el.heading': 'Título',
'designer.el.image': 'Imagem',
'designer.el.video': 'Vídeo',
'designer.el.clock': 'Relógio',
'designer.el.date': 'Data',
'designer.el.weather': 'Clima',
'designer.el.ticker': 'Ticker',
'designer.el.shape': 'Forma',
'designer.el.qr': 'Código QR',
'designer.el.countdown': 'Contagem regressiva',
'designer.el.webpage': 'Página web',
'designer.bg.black': 'Preto',
'designer.bg.dark_blue': 'Azul escuro',
'designer.bg.dark_gradient': 'Gradiente escuro',
'designer.bg.blue_gradient': 'Gradiente azul',
'designer.bg.sunset': 'Pôr do sol',
'designer.bg.ocean': 'Oceano',
'designer.bg.forest': 'Floresta',
'designer.bg.dark_red': 'Vermelho escuro',
'designer.bg.white': 'Branco',
'designer.default.text': 'Seu texto aqui',
'designer.default.heading': 'TÍTULO',
'designer.default.coming_soon': 'Em breve',
'designer.prompt.video_url': 'URL do vídeo (MP4):',
'designer.prompt.weather_location': 'Cidade, Estado:',
'designer.prompt.rss_url': 'URL do feed RSS:',
'designer.prompt.qr_url': 'URL do código QR:',
'designer.prompt.countdown_date': 'Data alvo (AAAA-MM-DD):',
'designer.prompt.webpage_url': 'URL da página web:',
'designer.prop.text': 'Texto',
'designer.prop.size': 'Tamanho',
'designer.prop.font': 'Fonte',
'designer.prop.color': 'Cor',
'designer.prop.bold': 'Negrito',
'designer.prop.shadow': 'Sombra',
'designer.prop.format': 'Formato',
'designer.prop.show_seconds': 'Mostrar segundos',
'designer.prop.muted': 'Mudo',
'designer.prop.loop': 'Loop',
'designer.prop.opacity': 'Opacidade',
'designer.prop.shape': 'Forma',
'designer.prop.location': 'Local',
'designer.prop.feed_url': 'URL do feed',
'designer.prop.speed': 'Velocidade (segundos)',
'designer.prop.text_color': 'Cor do texto',
'designer.prop.bg_color': 'Cor de fundo',
'designer.prop.target_date': 'Data alvo',
'designer.prop.label': 'Rótulo',
'designer.toast.published': 'Publicado como widget! Atribua a uma zona de layout.',
'designer.toast.publish_failed': 'Falha ao publicar',
'designer.toast.export_failed': 'Falha ao exportar: {error}',
'designer.toast.loaded': 'Design carregado',
'designer.toast.invalid_file': 'Arquivo de design inválido',
};