+ }
+
+## Logins import report page
+
+about-logins-import-report-page-title = Relatório com o resumo da importação
diff --git a/l10n-pt-PT/browser/browser/aboutPocket.ftl b/l10n-pt-PT/browser/browser/aboutPocket.ftl
new file mode 100644
index 0000000000..1adb3dfbda
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutPocket.ftl
@@ -0,0 +1,77 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Pocket button panel strings for about:pocket-saved, about:pocket-signup, and about:pocket-home
+
+
+## about:pocket-saved panel
+
+# Placeholder text for tag input
+pocket-panel-saved-add-tags =
+ .placeholder = Adicionar etiquetas
+pocket-panel-saved-error-generic = Ocorreu um erro ao tentar guardar no { -pocket-brand-name }.
+pocket-panel-saved-error-tag-length = As etiquetas estão limitadas a 25 caracteres
+pocket-panel-saved-error-only-links = Só podem ser guardadas ligações
+pocket-panel-saved-error-not-saved = Página não guardada
+pocket-panel-saved-error-no-internet = Deve estar ligado à Internet para poder guardar no { -pocket-brand-name }. Por favor, ligue-se à Internet e tente novamente.
+pocket-panel-saved-error-remove = Ocorreu um erro ao tentar remover esta página.
+pocket-panel-saved-page-removed = Página removida
+pocket-panel-saved-page-saved = Guardada no { -pocket-brand-name }
+pocket-panel-saved-page-saved-b = Guardado no { -pocket-brand-name }!
+pocket-panel-saved-processing-remove = A remover página…
+pocket-panel-saved-removed = Página removida da minha lista
+pocket-panel-saved-removed-updated = Página removida da lista de Guardadas
+pocket-panel-saved-processing-tags = A adicionar etiquetas…
+pocket-panel-saved-remove-page = Remover página
+pocket-panel-saved-save-tags = Guardar
+pocket-panel-saved-saving-tags = A guardar…
+pocket-panel-saved-suggested-tags = Etiquetas sugeridas
+pocket-panel-saved-tags-saved = Etiquetas adicionadas
+pocket-panel-signup-view-list = Ver lista
+# This is displayed above a field where the user can add tags
+pocket-panel-signup-add-tags = Adicionar etiquetas:
+
+## about:pocket-signup panel
+
+pocket-panel-signup-already-have = Já é um utilizador do { -pocket-brand-name }?
+pocket-panel-signup-learn-more = Saber mais
+pocket-panel-signup-login = Iniciar sessão
+pocket-panel-signup-signup-email = Registar com email
+pocket-panel-signup-signup-cta = Registe-se no { -pocket-brand-name }. É gratuito.
+pocket-panel-signup-signup-firefox = Registar com o { -brand-product-name }
+pocket-panel-signup-tagline = Guardar artigos e vídeos do { -brand-product-name } para os ver no { -pocket-brand-name } em qualquer dispositivo, em qualquer altura.
+pocket-panel-signup-tagline-story-one = Clique no botão { -pocket-brand-name } para guardar qualquer artigo, vídeo ou página a partir { -brand-product-name }.
+pocket-panel-signup-tagline-story-two = Ver no { -pocket-brand-name } em qualquer dispositivo, a qualquer altura.
+pocket-panel-signup-cta-a-fix = O seu botão de guardar para a Internet.
+pocket-panel-signup-cta-b = Clique no botão do { -pocket-brand-name } para guardar artigos, vídeos e ligações. Veja a sua lista em qualquer dispositivo, em qualquer momento.
+pocket-panel-signup-cta-b-updated = Clique no botão do { -pocket-brand-name } para guardar artigos, vídeos e ligações. Consulte a sua lista de Guardadas em qualquer dispositivo, a qualquer momento.
+pocket-panel-signup-cta-b-short = Clique no botão do { -pocket-brand-name } para guardar artigos, vídeos e ligações.
+pocket-panel-signup-cta-c = Veja a sua lista em qualquer dispositivo, em qualquer momento.
+pocket-panel-signup-cta-c-updated = Consulte a sua lista de Guardadas em qualquer dispositivo, a qualquer momento.
+
+## about:pocket-home panel
+
+pocket-panel-home-my-list = A minha lista
+pocket-panel-home-welcome-back = Bem-vindo(a) de volta
+pocket-panel-home-paragraph = Pode utilizar o { -pocket-brand-name } para explorar e guardar páginas de Internet, artigos, vídeos, podcasts ou voltar ao que tem estado a ler.
+pocket-panel-home-explore-popular-topics = Explorar tópicos populares
+pocket-panel-home-discover-more = Descobrir mais
+pocket-panel-home-explore-more = Explorar
+pocket-panel-home-most-recent-saves = Aqui está o que mais recentemente guardou:
+pocket-panel-home-most-recent-saves-loading = A carregar as coisas que guardou recentemente…
+pocket-panel-home-new-user-cta = Clique no botão do { -pocket-brand-name } para guardar artigos, vídeos e ligações.
+pocket-panel-home-new-user-message = Veja o que mais recentemente guardou aqui.
+
+## Pocket panel header component
+
+pocket-panel-header-my-list = Ver a minha lista
+pocket-panel-header-my-saves = Ver a minha lista de Guardadas
+pocket-panel-header-sign-in = Iniciar sessão
+
+## Pocket panel buttons
+
+pocket-panel-button-show-all = Mostrar tudo
+pocket-panel-button-activate = Ativar o { -pocket-brand-name } no { -brand-product-name }
+pocket-panel-button-remove = Remover
diff --git a/l10n-pt-PT/browser/browser/aboutPolicies.ftl b/l10n-pt-PT/browser/browser/aboutPolicies.ftl
new file mode 100644
index 0000000000..e4ee80d137
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutPolicies.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+about-policies-title = Políticas empresariais
+
+# 'Active' is used to describe the policies that are currently active
+active-policies-tab = Ativas
+errors-tab = Erros
+documentation-tab = Documentação
+
+no-specified-policies-message = O serviço de políticas empresariais está ativo mas não existem políticas ativadas.
+inactive-message = O serviço de políticas empresariais está inativo.
+
+policy-name = Nome da política
+policy-value = Valor da política
+policy-errors = Erros de políticas
diff --git a/l10n-pt-PT/browser/browser/aboutPrivateBrowsing.ftl b/l10n-pt-PT/browser/browser/aboutPrivateBrowsing.ftl
new file mode 100644
index 0000000000..4d363bfa1e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutPrivateBrowsing.ftl
@@ -0,0 +1,66 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+privatebrowsingpage-open-private-window-label = Abrir uma janela privada
+ .accesskey = p
+about-private-browsing-search-placeholder = Pesquisar na Web
+about-private-browsing-info-title = Está numa janela privada
+about-private-browsing-search-btn =
+ .title = Pesquisar na Internet
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff =
+ .title = Pesquisar com { $engine } ou introduzir endereço
+about-private-browsing-handoff-no-engine =
+ .title = Pesquisar ou introduzir endereço
+# Variables
+# $engine (String): the name of the user's default search engine
+about-private-browsing-handoff-text = Pesquisar com { $engine } ou introduzir endereço
+about-private-browsing-handoff-text-no-engine = Pesquisar ou introduzir endereço
+about-private-browsing-not-private = Atualmente, não está numa janela privada.
+about-private-browsing-info-description-private-window = Janela privada: o { -brand-short-name } limpa o seu histórico de pesquisa e navegação quando fechar todas as janelas privadas. Isto não o torna anónimo.
+about-private-browsing-info-description-simplified = { -brand-short-name } limpa o seu histórico de pesquisa e navegação quando fechar todas as janelas privadas, mas isto não o torna anónimo.
+about-private-browsing-learn-more-link = Saber mais
+
+about-private-browsing-hide-activity = Esconder a sua atividade e localização, onde quer que navegue
+about-private-browsing-get-privacy = Obtenha proteções de privacidade onde quer que navegue
+about-private-browsing-hide-activity-1 = Oculte a atividade de navegação e de localização com a { -mozilla-vpn-brand-name }. Com um clique cria uma ligação segura, mesmo em redes sem fios públicas.
+about-private-browsing-prominent-cta = Mantenha a privacidade com a { -mozilla-vpn-brand-name }
+
+about-private-browsing-focus-promo-cta = Transferir o { -focus-brand-name }
+about-private-browsing-focus-promo-header = { -focus-brand-name }: Navegação privada em qualquer lugar
+about-private-browsing-focus-promo-text = A nossa app móvel dedicada a uma navegação privada limpa sempre o seu histórico e cookies.
+
+## The following strings will be used for experiments in Fx99 and Fx100
+
+about-private-browsing-focus-promo-header-b = Leve a navegação privada para o seu telemóvel
+about-private-browsing-focus-promo-text-b = Use o { -focus-brand-name } para as pesquisas privadas que não deseja que o seu navegador principal para dispositivos móveis veja.
+about-private-browsing-focus-promo-header-c = Privacidade do próximo nível em dispositivos móveis
+about-private-browsing-focus-promo-text-c = O { -focus-brand-name } limpa o seu histórico todas as vezes enquanto bloqueia anúncios e rastreadores.
+
+# This string is the title for the banner for search engine selection
+# in a private window.
+# Variables:
+# $engineName (String) - The engine name that will currently be used for the private window.
+about-private-browsing-search-banner-title = O { $engineName } é o seu motor de pesquisa predefinido nas 'Janelas Privadas'
+about-private-browsing-search-banner-description =
+ { PLATFORM() ->
+ [windows] Para selecionar um motor de pesquisa diferente, aceda às Opções
+ *[other] Para selecionar um motor de pesquisa diferente, aceda às Preferências
+ }
+about-private-browsing-search-banner-close-button =
+ .aria-label = Fechar
+
+about-private-browsing-promo-close-button =
+ .title = Fechar
+
+## Strings used in a “pin promotion” message, which prompts users to pin a private window
+
+about-private-browsing-pin-promo-header = Liberdade da navegação privada num clique
+about-private-browsing-pin-promo-link-text =
+ { PLATFORM() ->
+ [macos] Manter na Doca
+ *[other] Fixar na barra de tarefas
+ }
+about-private-browsing-pin-promo-title = Sem cookies ou histórico salvos, diretamente a partir do seu ambiente de trabalho. Navegue como se ninguém estivesse a ver.
diff --git a/l10n-pt-PT/browser/browser/aboutRestartRequired.ftl b/l10n-pt-PT/browser/browser/aboutRestartRequired.ftl
new file mode 100644
index 0000000000..13735a73eb
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutRestartRequired.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+restart-required-title = Reinício necessário
+restart-required-heading = Reiniciar para continuar a utilizar o { -brand-short-name }
+restart-required-intro = Começou uma atualização em segundo plano para o { -brand-short-name }. Terá de reiniciar para concluir a atualização.
+window-restoration-info = As suas janelas e separadores serão rapidamente restaurados, com exceção dos privados.
+
+restart-button-label = Reiniciar o { -brand-short-name }
diff --git a/l10n-pt-PT/browser/browser/aboutRobots.ftl b/l10n-pt-PT/browser/browser/aboutRobots.ftl
new file mode 100644
index 0000000000..8aa23ca3d0
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutRobots.ftl
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used in the about:robots page, which ties in with the
+### robots theme used in the Firefox 3 Beta 2/3 first run pages.
+### They're just meant to be fun and whimsical, with references to some geeky
+### but well-known robots in movies and books. Be creative with translations!
+
+# Nonsense line from the movie "The Day The Earth Stood Still". No translation needed.
+page-title = Gort! Klaatu barada nikto!
+# Movie: Logan's Run... Box (cyborg): "Welcome Humans! I am ready for you."
+error-title-text = Bem-vindos, humanos!
+# Movie: The Day The Earth Stood Still. Spoken by Klaatu.
+error-short-desc-text = Viemos visitar-lhe em paz e de boa vontade!
+# Various books by Isaac Asimov. http://en.wikipedia.org/wiki/Three_Laws_of_Robotics
+error-long-desc1 = Os robôs não podem ferir um ser humano ou, através de inação, permitir que um ser humano sofra algum mal.
+# Movie: Blade Runner. Batty: "I've seen things you people wouldn’t believe..."
+error-long-desc2 = Os robôs viram coisas que vocês não acreditariam.
+# Book: Hitchhiker’s Guide To The Galaxy. What the Sirius Cybernetics Corporation calls robots.
+error-long-desc3 = Os robôs são os seus amigos de plástico para você se divertir.
+# TV: Futurama. Bender's first line is "Bite my shiny metal ass."
+error-long-desc4 = Os robôs têm posteriores de metal brilhantes que não deverão ser mordidos.
+# TV: Battlestar Galactica (2004 series). From the opening text.
+error-trailer-desc-text = E eles têm um plano.
+# Book: Hitchhiker's Guide To The Galaxy. Arthur presses a button and it warns him.
+error-try-again = Tentar novamente
+ .label2 = Por favor, não volte a clicar neste botão.
diff --git a/l10n-pt-PT/browser/browser/aboutSessionRestore.ftl b/l10n-pt-PT/browser/browser/aboutSessionRestore.ftl
new file mode 100644
index 0000000000..f399bd86ad
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutSessionRestore.ftl
@@ -0,0 +1,51 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+restore-page-tab-title = Restaurar sessão
+
+# The title is intended to be apologetic and disarming, expressing dismay
+# and regret that we are unable to restore the session for the user
+restore-page-error-title = Lamentamos. Estamos a ter problemas para obter as suas páginas de volta.
+restore-page-problem-desc = Estamos a ter problemas para restaurar a sua última sessão de navegação. Selecione Restaurar sessão para tentar novamente.
+restore-page-try-this = Ainda não consegue restaurar a sua sessão? Por vezes, um separador pode estar a causar o problema. Veja os separadores anteriores, remova a marca de verificação dos separadores que não precisa de recuperar, e depois restaure.
+
+restore-page-hide-tabs = Ocultar separadores anteriores
+restore-page-show-tabs = Ver separadores anteriores
+
+# When tabs are distributed across multiple windows, this message is used as a
+# header above the group of tabs for each window.
+#
+# Variables:
+# $windowNumber: Progressive number associated to each window
+restore-page-window-label = Janela { $windowNumber }
+
+restore-page-restore-header =
+ .label = Restaurar
+
+restore-page-list-header =
+ .label = Janelas e separadores
+
+restore-page-try-again-button =
+ .label = Restaurar sessão
+ .accesskey = R
+
+restore-page-close-button =
+ .label = Iniciar nova sessão
+ .accesskey = n
+
+## The following strings are used in about:welcomeback
+
+welcome-back-tab-title = Sucesso!
+welcome-back-page-title = Sucesso!
+welcome-back-page-info = O { -brand-short-name } está pronto.
+
+welcome-back-restore-button =
+ .label = Vamos lá!
+ .accesskey = l
+
+welcome-back-restore-all-label = Restaurar todas as janelas e separadores
+welcome-back-restore-some-label = Restaurar apenas aqueles que quiser
+
+welcome-back-page-info-link = Os seus extras e personalizações foram removidos e as definições do seu navegador foram restauradas para as suas predefinições. Se isto não corrigiu o seu problema, saiba mais sobre o que pode fazer.
+
diff --git a/l10n-pt-PT/browser/browser/aboutTabCrashed.ftl b/l10n-pt-PT/browser/browser/aboutTabCrashed.ftl
new file mode 100644
index 0000000000..0c809bc66e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutTabCrashed.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+crashed-title = Relator de falhas de separador
+crashed-close-tab-button = Fechar separador
+crashed-restore-tab-button = Restaurar este separador
+crashed-restore-all-button = Restaurar todos os separadores que falharam
+crashed-header = Bolas! O seu separador acabou de falhar.
+crashed-offer-help = Nós podemos ajudar!
+crashed-single-offer-help-message = Escolha { crashed-restore-tab-button } para recarregar a página.
+crashed-multiple-offer-help-message = Escolha { crashed-restore-tab-button } ou { crashed-restore-all-button } para recarregar a/as página/páginas.
+crashed-request-help = Poderia ajudar-nos?
+crashed-request-help-message = Os relatórios de falha ajudam-nos a diagnosticar problemas e a tornar o { -brand-short-name } melhor.
+crashed-request-report-title = Relatar este separador
+crashed-send-report-2 = Enviar um relatório de falha automatizado para que possamos corrigir problemas como este
+crashed-comment =
+ .placeholder = Comentários opcionais (os comentários são publicamente visíveis)
+crashed-include-URL-2 = Incluir os endereços dos sites em que estava quando o { -brand-short-name } falhou
+crashed-report-sent = Relatório de falha já submetido; obrigado por ajudar a tornar o { -brand-short-name } melhor!
+crashed-request-auto-submit-title = Reportar separadores em segundo plano
+crashed-auto-submit-checkbox-2 = Atualizar preferências para submeter relatórios automaticamente quando o { -brand-short-name } falha
diff --git a/l10n-pt-PT/browser/browser/aboutUnloads.ftl b/l10n-pt-PT/browser/browser/aboutUnloads.ftl
new file mode 100644
index 0000000000..52e324f21c
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/aboutUnloads.ftl
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Strings used in about:unloads, allowing users to manage the "tab unloading"
+### feature.
+
+about-unloads-page-title = Suspensão de separadores
+about-unloads-intro =
+ O { -brand-short-name } tem uma nova funcionalidade que suspende separadores automaticamente
+ para impedir que a aplicação falhe devido à indisponibilidade de memória
+ quando existe pouca memória disponível. O próximo separador a ser suspenso
+ é selecionado com base em múltiplos atributos. Esta página mostra como
+ o { -brand-short-name } prioriza separadores e que separador será suspenso
+ quando a suspensão de separadores for ativada. Pode despoletar a suspensão
+ de separadores manualmente ativando o botão Suspender abaixo.
+
+# The link points to a Firefox documentation page, only available in English,
+# with title "Tab Unloading"
+about-unloads-learn-more =
+ Consulte Suspensão de separadores para saber mais sobre
+ a funcionalidade e esta página.
+
+about-unloads-last-updated = Última atualização: { DATETIME($date, year: "numeric", month: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric", hour12: "false") }
+about-unloads-button-unload = Suspender
+ .title = Suspender o separador com a máxima prioridade
+about-unloads-no-unloadable-tab = Não existem separadores suspensos.
+
+about-unloads-column-priority = Prioridade
+about-unloads-column-host = Hospedeiro
+about-unloads-column-last-accessed = Último acesso
+about-unloads-column-weight = Peso base
+ .title = Os separadores são ordenados com base neste valor que deriva a partir de alguns atributos especiais como a reprodução de som, WebRTC, entre outros.
+about-unloads-column-sortweight = Peso secundário
+ .title = Se disponível, os separadores são ordenados com base neste valor depois de ordenados pelo peso base. O valor deriva da utilização de memória do separador e do número de processos.
+about-unloads-column-memory = Memória
+ .title = Estimativa de utilização de memória do separador
+about-unloads-column-processes = Identificadores do processo
+ .title = Identificadores dos processos que disponibilizam os conteúdos do separador
+
+about-unloads-last-accessed = { DATETIME($date, year: "numeric", month: "numeric", day: "numeric", hour: "numeric", minute: "numeric", second: "numeric", hour12: "false") }
+about-unloads-memory-in-mb = { NUMBER($mem, maxFractionalUnits: 2) } MB
+about-unloads-memory-in-mb-tooltip =
+ .title = { NUMBER($mem, maxFractionalUnits: 2) } MB
diff --git a/l10n-pt-PT/browser/browser/accounts.ftl b/l10n-pt-PT/browser/browser/accounts.ftl
new file mode 100644
index 0000000000..804e41b5c1
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/accounts.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Used as the FxA toolbar menu item value when user has not
+# finished setting up an account.
+account-finish-account-setup = Terminar configuração da conta
+
+# Used as the FxA toolbar menu item title when the user
+# needs to reconnect their account.
+account-disconnected2 = Conta desassociada
+
+# Menu item that sends a tab to all synced devices.
+account-send-to-all-devices = Enviar para todos os dispositivos
+
+# Menu item that links to the Firefox Accounts settings for connected devices.
+account-manage-devices = Gerir dispositivos…
diff --git a/l10n-pt-PT/browser/browser/allTabsMenu.ftl b/l10n-pt-PT/browser/browser/allTabsMenu.ftl
new file mode 100644
index 0000000000..3a8800b1ca
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/allTabsMenu.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# "Search" is a verb, as in "Search through tabs".
+all-tabs-menu-search-tabs =
+ .label = Pesquisar separadores
+
+all-tabs-menu-new-user-context =
+ .label = Novo separador contentor
+
+all-tabs-menu-hidden-tabs =
+ .label = Separadores ocultados
+
+all-tabs-menu-manage-user-context =
+ .label = Gerir contentores
+ .accesskey = O
diff --git a/l10n-pt-PT/browser/browser/appExtensionFields.ftl b/l10n-pt-PT/browser/browser/appExtensionFields.ftl
new file mode 100644
index 0000000000..0510eb23bb
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/appExtensionFields.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Theme names and descriptions used in the Themes panel in about:addons
+
+# "Auto" is short for automatic. It can be localized without limitations.
+extension-default-theme-name-auto = Tema do sistema - automático
+extension-default-theme-description = Seguir a definição do sistema operativo para botões, menus e janelas.
+
+extension-firefox-compact-light-name = Claro
+extension-firefox-compact-light-description = Um tema com um esquema de cores claro.
+
+extension-firefox-compact-dark-name = Escuro
+extension-firefox-compact-dark-description = Um tema com um esquema de cores escuro.
+
+extension-firefox-alpenglow-name = Firefox Alpenglow
+extension-firefox-alpenglow-description = Utilizar uma aparência colorida para botões, menus e janelas.
+
+## Colorway Themes
+## These themes are variants of a colorway. The colorway is specified in the
+## $colorway-name variable.
+## Variables
+## $colorway-name (String) The name of a colorway (e.g. Graffiti, Elemental).
+
+extension-colorways-soft-name = { $colorway-name } - Suave
+extension-colorways-balanced-name = { $colorway-name } - Equilibrado
+# "Bold" is used in the sense of bravery or courage, not in the sense of
+# emphasized text.
+extension-colorways-bold-name = { $colorway-name } - Ousado
diff --git a/l10n-pt-PT/browser/browser/appMenuNotifications.ftl b/l10n-pt-PT/browser/browser/appMenuNotifications.ftl
new file mode 100644
index 0000000000..c33f788d15
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/appMenuNotifications.ftl
@@ -0,0 +1,66 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+appmenu-update-available2 =
+ .label = Atualização disponível
+ .buttonlabel = Transferir
+ .buttonaccesskey = T
+ .secondarybuttonlabel = Dispensar
+ .secondarybuttonaccesskey = D
+appmenu-update-available-message2 = Transfira a última versão disponível de { -brand-shorter-name }.
+appmenu-update-manual2 =
+ .label = Atualização disponível
+ .buttonlabel = Transferir
+ .buttonaccesskey = T
+ .secondarybuttonlabel = Dispensar
+ .secondarybuttonaccesskey = D
+appmenu-update-manual-message2 = Não foi possível atualizar o { -brand-shorter-name } automaticamente. Transfira a nova versão - não irá perder informações ou personalizações guardadas.
+appmenu-update-unsupported2 =
+ .label = Não é possível atualizar
+ .buttonlabel = Saber mais
+ .buttonaccesskey = b
+ .secondarybuttonlabel = Dispensar
+ .secondarybuttonaccesskey = D
+appmenu-update-unsupported-message2 = O seu sistema operativo não é compatível com a versão mais recente do { -brand-shorter-name }.
+appmenu-update-restart2 =
+ .label = Atualização disponível
+ .buttonlabel = Atualizar e reiniciar
+ .buttonaccesskey = A
+ .secondarybuttonlabel = Dispensar
+ .secondarybuttonaccesskey = D
+appmenu-update-restart-message2 = Obtenha a versão mais recente do { -brand-shorter-name }. Os separadores e janelas abertas serão restaurados.
+appmenu-update-other-instance =
+ .label = O { -brand-shorter-name } não consegue atualizar automaticamente para a nova versão.
+ .buttonlabel = Atualizar o { -brand-shorter-name } mesmo assim
+ .buttonaccesskey = u
+ .secondarybuttonlabel = Agora não
+ .secondarybuttonaccesskey = n
+appmenu-update-other-instance-message = Está disponível uma nova atualização para o { -brand-shorter-name }, mas a mesma não pode ser instalada porque está em execução uma outra cópia do { -brand-shorter-name }. Encerre a mesma para continuar a atualização ou opte por atualizar mesmo assim (a outra cópia pode não funcionar corretamente até que a reinicie).
+
+appmenu-addon-private-browsing-installed2 =
+ .buttonlabel = OK
+ .buttonaccesskey = O
+appmenu-addon-post-install-message3 = Faça a gestão das suas extensões e temas através do menu da aplicação.
+appmenu-addon-post-install-incognito-checkbox =
+ .label = Permitir que esta extensão seja executada em janelas privadas
+ .accesskey = a
+
+appmenu-new-tab-controlled-changes =
+ .label = A página novo separador foi alterada.
+ .buttonlabel = Manter alterações
+ .buttonaccesskey = M
+ .secondarybuttonlabel = Gerir novos separadores
+ .secondarybuttonaccesskey = G
+appmenu-homepage-controlled-changes =
+ .label = A sua página inicial foi alterada.
+ .buttonlabel = Manter alterações
+ .buttonaccesskey = M
+ .secondarybuttonlabel = Gerir página inicial
+ .secondarybuttonaccesskey = G
+appmenu-tab-hide-controlled =
+ .label = Aceda aos seus separadores ocultados
+ .buttonlabel = Manter separadores ocultados
+ .buttonaccesskey = M
+ .secondarybuttonlabel = Desativar extensão
+ .secondarybuttonaccesskey = D
diff --git a/l10n-pt-PT/browser/browser/appmenu.ftl b/l10n-pt-PT/browser/browser/appmenu.ftl
new file mode 100644
index 0000000000..e1b0242593
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/appmenu.ftl
@@ -0,0 +1,253 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## App Menu
+
+appmenuitem-banner-update-downloading =
+ .label = A transferir atualização do { -brand-shorter-name }
+appmenuitem-banner-update-available =
+ .label = Atualização disponível — transferir agora
+appmenuitem-banner-update-manual =
+ .label = Atualização disponível — transferir agora
+appmenuitem-banner-update-unsupported =
+ .label = Não foi possível atualizar — sistema incompatível
+appmenuitem-banner-update-restart =
+ .label = Atualização disponível — reiniciar agora
+appmenuitem-new-tab =
+ .label = Novo separador
+appmenuitem-new-window =
+ .label = Nova janela
+appmenuitem-new-private-window =
+ .label = Nova janela privada
+appmenuitem-history =
+ .label = Histórico
+appmenuitem-downloads =
+ .label = Transferências
+appmenuitem-passwords =
+ .label = Palavras-passe
+appmenuitem-addons-and-themes =
+ .label = Extras e temas
+appmenuitem-print =
+ .label = Imprimir…
+appmenuitem-find-in-page =
+ .label = Localizar na página…
+appmenuitem-zoom =
+ .value = Zoom
+appmenuitem-more-tools =
+ .label = Mais ferramentas
+appmenuitem-help =
+ .label = Ajuda
+appmenuitem-exit2 =
+ .label =
+ { PLATFORM() ->
+ [linux] Sair
+ *[other] Sair
+ }
+appmenu-menu-button-closed2 =
+ .tooltiptext = Abrir menu da aplicação
+ .label = { -brand-short-name }
+appmenu-menu-button-opened2 =
+ .tooltiptext = Fechar menu da aplicação
+ .label = { -brand-short-name }
+# Settings is now used to access the browser settings across all platforms,
+# instead of Options or Preferences.
+appmenuitem-settings =
+ .label = Definições
+
+## Zoom and Fullscreen Controls
+
+appmenuitem-zoom-enlarge =
+ .label = Ampliar
+appmenuitem-zoom-reduce =
+ .label = Reduzir
+appmenuitem-fullscreen =
+ .label = Ecrã completo
+
+## Firefox Account toolbar button and Sync panel in App menu.
+
+appmenu-remote-tabs-sign-into-sync =
+ .label = Iniciar sessão para sincronizar…
+appmenu-remote-tabs-turn-on-sync =
+ .label = Ativar a sincronização…
+# This is shown after the tabs list if we can display more tabs by clicking on the button
+appmenu-remote-tabs-showmore =
+ .label = Mostrar mais separadores
+ .tooltiptext = Mostrar mais separadores deste dispositivo
+# This is shown beneath the name of a device when that device has no open tabs
+appmenu-remote-tabs-notabs = Nenhum separador aberto
+# This is shown when Sync is configured but syncing tabs is disabled.
+appmenu-remote-tabs-tabsnotsyncing = Ative a sincronização de separadores para ver uma lista de separadores dos seus outros dispositivos.
+appmenu-remote-tabs-opensettings =
+ .label = Definições
+# This is shown when Sync is configured but this appears to be the only device attached to
+# the account. We also show links to download Firefox for android/ios.
+appmenu-remote-tabs-noclients = Pretende ver os seus separadores de outros dispositivos aqui?
+appmenu-remote-tabs-connectdevice =
+ .label = Ligar outro dispositivo
+appmenu-remote-tabs-welcome = Veja uma lista de separadores dos seus outros dispositivos.
+appmenu-remote-tabs-unverified = A sua conta necessita de ser verificada.
+appmenuitem-fxa-toolbar-sync-now2 = Sincronizar agora
+appmenuitem-fxa-sign-in = Iniciar sessão no { -brand-product-name }
+appmenuitem-fxa-manage-account = Gerir conta
+appmenu-fxa-header2 = { -fxaccount-brand-name }
+# Variables
+# $time (string) - Localized relative time since last sync (e.g. 1 second ago,
+# 3 hours ago, etc.)
+appmenu-fxa-last-sync = Última sincronização { $time }
+ .label = Última sincronização { $time }
+appmenu-fxa-sync-and-save-data2 = Sincronizar e guardar dados
+appmenu-fxa-signed-in-label = Iniciar sessão
+appmenu-fxa-setup-sync =
+ .label = Ativar a sincronização ...
+appmenuitem-save-page =
+ .label = Guardar página como…
+
+## What's New panel in App menu.
+
+whatsnew-panel-header = Novidades
+# Checkbox displayed at the bottom of the What's New panel, allowing users to
+# enable/disable What's New notifications.
+whatsnew-panel-footer-checkbox =
+ .label = Notificar sobre as novas funcionalidades
+ .accesskey = f
+
+## The Firefox Profiler – The popup is the UI to turn on the profiler, and record
+## performance profiles. To enable it go to profiler.firefox.com and click
+## "Enable Profiler Menu Button".
+
+profiler-popup-button-idle =
+ .label = Profiler
+ .tooltiptext = Grave um perfil de desempenho
+profiler-popup-button-recording =
+ .label = Profiler
+ .tooltiptext = O profiler está a gravar um perfil
+profiler-popup-button-capturing =
+ .label = Profiler
+ .tooltiptext = O profiler está a capturar um perfil
+profiler-popup-title =
+ .value = { -profiler-brand-name }
+profiler-popup-header-text = { -profiler-brand-name }
+profiler-popup-reveal-description-button =
+ .aria-label = Revelar mais informação
+profiler-popup-description-title =
+ .value = Gravar, analisar, partilhar
+profiler-popup-description = Colabore em problemas de desempenho publicando perfis para partilhar com a sua equipa.
+profiler-popup-learn-more-button =
+ .label = Saber mais
+profiler-popup-settings =
+ .value = Definições
+# This link takes the user to about:profiling, and is only visible with the Custom preset.
+profiler-popup-edit-settings-button =
+ .label = Editar definições…
+profiler-popup-recording-screen = A gravar…
+profiler-popup-start-recording-button =
+ .label = Iniciar gravação
+profiler-popup-discard-button =
+ .label = Descartar
+profiler-popup-capture-button =
+ .label = Capturar
+profiler-popup-start-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧1
+ *[other] Ctrl+Shift+1
+ }
+profiler-popup-capture-shortcut =
+ { PLATFORM() ->
+ [macos] ⌃⇧2
+ *[other] Ctrl+Shift+2
+ }
+
+## Profiler presets
+## They are shown in the popup's select box.
+
+
+# Presets and their l10n IDs are defined in the file
+# devtools/client/performance-new/popup/background.jsm.js
+# Please take care that the same values are also defined in devtools' perftools.ftl.
+
+profiler-popup-presets-web-developer-description = Predefinição recomendada para a maioria das depurações de aplicações web, com pouca sobrecarga.
+profiler-popup-presets-web-developer-label =
+ .label = Programador web
+profiler-popup-presets-firefox-description = Predefinição recomendada para perfilar o { -brand-shorter-name }.
+profiler-popup-presets-firefox-label =
+ .label = { -brand-shorter-name }
+profiler-popup-presets-graphics-description = Predefinição para investigar bugs gráficos no { -brand-shorter-name }.
+profiler-popup-presets-graphics-label =
+ .label = Gráficos
+profiler-popup-presets-media-description2 = Predefinição para investigar bugs de áudio e vídeo no { -brand-shorter-name }.
+profiler-popup-presets-media-label =
+ .label = Multimédia
+profiler-popup-presets-networking-description = Predefinição para investigar bugs de rede no { -brand-shorter-name }.
+profiler-popup-presets-networking-label =
+ .label = Rede
+profiler-popup-presets-power-description = Predefinição para investigar bugs relacionados com a utilização de energia no { -brand-shorter-name }, com baixa sobrecarga.
+# "Power" is used in the sense of energy (electricity used by the computer).
+profiler-popup-presets-power-label =
+ .label = Potência
+profiler-popup-presets-custom-label =
+ .label = Personalizada
+
+## History panel
+
+appmenu-manage-history =
+ .label = Gerir Histórico
+appmenu-reopen-all-tabs = Reabrir todos os separadores
+appmenu-reopen-all-windows = Reabrir todas as janelas
+appmenu-restore-session =
+ .label = Restaurar sessão anterior
+appmenu-clear-history =
+ .label = Limpar histórico recente…
+appmenu-recent-history-subheader = Histórico recente
+appmenu-recently-closed-tabs =
+ .label = Separadores fechados recentemente
+appmenu-recently-closed-windows =
+ .label = Janelas fechadas recentemente
+
+## Help panel
+
+appmenu-help-header =
+ .title = Ajuda do { -brand-shorter-name }
+appmenu-about =
+ .label = Acerca do { -brand-shorter-name }
+ .accesskey = A
+appmenu-get-help =
+ .label = Obter ajuda
+ .accesskey = j
+appmenu-help-more-troubleshooting-info =
+ .label = Mais informação para diagnóstico de problemas
+ .accesskey = g
+appmenu-help-report-site-issue =
+ .label = Reportar problema no site…
+appmenu-help-share-ideas =
+ .label = Partilhe ideias e comentários…
+ .accesskey = h
+
+## appmenu-help-enter-troubleshoot-mode and appmenu-help-exit-troubleshoot-mode
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-enter-troubleshoot-mode2 =
+ .label = Modo de diagnóstico…
+ .accesskey = M
+appmenu-help-exit-troubleshoot-mode =
+ .label = Desligar o modo de diagnóstico
+ .accesskey = m
+
+## appmenu-help-report-deceptive-site and appmenu-help-not-deceptive
+## are mutually exclusive, so it's possible to use the same accesskey for both.
+
+appmenu-help-report-deceptive-site =
+ .label = Reportar site decetivo…
+ .accesskey = d
+appmenu-help-not-deceptive =
+ .label = Este não é um site decetivo…
+ .accesskey = d
+
+## More Tools
+
+appmenu-customizetoolbar =
+ .label = Personalizar barra de ferramentas…
+appmenu-developer-tools-subheader = Ferramentas do navegador
+appmenu-developer-tools-extensions =
+ .label = Extensões para Programadores
diff --git a/l10n-pt-PT/browser/browser/branding/brandings.ftl b/l10n-pt-PT/browser/browser/branding/brandings.ftl
new file mode 100644
index 0000000000..85730e1e99
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/branding/brandings.ftl
@@ -0,0 +1,46 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The following feature names must be treated as a brand.
+##
+## They cannot be:
+## - Transliterated.
+## - Translated.
+##
+## Declension should be avoided where possible, leaving the original
+## brand unaltered in prominent UI positions.
+##
+## For further details, consult:
+## https://mozilla-l10n.github.io/styleguides/mozilla_general/#brands-copyright-and-trademark
+
+-facebook-container-brand-name = Facebook Container
+-lockwise-brand-name = Firefox Lockwise
+-lockwise-brand-short-name = Lockwise
+-monitor-brand-name = Firefox Monitor
+-monitor-brand-short-name = Monitor
+-pocket-brand-name = Pocket
+-send-brand-name = Firefox Send
+-screenshots-brand-name = Firefox Screenshots
+-mozilla-vpn-brand-name = Mozilla VPN
+-profiler-brand-name = Firefox Profiler
+-translations-brand-name = Firefox Translations
+-rally-brand-name = Mozilla Rally
+-rally-short-name = Rally
+-focus-brand-name = Firefox Focus
+
+# “Suggest” can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-suggest-brand-name = Firefox Suggest
+
+# ”Home" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefox-home-brand-name = Início do Firefox
+
+# View" can be localized, “Firefox” must be treated as a brand
+# and kept in English.
+-firefoxview-brand-name = Visto no Firefox
+
+-relay-brand-name = Firefox Relay
+-relay-brand-short-name = Relay
diff --git a/l10n-pt-PT/browser/browser/branding/sync-brand.ftl b/l10n-pt-PT/browser/browser/branding/sync-brand.ftl
new file mode 100644
index 0000000000..5dd266b0ee
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/branding/sync-brand.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# “Account” can be localized, “Firefox” must be treated as a brand,
+# and kept in English.
+-fxaccount-brand-name = Conta Firefox
diff --git a/l10n-pt-PT/browser/browser/browser.ftl b/l10n-pt-PT/browser/browser/browser.ftl
new file mode 100644
index 0000000000..57b0917014
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/browser.ftl
@@ -0,0 +1,967 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The main browser window's title
+
+# These are the default window titles everywhere except macOS. The first two
+# attributes are used when the web content opened has no title:
+#
+# default - "Mozilla Firefox"
+# private - "Mozilla Firefox (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } (Navegação privada)
+ .data-content-title-default = { $content-title } - { -brand-full-name }
+ .data-content-title-private = { $content-title } - { -brand-full-name } (Navegação privada)
+# These are the default window titles on macOS. The first two are for use when
+# there is no content title:
+#
+# "default" - "Mozilla Firefox"
+# "private" - "Mozilla Firefox — (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Do not use the brand name in the last two attributes, as we do on non-macOS.
+#
+# Also note the other subtle difference here: we use a `-` to separate the
+# brand name from `(Private Browsing)`, which does not happen on other OSes.
+#
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-mac =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } - (Navegação privada)
+ .data-content-title-default = { $content-title }
+ .data-content-title-private = { $content-title } - (Navegação privada)
+# These are the default window titles everywhere except macOS. The first two
+# attributes are used when the web content opened has no title:
+#
+# default - "Mozilla Firefox"
+# private - "Mozilla Firefox (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = Navegação Privada { -brand-full-name }
+ .data-content-title-default = { $content-title } — { -brand-full-name }
+ .data-content-title-private = { $content-title } — Navegação Privada { -brand-full-name }
+# These are the default window titles on macOS. The first two are for use when
+# there is no content title:
+#
+# "default" - "Mozilla Firefox"
+# "private" - "Mozilla Firefox — (Private Browsing)"
+#
+# The last two are for use when there *is* a content title.
+# Do not use the brand name in the last two attributes, as we do on non-macOS.
+#
+# Also note the other subtle difference here: we use a `-` to separate the
+# brand name from `(Private Browsing)`, which does not happen on other OSes.
+#
+# Variables:
+# $content-title (String): the title of the web content.
+browser-main-window-mac-window-titles =
+ .data-title-default = { -brand-full-name }
+ .data-title-private = { -brand-full-name } — Navegação Privada
+ .data-content-title-default = { $content-title }
+ .data-content-title-private = { $content-title } — Navegação Privada
+# This gets set as the initial title, and is overridden as soon as we start
+# updating the titlebar based on loaded tabs or private browsing state.
+# This should match the `data-title-default` attribute in both
+# `browser-main-window` and `browser-main-window-mac`.
+browser-main-window-title = { -brand-full-name }
+# The non-variable portion of this MUST match the translation of
+# "PRIVATE_BROWSING_SHORTCUT_TITLE" in custom.properties
+private-browsing-shortcut-text-2 = Navegação Privada do { -brand-shortcut-name }
+
+##
+
+urlbar-identity-button =
+ .aria-label = Ver informação do site
+
+## Tooltips for images appearing in the address bar
+
+urlbar-services-notification-anchor =
+ .tooltiptext = Abrir painel de mensagem de instalação
+urlbar-web-notification-anchor =
+ .tooltiptext = Alterar se pode ou não receber notificações do site
+urlbar-midi-notification-anchor =
+ .tooltiptext = Abrir painel MIDI
+urlbar-eme-notification-anchor =
+ .tooltiptext = Gerir utilização de software DRM
+urlbar-web-authn-anchor =
+ .tooltiptext = Abrir painel de Autenticação Web
+urlbar-canvas-notification-anchor =
+ .tooltiptext = Gerir permissão de extração da tela
+urlbar-web-rtc-share-microphone-notification-anchor =
+ .tooltiptext = Gerir a partilha do seu microfone com o site
+urlbar-default-notification-anchor =
+ .tooltiptext = Abrir painel de mensagem
+urlbar-geolocation-notification-anchor =
+ .tooltiptext = Abrir painel de solicitação de localização
+urlbar-xr-notification-anchor =
+ .tooltiptext = Abrir painel de permissão da realidade virtual
+urlbar-storage-access-anchor =
+ .tooltiptext = Abrir o painel de permissões da atividade de navegação
+urlbar-translate-notification-anchor =
+ .tooltiptext = Traduzir esta página
+urlbar-web-rtc-share-screen-notification-anchor =
+ .tooltiptext = Gerir a partilha das suas janelas ou ecrã com o site
+urlbar-indexed-db-notification-anchor =
+ .tooltiptext = Abrir painel de mensagem de armazenamento offline
+urlbar-password-notification-anchor =
+ .tooltiptext = Abrir painel de mensagem de guardar palavra-passe
+urlbar-translated-notification-anchor =
+ .tooltiptext = Gerir tradução de páginas
+urlbar-plugins-notification-anchor =
+ .tooltiptext = Gerir utilização de plugins
+urlbar-web-rtc-share-devices-notification-anchor =
+ .tooltiptext = Gerir a partilha da sua câmara e/ou microfone com o site
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+urlbar-web-rtc-share-speaker-notification-anchor =
+ .tooltiptext = Gerir a partilha de outros altifalantes com o site
+urlbar-autoplay-notification-anchor =
+ .tooltiptext = Abri painel de reprodução automática
+urlbar-persistent-storage-notification-anchor =
+ .tooltiptext = Armazenar dados em armazenamento persistente
+urlbar-addons-notification-anchor =
+ .tooltiptext = Abrir painel de mensagem de instalação de extra
+urlbar-tip-help-icon =
+ .title = Obter ajuda
+urlbar-search-tips-confirm = Ok, entendi
+urlbar-search-tips-confirm-short = Compreendi
+# Read out before Urlbar Tip text content so screenreader users know the
+# subsequent text is a tip offered by the browser. It should end in a colon or
+# localized equivalent.
+urlbar-tip-icon-description =
+ .alt = Dica:
+urlbar-result-menu-button =
+ .title = Abrir menu
+urlbar-result-menu-remove-from-history =
+ .label = Remover do histórico
+ .accesskey = R
+urlbar-result-menu-tip-get-help =
+ .label = Obter ajuda
+ .accesskey = a
+
+## Prompts users to use the Urlbar when they open a new tab or visit the
+## homepage of their default search engine.
+## Variables:
+## $engineName (String): The name of the user's default search engine. e.g. "Google" or "DuckDuckGo".
+
+urlbar-search-tips-onboard = Escreva menos, encontre mais: Pesquise no { $engineName } diretamente da sua barra de endereço.
+urlbar-search-tips-redirect-2 = Comece a sua pesquisa na barra de endereço para ver sugestões do { $engineName } e do seu histórico de navegação.
+# Make sure to match the name of the Search panel in settings.
+urlbar-search-tips-persist = A pesquisa ficou mais simples. Tente tornar a sua pesquisa mais específica aqui na barra de endereço. Para mostrar o endereço, visite a Pesquisa, nas definições.
+# Prompts users to use the Urlbar when they are typing in the domain of a
+# search engine, e.g. google.com or amazon.com.
+urlbar-tabtosearch-onboard = Selecione este atalho para encontrar mais rapidamente o que precisa.
+
+## Local search mode indicator labels in the urlbar
+
+urlbar-search-mode-bookmarks = Marcadores
+urlbar-search-mode-tabs = Separadores
+urlbar-search-mode-history = Histórico
+urlbar-search-mode-actions = Ações
+
+##
+
+urlbar-geolocation-blocked =
+ .tooltiptext = Bloqueou a informação de localização para este site.
+urlbar-xr-blocked =
+ .tooltiptext = Bloqueou o acesso ao dispositivo de realidade virtual para este website.
+urlbar-web-notifications-blocked =
+ .tooltiptext = Bloqueou as notificações para este site.
+urlbar-camera-blocked =
+ .tooltiptext = Bloqueou a sua câmara para este site.
+urlbar-microphone-blocked =
+ .tooltiptext = Bloqueou o seu microfone para este site.
+urlbar-screen-blocked =
+ .tooltiptext = Impediu este site de partilhar o seu ecrã.
+urlbar-persistent-storage-blocked =
+ .tooltiptext = Impediu o armazenamento de dados para este site.
+urlbar-popup-blocked =
+ .tooltiptext = Bloqueou pop-ups para este site.
+urlbar-autoplay-media-blocked =
+ .tooltiptext = Bloqueou a reprodução automática de multimédia para este site.
+urlbar-canvas-blocked =
+ .tooltiptext = Bloqueou a extração de dados do canvas para este site.
+urlbar-midi-blocked =
+ .tooltiptext = Bloqueou o acesso MIDI para este site.
+urlbar-install-blocked =
+ .tooltiptext = Bloqueou a instalação de extras para este site.
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+urlbar-star-edit-bookmark =
+ .tooltiptext = Editar este marcador ({ $shortcut })
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+urlbar-star-add-bookmark =
+ .tooltiptext = Adicionar esta página aos marcadores ({ $shortcut })
+
+## Page Action Context Menu
+
+page-action-manage-extension =
+ .label = Gerir extensão…
+page-action-remove-extension =
+ .label = Remover extensão
+page-action-manage-extension2 =
+ .label = Gerir Extensão…
+ .accesskey = E
+page-action-remove-extension2 =
+ .label = Remover Extensão
+ .accesskey = v
+
+## Auto-hide Context Menu
+
+full-screen-autohide =
+ .label = Ocultar barras de ferramentas
+ .accesskey = e
+full-screen-exit =
+ .label = Sair do modo de ecrã completo
+ .accesskey = e
+
+## Search Engine selection buttons (one-offs)
+
+# This string prompts the user to use the list of search shortcuts in
+# the Urlbar and searchbar.
+search-one-offs-with-title = Desta vez, pesquisar com:
+search-one-offs-change-settings-compact-button =
+ .tooltiptext = Alterar definições de pesquisa
+search-one-offs-context-open-new-tab =
+ .label = Pesquisar num novo separador
+ .accesskey = P
+search-one-offs-context-set-as-default =
+ .label = Definir como motor de pesquisa predefinido
+ .accesskey = d
+search-one-offs-context-set-as-default-private =
+ .label = Definir como motor de pesquisa predefinido para as janelas privadas
+ .accesskey = p
+# Search engine one-off buttons with an @alias shortcut/keyword.
+# Variables:
+# $engineName (String): The name of the engine.
+# $alias (String): The @alias shortcut/keyword.
+search-one-offs-engine-with-alias =
+ .tooltiptext = { $engineName } ({ $alias })
+# Shown when adding new engines from the address bar shortcut buttons or context
+# menu, or from the search bar shortcut buttons.
+# Variables:
+# $engineName (String): The name of the engine.
+search-one-offs-add-engine =
+ .label = Adicionar o “{ $engineName }”
+ .tooltiptext = Adicionar o motor de pesquisa do “{ $engineName }”
+ .aria-label = Adicionar o motor de pesquisa do “{ $engineName }”
+# When more than 5 engines are offered by a web page, they are grouped in a
+# submenu using this as its label.
+search-one-offs-add-engine-menu =
+ .label = Adicionar motor de pesquisa
+
+## Local search mode one-off buttons
+## Variables:
+## $restrict (String): The restriction token corresponding to the search mode.
+## Restriction tokens are special characters users can type in the urlbar to
+## restrict their searches to certain sources (e.g., "*" to search only
+## bookmarks).
+
+search-one-offs-bookmarks =
+ .tooltiptext = Marcadores ({ $restrict })
+search-one-offs-tabs =
+ .tooltiptext = Separadores ({ $restrict })
+search-one-offs-history =
+ .tooltiptext = Histórico ({ $restrict })
+search-one-offs-actions =
+ .tooltiptext = Ações ({ $restrict })
+
+## QuickActions are shown in the urlbar as the user types a matching string
+## The -cmd- strings are comma separated list of keywords that will match
+## the action.
+
+# Opens the about:addons page in the home / recommendations section
+quickactions-addons = Ver Extras
+quickactions-cmd-addons2 = extras
+# Opens the bookmarks library window
+quickactions-bookmarks2 = Gerir marcadores
+quickactions-cmd-bookmarks = marcadores
+# Opens a SUMO article explaining how to clear history
+quickactions-clearhistory = Limpar histórico
+quickactions-cmd-clearhistory = limpar histórico
+# Opens about:downloads page
+quickactions-downloads2 = Ver transferências
+quickactions-cmd-downloads = transferências
+# Opens about:addons page in the extensions section
+quickactions-extensions = Gerir extensões
+quickactions-cmd-extensions = extensões
+# Opens the devtools web inspector
+quickactions-inspector2 = Abrir Ferramentas de Programador
+quickactions-cmd-inspector = inspetor, devtools
+# Opens about:logins
+quickactions-logins2 = Gerir palavras-passe
+quickactions-cmd-logins = credenciais, palavras-passe
+# Opens about:addons page in the plugins section
+quickactions-plugins = Gerir plugins
+quickactions-cmd-plugins = plugins
+# Opens the print dialog
+quickactions-print2 = Imprimir página
+quickactions-cmd-print = imprimir
+# Opens a new private browsing window
+quickactions-private2 = Abrir janela privada
+quickactions-cmd-private = navegação privada
+# Opens a SUMO article explaining how to refresh
+quickactions-refresh = Renovar o { -brand-short-name }
+quickactions-cmd-refresh = atualizar
+# Restarts the browser
+quickactions-restart = Reiniciar o { -brand-short-name }
+quickactions-cmd-restart = reiniciar
+# Opens the screenshot tool
+quickactions-screenshot3 = Tirar uma captura de ecrã
+quickactions-cmd-screenshot = captura de ecrã
+# Opens about:preferences
+quickactions-settings2 = Gerir definições
+quickactions-cmd-settings = configurações, preferências, opções
+# Opens about:addons page in the themes section
+quickactions-themes = Gerir temas
+quickactions-cmd-themes = temas
+# Opens a SUMO article explaining how to update the browser
+quickactions-update = Atualizar o { -brand-short-name }
+quickactions-cmd-update = atualizar
+# Opens the view-source UI with current pages source
+quickactions-viewsource2 = Ver código-fonte da página
+quickactions-cmd-viewsource = ver fonte, fonte
+# Tooltip text for the help button shown in the result.
+quickactions-learn-more =
+ .title = Saber mais sobre as ações rápidas
+
+## Bookmark Panel
+
+bookmarks-add-bookmark = Adicionar marcador
+bookmarks-edit-bookmark = Editar marcador
+bookmark-panel-cancel =
+ .label = Cancelar
+ .accesskey = C
+# Variables:
+# $count (number): number of bookmarks that will be removed
+bookmark-panel-remove =
+ .label =
+ { $count ->
+ [one] Remover marcador
+ *[other] Remover { $count } marcadores
+ }
+ .accesskey = R
+bookmark-panel-show-editor-checkbox =
+ .label = Mostrar o editor ao guardar
+ .accesskey = s
+bookmark-panel-save-button =
+ .label = Guardar
+# Width of the bookmark panel.
+# Should be large enough to fully display the Done and
+# Cancel/Remove Bookmark buttons.
+bookmark-panel =
+ .style = min-width: 23em
+
+## Identity Panel
+
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-site-information = Informação de site para { $host }
+# Variables
+# $host (String): the hostname of the site that is being displayed.
+identity-header-security-with-host =
+ .title = Segurança da ligação para { $host }
+identity-connection-not-secure = Ligação insegura
+identity-connection-secure = Ligação segura
+identity-connection-failure = Falha de ligação
+identity-connection-internal = Esta é uma página segura do { -brand-short-name }.
+identity-connection-file = Esta página está armazenada no seu computador.
+identity-extension-page = Esta página está carregada a partir de uma extensão.
+identity-active-blocked = O { -brand-short-name } bloqueou partes desta página que não são seguras.
+identity-custom-root = Ligação verificada por um emissor de certificados que não é reconhecido pela Mozilla.
+identity-passive-loaded = Partes desta página não são seguras (tais como imagens).
+identity-active-loaded = Desativou a proteção nesta página.
+identity-weak-encryption = Esta página utiliza encriptação fraca.
+identity-insecure-login-forms = Credenciais introduzidas nesta página podem ser comprometidas.
+identity-https-only-connection-upgraded = (atualizado para HTTPS)
+identity-https-only-label = Modo apenas HTTPS
+identity-https-only-dropdown-on =
+ .label = Ligado
+identity-https-only-dropdown-off =
+ .label = Desligado
+identity-https-only-dropdown-off-temporarily =
+ .label = Temporariamente desligado
+identity-https-only-info-turn-on2 = Ative o modo Apenas HTTPS para este site se quiser que o { -brand-short-name } atualize para uma ligação segura sempre que for possível.
+identity-https-only-info-turn-off2 = Se o site parecer estragado, pode querer desativar o modo Apenas HTTPS para este site para recarregar utilizando o HTTP não-seguro.
+identity-https-only-info-no-upgrade = Não foi possível atualizar a ligação de HTTP.
+identity-permissions-storage-access-header = Cookies inter-sites
+identity-permissions-storage-access-hint = Estas entidades podem utilizar cookies inter-sites e dados do site enquanto estiver neste site.
+identity-permissions-storage-access-learn-more = Saber mais
+identity-permissions-reload-hint = Poderá ter de recarregar a página para as alterações se aplicarem.
+identity-clear-site-data =
+ .label = Limpar cookies e dados de sites…
+identity-connection-not-secure-security-view = A sua ligação a este site não é segura.
+identity-connection-verified = Está ligado(a) de forma segura a este site.
+identity-ev-owner-label = Certificado emitido para:
+identity-description-custom-root = A Mozilla não reconhece este emissor de certificados. Este pode ter sido adicionado a partir do seu sistema operativo ou por um administrador.
+identity-remove-cert-exception =
+ .label = Remover exceção
+ .accesskey = R
+identity-description-insecure = A sua ligação a este site não é privada. A informação que submeter pode ser vista por outros (tais como palavras-passe, mensagens, cartões de crédito, entre outros).
+identity-description-insecure-login-forms = As credenciais que introduzir nesta página podem não ser seguras e poderão ser comprometidas.
+identity-description-weak-cipher-intro = A sua ligação a este site utiliza uma encriptação fraca e não é privada.
+identity-description-weak-cipher-risk = Outras pessoas podem ver a sua informação ou modificar o comportamento do site.
+identity-description-active-blocked = O { -brand-short-name } bloqueou partes desta página que não são seguras.
+identity-description-passive-loaded = A sua ligação não é privada e a informação que partilha com o site pode ser vista por outros.
+identity-description-passive-loaded-insecure = Este site contém conteúdo que não é seguro (tais como imagens).
+identity-description-passive-loaded-mixed = Embora o { -brand-short-name } tenha bloqueado algum conteúdo, ainda há conteúdo na página que não é seguro (tal como imagens).
+identity-description-active-loaded = Este site contém conteúdo que não é seguro (tal como scripts) e a sua ligação ao mesmo não é privada.
+identity-description-active-loaded-insecure = A informação que partilhar com este site pode ser vista por outros (tal como palavras-passe, mensagens, cartões de crédito, etc.).
+identity-learn-more =
+ .value = Saber mais
+identity-disable-mixed-content-blocking =
+ .label = Desativar proteção por agora
+ .accesskey = D
+identity-enable-mixed-content-blocking =
+ .label = Ativar proteção
+ .accesskey = e
+identity-more-info-link-text =
+ .label = Mais informação
+
+## Window controls
+
+browser-window-minimize-button =
+ .tooltiptext = Minimizar
+browser-window-maximize-button =
+ .tooltiptext = Maximizar
+browser-window-restore-down-button =
+ .tooltiptext = Restaurar para baixo
+browser-window-close-button =
+ .tooltiptext = Fechar
+
+## Tab actions
+
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-playing2 = A REPRODUZIR
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-muted2 = SILENCIADO
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-blocked = REPRODUÇÃO AUTOMÁTICA BLOQUEADA
+# This label should be written in all capital letters if your locale supports them.
+browser-tab-audio-pip = VÍDEO EM JANELA FLUTUANTE
+
+## These labels should be written in all capital letters if your locale supports them.
+## Variables:
+## $count (number): number of affected tabs
+
+browser-tab-mute =
+ { $count ->
+ [1] SILENCIAR SEPARADOR
+ [one] SILENCIAR SEPARADOR
+ *[other] SILENCIAR { $count } SEPARADORES
+ }
+browser-tab-unmute =
+ { $count ->
+ [1] REPOR SOM NO SEPARADOR
+ [one] REPOR SOM NO SEPARADOR
+ *[other] REPOR SOM EM { $count } SEPARADORES
+ }
+browser-tab-unblock =
+ { $count ->
+ [1] REPRODUZIR SEPARADOR
+ [one] REPRODUZIR SEPARADOR
+ *[other] REPRODUZIR { $count } SEPARADORES
+ }
+
+## Bookmarks toolbar items
+
+browser-import-button2 =
+ .label = Importar marcadores…
+ .tooltiptext = Importar marcadores de outro navegador para o { -brand-short-name }.
+bookmarks-toolbar-empty-message = Para um acesso rápido, coloque os seus marcadores aqui, na barra de ferramentas de marcadores. Gerir marcadores…
+
+## WebRTC Pop-up notifications
+
+popup-select-camera-device =
+ .value = Câmara:
+ .accesskey = C
+popup-select-camera-icon =
+ .tooltiptext = Câmara
+popup-select-microphone-device =
+ .value = Microfone:
+ .accesskey = M
+popup-select-microphone-icon =
+ .tooltiptext = Microfone
+popup-select-speaker-icon =
+ .tooltiptext = Colunas
+popup-select-window-or-screen =
+ .label = Janela ou ecrã:
+ .accesskey = J
+popup-all-windows-shared = Serão partilhadas todas as janelas visíveis no seu ecrã.
+popup-screen-sharing-block =
+ .label = Bloquear
+ .accesskey = B
+popup-screen-sharing-always-block =
+ .label = Bloquear sempre
+ .accesskey = m
+popup-mute-notifications-checkbox = Silenciar notificações de sites durante a partilha
+
+## WebRTC window or screen share tab switch warning
+
+sharing-warning-window = Está a partilhar o { -brand-short-name }. Outras pessoas podem ver quando muda para um novo separador.
+sharing-warning-screen = Está a partilhar a totalidade do seu ecrã. Outras pessoas podem ver quando muda para um novo separador.
+sharing-warning-proceed-to-tab =
+ .label = Continuar para o separador
+sharing-warning-disable-for-session =
+ .label = Desativar a proteção da partilha para esta sessão
+
+## DevTools F12 popup
+
+enable-devtools-popup-description = Para utilizar o atalho F12, abra primeiro as DevTools via menu de Ferramentas de programação.
+enable-devtools-popup-description2 = Para utilizar o atalho F12, comece por abrir as ferramentas de desenvolvimento através do menu de Ferramentas do navegador.
+
+## URL Bar
+
+# This placeholder is used when not in search mode and the user's default search
+# engine is unknown.
+urlbar-placeholder =
+ .placeholder = Pesquisar ou introduzir um endereço
+# This placeholder is used in search mode with search engines that search the
+# entire web.
+# Variables
+# $name (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-placeholder-search-mode-web-2 =
+ .placeholder = Pesquisar na Internet
+ .aria-label = Procurar com o { $name }
+# This placeholder is used in search mode with search engines that search a
+# specific site (e.g., Amazon).
+# Variables
+# $name (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-placeholder-search-mode-other-engine =
+ .placeholder = Introduza os termos de pesquisa
+ .aria-label = Procurar em { $name }
+# This placeholder is used when searching bookmarks.
+urlbar-placeholder-search-mode-other-bookmarks =
+ .placeholder = Introduza os termos de pesquisa
+ .aria-label = Procurar nos marcadores
+# This placeholder is used when searching history.
+urlbar-placeholder-search-mode-other-history =
+ .placeholder = Introduza os termos de pesquisa
+ .aria-label = Procurar no histórico
+# This placeholder is used when searching open tabs.
+urlbar-placeholder-search-mode-other-tabs =
+ .placeholder = Introduza os termos de pesquisa
+ .aria-label = Procurar nos separadores
+# This placeholder is used when searching quick actions.
+urlbar-placeholder-search-mode-other-actions =
+ .placeholder = Introduza os termos da pesquisa
+ .aria-label = Ações de pesquisa
+# Variables
+# $name (String): the name of the user's default search engine
+urlbar-placeholder-with-name =
+ .placeholder = Pesquisar com { $name } ou introduzir endereço
+# Variables
+# $component (String): the name of the component which forces remote control.
+# Example: "DevTools", "Marionette", "RemoteAgent".
+urlbar-remote-control-notification-anchor2 =
+ .tooltiptext = O navegador está sob controlo remoto (motivo: { $component })
+urlbar-permissions-granted =
+ .tooltiptext = Concedeu permissões adicionais a este site.
+urlbar-switch-to-tab =
+ .value = Mudar para o separador:
+# Used to indicate that a selected autocomplete entry is provided by an extension.
+urlbar-extension =
+ .value = Extensão:
+urlbar-go-button =
+ .tooltiptext = Ir para o endereço da barra de localização
+urlbar-page-action-button =
+ .tooltiptext = Ações da página
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+
+# Used when the private browsing engine differs from the default engine.
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-in-private-w-engine = Procurar com { $engine } numa Janela privada
+# Used when the private browsing engine is the same as the default engine.
+urlbar-result-action-search-in-private = Pesquisar numa janela privada
+# The "with" format was chosen because the search engine name can end with
+# "Search", and we would like to avoid strings like "Search MSN Search".
+# Variables
+# $engine (String): the name of a search engine
+urlbar-result-action-search-w-engine = Pesquisar com { $engine }
+urlbar-result-action-sponsored = Patrocinado
+urlbar-result-action-switch-tab = Mudar para o separador
+urlbar-result-action-visit = Visitar
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-before-tabtosearch-web = Pressione Tab para pesquisar com o { $engine }
+# Directs a user to press the Tab key to perform a search with the specified
+# engine.
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-before-tabtosearch-other = Pressione Tab para pesquisar no { $engine }
+# Variables
+# $engine (String): the name of a search engine that searches the entire Web
+# (e.g. Google).
+urlbar-result-action-tabtosearch-web = Pesquisar com o { $engine } diretamente da barra de endereço
+# Variables
+# $engine (String): the name of a search engine that searches a specific site
+# (e.g. Amazon).
+urlbar-result-action-tabtosearch-other-engine = Pesquisar o { $engine } diretamente da barra de endereço
+# Action text for copying to clipboard.
+urlbar-result-action-copy-to-clipboard = Copiar
+# Shows the result of a formula expression being calculated, the last = sign will be shown
+# as part of the result (e.g. "= 2").
+# Variables
+# $result (String): the string representation for a formula result
+urlbar-result-action-calculator-result = = { $result }
+
+## Action text shown in urlbar results, usually appended after the search
+## string or the url, like "result value - action text".
+## In these actions "Search" is a verb, followed by where the search is performed.
+
+urlbar-result-action-search-bookmarks = Pesquisar marcadores
+urlbar-result-action-search-history = Pesquisar histórico
+urlbar-result-action-search-tabs = Pesquisar separadores
+urlbar-result-action-search-actions = Ações de Pesquisa
+
+## Labels shown above groups of urlbar results
+
+# A label shown above the "Firefox Suggest" (bookmarks/history) group in the
+# urlbar results.
+urlbar-group-firefox-suggest =
+ .label = { -firefox-suggest-brand-name }
+# A label shown above the search suggestions group in the urlbar results. It
+# should use sentence case.
+# Variables
+# $engine (String): the name of the search engine providing the suggestions
+urlbar-group-search-suggestions =
+ .label = Sugestões { $engine }
+# A label shown above Quick Actions in the urlbar results.
+urlbar-group-quickactions =
+ .label = Ações rápidas
+
+## Reader View toolbar buttons
+
+# This should match menu-view-enter-readerview in menubar.ftl
+reader-view-enter-button =
+ .aria-label = Entrar na vista de leitura
+# This should match menu-view-close-readerview in menubar.ftl
+reader-view-close-button =
+ .aria-label = Fechar vista de leitura
+
+## Full Screen and Pointer Lock UI
+
+# Please ensure that the domain stays in the `` markup.
+# Variables
+# $domain (String): the domain that is full screen, e.g. "mozilla.org"
+fullscreen-warning-domain = { $domain } está em ecrã completo
+fullscreen-warning-no-domain = Este documento está no modo de ecrã completo
+fullscreen-exit-button = Sair de ecrã completo (Esc)
+# "esc" is lowercase on mac keyboards, but uppercase elsewhere.
+fullscreen-exit-mac-button = Sair de ecrã completo (Esc)
+# Please ensure that the domain stays in the `` markup.
+# Variables
+# $domain (String): the domain that is using pointer-lock, e.g. "mozilla.org"
+pointerlock-warning-domain = { $domain } tem controlo do seu apontador. Pressione Esc para retomar o controlo.
+pointerlock-warning-no-domain = Este documento tem controlo do seu apontador. Pressione Esc para retomar o controlo.
+
+## Subframe crash notification
+
+crashed-subframe-message = Uma parte desta página falhou. Para tornar o problema conhecido e ajudar a que o mesmo seja resolvido mais rapidamente no { -brand-product-name }, por favor submeta um relatório.
+# The string for crashed-subframe-title.title should match crashed-subframe-message,
+# but without any markup.
+crashed-subframe-title =
+ .title = Uma parte desta página falhou. Para tornar o problema conhecido e ajudar a que o mesmo seja resolvido mais rapidamente no { -brand-product-name }, por favor submeta um relatório.
+crashed-subframe-learnmore-link =
+ .value = Saber mais
+crashed-subframe-submit =
+ .label = Submeter relatório
+ .accesskey = S
+
+## Bookmarks panels, menus and toolbar
+
+bookmarks-manage-bookmarks =
+ .label = Gerir marcadores
+bookmarks-recent-bookmarks-panel-subheader = Marcadores recentes
+bookmarks-toolbar-chevron =
+ .tooltiptext = Mostrar mais marcadores
+bookmarks-sidebar-content =
+ .aria-label = Marcadores
+bookmarks-menu-button =
+ .label = Menu de marcadores
+bookmarks-other-bookmarks-menu =
+ .label = Outros marcadores
+bookmarks-mobile-bookmarks-menu =
+ .label = Marcadores de dispositivo móvel
+bookmarks-tools-sidebar-visibility =
+ .label =
+ { $isVisible ->
+ [true] Ocultar barra lateral de marcadores
+ *[other] Ver barra lateral de marcadores
+ }
+bookmarks-tools-toolbar-visibility-menuitem =
+ .label =
+ { $isVisible ->
+ [true] Ocultar barra de ferramentas de marcadores
+ *[other] Ver barra de ferramentas de marcadores
+ }
+bookmarks-tools-toolbar-visibility-panel =
+ .label =
+ { $isVisible ->
+ [true] Ocultar barra de ferramentas de marcadores
+ *[other] Mostrar barra de ferramentas de marcadores
+ }
+bookmarks-tools-menu-button-visibility =
+ .label =
+ { $isVisible ->
+ [true] Remover menu de marcadores da barra de ferramentas
+ *[other] Adicionar menu de marcadores à barra de ferramentas
+ }
+bookmarks-search =
+ .label = Pesquisar marcadores
+bookmarks-tools =
+ .label = Ferramentas de marcadores
+bookmarks-bookmark-edit-panel =
+ .label = Editar este marcador
+bookmarks-subview-edit-bookmark =
+ .label = Editar este marcador…
+# The aria-label is a spoken label that should not include the word "toolbar" or
+# such, because screen readers already know that this container is a toolbar.
+# This avoids double-speaking.
+bookmarks-toolbar =
+ .toolbarname = Barra de ferramentas de marcadores
+ .accesskey = B
+ .aria-label = Marcadores
+bookmarks-toolbar-menu =
+ .label = Barra de ferramentas de marcadores
+bookmarks-toolbar-placeholder =
+ .title = Itens da barra de ferramentas marcadores
+bookmarks-toolbar-placeholder-button =
+ .label = Itens da barra de ferramentas marcadores
+# "Bookmark" is a verb, as in "Add current tab to bookmarks".
+bookmarks-current-tab =
+ .label = Adicionar separador aos marcadores
+# "Bookmark" is a verb, as in "Add current tab to bookmarks".
+bookmarks-subview-bookmark-tab =
+ .label = Adicionar separador atual aos marcadores…
+
+## Library Panel items
+
+library-bookmarks-menu =
+ .label = Marcadores
+library-recent-activity-title =
+ .value = Atividade recente
+
+## Pocket toolbar button
+
+save-to-pocket-button =
+ .label = Guardar no { -pocket-brand-name }
+ .tooltiptext = Guardar no { -pocket-brand-name }
+
+## Repair text encoding toolbar button
+
+repair-text-encoding-button =
+ .label = Corrigir a codificação de texto
+ .tooltiptext = Inferir a codificação de texto correta a partir do conteúdo da página
+
+## Customize Toolbar Buttons
+
+# Variables:
+# $shortcut (String): keyboard shortcut to open the add-ons manager
+toolbar-addons-themes-button =
+ .label = Extensões e temas
+ .tooltiptext = Faça a gestão das suas extensões e temas ({ $shortcut })
+# Variables:
+# $shortcut (String): keyboard shortcut to open settings (only on macOS)
+toolbar-settings-button =
+ .label = Definições
+ .tooltiptext =
+ { PLATFORM() ->
+ [macos] Abrir definições ({ $shortcut })
+ *[other] Abrir definições
+ }
+toolbar-overflow-customize-button =
+ .label = Personalizar barra de ferramentas…
+ .accesskey = P
+toolbar-button-email-link =
+ .label = Enviar por email
+ .tooltiptext = Enviar ligação para esta página
+# Variables:
+# $shortcut (String): keyboard shortcut to save a copy of the page
+toolbar-button-save-page =
+ .label = Guardar página
+ .tooltiptext = Guardar esta página ({ $shortcut })
+# Variables:
+# $shortcut (String): keyboard shortcut to open a local file
+toolbar-button-open-file =
+ .label = Abrir ficheiro
+ .tooltiptext = Abrir um ficheiro ({ $shortcut })
+toolbar-button-synced-tabs =
+ .label = Separadores sincronizados
+ .tooltiptext = Mostrar separadores de outros dispositivos
+# Variables
+# $shortcut (string) - Keyboard shortcut to open a new private browsing window
+toolbar-button-new-private-window =
+ .label = Nova janela privada
+ .tooltiptext = Abrir uma nova janela de navegação privada ({ $shortcut })
+
+## EME notification panel
+
+eme-notifications-drm-content-playing = Algum áudio ou vídeo neste site utiliza software DRM, que poderá limitar as funcionalidades do que o { -brand-short-name } lhe pode deixar fazer com o mesmo.
+eme-notifications-drm-content-playing-manage = Gerir definições
+eme-notifications-drm-content-playing-manage-accesskey = M
+eme-notifications-drm-content-playing-dismiss = Dispensar
+eme-notifications-drm-content-playing-dismiss-accesskey = D
+
+## Password save/update panel
+
+panel-save-update-username = Nome de utilizador
+panel-save-update-password = Palavra-passe
+
+## Add-on removal warning
+
+# Variables:
+# $name (String): The name of the addon that will be removed.
+addon-removal-title = Remover { $name }?
+addon-removal-abuse-report-checkbox = Reportar esta extensão à { -vendor-short-name }
+
+##
+
+# "More" item in macOS share menu
+menu-share-more =
+ .label = Mais…
+ui-tour-info-panel-close =
+ .tooltiptext = Fechar
+
+## Variables:
+## $uriHost (String): URI host for which the popup was allowed or blocked.
+
+popups-infobar-allow =
+ .label = Permitir janelas de { $uriHost }
+ .accesskey = p
+popups-infobar-block =
+ .label = Bloquear pop-ups de { $uriHost }
+ .accesskey = p
+
+##
+
+popups-infobar-dont-show-message =
+ .label = Não mostrar esta mensagem quando os pop-ups são bloqueados
+ .accesskey = D
+edit-popup-settings =
+ .label = Gerir definições de popup
+ .accesskey = G
+picture-in-picture-hide-toggle =
+ .label = Ocultar o comutador de vídeo em janela flutuante
+ .accesskey = O
+
+## Since the default position for PiP controls does not change for RTL layout,
+## right-to-left languages should use "Left" and "Right" as in the English strings,
+
+picture-in-picture-move-toggle-right =
+ .label = Mover o comutador de vídeo em janela flutuante para o lado direito
+ .accesskey = d
+picture-in-picture-move-toggle-left =
+ .label = Mover o comutador de vídeo em janela flutuante para o lado esquerdo
+ .accesskey = e
+
+##
+
+
+# Navigator Toolbox
+
+# This string is a spoken label that should not include
+# the word "toolbar" or such, because screen readers already know that
+# this container is a toolbar. This avoids double-speaking.
+navbar-accessible =
+ .aria-label = Navegação
+navbar-downloads =
+ .label = Transferências
+navbar-overflow =
+ .tooltiptext = Mais ferramentas…
+# Variables:
+# $shortcut (String): keyboard shortcut to print the page
+navbar-print =
+ .label = Imprimir
+ .tooltiptext = Imprimir esta página… ({ $shortcut })
+navbar-home =
+ .label = Início
+ .tooltiptext = Página inicial do { -brand-short-name }
+navbar-library =
+ .label = Biblioteca
+ .tooltiptext = Ver histórico, marcadores guardados, e mais
+navbar-search =
+ .title = Pesquisa
+navbar-accessibility-indicator =
+ .tooltiptext = Funcionalidades de acessibilidade ativadas
+# Name for the tabs toolbar as spoken by screen readers. The word
+# "toolbar" is appended automatically and should not be included in
+# in the string
+tabs-toolbar =
+ .aria-label = Separadores do navegador
+tabs-toolbar-new-tab =
+ .label = Novo separador
+tabs-toolbar-list-all-tabs =
+ .label = Listar todos os separadores
+ .tooltiptext = Listar todos os separadores
+
+## Infobar shown at startup to suggest session-restore
+
+# will be replaced by the application menu icon
+restore-session-startup-suggestion-message = Reabrir os separadores anteriores? Pode restaurar a sua sessão antiga a partir do menu de aplicação do { -brand-short-name } , em Histórico.
+restore-session-startup-suggestion-button = Mostrar como
+
+## Mozilla data reporting notification (Telemetry, Firefox Health Report, etc)
+
+data-reporting-notification-message = O { -brand-short-name } envia automaticamente alguns dados para a { -vendor-short-name } para que possamos a melhorar a sua experiência.
+data-reporting-notification-button =
+ .label = Escolher o que partilho
+ .accesskey = E
+# Label for the indicator shown in the private browsing window titlebar.
+private-browsing-indicator-label = Navegação privada
+
+## Unified extensions (toolbar) button
+
+unified-extensions-button =
+ .label = Extensões
+ .tooltiptext = Extensões
+
+## Unified extensions button when permission(s) are needed.
+## Note that the new line is intentionally part of the tooltip.
+
+unified-extensions-button-permissions-needed =
+ .label = Extensões
+ .tooltiptext =
+ Extensões
+ Permissões necessárias
+
+## Autorefresh blocker
+
+refresh-blocked-refresh-label = O { -brand-short-name } impediu o recarregamento automático desta página.
+refresh-blocked-redirect-label = O { -brand-short-name } impediu o encaminhamento automático desta página para outra.
+refresh-blocked-allow =
+ .label = Permitir
+ .accesskey = P
+
+## Firefox Relay integration
+
+firefox-relay-offer-why-relay = O { -relay-brand-name } mascara o seu verdadeiro endereço de e-mail para ajudar a protegê-lo contra roubos de dados e de SPAM.
+firefox-relay-offer-how-we-integrate = Ao continuar, poderá gerar novas máscaras de e-mail do { -relay-brand-short-name } diretamente a partir do seu gestor de palavras-passe do { -brand-shorter-name }.
+# Variables:
+# $sitename (String): name of the site where user enters their Relay mask
+# $useremail (String): user email that will receive messages
+firefox-relay-offer-what-relay-does = Iremos reencaminhar todos os e-mails de { $sitename } para { $useremail }.
diff --git a/l10n-pt-PT/browser/browser/browserContext.ftl b/l10n-pt-PT/browser/browser/browserContext.ftl
new file mode 100644
index 0000000000..ceb99667fe
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/browserContext.ftl
@@ -0,0 +1,420 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+navbar-tooltip-instruction =
+ .value =
+ { PLATFORM() ->
+ [macos] Desloque para baixo para mostrar o histórico
+ *[other] Clique com o botão direito ou desloque para baixo para mostrar o histórico
+ }
+
+## Back
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Back command.
+main-context-menu-back-2 =
+ .tooltiptext = Retroceder uma página ({ $shortcut })
+ .aria-label = Anterior
+ .accesskey = A
+# This menuitem is only visible on macOS
+main-context-menu-back-mac =
+ .label = Anterior
+ .accesskey = A
+navbar-tooltip-back-2 =
+ .value = { main-context-menu-back-2.tooltiptext }
+toolbar-button-back-2 =
+ .label = { main-context-menu-back-2.aria-label }
+
+## Forward
+
+# Variables
+# $shortcut (String) - A keyboard shortcut for the Go Forward command.
+main-context-menu-forward-2 =
+ .tooltiptext = Avançar uma página ({ $shortcut })
+ .aria-label = Seguinte
+ .accesskey = S
+# This menuitem is only visible on macOS
+main-context-menu-forward-mac =
+ .label = Seguinte
+ .accesskey = S
+navbar-tooltip-forward-2 =
+ .value = { main-context-menu-forward-2.tooltiptext }
+toolbar-button-forward-2 =
+ .label = { main-context-menu-forward-2.aria-label }
+
+## Reload
+
+main-context-menu-reload =
+ .aria-label = Recarregar
+ .accesskey = R
+# This menuitem is only visible on macOS
+main-context-menu-reload-mac =
+ .label = Recarregar
+ .accesskey = R
+toolbar-button-reload =
+ .label = { main-context-menu-reload.aria-label }
+
+## Stop
+
+main-context-menu-stop =
+ .aria-label = Parar
+ .accesskey = P
+# This menuitem is only visible on macOS
+main-context-menu-stop-mac =
+ .label = Parar
+ .accesskey = P
+toolbar-button-stop =
+ .label = { main-context-menu-stop.aria-label }
+
+## Stop-Reload Button
+
+toolbar-button-stop-reload =
+ .title = { main-context-menu-reload.aria-label }
+
+## Firefox Account Button
+
+toolbar-button-fxaccount =
+ .label = { -fxaccount-brand-name }
+ .tooltiptext = { -fxaccount-brand-name }
+
+## Save Page
+
+main-context-menu-page-save =
+ .label = Guardar página como…
+ .accesskey = P
+
+## Simple menu items
+
+main-context-menu-bookmark-add =
+ .aria-label = Adicionar esta página aos marcadores
+ .accesskey = m
+ .tooltiptext = Adicionar esta página aos marcadores
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-bookmark-edit-mac,
+# so should probably have the same access key if possible.
+main-context-menu-bookmark-add-mac =
+ .label = Adicionar página aos marcadores
+ .accesskey = m
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-bookmark-add-mac,
+# so should probably have the same access key if possible.
+main-context-menu-bookmark-edit-mac =
+ .label = Editar marcador
+ .accesskey = m
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+main-context-menu-bookmark-add-with-shortcut =
+ .aria-label = Adicionar esta página aos marcadores
+ .accesskey = m
+ .tooltiptext = Adicionar esta página aos marcadores ({ $shortcut })
+main-context-menu-bookmark-change =
+ .aria-label = Editar este marcador
+ .accesskey = m
+ .tooltiptext = Editar este marcador
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+main-context-menu-bookmark-change-with-shortcut =
+ .aria-label = Editar este marcador
+ .accesskey = m
+ .tooltiptext = Editar este marcador ({ $shortcut })
+main-context-menu-bookmark-page =
+ .aria-label = Adicionar página aos marcadores…
+ .accesskey = m
+ .tooltiptext = Adicionar página aos marcadores
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-edit-bookmark-mac,
+# so should probably have the same access key if possible.
+main-context-menu-bookmark-page-mac =
+ .label = Adicionar página aos marcadores…
+ .accesskey = m
+# This menuitem is only visible on macOS
+# Cannot be shown at the same time as main-context-menu-bookmark-page-mac,
+# so should probably have the same access key if possible.
+main-context-menu-edit-bookmark-mac =
+ .label = Editar marcador…
+ .accesskey = m
+# Variables
+# $shortcut (String) - A keyboard shortcut for the add bookmark command.
+main-context-menu-bookmark-page-with-shortcut =
+ .aria-label = Adicionar página aos marcadores…
+ .accesskey = m
+ .tooltiptext = Adicionar página aos marcadores ({ $shortcut })
+main-context-menu-edit-bookmark =
+ .aria-label = Editar marcador…
+ .accesskey = m
+ .tooltiptext = Editar marcador…
+# Variables
+# $shortcut (String) - A keyboard shortcut for the edit bookmark command.
+main-context-menu-edit-bookmark-with-shortcut =
+ .aria-label = Editar marcador…
+ .accesskey = m
+ .tooltiptext = Editar marcador…({ $shortcut })
+main-context-menu-open-link =
+ .label = Abrir ligação
+ .accesskey = A
+main-context-menu-open-link-new-tab =
+ .label = Abrir ligação num novo separador
+ .accesskey = s
+main-context-menu-open-link-container-tab =
+ .label = Abrir ligação num novo separador contentor
+ .accesskey = b
+main-context-menu-open-link-new-window =
+ .label = Abrir ligação numa nova janela
+ .accesskey = j
+main-context-menu-open-link-new-private-window =
+ .label = Abrir ligação numa nova janela privada
+ .accesskey = p
+main-context-menu-bookmark-link =
+ .label = Adicionar ligação aos marcadores
+ .accesskey = o
+main-context-menu-bookmark-link-2 =
+ .label = Adicionar ligação aos marcadores…
+ .accesskey = B
+main-context-menu-save-link =
+ .label = Guardar ligação como…
+ .accesskey = G
+main-context-menu-save-link-to-pocket =
+ .label = Guardar ligação no { -pocket-brand-name }
+ .accesskey = o
+
+## The access keys for "Copy Link" and "Copy Email Address"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-copy-email =
+ .label = Copiar endereço de email
+ .accesskey = e
+main-context-menu-copy-phone =
+ .label = Copiar número de telefone
+ .accesskey = C
+main-context-menu-copy-link-simple =
+ .label = Copiar ligação
+ .accesskey = l
+
+## Media (video/audio) controls
+##
+## The accesskey for "Play" and "Pause" are the
+## same because the two context-menu items are
+## mutually exclusive.
+
+main-context-menu-media-play =
+ .label = Reproduzir
+ .accesskey = p
+main-context-menu-media-pause =
+ .label = Pausar
+ .accesskey = P
+
+##
+
+main-context-menu-media-mute =
+ .label = Silenciar
+ .accesskey = S
+main-context-menu-media-unmute =
+ .label = Repor som
+ .accesskey = m
+main-context-menu-media-play-speed-2 =
+ .label = Velocidade
+ .accesskey = V
+main-context-menu-media-play-speed-slow-2 =
+ .label = 0.5×
+main-context-menu-media-play-speed-normal-2 =
+ .label = 1.0×
+main-context-menu-media-play-speed-fast-2 =
+ .label = 1.25×
+main-context-menu-media-play-speed-faster-2 =
+ .label = 1.5×
+main-context-menu-media-play-speed-fastest-2 =
+ .label = 2×
+main-context-menu-media-loop =
+ .label = Repetir
+ .accesskey = R
+
+## The access keys for "Show Controls" and "Hide Controls" are the same
+## because the two context-menu items are mutually exclusive.
+
+main-context-menu-media-show-controls =
+ .label = Mostrar controlos
+ .accesskey = c
+main-context-menu-media-hide-controls =
+ .label = Ocultar controlos
+ .accesskey = c
+
+##
+
+main-context-menu-media-video-fullscreen =
+ .label = Ecrã completo
+ .accesskey = E
+main-context-menu-media-video-leave-fullscreen =
+ .label = Sair de ecrã completo
+ .accesskey = a
+# This is used when right-clicking on a video in the
+# content area when the Picture-in-Picture feature is enabled.
+main-context-menu-media-watch-pip =
+ .label = Ver o vídeo numa janela flutuante
+ .accesskey = u
+main-context-menu-image-reload =
+ .label = Recarregar imagem
+ .accesskey = R
+main-context-menu-image-view-new-tab =
+ .label = Abrir imagem num novo separador
+ .accesskey = i
+main-context-menu-video-view-new-tab =
+ .label = Abrir vídeo num novo separador
+ .accesskey = i
+main-context-menu-image-copy =
+ .label = Copiar imagem
+ .accesskey = o
+main-context-menu-image-copy-link =
+ .label = Copiar ligação da imagem
+ .accesskey = o
+main-context-menu-video-copy-link =
+ .label = Copiar ligação do vídeo
+ .accesskey = o
+main-context-menu-audio-copy-link =
+ .label = Copiar ligação do áudio
+ .accesskey = o
+main-context-menu-image-save-as =
+ .label = Guardar imagem como…
+ .accesskey = e
+main-context-menu-image-email =
+ .label = Enviar imagem por e-mail…
+ .accesskey = g
+main-context-menu-image-set-image-as-background =
+ .label = Definir como fundo do ambiente de trabalho…
+ .accesskey = h
+main-context-menu-image-copy-text =
+ .label = Copiar texto da imagem
+ .accesskey = x
+main-context-menu-image-info =
+ .label = Ver informação da imagem
+ .accesskey = f
+main-context-menu-image-desc =
+ .label = Ver descrição
+ .accesskey = d
+main-context-menu-video-save-as =
+ .label = Guardar vídeo como…
+ .accesskey = v
+main-context-menu-audio-save-as =
+ .label = Guardar áudio como…
+ .accesskey = u
+main-context-menu-video-take-snapshot =
+ .label = Tirar uma captura…
+ .accesskey = p
+main-context-menu-video-email =
+ .label = Enviar vídeo por e-mail…
+ .accesskey = a
+main-context-menu-audio-email =
+ .label = Enviar áudio por e-mail…
+ .accesskey = a
+main-context-menu-plugin-play =
+ .label = Ativar este plugin
+ .accesskey = t
+main-context-menu-plugin-hide =
+ .label = Ocultar este plugin
+ .accesskey = u
+main-context-menu-save-to-pocket =
+ .label = Guardar página no { -pocket-brand-name }
+ .accesskey = k
+main-context-menu-send-to-device =
+ .label = Enviar página para dispositivo
+ .accesskey = d
+
+## The access keys for "Use Saved Login" and "Use Saved Password"
+## should be the same if possible; the two context menu items
+## are mutually exclusive.
+
+main-context-menu-use-saved-login =
+ .label = Utilizar credencial guardada
+ .accesskey = g
+main-context-menu-use-saved-password =
+ .label = Utilizar palavra-passe guardada
+ .accesskey = u
+
+##
+
+main-context-menu-suggest-strong-password =
+ .label = Sugerir palavra-passe forte…
+ .accesskey = S
+main-context-menu-manage-logins2 =
+ .label = Gerir credenciais
+ .accesskey = G
+main-context-menu-keyword =
+ .label = Adicionar uma palavra-chave para esta pesquisa…
+ .accesskey = A
+main-context-menu-link-send-to-device =
+ .label = Enviar ligação para dispositivo
+ .accesskey = d
+main-context-menu-frame =
+ .label = Este frame
+ .accesskey = t
+main-context-menu-frame-show-this =
+ .label = Mostrar apenas este frame
+ .accesskey = a
+main-context-menu-frame-open-tab =
+ .label = Abrir frame num novo separador
+ .accesskey = s
+main-context-menu-frame-open-window =
+ .label = Abrir frame numa nova janela
+ .accesskey = j
+main-context-menu-frame-reload =
+ .label = Recarregar frame
+ .accesskey = R
+main-context-menu-frame-bookmark =
+ .label = Adicionar este frame aos marcadores
+ .accesskey = m
+main-context-menu-frame-add-bookmark =
+ .label = Adicionar frame aos marcadores…
+ .accesskey = m
+main-context-menu-frame-save-as =
+ .label = Guardar frame como…
+ .accesskey = f
+main-context-menu-frame-print =
+ .label = Imprimir frame…
+ .accesskey = p
+main-context-menu-frame-view-source =
+ .label = Ver fonte do frame
+ .accesskey = V
+main-context-menu-frame-view-info =
+ .label = Ver informação do frame
+ .accesskey = i
+main-context-menu-print-selection =
+ .label = Imprimir seleção
+ .accesskey = r
+main-context-menu-print-selection-2 =
+ .label = Imprimir seleção…
+ .accesskey = r
+main-context-menu-view-selection-source =
+ .label = Ver fonte da seleção
+ .accesskey = e
+main-context-menu-take-screenshot =
+ .label = Tirar uma captura de ecrã
+ .accesskey = T
+main-context-menu-take-frame-screenshot =
+ .label = Tirar uma captura de ecrã
+ .accesskey = t
+main-context-menu-view-page-source =
+ .label = Ver fonte da página
+ .accesskey = V
+main-context-menu-bidi-switch-text =
+ .label = Mudar direção do texto
+ .accesskey = x
+main-context-menu-bidi-switch-page =
+ .label = Mudar direção da página
+ .accesskey = g
+main-context-menu-inspect =
+ .label = Inspecionar
+ .accesskey = n
+main-context-menu-inspect-a11y-properties =
+ .label = Inspecionar propriedades de acessibilidade
+main-context-menu-eme-learn-more =
+ .label = Saber mais acerca de DRM…
+ .accesskey = D
+# Variables
+# $containerName (String): The name of the current container
+main-context-menu-open-link-in-container-tab =
+ .label = Abrir ligação num novo separador { $containerName }
+ .accesskey = s
+main-context-menu-reveal-password =
+ .label = Revelar palavra-passe
+ .accesskey = v
diff --git a/l10n-pt-PT/browser/browser/browserSets.ftl b/l10n-pt-PT/browser/browser/browserSets.ftl
new file mode 100644
index 0000000000..8885c01a13
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/browserSets.ftl
@@ -0,0 +1,218 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+window-minimize-command =
+ .label = Minimizar
+
+window-zoom-command =
+ .label = Zoom
+
+window-new-shortcut =
+ .key = N
+
+window-minimize-shortcut =
+ .key = m
+
+close-shortcut =
+ .key = W
+
+tab-new-shortcut =
+ .key = t
+
+location-open-shortcut =
+ .key = l
+
+location-open-shortcut-alt =
+ .key = d
+
+search-focus-shortcut =
+ .key = k
+
+# This shortcut is used in two contexts:
+# - web search
+# - find in page
+find-shortcut =
+ .key = f
+
+search-find-again-shortcut =
+ .key = g
+
+search-find-again-shortcut-alt =
+ .keycode = VK_F3
+
+search-find-selection-shortcut =
+ .key = e
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+search-focus-shortcut-alt =
+ .key =
+ { PLATFORM() ->
+ [linux] j
+ *[other] e
+ }
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+downloads-shortcut =
+ .key =
+ { PLATFORM() ->
+ [linux] y
+ *[other] j
+ }
+
+addons-shortcut =
+ .key = A
+
+file-open-shortcut =
+ .key = o
+
+save-page-shortcut =
+ .key = s
+
+page-source-shortcut =
+ .key = u
+
+# This should match the Option+Command keyboard shortcut letter that Safari
+# and Chrome use for "View Source" on macOS. `page-source-shortcut` above
+# is Firefox's official keyboard shortcut shown in the GUI.
+# Safari variant is an alias provided for the convenience of Safari and Chrome
+# users on macOS. See bug 1398988.
+page-source-shortcut-safari =
+ .key = u
+
+page-info-shortcut =
+ .key = i
+
+print-shortcut =
+ .key = p
+
+mute-toggle-shortcut =
+ .key = M
+
+nav-back-shortcut-alt =
+ .key = [
+
+nav-fwd-shortcut-alt =
+ .key = ]
+
+nav-reload-shortcut =
+ .key = r
+
+# Shortcut available only on macOS.
+nav-stop-shortcut =
+ .key = .
+
+history-show-all-shortcut =
+ .key = H
+
+history-show-all-shortcut-mac =
+ .key = Y
+
+history-sidebar-shortcut =
+ .key = h
+
+full-screen-shortcut =
+ .key = f
+
+reader-mode-toggle-shortcut-windows =
+ .keycode = VK_F9
+
+reader-mode-toggle-shortcut-other =
+ .key = R
+
+picture-in-picture-toggle-shortcut-mac =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut-mac` key.
+picture-in-picture-toggle-shortcut-mac-alt =
+ .key = { "}" }
+
+picture-in-picture-toggle-shortcut =
+ .key = ]
+
+# Pick the key that is commonly present
+# in your locale keyboards above the
+# `picture-in-picture-toggle-shortcut` key.
+picture-in-picture-toggle-shortcut-alt =
+ .key = { "}" }
+
+bookmark-this-page-shortcut =
+ .key = d
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-library-shortcut =
+ .key = O
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-sidebar-shortcut =
+ .key = b
+
+# Verify what shortcut for that operation
+# are recommended by the Human Interface Guidelines
+# of each platform for your locale.
+bookmark-show-toolbar-shortcut =
+ .key = B
+
+## All `-alt*` messages are alternative acceleration keys for zoom.
+## If shift key is needed with your locale popular keyboard for them,
+## you can use these alternative items. Otherwise, their values should be empty.
+
+full-zoom-reduce-shortcut =
+ .key = -
+
+full-zoom-reduce-shortcut-alt-a =
+ .key = _
+
+full-zoom-reduce-shortcut-alt-b =
+ .key = { "" }
+
+full-zoom-enlarge-shortcut =
+ .key = +
+
+full-zoom-enlarge-shortcut-alt =
+ .key = =
+
+full-zoom-enlarge-shortcut-alt2 =
+ .key = { "" }
+
+full-zoom-reset-shortcut =
+ .key = 0
+
+full-zoom-reset-shortcut-alt =
+ .key = { "" }
+
+##
+
+bidi-switch-direction-shortcut =
+ .key = X
+
+private-browsing-shortcut =
+ .key = P
+
+## The shortcuts below are for Mac specific
+## global menu.
+
+quit-app-shortcut =
+ .key = Q
+
+help-shortcut =
+ .key = ?
+
+preferences-shortcut =
+ .key = ,
+
+hide-app-shortcut =
+ .key = H
+
+hide-other-apps-shortcut =
+ .key = H
diff --git a/l10n-pt-PT/browser/browser/colorwaycloset.ftl b/l10n-pt-PT/browser/browser/colorwaycloset.ftl
new file mode 100644
index 0000000000..4ab946b47d
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/colorwaycloset.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $expiryDate (string) - date on which the colorway collection expires. When formatting this, you may omit the year, only exposing the month and day, as colorway collections will always expire within a year.
+colorway-collection-expiry-label = Expira em { DATETIME($expiryDate, month: "long", day: "numeric") }
+# Document title, not shown in the UI but exposed through accessibility APIs
+colorways-modal-title = Escolha o seu estilo de cor
+colorway-intensity-selector-label = Intensidade
+colorway-intensity-soft = Suave
+colorway-intensity-balanced = Equilibrado
+# "Bold" is used in the sense of bravery or courage, not in the sense of
+# emphasized text.
+colorway-intensity-bold = Audacioso
+# Label for the button to keep using the selected colorway in the browser
+colorway-closet-set-colorway-button = Definir estilo de cor
+colorway-closet-cancel-button = Cancelar
+colorway-homepage-reset-prompt = Faça do { -firefox-home-brand-name } a sua página inicial colorida
+colorway-homepage-reset-success-message = { -firefox-home-brand-name } é agora a sua página inicial
+colorway-homepage-reset-apply-button = Aplicar
+colorway-homepage-reset-undo-button = Desfazer
diff --git a/l10n-pt-PT/browser/browser/colorways.ftl b/l10n-pt-PT/browser/browser/colorways.ftl
new file mode 100644
index 0000000000..1ab148395c
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/colorways.ftl
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Colorway collections
+
+colorway-collection-independent-voices = Vozes Independentes
+colorway-collection-independent-voices-description = A cor pode mudar a cultura. Os estilos de cor mais recentes celebram vozes que fazem do mundo um lugar melhor.
+# Used as a subheading for the colorway collection card in about:addons
+colorway-collection-independent-voices-short-description = Cores que mudam a cultura.
+
+## Colorway names and descriptions
+
+playmaker-colorway-name = Impulsionador
+playmaker-colorway-description = Tu crias oportunidades para vencer e ajudar todos à tua volta a melhorar.
+expressionist-colorway-name = Expressionista
+expressionist-colorway-description = Vês o mundo de maneira diferente e as tuas criações despertam as emoções dos outros.
+visionary-colorway-name = Visionário
+visionary-colorway-description = Questionas o status quo e levas os outros a imaginar um futuro melhor.
+activist-colorway-name = Ativista
+activist-colorway-description = Deixas o mundo um lugar melhor do que aquele que encontraste e levas os outros a acreditar.
+dreamer-colorway-name = Sonhador
+dreamer-colorway-description = Acreditas que a sorte favorece os ousados e inspiras os outros a ser corajosos.
+innovator-colorway-name = Inovador
+innovator-colorway-description = Vês oportunidades em todo o lado e causas impacto nas vidas de todos ao teu redor.
diff --git a/l10n-pt-PT/browser/browser/components/mozSupportLink.ftl b/l10n-pt-PT/browser/browser/components/mozSupportLink.ftl
new file mode 100644
index 0000000000..75a1c70d6f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/components/mozSupportLink.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+moz-support-link-text = Saber mais
diff --git a/l10n-pt-PT/browser/browser/confirmationHints.ftl b/l10n-pt-PT/browser/browser/confirmationHints.ftl
new file mode 100644
index 0000000000..6e323b1d2e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/confirmationHints.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Confirmation hints
+
+confirmation-hint-breakage-report-sent = Relatório enviado. Obrigado!
+confirmation-hint-login-removed = Credencial removida!
+confirmation-hint-page-bookmarked = Guardado nos marcadores
+confirmation-hint-password-saved = Palavra-passe guardada!
+confirmation-hint-pin-tab = Fixado!
+confirmation-hint-pin-tab-description = Clique com o botão direito no separador para o desafixar.
+confirmation-hint-send-to-device = Enviado!
+confirmation-hint-firefox-relay-mask-generated = Nova máscara { -relay-brand-short-name } gerada!
diff --git a/l10n-pt-PT/browser/browser/contentCrash.ftl b/l10n-pt-PT/browser/browser/contentCrash.ftl
new file mode 100644
index 0000000000..5ae1bb5e0b
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/contentCrash.ftl
@@ -0,0 +1,34 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Subframe crash notification
+
+crashed-subframe-message = Uma parte desta página falhou. Para tornar o problema conhecido e ajudar a que o mesmo seja resolvido mais rapidamente no { -brand-product-name }, por favor submeta um relatório.
+
+# The string for crashed-subframe-title.title should match crashed-subframe-message,
+# but without any markup.
+crashed-subframe-title =
+ .title = Uma parte desta página falhou. Para tornar o problema conhecido e ajudar a que o mesmo seja resolvido mais rapidamente no { -brand-product-name }, por favor submeta um relatório.
+crashed-subframe-learnmore-link =
+ .value = Saber mais
+crashed-subframe-submit =
+ .label = Submeter relatório
+ .accesskey = S
+
+## Pending crash reports
+
+# Variables:
+# $reportCount (Number): the number of pending crash reports
+pending-crash-reports-message =
+ { $reportCount ->
+ [one] Tem um relatório de falha não enviado
+ *[other] Tem { $reportCount } relatórios de falha não enviados
+ }
+pending-crash-reports-view-all =
+ .label = Ver
+pending-crash-reports-send =
+ .label = Enviar
+pending-crash-reports-always-send =
+ .label = Enviar sempre
diff --git a/l10n-pt-PT/browser/browser/customizeMode.ftl b/l10n-pt-PT/browser/browser/customizeMode.ftl
new file mode 100644
index 0000000000..211215e7de
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/customizeMode.ftl
@@ -0,0 +1,38 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+customize-mode-restore-defaults =
+ .label = Restaurar predefinições
+customize-mode-menu-and-toolbars-header = Arraste os seus itens favoritos para a barra de ferramentas ou menu de excesso.
+customize-mode-overflow-list-title = Menu de excesso
+customize-mode-uidensity =
+ .label = Densidade
+customize-mode-done =
+ .label = Concluir
+customize-mode-toolbars =
+ .label = Barras de ferramentas
+customize-mode-titlebar =
+ .label = Barra de título
+customize-mode-uidensity-menu-touch =
+ .label = Toque
+ .accesskey = T
+ .tooltiptext = Toque
+customize-mode-uidensity-auto-touch-mode-checkbox =
+ .label = Utilizar Toque para modo tablet
+customize-mode-overflow-list-description = Arraste e largue itens aqui para os manter dentro de alcance mas fora da sua barra de ferramentas…
+customize-mode-uidensity-menu-normal =
+ .label = Normal
+ .accesskey = N
+ .tooltiptext = &Normal
+customize-mode-uidensity-menu-compact-unsupported =
+ .label = Compacto (não compatível)
+ .accesskey = C
+ .tooltiptext = Compacto (não compatível)
+customize-mode-undo-cmd =
+ .label = Anular
+customize-mode-lwthemes-link = Gerir temas
+customize-mode-touchbar-cmd =
+ .label = Personalizar barra de toque…
+customize-mode-downloads-button-autohide =
+ .label = Ocultar botão quando vazio
diff --git a/l10n-pt-PT/browser/browser/defaultBrowserNotification.ftl b/l10n-pt-PT/browser/browser/defaultBrowserNotification.ftl
new file mode 100644
index 0000000000..2177ef3b2f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/defaultBrowserNotification.ftl
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# The question portion of the following message should have the and tags surrounding it.
+default-browser-notification-message = Definir o { -brand-short-name } como o seu navegador predefinido? Obtenha uma navegação rápida, segura e privada sempre que utilizar a Internet.
+default-browser-notification-button =
+ .label = Definir como predefinido
+ .accesskey = D
+
+## These strings are used for the default browser prompt. There are 2 variations
+## depending on the operating system (Windows vs other). The checkbox label and
+## secondary button are shared between the variants.
+
+default-browser-prompt-title-pin = Tornar o { -brand-short-name } o seu navegador principal?
+default-browser-prompt-message-pin = Manter o { -brand-short-name } na ponta dos seus dedos — torne o mesmo no seu navegador predefinido e fixe-o à sua barra de ferramentas.
+default-browser-prompt-message-pin-mac = Mantenha o { -brand-short-name } perto dos seus dedos — utilize-o como o seu navegador predefinido e mantenha-o na sua Doca.
+default-browser-prompt-button-primary-pin = Tornar o navegador principal
+default-browser-prompt-title-alt = Tornar o { -brand-short-name } no seu navegador predefinido?
+default-browser-prompt-message-alt = Obtenha velocidade, segurança e privacidade sempre que navega.
+default-browser-prompt-button-primary-alt = Definir como navegador predefinido
+default-browser-prompt-checkbox-not-again-label = Não mostrar esta mensagem novamente
+default-browser-prompt-button-secondary = Agora não
diff --git a/l10n-pt-PT/browser/browser/downloads.ftl b/l10n-pt-PT/browser/browser/downloads.ftl
new file mode 100644
index 0000000000..b167b6c1e2
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/downloads.ftl
@@ -0,0 +1,238 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The title and aria-label attributes are used by screen readers to describe
+## the Downloads Panel.
+
+downloads-window =
+ .title = Transferências
+downloads-panel =
+ .aria-label = Transferências
+
+##
+
+# The style attribute has the width of the Downloads Panel expressed using
+# a CSS unit. The longest labels that should fit are usually those of
+# in-progress and blocked downloads.
+downloads-panel-items =
+ .style = width: 35em
+downloads-cmd-pause =
+ .label = Pausar
+ .accesskey = P
+downloads-cmd-resume =
+ .label = Retomar
+ .accesskey = R
+downloads-cmd-cancel =
+ .tooltiptext = Cancelar
+downloads-cmd-cancel-panel =
+ .aria-label = Cancelar
+downloads-cmd-show-menuitem-2 =
+ .label =
+ { PLATFORM() ->
+ [macos] Mostrar no Finder
+ *[other] Mostrar na pasta
+ }
+ .accesskey = M
+
+## Displayed in the downloads context menu for files that can be opened.
+## Variables:
+## $handler (String) - The name of the mime type's default file handler.
+## Example: "Notepad", "Acrobat Reader DC", "7-Zip File Manager"
+
+downloads-cmd-use-system-default =
+ .label = Abrir no visualizador do sistema
+ .accesskey = v
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-use-system-default-named =
+ .label = Abrir em { $handler }
+ .accesskey = i
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-use-system-default =
+ .label = Abrir sempre no visualizador do sistema
+ .accesskey = m
+# We can use the same accesskey as downloads-cmd-always-open-similar-files.
+# Both should not be visible in the downloads context menu at the same time.
+# This version is shown when the download's mime type has a valid file handler.
+downloads-cmd-always-use-system-default-named =
+ .label = Abrir sempre em { $handler }
+ .accesskey = m
+
+##
+
+# We can use the same accesskey as downloads-cmd-always-use-system-default.
+# Both should not be visible in the downloads context menu at the same time.
+downloads-cmd-always-open-similar-files =
+ .label = Abrir sempre ficheiros semelhantes
+ .accesskey = b
+downloads-cmd-show-button-2 =
+ .tooltiptext =
+ { PLATFORM() ->
+ [macos] Mostrar no Finder
+ *[other] Mostrar na pasta
+ }
+downloads-cmd-show-panel-2 =
+ .aria-label =
+ { PLATFORM() ->
+ [macos] Mostrar no Finder
+ *[other] Mostrar na pasta
+ }
+downloads-cmd-show-description-2 =
+ .value =
+ { PLATFORM() ->
+ [macos] Mostrar no Finder
+ *[other] Mostrar na pasta
+ }
+downloads-cmd-show-downloads =
+ .label = Mostrar pasta de transferências
+downloads-cmd-retry =
+ .tooltiptext = Voltar a tentar
+downloads-cmd-retry-panel =
+ .aria-label = Voltar a tentar
+downloads-cmd-go-to-download-page =
+ .label = Ir para a página da transferência
+ .accesskey = g
+downloads-cmd-copy-download-link =
+ .label = Copiar ligação da transferência
+ .accesskey = l
+downloads-cmd-remove-from-history =
+ .label = Remover do histórico
+ .accesskey = e
+downloads-cmd-clear-list =
+ .label = Limpar o painel de pré-visualização
+ .accesskey = a
+downloads-cmd-clear-downloads =
+ .label = Limpar transferências
+ .accesskey = t
+downloads-cmd-delete-file =
+ .label = Eliminar
+ .accesskey = E
+# This command is shown in the context menu when downloads are blocked.
+downloads-cmd-unblock =
+ .label = Permitir transferência
+ .accesskey = m
+# This is the tooltip of the action button shown when malware is blocked.
+downloads-cmd-remove-file =
+ .tooltiptext = Remover ficheiro
+downloads-cmd-remove-file-panel =
+ .aria-label = Remover ficheiro
+# This is the tooltip of the action button shown when potentially unwanted
+# downloads are blocked. This opens a dialog where the user can choose
+# whether to unblock or remove the download. Removing is the default option.
+downloads-cmd-choose-unblock =
+ .tooltiptext = Remover ficheiro ou permitir transferência
+downloads-cmd-choose-unblock-panel =
+ .aria-label = Remover ficheiro ou permitir transferência
+# This is the tooltip of the action button shown when uncommon downloads are
+# blocked.This opens a dialog where the user can choose whether to open the
+# file or remove the download. Opening is the default option.
+downloads-cmd-choose-open =
+ .tooltiptext = Abrir ou remover ficheiro
+downloads-cmd-choose-open-panel =
+ .aria-label = Abrir ou remover ficheiro
+# Displayed when hovering a blocked download, indicates that it's possible to
+# show more information for user to take the next action.
+downloads-show-more-information =
+ .value = Mostrar mais informação
+# Displayed when hovering a complete download, indicates that it's possible to
+# open the file using an app available in the system.
+downloads-open-file =
+ .value = Abrir ficheiro
+
+## Displayed when the user clicked on a download in process. Indicates that the
+## downloading file will be opened after certain amount of time using an app
+## available in the system.
+## Variables:
+## $hours (number) - Amount of hours left till the file opens.
+## $seconds (number) - Amount of seconds left till the file opens.
+## $minutes (number) - Amount of minutes till the file opens.
+
+downloading-file-opens-in-hours-and-minutes = A abrir em { $hours }h { $minutes }m…
+downloading-file-opens-in-minutes = A abrir em { $minutes }m…
+downloading-file-opens-in-minutes-and-seconds = A abrir em { $minutes }m { $seconds }s…
+downloading-file-opens-in-seconds = A abrir em { $seconds }s…
+downloading-file-opens-in-some-time = Será aberto quando terminar…
+downloading-file-opens-in-hours-and-minutes-2 =
+ .value = A abrir em { $hours }h { $minutes }m…
+downloading-file-opens-in-minutes-2 =
+ .value = A abrir em { $minutes }m…
+downloading-file-opens-in-minutes-and-seconds-2 =
+ .value = A abrir em { $minutes }m { $seconds }s…
+downloading-file-opens-in-seconds-2 =
+ .value = A abrir em { $seconds }s…
+downloading-file-opens-in-some-time-2 =
+ .value = Será aberto quando terminar…
+downloading-file-click-to-open =
+ .value = Abrir quando terminar
+
+##
+
+# Displayed when hovering a download which is able to be retried by users,
+# indicates that it's possible to download this file again.
+downloads-retry-download =
+ .value = Recomeçar transferência
+# Displayed when hovering a download which is able to be cancelled by users,
+# indicates that it's possible to cancel and stop the download.
+downloads-cancel-download =
+ .value = Cancelar transferência
+# This string is shown at the bottom of the Downloads Panel when all the
+# downloads fit in the available space, or when there are no downloads in
+# the panel at all.
+downloads-history =
+ .label = Mostrar todas as transferências
+ .accesskey = s
+# This string is shown at the top of the Download Details Panel, to indicate
+# that we are showing the details of a single download.
+downloads-details =
+ .title = Detalhes da transferência
+
+## Displayed when a site attempts to automatically download many files.
+## Variables:
+## $num (number) - Number of blocked downloads.
+## $url (string) - The url of the suspicious site, stripped of http, https and www prefix.
+
+downloads-files-not-downloaded =
+ { $num ->
+ [one] Ficheiro não transferido
+ *[other] { $num } ficheiros não transferidos.
+ }
+downloads-blocked-from-url = Transferências de { $url } bloqueadas.
+downloads-blocked-download-detailed-info = { $url } tentou transferir automaticamente múltiplos ficheiros. O site pode estar com problemas ou a tentar armazenar ficheiros de spam no seu dispositivo.
+
+##
+
+downloads-clear-downloads-button =
+ .label = Limpar transferências
+ .tooltiptext = Limpa as transferências concluídas, canceladas e falhadas
+# This string is shown when there are no items in the Downloads view, when it
+# is displayed inside a browser tab.
+downloads-list-empty =
+ .value = Não existem transferências.
+# This string is shown when there are no items in the Downloads Panel.
+downloads-panel-empty =
+ .value = Sem transferências para esta sessão.
+# This is displayed in an item at the bottom of the Downloads Panel when there
+# are more downloads than can fit in the list in the panel.
+# $count (number) - number of files being downloaded that are not shown in the
+# panel list.
+downloads-more-downloading =
+ { $count ->
+ [one] Está a ser transferido mais { $count } ficheiro
+ *[other] Estão a ser transferidos mais { $count } ficheiros
+ }
+
+## Download errors
+
+downloads-error-alert-title = Erro de transferência
+# Variables:
+# $extension (String): the name of the blocking extension.
+downloads-error-blocked-by = A transferência não pôde ser guardada porque está a ser bloqueada por { $extension }.
+# Used when the name of the blocking extension is unavailable.
+downloads-error-extension = A transferência não pôde ser guardada porque está a ser bloqueada por uma extensão.
+# Line breaks in this message are meaningful, and should be maintained.
+downloads-error-generic =
+ Não foi possível guardar a transferência devido a um erro desconhecido.
+
+ Por favor, volte a tentar.
diff --git a/l10n-pt-PT/browser/browser/editBookmarkOverlay.ftl b/l10n-pt-PT/browser/browser/editBookmarkOverlay.ftl
new file mode 100644
index 0000000000..cd1feaf994
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/editBookmarkOverlay.ftl
@@ -0,0 +1,49 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+bookmark-overlay-name-2 =
+ .value = Nome
+ .accesskey = N
+
+bookmark-overlay-url =
+ .value = Endereço
+ .accesskey = E
+
+# Location refers to the position of the bookmark within the browser's
+# bookmarks, not to its URL or address.
+bookmark-overlay-location-2 =
+ .value = Localização
+ .accesskey = L
+
+bookmark-overlay-choose =
+ .label = Escolher…
+
+bookmark-overlay-folders-expander =
+ .tooltiptext = Mostrar todas as pastas de marcadores
+ .tooltiptextdown = { bookmark-overlay-folders-expander.tooltiptext }
+ .tooltiptextup = Ocultar
+
+bookmark-overlay-new-folder-button =
+ .label = Nova pasta
+ .accesskey = o
+
+bookmark-overlay-tags-2 =
+ .value = Etiquetas
+ .accesskey = E
+
+bookmark-overlay-tags-empty-description =
+ .placeholder = Separar etiquetas com vírgulas
+
+bookmark-overlay-tags-expander =
+ .tooltiptext = Mostrar todas as etiquetas
+ .tooltiptextdown = { bookmark-overlay-tags-expander.tooltiptext }
+ .tooltiptextup = Ocultar
+
+bookmark-overlay-keyword-2 =
+ .value = Palavra-chave
+ .accesskey = P
+
+bookmark-overlay-tags-caption-label = Utilize etiquetas para organizar e pesquisar marcadores a partir da barra de endereço
+
+bookmark-overlay-keyword-caption-label-2 = Utilizar uma única palavra-chave para abrir os marcadores diretamente da barra de endereço
diff --git a/l10n-pt-PT/browser/browser/featureCallout.ftl b/l10n-pt-PT/browser/browser/featureCallout.ftl
new file mode 100644
index 0000000000..ab32703fb3
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/featureCallout.ftl
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Callout dialog primary button to advance to next screen
+callout-primary-advance-button-label = Seguinte
+# Callout dialog primary button to complete the feature tour
+callout-primary-complete-button-label = Percebi!
+
+## Firefox View feature tour strings
+
+# "Tab pickup" refers to the section in Firefox View that displays open
+# tabs from other devices
+callout-firefox-view-tab-pickup-title = Alternar entre dispositivos com a recuperação de separadores
+callout-firefox-view-tab-pickup-subtitle = Obtenha rapidamente os separadores abertos do seu telemóvel e abra-os aqui para obter o máximo rendimento.
+callout-firefox-view-recently-closed-title = Obter os seus separadores de volta em um piscar de olhos.
+callout-firefox-view-recently-closed-subtitle = Todos os seus separadores fechados irão aparecer magicamente aqui. Nunca se preocupe em fechar acidentalmente um site novamente.
+callout-firefox-view-colorways-title = Adicione um toque de cor
+# "Shade" refer to different color options in each colorway.
+callout-firefox-view-colorways-subtitle = Escolha o tom que prefere nos estilos de cor. Apenas no { -brand-product-name }.
+callout-firefox-view-colorways-reminder-title = Explore os nossos estilos de cor mais recentes
+# “Shades” refers to the different color options in each colorways
+callout-firefox-view-colorways-reminder-subtitle = Dê cor ao seu navegador com esses tons icónicos, inspirados em vozes independentes. Apenas no { -brand-product-name }.
+
+## Continuous Onboarding - Firefox View: Tab pick up
+
+# “Boost your browsing” refers to the added benefit the user receives from having
+# access to the same browsing experience when moving from one browser to another.
+# Alternative: ”Improve your browsing experience with tab pickup”
+continuous-onboarding-firefox-view-tab-pickup-title = Impulsione a sua navegação com a recuperação de separadores
+continuous-onboarding-firefox-view-tab-pickup-subtitle = Aceda aos seus separadores abertos a partir de qualquer dispositivo. Além disso, sincronize os seus marcadores, palavras-passe e muito mais.
+continuous-onboarding-firefox-view-tab-pickup-primary-button-label = Começar
+
+## PDF.js Feature Tour Strings
+
+callout-pdfjs-edit-title = Edite PDFs com a nossa nova ferramenta de texto
+callout-pdfjs-edit-body-a = Preencha formulários, adicione comentários, ou anote diretamente no { -brand-short-name }.
+callout-pdfjs-edit-body-b = Deixe de procurar por editores online gratuitos. Preencha formulários, adicione comentários, faça anotações diretamente no { -brand-short-name }.
+callout-pdfjs-edit-button = Seguinte
+callout-pdfjs-draw-title = Assine documentos com a nossa nova ferramenta de desenho
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-a = Anote ficheiros PDF e guarde as suas alterações.
+# “Mark up” refers to the process of “annotating” or adding free hand text or diagramming to the document.
+callout-pdfjs-draw-body-b = Deixe de imprimir e de digitalizar. Anote ficheiros PDF e guarde as suas alterações.
+callout-pdfjs-draw-button = Percebi!
diff --git a/l10n-pt-PT/browser/browser/firefoxRelay.ftl b/l10n-pt-PT/browser/browser/firefoxRelay.ftl
new file mode 100644
index 0000000000..78f2e9f701
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/firefoxRelay.ftl
@@ -0,0 +1,32 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Error messages for failed HTTP web requests.
+## https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#client_error_responses
+## Variables:
+## $status (Number) - HTTP status code, for example 403
+
+firefox-relay-mask-generation-failed = { -relay-brand-name } não conseguiu gerar uma nova máscara. Código de erro HTTP: { $status }.
+firefox-relay-get-reusable-masks-failed = O { -relay-brand-name } não encontrou máscaras reutilizáveis. Código de erro HTTP: { $status }.
+
+##
+
+firefox-relay-must-login-to-fxa = Deve iniciar sessão na { -fxaccount-brand-name } para utilizar o { -relay-brand-name }.
+firefox-relay-get-unlimited-masks =
+ .label = Gerir máscaras
+ .accesskey = G
+firefox-relay-opt-in-title = Proteja o seu endereço de email
+firefox-relay-opt-in-subtitle = Adicionar o { -relay-brand-name }
+firefox-relay-generate-mask-title = Proteja o seu endereço de email
+firefox-relay-generate-mask-subtitle = Gerar máscara { -relay-brand-short-name }
+firefox-relay-opt-in-confirmation-enable =
+ .label = Continuar
+ .accesskey = C
+firefox-relay-opt-in-confirmation-disable =
+ .label = Não mostrar isto novamente
+ .accesskey = N
+firefox-relay-opt-in-confirmation-postpone =
+ .label = Agora não
+ .accesskey = A
diff --git a/l10n-pt-PT/browser/browser/firefoxView.ftl b/l10n-pt-PT/browser/browser/firefoxView.ftl
new file mode 100644
index 0000000000..7f28927f56
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/firefoxView.ftl
@@ -0,0 +1,84 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+toolbar-button-firefox-view =
+ .label = { -firefoxview-brand-name }
+ .tooltiptext = { -firefoxview-brand-name }
+menu-tools-firefox-view =
+ .label = { -firefoxview-brand-name }
+ .accesskey = F
+firefoxview-page-title = { -firefoxview-brand-name }
+firefoxview-close-button =
+ .title = Fechar
+ .aria-label = Fechar
+# Used instead of the localized relative time when a timestamp is within a minute or so of now
+firefoxview-just-now-timestamp = Agora mesmo
+# This is a headline for an area in the product where users can resume and re-open tabs they have previously viewed on other devices.
+firefoxview-tabpickup-header = Escolha de separador
+firefoxview-tabpickup-description = Abrir páginas de outros dispositivos.
+# Variables:
+# $percentValue (Number): the percentage value for setup completion
+firefoxview-tabpickup-progress-label = { $percentValue }% concluído
+firefoxview-tabpickup-step-signin-header = Alterne facilmente entre dispositivos
+firefoxview-tabpickup-step-signin-description = Para obter os separadores do seu telemóvel aqui, primeiro, entre ou crie uma conta.
+firefoxview-tabpickup-step-signin-primarybutton = Continuar
+firefoxview-tabpickup-adddevice-header = Sincronize o { -brand-product-name } no seu telemóvel ou tablet
+firefoxview-tabpickup-adddevice-description = Descarregue o { -brand-product-name } para dispositivos móveis e inicie sessão no mesmo.
+firefoxview-tabpickup-adddevice-learn-how = Saber mais
+firefoxview-tabpickup-adddevice-primarybutton = Obtenha o { -brand-product-name } para dispositivos móveis.
+firefoxview-tabpickup-synctabs-header = Ativar sincronização de separadores
+firefoxview-tabpickup-synctabs-description = Permitir que o { -brand-short-name } partilhe separadores entre dispositivos.
+firefoxview-tabpickup-synctabs-learn-how = Saber mais
+firefoxview-tabpickup-synctabs-primarybutton = Sincronizar separadores abertos
+firefoxview-tabpickup-fxa-admin-disabled-header = A sua organização desativou a sincronização
+firefoxview-tabpickup-fxa-admin-disabled-description = O { -brand-short-name } não consegue sincronizar separadores entre dispositivos porque o seu administrador desativou a sincronização.
+firefoxview-tabpickup-network-offline-header = Verifique a sua ligação à Internet
+firefoxview-tabpickup-network-offline-description = Se está a utilizar uma firewall ou proxy, verifique se o { -brand-short-name } tem permissão para aceder à Internet.
+firefoxview-tabpickup-network-offline-primarybutton = Tentar novamente
+firefoxview-tabpickup-sync-error-header = Estamos com problemas para sincronizar
+firefoxview-tabpickup-generic-sync-error-description = O { -brand-short-name } não pode aceder ao serviço de sincronização neste momento. Tente novamente dentro de alguns momentos.
+firefoxview-tabpickup-sync-error-primarybutton = Tentar novamente
+firefoxview-tabpickup-sync-disconnected-header = Ative a sincronização para continuar
+firefoxview-tabpickup-sync-disconnected-description = Para obter seus separadores, irá precisar de permitir a sincronização no { -brand-short-name }.
+firefoxview-tabpickup-sync-disconnected-primarybutton = Ative a sincronização nas definições
+firefoxview-tabpickup-password-locked-header = Introduza a sua Palavra-passe principal para ver os separadores
+firefoxview-tabpickup-password-locked-description = Para obter os seus separadores, terá de inserir a Palavra-passe principal no { -brand-short-name }.
+firefoxview-tabpickup-password-locked-link = Saber mais
+firefoxview-tabpickup-password-locked-primarybutton = Inserir a Palavra-passe principal
+firefoxview-tabpickup-signed-out-header = Iniciar sessão para restabelecer a ligação
+firefoxview-tabpickup-signed-out-description = Para reassociar e aceder aos seus separadores, inicie sessão na { -fxaccount-brand-name }.
+firefoxview-tabpickup-signed-out-primarybutton = Iniciar sessão
+firefoxview-tabpickup-syncing = Aguarde enquanto os seus separadores estão a ser sincronizados. Será apenas um momento.
+firefoxview-mobile-promo-header = Obter separadores do seu telemóvel ou tablet
+firefoxview-mobile-promo-description = Para ver os seus separadores móveis mais recentes, inicie sessão no { -brand-product-name } para iOS ou Android.
+firefoxview-mobile-promo-primarybutton = Obtenha o { -brand-product-name } para dispositivos móveis
+firefoxview-mobile-confirmation-header = 🎉 Tudo pronto!
+firefoxview-mobile-confirmation-description = Agora pode obter os seus separadores do { -brand-product-name } a partir do seu tablet ou telemóvel.
+firefoxview-closed-tabs-title = Fechados recentemente
+firefoxview-closed-tabs-description2 = Reabrir as páginas que fechou nesta janela.
+firefoxview-closed-tabs-placeholder-header = Nenhum separador fechado recentemente
+firefoxview-closed-tabs-placeholder-body = Quando fecha um separador nesta janela, pode obtê-lo a partir daqui.
+# Variables:
+# $tabTitle (string) - Title of tab being dismissed
+firefoxview-closed-tabs-dismiss-tab =
+ .title = Desativar { $tabTitle }
+# refers to the last tab that was used
+firefoxview-pickup-tabs-badge = Ativo pela última vez
+# Variables:
+# $targetURI (string) - URL that will be opened in the new tab
+firefoxview-tabs-list-tab-button =
+ .title = Abrir { $targetURI } num novo separador
+firefoxview-try-colorways-button = Experimente os estilos de cor
+firefoxview-no-current-colorway-collection = Novos estilos de cor estão a caminho
+firefoxview-change-colorway-button = Alterar estilo de cor
+# Variables:
+# $intensity (String): Colorway intensity
+# $collection (String): Colorway Collection name
+firefoxview-colorway-description = { $intensity } · { $collection }
+firefoxview-synced-tabs-placeholder-header = Nada para ver ainda
+firefoxview-synced-tabs-placeholder-body = Da próxima vez que abrir uma página no { -brand-product-name } noutro dispositivo, obtenha-a aqui, como magia.
+firefoxview-collapse-button-show =
+ .title = Mostrar lista
+firefoxview-collapse-button-hide =
+ .title = Esconder lista
diff --git a/l10n-pt-PT/browser/browser/menubar.ftl b/l10n-pt-PT/browser/browser/menubar.ftl
new file mode 100644
index 0000000000..71c47bebd8
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/menubar.ftl
@@ -0,0 +1,340 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# NOTE: For English locales, strings in this file should be in APA-style Title Case.
+# See https://apastyle.apa.org/style-grammar-guidelines/capitalization/title-case
+#
+# NOTE: For Engineers, please don't re-use these strings outside of the menubar.
+
+
+## Application Menu (macOS only)
+
+menu-application-preferences =
+ .label = Preferências
+menu-application-services =
+ .label = Serviços
+menu-application-hide-this =
+ .label = Ocultar o { -brand-shorter-name }
+menu-application-hide-other =
+ .label = Ocultar outras aplicações
+menu-application-show-all =
+ .label = Mostrar tudo
+menu-application-touch-bar =
+ .label = Personalizar barra de toque…
+
+##
+
+# These menu-quit strings are only used on Windows and Linux.
+menu-quit =
+ .label =
+ { PLATFORM() ->
+ [windows] Sair
+ *[other] Sair
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [windows] r
+ *[other] r
+ }
+# This menu-quit-mac string is only used on macOS.
+menu-quit-mac =
+ .label = Sair do { -brand-shorter-name }
+menu-about =
+ .label = Acerca do { -brand-shorter-name }
+ .accesskey = A
+
+## File Menu
+
+menu-file =
+ .label = Ficheiro
+ .accesskey = F
+menu-file-new-tab =
+ .label = Novo separador
+ .accesskey = s
+menu-file-new-container-tab =
+ .label = Novo separador contentor
+ .accesskey = c
+menu-file-new-window =
+ .label = Nova janela
+ .accesskey = N
+menu-file-new-private-window =
+ .label = Nova janela privada
+ .accesskey = j
+# "Open Location" is only displayed on macOS, and only on windows
+# that aren't main browser windows, or when there are no windows
+# but Firefox is still running.
+menu-file-open-location =
+ .label = Abrir localização…
+menu-file-open-file =
+ .label = Abrir ficheiro…
+ .accesskey = o
+# Variables:
+# $tabCount (Number): the number of tabs that are affected by the action.
+menu-file-close-tab =
+ .label =
+ { $tabCount ->
+ [1] Fechar separador
+ *[other] Fechar { $tabCount } separadores
+ }
+ .accesskey = c
+menu-file-close-window =
+ .label = Fechar janela
+ .accesskey = j
+menu-file-save-page =
+ .label = Guardar página como…
+ .accesskey = a
+menu-file-email-link =
+ .label = Enviar ligação por email…
+ .accesskey = E
+menu-file-share-url =
+ .label = Partilhar
+ .accesskey = h
+menu-file-print-setup =
+ .label = Configurar página…
+ .accesskey = C
+menu-file-print =
+ .label = Imprimir…
+ .accesskey = p
+menu-file-import-from-another-browser =
+ .label = Importar de outro navegador…
+ .accesskey = I
+menu-file-go-offline =
+ .label = Trabalhar offline
+ .accesskey = o
+
+## Edit Menu
+
+menu-edit =
+ .label = Editar
+ .accesskey = E
+menu-edit-find-in-page =
+ .label = Localizar na página…
+ .accesskey = L
+menu-edit-find-again =
+ .label = Localizar novamente
+ .accesskey = g
+menu-edit-bidi-switch-text-direction =
+ .label = Mudar direção do texto
+ .accesskey = x
+
+## View Menu
+
+menu-view =
+ .label = Ver
+ .accesskey = V
+menu-view-toolbars-menu =
+ .label = Barras de ferramentas
+ .accesskey = t
+menu-view-customize-toolbar2 =
+ .label = Personalizar barra de ferramentas…
+ .accesskey = f
+menu-view-sidebar =
+ .label = Barra lateral
+ .accesskey = l
+menu-view-bookmarks =
+ .label = Marcadores
+menu-view-history-button =
+ .label = Histórico
+menu-view-synced-tabs-sidebar =
+ .label = Separadores sincronizados
+menu-view-full-zoom =
+ .label = Zoom
+ .accesskey = Z
+menu-view-full-zoom-enlarge =
+ .label = Ampliar
+ .accesskey = i
+menu-view-full-zoom-reduce =
+ .label = Reduzir
+ .accesskey = d
+menu-view-full-zoom-actual-size =
+ .label = Tamanho atual
+ .accesskey = a
+menu-view-full-zoom-toggle =
+ .label = Aplicar zoom apenas em texto
+ .accesskey = t
+menu-view-page-style-menu =
+ .label = Estilo de página
+ .accesskey = s
+menu-view-page-style-no-style =
+ .label = Sem estilo
+ .accesskey = m
+menu-view-page-basic-style =
+ .label = Estilo de página básico
+ .accesskey = b
+menu-view-repair-text-encoding =
+ .label = Corrigir a codificação de texto
+ .accesskey = C
+
+## These should match what Safari and other Apple applications
+## use on macOS.
+
+menu-view-enter-full-screen =
+ .label = Entrar em ecrã completo
+ .accesskey = e
+menu-view-exit-full-screen =
+ .label = Sair de ecrã completo
+ .accesskey = e
+menu-view-full-screen =
+ .label = Ecrã completo
+ .accesskey = E
+
+## These menu items may use the same accesskey.
+
+# This should match reader-view-enter-button in browser.ftl
+menu-view-enter-readerview =
+ .label = Entrar na vista de leitura
+ .accesskey = l
+# This should match reader-view-close-button in browser.ftl
+menu-view-close-readerview =
+ .label = Fechar vista de leitura
+ .accesskey = l
+
+##
+
+menu-view-show-all-tabs =
+ .label = Mostrar todos os separadores
+ .accesskey = t
+menu-view-bidi-switch-page-direction =
+ .label = Mudar direção da página
+ .accesskey = g
+
+## History Menu
+
+menu-history =
+ .label = Histórico
+ .accesskey = i
+menu-history-show-all-history =
+ .label = Mostrar todo o histórico
+menu-history-clear-recent-history =
+ .label = Limpar histórico recente…
+menu-history-synced-tabs =
+ .label = Separadores sincronizados
+menu-history-restore-last-session =
+ .label = Restaurar sessão anterior
+menu-history-hidden-tabs =
+ .label = Separadores ocultados
+menu-history-undo-menu =
+ .label = Separadores fechados recentemente
+menu-history-undo-window-menu =
+ .label = Janelas fechadas recentemente
+menu-history-reopen-all-tabs = Reabrir todos os separadores
+menu-history-reopen-all-windows = Reabrir todas as janelas
+
+## Bookmarks Menu
+
+menu-bookmarks-menu =
+ .label = Marcadores
+ .accesskey = M
+menu-bookmarks-manage =
+ .label = Gerir marcadores
+menu-bookmark-current-tab =
+ .label = Adicionar separador aos marcadores
+menu-bookmark-edit =
+ .label = Editar este marcador
+menu-bookmark-tab =
+ .label = Adicionar separador atual aos marcadores…
+menu-edit-bookmark =
+ .label = Editar este marcador…
+menu-bookmarks-all-tabs =
+ .label = Adicionar todos os separadores aos marcadores…
+menu-bookmarks-toolbar =
+ .label = Barra de ferramentas de marcadores
+menu-bookmarks-other =
+ .label = Outros marcadores
+menu-bookmarks-mobile =
+ .label = Marcadores de dispositivo móvel
+
+## Tools Menu
+
+menu-tools =
+ .label = Ferramentas
+ .accesskey = t
+menu-tools-downloads =
+ .label = Transferências
+ .accesskey = T
+menu-tools-addons-and-themes =
+ .label = Extras e temas
+ .accesskey = x
+menu-tools-fxa-sign-in2 =
+ .label = Iniciar sessão
+ .accesskey = c
+menu-tools-turn-on-sync2 =
+ .label = Ativar a sincronização…
+ .accesskey = v
+menu-tools-sync-now =
+ .label = Sincronizar agora
+ .accesskey = S
+menu-tools-fxa-re-auth =
+ .label = Restabelecer ligação ao { -brand-product-name }…
+ .accesskey = R
+menu-tools-browser-tools =
+ .label = Ferramentas do navegador
+ .accesskey = g
+menu-tools-task-manager =
+ .label = Gestor de tarefas
+ .accesskey = f
+menu-tools-page-source =
+ .label = Fonte da página
+ .accesskey = o
+menu-tools-page-info =
+ .label = Informação da página
+ .accesskey = I
+menu-settings =
+ .label = Definições
+ .accesskey =
+ { PLATFORM() ->
+ [windows] n
+ *[other] n
+ }
+menu-tools-layout-debugger =
+ .label = Depurador de layout
+ .accesskey = l
+
+## Window Menu
+
+menu-window-menu =
+ .label = Janela
+menu-window-bring-all-to-front =
+ .label = Trazer tudo para a frente
+
+## Help Menu
+
+
+# NOTE: For Engineers, any additions or changes to Help menu strings should
+# also be reflected in the related strings in appmenu.ftl. Those strings, by
+# convention, will have the same ID as these, but prefixed with "app".
+# Example: appmenu-get-help
+#
+# These strings are duplicated to allow for different casing depending on
+# where the strings appear.
+
+menu-help =
+ .label = Ajuda
+ .accesskey = u
+menu-get-help =
+ .label = Obter ajuda
+ .accesskey = j
+menu-help-more-troubleshooting-info =
+ .label = Mais informação para diagnóstico
+ .accesskey = g
+menu-help-report-site-issue =
+ .label = Reportar problema no site…
+menu-help-share-ideas =
+ .label = Partilhe ideias e comentários…
+ .accesskey = h
+menu-help-enter-troubleshoot-mode2 =
+ .label = Modo de diagnóstico…
+ .accesskey = M
+menu-help-exit-troubleshoot-mode =
+ .label = Desligar o modo de diagnóstico
+ .accesskey = m
+# Label of the Help menu item. Either this or
+# menu-help-notdeceptive is shown.
+menu-help-report-deceptive-site =
+ .label = Reportar site decetivo…
+ .accesskey = d
+menu-help-not-deceptive =
+ .label = Este não é um site decetivo…
+ .accesskey = d
diff --git a/l10n-pt-PT/browser/browser/migration.ftl b/l10n-pt-PT/browser/browser/migration.ftl
new file mode 100644
index 0000000000..2bbadb9646
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/migration.ftl
@@ -0,0 +1,147 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migration-wizard =
+ .title = Assistente de importação
+import-from =
+ { PLATFORM() ->
+ [windows] Importar opções, marcadores, histórico, palavras-passe e outros dados de:
+ *[other] Importar preferências, marcadores, histórico, palavras-passe e outros dados de:
+ }
+import-from-bookmarks = Importar marcadores de:
+import-from-ie =
+ .label = Microsoft Internet Explorer
+ .accesskey = M
+import-from-edge =
+ .label = Microsoft Edge
+ .accesskey = E
+import-from-edge-legacy =
+ .label = Microsoft Edge Legacy
+ .accesskey = L
+import-from-edge-beta =
+ .label = Microsoft Edge Beta
+ .accesskey = d
+import-from-nothing =
+ .label = Não importar nada
+ .accesskey = d
+import-from-safari =
+ .label = Safari
+ .accesskey = S
+import-from-opera =
+ .label = Opera
+ .accesskey = O
+import-from-vivaldi =
+ .label = Vivaldi
+ .accesskey = V
+import-from-brave =
+ .label = Brave
+ .accesskey = r
+import-from-canary =
+ .label = Chrome Canary
+ .accesskey = n
+import-from-chrome =
+ .label = Chrome
+ .accesskey = C
+import-from-chrome-beta =
+ .label = Chrome Beta
+ .accesskey = B
+import-from-chrome-dev =
+ .label = Chrome Dev
+ .accesskey = D
+import-from-chromium =
+ .label = Chromium
+ .accesskey = u
+import-from-firefox =
+ .label = Firefox
+ .accesskey = x
+import-from-360se =
+ .label = 360 Secure Browser
+ .accesskey = 3
+import-from-opera-gx =
+ .label = Opera GX
+ .accesskey = G
+no-migration-sources = Não foram encontrados programas que contenham marcadores, histórico ou palavras-passe.
+import-source-page-title = Importar definições e dados
+import-items-page-title = Itens a importar
+import-items-description = Selecione os itens a importar:
+import-permissions-page-title = Por favor, dê permissões ao { -brand-short-name }
+# Do not translate "Bookmarks.plist"; the file name is the same everywhere.
+import-permissions-description = O macOS exige que você permita explicitamente o acesso do { -brand-short-name } aos marcadores do Safari. Clique em “Continuar” e selecione o ficheiro “Bookmarks.plist” no painel Abrir ficheiro que é apresentado.
+import-migrating-page-title = A importar…
+import-migrating-description = Os seguintes itens estão atualmente a ser importados…
+import-select-profile-page-title = Selecionar perfil
+import-select-profile-description = Os seguintes perfis estão disponíveis para importação de:
+import-done-page-title = Importação concluída
+import-done-description = Os seguintes itens foram importados com sucesso:
+import-close-source-browser = Por favor certifique-se de que o navegador selecionado está fechado antes de continuar.
+source-name-ie = Internet Explorer
+source-name-edge = Microsoft Edge
+source-name-chrome = Google Chrome
+imported-safari-reading-list = Lista de leitura (Do Safari)
+imported-edge-reading-list = Lista de leitura (do Edge)
+
+## Browser data types
+## All of these strings get a $browser variable passed in.
+## You can use the browser variable to differentiate the name of items,
+## which may have different labels in different browsers.
+## The supported values for the $browser variable are:
+## 360se
+## chrome
+## edge
+## firefox
+## ie
+## safari
+## The various beta and development versions of edge and chrome all get
+## normalized to just "edge" and "chrome" for these strings.
+
+browser-data-cookies-checkbox =
+ .label = Cookies
+browser-data-cookies-label =
+ .value = Cookies
+browser-data-history-checkbox =
+ .label =
+ { $browser ->
+ [firefox] Histórico de navegação e marcadores
+ *[other] Histórico de navegação
+ }
+browser-data-history-label =
+ .value =
+ { $browser ->
+ [firefox] Histórico de navegação e marcadores
+ *[other] Histórico de navegação
+ }
+browser-data-formdata-checkbox =
+ .label = Histórico de formulários guardados
+browser-data-formdata-label =
+ .value = Histórico de formulários guardados
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-checkbox =
+ .label = Credenciais e palavras-passe guardadas
+# This string should use the same phrase for "logins and passwords" as the
+# label in the main hamburger menu that opens about:logins.
+browser-data-passwords-label =
+ .value = Credenciais e palavras-passe guardadas
+browser-data-bookmarks-checkbox =
+ .label =
+ { $browser ->
+ [ie] Favoritos
+ [edge] Favoritos
+ *[other] Marcadores
+ }
+browser-data-bookmarks-label =
+ .value =
+ { $browser ->
+ [ie] Favoritos
+ [edge] Favoritos
+ *[other] Marcadores
+ }
+browser-data-otherdata-checkbox =
+ .label = Outros dados
+browser-data-otherdata-label =
+ .label = Outros dados
+browser-data-session-checkbox =
+ .label = Janelas e separadores
+browser-data-session-label =
+ .value = Janelas e separadores
diff --git a/l10n-pt-PT/browser/browser/netError.ftl b/l10n-pt-PT/browser/browser/netError.ftl
new file mode 100644
index 0000000000..5bf5f25c2f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/netError.ftl
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+dns-not-found-title = Servidor não encontrado
+# Variables:
+# $hostAndPath (String) - a suggested site (e.g. "www.example.com") that the user may have meant instead.
+dns-not-found-with-suggestion = Pretendia aceder a { $hostAndPath }?
+dns-not-found-hint-header = Se inseriu o endereço correto, pode:
+dns-not-found-hint-try-again = Tentar novamente mais tarde
+dns-not-found-hint-check-network = Verificar a sua ligação à rede
+dns-not-found-hint-firewall = Verificar se { -brand-short-name } tem permissão para aceder à Internet (pode estar ligado, mas atrás de uma firewall)
diff --git a/l10n-pt-PT/browser/browser/newtab/asrouter.ftl b/l10n-pt-PT/browser/browser/newtab/asrouter.ftl
new file mode 100644
index 0000000000..2f0be52a46
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/newtab/asrouter.ftl
@@ -0,0 +1,276 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These messages are used as headings in the recommendation doorhanger
+
+cfr-doorhanger-extension-heading = Extensão recomendada
+cfr-doorhanger-feature-heading = Funcionalidade recomendada
+
+##
+
+cfr-doorhanger-extension-sumo-link =
+ .tooltiptext = Porque é que estou a ver isto
+cfr-doorhanger-extension-cancel-button = Agora não
+ .accesskey = n
+cfr-doorhanger-extension-ok-button = Adicionar agora
+ .accesskey = A
+cfr-doorhanger-extension-manage-settings-button = Gerir definições de recomendações
+ .accesskey = m
+cfr-doorhanger-extension-never-show-recommendation = Não me mostrar esta recomendação
+ .accesskey = s
+cfr-doorhanger-extension-learn-more-link = Saber mais
+# This string is used on a new line below the add-on name
+# Variables:
+# $name (String) - Add-on author name
+cfr-doorhanger-extension-author = por { $name }
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-extension-notification = Recomendação
+cfr-doorhanger-extension-notification2 = Recomendação
+ .tooltiptext = Recomendação de extensão
+ .a11y-announcement = Recomendação de extensão disponível
+# This is a notification displayed in the address bar.
+# When clicked it opens a panel with a message for the user.
+cfr-doorhanger-feature-notification = Recomendação
+ .tooltiptext = Recomendação de funcionalidade
+ .a11y-announcement = Recomendação de funcionalidade disponível
+
+## Add-on statistics
+## These strings are used to display the total number of
+## users and rating for an add-on. They are shown next to each other.
+
+# Variables:
+# $total (Number) - The rating of the add-on from 1 to 5
+cfr-doorhanger-extension-rating =
+ .tooltiptext =
+ { $total ->
+ [one] { $total } estrela
+ *[other] { $total } estrelas
+ }
+# Variables:
+# $total (Number) - The total number of users using the add-on
+cfr-doorhanger-extension-total-users =
+ { $total ->
+ [one] { $total } utilizador
+ *[other] { $total } utilizadores
+ }
+
+## Cookie Banner Handling Onboarding
+
+# Simplified version of the headline if the original text doesn't work
+# in your language: `See fewer cookie requests`.
+cfr-cookie-banner-handling-header = Desapareçam faixas de cookies!
+cfr-cookie-banner-handling-body = Permitir que o { -brand-short-name } rejeite automaticamente todos os pedidos de banner de cookies, quando possível. Caso contrário, todos os cookies serão aceites para rejeitar ainda mais banners.
+cfr-cookie-banner-accept-button = Rejeitar Pedidos
+ .accesskey = R
+cfr-cookie-banner-reject-button = Agora não
+ .accesskey = A
+cfr-cookie-banner-handling-header-variant-1 = Ver menos pop-ups de cookies
+cfr-cookie-banner-handling-body-variant-1 = Deixe o { -brand-short-name } responder automaticamente a pop-ups de cookies para que possa voltar a navegar sem distrações. Se for possível, o { -brand-short-name } irá rejeitar todos os pedidos ou, na eventualidade de não ser possível, aceitar todos.
+cfr-cookie-banner-accept-button-variant-1 = Ignorar pop-ups
+ .accesskey = I
+cfr-cookie-banner-reject-button-variant-1 = Não, obrigado
+ .accesskey = N
+cfr-cookie-banner-handling-header-variant-2 = Redução de Faixas de Cookies
+cfr-cookie-banner-handling-body-variant-2 = Deixar o { -brand-short-name } recusar o pedido de consentimento de cookies de um site, se for possível ou, no caso de não ser possível, aceitar o acesso a cookies?
+cfr-cookie-banner-accept-button-variant-2 = Permitir
+ .accesskey = P
+cfr-cookie-banner-reject-button-variant-2 = Agora não
+ .accesskey = n
+
+## Firefox Accounts Message
+
+cfr-doorhanger-bookmark-fxa-header = Sincronize os seus marcadores em todo o lado.
+cfr-doorhanger-bookmark-fxa-body = Ótimo achado! Agora não fique sem este marcador nos seus dispositivos móveis. Comece com uma { -fxaccount-brand-name }.
+cfr-doorhanger-bookmark-fxa-link-text = Sincronizar marcadores agora...
+cfr-doorhanger-bookmark-fxa-close-btn-tooltip =
+ .aria-label = Botão de fecho
+ .title = Fechar
+
+## Protections panel
+
+cfr-protections-panel-header = Navegue sem ser seguido
+cfr-protections-panel-body = Guarde os seus dados para si. O { -brand-short-name } protege-o de muitos dos rastreadores mais comuns que monitorizam o que faz na Internet.
+cfr-protections-panel-link-text = Saber mais
+
+## What's New toolbar button and panel
+
+# This string is used by screen readers to offer a text based alternative for
+# the notification icon
+cfr-badge-reader-label-newfeature = Nova funcionalidade:
+cfr-whatsnew-button =
+ .label = Novidades
+ .tooltiptext = Novidades
+cfr-whatsnew-release-notes-link-text = Leia as notas de lançamento
+
+## Enhanced Tracking Protection Milestones
+
+# Variables:
+# $blockedCount (Number) - The total count of blocked trackers. This number will always be greater than 1.
+# $date (Datetime) - The date we began recording the count of blocked trackers
+cfr-doorhanger-milestone-heading2 =
+ { $blockedCount ->
+ [one] O { -brand-short-name } bloqueou { $blockedCount } rastreador desde { DATETIME($date, month: "long", year: "numeric") }!
+ *[other] O { -brand-short-name } bloqueou { $blockedCount } rastreadores desde { DATETIME($date, month: "long", year: "numeric") }!
+ }
+cfr-doorhanger-milestone-ok-button = Ver tudo
+ .accesskey = V
+cfr-doorhanger-milestone-close-button = Fechar
+ .accesskey = F
+
+## DOH Message
+
+cfr-doorhanger-doh-body = A sua privacidade é importante. Agora, o { -brand-short-name } encaminha os seus pedidos de DNS de forma segura e sempre que possível, para um serviço de um parceiro para o proteger enquanto navega.
+cfr-doorhanger-doh-header = Pesquisas de DNS encriptadas e mais seguras
+cfr-doorhanger-doh-primary-button-2 = OK
+ .accesskey = O
+cfr-doorhanger-doh-secondary-button = Desativar
+ .accesskey = D
+
+## Fission Experiment Message
+
+cfr-doorhanger-fission-body-approved = A sua privacidade é importante. O { -brand-short-name } agora isola os sites uns dos outros, o que torna mais difícil que os piratas roubem palavras-passe, números de cartão de crédito e outras informações sensíveis.
+cfr-doorhanger-fission-header = Isolamento de sites
+cfr-doorhanger-fission-primary-button = OK, percebi
+ .accesskey = O
+cfr-doorhanger-fission-secondary-button = Saber mais
+ .accesskey = b
+
+## Full Video Support CFR message
+
+cfr-doorhanger-video-support-body = Os vídeos neste site podem não ser reproduzidos corretamente nesta versão do { -brand-short-name }. Para uma maior compatibilidade vídeo, atualize agora o { -brand-short-name }.
+cfr-doorhanger-video-support-header = Atualizar o { -brand-short-name } para reproduzir o vídeo
+cfr-doorhanger-video-support-primary-button = Atualizar agora
+ .accesskey = u
+
+## Spotlight modal shared strings
+
+spotlight-learn-more-collapsed = Saber mais
+ .title = Expanda para saber mais sobre a funcionalidade
+spotlight-learn-more-expanded = Saber mais
+ .title = Fechar
+
+## VPN promotion dialog for public Wi-Fi users
+##
+## If a user is detected to be on a public Wi-Fi network, they are given a
+## bit of info about how to improve their privacy and then offered a button
+## to the Mozilla VPN page and a link to dismiss the dialog.
+
+# This header text can be explicitly wrapped.
+spotlight-public-wifi-vpn-header = Parece que está a utilizar uma rede Wi-Fi pública
+spotlight-public-wifi-vpn-body = Para ocultar a sua localização e atividade de navegação, considere uma Rede Privada Virtual. Isto irá melhorar a sua proteção ao navegar em locais públicos, como aeroportos e cafés.
+spotlight-public-wifi-vpn-primary-button = Mantenha a sua privacidade com a { -mozilla-vpn-brand-name }
+ .accesskey = M
+spotlight-public-wifi-vpn-link = Agora não
+ .accesskey = n
+
+## Total Cookie Protection Rollout
+
+# "Test pilot" is used as a verb. Possible alternatives: "Be the first to try",
+# "Join an early experiment". This header text can be explicitly wrapped.
+spotlight-total-cookie-protection-header =
+ Teste a nossa mais poderosa
+ experiência de privacidade de sempre
+spotlight-total-cookie-protection-body = A Proteção total de cookies impede que os rastreadores utilizem cookies para o perseguir na Internet.
+# "Early access" for this feature rollout means it's a "feature preview" or
+# "soft launch" as not everybody will get it yet.
+spotlight-total-cookie-protection-expanded = O { -brand-short-name } isola as cookies, limitando o acesso aos mesmos ao site em que está, de modo a que os rastreadores não os possam utilizar para o monitorizar. Com este acesso antecipado, estará a ajudar a otimizar esta funcionalidade para que possamos continuar a construir uma Internet melhor para todos.
+spotlight-total-cookie-protection-primary-button = Ativar a Proteção total de cookies
+spotlight-total-cookie-protection-secondary-button = Agora não
+
+## Emotive Continuous Onboarding
+
+spotlight-better-internet-header = Uma Internet melhor começa por si
+spotlight-better-internet-body = Quando utiliza o { -brand-short-name }, está a votar numa Internet aberta e acessível, o que é melhor para todos.
+spotlight-peace-mind-header = Estamos consigo
+spotlight-peace-mind-body = Todos os meses, o { -brand-short-name } bloqueia uma média de mais de 3.000 rastreadores por utilizador. Porque nada, especialmente empecilhos de privacidade como os rastreadores, devem ficar entre si e uma boa Internet.
+spotlight-pin-primary-button =
+ { PLATFORM() ->
+ [macos] Manter na Doca
+ *[other] Fixar na barra de tarefas
+ }
+spotlight-pin-secondary-button = Agora não
+
+## MR2022 Background Update Windows native toast notification strings.
+##
+## These strings will be displayed by the Windows operating system in
+## a native toast, like:
+##
+## multi-line title
+## multi-line text
+##
+## [ primary button ] [ secondary button ]
+##
+## The button labels are fitted into narrow fixed-width buttons by
+## Windows and therefore must be as narrow as possible.
+
+mr2022-background-update-toast-title = Novo { -brand-short-name }. Mais privado. Menos rastreadores. Sem restrições.
+mr2022-background-update-toast-text = Experimente o mais novo { -brand-short-name } agora, atualizado com a nossa mais forte proteção anti-rastreamento, até o momento.
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it
+# using a variable font like Arial): the button can only fit 1-2
+# additional characters, exceeding characters will be truncated.
+mr2022-background-update-toast-primary-button-label = Abra o { -brand-shorter-name } agora
+# This button label will be fitted into a narrow fixed-width button by
+# Windows. Try to not exceed the width of the English text (compare it using a
+# variable font like Arial): the button can only fit 1-2 additional characters,
+# exceeding characters will be truncated.
+mr2022-background-update-toast-secondary-button-label = Lembrar mais tarde
+
+## Firefox View CFR
+
+firefoxview-cfr-primarybutton = Experimentar
+ .accesskey = E
+firefoxview-cfr-secondarybutton = Agora não
+ .accesskey = n
+firefoxview-cfr-header-v2 = Retome rapidamente onde ficou
+firefoxview-cfr-body-v2 = Recupere os separadores fechados recentemente, além de alternar facilmente entre os dispositivos com { -firefoxview-brand-name }.
+
+## Firefox View Spotlight
+
+firefoxview-spotlight-promo-title = Diga olá ao { -firefoxview-brand-name }
+# “Poof” refers to the expression to convey when something or someone suddenly disappears, or in this case, reappears. For example, “Poof, it’s gone.”
+firefoxview-spotlight-promo-subtitle = Quer aquele separador aberto no seu telemóvel? Obtenha-o. Precisa daquele site que acabou de visitar? Poof, ele está de volta com o { -firefoxview-brand-name }.
+firefoxview-spotlight-promo-primarybutton = Ver como funciona
+firefoxview-spotlight-promo-secondarybutton = Ignorar
+
+## Colorways expiry reminder CFR
+
+colorways-cfr-primarybutton = Escolher estilo de cor
+ .accesskey = E
+# "shades" refers to the different color options available to users in colorways.
+colorways-cfr-body = Dê cor ao seu navegador com tons exclusivos do { -brand-short-name } inspirados nas vozes que mudaram a cultura.
+colorways-cfr-header-28days = Os estilos de cor de Vozes Independentes expiram a 16 de janeiro
+colorways-cfr-header-14days = Os estilos de cor de Vozes Independentes expiram em duas semanas
+colorways-cfr-header-7days = Os estilos de cor de Vozes Independentes expiram esta semana
+colorways-cfr-header-today = Os estilos de cor de Independent Voices expiram hoje
+
+## Cookie Banner Handling CFR
+
+# Alternate headline for localization: "See fewer cookie requests"
+cfr-cookiebanner-header = Desapareçam faixas de cookies!
+cfr-cookiebanner-body = Deixar o { -brand-short-name } rejeitar automaticamente todos os pedidos de cookies, sempre que possível.
+cfr-cookiebanner-accept-button = Ignorar faixas
+ .accesskey = I
+cfr-cookiebanner-reject-button = Agora não
+ .accesskey = n
+cfr-cookiebanner-header-variant-1 = Ver menos pop-ups de cookies
+cfr-cookiebanner-body-variant-1 = Permitir que o { -brand-short-name } responda automaticamente a pop-ups de cookies para que possa voltar a navegar sem distrações. O { -brand-short-name } irá rejeitar todos os pedidos, se for possível.
+cfr-cookiebanner-accept-button-variant-1 = Ignorar pop-ups
+ .accesskey = I
+cfr-cookiebanner-reject-button-variant-1 = Não, obrigado
+ .accesskey = N
+cfr-cookiebanner-header-variant-2 = Redução de Faixas de Cookies
+cfr-cookiebanner-body-variant-2 = Reduza a quantidade de faixas de cookies que vê, deixando o { -brand-short-name } rejeitar o pedido de consentimento de cookies de um site (se for possível).
+cfr-cookiebanner-accept-button-variant-2 = Permitir
+ .accesskey = P
+cfr-cookiebanner-reject-button-variant-2 = Agora não
+ .accesskey = n
+
+## These strings are used in the Fox doodle Pin/set default spotlights
+
+july-jam-headline = Estamos consigo
+july-jam-body = Todos os meses o { -brand-short-name } bloqueia uma média de mais de 3.000 rastreadores por utilizador, permitindo que possa ter um acesso rápido e seguro à melhor Internet.
+july-jam-set-default-primary = Abrir as minhas ligações com o { -brand-short-name }
diff --git a/l10n-pt-PT/browser/browser/newtab/newtab.ftl b/l10n-pt-PT/browser/browser/newtab/newtab.ftl
new file mode 100644
index 0000000000..30294044c1
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/newtab/newtab.ftl
@@ -0,0 +1,282 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Firefox Home / New Tab strings for about:home / about:newtab.
+
+newtab-page-title = Novo separador
+newtab-settings-button =
+ .title = Personalizar a sua página de novo separador
+newtab-personalize-icon-label =
+ .title = Personalizar novo separador
+ .aria-label = Personalizar novo separador
+newtab-personalize-dialog-label =
+ .aria-label = Personalizar
+
+## Search box component.
+
+# "Search" is a verb/action
+newtab-search-box-search-button =
+ .title = Pesquisar
+ .aria-label = Pesquisar
+
+# Variables
+# $engine (String): the name of the user's default search engine
+newtab-search-box-handoff-text = Pesquisar com { $engine } ou introduzir endereço
+newtab-search-box-handoff-text-no-engine = Pesquisar ou introduzir endereço
+# Variables
+# $engine (String): the name of the user's default search engine
+newtab-search-box-handoff-input =
+ .placeholder = Pesquisar com { $engine } ou introduzir endereço
+ .title = Pesquisar com { $engine } ou introduzir endereço
+ .aria-label = Pesquisar com { $engine } ou introduzir endereço
+newtab-search-box-handoff-input-no-engine =
+ .placeholder = Pesquisar ou introduzir endereço
+ .title = Pesquisar ou introduzir endereço
+ .aria-label = Pesquisar ou introduzir endereço
+
+newtab-search-box-text = Pesquisar na Internet
+newtab-search-box-input =
+ .placeholder = Pesquisar na Internet
+ .aria-label = Pesquisar na Internet
+
+## Top Sites - General form dialog.
+
+newtab-topsites-add-search-engine-header = Adicionar motor de pesquisa
+newtab-topsites-add-shortcut-header = Novo atalho
+newtab-topsites-edit-topsites-header = Editar site mais visitado
+newtab-topsites-edit-shortcut-header = Editar atalho
+newtab-topsites-title-label = Título
+newtab-topsites-title-input =
+ .placeholder = Digite um título
+
+newtab-topsites-url-label = URL
+newtab-topsites-url-input =
+ .placeholder = Digite ou cole um URL
+newtab-topsites-url-validation = URL válido requerido
+
+newtab-topsites-image-url-label = URL de imagem personalizada
+newtab-topsites-use-image-link = Utilizar uma imagem personalizada…
+newtab-topsites-image-validation = A imagem falhou o carregamento. Tente um URL diferente.
+
+## Top Sites - General form dialog buttons. These are verbs/actions.
+
+newtab-topsites-cancel-button = Cancelar
+newtab-topsites-delete-history-button = Apagar do histórico
+newtab-topsites-save-button = Guardar
+newtab-topsites-preview-button = Pré-visualizar
+newtab-topsites-add-button = Adicionar
+
+## Top Sites - Delete history confirmation dialog.
+
+newtab-confirm-delete-history-p1 = Tem a certeza que pretende eliminar todas as instâncias desta página do seu histórico?
+# "This action" refers to deleting a page from history.
+newtab-confirm-delete-history-p2 = Esta ação não pode ser anulada.
+
+## Top Sites - Sponsored label
+
+newtab-topsite-sponsored = Patrocinado
+
+## Context Menu - Action Tooltips.
+
+# General tooltip for context menus.
+newtab-menu-section-tooltip =
+ .title = Abrir menu
+ .aria-label = Abrir menu
+
+# Tooltip for dismiss button
+newtab-dismiss-button-tooltip =
+ .title = Remover
+ .aria-label = Remover
+
+# This tooltip is for the context menu of Pocket cards or Topsites
+# Variables:
+# $title (String): The label or hostname of the site. This is for screen readers when the context menu button is focused/active.
+newtab-menu-content-tooltip =
+ .title = Abrir menu
+ .aria-label = Abrir menu de contexto para { $title }
+# Tooltip on an empty topsite box to open the New Top Site dialog.
+newtab-menu-topsites-placeholder-tooltip =
+ .title = Editar este site
+ .aria-label = Editar este site
+
+## Context Menu: These strings are displayed in a context menu and are meant as a call to action for a given page.
+
+newtab-menu-edit-topsites = Editar
+newtab-menu-open-new-window = Abrir numa nova janela
+newtab-menu-open-new-private-window = Abrir numa nova janela privada
+newtab-menu-dismiss = Dispensar
+newtab-menu-pin = Afixar
+newtab-menu-unpin = Desafixar
+newtab-menu-delete-history = Apagar do histórico
+newtab-menu-save-to-pocket = Guardar no { -pocket-brand-name }
+newtab-menu-delete-pocket = Apagar do { -pocket-brand-name }
+newtab-menu-archive-pocket = Arquivar no { -pocket-brand-name }
+newtab-menu-show-privacy-info = Os nossos patrocinadores e a sua privacidade
+
+## Message displayed in a modal window to explain privacy and provide context for sponsored content.
+
+newtab-privacy-modal-button-done = Concluído
+newtab-privacy-modal-button-manage = Gerir configurações de conteúdo patrocinado
+newtab-privacy-modal-header = As sua privacidade é importante.
+newtab-privacy-modal-paragraph-2 =
+ Para além de encontrar históricas cativantes, também lhe mostramos conteúdo relevante
+ e altamente escrutinado a partir de patrocinadores selecionados. Fique descansado que os seus
+ dados de navegação nunca deixam a sua cópia pessoal do { -brand-product-name } — nem nós,
+ nem os nossos patrocinadores têm acesso a esses dados.
+newtab-privacy-modal-link = Saiba como a privacidade funciona no novo separador
+
+##
+
+# Bookmark is a noun in this case, "Remove bookmark".
+newtab-menu-remove-bookmark = Remover marcador
+# Bookmark is a verb here.
+newtab-menu-bookmark = Adicionar aos marcadores
+
+## Context Menu - Downloaded Menu. "Download" in these cases is not a verb,
+## it is a noun. As in, "Copy the link that belongs to this downloaded item".
+
+newtab-menu-copy-download-link = Copiar ligação da transferência
+newtab-menu-go-to-download-page = Ir para a página da transferência
+newtab-menu-remove-download = Remover do histórico
+
+## Context Menu - Download Menu: These are platform specific strings found in the context menu of an item that has
+## been downloaded. The intention behind "this action" is that it will show where the downloaded file exists on the file
+## system for each operating system.
+
+newtab-menu-show-file =
+ { PLATFORM() ->
+ [macos] Mostrar no Finder
+ *[other] Abrir pasta de destino
+ }
+newtab-menu-open-file = Abrir ficheiro
+
+## Card Labels: These labels are associated to pages to give
+## context on how the element is related to the user, e.g. type indicates that
+## the page is bookmarked, or is currently open on another device.
+
+newtab-label-visited = Visitados
+newtab-label-bookmarked = Adicionados aos marcadores
+newtab-label-removed-bookmark = Marcador removido
+newtab-label-recommended = Tendência
+newtab-label-saved = Guardado no { -pocket-brand-name }
+newtab-label-download = Transferido
+
+# This string is used in the story cards to indicate sponsored content
+# Variables:
+# $sponsorOrSource (String): This is the name of a company or their domain
+newtab-label-sponsored = { $sponsorOrSource } · Patrocinado
+
+# This string is used at the bottom of story cards to indicate sponsored content
+# Variables:
+# $sponsor (String): This is the name of a sponsor
+newtab-label-sponsored-by = Patrocinado por { $sponsor }
+
+# This string is used under the image of story cards to indicate source and time to read
+# Variables:
+# $source (String): This is the name of a company or their domain
+# $timeToRead (Number): This is the estimated number of minutes to read this story
+newtab-label-source-read-time = { $source } · { $timeToRead } min
+
+## Section Menu: These strings are displayed in the section context menu and are
+## meant as a call to action for the given section.
+
+newtab-section-menu-remove-section = Remover secção
+newtab-section-menu-collapse-section = Colapsar secção
+newtab-section-menu-expand-section = Expandir secção
+newtab-section-menu-manage-section = Gerir secção
+newtab-section-menu-manage-webext = Gerir extensão
+newtab-section-menu-add-topsite = Adicionar site mais visitado
+newtab-section-menu-add-search-engine = Adicionar motor de pesquisa
+newtab-section-menu-move-up = Mover para cima
+newtab-section-menu-move-down = Mover para baixo
+newtab-section-menu-privacy-notice = Aviso de privacidade
+
+## Section aria-labels
+
+newtab-section-collapse-section-label =
+ .aria-label = Colapsar secção
+newtab-section-expand-section-label =
+ .aria-label = Expandir secção
+
+## Section Headers.
+
+newtab-section-header-topsites = Sites mais visitados
+newtab-section-header-recent-activity = Atividade recente
+# Variables:
+# $provider (String): Name of the corresponding content provider.
+newtab-section-header-pocket = Recomendado por { $provider }
+
+## Empty Section States: These show when there are no more items in a section. Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+
+newtab-empty-section-highlights = Comece a navegar, e iremos mostrar-lhe alguns dos ótimos artigos, vídeos, e outras páginas que visitou recentemente ou adicionou aos marcadores aqui.
+
+# Ex. When there are no more Pocket story recommendations, in the space where there would have been stories, this is shown instead.
+# Variables:
+# $provider (String): Name of the content provider for this section, e.g "Pocket".
+newtab-empty-section-topstories = Já apanhou tudo. Verifique mais tarde para mais histórias principais de { $provider }. Não pode esperar? Selecione um tópico popular para encontrar mais boas histórias de toda a web.
+
+## Empty Section (Content Discovery Experience). These show when there are no more stories or when some stories fail to load.
+
+newtab-discovery-empty-section-topstories-header = Está em dia!
+newtab-discovery-empty-section-topstories-content = Volte mais tarde para mais histórias.
+newtab-discovery-empty-section-topstories-try-again-button = Tentar novamente
+newtab-discovery-empty-section-topstories-loading = A carregar…
+# Displays when a layout in a section took too long to fetch articles.
+newtab-discovery-empty-section-topstories-timed-out = Oops! Quase carregámos esta secção, por pouco.
+
+## Pocket Content Section.
+
+# This is shown at the bottom of the trending stories section and precedes a list of links to popular topics.
+newtab-pocket-read-more = Tópicos populares:
+newtab-pocket-new-topics-title = Quer ainda mais histórias? Consulte estes tópicos populares do { -pocket-brand-name }
+newtab-pocket-more-recommendations = Mais recomendações
+newtab-pocket-learn-more = Saber mais
+newtab-pocket-cta-button = Obter o { -pocket-brand-name }
+newtab-pocket-cta-text = Guarde as histórias que adora no { -pocket-brand-name }, e abasteça a sua mente com leituras fascinantes.
+newtab-pocket-pocket-firefox-family = O { -pocket-brand-name } faz parte da família { -brand-product-name }
+
+# A save to Pocket button that shows over the card thumbnail on hover.
+newtab-pocket-save-to-pocket = Guardar no { -pocket-brand-name }
+newtab-pocket-saved-to-pocket = Guardado no { -pocket-brand-name }
+
+# This is a button shown at the bottom of the Pocket section that loads more stories when clicked.
+newtab-pocket-load-more-stories-button = Carreguar mais histórias
+
+## Pocket Final Card Section.
+## This is for the final card in the Pocket grid.
+
+newtab-pocket-last-card-title = Está atualizado!
+newtab-pocket-last-card-desc = Volte mais tarde para mais.
+newtab-pocket-last-card-image =
+ .alt = Está atualizado
+
+# A save to Pocket button that shows over the card thumbnail on hover.
+newtab-pocket-save = Guardar
+newtab-pocket-saved = Guardado
+
+## Error Fallback Content.
+## This message and suggested action link are shown in each section of UI that fails to render.
+
+newtab-error-fallback-info = Oops, algo correu mal ao carregar este conteúdo.
+newtab-error-fallback-refresh-link = Atualize a página para tentar novamente.
+
+## Customization Menu
+
+newtab-custom-shortcuts-title = Atalhos
+newtab-custom-shortcuts-subtitle = Sites que guarda ou visita
+newtab-custom-row-selector =
+ { $num ->
+ [one] { $num } linha
+ *[other] { $num } linhas
+ }
+newtab-custom-sponsored-sites = Atalhos patrocinados
+newtab-custom-pocket-title = Recomendado por { -pocket-brand-name }
+newtab-custom-pocket-subtitle = Conteúdo excecional com curadoria de { -pocket-brand-name }, parte da família { -brand-product-name }
+newtab-custom-pocket-sponsored = Histórias patrocinadas
+newtab-custom-pocket-show-recent-saves = Mostrar coisas guardadas recentemente
+newtab-custom-recent-title = Atividade recente
+newtab-custom-recent-subtitle = Uma seleção de sites e conteúdos recentes
+newtab-custom-close-button = Fechar
+newtab-custom-settings = Gerir mais definições
diff --git a/l10n-pt-PT/browser/browser/newtab/onboarding.ftl b/l10n-pt-PT/browser/browser/newtab/onboarding.ftl
new file mode 100644
index 0000000000..675a4c140f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/newtab/onboarding.ftl
@@ -0,0 +1,419 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### UI strings for the MR1 onboarding / multistage about:welcome
+### Various strings use a non-breaking space to avoid a single dangling /
+### widowed word, so test on various window sizes if you also want this.
+
+
+## Welcome page strings
+
+onboarding-welcome-header = Bem-vindo(a) ao { -brand-short-name }
+onboarding-start-browsing-button-label = Começar a navegar
+onboarding-not-now-button-label = Agora não
+
+## Custom Return To AMO onboarding strings
+
+return-to-amo-subtitle = Ótimo, você tem o { -brand-short-name }
+# will be replaced with the icon belonging to the extension
+#
+# Variables:
+# $addon-name (String) - Name of the add-on
+return-to-amo-addon-title = Agora vamos obter o { $addon-name }.
+return-to-amo-add-extension-label = Adicionar a extensão
+return-to-amo-add-theme-label = Adicionar o tema
+
+## Variables: $addon-name (String) - Name of the add-on to be installed
+
+mr1-return-to-amo-subtitle = Diga olá a(ao) { -brand-short-name }
+mr1-return-to-amo-addon-title = Tem um navegador rápido e privado ao seu alcance. Agora pode adicionar { $addon-name } e fazer ainda mais com o { -brand-short-name }.
+mr1-return-to-amo-add-extension-label = Adicionar { $addon-name }
+
+## Multistage onboarding strings (about:welcome pages)
+
+# Aria-label to make the "steps" of multistage onboarding visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+onboarding-welcome-steps-indicator =
+ .aria-label = Primeiros passos: ecrã { $current } de { $total }
+
+# Aria-label to make the "steps" of multistage onboarding visible to screen readers.
+# Variables:
+# $current (Int) - Number of the current page
+# $total (Int) - Total number of pages
+
+onboarding-welcome-steps-indicator2 =
+ .aria-valuetext = Progresso: passo { $current } de { $total }
+onboarding-welcome-steps-indicator-label =
+ .aria-label = Progresso: passo { $current } de { $total }
+# "Hero Text" displayed on left side of welcome screen.
+# The "Fire" in "Fire starts here" plays on the "Fire" in "Firefox".
+# It also signals the passion users bring to Firefox, how they use
+# Firefox to pursue those passions, as well as the boldness in their
+# choice to use Firefox over a larger competitor browser.
+# An alternative title for localization is: "It starts here".
+# This text can be formatted to span multiple lines as needed.
+mr1-welcome-screen-hero-text = O fogo começa aqui
+# Caption for background image in about:welcome. "Soraya Osorio" is the name
+# of the person and shouldn't be translated.
+# In case your language needs to adapt the nouns to a gender, Soraya is a female name (she/her).
+# You can see the picture in about:welcome in Nightly 90.
+mr1-onboarding-welcome-image-caption = Soraya Osorio - Designer de mobiliário, fã do Firefox
+# This button will open system settings to turn on prefers-reduced-motion
+mr1-onboarding-reduce-motion-button-label = Desativar as animações
+
+## Title and primary button strings differ between platforms as they
+## match the OS' application context menu item action where Windows uses "pin"
+## and "taskbar" while macOS "keep" and "Dock" (proper noun).
+
+# Title used on welcome page when Firefox is not pinned
+mr1-onboarding-pin-header =
+ { PLATFORM() ->
+ [macos] Mantenha o { -brand-short-name } na sua Doca para um acesso mais fácil
+ *[other] Fixe o { -brand-short-name } na sua barra de tarefas para um acesso mais fácil
+ }
+# Primary button string used on welcome page when Firefox is not pinned.
+mr1-onboarding-pin-primary-button-label =
+ { PLATFORM() ->
+ [macos] Manter na Doca
+ *[other] Fixar na barra de tarefas
+ }
+
+## Multistage MR1 onboarding strings (about:welcome pages)
+
+# This string will be used on welcome page primary button label
+# when Firefox is both pinned and default
+mr1-onboarding-get-started-primary-button-label = Começar
+mr1-onboarding-welcome-header = Bem-vindo(a) ao { -brand-short-name }
+mr1-onboarding-set-default-pin-primary-button-label = Definir o { -brand-short-name } como o meu navegador principal
+ .title = Define o { -brand-short-name } como o navegador principal e fixa o mesmo à barra de tarefas
+# This string will be used on welcome page primary button label
+# when Firefox is not default but already pinned
+mr1-onboarding-set-default-only-primary-button-label = Definir o { -brand-short-name } no meu navegador principal
+mr1-onboarding-set-default-secondary-button-label = Agora não
+mr1-onboarding-sign-in-button-label = Iniciar sessão
+
+## Title, subtitle and primary button string used on set default onboarding screen
+## when Firefox is not default browser
+
+mr1-onboarding-default-header = Predefinir o { -brand-short-name }
+mr1-onboarding-default-subtitle = Coloque a velocidade, segurança e privacidade em piloto automático.
+mr1-onboarding-default-primary-button-label = Predefinir o navegador
+
+## Multistage MR1 onboarding strings (about:welcome pages)
+
+mr1-onboarding-import-header = Leve tudo consigo
+mr1-onboarding-import-subtitle = Importe as suas palavras-passe, marcadores e muito mais.
+# The primary import button label will depend on whether we can detect which browser was used to download Firefox.
+# Variables:
+# $previous (Str) - Previous browser name, such as Edge, Chrome
+mr1-onboarding-import-primary-button-label-attribution = Importar de { $previous }
+# This string will be used in cases where we can't detect the previous browser name.
+mr1-onboarding-import-primary-button-label-no-attribution = Importar do navegador anterior
+mr1-onboarding-import-secondary-button-label = Agora não
+mr2-onboarding-colorway-header = Vida a cores
+mr2-onboarding-colorway-subtitle = Estilos de cor vibrantes. Disponíveis por tempo limitado.
+mr2-onboarding-colorway-primary-button-label = Guardar estilo de cor
+mr2-onboarding-colorway-secondary-button-label = Agora não
+mr2-onboarding-colorway-label-soft = Suave
+mr2-onboarding-colorway-label-balanced = Equilibrado
+# "Bold" is used in the sense of bravery or courage, not in the sense of
+# emphasized text.
+mr2-onboarding-colorway-label-bold = Audacioso
+# Automatic theme uses operating system color settings
+mr2-onboarding-theme-label-auto = Automático
+# This string will be used for Default theme
+mr2-onboarding-theme-label-default = Predefinido
+mr1-onboarding-theme-header = Personalize
+mr1-onboarding-theme-subtitle = Personalize o { -brand-short-name } com um tema.
+mr1-onboarding-theme-primary-button-label = Guardar tema
+mr1-onboarding-theme-secondary-button-label = Agora não
+# System theme uses operating system color settings
+mr1-onboarding-theme-label-system = Tema do sistema
+mr1-onboarding-theme-label-light = Claro
+mr1-onboarding-theme-label-dark = Escuro
+# "Alpenglow" here is the name of the theme, and should be kept in English.
+mr1-onboarding-theme-label-alpenglow = Alpenglow
+onboarding-theme-primary-button-label = Concluído
+
+## Please make sure to split the content of the title attribute into lines whose
+## width corresponds to about 40 Latin characters, to ensure that the tooltip
+## doesn't become too long. Line breaks will be preserved when displaying the
+## tooltip.
+
+# Tooltip displayed on hover of system theme
+mr1-onboarding-theme-tooltip-system =
+ .title =
+ Seguir o tema do sistema operativo
+ para botões, menus e janelas.
+# Input description for system theme
+mr1-onboarding-theme-description-system =
+ .aria-description =
+ Seguir o tema do sistema operativo
+ para botões, menus e janelas.
+# Tooltip displayed on hover of light theme
+mr1-onboarding-theme-tooltip-light =
+ .title =
+ Utilizar um tema claro para
+ botões, menus e janelas.
+# Input description for light theme
+mr1-onboarding-theme-description-light =
+ .aria-description =
+ Utilizar um tema claro para
+ botões, menus e janelas.
+# Tooltip displayed on hover of dark theme
+mr1-onboarding-theme-tooltip-dark =
+ .title =
+ Utilizar um tema escuro para
+ botões, menus e janelas.
+# Input description for dark theme
+mr1-onboarding-theme-description-dark =
+ .aria-description =
+ Utilizar um tema escuro para
+ botões, menus e janelas.
+# Tooltip displayed on hover of Alpenglow theme
+mr1-onboarding-theme-tooltip-alpenglow =
+ .title =
+ Utilizar um tema dinâmico e colorido para
+ botões, menus e janelas.
+# Input description for Alpenglow theme
+mr1-onboarding-theme-description-alpenglow =
+ .aria-description =
+ Utilizar um tema dinâmico e colorido para
+ botões, menus e janelas.
+# Tooltip displayed on hover of non-default colorway theme
+# variations e.g. soft, balanced, bold
+mr2-onboarding-theme-tooltip =
+ .title = Utilizar este estilo de cor.
+# Selector description for non-default colorway theme
+# variations e.g. soft, balanced, bold
+mr2-onboarding-theme-description =
+ .aria-description = Utilizar este estilo de cor.
+# Tooltip displayed on hover of colorway
+# Variables:
+# $colorwayName (String) - Name of colorway
+mr2-onboarding-colorway-tooltip =
+ .title = Explorar os estilos de cor { $colorwayName }.
+# Selector description for colorway
+# Variables:
+# $colorwayName (String) - Name of colorway
+mr2-onboarding-colorway-label = Explorar os estilos de cor { $colorwayName }.
+# Tooltip displayed on hover of default themes
+mr2-onboarding-default-theme-tooltip =
+ .title = Explorar os temas predefinidos.
+# Selector description for default themes
+mr2-onboarding-default-theme-label = Explorar os temas predefinidos.
+
+## Strings for Thank You page
+
+mr2-onboarding-thank-you-header = Obrigado por nos escolher
+mr2-onboarding-thank-you-text = O { -brand-short-name } é um navegador independente apoiado por uma organização sem fins lucrativos. Juntos, estamos tornar a Internet mais segura, mais saudável e mais privada.
+mr2-onboarding-start-browsing-button-label = Começar a navegar
+
+## Multistage live language reloading onboarding strings (about:welcome pages)
+##
+## The following language names are generated by the browser's Intl.DisplayNames API.
+##
+## Variables:
+## $negotiatedLanguage (String) - The name of the langpack's language, e.g. "Español (ES)"
+
+
+## Multistage live language reloading onboarding strings (about:welcome pages)
+##
+## The following language names are generated by the browser's Intl.DisplayNames API.
+##
+## Variables:
+## $negotiatedLanguage (String) - The name of the langpack's language, e.g. "Español (ES)"
+## $systemLanguage (String) - The name of the system language, e.g "Español (ES)"
+## $appLanguage (String) - The name of the language shipping in the browser build, e.g. "English (EN)"
+
+onboarding-live-language-header = Escolha o seu idioma
+mr2022-onboarding-live-language-text = O { -brand-short-name } fala o seu idioma
+mr2022-language-mismatch-subtitle = Graças à nossa comunidade, o { -brand-short-name } está traduzido em mais de 90 idiomas. Parece que seu sistema está a usar { $systemLanguage } e o { -brand-short-name } está a usar o { $appLanguage }.
+onboarding-live-language-button-label-downloading = A transferir o pacote de idioma para { $negotiatedLanguage }…
+onboarding-live-language-waiting-button = A obter os idiomas disponíveis…
+onboarding-live-language-installing = A instalar o pacote de idioma para { $negotiatedLanguage }…
+mr2022-onboarding-live-language-switch-to = Alterar para { $negotiatedLanguage }
+mr2022-onboarding-live-language-continue-in = Continuar em { $appLanguage }
+onboarding-live-language-secondary-cancel-download = Cancelar
+onboarding-live-language-skip-button-label = Ignorar
+
+## Firefox 100 Thank You screens
+
+# "Hero Text" displayed on left side of welcome screen. This text can be
+# formatted to span multiple lines as needed. The
+# in this string allows a "zap" underline style to be automatically
+# added to the text inside it. "Yous" should stay inside the zap span, but
+# "Thank" can be put inside instead if there's no "you" in the translation.
+# The English text would normally be "100 Thank-Yous" i.e., plural noun, but for
+# aesthetics of splitting it across multiple lines, the hyphen is omitted.
+fx100-thank-you-hero-text = 100 Obrigados
+fx100-thank-you-subtitle = É o nosso 100.º lançamento! Obrigado por nos ajudar a construir uma Internet melhor e mais saudável.
+fx100-thank-you-pin-primary-button-label =
+ { PLATFORM() ->
+ [macos] Fixar o { -brand-short-name } à Dock
+ *[other] Fixar o { -brand-short-name } à barra de tarefas
+ }
+fx100-upgrade-thanks-header = 100 Obrigados
+# Message shown with a start-browsing button. Emphasis should be for "you"
+# but "Thank" can be used instead if there's no "you" in the translation.
+fx100-upgrade-thank-you-body = É nosso 100.º lançamento do { -brand-short-name }. Obrigado por nos ajudar a construir uma Internet melhor e mais saudável.
+# Message shown with either a pin-to-taskbar or set-default button.
+fx100-upgrade-thanks-keep-body = É o nosso 100.º lançamento! Obrigado por fazer parte da nossa comunidade. Mantenha o { -brand-short-name } a um clique de distância para os próximos 100.
+mr2022-onboarding-secondary-skip-button-label = Saltar este passo
+
+## MR2022 New User Pin Firefox screen strings
+
+# Title used on about:welcome for new users when Firefox is not pinned.
+# In this context, open up is synonymous with "Discover".
+# The metaphor is that when they open their Firefox browser, it helps them discover an amazing internet.
+# If this translation does not make sense in your language, feel free to use the word "discover."
+mr2022-onboarding-welcome-pin-header = Descubra uma Internet incrível
+# Subtitle is used on onboarding page for new users page when Firefox is not pinned
+mr2022-onboarding-welcome-pin-subtitle = Inicie o { -brand-short-name } de qualquer lugar com um único clique. Toda vez que faz isto, está a escolher uma Web mais aberta e independente.
+# Primary button string used on welcome page for when Firefox is not pinned.
+mr2022-onboarding-pin-primary-button-label =
+ { PLATFORM() ->
+ [macos] Manter o { -brand-short-name } na Doca
+ *[other] Fixar o { -brand-short-name } à barra de tarefas
+ }
+# Subtitle will be used when user already has Firefox pinned, but
+# has not set it as their default browser.
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-set-default-only-subtitle = Comece com um navegador apoiado por uma organização sem fins lucrativos. Nós defendemos a sua privacidade enquanto navega pela Web.
+
+## MR2022 Existing User Pin Firefox Screen Strings
+
+# Title used on multistage onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-header = Obrigado por gostar do { -brand-product-name }
+# Subtitle is used on onboarding page for existing users when Firefox is not pinned
+mr2022-onboarding-existing-pin-subtitle = Começe uma Internet mais saudável a partir de qualquer lugar, com um único clique. A nossa atualização mais recente está repleta de novidades que achamos que vai adorar.
+# Subtitle will be used on the welcome screen for existing users
+# when they already have Firefox pinned but not set as default
+mr2022-onboarding-existing-set-default-only-subtitle = Utilize um navegador que defende a sua privacidade enquanto navega pela Web. A nossa atualização mais recente está repleta de coisas que você adora.
+mr2022-onboarding-existing-pin-checkbox-label = Adicione também a navegação privada do { -brand-short-name }
+
+## MR2022 New User Set Default screen strings
+
+# This string is the title used when the user already has pinned the browser, but has not set default.
+mr2022-onboarding-set-default-title = Tornar o { -brand-short-name } no seu navegador predefinido
+mr2022-onboarding-set-default-primary-button-label = Definir o { -brand-short-name } como o seu navegador predefinido
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-set-default-subtitle = Utilize um navegador apoiado por uma organização sem fins lucrativos. Nós defendemos a sua privacidade enquanto navega pela Web.
+
+## MR2022 Get Started screen strings.
+## These strings will be used on the welcome page
+## when Firefox is already set to default and pinned.
+
+# When translating "zip", please feel free to pick a verb that signifies movement and/or exploration
+# and makes sense in the context of navigating the web.
+mr2022-onboarding-get-started-primary-subtitle = A nossa versão mais recente foi desenvolvida para si, tornando mais fácil do que nunca a navegação na Web. Ela está repleta de funcionalidades que achamos que vai adorar.
+mr2022-onboarding-get-started-primary-button-label = Configurar em segundos
+
+## MR2022 Import Settings screen strings
+
+mr2022-onboarding-import-header = Configuração ultra-rápida
+mr2022-onboarding-import-subtitle = Configure o { -brand-short-name } como preferir. Adicione os seus marcadores, palavras-passe e muito mais, do seu navegador antigo.
+mr2022-onboarding-import-primary-button-label-no-attribution = Importar do navegador anterior
+
+## If your language uses grammatical genders, in the description for the
+## colorway feel free to switch from "You are a X. You…" (e.g. "You are a
+## Playmaker. You create…") to "X: you…" ("Playmaker: You create…"). This might
+## help creating a more inclusive translation.
+
+mr2022-onboarding-colorway-title = Escolha a cor que o(a) inspira
+mr2022-onboarding-colorway-subtitle = Vozes independentes podem mudar a cultura.
+mr2022-onboarding-colorway-primary-button-label-continue = Definir e continuar
+mr2022-onboarding-existing-colorway-checkbox-label = Faça do { -firefox-home-brand-name } a sua página inicial colorida
+mr2022-onboarding-colorway-label-default = Predefinido
+mr2022-onboarding-colorway-tooltip-default2 =
+ .title = Cores atuais do { -brand-short-name }
+mr2022-onboarding-colorway-description-default = Utilizar as minhas cores atuais do { -brand-short-name }.
+mr2022-onboarding-colorway-label-playmaker = Impulsionador(a)
+mr2022-onboarding-colorway-tooltip-playmaker2 =
+ .title = Jogador (red)
+mr2022-onboarding-colorway-description-playmaker = É um(a) impulsionador(a). Você cria oportunidades para vencer e ajudar a todos à sua volta a melhorar as suas capacidades.
+mr2022-onboarding-colorway-label-expressionist = Expressionista
+mr2022-onboarding-colorway-tooltip-expressionist2 =
+ .title = Expressionista (amarelo)
+mr2022-onboarding-colorway-description-expressionist = É um(a) expressionista. Você vê o mundo de maneira diferente e as suas criações despertam as emoções dos outros.
+mr2022-onboarding-colorway-label-visionary = Visionário(a)
+mr2022-onboarding-colorway-tooltip-visionary2 =
+ .title = Visionário(a) (verde)
+mr2022-onboarding-colorway-description-visionary = É um visionário(a). Você questiona o status-quo e leva os outros a imaginar um futuro melhor.
+mr2022-onboarding-colorway-label-activist = Ativista
+mr2022-onboarding-colorway-tooltip-activist2 =
+ .title = Ativista (azul)
+mr2022-onboarding-colorway-description-activist = É um ativista. Você deixa o mundo um lugar melhor do que aquele que encontrou e leva os outros a acreditar.
+mr2022-onboarding-colorway-label-dreamer = Sonhador(a)
+mr2022-onboarding-colorway-tooltip-dreamer2 =
+ .title = Sonhador(a) (roxo)
+mr2022-onboarding-colorway-description-dreamer = Você é um(a) sonhador(a). Você acredita que a sorte favorece os ousados e inspira os outros a serem corajosos.
+mr2022-onboarding-colorway-label-innovator = Inovador(a)
+mr2022-onboarding-colorway-tooltip-innovator2 =
+ .title = Inovador(a) (laranja)
+mr2022-onboarding-colorway-description-innovator = Você é um(a) inovador(a). Você vê oportunidades em todo o lado e causa impacto na vida de todos à sua volta.
+
+## MR2022 Multistage Mobile Download screen strings
+
+mr2022-onboarding-mobile-download-title = Mude do portátil para o telemóvel e vice-versa
+mr2022-onboarding-mobile-download-subtitle = Obtenha os separadores de um dispositivo e continue de onde parou noutro. Além disto, sincronize os seus marcadores e palavras-passe em qualquer sítio onde utilize o { -brand-product-name }.
+mr2022-onboarding-mobile-download-cta-text = Digitalize o código QR para obter o { -brand-product-name } para telemóvel ou envie uma ligação de transferência para você mesmo.
+mr2022-onboarding-no-mobile-download-cta-text = Digitalize o código QR para obter o { -brand-product-name } para telemóveis.
+
+## MR2022 Upgrade Dialog screens
+## Pin private window screen shown only for users who don't have Firefox private pinned
+
+mr2022-upgrade-onboarding-pin-private-window-header = Obtenha a liberdade da navegação privada num clique
+mr2022-upgrade-onboarding-pin-private-window-subtitle = Sem cookies ou histórico guardados, diretamente a partir do seu ambiente de trabalho. Navegue como se ninguém estivesse a ver.
+mr2022-upgrade-onboarding-pin-private-window-primary-button-label =
+ { PLATFORM() ->
+ [macos] Manter a navegação privada do { -brand-short-name } na Doca
+ *[other] Fixar a navegação privada do { -brand-short-name } à minha barra de tarefas
+ }
+
+## MR2022 Privacy Segmentation screen strings
+
+mr2022-onboarding-privacy-segmentation-title = Nós respeitamos sempre a sua privacidade
+mr2022-onboarding-privacy-segmentation-subtitle = A partir de sugestões inteligentes para pesquisas mais inteligentes. Nós trabalhamos constantemente para criar um { -brand-product-name } melhor e mais pessoal.
+mr2022-onboarding-privacy-segmentation-text-cta = O que quer ver quando oferecemos novas funcionalidades que utilizam os seus dados para melhorar a sua navegação?
+mr2022-onboarding-privacy-segmentation-button-primary-label = Usar as recomendações do { -brand-product-name }
+mr2022-onboarding-privacy-segmentation-button-secondary-label = Mostrar informações detalhadas
+
+## MR2022 Multistage Gratitude screen strings
+
+mr2022-onboarding-gratitude-title = Está a ajudar-nos a construir uma Internet melhor.
+mr2022-onboarding-gratitude-subtitle = Obrigado por utilizar o { -brand-short-name }, apoiado pela Fundação Mozilla. Com o seu apoio, estamos a trabalhar para tornar a Internet mais aberta, acessível e melhor para todos.
+mr2022-onboarding-gratitude-primary-button-label = Veja as novidades
+mr2022-onboarding-gratitude-secondary-button-label = Começar a navegar
+
+## Onboarding spotlight for infrequent users
+
+onboarding-infrequent-import-title = Sinta-se em casa
+onboarding-infrequent-import-subtitle = Quer esteja a instalar-se ou apenas de passagem, lembre-se de que pode importar os seus marcadores, palavras-passe, e muito mais.
+onboarding-infrequent-import-primary-button = Importar para { -brand-short-name }
+
+## MR2022 Illustration alt tags
+## Descriptive tags for illustrations used by screen readers and other assistive tech
+
+mr2022-onboarding-pin-image-alt =
+ .aria-label = Pessoa a trabalhar num portátil rodeado por estrelas e flores
+mr2022-onboarding-default-image-alt =
+ .aria-label = Pessoa a abraçar o logótipo do { -brand-product-name }
+mr2022-onboarding-import-image-alt =
+ .aria-label = Pessoa a andar de skate com uma caixa de ícones de programas
+mr2022-onboarding-mobile-download-image-alt =
+ .aria-label = Sapos a saltar nos lírios com um código QR para transferir o { -brand-product-name } para o telemóvel no centro
+mr2022-onboarding-pin-private-image-alt =
+ .aria-label = Varinha mágica faz com que o logótipo de navegação privada do { -brand-product-name } apareça de um chapéu
+mr2022-onboarding-privacy-segmentation-image-alt =
+ .aria-label = Uma mão de pele clara e outra de pele escura cumprimentam-se
+mr2022-onboarding-gratitude-image-alt =
+ .aria-label = Vista de um pôr do sol através de uma janela com uma raposa e uma planta doméstica no peitoril da janela
+mr2022-onboarding-colorways-image-alt =
+ .aria-label = Um spray de mão pinta uma montagem colorida de um olho verde, sapato laranja, bola de basquetebol vermelha, auscultadores roxos, coração azul e coroa amarela
diff --git a/l10n-pt-PT/browser/browser/nsserrors.ftl b/l10n-pt-PT/browser/browser/nsserrors.ftl
new file mode 100644
index 0000000000..cb54e9450b
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/nsserrors.ftl
@@ -0,0 +1,354 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# DO NOT ADD THINGS OTHER THAN ERROR MESSAGES HERE.
+# This file gets parsed into a JS dictionary of all known error message ids in
+# gen_aboutneterror_codes.py . If we end up needing fluent attributes or
+# refactoring them in some way, the script will need updating.
+
+# Variables:
+# $hostname (String) - Hostname of the website with SSL error.
+# $errorMessage (String) - Error message corresponding to the type of error we are experiencing.
+ssl-connection-error = Ocorreu um erro durante a ligação a { $hostname }. { $errorMessage }
+
+# Variables:
+# $error (string) - NSS error code string that specifies type of cert error. e.g. unknown issuer, invalid cert, etc.
+cert-error-code-prefix = Código de erro: { $error }
+
+psmerr-ssl-disabled = Não é possível ligar de forma segura porque o protocolo SSL foi desativado.
+psmerr-ssl2-disabled = Não é possível ligar de forma segura porque o site utiliza uma versão do protocolo SSL antiga e é insegura.
+
+# This is a multi-line message.
+psmerr-hostreusedissuerandserial =
+ Recebeu um certificado inválido. Por favor contacte o administrador do servidor ou endereço de email equivalente e dê-lhes a seguinte informação:
+
+ O seu certificado contém o mesmo número de série que o de outro certificado emitido pela mesma autoridade certificadora. Por favor obtenha um novo certificado com um número de série único.
+
+ssl-error-export-only-server = Não foi possível comunicar de forma segura. O par não suporta encriptação de alta qualidade.
+ssl-error-us-only-server = Não foi possível comunicar de forma segura. O par requer uma encriptação de alta qualidade que não é suportada.
+ssl-error-no-cypher-overlap = Não foi possível comunicar de forma segura com o par: não existe(m) algoritmo(s) de encriptação em comum.
+ssl-error-no-certificate = Não foi possível localizar o certificado ou chave necessária para a autenticação.
+ssl-error-bad-certificate = Não foi possível comunicar de forma segura com o par: o certificado do par foi rejeitado.
+ssl-error-bad-client = O servidor encontrou dados do cliente danificados.
+ssl-error-bad-server = O cliente encontrou dados do servidor danificados.
+ssl-error-unsupported-certificate-type = Tipo de certificado não suportado.
+ssl-error-unsupported-version = O par está a utilizar uma versão de protocolo de segurança não suportada.
+ssl-error-wrong-certificate = Autenticação do cliente falhou: chave privada na base de dados de chaves não corresponde à chave pública na base de dados de certificados.
+ssl-error-bad-cert-domain = Não foi possível comunicar com o par: domínio pedido não corresponde ao certificado do servidor.
+ssl-error-post-warning = Código de erro SSL desconhecido.
+ssl-error-ssl2-disabled = O par só suporta SSL versão 2, que está desativada localmente.
+ssl-error-bad-mac-read = O SSL recebeu um registo com um código de mensagem de autenticação incorreto.
+ssl-error-bad-mac-alert = O par SSL reporta um código de mensagem de autenticação incorreto.
+ssl-error-bad-cert-alert = O par SSL não consegue verificar o seu certificado.
+ssl-error-revoked-cert-alert = O par SSL rejeitou o seu certificado como revogado.
+ssl-error-expired-cert-alert = O par SSL rejeitou o seu certificado como expirado.
+ssl-error-ssl-disabled = Impossível ligar: SSL está desligado.
+ssl-error-fortezza-pqg = Impossível ligar: O par SSL está noutro domínio FORTEZZA.
+ssl-error-unknown-cipher-suite = Solicitada uma combinação de cifras SSL desconhecida.
+ssl-error-no-ciphers-supported = Não existem conjuntos de cifras presentes e ativadas neste programa.
+ssl-error-bad-block-padding = O SSL recebeu um registo com enchimento de bloco errado.
+ssl-error-rx-record-too-long = O SSL recebeu um registo que excedeu o tamanho máximo permitido.
+ssl-error-tx-record-too-long = SSL tentou enviar um registo que excedeu o tamanho máximo permitido.
+ssl-error-rx-malformed-hello-request = O SSL recebeu uma mensagem handshake Hello Request mal formada.
+ssl-error-rx-malformed-client-hello = O SSL recebeu uma mensagem handshake Client Hello mal formada.
+ssl-error-rx-malformed-server-hello = O SSL recebeu uma mensagem handshake Server Hello mal formada.
+ssl-error-rx-malformed-certificate = O SSL recebeu uma mensagem handshake de certificado mal formada.
+ssl-error-rx-malformed-server-key-exch = O SSL recebeu uma mensagem handshake de troca de chave de servidor mal formada.
+ssl-error-rx-malformed-cert-request = O SSL recebeu uma mensagem handshake de pedido de certificado mal formada.
+ssl-error-rx-malformed-hello-done = O SSL recebeu uma mensagem handshake Server Hello Done mal formada.
+ssl-error-rx-malformed-cert-verify = O SSL recebeu uma mensagem handshake de verificação de certificado mal formada.
+ssl-error-rx-malformed-client-key-exch = O SSL recebeu uma mensagem handshake de troca de chave de cliente mal formada.
+ssl-error-rx-malformed-finished = O SSL recebeu uma mensagem handshake de conclusão malformada.
+ssl-error-rx-malformed-change-cipher = O SSL recebeu um registo de troca de especificação de cifras mal formado.
+ssl-error-rx-malformed-alert = O SSL recebeu um registo de alerta mal formado.
+ssl-error-rx-malformed-handshake = O SSL recebeu um registo handshake mal formado.
+ssl-error-rx-malformed-application-data = O SSL recebeu um registo de dados da aplicação mal formado.
+ssl-error-rx-unexpected-hello-request = O SSL recebeu uma mensagem handshake Hello Request inesperada.
+ssl-error-rx-unexpected-client-hello = O SSL recebeu uma mensagem handshake Client Hello inesperada.
+ssl-error-rx-unexpected-server-hello = O SSL recebeu uma mensagem handshake Server Hello inesperada.
+ssl-error-rx-unexpected-certificate = O SSL recebeu uma mensagem handshake de certificado inesperada.
+ssl-error-rx-unexpected-server-key-exch = O SSL recebeu uma mensagem handshake de troca de chave de servidor inesperada.
+ssl-error-rx-unexpected-cert-request = O SSL recebeu uma mensagem handshake de pedido de certificado inesperada.
+ssl-error-rx-unexpected-hello-done = O SSL recebeu uma mensagem handshake Server Hello Done inesperada.
+ssl-error-rx-unexpected-cert-verify = O SSL recebeu uma mensagem handshake de verificação de certificado inesperada.
+ssl-error-rx-unexpected-client-key-exch = O SSL recebeu uma mensagem handshake de troca de chave de cliente inesperada.
+ssl-error-rx-unexpected-finished = O SSL recebeu uma mensagem handshake de conclusão inesperada.
+ssl-error-rx-unexpected-change-cipher = O SSL recebeu um registo de troca de especificação de cifras inesperado.
+ssl-error-rx-unexpected-alert = O SSL recebeu um registo de alerta inesperado.
+ssl-error-rx-unexpected-handshake = O SSL recebeu um registo handshake inesperado.
+ssl-error-rx-unexpected-application-data = O SSL recebeu um registo de dados da aplicação inesperado.
+ssl-error-rx-unknown-record-type = O SSL recebeu um registo com um tipo de conteúdo desconhecido.
+ssl-error-rx-unknown-handshake = O SSL recebeu uma mensagem handshake com um tipo de mensagem desconhecido.
+ssl-error-rx-unknown-alert = O SSL recebeu um registo de alerta com uma descrição desconhecida.
+ssl-error-close-notify-alert = O par SSL fechou esta ligação.
+ssl-error-handshake-unexpected-alert = O par SSL não esperava a mensagem handshake que recebeu.
+ssl-error-decompression-failure-alert = O par SSL foi incapaz de descomprimir um registo SSL que recebeu.
+ssl-error-handshake-failure-alert = O par SSL foi incapaz de negociar um conjunto aceitável de parâmetros de segurança.
+ssl-error-illegal-parameter-alert = O par SSL rejeitou uma mensagem handshake devido a conteúdo inaceitável.
+ssl-error-unsupported-cert-alert = O par SSL não suporta certificados do tipo que recebeu.
+ssl-error-certificate-unknown-alert = O par SSL teve um problema não especificado com o certificado que recebeu.
+ssl-error-generate-random-failure = SSL teve uma falha no gerador de números aleatórios.
+ssl-error-sign-hashes-failure = Falha ao assinar digitalmente os dados necessários para verificar o seu certificado.
+ssl-error-extract-public-key-failure = SSL foi incapaz de extrair a chave pública do certificado do par.
+ssl-error-server-key-exchange-failure = Falha não especificada ao processar o handshake SSL de troca de chave de servidor.
+ssl-error-client-key-exchange-failure = Falha não especificada ao processar o handshake SSL de troca de chave de cliente.
+ssl-error-encryption-failure = O algoritmo de codificação de dados em lote falhou para o conjunto selecionado.
+ssl-error-decryption-failure = O algoritmo de descodificação de dados em lote falhou para o conjunto selecionado.
+ssl-error-socket-write-failure = Erro ao tentar escrever os dados encriptados no socket subjacente.
+ssl-error-md5-digest-failure = A função de resumo MD5 falhou.
+ssl-error-sha-digest-failure = A função de resumo SHA-1 falhou.
+ssl-error-mac-computation-failure = A computação MAC falhou.
+ssl-error-sym-key-context-failure = Falha ao criar o contexto da chave simétrica.
+ssl-error-sym-key-unwrap-failure = Falha ao "desencapsular" a chave simétrica na mensagem de intercâmbio de chave de cliente.
+ssl-error-pub-key-size-limit-exceeded = O servidor SSL tentou utilizar uma chave pública doméstica com a exportação de pacote de cifra.
+ssl-error-iv-param-failure = O código PKCS11 falhou a tradução de um IV para um param.
+ssl-error-init-cipher-suite-failure = Falha ao iniciar do pacote de cifra selecionado.
+ssl-error-session-key-gen-failure = O cliente falhou a criação de chaves de sessão para a sessão SSL.
+ssl-error-no-server-key-for-alg = O servidor não tem chave para a tentativa de algoritmo de troca de chave.
+ssl-error-token-insertion-removal = O token PKCS#11 foi inserido ou removido enquanto a operação estava a decorrer.
+ssl-error-token-slot-not-found = Não foi encontrado nenhum token PKCS#11 para a operação requerida.
+ssl-error-no-compression-overlap = Não é possível comunicar de forma segura com o par: não existem algoritmos de compressão em comum.
+ssl-error-handshake-not-completed = Não é possível iniciar outro handshake SSL até que o handshake atual seja concluído.
+ssl-error-bad-handshake-hash-value = Recebidos valores hash incorretos de handshakes do par.
+ssl-error-cert-kea-mismatch = O certificado recebido não pode ser utilizado com o algoritmo de intercâmbio de chave fornecido.
+ssl-error-no-trusted-ssl-client-ca = Nenhuma autoridade certificadora é confiada para autenticação SSL do cliente.
+ssl-error-session-not-found = O ID da sessão SSL do cliente não foi encontrado na cache de sessão do servidor.
+ssl-error-decryption-failed-alert = O par não conseguiu desencriptar o registo SSL que recebeu.
+ssl-error-record-overflow-alert = O par recebeu um registo SSL maior do que é permitido.
+ssl-error-unknown-ca-alert = O par não reconhece nem confia na AC que emitiu o seu certificado.
+ssl-error-access-denied-alert = O par recebeu um certificado válido, mas o acesso foi negado.
+ssl-error-decode-error-alert = O par não conseguiu descodificar a mensagem handshake SSL.
+ssl-error-decrypt-error-alert = O par indicou uma falha na verificação da assinatura ou intercâmbio de chave.
+ssl-error-export-restriction-alert = O par indica uma negociação em desacordo com os regulamentos de exportação.
+ssl-error-protocol-version-alert = O par indica uma versão do protocolo não suportada ou incompatível.
+ssl-error-insufficient-security-alert = O servidor requer cifras mais seguras do que as suportadas pelo cliente.
+ssl-error-internal-error-alert = O par indicou que teve um erro interno.
+ssl-error-user-canceled-alert = O utilizador do par cancelou o handshake.
+ssl-error-no-renegotiation-alert = O par não permite a re-negociação dos parâmetros de segurança SSL.
+ssl-error-server-cache-not-configured = Cache do servidor SSL não configurado e não desativado para este socket.
+ssl-error-unsupported-extension-alert = O par SSL não tem suporte à extensão TLS hello.
+ssl-error-certificate-unobtainable-alert = O par SSL não conseguiu obter o seu certificado a partir do URL fornecido.
+ssl-error-unrecognized-name-alert = O par SSL não tem um certificado para o nome DNS solicitado.
+ssl-error-bad-cert-status-response-alert = O par SSL não conseguiu obter uma resposta OCSP para este certificado.
+ssl-error-bad-cert-hash-value-alert = O par SSL reportou um erro no valor hash do certificado.
+ssl-error-rx-unexpected-new-session-ticket = O SSL recebeu uma mensagem inesperada de handshake de nova sessão.
+ssl-error-rx-malformed-new-session-ticket = O SSL recebeu uma mensagem mal formada de handshake de nova sessão.
+ssl-error-decompression-failure = O SSL recebeu um registo comprimido que não pode ser descomprimido.
+ssl-error-renegotiation-not-allowed = A renegociação não é permitida neste socket SSL.
+ssl-error-unsafe-negotiation = O par tentou um handshake ao estilo antigo (potencialmente vulnerável).
+ssl-error-rx-unexpected-uncompressed-record = SSL recebeu um registo inesperado não comprimido.
+ssl-error-weak-server-ephemeral-dh-key = O SSL recebeu uma chave fraca e efémera Diffie-Hellman na mensagem handshake de troca de chave de servidor.
+ssl-error-next-protocol-data-invalid = O SSL recebeu dados de extensão NPN inválidos.
+ssl-error-feature-not-supported-for-ssl2 = Funcionalidade SSL não suportada para ligações SSL 2.0.
+ssl-error-feature-not-supported-for-servers = A funcionalidade SSL não é suportada para servidores.
+ssl-error-feature-not-supported-for-clients = Funcionalidade SSL não suportada por clientes.
+ssl-error-invalid-version-range = O intervalo da versão SSL não é válido.
+ssl-error-cipher-disallowed-for-version = O par SSL selecionou um cipher desativado para a versão do protocolo selecionado.
+ssl-error-rx-malformed-hello-verify-request = O SSL recebeu uma mensagem handshake Hello Verify Request mal formada.
+ssl-error-rx-unexpected-hello-verify-request = O SSL recebeu uma mensagem handshake Hello Verify Request inesperada.
+ssl-error-feature-not-supported-for-version = Funcionalidade SSL não suportada para esta versão do protocolo.
+ssl-error-rx-unexpected-cert-status = O SSL recebeu uma mensagem handshake de estado do certificado inesperada.
+ssl-error-unsupported-hash-algorithm = Algoritmo de hash não suportado pelo par TLS.
+ssl-error-digest-failure = A função Digest falhou.
+ssl-error-incorrect-signature-algorithm = Assinatura incorreta do algoritmo especificada num elemento assinado digitalmente.
+ssl-error-next-protocol-no-callback = A negociação de protocolo da extensão seguinte foi ativada, mas a chamada de retorno foi limpa antes de ser necessária.
+ssl-error-next-protocol-no-protocol = O servidor não suporta os protocolos que o cliente informa na extensão ALPN.
+ssl-error-inappropriate-fallback-alert = O servidor rejeitou o handshake porque o cliente alterou para uma versão inferior de TLS não suportada pelo servidor.
+ssl-error-weak-server-cert-key = O certificado do servidor inclui uma chave pública de qualidade fraca.
+ssl-error-rx-short-dtls-read = Sem espaço suficiente no buffer para gravação DTLS.
+ssl-error-no-supported-signature-algorithm = Nenhum algoritmo de assinatura TLS suportado foi configurado.
+ssl-error-unsupported-signature-algorithm = O par utilizou um algoritmo de combinação de assinatura e hash não suportado.
+ssl-error-missing-extended-master-secret = O par tentou resumir sem a extensão extended_master_secret correta.
+ssl-error-unexpected-extended-master-secret = O par tentou resumir com uma extensão extended_master_secret inesperada.
+sec-error-io = Ocorreu um erro de E/S durante a autorização de segurança.
+sec-error-library-failure = falha na biblioteca de segurança.
+sec-error-bad-data = biblioteca de segurança: receção de dados errados.
+sec-error-output-len = biblioteca de segurança: erro no comprimento de saída.
+sec-error-input-len = a biblioteca de segurança sofreu um erro de comprimento de entrada.
+sec-error-invalid-args = biblioteca de segurança: argumentos inválidos.
+sec-error-invalid-algorithm = biblioteca de segurança: algoritmo inválido.
+sec-error-invalid-ava = biblioteca de segurança: AVA inválido.
+sec-error-invalid-time = String com a hora formatada incorretamente.
+sec-error-bad-der = biblioteca de segurança: formatação incorreta da mensagem com codificação DER.
+sec-error-bad-signature = O certificado do par tem uma assinatura inválida.
+sec-error-expired-certificate = O certificado do par expirou.
+sec-error-revoked-certificate = O certificado do par foi revogado.
+sec-error-unknown-issuer = O emissor do certificado do par não é reconhecido.
+sec-error-bad-key = A chave pública do par é inválida.
+sec-error-bad-password = A palavra-passe de segurança introduzida está incorreta.
+sec-error-retry-password = A nova palavra-passe foi introduzida incorretamente. Por favor tente novamente.
+sec-error-no-nodelock = biblioteca de segurança: sem nó trancado.
+sec-error-bad-database = biblioteca de segurança: base de dados corrompida.
+sec-error-no-memory = biblioteca de segurança: falha na atribuição de memória.
+sec-error-untrusted-issuer = O emissor do certificado do par foi marcado como não sendo de confiança pelo utilizador.
+sec-error-untrusted-cert = O certificado do par foi marcado como não sendo de confiança pelo utilizador.
+sec-error-duplicate-cert = O certificado já existe na sua base de dados.
+sec-error-duplicate-cert-name = O nome do certificado transferido é igual a um já existente na sua base de dados.
+sec-error-adding-cert = Erro ao adicionar o certificado à base de dados.
+sec-error-filing-key = Erro ao preencher a chave para este certificado.
+sec-error-no-key = A chave privada para este certificado não foi encontrado na sua base de dados
+sec-error-cert-valid = Este certificado é válido.
+sec-error-cert-not-valid = Este certificado não é válido.
+sec-error-cert-no-response = Biblioteca Cert: Sem resposta
+sec-error-expired-issuer-certificate = O certificado do emissor do certificado expirou. Verifique a data e hora do seu sistema.
+sec-error-crl-expired = A CRL para emissores de certificados expirou. Atualize ou verifique a data e hora do seu sistema.
+sec-error-crl-bad-signature = A CRL para emissores de certificados tem uma assinatura inválida.
+sec-error-crl-invalid = A nova CRL tem um formato inválido.
+sec-error-extension-value-invalid = O valor da extensão do certificado é inválido.
+sec-error-extension-not-found = Extensão do certificado não encontrada.
+sec-error-ca-cert-invalid = O emissor do certificado é inválido.
+sec-error-path-len-constraint-invalid = A restrição ao comprimento do caminho para o certificado é inválida.
+sec-error-cert-usages-invalid = O campo de utilização do certificado é inválido.
+sec-internal-only = **APENAS módulo interno**
+sec-error-invalid-key = A chave não suporta a operação pedida.
+sec-error-unknown-critical-extension = O certificado contém uma extensão crítica desconhecida.
+sec-error-old-crl = A nova CRL não é mais recente que a atual.
+sec-error-no-email-cert = Por encriptar ou assinar: ainda não tem um certificado de email.
+sec-error-no-recipient-certs-query = Por encriptar: não tem certificados para cada um dos destinatários.
+sec-error-not-a-recipient = Não é possível desencriptar: você não é um destinatário ou o certificado correspondente e a chave privada não foram encontrados.
+sec-error-pkcs7-keyalg-mismatch = Não é possível desencriptar: a chave do algoritmo de encriptação não corresponde com o seu certificado.
+sec-error-pkcs7-bad-signature = Falhou a verificação da assinatura: nenhum assinante encontrado, encontrados demasiados assinantes, ou dados impróprios ou corrompidos.
+sec-error-unsupported-keyalg = Algoritmo de chave desconhecido ou não suportado.
+sec-error-decryption-disallowed = Não é possível desencriptar: encriptado utilizando um algoritmo ou tamanho de chave não permitido.
+xp-sec-fortezza-bad-card = O cartão Fortezza não foi iniciado corretamente. Por favor remova-o e devolva-o ao seu emissor.
+xp-sec-fortezza-no-card = Não foram encontrados cartões Fortezza
+xp-sec-fortezza-none-selected = Nenhum cartão Fortezza selecionado
+xp-sec-fortezza-more-info = Por favor escolha uma personalidade para obter informação de
+xp-sec-fortezza-person-not-found = Personalidade não encontrada
+xp-sec-fortezza-no-more-info = Não existe mais informação sobre essa Personalidade
+xp-sec-fortezza-bad-pin = Pin inválido
+xp-sec-fortezza-person-error = Não foi possível inicializar personalidades Fortezza.
+sec-error-no-krl = Não foi encontrado um KRL para o certificado deste site.
+sec-error-krl-expired = O KRL para o certificado deste site expirou.
+sec-error-krl-bad-signature = O KRL para o certificado deste site tem uma assinatura inválida.
+sec-error-revoked-key = A chave para o certificado deste site foi revogado.
+sec-error-krl-invalid = O novo KRL tem um formato inválido.
+sec-error-need-random = biblioteca de segurança: necessita de dados aleatórios.
+sec-error-no-module = biblioteca de segurança: nenhum módulo de segurança pode realizar a operação pedida.
+sec-error-no-token = O cartão de segurança ou token não existe, precisa de ser inicializado ou foi removido.
+sec-error-read-only = biblioteca de segurança: base de dados apenas de leitura.
+sec-error-no-slot-selected = Nenhuma ranhura ou token selecionado.
+sec-error-cert-nickname-collision = Já existe um certificado com a mesma alcunha.
+sec-error-key-nickname-collision = Já existe uma chave com a mesma alcunha.
+sec-error-safe-not-created = erro ao criar o objeto seguro
+sec-error-baggage-not-created = erro ao criar objeto bagagem
+xp-java-remove-principal-error = Não foi possível remover o principal
+xp-java-delete-privilege-error = Não foi possível apagar o privilégio
+xp-java-cert-not-exists-error = Este principal não tem um certificado
+sec-error-bad-export-algorithm = Algoritmo necessário não é permitido.
+sec-error-exporting-certificates = Erro ao tentar exportar certificados.
+sec-error-importing-certificates = Erro ao tentar importar certificados.
+sec-error-pkcs12-decoding-pfx = Não foi possível importar. Erro de descodificação. Ficheiro inválido.
+sec-error-pkcs12-invalid-mac = Não foi possível importar. MAC inválido. Palavra-passe incorreta ou ficheiro corrompido.
+sec-error-pkcs12-unsupported-mac-algorithm = Não foi possível importar. Algoritmo MAC não suportado.
+sec-error-pkcs12-unsupported-transport-mode = Não foi possível importar. Apenas são suportados os modos de integridade de palavra-passe e de privacidade.
+sec-error-pkcs12-corrupt-pfx-structure = Não foi possível importar. A estrutura do ficheiro está danificada.
+sec-error-pkcs12-unsupported-pbe-algorithm = Não foi possível importar. O algoritmo de encriptação não é suportado.
+sec-error-pkcs12-unsupported-version = Não foi possível importar. A versão do ficheiro não é suportada.
+sec-error-pkcs12-privacy-password-incorrect = Não foi possível importar. Palavra-passe de privacidade incorreta.
+sec-error-pkcs12-cert-collision = Não foi possível importar. A mesma alcunha já existe na base de dados.
+sec-error-user-cancelled = O utilizador pressionou cancelar.
+sec-error-pkcs12-duplicate-data = Não importada, já existe na base de dados.
+sec-error-message-send-aborted = Mensagem não enviada.
+sec-error-inadequate-key-usage = Utilização da chave do certificado inadequada para a operação pretendida.
+sec-error-inadequate-cert-type = Tipo de certificado não aprovado para a aplicação.
+sec-error-cert-addr-mismatch = Endereço do certificado signatário não corresponde ao endereço no cabeçalho da mensagem.
+sec-error-pkcs12-unable-to-import-key = Não foi possível importar. Erro ao tentar importar chave privada.
+sec-error-pkcs12-importing-cert-chain = Não foi possível importar. Erro ao tentar importar cadeia de certificados.
+sec-error-pkcs12-unable-to-locate-object-by-name = Não foi possível exportar. Não foi possível localizar certificado ou chave pela alcunha.
+sec-error-pkcs12-unable-to-export-key = Não foi possível exportar. Chave privada não pôde ser localizada e exportada.
+sec-error-pkcs12-unable-to-write = Não foi possível exportar. Não foi possível escrever o ficheiro a exportar.
+sec-error-pkcs12-unable-to-read = Não foi possível importar. Não foi possível ler o ficheiro a importar.
+sec-error-pkcs12-key-database-not-initialized = Não foi possível exportar. A base de dados das chaves está danificada ou foi apagada.
+sec-error-keygen-fail = Não foi possível gerar um par de chaves públicas/privadas.
+sec-error-invalid-password = A palavra-passe introduzida é inválida. Por favor escolha uma diferente.
+sec-error-retry-old-password = A palavra-passe antiga é inválida. Por favor tente novamente.
+sec-error-bad-nickname = A alcunha do Certificado já está a ser utilizada.
+sec-error-not-fortezza-issuer = A cadeia de pares FORTEZZA possui um certificado não-FORTEZZA.
+sec-error-cannot-move-sensitive-key = Uma chave crítica não pôde ser movida para a ranhura onde é necessária.
+sec-error-js-invalid-module-name = Nome de módulo inválido.
+sec-error-js-invalid-dll = Caminho/nome de ficheiro de módulo inválido
+sec-error-js-add-mod-failure = Não foi possível adicionar o módulo
+sec-error-js-del-mod-failure = Não foi possível apagar o módulo
+sec-error-old-krl = A nova KRL não é mais recente do que o atual.
+sec-error-ckl-conflict = A nova CKL tem um emissor diferente da CKL atual. Apague a CKL atual.
+sec-error-cert-not-in-name-space = A autoridade de certificação para este certificado não está autorizada a emitir um certificado com este nome.
+sec-error-krl-not-yet-valid = A lista de chaves revogadas para este certificado ainda não é válida.
+sec-error-crl-not-yet-valid = A lista de certificados revogados para este certificado ainda não é válida.
+sec-error-unknown-cert = O certificado requisitado não pôde ser encontrado.
+sec-error-unknown-signer = A assinatura do certificado não pôde ser encontrada.
+sec-error-cert-bad-access-location = A localização do servidor de estado do certificado tem um formato inválido.
+sec-error-ocsp-unknown-response-type = A resposta OCSP não pôde ser totalmente descodificada; é de um tipo desconhecido.
+sec-error-ocsp-bad-http-response = O servidor OCSP retornou dados HTTP inesperados/inválidos.
+sec-error-ocsp-malformed-request = O servidor OCSP acha que o pedido está corrupto ou mal formado.
+sec-error-ocsp-server-error = O servidor OCSP sofreu um erro interno.
+sec-error-ocsp-try-server-later = O servidor OCSP sugere que tente mais tarde.
+sec-error-ocsp-request-needs-sig = O servidor OCSP requer uma assinatura para este pedido.
+sec-error-ocsp-unauthorized-request = O servidor OCSP recusou este pedido como não autorizado.
+sec-error-ocsp-unknown-response-status = O servidor OCSP retornou um estado desconhecido.
+sec-error-ocsp-unknown-cert = O servidor OCSP não tem o estado deste certificado.
+sec-error-ocsp-not-enabled = Tem de ativar o OCSP antes de realizar esta operação.
+sec-error-ocsp-no-default-responder = Tem de definir a resposta padrão do OCSP antes de realizar esta operação.
+sec-error-ocsp-malformed-response = A resposta do servidor OCSP foi corrompida ou mal formada.
+sec-error-ocsp-unauthorized-response = O signatário da resposta OCSP não está autorizado a dar o estado deste certificado.
+sec-error-ocsp-future-response = A resposta OCSP ainda não é válida (contem uma data do futuro).
+sec-error-ocsp-old-response = A resposta OCSP contêm informação desatualizada.
+sec-error-digest-not-found = O resumo CMS ou PKCS #7 não foi encontrado na mensagem assinada.
+sec-error-unsupported-message-type = O tipo da mensagem CMS ou PKCS #7 não é suportado.
+sec-error-module-stuck = O módulo PKCS #11 não pôde ser removido porque ainda está a ser utilizado.
+sec-error-bad-template = Não foi possível descodificar dados ASN.1. O modelo especificado era inválido.
+sec-error-crl-not-found = Nenhuma CRL correspondente foi encontrado.
+sec-error-reused-issuer-and-serial = Está a tentar importar um certificado com o mesmo emissor/número de série de um certificado que já existe, mas diferente.
+sec-error-busy = NSS foi incapaz de desligar. Existem objetos que ainda estão a ser utilizados.
+sec-error-extra-input = DER-a mensagem codificada continha dados extra não utilizados.
+sec-error-unsupported-elliptic-curve = Curva elíptica não suportada.
+sec-error-unsupported-ec-point-form = Forma do ponto da curva elíptica não suportada.
+sec-error-unrecognized-oid = Identificador de objeto desconhecido.
+sec-error-ocsp-invalid-signing-cert = Certificado de assinatura OCSP inválido na resposta OCSP.
+sec-error-revoked-certificate-crl = O certificado está revogado na lista de revogação do emissor.
+sec-error-revoked-certificate-ocsp = O servidor OCSP do emissor informa que o certificado encontra-se revogado.
+sec-error-crl-invalid-version = A Lista de Certificados Revogados do emissor possui um número de versão desconhecido.
+sec-error-crl-v1-critical-extension = A Lista de Certificados Revogados V1 do emissor possui uma extensão crítica.
+sec-error-crl-unknown-critical-extension = A Lista de Certificados Revogados V2 do emissor possui uma extensão crítica desconhecida.
+sec-error-unknown-object-type = Especificado um tipo de objeto desconhecido.
+sec-error-incompatible-pkcs11 = O controlador PKCS #11 viola a especificação de uma forma incompatível.
+sec-error-no-event = Não existe nenhuma ranhura de evento disponível no momento.
+sec-error-crl-already-exists = CRL já existe.
+sec-error-not-initialized = NSS não foi inicializado.
+sec-error-token-not-logged-in = A operação falhou porque o token PKCS#11 não está ligado.
+sec-error-ocsp-responder-cert-invalid = O certificado do servidor OCSP de resposta é inválido.
+sec-error-ocsp-bad-signature = A resposta OCSP tem uma assinatura inválida.
+sec-error-out-of-search-limits = A validação do certificado está fora dos limites da pesquisa
+sec-error-invalid-policy-mapping = O mapeamento da política contém anti-política
+sec-error-policy-validation-failed = A cadeia Cert falha a política de validação
+sec-error-unknown-aia-location-type = Tipo de localização desconhecido na extensão AIA do cert
+sec-error-bad-http-response = O servidor retornou uma má resposta HTTP
+sec-error-bad-ldap-response = O servidor retornou uma má resposta LDAP
+sec-error-failed-to-encode-data = Falha ao codificar os dados com o codificador ASN1
+sec-error-bad-info-access-location = Informação incorreta na localização de acesso no certificado da extensão
+sec-error-libpkix-internal = Ocorreu um erro interno Libpkix durante a validação do certificado.
+sec-error-pkcs11-general-error = Um módulo PKCS #11 retornou CKR_GENERAL_ERROR, indicando que ocorreu um erro irrecuperável.
+sec-error-pkcs11-function-failed = Um módulo PKCS #11 retornou CKR_FUNCTION_FAILED, indicando que a função pedida não pôde ser realizada. Tentar a mesma operação novamente poderá funcionar.
+sec-error-pkcs11-device-error = Um módulo PKCS #11 retornou CKR_DEVICE_ERROR, indicando que ocorreu um problema com o token ou ranhura.
+sec-error-bad-info-access-method = Informação do método de acesso desconhecido na extensão do certificado.
+sec-error-crl-import-failed = Erro ao tentar importar o CRL.
+sec-error-expired-password = A palavra-passe expirou.
+sec-error-locked-password = A palavra-passe está bloqueada.
+sec-error-unknown-pkcs11-error = Erro PKCS #11 desconhecido.
+sec-error-bad-crl-dp-url = URL não suportado ou inválido no ponto de distribuição CRL.
+sec-error-cert-signature-algorithm-disabled = O certificado foi assinado usando um algoritmo da assinatura que foi desativado pois não é seguro.
+mozilla-pkix-error-key-pinning-failure = O servidor utiliza uma chave pinning (HPKP) mas não foi possível construir uma cadeia de confiança do certificado que corresponda ao pinset. Violações da chave não podem ser sobrescritas.
+mozilla-pkix-error-ca-cert-used-as-end-entity = O servidor usa um certificado com uma extensão com restrições base identificando-a como uma autoridade de certificação. Para um certificado correto esse problema não se coloca.
+mozilla-pkix-error-inadequate-key-size = O servidor apresentou um certificado com o tamanho da chave demasiado pequeno para estabelecer uma ligação segura.
+mozilla-pkix-error-v1-cert-used-as-ca = Foi utiliado um certificado X.509 versão 1 que não é uma âncora de confiança para emitir o certificado do servidor. Os certificados X.509 versão 1 foram descontinuados e não devem ser utilizados para assinar outros certificados.
+mozilla-pkix-error-not-yet-valid-certificate = O servidor apresentou um certificado que ainda não é válido.
+mozilla-pkix-error-not-yet-valid-issuer-certificate = Um certificado que ainda não é válido foi usado para emitir o certificado do servidor.
+mozilla-pkix-error-signature-algorithm-mismatch = O algoritmo no campo da assinatura do certificado não corresponde ao algoritmo no campo signatureAlgorithm.
+mozilla-pkix-error-ocsp-response-for-cert-missing = A resposta OCSP não inclui um estado para poder verificar o certificado.
+mozilla-pkix-error-validity-too-long = O servidor apresentou um certificado que é válido por demasiado tempo.
+mozilla-pkix-error-required-tls-feature-missing = Está em falta uma função TLS solicitada.
+mozilla-pkix-error-invalid-integer-encoding = O servidor apresentou um certificado que contém uma codificação inválida de um inteiro. Causas comuns incluem números de série negativos, módulos RSA negativos, e codificações que são mais longas que o necessário.
+mozilla-pkix-error-empty-issuer-name = O servidor apresentou um certificado com um nome de emissor distinto vazio.
+mozilla-pkix-error-additional-policy-constraint-failed = Uma restrição de política adicional falhou ao validar este certificado.
+mozilla-pkix-error-self-signed-cert = O certificado não é de confiança porque é auto-assinado.
diff --git a/l10n-pt-PT/browser/browser/originControls.ftl b/l10n-pt-PT/browser/browser/originControls.ftl
new file mode 100644
index 0000000000..72910c0034
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/originControls.ftl
@@ -0,0 +1,50 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These strings appear in Origin Controls for Extensions. Currently,
+## they are visible in the context menu for extension toolbar buttons,
+## and are used to inform the user how the extension can access their
+## data for the current website, and allow them to control it.
+
+origin-controls-no-access =
+ .label = A extensão não pode ler e alterar os dados
+origin-controls-options =
+ .label = A extensão pode ler e alterar os dados:
+origin-controls-option-all-domains =
+ .label = Em Todos os Sites
+origin-controls-option-when-clicked =
+ .label = Somente Quando Clicado
+# This string denotes an option that grants the extension access to
+# the current site whenever they visit it.
+# Variables:
+# $domain (String) - The domain for which the access is granted.
+origin-controls-option-always-on =
+ .label = Permitir sempre em { $domain }
+
+## These strings are used to map Origin Controls states to user-friendly
+## messages. They currently appear in the unified extensions panel.
+
+origin-controls-state-no-access = Não é possível ler e alterar os dados neste site
+origin-controls-state-always-on = Pode ler e alterar sempre os dados neste site
+origin-controls-state-when-clicked = Permissão necessária para ler e alterar os dados
+origin-controls-state-hover-run-visit-only = Executar apenas para esta visita
+origin-controls-state-runnable-hover-open = Abrir extensão
+origin-controls-state-runnable-hover-run = Executar extensão
+origin-controls-state-temporary-access = Pode ler e alterar os dados nesta visita
+
+## Extension's toolbar button.
+## Variables:
+## $extensionTitle (String) - Extension name or title message.
+
+origin-controls-toolbar-button =
+ .label = { $extensionTitle }
+ .tooltiptext = { $extensionTitle }
+# Extension's toolbar button when permission is needed.
+# Note that the new line is intentionally part of the tooltip.
+origin-controls-toolbar-button-permission-needed =
+ .label = { $extensionTitle }
+ .tooltiptext =
+ { $extensionTitle }
+ Permissão necessária
diff --git a/l10n-pt-PT/browser/browser/pageInfo.ftl b/l10n-pt-PT/browser/browser/pageInfo.ftl
new file mode 100644
index 0000000000..6a3e3d5d57
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/pageInfo.ftl
@@ -0,0 +1,261 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/. --
+
+page-info-window =
+ .style = width: 600px; min-height: 550px;
+
+copy =
+ .key = C
+menu-copy =
+ .label = Copiar
+ .accesskey = C
+
+select-all =
+ .key = A
+menu-select-all =
+ .label = Selecionar tudo
+ .accesskey = t
+
+close-dialog =
+ .key = w
+
+general-tab =
+ .label = Geral
+ .accesskey = G
+general-title =
+ .value = Título:
+general-url =
+ .value = Endereço:
+general-type =
+ .value = Tipo:
+general-mode =
+ .value = Modo de renderização:
+general-size =
+ .value = Tamanho:
+general-referrer =
+ .value = URL referente:
+general-modified =
+ .value = Modificado:
+general-encoding =
+ .value = Codificação de texto:
+general-meta-name =
+ .label = Nome
+general-meta-content =
+ .label = Conteúdo
+
+media-tab =
+ .label = Multimédia
+ .accesskey = M
+media-location =
+ .value = Localização:
+media-text =
+ .value = Texto associado:
+media-alt-header =
+ .label = Texto alternativo
+media-address =
+ .label = Endereço
+media-type =
+ .label = Tipo
+media-size =
+ .label = Tamanho
+media-count =
+ .label = Contador
+media-dimension =
+ .value = Dimensões:
+media-long-desc =
+ .value = Descrição longa:
+media-select-all =
+ .label = Selecionar todos
+ .accesskey = e
+media-save-as =
+ .label = Guardar como…
+ .accesskey = G
+media-save-image-as =
+ .label = Guardar como…
+ .accesskey = e
+
+perm-tab =
+ .label = Permissões
+ .accesskey = P
+permissions-for =
+ .value = Permissões para:
+
+security-tab =
+ .label = Segurança
+ .accesskey = S
+security-view =
+ .label = Ver certificado
+ .accesskey = V
+security-view-unknown = Desconhecido
+ .value = Desconhecido
+security-view-identity =
+ .value = Identidade do site
+security-view-identity-owner =
+ .value = Proprietário:
+security-view-identity-domain =
+ .value = Site:
+security-view-identity-verifier =
+ .value = Verificado por:
+security-view-identity-validity =
+ .value = Expira em:
+security-view-privacy =
+ .value = Privacidade e histórico
+
+security-view-privacy-history-value = Já visitei este site no passado?
+security-view-privacy-sitedata-value = Este site está a armazenar informação no meu computador?
+
+security-view-privacy-clearsitedata =
+ .label = Limpar cookies e dados de sites
+ .accesskey = c
+
+security-view-privacy-passwords-value = Guardei quaisquer palavras-passe para este site?
+
+security-view-privacy-viewpasswords =
+ .label = Ver palavras-passe guardadas
+ .accesskey = s
+security-view-technical =
+ .value = Detalhes técnicos
+
+help-button =
+ .label = Ajuda
+
+## These strings are used to tell the user if the website is storing cookies
+## and data on the users computer in the security tab of pageInfo
+## Variables:
+## $value (number) - Amount of data being stored
+## $unit (string) - The unit of data being stored (Usually KB)
+
+security-site-data-cookies = Sim, cookies e { $value } { $unit } de dados de sites
+security-site-data-only = Sim, { $value } { $unit } de dados de sites
+
+security-site-data-cookies-only = Sim, cookies
+security-site-data-no = Não
+
+##
+
+image-size-unknown = Desconhecido
+page-info-not-specified =
+ .value = Não especificado
+not-set-alternative-text = Não especificado
+not-set-date = Não especificado
+media-img = Imagem
+media-bg-img = Fundo
+media-border-img = Margem
+media-list-img = Marcas
+media-cursor = Cursor
+media-object = Objeto
+media-embed = Embutido
+media-link = Ícone
+media-input = Entrada
+media-video = Vídeo
+media-audio = Áudio
+saved-passwords-yes = Sim
+saved-passwords-no = Não
+
+no-page-title =
+ .value = Página sem título:
+general-quirks-mode =
+ .value = Modo quirks
+general-strict-mode =
+ .value = Modo de cumprimento dos padrões
+page-info-security-no-owner =
+ .value = Este site não fornece informações sobre o proprietário.
+media-select-folder = Selecione uma pasta para guardar as imagens
+media-unknown-not-cached =
+ .value = Desconhecido (não está em cache)
+permissions-use-default =
+ .label = Utilizar predefinição
+security-no-visits = Não
+
+# This string is used to display the number of meta tags
+# in the General Tab
+# Variables:
+# $tags (number) - The number of meta tags
+general-meta-tags =
+ .value =
+ { $tags ->
+ [one] Meta (1 etiqueta)
+ *[other] Meta ({ $tags } etiquetas)
+ }
+
+# This string is used to display the number of times
+# the user has visited the website prior
+# Variables:
+# $visits (number) - The number of previous visits
+security-visits-number =
+ { $visits ->
+ [0] Não
+ [one] Sim, uma vez
+ *[other] Sim, { $visits } vezes
+ }
+
+# This string is used to display the size of a media file
+# Variables:
+# $kb (number) - The size of an image in Kilobytes
+# $bytes (number) - The size of an image in Bytes
+properties-general-size =
+ .value =
+ { $bytes ->
+ [one] { $kb } KB ({ $bytes } byte)
+ *[other] { $kb } KB ({ $bytes } bytes)
+ }
+
+# This string is used to display the type and number
+# of frames of a animated image
+# Variables:
+# $type (string) - The type of a animated image
+# $frames (number) - The number of frames in an animated image
+media-animated-image-type =
+ .value =
+ { $frames ->
+ [one] Imagem { $type } (animada, { $frames } frame)
+ *[other] Imagem { $type } (animada, { $frames } frames)
+ }
+
+# This string is used to display the type of
+# an image
+# Variables:
+# $type (string) - The type of an image
+media-image-type =
+ .value = Imagem { $type }
+
+# This string is used to display the size of a scaled image
+# in both scaled and unscaled pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+# $scaledx (number) - The scaled horizontal size of an image
+# $scaledy (number) - The scaled vertical size of an image
+media-dimensions-scaled =
+ .value = { $dimx }px × { $dimy }px (redimensionado para { $scaledx }px × { $scaledy }px)
+
+# This string is used to display the size of an image in pixels
+# Variables:
+# $dimx (number) - The horizontal size of an image
+# $dimy (number) - The vertical size of an image
+media-dimensions =
+ .value = { $dimx }px × { $dimy }px
+
+# This string is used to display the size of a media
+# file in kilobytes
+# Variables:
+# $size (number) - The size of the media file in kilobytes
+media-file-size = { $size } KB
+
+# This string is used to display the website name next to the
+# "Block Images" checkbox in the media tab
+# Variables:
+# $website (string) - The website name
+media-block-image =
+ .label = Bloquear imagens de { $website }
+ .accesskey = B
+
+# This string is used to display the URL of the website on top of the
+# pageInfo dialog box
+# Variables:
+# $website (string) — The url of the website pageInfo is getting info for
+page-info-page =
+ .title = Informação da página - { $website }
+page-info-frame =
+ .title = Informação do frame - { $website }
diff --git a/l10n-pt-PT/browser/browser/panelUI.ftl b/l10n-pt-PT/browser/browser/panelUI.ftl
new file mode 100644
index 0000000000..ab79238e55
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/panelUI.ftl
@@ -0,0 +1,25 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Customization Menu
+
+# The overflow menu is the menu that appears if you click the chevron (>> button) in the location bar.
+customize-menu-unpin-from-overflowmenu =
+ .label = Desafixar do menu de excesso
+ .accesskey = U
+customize-menu-add-to-toolbar =
+ .label = Adicionar à barra de ferramentas
+ .accesskey = A
+customize-menu-add-to-overflowmenu =
+ .label = Adicionar ao menu de excesso
+ .accesskey = m
+
+## Forget Button
+
+# The forget button can be added to the toolbar or overflow menu via the cutomization menu.
+panic-button-thankyou-msg1 = O seu histórico recente foi limpo.
+panic-button-thankyou-msg2 = Navegação segura!
+panic-button-thankyou-button =
+ .label = Obrigado!
diff --git a/l10n-pt-PT/browser/browser/panicButton.ftl b/l10n-pt-PT/browser/browser/panicButton.ftl
new file mode 100644
index 0000000000..d9c761403f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/panicButton.ftl
@@ -0,0 +1,31 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+panic-button-open-new-window = Abrir uma nova janela
+panic-button-undo-warning = Esta ação não pode ser anulada.
+panic-button-forget-button =
+ .label = Esquecer!
+
+## These strings are combined to form a complete sentence starting with
+## panic-main-timeframe-desc. For example: "Forget the last: Five minutes".
+## Please ensure that this remains the case in the translation.
+
+panic-main-timeframe-desc = Esquecer os últimos:
+panic-button-5min =
+ .label = Cinco minutos
+panic-button-2hr =
+ .label = Duas horas
+panic-button-day =
+ .label = 24 horas
+
+## These strings are combined to form a complete sentence starting with
+## panic-button-action-desc. For example: "Proceeding will: Delete Recent Cookies".
+## Please ensure that this remains the case in the translation.
+## Note also that some strings include tags for emphasis on the
+## words "Cookies", "History", "Tabs" and "Windows". The translation should do the same.
+
+panic-button-action-desc = Se continuar, irá:
+panic-button-delete-cookies = Apagar cookies recentes
+panic-button-delete-history = Apagar histórico recente
+panic-button-delete-tabs-and-windows = Fechar todos os separadores e janelas
diff --git a/l10n-pt-PT/browser/browser/places.ftl b/l10n-pt-PT/browser/browser/places.ftl
new file mode 100644
index 0000000000..335c06c47f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/places.ftl
@@ -0,0 +1,207 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this file,
+# You can obtain one at http://mozilla.org/MPL/2.0/.
+
+places-open =
+ .label = Abrir
+ .accesskey = A
+places-open-in-tab =
+ .label = Abrir num novo separador
+ .accesskey = v
+places-open-in-container-tab =
+ .label = Abrir num novo separador contentor
+ .accesskey = i
+places-open-all-bookmarks =
+ .label = Abrir todos os marcadores
+ .accesskey = b
+places-open-all-in-tabs =
+ .label = Abrir tudo em separadores
+ .accesskey = o
+places-open-in-window =
+ .label = Abrir numa nova janela
+ .accesskey = j
+places-open-in-private-window =
+ .label = Abrir numa nova janela privada
+ .accesskey = p
+places-add-bookmark =
+ .label = Adicionar marcador…
+ .accesskey = m
+places-add-folder-contextmenu =
+ .label = Adicionar pasta…
+ .accesskey = s
+places-add-folder =
+ .label = Adicionar pasta…
+ .accesskey = s
+places-add-separator =
+ .label = Adicionar separador
+ .accesskey = s
+places-view =
+ .label = Ver
+ .accesskey = V
+places-by-date =
+ .label = Por data
+ .accesskey = d
+places-by-site =
+ .label = Por site
+ .accesskey = s
+places-by-most-visited =
+ .label = Por mais visitados
+ .accesskey = v
+places-by-last-visited =
+ .label = Por última visita
+ .accesskey = l
+places-by-day-and-site =
+ .label = Por data e site
+ .accesskey = t
+places-history-search =
+ .placeholder = Pesquisar histórico
+places-history =
+ .aria-label = Histórico
+places-bookmarks-search =
+ .placeholder = Pesquisar marcadores
+places-delete-domain-data =
+ .label = Esquecer este site
+ .accesskey = s
+places-sortby-name =
+ .label = Ordenar por nome
+ .accesskey = r
+# places-edit-bookmark and places-edit-generic will show one or the other and can have the same access key.
+places-edit-bookmark =
+ .label = Editar marcador…
+ .accesskey = i
+places-edit-generic =
+ .label = Editar…
+ .accesskey = i
+places-edit-folder2 =
+ .label = Editar pasta…
+ .accesskey = i
+places-delete-folder =
+ .label =
+ { $count ->
+ [1] Eliminar pasta
+ *[other] Eliminar pastas
+ }
+ .accesskey = l
+# Managed bookmarks are created by an administrator and cannot be changed by the user.
+managed-bookmarks =
+ .label = Marcadores administrativos
+# This label is used when a managed bookmarks folder doesn't have a name.
+managed-bookmarks-subfolder =
+ .label = Subpasta
+# This label is used for the "Other Bookmarks" folder that appears in the bookmarks toolbar.
+other-bookmarks-folder =
+ .label = Outros marcadores
+places-show-in-folder =
+ .label = Mostrar na pasta
+ .accesskey = M
+# Variables:
+# $count (number) - The number of elements being selected for removal.
+places-delete-bookmark =
+ .label =
+ { $count ->
+ [1] Eliminar marcador
+ *[other] Eliminar marcadores
+ }
+ .accesskey = l
+places-untag-bookmark =
+ .label = Remover Etiqueta
+ .accesskey = R
+places-manage-bookmarks =
+ .label = Gerir marcadores
+ .accesskey = m
+places-forget-about-this-site-confirmation-title = Esquecer este site
+# Variables:
+# $hostOrBaseDomain (string) - The base domain (or host in case there is no base domain) for which data is being removed
+places-forget-about-this-site-confirmation-message = Esta ação irá remover todos os dados relativos a { $hostOrBaseDomain } incluindo histórico, palavras-passe, cookies, cache e preferências de conteúdo. Tem a certeza que pretende continuar?
+# Variables:
+# $hostOrBaseDomain (string) - The base domain (or host in case there is no base domain) for which data is being removed
+places-forget-about-this-site-confirmation-msg = Esta ação irá remover todos os dados relativos a { $hostOrBaseDomain } incluindo o histórico, cookies, cache e preferências de conteúdo. Marcadores e palavras-passe relacionados não serão removidos. Tem a certeza que pretende continuar?
+places-forget-about-this-site-forget = Esquecer
+places-library =
+ .title = Biblioteca
+ .style = width:700px; height:500px;
+places-library2 =
+ .title = Biblioteca
+ .style = min-width:700px; min-height:500px;
+places-library3 =
+ .title = Biblioteca
+places-organize-button =
+ .label = Organizar
+ .tooltiptext = Organize os seus marcadores
+ .accesskey = O
+places-organize-button-mac =
+ .label = Organizar
+ .tooltiptext = Organize os seus marcadores
+places-file-close =
+ .label = Fechar
+ .accesskey = e
+places-cmd-close =
+ .key = w
+places-view-button =
+ .label = Vistas
+ .tooltiptext = Altere a sua vista
+ .accesskey = V
+places-view-button-mac =
+ .label = Vistas
+ .tooltiptext = Altere a sua vista
+places-view-menu-columns =
+ .label = Mostrar colunas
+ .accesskey = c
+places-view-menu-sort =
+ .label = Ordenar
+ .accesskey = O
+places-view-sort-unsorted =
+ .label = Não ordenados
+ .accesskey = N
+places-view-sort-ascending =
+ .label = Ordem A - Z
+ .accesskey = A
+places-view-sort-descending =
+ .label = Ordem Z - A
+ .accesskey = Z
+places-maintenance-button =
+ .label = Importar e criar cópia de segurança
+ .tooltiptext = Importar e criar cópia de segurança dos seus marcadores
+ .accesskey = I
+places-maintenance-button-mac =
+ .label = Importar e criar cópia de segurança
+ .tooltiptext = Importar e criar cópia de segurança dos seus marcadores
+places-cmd-backup =
+ .label = Cópia de segurança…
+ .accesskey = C
+places-cmd-restore =
+ .label = Restaurar
+ .accesskey = R
+places-cmd-restore-from-file =
+ .label = Escolher ficheiro…
+ .accesskey = c
+places-import-bookmarks-from-html =
+ .label = Importar marcadores a partir de HTML…
+ .accesskey = I
+places-export-bookmarks-to-html =
+ .label = Exportar marcadores para HTML…
+ .accesskey = E
+places-import-other-browser =
+ .label = Importar dados de outro navegador…
+ .accesskey = a
+places-view-sort-col-name =
+ .label = Nome
+places-view-sort-col-tags =
+ .label = Etiquetas
+places-view-sort-col-url =
+ .label = Localização
+places-view-sort-col-most-recent-visit =
+ .label = Visita mais recente
+places-view-sort-col-visit-count =
+ .label = Número de visitas
+places-view-sort-col-date-added =
+ .label = Adicionado
+places-view-sort-col-last-modified =
+ .label = Última modificação
+places-cmd-find-key =
+ .key = f
+places-back-button =
+ .tooltiptext = Retroceder
+places-forward-button =
+ .tooltiptext = Avançar
+places-details-pane-select-an-item-description = Selecione um item para ver e editar as suas propriedades
diff --git a/l10n-pt-PT/browser/browser/policies/policies-descriptions.ftl b/l10n-pt-PT/browser/browser/policies/policies-descriptions.ftl
new file mode 100644
index 0000000000..9c640eaa8a
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/policies/policies-descriptions.ftl
@@ -0,0 +1,125 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The Enterprise Policies feature is aimed at system administrators
+## who want to deploy these settings across several Firefox installations
+## all at once. This is traditionally done through the Windows Group Policy
+## feature, but the system also supports other forms of deployment.
+## These are short descriptions for individual policies, to be displayed
+## in the documentation section in about:policies.
+
+policy-3rdparty = Definir políticas que WebExtensions podem aceder via chrome.storage.managed.
+policy-AllowedDomainsForApps = Definir os domínios com permissão para aceder ao Google Workspace.
+policy-AppAutoUpdate = Ativar ou desativar atualizações automáticas de aplicações.
+policy-AppUpdatePin = Impedir que { -brand-short-name } seja atualizado além da versão especificada.
+policy-AppUpdateURL = Definir um URL personalizado de atualização da aplicação.
+policy-Authentication = Configurar autenticação integrada para os sites que a suportem.
+policy-AutoLaunchProtocolsFromOrigins = Define uma lista de protocolos externos que podem ser utilizados a partir de origens listadas, sem avisar o utilizador.
+policy-BackgroundAppUpdate2 = Ativar ou desativar o serviço de atualização em segundo plano.
+policy-BlockAboutAddons = Bloquear acesso ao Gestor de extras (about:addons).
+policy-BlockAboutConfig = Bloquear acesso à página about:config.
+policy-BlockAboutProfiles = Bloquear acesso à página about:profiles.
+policy-BlockAboutSupport = Bloquear acesso à página about:support.
+policy-Bookmarks = Criar marcadores na barra de ferramentas de marcadores, menus de marcadores ou uma pasta especificada dentro dos mesmos.
+policy-CaptivePortal = Ativar ou desativar o suporte ao portal cativo.
+policy-CertificatesDescription = Adicionar certificados ou utilizar certificados integrados.
+policy-Cookies = Permitir ou negar que os sites definam cookies.
+policy-DisabledCiphers = Desativar cifras.
+policy-DefaultDownloadDirectory = Definir o diretório de transferências predefinido.
+policy-DisableAppUpdate = Impedir o navegador de ser atualizado.
+policy-DisableBuiltinPDFViewer = Desativar o PDF.js, o leitor de PDF incorporado no { -brand-short-name }.
+policy-DisableDefaultBrowserAgent = Impedir que o agente do navegador predefinido execute qualquer ação. Aplicável apenas ao Windows; as outras plataformas não dispõem deste agente.
+policy-DisableDeveloperTools = Bloquear acesso às ferramentas de programador.
+policy-DisableFeedbackCommands = Desativar comandos para enviar comentários a partir do menu de Ajuda (enviar feedback e reportar sites fraudulentos)
+policy-DisableFirefoxAccounts = Desativar os serviços baseados na { -fxaccount-brand-name }, incluindo o Sync.
+# Firefox Screenshots is the name of the feature, and should not be translated.
+policy-DisableFirefoxScreenshots = Desativar a funcionalidade Firefox Screenshots.
+policy-DisableFirefoxStudies = Impedir o { -brand-short-name } de executar estudos.
+policy-DisableForgetButton = Impedir o acesso ao botão Esquecer.
+policy-DisableFormHistory = Não guardar histórico de pesquisas ou de formulários.
+policy-DisablePrimaryPasswordCreation = Se verdadeiro, não poderá ser criada uma palavra-passe principal.
+policy-DisablePasswordReveal = Impedir que as palavras-passe sejam reveladas nas credenciais guardadas.
+policy-DisablePocket = Desativar a funcionalidade de guardar páginas web no Pocket.
+policy-DisablePrivateBrowsing = Desativar a Navegação privada.
+policy-DisableProfileImport = Desativar o menu de comando para importar dados de outro navegador.
+policy-DisableProfileRefresh = Desativar o botão Restaurar { -brand-short-name } na página about:support.
+policy-DisableSafeMode = Desativar a funcionalidade de reiniciar no Modo de segurança. Nota: o botão Shift para entrar no Modo de segurança apenas pode ser desativado no Windows utilizando Política de grupo.
+policy-DisableSecurityBypass = Impedir o utilizador de contornar certos avisos de segurança.
+policy-DisableSetAsDesktopBackground = Desativar o comando de menu Definir como fundo do ambiente de trabalho para imagens.
+policy-DisableSystemAddonUpdate = Impedir o navegador de instalar e atualizar extras de sistema.
+policy-DisableTelemetry = Desligar a Telemetria.
+policy-DisableThirdPartyModuleBlocking = Evita que o utilizador bloqueie módulos de terceiros que são injetados no processo do { -brand-short-name }.
+policy-DisplayBookmarksToolbar = Mostrar a Barra ferramentas de marcadores por predefinição.
+policy-DisplayMenuBar = Mostrar a Barra de menu por predefinição.
+policy-DNSOverHTTPS = Configurar DNS por HTTPS.
+policy-DontCheckDefaultBrowser = Desativar verificação por navegador predefinido no arranque.
+policy-DownloadDirectory = Definir e bloquear o diretório de transferências predefinido.
+# “lock” means that the user won’t be able to change this setting
+policy-EnableTrackingProtection = Ativar ou desativar o Bloqueio de conteúdo e bloqueá-lo opcionalmente.
+# “lock” means that the user won’t be able to change this setting
+policy-EncryptedMediaExtensions = Ativar ou desativar as Extensões de multimédia encriptada e, opcionalmente, bloquear esta definição.
+policy-ExemptDomainFileTypePairsFromFileTypeDownloadWarnings = Desative os avisos com base na extensão de ficheiro para tipos de ficheiro específicos em domínios.
+# A “locked” extension can’t be disabled or removed by the user. This policy
+# takes 3 keys (“Install”, ”Uninstall”, ”Locked”), you can either keep them in
+# English or translate them as verbs.
+policy-Extensions = Instalar, desinstalar ou bloquear extensões. A opção Instalar usa URLs ou caminhos como parâmetros. As opções Desinstalar e Bloquear usam IDs de extensões.
+policy-ExtensionSettings = Gerir todos os aspetos de instalação de extensões.
+policy-ExtensionUpdate = Ativar ou desativar atualizações automáticas de extensões.
+policy-FirefoxHome = Configurar o Firefox Home.
+policy-FirefoxHome2 = Configurar o { -firefox-home-brand-name }.
+policy-FlashPlugin = Permitir ou negar a utilização do plugin Flash.
+policy-GoToIntranetSiteForSingleWordEntryInAddressBar = Força a navegação direta no site da intranet em vez de pesquisar ao digitar entradas de uma única palavra na barra de endereço.
+policy-Handlers = Configurar as aplicações operadoras predefinidas.
+policy-HardwareAcceleration = Se falso, desligar aceleração de hardware.
+# “lock” means that the user won’t be able to change this setting
+policy-Homepage = Definir e bloquear opcionalmente a página inicial.
+policy-InstallAddonsPermission = Permitir a instalação de extras a determinados sites.
+policy-LegacyProfiles = Desativar a funcionalidade de forçar um perfil separado para cada instalação
+
+## Do not translate "SameSite", it's the name of a cookie attribute.
+
+policy-LegacySameSiteCookieBehaviorEnabled = Ative a definição legada de comportamento predefinido para a cookie SameSite.
+policy-LegacySameSiteCookieBehaviorEnabledForDomainList = Reverta para o comportamento legado de SameSite para as cookies nos sites especificados.
+
+##
+
+policy-LocalFileLinks = Permitir que determinados sites estabeleçam ligações a ficheiros locais.
+policy-ManagedBookmarks = Configura uma lista de marcadores geridos por um administrador que não podem ser alterados pelo utilizador.
+policy-ManualAppUpdateOnly = Permitir apenas atualizações manuais e não notificar o utilizador sobre atualizações.
+policy-PrimaryPassword = Exigir ou impedir a utilização de uma palavra-passe principal.
+policy-NetworkPrediction = Ativar ou desativar a previsão de rede (pré-obtenção de DNS).
+policy-NewTabPage = Ativar ou desativar a página de novo separador.
+policy-NoDefaultBookmarks = Desativar a criação de marcadores predefinidos empacotados com o { -brand-short-name }, e os Marcadores inteligentes (Mais visitados, Etiquetas recentes). Nota: esta política é apenas eficaz se utilizada antes da primeira execução do perfil.
+policy-OfferToSaveLogins = Forçar a definição para permitir que { -brand-short-name } se ofereça para memorizar as credenciais e as palavras-passe guardadas. São aceites ambos os valores, "true" e "false".
+policy-OfferToSaveLoginsDefault = Defina o valor predefinido para permitir que o { -brand-short-name } sugira credenciais e palavras-passe guardadas. São aceites ambos os valores, true e false.
+policy-OverrideFirstRunPage = Sobrepor a página de primeira execução. Defina esta política para blank se pretende desativar a página de primeira execução.
+policy-OverridePostUpdatePage = Sobrepor a página "Novidades" pós-atualização. Defina esta política para blank se pretende desativar a página pós-atualização.
+policy-PasswordManagerEnabled = Ativar a opção de guardar as palavras-passe no gestor de palavras-passe.
+policy-PasswordManagerExceptions = Impedir o { -brand-short-name } de guardar palavras-passe para sites específicos.
+# PDF.js and PDF should not be translated
+policy-PDFjs = Desativar ou configurar o PDF.js, o visualizador integrado de PDF do { -brand-short-name }.
+policy-Permissions2 = Configurar as permissões para a câmara, microfone, localização, notificações e reprodução automática.
+policy-PictureInPicture = Ativar ou desativar o vídeo em janela flutuante.
+policy-PopupBlocking = Permitir que determinados sites mostrem pop-ups por predefinição.
+policy-Preferences = Definir e bloquear o valor para um subconjunto de preferências.
+policy-PromptForDownloadLocation = Perguntar onde guardar os ficheiros durante a transferência.
+policy-Proxy = Configurar definições proxy.
+policy-RequestedLocales = Definir a lista de idiomas solicitados para a aplicação por ordem de preferência.
+policy-SanitizeOnShutdown2 = Limpar dados de navegação ao desligar.
+policy-SearchBar = Definir a localização predefinida da barra de pesquisa. O utilizador ainda tem permissão para a personalizar.
+policy-SearchEngines = Configurar as definições de motor de pesquisa. Esta política é apenas disponível na versão Extended Support Release (ESR).
+policy-SearchSuggestEnabled = Ativar ou desativar sugestões de pesquisa.
+# For more information, see https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/PKCS11/Module_Installation
+policy-SecurityDevices = Instalar módulos PKCS #11.
+policy-ShowHomeButton = Mostrar o botão início na barra de ferramentas.
+policy-SSLVersionMax = Definir a versão máxima de SSL.
+policy-SSLVersionMin = Definir a versão mínima de SSL.
+policy-StartDownloadsInTempDirectory = Forçar transferências a iniciarem num local temporário local em vez do diretório de transferências padrão.
+policy-SupportMenu = Adicionar um item de menu de suporte personalizado ao menu de ajuda.
+policy-UserMessaging = Não mostrar determinadas mensagens ao utilizador.
+policy-UseSystemPrintDialog = Imprimir utilizando a janela de impressão do sistema.
+# “format” refers to the format used for the value of this policy.
+policy-WebsiteFilter = Impedir que sites sejam visitados. Consulte a documentação para mais detalhes sobre o formato.
+policy-Windows10SSO = Permitir a autenticação única para contas da Microsoft, trabalho e escola.
diff --git a/l10n-pt-PT/browser/browser/preferences/addEngine.ftl b/l10n-pt-PT/browser/browser/preferences/addEngine.ftl
new file mode 100644
index 0000000000..ef9ee67eb6
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/addEngine.ftl
@@ -0,0 +1,26 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+add-engine-window =
+ .title = Adicionar motor de pesquisa
+ .style = width: 35em;
+
+add-engine-window2 =
+ .title = Adicionar motor de pesquisa
+ .style = min-width: 35em;
+
+add-engine-button = Adicionar motor personalizado
+
+add-engine-name = Nome do motor de pesquisa
+
+add-engine-alias = Nome alternativo
+
+add-engine-url = Endereço do motor, utilize %s em substituição do termo de pesquisa
+
+add-engine-dialog =
+ .buttonlabelaccept = Adicionar motor
+ .buttonaccesskeyaccept = A
+
+engine-name-exists = Já existe um motor com esse nome.
+engine-alias-exists = Já existe um motor com esse nome alternativo.
diff --git a/l10n-pt-PT/browser/browser/preferences/applicationManager.ftl b/l10n-pt-PT/browser/browser/preferences/applicationManager.ftl
new file mode 100644
index 0000000000..10b491969e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/applicationManager.ftl
@@ -0,0 +1,29 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+app-manager-window =
+ .title = Detalhes do programa
+ .style = width: 34em; min-height: 24em;
+
+app-manager-window2 =
+ .title = Detalhes do programa
+ .style = min-width: 34em; min-height: 24em;
+
+app-manager-remove =
+ .label = Remover
+ .accesskey = R
+
+# Variables:
+# $type (String) - the URI scheme of the link (e.g. mailto:)
+app-manager-handle-protocol = As aplicações seguintes podem ser utilizadas para gerir Ligações { $type }.
+
+# Variables:
+# $type (String) - the MIME type (e.g. application/binary)
+app-manager-handle-file = As aplicações seguintes podem ser utilizadas para gerir Conteúdo { $type }.
+
+## These strings are followed, on a new line,
+## by the URL or path of the application.
+
+app-manager-web-app-info = Esta aplicação web está alojada em:
+app-manager-local-app-info = Esta aplicação encontra-se em:
diff --git a/l10n-pt-PT/browser/browser/preferences/blocklists.ftl b/l10n-pt-PT/browser/browser/preferences/blocklists.ftl
new file mode 100644
index 0000000000..4af7d28289
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/blocklists.ftl
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+blocklist-window =
+ .title = Listas de bloqueio
+ .style = width: 55em
+
+blocklist-window2 =
+ .title = Listas de bloqueio
+ .style = min-width: 55em
+
+blocklist-description = Escolha a lista que o { -brand-short-name } utiliza para bloquear os rastreadores na Internet. As listas são fornecidas por Disconnect.
+blocklist-close-key =
+ .key = w
+
+blocklist-treehead-list =
+ .label = Lista
+
+blocklist-dialog =
+ .buttonlabelaccept = Guardar alterações
+ .buttonaccesskeyaccept = s
+
+
+# This template constructs the name of the block list in the block lists dialog.
+# It combines the list name and description.
+# e.g. "Standard (Recommended). This list does a pretty good job."
+#
+# Variables:
+# $listName {string, "Standard (Recommended)."} - List name.
+# $description {string, "This list does a pretty good job."} - Description of the list.
+blocklist-item-list-template = { $listName } { $description }
+
+blocklist-item-moz-std-listName = Lista de bloqueios de nível 1 (recomendado).
+blocklist-item-moz-std-description = Permite alguns rastreadores para que menos sites falhem.
+blocklist-item-moz-full-listName = Lista de bloqueios de nível 2.
+blocklist-item-moz-full-description = Bloqueia todos os rastreadores detetados. Alguns sites ou conteúdos podem não carregar corretamente.
diff --git a/l10n-pt-PT/browser/browser/preferences/clearSiteData.ftl b/l10n-pt-PT/browser/browser/preferences/clearSiteData.ftl
new file mode 100644
index 0000000000..b3a022cfab
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/clearSiteData.ftl
@@ -0,0 +1,60 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+clear-site-data-window =
+ .title = Limpar dados
+ .style = width: 35em
+
+clear-site-data-window2 =
+ .title = Limpar dados
+ .style = min-width: 35em
+
+clear-site-data-description = Limpar todos os cookies e dados de sites armazenados pelo { -brand-short-name } pode terminar sessões nos sites e remover conteúdo web offline. Limpar dados em cache não irá afetar as suas credenciais.
+
+clear-site-data-close-key =
+ .key = w
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cookies and Site Data (24 KB)"
+# Variables:
+# $amount (Number) - Amount of site data currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cookies-with-data =
+ .label = Cookies e dados de sites ({ $amount } { $unit })
+ .accesskey = s
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cookies-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cookies-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cookies-empty =
+ .label = Cookies e dados de sites
+ .accesskey = s
+
+clear-site-data-cookies-info = Se for limpo, pode terminar sessões em sites
+
+# The parameters in parentheses in this string describe disk usage
+# in the format ($amount $unit), e.g. "Cached Web Content (24 KB)"
+# Variables:
+# $amount (Number) - Amount of cache currently stored on disk
+# $unit (String) - Abbreviation of the unit that $amount is in, e.g. "MB"
+clear-site-data-cache-with-data =
+ .label = Conteúdo Web em cache ({ $amount } { $unit })
+ .accesskey = W
+
+# This string is a placeholder for while the data used to fill
+# clear-site-data-cache-with-data is loading. This placeholder is usually
+# only shown for a very short time (< 1s), so it should be very similar
+# or the same as clear-site-data-cache-with-data (except the amount and unit),
+# to avoid flickering.
+clear-site-data-cache-empty =
+ .label = Conteúdo Web em cache
+ .accesskey = W
+
+clear-site-data-cache-info = Irá obrigar que os sites recarreguem imagens e dados
+
+clear-site-data-dialog =
+ .buttonlabelaccept = Limpar
+ .buttonaccesskeyaccept = L
diff --git a/l10n-pt-PT/browser/browser/preferences/colors.ftl b/l10n-pt-PT/browser/browser/preferences/colors.ftl
new file mode 100644
index 0000000000..e0cc6cdad5
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/colors.ftl
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+colors-window =
+ .title = Cores
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em
+ *[other] width: 38em
+ }
+
+colors-dialog =
+ .title = Cores
+ .style = width: 41em;
+
+colors-dialog2 =
+ .title = Cores
+ .style = min-width: 41em;
+
+colors-close-key =
+ .key = w
+
+colors-page-override = Sobrepor as cores especificadas pela página com as suas seleções acima
+ .accesskey = S
+
+colors-page-override-option-always =
+ .label = Sempre
+colors-page-override-option-auto =
+ .label = Apenas com temas de alto contraste
+colors-page-override-option-never =
+ .label = Nunca
+
+colors-text-and-background = Texto e fundo
+
+colors-text-header = Texto
+ .accesskey = T
+
+colors-background = Fundo
+ .accesskey = F
+
+colors-use-system =
+ .label = Utilizar as cores do sistema
+ .accesskey = s
+
+colors-underline-links =
+ .label = Sublinhar ligações
+ .accesskey = u
+
+colors-links-header = Cores das ligações
+
+colors-unvisited-links = Ligações não visitadas
+ .accesskey = L
+
+colors-visited-links = Ligações visitadas
+ .accesskey = v
diff --git a/l10n-pt-PT/browser/browser/preferences/connection.ftl b/l10n-pt-PT/browser/browser/preferences/connection.ftl
new file mode 100644
index 0000000000..228e608820
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/connection.ftl
@@ -0,0 +1,109 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+connection-window =
+ .title = Definições de ligação
+ .style =
+ { PLATFORM() ->
+ [macos] width: 44em
+ *[other] width: 49em
+ }
+
+connection-window2 =
+ .title = Definições de ligação
+ .style =
+ { PLATFORM() ->
+ [macos] min-width: 44em
+ *[other] min-width: 49em
+ }
+
+connection-close-key =
+ .key = w
+
+connection-disable-extension =
+ .label = Desativar extensão
+
+connection-proxy-configure = Configurar acesso proxy à Internet
+
+connection-proxy-option-no =
+ .label = Sem proxy
+ .accesskey = p
+connection-proxy-option-system =
+ .label = Utilizar definições de proxy do sistema
+ .accesskey = x
+connection-proxy-option-auto =
+ .label = Detetar automaticamente as definições de proxy para esta rede
+ .accesskey = d
+connection-proxy-option-manual =
+ .label = Configuração manual de proxy
+ .accesskey = m
+
+connection-proxy-http = Proxy HTTP
+ .accesskey = x
+connection-proxy-http-port = Porta
+ .accesskey = P
+connection-proxy-https-sharing =
+ .label = Utilizar também este proxy para HTTPS
+ .accesskey = S
+
+connection-proxy-https = Proxy HTTPS
+ .accesskey = H
+connection-proxy-ssl-port = Porta
+ .accesskey = o
+
+connection-proxy-socks = Servidor SOCKS
+ .accesskey = C
+connection-proxy-socks-port = Porta
+ .accesskey = a
+
+connection-proxy-socks4 =
+ .label = SOCKS v4
+ .accesskey = 4
+connection-proxy-socks5 =
+ .label = SOCKS v5
+ .accesskey = 5
+connection-proxy-noproxy = Nenhum proxy para
+ .accesskey = n
+
+connection-proxy-noproxy-desc = Exemplo: .mozilla.org, .net.nz, 192.168.1.0/24
+
+# Do not translate "localhost", "127.0.0.1/8" and "::1". (You can translate "and".)
+connection-proxy-noproxy-localhost-desc-2 = A ligações a localhost, 127.0.0.1/8, e ::1 não passam pelo proxy.
+
+connection-proxy-autotype =
+ .label = URL de configuração automática de proxy
+ .accesskey = a
+
+connection-proxy-reload =
+ .label = Recarregar
+ .accesskey = c
+
+connection-proxy-autologin =
+ .label = Não solicitar autenticação se a palavra-passe estiver guardada
+ .accesskey = i
+ .tooltip = Esta opção autentica-lhe silenciosamente nos proxies quando tem credenciais para os mesmos. Será solicitado(a) se a autenticação falhar.
+
+connection-proxy-socks-remote-dns =
+ .label = Encaminhar DNS via proxy ao utilizar SOCKS v5
+ .accesskey = D
+
+connection-dns-over-https =
+ .label = Ativar DNS sob HTTPS
+ .accesskey = H
+
+connection-dns-over-https-url-resolver = Utilizar fornecedor
+ .accesskey = f
+
+# Variables:
+# $name (String) - Display name or URL for the DNS over HTTPS provider
+connection-dns-over-https-url-item-default =
+ .label = { $name } (predefinição)
+ .tooltiptext = Utilize o endereço predefinido para resolver DNS sob HTTPS
+
+connection-dns-over-https-url-custom =
+ .label = Personalizar
+ .accesskey = P
+ .tooltiptext = Introduza o endereço que pretende utilizar para resolver DNS sob HTTPS
+
+connection-dns-over-https-custom-label = Personalizar
diff --git a/l10n-pt-PT/browser/browser/preferences/containers.ftl b/l10n-pt-PT/browser/browser/preferences/containers.ftl
new file mode 100644
index 0000000000..b993ce8ec4
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/containers.ftl
@@ -0,0 +1,102 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+containers-window-new =
+ .title = Adicionar novo contentor
+ .style = width: 45em
+# Variables
+# $name (String) - Name of the container
+containers-window-update-settings =
+ .title = Definições do contentor { $name }
+ .style = width: 45em
+
+containers-window-new2 =
+ .title = Adicionar novo contentor
+ .style = min-width: 45em
+# Variables
+# $name (String) - Name of the container
+containers-window-update-settings2 =
+ .title = Definições do contentor { $name }
+ .style = min-width: 45em
+
+containers-window-close =
+ .key = w
+
+# This is a term to store style to be applied
+# on the three labels in the containers add/edit dialog:
+# - name
+# - icon
+# - color
+#
+# Using this term and referencing it in the `.style` attribute
+# of the three messages ensures that all three labels
+# will be aligned correctly.
+-containers-labels-style = min-width: 4rem
+
+containers-name-label = Nome
+ .accesskey = N
+ .style = { -containers-labels-style }
+
+containers-name-text =
+ .placeholder = Introduza um nome de contentor
+
+containers-icon-label = Ícone
+ .accesskey = I
+ .style = { -containers-labels-style }
+
+containers-color-label = Cor
+ .accesskey = o
+ .style = { -containers-labels-style }
+
+containers-dialog =
+ .buttonlabelaccept = Feito
+ .buttonaccesskeyaccept = F
+
+containers-color-blue =
+ .label = Azul
+containers-color-turquoise =
+ .label = Turquesa
+containers-color-green =
+ .label = Verde
+containers-color-yellow =
+ .label = Amarelo
+containers-color-orange =
+ .label = Laranja
+containers-color-red =
+ .label = Vermelho
+containers-color-pink =
+ .label = Rosa
+containers-color-purple =
+ .label = Roxo
+containers-color-toolbar =
+ .label = Corresponder à da barra de ferramentas
+
+containers-icon-fence =
+ .label = Cerca
+containers-icon-fingerprint =
+ .label = Impressão digital
+containers-icon-briefcase =
+ .label = Pasta
+# String represents a money sign but currently uses a dollar sign
+# so don't change to local currency. See Bug 1291672.
+containers-icon-dollar =
+ .label = Cifrão
+containers-icon-cart =
+ .label = Carrinho de compras
+containers-icon-circle =
+ .label = Ponto
+containers-icon-vacation =
+ .label = Férias
+containers-icon-gift =
+ .label = Prenda
+containers-icon-food =
+ .label = Comida
+containers-icon-fruit =
+ .label = Fruta
+containers-icon-pet =
+ .label = Animal de estimação
+containers-icon-tree =
+ .label = Árvore
+containers-icon-chill =
+ .label = Descanço
diff --git a/l10n-pt-PT/browser/browser/preferences/fonts.ftl b/l10n-pt-PT/browser/browser/preferences/fonts.ftl
new file mode 100644
index 0000000000..a7930369fb
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/fonts.ftl
@@ -0,0 +1,121 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+fonts-window =
+ .title = Tipos de letra
+
+fonts-window-close =
+ .key = w
+
+## Font groups by language
+
+fonts-langgroup-header = Tipos de letra para
+ .accesskey = T
+
+fonts-langgroup-arabic =
+ .label = Árabe
+fonts-langgroup-armenian =
+ .label = Arménio
+fonts-langgroup-bengali =
+ .label = Bengali
+fonts-langgroup-simpl-chinese =
+ .label = Chinês simplificado
+fonts-langgroup-trad-chinese-hk =
+ .label = Chinês tradicional (Hong Kong)
+fonts-langgroup-trad-chinese =
+ .label = Chinês tradicional (Taiwan)
+fonts-langgroup-cyrillic =
+ .label = Cirílico
+fonts-langgroup-devanagari =
+ .label = Devanagari
+fonts-langgroup-ethiopic =
+ .label = Etíope
+fonts-langgroup-georgian =
+ .label = Georgiano
+fonts-langgroup-el =
+ .label = Grego
+fonts-langgroup-gujarati =
+ .label = Gujarati
+fonts-langgroup-gurmukhi =
+ .label = Gurmukhi
+fonts-langgroup-japanese =
+ .label = Japonês
+fonts-langgroup-hebrew =
+ .label = Hebraico
+fonts-langgroup-kannada =
+ .label = Kannada
+fonts-langgroup-khmer =
+ .label = Cambodjano
+fonts-langgroup-korean =
+ .label = Coreano
+# Translate "Latin" as the name of Latin (Roman) script, not as the name of the Latin language.
+fonts-langgroup-latin =
+ .label = Alfabeto romano
+fonts-langgroup-malayalam =
+ .label = Malaio
+fonts-langgroup-math =
+ .label = Matemática
+fonts-langgroup-odia =
+ .label = Odia
+fonts-langgroup-sinhala =
+ .label = Cingalês
+fonts-langgroup-tamil =
+ .label = Tamil
+fonts-langgroup-telugu =
+ .label = Telugu
+fonts-langgroup-thai =
+ .label = Tailandês
+fonts-langgroup-tibetan =
+ .label = Tibetano
+fonts-langgroup-canadian =
+ .label = Silabário unificado canadiano
+fonts-langgroup-other =
+ .label = Outros sistemas de escrita
+
+## Default fonts and their sizes
+
+fonts-proportional-header = Proporcional
+ .accesskey = P
+
+fonts-default-serif =
+ .label = Serifa
+fonts-default-sans-serif =
+ .label = Sem serifa
+
+fonts-proportional-size = Tamanho
+ .accesskey = m
+
+fonts-serif = Serifa
+ .accesskey = S
+
+fonts-sans-serif = Sem serifa
+ .accesskey = m
+
+fonts-monospace = Monoespaçada
+ .accesskey = M
+
+fonts-monospace-size = Tamanho
+ .accesskey = h
+
+fonts-minsize = Tamanho mínimo de tipo de letra
+ .accesskey = o
+
+fonts-minsize-none =
+ .label = Nenhum
+
+fonts-allow-own =
+ .label = Permitir que as páginas escolham o seu tipo de letra
+ .accesskey = P
+
+## Text Encodings
+##
+## Translate the encoding names as adjectives for an encoding, not as the name
+## of the language.
+
+# Variables:
+# $name {string, "Arial"} - Name of the default font
+fonts-label-default =
+ .label = Predefinição ({ $name })
+fonts-label-default-unnamed =
+ .label = Predefinido
diff --git a/l10n-pt-PT/browser/browser/preferences/formAutofill.ftl b/l10n-pt-PT/browser/browser/preferences/formAutofill.ftl
new file mode 100644
index 0000000000..f3b67bdee1
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/formAutofill.ftl
@@ -0,0 +1,117 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## The address and credit card autofill management dialog in browser preferences
+
+autofill-manage-addresses-title = Endereços guardados
+autofill-manage-addresses-list-header = Endereços
+autofill-manage-credit-cards-title = Cartões de crédito guardados
+autofill-manage-credit-cards-list-header = Cartões de crédito
+autofill-manage-dialog =
+ .style = min-width: 560px
+autofill-manage-remove-button = Remover
+autofill-manage-add-button = Adicionar…
+autofill-manage-edit-button = Editar…
+
+##
+
+# The dialog title for creating addresses in browser preferences.
+autofill-add-new-address-title = Adicionar novo endereço
+# The dialog title for editing addresses in browser preferences.
+autofill-edit-address-title = Editar endereço
+autofill-address-given-name = Primeiro nome
+autofill-address-additional-name = Nome do meio
+autofill-address-family-name = Último nome
+autofill-address-organization = Organização
+autofill-address-street = Endereço da rua
+
+## address-level-3 (Sublocality) names
+
+# Used in IR, MX
+autofill-address-neighborhood = Vizinhança
+# Used in MY
+autofill-address-village-township = Aldeia ou município
+autofill-address-island = Ilha
+# Used in IE
+autofill-address-townland = Cidade
+
+## address-level-2 names
+
+autofill-address-city = Cidade
+# Used in HK, SD, SY, TR as Address Level-2 and used in KR as Sublocality.
+autofill-address-district = Distrito
+# Used in GB, NO, SE
+autofill-address-post-town = Cidade postal
+# Used in AU as Address Level-2 and used in ZZ as Sublocality.
+autofill-address-suburb = Bairro
+
+## address-level-1 names
+
+autofill-address-province = Província
+autofill-address-state = Estado
+autofill-address-county = País
+# Used in BB, JM
+autofill-address-parish = Freguesia
+# Used in JP
+autofill-address-prefecture = Prefeitura
+# Used in HK
+autofill-address-area = Área
+# Used in KR
+autofill-address-do-si = Do/Si
+# Used in NI, CO
+autofill-address-department = Departamento
+# Used in AE
+autofill-address-emirate = Emirado
+# Used in RU and UA
+autofill-address-oblast = Oblast
+
+## Postal code name types
+
+# Used in IN
+autofill-address-pin = Pin
+autofill-address-postal-code = Código postal
+autofill-address-zip = Código postal
+# Used in IE
+autofill-address-eircode = Eircode
+
+##
+
+autofill-address-country = País ou região
+autofill-address-tel = Telefone
+autofill-address-email = Email
+autofill-cancel-button = Cancelar
+autofill-save-button = Guardar
+autofill-country-warning-message = O autopreenchimento de formulários está disponível apenas para alguns países.
+# The dialog title for creating credit cards in browser preferences.
+autofill-add-new-card-title = Adicionar novo cartão de crédito
+# The dialog title for editing credit cards in browser preferences.
+autofill-edit-card-title = Editar cartão de crédito
+# In macOS, this string is preceded by the operating system with "Firefox is trying to ",
+# and has a period added to its end. Make sure to test in your locale.
+autofill-edit-card-password-prompt =
+ { PLATFORM() ->
+ [macos] mostrar informação do cartão de crédito
+ [windows] O { -brand-short-name } está a tentar mostrar informação de cartão de crédito. Confirme o acesso a esta conta Windows abaixo.
+ *[other] O { -brand-short-name } está a tentar mostrar informação de cartão de crédito.
+ }
+autofill-card-number = Número do cartão
+autofill-card-invalid-number = Por favor introduza um número de cartão válido
+autofill-card-name-on-card = Nome no cartão
+autofill-card-expires-month = Mês exp.
+autofill-card-expires-year = Ano exp.
+autofill-card-billing-address = Endereço de cobrança
+autofill-card-network = Tipo de cartão
+
+## These are brand names and should only be translated when a locale-specific name for that brand is in common use
+
+autofill-card-network-amex = American Express
+autofill-card-network-cartebancaire = Carte Bancaire
+autofill-card-network-diners = Diners Club
+autofill-card-network-discover = Discover
+autofill-card-network-jcb = JCB
+autofill-card-network-mastercard = MasterCard
+autofill-card-network-mir = MIR
+autofill-card-network-unionpay = Union Pay
+autofill-card-network-visa = Visa
diff --git a/l10n-pt-PT/browser/browser/preferences/fxaPairDevice.ftl b/l10n-pt-PT/browser/browser/preferences/fxaPairDevice.ftl
new file mode 100644
index 0000000000..089b07d928
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/fxaPairDevice.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+fxa-pair-device-dialog =
+ .title = Ligar outro dispositivo
+ .style = width: 26em; min-height: 35em;
+fxa-qrcode-heading-step1 = 1. Se ainda não o fez, instale o Firefox no seu dispositivo móvel.
+fxa-qrcode-heading-step2 = 2. Abra o Firefox no seu dispositivo móvel.
+fxa-qrcode-heading-step3 = 3. Abra o menu ( ou ), toque em Definições e selecione Ativar sincronização
+fxa-qrcode-heading-step4 = 4. Digitalize este código:
+fxa-pair-device-dialog-sync =
+ .style = width: 32em;
+fxa-pair-device-dialog-sync2 =
+ .style = min-width: 32em;
+fxa-qrcode-pair-title = Sincronize { -brand-product-name } no seu telemóvel ou tablet
+fxa-qrcode-pair-step1 = 1. Abra { -brand-product-name } no seu dispositivo móvel.
+fxa-qrcode-pair-step2 = 2. Abra o menu ( no iOS ou no Android) e toque em Iniciar sessão para sincronizar
+fxa-qrcode-pair-step2-signin = 2. Vá para o menu ( no iOS ou no Android) e toque em Sincronizar e guardar dados
+fxa-qrcode-pair-step3 = 3. Toque em Pronto para digitalizar e segure seu telemóvel sob este código
+fxa-qrcode-error-title = Emparelhamento sem sucesso.
+fxa-qrcode-error-body = Tente novamente.
diff --git a/l10n-pt-PT/browser/browser/preferences/languages.ftl b/l10n-pt-PT/browser/browser/preferences/languages.ftl
new file mode 100644
index 0000000000..37d2527777
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/languages.ftl
@@ -0,0 +1,81 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+webpage-languages-window =
+ .title = Definições de idioma de páginas web
+ .style = width: 40em
+
+webpage-languages-window2 =
+ .title = Definições de idioma de páginas web
+ .style = min-width: 40em
+
+languages-close-key =
+ .key = w
+
+languages-description = Por vezes, as páginas web são oferecidas em mais do que um idioma. Escolha idiomas para mostrar estas páginas web, por ordem de preferência
+
+languages-customize-spoof-english =
+ .label = Solicitar as versões das páginas web em Inglês para melhorar a privacidade
+
+languages-customize-moveup =
+ .label = Mover para cima
+ .accesskey = c
+
+languages-customize-movedown =
+ .label = Mover para baixo
+ .accesskey = b
+
+languages-customize-remove =
+ .label = Remover
+ .accesskey = R
+
+languages-customize-select-language =
+ .placeholder = Selecione um idioma para adicionar…
+
+languages-customize-add =
+ .label = Adicionar
+ .accesskey = A
+
+# The pattern used to generate strings presented to the user in the
+# locale selection list.
+#
+# Example:
+# Icelandic [is]
+# Spanish (Chile) [es-CL]
+#
+# Variables:
+# $locale (String) - A name of the locale (for example: "Icelandic", "Spanish (Chile)")
+# $code (String) - Locale code of the locale (for example: "is", "es-CL")
+languages-code-format =
+ .label = { $locale } [{ $code }]
+
+languages-active-code-format =
+ .value = { languages-code-format.label }
+
+browser-languages-window =
+ .title = Definições de idioma do { -brand-short-name }
+ .style = width: 40em
+
+browser-languages-window2 =
+ .title = Definições de idioma do { -brand-short-name }
+ .style = min-width: 40em
+
+browser-languages-description = O { -brand-short-name } irá mostrar o primeiro idioma como o seu predefinido e irá mostrar idiomas alternativos se necessário na ordem que estes aparecem.
+
+browser-languages-search = Pesquisar por mais idiomas...
+
+browser-languages-searching =
+ .label = A pesquisar por idiomas...
+
+browser-languages-downloading =
+ .label = A transferir...
+
+browser-languages-select-language =
+ .label = Selecione um idioma para adicionar…
+ .placeholder = Selecione um idioma para adicionar…
+
+browser-languages-installed-label = Idiomas instalados
+browser-languages-available-label = Idiomas disponíveis
+
+browser-languages-error = O { -brand-short-name } não pode atualizar os seus idiomas neste momento. Verifique que está ligado(a) à internet ou tente novamente.
diff --git a/l10n-pt-PT/browser/browser/preferences/moreFromMozilla.ftl b/l10n-pt-PT/browser/browser/preferences/moreFromMozilla.ftl
new file mode 100644
index 0000000000..f264ffe3d1
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/moreFromMozilla.ftl
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These strings are used in the about:preferences moreFromMozilla page
+
+more-from-moz-title = Mais de { -vendor-short-name }
+more-from-moz-category =
+ .tooltiptext = Mais de { -vendor-short-name }
+more-from-moz-subtitle = Veja outros produtos { -vendor-short-name } que funcionam para apoiar uma internet saudável.
+more-from-moz-firefox-mobile-title = { -brand-product-name } Móvel
+more-from-moz-firefox-mobile-description = O navegador móvel que coloca a sua privacidade em primeiro lugar.
+more-from-moz-firefox-mobile-description-advanced = Desde bloquear rastreadores até travar o problema da reprodução automática, os navegadores móveis { -brand-product-name } trabalham horas extras para garantir que tenha o bom da internet.
+more-from-moz-mozilla-vpn-title = { -mozilla-vpn-brand-name }
+more-from-moz-mozilla-vpn-description = Descubra uma camada adicional de navegação anónima e proteção.
+more-from-moz-mozilla-vpn-description-advanced = { -mozilla-vpn-brand-name } adiciona outra camada de navegação anónima e proteção. E, ao contrário de outras VPNs, é segura e não segue a sua atividade.
+# This string is specific to the product Mozilla Rally which is US only.
+more-from-moz-mozilla-rally-title = { -rally-brand-name }
+# This string is specific to the product Mozilla Rally which is US only.
+more-from-moz-mozilla-rally-description = Coloque os seus dados a trabalharem para uma internet melhor para todos.
+# This string is specific to the product Mozilla Rally which is US only.
+more-from-moz-mozilla-rally-description-advanced = Doe os seus dados para estudos de investigação que trabalham para criar uma internet mais segura e aberta que ajude as pessoas, e não as Big Tech.
+# This string is specific to the product Mozilla Rally which is US only.
+more-from-moz-button-mozilla-rally-2 = Junte-se ao { -rally-short-name }
+more-from-moz-qr-code-box-firefox-mobile-title = Transfira utilizando o seu dispositivo móvel. Aponte a sua câmara para o código QR. Quando uma ligação aparecer, toque nela.
+more-from-moz-qr-code-box-firefox-mobile-button = Envie um e-mail para o seu telemóvel em vez disso
+more-from-moz-qr-code-firefox-mobile-img =
+ .alt = Código QR para transferir o { -brand-product-name } para dispositivos móveis
+more-from-moz-button-mozilla-vpn-2 = Obter VPN
+more-from-moz-learn-more-link = Saiba mais
+
+## These strings are for the Firefox Relay card in about:preferences moreFromMozilla page
+
+more-from-moz-firefox-relay-title = { -relay-brand-name }
+more-from-moz-firefox-relay-description = Proteja a sua caixa de entrada e a sua identidade com máscaras de e-mail gratuitas.
+more-from-moz-firefox-relay-button = Obter o { -relay-brand-short-name }
diff --git a/l10n-pt-PT/browser/browser/preferences/permissions.ftl b/l10n-pt-PT/browser/browser/preferences/permissions.ftl
new file mode 100644
index 0000000000..602220938d
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/permissions.ftl
@@ -0,0 +1,211 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+permissions-window =
+ .title = Exceções
+ .style = width: 45em
+permissions-window2 =
+ .title = Exceções
+ .style = min-width: 45em
+permissions-close-key =
+ .key = w
+permissions-address = Endereço do site
+ .accesskey = d
+permissions-block =
+ .label = Bloquear
+ .accesskey = B
+permissions-disable-etp =
+ .label = Adicionar Exceção
+ .accesskey = E
+permissions-session =
+ .label = Permitir para a sessão
+ .accesskey = e
+permissions-allow =
+ .label = Permitir
+ .accesskey = P
+permissions-button-off =
+ .label = Desligar
+ .accesskey = D
+permissions-button-off-temporarily =
+ .label = Desligar temporariamente
+ .accesskey = t
+permissions-site-name =
+ .label = Site
+permissions-status =
+ .label = Estado
+permissions-remove =
+ .label = Remover site
+ .accesskey = R
+permissions-remove-all =
+ .label = Remover todos os sites
+ .accesskey = e
+permission-dialog =
+ .buttonlabelaccept = Guardar alterações
+ .buttonaccesskeyaccept = G
+permissions-autoplay-menu = Predefinição para todos os sites:
+permissions-searchbox =
+ .placeholder = Pesquisar site
+permissions-capabilities-autoplay-allow =
+ .label = Permitir áudio e vídeo
+permissions-capabilities-autoplay-block =
+ .label = Bloquear áudio
+permissions-capabilities-autoplay-blockall =
+ .label = Bloquear áudio e vídeo
+permissions-capabilities-allow =
+ .label = Permitir
+permissions-capabilities-block =
+ .label = Bloquear
+permissions-capabilities-prompt =
+ .label = Perguntar sempre
+permissions-capabilities-listitem-allow =
+ .value = Permitir
+permissions-capabilities-listitem-block =
+ .value = Bloquear
+permissions-capabilities-listitem-allow-session =
+ .value = Permitir para a sessão
+permissions-capabilities-listitem-off =
+ .value = Desligado
+permissions-capabilities-listitem-off-temporarily =
+ .value = Temporariamente desligado
+
+## Invalid Hostname Dialog
+
+permissions-invalid-uri-title = Nome de servidor inválido introduzido
+permissions-invalid-uri-label = Por favor introduza um nome de servidor válido
+
+## Exceptions - Tracking Protection
+
+permissions-exceptions-etp-window =
+ .title = Exceções para a Proteção melhorada contra a monitorização
+ .style = { permissions-window.style }
+permissions-exceptions-etp-window2 =
+ .title = Exceções para a Proteção melhorada contra a monitorização
+ .style = { permissions-window2.style }
+permissions-exceptions-etp-desc = Desativou as proteções nestes sites.
+permissions-exceptions-manage-etp-desc = Pode especificar que sites têm a Proteção melhorada contra a monitorização desativada. Especifique o endereço exato do site que deseja gerir e clique em Adicionar exceção.
+
+## Exceptions - Cookies
+
+permissions-exceptions-cookie-window =
+ .title = Exceções - Cookies e dados de sites
+ .style = { permissions-window.style }
+permissions-exceptions-cookie-window2 =
+ .title = Exceções - Cookies e dados de sites
+ .style = { permissions-window2.style }
+permissions-exceptions-cookie-desc = Pode especificar quais os sites que podem, sempre ou nunca, utilizar cookies e dados de sites. Escreva o endereço exato do site que pretende gerir e depois clique em Bloquear, Permitir para a sessão ou Permitir.
+
+## Exceptions - HTTPS-Only Mode
+
+permissions-exceptions-https-only-window =
+ .title = Exceções - modo apenas HTTPS
+ .style = { permissions-window.style }
+permissions-exceptions-https-only-window2 =
+ .title = Exceções - modo apenas HTTPS
+ .style = { permissions-window2.style }
+permissions-exceptions-https-only-desc = Pode desativar o modo apenas HTTPS para sites específicos. O { -brand-short-name } não tentará atualizar a ligação para HTTPS seguro para estes sites. As exceções não se aplicam a janelas privadas.
+
+## Exceptions - Pop-ups
+
+permissions-exceptions-popup-window =
+ .title = Sites permitidos - Pop-ups
+ .style = { permissions-window.style }
+permissions-exceptions-popup-window2 =
+ .title = Sites permitidos - Pop-ups
+ .style = { permissions-window2.style }
+permissions-exceptions-popup-desc = Pode especificar quais os sites que têm permissão para abrir janelas pop-up. Introduza o endereço exato do site que pretende permitir e depois clique em Permitir.
+
+## Exceptions - Saved Logins
+
+permissions-exceptions-saved-logins-window =
+ .title = Exceções - Credenciais guardadas
+ .style = { permissions-window.style }
+permissions-exceptions-saved-logins-window2 =
+ .title = Exceções - Credenciais guardadas
+ .style = { permissions-window2.style }
+permissions-exceptions-saved-logins-desc = Não serão guardadas as credenciais para os seguintes sites
+
+## Exceptions - Add-ons
+
+permissions-exceptions-addons-window =
+ .title = Sites permitidos - Instalação de Extras
+ .style = { permissions-window.style }
+permissions-exceptions-addons-window2 =
+ .title = Sites permitidos - Instalação de Extras
+ .style = { permissions-window2.style }
+permissions-exceptions-addons-desc = Pode especificar quais os sites que têm permissão para instalar extras. Digite o endereço exato do site que pretende permitir e depois clique em Permitir.
+
+## Site Permissions - Autoplay
+
+permissions-site-autoplay-window =
+ .title = Definições - Reprodução automática
+ .style = { permissions-window.style }
+permissions-site-autoplay-window2 =
+ .title = Definições - Reprodução automática
+ .style = { permissions-window2.style }
+permissions-site-autoplay-desc = Pode gerir os sites que não seguem as suas definições predefinidas de reprodução automática aqui.
+
+## Site Permissions - Notifications
+
+permissions-site-notification-window =
+ .title = Definições - Permissões de notificação
+ .style = { permissions-window.style }
+permissions-site-notification-window2 =
+ .title = Definições - Permissões de notificação
+ .style = { permissions-window2.style }
+permissions-site-notification-desc = Os sites seguintes solicitaram o envio de notificações. Pode especificar quais os sites que têm permissão para enviar notificações. Pode também bloquear novos pedidos, solicitando que seja pedida autorização para permitir notificações.
+permissions-site-notification-disable-label =
+ .label = Bloquear novos pedidos de permissão de notificações
+permissions-site-notification-disable-desc = Isto irá impedir quaisquer sites não listados acima de solicitar permissão para enviar notificações. Bloquear notificações pode quebrar algumas funcionalidades dos sites.
+
+## Site Permissions - Location
+
+permissions-site-location-window =
+ .title = Definições - Permissões de localização
+ .style = { permissions-window.style }
+permissions-site-location-window2 =
+ .title = Definições - Permissões de localização
+ .style = { permissions-window2.style }
+permissions-site-location-desc = Os sites seguintes solicitaram acesso à sua localização. Pode especificar quais os sites que têm permissão para aceder à sua localização. Pode também bloquear novos pedidos, solicitando que seja pedida autorização para aceder à sua localização.
+permissions-site-location-disable-label =
+ .label = Bloquear novos pedidos de acesso à sua localização
+permissions-site-location-disable-desc = Isto irá impedir quaisquer sites não listados acima de solicitar permissão para aceder à sua localização. Bloquear o acesso à sua localização pode quebrar algumas funcionalidades dos sites.
+
+## Site Permissions - Virtual Reality
+
+permissions-site-xr-window =
+ .title = Definições - Permissões de realidade virtual
+ .style = { permissions-window.style }
+permissions-site-xr-window2 =
+ .title = Definições - Permissões de realidade virtual
+ .style = { permissions-window2.style }
+permissions-site-xr-desc = Os seguintes sites solicitaram acesso aos seus dispositivos de realidade virtual. Pode especificar quais os sites que têm permissão para aceder aos seus dispositivos de realidade virtual. Pode também bloquear novos pedidos de acesso aos seus dispositivos de realidade virtual.
+permissions-site-xr-disable-label =
+ .label = Bloquear novos pedidos de acesso aos seus dispositivos de realidade virtual
+permissions-site-xr-disable-desc = Isto irá impedir que quaisquer sites não listados acima possam solicitar permissão de acesso aos seus dispositivos de realidade virtual. O bloqueio de acesso aos seus dispositivos de realidade virtual impedir algumas funcionalidades dos sites.
+
+## Site Permissions - Camera
+
+permissions-site-camera-window =
+ .title = Definições - Permissões de câmara
+ .style = { permissions-window.style }
+permissions-site-camera-window2 =
+ .title = Definições - Permissões de câmara
+ .style = { permissions-window2.style }
+permissions-site-camera-desc = Os sites seguintes solicitaram acesso à sua câmara. Pode especificar quais os sites que têm permissão para aceder à sua câmara. Pode também bloquear novos pedidos, solicitando que seja pedida autorização para aceder à sua câmara.
+permissions-site-camera-disable-label =
+ .label = Bloquear novos pedidos de acesso à sua câmara
+permissions-site-camera-disable-desc = Isto irá impedir quaisquer sites não listados acima de solicitar permissão para aceder à sua câmara. Bloquear o acesso à sua câmara pode quebrar algumas funcionalidades dos sites.
+
+## Site Permissions - Microphone
+
+permissions-site-microphone-window =
+ .title = Definições - Permissões de microfone
+ .style = { permissions-window.style }
+permissions-site-microphone-window2 =
+ .title = Definições - Permissões de microfone
+ .style = { permissions-window2.style }
+permissions-site-microphone-desc = Os sites seguintes solicitaram acesso ao seu microfone. Pode especificar quais os sites que têm permissão para aceder ao seu microfone. Pode também bloquear novos pedidos, solicitando que seja pedida autorização para aceder ao seu microfone.
+permissions-site-microphone-disable-label =
+ .label = Bloquear novos pedidos de acesso ao seu microfone
+permissions-site-microphone-disable-desc = Isto irá impedir quaisquer sites não listados acima de solicitar permissão para aceder ao seu microfone. Bloquear o acesso ao seu microfone pode quebrar algumas funcionalidades dos sites.
diff --git a/l10n-pt-PT/browser/browser/preferences/preferences.ftl b/l10n-pt-PT/browser/browser/preferences/preferences.ftl
new file mode 100644
index 0000000000..d6b319c974
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/preferences.ftl
@@ -0,0 +1,1185 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+do-not-track-description = Enviar um sinal “Do Not Track” com a indicação que não deseja ser monitorizado(a)
+do-not-track-learn-more = Saber mais
+do-not-track-option-default-content-blocking-known =
+ .label = Apenas quando o { -brand-short-name } está definido para bloquear os rastreadores conhecidos
+do-not-track-option-always =
+ .label = Sempre
+settings-page-title = Definições
+# This is used to determine the width of the search field in about:preferences,
+# in order to make the entire placeholder string visible
+#
+# Please keep the placeholder string short to avoid truncation.
+#
+# Notice: The value of the `.style` attribute is a CSS string, and the `width`
+# is the name of the CSS property. It is intended only to adjust the element's width.
+# Do not translate.
+search-input-box2 =
+ .style = width: 15.4em
+ .placeholder = Procurar nas definições
+managed-notice = O seu navegador está a ser gerido pela sua organização.
+category-list =
+ .aria-label = Categorias
+pane-general-title = Geral
+category-general =
+ .tooltiptext = { pane-general-title }
+pane-home-title = Início
+category-home =
+ .tooltiptext = { pane-home-title }
+pane-search-title = Pesquisa
+category-search =
+ .tooltiptext = { pane-search-title }
+pane-privacy-title = Privacidade e Segurança
+category-privacy =
+ .tooltiptext = { pane-privacy-title }
+pane-sync-title3 = Sincronizar
+category-sync3 =
+ .tooltiptext = { pane-sync-title3 }
+pane-experimental-title = Experiências do { -brand-short-name }
+category-experimental =
+ .tooltiptext = Experiências do { -brand-short-name }
+pane-experimental-subtitle = Avançar com cuidado
+pane-experimental-search-results-header = Experiências { -brand-short-name }: Prosseguir com cuidado
+pane-experimental-description2 = Alterar definições de configuração avançadas pode interferir com o desempenho ou segurança do { -brand-short-name }.
+pane-experimental-reset =
+ .label = Repor predefinições
+ .accesskey = R
+help-button-label = Apoio do { -brand-short-name }
+addons-button-label = Extensões e temas
+focus-search =
+ .key = f
+close-button =
+ .aria-label = Fechar
+
+## Browser Restart Dialog
+
+feature-enable-requires-restart = Tem que reiniciar o { -brand-short-name } para ativar esta funcionalidade.
+feature-disable-requires-restart = Tem que reiniciar o { -brand-short-name } para desativar esta funcionalidade.
+should-restart-title = Reiniciar o { -brand-short-name }
+should-restart-ok = Reiniciar o { -brand-short-name } agora
+cancel-no-restart-button = Cancelar
+restart-later = Reiniciar mais tarde
+
+## Extension Control Notifications
+##
+## These strings are used to inform the user
+## about changes made by extensions to browser settings.
+##
+## is going to be replaced by the extension icon.
+##
+## Variables:
+## $name (String): name of the extension
+
+# This string is shown to notify the user that the password manager setting
+# is being controlled by an extension
+extension-controlling-password-saving = { $name } controla esta opção.
+# This string is shown to notify the user that their notifications permission
+# is being controlled by an extension.
+extension-controlling-web-notifications = { $name } controla esta opção.
+# This string is shown to notify the user that Container Tabs
+# are being enabled by an extension.
+extension-controlling-privacy-containers = { $name } necessita de Separadores Contentores.
+# This string is shown to notify the user that their content blocking "All Detected Trackers"
+# preferences are being controlled by an extension.
+extension-controlling-websites-content-blocking-all-trackers = { $name } controla esta opção.
+# This string is shown to notify the user that their proxy configuration preferences
+# are being controlled by an extension.
+extension-controlling-proxy-config = { $name } controla como é que { -brand-short-name } se liga à Internet.
+# This string is shown after the user disables an extension to notify the user
+# how to enable an extension that they disabled.
+#
+# will be replaced with Add-ons icon
+# will be replaced with Menu icon
+extension-controlled-enable = Para ativar esta extensão vá a Extras no menu .
+
+## Preferences UI Search Results
+
+search-results-header = Resultados da pesquisa
+# `` will be replaced by the search term.
+search-results-empty-message2 = Pedimos desculpa mas não existem resultados nas Definições para “”.
+search-results-help-link = Precisa de ajuda? Visite o Apoio do { -brand-short-name }
+
+## General Section
+
+startup-header = Arranque
+always-check-default =
+ .label = Verificar sempre se o { -brand-short-name } é o seu navegador predefinido
+ .accesskey = V
+is-default = O { -brand-short-name } é o seu navegador predefinido
+is-not-default = O { -brand-short-name } não é o seu navegador predefinido
+set-as-my-default-browser =
+ .label = Predefinir…
+ .accesskey = d
+startup-restore-windows-and-tabs =
+ .label = Abrir janelas e separadores anteriores
+ .accesskey = s
+startup-restore-warn-on-quit =
+ .label = Avisar-lhe ao sair do navegador
+disable-extension =
+ .label = Desativar extensão
+tabs-group-header = Separadores
+ctrl-tab-recently-used-order =
+ .label = Ctrl+Tab permuta em ciclo os separadores pela ordem dos mais recentemente utilizados
+ .accesskey = T
+open-new-link-as-tabs =
+ .label = Abrir ligações em novos separadores em vez de novas janelas
+ .accesskey = j
+confirm-on-close-multiple-tabs =
+ .label = Confirmar antes de fechar múltiplos separadores
+ .accesskey = m
+# This string is used for the confirm before quitting preference.
+# Variables:
+# $quitKey (String) - the quit keyboard shortcut, and formatted
+# in the same manner as it would appear,
+# for example, in the File menu.
+confirm-on-quit-with-key =
+ .label = Confirmar antes de sair com { $quitKey }
+ .accesskey = t
+warn-on-open-many-tabs =
+ .label = Avisar-lhe se a abertura de múltiplos separadores puder tornar o { -brand-short-name } lento
+ .accesskey = d
+switch-to-new-tabs =
+ .label = Quando abre uma ligação, imagem ou media num novo separador, mudar imediatamente para o mesmo
+ .accesskey = m
+show-tabs-in-taskbar =
+ .label = Pré-visualizar separadores na barra de tarefas do Windows
+ .accesskey = s
+browser-containers-enabled =
+ .label = Ativar separadores contentores
+ .accesskey = n
+browser-containers-learn-more = Saber mais
+browser-containers-settings =
+ .label = Definições…
+ .accesskey = i
+containers-disable-alert-title = Fechar todos os separadores contentores?
+containers-disable-alert-desc =
+ { $tabCount ->
+ [one] Se desativar os Separadores contentor agora, { $tabCount } separador contentor será fechado. Tem a certeza que pretende desativar os separadores contentor?
+ *[other] Se desativar os Separadores contentor agora, { $tabCount } separadores contentor serão fechados. Tem a certeza que pretende desativar os separadores contentor?
+ }
+containers-disable-alert-ok-button =
+ { $tabCount ->
+ [one] Fechar { $tabCount } separador contentor
+ *[other] Fechar { $tabCount } separadores contentores
+ }
+containers-disable-alert-cancel-button = Manter ativado
+containers-remove-alert-title = Remover este contentor?
+# Variables:
+# $count (Number) - Number of tabs that will be closed.
+containers-remove-alert-msg =
+ { $count ->
+ [one] Se remover este contentor agora, { $count } separador contentor será fechado. Tem a certeza que pretende remover este contentor?
+ *[other] Se remover este contentor agora, { $count } separadores contentor serão fechados. Tem a certeza que pretende remover este contentor?
+ }
+containers-remove-ok-button = Remover este contentor
+containers-remove-cancel-button = Não remover este contentor
+
+## General Section - Language & Appearance
+
+language-and-appearance-header = Idioma e aparência
+preferences-web-appearance-header = Aparência do site
+preferences-web-appearance-description = Alguns sites adaptam o seu esquema de cores com base nas suas preferências. Escolha qual o esquema de cores que gostaria de usar para esses sites.
+preferences-web-appearance-choice-browser = Tema do { -brand-short-name }
+preferences-web-appearance-choice-system = Tema do sistema
+preferences-web-appearance-choice-auto = Automático
+preferences-web-appearance-choice-light = Claro
+preferences-web-appearance-choice-dark = Escuro
+preferences-web-appearance-choice-tooltip-browser =
+ .title = Corresponda as suas opções de tema do { -brand-short-name } quanto a fundos e conteúdo.
+preferences-web-appearance-choice-tooltip-system =
+ .title = Corresponda as suas opções de tema quanto a fundos e conteúdo.
+preferences-web-appearance-choice-tooltip-auto =
+ .title = Altere automaticamente os planos de fundo e o conteúdo do site com base nas definições do seu sistema e no tema do { -brand-short-name }.
+preferences-web-appearance-choice-tooltip-light =
+ .title = Utilizar um aspeto claro para fundos e conteúdo de websites.
+preferences-web-appearance-choice-tooltip-dark =
+ .title = Utilizar um aspeto escuro para fundos e conteúdo de websites.
+preferences-web-appearance-choice-input-browser =
+ .aria-description = { preferences-web-appearance-choice-tooltip-browser.title }
+preferences-web-appearance-choice-input-system =
+ .aria-description = { preferences-web-appearance-choice-tooltip-system.title }
+preferences-web-appearance-choice-input-auto =
+ .aria-description = { preferences-web-appearance-choice-tooltip-auto.title }
+preferences-web-appearance-choice-input-light =
+ .aria-description = { preferences-web-appearance-choice-tooltip-light.title }
+preferences-web-appearance-choice-input-dark =
+ .aria-description = { preferences-web-appearance-choice-tooltip-dark.title }
+# This can appear when using windows HCM or "Override colors: always" without
+# system colors.
+preferences-web-appearance-override-warning = As suas seleções de cores estão a substituir a aparência do website. Gerir cores
+# This message contains one link. It can be moved within the sentence as needed
+# to adapt to your language, but should not be changed.
+preferences-web-appearance-footer = Gerir temas do { -brand-short-name } em Extensões e Temas
+preferences-colors-header = Cores
+preferences-colors-description = Subsituir as cores padrão do { -brand-short-name } quanto a texto, fundos de websites e ligações.
+preferences-colors-manage-button =
+ .label = Gerir cores…
+ .accesskey = C
+preferences-fonts-header = Tipos de letra
+default-font = Tipo de letra predefinido
+ .accesskey = d
+default-font-size = Tamanho
+ .accesskey = n
+advanced-fonts =
+ .label = Avançadas…
+ .accesskey = A
+# Zoom is a noun, and the message is used as header for a group of options
+preferences-zoom-header = Zoom
+preferences-default-zoom = Zoom predefinido
+ .accesskey = Z
+preferences-default-zoom-value =
+ .label = { $percentage }%
+preferences-zoom-text-only =
+ .label = Ampliar apenas o texto
+ .accesskey = t
+language-header = Idioma
+choose-language-description = Escolha o seu idioma preferencial para apresentar as páginas
+choose-button =
+ .label = Escolher…
+ .accesskey = o
+choose-browser-language-description = Escolha os idiomas utilizados para mostrar menus, mensagens, e notificações do { -brand-short-name }.
+manage-browser-languages-button =
+ .label = Definir alternativas
+ .accesskey = l
+confirm-browser-language-change-description = Reinicie o { -brand-short-name } para aplicar estas alterações
+confirm-browser-language-change-button = Aplicar e reiniciar
+translate-web-pages =
+ .label = Traduzir conteúdo web
+ .accesskey = T
+fx-translate-web-pages = { -translations-brand-name }
+# The element is replaced by the logo of the provider
+# used to provide machine translations for web pages.
+translate-attribution = Traduções por
+translate-exceptions =
+ .label = Exceções…
+ .accesskey = x
+# Variables:
+# $localeName (string) - Localized name of the locale to be used.
+use-system-locale =
+ .label = Utilize as definições do sistema operativo para o “{ $localeName }” para formatar datas, horas, números e medidas.
+check-user-spelling =
+ .label = Verificar a sua ortografia enquanto escreve
+ .accesskey = t
+
+## General Section - Files and Applications
+
+files-and-applications-title = Ficheiros e aplicações
+download-header = Transferências
+download-save-where = Guardar ficheiros em
+ .accesskey = f
+download-choose-folder =
+ .label =
+ { PLATFORM() ->
+ [macos] Escolher…
+ *[other] Procurar…
+ }
+ .accesskey =
+ { PLATFORM() ->
+ [macos] e
+ *[other] o
+ }
+download-always-ask-where =
+ .label = Perguntar sempre onde guardar ficheiros
+ .accesskey = a
+applications-header = Aplicações
+applications-description = Escolha como o { -brand-short-name } manuseia os ficheiros que transfere da web ou as aplicações que utiliza enquanto navega.
+applications-filter =
+ .placeholder = Pesquisar tipos de ficheiros ou aplicações
+applications-type-column =
+ .label = Tipo de conteúdo
+ .accesskey = T
+applications-action-column =
+ .label = Ação
+ .accesskey = A
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+applications-file-ending = Ficheiro { $extension }
+applications-action-save =
+ .label = Guardar ficheiro
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app =
+ .label = Utilizar { $app-name }
+# Variables:
+# $app-name (String) - Name of an application (e.g Adobe Acrobat)
+applications-use-app-default =
+ .label = Utilizar { $app-name } (predefinição)
+applications-use-os-default =
+ .label =
+ { PLATFORM() ->
+ [macos] Utilizar aplicação predefinida do macOS
+ [windows] Utilizar aplicação predefinida do Windows
+ *[other] Utilizar aplicação predefinida do sistema
+ }
+applications-use-other =
+ .label = Outra…
+applications-select-helper = Selecione a aplicação auxiliar
+applications-manage-app =
+ .label = Detalhes da aplicação…
+applications-always-ask =
+ .label = Perguntar sempre
+# Variables:
+# $type-description (String) - Description of the type (e.g "Portable Document Format")
+# $type (String) - the MIME type (e.g application/binary)
+applications-type-description-with-type = { $type-description } ({ $type })
+# Variables:
+# $extension (String) - file extension (e.g .TXT)
+# $type (String) - the MIME type (e.g application/binary)
+applications-file-ending-with-type = { applications-file-ending } ({ $type })
+# Variables:
+# $plugin-name (String) - Name of a plugin (e.g Adobe Flash)
+applications-use-plugin-in =
+ .label = Utilizar { $plugin-name } (em { -brand-short-name })
+applications-open-inapp =
+ .label = Abrir no { -brand-short-name }
+
+## The strings in this group are used to populate
+## selected label element based on the string from
+## the selected menu item.
+
+applications-use-plugin-in-label =
+ .value = { applications-use-plugin-in.label }
+applications-action-save-label =
+ .value = { applications-action-save.label }
+applications-use-app-label =
+ .value = { applications-use-app.label }
+applications-open-inapp-label =
+ .value = { applications-open-inapp.label }
+applications-always-ask-label =
+ .value = { applications-always-ask.label }
+applications-use-app-default-label =
+ .value = { applications-use-app-default.label }
+applications-use-other-label =
+ .value = { applications-use-other.label }
+applications-use-os-default-label =
+ .value = { applications-use-os-default.label }
+
+##
+
+applications-handle-new-file-types-description = O que deve o { -brand-short-name } fazer com outros ficheiros?
+applications-save-for-new-types =
+ .label = Guardar ficheiros
+ .accesskey = G
+applications-ask-before-handling =
+ .label = Pedir se deseja abrir ou guardar ficheiros
+ .accesskey = P
+drm-content-header = Conteúdo com Gestão de Direitos Digitais (DRM)
+play-drm-content =
+ .label = Reproduzir conteúdo controlado por DRM
+ .accesskey = p
+play-drm-content-learn-more = Saber mais
+update-application-title = Atualizações do { -brand-short-name }
+update-application-description = Mantenha o { -brand-short-name } atualizado para o melhor desempenho, estabilidade, e segurança.
+update-application-version = Versão { $version } Novidades
+update-history =
+ .label = Mostrar histórico de atualizações…
+ .accesskey = i
+update-application-allow-description = Permitir ao { -brand-short-name }
+update-application-auto =
+ .label = Instalar atualizações automaticamente (recomendado)
+ .accesskey = a
+update-application-check-choose =
+ .label = Procurar atualizações mas deixar escolher quando as instalar
+ .accesskey = c
+update-application-manual =
+ .label = Nunca procurar atualizações (não recomendado)
+ .accesskey = N
+update-application-background-enabled =
+ .label = Quando o { -brand-short-name } não estiver em execução
+ .accesskey = u
+update-application-warning-cross-user-setting = Esta definição irá ser aplicada a todas as contas do Windows e perfis do { -brand-short-name } a utilizar esta instalação do { -brand-short-name }.
+update-application-use-service =
+ .label = Utilizar um serviço em segundo plano para instalar atualizações
+ .accesskey = t
+update-application-suppress-prompts =
+ .label = Mostrar menos notificações de atualização
+ .accesskey = n
+update-setting-write-failure-title2 = Erro ao guardar as definições de atualização
+# Variables:
+# $path (String) - Path to the configuration file
+# The newlines between the main text and the line containing the path is
+# intentional so the path is easier to identify.
+update-setting-write-failure-message2 =
+ O { -brand-short-name } encontrou um erro e não guardou esta alteração. Note que alterar esta definição de atualização requer permissão para escrever no ficheiro abaixo. Você ou um administrador do sistema pode resolver o erro atribuindo ao grupo Utilizadores controlo total para este ficheiro.
+
+ Não foi possível escrever para ficheiro: { $path }
+update-in-progress-title = Atualização em progresso
+update-in-progress-message = Pretende que o { -brand-short-name } continue com esta atualização?
+update-in-progress-ok-button = &Descartar
+# Continue is the cancel button so pressing escape or using a platform standard
+# method of closing the UI will not discard the update.
+update-in-progress-cancel-button = &Continuar
+
+## General Section - Performance
+
+performance-title = Desempenho
+performance-use-recommended-settings-checkbox =
+ .label = Utilizar definições de desempenho recomendadas
+ .accesskey = U
+performance-use-recommended-settings-desc = Estas definições são ajustadas para o hardware e sistema operativo do seu computador.
+performance-settings-learn-more = Saber mais
+performance-allow-hw-accel =
+ .label = Se disponível, utilizar aceleração de hardware
+ .accesskey = r
+performance-limit-content-process-option = Limite de processos de conteúdo
+ .accesskey = L
+performance-limit-content-process-enabled-desc = Processos de conteúdo adicionais podem melhorar o desempenho ao utilizar múltiplos separadores, mas também irá consumir mais memória.
+performance-limit-content-process-blocked-desc = Modificar o número de processos de conteúdo é apenas possível com o multi-processo do { -brand-short-name }. Saber como verificar se o multi-processo está ativado
+# Variables:
+# $num - default value of the `dom.ipc.processCount` pref.
+performance-default-content-process-count =
+ .label = { $num } (predefinição)
+
+## General Section - Browsing
+
+browsing-title = Navegação
+browsing-use-autoscroll =
+ .label = Utilizar deslocação automática
+ .accesskey = a
+browsing-use-smooth-scrolling =
+ .label = Utilizar deslocação suave
+ .accesskey = u
+browsing-gtk-use-non-overlay-scrollbars =
+ .label = Mostrar sempre as barras de deslocamento
+ .accesskey = o
+browsing-use-onscreen-keyboard =
+ .label = Mostrar um teclado tátil quando necessário
+ .accesskey = t
+browsing-use-cursor-navigation =
+ .label = Utilizar sempre as teclas do cursor para navegar entre páginas
+ .accesskey = c
+browsing-search-on-start-typing =
+ .label = Pesquisar texto quando começar a escrever
+ .accesskey = x
+browsing-picture-in-picture-toggle-enabled =
+ .label = Ativar os controlos de vídeo em janela flutuante
+ .accesskey = f
+browsing-picture-in-picture-learn-more = Saber mais
+browsing-media-control =
+ .label = Controlar media via teclado, ausculatores ou interface virtual
+ .accesskey = v
+browsing-media-control-learn-more = Saber mais
+browsing-cfr-recommendations =
+ .label = Recomendar extensões enquanto navega
+ .accesskey = R
+browsing-cfr-features =
+ .label = Recomendar funcionalidades enquanto navega
+ .accesskey = f
+browsing-cfr-recommendations-learn-more = Saber mais
+
+## General Section - Proxy
+
+network-settings-title = Definições de rede
+network-proxy-connection-description = Configure como o { -brand-short-name } se liga à internet.
+network-proxy-connection-learn-more = Saber mais
+network-proxy-connection-settings =
+ .label = Definições…
+ .accesskey = e
+
+## Home Section
+
+home-new-windows-tabs-header = Novas janelas e separadores
+home-new-windows-tabs-description2 = Escolha o que vê quando abre a sua página inicial, novas janelas, e novos separadores.
+
+## Home Section - Home Page Customization
+
+home-homepage-mode-label = Página inicial e novas janelas
+home-newtabs-mode-label = Novos separadores
+home-restore-defaults =
+ .label = Restaurar predefinições
+ .accesskey = R
+# "Firefox" should be treated as a brand and kept in English,
+# while "Home" and "(Default)" can be localized.
+home-mode-choice-default =
+ .label = Início do Firefox (Predefinição)
+home-mode-choice-default-fx =
+ .label = (Padrão) { -firefox-home-brand-name }
+home-mode-choice-custom =
+ .label = URLs personalizados...
+home-mode-choice-blank =
+ .label = Página em branco
+home-homepage-custom-url =
+ .placeholder = Cole um URL...
+# This string has a special case for '1' and [other] (default). If necessary for
+# your language, you can add {$tabCount} to your translations and use the
+# standard CLDR forms, or only use the form for [other] if both strings should
+# be identical.
+use-current-pages =
+ .label =
+ { $tabCount ->
+ [1] Utilizar a página atual
+ *[other] Utilizar páginas atuais
+ }
+ .accesskey = u
+choose-bookmark =
+ .label = Utilizar marcador…
+ .accesskey = m
+
+## Home Section - Firefox Home Content Customization
+
+home-prefs-content-header = Conteúdo do ecrã inicial do Firefox
+home-prefs-content-description = Escolha que conteúdo deseja no seu ecrã inicial do Firefox.
+home-prefs-content-header2 = Conteúdo { -firefox-home-brand-name }
+home-prefs-content-description2 = Escolha que conteúdo deseja no seu ecrã inicial do { -firefox-home-brand-name }.
+home-prefs-search-header =
+ .label = Pesquisa Web
+home-prefs-shortcuts-header =
+ .label = Atalhos
+home-prefs-shortcuts-description = Sites que guarda ou visita
+home-prefs-shortcuts-by-option-sponsored =
+ .label = Atalhos patrocinados
+
+## Variables:
+## $provider (String): Name of the corresponding content provider, e.g "Pocket".
+
+home-prefs-recommended-by-header =
+ .label = Recomendado por { $provider }
+home-prefs-recommended-by-description-new = Conteúdo excecional com curadoria de { $provider }, parte da família { -brand-product-name }
+
+##
+
+home-prefs-recommended-by-learn-more = Como funciona
+home-prefs-recommended-by-option-sponsored-stories =
+ .label = Histórias patrocinadas
+home-prefs-recommended-by-option-recent-saves =
+ .label = Mostrar gravações recentes
+home-prefs-highlights-option-visited-pages =
+ .label = Páginas visitadas
+home-prefs-highlights-options-bookmarks =
+ .label = Marcadores
+home-prefs-highlights-option-most-recent-download =
+ .label = Transferência mais recente
+home-prefs-highlights-option-saved-to-pocket =
+ .label = Páginas guardadas no { -pocket-brand-name }
+home-prefs-recent-activity-header =
+ .label = Atividade recente
+home-prefs-recent-activity-description = Uma seleção de sites e conteúdos recentes
+# For the "Snippets" feature traditionally on about:home.
+# Alternative translation options: "Small Note" or something that
+# expresses the idea of "a small message, shortened from something else,
+# and non-essential but also not entirely trivial and useless.
+home-prefs-snippets-header =
+ .label = Excertos
+home-prefs-snippets-description-new = Dicas e notícias da { -vendor-short-name } e { -brand-product-name }
+home-prefs-sections-rows-option =
+ .label =
+ { $num ->
+ [one] { $num } linha
+ *[other] { $num } linhas
+ }
+
+## Search Section
+
+search-bar-header = Barra de pesquisa
+search-bar-hidden =
+ .label = Utilizar a barra de endereço para pesquisa e navegação
+search-bar-shown =
+ .label = Adicionar barra de pesquisa à barra de ferramentas
+search-engine-default-header = Motor de pesquisa predefinido
+search-engine-default-desc-2 = Este é o seu motor de pesquisa predefinido nas barras de endereço e de pesquisa. Pode mudar a qualquer momento.
+search-engine-default-private-desc-2 = Escolha um motor de pesquisa predefinido diferente apenas para as janelas privadas
+search-separate-default-engine =
+ .label = Utilizar este motor de pesquisa nas janelas privadas
+ .accesskey = U
+search-suggestions-header = Sugestões de pesquisa
+search-suggestions-desc = Escolha como as sugestões dos motores de pesquisa são apresentadas.
+search-suggestions-option =
+ .label = Mostrar sugestões de pesquisa
+ .accesskey = s
+search-show-suggestions-url-bar-option =
+ .label = Mostrar sugestões de pesquisa nos resultados da barra de endereço
+ .accesskey = l
+# With this option enabled, on the search results page
+# the URL will be replaced by the search terms in the address bar
+# when using the current default search engine.
+search-show-search-term-option =
+ .label = Mostrar os termos de pesquisa em vez do URL na página de resultados do mecanismo de pesquisa predefinido
+# This string describes what the user will observe when the system
+# prioritizes search suggestions over browsing history in the results
+# that extend down from the address bar. In the original English string,
+# "ahead" refers to location (appearing most proximate to), not time
+# (appearing before).
+search-show-suggestions-above-history-option =
+ .label = Mostrar sugestões de pesquisa à frente do histórico de navegação nos resultados da barra de endereço
+search-show-suggestions-private-windows =
+ .label = Mostrar sugestões de pesquisa em janelas privadas
+suggestions-addressbar-settings-generic2 = Alterar definições para outras sugestões da barra de endereços
+search-suggestions-cant-show = Sugestões de pesquisa não serão apresentadas nos resultados da barra de localização porque configurou o { -brand-short-name } para nunca memorizar histórico.
+search-one-click-header2 = Pesquisar atalhos
+search-one-click-desc = Escolha os motores de pesquisa alternativos que aparecem debaixo da barra de endereço e barra de pesquisa quando começa a introduzir uma palavra-chave.
+search-choose-engine-column =
+ .label = Motor de pesquisa
+search-choose-keyword-column =
+ .label = Palavra-chave
+search-restore-default =
+ .label = Restaurar motores de pesquisa predefinidos
+ .accesskey = d
+search-remove-engine =
+ .label = Remover
+ .accesskey = R
+search-add-engine =
+ .label = Adicionar
+ .accesskey = A
+search-find-more-link = Encontrar mais motores de pesquisa
+# This warning is displayed when the chosen keyword is already in use
+# ('Duplicate' is an adjective)
+search-keyword-warning-title = Palavra-chave duplicada
+# Variables:
+# $name (String) - Name of a search engine.
+search-keyword-warning-engine = Escolheu uma palavra-chave que está atualmente a ser utilizada por “{ $name }”. Por favor, selecione outra.
+search-keyword-warning-bookmark = Escolheu uma palavra chave que está a ser utilizada por um marcador. Por favor, escolha outra.
+
+## Containers Section
+
+containers-back-button2 =
+ .aria-label = Voltar para as Definições
+containers-header = Separadores contentores
+containers-add-button =
+ .label = Adicionar novo contentor
+ .accesskey = A
+containers-new-tab-check =
+ .label = Selecionar um contentor para cada novo separador
+ .accesskey = S
+containers-settings-button =
+ .label = Definições
+containers-remove-button =
+ .label = Remover
+
+## Firefox Account - Signed out. Note that "Sync" and "Firefox Account" are now
+## more discrete ("signed in" no longer means "and sync is connected").
+
+sync-signedout-caption = Leve a sua Web consigo
+sync-signedout-description2 = Sincronize os marcadores, histórico, separadores, palavras-passe, extras e definições entre dispositivos.
+sync-signedout-account-signin3 =
+ .label = Iniciar sessão para sincronizar…
+ .accesskey = I
+# This message contains two links and two icon images.
+# `` - Android logo icon
+# `` - Link to Android Download
+# `` - iOS logo icon
+# `` - Link to iOS Download
+#
+# They can be moved within the sentence as needed to adapt
+# to your language, but should not be changed or translated.
+sync-mobile-promo = Transfira o Firefox para Android ou iOS para sincronizar com o seu dispositivo móvel.
+
+## Firefox Account - Signed in
+
+sync-profile-picture =
+ .tooltiptext = Alterar imagem de perfil
+sync-sign-out =
+ .label = Terminar sessão...
+ .accesskey = T
+sync-manage-account = Gerir conta
+ .accesskey = o
+sync-signedin-unverified = { $email } não está verificado.
+sync-signedin-login-failure = Por favor inicie sessão para reassociar { $email }
+sync-resend-verification =
+ .label = Reenviar verificação
+ .accesskey = r
+sync-remove-account =
+ .label = Remover conta
+ .accesskey = R
+sync-sign-in =
+ .label = Iniciar sessão
+ .accesskey = c
+
+## Sync section - enabling or disabling sync.
+
+prefs-syncing-on = Sincronização: ATIVADA
+prefs-syncing-off = Sincronização: DESATIVADA
+prefs-sync-turn-on-syncing =
+ .label = Ativar sincronização...
+ .accesskey = s
+prefs-sync-offer-setup-label2 = Sincronize os marcadores, histórico, separadores, palavras-passe, extras e definições entre todos os seus dispositivos.
+prefs-sync-now =
+ .labelnotsyncing = Sincronizar agora
+ .accesskeynotsyncing = N
+ .labelsyncing = A sincronizar...
+
+## The list of things currently syncing.
+
+sync-currently-syncing-heading = Atualmente, está a sincronizar estes itens:
+sync-currently-syncing-bookmarks = Marcadores
+sync-currently-syncing-history = Histórico
+sync-currently-syncing-tabs = Separadores abertos
+sync-currently-syncing-logins-passwords = Credenciais e palavras-passe
+sync-currently-syncing-addresses = Endereços
+sync-currently-syncing-creditcards = Cartões de crédito
+sync-currently-syncing-addons = Extras
+sync-currently-syncing-settings = Definições
+sync-change-options =
+ .label = Alterar...
+ .accesskey = A
+
+## The "Choose what to sync" dialog.
+
+sync-choose-what-to-sync-dialog =
+ .title = Escolher o que sincronizar
+ .style = width: 36em; min-height: 35em;
+ .buttonlabelaccept = Guardar alterações
+ .buttonaccesskeyaccept = G
+ .buttonlabelextra2 = Desligar...
+ .buttonaccesskeyextra2 = D
+sync-choose-what-to-sync-dialog3 =
+ .title = Escolher o que sincronizar
+ .style = min-width: 36em;
+ .buttonlabelaccept = Guardar alterações
+ .buttonaccesskeyaccept = G
+ .buttonlabelextra2 = Desligar...
+ .buttonaccesskeyextra2 = D
+sync-engine-bookmarks =
+ .label = Marcadores
+ .accesskey = M
+sync-engine-history =
+ .label = Histórico
+ .accesskey = r
+sync-engine-tabs =
+ .label = Separadores abertos
+ .tooltiptext = Uma lista do que está aberto em todos os dispositivos sincronizados
+ .accesskey = S
+sync-engine-logins-passwords =
+ .label = Credenciais e palavras-passe
+ .tooltiptext = Nomes de utilizador e palavras-passe que guardou
+ .accesskey = C
+sync-engine-addresses =
+ .label = Endereços
+ .tooltiptext = Endereços postais que guardou (computador apenas)
+ .accesskey = e
+sync-engine-creditcards =
+ .label = Cartões de crédito
+ .tooltiptext = Nomes, números e datas de expiração (computador apenas)
+ .accesskey = C
+sync-engine-addons =
+ .label = Extras
+ .tooltiptext = Extensões e temas para o Firefox no computador
+ .accesskey = a
+sync-engine-settings =
+ .label = Definições
+ .tooltiptext = Definições gerais, de privacidade e de segurança que alterou
+ .accesskey = D
+
+## The device name controls.
+
+sync-device-name-header = Nome do dispositivo
+sync-device-name-change =
+ .label = Alterar nome do dispositivo…
+ .accesskey = l
+sync-device-name-cancel =
+ .label = Cancelar
+ .accesskey = n
+sync-device-name-save =
+ .label = Guardar
+ .accesskey = r
+sync-connect-another-device = Ligar outro dispositivo
+
+## Privacy Section
+
+privacy-header = Privacidade do navegador
+
+## Privacy Section - Logins and Passwords
+
+# The search keyword isn't shown to users but is used to find relevant settings in about:preferences.
+pane-privacy-logins-and-passwords-header = Credenciais e palavras-passe
+ .searchkeywords = { -lockwise-brand-short-name }
+# Checkbox to control whether UI is shown to users to save or fill logins/passwords.
+forms-ask-to-save-logins =
+ .label = Pedir para guardar credenciais e palavras-passe para sites
+ .accesskey = P
+forms-exceptions =
+ .label = Exceções…
+ .accesskey = x
+forms-generate-passwords =
+ .label = Sugerir e gerar palavras-passe fortes
+ .accesskey = u
+forms-breach-alerts =
+ .label = Mostrar alertas sobre as palavras-passe para os sites violados
+ .accesskey = v
+forms-breach-alerts-learn-more-link = Saber mais
+relay-integration =
+ .label = Ative o { -relay-brand-name } no seu gestor de palavras-passe do { -brand-short-name }
+relay-integration-learn-more-link = Saber mais
+# Checkbox which controls filling saved logins into fields automatically when they appear, in some cases without user interaction.
+forms-fill-logins-and-passwords =
+ .label = Autopreenchimento de credenciais e palavras-passe
+ .accesskey = i
+forms-saved-logins =
+ .label = Credenciais guardadas…
+ .accesskey = g
+forms-primary-pw-use =
+ .label = Utilizar uma palavra-passe principal
+ .accesskey = U
+forms-primary-pw-learn-more-link = Saber mais
+# This string uses the former name of the Primary Password feature
+# ("Master Password" in English) so that the preferences can be found
+# when searching for the old name. The accesskey is unused.
+forms-master-pw-change =
+ .label = Alterar palavra-passe mestra…
+ .accesskey = m
+forms-primary-pw-change =
+ .label = Alterar palavra-passe principal…
+ .accesskey = p
+# Leave this message empty if the translation for "Primary Password" matches
+# "Master Password" in your language. If you're editing the FTL file directly,
+# use { "" } as the value.
+forms-primary-pw-former-name = Anteriormente conhecida como palavra-passe mestra
+forms-primary-pw-fips-title = Atualmente, está no modo FIPS. Este modo requer uma palavra-passe principal não vazia.
+forms-master-pw-fips-desc = Erro ao alterar palavra-passe
+forms-windows-sso =
+ .label = Permitir a autenticação única para contas da Microsoft, trabalho e escola
+forms-windows-sso-learn-more-link = Saber mais
+forms-windows-sso-desc = Gerir contas nas definições do seu dispositivo
+
+## OS Authentication dialog
+
+# This message can be seen by trying to add a Primary Password.
+primary-password-os-auth-dialog-message-win = Para criar uma palavra-passe principal, introduza as suas credenciais de autenticação do Windows. Isto ajuda a proteger a segurança das suas contas.
+# This message can be seen by trying to add a Primary Password.
+# The macOS strings are preceded by the operating system with "Firefox is trying to "
+# and includes subtitle of "Enter password for the user "xxx" to allow this." These
+# notes are only valid for English. Please test in your locale.
+primary-password-os-auth-dialog-message-macosx = criar uma palavra-passe principal
+master-password-os-auth-dialog-caption = { -brand-full-name }
+
+## Privacy Section - History
+
+history-header = Histórico
+# This label is followed, on the same line, by a dropdown list of options
+# (Remember history, etc.).
+# In English it visually creates a full sentence, e.g.
+# "Firefox will" + "Remember history".
+#
+# If this doesn't work for your language, you can translate this message:
+# - Simply as "Firefox", moving the verb into each option.
+# This will result in "Firefox" + "Will remember history", etc.
+# - As a stand-alone message, for example "Firefox history settings:".
+history-remember-label = O { -brand-short-name } irá
+ .accesskey = i
+history-remember-option-all =
+ .label = Memorizar histórico
+history-remember-option-never =
+ .label = Nunca memorizar histórico
+history-remember-option-custom =
+ .label = Utilizar definições personalizadas para o histórico
+history-remember-description = O { -brand-short-name } irá memorizar o seu histórico de navegação, transferências, formulários e pesquisa.
+history-dontremember-description = O { -brand-short-name } irá utilizar as mesmas definições da navegação privada e não irá memorizar qualquer histórico enquanto navega na Web.
+history-private-browsing-permanent =
+ .label = Utilizar sempre o modo de navegação privada
+ .accesskey = p
+history-remember-browser-option =
+ .label = Memorizar histórico de navegação e de transferências
+ .accesskey = z
+history-remember-search-option =
+ .label = Memorizar histórico de pesquisas e de formulários
+ .accesskey = f
+history-clear-on-close-option =
+ .label = Limpar o histórico quando o { -brand-short-name } for fechado
+ .accesskey = i
+history-clear-on-close-settings =
+ .label = Definições…
+ .accesskey = e
+history-clear-button =
+ .label = Limpar histórico…
+ .accesskey = s
+
+## Privacy Section - Site Data
+
+sitedata-header = Cookies e dados de sites
+sitedata-total-size-calculating = A calcular tamanho dos dados de sites e cache…
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+sitedata-total-size = Os seus cookies, dados de sites e cache estão atualmente a utilizar { $value } { $unit } de espaço em disco.
+sitedata-learn-more = Saber mais
+sitedata-delete-on-close =
+ .label = Eliminar cookies e os dados de sites quando o { -brand-short-name } é fechado
+ .accesskey = c
+sitedata-delete-on-close-private-browsing = No modo de navegação privada permanente, os cookies e os dados de sites irão ser sempre limpos quando o { -brand-short-name } é fechado.
+sitedata-allow-cookies-option =
+ .label = Aceitar cookies e dados de sites
+ .accesskey = A
+sitedata-disallow-cookies-option =
+ .label = Bloquear cookies e dados de sites
+ .accesskey = B
+# This label means 'type of content that is blocked', and is followed by a drop-down list with content types below.
+# The list items are the strings named sitedata-block-*-option*.
+sitedata-block-desc = Tipo bloqueado
+ .accesskey = T
+sitedata-option-block-cross-site-trackers =
+ .label = Rastreadores entre sites
+sitedata-option-block-cross-site-tracking-cookies =
+ .label = Cookies de monitorização entre sites
+sitedata-option-block-cross-site-cookies =
+ .label = Cookies de monitorização cruzadas entre sites e isolar outras cookies cruzadas entre sites
+sitedata-option-block-unvisited =
+ .label = Cookies de sites não visitados
+sitedata-option-block-all-third-party =
+ .label = Todos os cookies de terceiros (poderá resultar em falhas nos sites)
+sitedata-option-block-all-cross-site-cookies =
+ .label = Todos os cookies cruzados (pode fazer com que alguns sites deixem de funcionar)
+sitedata-option-block-all =
+ .label = Todos os cookies (irá resultar na falha de sites)
+sitedata-clear =
+ .label = Limpar dados…
+ .accesskey = L
+sitedata-settings =
+ .label = Gerir dados…
+ .accesskey = G
+sitedata-cookies-exceptions =
+ .label = Gerir exceções…
+ .accesskey = x
+
+## Privacy Section - Address Bar
+
+addressbar-header = Barra de endereço
+addressbar-suggest = Ao utilizar a barra de endereço, sugerir
+addressbar-locbar-history-option =
+ .label = Histórico de navegação
+ .accesskey = H
+addressbar-locbar-bookmarks-option =
+ .label = Marcadores
+ .accesskey = M
+addressbar-locbar-openpage-option =
+ .label = Separadores abertos
+ .accesskey = o
+# Shortcuts refers to the shortcut tiles on the new tab page, previously known as top sites. Translation should be consistent.
+addressbar-locbar-shortcuts-option =
+ .label = Atalhos
+ .accesskey = A
+addressbar-locbar-topsites-option =
+ .label = Principais sites
+ .accesskey = t
+addressbar-locbar-engines-option =
+ .label = Motores de pesquisa
+ .accesskey = a
+addressbar-locbar-quickactions-option =
+ .label = Ações rápidas
+ .accesskey = Q
+addressbar-suggestions-settings = Alterar preferências para as sugestões dos motores de pesquisa
+addressbar-quickactions-learn-more = Saber mais
+
+## Privacy Section - Content Blocking
+
+content-blocking-enhanced-tracking-protection = Proteção melhorada contra a monitorização
+content-blocking-section-top-level-description = Os rastreadores seguem-no na Internet para recolher informação sobre os seus hábitos e interesses de navegação. O { -brand-short-name } bloqueia muitos destes rastreadores e outros scripts maliciosos.
+content-blocking-learn-more = Saber mais
+content-blocking-fpi-incompatibility-warning = Está a utilizar o isolamento primário (FPI), que substitui algumas das configurações de cookies do { -brand-short-name }.
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+# "Standard" in this case is an adjective, meaning "default" or "normal".
+enhanced-tracking-protection-setting-standard =
+ .label = Padrão
+ .accesskey = d
+enhanced-tracking-protection-setting-strict =
+ .label = Rigorosa
+ .accesskey = R
+enhanced-tracking-protection-setting-custom =
+ .label = Personalizada
+ .accesskey = e
+
+##
+
+content-blocking-etp-standard-desc = Balanceado para proteção e desempenho. As páginas serão carregadas normalmente.
+content-blocking-etp-strict-desc = Proteção mais forte, mas pode causar problemas em alguns sites ou conteúdos.
+content-blocking-etp-custom-desc = Escolha quais os rastreadores e scripts a bloquear.
+content-blocking-etp-blocking-desc = O { -brand-short-name } bloqueia o seguinte:
+content-blocking-private-windows = Conteúdo de monitorização nas janelas privadas
+content-blocking-cross-site-cookies-in-all-windows = Cookies entre sites em todas as janelas (inclui cookies de rastreamento)
+content-blocking-cross-site-cookies-in-all-windows2 = Cookies entre sites em todas as janelas
+content-blocking-cross-site-tracking-cookies = Cookies de monitorização entre sites
+content-blocking-all-cross-site-cookies-private-windows = Cookies entre sites em janelas privadas
+content-blocking-cross-site-tracking-cookies-plus-isolate = Cookies de monitorização entre sites e isolamento das cookies remanescentes
+content-blocking-social-media-trackers = Rastreadores de redes sociais
+content-blocking-all-cookies = Todos os cookies
+content-blocking-unvisited-cookies = Cookies de sites não visitados
+content-blocking-all-windows-tracking-content = Conteúdo de monitorização em todas as janelas
+content-blocking-all-third-party-cookies = Todos os cookies de terceiros
+content-blocking-all-cross-site-cookies = Todos os cookies cruzados
+content-blocking-cryptominers = Cripto-mineradores
+content-blocking-fingerprinters = Identificadores
+# "Test pilot" is used as a verb. Possible alternatives:
+# "Be the first to try", "Join an early experiment".
+content-blocking-etp-standard-tcp-rollout-checkbox =
+ .label =
+ Teste a nossa mais poderosa funcionalidade de privacidade
+ experiência de privacidade de sempre
+ .accesskey = T
+
+# The tcp-rollout strings are no longer used for the rollout but for tcp-by-default in the standard section
+
+# "Contains" here means "isolates", "limits".
+content-blocking-etp-standard-tcp-rollout-description = A Proteção total de cookies contém cookies para o site em que você estiver, portanto, os rastreadores não podem utilizar as mesmas para o monitorizar enquanto navega entre sites.
+content-blocking-etp-standard-tcp-rollout-learn-more = Saber mais
+content-blocking-etp-standard-tcp-title = Inclui a Proteção Total de Cookies, a nossa funcionalidade de privacidade mais poderosa de sempre
+content-blocking-warning-title = Atenção!
+content-blocking-and-isolating-etp-warning-description-2 = Esta definição pode fazer com que alguns sites não mostrem conteúdo ou que não funcionem corretamente. Se um site parecer estragado, pode desativar a proteção contra a monitorização para esse site para carregar todo o conteúdo.
+content-blocking-warning-learn-how = Saiba como
+content-blocking-reload-description = Irá precisar de recarregar os seus separadores para aplicar estas alterações.
+content-blocking-reload-tabs-button =
+ .label = Recarregar todos os separadores
+ .accesskey = R
+content-blocking-tracking-content-label =
+ .label = Conteúdo de monitorização
+ .accesskey = t
+content-blocking-tracking-protection-option-all-windows =
+ .label = Em todas as janelas
+ .accesskey = a
+content-blocking-option-private =
+ .label = Apenas em janelas privadas
+ .accesskey = p
+content-blocking-tracking-protection-change-block-list = Alterar lista de bloqueio
+content-blocking-cookies-label =
+ .label = Cookies
+ .accesskey = C
+content-blocking-expand-section =
+ .tooltiptext = Mais informação
+# Cryptomining refers to using scripts on websites that can use a computer’s resources to mine cryptocurrency without a user’s knowledge.
+content-blocking-cryptominers-label =
+ .label = Cripto-mineradores
+ .accesskey = C
+# Browser fingerprinting is a method of tracking users by the configuration and settings information (their "digital fingerprint")
+# that is visible to websites they browse, rather than traditional tracking methods such as IP addresses and unique cookies.
+content-blocking-fingerprinters-label =
+ .label = Identificadores
+ .accesskey = I
+
+## Privacy Section - Tracking
+
+tracking-manage-exceptions =
+ .label = Gerir exceções…
+ .accesskey = x
+
+## Privacy Section - Permissions
+
+permissions-header = Permissões
+permissions-location = Localização
+permissions-location-settings =
+ .label = Definições…
+ .accesskey = f
+permissions-xr = Realidade virtual
+permissions-xr-settings =
+ .label = Definições...
+ .accesskey = f
+permissions-camera = Câmara
+permissions-camera-settings =
+ .label = Definições…
+ .accesskey = f
+permissions-microphone = Microfone
+permissions-microphone-settings =
+ .label = Definições…
+ .accesskey = f
+permissions-notification = Notificações
+permissions-notification-settings =
+ .label = Definições…
+ .accesskey = n
+permissions-notification-link = Saber mais
+permissions-notification-pause =
+ .label = Pausar notificações até o { -brand-short-name } reiniciar
+ .accesskey = n
+permissions-autoplay = Reprodução automática
+permissions-autoplay-settings =
+ .label = Definições…
+ .accesskey = f
+permissions-block-popups =
+ .label = Bloquear janelas pop-up
+ .accesskey = B
+# "popup" is a misspelling that is more popular than the correct spelling of
+# "pop-up" so it's included as a search keyword, not displayed in the UI.
+permissions-block-popups-exceptions-button =
+ .label = Exceções…
+ .accesskey = E
+ .searchkeywords = popups
+permissions-addon-install-warning =
+ .label = Avisar quando os sites tentam instalar extras
+ .accesskey = A
+permissions-addon-exceptions =
+ .label = Exceções…
+ .accesskey = E
+
+## Privacy Section - Data Collection
+
+collection-header = Recolha de dados e utilização do { -brand-short-name }
+collection-description = Nós esforçamos-nos para lhe fornecer escolhas e recolher apenas o que precisamos para fornecer e melhorar o { -brand-short-name } para toda a gente. Pedimos sempre permissão antes de receber informação pessoal.
+collection-privacy-notice = Aviso de privacidade
+collection-health-report-telemetry-disabled = Deixou de permitir que o { -vendor-short-name } recolha dados técnicos e de interação. Todos os dados anteriores serão eliminados dentro de 30 dias.
+collection-health-report-telemetry-disabled-link = Saber mais
+collection-health-report =
+ .label = Permitir que o { -brand-short-name } envie os dados técnicos e de interação para a { -vendor-short-name }
+ .accesskey = r
+collection-health-report-link = Saber mais
+collection-studies =
+ .label = Permitir ao { -brand-short-name } instalar e executar estudos
+collection-studies-link = Ver estudos do { -brand-short-name }
+addon-recommendations =
+ .label = Permitir que o { -brand-short-name } faça recomendações personalizadas de extensões
+addon-recommendations-link = Saber mais
+# This message is displayed above disabled data sharing options in developer builds
+# or builds with no Telemetry support available.
+collection-health-report-disabled = Relato de dados está desativado para a configuração desta compilação
+collection-backlogged-crash-reports-with-link = Permitir que o { -brand-short-name } envie relatórios de falhas acumuladas em seu nome. Saber mais
+ .accesskey = f
+privacy-segmentation-section-header = Novas funcionalidades que melhoram a sua navegação
+privacy-segmentation-section-description = Quando oferecemos funcionalidades que utilizam os seus dados para fornecer uma experiência mais pessoal:
+privacy-segmentation-radio-off =
+ .label = Usar as recomendações do { -brand-product-name }
+privacy-segmentation-radio-on =
+ .label = Mostrar informações detalhadas
+
+## Privacy Section - Security
+##
+## It is important that wording follows the guidelines outlined on this page:
+## https://developers.google.com/safe-browsing/developers_guide_v2#AcceptableUsage
+
+security-header = Segurança
+security-browsing-protection = Conteúdo decetivo e proteção contra software perigoso
+security-enable-safe-browsing =
+ .label = Bloquear conteúdo perigoso e decetivo
+ .accesskey = B
+security-enable-safe-browsing-link = Saber mais
+security-block-downloads =
+ .label = Bloquear transferências perigosas
+ .accesskey = t
+security-block-uncommon-software =
+ .label = Avisar-lhe acerca de software não-solicitado e incomum
+ .accesskey = c
+
+## Privacy Section - Certificates
+
+certs-header = Certificados
+certs-enable-ocsp =
+ .label = Consultar os servidores de resposta OCSP para confirmar a validade de certificados
+ .accesskey = O
+certs-view =
+ .label = Ver certificados…
+ .accesskey = c
+certs-devices =
+ .label = Dispositivos de segurança…
+ .accesskey = D
+space-alert-over-5gb-settings-button =
+ .label = Abrir definições
+ .accesskey = A
+space-alert-over-5gb-message2 = O { -brand-short-name } está a ficar sem espaço em disco. Os conteúdos dos sites podem não ser apresentados corretamente. Pode limpar os dados armazenados em Definições > Privacidade e segurança > Cookies e Dados de sites.
+space-alert-under-5gb-message2 = O { -brand-short-name } está a ficar sem espaço em disco. Os conteúdos de sites podem não ser apresentados corretamente. Visite “Saber mais” para otimizar a utilização do seu disco e melhorar a experiência de navegação.
+
+## Privacy Section - HTTPS-Only
+
+httpsonly-header = Modo apenas HTTPS
+httpsonly-description = O HTTPS fornece um ligação segura e encriptada entre o { -brand-short-name } e os sites que visita. A maioria dos sites suporta HTTPS e se o modo apenas HTTPS estiver ativo, então o { -brand-short-name } irá melhorar/atualizar todas as ligações para HTTPS.
+httpsonly-learn-more = Saber mais
+httpsonly-radio-enabled =
+ .label = Ativar o modo apenas HTTPS em todas as janelas
+httpsonly-radio-enabled-pbm =
+ .label = Ativar o modo Apenas HTTPS somente em janelas privadas
+httpsonly-radio-disabled =
+ .label = Não ativar o modo apenas HTTPS
+
+## The following strings are used in the Download section of settings
+
+desktop-folder-name = Ambiente de trabalho
+downloads-folder-name = Transferências
+choose-download-folder-title = Escolha a pasta de transferências:
diff --git a/l10n-pt-PT/browser/browser/preferences/selectBookmark.ftl b/l10n-pt-PT/browser/browser/preferences/selectBookmark.ftl
new file mode 100644
index 0000000000..f58c8adb4e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/selectBookmark.ftl
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+select-bookmark-window =
+ .title = Definir página inicial
+ .style = width: 32em;
+
+select-bookmark-window2 =
+ .title = Definir página inicial
+ .style = min-width: 32em;
+
+select-bookmark-desc = Escolha um marcador para ser a sua página inicial. Se escolher uma pasta, os marcadores dessa pasta serão abertos em separadores.
diff --git a/l10n-pt-PT/browser/browser/preferences/siteDataSettings.ftl b/l10n-pt-PT/browser/browser/preferences/siteDataSettings.ftl
new file mode 100644
index 0000000000..f84ba746eb
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/siteDataSettings.ftl
@@ -0,0 +1,67 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Settings
+
+site-data-settings-window =
+ .title = Gerir cookies e dados de sites
+
+site-data-settings-description = Os sites seguintes armazenam cookies e dados de sites no seu computador. O { -brand-short-name } mantém os dados de sites com armazenamento persistente até os remover e elimina os dados de sites com armazenamento não-persistente quando é necessário espaço.
+
+site-data-search-textbox =
+ .placeholder = Pesquisar sites
+ .accesskey = P
+
+site-data-column-host =
+ .label = Site
+site-data-column-cookies =
+ .label = Cookies
+site-data-column-storage =
+ .label = Armazenamento
+site-data-column-last-used =
+ .label = Última utilização
+
+# This label is used in the "Host" column for local files, which have no host.
+site-data-local-file-host = (ficheiro local)
+
+site-data-remove-selected =
+ .label = Remover selecionados
+ .accesskey = R
+
+site-data-settings-dialog =
+ .buttonlabelaccept = Guardar alterações
+ .buttonaccesskeyaccept = a
+
+# Variables:
+# $value (Number) - Value of the unit (for example: 4.6, 500)
+# $unit (String) - Name of the unit (for example: "bytes", "KB")
+site-storage-usage =
+ .value = { $value } { $unit }
+site-storage-persistent =
+ .value = { site-storage-usage.value } (Persistente)
+
+site-data-remove-all =
+ .label = Remover todos
+ .accesskey = e
+
+site-data-remove-shown =
+ .label = Remover todos os mostrados
+ .accesskey = e
+
+## Removing
+
+site-data-removing-dialog =
+ .title = { site-data-removing-header }
+ .buttonlabelaccept = Remover
+
+site-data-removing-header = Remover cookies e dados de sites
+
+site-data-removing-desc = Remover cookies e dados de sites pode terminar a sessão nos sites. Tem a certeza que pretende fazer as alterações?
+
+# Variables:
+# $baseDomain (String) - The single domain for which data is being removed
+site-data-removing-single-desc = Remover cookies e dados dos sites pode fazer com a sua sessão nos sites seja terminada. Tem a certeza que deseja remover cookies e dados do site { $baseDomain }?
+
+site-data-removing-table = Serão removidas as cookies e os dados dos seguintes sites
diff --git a/l10n-pt-PT/browser/browser/preferences/translation.ftl b/l10n-pt-PT/browser/browser/preferences/translation.ftl
new file mode 100644
index 0000000000..72f88dcac3
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/preferences/translation.ftl
@@ -0,0 +1,44 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+translation-window =
+ .title = Exceções - Tradução
+ .style = width: 36em
+
+translation-window2 =
+ .title = Exceções - Tradução
+ .style = min-width: 36em
+
+translation-close-key =
+ .key = w
+
+translation-languages-disabled-desc = Tradução não será oferecida para os seguintes idiomas
+
+translation-languages-column =
+ .label = Idiomas
+
+translation-languages-button-remove =
+ .label = Remover idioma
+ .accesskey = R
+
+translation-languages-button-remove-all =
+ .label = Remover todos os idiomas
+ .accesskey = e
+
+translation-sites-disabled-desc = Tradução não será oferecida para os seguintes sites
+
+translation-sites-column =
+ .label = Sites
+
+translation-sites-button-remove =
+ .label = Remover site
+ .accesskey = s
+
+translation-sites-button-remove-all =
+ .label = Remover todos os sites
+ .accesskey = i
+
+translation-dialog =
+ .buttonlabelaccept = Fechar
+ .buttonaccesskeyaccept = c
diff --git a/l10n-pt-PT/browser/browser/profile/default-bookmarks.ftl b/l10n-pt-PT/browser/browser/profile/default-bookmarks.ftl
new file mode 100644
index 0000000000..b321adce5b
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/profile/default-bookmarks.ftl
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# This file intentionally uses hard-coded brand names instead of Fluent terms.
+# This approach minimizes issues across multiple release channels and rebranded
+# versions.
+
+default-bookmarks-title = Marcadores
+default-bookmarks-heading = Marcadores
+
+default-bookmarks-toolbarfolder = Pasta da barra de marcadores
+default-bookmarks-toolbarfolder-description = Adicione os marcadores a esta pasta se os quiser mostrar na barra de marcadores
+
+# link title for https://www.mozilla.org/firefox/central/
+default-bookmarks-getting-started = Começar
+
+# Firefox links folder name
+default-bookmarks-firefox-heading = Mozilla Firefox
+
+# link title for https://www.mozilla.org/firefox/help/
+default-bookmarks-firefox-get-help = Obter ajuda
+
+# link title for https://www.mozilla.org/firefox/customize/
+default-bookmarks-firefox-customize = Personalizar o Firefox
+
+# link title for https://www.mozilla.org/contribute/
+default-bookmarks-firefox-community = Participar
+
+# link title for https://www.mozilla.org/about/
+default-bookmarks-firefox-about = Sobre nós
+
+# Firefox Nightly links folder name
+default-bookmarks-nightly-heading = Recursos do Firefox Nightly
+
+# Nightly builds only, link title for https://blog.nightly.mozilla.org/
+default-bookmarks-nightly-blog = Blogue do Firefox Nightly
+
+# Nightly builds only, link title for https://bugzilla.mozilla.org/
+default-bookmarks-bugzilla = Tracker de Bugs da Mozilla
+
+# Nightly builds only, link title for https://developer.mozilla.org/
+default-bookmarks-mdn = Rede da Mozilla para programadores
+
+# Nightly builds only, link title for https://addons.mozilla.org/firefox/addon/nightly-tester-tools/
+default-bookmarks-nightly-tester-tools = Ferramentas de teste Nightly
+
+# Nightly builds only, link title for about:crashes
+default-bookmarks-crashes = Todas as suas falhas
+
+# Nightly builds only, link title for https://planet.mozilla.org/
+default-bookmarks-planet = Planeta Mozilla
diff --git a/l10n-pt-PT/browser/browser/protections.ftl b/l10n-pt-PT/browser/browser/protections.ftl
new file mode 100644
index 0000000000..1cee02b483
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/protections.ftl
@@ -0,0 +1,239 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+graph-week-summary =
+ { $count ->
+ [one] { -brand-short-name } bloqueou { $count } rastreador ao longo da semana passada
+ *[other] { -brand-short-name } bloqueou { $count } rastreadores ao longo da semana passada
+ }
+
+# Variables:
+# $count (Number) - Number of tracking events blocked.
+# $earliestDate (Number) - Unix timestamp in ms, representing a date. The
+# earliest date recorded in the database.
+graph-total-tracker-summary =
+ { $count ->
+ [one] { $count } rastreador bloqueado desde { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ *[other] { $count } rastreadores bloqueados desde { DATETIME($earliestDate, day: "numeric", month: "long", year: "numeric") }
+ }
+
+# Text displayed instead of the graph when in Private Mode
+graph-private-window = O { -brand-short-name } continua a bloquear os rastreadores em janelas privadas, mas não mantém um registo do que foi bloqueado.
+# Weekly summary of the graph when the graph is empty in Private Mode
+graph-week-summary-private-window = Rastreadores que o { -brand-short-name } bloqueou esta semana
+
+protection-report-webpage-title = Painel das proteções
+protection-report-page-content-title = Painel das proteções
+# This message shows when all privacy protections are turned off, which is why we use the word "can", Firefox is able to protect your privacy, but it is currently not.
+protection-report-page-summary = O { -brand-short-name } pode proteger a sua privacidade nos bastidores, enquanto navega. Este é um resumo personalizado destas proteções, incluindo ferramentas para assumir o controle da sua segurança na Internet.
+# This message shows when at least some protections are turned on, we are more assertive compared to the message above, Firefox is actively protecting you.
+protection-report-page-summary-default = O { -brand-short-name } protege a sua privacidade, nos bastidores, enquanto navega. Este é um resumo personalizado destas proteções, incluindo ferramentas para assumir a gestão da sua segurança na Internet.
+
+protection-report-settings-link = Gerir as suas definições de privacidade e segurança
+
+etp-card-title-always = Proteção melhorada contra a monitorização: Sempre ligada
+etp-card-title-custom-not-blocking = Proteção melhorada contra a monitorização: DESLIGADA
+etp-card-content-description = O { -brand-short-name } impede automaticamente que as empresas o sigam secretamente pela Internet.
+protection-report-etp-card-content-custom-not-blocking = Atualmente, todas as proteções estão desativadas. Escolha que rastreadores devem ser bloqueados gerindo as definições de proteção do { -brand-short-name }.
+protection-report-manage-protections = Gerir definições
+
+# This string is used to label the X axis of a graph. Other days of the week are generated via Intl.DateTimeFormat,
+# capitalization for this string should match the output for your locale.
+graph-today = Hoje
+
+# This string is used to describe the graph for screenreader users.
+graph-legend-description = Um gráfico contendo o número total de cada tipo de rastreador bloqueado esta semana.
+
+social-tab-title = Rastreadores de redes sociais
+social-tab-contant = As redes sociais colocam rastreadores em outros sites para monitorizar o que faz, vê e assiste na Internet. Isto permite que estas empresas de redes sociais saibam mais sobre si, para além do que partilha no seu perfil nas redes sociais. Saber mais
+
+cookie-tab-title = Cookies de monitorização entre sites
+cookie-tab-content = Estas cookies seguem-no entre vários sites para recolher dados sobre o que faz na Internet. São definidas por terceiros, como anunciantes ou empresas de análise. O bloqueio de cookies de rastreamento entre sites reduz o número de anúncios que o seguem. Saber mais
+
+tracker-tab-title = Monitorização de conteúdo
+tracker-tab-description = Os sites podem carregar anúncios, vídeos e outros conteúdos externos com códigos de rastreamento. O bloqueio de conteúdos de rastreamento pode ajudar os sites a carregar mais rapidamente, mas alguns botões, formulários e campos de autenticação podem não funcionar. Saber mais
+
+fingerprinter-tab-title = Identificadores
+fingerprinter-tab-content = Os identificadores recolhem definições do seu navegador e computador para criar um perfil sobre si. Ao utilizar este identificador digital, estes podem monitorizá-lo em vários sites diferentes. Saber mais
+
+cryptominer-tab-title = Cripto-mineradores
+cryptominer-tab-content = Os cripto-mineradores utilizam o poder de computação do seu sistema para minerar dinheiro digital. Os scripts de cripto-mineração podem descarregar a sua bateria, tornar o seu computador mais lento e aumentar os custos com a sua fatura elétrica. Saber mais
+
+protections-close-button2 =
+ .aria-label = Fechar
+ .title = Fechar
+
+mobile-app-title = Bloquear anúncios de monitorização em mais dispositivos
+mobile-app-card-content = Utilize o navegador móvel com proteção integrada contra anúncios de monitorização.
+mobile-app-links = O navegador { -brand-product-name } para Android e iOS
+
+lockwise-title = Nunca mais esqueça uma palavra-passe
+passwords-title-logged-in = Gira as suas palavras-passe
+passwords-header-content = O { -brand-product-name } guarda as suas palavras-passe em segurança no seu navegador.
+lockwise-header-content-logged-in = Guarde e sincronize em segurança as suas palavras-passe em todos os seus dispositivos.
+protection-report-passwords-save-passwords-button = Guardar palavras-passe
+ .title = Guardar palavras-passe
+protection-report-passwords-manage-passwords-button = Gerir palavras-passe
+ .title = Gerir palavras-passe
+
+
+# Variables:
+# $count (Number) - Number of passwords exposed in data breaches.
+lockwise-scanned-text-breached-logins =
+ { $count ->
+ [one] 1 palavra-passe poderá ter sido exposta numa violação de dados.
+ *[other] { $count } palavras-passe poderão ter sido expostas numa violação de dados
+ }
+
+# While English doesn't use the number in the plural form, you can add $count to your language
+# if needed for grammatical reasons.
+# Variables:
+# $count (Number) - Number of passwords stored in Lockwise.
+lockwise-scanned-text-no-breached-logins =
+ { $count ->
+ [one] 1 palavra-passe guardada em segurança.
+ *[other] As suas palavras-passe estão a ser guardadas em segurança.
+ }
+lockwise-how-it-works-link = Como é que funciona
+
+monitor-title = Procurar por violações de dados
+monitor-link = Como funciona
+monitor-header-content-no-account = Aceda ao { -monitor-brand-name } para confirmar se fez parte de uma violação de dados conhecida e para obter alertas sobre novas violações de dados.
+monitor-header-content-signed-in = O { -monitor-brand-name } avisa-o se a sua informação apareceu numa violação de dados conhecida.
+monitor-sign-up-link = Registar para alertas de violações de dados
+ .title = Registar no { -monitor-brand-name } para alertas de violações de dados
+auto-scan = Analisado hoje, de forma automática
+
+monitor-emails-tooltip =
+ .title = Ver os endereços de e-mail monitorados no { -monitor-brand-short-name }
+monitor-breaches-tooltip =
+ .title = Ver no { -monitor-brand-short-name } as violações de dados conhecidas
+monitor-passwords-tooltip =
+ .title = Ver no { -monitor-brand-short-name } as palavras-passe expostas.
+
+# This string is displayed after a large numeral that indicates the total number
+# of email addresses being monitored. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-monitored-emails =
+ { $count ->
+ [one] endereço de e-mail em monitorização
+ *[other] endereços de e-mail em monitorização
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-known-breaches-found =
+ { $count ->
+ [one] Violação de dados conhecida que expôs a sua informação
+ *[other] Violações de dados conhecidas que expuseram a sua informação
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of known data breaches that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-known-breaches-resolved =
+ { $count ->
+ [one] Violação de dados conhecida marcada como resolvida
+ *[other] Violações de dados conhecidas marcadas como resolvidas
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords. Don’t add $count to
+# your localization, because it would result in the number showing twice.
+info-exposed-passwords-found =
+ { $count ->
+ [one] palavra-passe exposta em todas as violações de dados
+ *[other] palavras-passe expostas em todas as violações de dados
+ }
+
+# This string is displayed after a large numeral that indicates the total number
+# of exposed passwords that are marked as resolved by the user. Don’t add $count
+# to your localization, because it would result in the number showing twice.
+info-exposed-passwords-resolved =
+ { $count ->
+ [one] Palavra-passe exposta em violações de dados não resolvidas
+ *[other] Palavras-passe expostas em violações de dados não resolvidas
+ }
+
+monitor-no-breaches-title = Boas notícias!
+monitor-no-breaches-description = Você não tem violações de dados conhecidas. Se isto se alterar, nós iremos avisá-lo.
+monitor-view-report-link = Ver relatório
+ .title = Resolver violações de dados no { -monitor-brand-short-name }
+monitor-breaches-unresolved-title = Resolver as suas violações de dados
+monitor-breaches-unresolved-description =
+ Depois de analisar os detalhes sobre a violação de dados e tomar medidas para proteger
+ as suas informações, pode marcar as violações de dados como resolvidas.
+monitor-manage-breaches-link = Gerir violações de dados
+ .title = Gerir violações de dados no { -monitor-brand-short-name }
+monitor-breaches-resolved-title = Muito bem! Resolveu todas as violações de dados conhecidas.
+monitor-breaches-resolved-description = Iremos informá-lo se o seu e-mail aparecer em novas violações de dados.
+
+# Variables:
+# $numBreachesResolved (Number) - Number of breaches marked as resolved by the user on Monitor.
+# $numBreaches (Number) - Number of breaches in which a user's data was involved, detected by Monitor.
+monitor-partial-breaches-title =
+ { $numBreaches ->
+ [one] { $numBreachesResolved } de { $numBreaches } violação de dados marcada como resolvida
+ *[other] { $numBreachesResolved } de { $numBreaches } violações de dados marcadas como resolvidas
+ }
+
+# Variables:
+# $percentageResolved (Number) - Percentage of breaches marked as resolved by a user on Monitor.
+monitor-partial-breaches-percentage = { $percentageResolved } concluído
+
+monitor-partial-breaches-motivation-title-start = Ótimo começo!
+monitor-partial-breaches-motivation-title-middle = Continue assim!
+monitor-partial-breaches-motivation-title-end = Está quase! Continue assim.
+monitor-partial-breaches-motivation-description = Resolver as violações de dados remanescentes no { -monitor-brand-short-name }.
+monitor-resolve-breaches-link = Resolver violações de dados
+ .title = Resolver violações de dados no { -monitor-brand-short-name }
+
+## The title attribute is used to display the type of protection.
+## The aria-label is spoken by screen readers to make the visual graph accessible to blind users.
+##
+## Variables:
+## $count (Number) - Number of specific trackers
+## $percentage (Number) - Percentage this type of tracker contributes to the whole graph
+
+bar-tooltip-social =
+ .title = Rastreadores de redes sociais
+ .aria-label =
+ { $count ->
+ [one] { $count } rastreador de rede social ({ $percentage }%)
+ *[other] { $count } rastreadores de redes sociais ({ $percentage }%)
+ }
+bar-tooltip-cookie =
+ .title = Cookies de monitorização entre sites
+ .aria-label =
+ { $count ->
+ [one]
+ { $count } cookie de monitorização entre sites ({ $percentage }%)
+ { $count } cross-site tracking cookie ({ $percentage }%)
+ { $count } cookie de monitorização ente sites ({ $percentage }%)
+ *[other] { $count } cookies de monitorização entre sites ({ $percentage }%)
+ }
+bar-tooltip-tracker =
+ .title = Conteúdo de monitorização
+ .aria-label =
+ { $count ->
+ [one] { $count } conteúdo de monitorização ({ $percentage }%)
+ *[other] { $count } conteúdos de monitorização ({ $percentage }%)
+ }
+bar-tooltip-fingerprinter =
+ .title = Identificadores
+ .aria-label =
+ { $count ->
+ [one] { $count } identificador ({ $percentage }%)
+ *[other] { $count } identificadores ({ $percentage }%)
+ }
+bar-tooltip-cryptominer =
+ .title = Cripto-mineradores
+ .aria-label =
+ { $count ->
+ [one] { $count } cripto-minerador ({ $percentage }%)
+ *[other] { $count } cripto-mineradores ({ $percentage }%)
+ }
diff --git a/l10n-pt-PT/browser/browser/protectionsPanel.ftl b/l10n-pt-PT/browser/browser/protectionsPanel.ftl
new file mode 100644
index 0000000000..31274d91f0
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/protectionsPanel.ftl
@@ -0,0 +1,112 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+protections-panel-sendreportview-error = Ocorreu um erro ao enviar o relatório. Por favor, tente novamente mais tarde.
+
+# A link shown when ETP is disabled for a site. Opens the breakage report subview when clicked.
+protections-panel-sitefixedsendreport-label = Site corrigido? Enviar relatório
+
+## These strings are used to define the different levels of
+## Enhanced Tracking Protection.
+
+protections-popup-footer-protection-label-strict = Rigorosa
+ .label = Rigorosa
+protections-popup-footer-protection-label-custom = Personalizada
+ .label = Personalizada
+protections-popup-footer-protection-label-standard = Padrão
+ .label = Padrão
+
+##
+
+# The text a screen reader speaks when focused on the info button.
+protections-panel-etp-more-info =
+ .aria-label = Mais informação sobre a Proteção melhorada contra a monitorização
+
+protections-panel-etp-on-header = A proteção melhorada contra a monitorização está ATIVADA para este site
+protections-panel-etp-off-header = A proteção melhorada contra a monitorização está DESATIVADA para este site
+
+# The link to be clicked to open the sub-panel view
+protections-panel-site-not-working = O site não está a funcionar?
+
+# The heading/title of the sub-panel view
+protections-panel-site-not-working-view =
+ .title = O site não está a funcionar?
+
+## The "Allowed" header also includes a "Why?" link that, when hovered, shows
+## a tooltip explaining why these items were not blocked in the page.
+
+protections-panel-not-blocking-why-label = Porquê?
+protections-panel-not-blocking-why-etp-on-tooltip = O bloqueio destes pode quebrar elementos em alguns sites. Sem rastreadores, alguns botões, formulários e campos de autenticação podem não funcionar.
+protections-panel-not-blocking-why-etp-off-tooltip = Todos os rastreadores deste site foram carregados porque as proteções estão desativadas.
+
+##
+
+protections-panel-no-trackers-found = Não foi detetado nenhum rastreador conhecido pelo { -brand-short-name } nesta página.
+
+protections-panel-content-blocking-tracking-protection = Conteúdo de monitorização
+
+protections-panel-content-blocking-socialblock = Rastreadores de redes sociais
+protections-panel-content-blocking-cryptominers-label = Cripto-mineradores
+protections-panel-content-blocking-fingerprinters-label = Identificadores
+
+## In the protections panel, Content Blocking category items are in three sections:
+## "Blocked" for categories being blocked in the current page,
+## "Allowed" for categories detected but not blocked in the current page, and
+## "None Detected" for categories not detected in the current page.
+## These strings are used in the header labels of each of these sections.
+
+protections-panel-blocking-label = Bloqueado
+protections-panel-not-blocking-label = Permitido
+protections-panel-not-found-label = Nenhuma detetada
+
+##
+
+protections-panel-settings-label = Definições de proteção
+protections-panel-protectionsdashboard-label = Painel das proteções
+
+## In the Site Not Working? view, we suggest turning off protections if
+## the user is experiencing issues with any of a variety of functionality.
+
+# The header of the list
+protections-panel-site-not-working-view-header = Desligue as proteções se estiver a ter problemas com:
+
+# The list items, shown in a
+protections-panel-site-not-working-view-issue-list-login-fields = Campos de credenciais
+protections-panel-site-not-working-view-issue-list-forms = Formulários
+protections-panel-site-not-working-view-issue-list-payments = Pagamentos
+protections-panel-site-not-working-view-issue-list-comments = Comentários
+protections-panel-site-not-working-view-issue-list-videos = Vídeos
+
+protections-panel-site-not-working-view-send-report = Enviar um relatório
+
+##
+
+protections-panel-cross-site-tracking-cookies = Estes cookies seguem-no entre os vários sites para recolher dados sobre o que faz na Internet. São definidos por terceiros, como anunciantes e empresas de análise.
+protections-panel-cryptominers = Os cripto-mineradores utilizam o poder de computação do seu sistema para minerar dinheiro digital. Os scripts de cripto-mineração podem descarregar a sua bateria, tornar o seu computador mais lento e aumentar os custos com a sua fatura elétrica.
+protections-panel-fingerprinters = Os identificadores recolhem definições do seu navegador e computador para criar um perfil sobre si. Ao utilizar este identificador digital, estes podem monitorizá-lo em vários sites diferentes.
+protections-panel-tracking-content = Os sites podem carregar anúncios, vídeos e outros conteúdos externos com códigos de rastreamento. O bloqueio de conteúdos de rastreamento pode ajudar os sites a carregar mais rapidamente, mas alguns botões, formulários e campos de autenticação podem não funcionar.
+protections-panel-social-media-trackers = As redes sociais colocam rastreadores em outros sites para monitorizar o que faz, vê e assiste na Internet. Isto permite que estas empresas de redes sociais saibam mais sobre si, para além do que partilha no seu perfil nas redes sociais.
+
+protections-panel-description-shim-allowed = Alguns rastreadores marcados abaixo foram parcialmente desbloqueados nesta página porque interagiu com os mesmos.
+protections-panel-description-shim-allowed-learn-more = Saber mais
+protections-panel-shim-allowed-indicator =
+ .tooltiptext = Rastreador parcialmente desbloqueado
+
+protections-panel-content-blocking-manage-settings =
+ .label = Gerir definições de proteção
+ .accesskey = G
+
+protections-panel-content-blocking-breakage-report-view =
+ .title = Reportar um site quebrado
+protections-panel-content-blocking-breakage-report-view-description = O bloqueio de determinados rastreadores pode causar problemas com alguns sites. Reportar estes problemas ajuda o { -brand-short-name } a ficar melhorar para todos. O envio deste relatório irá enviar um endereço e informação sobre as suas definições do navegador à Mozilla.
+protections-panel-content-blocking-breakage-report-view-collection-url = URL
+protections-panel-content-blocking-breakage-report-view-collection-url-label =
+ .aria-label = URL
+protections-panel-content-blocking-breakage-report-view-collection-comments = Opcional: descreva o problema
+protections-panel-content-blocking-breakage-report-view-collection-comments-label =
+ .aria-label = Opcional: descreva o problema
+protections-panel-content-blocking-breakage-report-view-cancel =
+ .label = Cancelar
+protections-panel-content-blocking-breakage-report-view-send-report =
+ .label = Enviar relatório
diff --git a/l10n-pt-PT/browser/browser/safeMode.ftl b/l10n-pt-PT/browser/browser/safeMode.ftl
new file mode 100644
index 0000000000..db4423a346
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/safeMode.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+troubleshoot-mode-window =
+ .title = Abrir { -brand-short-name } no modo de diagnóstico?
+ .style = max-width: 400px
+start-troubleshoot-mode =
+ .label = Abrir
+refresh-profile =
+ .label = Restaurar o { -brand-short-name }
+troubleshoot-mode-description = Utilize este modo especial do { -brand-short-name } para diagnosticar problemas. As suas extensões e personalizações serão temporariamente desativadas.
+skip-troubleshoot-refresh-profile = Como alternativa, pode também saltar o diagnóstico de problemas e tentar renovar o { -brand-short-name }
+# Shown on the safe mode dialog after multiple startup crashes.
+auto-safe-mode-description = O { -brand-short-name } encerrou inesperadamente ao iniciar. Isto poderá ter sido causado por extras ou outros problemas. Pode tentar resolver o seu problema ao diagnosticá-lo no modo de segurança.
diff --git a/l10n-pt-PT/browser/browser/safebrowsing/blockedSite.ftl b/l10n-pt-PT/browser/browser/safebrowsing/blockedSite.ftl
new file mode 100644
index 0000000000..67501f5e98
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/safebrowsing/blockedSite.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+safeb-blocked-phishing-page-title = Site decetivo adiante
+safeb-blocked-malware-page-title = Visitar este site pode danificar o seu computador
+safeb-blocked-unwanted-page-title = O site adiante pode conter programas prejudiciais
+safeb-blocked-harmful-page-title = O site adiante pode conter malware
+safeb-blocked-phishing-page-short-desc = O { -brand-short-name } bloqueou esta página porque poderia tentar levar-lhe a fazer algo perigoso como instalar software ou revelar informação pessoal como palavras-passe ou cartões de crédito.
+safeb-blocked-malware-page-short-desc = O { -brand-short-name } bloqueou esta página porque poderia tentar instalar software malicioso que poderia furtar ou apagar informação pessoal do seu computador.
+safeb-blocked-unwanted-page-short-desc = O { -brand-short-name } bloqueou esta página porque poderia tentar levar-lhe a instalar programas que prejudicam a sua experiência de navegação (por exemplo, ao mudar a sua página inicial ou mostrar anúncios extra em sites que visita).
+safeb-blocked-harmful-page-short-desc = O { -brand-short-name } bloqueou esta página porque poderia tentar instalar aplicações perigosas que furtam ou apagam a sua informação (por exemplo, fotos, palavras-passe, mensagens e cartões de crédito).
+safeb-palm-advisory-desc = Aconselhamento providenciado por { $advisoryname }
+safeb-palm-accept-label = Retroceder
+safeb-palm-see-details-label = Ver detalhes
+safeb-blocked-phishing-page-error-desc-override = { $sitename } foi reportado como um site decetivo. Pode reportar um problema de deteção ou ignorar o risco e ir para este site inseguro.
+safeb-blocked-phishing-page-error-desc-no-override = { $sitename } foi reportado como um site decetivo. Pode reportar um problema de deteção.
+safeb-blocked-phishing-page-learn-more = Saiba mais acerca de sites decetivos e phishing em www.antiphishing.org. Saiba mais acerca da proteção contra phishing e malware do { -brand-short-name } em support.mozilla.org.
+safeb-blocked-malware-page-error-desc-override-sumo = { $sitename } foi reportado por conter software malicioso. Pode ignorar o risco e proceder para este site inseguro.
+safeb-blocked-malware-page-error-desc-no-override-sumo = { $sitename } foi reportado por conter software malicioso
+safeb-blocked-malware-page-learn-more-sumo = Saiba mais sobre a proteção contra phishing e malware do { -brand-short-name } em support.mozilla.org.
+safeb-blocked-unwanted-page-error-desc-override = { $sitename } foi reportado como contendo software prejudicial. Pode ignorar o risco e ir para este site inseguro.
+safeb-blocked-unwanted-page-error-desc-no-override = { $sitename } foi reportado como contendo software prejudicial.
+safeb-blocked-unwanted-page-learn-more = Saiba mais acerca de software prejudicial e não-solicitado em política de software não-solicitado. Saiba mais acerca da proteção contra phishing e malware do { -brand-short-name } em support.mozilla.org.
+safeb-blocked-harmful-page-error-desc-override = { $sitename } foi reportado como contendo uma aplicação potencialmente prejudicial. Pode ignorar o risco e ir para este site inseguro.
+safeb-blocked-harmful-page-error-desc-no-override = { $sitename } foi reportado como contendo uma aplicação potencialmente prejudicial.
+safeb-blocked-harmful-page-learn-more = Saiba mais acerca da proteção contra phishing e malware do { -brand-short-name } em support.mozilla.org.
+safeb-palm-notdeceptive =
+ .label = Este não é um site decetivo…
+ .accesskey = d
diff --git a/l10n-pt-PT/browser/browser/sanitize.ftl b/l10n-pt-PT/browser/browser/sanitize.ftl
new file mode 100644
index 0000000000..32ccf7220a
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/sanitize.ftl
@@ -0,0 +1,114 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+sanitize-prefs =
+ .title = Definições para limpar histórico
+ .style = width: 34em
+
+sanitize-prefs2 =
+ .title = Definições para limpar histórico
+ .style = min-width: 34em
+
+sanitize-prefs-style =
+ .style = width: 17em
+
+dialog-title =
+ .title = Limpar histórico
+ .style = width: 34em
+
+# When "Time range to clear" is set to "Everything", this message is used for the
+# title instead of dialog-title.
+dialog-title-everything =
+ .title = Limpar todo o histórico
+ .style = width: 34em
+
+clear-data-settings-label = Quando fechado, o { -brand-short-name } deve limpar automaticamente todos(as)
+
+## clear-time-duration-prefix is followed by a dropdown list, with
+## values localized using clear-time-duration-value-* messages.
+## clear-time-duration-suffix is left empty in English, but can be
+## used in other languages to change the structure of the message.
+##
+## This results in English:
+## Time range to clear: (Last Hour, Today, etc.)
+
+clear-time-duration-prefix =
+ .value = Intervalo de tempo a limpar:{ " " }
+ .accesskey = t
+
+clear-time-duration-value-last-hour =
+ .label = da última hora
+
+clear-time-duration-value-last-2-hours =
+ .label = das últimas 2 horas
+
+clear-time-duration-value-last-4-hours =
+ .label = das últimas 4 horas
+
+clear-time-duration-value-today =
+ .label = de hoje
+
+clear-time-duration-value-everything =
+ .label = Tudo
+
+clear-time-duration-suffix =
+ .value = { "" }
+
+## These strings are used as section comments and checkboxes
+## to select the items to remove
+
+history-section-label = Histórico
+
+item-history-and-downloads =
+ .label = Histórico de navegação e de transferências
+ .accesskey = H
+
+item-cookies =
+ .label = Cookies
+ .accesskey = C
+
+item-active-logins =
+ .label = Inícios de sessão ativos
+ .accesskey = I
+
+item-cache =
+ .label = Cache
+ .accesskey = a
+
+item-form-search-history =
+ .label = Histórico de pesquisa
+ .accesskey = q
+
+data-section-label = Dados
+
+item-site-settings =
+ .label = Definições do site
+ .accesskey = D
+
+item-offline-apps =
+ .label = Dados offline de sites
+ .accesskey = o
+
+sanitize-everything-undo-warning = Esta ação não pode ser desfeita.
+
+window-close =
+ .key = w
+
+sanitize-button-ok =
+ .label = Limpar agora
+
+# The label for the default button between the user clicking it and the window
+# closing. Indicates the items are being cleared.
+sanitize-button-clearing =
+ .label = A limpar
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has not modified the default set
+# of history items to clear.
+sanitize-everything-warning = Todo o histórico será limpo.
+
+# Warning that appears when "Time range to clear" is set to "Everything" in Clear
+# Recent History dialog, provided that the user has modified the default set of
+# history items to clear.
+sanitize-selected-warning = Serão limpos todos os itens selecionados.
diff --git a/l10n-pt-PT/browser/browser/screenshots.ftl b/l10n-pt-PT/browser/browser/screenshots.ftl
new file mode 100644
index 0000000000..083225ff6b
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/screenshots.ftl
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+screenshot-toolbarbutton =
+ .label = Captura de ecrã
+ .tooltiptext = Tirar uma captura de ecrã
+screenshot-shortcut =
+ .key = S
+screenshots-instructions = Arraste ou clique na página para selecionar uma região. Pressione ESC para cancelar.
+screenshots-cancel-button = Cancelar
+screenshots-save-visible-button = Guardar visível
+screenshots-save-page-button = Guardar página completa
+screenshots-download-button = Transferir
+screenshots-download-button-tooltip = Transferir captura de ecrã
+screenshots-copy-button = Copiar
+screenshots-copy-button-tooltip = Copiar captura de ecrã para a área de transferência
+screenshots-download-button-title =
+ .title = Transferir captura de ecrã
+screenshots-copy-button-title =
+ .title = Copiar captura de ecrã para a área de transferência
+screenshots-cancel-button-title =
+ .title = Cancelar
+screenshots-retry-button-title =
+ .title = Tentar novamente a captura de ecrã
+screenshots-meta-key =
+ { PLATFORM() ->
+ [macos] ⌘
+ *[other] Ctrl
+ }
+screenshots-notification-link-copied-title = Ligação copiada
+screenshots-notification-link-copied-details = A ligação para a sua captura foi copiada para a área de transferência. Pressione { screenshots-meta-key }-V para colar.
+screenshots-notification-image-copied-title = Captura copiada
+screenshots-notification-image-copied-details = A sua captura foi copiada para a área de transferência. Pressione { screenshots-meta-key }-V para colar.
+screenshots-request-error-title = Fora de serviço.
+screenshots-request-error-details = Desculpe! Não conseguimos guardar a sua captura. Por favor tente novamente mais tarde.
+screenshots-connection-error-title = Não conseguimos ligar às suas capturas de ecrã.
+screenshots-connection-error-details = Por favor, verifique a sua ligação à Internet. Se consegue ligar-se à Internet, pode existir um problema temporário com o serviço { -screenshots-brand-name }.
+screenshots-login-error-details = Não conseguimos guardar a sua captura porque existe um problema com o serviço { -screenshots-brand-name }. Por favor tente novamente mais tarde.
+screenshots-unshootable-page-error-title = Não conseguimos capturar o ecrã nesta página.
+screenshots-unshootable-page-error-details = Esta não é uma página Web padrão, por isso não podemos tirar uma captura de ecrã da mesma.
+screenshots-empty-selection-error-title = A sua seleção é demasiado pequena
+screenshots-private-window-error-title = O { -screenshots-brand-name } está desativado no modo de navegação privada
+screenshots-private-window-error-details = Desculpe pela inconveniência. Estamos a trabalhar nesta funcionalidade para futuros lançamentos.
+screenshots-generic-error-title = Uau! Algo correu mal com o { -screenshots-brand-name }.
+screenshots-generic-error-details = Não temos a certeza do que acabou de acontecer. Importa-se de tentar novamente ou tirar uma captura de uma página diferente?
+screenshots-too-large-error-title = A sua captura de ecrã foi cortada porque era demasiado grande
+screenshots-too-large-error-details = Experimente selecionar uma região que tenha menos de 32700 pixels no lado maior ou 124900000 pixels de área total.
diff --git a/l10n-pt-PT/browser/browser/screenshotsOverlay.ftl b/l10n-pt-PT/browser/browser/screenshotsOverlay.ftl
new file mode 100644
index 0000000000..d26a49c96f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/screenshotsOverlay.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+screenshots-overlay-cancel-button = Cancelar
+screenshots-overlay-instructions = Arraste ou clique na página para selecionar uma região. Pressione ESC para cancelar.
+screenshots-overlay-download-button = Transferir
+screenshots-overlay-copy-button = Copiar
diff --git a/l10n-pt-PT/browser/browser/search.ftl b/l10n-pt-PT/browser/browser/search.ftl
new file mode 100644
index 0000000000..9c47817e5e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/search.ftl
@@ -0,0 +1,38 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These strings are used for errors when installing OpenSearch engines, e.g.
+## via "Add Search Engine" on the address bar or search bar.
+## Variables
+## $location-url (String) - the URL of the OpenSearch engine that was attempted to be installed.
+
+opensearch-error-duplicate-title = Erro de instalação
+opensearch-error-duplicate-desc = O { -brand-short-name } não pôde instalar o plugin de pesquisa de “{ $location-url }” porque já existe um motor com o mesmo nome.
+
+opensearch-error-format-title = Formato inválido
+opensearch-error-format-desc = O { -brand-short-name } não pôde instalar o motor de pesquisa de: { $location-url }
+
+opensearch-error-download-title = Erro ao transferir
+opensearch-error-download-desc = O { -brand-short-name } não conseguiu transferir o plug-in de pesquisa de: { $location-url }
+
+##
+
+searchbar-submit =
+ .tooltiptext = Submeter pesquisa
+
+# This string is displayed in the search box when the input field is empty
+searchbar-input =
+ .placeholder = Pesquisar
+
+searchbar-icon =
+ .tooltiptext = Pesquisa
+
+## Infobar shown when search engine is removed and replaced.
+## Variables
+## $oldEngine (String) - the search engine to be removed.
+## $newEngine (String) - the search engine to replace the removed search engine.
+
+removed-search-engine-message = O seu motor de pesquisa padrão foi alterado. O { $oldEngine } não está mais disponível como motor de pesquisa padrão no { -brand-short-name }. O { $newEngine } é agora o seu motor de pesquisa padrão. Para mudar para outro motor de pesquisa padrão, vá às configurações.
+remove-search-engine-button = OK
diff --git a/l10n-pt-PT/browser/browser/setDesktopBackground.ftl b/l10n-pt-PT/browser/browser/setDesktopBackground.ftl
new file mode 100644
index 0000000000..72be3c8276
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/setDesktopBackground.ftl
@@ -0,0 +1,40 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+set-desktop-background-window =
+ .title = Definir fundo do ambiente de trabalho
+
+set-desktop-background-accept =
+ .label = Definir fundo do ambiente de trabalho
+
+open-desktop-prefs =
+ .label = Abrir preferências do ambiente de trabalho
+
+set-background-preview-unavailable = Pré-visualização indisponível
+
+# This refers to the wallpaper "spanning" multiple monitors when the
+# user has more than one. Only some of the entire image will be on
+# each monitor. This should ideally match the wording in Windows' own
+# Desktop Background settings page.
+set-background-span =
+ .label = Expandir
+
+set-background-color = Cor:
+
+set-background-position = Posição:
+
+set-background-tile =
+ .label = Emparelhar
+
+set-background-center =
+ .label = Centro
+
+set-background-stretch =
+ .label = Esticar
+
+set-background-fill =
+ .label = Preencher
+
+set-background-fit =
+ .label = Ajustar
diff --git a/l10n-pt-PT/browser/browser/sidebarMenu.ftl b/l10n-pt-PT/browser/browser/sidebarMenu.ftl
new file mode 100644
index 0000000000..77c58e3eae
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/sidebarMenu.ftl
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+sidebar-menu-bookmarks =
+ .label = Marcadores
+
+sidebar-menu-history =
+ .label = Histórico
+
+sidebar-menu-synced-tabs =
+ .label = Separadores sincronizados
+
+sidebar-menu-close =
+ .label = Fechar barra lateral
+
+sidebar-close-button =
+ .tooltiptext = Fechar barra lateral
diff --git a/l10n-pt-PT/browser/browser/sitePermissions.ftl b/l10n-pt-PT/browser/browser/sitePermissions.ftl
new file mode 100644
index 0000000000..b289b42a1b
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/sitePermissions.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This string is used to display the option to open blocked popup(s) in site permission management panels.
+# Variables:
+# $count (String) - Number of blocked pop-ups
+site-permissions-open-blocked-popups =
+ { $count ->
+ [one] Abrir { $count } pop-up bloqueado…
+ *[other] Abrir { $count } pop-ups bloqueados…
+ }
diff --git a/l10n-pt-PT/browser/browser/spotlight.ftl b/l10n-pt-PT/browser/browser/spotlight.ftl
new file mode 100644
index 0000000000..795e1fb4b9
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/spotlight.ftl
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Dialog close button
+spotlight-dialog-close-button =
+ .title = Fechar
+ .aria-label = Fechar
+
+## Mobile download button strings
+
+spotlight-android-marketplace-button =
+ .title = Obtenha-o no Google Play
+spotlight-ios-marketplace-button =
+ .title = Transferir na App Store
+
+## Firefox Focus promo message strings
+
+spotlight-focus-promo-title = Obter o { -focus-brand-name }
+spotlight-focus-promo-subtitle = Digitalize o código QR para transferir.
+spotlight-focus-promo-qr-code =
+ .alt = Digitalize o código QR para obter o { -focus-brand-name }
diff --git a/l10n-pt-PT/browser/browser/sync.ftl b/l10n-pt-PT/browser/browser/sync.ftl
new file mode 100644
index 0000000000..eabf0c1a63
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/sync.ftl
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+fxa-toolbar-sync-syncing2 = A sincronizar…
+
+sync-disconnect-dialog-title2 = Desassociar?
+sync-disconnect-dialog-body = O { -brand-product-name } deixará de sincronizar a sua conta mas não irá eliminar quaisquer dados de navegação neste dispositivo.
+sync-disconnect-dialog-button = Desligar
+
+fxa-signout-dialog2-title = Sair da { -fxaccount-brand-name }?
+fxa-signout-dialog-body = Os dados sincronizados permanecerão na sua conta.
+fxa-signout-dialog2-button = Terminar sessão
+fxa-signout-dialog2-checkbox = Remover dados deste dispositivo (palavras-passe, histórico, marcadores, etc.)
+
+fxa-menu-sync-settings =
+ .label = Definições de sincronização
+fxa-menu-turn-on-sync =
+ .value = Ativar sincronização
+fxa-menu-turn-on-sync-default = Ativar sincronização
+
+fxa-menu-connect-another-device =
+ .label = Ligar outro dispositivo…
+
+# This is shown dynamically within "Send tab to device" in fxa menu.
+fxa-menu-send-tab-to-device-syncnotready =
+ .label = A sincronizar dispositivos…
+
+# This is shown within "Send tab to device" in fxa menu if account is not configured.
+fxa-menu-send-tab-to-device-description = Envie um separador instantaneamente para qualquer dispositivo em que tenha sessão iniciada.
+
+fxa-menu-sign-out =
+ .label = Terminar sessão…
diff --git a/l10n-pt-PT/browser/browser/syncedTabs.ftl b/l10n-pt-PT/browser/browser/syncedTabs.ftl
new file mode 100644
index 0000000000..8e60bc0d7d
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/syncedTabs.ftl
@@ -0,0 +1,73 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+synced-tabs-sidebar-title = Separadores sincronizados
+synced-tabs-sidebar-noclients-subtitle = Pretende ver os seus separadores de outros dispositivos aqui?
+synced-tabs-sidebar-intro = Ver uma lista de separadores dos seus outros dispositivos.
+synced-tabs-sidebar-unverified = A sua conta necessita de ser verificada.
+synced-tabs-sidebar-notabs = Sem separadores abertos
+synced-tabs-sidebar-open-settings = Abrir definições de sincronização
+synced-tabs-sidebar-tabsnotsyncing = Ative a sincronização de separadores para ver uma lista de separadores dos seus outros dispositivos.
+synced-tabs-sidebar-connect-another-device = Ligar outro dispositivo
+synced-tabs-sidebar-search =
+ .placeholder = Pesquisar separadores sincronizados
+
+## Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+## and/or devices in the list. The "Open" strings below should be translated
+## consistently with the equivalent strings for the bookmarks manager's context
+## menu. That menu is activated by right-clicking a bookmark in the Library
+## window. The bookmarks manager context's strings are located in places.ftl.
+
+synced-tabs-context-open =
+ .label = Abrir
+ .accesskey = A
+synced-tabs-context-open-in-new-tab =
+ .label = Abrir num novo separador
+ .accesskey = s
+synced-tabs-context-open-in-new-window =
+ .label = Abrir ligação numa nova janela
+ .accesskey = j
+synced-tabs-context-open-in-new-private-window =
+ .label = Abrir ligação numa nova janela privada
+ .accesskey = p
+synced-tabs-context-bookmark-single-tab =
+ .label = Adicionar este separador aos marcadores…
+ .accesskey = C
+synced-tabs-context-open-in-tab =
+ .label = Abrir num novo separador
+ .accesskey = r
+synced-tabs-context-open-in-container-tab =
+ .label = Abrir num novo separador contentor
+ .accesskey = c
+synced-tabs-context-open-in-window =
+ .label = Abrir numa nova janela
+ .accesskey = j
+synced-tabs-context-open-in-private-window =
+ .label = Abrir numa nova janela privada
+ .accesskey = p
+
+##
+
+# Displayed in the Synced Tabs sidebar's context menu when right-clicking tabs
+# and/or devices in the list. This string is for a menuitem equivalent to one in
+# the tab context menu (activated by right-clicking a tab in the tabstrip). That
+# string is located in tabContextMenu.ftl. So, this string should be translated
+# consistently with the "Bookmark Tab…" string there.
+synced-tabs-context-bookmark =
+ .label = Adicionar separador aos marcadores…
+ .accesskey = B
+synced-tabs-context-copy =
+ .label = Copiar
+ .accesskey = C
+synced-tabs-context-open-all-in-tabs =
+ .label = Abrir tudo em separadores
+ .accesskey = o
+synced-tabs-context-manage-devices =
+ .label = Gerir dispositivos…
+ .accesskey = d
+synced-tabs-context-sync-now =
+ .label = Sincronizar agora
+ .accesskey = S
+synced-tabs-fxa-sign-in = Iniciar sessão para sincronizar
+synced-tabs-turn-on-sync = Ativar sincronização
diff --git a/l10n-pt-PT/browser/browser/tabContextMenu.ftl b/l10n-pt-PT/browser/browser/tabContextMenu.ftl
new file mode 100644
index 0000000000..75f056ad47
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/tabContextMenu.ftl
@@ -0,0 +1,116 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tab-context-new-tab =
+ .label = Novo separador
+ .accesskey = v
+reload-tab =
+ .label = Recarregar separador
+ .accesskey = R
+select-all-tabs =
+ .label = Selecionar todos os separadores
+ .accesskey = S
+tab-context-play-tab =
+ .label = Reproduzir separador
+ .accesskey = e
+tab-context-play-tabs =
+ .label = Reproduzir separadores
+ .accesskey = z
+duplicate-tab =
+ .label = Duplicar separador
+ .accesskey = D
+duplicate-tabs =
+ .label = Duplicar separadores
+ .accesskey = D
+# The following string is displayed on a menuitem that will close the tabs from the start of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Left" and in right-to-left languages this should use "Right".
+close-tabs-to-the-start =
+ .label = Fechar separadores à esquerda
+ .accesskey = e
+# The following string is displayed on a menuitem that will close the tabs from the end of the tabstrip to the currently targeted tab (excluding the currently targeted and any other selected tabs).
+# In left-to-right languages this should use "Right" and in right-to-left languages this should use "Left".
+close-tabs-to-the-end =
+ .label = Fechar separadores à direita
+ .accesskey = i
+close-other-tabs =
+ .label = Fechar outros separadores
+ .accesskey = o
+reload-tabs =
+ .label = Recarregar separadores
+ .accesskey = R
+pin-tab =
+ .label = Fixar separador
+ .accesskey = p
+unpin-tab =
+ .label = Desafixar separador
+ .accesskey = p
+pin-selected-tabs =
+ .label = Fixar separadores
+ .accesskey = p
+unpin-selected-tabs =
+ .label = Desafixar separadores
+ .accesskey = p
+bookmark-selected-tabs =
+ .label = Adicionar separadores aos marcadores…
+ .accesskey = m
+bookmark-tab =
+ .label = Adicionar separador aos marcadores
+ .accesskey = m
+tab-context-bookmark-tab =
+ .label = Adicionar separador aos marcadores…
+ .accesskey = B
+tab-context-open-in-new-container-tab =
+ .label = Abrir num novo separador contentor
+ .accesskey = e
+move-to-start =
+ .label = Mover para o início
+ .accesskey = i
+move-to-end =
+ .label = Mover para o fim
+ .accesskey = f
+move-to-new-window =
+ .label = Mover para nova janela
+ .accesskey = j
+tab-context-close-multiple-tabs =
+ .label = Fechar múltiplos separadores
+ .accesskey = m
+tab-context-share-url =
+ .label = Partilhar
+ .accesskey = h
+
+## Variables:
+## $tabCount (Number): the number of tabs that are affected by the action.
+
+tab-context-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] Reabrir separador fechado
+ [one] Reabrir separador fechado
+ *[other] Reabrir separadores fechados
+ }
+ .accesskey = o
+tab-context-close-n-tabs =
+ .label =
+ { $tabCount ->
+ [1] Fechar separador
+ [one] Fechar { $tabCount } separadores
+ *[other] Fechar { $tabCount } separadores
+ }
+ .accesskey = c
+tab-context-move-tabs =
+ .label =
+ { $tabCount ->
+ [1] Mover separador
+ [one] Mover separador
+ *[other] Mover separadores
+ }
+ .accesskey = v
+
+tab-context-send-tabs-to-device =
+ .label =
+ { $tabCount ->
+ [one] Enviar separador para dispositivo
+ *[other] Enviar { $tabCount } separadores para dispositivo
+ }
+ .accesskey = n
diff --git a/l10n-pt-PT/browser/browser/tabbrowser.ftl b/l10n-pt-PT/browser/browser/tabbrowser.ftl
new file mode 100644
index 0000000000..98765ff0a9
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/tabbrowser.ftl
@@ -0,0 +1,141 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tabbrowser-empty-tab-title = Novo separador
+tabbrowser-empty-private-tab-title = Novo separador privado
+tabbrowser-menuitem-close-tab =
+ .label = Fechar separador
+tabbrowser-menuitem-close =
+ .label = Fechar
+# Displayed as a tooltip on container tabs
+# Variables:
+# $title (String): the title of the current tab.
+# $containerName (String): the name of the current container.
+tabbrowser-container-tab-title = { $title } - { $containerName }
+# Variables:
+# $title (String): the title of the current tab.
+tabbrowser-tab-tooltip =
+ .label = { $title }
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-close-tabs-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Fechar separador
+ *[other] Fechar { $tabCount } separadores
+ }
+
+## Tooltips for tab audio control
+## Variables:
+## $tabCount (Number): The number of tabs that will be affected.
+
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Mute tab".
+tabbrowser-mute-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Silenciar som do separador ({ $shortcut })
+ *[other] Silenciar som dos { $tabCount } separadores ({ $shortcut })
+ }
+# Variables:
+# $shortcut (String): The keyboard shortcut for "Unmute tab".
+tabbrowser-unmute-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Repor som do separador ({ $shortcut })
+ *[other] Repor som dos { $tabCount } separadores ({ $shortcut })
+ }
+tabbrowser-mute-tab-audio-background-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Silenciar som do separador
+ *[other] Silenciar som dos { $tabCount } separadores
+ }
+tabbrowser-unmute-tab-audio-background-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Repor som do separador
+ *[other] Repor som dos { $tabCount } separadores
+ }
+tabbrowser-unblock-tab-audio-tooltip =
+ .label =
+ { $tabCount ->
+ [one] Reproduzir separador
+ *[other] Reproduzir { $tabCount } separadores
+ }
+
+## Confirmation dialog when closing a window with more than one tab open,
+## or when quitting when only one window is open.
+
+# The singular form is not considered since this string is used only for multiple tabs.
+# Variables:
+# $tabCount (Number): The number of tabs that will be closed.
+tabbrowser-confirm-close-tabs-title = Fechar { $tabCount } separadores?
+tabbrowser-confirm-close-tabs-button = Fechar separadores
+tabbrowser-confirm-close-tabs-checkbox = Confirmar antes de fechar múltiplos separadores
+
+## Confirmation dialog when quitting using the menu and multiple windows are open.
+
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows.
+# Variables:
+# $windowCount (Number): The number of windows that will be closed.
+tabbrowser-confirm-close-windows-title = Fechar { $windowCount } janelas?
+tabbrowser-confirm-close-windows-button =
+ { PLATFORM() ->
+ [windows] Fechar e sair
+ *[other] Fechar e sair
+ }
+
+## Confirmation dialog when quitting using the keyboard shortcut (Ctrl/Cmd+Q)
+## Windows does not show a prompt on quit when using the keyboard shortcut by default.
+
+tabbrowser-confirm-close-tabs-with-key-title = Fechar janela e sair do { -brand-short-name }?
+tabbrowser-confirm-close-tabs-with-key-button = Sair de { -brand-short-name }
+# Variables:
+# $quitKey (String): the text of the keyboard shortcut for quitting.
+tabbrowser-confirm-close-tabs-with-key-checkbox = Confirmar antes de sair com { $quitKey }
+
+## Confirmation dialog when opening multiple tabs simultaneously
+
+tabbrowser-confirm-open-multiple-tabs-title = Confirmar abertura
+# Variables:
+# $tabCount (Number): The number of tabs that will be opened.
+tabbrowser-confirm-open-multiple-tabs-message =
+ { $tabCount ->
+ *[other] Vai abrir { $tabCount } separadores. Isto pode tornar o { -brand-short-name } lento enquanto as páginas carregam. Tem a certeza que pretende continuar?
+ }
+tabbrowser-confirm-open-multiple-tabs-button = Abrir separadores
+tabbrowser-confirm-open-multiple-tabs-checkbox = Avisar-me quando abrir múltiplos separadores poderá tornar o { -brand-short-name } lento
+
+## Confirmation dialog for enabling caret browsing
+
+tabbrowser-confirm-caretbrowsing-title = Navegação por cursor
+tabbrowser-confirm-caretbrowsing-message = A tecla F7 ativa ou desativa a navegação por cursor. Esta característica coloca um cursor móvel nas páginas da Internet, permitindo-lhe selecionar texto com o teclado. Quer ativar a navegação por cursor?
+tabbrowser-confirm-caretbrowsing-checkbox = Não voltar a mostrar esta janela.
+
+##
+
+# Variables:
+# $domain (String): URL of the page that is trying to steal focus.
+tabbrowser-allow-dialogs-to-get-focus =
+ .label = Permitir que notificações como esta de { $domain } o encaminhei para o respetivo separador
+tabbrowser-customizemode-tab-title = Personalizar o { -brand-short-name }
+
+## Context menu buttons, of which only one will be visible at a time
+
+tabbrowser-context-mute-tab =
+ .label = Silenciar som do separador
+ .accesskey = m
+tabbrowser-context-unmute-tab =
+ .label = Repor som do separador
+ .accesskey = m
+# The accesskey should match the accesskey for tabbrowser-context-mute-tab
+tabbrowser-context-mute-selected-tabs =
+ .label = Silenciar som dos separadores
+ .accesskey = m
+# The accesskey should match the accesskey for tabbrowser-context-unmute-tab
+tabbrowser-context-unmute-selected-tabs =
+ .label = Repor som dos separadores
+ .accesskey = m
diff --git a/l10n-pt-PT/browser/browser/textRecognition.ftl b/l10n-pt-PT/browser/browser/textRecognition.ftl
new file mode 100644
index 0000000000..2771dfeb94
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/textRecognition.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Text recognition works through a modal that presents the text that is found
+## in an image, and copies the results to the clipboard.
+
+text-recognition-modal-searching-title = Pesquisar texto numa imagem…
+text-recognition-modal-results-title = Texto da imagem copiado
+text-recognition-modal-no-results-title = Desculpe, não conseguimos extrair nenhum texto. Tente uma imagem diferente. Saber mais.
+text-recognition-modal-close-button = Fechar
+
+# The title of the the modal is only available to screen readers.
+text-recognition-modal-accessible-modal-title = Resultados da extração de texto
diff --git a/l10n-pt-PT/browser/browser/toolbarContextMenu.ftl b/l10n-pt-PT/browser/browser/toolbarContextMenu.ftl
new file mode 100644
index 0000000000..19ca05290f
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/toolbarContextMenu.ftl
@@ -0,0 +1,83 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+toolbar-context-menu-new-tab =
+ .label = Novo separador
+ .accesskey = v
+toolbar-context-menu-reload-selected-tab =
+ .label = Recarregar separador selecionado
+ .accesskey = R
+toolbar-context-menu-reload-selected-tabs =
+ .label = Recarregar separadores selecionados
+ .accesskey = R
+toolbar-context-menu-bookmark-selected-tab =
+ .label = Adicionar separador selecionado aos marcadores…
+ .accesskey = s
+toolbar-context-menu-bookmark-selected-tabs =
+ .label = Adicionar separadores selecionados aos marcadores…
+ .accesskey = s
+toolbar-context-menu-select-all-tabs =
+ .label = Selecionar todos os separadores
+ .accesskey = S
+toolbar-context-menu-reopen-closed-tabs =
+ .label =
+ { $tabCount ->
+ [1] Reabrir separador fechado
+ [one] Reabrir separador fechado
+ *[other] Reabrir separadores fechados
+ }
+ .accesskey = o
+toolbar-context-menu-manage-extension =
+ .label = Gerir extensão
+ .accesskey = e
+toolbar-context-menu-remove-extension =
+ .label = Remover extensão
+ .accesskey = v
+# This label is used in the extensions toolbar buttons context menus,
+# a user can use this command to submit to Mozilla an abuse report
+# related to that extension. "Report" is a verb.
+toolbar-context-menu-report-extension =
+ .label = Reportar extensão
+ .accesskey = o
+# Can appear on the same context menu as toolbar-context-menu-menu-bar-cmd
+# ("Menu Bar") and personalbarCmd ("Bookmarks Toolbar"), so they should
+# have different access keys.
+toolbar-context-menu-pin-to-overflow-menu =
+ .label = Afixar ao menu de excesso
+ .accesskey = A
+toolbar-context-menu-auto-hide-downloads-button-2 =
+ .label = Ocultar botão quando vazio
+ .accesskey = z
+toolbar-context-menu-always-open-downloads-panel =
+ .label = Mostrar painel quando a transferência começar
+ .accesskey = M
+toolbar-context-menu-remove-from-toolbar =
+ .label = Remover da barra de ferramentas
+ .accesskey = R
+toolbar-context-menu-view-customize-toolbar =
+ .label = Personalizar…
+ .accesskey = P
+toolbar-context-menu-view-customize-toolbar-2 =
+ .label = Personalizar barra de ferramentas…
+ .accesskey = f
+# This is only ever shown when toolbar-context-menu-pin-to-overflow-menu
+# is hidden, so they can share access keys.
+toolbar-context-menu-pin-to-toolbar =
+ .label = Afixar na barra de ferramentas
+ .accesskey = f
+toolbar-context-menu-bookmarks-toolbar-always-show-2 =
+ .label = Mostrar sempre
+ .accesskey = r
+toolbar-context-menu-bookmarks-toolbar-never-show-2 =
+ .label = Nunca mostrar
+ .accesskey = N
+toolbar-context-menu-bookmarks-toolbar-on-new-tab-2 =
+ .label = Mostrar apenas em novo separador
+ .accesskey = M
+toolbar-context-menu-bookmarks-show-other-bookmarks =
+ .label = Mostrar outros marcadores
+ .accesskey = r
+toolbar-context-menu-menu-bar-cmd =
+ .toolbarname = Barra de menu
+ .accesskey = m
diff --git a/l10n-pt-PT/browser/browser/touchbar/touchbar.ftl b/l10n-pt-PT/browser/browser/touchbar/touchbar.ftl
new file mode 100644
index 0000000000..e8c9783c3e
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/touchbar/touchbar.ftl
@@ -0,0 +1,38 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Strings in this file are used to localize button titles displayed on the
+# MacBook Touch Bar.
+back = Retroceder
+forward = Avançar
+reload = Recarregar
+home = Início
+fullscreen = Ecrã completo
+touchbar-fullscreen-exit = Sair do ecrã completo
+find = Localizar
+new-tab = Novo separador
+add-bookmark = Adicionar marcador
+reader-view = Vista de leitura
+# Meant to match the string displayed in an empty URL bar.
+open-location = Pesquisar ou introduzir endereço
+share = Partilhar
+close-window = Fechar janela
+open-sidebar = Barras laterais
+
+# This string describes shortcuts for search.
+search-popover = Atalhos de pesquisa
+# Describes searches limited to a specific scope
+# (e.g. searching only in history).
+search-search-in = Pesquisar em:
+
+## Various categories of shortcuts for search.
+
+search-bookmarks = Marcadores
+search-history = Histórico
+search-opentabs = Separadores abertos
+search-tags = Etiquetas
+search-titles = Títulos
+
+##
+
diff --git a/l10n-pt-PT/browser/browser/translationNotification.ftl b/l10n-pt-PT/browser/browser/translationNotification.ftl
new file mode 100644
index 0000000000..cf2d91be23
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/translationNotification.ftl
@@ -0,0 +1,74 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## These 2 strings are used to construct a sentence that contains a dropdown
+## showing the detected language of the current web page.
+## In en-US it looks like this:
+## This page is in [detected language] Translate this page?
+## "detected language" here is a language name coming from the
+## toolkit/intl/languageNames.ftl file; for some locales it may not be in
+## the correct grammar case to keep the same structure of the original
+## sentence.
+
+translation-notification-this-page-is-in =
+ .value = Esta página está em
+translation-notification-translate-this-page =
+ .value = Traduzir esta página?
+
+##
+
+translation-notification-translate-button =
+ .label = Traduzir
+translation-notification-not-now-button =
+ .label = Agora não
+translation-notification-translating-content =
+ .value = A traduzir o conteúdo da página…
+
+## These 3 strings are used to construct a sentence that contains 2 dropdowns
+## showing the source and target language of a translated web page.
+## In en-US it looks like this:
+## This page has been translated from [from language] to [to language]
+## "from language" and "to language" here are language names coming from the
+## toolkit/intl/languageNames.ftl file; for some locales they may not be in
+## the correct grammar case to keep the same structure of the original
+## sentence.
+
+translation-notification-translated-from =
+ .value = Esta página foi traduzida de
+translation-notification-translated-to =
+ .value = para
+# This string (empty in en-US) is for locales that need to display some text
+# after the second drop down for the sentence to be grammatically correct.
+translation-notification-translated-to-suffix =
+ .value = { "" }
+
+##
+
+translation-notification-show-original-button =
+ .label = Mostrar original
+translation-notification-show-translation-button =
+ .label = Mostrar tradução
+translation-notification-error-translating =
+ .value = Ocorreu um erro ao traduzir esta página.
+translation-notification-try-again-button =
+ .label = Tentar novamente
+translation-notification-service-unavailable =
+ .value = A tradução ainda não está disponível. Por favor, volte a tentar mais tarde.
+translation-notification-options-menu =
+ .label = Opções
+
+## The accesskey values used here should not clash with each other
+
+# Variables:
+# $langName (String): a language name coming from the toolkit/intl/languageNames.ftl file.
+translation-notification-options-never-for-language =
+ .label = Nunca traduzir { $langName }
+ .accesskey = N
+translation-notification-options-never-for-site =
+ .label = Nunca traduzir este site
+ .accesskey = e
+translation-notification-options-preferences =
+ .label = Preferências da tradução
+ .accesskey = t
diff --git a/l10n-pt-PT/browser/browser/unifiedExtensions.ftl b/l10n-pt-PT/browser/browser/unifiedExtensions.ftl
new file mode 100644
index 0000000000..5ab4abd6de
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/unifiedExtensions.ftl
@@ -0,0 +1,34 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings appear in the Unified Extensions panel.
+
+
+## Panel
+
+unified-extensions-header-title = Extensões
+unified-extensions-manage-extensions =
+ .label = Gerir extensões
+
+## An extension in the main list
+
+# Each extension in the unified extensions panel (list) has a secondary button
+# to open a context menu. This string is used for each of these buttons.
+# Variables:
+# $extensionName (String) - Name of the extension
+unified-extensions-item-open-menu =
+ .aria-label = Abrir o menu para { $extensionName }
+unified-extensions-item-message-manage = Gerir extensão
+
+## Extension's context menu
+
+unified-extensions-context-menu-pin-to-toolbar =
+ .label = Afixar na barra de ferramentas
+unified-extensions-context-menu-manage-extension =
+ .label = Gerir Extensão
+unified-extensions-context-menu-remove-extension =
+ .label = Remover Extensão
+unified-extensions-context-menu-report-extension =
+ .label = Reportar Extensão
diff --git a/l10n-pt-PT/browser/browser/webauthnDialog.ftl b/l10n-pt-PT/browser/browser/webauthnDialog.ftl
new file mode 100644
index 0000000000..ae82f1bcaf
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/webauthnDialog.ftl
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $retriesLeft (Number): number of tries left
+webauthn-pin-invalid-prompt =
+ { $retriesLeft ->
+ [0] PIN incorreto! Por favor, insira o PIN correto para o seu dispositivo.
+ [one] PIN incorreto! Por favor, insira o PIN correto para o seu dispositivo. Tem mais { $retriesLeft } tentativa.
+ *[other] PIN incorreto! Por favor, insira o PIN correto para o seu dispositivo. Tem mais { $retriesLeft } tentativas.
+ }
+webauthn-pin-required-prompt = Por favor, insira o PIN para o seu dispositivo.
diff --git a/l10n-pt-PT/browser/browser/webrtcIndicator.ftl b/l10n-pt-PT/browser/browser/webrtcIndicator.ftl
new file mode 100644
index 0000000000..8b782358a1
--- /dev/null
+++ b/l10n-pt-PT/browser/browser/webrtcIndicator.ftl
@@ -0,0 +1,218 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# Note: This is currently placed under browser/base/content so that we can
+# get the strings to appear without having our localization community need
+# to go through and translate everything. Once these strings are ready for
+# translation, we'll move it to the locales folder.
+
+
+## These strings are used so that the window has a title in tools that
+## enumerate/look for window titles. It is not normally visible anywhere.
+
+webrtc-indicator-title = { -brand-short-name } - Indicador de partilha
+webrtc-indicator-window =
+ .title = { -brand-short-name } - Indicador de partilha
+
+## Used as list items in sharing menu
+
+webrtc-item-camera = câmara
+webrtc-item-microphone = microfone
+webrtc-item-audio-capture = áudio
+webrtc-item-application = aplicação
+webrtc-item-screen = ecrã
+webrtc-item-window = janela
+webrtc-item-browser = separador
+
+##
+
+# This is used for the website origin for the sharing menu if no readable origin could be deduced from the URL.
+webrtc-sharing-menuitem-unknown-host = Origem desconhecida
+# Variables:
+# $origin (String): The website origin (e.g. www.mozilla.org)
+# $itemList (String): A formatted list of items (e.g. "camera, microphone and tab audio")
+webrtc-sharing-menuitem =
+ .label = { $origin } ({ $itemList })
+webrtc-sharing-menu =
+ .label = Separadores de partilha de dispositivos
+ .accesskey = d
+webrtc-sharing-window = Está a partilhar uma janela de outra aplicação
+webrtc-sharing-browser-window = Está a partilhar o { -brand-short-name }.
+webrtc-sharing-screen = Está a partilhar a totalidade do seu ecrã.
+webrtc-stop-sharing-button = Parar de partilhar
+webrtc-microphone-unmuted =
+ .title = Desligar o microfone
+webrtc-microphone-muted =
+ .title = Ligar o microfone
+webrtc-camera-unmuted =
+ .title = Desligar a câmara
+webrtc-camera-muted =
+ .title = Ligar a câmara
+webrtc-minimize =
+ .title = Minimizar indicador
+
+## These strings will display as a tooltip on supported systems where we show
+## device sharing state in the OS notification area. We do not use these strings
+## on macOS, as global menu bar items do not have native tooltips.
+
+webrtc-camera-system-menu =
+ .label = Está a partilhar a sua câmara. Clique para controlar a partilha.
+webrtc-microphone-system-menu =
+ .label = Está a partilhar o seu microfone. Clique para controlar a partilha.
+webrtc-screen-system-menu =
+ .label = Está a partilhar uma janela ou ecrã. Clique para controlar a partilha.
+
+## Tooltips used by the legacy global sharing indicator
+
+webrtc-indicator-sharing-camera-and-microphone =
+ .tooltiptext = A sua câmara e microfone estão a ser partilhados. Clique para controlar a partilha.
+webrtc-indicator-sharing-camera =
+ .tooltiptext = A sua câmara está a ser partilhada. Clique para controlar a partilha.
+webrtc-indicator-sharing-microphone =
+ .tooltiptext = O seu microfone está a ser partilhado. Clique para controlar a partilha.
+webrtc-indicator-sharing-application =
+ .tooltiptext = Está a ser partilhada uma aplicação. Clique para controlar a partilha.
+webrtc-indicator-sharing-screen =
+ .tooltiptext = O seu ecrã está a ser partilhado. Clique para controlar a partilha.
+webrtc-indicator-sharing-window =
+ .tooltiptext = Uma janela está a ser partilhada. Clique para controlar a partilha.
+webrtc-indicator-sharing-browser =
+ .tooltiptext = Um separador está a ser partilhado. Clique para controlar a partilha.
+
+## These strings are only used on Mac for menus attached to icons
+## near the clock on the mac menubar.
+## Variables:
+## $streamTitle (String): the title of the tab using the share.
+## $tabCount (Number): the title of the tab using the share.
+
+webrtc-indicator-menuitem-control-sharing =
+ .label = Controlar partilha
+webrtc-indicator-menuitem-control-sharing-on =
+ .label = Controlar partilha em “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-camera-with =
+ .label = Partilhar câmara com “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-camera-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar câmara com { $tabCount } separador
+ *[other] A partilhar câmara com { $tabCount } separadores
+ }
+webrtc-indicator-menuitem-sharing-microphone-with =
+ .label = A partilhar microfone com “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-microphone-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar microfone com { $tabCount } separador
+ *[other] A partilhar microfone com { $tabCount }separadores
+ }
+webrtc-indicator-menuitem-sharing-application-with =
+ .label = A partilhar uma aplicação com “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-application-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar uma aplicação com { $tabCount } separador
+ *[other] A partilhar uma aplicação com { $tabCount } separadores
+ }
+webrtc-indicator-menuitem-sharing-screen-with =
+ .label = A partilhar ecrã com “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-screen-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar ecrã com { $tabCount } separador
+ *[other] A partilhar ecrã com { $tabCount } separadores
+ }
+webrtc-indicator-menuitem-sharing-window-with =
+ .label = A partilhar uma janela com “{ $streamTitle }”
+webrtc-indicator-menuitem-sharing-window-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar uma janela com { $tabCount } separador
+ *[other] A partilhar janelas com { $tabCount } separadores
+ }
+webrtc-indicator-menuitem-sharing-browser-with =
+ .label = A partilhar um separador com “{ $streamTitle }”
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtc-indicator-menuitem-sharing-browser-with-n-tabs =
+ .label =
+ { $tabCount ->
+ [one] A partilhar um separador com { $tabCount } separador
+ *[other] A partilhar separadores com { $tabCount } separadores
+ }
+
+## Variables:
+## $origin (String): the website origin (e.g. www.mozilla.org).
+
+webrtc-allow-share-audio-capture = Permitir que { $origin } ouça o áudio deste separador?
+webrtc-allow-share-camera = Permitir que { $origin } utilize a sua câmara?
+webrtc-allow-share-microphone = Permitir que { $origin } utilize o seu microfone?
+webrtc-allow-share-screen = Permitir que { $origin } veja o seu ecrã?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker = Permitir que { $origin } utilize outras colunas?
+webrtc-allow-share-camera-and-microphone = Permitir que { $origin } utilize a sua câmara e microfone?
+webrtc-allow-share-camera-and-audio-capture = Permitir que { $origin } utilize a sua câmara e ouça o áudio deste separador?
+webrtc-allow-share-screen-and-microphone = Permitir que { $origin } utilize o seu microfone e veja o seu ecrã?
+webrtc-allow-share-screen-and-audio-capture = Permitir que { $origin } ouça o áudio deste separador e veja o seu ecrã?
+
+## Variables:
+## $origin (String): the first party origin.
+## $thirdParty (String): the third party origin.
+
+webrtc-allow-share-audio-capture-unsafe-delegation = Permitir que { $origin } dê à { $thirdParty } permissões para ouvir o áudio deste separador?
+webrtc-allow-share-camera-unsafe-delegation = Permitir que { $origin } forneça acesso à sua câmara a { $thirdParty }?
+webrtc-allow-share-microphone-unsafe-delegations = Permitir que { $origin } forneça acesso ao seu microfone a { $thirdParty }?
+webrtc-allow-share-microphone-unsafe-delegation = Permitir que { $origin } forneça acesso ao seu microfone a { $thirdParty }?
+webrtc-allow-share-screen-unsafe-delegation = Permitir que { $origin } forneça acesso para ver o seu ecrã a { $thirdParty }?
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+webrtc-allow-share-speaker-unsafe-delegation = Permitir que { $origin } forneça acesso a outras colunas a { $thirdParty }?
+webrtc-allow-share-camera-and-microphone-unsafe-delegation = Permitir que { $origin } forneça acesso à sua câmara e ao seu microfone a { $thirdParty }?
+webrtc-allow-share-camera-and-audio-capture-unsafe-delegation = Permitir que { $origin } forneça acesso à sua câmara e ouvir o áudio deste separador a { $thirdParty }?
+webrtc-allow-share-screen-and-microphone-unsafe-delegation = Permite que { $origin } forneça acesso ao seu microfone e a visualizar o seu ecrã a { $thirdParty }?
+webrtc-allow-share-screen-and-audio-capture-unsafe-delegation = Permitir que { $origin } forneça acesso para ouvir o áudio deste separador e a visualizar o seu ecrã a { $thirdParty }?
+
+##
+
+webrtc-share-screen-warning = Apenas partilhe ecrãs com sites em que confia. Partilhar pode permitir que sites enganadores naveguem por si e que roubem os seus dados privados.
+webrtc-share-browser-warning = Apenas partilhe o { -brand-short-name } com sites em que confia. Partilhar pode permitir que sites enganadores naveguem por si e que roubem os seus dados privados.
+webrtc-share-screen-learn-more = Saber mais
+webrtc-pick-window-or-screen = Selecionar janela ou ecrã
+webrtc-share-entire-screen = Ecrã completo
+webrtc-share-pipe-wire-portal = Utilizar definições do sistema operativo
+# Variables:
+# $monitorIndex (String): screen number (digits 1, 2, etc).
+webrtc-share-monitor = Ecrã { $monitorIndex }
+# Variables:
+# $windowCount (Number): the number of windows currently displayed by the application.
+# $appName (String): the name of the application.
+webrtc-share-application =
+ { $windowCount ->
+ [one] { $appName } ({ $windowCount } janela)
+ *[other] { $appName } ({ $windowCount } janelas)
+ }
+
+## These buttons are the possible answers to the various prompts in the "webrtc-allow-share-*" strings.
+
+webrtc-action-allow =
+ .label = Permitir
+ .accesskey = P
+webrtc-action-block =
+ .label = Bloquear
+ .accesskey = B
+webrtc-action-always-block =
+ .label = Bloquear sempre
+ .accesskey = m
+webrtc-action-not-now =
+ .label = Agora não
+ .accesskey = N
+
+##
+
+webrtc-remember-allow-checkbox = Memorizar esta decisão
+webrtc-mute-notifications-checkbox = Silenciar notificações de sites durante a partilha
+webrtc-reason-for-no-permanent-allow-screen = O { -brand-short-name } não pode permitir acesso permanente ao seu ecrã.
+webrtc-reason-for-no-permanent-allow-audio = { -brand-short-name } não pode permitir acesso permanente ao áudio do separador sem lhe perguntar qual separador partilhar.
+webrtc-reason-for-no-permanent-allow-insecure = A sua ligação a este site não é segura. Para lhe proteger, o { -brand-short-name } irá apenas permitir acesso para esta sessão.
diff --git a/l10n-pt-PT/browser/chrome/browser/accounts.properties b/l10n-pt-PT/browser/chrome/browser/accounts.properties
new file mode 100644
index 0000000000..21ff390dda
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/accounts.properties
@@ -0,0 +1,112 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reconnectDescription) - %S = Email address of user's Firefox Account
+reconnectDescription = Reassociar %S
+
+# LOCALIZATION NOTE (verifyDescription) - %S = Email address of user's Firefox Account
+verifyDescription = Verificar %S
+
+# These strings are shown in a desktop notification after the
+# user requests we resend a verification email.
+verificationSentTitle = Verificação enviada
+# LOCALIZATION NOTE (verificationSentBody) - %S = Email address of user's Firefox Account
+verificationSentBody = A ligação de confirmação foi enviada para %S.
+verificationNotSentTitle = Verificação não enviada
+verificationNotSentBody = Não foi possível enviar uma mensagem de verificação por esta altura, por favor, tente novamente mais tarde.
+
+# LOCALIZATION NOTE (deviceConnDisconnTitle) - the title shown in a notification
+# when either this device or another device has connected to, or disconnected
+# from, a Firefox Account.
+deviceConnDisconnTitle = Conta Firefox
+
+# LOCALIZATION NOTE (otherDeviceConnectedBody, otherDeviceConnectedBody.noDeviceName)
+# These strings are used in a notification shown when a new device joins the
+# Firefox account.
+# %S is the name of the new device; otherDeviceConnectedBody.noDeviceName is shown
+# instead of otherDeviceConnectedBody when the name is not known.
+otherDeviceConnectedBody = Este computador está agora ligado com %S.
+otherDeviceConnectedBody.noDeviceName = Este computador está agora ligado com um novo dispositivo.
+
+# LOCALIZATION NOTE (thisDeviceConnectedBody) - used in a notification shown
+# after a Firefox Account is connected to the current device.
+thisDeviceConnectedBody = Iniciou a sessão com sucesso
+
+# LOCALIZATION NOTE (thisDeviceDisconnectedBody) - used in a notification shown
+# after the Firefox Account was disconnected remotely.
+thisDeviceDisconnectedBody = Este computador foi desligado.
+
+# LOCALIZATION NOTE (sendToAllDevices.menuitem)
+# Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+sendToAllDevices.menuitem = Enviar para todos os dispositivos
+
+# LOCALIZATION NOTE (manageDevices.menuitem)
+# Displayed in the Send Tab/Page/Link to Device context menu when right clicking a tab, a page or a link.
+manageDevices.menuitem = Gerir dispositivos…
+
+# LOCALIZATION NOTE (sendTabToDevice.unconfigured, sendTabToDevice.unconfigured.label2)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account is unconfigured. Redirects to a marketing page.
+sendTabToDevice.unconfigured.label2 = Sem sessão iniciada
+sendTabToDevice.unconfigured = Saber acerca do envio de separadores…
+
+# LOCALIZATION NOTE (sendTabToDevice.signintofxa)
+# Displayed in the Send Tabs context menu and the page action panel when FxA is not
+# configured. Allows users to immediately sign into FxA via the preferences.
+# %S is replaced by brandProductName.
+sendTabToDevice.signintofxa = Inicie sessão no %S…
+
+# LOCALIZATION NOTE (sendTabToDevice.singledevice, sendTabToDevice.connectdevice,
+# sendTabToDevice.singledevice.status)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account has only 1 device. The sendTabToDevice.singledevice link
+# redirects to a marketing page, the sendTabToDevice.connectdevice redirects
+# to an FxAccounts page that tells to you to connect another device.
+sendTabToDevice.singledevice.status = Sem dispositivos ligados
+sendTabToDevice.singledevice = Saber acerca de enviar separadores…
+sendTabToDevice.connectdevice = Ligar outro dispositivo…
+
+# LOCALIZATION NOTE (sendTabToDevice.verify, sendTabToDevice.verify.status)
+# Displayed in the Send Tabs context menu when right clicking a tab, a page or a link
+# and the Sync account is unverified. Redirects to the Sync preferences page.
+sendTabToDevice.verify.status = Conta não verificada
+sendTabToDevice.verify = Verificar a sua conta…
+
+# LOCALIZATION NOTE (tabArrivingNotification.title, tabArrivingNotificationWithDevice.title,
+# multipleTabsArrivingNotification.title, unnamedTabsArrivingNotification2.body,
+# unnamedTabsArrivingNotificationMultiple2.body, unnamedTabsArrivingNotificationNoDevice.body,
+# singleTabArrivingWithTruncatedURL.body)
+# These strings are used in a notification shown when we're opening tab(s) another device sent us to display.
+
+# LOCALIZATION NOTE (tabArrivingNotification.title, tabArrivingNotificationWithDevice.title)
+# The body for these is the URL of the tab received
+tabArrivingNotification.title = Separador recebido
+# LOCALIZATION NOTE (tabArrivingNotificationWithDevice.title) %S is the device name
+tabArrivingNotificationWithDevice.title = Separador de %S
+
+multipleTabsArrivingNotification.title = Separadores recebidos
+# LOCALIZATION NOTE (unnamedTabsArrivingNotification2.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received and #2 is the device name.
+unnamedTabsArrivingNotification2.body = #1 separador chegou de #2;#1 separadores chegaram de #2
+# LOCALIZATION NOTE (unnamedTabsArrivingNotificationMultiple2.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received.
+unnamedTabsArrivingNotificationMultiple2.body = #1 separador chegou dos seus dispositivos ligados;#1 separadores chegaram dos seus dispositivos ligados
+
+# LOCALIZATION NOTE (unnamedTabsArrivingNotificationNoDevice.body):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs received
+# This version is used when we don't know any device names.
+unnamedTabsArrivingNotificationNoDevice.body = #1 separador chegou;#1 separadores chegaram
+
+# LOCALIZATION NOTE (singleTabArrivingWithTruncatedURL.body):
+# Used when a tab from a remote device arrives but the URL must be truncated.
+# Should display the URL with an indication that it's benen truncated.
+# %S is the portion of the URL that remains after truncation.
+singleTabArrivingWithTruncatedURL.body = %S…
+
diff --git a/l10n-pt-PT/browser/chrome/browser/browser.properties b/l10n-pt-PT/browser/chrome/browser/browser.properties
new file mode 100644
index 0000000000..4b71eefe59
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/browser.properties
@@ -0,0 +1,1064 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+nv_timeout=Expirou
+openFile=Abrir ficheiro
+
+droponhometitle=Definir página inicial
+droponhomemsg=Pretende que este documento seja a sua nova página inicial?
+droponhomemsgMultiple=Pretende que estes documentos sejam as suas novas páginas iniciais?
+
+# context menu strings
+
+# LOCALIZATION NOTE (contextMenuSearch): %1$S is the search engine,
+# %2$S is the selection string.
+contextMenuSearch=Pesquisar por “%2$S” no %1$S
+contextMenuSearch.accesskey=P
+contextMenuPrivateSearch=Pesquisar numa janela privada
+contextMenuPrivateSearch.accesskey=p
+# LOCALIZATION NOTE (contextMenuPrivateSearchOtherEngine): %S is the search
+# engine name as set for Private Browsing mode. This label is only used when
+# this engine is different from the default engine name used in normal mode.
+contextMenuPrivateSearchOtherEngine=Pesquisar com o %S numa janela privada
+contextMenuPrivateSearchOtherEngine.accesskey=p
+
+# bookmark dialog strings
+
+bookmarkAllTabsDefault=[Nome da pasta]
+
+xpinstallPromptMessage=O %S impediu este site de lhe perguntar para instalar software no seu computador.
+# LOCALIZATION NOTE (xpinstallPromptMessage.header)
+# The string contains the hostname of the site the add-on is being installed from.
+xpinstallPromptMessage.header=Permitir que %S instale um extra?
+xpinstallPromptMessage.message=Está a tentar instalar um extra a partir de %S. Certifique-se de que confia neste site antes de continuar.
+xpinstallPromptMessage.header.unknown=Permitir que um site desconhecido instale um extra?
+xpinstallPromptMessage.message.unknown=Está a tentar instalar um extra a partir de um site desconhecido. Certifique-se de que confia neste site antes de continuar.
+xpinstallPromptMessage.learnMore=Saber mais acerca de instalar extras com segurança
+xpinstallPromptMessage.dontAllow=Não permitir
+xpinstallPromptMessage.dontAllow.accesskey=N
+xpinstallPromptMessage.neverAllow=Nunca permitir
+xpinstallPromptMessage.neverAllow.accesskey=N
+# LOCALIZATION NOTE (xpinstallPromptMessage.neverAllowAndReport)
+# Long text in this context make the dropdown menu extend awkwardly to the left, avoid
+# a localization that's significantly longer than the English version.
+xpinstallPromptMessage.neverAllowAndReport=Denunciar Site Suspeito
+xpinstallPromptMessage.neverAllowAndReport.accesskey=D
+# LOCALIZATION NOTE (sitePermissionInstallFirstPrompt.header)
+# This message is shown when a SitePermissionsAddon install is triggered, i.e. when the
+# website calls sensitive APIs (e.g. navigator.requestMIDIAccess).
+sitePermissionInstallFirstPrompt.header=Este site está a solicitar o acesso aos seus dispositivos. O acesso ao dispositivo pode ser ativado, instalando um extra.
+# LOCALIZATION NOTE (sitePermissionInstallFirstPrompt.message)
+# This message is shown when a SitePermissionsAddon install is triggered, i.e. when the
+# website calls sensitive APIs (e.g. navigator.requestMIDIAccess).
+sitePermissionInstallFirstPrompt.message=Este extra poderá ser utilizado para roubar os seus dados ou atacar o seu computador. Continue apenas se confiar neste site.
+
+# Accessibility Note:
+# Be sure you do not choose an accesskey that is used elsewhere in the active context (e.g. main menu bar, submenu of the warning popup button)
+# See https://website-archive.mozilla.org/www.mozilla.org/access/access/keyboard/ for details
+xpinstallPromptMessage.install=Continuar para a instalação
+xpinstallPromptMessage.install.accesskey=C
+
+xpinstallDisabledMessageLocked=A instalação de software foi desativada pelo seu administrador do sistema.
+xpinstallDisabledMessage=A instalação de software está atualmente desativada. Clique Ativar e tente novamente.
+xpinstallDisabledButton=Ativar
+xpinstallDisabledButton.accesskey=t
+
+# LOCALIZATION NOTE (addonInstallBlockedByPolicy)
+# This message is shown when the installation of an add-on is blocked by
+# enterprise policy. %1$S is replaced by the name of the add-on.
+# %2$S is replaced by the ID of add-on. %3$S is a custom message that
+# the administration can add to the message.
+addonInstallBlockedByPolicy=%1$S (%2$S) está bloqueado pelo seu administrador de sistema.%3$S
+# LOCALIZATION NOTE (addonDomainBlockedByPolicy)
+# This message is shown when the installation of add-ons from a domain
+# is blocked by enterprise policy.
+addonDomainBlockedByPolicy=O seu administrador de sistema impediu este site de solicitar autorização para instalar software no seu computador.
+addonInstallFullScreenBlocked=A instalação de extras não é permitida enquanto estiver ou antes de entrar no modo de ecrã completo.
+
+# LOCALIZATION NOTE (webextPerms.header,webextPerms.headerWithPerms,webextPerms.headerUnsigned,webextPerms.headerUnsignedWithPerms)
+# This string is used as a header in the webextension permissions dialog,
+# %S is replaced with the localized name of the extension being installed.
+# See https://bug1308309.bmoattachments.org/attachment.cgi?id=8814612
+# for an example of the full dialog.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.header=Adicionar %S?
+webextPerms.headerWithPerms=Adicionar %S? Esta extensão terá permissão para:
+webextPerms.headerUnsigned=Adicionar %S? Esta extensão não foi analisada. Extensões maliciosas podem roubar a sua informação privada ou comprometer o seu computador. Adicione esta extensão apenas se confia na fonte.
+webextPerms.headerUnsignedWithPerms=Adicionar %S? Esta extensão não foi analisada. Extensões maliciosas podem roubar a sua informação privada ou comprometer o seu computador. Adicione esta extensão apenas se confia na fonte. Esta extensão terá permissão para:
+
+webextPerms.learnMore2=Saber mais
+webextPerms.add.label=Adicionar
+webextPerms.add.accessKey=A
+webextPerms.cancel.label=Cancelar
+webextPerms.cancel.accessKey=C
+
+# LOCALIZATION NOTE (webextPerms.sideloadMenuItem)
+# %1$S will be replaced with the localized name of the sideloaded add-on.
+# %2$S will be replace with the name of the application (e.g., Firefox, Nightly)
+webextPerms.sideloadMenuItem=%1$S adicionado ao %2$S
+
+# LOCALIZATION NOTE (webextPerms.sideloadHeader)
+# This string is used as a header in the webextension permissions dialog
+# when the extension is side-loaded.
+# %S is replaced with the localized name of the extension being installed.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.sideloadHeader=%S adicionado
+webextPerms.sideloadText2=Outro programa no seu computador instalou um extra que pode afetar o seu navegador. Por favor reveja os pedidos de permissões deste extra e escolha Ativar ou Cancelar (para deixá-lo desativado).
+webextPerms.sideloadTextNoPerms=Outro programa no seu computador instalou um extra que pode afetar o seu navegador. Por favor escolha Ativar ou Cancelar (para deixá-lo desativado).
+
+webextPerms.sideloadEnable.label=Ativar
+webextPerms.sideloadEnable.accessKey=A
+webextPerms.sideloadCancel.label=Cancelar
+webextPerms.sideloadCancel.accessKey=C
+
+# LOCALIZATION NOTE (webextPerms.updateMenuItem)
+# %S will be replaced with the localized name of the extension which
+# has been updated.
+webextPerms.updateMenuItem=%S requer novas permissões
+
+# LOCALIZATION NOTE (webextPerms.updateText)
+# %S is replaced with the localized name of the updated extension.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.updateText2=%S foi atualizado. Deve aprovar as novas permissões antes da versão atualizada ser instalada. Escolher "Cancelar" irá manter a versão atual do extra. Esta extensão terá permissão para:
+
+webextPerms.updateAccept.label=Atualizar
+webextPerms.updateAccept.accessKey=u
+
+# LOCALIZATION NOTE (webextPerms.optionalPermsHeader)
+# %S is replace with the localized name of the extension requested new
+# permissions.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextPerms.optionalPermsHeader=%S solicita permissões adicionais.
+webextPerms.optionalPermsListIntro=Quer:
+webextPerms.optionalPermsAllow.label=Permitir
+webextPerms.optionalPermsAllow.accessKey=P
+webextPerms.optionalPermsDeny.label=Negar
+webextPerms.optionalPermsDeny.accessKey=N
+
+webextPerms.description.bookmarks=Ler e modificar marcadores
+webextPerms.description.browserSettings=Ler e modificar definições do navegador
+webextPerms.description.browsingData=Limpar histórico de navegação recente, cookies, e dados relacionados
+webextPerms.description.clipboardRead=Obter dados da área de transferência
+webextPerms.description.clipboardWrite=Introduzir dados na área de transferência
+webextPerms.description.declarativeNetRequest=Bloquear conteúdo em qualquer página
+webextPerms.description.devtools=Estender as ferramentas de programador para aceder aos seus dados em separadores abertos
+webextPerms.description.downloads=Transferir ficheiros, ler e modificar o histórico de transferências do navegador
+webextPerms.description.downloads.open=Abrir ficheiros transferidos para o seu computador
+webextPerms.description.find=Ler o texto de todos os separadores abertos
+webextPerms.description.geolocation=Aceder à sua localização
+webextPerms.description.history=Aceder ao histórico de navegação
+webextPerms.description.management=Monitorizar utilização da extensão e gerir temas
+# LOCALIZATION NOTE (webextPerms.description.nativeMessaging)
+# %S will be replaced with the name of the application
+webextPerms.description.nativeMessaging=Trocar mensagens com programas que não o %S
+webextPerms.description.notifications=Mostrar-lhe notificações
+webextPerms.description.pkcs11=Providenciar serviços de autenticação criptográfica
+webextPerms.description.privacy=Ler e modificar definições de privacidade
+webextPerms.description.proxy=Controlar as definições de proxy do navegador
+webextPerms.description.sessions=Aceder aos separadores recentemente fechados
+webextPerms.description.tabs=Aceder aos separadores do navegador
+webextPerms.description.tabHide=Ocultar e mostrar separadores do navegador
+webextPerms.description.topSites=Aceder ao histórico de navegação
+webextPerms.description.webNavigation=Aceder à atividade do navegador durante a navegação
+
+webextPerms.hostDescription.allUrls=Aceder aos seus dados em todos os sites
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.wildcard)
+# %S will be replaced by the DNS domain for which a webextension
+# is requesting access (e.g., mozilla.org)
+webextPerms.hostDescription.wildcard=Aceder aos seus dados para sites no domínio %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManyWildcards):
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# domains for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManyWildcards=Aceder aos seus dados em #1 outro domínio;Aceder aos seus dados em #1 outros domínios
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.oneSite)
+# %S will be replaced by the DNS host name for which a webextension
+# is requesting access (e.g., www.mozilla.org)
+webextPerms.hostDescription.oneSite=Aceder aos seus dados para %S
+
+# LOCALIZATION NOTE (webextPerms.hostDescription.tooManySites)
+# Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 will be replaced by an integer indicating the number of additional
+# hosts for which this webextension is requesting permission.
+webextPerms.hostDescription.tooManySites=Aceder aos seus dados em #1 outro site;Aceder aos seus dados em #1 outros sites
+
+# LOCALIZATION NOTE (webextSitePerms.headerWithPerms,webextSitePerms.headerUnsignedWithPerms)
+# This string is used as a header in the webextension permissions dialog,
+# %1$S is replaced with the localized name of the extension being installed.
+# %2$S will be replaced by the DNS host name for which a webextension enables permissions
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextSitePerms.headerWithPerms=Adicionar %1$S? Esta extensão fornece as seguintes capacidades a %2$S:
+webextSitePerms.headerUnsignedWithPerms=Adicionar %1$S? Esta extensão não foi verificada. Extensões maliciosas podem roubar a sua informação privada ou comprometer o seu computador. Adicione esta extensão apenas se confia na fonte. Esta extensão fornece as seguintes capacidades a %2$S:
+
+# LOCALIZATION NOTE (webextSitePerms.headerWithGatedPerms.midi)
+# This string is used as a header in the webextension permissions dialog for synthetic add-ons.
+# The part of the string describing what privileges the extension gives should be consistent
+# with the value of webextSitePerms.description.{sitePermission}.
+# %S is the hostname of the site the add-on is being installed from.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextSitePerms.headerWithGatedPerms.midi=Este extra dá acesso aos seus dispositivos MIDI a %S.
+
+# LOCALIZATION NOTE (webextSitePerms.headerWithGatedPerms.midi-sysex)
+# This string is used as a header in the webextension permissions dialog for synthetic add-ons.
+# The part of the string describing what privileges the extension gives should be consistent
+# with the value of webextSitePerms.description.{sitePermission}.
+# %S is the hostname of the site the add-on is being installed from.
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextSitePerms.headerWithGatedPerms.midi-sysex=Este extra dá acesso aos seus dispositivos MIDI (com suporte SysEx) a %S.
+
+# LOCALIZATION NOTE (webextSitePerms.descriptionGatedPerms)
+# This string is used as description in the webextension permissions dialog for synthetic add-ons.
+# %S will be replaced by the DNS host name for which a webextension enables permissions
+# Note, this string will be used as raw markup. Avoid characters like <, >, &
+webextSitePerms.descriptionGatedPerms=Este acesso pode ser perigoso e permite que o site aja como um programa instalado no seu computador.
+
+# These should remain in sync with permissions.NAME.label in sitePermissions.properties
+webextSitePerms.description.midi=Aceder a dispositivos MIDI
+webextSitePerms.description.midi-sysex=Aceder a dispositivos MIDI com suporte SysEx
+
+# LOCALIZATION NOTE (webext.defaultSearch.description)
+# %1$S is replaced with the localized named of the extension that is asking to change the default search engine.
+# %2$S is replaced with the name of the current search engine
+# %3$S is replaced with the name of the new search engine
+webext.defaultSearch.description=%1$S gostaria de alterar o seu motor de pesquisa predefinido de %2$S para %3$S. Está bem?
+webext.defaultSearchYes.label=Sim
+webext.defaultSearchYes.accessKey=S
+webext.defaultSearchNo.label=Não
+webext.defaultSearchNo.accessKey=N
+
+# LOCALIZATION NOTE (webext.remove.confirmation.message)
+# %1$S is the name of the extension which is about to be removed.
+# %2$S is brandShorterName
+webext.remove.confirmation.message=Remover %1$S do %2$S?
+webext.remove.confirmation.button=Remover
+
+# LOCALIZATION NOTE (addonPostInstall.message3)
+# %S is replaced with the localized named of the extension that was
+# just installed.
+addonPostInstall.message3=%S foi adicionado.
+
+# LOCALIZATION NOTE (addonDownloadingAndVerifying):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Also see https://bugzilla.mozilla.org/show_bug.cgi?id=570012 for mockups
+addonDownloadingAndVerifying=A transferir e a verificar extra…;A transferir e a verificar #1 extras…
+addonDownloadVerifying=A verificar
+
+addonInstall.unsigned=(Não verificado)
+addonInstall.cancelButton.label=Cancelar
+addonInstall.cancelButton.accesskey=C
+addonInstall.acceptButton2.label=Adicionar
+addonInstall.acceptButton2.accesskey=A
+
+# LOCALIZATION NOTE (addonConfirmInstallMessage,addonConfirmInstallUnsigned):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the number of add-ons being installed
+addonConfirmInstall.message=Este site gostaria de instalar um extra no #1:;Este site gostaria de instalar #2 extras no #1:
+addonConfirmInstallUnsigned.message=Cuidado: este site gostaria de instalar um extra não verificado no #1. Proceda por sua conta e risco.;Cuidado: este site gostaria de instalar #2 extras não verificados no #1. Proceda por sua conta e risco.
+
+# LOCALIZATION NOTE (addonConfirmInstallSomeUnsigned.message):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName
+# #2 is the total number of add-ons being installed (at least 2)
+addonConfirmInstallSomeUnsigned.message=;Cuidado: este site gostaria de instalar #2 extras no #1, alguns dos quais não verificados. Proceda por sua conta e risco.
+
+# LOCALIZATION NOTE (addonInstalled):
+# %S is the name of the add-on
+addonInstalled=%S foi instalado com sucesso.
+# LOCALIZATION NOTE (addonsGenericInstalled):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of add-ons
+addonsGenericInstalled=#1 extra foi instalado com sucesso.;#1 extras foram instalados com sucesso.
+
+# LOCALIZATION NOTE (addonInstallError-1, addonInstallError-2, addonInstallError-3, addonInstallError-4, addonInstallError-5, addonInstallError-8, addonLocalInstallError-1, addonLocalInstallError-2, addonLocalInstallError-3, addonLocalInstallError-4, addonLocalInstallError-5):
+# %1$S is the application name, %2$S is the add-on name
+addonInstallError-1=O extra não pôde ser transferido porque a ligação falhou.
+addonInstallError-2=O extra não pôde ser instalado porque não corresponde ao extra %1$S esperado.
+addonInstallError-3=O extra transferido a partir deste site não pôde ser instalado porque aparenta estar corrompido.
+addonInstallError-4=%2$S não pôde ser instalado porque o %1$S não consegue modificar o ficheiro necessário.
+addonInstallError-5=O %1$S impediu este site de instalar um extra não verificado.
+addonInstallError-8=O extra %2$S não pode ser instalado a partir desta localização.
+addonLocalInstallError-1=Este extra não pôde ser instalado devido a um erro do sistema de ficheiros.
+addonLocalInstallError-2=Este extra não pôde ser instalado porque não corresponde ao extra %1$S esperado.
+addonLocalInstallError-3=Este extra não pôde ser instalado porque parece estar corrompido.
+addonLocalInstallError-4=%2$S não pôde ser instalado porque o %1$S não consegue modificar o ficheiro necessário.
+addonLocalInstallError-5=Este extra não pôde ser instalado porque não foi verificado.
+
+# LOCALIZATION NOTE (addonInstallErrorIncompatible):
+# %1$S is the application name, %2$S is the application version, %3$S is the add-on name
+addonInstallErrorIncompatible=%3$S não pôde ser instalado porque não é compatível com o %1$S %2$S.
+
+# LOCALIZATION NOTE (addonInstallErrorBlocklisted): %S is add-on name
+addonInstallErrorBlocklisted=%S não pôde ser instalado porque tem um risco alto de causar problemas de estabilidade ou segurança.
+
+unsignedAddonsDisabled.message=Um ou mais dos extras instalados não podem ser verificados e foram desativados.
+unsignedAddonsDisabled.learnMore.label=Saber mais
+unsignedAddonsDisabled.learnMore.accesskey=b
+
+# LOCALIZATION NOTE (popupWarning.message): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popupWarning.message=O #1 impediu este site de abrir janelas pop-up.;O #1 impediu este site de abrir #2 janelas pop-up.
+# LOCALIZATION NOTE (popupWarning.exceeded.message): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is left empty for English, since the number of blocked pop-ups is always greater than 1.
+# #1 is brandShortName and #2 is the number of pop-ups blocked.
+popupWarning.exceeded.message=O ;#1 impediu este site de abrir mais de #2 janelas pop-up.
+popupWarningButton=Opções
+popupWarningButton.accesskey=O
+popupWarningButtonUnix=Preferências
+popupWarningButtonUnix.accesskey=P
+popupShowPopupPrefix=Mostrar ‘%S’
+
+# LOCALIZATION NOTE (geolocationLastAccessIndicatorText): %S is the relative time of the most recent geolocation access (e.g. 5 min. ago)
+geolocationLastAccessIndicatorText=Último acesso %S
+
+# LOCALIZATION NOTE (openProtocolHandlerPermissionEntryLabel): %S is the scheme of the protocol the site may open an application for. For example: mailto
+openProtocolHandlerPermissionEntryLabel=Ligações %S://
+
+crashedpluginsMessage.title=O plugin %S falhou.
+crashedpluginsMessage.reloadButton.label=Recarregar página
+crashedpluginsMessage.reloadButton.accesskey=R
+crashedpluginsMessage.submitButton.label=Submeter relatório de falha
+crashedpluginsMessage.submitButton.accesskey=S
+crashedpluginsMessage.learnMore=Saber mais…
+
+# Keyword fixup messages
+# LOCALIZATION NOTE (keywordURIFixup.message): Used when the user tries to visit
+# a local host page, by the time the DNS request recognizes it, we have already
+# loaded a search page for the given word. An infobar then asks to the user
+# whether he rather wanted to visit the host. %S is the recognized host.
+keywordURIFixup.message=Pretendia ir para %S?
+keywordURIFixup.goTo=Sim, leve-me para %S
+keywordURIFixup.goTo.accesskey=S
+
+pluginInfo.unknownPlugin=Desconhecido
+
+# Flash activation doorhanger UI
+flashActivate.message=Pretende permitir que o Adobe Flash funcione neste site? Apenas permita o Adobe Flash em sites de confiança.
+flashActivate.outdated.message=Pretende permitir uma versão desatualizada do Adobe Flash executar neste site? Uma versão desatualizada pode afetar o desempenho e segurança do navegador.
+flashActivate.noAllow=Não permitir
+flashActivate.allow=Permitir
+flashActivate.noAllow.accesskey=N
+flashActivate.allow.accesskey=P
+
+# in-page UI
+# LOCALIZATION NOTE (PluginClickToActivate2): Two changes were done to the
+# previous version of the string. The first is that we changed the wording from
+# "Activate" to "Run", because it's shorter and feels less technical in English.
+# Feel free to keep using the previous wording in your language if it's already
+# the best one.
+# The second change is that we removed the period at the end of the phrase, because
+# it's not natural in our UI, and the underline was removed from this, so it doesn't
+# look like a link anymore. We suggest that everyone removes that period too.
+PluginClickToActivate2=Executar %S
+PluginVulnerableUpdatable=Este plugin é vulnerável e precisa de ser atualizado.
+PluginVulnerableNoUpdate=Este plugin tem problemas de segurança.
+
+# Sanitize
+# LOCALIZATION NOTE (update.downloadAndInstallButton.label): %S is replaced by the
+# version of the update: "Update to 28.0".
+update.downloadAndInstallButton.label=Atualização para %S
+update.downloadAndInstallButton.accesskey=u
+
+menuOpenAllInTabs.label=Abrir tudo em separadores
+
+# History menu
+# LOCALIZATION NOTE (menuUndoCloseWindowLabel): Semicolon-separated list of plural forms.
+# see bug 394759
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 Window Title, #2 Number of tabs
+menuUndoCloseWindowLabel=#1 (e mais #2 separador);#1 (e mais #2 separadores)
+menuUndoCloseWindowSingleTabLabel=#1
+
+# Unified Back-/Forward Popup
+tabHistory.current=Ficar nesta página
+
+# Unified Back-/Forward Popup
+tabHistory.reloadCurrent=Recarregar esta página
+tabHistory.goBack=Retroceder para esta página
+tabHistory.goForward=Avançar para esta página
+
+# URL Bar
+pasteAndGo.label=Colar e ir
+# LOCALIZATION NOTE (reloadButton.tooltip):
+# %S is the keyboard shortcut for reloading the current page
+reloadButton.tooltip=Recarregar página atual (%S)
+# LOCALIZATION NOTE (stopButton.tooltip):
+# %S is the keyboard shortcut for stopping loading the page
+stopButton.tooltip=Parar de carregar esta página (%S)
+# LOCALIZATION NOTE (urlbar-zoom-button.tooltip):
+# %S is the keyboard shortcut for resetting the zoom level to 100%
+urlbar-zoom-button.tooltip=Repor nível de zoom (%S)
+# LOCALIZATION NOTE (reader-mode-button.tooltip):
+# %S is the keyboard shortcut for entering/exiting reader view
+reader-mode-button.tooltip=Alternar vista de leitura (%S)
+
+# LOCALIZATION NOTE(zoom-button.label): %S is the current page zoom level,
+# %% will be displayed as a single % character (% is commonly used to define
+# format specifiers, so it needs to be escaped).
+zoom-button.label = %S%%
+
+# Block autorefresh
+refreshBlocked.goButton=Permitir
+refreshBlocked.goButton.accesskey=P
+refreshBlocked.refreshLabel=O %S impediu o recarregamento automático desta página.
+refreshBlocked.redirectLabel=O %S impediu o encaminhamento automático desta página para outra.
+
+# General bookmarks button
+# LOCALIZATION NOTE (bookmarksMenuButton.tooltip):
+# %S is the keyboard shortcut for "Show All Bookmarks"
+bookmarksMenuButton.tooltip=Mostrar os seus marcadores (%S)
+
+# Downloads button tooltip
+# LOCALIZATION NOTE (downloads.tooltip):
+# %S is the keyboard shortcut for "Downloads"
+downloads.tooltip=Mostrar progresso das transferências em curso (%S)
+
+# New Window button tooltip
+# LOCALIZATION NOTE (newWindowButton.tooltip):
+# %S is the keyboard shortcut for "New Window"
+newWindowButton.tooltip=Abrir uma nova janela (%S)
+
+# New Tab button tooltip
+# LOCALIZATION NOTE (newTabButton.tooltip):
+# %S is the keyboard shortcut for "New Tab"
+newTabButton.tooltip=Abrir um novo separador (%S)
+newTabContainer.tooltip=Abra um novo separador (%S)\nPressione sem soltar para abrir um novo separador contentor
+newTabAlwaysContainer.tooltip=Selecionar um contentor para abrir um novo separador
+
+# Offline web applications
+offlineApps.available3=Permitir que %S armazene dados no seu computador?
+offlineApps.allow.label=Permitir
+offlineApps.allow.accesskey=P
+offlineApps.block.label=Bloquear
+offlineApps.block.accesskey=B
+
+# Canvas permission prompt
+# LOCALIZATION NOTE (canvas.siteprompt2): %S is hostname
+canvas.siteprompt2=Permitir que %S utilize os seus dados de imagem canvas do HTML5?
+canvas.siteprompt2.warning=Isto pode ser utilizado para identificar o seu computador.
+canvas.block=Bloquear
+canvas.block.accesskey=B
+canvas.allow2=Permitir
+canvas.allow2.accesskey=P
+canvas.remember2=Memorizar esta escolha
+
+# WebAuthn prompts
+# LOCALIZATION NOTE (webauthn.registerPrompt2): %S is hostname
+webauthn.registerPrompt2=%S pretende registar uma conta com uma das suas chaves de segurança. Pode ligar e autorizar uma agora, ou cancelar.
+# LOCALIZATION NOTE (webauthn.CTAP2registerPrompt): %S is hostname
+webauthn.CTAP2registerPrompt=%S pretende registar uma conta com uma das suas chaves de segurança. Pode ativar uma agora ou cancelar.
+# LOCALIZATION NOTE (webauthn.registerTouchDevice): %S is hostname
+webauthn.registerTouchDevice=%S pretende registar uma conta com a sua chave de segurança. Pode autorizar agora ou cancelar.
+# LOCALIZATION NOTE (webauthn.registerDirectPrompt3):
+# %S is hostname.
+# The website is asking for extended information about your
+# hardware authenticator that shouldn't be generally necessary. Permitting
+# this is safe if you only use one account at this website. If you have
+# multiple accounts at this website, and you use the same hardware
+# authenticator, then the website could link those accounts together.
+# And this is true even if you use a different profile / browser (or even Tor
+# Browser). To avoid this, you should use different hardware authenticators
+# for different accounts on this website.
+webauthn.registerDirectPrompt3=%S está a solicitar informações adicionais sobre a sua chave de segurança, o que pode afetar a sua privacidade.
+# LOCALIZATION NOTE (webauthn.registerDirectPromptHint):
+# %S is brandShortName
+webauthn.registerDirectPromptHint=O %S pode anonimizar esta informação por si, mas o site pode recusar esta chave. Se for recusada, pode tentar novamente.
+# LOCALIZATION NOTE (webauthn.CTAP2signPrompt): %S is hostname
+webauthn.CTAP2signPrompt=%S deseja autenticá-lo utilizando uma chave de segurança registada. Pode ativar uma agora ou cancelar.
+# LOCALIZATION NOTE (webauthn.signTouchDevice): %S is hostname
+webauthn.signTouchDevice=%S pretende autenticá-lo utilizando a sua chave de segurança. Pode autorizar agora ou cancelar.
+# LOCALIZATION NOTE (webauthn.signPrompt2): %S is hostname
+webauthn.signPrompt2=%S pretende autenticar-lhe utilizado uma chave de segurança registada. Pode ligar e autorizar uma agora, ou cancelar.
+# LOCALIZATION NOTE (webauthn.selectSignResultPrompt): %S is hostname
+webauthn.selectSignResultPrompt=Múltiplas contas encontradas para %S. Selecione qual usar ou cancelar.
+# LOCALIZATION NOTE (webauthn.selectDevicePrompt): %S is hostname
+webauthn.selectDevicePrompt=Múltiplos dispositivos encontrados para %S. Por favor, escolha um.
+# LOCALIZATION NOTE (webauthn.deviceBlockedPrompt): %S is hostname
+webauthn.deviceBlockedPrompt=A verificação do utilizador falhou em %S. Não existem mais tentativas disponíveis e o seu dispositivo foi bloqueado porque foi fornecido um PIN incorreto demasiadas vezes. O dispositivo precisa de ser reinicializado.
+# LOCALIZATION NOTE (webauthn.pinAuthBlockedPrompt): %S is hostname
+webauthn.pinAuthBlockedPrompt=A verificação do utilizador falhou em %S. Ocorreram demasiadas tentativas consecutivas falhadas e a autenticação através do PIN foi temporariamente bloqueada. O seu dispositivo precisa de um ciclo de energia (desligue e reintroduza o dispositivo).
+webauthn.cancel=Cancelar
+webauthn.cancel.accesskey=c
+webauthn.proceed=Proceder
+webauthn.proceed.accesskey=P
+webauthn.anonymize=Anonimizar mesmo assim
+
+# Spoof Accept-Language prompt
+privacy.spoof_english=Alterar a sua definição de idioma para Inglês irá tornar mais difícil a sua identificação e melhorar a sua privacidade. Deseja solicitar versões de páginas web na língua Inglesa?
+
+# LOCALIZATION NOTE (identity.identified.verifier, identity.identified.state_and_country, identity.ev.contentOwner2):
+# %S is the hostname of the site that is being displayed.
+identity.identified.verifier=Verificado por: %S
+identity.identified.verified_by_you=Adicionou uma exceção de segurança para este site.
+identity.identified.state_and_country=%S, %S
+identity.ev.contentOwner2=Certificado emitido para: %S
+
+# LOCALIZATION NOTE (identity.notSecure.label):
+# Keep this string as short as possible, this is displayed in the URL bar
+# use a synonym for "safe" or "private" if "secure" is too long.
+identity.notSecure.label=Não seguro
+identity.notSecure.tooltip=Ligação não segura
+
+identity.extension.label=Extensão (%S)
+identity.extension.tooltip=Carregada pela extensão: %S
+
+# LOCALIZATION NOTE (contentBlocking.trackersView.blocked.label):
+# This label is shown next to a tracker in the trackers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.trackersView.blocked.label=Bloqueado
+
+contentBlocking.trackersView.empty.label=Nenhum detetado neste site
+
+# LOCALIZATION NOTE (contentBlocking.cookies.blockingTrackers.label, contentBlocking.cookies.blocking3rdParty.label,
+# contentBlocking.cookies.blockingUnvisited.label,contentBlocking.cookies.blockingAll.label):
+contentBlocking.cookies.blockingTrackers3.label=Cookies de monitorização entre sites
+contentBlocking.cookies.blocking3rdParty2.label=Cookies de terceiros
+contentBlocking.cookies.blockingUnvisited2.label=Cookies de sites não visitados
+contentBlocking.cookies.blockingAll2.label=Todos os cookies
+
+contentBlocking.cookiesView.firstParty.label=Deste site
+# LOCALIZATION NOTE (contentBlocking.cookiesView.firstParty.empty.label):
+# This references the header from contentBlocking.cookiesView.firstParty.label:
+# "[Cookies] From This Site: None detected on this site".
+contentBlocking.cookiesView.firstParty.empty.label=Nenhum detetado neste site
+
+contentBlocking.cookiesView.trackers2.label=Cookies de monitorização entre sites
+# LOCALIZATION NOTE (contentBlocking.cookiesView.trackers.empty.label):
+# This references the header from contentBlocking.cookiesView.trackers.label:
+# "Tracking Cookies: None detected on this site".
+contentBlocking.cookiesView.trackers.empty.label=Nenhum detetado neste site
+
+contentBlocking.cookiesView.thirdParty.label=Cookies de terceiros
+# LOCALIZATION NOTE (contentBlocking.cookiesView.thirdParty.empty.label):
+# This references the header from contentBlocking.cookiesView.thirdParty.label:
+# "Third-Party Cookies: None detected on this site".
+contentBlocking.cookiesView.thirdParty.empty.label=Nenhum detetado neste site
+
+# LOCALIZATION NOTE (contentBlocking.cookiesView.allowed.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Allowed"
+contentBlocking.cookiesView.allowed.label=Permitido
+# LOCALIZATION NOTE (contentBlocking.cookiesView.blocked.label):
+# This label is shown next to a cookie origin in the cookies subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cookiesView.blocked.label=Bloqueado
+# LOCALIZATION NOTE (contentBlocking.cookiesView.removeButton.tooltip): %S is the domain of the site.
+contentBlocking.cookiesView.removeButton.tooltip=Limpar exceção de cookies para %S
+
+# LOCALIZATION NOTE (contentBlocking.fingerprintersView.blocked.label):
+# This label is shown next to a fingerprinter in the fingerprinters subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.fingerprintersView.blocked.label=Bloqueado
+
+# LOCALIZATION NOTE (contentBlocking.cryptominersView.blocked.label):
+# This label is shown next to a cryptominer in the cryptominers subview.
+# It forms the end of the (imaginary) sentence "www.example.com [was] Blocked"
+contentBlocking.cryptominersView.blocked.label=Bloqueado
+
+trackingProtection.icon.activeTooltip2=Bloqueio de rastreadores de redes sociais, cookies de monitorização entre sites e identificadores.
+trackingProtection.icon.disabledTooltip2=A proteção contra monitorização melhorada está DESLIGADA para este site.
+# LOCALIZATION NOTE (trackingProtection.icon.noTrackersDetectedTooltip): %S is brandShortName.
+trackingProtection.icon.noTrackersDetectedTooltip=Nenhum rastreador conhecido pelo %S foi detetado nesta página.
+
+# LOCALIZATION NOTE (protections.header):
+# Header of the Protections Panel. %S is replaced with the site's hostname.
+protections.header=Proteções para %S
+
+# LOCALIZATION NOTE (protections.disableAriaLabel):
+# Text that gets spoken by a screen reader if the button will disable protections.
+# %s is the site's hostname.
+protections.disableAriaLabel=Desativar proteções para %S
+
+# LOCALIZATION NOTE (protections.enableAriaLabel):
+# Text that gets spoken by a screen reader if the button will enable protections.
+# %s is the site's hostname.
+protections.enableAriaLabel=Ativar proteções para %S
+
+# Blocking and Not Blocking sub-views in the Protections Panel
+protections.blocking.fingerprinters.title=Identificadores bloqueados
+protections.blocking.cryptominers.title=Cripto-mineradores bloqueados
+protections.blocking.cookies.trackers.title=Cookies de monitorização entre sites bloqueadas
+protections.blocking.cookies.3rdParty.title=Cookies de terceiros bloqueadas
+protections.blocking.cookies.all.title=Todas as cookies bloqueadas
+protections.blocking.cookies.unvisited.title=Cookies de sites não visitados bloqueados
+protections.blocking.trackingContent.title=Conteúdo de monitorização bloqueado
+protections.blocking.socialMediaTrackers.title=Rastreadores de redes sociais bloqueados
+protections.notBlocking.fingerprinters.title=Sem bloqueio de identificadores
+protections.notBlocking.cryptominers.title=Sem bloqueio de cripto-mineradores
+protections.notBlocking.cookies.3rdParty.title=Não está a bloquear cookies de terceiros
+protections.notBlocking.cookies.all.title=Não está a bloquear cookies
+protections.notBlocking.crossSiteTrackingCookies.title=A não bloquear Cookies de monitorização entre sites
+protections.notBlocking.trackingContent.title=A não bloquear Conteúdo de monitorização
+protections.notBlocking.socialMediaTrackers.title=Não está a bloquear rastreadores de redes sociais
+
+# Footer section in the Protections Panel
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description,
+# protections.footer.blockedTrackerCounter.tooltip):
+# This text indicates the total number of trackers blocked on all sites. In
+# its tooltip, we show the date when we started counting this number.
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is a locale-string converted positive integer.
+protections.footer.blockedTrackerCounter.description=1 bloqueado;#1 bloqueados
+# LOCALIZATION NOTE (protections.footer.blockedTrackerCounter.tooltip):
+# %S is the date on which we started counting (e.g., July 17, 2019).
+protections.footer.blockedTrackerCounter.tooltip=Desde %S
+
+# Milestones section in the Protections Panel
+# LOCALIZATION NOTE (protections.milestone.description):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is replaced with brandShortName.
+# #2 is replaced with the (locale-formatted) number of trackers blocked
+# #3 is replaced by a locale-formatted date with short month and numeric year.
+# In English this looks like "Firefox blocked over 10,000 trackers since Oct 2019"
+protections.milestone.description=O #1 bloqueou #2 rastreador desde #3;O #1 bloqueou #2 rastreadores desde #3
+
+# Application menu
+
+# LOCALIZATION NOTE(zoomReduce-button.tooltip): %S is the keyboard shortcut.
+zoomReduce-button.tooltip = Reduzir (%S)
+# LOCALIZATION NOTE(zoomReset-button.tooltip): %S is the keyboard shortcut.
+zoomReset-button.tooltip = Repor nível de zoom (%S)
+# LOCALIZATION NOTE(zoomEnlarge-button.tooltip): %S is the keyboard shortcut.
+zoomEnlarge-button.tooltip = Ampliar (%S)
+
+# LOCALIZATION NOTE (cut-button.tooltip): %S is the keyboard shortcut.
+cut-button.tooltip = Cortar (%S)
+# LOCALIZATION NOTE (copy-button.tooltip): %S is the keyboard shortcut.
+copy-button.tooltip = Copiar (%S)
+# LOCALIZATION NOTE (paste-button.tooltip): %S is the keyboard shortcut.
+paste-button.tooltip = Colar (%S)
+
+# Geolocation UI
+
+geolocation.allow=Permitir
+geolocation.allow.accesskey=P
+geolocation.block=Bloquear
+geolocation.block.accesskey=B
+geolocation.shareWithSite4=Permitir que %S aceda à sua localização?
+geolocation.shareWithFile4=Permitir que este ficheiro local aceda à sua localização?
+# LOCALIZATION NOTE(geolocation.shareWithSiteUnsafeDelegation2):
+# %1$S is the first party origin, %2$S is the third party origin.
+geolocation.shareWithSiteUnsafeDelegation2=Permitir que %1$S dê permissão a %2$S para aceder à sua localização?
+geolocation.remember=Memorizar esta decisão
+
+# Virtual Reality Device UI
+xr.allow2=Permitir
+xr.allow2.accesskey=P
+xr.block=Bloquear
+xr.block.accesskey=B
+xr.shareWithSite4=Permitir que %S aceda aos seus dispositivos de realidade virtual? Isto pode expor informação sensível.
+xr.shareWithFile4=Permitir que este ficheiro local aceda aos seus dispositivos de realidade virtual? Isto pode expor informação sensível.
+xr.remember=Lembrar esta decisão
+
+# Persistent storage UI
+persistentStorage.allow=Permitir
+persistentStorage.allow.accesskey=P
+persistentStorage.block.label=Bloquear
+persistentStorage.block.accesskey=B
+persistentStorage.allowWithSite2=Permitir que %S guarde dados no armazenamento persistente?
+
+# Web notifications UI
+# LOCALIZATION NOTE (alwaysBlock, block)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+webNotifications.allow2=Permitir
+webNotifications.allow2.accesskey=P
+webNotifications.notNow=Agora não
+webNotifications.notNow.accesskey=n
+webNotifications.never=Nunca permitir
+webNotifications.never.accesskey=c
+webNotifications.alwaysBlock=Bloquear sempre
+webNotifications.alwaysBlock.accesskey=B
+webNotifications.block=Bloquear
+webNotifications.block.accesskey=B
+webNotifications.receiveFromSite3=Permitir que %S envie notificações?
+
+# Phishing/Malware Notification Bar.
+# LOCALIZATION NOTE (notADeceptiveSite, notAnAttack)
+# The two button strings will never be shown at the same time, so
+# it's okay for them to have the same access key
+safebrowsing.getMeOutOfHereButton.label=Tirem-me daqui!
+safebrowsing.getMeOutOfHereButton.accessKey=T
+safebrowsing.deceptiveSite=Site decetivo!
+safebrowsing.notADeceptiveSiteButton.label=Este não é um site decetivo…
+safebrowsing.notADeceptiveSiteButton.accessKey=d
+safebrowsing.reportedAttackSite=Reportado como site de ataque!
+safebrowsing.notAnAttackButton.label=Este não é um site de ataque…
+safebrowsing.notAnAttackButton.accessKey=a
+safebrowsing.reportedUnwantedSite=Reportado como site de software não-solicitado!
+safebrowsing.reportedHarmfulSite=Reportado como site prejudicial!
+
+# Ctrl-Tab
+# LOCALIZATION NOTE (ctrlTab.listAllTabs.label): #1 represents the number
+# of tabs in the current browser window. It will always be 2 at least.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+ctrlTab.listAllTabs.label=;Mostrar os #1 separadores
+
+# LOCALIZATION NOTE (addKeywordTitleAutoFill): %S will be replaced by the page's title
+# Used as the bookmark name when saving a keyword for a search field.
+addKeywordTitleAutoFill=Pesquisar %S
+
+# troubleshootModeRestart
+# LOCALIZATION NOTE (troubleshootModeRestartPromptTitle): %S is the name of the product (e.g., Firefox)
+troubleshootModeRestartPromptTitle=Reiniciar o %S no modo de diagnóstico?
+troubleshootModeRestartPromptMessage=As suas extensões, temas e definições personalizadas serão temporariamente desativadas.
+troubleshootModeRestartButton=Reiniciar
+
+# LOCALIZATION NOTE (browser.menu.showCharacterEncoding): Set to the string
+# "true" (spelled and capitalized exactly that way) to show the "Text
+# Encoding" menu in the main Firefox button on Windows. Any other value will
+# hide it. Regardless of the value of this setting, the "Text Encoding"
+# menu will always be accessible via the "Browser Tools" menu.
+# This is not a string to translate; it just controls whether the menu shows
+# up in the Firefox button. If users frequently use the "Text Encoding"
+# menu, set this to "true". Otherwise, you can leave it as "false".
+browser.menu.showCharacterEncoding=false
+
+# Process hang reporter
+# LOCALIZATION NOTE (processHang.selected_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.selected_tab.label = Esta página está a reduzir o desempenho do %1$S. Para acelerar o seu navegador, pare esta página.
+# LOCALIZATION NOTE (processHang.nonspecific_tab.label): %1$S is the name of the product (e.g., Firefox)
+processHang.nonspecific_tab.label = Uma página de Internet está a reduzir o desempenho do %1$S. Para acelerar o seu navegador, pare essa página.
+# LOCALIZATION NOTE (processHang.specific_tab.label): %1$S is the title of the tab.
+# %2$S is the name of the product (e.g., Firefox)
+processHang.specific_tab.label = “%1$S” está a reduzir o desempenho do %2$S. Para acelerar o seu navegador, pare esta página.
+# LOCALIZATION NOTE (processHang.add-on.label2): %1$S is the name of the
+# extension. %2$S is the name of the product (e.g., Firefox)
+processHang.add-on.label2 = “%1$S” está a reduzir o desempenho do %2$S. Para acelerar o seu navegador, pare esta extensão.
+processHang.add-on.learn-more.text = Saber mais
+processHang.button_stop2.label = Parar
+processHang.button_stop2.accessKey = P
+processHang.button_debug.label = Depurar script
+processHang.button_debug.accessKey = D
+
+# LOCALIZATION NOTE (fullscreenButton.tooltip): %S is the keyboard shortcut for full screen
+fullscreenButton.tooltip=Mostrar janela em ecrã completo (%S)
+
+# These are visible when opening the popup inside the bookmarks sidebar
+sidebar.moveToLeft=Mover barra lateral para a esquerda
+sidebar.moveToRight=Mover barra lateral para a direita
+
+# LOCALIZATION NOTE (getUserMedia.shareCamera3.message,
+# getUserMedia.shareMicrophone3.message,
+# getUserMedia.shareScreen4.message,
+# getUserMedia.shareCameraAndMicrophone3.message,
+# getUserMedia.shareCameraAndAudioCapture3.message,
+# getUserMedia.shareScreenAndMicrophone4.message,
+# getUserMedia.shareScreenAndAudioCapture4.message,
+# getUserMedia.shareAudioCapture3.message):
+# %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.shareCamera3.message = Permitir que %S utilize a sua câmara?
+getUserMedia.shareMicrophone3.message = Permitir que %S utilize o seu microfone?
+getUserMedia.shareScreen4.message = Permitir que %S veja o seu ecrã?
+getUserMedia.shareCameraAndMicrophone3.message = Permitir que %S utilize a sua câmara e microfone?
+getUserMedia.shareCameraAndAudioCapture3.message = Permitir que %S utilize a sua câmara e ouça o áudio deste separador?
+getUserMedia.shareScreenAndMicrophone4.message = Permitir que %S utilize o seu microfone e veja o seu ecrã?
+getUserMedia.shareScreenAndAudioCapture4.message = Permitir que %S ouça o áudio deste separador e veja o seu ecrã?
+getUserMedia.shareAudioCapture3.message = Permitir que %S ouça o áudio deste separador?
+# LOCALIZATION NOTE (selectAudioOutput.shareSpeaker.message):
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+# %S is the website origin (e.g. www.mozilla.org)
+selectAudioOutput.shareSpeaker.message = Permitir que %S utilize outras colunas?
+
+# LOCALIZATION NOTE (getUserMedia.shareCameraUnsafeDelegation2.message,
+# getUserMedia.shareMicrophoneUnsafeDelegation2.message,
+# getUserMedia.shareScreenUnsafeDelegation2.message,
+# getUserMedia.shareCameraAndMicrophoneUnsafeDelegation2.message,
+# getUserMedia.shareCameraAndAudioCaptureUnsafeDelegation2.message,
+# getUserMedia.shareScreenAndMicrophoneUnsafeDelegation2.message,
+# getUserMedia.shareScreenAndAudioCaptureUnsafeDelegation2.message,
+# %1$S is the first party origin.
+# %2$S is the third party origin.
+getUserMedia.shareCameraUnsafeDelegation2.message = Permitir que %1$S forneça acesso à sua câmara a %2$S?
+getUserMedia.shareMicrophoneUnsafeDelegations2.message = Permitir que %1$S forneça acesso ao seu microfone a %2$S?
+getUserMedia.shareScreenUnsafeDelegation2.message = Permitir que %1$S forneça acesso para ver o seu ecrã a %2$S?
+getUserMedia.shareCameraAndMicrophoneUnsafeDelegation2.message = Permitir que %1$S forneça acesso à sua câmara e ao seu microfone a %2$S?
+getUserMedia.shareCameraAndAudioCaptureUnsafeDelegation2.message = Permitir que %1$S forneça acesso à sua câmara e ouvir o áudio deste separador a %2$S?
+getUserMedia.shareScreenAndMicrophoneUnsafeDelegation2.message = Permite que %1$S forneça acesso ao seu microfone e a visualizar o seu ecrã a %2$S?
+getUserMedia.shareScreenAndAudioCaptureUnsafeDelegation2.message = Permitir que %1$S forneça acesso para ouvir o áudio deste separador e a visualizar o seu ecrã a %2$S?
+# LOCALIZATION NOTE ():
+# "Speakers" is used in a general sense that might include headphones or
+# another audio output connection.
+# %1$S is the first party origin.
+# %2$S is the third party origin.
+selectAudioOutput.shareSpeakerUnsafeDelegation.message = Permitir que %1$S forneça acesso a outras colunas a %2$S?
+
+# LOCALIZATION NOTE (getUserMedia.shareScreenWarning.message): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+getUserMedia.shareScreenWarning2.message = Apenas partilhe ecrãs com sites em que confia. Partilhar pode permitir que sites enganadores naveguem por si e que roubem os seus dados privados.
+# LOCALIZATION NOTE (getUserMedia.shareFirefoxWarning.message): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+# %S is brandShortName (eg. Firefox)
+getUserMedia.shareFirefoxWarning2.message = Apenas partilhe o %S com sites em que confia. Partilhar pode permitir que sites enganadores naveguem por si e que roubem os seus dados privados.
+# LOCALIZATION NOTE(getUserMedia.shareScreen.learnMoreLabel): NB: inserted via innerHTML, so please don't use <, > or & in this string.
+getUserMedia.shareScreen.learnMoreLabel = Saber mais
+getUserMedia.selectWindowOrScreen2.label = Janela ou ecrã:
+getUserMedia.selectWindowOrScreen2.accesskey = J
+getUserMedia.pickWindowOrScreen.label = Selecionar janela ou ecrã
+getUserMedia.shareEntireScreen.label = Ecrã completo
+getUserMedia.sharePipeWirePortal.label = Utilizar definições do sistema operativo
+# LOCALIZATION NOTE (getUserMedia.shareMonitor.label):
+# %S is screen number (digits 1, 2, etc)
+# Example: Screen 1, Screen 2,..
+getUserMedia.shareMonitor.label = Ecrã %S
+# LOCALIZATION NOTE (getUserMedia.shareApplicationWindowCount.label):
+# Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# Replacement for #1 is the name of the application.
+# Replacement for #2 is the number of windows currently displayed by the application.
+getUserMedia.shareApplicationWindowCount.label=#1 (#2 janela);#1 (#2 janelas)
+# LOCALIZATION NOTE (getUserMedia.allow.label,
+# getUserMedia.block.label):
+# These two buttons are the possible answers to the various prompts in the
+# "getUserMedia.share{device}.message" strings.
+getUserMedia.allow.label = Permitir
+getUserMedia.allow.accesskey = P
+getUserMedia.block.label = Bloquear
+getUserMedia.block.accesskey = B
+getUserMedia.remember=Memorizar esta decisão
+# LOCALIZATION NOTE (getUserMedia.reasonForNoPermanentAllow.screen3,
+# getUserMedia.reasonForNoPermanentAllow.audio,
+# getUserMedia.reasonForNoPermanentAllow.insecure):
+# %S is brandShortName
+getUserMedia.reasonForNoPermanentAllow.screen3=O %S não pode permitir acesso permanente ao seu ecrã.
+getUserMedia.reasonForNoPermanentAllow.audio=%S não pode permitir acesso permanente ao áudio do separador sem lhe perguntar qual separador partilhar.
+getUserMedia.reasonForNoPermanentAllow.insecure=A sua ligação a este site não é segura. Para lhe proteger, o %S irá apenas permitir acesso para esta sessão.
+
+getUserMedia.sharingMenu.label = Separadores de partilha de dispositivos
+getUserMedia.sharingMenu.accesskey = d
+# LOCALIZATION NOTE (getUserMedia.sharingMenuCamera
+# getUserMedia.sharingMenuMicrophone,
+# getUserMedia.sharingMenuAudioCapture,
+# getUserMedia.sharingMenuApplication,
+# getUserMedia.sharingMenuScreen,
+# getUserMedia.sharingMenuWindow,
+# getUserMedia.sharingMenuBrowser,
+# getUserMedia.sharingMenuCameraMicrophone,
+# getUserMedia.sharingMenuCameraMicrophoneApplication,
+# getUserMedia.sharingMenuCameraMicrophoneScreen,
+# getUserMedia.sharingMenuCameraMicrophoneWindow,
+# getUserMedia.sharingMenuCameraMicrophoneBrowser,
+# getUserMedia.sharingMenuCameraAudioCapture,
+# getUserMedia.sharingMenuCameraAudioCaptureApplication,
+# getUserMedia.sharingMenuCameraAudioCaptureScreen,
+# getUserMedia.sharingMenuCameraAudioCaptureWindow,
+# getUserMedia.sharingMenuCameraAudioCaptureBrowser,
+# getUserMedia.sharingMenuCameraApplication,
+# getUserMedia.sharingMenuCameraScreen,
+# getUserMedia.sharingMenuCameraWindow,
+# getUserMedia.sharingMenuCameraBrowser,
+# getUserMedia.sharingMenuMicrophoneApplication,
+# getUserMedia.sharingMenuMicrophoneScreen,
+# getUserMedia.sharingMenuMicrophoneWindow,
+# getUserMedia.sharingMenuMicrophoneBrowser,
+# getUserMedia.sharingMenuAudioCaptureApplication,
+# getUserMedia.sharingMenuAudioCaptureScreen,
+# getUserMedia.sharingMenuAudioCaptureWindow,
+# getUserMedia.sharingMenuAudioCaptureBrowser):
+# %S is the website origin (e.g. www.mozilla.org)
+getUserMedia.sharingMenuCamera = %S (câmara)
+getUserMedia.sharingMenuMicrophone = %S (microfone)
+getUserMedia.sharingMenuAudioCapture = %S (áudio)
+getUserMedia.sharingMenuApplication = %S (aplicação)
+getUserMedia.sharingMenuScreen = %S (ecrã)
+getUserMedia.sharingMenuWindow = %S (janela)
+getUserMedia.sharingMenuBrowser = %S (separador)
+getUserMedia.sharingMenuCameraMicrophone = %S (câmara e microfone)
+getUserMedia.sharingMenuCameraMicrophoneApplication = %S (câmara, microfone e aplicação)
+getUserMedia.sharingMenuCameraMicrophoneScreen = %S (câmara, microfone e ecrã)
+getUserMedia.sharingMenuCameraMicrophoneWindow = %S (câmara, microfone e janela)
+getUserMedia.sharingMenuCameraMicrophoneBrowser = %S (câmara, microfone e separador)
+getUserMedia.sharingMenuCameraAudioCapture = %S (câmara e áudio do separador)
+getUserMedia.sharingMenuCameraAudioCaptureApplication = %S (câmara, áudio do separador e aplicação)
+getUserMedia.sharingMenuCameraAudioCaptureScreen = %S (câmara, áudio do separador e ecrã)
+getUserMedia.sharingMenuCameraAudioCaptureWindow = %S (câmara, áudio do separador e janela)
+getUserMedia.sharingMenuCameraAudioCaptureBrowser = %S (câmara, áudio do separador e separador)
+getUserMedia.sharingMenuCameraApplication = %S (câmara e aplicação)
+getUserMedia.sharingMenuCameraScreen = %S (câmara e ecrã)
+getUserMedia.sharingMenuCameraWindow = %S (câmara e janela)
+getUserMedia.sharingMenuCameraBrowser = %S (câmara e separador)
+getUserMedia.sharingMenuMicrophoneApplication = %S (microfone e aplicação)
+getUserMedia.sharingMenuMicrophoneScreen = %S (microfone e ecrã)
+getUserMedia.sharingMenuMicrophoneWindow = %S (microfone e janela)
+getUserMedia.sharingMenuMicrophoneBrowser = %S (microfone e separador)
+getUserMedia.sharingMenuAudioCaptureApplication = %S (áudio e aplicação)
+getUserMedia.sharingMenuAudioCaptureScreen = %S (áudio e ecrã)
+getUserMedia.sharingMenuAudioCaptureWindow = %S (áudio e janela)
+getUserMedia.sharingMenuAudioCaptureBrowser = %S (áudio e separador)
+# LOCALIZATION NOTE(getUserMedia.sharingMenuUnknownHost): this is used for the website
+# origin for the sharing menu if no readable origin could be deduced from the URL.
+getUserMedia.sharingMenuUnknownHost = Origem desconhecida
+
+# LOCALIZATION NOTE(emeNotifications.drmContentDisabled.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S will be the 'learn more' link
+emeNotifications.drmContentDisabled.message2 = Deve ativar o DRM para reproduzir algum áudio ou vídeo desta página.
+emeNotifications.drmContentDisabled.button.label = Ativar DRM
+emeNotifications.drmContentDisabled.button.accesskey = A
+
+# LOCALIZATION NOTE(emeNotifications.drmContentCDMInstalling.message): NB: inserted via innerHTML, so please don't use <, > or & in this string. %S is brandShortName
+emeNotifications.drmContentCDMInstalling.message = O %S está a instalar os componentes necessários para reproduzir áudio ou vídeo nesta página. Por favor tente novamente mais tarde.
+
+emeNotifications.unknownDRMSoftware = Desconhecido
+
+# LOCALIZATION NOTE (customizeMode.tabTitle): %S is brandShortName
+customizeMode.tabTitle = Personalizar o %S
+
+e10s.accessibilityNotice.acceptButton.label = OK
+e10s.accessibilityNotice.acceptButton.accesskey = O
+
+# LOCALIZATION NOTE (e10s.accessibilityNotice.jawsMessage): %S is brandShortName
+e10s.accessibilityNotice.jawsMessage = A mostra de conteúdo de separador está desativada devido à incompatibilidade entre o %S e o seu software de acessibilidade. Por favor atualize o seu leitor de ecrã ou troque para o Firefox Extended Support Release.
+
+# LOCALIZATION NOTE (userContextPersonal.label,
+# userContextWork.label,
+# userContextShopping.label,
+# userContextBanking.label,
+# userContextNone.label):
+# These strings specify the four predefined contexts included in support of the
+# Contextual Identity / Containers project. Each context is meant to represent
+# the context that the user is in when interacting with the site. Different
+# contexts will store cookies and other information from those sites in
+# different, isolated locations. You can enable the feature by typing
+# about:config in the URL bar and changing privacy.userContext.enabled to true.
+# Once enabled, you can open a new tab in a specific context by clicking
+# File > New Container Tab > (1 of 4 contexts). Once opened, you will see these
+# strings on the right-hand side of the URL bar.
+userContextPersonal.label = Pessoal
+userContextWork.label = Trabalho
+userContextBanking.label = Bancário
+userContextShopping.label = Compras
+userContextNone.label = Sem contentor
+
+userContextPersonal.accesskey = P
+userContextWork.accesskey = T
+userContextBanking.accesskey = B
+userContextShopping.accesskey = s
+userContextNone.accesskey = n
+
+userContext.aboutPage.label = Gerir separadores contentores
+userContext.aboutPage.accesskey = o
+
+muteTab.label = Silenciar som do separador
+muteTab.accesskey = m
+unmuteTab.label = Repor som do separador
+unmuteTab.accesskey = m
+
+muteSelectedTabs2.label = Silenciar som dos separadores
+# LOCALIZATION NOTE (muteSelectedTabs2.accesskey): The accesskey should
+# match the accesskey for muteTab.accesskey
+muteSelectedTabs2.accesskey = m
+unmuteSelectedTabs2.label = Repor som dos separadores
+# LOCALIZATION NOTE (unmuteSelectedTabs2.accesskey): The accesskey should
+# match the accesskey for unmuteTab.accesskey
+unmuteSelectedTabs2.accesskey = m
+
+# LOCALIZATION NOTE (sendTabsToDevice.label):
+# Semi-colon list of plural forms.
+# See: https://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs sent to the device.
+sendTabsToDevice.label = Enviar separador para dispositivo;Enviar #1 separadores para dispositivo
+sendTabsToDevice.accesskey = n
+
+# LOCALIZATION NOTE (pendingCrashReports2.label): Semi-colon list of plural forms
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of pending crash reports
+pendingCrashReports2.label = Tem um relatório de falha não enviado;Tem #1 relatórios de falha não enviados
+pendingCrashReports.viewAll = Ver
+pendingCrashReports.send = Enviar
+pendingCrashReports.alwaysSend = Enviar sempre
+
+decoder.noCodecs.button = Saiba como
+decoder.noCodecs.accesskey = S
+decoder.noCodecsLinux.message = Para reproduzir vídeo, poderá ter de instalar os codecs de vídeo necessários.
+decoder.noHWAcceleration.message = Para melhorar a qualidade de vídeo, poderá ter de instalar o Media Feature Pack da Microsoft.
+decoder.noPulseAudio.message = Para reproduzir áudio, poderá ter de instalar o necessário software PulseAudio.
+decoder.unsupportedLibavcodec.message = libavcodec pode ser vulnerável ou não é suportado, e deve ser atualizado para reproduzir vídeo.
+
+decoder.decodeError.message = Ocorreu um erro enquanto descodificava um recurso multimédia.
+decoder.decodeError.button = Reportar problema no site
+decoder.decodeError.accesskey = R
+decoder.decodeWarning.message = Ocorreu um erro recuperável enquanto descodificava um recurso multimédia.
+
+# LOCALIZATION NOTE (captivePortal.infoMessage3):
+# Shown in a notification bar when we detect a captive portal is blocking network access
+# and requires the user to log in before browsing.
+captivePortal.infoMessage3 = Tem de iniciar sessão nesta rede antes de poder aceder à Internet.
+# LOCALIZATION NOTE (captivePortal.showLoginPage2):
+# The label for a button shown in the info bar in all tabs except the login page tab.
+# The button shows the portal login page tab when clicked.
+captivePortal.showLoginPage2 = Abrir página de início de sessão da rede
+
+# LOCALIZATION NOTE (permissions.header):
+# %S is the hostname of the site that is being displayed.
+permissions.header = Permissões para %S
+permissions.remove.tooltip = Limpar esta permissão e perguntar novamente
+
+permissions.fullscreen.promptCanceled = Pedidos de permissão pendentes cancelados: os pedidos de permissão não deveriam ser emitidos antes de entrar em ecrã completo de DOM.
+permissions.fullscreen.fullScreenCanceled = Saída do ecrã completo de DOM: os pedidos de permissão não devem ser emitidos em ecrã completo de DOM.
+
+# LOCALIZATION NOTE (aboutDialog.architecture.*):
+# The sixtyFourBit and thirtyTwoBit strings describe the architecture of the
+# current Firefox build: 32-bit or 64-bit. These strings are used in parentheses
+# between the Firefox version and the "What's new" link in the About dialog,
+# e.g.: "48.0.2 (32-bit) " or "51.0a1 (2016-09-05) (64-bit)".
+aboutDialog.architecture.sixtyFourBit = 64-bit
+aboutDialog.architecture.thirtyTwoBit = 32-bit
+
+midi.allow.label = Permitir
+midi.allow.accesskey = P
+midi.block.label = Bloquear
+midi.block.accesskey = B
+midi.remember=Memorizar esta decisão
+midi.shareWithFile = Permitir que este ficheiro local aceda aos seus dispositivos MIDI?
+# LOCALIZATION NOTE (midi.shareWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareWithSite = Permitir que %S aceda aos seus dispositivos MIDI?
+midi.shareSysexWithFile = Permitir que este ficheiro local aceda aos seus dispositivos MIDI e envie/receba mensagens SysEx?
+# LOCALIZATION NOTE (midi.shareSysexWithSite): %S is the name of the site URL (https://...) requesting MIDI access
+midi.shareSysexWithSite = Permitir que %S aceda aos seus dispositivos MIDI e envie/receba mensagens SysEx?
+
+# LOCALIZATION NOTE (panel.back):
+# This is used by screen readers to label the "back" button in various browser
+# popup panels, including the sliding subviews of the main menu.
+panel.back = Anterior
+
+storageAccess1.Allow.label = Permitir
+storageAccess1.Allow.accesskey = P
+storageAccess1.DontAllow.label = Bloquear
+storageAccess1.DontAllow.accesskey = B
+# LOCALIZATION NOTE (storageAccess4.message, storageAccess1.hintText):
+# %1$S is the name of the site URL (www.site1.example) trying to track the user's activity.
+# %2$S is the name of the site URL (www.site2.example) that the user is visiting. This is the same domain name displayed in the address bar.
+storageAccess4.message = Permitir que %1$S utilize os seus cookies em %2$S?
+storageAccess1.hintText = Pode bloquear o acesso se não for claro porque %1$S precisa destes dados.
+
+
+
+confirmationHint.sendToDevice.label = Enviado!
+confirmationHint.copyURL.label = Copiado para a área de transferência!
+confirmationHint.pageBookmarked2.label = Guardado nos marcadores
+confirmationHint.pinTab.label = Fixado!
+confirmationHint.pinTab.description = Clique com o botão direito no separador para o desafixar.
+confirmationHint.passwordSaved.label = Palavra-passe guardada!
+confirmationHint.loginRemoved.label = Credencial removida!
+confirmationHint.breakageReport.label = Relatório enviado. Obrigado!
+
+# LOCALIZATION NOTE (gnomeSearchProviderSearch):
+# Used for search by Gnome Shell activity screen, %S is a searched string.
+gnomeSearchProviderSearch=Pesquisar na Internet por %S
+
+# LOCALIZATION NOTE (gnomeSearchProviderSearchWeb):
+# Used for search by Gnome Shell activity screen, %S is a searched string.
+gnomeSearchProviderSearchWeb=Pesquisar na Internet por “%S”
diff --git a/l10n-pt-PT/browser/chrome/browser/customizableui/customizableWidgets.properties b/l10n-pt-PT/browser/chrome/browser/customizableui/customizableWidgets.properties
new file mode 100644
index 0000000000..6245a7b5e3
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/customizableui/customizableWidgets.properties
@@ -0,0 +1,54 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+history-panelmenu.label = Histórico
+# LOCALIZATION NOTE(history-panelmenu.tooltiptext2): %S is the keyboard shortcut
+history-panelmenu.tooltiptext2 = Mostrar o seu histórico (%S)
+
+find-button.label = Localizar
+# LOCALIZATION NOTE(find-button.tooltiptext3): %S is the keyboard shortcut.
+find-button.tooltiptext3 = Localizar nesta página (%S)
+
+developer-button.label = Programador
+# LOCALIZATION NOTE(developer-button.tooltiptext): %S is the keyboard shortcut
+developer-button.tooltiptext2 = Abrir ferramentas de programador (%S)
+
+sidebar-button.label = Barras laterais
+sidebar-button.tooltiptext2 = Mostrar barras laterais
+
+zoom-controls.label = Controlos de zoom
+zoom-controls.tooltiptext2 = Controlos de zoom
+
+zoom-out-button.label = Reduzir
+# LOCALIZATION NOTE(zoom-out-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-out-button.tooltiptext2 = Reduzir (%S)
+
+# LOCALIZATION NOTE(zoom-reset-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-reset-button.tooltiptext2 = Repor nível de zoom (%S)
+
+zoom-in-button.label = Ampliar
+# LOCALIZATION NOTE(zoom-in-button.tooltiptext2): %S is the keyboard shortcut.
+zoom-in-button.tooltiptext2 = Ampliar (%S)
+
+edit-controls.label = Controlos de editar
+edit-controls.tooltiptext2 = Controlos de editar
+
+cut-button.label = Cortar
+# LOCALIZATION NOTE(cut-button.tooltiptext2): %S is the keyboard shortcut.
+cut-button.tooltiptext2 = Cortar (%S)
+
+copy-button.label = Copiar
+# LOCALIZATION NOTE(copy-button.tooltiptext2): %S is the keyboard shortcut.
+copy-button.tooltiptext2 = Copiar (%S)
+
+paste-button.label = Colar
+# LOCALIZATION NOTE(paste-button.tooltiptext2): %S is the keyboard shortcut.
+paste-button.tooltiptext2 = Colar (%S)
+
+panic-button.label = Esquecer
+panic-button.tooltiptext = Esquecer algum histórico de navegação
+
+toolbarspring.label = Espaço flexível
+toolbarseparator.label = Separador
+toolbarspacer.label = Espaço
diff --git a/l10n-pt-PT/browser/chrome/browser/downloads/downloads.properties b/l10n-pt-PT/browser/chrome/browser/downloads/downloads.properties
new file mode 100644
index 0000000000..72568a370b
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/downloads/downloads.properties
@@ -0,0 +1,83 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this file,
+# You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (stateStarting):
+# Indicates that the download is starting.
+stateStarting=A iniciar…
+# LOCALIZATION NOTE (stateFailed):
+# Indicates that the download failed because of an error.
+stateFailed=Falhou
+# LOCALIZATION NOTE (statePaused):
+# Indicates that the download was paused by the user.
+statePaused=Pausada
+# LOCALIZATION NOTE (stateCanceled):
+# Indicates that the download was canceled by the user.
+stateCanceled=Cancelada
+# LOCALIZATION NOTE (stateCompleted):
+# Indicates that the download was completed.
+stateCompleted=Concluída
+# LOCALIZATION NOTE (stateBlockedParentalControls):
+# Indicates that the download was blocked by the Parental Controls feature of
+# Windows. "Parental Controls" should be consistently named and capitalized
+# with the display of this feature in Windows. The following article can
+# provide a reference for the translation of "Parental Controls" in various
+# languages:
+# http://windows.microsoft.com/en-US/windows-vista/Set-up-Parental-Controls
+stateBlockedParentalControls=Bloqueada pelos controlos parentais
+# LOCALIZATION NOTE (blockedMalware, blockedPotentiallyUnwanted,
+# blockedUncommon2):
+# These strings are shown in the panel for some types of blocked downloads. You
+# may need to adjust "downloads.width" in "downloads.dtd" if this turns out to
+# be longer than the other existing status strings.
+blockedMalware=Este ficheiro contém um vírus ou malware.
+blockedPotentiallyUnwanted=Este ficheiro pode prejudicar o seu computador.
+blockedPotentiallyInsecure=Ficheiro não descarregado: Potencial risco de segurança.
+blockedUncommon2=Este ficheiro não é geralmente transferido.
+
+# LOCALIZATION NOTE (fileMovedOrMissing):
+# Displayed when a complete download which is not at the original folder.
+fileMovedOrMissing=Ficheiro movido ou em falta
+
+# LOCALIZATION NOTE (fileDeleted):
+# Displayed when a downloaded file has been deleted by Firefox, e.g. by the
+# "Delete File" context menu item.
+fileDeleted=Ficheiro eliminado
+
+# LOCALIZATION NOTE (unblockHeaderUnblock, unblockHeaderOpen,
+# unblockTypeMalware, unblockTypePotentiallyUnwanted2,
+# unblockTypeUncommon2, unblockTip2, unblockButtonOpen,
+# unblockButtonUnblock, unblockButtonConfirmBlock, unblockInsecure2):
+# These strings are displayed in the dialog shown when the user asks a blocked
+# download to be unblocked. The severity of the threat is expressed in
+# descending order by the unblockType strings, it is higher for files detected
+# as malware and lower for uncommon downloads.
+unblockHeaderUnblock=Tem a certeza que pretende permitir esta transferência?
+unblockHeaderOpen=Tem a certeza que pretende abrir este ficheiro?
+unblockTypeMalware=Este ficheiro contém um vírus ou outro malware que pode prejudicar o seu computador.
+unblockTypePotentiallyUnwanted2=Este ficheiro está disfarçado de transferência útil, mas irá efetuar alterações inesperadas aos seus programas e definições.
+unblockTypeUncommon2=Este ficheiro não é geralmente transferido e pode não ser seguro para abrir. Pode conter vírus ou fazer alterações inesperadas aos seus programas e definições.
+unblockInsecure=O ficheiro usa uma ligação insegura. Ele pode ser corrompido ou adulterado durante o processo de descarregamento.
+unblockInsecure2=A transferência é oferecida por HTTP, mesmo que o documento atual tenha sido entregue através de uma conexão HTTPS segura. Se continuar, a transferência pode ser corrompida ou adulterada durante o processo de transferência.
+unblockTip2=Pode procurar por uma fonte de transferência alternativa ou tentar novamente mais tarde.
+unblockButtonOpen=Abrir
+unblockButtonUnblock=Permitir transferência
+unblockButtonConfirmBlock=Remover ficheiro
+
+# LOCALIZATION NOTE (sizeWithUnits):
+# %1$S is replaced with the size number, and %2$S with the measurement unit.
+sizeWithUnits=%1$S %2$S
+sizeUnknown=Tamanho desconhecido
+
+# LOCALIZATION NOTE (statusSeparator, statusSeparatorBeforeNumber):
+# These strings define templates for the separation of different elements in the
+# status line of a download item. As a separator, by default we use the Unicode
+# character U+2014 'EM DASH' (long dash). Examples of status lines include
+# "Canceled - 222.net", "1.1 MB - website2.com", or "Paused - 1.1 MB". Note
+# that we use a wider space after the separator when it is followed by a number,
+# just to avoid visually confusing it with with a minus sign with some fonts.
+# If you use a different separator, this might not be necessary. However, there
+# is usually no need to change the separator or the order of the substitutions,
+# even for right-to-left languages, unless the defaults are not suitable.
+statusSeparator=%1$S \u2014 %2$S
+statusSeparatorBeforeNumber=%1$S — %2$S
diff --git a/l10n-pt-PT/browser/chrome/browser/feeds/subscribe.properties b/l10n-pt-PT/browser/chrome/browser/feeds/subscribe.properties
new file mode 100644
index 0000000000..27cef60bbe
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/feeds/subscribe.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (addProtocolHandlerMessage):
+# Message displayed when adding a protocol handler:
+# %1$S is the application's domain, %2$S is the type of protocol
+addProtocolHandlerMessage=Adicionar “%1$S” como uma aplicação para ligações %2$S?
+addProtocolHandlerAddButton=Adicionar aplicação
+addProtocolHandlerAddButtonAccesskey=A
diff --git a/l10n-pt-PT/browser/chrome/browser/places/bookmarkProperties.properties b/l10n-pt-PT/browser/chrome/browser/places/bookmarkProperties.properties
new file mode 100644
index 0000000000..4795628f2e
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/places/bookmarkProperties.properties
@@ -0,0 +1,24 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+dialogAcceptLabelAddItem=Adicionar
+dialogAcceptLabelSaveItem=Guardar
+dialogAcceptLabelAddMulti=Adicionar marcadores
+dialogAcceptLabelEdit=Guardar
+dialogTitleAddBookmark=Novo marcador
+dialogTitleAddFolder=Nova pasta
+dialogTitleAddMulti=Novos marcadores
+dialogTitleEdit=Propriedades para “%S”
+
+dialogTitleAddNewBookmark2=Adicionar marcador
+dialogTitleEditBookmark=Editar “%S”
+dialogTitleEditBookmark2=Editar marcador
+dialogTitleAddBookmarksFolder=Adicionar pasta de marcadores
+dialogTitleAddBookmarkFolder=Adicionar pasta de marcador
+dialogTitleEditBookmarksFolder=Editar pasta de marcadores
+dialogTitleEditBookmarkFolder=Editar pasta de marcador
+
+bookmarkAllTabsDefault=[Nome da pasta]
+newFolderDefault=Nova pasta
+newBookmarkDefault=Novo marcador
diff --git a/l10n-pt-PT/browser/chrome/browser/places/places.properties b/l10n-pt-PT/browser/chrome/browser/places/places.properties
new file mode 100644
index 0000000000..c84ea59a01
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/places/places.properties
@@ -0,0 +1,79 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+load-js-data-url-error=Por razões de segurança, os urls de javascript ou de dados não podem ser carregados a partir da janela de histórico ou da barra lateral.
+noTitle=(sem título)
+
+bookmarksMenuEmptyFolder=(Vazio)
+
+bookmarksBackupTitle=Nome de ficheiro da cópia de segurança de marcadores
+
+bookmarksRestoreAlertTitle=Reverter marcadores
+bookmarksRestoreAlert=Esta operação substituirá todos os atuais marcadores pelos da cópia de segurança. Tem a certeza?
+bookmarksRestoreTitle=Escolha uma cópia de segurança dos marcadores
+bookmarksRestoreFilterName=JSON
+
+bookmarksRestoreFormatError=Tipo de ficheiro não suportado.
+bookmarksRestoreParseError=Não foi possível processar o ficheiro de cópia de segurança.
+
+# LOCALIZATION NOTE (view.sortBy.1.name.label): sortBy properties are versioned.
+# When any of these changes, all of the properties must be bumped, and the
+# change must be annotated here. Both label and accesskey must be updated.
+# - version 1: changed view.sortBy.1.date.
+view.sortBy.1.name.label=Ordenar por nome
+view.sortBy.1.name.accesskey=n
+view.sortBy.1.url.label=Ordenar por localização
+view.sortBy.1.url.accesskey=l
+view.sortBy.1.date.label=Ordenar por visita mais recente
+view.sortBy.1.date.accesskey=v
+view.sortBy.1.visitCount.label=Ordenar por número de visitas
+view.sortBy.1.visitCount.accesskey=n
+view.sortBy.1.dateAdded.label=Ordenar por adicionados
+view.sortBy.1.dateAdded.accesskey=e
+view.sortBy.1.lastModified.label=Ordenar por última modificação
+view.sortBy.1.lastModified.accesskey=m
+view.sortBy.1.tags.label=Ordenar por etiquetas
+view.sortBy.1.tags.accesskey=t
+
+searchBookmarks=Pesquisar marcadores
+searchHistory=Pesquisar histórico
+searchDownloads=Pesquisar transferências
+
+SelectImport=Importar ficheiro de marcadores
+EnterExport=Exportar ficheiro de marcadores
+
+detailsPane.noItems=Nenhum item
+# LOCALIZATION NOTE (detailsPane.itemsCountLabel): Semicolon-separated list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 number of items
+# example: 111 items
+detailsPane.itemsCountLabel=Um item;#1 itens
+
+# LOCALIZATION NOTE (lockPrompt.text)
+# %S will be replaced with the application name.
+lockPrompt.text=O sistema de histórico e marcadores não estará funcional porque um dos ficheiros do %S está a ser utilizado por outra aplicação. Alguns softwares de segurança podem causar este problema.
+
+# LOCALIZATION NOTE (cmd.deleteSinglePage.accesskey,
+# cmd.deleteMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.deleteSinglePage.label=Apagar página
+cmd.deleteSinglePage.accesskey=A
+cmd.deleteMultiplePages.label=Apagar páginas
+cmd.deleteMultiplePages.accesskey=A
+
+# LOCALIZATION NOTE (cmd.bookmarkSinglePage.accesskey,
+# cmd.bookmarkMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.bookmarkSinglePage.label=Adicionar página aos marcadores
+cmd.bookmarkSinglePage.accesskey=M
+cmd.bookmarkMultiplePages.label=Adicionar páginas aos marcadores
+cmd.bookmarkMultiplePages.accesskey=M
+
+# LOCALIZATION NOTE (cmd.bookmarkSinglePage.accesskey,
+# cmd.bookmarkMultiplePages.accesskey): these accesskeys can use the same
+# character, since they're never displayed at the same time
+cmd.bookmarkSinglePage2.label=Adicionar página aos marcadores…
+cmd.bookmarkSinglePage2.accesskey=M
+cmd.bookmarkMultiplePages2.label=Adicionar páginas aos marcadores…
+cmd.bookmarkMultiplePages2.accesskey=B
diff --git a/l10n-pt-PT/browser/chrome/browser/safebrowsing/safebrowsing.properties b/l10n-pt-PT/browser/chrome/browser/safebrowsing/safebrowsing.properties
new file mode 100644
index 0000000000..7d90ce367b
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/safebrowsing/safebrowsing.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+errorReportFalseDeceptiveTitle=Este não é um site decetivo
+errorReportFalseDeceptiveMessage=Não é possível reportar este erro a esta altura.
diff --git a/l10n-pt-PT/browser/chrome/browser/search.properties b/l10n-pt-PT/browser/chrome/browser/search.properties
new file mode 100644
index 0000000000..a604cc1222
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/search.properties
@@ -0,0 +1,33 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+searchtip=Pesquisar utilizando o %S
+
+# LOCALIZATION NOTE (searchHeader): this is displayed at the top of the panel
+# showing search suggestions.
+# %S is replaced with the name of the current default search engine.
+searchHeader=Pesquisa %S
+
+# LOCALIZATION NOTE (cmd_pasteAndSearch): "Search" is a verb, this is the
+# search bar equivalent to the url bar's "Paste & Go"
+cmd_pasteAndSearch=Colar e pesquisar
+
+cmd_clearHistory=Limpar histórico de pesquisa
+cmd_clearHistory_accesskey=L
+
+# LOCALIZATION NOTE (searchForSomethingWith2):
+# This string is used to build the header above the list of one-click
+# search providers: "Search for with:"
+searchForSomethingWith2=Pesquisar por %S com:
+
+# LOCALIZATION NOTE (searchWithHeader):
+# The wording of this string should be as close as possible to
+# searchForSomethingWith2. This string will be used when the user
+# has not typed anything.
+searchWithHeader=Pesquisar com:
+
+# LOCALIZATION NOTE (searchSettings):
+# This is the label for the button that opens Search preferences.
+searchSettings=Alterar definições de pesquisa
+
diff --git a/l10n-pt-PT/browser/chrome/browser/shellservice.properties b/l10n-pt-PT/browser/chrome/browser/shellservice.properties
new file mode 100644
index 0000000000..8ac62fc099
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/shellservice.properties
@@ -0,0 +1,16 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (setDefaultBrowserTitle, setDefaultBrowserMessage, setDefaultBrowserDontAsk, setDefaultBrowserAlertConfirm.label, setDefaultBrowserAlertNotNow.label):
+# These strings are used as an alternative to the ones above, in a modal dialog.
+# %S will be replaced by brandShortName
+setDefaultBrowserTitle=Navegador predefinido
+setDefaultBrowserMessage=O %S não está atualmente definido como o seu navegador predefinido. Deseja torná-lo o seu navegador predefinido?
+setDefaultBrowserDontAsk=Executar sempre esta verificação ao iniciar o %S.
+setDefaultBrowserAlertConfirm.label=Utilizar o %S como o meu navegador predefinido
+setDefaultBrowserAlertNotNow.label=Agora não
+
+desktopBackgroundLeafNameWin=Fundo_do_ambiente_de_trabalho.bmp
+DesktopBackgroundDownloading=A guardar imagem…
+DesktopBackgroundSet=Definir fundo do ambiente de trabalho
diff --git a/l10n-pt-PT/browser/chrome/browser/siteData.properties b/l10n-pt-PT/browser/chrome/browser/siteData.properties
new file mode 100644
index 0000000000..e53551c57b
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/siteData.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+clearSiteDataPromptTitle=Limpar todos os cookies e dados de sites
+# LOCALIZATION NOTE (clearSiteDataPromptText): %S = brandShortName
+clearSiteDataPromptText=Selecionar ‘Limpar agora’ irá limpar todos os cookies e dados de sites armazenados pelo %S. Isto pode terminar sessões nos sites e remover conteúdos web offline.
+clearSiteDataNow=Limpar agora
diff --git a/l10n-pt-PT/browser/chrome/browser/sitePermissions.properties b/l10n-pt-PT/browser/chrome/browser/sitePermissions.properties
new file mode 100644
index 0000000000..f981f7de76
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/sitePermissions.properties
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (state.current.allowed,
+# state.current.allowedForSession,
+# state.current.allowedTemporarily,
+# state.current.blockedTemporarily,
+# state.current.blocked,
+# state.current.hide):
+# This label is used to display active permission states in the site
+# identity popup (which does not have a lot of screen space).
+state.current.allowed = Permitido
+state.current.allowedForSession = Permitir para a sessão
+state.current.allowedTemporarily = Permitir temporariamente
+state.current.blockedTemporarily = Bloqueado temporariamente
+state.current.blocked = Bloqueado
+state.current.prompt = Perguntar sempre
+
+# LOCALIZATION NOTE (state.multichoice.alwaysAsk,
+# state.multichoice.allow,
+# state.multichoice.allowForSession,
+# state.multichoice.block):
+# Used to label permission state checkboxes in the page info dialog.
+state.multichoice.alwaysAsk = Perguntar sempre
+state.multichoice.allow = Permitir
+state.multichoice.allowForSession = Permitir para a sessão
+state.multichoice.block = Bloquear
+
+state.multichoice.autoplayblock = Bloquear áudio
+state.multichoice.autoplayblockall = Bloquear áudio e vídeo
+state.multichoice.autoplayallow = Permitir áudio e vídeo
+
+permission.autoplay.label = Reprodução automática
+permission.cookie.label = Definir cookies
+permission.desktop-notification3.label = Enviar notificações
+permission.camera.label = Utilizar a câmara
+permission.microphone.label = Utilizar o microfone
+permission.screen.label = Partilhar o ecrã
+# LOCALIZATION NOTE (permission.speaker.label):
+# Short form for (permission to) "Choose and change audio output devices".
+permission.speaker.label = Selecione os altifalantes
+permission.install.label = Instalar extras
+permission.popup.label = Abrir janelas pop-up
+permission.geo.label = Aceder à sua localização
+permission.xr.label = Aceder a dispositivos de realidade virtual
+permission.shortcuts.label = Sobrepor atalhos de teclado
+permission.focus-tab-by-prompt.label = Trocar para este separador
+permission.persistent-storage.label = Armazenar dados em armazenamento persistente
+permission.canvas.label = Extrair dados da tela
+permission.midi.label = Aceder a dispositivos MIDI
+permission.midi-sysex.label = Aceder a dispositivos MIDI com suporte SysEx
+# LOCALIZATION NOTE (permission.open-protocol-handler.label):
+# Open as a verb. "This site may open applications".
+permission.open-protocol-handler.label = Abrir aplicações
diff --git a/l10n-pt-PT/browser/chrome/browser/syncSetup.properties b/l10n-pt-PT/browser/chrome/browser/syncSetup.properties
new file mode 100644
index 0000000000..fd677fee1a
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/syncSetup.properties
@@ -0,0 +1,14 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Several other strings are used (via Weave.Status.login), but they come from
+# /services/sync
+
+# Firefox Accounts based setup.
+continue.label = Continuar
+
+relinkVerify.title = Aviso de junção
+relinkVerify.heading = Tem a certeza que pretende iniciar sessão no Sync?
+# LOCALIZATION NOTE (relinkVerify.description): Email address of a user previously signed into sync.
+relinkVerify.description = Um utilizador diferente tinha anteriormente uma sessão iniciada no Sync neste computador. Iniciar a sessão irá juntar os marcadores, palavras-passe e outras definições deste navegador com %S
diff --git a/l10n-pt-PT/browser/chrome/browser/tabbrowser.properties b/l10n-pt-PT/browser/chrome/browser/tabbrowser.properties
new file mode 100644
index 0000000000..91b1dcc41b
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/tabbrowser.properties
@@ -0,0 +1,106 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+tabs.emptyTabTitle=Novo separador
+tabs.emptyPrivateTabTitle=Navegação privada
+tabs.emptyPrivateTabTitle2=Novo separador privado
+tabs.closeTab=Fechar separador
+tabs.close=Fechar
+
+# This section applies when closing a window with more than one tab open,
+# or when quitting when only one window is open.
+# LOCALIZATION NOTE (tabs.closeTabsTitle):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The singular form is not considered since this string is used only for
+# multiple tabs.
+tabs.closeTabsTitle=;Fechar #1 separadores?
+tabs.closeTabsConfirmCheckbox=Confirmar antes de fechar múltiplos separadores
+tabs.closeButtonMultiple=Fechar separadores
+
+# This section applies when quitting using the menu and multiple windows are open.
+# LOCALIZATION NOTE (tabs.closeTitleTabs):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# The forms for 0 or 1 items are not considered since this string is used only for
+# multiple windows. The %S replacement form will be replaced with the contents
+tabs.closeWindowsTitle=;Fechar #1 janelas?
+tabs.closeWindowsButton=Fechar e sair
+# Same as tabs.closeWindowsButton, but on Windows
+tabs.closeWindowsButtonWin=Fechar e sair
+
+# LOCALIZATION NOTE (tabs.closeTabsWithKeyTitle and closeTabsWithKeyButton):
+# This section applies when quitting using the keyboard shortcut (Ctrl/Cmd+Q)
+# Windows does not show a prompt on quit when using the keyboard shortcut by
+# default.
+# %S is replaced with brandShorterName
+tabs.closeTabsWithKeyTitle=Fechar janela e sair do %S?
+# %S is replaced with brandShorterName
+tabs.closeTabsWithKeyButton=Sair de %S
+
+# LOCALIZATION NOTE (tabs.closeTabsWithKeyConfirmCheckbox):
+# %S is replaced with the text of the keyboard shortcut for quitting.
+tabs.closeTabsWithKeyConfirmCheckbox=Confirmar antes de sair com %S
+
+# LOCALIZATION NOTE (tabs.closeTabs.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be closed. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.closeTabs.tooltip=Fechar separador;Fechar #1 separadores
+
+# LOCALIZATION NOTE (tabs.muteAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %S is the keyboard shortcut for "Mute tab".
+# #1 is the number of tabs that will be muted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.muteAudio2.tooltip=Silenciar som do separador (%S);Silenciar som dos #1 separadores (%S)
+
+# LOCALIZATION NOTE (tabs.unmuteAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %S is the keyboard shortcut for "Unmute tab".
+# #1 is the number of tabs that will be unmuted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unmuteAudio2.tooltip=Repor som do separador (%S);Repor som dos #1 separadores (%S)
+
+# LOCALIZATION NOTE (tabs.muteAudio2.background.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be muted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.muteAudio2.background.tooltip=Silenciar som do separador;Silenciar som dos #1 separadores
+
+# LOCALIZATION NOTE (tabs.unmuteAudio2.background.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will be unmuted. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unmuteAudio2.background.tooltip=Repor som do separador;Repor som dos #1 separadores
+
+# LOCALIZATION NOTE (tabs.unblockAudio2.tooltip):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# #1 is the number of tabs that will have their audio unblocked. This is ignored for the
+# single tab case in English, but can be used by other locales as necessary.
+tabs.unblockAudio2.tooltip=Reproduzir separador;Reproduzir #1 separadores
+
+# LOCALIZATION NOTE (tabs.containers.tooltip):
+# Displayed as a tooltip on container tabs
+# %1$S is the title of the current tab
+# %2$S is the name of the current container
+tabs.containers.tooltip=%1$S - %2$S
+
+# LOCALIZATION NOTE (tabs.openWarningTitle, tabs.openWarningMultipleBranded, tabs.openButtonMultiple, tabs.openWarningPromptMeBranded):
+# These items are moved from chrome/browser/places/places.properties
+# Now they are not specific to bookmark.
+tabs.openWarningTitle=Confirmar abertura
+tabs.openWarningMultipleBranded=Vai abrir %S separadores. Isto pode tornar o %S lento enquanto as páginas carregam. Tem a certeza que pretende continuar?
+tabs.openButtonMultiple=Abrir separadores
+tabs.openWarningPromptMeBranded=Avisar-me quando abrir múltiplos separadores poderá tornar o %S lento
+
+browsewithcaret.checkMsg=Não voltar a mostrar esta janela.
+browsewithcaret.checkWindowTitle=Navegação por cursor
+browsewithcaret.checkLabel=A tecla F7 ativa ou desativa a navegação por cursor. Esta característica coloca um cursor móvel nas páginas da Internet, permitindo-lhe selecionar texto com o teclado. Quer ativar a navegação por cursor?
diff --git a/l10n-pt-PT/browser/chrome/browser/taskbar.properties b/l10n-pt-PT/browser/chrome/browser/taskbar.properties
new file mode 100644
index 0000000000..966b5fe1f1
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/taskbar.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+taskbar.tasks.newTab.label=Abrir novo separador
+taskbar.tasks.newTab.description=Abre um novo separador do navegador.
+taskbar.tasks.newWindow.label=Abrir nova janela
+taskbar.tasks.newWindow.description=Abre uma nova janela do navegador.
+taskbar.tasks.newPrivateWindow.label=Nova janela privada
+taskbar.tasks.newPrivateWindow.description=Abre uma nova janela de navegação privada.
+taskbar.frequent.label=Frequente
+taskbar.recent.label=Recente
diff --git a/l10n-pt-PT/browser/chrome/browser/translation.dtd b/l10n-pt-PT/browser/chrome/browser/translation.dtd
new file mode 100644
index 0000000000..fd599884c9
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/translation.dtd
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/browser/chrome/browser/translation.properties b/l10n-pt-PT/browser/chrome/browser/translation.properties
new file mode 100644
index 0000000000..cb332353bd
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/translation.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.label):
+# %S is a language name coming from the global/languageNames.properties file.
+translation.options.neverForLanguage.label=Nunca traduzir %S
+
+# LOCALIZATION NOTE (translation.options.neverForLanguage.accesskey):
+# The accesskey value used here should not clash with the values used for
+# translation.options.*.accesskey in translation.dtd
+translation.options.neverForLanguage.accesskey=N
diff --git a/l10n-pt-PT/browser/chrome/browser/uiDensity.properties b/l10n-pt-PT/browser/chrome/browser/uiDensity.properties
new file mode 100644
index 0000000000..b70c7f643f
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/uiDensity.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+uiDensity.menuitem-touch.acceltext=Modo tablet ativado
diff --git a/l10n-pt-PT/browser/chrome/browser/webrtcIndicator.properties b/l10n-pt-PT/browser/chrome/browser/webrtcIndicator.properties
new file mode 100644
index 0000000000..9646e364db
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/browser/webrtcIndicator.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE : FILE This file contains the webrtc global indicator strings
+
+# LOCALIZATION NOTE (webrtcIndicator.windowtitle): %S is the brand name (e.g. Firefox).
+# This string is used so that the window has a title in tools that enumerate/look for window
+# titles. It is not normally visible anywhere.
+webrtcIndicator.windowtitle = %S - Indicador de partilha
+
+webrtcIndicator.sharingCameraAndMicrophone.tooltip = A sua câmara e microfone estão a ser partilhados. Clique para controlar a partilha.
+webrtcIndicator.sharingCamera.tooltip = A sua câmara está a ser partilhada. Clique para controlar a partilha.
+webrtcIndicator.sharingMicrophone.tooltip = O seu microfone está a ser partilhado. Clique para controlar a partilha.
+webrtcIndicator.sharingApplication.tooltip = Está a ser partilhada uma aplicação. Clique para controlar a partilha.
+webrtcIndicator.sharingScreen.tooltip = O seu ecrã está a ser partilhado. Clique para controlar a partilha.
+webrtcIndicator.sharingWindow.tooltip = Uma janela está a ser partilhada. Clique para controlar a partilha.
+webrtcIndicator.sharingBrowser.tooltip = Um separador está a ser partilhado. Clique para controlar a partilha.
+
+
+# LOCALIZATION NOTE : The following strings are only used on Mac for
+# menus attached to icons near the clock on the mac menubar.
+
+# LOCALIZATION NOTE (webrtcIndicator.sharing*With.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.sharingCameraWith.menuitem = Partilhar câmara com “%S”
+webrtcIndicator.sharingMicrophoneWith.menuitem = A partilhar microfone com “%S”
+webrtcIndicator.sharingApplicationWith.menuitem = A partilhar uma aplicação com “%S”
+webrtcIndicator.sharingScreenWith.menuitem = A partilhar ecrã com “%S”
+webrtcIndicator.sharingWindowWith.menuitem = A partilhar uma janela com “%S”
+webrtcIndicator.sharingBrowserWith.menuitem = A partilhar um separador com “%S”
+webrtcIndicator.controlSharing.menuitem = Controlar partilha
+# LOCALIZATION NOTE (webrtcIndicator.sharingCameraWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingCameraWithNTabs.menuitem = A partilhar câmara com #1 separador;A partilhar câmara com #1 separadores
+# LOCALIZATION NOTE (webrtcIndicator.sharingMicrophoneWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingMicrophoneWithNTabs.menuitem = A partilhar microfone com #1 separador;A partilhar microfone com #1separadores
+# LOCALIZATION NOTE (webrtcIndicator.sharingApplicationWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingApplicationWithNTabs.menuitem = A partilhar uma aplicação com #1 separador;A partilhar uma aplicação com #1 separadores
+# LOCALIZATION NOTE (webrtcIndicator.sharingScreenWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingScreenWithNTabs.menuitem = A partilhar ecrã com #1 separador;A partilhar ecrã com #1 separadores
+# LOCALIZATION NOTE (webrtcIndicator.sharingWindowWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+webrtcIndicator.sharingWindowWithNTabs.menuitem = A partilhar uma janela com #1 separador;A partilhar janelas com #1 separadores
+# LOCALIZATION NOTE (webrtcIndicator.sharingBrowserWithNTabs.menuitem):
+# Semicolon-separated list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This message is shown when the contents of a tab is shared during a WebRTC
+# session, which currently is only possible with Loop/Hello.
+webrtcIndicator.sharingBrowserWithNTabs.menuitem = A partilhar um separador com #1 separador;A partilhar separadores com #1 separadores
+# LOCALIZATION NOTE (webrtcIndicator.controlSharingOn.menuitem):
+# %S is the title of the tab using the share.
+webrtcIndicator.controlSharingOn.menuitem = Controlar partilha em “%S”
diff --git a/l10n-pt-PT/browser/chrome/overrides/appstrings.properties b/l10n-pt-PT/browser/chrome/overrides/appstrings.properties
new file mode 100644
index 0000000000..1d0299f1ef
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/overrides/appstrings.properties
@@ -0,0 +1,44 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+malformedURI2=Por favor verifique que o URL está correto e tente novamente.
+fileNotFound=O Firefox não consegue localizar o ficheiro em %S.
+fileAccessDenied=O ficheiro em %S não é legível.
+dnsNotFound2=Não é possível estabelecer a ligação ao servidor em %S.
+unknownProtocolFound=O Firefox não sabe como abrir este endereço, porque um dos seguintes protocolos (%S) não está associado a qualquer programa ou não é permitido neste contexto.
+connectionFailure=O Firefox não consegue estabelecer uma ligação para o servidor em %S.
+netInterrupt=A ligação a %S foi interrompida durante o carregamento da página.
+netTimeout=O servidor em %S está a demorar demasiado tempo a responder.
+redirectLoop=O Firefox detetou que o servidor está a redirecionar o pedido para este endereço de um modo que nunca será concluído.
+## LOCALIZATION NOTE (confirmRepostPrompt): In this item, don’t translate "%S"
+confirmRepostPrompt=Para mostrar esta página, o %S tem de enviar informação que irá repetir qualquer ação (como uma pesquisa ou confirmação de uma encomenda) que foi realizada anteriormente.
+resendButton.label=Reenviar
+unknownSocketType=O Firefox não sabe como comunicar com o servidor.
+netReset=A ligação ao servidor foi reposta durante o carregamento da página.
+notCached=Este documento já não está disponível.
+netOffline=Atualmente, o Firefox está no modo offline e não pode navegar na web.
+isprinting=O documento não pode ser alterado enquanto estiver a ser impresso ou no modo de pré-visualização.
+deniedPortAccess=Este endereço utiliza uma porta de rede que é normalmente utilizada para outros propósitos para além de navegação Web. O Firefox cancelou a solicitação para sua proteção.
+proxyResolveFailure=O Firefox está configurado para utilizar um servidor de proxy que não pode ser encontrado.
+proxyConnectFailure=O Firefox está configurado para utilizar um servidor proxy que está a recusar ligações.
+contentEncodingError=A página que está a tentar ver não pode ser mostrada porque utiliza uma forma de compressão inválida ou não suportada.
+unsafeContentType=A página que está a tentar ver não pode ser apresentada porque está contida num tipo de ficheiro cuja a abertura pode não ser segura. Por favor, contacte os proprietários do site para os informar deste problema.
+externalProtocolTitle=Pedido de protocolo externo
+externalProtocolPrompt=É necessário executar uma aplicação externa para gerir ligações %1$S:\n\n\nLigação solicitada:\n\n%2$S\n\nAplicação: %3$S\n\n\nSe não estava à espera deste pedido, este pode ser uma tentativa para explorar uma fragilidade no outro programa. Cancele este pedido a menos que tenha a certeza que o mesmo não é malicioso.\n
+#LOCALIZATION NOTE (externalProtocolUnknown): The following string is shown if the application name can't be determined
+externalProtocolUnknown=
+externalProtocolChkMsg=Memorizar a minha escolha para todas as ligações deste tipo.
+externalProtocolLaunchBtn=Iniciar aplicação
+malwareBlocked=O site em %S foi reportado como um site de ataque e foi bloqueado com base nas suas preferências de segurança.
+harmfulBlocked=O site em %S foi reportado como um site potencialmente prejudicial e foi bloqueado baseado nas suas preferências de segurança.
+unwantedBlocked=O site em %S foi reportado como um site de software não-solicitado e foi bloqueado com base nas suas preferências de segurança.
+deceptiveBlocked=Esta página web em %S foi reportada como um site decetivo e foi bloqueada com base nas suas preferências de segurança.
+cspBlocked=Esta página tem uma política de segurança de conteúdo que a impede de ser carregada desta maneira.
+xfoBlocked=Esta página possui uma política X-Frame-Options que impede que a mesma seja carregada neste contexto.
+corruptedContentErrorv2=O site em %S sofreu uma violação do protocolo de rede que não pode ser reparada.
+## LOCALIZATION NOTE (sslv3Used) - Do not translate "%S".
+sslv3Used=O Firefox não pode garantir a segurança dos seus dados em %S porque este utiliza SSLv3, um protocolo de segurança obsoleto.
+inadequateSecurityError=O site tentou negociar um nível de segurança inadequado.
+blockedByPolicy=A sua organização bloqueou o acesso a esta página ou site.
+networkProtocolError=O Firefox sofreu uma violação do protocolo de rede que não pode ser reparada.
diff --git a/l10n-pt-PT/browser/chrome/overrides/netError.dtd b/l10n-pt-PT/browser/chrome/overrides/netError.dtd
new file mode 100644
index 0000000000..4fbf33882a
--- /dev/null
+++ b/l10n-pt-PT/browser/chrome/overrides/netError.dtd
@@ -0,0 +1,151 @@
+
+
+
+%brandDTD;
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Se esse endereço está correto, aqui estão outras três coisas que pode tentar:
+
+
Tentar novamente mais tarde.
+
Verificar a sua ligação à rede.
+
Se está ligado(a) mas por detrás de uma firewall, verifique que o &brandShortName; tem permissão para aceder à Web.
+
+">
+
+
Verifique se existem erros de escrita no nome do ficheiro.
Verifique se o ficheiro foi movido, renomeado ou apagado.
">
+
+
+
Este pode ter sido removido, movido ou as permissões do ficheiro podem estar a impedir o acesso.
+">
+
+O &brandShortName; não conseguiu carregar a página por alguma razão.
">
+
+
+Tem de iniciar sessão nesta rede antes de poder aceder à Internet.">
+
+
+
+
+
+
+
+O documento solicitado não está disponível na cache do &brandShortName;.
Como medida de segurança, o &brandShortName; não solicita novamente e de forma automática documentos sensíveis.
Clique em Tentar novamente para solicitar novamente o documento do site.
">
+
+
Pressione "Tentar novamente" para trocar para o modo online e recarregar a página.
">
+
+
+
Por favor, contacte os proprietários do site para os informar deste problema.
+
+">
+
+
+
Por favor, contacte os proprietários do site para os informar deste problema.
+
+">
+
+
+
+
+
+
Pode precisar de instalar outro programa para abrir este endereço.
">
+
+
Verifique as definições do proxy.
Contacte o administrador de rede para ter a certeza de que o servidor proxy está a funcionar.
">
+
+
Verifique se as definições do proxy estão corretas.
Verifique se o seu computador tem uma ligação de rede ativa.
Se o seu computador ou rede estiverem protegidos por uma firewall ou um proxy, verifique se o &brandShortName; tem permissão de acesso à Web.
">
+
+
Este problema pode, por vezes, ser causado por desativar ou recusar aceitar cookies.
">
+
+
Verifique se o seu sistema tem o Personal Security Manager instalado.
Isto pode ser causado por uma configuração não comum no servidor.
">
+
+
+
A página que está a tentar ver não pode ser mostrada porque não foi possível verificar a autenticidade dos dados recebidos.
+
Por favor, contacte os proprietários do site para os informar deste problema.
+
+">
+
+
+. Se visitar este site, atacantes podem tentar furtar informação como palavras-passe, emails, ou detalhes de cartão de crédito.">
+ porque este site requer uma ligação segura.">
+
+. O site está mal configurado ou o relógio do computador está definido para a hora errada.">
+
+
+
+
+
+O mais provável é que o problema seja do site e não há nada que possa fazer para o resolver.
+
Se está numa rede empresarial ou a utilizar software de anti-vírus, pode entrar em contacto com as equipas de apoio para assistência. Pode também notificar o administrador do site sobre o problema.
+">
+
+O relógio do seu computador está definido para . Certifique-se que o seu computador está definido para a data, hora e fuso horário corretos nas suas definições de sistema, e depois atualize .
+
Se o seu relógio já está definido para a hora correta, o site deve estar mal configurado e não há nada que possa fazer para resolver o problema. Pode notificar o administrador do site sobre o problema.
+">
+
+O mais provável é que o problema seja do site e não há nada que possa fazer para o resolver. Pode notificar o administrador do site sobre o problema.
+">
+
+
O site pode estar temporariamente indisponível ou demasiado ocupado. Tente novamente dentro de alguns momentos.
Se não conseguir carregar quaisquer páginas, verifique a ligação do seu computador à rede.
Se o seu computador ou rede estiverem protegidos por uma firewall ou proxy, certifique-se de que o &brandShortName; tem permissão para aceder à Web.
">
+
+O &brandShortName; impediu o carregamento desta página desta forma porque a página tem uma política de segurança de conteúdo que não o permite.">
+
+O &brandShortName; impediu que esta página fosse carregada porque a página possui uma política X-Frame-Options que proíbe o seu carregamento neste contexto.">
+
+A página que está a tentar ver não pode ser mostrada porque foi detetado um erro na transmissão de dados.
Por favor contacte os proprietários do site para os informar sobre este problema.
">
+
+
+
+
+
+
+
+
+
+
+
+ tem uma política de segurança chamada HTTP Strict Transport Security (HSTS), que significa que o &brandShortName; apenas pode ligar-se em segurança. Não pode adicionar uma exceção para visitar este site.">
+
+
+
+ utiliza tecnologia de segurança que está desatualizada e vulnerável a ataques. Um atacante pode facilmente revelar a informação que você achou que estaria segura. O administrador do site necessita de corrigir o problema no servidor antes de poder visitar o site.
Código de erro: NS_ERROR_NET_INADEQUATE_SECURITY
">
+
+
+
+ é provavelmente um site seguro, mas uma ligação segura não pôde ser estabelecida. O problema é causado por , que é um software no seu computador ou rede.">
+
+
+, então isto pode ser um ataque e não deve continuar para o site.">
+, então isto pode ser um ataque, e não há nada que possa fazer para aceder ao site.">
+
+, o que impede que o &brandShortName; se ligue corretamente. Para visitar , atualize o relógio do seu computador nas suas definições de sistema para a data, hora, e fuso horário corretos, e depois atualize .">
+
+
+
+
+A página que está a tentar ver não pode ser mostrada porque um erro de protocolo de rede foi detetado.
Por favor contacte os proprietários do site para os informar sobre este problema.
">
diff --git a/l10n-pt-PT/browser/crashreporter/crashreporter-override.ini b/l10n-pt-PT/browser/crashreporter/crashreporter-override.ini
new file mode 100644
index 0000000000..d3a70bf253
--- /dev/null
+++ b/l10n-pt-PT/browser/crashreporter/crashreporter-override.ini
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+# LOCALIZATION NOTE (CrashReporterProductErrorText2): The %s is replaced with a string containing detailed information.
+CrashReporterProductErrorText2=O Firefox teve um problema e falhou. Tentaremos restaurar os seus separadores e janelas quando reiniciar.\n\nInfelizmente o relator de falhas não consegue submeter um relatório de falha.\n\nDetalhes: %s
+CrashReporterDescriptionText2=O Firefox teve um problema e falhou. Tentaremos restaurar os seus separadores e janelas quando reiniciar.\n\nPara nos ajudar a diagnosticar e corrigir o problema, pode enviar-nos um relatório de falha.
diff --git a/l10n-pt-PT/browser/defaultagent/defaultagent_localized.ini b/l10n-pt-PT/browser/defaultagent/defaultagent_localized.ini
new file mode 100644
index 0000000000..272af007da
--- /dev/null
+++ b/l10n-pt-PT/browser/defaultagent/defaultagent_localized.ini
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# This file is in the UTF-8 encoding
+[Strings]
+DefaultBrowserAgentTaskDescription=A tarefa do navegador predefinido verifica quando o navegador predefinido se altera do %MOZ_APP_DISPLAYNAME% para outro navegador. Se a alteração ocorrer em circunstâncias suspeitas, irá questionar os utilizadores para mudarem novamente para o %MOZ_APP_DISPLAYNAME% nunca mais do que duas vezes. Esta tarefa é instalada automaticamente pelo %MOZ_APP_DISPLAYNAME% e é reinstalada quando o %MOZ_APP_DISPLAYNAME% é atualizado. Para desativar esta tarefa, atualize a preferência “default-browser-agent.enabled” na página about:config ou a definição da política empresarial “DisableDefaultBrowserAgent” do %MOZ_APP_DISPLAYNAME%.
+
+DefaultBrowserNotificationTitle=Definir o %MOZ_APP_DISPLAYNAME% como o seu navegador predefinido
+DefaultBrowserNotificationText=O %MOZ_APP_DISPLAYNAME% já não é o seu navegador predefinido. Definir como predefinido?
+DefaultBrowserNotificationYesButtonText=Sim
+DefaultBrowserNotificationNoButtonText=Não
diff --git a/l10n-pt-PT/browser/defines.inc b/l10n-pt-PT/browser/defines.inc
new file mode 100644
index 0000000000..dd645f2383
--- /dev/null
+++ b/l10n-pt-PT/browser/defines.inc
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#filter emptyLines
+
+#define MOZ_LANGPACK_CREATOR mozilla.org
+
+# If non-English locales wish to credit multiple contributors, uncomment this
+# variable definition and use the format specified.
+#define MOZ_LANGPACK_CONTRIBUTORS Alberto CastroArtur AraújoBruno DuarteCarlos RodriguesCláudio EsperançaDiogo SantosFrancisco CastanheiroGonçalo MatosJoão Miguel NevesManuela SilvaMarco SousaPedro AntunesPedro FigueiraRita FarinhaRodrigo CunhaSérgio Marques
+
+#unfilter emptyLines
diff --git a/l10n-pt-PT/browser/extensions/formautofill/formautofill.properties b/l10n-pt-PT/browser/extensions/formautofill/formautofill.properties
new file mode 100644
index 0000000000..9087fc5f7a
--- /dev/null
+++ b/l10n-pt-PT/browser/extensions/formautofill/formautofill.properties
@@ -0,0 +1,231 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (saveAddressesMessage): %S is brandShortName. This string is used on the doorhanger to
+# notify users that addresses are saved.
+saveAddressesMessage = O %S agora guarda endereços para que possa preencher formulários mais rápido.
+# LOCALIZATION NOTE (autofillOptionsLink, autofillOptionsLinkOSX): These strings are used in the doorhanger for
+# updating addresses. The link leads users to Form Autofill browser preferences.
+autofillOptionsLink = Opções de autopreenchimento de formulários
+autofillOptionsLinkOSX = Preferências de autopreenchimento de formulários
+# LOCALIZATION NOTE (changeAutofillOptions, changeAutofillOptionsOSX): These strings are used on the doorhanger
+# that notifies users that addresses are saved. The button leads users to Form Autofill browser preferences.
+changeAutofillOptions = Alterar opções de autopreenchimento de formulários
+changeAutofillOptionsOSX = Alterar preferências de autopreenchimento de formulários
+changeAutofillOptionsAccessKey = c
+# LOCALIZATION NOTE (addressesSyncCheckbox): If Sync is enabled, this checkbox is displayed on the doorhanger
+# shown when saving addresses.
+addressesSyncCheckbox = Partilhar endereços com dispositivos sincronizados
+# LOCALIZATION NOTE (creditCardsSyncCheckbox): If Sync is enabled and credit card sync is available,
+# this checkbox is displayed on the doorhanger shown when saving credit card.
+creditCardsSyncCheckbox = Partilhar cartões de crédito com dispositivos sincronizados
+# LOCALIZATION NOTE (updateAddressMessage, updateAddressDescriptionLabel, createAddressLabel, updateAddressLabel):
+# Used on the doorhanger when an address change is detected.
+updateAddressMessage = Gostaria de atualizar o seu endereço com esta nova informação?
+updateAddressDescriptionLabel = Endereço a atualizar:
+createAddressLabel = Criar novo endereço
+createAddressAccessKey = C
+updateAddressLabel = Atualizar endereço
+updateAddressAccessKey = u
+# LOCALIZATION NOTE (saveCreditCardMessage, saveCreditCardDescriptionLabel, saveCreditCardLabel, cancelCreditCardLabel, neverSaveCreditCardLabel):
+# Used on the doorhanger when users submit payment with credit card.
+# LOCALIZATION NOTE (saveCreditCardMessage): %S is brandShortName.
+saveCreditCardMessage = Gostaria que o %S o guardasse este cartão de crédito? (O código de segurança não irá ser guardado)
+saveCreditCardDescriptionLabel = Cartão de crédito a guardar:
+saveCreditCardLabel = Guardar cartão de crédito
+saveCreditCardAccessKey = G
+cancelCreditCardLabel = Não guardar
+cancelCreditCardAccessKey = d
+neverSaveCreditCardLabel = Nunca guardar cartões de crédito
+neverSaveCreditCardAccessKey = N
+# LOCALIZATION NOTE (updateCreditCardMessage, updateCreditCardDescriptionLabel, createCreditCardLabel, updateCreditCardLabel):
+# Used on the doorhanger when an credit card change is detected.
+updateCreditCardMessage = Gostaria de atualizar o seu cartão de crédito com esta nova informação?
+updateCreditCardDescriptionLabel = Cartão de crédito a atualizar:
+createCreditCardLabel = Criar novo cartão de crédito
+createCreditCardAccessKey = C
+updateCreditCardLabel = Atualizar cartão de crédito
+updateCreditCardAccessKey = u
+# LOCALIZATION NOTE (openAutofillMessagePanel): Tooltip label for Form Autofill doorhanger icon on address bar.
+openAutofillMessagePanel = Abrir painel de mensagem de autopreenchimento de formulários
+
+# LOCALIZATION NOTE (autocompleteFooterOption2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOption2 = Opções de autopreenchimento de formulários
+# LOCALIZATION NOTE (autocompleteFooterOptionOSX2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+autocompleteFooterOptionOSX2 = Preferências de autopreenchimento de formulários
+# LOCALIZATION NOTE (autocompleteFooterOptionShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionShort2 = Opções de autopreenchimento
+# LOCALIZATION NOTE (autocompleteFooterOptionOSXShort2):
+# Used as a label for the button, displayed at the bottom of the dropdown suggestion, to open Form Autofill browser preferences.
+# The short version is used for inputs below a certain width (e.g. 150px).
+autocompleteFooterOptionOSXShort2 = Preferências de autopreenchimento
+# LOCALIZATION NOTE (category.address, category.name, category.organization2, category.tel, category.email):
+# Used in autofill drop down suggestion to indicate what other categories Form Autofill will attempt to fill.
+category.address = endereço
+category.name = nome
+category.organization2 = organização
+category.tel = telefone
+category.email = email
+# LOCALIZATION NOTE (fieldNameSeparator): This is used as a separator between categories.
+fieldNameSeparator = ,\u0020
+# LOCALIZATION NOTE (phishingWarningMessage, phishingWarningMessage2): The warning
+# text that is displayed for informing users what categories are about to be filled.
+# "%S" will be replaced with a list generated from the pre-defined categories.
+# The text would be e.g. Also autofills organization, phone, email.
+phishingWarningMessage = Também auto-preenche %S
+phishingWarningMessage2 = Auto-preenche %S
+# LOCALIZATION NOTE (insecureFieldWarningDescription): %S is brandShortName. This string is used in drop down
+# suggestion when users try to autofill credit card on an insecure website (without https).
+insecureFieldWarningDescription = O %S detetou um site inseguro. O autopreenchimento de formulários está temporariamente desativado.
+# LOCALIZATION NOTE (clearFormBtnLabel2): Label for the button in the dropdown menu that used to clear the populated
+# form.
+clearFormBtnLabel2 = Limpar o formulário de autopreenchimento
+
+autofillHeader = Formulários e autopreenchimento
+# LOCALIZATION NOTE (autofillAddressesCheckbox): Label for the checkbox that enables autofilling addresses.
+autofillAddressesCheckbox = Preencher automaticamente as moradas
+# LOCALIZATION NOTE (learnMoreLabel): Label for the link that leads users to the Form Autofill SUMO page.
+learnMoreLabel = Saber mais
+# LOCALIZATION NOTE (savedAddressesBtnLabel): Label for the button that opens a dialog that shows the
+# list of saved addresses.
+savedAddressesBtnLabel = Endereços guardados…
+# LOCALIZATION NOTE (autofillCreditCardsCheckbox): Label for the checkbox that enables autofilling credit cards.
+autofillCreditCardsCheckbox = Autopreenchimento de cartões de crédito
+# LOCALIZATION NOTE (savedCreditCardsBtnLabel): Label for the button that opens a dialog that shows the list
+# of saved credit cards.
+savedCreditCardsBtnLabel = Cartões de crédito guardados…
+
+autofillReauthCheckboxMac = Exigir autenticação do macOS para preencher automaticamente, mostrar ou editar cartões de crédito armazenados.
+autofillReauthCheckboxWin = Exigir autenticação do Windows para preencher automaticamente, mostrar ou editar cartões de crédito armazenados.
+autofillReauthCheckboxLin = Exigir autenticação do Linux para preencher automaticamente, mostrar ou editar cartões de crédito armazenados.
+
+# LOCALIZATION NOTE (autofillReauthOSDialogMac): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+autofillReauthOSDialogMac = alterar as configurações de autenticação
+autofillReauthOSDialogWin = Para alterar as configurações de autenticação, introduza as suas credenciais de autenticação do Windows.
+autofillReauthOSDialogLin = Para alterar as configurações de autenticação, introduza as suas credenciais de autenticação do Linux.
+
+# LOCALIZATION NOTE (manageAddressesTitle, manageCreditCardsTitle): The dialog title for the list of addresses or
+# credit cards in browser preferences.
+manageAddressesTitle = Endereços guardados
+manageCreditCardsTitle = Cartões de crédito guardados
+# LOCALIZATION NOTE (addressesListHeader, creditCardsListHeader): The header for the list of addresses or credit cards
+# in browser preferences.
+addressesListHeader = Endereços
+creditCardsListHeader = Cartões de crédito
+removeBtnLabel = Remover
+addBtnLabel = Adicionar…
+editBtnLabel = Editar…
+# LOCALIZATION NOTE (manageDialogsWidth): This strings sets the default width for windows used to manage addresses and
+# credit cards.
+manageDialogsWidth = 560px
+
+# LOCALIZATION NOTE (addNewAddressTitle, editAddressTitle): The dialog title for creating or editing addresses
+# in browser preferences.
+addNewAddressTitle = Adicionar novo endereço
+editAddressTitle = Editar endereço
+givenName = Primeiro nome
+additionalName = Nome do meio
+familyName = Último nome
+organization2 = Organização
+streetAddress = Endereço da rua
+
+## address-level-3 (Sublocality) names
+# LOCALIZATION NOTE (neighborhood): Used in IR, MX
+neighborhood = Vizinhança
+# LOCALIZATION NOTE (village_township): Used in MY
+village_township = Aldeia ou município
+island = Ilha
+# LOCALIZATION NOTE (townland): Used in IE
+townland = Cidade
+
+## address-level-2 names
+city = Cidade
+# LOCALIZATION NOTE (district): Used in HK, SD, SY, TR as Address Level-2
+# and used in KR as Sublocality.
+district = Distrito
+# LOCALIZATION NOTE (post_town): Used in GB, NO, SE
+post_town = Cidade postal
+# LOCALIZATION NOTE (suburb): Used in AU as Address Level-2
+# and used in ZZ as Sublocality.
+suburb = Bairro
+
+# address-level-1 names
+province = Província
+state = Estado
+county = País
+# LOCALIZATION NOTE (parish): Used in BB, JM
+parish = Freguesia
+# LOCALIZATION NOTE (prefecture): Used in JP
+prefecture = Prefeitura
+# LOCALIZATION NOTE (area): Used in HK
+area = Área
+# LOCALIZATION NOTE (do_si): Used in KR
+do_si = Do/Si
+# LOCALIZATION NOTE (department): Used in NI, CO
+department = Departamento
+# LOCALIZATION NOTE (emirate): Used in AE
+emirate = Emirado
+# LOCALIZATION NOTE (oblast): Used in RU and UA
+oblast = Oblast
+
+# LOCALIZATION NOTE (pin, postalCode, zip, eircode): Postal code name types
+# LOCALIZATION NOTE (pin): Used in IN
+pin = Pin
+postalCode = Código postal
+zip = Código postal
+# LOCALIZATION NOTE (eircode): Used in IE
+eircode = Eircode
+
+country = País ou região
+tel = Telefone
+email = Email
+cancelBtnLabel = Cancelar
+saveBtnLabel = Guardar
+countryWarningMessage2 = O autopreenchimento de formulários está disponível apenas para alguns países.
+
+# LOCALIZATION NOTE (addNewCreditCardTitle, editCreditCardTitle): The dialog title for creating or editing
+# credit cards in browser preferences.
+addNewCreditCardTitle = Adicionar novo cartão de crédito
+editCreditCardTitle = Editar cartão de crédito
+cardNumber = Número do cartão
+invalidCardNumber = Por favor introduza um número de cartão válido
+nameOnCard = Nome no cartão
+cardExpiresMonth = Mês exp.
+cardExpiresYear = Ano exp.
+billingAddress = Endereço de cobrança
+cardNetwork = Tipo de cartão
+# LOCALIZATION NOTE (cardCVV): Credit card security code https://en.wikipedia.org/wiki/Card_security_code
+cardCVV = CVV
+
+# LOCALIZATION NOTE: (cardNetwork.*): These are brand names and should only be translated when a locale-specific name for that brand is in common use
+cardNetwork.amex = American Express
+cardNetwork.cartebancaire = Carte Bancaire
+cardNetwork.diners = Diners Club
+cardNetwork.discover = Discover
+cardNetwork.jcb = JCB
+cardNetwork.mastercard = MasterCard
+cardNetwork.mir = MIR
+cardNetwork.unionpay = Union Pay
+cardNetwork.visa = Visa
+
+# LOCALIZATION NOTE (editCreditCardPasswordPrompt.*, useCreditCardPasswordPrompt.*): %S is brandShortName.
+editCreditCardPasswordPrompt.win = O %S está a tentar mostrar informação de cartão de crédito. Confirme o acesso a esta conta Windows abaixo.
+# LOCALIZATION NOTE (editCreditCardPasswordPrompt.macos): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+editCreditCardPasswordPrompt.macos = mostrar informação do cartão de crédito
+editCreditCardPasswordPrompt.linux = O %S está a tentar mostrar informação de cartão de crédito.
+
+useCreditCardPasswordPrompt.win = O %S está a tentar utilizar informação de cartão de crédito armazenada. Confirme o acesso a esta conta Windows abaixo.
+# LOCALIZATION NOTE (useCreditCardPasswordPrompt.macos): This string is
+# preceded by the operating system (macOS) with "Firefox is trying to ", and
+# has a period added to its end. Make sure to test in your locale.
+useCreditCardPasswordPrompt.macos = utilizar informação do cartão de crédito armazenada
+useCreditCardPasswordPrompt.linux = O %S está a tentar utilizar informação de cartão de crédito armazenada.
diff --git a/l10n-pt-PT/browser/extensions/report-site-issue/webcompat.properties b/l10n-pt-PT/browser/extensions/report-site-issue/webcompat.properties
new file mode 100644
index 0000000000..06a37616b6
--- /dev/null
+++ b/l10n-pt-PT/browser/extensions/report-site-issue/webcompat.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE(wc-reporter.label2): This string will be used in the
+# Firefox page actions menu. Localized length should be considered.
+wc-reporter.label2=Reportar problema no site…
+# LOCALIZATION NOTE(wc-reporter.tooltip): A site compatibility issue is
+# a website bug that exists in one browser (Firefox), but not another.
+wc-reporter.tooltip=Reportar um problema de compatibilidade com um site
diff --git a/l10n-pt-PT/browser/firefox-l10n.js b/l10n-pt-PT/browser/firefox-l10n.js
new file mode 100644
index 0000000000..b410ad9aef
--- /dev/null
+++ b/l10n-pt-PT/browser/firefox-l10n.js
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
diff --git a/l10n-pt-PT/browser/installer/custom.properties b/l10n-pt-PT/browser/installer/custom.properties
new file mode 100644
index 0000000000..882592fcc8
--- /dev/null
+++ b/l10n-pt-PT/browser/installer/custom.properties
@@ -0,0 +1,94 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+REG_APP_DESC=O $BrandShortName proporciona uma navegação segura e simples. Um interface familiar, funcionalidades de segurança melhoradas, incluindo proteção contra roubo de identidade, e a pesquisa integrada permitem-lhe tirar o máximo partido da Internet.
+PRIVATE_BROWSING_SHORTCUT_TITLE=$BrandShortName Navegação Privada
+CONTEXT_OPTIONS=&Opções do $BrandShortName
+CONTEXT_SAFE_MODE=Modo de &segurança do $BrandShortName
+OPTIONS_PAGE_TITLE=Tipo de instalação
+OPTIONS_PAGE_SUBTITLE=Escolha as opções de instalação
+SHORTCUTS_PAGE_TITLE=Configurar atalhos
+SHORTCUTS_PAGE_SUBTITLE=Criar ícones do programa
+COMPONENTS_PAGE_TITLE=Configurar componentes opcionais
+COMPONENTS_PAGE_SUBTITLE=Componentes opcionais recomendados
+OPTIONAL_COMPONENTS_DESC=O serviço de manutenção permite-lhe atualizar o $BrandShortName em segundo plano.
+MAINTENANCE_SERVICE_CHECKBOX_DESC=Instalar o serviço de &manutenção
+SUMMARY_PAGE_TITLE=Sumário
+SUMMARY_PAGE_SUBTITLE=Pronto para instalar o $BrandShortName
+SUMMARY_INSTALLED_TO=O $BrandShortName será instalado nesta localização:
+SUMMARY_REBOOT_REQUIRED_INSTALL=Poderá ser necessário reiniciar o seu computador para concluir a instalação.
+SUMMARY_REBOOT_REQUIRED_UNINSTALL=Pode ser necessário reiniciar o computador para completar a desinstalação.
+SUMMARY_TAKE_DEFAULTS=&Utilizar o $BrandShortName como o meu navegador predefinido
+SUMMARY_INSTALL_CLICK=Clique Instalar para continuar.
+SUMMARY_UPGRADE_CLICK=Clique Atualizar para continuar.
+SURVEY_TEXT=&Diga-nos o que achou do $BrandShortName
+LAUNCH_TEXT=&Iniciar o $BrandShortName agora
+CREATE_ICONS_DESC=Criar ícones para o $BrandShortName:
+ICONS_DESKTOP=No meu ambiente &de trabalho
+ICONS_STARTMENU=Na pasta de programa&s do menu Iniciar
+ICONS_QUICKLAUNCH=Na minha barra de &Início rápido
+ICONS_TASKBAR=Na minha barra de &tarefas
+WARN_MANUALLY_CLOSE_APP_INSTALL=Tem que fechar o $BrandShortName para continuar com a instalação.\n\nPor favor feche o $BrandShortName.
+WARN_MANUALLY_CLOSE_APP_UNINSTALL=Tem que fechar o $BrandShortName para continuar com a desinstalação.\n\nPor favor feche o $BrandShortName.
+WARN_MANUALLY_CLOSE_APP_REFRESH=Tem de fechar o $BrandShortName para continuar a renovação.\n\nPor favor, feche o $BrandShortName para continuar.
+WARN_WRITE_ACCESS=Não tem permissões de escrita no diretório de instalação.\n\nClique OK para selecionar um diretório diferente.
+WARN_DISK_SPACE=Não tem espaço em disco suficiente para instalar a aplicação nesta localização.\n\nClique OK para escolher uma localização diferente.
+WARN_MIN_SUPPORTED_OSVER_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer ${MinSupportedVer} ou mais recente. Por favor, clique no botão OK para informação adicional.
+WARN_MIN_SUPPORTED_CPU_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer um processador com suporte a ${MinSupportedCPU}. Por favor, clique no botão OK para informação adicional.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer ${MinSupportedVer} ou mais recente e um processador com suporte a ${MinSupportedCPU}. Por favor, clique no botão OK para informação adicional.
+WARN_RESTART_REQUIRED_UNINSTALL=Tem que reiniciar o computador para completar uma desinstalação anterior do $BrandShortName. Pretende reiniciar agora?
+WARN_RESTART_REQUIRED_UPGRADE=Tem que reiniciar o computador para completar uma atualização anterior do $BrandShortName. Pretende reiniciar agora?
+ERROR_CREATE_DIRECTORY_PREFIX=Erro a criar diretório:
+ERROR_CREATE_DIRECTORY_SUFFIX=Clique em Cancelar para parar a instalação ou\nem Voltar a tentar para tentar novamente.
+
+UN_CONFIRM_PAGE_TITLE=Desinstalar o $BrandFullName
+UN_CONFIRM_PAGE_SUBTITLE=Remover o $BrandFullName do seu computador.
+UN_CONFIRM_UNINSTALLED_FROM=O $BrandShortName será desinstalado a partir da seguinte localização:
+UN_CONFIRM_CLICK=Clique em Desinstalar para continuar.
+
+UN_REFRESH_PAGE_TITLE=Como alternativa, renovar o $BrandShortName?
+UN_REFRESH_PAGE_EXPLANATION=Se estiver a ter problemas com o $BrandShortName, uma renovação pode ajudar. \n\nIsto irá restaurar as configurações predefinidas e irá remover extras. Comece de novo para obter o desempenho ideal.
+UN_REFRESH_LEARN_MORE=&Saber mais
+UN_REFRESH_BUTTON=&Renovar o $BrandShortName
+
+BANNER_CHECK_EXISTING=A verificar a instalação existente…
+
+STATUS_INSTALL_APP=A instalar o $BrandShortName…
+STATUS_INSTALL_LANG=A instalar os ficheiros de idioma (${AB_CD})…
+STATUS_UNINSTALL_MAIN=A desinstalar o $BrandShortName…
+STATUS_CLEANUP=A efetuar uma limpeza…
+
+UN_SURVEY_CHECKBOX_LABEL=Dizer à Mozilla por que desinstalou o $BrandShortName
+
+# _DESC strings support approximately 65 characters per line.
+# One line
+OPTIONS_SUMMARY=Escolha o tipo de instalação preferida e clique em Seguinte.
+# One line
+OPTION_STANDARD_DESC=O $BrandShortName será instalado com as opções mais comuns.
+OPTION_STANDARD_RADIO=&Padrão
+# Two lines
+OPTION_CUSTOM_DESC=Poderá escolher individualmente as opções de instalação. Recomendado para utilizadores experientes.
+OPTION_CUSTOM_RADIO=&Personalizar
+
+# LOCALIZATION NOTE:
+# The following text replaces the Install button text on the summary page.
+# Verify that the access key for InstallBtn (in override.properties) and
+# UPGRADE_BUTTON is not already used by SUMMARY_TAKE_DEFAULTS.
+UPGRADE_BUTTON=At&ualizar
diff --git a/l10n-pt-PT/browser/installer/mui.properties b/l10n-pt-PT/browser/installer/mui.properties
new file mode 100644
index 0000000000..cd0d78fcbb
--- /dev/null
+++ b/l10n-pt-PT/browser/installer/mui.properties
@@ -0,0 +1,61 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# To make the l10n tinderboxen see changes to this file you can change a value
+# name by adding - to the end of the name followed by chars (e.g. Branding-2).
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+MUI_TEXT_WELCOME_INFO_TITLE=Bem-vindo(a) ao assistente de instalação do $BrandFullNameDA
+MUI_TEXT_WELCOME_INFO_TEXT=Este assistente irá guiar-lhe na instalação do $BrandFullNameDA.\n\nÉ recomendado que feche todas as outras aplicações antes de iniciar a configuração. Isto irá fazer possível atualizar ficheiros do sistema relevantes sem que tenha de reiniciar o seu computador.\n\n$_CLICK
+MUI_TEXT_COMPONENTS_TITLE=Escolha os componentes
+MUI_TEXT_COMPONENTS_SUBTITLE=Escolha as funcionalidades do $BrandFullNameDA a instalar.
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_TITLE=Descrição
+MUI_INNERTEXT_COMPONENTS_DESCRIPTION_INFO=Posicione o rato sobre um componente para ver a sua descrição.
+MUI_TEXT_DIRECTORY_TITLE=Escolha a localização para a instalação
+MUI_TEXT_DIRECTORY_SUBTITLE=Escolha a pasta na qual pretende instalar o $BrandFullNameDA.
+MUI_TEXT_INSTALLING_TITLE=A instalar
+MUI_TEXT_INSTALLING_SUBTITLE=Por favor aguarde enquanto o $BrandFullNameDA é instalado.
+MUI_TEXT_FINISH_TITLE=Instalação concluída
+MUI_TEXT_FINISH_SUBTITLE=A instalação foi concluída com sucesso.
+MUI_TEXT_ABORT_TITLE=A instalação foi abortada
+MUI_TEXT_ABORT_SUBTITLE=A instalação não foi concluída com sucesso.
+MUI_BUTTONTEXT_FINISH=&Concluir
+MUI_TEXT_FINISH_INFO_TITLE=Concluindo o assistente de instalação do $BrandFullNameDA
+MUI_TEXT_FINISH_INFO_TEXT=O $BrandFullNameDA foi instalado no seu computador.\n\nClique em Concluir para fechar este assistente.
+MUI_TEXT_FINISH_INFO_REBOOT=O seu computador tem de ser reiniciado para poder concluir a instalação do $BrandFullNameDA. Pretende reiniciar agora?
+MUI_TEXT_FINISH_REBOOTNOW=Reiniciar agora
+MUI_TEXT_FINISH_REBOOTLATER=Reiniciar mais tarde
+MUI_TEXT_STARTMENU_TITLE=Escolha a pasta do menu Iniciar
+MUI_TEXT_STARTMENU_SUBTITLE=Escolha a pasta do menu Iniciar para os atalhos do $BrandFullNameDA.
+MUI_INNERTEXT_STARTMENU_TOP=Selecione a pasta do menu Iniciar na qual pretende criar os atalhos do programa. Pode também introduzir um nome para criar uma nova pasta.
+MUI_TEXT_ABORTWARNING=Tem a certeza que pretende sair da instalação do $BrandFullName?
+MUI_UNTEXT_WELCOME_INFO_TITLE=Bem-vindo(a) ao assistente de desinstalação do $BrandFullNameDA
+MUI_UNTEXT_WELCOME_INFO_TEXT=Este assistente irá guiar-lhe na desinstalação do $BrandFullNameDA.\n\nAntes de iniciar a desinstalação, feche o $BrandFullNameDA.\n\n$_CLICK
+MUI_UNTEXT_CONFIRM_TITLE=Desinstalação do $BrandFullNameDA
+MUI_UNTEXT_CONFIRM_SUBTITLE=Remover o $BrandFullNameDA do seu computador.
+MUI_UNTEXT_UNINSTALLING_TITLE=A desinstalar
+MUI_UNTEXT_UNINSTALLING_SUBTITLE=Por favor aguarde enquanto o $BrandFullNameDA é desinstalado.
+MUI_UNTEXT_FINISH_TITLE=Desinstalação concluída
+MUI_UNTEXT_FINISH_SUBTITLE=A desinstalação foi concluída com sucesso.
+MUI_UNTEXT_ABORT_TITLE=Desinstalação abortada
+MUI_UNTEXT_ABORT_SUBTITLE=A desinstalação não foi concluída com sucesso.
+MUI_UNTEXT_FINISH_INFO_TITLE=Concluindo o assistente de desinstalação do $BrandFullNameDA
+MUI_UNTEXT_FINISH_INFO_TEXT=O $BrandFullNameDA foi desinstalado do seu computador.\n\nClique em Concluir para fechar este assistente.
+MUI_UNTEXT_FINISH_INFO_REBOOT=O seu computador tem de ser reiniciado para poder concluir a desinstalação do $BrandFullNameDA. Pretende reiniciar agora?
+MUI_UNTEXT_ABORTWARNING=Tem a certeza que pretende sair da desinstalação do $BrandFullName?
diff --git a/l10n-pt-PT/browser/installer/nsisstrings.properties b/l10n-pt-PT/browser/installer/nsisstrings.properties
new file mode 100644
index 0000000000..2d65510614
--- /dev/null
+++ b/l10n-pt-PT/browser/installer/nsisstrings.properties
@@ -0,0 +1,50 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandProductName, $BrandFullName,
+# or $BrandFullNameDA with a custom string and always use the same one as used
+# by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+INSTALLER_WIN_CAPTION=Instalador do $BrandShortName
+
+STUB_CLEANUP_PAVEOVER_HEADER2=O $BrandShortName já está instalado. Vamos atualizá-lo.
+STUB_CLEANUP_REINSTALL_HEADER2=O $BrandShortName já foi instalado anteriormente. Vamos obter-lhe uma nova cópia.
+
+STUB_CLEANUP_PAVEOVER_BUTTON2=Atualizar
+STUB_CLEANUP_REINSTALL_BUTTON2=Reinstalar
+STUB_CLEANUP_CHECKBOX_LABEL2=Restaurar as definições predefinidas e remover os extras antigos para um melhor desempenho
+
+STUB_INSTALLING_LABEL2=A instalar agora…
+STUB_INSTALLING_HEADLINE2=Otimize as suas definições para velocidade, privacidade e segurança.
+STUB_INSTALLING_BODY2=O $BrandShortName estará pronto em breve.
+STUB_BLURB_FIRST1=O $BrandShortName mais rápido e dinâmico de sempre
+STUB_BLURB_SECOND1=Carregamento de páginas e troca de separadores mais rápidos
+STUB_BLURB_THIRD1=Navegação privada poderosa
+STUB_BLURB_FOOTER2=Construído para pessoas, não para lucros
+
+WARN_MIN_SUPPORTED_OSVER_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer ${MinSupportedVer} ou mais recente. Por favor, clique no botão OK para informação adicional.
+WARN_MIN_SUPPORTED_CPU_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer um processador com suporte a ${MinSupportedCPU}. Por favor, clique no botão OK para informação adicional.
+WARN_MIN_SUPPORTED_OSVER_CPU_MSG=Desculpe, o $BrandShortName não pode ser instalado. Esta versão do $BrandShortName requer ${MinSupportedVer} ou mais recente e um processador com suporte a ${MinSupportedCPU}. Por favor, clique no botão OK para informação adicional.
+WARN_WRITE_ACCESS_QUIT=Não tem acesso para escrever para o diretório de instalação
+WARN_DISK_SPACE_QUIT=Não tem espaço em disco suficiente para instalar.
+
+ERROR_DOWNLOAD_CONT=Hmm. Por alguma razão, não pudemos instalar o $BrandShortName.\nEscolha OK para recomeçar.
+
+STUB_CANCEL_PROMPT_HEADING=Pretende instalar o $BrandShortName?
+STUB_CANCEL_PROMPT_MESSAGE=Se cancelar, o $BrandShortName não será instalado.
+STUB_CANCEL_PROMPT_BUTTON_CONTINUE=Instalar o $BrandShortName
+STUB_CANCEL_PROMPT_BUTTON_EXIT=Cancelar
diff --git a/l10n-pt-PT/browser/installer/override.properties b/l10n-pt-PT/browser/installer/override.properties
new file mode 100644
index 0000000000..57356b97d7
--- /dev/null
+++ b/l10n-pt-PT/browser/installer/override.properties
@@ -0,0 +1,86 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+
+# This file must be saved as UTF8
+
+# Accesskeys are defined by prefixing the letter that is to be used for the
+# accesskey with an ampersand (e.g. &).
+
+# Do not replace $BrandShortName, $BrandFullName, or $BrandFullNameDA with a
+# custom string and always use the same one as used by the en-US files.
+# $BrandFullNameDA allows the string to contain an ampersand (e.g. DA stands
+# for double ampersand) and prevents the letter following the ampersand from
+# being used as an accesskey.
+
+# You can use \n to create a newline in the string but only when the string
+# from en-US contains a \n.
+
+# Strings that require a space at the end should be enclosed with double
+# quotes and the double quotes will be removed. To add quotes to the beginning
+# and end of a strong enclose the add and additional double quote to the
+# beginning and end of the string (e.g. ""This will include quotes"").
+
+SetupCaption=Instalação do $BrandFullName
+UninstallCaption=Desinstalação do $BrandFullName
+BackBtn=< &Anterior
+NextBtn=&Seguinte >
+AcceptBtn=&Aceito os termos do acordo de licenciamento
+DontAcceptBtn=Não aceito os termos &do acordo de licenciamento
+InstallBtn=&Instalar
+UninstallBtn=&Desinstalar
+CancelBtn=Cancelar
+CloseBtn=Fe&char
+BrowseBtn=Explo&rar…
+ShowDetailsBtn=Mostrar &detalhes
+ClickNext=Clique em Seguinte para continuar.
+ClickInstall=Clique Instalar para iniciar a instalação.
+ClickUninstall=Clique em Desinstalar para iniciar a desinstalação.
+Completed=Concluído
+LicenseTextRB=Por favor leia o acordo de licenciamento antes de instalar o $BrandFullNameDA. Se aceita todos os termos do acordo, selecione a primeira opção abaixo. $_CLICK
+ComponentsText=Marque os componentes que quer instalar e desmarque os que não quer instalar. $_CLICK
+ComponentsSubText2_NoInstTypes=Selecione os componentes a instalar:
+DirText=O instalador irá instalar o $BrandFullNameDA na seguinte pasta. Para o instalar noutra pasta, clique em Procurar e selecione outra pasta. $_CLICK
+DirSubText=Pasta de destino
+DirBrowseText=Selecione a pasta onde pretende instalar o $BrandFullNameDA:
+SpaceAvailable="Espaço disponível: "
+SpaceRequired="Espaço necessário: "
+UninstallingText=O $BrandFullNameDA será desinstalado da seguinte pasta. $_CLICK
+UninstallingSubText=A desinstalar de:
+FileError=Erro ao abrir o ficheiro para escrita: \r\n\r\n$0\r\n\r\nClique em Abortar para terminar a instalação,\r\nem Voltar a tentar para tentar novamente, ou\r\nem Ignorar para ignorar este ficheiro.
+FileError_NoIgnore=Erro ao abrir o ficheiro para escrita: \r\n\r\n$0\r\n\r\nClique em Voltar a tentar para tentar novamente, ou\r\nem Cancelar para terminar a instalação.
+CantWrite="Não é possível escrever: "
+CopyFailed=A cópia falhou
+CopyTo="Copiar para "
+Registering="A registar: "
+Unregistering="A remover registo: "
+SymbolNotFound="Símbolo não encontrado: "
+CouldNotLoad="Não foi possível carregar: "
+CreateFolder="Criar pasta: "
+CreateShortcut="Criar atalho: "
+CreatedUninstaller="Desinstalador criado: "
+Delete="Apagar ficheiro: "
+DeleteOnReboot="Apagar ao reiniciar: "
+ErrorCreatingShortcut="Erro ao criar atalho: "
+ErrorCreating="Erro ao criar: "
+ErrorDecompressing=Erro ao descompactar dados! Instalador danificado?
+ErrorRegistering=Erro ao registar DLL
+ExecShell="ExecShell: "
+Exec="Execução: "
+Extract="Extração: "
+ErrorWriting="Extração: erro ao escrever o ficheiro "
+InvalidOpcode=Programa de instalação corrompido: opcode inválido
+NoOLE="Nenhum OLE para: "
+OutputFolder="Pasta de saída: "
+RemoveFolder="Remover pasta: "
+RenameOnReboot="Renomear ao reiniciar: "
+Rename="Renomear: "
+Skipped="Ignorado: "
+CopyDetails=Copiar detalhes para a área de transferência
+LogInstall=Registar processo de instalação
+Byte=B
+Kilo=K
+Mega=M
+Giga=G
diff --git a/l10n-pt-PT/browser/langpack-metadata.ftl b/l10n-pt-PT/browser/langpack-metadata.ftl
new file mode 100644
index 0000000000..7e32a63c04
--- /dev/null
+++ b/l10n-pt-PT/browser/langpack-metadata.ftl
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+## Strings used to define the metadata of langpacks published on addons.mozilla.org.
+## Only text elements and literals are supported for these strings.
+
+langpack-creator = mozilla.org
+# To credit multiple contributors, use a comma-delimited list.
+# Example: Joe Solon, Suzy Solon
+langpack-contributors = Alberto Castro, Artur Araújo, Bruno Duarte, Carlos Rodrigues, Cláudio Esperança, Diogo Santos, Francisco Castanheiro, Gonçalo Matos, João Miguel Neves, Manuela Silva, Marco Sousa, Pedro Antunes, Pedro Figueira, Rita Farinha, Rodrigo Cunha, Sérgio Marques
diff --git a/l10n-pt-PT/browser/pdfviewer/chrome.properties b/l10n-pt-PT/browser/pdfviewer/chrome.properties
new file mode 100644
index 0000000000..f85ed353c0
--- /dev/null
+++ b/l10n-pt-PT/browser/pdfviewer/chrome.properties
@@ -0,0 +1,20 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Chrome notification bar messages and buttons
+unsupported_feature=Este documento PDF poderá não ser mostrado corretamente.
+unsupported_feature_forms=Este documento PDF contém formulários. O preenchimento dos campos não é suportado.
+unsupported_feature_signatures=Este documento PDF contém assinaturas digitais. A validação de assinaturas não é suportada.
+open_with_different_viewer=Abrir com outro visualizador
+open_with_different_viewer.accessKey=o
diff --git a/l10n-pt-PT/browser/pdfviewer/viewer.properties b/l10n-pt-PT/browser/pdfviewer/viewer.properties
new file mode 100644
index 0000000000..bc68d9b2f7
--- /dev/null
+++ b/l10n-pt-PT/browser/pdfviewer/viewer.properties
@@ -0,0 +1,277 @@
+# Copyright 2012 Mozilla Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Main toolbar buttons (tooltips and alt text for images)
+previous.title=Página anterior
+previous_label=Anterior
+next.title=Página seguinte
+next_label=Seguinte
+
+# LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input.
+page.title=Página
+# LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number
+# representing the total number of pages in the document.
+of_pages=de {{pagesCount}}
+# LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}"
+# will be replaced by a number representing the currently visible page,
+# respectively a number representing the total number of pages in the document.
+page_of_pages=({{pageNumber}} de {{pagesCount}})
+
+zoom_out.title=Reduzir
+zoom_out_label=Reduzir
+zoom_in.title=Ampliar
+zoom_in_label=Ampliar
+zoom.title=Zoom
+presentation_mode.title=Trocar para o modo de apresentação
+presentation_mode_label=Modo de apresentação
+open_file.title=Abrir ficheiro
+open_file_label=Abrir
+print.title=Imprimir
+print_label=Imprimir
+download.title=Transferir
+download_label=Transferir
+save.title=Guardar
+save_label=Guardar
+bookmark.title=Vista atual (copiar ou abrir numa nova janela)
+bookmark_label=Visão atual
+
+bookmark1.title=Página atual (ver URL da página atual)
+bookmark1_label=Pagina atual
+
+# Secondary toolbar and context menu
+tools.title=Ferramentas
+tools_label=Ferramentas
+first_page.title=Ir para a primeira página
+first_page_label=Ir para a primeira página
+last_page.title=Ir para a última página
+last_page_label=Ir para a última página
+page_rotate_cw.title=Rodar à direita
+page_rotate_cw_label=Rodar à direita
+page_rotate_ccw.title=Rodar à esquerda
+page_rotate_ccw_label=Rodar à esquerda
+
+cursor_text_select_tool.title=Ativar ferramenta de seleção de texto
+cursor_text_select_tool_label=Ferramenta de seleção de texto
+cursor_hand_tool.title=Ativar ferramenta de mão
+cursor_hand_tool_label=Ferramenta de mão
+
+scroll_page.title=Utilizar deslocamento da página
+scroll_page_label=Deslocamento da página
+scroll_vertical.title=Utilizar deslocação vertical
+scroll_vertical_label=Deslocação vertical
+scroll_horizontal.title=Utilizar deslocação horizontal
+scroll_horizontal_label=Deslocação horizontal
+scroll_wrapped.title=Utilizar deslocação encapsulada
+scroll_wrapped_label=Deslocação encapsulada
+
+spread_none.title=Não juntar páginas dispersas
+spread_none_label=Sem spreads
+spread_odd.title=Juntar páginas dispersas a partir de páginas com números ímpares
+spread_odd_label=Spreads ímpares
+spread_even.title=Juntar páginas dispersas a partir de páginas com números pares
+spread_even_label=Spreads pares
+
+# Document properties dialog box
+document_properties.title=Propriedades do documento…
+document_properties_label=Propriedades do documento…
+document_properties_file_name=Nome do ficheiro:
+document_properties_file_size=Tamanho do ficheiro:
+# LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in kilobytes, respectively in bytes.
+document_properties_kb={{size_kb}} KB ({{size_b}} bytes)
+# LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}"
+# will be replaced by the PDF file size in megabytes, respectively in bytes.
+document_properties_mb={{size_mb}} MB ({{size_b}} bytes)
+document_properties_title=Título:
+document_properties_author=Autor:
+document_properties_subject=Assunto:
+document_properties_keywords=Palavras-chave:
+document_properties_creation_date=Data de criação:
+document_properties_modification_date=Data de modificação:
+# LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}"
+# will be replaced by the creation/modification date, and time, of the PDF file.
+document_properties_date_string={{date}}, {{time}}
+document_properties_creator=Criador:
+document_properties_producer=Produtor de PDF:
+document_properties_version=Versão do PDF:
+document_properties_page_count=N.º de páginas:
+document_properties_page_size=Tamanho da página:
+document_properties_page_size_unit_inches=in
+document_properties_page_size_unit_millimeters=mm
+document_properties_page_size_orientation_portrait=retrato
+document_properties_page_size_orientation_landscape=paisagem
+document_properties_page_size_name_a3=A3
+document_properties_page_size_name_a4=A4
+document_properties_page_size_name_letter=Carta
+document_properties_page_size_name_legal=Legal
+# LOCALIZATION NOTE (document_properties_page_size_dimension_string):
+# "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement and orientation, of the (current) page.
+document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}})
+# LOCALIZATION NOTE (document_properties_page_size_dimension_name_string):
+# "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by
+# the size, respectively their unit of measurement, name, and orientation, of the (current) page.
+document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}})
+# LOCALIZATION NOTE (document_properties_linearized): The linearization status of
+# the document; usually called "Fast Web View" in English locales of Adobe software.
+document_properties_linearized=Vista rápida web:
+document_properties_linearized_yes=Sim
+document_properties_linearized_no=Não
+document_properties_close=Fechar
+
+print_progress_message=A preparar o documento para impressão…
+# LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by
+# a numerical per cent value.
+print_progress_percent={{progress}}%
+print_progress_close=Cancelar
+
+# Tooltips and alt text for side panel toolbar buttons
+# (the _label strings are alt text for the buttons, the .title strings are
+# tooltips)
+toggle_sidebar.title=Alternar barra lateral
+toggle_sidebar_notification2.title=Alternar barra lateral (o documento contém contornos/anexos/camadas)
+toggle_sidebar_label=Alternar barra lateral
+document_outline.title=Mostrar esquema do documento (duplo clique para expandir/colapsar todos os itens)
+document_outline_label=Esquema do documento
+attachments.title=Mostrar anexos
+attachments_label=Anexos
+layers.title=Mostrar camadas (clique duas vezes para repor todas as camadas para o estado predefinido)
+layers_label=Camadas
+thumbs.title=Mostrar miniaturas
+thumbs_label=Miniaturas
+current_outline_item.title=Encontrar o item atualmente destacado
+current_outline_item_label=Item atualmente destacado
+findbar.title=Localizar em documento
+findbar_label=Localizar
+
+additional_layers=Camadas adicionais
+# LOCALIZATION NOTE (page_landmark): "{{page}}" will be replaced by the page number.
+page_landmark=Página {{page}}
+# Thumbnails panel item (tooltip and alt text for images)
+# LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page
+# number.
+thumb_page_title=Página {{page}}
+# LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page
+# number.
+thumb_page_canvas=Miniatura da página {{page}}
+
+# Find panel button title and messages
+find_input.title=Localizar
+find_input.placeholder=Localizar em documento…
+find_previous.title=Localizar ocorrência anterior da frase
+find_previous_label=Anterior
+find_next.title=Localizar ocorrência seguinte da frase
+find_next_label=Seguinte
+find_highlight=Destacar tudo
+find_match_case_label=Correspondência
+find_match_diacritics_label=Corresponder diacríticos
+find_entire_word_label=Palavras completas
+find_reached_top=Topo do documento atingido, a continuar a partir do fundo
+find_reached_bottom=Fim do documento atingido, a continuar a partir do topo
+# LOCALIZATION NOTE (find_match_count): The supported plural forms are
+# [one|two|few|many|other], with [other] as the default value.
+# "{{current}}" and "{{total}}" will be replaced by a number representing the
+# index of the currently active find result, respectively a number representing
+# the total number of matches in the document.
+find_match_count={[ plural(total) ]}
+find_match_count[one]={{current}} de {{total}} correspondência
+find_match_count[two]={{current}} de {{total}} correspondências
+find_match_count[few]={{current}} de {{total}} correspondências
+find_match_count[many]={{current}} de {{total}} correspondências
+find_match_count[other]={{current}} de {{total}} correspondências
+# LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are
+# [zero|one|two|few|many|other], with [other] as the default value.
+# "{{limit}}" will be replaced by a numerical value.
+find_match_count_limit={[ plural(limit) ]}
+find_match_count_limit[zero]=Mais de {{limit}} correspondências
+find_match_count_limit[one]=Mais de {{limit}} correspondência
+find_match_count_limit[two]=Mais de {{limit}} correspondências
+find_match_count_limit[few]=Mais de {{limit}} correspondências
+find_match_count_limit[many]=Mais de {{limit}} correspondências
+find_match_count_limit[other]=Mais de {{limit}} correspondências
+find_not_found=Frase não encontrada
+
+# Error panel labels
+error_more_info=Mais informação
+error_less_info=Menos informação
+error_close=Fechar
+# LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be
+# replaced by the PDF.JS version and build ID.
+error_version_info=PDF.js v{{version}} (compilação: {{build}})
+# LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an
+# english string describing the error.
+error_message=Mensagem: {{message}}
+# LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack
+# trace.
+error_stack=Stack: {{stack}}
+# LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename
+error_file=Ficheiro: {{file}}
+# LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number
+error_line=Linha: {{line}}
+
+# Predefined zoom values
+page_scale_width=Ajustar à largura
+page_scale_fit=Ajustar à página
+page_scale_auto=Zoom automático
+page_scale_actual=Tamanho real
+# LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a
+# numerical scale value.
+page_scale_percent={{scale}}%
+
+# Loading indicator messages
+loading=A carregar…
+loading_error=Ocorreu um erro ao carregar o PDF.
+invalid_file_error=Ficheiro PDF inválido ou danificado.
+missing_file_error=Ficheiro PDF inexistente.
+unexpected_response_error=Resposta inesperada do servidor.
+
+rendering_error=Ocorreu um erro ao processar a página.
+
+# LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be
+# replaced by the modification date, and time, of the annotation.
+annotation_date_string={{date}}, {{time}}
+
+# LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip.
+# "{{type}}" will be replaced with an annotation type from a list defined in
+# the PDF spec (32000-1:2008 Table 169 – Annotation types).
+# Some common types are e.g.: "Check", "Text", "Comment", "Note"
+text_annotation_type.alt=[Anotação {{type}}]
+password_label=Introduza a palavra-passe para abrir este ficheiro PDF.
+password_invalid=Palavra-passe inválida. Por favor, tente novamente.
+password_ok=OK
+password_cancel=Cancelar
+
+printing_not_supported=Aviso: a impressão não é totalmente suportada por este navegador.
+printing_not_ready=Aviso: o PDF ainda não está totalmente carregado.
+web_fonts_disabled=Os tipos de letra web estão desativados: não é possível utilizar os tipos de letra PDF embutidos.
+
+# Editor
+editor_free_text2.title=Texto
+editor_free_text2_label=Texto
+editor_ink2.title=Desenhar
+editor_ink2_label=Desenhar
+
+free_text2_default_content=Começar a digitar…
+
+# Editor Parameters
+editor_free_text_color=Cor
+editor_free_text_size=Tamanho
+editor_ink_color=Cor
+editor_ink_thickness=Espessura
+editor_ink_opacity=Opacidade
+
+# Editor aria
+editor_free_text2_aria_label=Editor de texto
+editor_ink2_aria_label=Editor de desenho
+editor_ink_canvas_aria_label=Imagem criada pelo utilizador
diff --git a/l10n-pt-PT/browser/updater/updater.ini b/l10n-pt-PT/browser/updater/updater.ini
new file mode 100644
index 0000000000..8218541c0d
--- /dev/null
+++ b/l10n-pt-PT/browser/updater/updater.ini
@@ -0,0 +1,9 @@
+; This Source Code Form is subject to the terms of the Mozilla Public
+; License, v. 2.0. If a copy of the MPL was not distributed with this
+; file, You can obtain one at http://mozilla.org/MPL/2.0/.
+; This file is in the UTF-8 encoding
+; All strings must be less than 600 chars.
+[Strings]
+TitleText=Atualização do %MOZ_APP_DISPLAYNAME%
+InfoText=O %MOZ_APP_DISPLAYNAME% está a instalar as suas atualizações e irá iniciar dentro de momentos…
+MozillaMaintenanceDescription=O serviço de manutenção da Mozilla assegura que você tem a versão mais recente e mais segura do Mozilla Firefox no seu computador. Manter o Firefox atualizado é muito importante para a sua segurança online, e a Mozilla recomenda que tenha este serviço ativado.
diff --git a/l10n-pt-PT/calendar/README.txt b/l10n-pt-PT/calendar/README.txt
new file mode 100644
index 0000000000..f2908ce1ae
--- /dev/null
+++ b/l10n-pt-PT/calendar/README.txt
@@ -0,0 +1,3 @@
+Para informação sobre a instalação, execução e configuração do Sunbird
+incluindo uma lista dos problemas conhecidos e informação sobre resolução
+de problemas visite: http://www.mozilla.org/projects/calendar/
diff --git a/l10n-pt-PT/calendar/calendar/calendar-context-menus.ftl b/l10n-pt-PT/calendar/calendar/calendar-context-menus.ftl
new file mode 100644
index 0000000000..990839b536
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-context-menus.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-item-context-menu-modify-menuitem =
+ .label = Editar
+ .accesskey = E
diff --git a/l10n-pt-PT/calendar/calendar/calendar-delete-prompt.ftl b/l10n-pt-PT/calendar/calendar/calendar-delete-prompt.ftl
new file mode 100644
index 0000000000..68fb89c773
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-delete-prompt.ftl
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-delete-event-prompt-title =
+ { $count ->
+ [one] Eliminar evento
+ *[other] Eliminar eventos
+ }
+calendar-delete-event-prompt-message =
+ { $count ->
+ [one] Pretende mesmo eliminar este evento?
+ *[other] Pretende mesmo eliminar estes { $count } eventos?
+ }
+calendar-delete-task-prompt-title =
+ { $count ->
+ [one] Eliminar tarefa
+ *[other] Eliminar tarefas
+ }
+calendar-delete-task-prompt-message =
+ { $count ->
+ [one] Pretende mesmo eliminar esta tarefa?
+ *[other] Pretende mesmo eliminar estas { $count } tarefas?
+ }
+calendar-delete-item-prompt-title =
+ { $count ->
+ [one] Eliminar item
+ *[other] Eliminar itens
+ }
+calendar-delete-item-prompt-message =
+ { $count ->
+ [one] Pretende mesmo eliminar este item?
+ *[other] Pretende mesmo eliminar estes { $count } itens?
+ }
+calendar-delete-prompt-disable-message = Não voltar a perguntar
diff --git a/l10n-pt-PT/calendar/calendar/calendar-editable-item.ftl b/l10n-pt-PT/calendar/calendar/calendar-editable-item.ftl
new file mode 100644
index 0000000000..a5fb18786f
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-editable-item.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-editable-item-privacy-icon-private =
+ .alt = Privacidade: evento privado
+calendar-editable-item-privacy-icon-confidential =
+ .alt = Privacidade: mostrar apenas data e hora
+calendar-editable-item-recurrence =
+ .alt = Recorrente
+calendar-editable-item-recurrence-exception =
+ .alt = Exceção de recorrência
+calendar-editable-item-todo-icon-task =
+ .alt = Tarefa
+calendar-editable-item-todo-icon-completed-task =
+ .alt = Tarefa concluída
+calendar-editable-item-multiday-event-icon-start =
+ .alt = Começa evento de vários dias
+calendar-editable-item-multiday-event-icon-continue =
+ .alt = Continua evento de vários dias
+calendar-editable-item-multiday-event-icon-end =
+ .alt = Termina evento de vários dias
+calendar-editable-item-reminder-icon-alarm =
+ .alt = Está agendado um lembrete de alerta
+calendar-editable-item-reminder-icon-suppressed-alarm =
+ .alt = Está agendado um lembrete de alerta mas atualmente está suprimido
+calendar-editable-item-reminder-icon-email =
+ .alt = Está agendado um lembrete de alerta
+calendar-editable-item-reminder-icon-audio =
+ .alt = Está agendado um lembrete áudio de alerta
diff --git a/l10n-pt-PT/calendar/calendar/calendar-event-dialog-reminder.ftl b/l10n-pt-PT/calendar/calendar/calendar-event-dialog-reminder.ftl
new file mode 100644
index 0000000000..7ea78dacc6
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-event-dialog-reminder.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-event-reminder-icon-display =
+ .alt = Mostrar um Alerta
+calendar-event-reminder-icon-email =
+ .alt = Enviar um E-mail
+calendar-event-reminder-icon-audio =
+ .alt = Reproduzir um Alerta sonoro
diff --git a/l10n-pt-PT/calendar/calendar/calendar-ics-file-dialog.ftl b/l10n-pt-PT/calendar/calendar/calendar-ics-file-dialog.ftl
new file mode 100644
index 0000000000..699870b3d2
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-ics-file-dialog.ftl
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-ics-file-window-2 =
+ .title = Importar eventos e tarefas do calendário
+calendar-ics-file-dialog-import-event-button-label = Importar evento
+calendar-ics-file-dialog-import-task-button-label = Importar tarefa
+calendar-ics-file-dialog-2 =
+ .buttonlabelaccept = Importar tudo
+calendar-ics-file-accept-button-ok-label = OK
+calendar-ics-file-cancel-button-close-label = Fechar
+calendar-ics-file-dialog-message-2 = Importar do ficheiro:
+calendar-ics-file-dialog-calendar-menu-label = Importar para o calendário:
+calendar-ics-file-dialog-items-loading-message =
+ .value = A carregar itens…
+calendar-ics-file-dialog-search-input =
+ .placeholder = Filtrar itens…
+calendar-ics-file-dialog-sort-start-ascending =
+ .label = Ordenar por data de início (do primeiro ao último)
+calendar-ics-file-dialog-sort-start-descending =
+ .label = Ordenar por data de início (do último ao primeiro)
+# "A > Z" is used as a concise way to say "alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-ascending =
+ .label = Ordenar por título (A > Z)
+# "Z > A" is used as a concise way to say "reverse alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-descending =
+ .label = Ordenar por título (Z > A)
+calendar-ics-file-dialog-progress-message = A importar…
+calendar-ics-file-import-success = Importado com sucesso!
+calendar-ics-file-import-error = Ocorreu um erro e a importação falhou.
+calendar-ics-file-import-complete = Importação concluída.
+calendar-ics-file-import-duplicates =
+ { $duplicatesCount ->
+ [one] Foi ignorado um item dados que o mesmo já existia no calendário de destino.
+ *[other] Foram ignorados { $duplicatesCount } itens dado que os mesmos já existiam no calendário de destino.
+ }
+calendar-ics-file-import-errors =
+ { $errorsCount ->
+ [one] A importação de um item falhou. Consulte a Consola de erro para detalhes.
+ *[other] A importação de { $errorsCount } itens falhou. Consulte a Consola de erro para detalhes.
+ }
+calendar-ics-file-dialog-no-calendars = Não há calendários que possam importar eventos ou tarefas.
diff --git a/l10n-pt-PT/calendar/calendar/calendar-invitation-panel.ftl b/l10n-pt-PT/calendar/calendar/calendar-invitation-panel.ftl
new file mode 100644
index 0000000000..23aa969c41
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-invitation-panel.ftl
@@ -0,0 +1,96 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $organizer (String) - The participant that created the original invitation.
+calendar-invitation-panel-intro = { $organizer } convidou-o para:
+# Variables:
+# $organizer (String) - The participant that updated the original invitation.
+calendar-invitation-panel-intro-update = { $organizer } atualizou:
+# Variables:
+# $organizer (String) - The participant that cancelled the invitation.
+calendar-invitation-panel-intro-cancel = { $organizer } cancelou:
+# Variables:
+# $summary (String) - A short summary or title of the event.
+calendar-invitation-panel-title = { $summary }
+calendar-invitation-panel-action-button = Guardar
+calendar-invitation-panel-save-button = Guardar
+calendar-invitation-panel-view-button = Ver
+calendar-invitation-panel-update-button = Atualizar
+calendar-invitation-panel-delete-button = Apagar
+calendar-invitation-panel-accept-button = Sim
+calendar-invitation-panel-decline-button = Não
+calendar-invitation-panel-tentative-button = Talvez
+calendar-invitation-panel-reply-status = * Ainda não decidiu nem respondeu
+calendar-invitation-panel-prop-title-when = Quando:
+calendar-invitation-panel-prop-title-location = Localização:
+# Variables:
+# $dayOfWeek (String) - The day of the week for a given date.
+# $date (String) - The date example: Tuesday, February 24, 2022.
+calendar-invitation-datetime-date = { $dayOfWeek }, { $date }
+# Variables:
+# $time (String) - The time part of a datetime using the "short" timeStyle.
+# $timezone (String) - The timezone info for the datetime.
+calendar-invitation-datetime-time = { $time } ({ $timezone })
+# Example: Friday, September 16, 2022
+# Variables:
+# $startDate (String) - The date (without time) the event starts on.
+calendar-invitation-interval-all-day = { $startDate }
+# Example: September 16, 2022 – September 16, 2023
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $startYear (String) - The year the interval starts.
+# $endMonth (String) - The month the interval ends.
+# $endDay (String) - The day of the month the interval ends.
+# $endYear (String) - The year the interval ends.
+calendar-invitation-interval-all-day-between-years = { $startDay } de { $startMonth } de { $startYear } – { $endDay } de { $endMonth } de { $endYear }
+# Example: September 16 – 20, 2022
+# $month (String) - The month the interval is in.
+# $startDay (String) - The day of the month the interval starts.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-in-month = { $startDay } – { $endDay } de { $month } de { $year }
+# Example: September 16 – October 20, 2022
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-between-months = { $startDay } de { $startMonth } – { $endDay } de { $endMonth } de { $year }
+# Example: Friday, September 16, 2022 15:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-date-time = { $startDate } { $startTime } { $timezone }
+# Example: Friday, September 16, 2022 14:00 – 16:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-day = { $startDate } { $startTime } – { $endTime } { $timezone }
+# Example: Friday, September 16, 2022 14:00 – Tuesday, September 20, 2022 16:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $startDate (String) - The date the interval ends.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-several-days = { $startDate } { $startTime } – { $endDate } { $endTime } { $timezone }
+calendar-invitation-panel-prop-title-recurrence = Repetições:
+calendar-invitation-panel-prop-title-attendees = Participantes:
+calendar-invitation-panel-prop-title-description = Descrição:
+# Variables:
+# $count (Number) - The number of attendees with the "ACCEPTED" participation status.
+calendar-invitation-panel-partstat-accepted = { $count } sim
+# Variables:
+# $count (Number) - The number of attendees with the "DECLINED" participation status.
+calendar-invitation-panel-partstat-declined = { $count } não
+# Variables:
+# $count (Number) - The number of attendees with the "TENTATIVE" participation status.
+calendar-invitation-panel-partstat-tentative = { $count } talvez
+# Variables:
+# $count (Number) - The number of attendees with the "NEEDS-ACTION" participation status.
+calendar-invitation-panel-partstat-needs-action = { $count } pendentes
+# Variables:
+# $count (Number) - The total number of attendees.
+calendar-invitation-panel-partstat-total = { $count } participantes
+calendar-invitation-panel-prop-title-attachments = Anexos:
diff --git a/l10n-pt-PT/calendar/calendar/calendar-invitations-dialog.ftl b/l10n-pt-PT/calendar/calendar/calendar-invitations-dialog.ftl
new file mode 100644
index 0000000000..d576300574
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-invitations-dialog.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-invitation-current-participation-status-icon-accepted =
+ .alt = Atualmente aceite
+calendar-invitation-current-participation-status-icon-declined =
+ .alt = Atualmente recusado
+calendar-invitation-current-participation-status-icon-needs-action =
+ .alt = Atualmente não-decidido
diff --git a/l10n-pt-PT/calendar/calendar/calendar-itip-identity-dialog.ftl b/l10n-pt-PT/calendar/calendar/calendar-itip-identity-dialog.ftl
new file mode 100644
index 0000000000..67a4701401
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-itip-identity-dialog.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-itip-identity-dialog-title = Participação sem convite?
+calendar-itip-identity-warning = Ainda não está na lista de convidados.
+calendar-itip-identity-label = Responder como:
+calendar-itip-identity-label-none = Associar este evento a:
diff --git a/l10n-pt-PT/calendar/calendar/calendar-print.ftl b/l10n-pt-PT/calendar/calendar/calendar-print.ftl
new file mode 100644
index 0000000000..b453838e9e
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-print.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-print-layout-label = Disposição
+calendar-print-layout-list = Lista
+calendar-print-layout-month-grid = Grelha mensal
+calendar-print-layout-week-planner = Agenda semanal
+calendar-print-filter-label = O que imprimir
+calendar-print-filter-events = Eventos
+calendar-print-filter-tasks = Tarefas
+calendar-print-filter-completedtasks = Tarefas concluídas
+calendar-print-filter-taskswithnoduedate = Tarefas sem data de vencimento
+calendar-print-range-from = De
+calendar-print-range-to = Para
+calendar-print-back-button = Voltar
+calendar-print-next-button = Seguinte
diff --git a/l10n-pt-PT/calendar/calendar/calendar-summary-dialog.ftl b/l10n-pt-PT/calendar/calendar/calendar-summary-dialog.ftl
new file mode 100644
index 0000000000..55052fee7b
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-summary-dialog.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-summary-dialog-edit-button =
+ .label = Editar
+ .accesskey = E
+calendar-summary-dialog-edit-menu-button =
+ .label = Editar
+edit-button-context-menu-this-occurrence =
+ .label = Editar apenas esta ocorrência
+ .accesskey = e
+edit-button-context-menu-all-occurrences =
+ .label = Editar todas as ocorrências
+ .accesskey = t
diff --git a/l10n-pt-PT/calendar/calendar/calendar-uri-redirect-dialog.ftl b/l10n-pt-PT/calendar/calendar/calendar-uri-redirect-dialog.ftl
new file mode 100644
index 0000000000..bc881a1e66
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-uri-redirect-dialog.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-uri-redirect-window =
+ .title = Redirecionamento de URI do calendário
+calendar-uri-redirect-description =
+ O servidor está a redirecionar o URI para o calendário "{ $calendarName }".
+ Aceitar o redirecionamento e começar a utilizar o novo URI para este calendário?
+calendar-uri-redirect-original-uri-label = URI atual:
+calendar-uri-redirect-target-uri-label = A redirecionar para o novo URI:
diff --git a/l10n-pt-PT/calendar/calendar/calendar-widgets.ftl b/l10n-pt-PT/calendar/calendar/calendar-widgets.ftl
new file mode 100644
index 0000000000..dd6e3fb631
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/calendar-widgets.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-deactivated-notification-events = Todos os calendários estão neste momento desativados. Ative um calendário existente ou adicione um novo, para criar e editar eventos.
+calendar-deactivated-notification-tasks = Todos os calendários estão neste momento desativados. Ative um calendário existente ou adicione um novo, para criar e editar tarefas.
+calendar-notifications-label = Mostrar notificações de próximos eventos
+calendar-add-notification-button =
+ .label = Adicionar notificação
diff --git a/l10n-pt-PT/calendar/calendar/category-dialog.ftl b/l10n-pt-PT/calendar/calendar/category-dialog.ftl
new file mode 100644
index 0000000000..ff4b5f8e26
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/category-dialog.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+category-name-label = Nome
+category-color-label =
+ .label = Usar cor
diff --git a/l10n-pt-PT/calendar/calendar/preferences.ftl b/l10n-pt-PT/calendar/calendar/preferences.ftl
new file mode 100644
index 0000000000..d1b04351e5
--- /dev/null
+++ b/l10n-pt-PT/calendar/calendar/preferences.ftl
@@ -0,0 +1,192 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-title = Calendário
+calendar-title-reminder = Lembretes
+calendar-title-notification = Notificações
+calendar-title-category = Categorias
+dateformat-label =
+ .value = Formato de texto da data:
+ .accesskey = d
+# $date (String) - the formatted example date
+dateformat-long =
+ .label = Longo: { $date }
+# $date (String) - the formatted example date
+dateformat-short =
+ .label = Curto: { $date }
+use-system-timezone-radio-button =
+ .label = Usar fuso horário do sistema
+set-timezone-manually-radio-button =
+ .label = Definir fuso horário manualmente
+timezone-label =
+ .value = Fuso horário:
+weekstart-label =
+ .value = Início da semana:
+ .accesskey = I
+day-1-name =
+ .label = domingo
+day-2-name =
+ .label = segunda
+day-3-name =
+ .label = terça
+day-4-name =
+ .label = quarta
+day-5-name =
+ .label = quinta
+day-6-name =
+ .label = sexta
+day-7-name =
+ .label = sábado
+show-weeknumber-label =
+ .label = Mostrar número da semana nas vistas e mês em pequeno
+ .accesskey = e
+workdays-label =
+ .value = Dias da semana de trabalho:
+day-1-checkbox =
+ .label = dom
+ .accesskey = d
+day-2-checkbox =
+ .label = seg
+ .accesskey = s
+day-3-checkbox =
+ .label = ter
+ .accesskey = t
+day-4-checkbox =
+ .label = qua
+ .accesskey = q
+day-5-checkbox =
+ .label = qui
+ .accesskey = u
+day-6-checkbox =
+ .label = sex
+ .accesskey = x
+day-7-checkbox =
+ .label = sáb
+ .accesskey = b
+dayweek-legend = Visão de dia e de semana
+visible-hours-label =
+ .value = Mostrar:
+ .accesskey = o
+visible-hours-end-label =
+ .value = horas de cada vez
+day-start-label =
+ .value = Dia começa a:
+ .accesskey = D
+day-end-label =
+ .value = Dia acaba às:
+ .accesskey = i
+midnight-label =
+ .label = Meia noite
+noon-label =
+ .label = Meio dia
+location-checkbox =
+ .label = Mostrar localização
+ .accesskey = L
+multiweek-legend = Visão multissemanal
+number-of-weeks-label =
+ .value = Número de semanas a mostrar (incluindo semanas anteriores):
+ .accesskey = e
+week-0-label =
+ .label = nenhuma
+week-1-label =
+ .label = 1 semana
+week-2-label =
+ .label = 2 semanas
+week-3-label =
+ .label = 3 semanas
+week-4-label =
+ .label = 4 semanas
+week-5-label =
+ .label = 5 semanas
+week-6-label =
+ .label = 6 semanas
+previous-weeks-label =
+ .value = Semanas anteriores a mostrar:
+ .accesskey = m
+todaypane-legend = Painel hoje
+agenda-days =
+ .value = A agenda mostra:
+ .accesskey = g
+event-task-legend = Eventos e tarefas
+default-length-label =
+ .value = Evento predefinido e duração da tarefa:
+ .accesskey = u
+task-start-label =
+ .value = Data de início:
+task-start-1-label =
+ .label = Nenhum
+task-start-2-label =
+ .label = Início do dia
+task-start-3-label =
+ .label = Fim do dia
+task-start-4-label =
+ .label = Amanhã
+task-start-5-label =
+ .label = Próxima semana
+task-start-6-label =
+ .label = Relativo à hora atual
+task-start-7-label =
+ .label = Relativo ao início
+task-start-8-label =
+ .label = Relativo à próxima hora
+task-due-label =
+ .value = Data de fim:
+edit-intab-label =
+ .label = Editar eventos e tarefas num separador em vez de numa janela.
+ .accesskey = t
+prompt-delete-label =
+ .label = Questionar antes de eliminar eventos e tarefas
+ .accesskey = Q
+accessibility-legend = Acessibilidade
+accessibility-colors-label =
+ .label = Otimizar cores para acessibilidade
+ .accesskey = c
+reminder-legend = Se o lembrete estiver vencido:
+reminder-play-checkbox =
+ .label = Reproduzir um som
+ .accesskey = s
+reminder-play-alarm-button =
+ .label = Reproduzir
+ .accesskey = p
+reminder-default-sound-label =
+ .label = Utilizar som pré-definido
+ .accesskey = d
+reminder-custom-sound-label =
+ .label = Utilizar o seguinte ficheiro de som
+ .accesskey = U
+reminder-browse-sound-label =
+ .label = Escolher…
+ .accesskey = E
+reminder-dialog-label =
+ .label = Mostrar uma caixa de alarme
+ .accesskey = M
+missed-reminder-label =
+ .label = Mostrar lembretes falhados para calendários editáveis
+ .accesskey = p
+reminder-default-legend = Predefinições dos lembretes
+default-snooze-label =
+ .value = Duração predefinida entre toques de alarme:
+ .accesskey = u
+event-alarm-label =
+ .value = Alarmes para os eventos:
+ .accesskey = A
+alarm-on-label =
+ .label = Ligado
+alarm-off-label =
+ .label = Desligado
+task-alarm-label =
+ .value = Alarmes para as tarefas:
+ .accesskey = l
+event-alarm-time-label =
+ .value = Tempo predefinido de ativação do alarme antes de um evento:
+ .accesskey = u
+task-alarm-time-label =
+ .value = Tempo predefinido de ativação do alarme antes de uma tarefa:
+ .accesskey = o
+calendar-notifications-customize-label = As notificações podem ser personalizadas para cada calendário na janela de propriedades do calendário.
+category-new-label = Nova categoria
+category-edit-label = Editar categoria
+category-overwrite-title = Aviso: nome duplicado
+category-overwrite = Já existe uma categoria com este nome. Deseja sobrescrevê-la?
+category-blank-warning = Tem de escrever o nome da categoria.
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-alarms.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 0000000000..00d2b0bb0b
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-alarms.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reminderCustomTitle):
+# %1$S = unit, %2$S = reminderCustomOrigin
+# Example: "3 minutes" "before the task starts"
+reminderCustomTitle=%1$S %2$S
+reminderTitleAtStartEvent=O momento em que o evento inicia
+reminderTitleAtStartTask=O momento em que a tarefa inicia
+reminderTitleAtEndEvent=O momento em que o evento termina
+reminderTitleAtEndTask=O momento em que a tarefa termina
+
+# LOCALIZATION NOTE (reminderSnoozeOkA11y)
+# This string is not seen in the UI, it is read by screen readers when the user
+# focuses the "OK" button in the "Snooze for..." popup of the alarm dialog.
+# %1$S = any of unit*
+reminderSnoozeOkA11y=Lembrança de toque para %1$S
+
+reminderCustomOriginBeginBeforeEvent=antes do evento iniciar
+reminderCustomOriginBeginAfterEvent=depois do evento iniciar
+reminderCustomOriginEndBeforeEvent=antes do evento terminar
+reminderCustomOriginEndAfterEvent=depois do evento terminar
+reminderCustomOriginBeginBeforeTask=antes da tarefa iniciar
+reminderCustomOriginBeginAfterTask=depois da tarefa iniciar
+reminderCustomOriginEndBeforeTask=antes da tarefa terminar
+reminderCustomOriginEndAfterTask=depois da tarefa terminar
+
+reminderErrorMaxCountReachedEvent=O calendário selecionado tem um limite de #1 lembrete por evento.;O calendário selecionado tem o limite de #1 lembretes por evento.
+reminderErrorMaxCountReachedTask=O calendário selecionado tem um limite de #1 lembrete por tarefa.;O calendário selecionado tem o limite de #1 lembretes por tarefa.
+
+# LOCALIZATION NOTE (reminderReadonlyNotification)
+# This notification will be presented in the alarm dialog if reminders for not
+# writable items/calendars are displayed.
+# %1$S - localized value of calendar.alarm.snoozeallfor.label (defined in calendar.dtd)
+reminderReadonlyNotification=Os lembretes para calendários de leitura atualmente não podem ser suspensos, apenas dispensados - o botão '%1$S' irá apenas suspender lembretes para calendários editáveis.
+# LOCALIZATION NOTE (reminderDisabledSnoozeButtonTooltip)
+# This tooltip is only displayed, if the button is disabled
+reminderDisabledSnoozeButtonTooltip=A suspensão de um lembrete não é suportada para calendários de leitura
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog-attendees.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 0000000000..bb9abcb90d
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+event.attendee.role.required = Participante obrigatório
+event.attendee.role.optional = Participante opcional
+event.attendee.role.nonparticipant = Não participante
+event.attendee.role.chair = Cadeira
+event.attendee.role.unknown = Participante desconhecido (%1$S)
+
+event.attendee.usertype.individual = Individual
+event.attendee.usertype.group = Grupo
+event.attendee.usertype.resource = Recurso
+event.attendee.usertype.room = Quarto
+event.attendee.usertype.unknown = Tipo desconhecido (%1$S)
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.dtd b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.dtd
new file mode 100644
index 0000000000..a7eacbb9d3
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,428 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 0000000000..bca3d4e6e3
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-event-dialog.properties
@@ -0,0 +1,541 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dailyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Daily repeat rules
+# #1 - number
+# e.g. "every 4 days"
+dailyEveryNth=todos os dias;a cada #1 dias
+repeatDetailsRuleDaily4=todos os dias da semana
+
+# LOCALIZATION NOTE (weeklyNthOnNounclass...)
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday (one or more)
+# #2 - week interval
+# e.g. "every 3 weeks on Tuesday, Wednesday and Thursday
+weeklyNthOnNounclass1=a cada %1$S;a cada #2 semanas à %1$S
+weeklyNthOnNounclass2=a cada %1$S;a cada #2 semanas à %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=a cada semana;a cada #1 semanas
+
+# LOCALIZATION NOTE ('repeatDetailsDay...' and 'repeatDetailsDay...Nounclass'):
+# Week days names and week days noun classes (feminine/masculine grammatical
+# gender) for languages that need different localization when weekdays nouns
+# have different noun classes (genders).
+# For every weekday, in 'repeatDetailsDay...Nounclass' strings write:
+# "nounclass1" for languages with grammatical genders -> MASCULINE gender;
+# for languages with noun classes -> a noun class;
+# for languages without noun classes or grammatical gender.
+#
+# "nounclass2" for languages with grammatical genders -> FEMININE gender;
+# for languages with noun classes -> a different noun class.
+#
+# "nounclass3", "nounclass4" and so on for languages that need more than two
+# noun classes for weekdays. In this case add corresponding
+# rule string with "Nounclass..." suffix and ordinal string
+# "repeatOrdinalxNounclass..."
+# Will be used rule strings with "Nounclass..." suffix corresponding to the
+# following strings if there is a weekday in the rule string.
+repeatDetailsDay1=domingo
+repeatDetailsDay1Nounclass=nounclass1
+repeatDetailsDay2=Segunda
+repeatDetailsDay2Nounclass=nounclass1
+repeatDetailsDay3=Terça
+repeatDetailsDay3Nounclass=nounclass1
+repeatDetailsDay4=Quarta
+repeatDetailsDay4Nounclass=nounclass1
+repeatDetailsDay5=Quinta
+repeatDetailsDay5Nounclass=nounclass1
+repeatDetailsDay6=Sexta
+repeatDetailsDay6Nounclass=nounclass1
+repeatDetailsDay7=sábado
+repeatDetailsDay7Nounclass=nounclass1
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=e
+
+# LOCALIZATION NOTE (monthlyRuleNthOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of weekdays with ordinal, article and noun class/gender
+# (ordinal and weekday of every element in the list follow the order
+# and the rule of ordinalWeekdayOrder string)
+# #2 - interval
+# e.g. "the first Monday and the last Friday of every 3 months"
+monthlyRuleNthOfEveryNounclass1=%1$S de cada mês;%1$S a cada #2 meses
+monthlyRuleNthOfEveryNounclass2=%1$S de cada mês;%1$S de cada #2 meses
+
+# LOCALIZATION NOTE (ordinalWeekdayOrder):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# This string allows to change the order of the elements "ordinal" and
+# "weekday" (or to insert a word between them) for the argument %1$S of the
+# string monthlyRuleNthOfEveryNounclass...
+# Without changing this string, the order is that one required from most
+# languages: ordinal + weekday (e.g. "'the first' 'Monday' of every 2 months").
+# %1$S - ordinal with article
+# %2$S - weekday noun
+# e.g. "'the first' 'Monday'"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+ordinalWeekdayOrder=%1$S %2$S
+
+# LOCALIZATION NOTE (monthlyEveryOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of single weekdays and/or weekdays with ordinal, article and
+# noun class/gender when rule contains also specific day in the month
+# #2 - interval
+# e.g. "every Monday, Tuesday and the second Sunday of every month"
+monthlyEveryOfEveryNounclass1=a cada %1$S de cada mês;a cada %1$S de cada #2 meses
+monthlyEveryOfEveryNounclass2=a cada %1$S de cada mês;a cada %1$S de cada #2 meses
+
+# LOCALIZATION NOTE (monthlyDaysOfNth_day):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month or a sequence of days of month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties) separated with commas;
+# e.g. "days 3, 6 and 9" or "days 3rd, 6th and 9th"
+monthlyDaysOfNth_day=dia %1$S;dias %1$S
+
+# LOCALIZATION NOTE (monthlyDaysOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - it's the string monthlyDaysOfNth_day: day of month or a sequence of days
+# of month, possibly followed by an ordinal symbol, separated with commas;
+# #2 - monthly interval
+# e.g. "days 3, 6, 9 and 12 of every 3 months"
+monthlyDaysOfNth=%1$S de cada mês;%1$S de cada #2 meses
+
+# LOCALIZATION NOTE (monthlyLastDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month
+# #2 - month interval
+# e.g. "the last day of every 3 months"
+monthlyLastDayOfNth=o último dia do mês; o último dia a cada #1 meses
+
+# LOCALIZATION NOTE (monthlyEveryDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# #2 - month interval
+# e.g. "every day of the month every 4 months"
+monthlyEveryDayOfNth=todos os dias de cada mês;todos os dias do mês a cada #2 meses
+
+# LOCALIZATION NOTE (repeatOrdinal...Nounclass...):
+# Ordinal numbers nouns for every noun class (grammatical genders) of weekdays
+# considered in 'repeatDetailsDayxNounclass' strings. For languages that need
+# localization according to genders or noun classes.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add 'repeatOrdinal...Nounclass' strings with suffix 3, 4 and so on for
+# languages with more than two noun classes for weekdays. In this case
+# must be added corresponding rule strings with 'Nounclass...' suffix and
+# corresponding values "nounclass..." must be written in
+# 'repeatDetailsDayxNounclass' strings.
+repeatOrdinal1Nounclass1=o primeiro
+repeatOrdinal2Nounclass1=o segundo
+repeatOrdinal3Nounclass1=o terceiro
+repeatOrdinal4Nounclass1=o quarto
+repeatOrdinal5Nounclass1=o quinto
+repeatOrdinal-1Nounclass1=o último
+repeatOrdinal1Nounclass2=o primeiro
+repeatOrdinal2Nounclass2=o segundo
+repeatOrdinal3Nounclass2=o terceiro
+repeatOrdinal4Nounclass2=o quarto
+repeatOrdinal5Nounclass2=o quinto
+repeatOrdinal-1Nounclass2=o último
+
+# LOCALIZATION NOTE (yearlyNthOn):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# %1$S - month name
+# %2$S - day of month possibly followed by an ordinal symbol (depending on the string
+# dayOrdinalSymbol in dateFormat.properties)
+# #3 - yearly interval
+# e.g. "every 3 years on December 14"
+# "every 2 years on December 8th"
+yearlyNthOn=a cada %1$S %2$S;a cada #3 anos a %2$S %1$S
+
+# LOCALIZATION NOTE (yearlyNthOnNthOfNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - ordinal with article and noun class/gender corresponding to weekday
+# %2$S - weekday
+# %3$S - month
+# #4 - yearly interval
+# e.g. "the second Monday of every March"
+# e.g "every 3 years the second Monday of March"
+yearlyNthOnNthOfNounclass1=%1$S %2$S de cada %3$S;a cada #4 anos na %1$S %2$S de %3$S
+yearlyNthOnNthOfNounclass2=%1$S %2$S de cada %3$S;a cada #4 anos na %1$S %2$S de %3$S
+
+# LOCALIZATION NOTE (yearlyOnEveryNthOfNthNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday
+# %2$S - month
+# #3 - yearly interval
+# e.g. "every Thursday of March"
+# e.g "every 3 years on every Thursday of March"
+yearlyOnEveryNthOfNthNounclass1=a cada %1$S de %2$S;a cada #3 anos de cada %1$S de %2$S
+yearlyOnEveryNthOfNthNounclass2=a cada %1$S de %2$S;a cada #3 anos de cada %1$S de %2$S
+
+#LOCALIZATION NOTE (yearlyEveryDayOf):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# This string describes part of a yearly rule which includes every day of a month.
+# %1$S - month
+# #2 - yearly interval
+# e.g. "every day of December"
+# e.g. "every 3 years every day of December"
+yearlyEveryDayOf=todos os dias de %1$S;a cada #2 anos todos os dias de %1$S
+
+repeatDetailsMonth1=janeiro
+repeatDetailsMonth2=fevereiro
+repeatDetailsMonth3=março
+repeatDetailsMonth4=abril
+repeatDetailsMonth5=maio
+repeatDetailsMonth6=junho
+repeatDetailsMonth7=julho
+repeatDetailsMonth8=agosto
+repeatDetailsMonth9=setembro
+repeatDetailsMonth10=outubro
+repeatDetailsMonth11=novembro
+repeatDetailsMonth12=dezembro
+
+# LOCALIZATION NOTE (repeatCount):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# #5 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# from 5:00 PM to 6:00 PM"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times
+# from 5:00 PM to 6:00 PM"
+repeatCount=Ocorre a cada %1$S\ncom inicio em %2$S e apenas #5 vez\ndas %3$S às %4$S.;Ocorre a cada %1$S\ncom inicio em %2$S durante #5 vezes\ndas %3$S às %4$S.
+
+# LOCALIZATION NOTE (repeatCountAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# #3 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times"
+repeatCountAllDay=Ocorre a cada %1$S\ncom inicio em %2$S e apenas #3 vez.;Ocorre a cada %1$S\ncom inicio em %2$S e durante #3 vezes.
+
+# LOCALIZATION NOTE (repeatDetailsUntil):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# %4$S - event start time (e.g. hh:mm (PM/AM))
+# %5$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with weeklyNthOn:
+# "Occurs every 2 weeks on Sunday and Friday
+# effective 1/1/2009 until 1/1/2010
+# from 5:00 PM to 6:00 PM"
+repeatDetailsUntil=Ocorre %1$S\ncom inicio em %2$S e fim a %3$S\ndas %4$S às %5$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntilAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009 until 1/1/2010"
+repeatDetailsUntilAllDay=Ocorre no dia %1$S\ncom inicio a %2$S até %3$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfinite):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with monthlyDaysOfNth:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009
+# from 5:00 PM to 6:00 PM"
+repeatDetailsInfinite=Ocorre no dia %1$S\ncom inicio em %2$S\ndas %3$S às %4$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfiniteAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009"
+repeatDetailsInfiniteAllDay=Ocorre no dia %1$S\ncom inicio a %2$S.
+
+# LOCALIZATION NOTE (monthlyLastDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# A monthly rule with one or more days of the month (monthlyDaysOfNth) and the
+# string "the last day" of the month.
+# e.g.: "Occurs day 15, 20, 25 and the last day of every 3 months"
+monthlyLastDay=o último dia
+
+# LOCALIZATION NOTE (ruleTooComplex):
+# This string is shown in the repeat details area if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplex=Clique aqui para detalhes
+
+# LOCALIZATION NOTE (ruleTooComplexSummary):
+# This string is shown in the event summary dialog if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplexSummary=Repetir detalhes desconhecidos
+
+# differences between the dialog for an Event or a Task
+newEvent=Novo evento
+newTask=Nova tarefa
+itemMenuLabelEvent=Evento
+itemMenuAccesskeyEvent2=n
+itemMenuLabelTask=Tarefa
+itemMenuAccesskeyTask2=T
+
+emailSubjectReply=Re: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Por favor, especifique a localização da ligação
+enterLinkLocation=Introduza uma página web ou o local do documento.
+
+summaryDueTaskLabel=Até:
+
+# Attach File Dialog
+attachViaFilelink=Ficheiro utilizando %1$S
+selectAFile=Selecione o(s) ficheiro(s) a anexar
+removeCalendarsTitle=Remover anexos
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=Deseja mesmo remover #1 anexo?;Deseja mesmo remover #1 anexos?
+
+# Recurrence Dialog Widget Order
+# LOCALIZATION NOTE: You can change the order of below params
+# Edit recurrence window -> Recurrence pattern -> Repeat monthly
+# %1$S - ordinal with article, %2$S - weekday
+# e.g. "the First Saturday"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+monthlyOrder=%1$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - day of month, %2$S - of, %3$S - month
+# e.g. "6 [of] September"
+# If you don't need %2$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder=%1$S %3$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - ordinal with article, %2$S - weekday, %3$S - of, %4$S - month
+# e.g. "the First Saturday of September"
+# If you don't need %3$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder2=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (pluralForWeekdays):
+# This string allows to set the use of weekdays nouns in plural form for
+# languages that need them in sentences like "every Monday" or "every Sunday
+# of March" etc.
+# Rule strings involved by this setting are:
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+# In your local write:
+# "true" if sentences like those above need weekday in plural form;
+# "false" if sentences like those above don't need weekday in plural form;
+pluralForWeekdays=false
+
+# LOCALIZATION NOTE (repeatDetailsDayxxxPlural):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# Weekdays in plural form used inside sentences like "every Monday" or
+# "every Sunday of May" etc. for languages that need them.
+# These plurals will be used inside the following rule strings only if string
+# 'pluralForWeekdays' (see above) is set to "true":
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+repeatDetailsDay1Plural=domingo
+repeatDetailsDay2Plural=segunda
+repeatDetailsDay3Plural=terça
+repeatDetailsDay4Plural=quarta
+repeatDetailsDay5Plural=quinta
+repeatDetailsDay6Plural=sexta
+repeatDetailsDay7Plural=sábado
+
+# LOCALIZATION NOTE (eventRecurrenceForeverLabel):
+# Edit/New Event dialog -> datepicker that sets the until date.
+# For recurring rules that repeat forever, this labels appears in the
+# datepicker, below the minimonth, as an option for the until date.
+eventRecurrenceForeverLabel=Eternamente
+
+# LOCALIZATION NOTE (eventRecurrenceMonthlyLastDayLabel):
+# Edit dialog recurrence -> Monthly Recurrence pattern -> Monthly daypicker
+# The label on the monthly daypicker's last button that allows to select
+# the last day of the month inside a BYMONTHDAY rule.
+eventRecurrenceMonthlyLastDayLabel=Último dia
+
+# LOCALIZATION NOTE (counterSummaryAccepted) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryAccepted=%1$S aceitou o convite, mas fez uma contra-proposta:
+
+# LOCALIZATION NOTE (counterSummaryDeclined) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDeclined=%1$S recusou o convite, mas fez uma contra-proposta:
+
+# LOCALIZATION NOTE (counterSummaryDelegated) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDelegated=%1$S delegou o convite, mas fez uma contra-proposta:
+
+# LOCALIZATION NOTE (counterSummaryNeedsAction) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryNeedsAction=%1$S não decidiu se participaria no evento e fez uma contra-proposta:
+
+# LOCALIZATION NOTE (counterSummaryTentative) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryTentative=%1$S aceitou o convite à experiência e fez uma contra-proposta:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=Esta é uma contra-proposta a uma versão anterior deste evento.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=Você desativou as contra-propostas ao enviar o convite.
+
+# LOCALIZATION NOTE (eventAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation
+eventAccepted=Você aceitou este convite
+
+# LOCALIZATION NOTE (eventTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation tentatively
+eventTentative=Você aceitou este convite provisoriamente
+
+# LOCALIZATION NOTE (eventDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the event invitation
+eventDeclined=Você recusou este convite
+
+# LOCALIZATION NOTE (eventDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her participation to one
+# or more other participants (without attending / working on it his/herself)
+eventDelegated=Você delegou este convite
+
+# LOCALIZATION NOTE (eventNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to an invitation
+eventNeedsAction=Você ainda não respondeu a este convite
+
+# LOCALIZATION NOTE (taskAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the assigned task
+taskAccepted=Você aceitou trabalhar nesta tarefa
+
+# LOCALIZATION NOTE (taskTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted tentatively the assigned task
+taskTentative=Você aceitou provisoriamente trabalhar nesta tarefa
+
+# LOCALIZATION NOTE (taskDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the assigned task
+taskDeclined=Você recusou trabalhar nesta tarefa
+
+# LOCALIZATION NOTE (taskDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her assignement to one or
+# more others (without attending / working on it his/herself)
+taskDelegated=Você delegou o trabalho nesta tarefa
+
+# LOCALIZATION NOTE (taskNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to the task assignment
+taskNeedsAction=Você ainda não respondeu a esta atribuição de tarefa
+
+# LOCALIZATION NOTE (taskInProgress) - this will be displayed as notification
+# in the summary dialog if the user is working on an assigned task
+taskInProgress=Você começou a trabalhar nesta tarefa atribuída
+
+# LOCALIZATION NOTE (taskCompleted) - this will be displayed as notification
+# in the summary dialog if the user has completed the work on this assigned task
+taskCompleted=Você concluiu o seu trabalho nesta tarefa atribuída
+
+# LOCALIZATION NOTE (sendandcloseButtonLabel) - this is a runtime replacement for
+# event.toolbar.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonLabel=Enviar e fechar
+
+# LOCALIZATION NOTE (sendandcloseButtonTooltip) - this is a runtime replacement for
+# event.toolbar.saveandclose.tooltip in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonTooltip=Notificar os participantes e fechar
+
+# LOCALIZATION NOTE (saveandsendButtonLabel) - this is a runtime replacement for
+# event.toolbar.save.label2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonLabel=Guardar e enviar
+
+# LOCALIZATION NOTE (saveandsendButtonTooltip) - this is a runtime replacement
+# for event.toolbar.save.tooltip2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonTooltip=Guardar e notificar os participantes
+
+# LOCALIZATION NOTE (saveandsendMenuLabel) - this is a runtime replacement for
+# event.menu.item.save.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendMenuLabel=Guardar e enviar
+
+# LOCALIZATION NOTE (sendandcloseMenuLabel) - this is a runtime replacement for
+# event.menu.item.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+sendandcloseMenuLabel=Guardar e fechar
+
+# LOCALIZATION NOTE (attendeesTabLabel) - this is a runtime replacement for
+# event.attendees.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attendee
+# %1$S - the number of attendee (1-n)
+attendeesTabLabel=Participantes (%1$S):
+
+# LOCALIZATION NOTE (attachmentsTabLabel) - this is a runtime replacement for
+# event.attachments.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attachment
+# %1$S - the number of attachments (1-n)
+attachmentsTabLabel=Anexos (%1$S):
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-extract.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 0000000000..0e5ce1712e
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-extract.properties
@@ -0,0 +1,294 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+# Strings here are used to create events and tasks with start and end times
+# based on email content.
+# None of the strings are displayed in the user interface.
+#
+# You don't have to fill all from.*, until.*, *.prefix and *.suffix patterns.
+# It's ok to leave some empty.
+# Please consider declensions and gender if your language has them.
+# Don't just translate directly. The number of variants doesn't have to be
+# the same as in en-US. All of 0, 1, 2, etc is allowed in patterns except alphabet
+# pattern. You can and should add language specific variants.
+#
+# There are two different ways to find a start time text in email:
+# 1) it matches a from.* pattern and does not have end.prefix or end.suffix next to it
+# 2) it matches until.* pattern and has start.prefix or start.suffix next to it
+# Similar inverse logic applies to end times.
+# These rules enable using prefix and suffix values with only start.* or only until.*
+# patterns localized for some languages and thus not having to repeat the same
+# values in both.
+#
+# Patterns are partially space-insensitive.
+# "deadline is" pattern will find both "deadlineis" and "deadline is"
+# but "deadlineis" won't find "deadline is" or "deadline is".
+# Therefore you should include all spaces that are valid within a pattern.
+
+# LOCALIZATION NOTE (start.prefix):
+# datetimes with these in front are extracted as start times
+# can be a list of values, separate variants by |
+start.prefix =
+
+# LOCALIZATION NOTE (start.suffix):
+# datetimes followed by these are extracted as start times
+start.suffix = por | até | para | - | até | até | e
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = por | até | para | - | até | até | e | termina: | termina | termina | o prazo é | prazo:
+
+# LOCALIZATION NOTE (end.suffix):
+# datetimes followed by these are extracted as end times
+# can be a list of values, separate variants by |
+end.suffix =
+
+# LOCALIZATION NOTE (no.datetime.prefix):
+# datetimes with these in front won't be used
+# specify full words here
+no.datetime.prefix = semana passada | enviado | email | e-mail | em vez de | > | infelizmente | em | não
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = floor | flr | : | email | e-mail | > | % | usd | dolars | $ | eur | euros | €
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = hoje
+
+from.tomorrow = amanhã
+# LOCALIZATION NOTE (until.*):
+# can be a list of values, separate variants by |
+until.tomorrow =
+
+# LOCALIZATION NOTE (from.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+# should not have "#1" as this would match any single number in email to a time
+from.ordinal.date = #1.º | #1.º | #1.º | #1.º
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = meio dia
+until.noon =
+
+# LOCALIZATION NOTE (from.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should not have "#1" as this would match any single number in email to a time
+from.hour = às #1 | por volta das #1 | #1 - | #1 até
+
+# LOCALIZATION NOTE (until.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour = - #1 | até #1 | até #1 | por #1
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.am = #1 am | #1 a.m
+
+# LOCALIZATION NOTE (until.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.am =
+
+# LOCALIZATION NOTE (from.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.pm = #1 pm | #1 p.m | #1 p
+
+# LOCALIZATION NOTE (until.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.pm =
+
+# LOCALIZATION NOTE (from.half.hour.before):
+# denotes times 30 minutes before next full hour
+from.half.hour.before = meia hora antes das #1
+
+# LOCALIZATION NOTE (until.half.hour.before):
+# denotes times 30 minutes before next full hour
+until.half.hour.before =
+
+# LOCALIZATION NOTE (from.half.hour.after):
+# denotes times 30 minutes after last full hour
+from.half.hour.after = #1 e meia
+
+# LOCALIZATION NOTE (until.half.hour.after):
+# denotes times 30 minutes after last full hour
+until.half.hour.after =
+
+# LOCALIZATION NOTE (from.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes = #1:#2 | às #1#2
+
+# LOCALIZATION NOTE (until.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes =
+
+# LOCALIZATION NOTE (from.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.am = #1:#2 am | #1:#2 a.m
+
+# LOCALIZATION NOTE (until.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.am =
+
+# LOCALIZATION NOTE (from.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.pm = #1:#2 pm | #1:#2 p.m | #1:#2 p
+
+# LOCALIZATION NOTE (until.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.pm =
+
+# LOCALIZATION NOTE (from.monthname.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches monthname
+from.monthname.day = #1 #2 | #2 #1 | #2 #1.º | #2 #1.º | #2 #1.º | #2 #1.º | #1.º de #2 | #1.º de #2 | #1.º de #2 | #1.º de #2
+
+# LOCALIZATION NOTE (until.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+until.monthname.day =
+
+# LOCALIZATION NOTE (from.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+from.month.day = #1/#2
+
+# LOCALIZATION NOTE (until.month.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches numbers 1-12
+until.month.day =
+
+# LOCALIZATION NOTE (from.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+from.year.month.day = #1-#2-#3 | #3/#2/#1 | #3-#2-#1
+
+# LOCALIZATION NOTE (until.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+until.year.month.day =
+
+# LOCALIZATION NOTE (from.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+from.year.monthname.day = #1 #2 #3 | #1.º #2 #3 | #1.º #2 #3 | #1.º #2 #3 | #1.º #2 #3 | #3, #2 #1 | #3-#2-#1
+
+# LOCALIZATION NOTE (until.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+until.year.monthname.day =
+
+# LOCALIZATION NOTE (duration.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (duration.minutes):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.minutes = #1 minutos | #1 min | #1 mins
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.hours = #1 hora| #1 horas
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = #1 dias
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = janeiro | jan | jan.
+month.2 = fevereiro | fev | fev.
+month.3 = março | mar | mar.
+month.4 = abril | abr | abr.
+month.5 = maio | mai | mai.
+month.6 = junho | jun | jun.
+month.7 = julho | jul | jul.
+month.8 = agosto | ago | ago.
+month.9 = setembro | set | set.
+month.10 = outubro | out | out.
+month.11 = novembro | nov | nov.
+month.12 = dezembro | dez | dez.
+
+# LOCALIZATION NOTE (from.weekday.*):
+# used to derive start date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (from.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+from.weekday.0 = domingo | domingos
+from.weekday.1 = segunda | segundas
+from.weekday.2 = terça | terças
+from.weekday.3 = quarta | quartas
+from.weekday.4 = quinta | quintas
+from.weekday.5 = sexta | sextas
+from.weekday.6 = sábado | sábados
+
+# LOCALIZATION NOTE (until.weekday.*):
+# used to derive end date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (until.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+until.weekday.0 =
+until.weekday.1 =
+until.weekday.2 =
+until.weekday.3 =
+until.weekday.4 =
+until.weekday.5 =
+until.weekday.6 =
+
+# LOCALIZATION NOTE (number.*):
+# used within other patterns to understand dates where day of month isn't written with digits
+# can be a list of values, separate variants by |
+number.0 = zero
+number.1 = um | primeiro
+number.2 = dois | segundo
+number.3 = três | terceiro
+number.4 = quatro | quarto
+number.5 = cinco | quinto
+number.6 = seis | sexto
+number.7 = sete | sétimo
+number.8 = oito | oitavo
+number.9 = nove | nono
+number.10 = dez | décimo
+number.11 = onze | décimo primeiro
+number.12 = doze | décimo segundo
+number.13 = treze | décimo terceiro
+number.14 = quatorze | décimo quarto
+number.15 = quinze| décimo quinto
+number.16 = dezasseis| décimo sexto
+number.17 = dezasete | décimo sétimo
+number.18 = dezoito| décimo oitavo
+number.19 = dezanove | décimo nono
+number.20 = vinte | vigésimo
+number.21 = vinte e um | vigésimo primeiro
+number.22 = vinte e dois | vigésimo segundo
+number.23 = vinte e três | vigésimo terceiro
+number.24 = vinte e quatro| vigésimo quarto
+number.25 = vinte e cinco | vigésimo quinto
+number.26 = vinte e seis | vigésimo sexto
+number.27 = vinte e sete | vigésimo sétimo
+number.28 = vinte e oito | vigésimo oitavo
+number.29 = vinte e nove| vigésimo nono
+number.30 = trinta | trigésimo
+number.31 = trinta e um | trigésimo primeiro
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 0000000000..ac996a0ddc
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.properties
new file mode 100644
index 0000000000..52247886b4
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-invitations-dialog.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+allday-event=Evento para todo o dia
+recurrent-event=Evento recorrente
+location=Localização: %S
+organizer=Organizador: %S
+attendee=Participante: %S
+none=Nenhum
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.dtd b/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 0000000000..5864a9335f
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 0000000000..c32d76ae30
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar-occurrence-prompt.properties
@@ -0,0 +1,63 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+header.isrepeating.event.label=é um evento recorrente
+header.isrepeating.task.label=é uma tarefa recorrente\u0020
+
+header.containsrepeating.event.label=contém eventos repetidos
+header.containsrepeating.task.label=contém tarefas repetidas
+header.containsrepeating.mixed.label=contém itens repetidos de diferentes tipos
+
+windowtitle.event.copy=Copiar evento repetido
+windowtitle.task.copy=Copiar tarefa repetida
+windowtitle.mixed.copy=Copiar itens repetidos
+windowtitle.event.cut=Cortar evento repetido
+windowtitle.task.cut=Cortar tarefa repetida
+windowtitle.mixed.cut=Cortar itens repetidos
+windowtitle.event.delete=Apagar evento recorrente
+windowtitle.task.delete=Apagar tarefa recorrente
+windowtitle.mixed.delete=Eliminar itens repetidos
+windowtitle.event.edit=Editar evento recorrente
+windowtitle.task.edit=Editar tarefa recorrente
+
+buttons.occurrence.delete.label=Apagar apenas esta ocorrência
+buttons.occurrence.edit.label=Editar apenas esta ocorrência
+
+buttons.allfollowing.delete.label=Apagar esta e todas as ocorrências futuras
+buttons.allfollowing.edit.label=Editar esta e todas as ocorrências futuras
+
+buttons.parent.delete.label=Apagar todas as ocorrências
+buttons.parent.edit.label=Editar todas as ocorrências
+windowtitle.mixed.edit=Editar itens repetidos
+windowtitle.multipleitems=Itens selecionados
+
+buttons.single.occurrence.copy.label=Copiar apenas esta ocorrência
+buttons.single.occurrence.cut.label=Cortar apenas esta ocorrência
+buttons.single.occurrence.delete.label=Eliminar apenas esta ocorrência
+buttons.single.occurrence.edit.label=Editar apenas esta ocorrência
+
+buttons.multiple.occurrence.copy.label=Copiar apenas as ocorrências selecionadas
+buttons.multiple.occurrence.cut.label=Cortar apenas as ocorrências selecionadas
+buttons.multiple.occurrence.delete.label=Eliminar apenas as ocorrências selecionadas
+buttons.multiple.occurrence.edit.label=Editar apenas as ocorrências selecionadas
+
+buttons.single.allfollowing.copy.label=Copiar esta e todas as ocorrências futuras
+buttons.single.allfollowing.cut.label=Cortar esta e todas as ocorrências futuras
+buttons.single.allfollowing.delete.label=Eliminar esta e todas as ocorrências futuras
+buttons.single.allfollowing.edit.label=Editar esta e todas as ocorrências futuras
+
+buttons.multiple.allfollowing.copy.label=Copiar todas as ocorrências selecionadas e futuras
+buttons.multiple.allfollowing.cut.label=Cortar todas as ocorrências selecionadas e futuras
+buttons.multiple.allfollowing.delete.label=Eliminar todas as ocorrências selecionadas e futuras
+buttons.multiple.allfollowing.edit.label=Editar todas as ocorrências selecionadas e futuras
+
+buttons.single.parent.copy.label=Copiar todas as ocorrências
+buttons.single.parent.cut.label=Cortar todas as ocorrências
+buttons.single.parent.delete.label=Eliminar todas as ocorrências
+buttons.single.parent.edit.label=Editar todas as ocorrências
+
+buttons.multiple.parent.copy.label=Copiar todas as ocorrências dos itens selecionados
+buttons.multiple.parent.cut.label=Cortar todas as ocorrências dos itens selecionados
+buttons.multiple.parent.delete.label=Eliminar todas as ocorrências dos itens selecionados
+buttons.multiple.parent.edit.label=Editar todas as ocorrências dos itens selecionados
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar.dtd b/l10n-pt-PT/calendar/chrome/calendar/calendar.dtd
new file mode 100644
index 0000000000..4b30bdfd58
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,411 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendar.properties b/l10n-pt-PT/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 0000000000..fc71a5a8a2
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,696 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Default name for new events
+newEvent=Novo Evento
+
+# Titles for the event/task dialog
+newEventDialog=Novo Evento
+editEventDialog=Editar Evento
+newTaskDialog=Nova Tarefa
+editTaskDialog=Editar Tarefa
+
+# Do you want to save changes?
+askSaveTitleEvent=Guardar Evento
+askSaveTitleTask=Guardar Tarefa
+askSaveMessageEvent=O evento não foi guardado. Deseja guardar o evento?
+askSaveMessageTask=A tarefa não foi guardada. Deseja guardar a tarefa?
+
+# Event Dialog Warnings
+warningEndBeforeStart=A data de fim é anterior à data de início
+warningUntilDateBeforeStart=A data "Até" ocorre antes da data de início
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Início
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Calendário sem título
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Tentativa
+statusConfirmed =Confirmado
+eventStatusCancelled=Cancelado
+todoStatusCancelled =Cancelada
+statusNeedsAction =Requer ação
+statusInProcess =Em curso
+statusCompleted =Concluída
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Alta
+normalPriority=Normal
+lowPriority=Baixa
+
+importPrompt=Para que calendário deseja importar estes itens?
+exportPrompt=De que calendário deseja exportar?
+pastePrompt=Qual dos seus calendários atualmente editáveis deseja colar para?
+publishPrompt=Qual o calendário que deseja publicar?
+
+# LOCALIZATION NOTE (pasteEventAlso): The users pasting operation includes among
+# others also a meeting invitation - this is used as a affix in
+# pasteNotifyAbout
+pasteEventAlso=A sua colagem inclui uma reunião
+# LOCALIZATION NOTE (pasteEventsAlso): The users pasting operation includes among
+# others also several meeting invitations - this is used as a affix in
+# pasteNotifyAbout
+pasteEventsAlso=A sua colagem inclui reuniões
+# LOCALIZATION NOTE (pasteTaskAlso): The users pasting operation includes among
+# others also an assigned task - this is used as a affix in pasteNotifyAbout
+pasteTaskAlso=A sua colagem inclui uma tarefa atribuída
+# LOCALIZATION NOTE (pasteTasksAlso): The users pasting operation include among
+# others also several assigned tasks - this is used as a affix in
+# pasteNotifyAbout
+pasteTasksAlso=A sua colagem inclui tarefas atribuídas
+# LOCALIZATION NOTE (pasteItemsAlso): The users pasting operation includes among
+# others also assigned task(s) and meeting invitation(s) - this is used as a affix
+# in pasteNotifyAbout
+pasteItemsAlso=A sua colagem inclui reuniões e tarefas atribuídas
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting a meeting -
+# this is used as a affix in pasteNotifyAbout
+pasteEventOnly=Você está a colar uma reunião
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several meetings -
+# this is used as a affix in pasteNotifyAbout
+pasteEventsOnly=Você está a colar reuniões
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting an assigned task -
+# this is used as a affix in pasteNotifyAbout
+pasteTaskOnly=Você está a colar uma tarefa atribuída
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several assigned
+# tasks - this is used as a affix in pasteNotifyAbout
+pasteTasksOnly=Você está a colar tarefas atribuídas
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting assigned task(s) and
+# meeting(s) - this is used as a affix in pasteNotifyAbout
+pasteItemsOnly=Você está a colar reuniões e tarefas atribuídas
+
+# LOCALIZATION NOTE (pasteNotifyAbout): Text displayed if pasting an invitation
+# or assigned task
+# %1$S - pasteEvent* or pasteTask*
+pasteNotifyAbout=%1$S - deseja enviar uma atualização para todos os envolvidos?
+
+# LOCALIZATION NOTE (pasteAndNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteAndNotifyLabel=Colar e enviar agora
+# LOCALIZATION NOTE (pasteDontNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteDontNotifyLabel=Colar sem enviar
+
+# LOCALIZATION NOTE (importItemsFailed):
+# %1$S will be replaced with number of failed items
+# %2$S will be replaced with last error code / error string
+importItemsFailed=Erro ao importar %1$S itens. O último erro foi: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile2):
+# %1$S will be replaced with file path
+noItemsInCalendarFile2=Não é possível importar de %1$S. Não existem itens para importar neste ficheiro.
+
+#spaces needed at the end of the following lines
+eventDescription=Descrição:
+
+unableToRead=Não foi possível ler o ficheiro:
+unableToWrite=Não foi possível escrever no ficheiro:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Calendário Mozilla
+
+# LOCALIZATION NOTE (timezoneError):
+# used for an error message like 'An unknown and undefined timezone was found while reading c:\Mycalendarfile.ics'
+# %1$S will be replaced with the path to a file
+timezoneError=Encontrado um fuso horário desconhecido e indefinido ao ler %1$S.
+
+# LOCALIZATION NOTE (duplicateError):
+# %1$S will be replaced with number of duplicate items
+# %2$S will be replaced with a file path pointing to a calendar
+duplicateError=%1$S itens foram ignorados uma vez que já existem no calendário de destino e em %2$S.
+
+unableToCreateProvider=Ocorreu um erro ao preparar o calendário localizado em %1$S. Não estará disponível.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem=Fuso horário "%1$S" desconhecido em "%2$S". Tratado como fuso horário local 'variável': %3$S
+TimezoneErrorsAlertTitle=Erros de fuso horário
+TimezoneErrorsSeeConsole=Consulte a consola de erro: Os fusos horários desconhecidos são tratados como fusos 'variáveis' horários locais.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Remover calendário
+removeCalendarButtonDelete=Apagar calendário
+removeCalendarButtonUnsubscribe=Cancelar subscrição
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=Pretende remover o calendário "%1$S"? Se cancelar a subscrição, remove-o da lista mas a eliminação purga permanentemente os seus dados.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=Deseja apagar permanentemente o calendário "%1$S"?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe=Pretende cancelar a subscrição do calendário "%1$S"?
+
+WeekTitle=Semana %1$S
+None=Nenhuma
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+
+# LOCALIZATION NOTE (tooNewSchemaErrorText):
+# %1$S will be replaced with the name of the host application, e.g. 'Thunderbird'
+# %2$S will be replaced with the name of the new copy of the file, e.g. 'local-2020-05-11T21-30-17.sqlite'
+tooNewSchemaErrorText=Os dados do seu calendário não são compatíveis com esta versão do %1$S. Os dados do calendário no seu perfil foram atualizados por uma nova versão do %1$S. Foi criada uma cópia de segurança do ficheiro de dados com o nome "%2$S". Continuar com um novo ficheiro de dados.
+
+# List of events or todos (unifinder)
+eventUntitled=Sem título
+
+# Tooltips of events or todos
+tooltipTitle=Título:
+tooltipLocation=Localização:
+# event date, usually an interval, such as
+# Date: 7:00--8:00 Thu 9 Oct 2011
+# Date: Thu 9 Oct 2000 -- Fri 10 Oct 2000
+tooltipDate=Data:
+# event calendar name
+tooltipCalName=Nome do calendário:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Estado:
+# event organizer
+tooltipOrganizer=Agenda:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Início:
+tooltipDue=Fim:
+tooltipPriority=Prioridade:
+tooltipPercent=% terminada:
+tooltipCompleted=Concluída:
+
+#File commands and dialogs
+New=Novo
+Open=Abrir
+filepickerTitleImport=Importar
+filepickerTitleExport=Exportar
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+filterIcs=iCalendar (%1$S)
+filterHtml=Página Web (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Ocorreu um erro
+httpPutError=Ocorreu um erro ao publicar o ficheiro do calendário.\nCódigo de estado: %1$S: %2$S
+otherPutError=Ocorreu um erro ao publicar o ficheiro do calendário.\nCódigo de estado: 0x%1$S
+
+# LOCALIZATION NOTE (readOnlyMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+readOnlyMode=Ocorreu um erro ao ler os dados do calendário: %1$S. Foi colocado no modo de leitura, uma vez que alterações a este calendário poderão resultar na perda de dados. Pode alterar estas definições escolhendo 'Editar calendário'.
+
+# LOCALIZATION NOTE (disabledMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+disabledMode=Ocorreu um erro ao ler os dados do calendário: %1$S. Foi desligado até poder ser utilizado.
+
+# LOCALIZATION NOTE (minorError):
+# used for an message like 'There has been an error reading data for calendar: Home. However this...'
+# %1$S will be replaced with the name of a calendar
+minorError=Ocorreu um erro ao ler os dados do calendário: %1$S. Contudo, o erro foi considerado menor e o programa vai tentar continuar.
+
+# LOCALIZATION NOTE (stillReadOnlyError):
+# used for an message like 'There has been an error reading data for calendar: Home.'
+# %1$S will be replaced with the name of a calendar
+stillReadOnlyError=Ocorreu um erro ao ler os dados do calendário: %1$S.
+utf8DecodeError=Ocorreu um erro ao descodificar um ficheiro iCalendar (ics) como UTF-8. Verifique se o ficheiro, incluindo símbolos e acentos, está codificado no formato UTF-8.
+icsMalformedError=Ocorreu um erro ao descodificar um ficheiro iCalendar (ics). Verifique se o ficheiro está conforme a sintaxe iCalendar (ics).
+itemModifiedOnServerTitle=Item alterado no servidor
+itemModifiedOnServer=Este item foi alterado no servidor.\n
+modifyWillLoseData=Se submeter as suas alterações irá sobrescrever as alterações feitas no servidor.
+deleteWillLoseData=Se apagar este item, irá perder as alterações efetuadas no servidor.
+updateFromServer=Anular as minhas alterações e recarregar
+proceedModify=Submeter as minhas alterações
+proceedDelete=Apagar
+dav_notDav=O recurso em %1$S não está disponível ou não é uma coleção DAV
+dav_davNotCaldav=O recurso em %1$S é uma coleção DAV mas não é um calendário CalDAV
+itemPutError=Ocorreu um erro ao guardar o item no servidor.
+itemDeleteError=Ocorreu um erro ao apagar o item do servidor.
+caldavRequestError=Ocorreu um erro ao enviar o convite.
+caldavResponseError=Ocorreu um erro ao enviar a resposta.
+caldavRequestStatusCode=Código de estado: %1$S
+caldavRequestStatusCodeStringGeneric=O pedido não pode ser processado.
+caldavRequestStatusCodeString400=O pedido contém uma sintaxe inválida e não pode ser processado.
+caldavRequestStatusCodeString403=O utilizador não tem as permissões necessárias para realizar o pedido.
+caldavRequestStatusCodeString404=Recurso não encontrado.
+caldavRequestStatusCodeString409=Conflito de recursos.
+caldavRequestStatusCodeString412=Falha de pré-condição.
+caldavRequestStatusCodeString500=Erro interno do servidor.
+caldavRequestStatusCodeString502=Gateway inválido (configuração do proxy?).
+caldavRequestStatusCodeString503=Erro interno do servidor (servidor temporário desatualizado?).
+caldavRedirectTitle=Atualizar localização do calendário %1$S?
+caldavRedirectText=Os pedidos para %1$S estão a ser encaminhados para uma nova localização. Gostaria de mudar a localização para o seguinte valor?
+caldavRedirectDisableCalendar=Desativar calendário
+
+
+# LOCALIZATION NOTE (likelyTimezone):
+# Translators, please put the most likely timezone(s) where the people using
+# your locale will be. Use the Olson ZoneInfo timezone name *in English*,
+# ie "Europe/Paris", (continent or ocean)/(largest city in timezone).
+# Order does not matter, except if two historically different zones now match,
+# such as America/New_York and America/Toronto, will only find first listed.
+# (Particularly needed to guess the most relevant timezones if there are
+# similar timezones at the same June/December GMT offsets with alphabetically
+# earlier ZoneInfo timezone names. Sample explanations for English below.)
+# for english-US:
+# America/Los_Angeles likelier than America/Dawson
+# America/New_York likelier than America/Detroit (NY for US-EasternTime)
+# for english:
+# Europe/London likelier than Atlantic/Canary
+# Europe/Paris likelier than Africa/Ceuta (for WestEuropeanTime)
+# America/Halifax likelier than America/Glace_Bay (Canada-AtlanticTime)
+# America/Mexico_City likelier than America/Cancun
+# America/Argentina/Buenos_Aires likelier than America/Araguaina
+# America/Sao_Paolo (may not recognize: summer-time dates change every year)
+# Asia/Singapore likelier than Antarctica/Casey
+# Asia/Tokyo likelier than Asia/Dili
+# Africa/Lagos likelier than Africa/Algiers (for WestAfricanTime)
+# Africa/Johannesburg likelier than Africa/Blantyre (for SouthAfricanStdTime)
+# Africa/Nairobi likelier than Africa/Addis_Ababa (for EastAfricanTime)
+# Australia/Brisbane likelier than Antarctica/DumontDUrville
+# Australia/Sydney likelier than Australia/Currie or Australia/Hobart
+# Pacific/Auckland likelier than Antarctica/McMurdo
+likelyTimezone=América/Nova_Iorque, América/Chicago, América/Denver, América/Phoenix, América/Los_Angeles, América/Anchorage, América/Adak, Pacífico/Honolulu, América/Porto_Rico, América/Halifax, América/Cidade_do_México, América/Argentina/Buenos_Aires, América/São_Paulo, Europa/Londres, Europa/Paris, Ásia/Cingapura, Ásia/Tóquio, África/Lagos, África/Joanesburgo, África/Nairobi, Austrália/Brisbane, Austrália/Sydney, Pacífico/Auckland
+
+# Guessed Timezone errors and warnings.
+# Testing note:
+# * remove preference for calendar.timezone.default in userprofile/prefs.js
+# * repeat
+# - set OS timezone to a city (windows: click right on clock in taskbar)
+# - restart
+# - observe guess in error console and verify whether guessed timezone city
+# makes sense for OS city.
+#
+# 'Warning: Operating system timezone "E. South America Standard Time"
+# no longer matches ZoneInfo timezone "America/Sao_Paulo".'
+# Testing notes:
+# - Brasil DST change dates are set every year by decree, so likely out of sync.
+# - Only appears on OSes from which timezone can be obtained
+# (windows; or TZ env var, /etc/localtime target path, or line in
+# /etc/timezone or /etc/sysconfig/clock contains ZoneInfo timezone id).
+# - Windows: turning off "Automatically adjust clock for daylight saving time"
+# can also trigger this warning.
+WarningOSTZNoMatch=Aviso: o fuso horário do sistema operativo "%1$S"\njá não corresponde ao fuso horário interno ZoneInfo "%2$S".
+
+# "Skipping Operating System timezone 'Pacific/New_Country'."
+# Testing note: not easily testable. May occur someday if (non-windows)
+# OS uses different version of ZoneInfo database which has a timezone name
+# that is not included in our current ZoneInfo database (or if the mapping
+# mapping from windows to ZoneInfo timezone ids does).
+SkippingOSTimezone=A ignorar fuso horário '%1$S' do sistema operativo.
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=A ignorar fuso horário regional '%1$S'.
+
+# Testing note: "No match" timezones include Bucharest on W2k.
+# Brazil timezones may be "No match" (change every year, so often out of date,
+# and changes are often more than a week different).
+warningUsingFloatingTZNoMatch=Aviso: a utilizar fuso horário "flutuante".\nNenhuns dados do fuso horário ZoneInfo correspondem com os dados do fuso horário do sistema operativo.
+
+# "Warning: Using guessed timezone
+# America/New York (UTC-0500/-0400).
+# [rfc2445 summer daylight saving shift rules for timezone]
+# This ZoneInfo timezone almost matches/seems to match..."
+# This ZoneInfo timezone was chosen based on ... "
+WarningUsingGuessedTZ=Aviso: a utilizar fuso horário aproximado\n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Este fuso horário ZoneInfo é aproximado ao do sistema operativo.\nPara esta regra, as transições entre a hora de verão e a hora padrão\ndiferem, no máximo, uma semana das transições do sistema operativo.\nPoderão existir discrepâncias nos dados, tais como diferenças na data inicial,\nou regra, ou aproximação a uma regra de calendário não gregoriano.
+
+TZSeemsToMatchOS=Este fuso horário ZoneInfo é coincidente com o do sistema operativo para este ano.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Este fuso horário ZoneInfo foi escolhido tendo como base o \nidentificador do fuso horário do sistema operativo "%1$S".
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Este fuso horário ZoneInfo foi escolhido com base no fuso horário do sistema operativo\nbaseado nos fusos horários para utilizadores de Internet que utilizam Inglês Americano.
+
+TZFromKnownTimezones=Este fuso horário ZoneInfo foi escolhido tendo como base o fuso horário do sistema\ne fusos horários conhecidos ordenados por ordem alfabética do respetivo identificador.
+
+# Print Layout
+tasksWithNoDueDate = Tarefas sem data de fim
+
+# Providers
+caldavName=CalDAV
+compositeName=Composto
+icsName=iCalendar (ICS)
+memoryName=Temporário (memória)
+storageName=Local (SQLite)
+
+# Used in created html code for export
+htmlPrefixTitle=Título
+htmlPrefixWhen=Quando
+htmlPrefixLocation=Localização
+htmlPrefixDescription=Descrição
+htmlTaskCompleted=%1$S (concluída)
+
+# Categories
+addCategory=Adicionar categoria
+multipleCategories=Várias categorias
+
+today=Hoje
+tomorrow=Amanhã
+yesterday=Ontem
+
+#Today pane
+eventsonly=Eventos
+eventsandtasks=Eventos e tarefas
+tasksonly=Tarefas
+shortcalendarweek=CS
+
+go=Ir
+
+# Some languages have different conjugations of 'next' and 'last'. If yours
+# does not, simply repeat the value. This will be used with day names, as in
+# 'next Sunday'.
+next1=seguinte
+next2=seguinte
+last1=última(o)
+last2=última(o)
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 lembrete;#1 lembretes
+
+# LOCALIZATION NOTE (alarmStarts):
+# used for a display the start of an alarm like 'Starts: Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmStarts=Início: %1$S
+
+# LOCALIZATION NOTE (alarmTodayAt):
+# used for a display the date-time of an alarm like 'Today at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTodayAt=Hoje, %1$S
+
+# LOCALIZATION NOTE (alarmTomorrowAt):
+# used for a display the date-time of an alarm like 'Tomorrow at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTomorrowAt=Amanhã, %1$S
+
+# LOCALIZATION NOTE (alarmYesterdayAt):
+# used for a display the date-time of an alarm like 'Yesterday at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmYesterdayAt=Ontem, %1$S
+
+# Alarm interface strings
+# LOCALIZATION NOTE: These strings do not get displayed. They are only visible
+# when exporting an item with i.e a DISPLAY alarm, that doesn't have a
+# description set, or an EMAIL alarm that doesn't have a summary set.
+alarmDefaultDescription=Descrição predefinida Mozilla
+alarmDefaultSummary=Sumário predefinido Mozilla
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+alarmSnoozeLimitExceeded=Não pode silenciar um alarme por mais do que #1 mês.;Não pode silenciar um alarme por mais do que #1 meses.
+
+taskDetailsStatusNeedsAction=Requer ação
+
+# LOCALIZATION NOTE (taskDetailsStatusInProgress):
+# used for a display of how much of a task is completed '25% Complete'
+# %1$S will be replaced with the number of percentage completed
+taskDetailsStatusInProgress=%1$S%% terminada
+taskDetailsStatusCompleted=Concluída
+
+# LOCALIZATION NOTE (taskDetailsStatusCompletedOn):
+# used for a display of completion date like 'Completed on Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with the completion date-time of the task
+taskDetailsStatusCompletedOn=Concluída em %1$S
+taskDetailsStatusCancelled=Cancelada
+
+gettingCalendarInfoCommon=A verificar calendários…
+
+# LOCALIZATION NOTE (gettingCalendarInfoDetail):
+# used for a progress-display of processed like 'Checking Calendar 5 of 10'
+# %1$S will be replaced with the index of the currently processed calendar
+# %2$S will be replaced with the total numbers of calendars
+gettingCalendarInfoDetail=A verificar calendário %1$S de %2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Código de erro: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Descrição: %1$S
+
+# LOCALIZATION NOTE (errorWriting):
+# used for an message like 'An error occurred when writing to the calendar Home!'
+# %1$S will be replaced with the name of a calendar
+errorWriting2=Ocorreu um erro ao escrever para o calendário %1$S! Por favor veja abaixo para mais informação.
+
+# LOCALIZATION NOTE (errorWritingDetails):
+# This will be displayed in the detail section of the error dialog
+errorWritingDetails=Se está a ver esta mensagem depois de suspender ou dispensar um lembrete e é para um calendário que não deseja adicionar ou editar eventos para, pode marcar este calendário como de leitura para evitar esta experiência no futuro. Para o fazer, vá às propriedades do calendário ao clicar com o lado direito neste calendário na lista de calendários ou vista de tarefas.
+
+# LOCALIZATION NOTE (tooltipCalendarDisabled):
+# used for an alert-message like 'The calendar Home is momentarily not available'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarDisabled=O calendário %1$S não está disponível
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarReadOnly=O calendário %1$S é apenas de leitura
+
+taskEditInstructions=Clique aqui para adicionar uma nova tarefa
+taskEditInstructionsReadonly=Por favor selecione um calendário editável
+taskEditInstructionsCapability=Por favor selecione um calendário com suporte a tarefas
+
+eventDetailsStartDate=Início:
+eventDetailsEndDate=Fim:
+
+# LOCALIZATION NOTE (datetimeWithTimezone):
+# used for a display of a date-time with timezone 'Thu 2 Oct 2008 13:21', Europe/Paris
+# %1$S will be replaced with the completion date-time
+# %2$S will be replaced with the name of the timezone
+datetimeWithTimezone=%1$S, %2$S
+
+# LOCALIZATION NOTE (singleLongCalendarWeek):
+# used for display of calendar weeks in short form like 'Calendar Week 43'
+# %1$S will be replaced with the index of the week
+singleLongCalendarWeek=Semana de calendário: %1$S
+
+# LOCALIZATION NOTE (severalLongCalendarWeeks):
+# used for display of calendar weeks in short form like 'Calendar Weeks 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalLongCalendarWeeks=Semanas de calendário %1$S-%2$S
+
+# LOCALIZATION NOTE (singleShortCalendarWeek):
+# used for display of calendar weeks in short form like 'CW 43'
+# %1$S will be replaced with the index of the week
+singleShortCalendarWeek=CS: %1$S
+
+# LOCALIZATION NOTE (severalShortCalendarWeeks):
+# used for display of calendar weeks in short form like 'CWs 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalShortCalendarWeeks=SC: %1$S-%2$S
+
+# LOCALIZATION NOTE (multiweekViewWeek):
+# Used for displaying the week number in the first day box of every week
+# in multiweek and month views.
+# It allows to localize the label with the week number in case your locale
+# requires it.
+# Take into account that this label is placed in the same room of the day label
+# inside the day boxes, exactly on left side, hence a possible string shouldn't
+# be too long otherwise it will create confusion between the week number and
+# the day number other than a possible crop when the window is resized.
+#
+# %1$S is a number from 1 to 53 that represents the week number.
+multiweekViewWeek=S %1$S
+
+# Task tree, "Due In" column.
+# LOCALIZATION NOTE (dueInDays, dueInHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+dueInDays=#1 dia;#1 dias
+dueInHours=#1 hora;#1 horas
+dueInLessThanOneHour=< 1 hora
+
+# LOCALIZATION NOTE (monthInYear):
+# used for display of Month-dates like 'December 2008'
+# %1$S will be replaced with name of the month
+# %2$S will be replaced with the year
+monthInYear=%1$S de %2$S
+
+# LOCALIZATION NOTE (monthInYear.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+monthInYear.monthFormat=nominative
+
+# LOCALIZATION NOTE (formatDateLong):
+# used for display dates in long format like 'Mon 15 Oct 2008' when it's
+# impossible to retrieve the formatatted date from the OS.
+# %1$S will be replaced with name of the day in short format;
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties);
+# %3$S will be replaced with the name of the month in short format;
+# %4$S will be replaced with the year.
+formatDateLong=%1$S, %2$S de %3$S de %4$S
+
+# LOCALIZATION NOTE (dayHeaderLabel):
+# used for display the labels in the header of the days in day/week views in short
+# or long format. For example: 'Monday 6 Oct.' or 'Mon. 6 Oct.'
+# %1$S will be replaced with name of the day in short or long format
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties), plus the name
+# of the month in short format (the day/month order depends on the OS settings).
+dayHeaderLabel=%1$S, %2$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth):
+# used for display of intervals in the form of 'March 3 - 9, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %4$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalInMonth=%2$S - %3$S %1$S, %4$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalInMonth.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths):
+# used for display of intervals in the form 'September 29 - October 5, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with name of the month of the end date
+# %4$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %5$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenMonths=%2$S de %1$S - %4$S de %3$S, %5$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenMonths.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears):
+# used for display of intervals in the form 'December 29, 2008 - January 4, 2009'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the year of the start date
+# %4$S will be replaced with name of the month of the end date
+# %5$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %6$S will be replaced with the year of the end date
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenYears=%2$S de %1$S, %3$S - %5$S de %4$S, %6$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenYears.monthFormat=nominative
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDateTime):
+# used for intervals where end is equals to start
+# displayed form is '5 Jan 2006 13:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalOnSameDateTime=%1$S, às %2$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDay):
+# used for intervals where end is on the same day as start, so we can leave out the
+# end date but still include end time
+# displayed form is '5 Jan 2006 13:00 - 17:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the time of the end date
+datetimeIntervalOnSameDay=%2$S - %3$S de %1$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSeveralDays):
+# used for intervals spanning multiple days by including date and time
+# displayed form is '5 Jan 2006 13:00 - 7 Jan 2006 9:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the date of the end date
+# %4$S will be replaced with the time of the end date
+datetimeIntervalOnSeveralDays=%1$S, às %2$S – %3$S, às %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= sem data de início ou fim
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDueDate):
+# used for intervals in task with only start date
+# displayed form is 'start date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalTaskWithoutDueDate=data de início %2$S em %1$S
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutStartDate):
+# used for intervals in task with only due date
+# displayed form is 'due date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the due date
+# %2$S will be replaced with the time of the due date
+datetimeIntervalTaskWithoutStartDate=data de fim %2$S em %1$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Hora de início
+dragLabelTasksWithOnlyDueDate=Data limite
+
+deleteTaskLabel=Apagar tarefa
+deleteTaskAccesskey=l
+deleteItemLabel=Apagar
+deleteItemAccesskey=l
+deleteEventLabel=Apagar evento
+deleteEventAccesskey=l
+
+calendarPropertiesEveryMinute=Todos os minutos;A cada #1 minutos
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=A utilizar %1$S
+
+# LOCALIZATION NOTE (extractUsingRegion)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+# %2$S will be replaced with region like US in en-US
+extractUsingRegion=A utilizar %1$S (%2$S)
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 minuto;#1 minutos
+unitHours=#1 hora;#1 horas
+unitDays=#1 dia;#1 dias
+unitWeeks=#1 semana;#1 semanas
+
+# LOCALIZATION NOTE (showCalendar)
+# Used in calendar list context menu
+# %1$S will be replaced with the calendar name
+# uses the access key calendar.context.togglevisible.accesskey
+showCalendar=Mostrar %1$S
+hideCalendar=Ocultar %1$S
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Mostrar apenas %1$S
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Conflito na modificação do item
+modifyConflictPromptMessage=O item em edição no diálogo foi modificado desde que foi aberto.
+modifyConflictPromptButton1=Sobrescrever as outras alterações
+modifyConflictPromptButton2=Ignorar estas alterações
+
+# Accessible description of a grid calendar with no selected date
+minimonthNoSelectedDate=Nenhuma data selecionada
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.dtd b/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.dtd
new file mode 100644
index 0000000000..be51ddac42
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.dtd
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.properties b/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.properties
new file mode 100644
index 0000000000..0c014d784e
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/calendarCreation.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+error.invalidUri=Escolha uma localização válida.
+error.alreadyExists=Já tem uma subscrição do calendário neste local.
diff --git a/l10n-pt-PT/calendar/chrome/calendar/categories.properties b/l10n-pt-PT/calendar/chrome/calendar/categories.properties
new file mode 100644
index 0000000000..528c5f0a26
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/categories.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# default categories
+
+categories2=Aniversário,Nascimento,Negócios,Chamadas,Clientes,Concorrentes,Clientes,Favoritos,Acompanhar,Ofertas,Feriados,Ideias,Problemas,Encontros,Diversos,Pessoal,Projetos,Feriado públicos,Estado,Fornecedores,Viagem,Férias
diff --git a/l10n-pt-PT/calendar/chrome/calendar/dateFormat.properties b/l10n-pt-PT/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 0000000000..41da04982e
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/dateFormat.properties
@@ -0,0 +1,146 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# In case you are looking for the note about different declensions on date
+# formats, here it is. If your language doesn't use different declensions of
+# month names, you shouldn't have much work. Just leave the *.monthFormat
+# string on "nominative" and the string month.*.name will be filled in.
+#
+# If you need a different form for a string, you can change the
+# *.monthFormat to a different value. Supported values are currently:
+# nominative (default), genitive
+# The modified month name form will then be filled in accordingly. If this
+# system does not suit your needs, please file a bug!
+
+# LOCALIZATION NOTE (month.*.name):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "nominative" or in places
+# where using a different declension is not yet supported.
+month.1.name=janeiro
+month.2.name=fevereiro
+month.3.name=março
+month.4.name=abril
+month.5.name=maio
+month.6.name=junho
+month.7.name=julho
+month.8.name=agosto
+month.9.name=setembro
+month.10.name=outubro
+month.11.name=novembro
+month.12.name=dezembro
+
+# LOCALIZATION NOTE (month.*.genitive):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "genitive"
+# If your language doesn't use different declensions, just set the same
+# values as for month.*.name.
+month.1.genitive=janeiro
+month.2.genitive=fevereiro
+month.3.genitive=março
+month.4.genitive=abril
+month.5.genitive=maio
+month.6.genitive=junho
+month.7.genitive=julho
+month.8.genitive=agosto
+month.9.genitive=setembro
+month.10.genitive=outubro
+month.11.genitive=novembro
+month.12.genitive=dezembro
+
+month.1.Mmm=jan
+month.2.Mmm=fev
+month.3.Mmm=mar
+month.4.Mmm=abr
+month.5.Mmm=mai
+month.6.Mmm=jun
+month.7.Mmm=jul
+month.8.Mmm=ago
+month.9.Mmm=set
+month.10.Mmm=out
+month.11.Mmm=nov
+month.12.Mmm=dez
+
+day.1.name=domingo
+day.2.name=segunda
+day.3.name=terça
+day.4.name=quarta
+day.5.name=quinta
+day.6.name=sexta
+day.7.name=sábado
+
+day.1.Mmm=dom
+day.2.Mmm=seg
+day.3.Mmm=ter
+day.4.Mmm=qua
+day.5.Mmm=qui
+day.6.Mmm=sex
+day.7.Mmm=sáb
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=do
+day.2.short=se
+day.3.short=te
+day.4.short=qu
+day.5.short=q
+day.6.short=se
+day.7.short=sá
+
+# Localizable day's date
+day.1.number=1
+day.2.number=2
+day.3.number=3
+day.4.number=4
+day.5.number=5
+day.6.number=6
+day.7.number=7
+day.8.number=8
+day.9.number=9
+day.10.number=10
+day.11.number=11
+day.12.number=12
+day.13.number=13
+day.14.number=14
+day.15.number=15
+day.16.number=16
+day.17.number=17
+day.18.number=18
+day.19.number=19
+day.20.number=20
+day.21.number=21
+day.22.number=22
+day.23.number=23
+day.24.number=24
+day.25.number=25
+day.26.number=26
+day.27.number=27
+day.28.number=28
+day.29.number=29
+day.30.number=30
+day.31.number=31
+
+# LOCALIZATION NOTE (dayOrdinalSymbol):
+# Allows to insert a string, a character or a symbol after the number of a
+# monthday in order to give it the meaning of ordinal number e.g. 1 -> 1st etc.
+# It's mainly used when formatting dates with both monthday and month name. It
+# affects the following localizable strings that hence must be localized *without*
+# any ordinal symbol for the monthday number:
+# dayHeaderLabel, monthlyDaysOfNth_day,
+# yearlyNthOn, daysIntervalBetweenYears,
+# daysIntervalBetweenMonths, daysIntervalInMonth.
+# Write only a single string if the ordinal symbol is the same for every monthday, otherwise
+# write a sequence of _31_ strings (one for each monthday) separated with commas.
+# If your language doesn't require that in the mentioned strings, leave it empty.
+# e.g.
+# dayOrdinalSymbol=.
+# -> daysIntervalInMonth: 'March 3. - 9., 2008'
+# dayOrdinalSymbol=st,nd,rd,th,th,th,th,th,th,th,th,th,th,th,th,
+# th,th,th,th,th,st,nd,rd,th,th,th,th,th,th,th,st
+# -> daysIntervalBetweenMonths: 'September 29th - November 1st, 2008'
+dayOrdinalSymbol=
+
+noon=Meio dia
+midnight=Meia noite
+
+AllDay=Dia completo
+Repeating=(Recorrente)
diff --git a/l10n-pt-PT/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd b/l10n-pt-PT/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 0000000000..552da53100
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/global.dtd b/l10n-pt-PT/calendar/chrome/calendar/global.dtd
new file mode 100644
index 0000000000..d124756d87
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/global.dtd
@@ -0,0 +1,54 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/menuOverlay.dtd b/l10n-pt-PT/calendar/chrome/calendar/menuOverlay.dtd
new file mode 100644
index 0000000000..a38e209d98
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/menuOverlay.dtd
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/migration.dtd b/l10n-pt-PT/calendar/chrome/calendar/migration.dtd
new file mode 100644
index 0000000000..b15af0bf85
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/migration.dtd
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/migration.properties b/l10n-pt-PT/calendar/chrome/calendar/migration.properties
new file mode 100644
index 0000000000..70489c13e6
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/migration.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migratingApp = A migrar %1$S…
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = Importação de dados do %1$S
+migrationDescription=O %1$S pode importar os calendários de diversas aplicações. Foram encontrados dados dados das seguintes aplicações. Por favor escolha as aplicações para a importação de dados.
+finished = Terminado
+disableExtTitle = Encontrada uma extensão incompatível
+disableExtText = Você tem uma extensão que não é compatível com o Lightning. A extensão será desativada e o %1$S será reiniciado.
diff --git a/l10n-pt-PT/calendar/chrome/calendar/provider-uninstall.dtd b/l10n-pt-PT/calendar/chrome/calendar/provider-uninstall.dtd
new file mode 100644
index 0000000000..84ef825a68
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/provider-uninstall.dtd
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/calendar/timezones.properties b/l10n-pt-PT/calendar/chrome/calendar/timezones.properties
new file mode 100644
index 0000000000..7ea4d92d93
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/calendar/timezones.properties
@@ -0,0 +1,494 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+pref.timezone.floating=Hora local
+pref.timezone.UTC=UTC/GMT
+
+# I've derived this list out of timezones.dtd
+# - replaced '_' with ' ' on value side
+# - corrected 'St xyz' to 'St. xyz'
+
+# This list is derived from the IANA timezone database, but was always
+# incomplete. It will not be updated; future revisions will rely on metazones as
+# defined by CLDR, but these remain in place to prevent regressions in
+# localization.
+
+# timezone names:
+pref.timezone.Africa.Abidjan=África/Abidjan
+pref.timezone.Africa.Accra=África/Accra
+pref.timezone.Africa.Addis_Ababa=África/Addis_Ababa
+pref.timezone.Africa.Algiers=África/Algiers
+pref.timezone.Africa.Asmara=África/Asmara
+pref.timezone.Africa.Bamako=África/Bamako
+pref.timezone.Africa.Bangui=África/Bangui
+pref.timezone.Africa.Banjul=África/Banjul
+pref.timezone.Africa.Bissau=África/Bissau
+pref.timezone.Africa.Blantyre=África/Blantyre
+pref.timezone.Africa.Brazzaville=África/Brazzaville
+pref.timezone.Africa.Bujumbura=África/Bujumbura
+pref.timezone.Africa.Cairo=África/Cairo
+pref.timezone.Africa.Casablanca=África/Casablanca
+pref.timezone.Africa.Ceuta=África/Ceuta
+pref.timezone.Africa.Conakry=África/Conakry
+pref.timezone.Africa.Dakar=África/Dakar
+pref.timezone.Africa.Dar_es_Salaam=África/Dar_es_Salaam
+pref.timezone.Africa.Djibouti=África/Djibouti
+pref.timezone.Africa.Douala=África/Douala
+pref.timezone.Africa.El_Aaiun=África/El_Aaiun
+pref.timezone.Africa.Freetown=África/Freetown
+pref.timezone.Africa.Gaborone=África/Gaborone
+pref.timezone.Africa.Harare=África/Harare
+pref.timezone.Africa.Johannesburg=África/Johannesburg
+pref.timezone.Africa.Kampala=África/Kampala
+pref.timezone.Africa.Khartoum=África/Khartoum
+pref.timezone.Africa.Kigali=África/Kigali
+pref.timezone.Africa.Kinshasa=África/Kinshasa
+pref.timezone.Africa.Lagos=África/Lagos
+pref.timezone.Africa.Libreville=África/Libreville
+pref.timezone.Africa.Lome=África/Lome
+pref.timezone.Africa.Luanda=África/Luanda
+pref.timezone.Africa.Lubumbashi=África/Lubumbashi
+pref.timezone.Africa.Lusaka=África/Lusaka
+pref.timezone.Africa.Malabo=África/Malabo
+pref.timezone.Africa.Maputo=África/Maputo
+pref.timezone.Africa.Maseru=África/Maseru
+pref.timezone.Africa.Mbabane=África/Mbabane
+pref.timezone.Africa.Mogadishu=África/Mogadishu
+pref.timezone.Africa.Monrovia=África/Monrovia
+pref.timezone.Africa.Nairobi=África/Nairobi
+pref.timezone.Africa.Ndjamena=África/Ndjamena
+pref.timezone.Africa.Niamey=África/Niamey
+pref.timezone.Africa.Nouakchott=África/Nouakchott
+pref.timezone.Africa.Ouagadougou=África/Ouagadougou
+pref.timezone.Africa.Porto-Novo=África/Porto-Novo
+pref.timezone.Africa.Sao_Tome=África/Sao_Tome
+pref.timezone.Africa.Tripoli=África/Tripoli
+pref.timezone.Africa.Tunis=África/Tunis
+pref.timezone.Africa.Windhoek=África/Windhoek
+pref.timezone.America.Adak=América/Adak
+pref.timezone.America.Anchorage=América/Anchorage
+pref.timezone.America.Anguilla=América/Anguilla
+pref.timezone.America.Antigua=América/Antigua
+pref.timezone.America.Araguaina=América/Araguaina
+pref.timezone.America.Argentina.Buenos_Aires=América/Argentina/Buenos_Aires
+pref.timezone.America.Argentina.Catamarca=América/Argentina/Catamarca
+pref.timezone.America.Argentina.Cordoba=América/Argentina/Cordoba
+pref.timezone.America.Argentina.Jujuy=América/Argentina/Jujuy
+pref.timezone.America.Argentina.La_Rioja=América/Argentina/La_Rioja
+pref.timezone.America.Argentina.Mendoza=América/Argentina/Mendoza
+pref.timezone.America.Argentina.Rio_Gallegos=América/Argentina/Rio_Gallegos
+pref.timezone.America.Argentina.San_Juan=América/Argentina/San_Juan
+pref.timezone.America.Argentina.Tucuman=América/Argentina/Tucuman
+pref.timezone.America.Argentina.Ushuaia=América/Argentina/Ushuaia
+pref.timezone.America.Aruba=América/Aruba
+pref.timezone.America.Asuncion=América/Asuncion
+pref.timezone.America.Atikokan=América/Atikokan
+pref.timezone.America.Bahia=América/Bahia
+pref.timezone.America.Barbados=América/Barbados
+pref.timezone.America.Belem=América/Belem
+pref.timezone.America.Belize=América/Belize
+pref.timezone.America.Blanc-Sablon=América/Blanc-Sablon
+pref.timezone.America.Boa_Vista=América/Boa Vista
+pref.timezone.America.Bogota=América/Bogota
+pref.timezone.America.Boise=América/Boise
+pref.timezone.America.Cambridge_Bay=América/Cambridge_Bay
+pref.timezone.America.Campo_Grande=América/Campo_Grande
+pref.timezone.America.Cancun=América/Cancun
+pref.timezone.America.Caracas=América/Caracas
+pref.timezone.America.Cayenne=América/Cayenne
+pref.timezone.America.Cayman=América/Cayman
+pref.timezone.America.Chicago=América/Chicago
+pref.timezone.America.Chihuahua=América/Chihuahua
+pref.timezone.America.Costa_Rica=América/Costa_Rica
+pref.timezone.America.Cuiaba=América/Cuiaba
+pref.timezone.America.Curacao=América/Curacao
+pref.timezone.America.Danmarkshavn=América/Danmarkshavn
+pref.timezone.America.Dawson=América/Dawson
+pref.timezone.America.Dawson_Creek=América/Dawson_Creek
+pref.timezone.America.Denver=América/Denver
+pref.timezone.America.Detroit=América/Detroit
+pref.timezone.America.Dominica=América/Dominica
+pref.timezone.America.Edmonton=América/Edmonton
+pref.timezone.America.Eirunepe=América/Eirunepe
+pref.timezone.America.El_Salvador=América/El_Salvador
+pref.timezone.America.Fortaleza=América/Fortaleza
+pref.timezone.America.Glace_Bay=América/Glace_Bay
+pref.timezone.America.Godthab=América/Godthab
+pref.timezone.America.Goose_Bay=América/Goose_Bay
+pref.timezone.America.Grand_Turk=América/Grand_Turk
+pref.timezone.America.Grenada=América/Grenada
+pref.timezone.America.Guadeloupe=América/Guadeloupe
+pref.timezone.America.Guatemala=América/Guatemala
+pref.timezone.America.Guayaquil=América/Guayaquil
+pref.timezone.America.Guyana=América/Guyana
+pref.timezone.America.Halifax=América/Halifax
+pref.timezone.America.Havana=América/Havana
+pref.timezone.America.Hermosillo=América/Hermosillo
+pref.timezone.America.Indiana.Indianapolis=América/Indiana/Indianapolis
+pref.timezone.America.Indiana.Knox=América/Indiana/Knox
+pref.timezone.America.Indiana.Marengo=América/Indiana/Marengo
+pref.timezone.America.Indiana.Petersburg=América/Indiana/Petersburg
+pref.timezone.America.Indiana.Vevay=América/Indiana/Vevay
+pref.timezone.America.Indiana.Vincennes=América/Indiana/Vincennes
+pref.timezone.America.Inuvik=América/Inuvik
+pref.timezone.America.Iqaluit=América/Iqaluit
+pref.timezone.America.Jamaica=América/Jamaica
+pref.timezone.America.Juneau=América/Juneau
+pref.timezone.America.Kentucky.Louisville=América/Kentucky/Louisville
+pref.timezone.America.Kentucky.Monticello=América/Kentucky/Monticello
+pref.timezone.America.La_Paz=América/La_Paz
+pref.timezone.America.Lima=América/Lima
+pref.timezone.America.Los_Angeles=América/Los_Angeles
+pref.timezone.America.Maceio=América/Maceio
+pref.timezone.America.Managua=América/Managua
+pref.timezone.America.Manaus=América/Manaus
+pref.timezone.America.Martinique=América/Martinique
+pref.timezone.America.Mazatlan=América/Mazatlan
+pref.timezone.America.Menominee=América/Menominee
+pref.timezone.America.Merida=América/Merida
+pref.timezone.America.Mexico_City=América/Mexico_City
+pref.timezone.America.Miquelon=América/Miquelon
+pref.timezone.America.Moncton=América/Moncton
+pref.timezone.America.Monterrey=América/Monterrey
+pref.timezone.America.Montevideo=América/Montevideo
+pref.timezone.America.Montreal=América/Montreal
+pref.timezone.America.Montserrat=América/Montserrat
+pref.timezone.America.Nassau=América/Nassau
+pref.timezone.America.New_York=América/New_York
+pref.timezone.America.Nipigon=América/Nipigon
+pref.timezone.America.Nome=América/Nome
+pref.timezone.America.Noronha=América/Noronha
+pref.timezone.America.North_Dakota.Center=América/North_Dakota/Center
+pref.timezone.America.North_Dakota.New_Salem=América/North_Dakota/New_Salem
+pref.timezone.America.Panama=América/Panama
+pref.timezone.America.Pangnirtung=América/Pangnirtung
+pref.timezone.America.Paramaribo=América/Paramaribo
+pref.timezone.America.Phoenix=América/Phoenix
+pref.timezone.America.Port-au-Prince=América/Port-au-Prince
+pref.timezone.America.Port_of_Spain=América/Port_of_Spain
+pref.timezone.America.Porto_Velho=América/Porto_Velho
+pref.timezone.America.Puerto_Rico=América/Puerto_Rico
+pref.timezone.America.Rainy_River=América/Rainy_River
+pref.timezone.America.Rankin_Inlet=América/Rankin_Inlet
+pref.timezone.America.Recife=América/Recife
+pref.timezone.America.Regina=América/Regina
+pref.timezone.America.Rio_Branco=América/Rio_Branco
+pref.timezone.America.Santiago=América/Santiago
+pref.timezone.America.Santo_Domingo=América/Santo Domingo
+pref.timezone.America.Sao_Paulo=América/Sao_Paulo
+pref.timezone.America.Scoresbysund=América/Scoresbysund
+pref.timezone.America.Shiprock=América/Shiprock
+pref.timezone.America.St_Johns=América/St_Johns
+pref.timezone.America.St_Kitts=América/St_Kitts
+pref.timezone.America.St_Lucia=América/St_Lucia
+pref.timezone.America.St_Thomas=América/St_Thomas
+pref.timezone.America.St_Vincent=América/St_Vincent
+pref.timezone.America.Swift_Current=América/Swift_Current
+pref.timezone.America.Tegucigalpa=América/Tegucigalpa
+pref.timezone.America.Thule=América/Thule
+pref.timezone.America.Thunder_Bay=América/Thunder_Bay
+pref.timezone.America.Tijuana=América/Tijuana
+pref.timezone.America.Toronto=América/Toronto
+pref.timezone.America.Tortola=América/Tortola
+pref.timezone.America.Vancouver=América/Vancouver
+pref.timezone.America.Whitehorse=América/Whitehorse
+pref.timezone.America.Winnipeg=América/Winnipeg
+pref.timezone.America.Yakutat=América/Yakutat
+pref.timezone.America.Yellowknife=América/Yellowknife
+pref.timezone.Antarctica.Casey=Antártida/Casey
+pref.timezone.Antarctica.Davis=Antártida/Davis
+pref.timezone.Antarctica.DumontDUrville=Antártida/DumontDUrville
+pref.timezone.Antarctica.Mawson=Antártida/Mawson
+pref.timezone.Antarctica.McMurdo=Antártida/McMurdo
+pref.timezone.Antarctica.Palmer=Antártida/Palmer
+pref.timezone.Antarctica.Rothera=Antártida/Rothera
+pref.timezone.Antarctica.South_Pole=Antártida/South_Pole
+pref.timezone.Antarctica.Syowa=Antártida/Syowa
+pref.timezone.Antarctica.Vostok=Antártida/Vostok
+pref.timezone.Arctic.Longyearbyen=Ártico/Longyearbyen
+pref.timezone.Asia.Aden=Ásia/Aden
+pref.timezone.Asia.Almaty=Ásia/Almaty
+pref.timezone.Asia.Amman=Ásia/Amman
+pref.timezone.Asia.Anadyr=Ásia/Anadyr
+pref.timezone.Asia.Aqtau=Ásia/Aqtau
+pref.timezone.Asia.Aqtobe=Ásia/Aqtobe
+pref.timezone.Asia.Ashgabat=Ásia/Ashgabat
+pref.timezone.Asia.Baghdad=Ásia/Baghdad
+pref.timezone.Asia.Bahrain=Ásia/Bahrain
+pref.timezone.Asia.Baku=Ásia/Baku
+pref.timezone.Asia.Bangkok=Ásia/Bangkok
+pref.timezone.Asia.Beirut=Ásia/Beirut
+pref.timezone.Asia.Bishkek=Ásia/Bishkek
+pref.timezone.Asia.Brunei=Ásia/Brunei
+pref.timezone.Asia.Choibalsan=Ásia/Choibalsan
+pref.timezone.Asia.Chongqing=Ásia/Chongqing
+pref.timezone.Asia.Colombo=Ásia/Colombo
+pref.timezone.Asia.Damascus=Ásia/Damascus
+pref.timezone.Asia.Dhaka=Ásia/Dhaka
+pref.timezone.Asia.Dili=Ásia/Dili
+pref.timezone.Asia.Dubai=Ásia/Dubai
+pref.timezone.Asia.Dushanbe=Ásia/Dushanbe
+pref.timezone.Asia.Gaza=Ásia/Gaza
+pref.timezone.Asia.Harbin=Ásia/Harbin
+pref.timezone.Asia.Hong_Kong=Ásia/Hong_Kong
+pref.timezone.Asia.Hovd=Ásia/Hovd
+pref.timezone.Asia.Irkutsk=Ásia/Irkutsk
+pref.timezone.Asia.Istanbul=Ásia/Istanbul
+pref.timezone.Asia.Jakarta=Ásia/Jakarta
+pref.timezone.Asia.Jayapura=Ásia/Jayapura
+pref.timezone.Asia.Jerusalem=Ásia/Jerusalem
+pref.timezone.Asia.Kabul=Ásia/Kabul
+pref.timezone.Asia.Kamchatka=Ásia/Kamchatka
+pref.timezone.Asia.Karachi=Ásia/Karachi
+pref.timezone.Asia.Kashgar=Ásia/Kashgar
+pref.timezone.Asia.Kathmandu=Ásia/Kathmandu
+pref.timezone.Asia.Krasnoyarsk=Ásia/Krasnoyarsk
+pref.timezone.Asia.Kuala_Lumpur=Ásia/Kuala_Lumpur
+pref.timezone.Asia.Kuching=Ásia/Kuching
+pref.timezone.Asia.Kuwait=Ásia/Kuwait
+pref.timezone.Asia.Macau=Ásia/Macau
+pref.timezone.Asia.Magadan=Ásia/Magadan
+pref.timezone.Asia.Makassar=Ásia/Makassar
+pref.timezone.Asia.Manila=Ásia/Manila
+pref.timezone.Asia.Muscat=Ásia/Muscat
+pref.timezone.Asia.Nicosia=Ásia/Nicosia
+pref.timezone.Asia.Novosibirsk=Ásia/Novosibirsk
+pref.timezone.Asia.Omsk=Ásia/Omsk
+pref.timezone.Asia.Oral=Ásia/Oral
+pref.timezone.Asia.Phnom_Penh=Ásia/Phnom_Penh
+pref.timezone.Asia.Pontianak=Ásia/Pontianak
+pref.timezone.Asia.Pyongyang=Ásia/Pyongyang
+pref.timezone.Asia.Qatar=Ásia/Qatar
+pref.timezone.Asia.Qyzylorda=Ásia/Qyzylorda
+pref.timezone.Asia.Rangoon=Ásia/Rangoon
+pref.timezone.Asia.Riyadh=Ásia/Riyadh
+pref.timezone.Asia.Sakhalin=Ásia/Sakhalin
+pref.timezone.Asia.Samarkand=Ásia/Samarkand
+pref.timezone.Asia.Seoul=Ásia/Seoul
+pref.timezone.Asia.Shanghai=Ásia/Shanghai
+pref.timezone.Asia.Singapore=Ásia/Singapore
+pref.timezone.Asia.Taipei=Ásia/Taipei
+pref.timezone.Asia.Tashkent=Ásia/Tashkent
+pref.timezone.Asia.Tbilisi=Ásia/Tbilisi
+pref.timezone.Asia.Tehran=Ásia/Tehran
+pref.timezone.Asia.Thimphu=Ásia/Thimphu
+pref.timezone.Asia.Tokyo=Ásia/Tokyo
+pref.timezone.Asia.Ulaanbaatar=Ásia/Ulaanbaatar
+pref.timezone.Asia.Urumqi=Ásia/Urumqi
+pref.timezone.Asia.Vientiane=Ásia/Vientiane
+pref.timezone.Asia.Vladivostok=Ásia/Vladivostok
+pref.timezone.Asia.Yakutsk=Ásia/Yakutsk
+pref.timezone.Asia.Yekaterinburg=Ásia/Yekaterinburg
+pref.timezone.Asia.Yerevan=Ásia/Yerevan
+pref.timezone.Atlantic.Azores=Atlântico/Açores
+pref.timezone.Atlantic.Bermuda=Atlântico/Bermuda
+pref.timezone.Atlantic.Canary=Atlântico/Canárias
+pref.timezone.Atlantic.Cape_Verde=Atlântico/Cabo Verde
+pref.timezone.Atlantic.Faroe=Atlântico/Faroe
+pref.timezone.Atlantic.Madeira=Atlântico/Madeira
+pref.timezone.Atlantic.Reykjavik=Atlântico/Reykjavik
+pref.timezone.Atlantic.South_Georgia=Atlântico/South_Georgia
+pref.timezone.Atlantic.St_Helena=Atlântico/St_Helena
+pref.timezone.Atlantic.Stanley=Atlântico/Stanley
+pref.timezone.Australia.Adelaide=Austrália/Adelaide
+pref.timezone.Australia.Brisbane=Austrália/Brisbane
+pref.timezone.Australia.Broken_Hill=Austrália/Broken_Hill
+pref.timezone.Australia.Currie=Austrália/Currie
+pref.timezone.Australia.Darwin=Austrália/Darwin
+pref.timezone.Australia.Eucla=Austrália/Eucla
+pref.timezone.Australia.Hobart=Austrália/Hobart
+pref.timezone.Australia.Lindeman=Austrália/Lindeman
+pref.timezone.Australia.Lord_Howe=Austrália/Lord_Howe
+pref.timezone.Australia.Melbourne=Austrália/Melbourne
+pref.timezone.Australia.Perth=Austrália/Perth
+pref.timezone.Australia.Sydney=Austrália/Sydney
+pref.timezone.Europe.Amsterdam=Europa/Amsterdam
+pref.timezone.Europe.Andorra=Europa/Andorra
+pref.timezone.Europe.Athens=Europa/Atenas
+pref.timezone.Europe.Belgrade=Europa/Belgrado
+pref.timezone.Europe.Berlin=Europa/Berlim
+pref.timezone.Europe.Bratislava=Europa/Bratislava
+pref.timezone.Europe.Brussels=Europa/Brussels
+pref.timezone.Europe.Bucharest=Europa/Bucharest
+pref.timezone.Europe.Budapest=Europa/Budapest
+pref.timezone.Europe.Chisinau=Europa/Chisinau
+pref.timezone.Europe.Copenhagen=Europa/Copenhagen
+pref.timezone.Europe.Dublin=Europa/Dublin
+pref.timezone.Europe.Gibraltar=Europa/Gibraltar
+pref.timezone.Europe.Guernsey=Europa/Guernsey
+pref.timezone.Europe.Helsinki=Europa/Helsinki
+pref.timezone.Europe.Isle_of_Man=Europa/Isle_of_Man
+pref.timezone.Europe.Istanbul=Europa/Istanbul
+pref.timezone.Europe.Jersey=Europa/Jersey
+pref.timezone.Europe.Kaliningrad=Europa/Kaliningrad
+pref.timezone.Europe.Kiev=Europa/Kiev
+pref.timezone.Europe.Lisbon=Europa/Lisboa
+pref.timezone.Europe.Ljubljana=Europa/Ljubljana
+pref.timezone.Europe.London=Europa/London
+pref.timezone.Europe.Luxembourg=Europa/Luxemburgo
+pref.timezone.Europe.Madrid=Europa/Madrid
+pref.timezone.Europe.Malta=Europa/Malta
+pref.timezone.Europe.Mariehamn=Europa/Mariehamn
+pref.timezone.Europe.Minsk=Europa/Minsk
+pref.timezone.Europe.Monaco=Europa/Mónaco
+pref.timezone.Europe.Moscow=Europa/Moscovo
+pref.timezone.Europe.Nicosia=Europa/Nicosia
+pref.timezone.Europe.Oslo=Europa/Oslo
+pref.timezone.Europe.Paris=Europa/Paris
+pref.timezone.Europe.Podgorica=Europa/Podgorica
+pref.timezone.Europe.Prague=Europa/Pragua
+pref.timezone.Europe.Riga=Europa/Riga
+pref.timezone.Europe.Rome=Europa/Roma
+pref.timezone.Europe.Samara=Europa/Samara
+pref.timezone.Europe.San_Marino=Europa/San_Marino
+pref.timezone.Europe.Sarajevo=Europa/Sarajevo
+pref.timezone.Europe.Simferopol=Europa/Simferopol
+pref.timezone.Europe.Skopje=Europa/Skopje
+pref.timezone.Europe.Sofia=Europa/Sofia
+pref.timezone.Europe.Stockholm=Europa/Stockholm
+pref.timezone.Europe.Tallinn=Europa/Tallinn
+pref.timezone.Europe.Tirane=Europa/Tirane
+pref.timezone.Europe.Uzhgorod=Europa/Uzhgorod
+pref.timezone.Europe.Vaduz=Europa/Vaduz
+pref.timezone.Europe.Vatican=Europa/Vaticano
+pref.timezone.Europe.Vienna=Europa/Viena
+pref.timezone.Europe.Vilnius=Europa/Vilnius
+pref.timezone.Europe.Volgograd=Europa/Volgograd
+pref.timezone.Europe.Warsaw=Europa/Varsóvia
+pref.timezone.Europe.Zagreb=Europa/Zagreb
+pref.timezone.Europe.Zaporozhye=Europa/Zaporozhye
+pref.timezone.Europe.Zurich=Europa/Zurique
+pref.timezone.Indian.Antananarivo=Índia/Antananarivo
+pref.timezone.Indian.Chagos=Índia/Chagos
+pref.timezone.Indian.Christmas=Índia/Christmas
+pref.timezone.Indian.Cocos=Índia/Cocos
+pref.timezone.Indian.Comoro=Índia/Comoro
+pref.timezone.Indian.Kerguelen=Índia/Kerguelen
+pref.timezone.Indian.Mahe=Índia/Mahe
+pref.timezone.Indian.Maldives=Índia/Maldives
+pref.timezone.Indian.Mauritius=Índia/Mauritius
+pref.timezone.Indian.Mayotte=Índia/Mayotte
+pref.timezone.Indian.Reunion=Índia/Reunion
+pref.timezone.Pacific.Apia=Pacífico/Apia
+pref.timezone.Pacific.Auckland=Pacífico/Auckland
+pref.timezone.Pacific.Chatham=Pacífico/Chatham
+pref.timezone.Pacific.Easter=Pacífico/Easter
+pref.timezone.Pacific.Efate=Pacífico/Efate
+pref.timezone.Pacific.Enderbury=Pacífico/Enderbury
+pref.timezone.Pacific.Fakaofo=Pacífico/Fakaofo
+pref.timezone.Pacific.Fiji=Pacífico/Fiji
+pref.timezone.Pacific.Funafuti=Pacífico/Funafuti
+pref.timezone.Pacific.Galapagos=Pacífico/Galapagos
+pref.timezone.Pacific.Gambier=Pacífico/Gambier
+pref.timezone.Pacific.Guadalcanal=Pacífico/Guadalcanal
+pref.timezone.Pacific.Guam=Pacífico/Guam
+pref.timezone.Pacific.Honolulu=Pacífico/Honolulu
+pref.timezone.Pacific.Johnston=Pacífico/Johnston
+pref.timezone.Pacific.Kiritimati=Pacífico/Kiritimati
+pref.timezone.Pacific.Kosrae=Pacífico/Kosrae
+pref.timezone.Pacific.Kwajalein=Pacífico/Kwajalein
+pref.timezone.Pacific.Majuro=Pacífico/Majuro
+pref.timezone.Pacific.Marquesas=Pacífico/Marquesas
+pref.timezone.Pacific.Midway=Pacífico/Midway
+pref.timezone.Pacific.Nauru=Pacífico/Nauru
+pref.timezone.Pacific.Niue=Pacífico/Niue
+pref.timezone.Pacific.Norfolk=Pacífico/Norfolk
+pref.timezone.Pacific.Noumea=Pacífico/Noumea
+pref.timezone.Pacific.Pago_Pago=Pacífico/Pago_Pago
+pref.timezone.Pacific.Palau=Pacífico/Palau
+pref.timezone.Pacific.Pitcairn=Pacífico/Pitcairn
+pref.timezone.Pacific.Ponape=Pacífico/Ponape
+pref.timezone.Pacific.Port_Moresby=Pacífico/Port_Moresby
+pref.timezone.Pacific.Rarotonga=Pacífico/Rarotonga
+pref.timezone.Pacific.Saipan=Pacífico/Saipan
+pref.timezone.Pacific.Tahiti=Pacífico/Tahiti
+pref.timezone.Pacific.Tarawa=Pacífico/Tarawa
+pref.timezone.Pacific.Tongatapu=Pacífico/Tongatapu
+pref.timezone.Pacific.Truk=Pacífico/Truk
+pref.timezone.Pacific.Wake=Pacífico/Wake
+pref.timezone.Pacific.Wallis=Pacífico/Wallis
+
+# the following have been missing
+pref.timezone.America.Indiana.Tell_City=América/Indiana/Tell City
+pref.timezone.America.Indiana.Winamac=América/Indiana/Winamac
+pref.timezone.America.Marigot=América/Marigot
+pref.timezone.America.Resolute=América/Resolute
+pref.timezone.America.St_Barthelemy=América/St. Barthelemy
+
+# added with 2008d:
+pref.timezone.America.Argentina.San_Luis=América/Argentina/San Luis
+pref.timezone.America.Santarem=América/Santarem
+pref.timezone.Asia.Ho_Chi_Minh=Ásia/Ho Chi Minh
+pref.timezone.Asia.Kolkata=Ásia/Kolkata
+
+# added with 2008i:
+pref.timezone.America.Argentina.Salta=América/Argentina/Salta
+
+# added with 2010i
+pref.timezone.America.Matamoros=América/Matamoros
+pref.timezone.America.Ojinaga=América/Ojinaga
+pref.timezone.America.Santa_Isabel=América/Santa Isabel
+pref.timezone.Antarctica.Macquarie=Antártida/Macquarie
+pref.timezone.Asia.Novokuznetsk=Ásia/Novokuznetsk
+
+#added with 2011b
+pref.timezone.America.Bahia_Banderas=América/Bahia Banderas
+pref.timezone.America.North_Dakota.Beulah=América/Dakota do Norte/Beulah
+pref.timezone.Pacific.Chuuk=Pacifíco/Chuuk
+pref.timezone.Pacific.Pohnpei=Pacifíco/Pohnpei
+
+#added with 2011n
+pref.timezone.Africa.Juba=África/Juba
+pref.timezone.America.Kralendijk=América/Kralendijk
+pref.timezone.America.Lower_Princes=América/Lower Princes
+pref.timezone.America.Metlakatla=América/Metlakatla
+pref.timezone.America.Sitka=América/Sitka
+pref.timezone.Asia.Hebron=Ásia/Hebron
+
+#added with 2013a
+pref.timezone.America.Creston=América/Creston
+pref.timezone.Asia.Khandyga=Ásia/Khandyga
+pref.timezone.Asia.Ust-Nera=Ásia/Ust-Nera
+pref.timezone.Europe.Busingen=Europa/Busingen
+
+#added with 2014b
+pref.timezone.Antarctica.Troll=Antártida/Troll
+
+#added with 2014j
+pref.timezone.Asia.Chita=Asia/Chita
+pref.timezone.Asia.Srednekolymsk=Ásia/Srednekolymsk
+pref.timezone.Pacific.Bougainville=Pacífico/Bougainville
+
+#added with 2.2015g
+pref.timezone.America.Fort_Nelson=América/Forte Nélson
+
+#added with 2.2016b
+pref.timezone.Europe.Ulyanovsk=Europa/Ulianovsk
+pref.timezone.Europe.Astrakhan=Europa/Astracã
+pref.timezone.Asia.Barnaul=Ásia/Barnaul
+
+#added with 2.2016i
+pref.timezone.Asia.Yangon=Ásia/Yangon
+pref.timezone.Asia.Tomsk=Ásia/Tomsk
+pref.timezone.Asia.Famagusta=Ásia/Famagusta
+pref.timezone.Europe.Kirov=Europa/Kirov
+
+#added with 2.2016j
+pref.timezone.Europe.Saratov=Europa/Saratov
+pref.timezone.Asia.Atyrau=Ásia/Atyrau
+
+#added with 2.2017b
+pref.timezone.America.Punta_Arenas=América/Punta Arenas
+
+#added with 2.2018i
+pref.timezone.Asia.Qostanay=Ásia/Qostanay
+
+#added with 2.2020a
+pref.timezone.America.Nuuk=América/Nuuk
+
+#added with 2.2021c
+pref.timezone.Pacific.Kanton=Pacífico/Kanton
+
+#added with 2.2022b
+pref.timezone.Europe.Kyiv=Europe/Kiev
diff --git a/l10n-pt-PT/calendar/chrome/lightning/lightning-toolbar.dtd b/l10n-pt-PT/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 0000000000..ddb86b81f1
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/lightning/lightning-toolbar.dtd
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/lightning/lightning.dtd b/l10n-pt-PT/calendar/chrome/lightning/lightning.dtd
new file mode 100644
index 0000000000..1d2b715a9a
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/lightning/lightning.dtd
@@ -0,0 +1,114 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/calendar/chrome/lightning/lightning.properties b/l10n-pt-PT/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 0000000000..f42b3e652d
--- /dev/null
+++ b/l10n-pt-PT/calendar/chrome/lightning/lightning.properties
@@ -0,0 +1,201 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# addon description:
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.name=Lightning
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.description=Calendarização e agendamento integrados no seu cliente de email
+extensions.{e2fda1a4-762b-4020-b5ad-a41df1933103}.creator=Projeto Mozilla Calendar
+
+# Lightning branding
+brandShortName=Lightning
+
+# Task mode title
+taskModeApplicationTitle=Tarefas
+
+# Tab titles
+tabTitleCalendar=Calendário
+tabTitleTasks=Tarefas
+
+# Html event display in message
+imipHtml.header=Convite para evento
+imipHtml.summary=Título:
+imipHtml.location=Localização:
+imipHtml.when=Quando:
+imipHtml.organizer=Organizador:
+imipHtml.description=Descrição:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=Anexos:
+imipHtml.comment=Comentário:
+imipHtml.attendees=Participantes:
+# LOCALIZATION_NOTE(imipHtml.url): This is a label for a reference to an (alternate) online
+# representation of the event (either directly human readable or not).
+imipHtml.url=Ligação relacionada:
+imipHtml.canceledOccurrences=Ocorrências canceladas:
+imipHtml.modifiedOccurrences=Ocorrências modificadas:
+imipHtml.newLocation=Novo local %1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedFrom): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegator or a comma separated list of delegators
+imipHtml.attendeeDelegatedFrom=(delegado de %1$S)
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedTo): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+imipHtml.attendeeDelegatedTo=(delegado em %1$S)
+
+# LOCALIZATION_NOTE(imipHtml.attendee.combined): tooltip for itip icon in email invitation preview.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of imipHtml.attendeeRole2.*
+# %2$S - value of imipHtml.attendeePartStat2.*
+imipHtml.attendee.combined=%2$S - %1$S
+
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.CHAIR): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.CHAIR=%1$S preside o evento.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.NON-PARTICIPANT=%1$S é um não-participante.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.OPT-PARTICIPANT=%1$S é um participante opcional.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.REQ-PARTICIPANT=%1$S é um participante necessário.
+
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.ACCEPTED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.ACCEPTED=%1$S confirmou a participação.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DECLINED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.DECLINED=%1$S não aceitou a participação.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DELEGATED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# %2$S - single delegatee or comma separated list of delegatees
+# delegation is different from invitation forwarding - in case of the former the original attendee
+# is replaced, while on the latter the receiver may take part additionally
+imipHtml.attendeePartStat2.DELEGATED=%1$S delegou a participação em %2$S.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.NEEDS-ACTION): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.NEEDS-ACTION=%1$S ainda precisa de responder.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.TENTATIVE): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.TENTATIVE=%1$S confirmou a participação provisoriamente.
+
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.INDIVIDUAL): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing an individual attendee
+imipHtml.attendeeUserType2.INDIVIDUAL=%1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.GROUP): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a group (e.g. a distribution list)
+imipHtml.attendeeUserType2.GROUP=%1$S (grupo)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.RESOURCE): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a resource (e.g. projector)
+imipHtml.attendeeUserType2.RESOURCE=%1$S (recurso)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.ROOM): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing a room
+imipHtml.attendeeUserType2.ROOM=%1$S (sala)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.UNKNOWN): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name representing an attendee of unknown type
+imipHtml.attendeeUserType2.UNKNOWN=%1$S
+
+imipAddedItemToCal2=Este evento foi adicionado ao seu calendário.
+imipCanceledItem2=O evento foi apagado do seu calendário.
+imipUpdatedItem2=O evento foi atualizado.
+imipBarCancelText=Esta mensagem contém um cancelamento de um evento.
+imipBarCounterErrorText=Esta mensagem contém uma contra-proposta para um convite mas não pode ser processada.
+imipBarCounterPreviousVersionText=Esta mensagem contém uma contra-proposta para uma versão anterior de um convite.
+imipBarCounterText=Esta mensagem contém uma contra-proposta a um convite.
+imipBarDisallowedCounterText=Esta mensagem contém uma contra-proposta, mas você não permite essa opção para este evento.
+imipBarDeclineCounterText=Esta mensagem contém uma resposta à sua contra-proposta.
+imipBarRefreshText=Esta mensagem contém uma atualização do evento.
+imipBarPublishText=Esta mensagem contém um evento.
+imipBarRequestText=Esta mensagem contém um convite para um evento.
+imipBarSentText=Esta mensagem contém um evento enviado.
+imipBarSentButRemovedText=Esta mensagem contém o envio de um evento que já não existe no calendário.
+imipBarUpdateText=Esta mensagem contém uma atualização a um evento existente.
+imipBarUpdateMultipleText=Esta mensagem contém atualizações para múltiplos eventos existentes.
+imipBarUpdateSeriesText=Esta mensagem contém uma atualização para uma série de eventos existentes.
+imipBarAlreadyProcessedText=Esta mensagem contém um evento que já foi processado.
+imipBarProcessedNeedsAction=Esta mensagem contém um evento a que ainda não respondeu.
+imipBarProcessedMultipleNeedsAction=Esta mensagem contém múltiplos eventos aos quais você ainda não respondeu.
+imipBarProcessedSeriesNeedsAction=Esta mensagem contém uma série de eventos aos quais você ainda não respondeu.
+imipBarReplyText=Esta mensagem contém uma resposta a um convite.
+imipBarReplyToNotExistingItem=Esta mensagem contem uma resposta referente a um evento que não está no seu calendário.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - datetime of deletion
+imipBarReplyToRecentlyRemovedItem=Esta mensagem contem uma resposta referente a um evento que foi removido do seu calendário a %1$S.
+imipBarUnsupportedText=Esta mensagem contém um evento que esta versão do Lightning não pode processar.
+imipBarUnsupportedText2=Esta mensagem contém um evento que esta versão do %1$S não pode processar.
+imipBarProcessingFailed=Erro ao processar a mensagem. Estado: %1$S.
+imipBarCalendarDeactivated=Esta mensagem contém informações do evento. Ative um calendário para o gerir.
+imipBarNotWritable=Não existem calendários editáveis configurados para convites, por favor verifique as propriedades do calendário.
+imipSendMail.title=Notificação por e-mail
+imipSendMail.text=Deseja enviar agora as mensagens de notificação?
+imipNoIdentity=Nenhuma
+imipNoCalendarAvailable=Não existem calendários editáveis disponíveis.
+
+itipReplySubject2=Resposta ao convite: %1$S
+itipReplyBodyAccept=%1$S aceitou o seu convite para o evento.
+itipReplyBodyDecline=%1$S não aceitou o seu convite para o evento.
+itipReplySubjectAccept2=Aceite: %1$S
+itipReplySubjectDecline2=Convite recusado: %1$S
+itipReplySubjectTentative2=Tentativo: %1$S
+itipRequestSubject2=Convite: %1$S
+itipRequestUpdatedSubject2=Atualizado: %1$S
+itipRequestBody=%1$S convidou-lhe para %2$S
+itipCancelSubject2=Cancelado: %1$S
+itipCancelBody=%1$S cancelou este evento: %2$S
+itipCounterBody=%1$S fez uma contra-propostas para %2$S:
+itipDeclineCounterBody=%1$S recusou a sua contra-proposta para %2$S.
+itipDeclineCounterSubject=Contra-proposta recusada: %1$S
+
+confirmProcessInvitation=Eliminou este item recentemente. Tem a certeza que deseja processar este convite?
+confirmProcessInvitationTitle=Processar convite?
+
+invitationsLink.label=Convites: %1$S
+
+# LOCALIZATION_NOTE(binaryComponentKnown): This is shown when Lightning is
+# missing the binary component and knows how to calculate the expected version
+# number. To test, remove the binary component from the components/
+# subdirectory and start Lightning, or force install into a different
+# Thunderbird version. In the last part of the sentence it should be made clear
+# that the user can install e.g. 3.7, 3.7.1 or anything other 3.7.x version
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The current Lightning version
+# %3$S - The expected Lightning version
+binaryComponentKnown=O componente binário necessário para %1$S não foi carregado, provavelmente porque está a utilizar uma combinação de versão errada. Você tem instalado o %1$S %2$S, mas deveria utilizar uma versão da série %3$S.
+
+# LOCALIZATION_NOTE(binaryComponentUnknown): This is shown when Lightning is
+# missing the binary component but can't calculate the expected version. This
+# happens in the rare case that Lightning is installed into something other
+# than Thunderbird or Seamonkey. You may link to a different page if you can
+# commit to keeping it up to date, I'd recommend staying with the English page.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+# %2$S - The application brand name, e.g. Postbox
+# %3$S - The application version
+# %3$S - The current Lightning version
+binaryComponentUnknown=O componente binário necessário para %1$S não foi carregado, provavelmente porque está a utilizar uma combinação de versão errada. Você está a utilizar o %2$S %3$S e ao mesmo tempo o %1$S %4$S. Por favor consulte https://developer.mozilla.org/en/Calendar/Calendar_Versions para mais informações.
+
+# LOCALIZATION_NOTE(binaryComponentTitle): The title for the dialog that
+# notifies about a version mismatch.
+# %1$S - The Lightning brand name, from the brandShortName string above.
+binaryComponentTitle=Versão do %1$S não correspondente
+
+# LOCALIZATION NOTE(noIdentitySelectedNotification):
+noIdentitySelectedNotification=Se deseja utilizar este calendário para armazenar convites para ou de outras pessoas deve atribuir uma identidade de email abaixo.
diff --git a/l10n-pt-PT/calendar/lightning-l10n.js b/l10n-pt-PT/calendar/lightning-l10n.js
new file mode 100644
index 0000000000..868504b8f3
--- /dev/null
+++ b/l10n-pt-PT/calendar/lightning-l10n.js
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
+# the default day to start the week on
+#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
+pref("calendar.week.start", 0);
+
+# default days off (not in work week)
+pref("calendar.week.d0sundaysoff", true);
+pref("calendar.week.d1mondaysoff", false);
+pref("calendar.week.d2tuesdaysoff", false);
+pref("calendar.week.d3wednesdaysoff", false);
+pref("calendar.week.d4thursdaysoff", false);
+pref("calendar.week.d5fridaysoff", false);
+pref("calendar.week.d6saturdaysoff", true);
+
+pref("general.useragent.locale", "@AB_CD@");
+
+# categories
+pref("calendar.categories.names", "Anniversary,Birthday,Business,Calls,Clients,Competition,Customer,Favorites,Follow up,Gifts,Holidays,Ideas,Issues,Meeting,Miscellaneous,Personal,Projects,Public Holiday,Status,Suppliers,Travel,Vacation");
diff --git a/l10n-pt-PT/chat/accounts.dtd b/l10n-pt-PT/chat/accounts.dtd
new file mode 100644
index 0000000000..39276d7c8d
--- /dev/null
+++ b/l10n-pt-PT/chat/accounts.dtd
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/l10n-pt-PT/chat/accounts.properties b/l10n-pt-PT/chat/accounts.properties
new file mode 100644
index 0000000000..901767f02b
--- /dev/null
+++ b/l10n-pt-PT/chat/accounts.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (passwordPromptTitle, passwordPromptText):
+# %S is replaced with the name of the account
+passwordPromptTitle=Palavra-passe para %S
+passwordPromptText=Por favor, digite a palavra-passe para %S, para poder estabelecer a ligação.
+passwordPromptSaveCheckbox=Utilizar o gestor de palavras-passe para memorizar esta palavra-passe.
diff --git a/l10n-pt-PT/chat/commands.properties b/l10n-pt-PT/chat/commands.properties
new file mode 100644
index 0000000000..55b2ab9890
--- /dev/null
+++ b/l10n-pt-PT/chat/commands.properties
@@ -0,0 +1,27 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (commands):
+# %S is a comma separated list of command names.
+commands=Comandos: %S.\nUtilize /help <comando> para mais informação.
+# LOCALIZATION NOTE (noCommand, noHelp):
+# %S is the command name the user typed.
+noCommand=Nenhum comando '%S'.
+noHelp=Desculpe, nenhuma mensagem de ajuda para o comando '%S'!
+
+sayHelpString=diga <mensagem>: enviar uma mensagem sem comandos de processamento.
+rawHelpString=raw <mensagem>: enviar uma mensagem sem entidades HTML.
+helpHelpString=ajuda <nome>: mostrar a mensagem de ajuda para o comando <nome> ou a lista de comandos possíveis quando utilizado sem parâmetro.
+
+# LOCALIZATION NOTE (statusCommand):
+# %1$S is replaced with a status command name
+# (one of "back", "away", "busy", "dnd", or "offline").
+# %2$S is replaced with the localized version of that status type
+# (one of the 5 strings below).
+statusCommand=%1$S <mensgame de estado>: define o estado para %2$S com uma mensagem de estado facultativa.
+back=disponível
+away=ausente
+busy=indisponível
+dnd=indisponível
+offline=offline
diff --git a/l10n-pt-PT/chat/contacts.properties b/l10n-pt-PT/chat/contacts.properties
new file mode 100644
index 0000000000..e13ed0d14c
--- /dev/null
+++ b/l10n-pt-PT/chat/contacts.properties
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (defaultGroup):
+# This is the name of the group that will automatically be created when adding a
+# buddy without specifying a group.
+defaultGroup=Contactos
diff --git a/l10n-pt-PT/chat/conversations.properties b/l10n-pt-PT/chat/conversations.properties
new file mode 100644
index 0000000000..601a390185
--- /dev/null
+++ b/l10n-pt-PT/chat/conversations.properties
@@ -0,0 +1,85 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (targetChanged):
+# %1$S is the new conversation title (display name of the new target),
+# %2$S is the protocol name used for the new target.
+targetChanged=A conversa irá continuar com %1$S, usando %2$S.
+
+# LOCALIZATION NOTE (statusChanged):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+statusChanged=%1$S está agora %2$S.
+# LOCALIZATION NOTE (statusChangedWithStatusText):
+# %1$S is the display name of the contact.
+# %2$S is the new status type (a value from status.properties).
+# %3$S is the status text (eg. "I'm currently away from the computer").
+statusChangedWithStatusText=%1$S está agora %2$S: %3$S.
+# LOCALIZATION NOTE (statusChangedFromUnknown[WithStatusText]):
+# special case of the previous 2 strings for when the status was
+# previously unknown. These 2 strings should not mislead the user
+# into thinking the person's status has just changed.
+statusChangedFromUnknown=%1$S está %2$S.
+statusChangedFromUnknownWithStatusText=%1$S está %2$S: %3$S.
+# LOCALIZATION NOTE (statusKnown[WithStatusText]):
+# special case of the previous 2 strings for when an account has just
+# been reconnected, so the status is now known. These 2 strings should not
+# mislead the user into thinking the person's status has just changed.
+statusKnown=Estabelecida uma nova ligação para a sua conta (%1$S está %2$S).
+statusKnownWithStatusText=Estabelecida uma nova ligação para a sua conta (%1$S está %2$S: %3$S).
+# LOCALIZATION NOTE (statusUnknown):
+# %S is the display name of the contact.
+statusUnknown=A sua conta está desligada (o estado de %S já não é conhecido).
+
+accountDisconnected=A sua conta está desligada.
+accountReconnected=Estabelecida uma nova ligação para a sua conta.
+
+# LOCALIZATION NOTE (autoReply):
+# %S is replaced by the text of a message that was sent as an automatic reply.
+autoReply=Resposta automática - %S
+
+# LOCALIZATION NOTE (noTopic):
+# Displayed instead of the topic when no topic is set.
+noTopic=Não existe tópico para esta sala.
+
+# LOCALIZATION NOTE (topicSet):
+# %1$S is the conversation name, %2$S is the topic.
+topicSet=O tópico para %1$S é: %2$S.
+# LOCALIZATION NOTE (topicNotSet):
+# %S is the conversation name.
+topicNotSet=Não existe tópico para %S.
+# LOCALIZATION NOTE (topicChanged):
+# %1$S is the user who changed the topic, %2$S is the new topic.
+topicChanged=%1$S alterou o tópico para: %2$S.
+# LOCALIZATION NOTE (topicCleared):
+# %1$S is the user who cleared the topic.
+topicCleared=%1$S removeu o tópico.
+
+# LOCALIZATION NOTE (nickSet):
+# This is displayed as a system message when a participant changes his/her
+# nickname in a conversation.
+# %1$S is the old nick.
+# %2$S is the new nick.
+nickSet=%1$S é agora conhecido como %2$S.
+# LOCALIZATION NOTE (nickSet.you):
+# This is displayed as a system message when your nickname is changed.
+# %S is your new nick.
+nickSet.you=Você é agora conhecido como %S.
+
+# LOCALIZATION NOTE (messenger.conversations.selections.ellipsis):
+# ellipsis is used when copying a part of a message to show that the message was cut
+messenger.conversations.selections.ellipsis=[…]
+
+# LOCALIZATION NOTE (messenger.conversations.selections.{system,content,action}MessagesTemplate):
+# These 3 templates are used to format selected messages before copying them.
+# Do not translate the texts between % characters, but feel free to adjust
+# whitespace and separators to make them fit your locale.
+messenger.conversations.selections.systemMessagesTemplate=%time% - %message%
+messenger.conversations.selections.contentMessagesTemplate=%time% - %sender%: %message%
+messenger.conversations.selections.actionMessagesTemplate=%time% * %sender% %message%
+
+# LOCALIZATION NOTE (message.status):
+# This is used as title attribute for the visible lock icon in case a message
+# was sent encrypted through the OTR protocol.
+message.status=Mensagem encriptada
diff --git a/l10n-pt-PT/chat/facebook.properties b/l10n-pt-PT/chat/facebook.properties
new file mode 100644
index 0000000000..463115f795
--- /dev/null
+++ b/l10n-pt-PT/chat/facebook.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+facebook.chat.name=Conversa do Facebook
+facebook.disabled=O chat do Facebook já não é suportado porque o Facebook desativou o acesso XMPP.
diff --git a/l10n-pt-PT/chat/imtooltip.properties b/l10n-pt-PT/chat/imtooltip.properties
new file mode 100644
index 0000000000..c9c0c0ca98
--- /dev/null
+++ b/l10n-pt-PT/chat/imtooltip.properties
@@ -0,0 +1,12 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+buddy.username=Nome de utilizador
+buddy.account=Conta
+contact.tags=Etiquetas
+
+otr.tag=Estado do OTR
+
+encryption.tag=Estado da encriptação
+message.status=Mensagem encriptada
diff --git a/l10n-pt-PT/chat/irc.properties b/l10n-pt-PT/chat/irc.properties
new file mode 100644
index 0000000000..c3ceedf661
--- /dev/null
+++ b/l10n-pt-PT/chat/irc.properties
@@ -0,0 +1,209 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (irc.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring an IRC account.
+irc.usernameHint=nick
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if the account is
+# disconnected because of an error.
+connection.error.lost=Ligação com o servidor perdida
+connection.error.timeOut=A ligação expirou
+connection.error.invalidUsername=%S não é um nome de utilizador permitido
+connection.error.invalidPassword=Palavra-passe inválida
+connection.error.passwordRequired=Requer palavra-passe
+
+# LOCALIZATION NOTE (joinChat.*):
+# These show up on the join chat menu. An underscore is for the access key.
+joinChat.channel=_Canal
+joinChat.password=_Palavra-passe
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.server=Servidor
+options.port=Porta
+options.ssl=Utilizar SSL
+options.encoding=Codificação
+options.quitMessage=Sair da mensagem
+options.partMessage=Mensagem de saída
+options.showServerTab=Mostrar mensagens do servidor
+options.alternateNicks=Nicks alternativos
+
+# LOCALIZATION NOTE (ctcp.version):
+# %1$S is the nickname of the user whose version was requested.
+# %2$S is the version response from the client.
+ctcp.version=%1$S está a utilizar "%2$S".
+# LOCALIZATION NOTE (ctcp.time):
+# %1$S is the nickname of the user whose time was requested.
+# %2$S is the time response.
+ctcp.time=A hora de %1$S é %2$S.
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.action=%S <ação a realizar>: Realiza uma ação.
+command.ban=%S <nick!user@host> Banir os utilizadores correspondentes ao padrão dado.
+command.ctcp=%S <nick> <mensagem>: envia uma mensagem CTCP para o nick.
+command.chanserv=%S <comando>: Envia um comando para o ChanServ.
+command.deop=%S <nick>[,<alcunha2>]*: remove o estado de operador de alguém. Você tem que ser um operador do canal para o poder fazer.
+command.devoice=%S <nick1>[,<nick2>]*: remove o estado de voz de alguém, impedindo-o de falar se o canal for moderado(+m). Você tem que ser um operador do canal para o poder fazer.
+command.invite2=%S <nick>[ <nick>]* [<canal>]: convida um ou mais utilizadores a entrar no canal atual ou em outro canal especificado.
+command.join=%S <sala1>[ <chave1>][,<sala2>[ <key2>]]*: Introduza um ou mais canais disponibilizando, opcionalmente, uma chave se for necessário.
+command.kick=%S <nick> [<mensagem>]: remove alguém de um canal. Você tem que ser um operador do canal para o poder fazer.
+command.list=%S: mostra a lista das salas de chat na rede. Alguns servidores podem ser desligados se efetuar esta operação.
+command.memoserv=%S <comando>: Envia um comando para MemoServ.
+command.modeUser2=%S <nick> [(+|-)<modo>]: Obter, definir ou não definir um modo do utilizador.
+command.modeChannel2=%S <canal>[ (+|-)<novo modo> [<parâmetro>][,<parâmetro>]*]: Obter, definir ou não definir um modo de canal.
+command.msg=%S <nick> <mensagem>: envia uma mensagem privada a um utilizador (em oposição ao canal).
+command.nick=%S <novo nick>: muda o seu nick.
+command.nickserv=%S <comando>: envia um comando para NickServ.
+command.notice=%S <destino> <mensagem>: Envia um aviso para um utilizador ou canal.
+command.op=%S <nick1>[,<nick2>]*: concede o estado de operador de canal a alguém. Você tem que ser um operador do canal para o poder fazer.
+command.operserv=%S <comando>: Envia um comando para OperServ.
+command.part=%S [mensagem]: Sai da sala atual com uma mensagem facultativa.
+command.ping=%S [<nick>]: pergunta quanto lag tem um utilizador (ou servidor se nenhum utilizador for especificado).
+command.quit=%S <mensagem>: Desliga do servidor com uma mensagem opcional.
+command.quote=%S <comando>: Envia um comando para o servidor.
+command.time=%S: mostra a hora local do servidor IRC.
+command.topic=%S [<novo tópico>]: Define o tópico do canal.
+command.umode=%S (+|-)<novo modo>: Define o modo do utilizador.
+command.version=%S <nick>: solicita a versão do cliente do utilizador.
+command.voice=%S <nick1>[,<nick2>]*: concede o estado de voz de canal a alguém. Você tem que ser um operador do canal para o poder fazer.
+command.whois2=%S <nick>: obtém as informações de um utilizador.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the nick and %2$S is the nick and host of the user who joined.
+message.join=%1$S [%2$S] entrou na sala.
+message.rejoined=Você entrou novamente na sala.
+# %1$S is the nick of who kicked you.
+# %2$S is message.kicked.reason, if a kick message was given.
+message.kicked.you=Você foi expulso por %1$S%2$S.
+# %1$S is the nick that is kicked, %2$S the nick of the person who kicked
+# %1$S. %3$S is message.kicked.reason, if a kick message was given.
+message.kicked=%1$S foi expulso por %2$S%3$S.
+# %S is the kick message
+message.kicked.reason=: %S
+# %1$S is the new mode, %2$S is the nickname of the user whose mode
+# was changed, and %3$S is who set the mode.
+message.usermode=%3$S definiu o modo %1$S para %2$S.
+# %1$S is the new channel mode and %2$S is who set the mode.
+message.channelmode=%2$S definiu o modo de canal %1$S.
+# %S is the user's mode.
+message.yourmode=O seu modo é %S.
+# Could not change the nickname. %S is the user's nick.
+message.nick.fail=Não pode utilizar este nickname. O seu nick permanece %S.
+# The parameter is the message.parted.reason, if a part message is given.
+message.parted.you=Você saiu da sala (Mensagem: %1$S).
+# %1$S is the user's nick, %2$S is message.parted.reason, if a part message is given.
+message.parted=%1$S saiu da sala (Mensagem: %2$S).
+# %S is the part message supplied by the user.
+message.parted.reason=: %S
+# %1$S is the user's nick, %2$S is message.quit2 if a quit message is given.
+message.quit=%1$S deixou a sala (Mensagem: %2$S).
+# The parameter is the quit message given by the user.
+message.quit2=: %S
+# %1$S is the nickname of the user that invited us, %2$S is the conversation
+# name.
+message.inviteReceived=%1$S convidou-lhe para %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to.
+message.invited=%1$S foi convidado com sucesso para %2$S.
+# %1$S is the nickname of the invited user, %2$S is the conversation name
+# they were invited to but are already in
+message.alreadyInChannel=%1$S já está em %2$S.
+# %S is the nickname of the user who was summoned.
+message.summoned=%S foi convicado.
+# %S is the nickname of the user whose WHOIS information follows this message.
+message.whois=Informação WHOIS para %S:
+# %1$S is the nickname of the (offline) user whose WHOWAS information follows this message.
+message.whowas=%1$S está offline. Informação WHOWAS para %1$S:
+# %1$S is the entry description (from tooltip.*), %2$S is its value.
+message.whoisEntry=\u00A0 %1$S: %2$S
+# %S is the nickname that is not known to the server.
+message.unknownNick=%S é um nickname desconhecido.
+# %1$S is the nickname of the user who changed the mode and %2$S is the new
+# channel key (password).
+message.channelKeyAdded=%1$S mudou a palavra-passe do canal para %2$S.
+message.channelKeyRemoved=%S removeu a palavra-passe do canal.
+# This will be followed by a list of ban masks.
+message.banMasks=Os utilizadores ligados das seguintes localizações foram banidos de %S:
+message.noBanMasks=Não existem localizações banidas para %S.
+message.banMaskAdded=Os utilizadores ligados a partir das localizações coincidentes com %1$S foram banidos por %2$S.
+message.banMaskRemoved=Os utilizadores ligados a partir das localizações coincidentes com %1$S deixaram de estar banidos por %2$S.
+# LOCALIZATION NOTE (message.ping): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# %1$S is the nickname of the user or the server that was pinged.
+# #2 is the delay (in milliseconds).
+message.ping=Resposta de %1$S em #2 milissegundo.;Resposta de %1$S em #2 milissegundos.
+
+
+# LOCALIZATION NOTE (error.*):
+# These are shown as error messages in the conversation or server tab.
+# %S is the channel name.
+error.noChannel=Canal inexistente: %S.
+error.tooManyChannels=Não foi possível ligar a %S. Já está ligado a muitos canais.
+# %1$S is your new nick, %2$S is the kill message from the server.
+error.nickCollision=Nickname já utilizado, a mudar nick para %1$S [%2$S].
+error.erroneousNickname=%S não é um nickname permitido.
+error.banned=Você foi banido deste servidor.
+error.bannedSoon=Brevemente você será banido deste servidor.
+error.mode.wrongUser=Não pode mudar o modo dos outros utilizadores.
+# %S is the nickname or channel name that isn't available.
+error.noSuchNick=%S não está online.
+error.wasNoSuchNick=Nickname inexistente: %S
+error.noSuchChannel=Canal inexistente: %S.
+error.unavailable=%S não está disponível.
+# %S is the channel name.
+error.channelBanned=Você foi banido de %S.
+error.cannotSendToChannel=Não pode enviar mensagens para %S.
+error.channelFull=O canal %S está cheio.
+error.inviteOnly=Para entrar em %S, você tem que ser convidado.
+error.nonUniqueTarget=%S não é um user@host único/nome curto ou tentou entrar em muitos canais de uma vez.
+error.notChannelOp=Você não é um operador de canal em %S.
+error.notChannelOwner=Você não é um proprietário do canal %S.
+error.wrongKey=Não foi possível entrar em %S porque a palavra-passe é inválida.
+error.sendMessageFailed=Ocorreu um erro ao tentar enviar a última mensagem. Tente novamente assim que a ligação for restabelecida.
+# %1$S is the channel the user tried to join, %2$S is the channel
+# he was forwarded to.
+error.channelForward=Pode não se juntar a %1$S e ser redirecionado automaticamente para %2$S.
+# %S is the mode that the user tried to set but was not recognized
+# by the server as a valid mode.
+error.unknownMode='%S' não é um modo válido de utilizador neste servidor.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from a whois response.
+# The human readable ("realname") description of the user.
+tooltip.realname=Nome
+tooltip.server=Ligado a
+# The username and hostname that the user connects from (usually based on the
+# reverse DNS of the user's IP, but often mangled by the server to
+# protect users).
+tooltip.connectedFrom=Ligado a partir de
+tooltip.registered=Registado
+tooltip.registeredAs=Registado como
+tooltip.secure=A utilizar uma ligação segura
+# The away message of the user
+tooltip.away=Ausente
+tooltip.ircOp=Operador IRC
+tooltip.bot=Bot
+tooltip.lastActivity=Última atividade
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S atrás
+tooltip.channels=Atualmente em
+
+# %1$S is the server name, %2$S is some generic server information (usually a
+# location or the date the user was last seen).
+tooltip.serverValue=%1$S (%2$S)
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Sim
+no=Não
diff --git a/l10n-pt-PT/chat/logger.properties b/l10n-pt-PT/chat/logger.properties
new file mode 100644
index 0000000000..63cbf8da33
--- /dev/null
+++ b/l10n-pt-PT/chat/logger.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (badLogfile):
+# %S is the filename of the log file.
+badLogfile=Ficheiro de registo danificado ou vazio: %S
diff --git a/l10n-pt-PT/chat/matrix.ftl b/l10n-pt-PT/chat/matrix.ftl
new file mode 100644
index 0000000000..c7fc468fa1
--- /dev/null
+++ b/l10n-pt-PT/chat/matrix.ftl
@@ -0,0 +1,24 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### Matrix Protocol strings
+
+
+## Conversation names when a room has no user readable name.
+
+room-name-empty = Conversa vazia
+# Variables:
+# $oldName (String) - The previous name the conversation had before it was
+# removed.
+room-name-empty-had-name = Conversa vazia (era { $oldName })
+# Variables:
+# $participant (String) - The name of one participant that isn't the user.
+# $otherParticipantsCount (Number) - The count of other participants apart from
+# the user and $participant.
+room-name-others =
+ { $otherParticipantsCount ->
+ [one] { $participant } e { $otherParticipantCount } outro
+ *[other] { $participant } e { $otherParticipantCount } outros
+ }
diff --git a/l10n-pt-PT/chat/matrix.properties b/l10n-pt-PT/chat/matrix.properties
new file mode 100644
index 0000000000..9195442688
--- /dev/null
+++ b/l10n-pt-PT/chat/matrix.properties
@@ -0,0 +1,255 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (matrix.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Matrix account.
+matrix.usernameHint=ID do Matrix
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.saveToken=Guardar código de acesso
+options.deviceDisplayName=Nome de apresentação do dispositivo
+options.homeserver=Servidor
+options.backupPassphrase=Senha da cópia de segurança da chave
+
+# LOCALIZATION NOTE (options.encryption.*):
+# These are strings used to build the status information of the encryption
+# storage, shown in the account manager. %S is one of the statuses and the
+# strings are combined with a pipe (|) between.
+options.encryption.enabled=Funções criptográficas: %S
+options.encryption.secretStorage=Armazenamento Secreto: %S
+options.encryption.keyBackup=Cópia de segurança da chave de encriptação: %S
+options.encryption.crossSigning=Início de Sessão Cruzado: %S
+options.encryption.statusOk=ok
+options.encryption.statusNotOk=não está pronto
+options.encryption.needBackupPassphrase=Por favor insira a senha da chave da cópia de segurança nas opções do protocolo.
+options.encryption.setUpSecretStorage=Para configurar o armazenamento secreto, utilize outro cliente e depois insira a senha da chave de cópia de segurança gerada no separador "Geral".
+options.encryption.setUpBackupAndCrossSigning=Para ativar as cópias de segurança da chave de encriptação e assinatura cruzada, insira a sua senha da chave de cópia de segurança no separador "Geral" ou verifique a identidade de uma das sessões abaixo.
+# %1$S is the session ID, %2$S is the session display name
+options.encryption.session=%1$S (%2$S)
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.requestAuth=A aguardar pela sua autorização
+connection.requestAccess=A finalizar a autenticação
+
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.noSupportedFlow=O servidor não oferece fluxo compatível de autenticação.
+connection.error.authCancelled=Cancelou o processo de autorização.
+connection.error.sessionEnded=A sessão foi terminada.
+connection.error.serverNotFound=Não foi possível identificar o servidor Matrix para a conta Matrix fornecida.
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for Matrix accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Sala
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the descriptions given in a tooltip with information received
+# from the "User" object.
+# The human readable name of the user.
+tooltip.displayName=Nome de apresentação
+# %S is the timespan elapsed since the last activity.
+tooltip.timespan=%S atrás
+tooltip.lastActive=Última atividade
+
+# LOCALIZATION NOTE (powerLevel.*):
+# These are the string representations of different standard power levels and strings.
+# %S are one of the power levels, Default/Moderator/Admin/Restricted/Custom.
+powerLevel.default=Predefinido
+powerLevel.moderator=Moderador
+powerLevel.admin=Administrador
+powerLevel.restricted=Restrito
+powerLevel.custom=Personalizado
+# %1$S is the power level name
+# %2$S is the power level number
+powerLevel.detailed=%1$S (%2$S)
+powerLevel.defaultRole=Papel predefinido: %S
+powerLevel.inviteUser=Convidar utilizadores: %S
+powerLevel.kickUsers=Expulsar utilizadores: %S
+powerLevel.ban=Banir utilizadores: %S
+powerLevel.roomAvatar=Alterar avatar da sala: %S
+powerLevel.mainAddress=Alterar o endereço principal da sala: %S
+powerLevel.history=Alterar visibilidade do histórico: %S
+powerLevel.roomName=Alterar nome da sala: %S
+powerLevel.changePermissions=Alterar permissões: %S
+powerLevel.server_acl=Enviar eventos m.room.server_acl: %S
+powerLevel.upgradeRoom=Melhorar a sala: %S
+powerLevel.remove=Remover mensagens: %S
+powerLevel.events_default=Eventos predefinidos: %S
+powerLevel.state_default=Alterar definição: %S
+powerLevel.encryption=Ativar encriptação da sala: %S
+powerLevel.topic=Definir tópico da sala: %S
+
+# LOCALIZATION NOTE (detail.*):
+# These are the string representations of different matrix properties.
+# %S will typically be strings with the actual values.
+# Example placeholder: "Foo bar"
+detail.name=Nome: %S
+# Example placeholder: "My first room"
+detail.topic=Tópico: %S
+# Example placeholder: "5"
+detail.version=Versão da sala: %S
+# Example placeholder: "#thunderbird:mozilla.org"
+detail.roomId=RoomID: %S
+# %S are all admin users. Example: "@foo:example.com, @bar:example.com"
+detail.admin=Administrador: %S
+# %S are all moderators. Example: "@lorem:mozilla.org, @ipsum:mozilla.org"
+detail.moderator=Moderador: %S
+# Example placeholder: "#thunderbird:matrix.org"
+detail.alias=Nome alternativo: %S
+# Example placeholder: "can_join"
+detail.guest=Acesso de convidado: %S
+# This is a heading, followed by the powerLevel.* strings
+detail.power=Níveis de poder:
+
+# LOCALIZATION NOTE (command.*):
+# These are the help messages for each command, the %S is the command name
+# Each command first gives the parameter it accepts and then a description of
+# the command.
+command.ban=%S <idDoUtilizador> [<motivo>]: Banir o utilizador com o idDoUtilizador da sala com a mensagem opcional com o motivo. Requer permissão para banir utilizadores.
+command.invite=%S <idDoUtilizador>: Convidar o utilizador para a sala.
+command.kick=%S <idDoUtilizador> [<motivo>]: Explulsar o utilizador com o idDoUtilizador da sala com a mensagem opcional com o motivo. Requer permissão para expulsar utilizadores.
+command.nick=%S <nome_de_apresentacao>: Altere o nome de apresentação.
+command.op=%S <idDoUtilizador> [<nível de poder>]: Define o nível de poder do utilizador. Introduza um valor inteiro, Utilizador: 0, Moderador: 50 e Administrador: 100. A predefinição será 50, se não for especificado nenhum argumento. Requer permissão para alterar o nível de poder dos membros. Não funciona com outros administradores para além de si.
+command.deop=%S <idDoUtilizador>: Repõe o poder do utilizador para 0 (Utilizador). Requer permissão para alterar o nível de poder dos membros. Não funciona com outros administradores para além de si.
+command.leave=%S: Sair da sala atual.
+command.topic=%S <tópico>: Defina o tópico da sala. Requer permissões para alterar o tópico da sala.
+command.unban=%S <idDoUtilizador>: Permita que um utilizador que foi banido volte a ter acesso à sala. Requer permissão para banir utilizadores.
+command.visibility=%S [<visibilidade>]: define a visibilidade da sala atual no diretório de salas do servidor doméstico atual. Insira um valor inteiro, Privado: 0 e Público: 1. O valor predefinido será Privado (0) se nenhum argumento for fornecido. Requer permissão para alterar a visibilidade da sala.
+command.guest=%S <acesso de convidado> <visibilidade do histórico>: Defina o acesso e a visibilidade do histórico da sala atual para os utilizadores convidados. Insira dois valores inteiros, o primeiro para o acesso do convidado (não permitido: 0 e permitido: 1) e o segundo para a visibilidade do histórico (não visível: 0 e visível: 1). Requer permissão para alterar a visibilidade do histórico.
+command.roomname=%S <nome>: Define o nome da sala. Requer permissão para alterar o nome da sala.
+command.detail=%S: Mostra os detalhes da sala.
+command.addalias=%S <nome_alternativo>: Crie um nome alternativo para a sala. Esperado um nome alternativo para a sala no formato '#nomelocal: domínio'. Requer permissão para adicionar nomes alternativos.
+command.removealias=%S <nome_alternativo>: remove o nome alternativo da sala. Esperado nome alternativo de sala no formato '#nomelocal: domínio'. Requer permissão para remover nomes alternativos.
+command.upgraderoom=%S <novaVersao>: atualize a sala para a versão indicada. Requer permissão para atualizar a sala.
+command.me=%S <ação>: Realiza uma ação.
+command.msg=%S <idDoUtilizador> <mensagem>: Envia uma mensagem direta para o utilizador indicado.
+command.join=%S <idDaSala>: Acede à sala indicada.
+
+# LOCALIZATION NOTE (message.*):
+# These are shown as system messages in the conversation.
+# %1$S is the name of the user who banned.
+# %2$S is the name of the user who got banned.
+message.banned=%1$S baniu %2$S.
+# Same as message.banned but with a reason.
+# %3$S is the reason the user was banned.
+message.bannedWithReason=%1$S baniu %2$S. Motivo: %3$S
+# %1$S is the name of the user who accepted the invitation.
+# %2$S is the name of the user who sent the invitation.
+message.acceptedInviteFor=%1$S aceitou o convite para %2$S.
+# %S is the name of the user who accepted an invitation.
+message.acceptedInvite=$S aceitou o convite.
+# %1$S is the name of the user who invited.
+# %2$S is the name of the user who got invited.
+message.invited=%1$S convidou %2$S.
+# %1$S is the name of the user who changed their display name.
+# %2$S is the old display name.
+# %3$S is the new display name.
+message.displayName.changed=%1$S alterou o respetivo nome de apresentação de %2$S para %3$S.
+# %1$S is the name of the user who set their display name.
+# %2$S is the newly set display name.
+message.displayName.set=%1$S definiu o respetivo nome de apresentação para %2$S.
+# %1$S is the name of the user who removed their display name.
+# %2$S is the old display name which has been removed.
+message.displayName.remove=%1$S removeu o respetivo nome de apresentação %2$S.
+# %S is the name of the user who has joined the room.
+message.joined=%S entrou na sala.
+# %S is the name of the user who has rejected the invitation.
+message.rejectedInvite=%S rejeitou o convite.
+# %S is the name of the user who has left the room.
+message.left=%S saiu da sala.
+# %1$S is the name of the user who unbanned.
+# %2$S is the name of the user who got unbanned.
+message.unbanned=%1$S deixou de banir %2$S.
+# %1$S is the name of the user who kicked.
+# %2$S is the name of the user who got kicked.
+message.kicked=%1$S expulsou %2$S.
+# Same as message.kicked but with a third parameter for the reason.
+# %3$S is the reason for the kick.
+message.kickedWithReason=%1$S expulsou %2$S. Motivo: %3$S
+# %1$S is the name of the user who withdrew invitation.
+# %2$S is the name of the user whose invitation has been withdrawn.
+message.withdrewInvite=%1$S retirou o convite de %2$S.
+# Same as message.withdrewInvite but with a third parameter for the reason.
+# %3$S is the reason the invite was withdrawn.
+message.withdrewInviteWithReason=%1$S retirou o convite de %2$S. Motivo: %3$S
+# %S is the name of the user who has removed the room name.
+message.roomName.remove=%S removeu o nome da sala.
+# %1$S is the name of the user who changed the room name.
+# %2$S is the new room name.
+message.roomName.changed=%1$S alterou o nome da sala para %2$S.
+# %1$S is the name of the user who changed the power level.
+# %2$S is a list of "message.powerLevel.fromTo" strings representing power level changes separated by commas
+# power level changes, separated by commas if there are multiple changes.
+message.powerLevel.changed=%1$S alterou o nível de poder de %2$S.
+# %1$S is the name of the target user whose power level has been changed.
+# %2$S is the old power level.
+# %2$S is the new power level.
+message.powerLevel.fromTo=%1$S de %2$S para %3$S
+# %S is the name of the user who has allowed guests to join the room.
+message.guest.allowed=%S deu permissão a convidados para entrar na sala.
+# %S is the name of the user who has prevented guests to join the room.
+message.guest.prevented=%S impediu que convidados possam entrar na sala.
+# %S is the name of the user who has made future room history visible to anyone.
+message.history.anyone=%S tornou o histórico futuro da sala, visível para todos.
+# %S is the name of the user who has made future room history visible to all room members.
+message.history.shared=%S tornou o histórico futuro da sala, visível para todos os membros da sala.
+# %S is the name of the user who has made future room history visible to all room members, from the point they are invited.
+message.history.invited=%S tornou o histórico futuro da sala visível para todos os membros da sala, a partir do momento em que são convidados.
+# %S is the name of the user who has made future room history visible to all room members, from the point they joined.
+message.history.joined=%S tornou o histórico futuro da sala visível para todos os membros da sala, a partir do momento em que entram na sala.
+# %1$S is the name of the user who changed the address.
+# %2$S is the old address.
+# %3$S is the new address.
+message.alias.main=%1$S definiu o endereço principal para esta sala de %2$S para %3$S.
+# %1$S is the name of the user who added the address.
+# %2$S is a comma delimited list of added addresses.
+message.alias.added=%1$S adicionou %2$S como endereço alternativo para esta sala.
+# %1$S is the name of the user who removed the address.
+# %2$S is a comma delimited list of removed addresses.
+message.alias.removed=%1$S removeu %2$S como endereço alternativo para esta sala.
+# %1$S is the name of the user that edited the alias addresses.
+# %2$S is a comma delimited list of removed addresses.
+# %3$S is a comma delmited list of added addresses.
+message.alias.removedAndAdded=%1$S removeu %2$S e adicionou %3$S como endereço para esta sala.
+message.spaceNotSupported=Esta sala é um espaço, o que não é suportado.
+message.encryptionStart=As mensagens nesta conversa são agora encriptadas de ponta a ponta.
+# %1$S is the name of the user who sent the verification request.
+# %2$S is the name of the user that is receiving the verification request.
+message.verification.request2=%1$S deseja verificar %2$S.
+# %1$S is the name of the user who cancelled the verification request.
+# %2$S is the reason given why the verification was cancelled.
+message.verification.cancel2=%1$S cancelou a verificação pelo motivo: %2$S
+message.verification.done=Verificação completada.
+message.decryptionError=Não foi possível desencriptar o conteúdo desta mensagem. Para solicitar chaves de encriptação dos seus outros dispositivos, clique nesta mensagem com o botão direito do rato.
+message.decrypting=A desencriptar…
+message.redacted=A mensagem foi expurgada.
+# %1$S is the username of the user that reacted.
+# %2$S is the username of the user that sent the message the reaction was added to.
+# %3$S is the content (typically an emoji) of the reaction.
+message.reaction=%1$S reagiu a %2$S com %3$S.
+
+# Label in the message context menu
+message.action.requestKey=Re-solicitar Chaves
+message.action.redact=Expurgar
+message.action.report=Reportar Mensagem
+message.action.retry=Repetir o Envio
+message.action.cancel=Cancelar mensagem
+
+# LOCALIZATION NOTE (error.*)
+# These are strings shown as system messages when an action the user took fails.
+error.sendMessageFailed=Ocorreu um erro ao enviar a sua mensagem "%1$S".
diff --git a/l10n-pt-PT/chat/status.properties b/l10n-pt-PT/chat/status.properties
new file mode 100644
index 0000000000..6520c79599
--- /dev/null
+++ b/l10n-pt-PT/chat/status.properties
@@ -0,0 +1,23 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+availableStatusType=Disponível
+awayStatusType=Ausente
+unavailableStatusType=Indisponível
+offlineStatusType=Offline
+invisibleStatusType=Invisível
+idleStatusType=Inativo
+mobileStatusType=Móvel
+# LOCALIZATION NOTE (unknownStatusType):
+# the status of a buddy is unknown when it's in the list of a disconnected account
+unknownStatusType=Desconhecido
+
+# LOCALIZATION NOTE (statusWithStatusMessage):
+# Used to display the status of a buddy together with its status message.
+# %1$S is the status type, %2$S is the status message text.
+statusWithStatusMessage=%1$S - %2$S
+
+# LOCALIZATION NOTE (messenger.status.defaultIdleAwayMessage):
+# This will be the away message put automatically when the user is idle.
+messenger.status.defaultIdleAwayMessage=Neste momento, não estou no computador.
diff --git a/l10n-pt-PT/chat/twitter.properties b/l10n-pt-PT/chat/twitter.properties
new file mode 100644
index 0000000000..015111984a
--- /dev/null
+++ b/l10n-pt-PT/chat/twitter.properties
@@ -0,0 +1,122 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (twitter.protocolName)
+# This name is used whenever the name of the protocol is shown.
+twitter.protocolName=Twitter
+
+# LOCALIZATION NOTE (error.*):
+# These are errors that will be shown to the user in conversation.
+error.tooLong=O estado excede 140 caracteres.
+# LOCALIZATION NOTE (error.general, error.retweet, error.delete):
+# %1$S will be either the error string returned by the twitter server,
+# in English, inside parenthesis, or the empty string if we have no specific
+# message for the error.
+# %2$S is the message that caused the error.
+error.general=Ocorreu o erro %1$S ao enviar: %2$S
+error.retweet=Ocorreu o erro %1$S ao retweeting: %2$S
+error.delete=Ocorreu o erro %1$S ao apagar: %2$S
+error.like=Ocorreu o erro %1$S ao associar Gosto: %2$S
+error.unlike=Ocorreu o erro %1$S ao dissociar Gosto: %2$S
+# LOCALIZATION NOTE (error.descriptionTooLong)
+# %S is the truncated string that was sent to the server.
+error.descriptionTooLong=A descrição excede o valor máximo (160 caracteres) e foi automaticamente truncada para: %S.
+
+# LOCALIZATION NOTE (timeline):
+# This is the title of the conversation tab, %S will be replaced by
+# @.
+timeline=Cronologia para %S
+
+# LOCALIZATION NOTE (action.*):
+# This will be an action in the context menu of displayed tweets.
+action.copyLink=Copiar ligação para Tweet
+action.retweet=Retweet
+action.reply=Responder
+action.delete=Apagar
+# LOCALIZATION NOTE (action.follow, action.stopFollowing):
+# %S will be replaced by the screen name of a twitter user.
+action.follow=Seguir %S
+action.stopFollowing=Deixar de seguir %S
+action.like=Gosto
+action.unlike=Remover Gosto
+
+# LOCALIZATION NOTE (event.follow, event.unfollow, event.followed):
+# This will be displayed in system messages inside the timeline conversation.
+# %S will be replaced by the screen name of a twitter user.
+event.follow=Agora, está a seguir %S.
+event.unfollow=Já não está a seguir %S.
+event.followed=%S está agora a seguir-lhe.
+# LOCALIZATION NOTE (event.deleted):
+# %S will be replaced by the text of the deleted tweet.
+event.deleted=Você apagou este tweet: "%S".
+
+# LOCALIZATION NOTE (replyingToStatusText):
+# This will be visible in the status bar of the conversation window
+# while the user is typing a reply to a tweet.
+# %S will be replaced by the text of the tweet the user is replying to.
+replyingToStatusText=Resposta a: %S
+
+# LOCALIZATION NOTE (connection.*):
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initAuth=A iniciar processo de autenticação
+connection.requestAuth=A aguardar a sua autorização
+connection.requestAccess=A terminar autenticação
+connection.requestTimelines=A pedir cronologia do utilizador
+# LOCALIZATION NOTE (connection.error.*):
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.userMismatch=Nome de utilizador não correspondente.
+connection.error.failedToken=Falha ao obter o token pedido.
+connection.error.authCancelled=Você cancelou o processo de autorização.
+connection.error.authFailed=Falha ao obter autorização.
+connection.error.noNetwork=Não existe uma ligação de rede disponível.
+
+# LOCALIZATION NOTE (authPrompt):
+# This is the prompt in the browser window that pops up to authorize us
+# to use a Twitter account. It is shown in the title bar of the authorization
+# window.
+authPrompt=Permitir a utilização da sua conta Twitter
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.track=Palavras-chave monitorizadas
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the Twitter information that will appear in the tooltip
+# for each participant on the home timeline.
+# LOCALIZATION NOTE (tooltip.created_at): the date the user joined.
+tooltip.created_at=Utilizador desde
+tooltip.location=Localização
+tooltip.lang=Idioma
+tooltip.time_zone=Fuso horário
+tooltip.url=Página inicial
+# LOCALIZATION NOTE (tooltip.protected):
+# whether the user's tweets are publicly visible.
+tooltip.protected=Protege os tweets
+# LOCALIZATION NOTE (tooltip.following):
+# whether you are subscribed to the user's tweets.
+tooltip.following=Atualmente a seguir
+tooltip.name=Nome
+tooltip.description=Descrição
+# LOCALIZATION NOTE (tooltip.*_count):
+# Please see the right side of the official Twitter website UI.
+tooltip.friends_count=A seguir
+tooltip.statuses_count=Tweets
+tooltip.followers_count=Seguidores
+tooltip.listed_count=Listado
+
+# LOCALIZATION NOTE (yes, no):
+# These are used to turn true/false values into a yes/no response.
+yes=Sim
+no=Não
+
+command.follow=%S <utilizador>[ <utilizador>]*: Seguir um ou mais utilizadores.
+command.unfollow=%S <utilizador>[ <utilizador>]*: Parar de seguir um ou mais utilizadores.
+
+twitter.disabled=O Twitter deixou de ser compatível devido à desativação do protocolo de transmissão do Twitter.
diff --git a/l10n-pt-PT/chat/xmpp.properties b/l10n-pt-PT/chat/xmpp.properties
new file mode 100644
index 0000000000..c54f0b244e
--- /dev/null
+++ b/l10n-pt-PT/chat/xmpp.properties
@@ -0,0 +1,280 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (connection.*)
+# These will be displayed in the account manager in order to show the progress
+# of the connection.
+# (These will be displayed in account.connection.progress from
+# accounts.properties, which adds … at the end, so do not include
+# periods at the end of these messages.)
+connection.initializingStream=A iniciar transmissão
+connection.initializingEncryption=A iniciar a encriptação
+connection.authenticating=A autenticar
+connection.gettingResource=A obter o recurso
+connection.downloadingRoster=A transferir a lista de contactos
+connection.srvLookup=A localizar o registo SRV
+
+# LOCALIZATION NOTE (connection.error.*)
+# These will show in the account manager if an error occurs during the
+# connection attempt.
+connection.error.invalidUsername=Nome de utilizador inválido (o seu nome de utilizador deve conter um carácter '@')
+connection.error.failedToCreateASocket=Falha ao criar o socket (está offline?)
+connection.error.serverClosedConnection=O servidor fechou a ligação
+connection.error.resetByPeer=Ligação reiniciada pelo servidor remoto
+connection.error.timedOut=A ligação excedeu o tempo limite
+connection.error.receivedUnexpectedData=Recebidos dados inesperados
+connection.error.incorrectResponse=Recebida uma resposta incorreta
+connection.error.startTLSRequired=O servidor requer encriptação mas você desativou-a
+connection.error.startTLSNotSupported=O servidor não suporta encriptação mas a sua configuração requer-a
+connection.error.failedToStartTLS=Falha ao iniciar encriptação
+connection.error.noAuthMec=O servidor não disponibiliza um mecanismo de autenticação
+connection.error.noCompatibleAuthMec=Nenhum dos mecanismos de autenticação disponibilizados pelo servidor é suportado
+connection.error.notSendingPasswordInClear=O servidor só suporta autenticação com uma palavra-passe em texto simples
+connection.error.authenticationFailure=Falha na autenticação
+connection.error.notAuthorized=Não autorizado (introduziu a palavra-passe correta?)
+connection.error.failedToGetAResource=Falha ao obter recurso
+connection.error.failedMaxResourceLimit=Esta conta está ligada a diversos locais em simultâneo.
+connection.error.failedResourceNotValid=Recurso inválido.
+connection.error.XMPPNotSupported=Este servidor não suporta XMPP.
+
+# LOCALIZATION NOTE (conversation.error.notDelivered):
+# This is displayed in a conversation as an error message when a message
+# the user has sent wasn't delivered.
+# %S is replaced by the text of the message that wasn't delivered.
+conversation.error.notDelivered=Esta mensagem não foi entregue: %S
+# This is displayed in a conversation as an error message when joining a MUC
+# fails.
+# %S is the name of the MUC.
+conversation.error.joinFailed=Não foi possível entrar: %S
+# This is displayed in a conversation as an error message when the user is
+# banned from a room.
+# %S is the name of the MUC room.
+conversation.error.joinForbidden=Não foi possível entrar em %S porque você foi banido desta sala
+conversation.error.joinFailedNotAuthorized=Requer registo: você não está autorizado a entrar nesta sala.
+conversation.error.creationFailedNotAllowed=Acesso restrito: você não está autorizado a criar salas.
+# This is displayed in a conversation as an error message when remote server
+# is not found.
+# %S is the name of MUC room.
+conversation.error.joinFailedRemoteServerNotFound=Não foi possível entrar na sala %S porque não foi possível atingir o servidor onde a sala está alojada.
+conversation.error.changeTopicFailedNotAuthorized=Não tem permissões para definir o tópico desta sala.
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that he is not in.
+# %1$S is the name of MUC room.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsNotInRoom=Não foi possível enviar a mensagem para %1$S, uma vez que você já não está na sala: %2$S
+# This is displayed in a conversation as an error message when the user sends
+# a message to a room that the recipient is not in.
+# %1$S is the jid of the recipient.
+# %2$S is the text of the message that wasn't delivered.
+conversation.error.sendFailedAsRecipientNotInRoom=Não foi possível enviar a mensagem para %1$S, uma vez que o destinatário já não está na sala: %2$S
+# These are displayed in a conversation as a system error message.
+conversation.error.remoteServerNotFound=Não foi possível estabelecer ligação ao servidor do destinatário
+conversation.error.unknownSendError=Um erro desconhecido ocorreu ao enviar esta mensagem.
+# %S is the name of the message recipient.
+conversation.error.sendServiceUnavailable=Não é possível enviar mensagens para %S neste momento.
+# %S is the nick of participant that is not in room.
+conversation.error.nickNotInRoom=%S não está na sala.
+conversation.error.banCommandAnonymousRoom=Não pode banir participantes de salas anónimas. Experimente o comando /kick.
+conversation.error.banKickCommandNotAllowed=Não possui os privilégios necessários para remover este participante da sala.
+conversation.error.banKickCommandConflict=Desculpe, não pode remover-se a si mesmo da sala.
+conversation.error.changeNickFailedConflict=Não foi possível alterar o seu pseudónimo para %S, porque este pseudónimo já está a ser utilizado.
+conversation.error.changeNickFailedNotAcceptable=Não foi possível alterar o seu pseudónimo para %S, porque os pseudónimos estão bloqueados nesta sala.
+conversation.error.inviteFailedForbidden=Não tem os privilégios necessários para convidar utilizadores para esta sala.
+# %S is the jid of user that is invited.
+conversation.error.failedJIDNotFound=Não foi possível atingir %S.
+# %S is the jid that is invalid.
+conversation.error.invalidJID=%S é um jid inválido (os identificadores Jabber devem estar no formato utilizador@domínio).
+conversation.error.commandFailedNotInRoom=Tem que reentrar na sala para poder utilizar este comando.
+# %S is the name of the recipient.
+conversation.error.resourceNotAvailable=Deve falar primeiro com %S para saber se este se pode ligar a mais do que um cliente.
+
+# LOCALIZATION NOTE (conversation.error.version.*):
+# %S is the name of the recipient.
+conversation.error.version.unknown=O cliente %S não suporta consultas para esta versão do software.
+
+# LOCALIZATION NOTE (tooltip.*):
+# These are the titles of lines of information that will appear in
+# the tooltip showing details about a contact or conversation.
+# LOCALIZATION NOTE (tooltip.status):
+# %S will be replaced by the XMPP resource identifier
+tooltip.status=Estado (%S)
+tooltip.statusNoResource=Estado
+tooltip.subscription=Subscrição
+tooltip.fullName=Nome completo
+tooltip.nickname=Pseudónimo
+tooltip.email=Email
+tooltip.birthday=Data de nascimento
+tooltip.userName=Nome de utilizador
+tooltip.title=Título
+tooltip.organization=Organização
+tooltip.locality=Localidade
+tooltip.country=País
+tooltip.telephone=Número de telefone
+
+# LOCALIZATION NOTE (chatRoomField.*):
+# These are the name of fields displayed in the 'Join Chat' dialog
+# for XMPP accounts.
+# The _ character won't be displayed; it indicates the next
+# character of the string should be used as the access key for this
+# field.
+chatRoomField.room=_Sala
+chatRoomField.server=_Servidor
+chatRoomField.nick=_Pseudónimo
+chatRoomField.password=_Palavra-passe
+
+# LOCALIZATION NOTE (conversation.muc.*):
+# These are displayed as a system message when a chatroom invitation is
+# received.
+# %1$S is the inviter.
+# %2$S is the room.
+# %3$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2=%1$S convidou-lhe a entrar na sala %2$S: %3$S
+# %3$S is the password of the room.
+# %4$S is the reason which is a message provided by the person sending the
+# invitation.
+conversation.muc.invitationWithReason2.password=%1$S convidou-lhe a entrar em %2$S com a palavra-passe %3$S: %4$S
+conversation.muc.invitationWithoutReason=%1$S convidou-lhe a entrar na sala %2$S
+# %3$S is the password of the room.
+conversation.muc.invitationWithoutReason.password=%1$S convidou-lhe a entrar em %2$S sem palavra-passe %3$S
+
+# LOCALIZATION NOTE (conversation.muc.join):
+# This is displayed as a system message when a participant joins room.
+# %S is the nick of the participant.
+conversation.message.join=%S entrou na sala.
+
+# LOCALIZATION NOTE (conversation.muc.rejoined):
+# This is displayed as a system message when a participant rejoins room after
+# parting it.
+conversation.message.rejoined=Você entrou novamente na sala.
+
+# LOCALIZATION NOTE (conversation.message.parted.*):
+# These are displayed as a system message when a participant parts a room.
+# %S is the part message supplied by the user.
+conversation.message.parted.you=Você saiu da sala.
+conversation.message.parted.you.reason=Você saiu da sala: %S
+# %1$S is the participant that is leaving.
+# %2$S is the part message supplied by the participant.
+conversation.message.parted=%1$S saiu da sala.
+conversation.message.parted.reason=%1$S saiu da sala: %2$S
+
+# LOCALIZATION NOTE (conversation.message.invitationDeclined*):
+# %1$S is the invitee that declined the invitation.
+# %2$S is the decline message supplied by the invitee.
+conversation.message.invitationDeclined=%1$S recusou o seu convite.
+conversation.message.invitationDeclined.reason=%1$S recusou o seu convite: %2$S
+
+# LOCALIZATION NOTE (conversation.message.banned.*):
+# These are displayed as a system message when a participant is banned from
+# a room.
+# %1$S is the participant that is banned.
+# %2$S is the reason.
+# %3$S is the person who is banning.
+conversation.message.banned=%1$S foi banido(a) da sala.
+conversation.message.banned.reason=%1$S foi banido(a) da sala: %2$S
+# %1$S is the person who is banning.
+# %2$S is the participant that is banned.
+# %3$S is the reason.
+conversation.message.banned.actor=%1$S baniu %2$S da sala.
+conversation.message.banned.actor.reason=%1$S baniu %2$S da sala: %3$S
+conversation.message.banned.you=Você foi banido(a) da sala.
+# %1$S is the reason.
+conversation.message.banned.you.reason=Você foi banido(a) da sala: %1$S
+# %1$S is the person who is banning.
+# %2$S is the reason.
+conversation.message.banned.you.actor=%1$S baniu-lhe da sala.
+conversation.message.banned.you.actor.reason=%1$S baniu-lhe da sala: %2$S
+
+# LOCALIZATION NOTE (conversation.message.kicked.*):
+# These are displayed as a system message when a participant is kicked from
+# a room.
+# %1$S is the participant that is kicked.
+# %2$S is the reason.
+conversation.message.kicked=%1$S foi expulso(a) da sala.
+conversation.message.kicked.reason=%1$S foi expulso(a) da sala: %2$S
+# %1$S is the person who is kicking.
+# %2$S is the participant that is kicked.
+# %3$S is the reason.
+conversation.message.kicked.actor=%1$S expulsou %2$S da sala.
+conversation.message.kicked.actor.reason=%1$S expulsou %2$S da sala.: %3$S
+conversation.message.kicked.you=Você foi expulso da sala.
+# %1$S is the reason.
+conversation.message.kicked.you.reason=Você foi expulso da sala: %1$S
+# %1$S is the person who is kicking.
+# %2$S is the reason.
+conversation.message.kicked.you.actor=%1$S expulsou-o da sala.
+conversation.message.kicked.you.actor.reason=%1$S expulsou-o da sala: %2$S
+
+# LOCALIZATION NOTE (conversation.message.removedNonMember.*):
+# These are displayed as a system message when a participant is removed from
+# a room because the room has been changed to members-only.
+# %1$S is the participant that is removed.
+# %2$S is the person who changed the room configuration.
+conversation.message.removedNonMember=%1$S foi removido(a) da sala uma vez que a configuração da sala foi alterada para apenas membros.
+conversation.message.removedNonMember.actor=%1$S foi removido(a) da sala uma vez que %2$S foi alterada para apenas membros.
+conversation.message.removedNonMember.you=Você foi removido(a) da sala uma vez que a configuração da sala foi alterada para apenas membros.
+# %1$S is the person who changed the room configuration.
+conversation.message.removedNonMember.you.actor=Você foi removido(a) da sala uma vez que %1$S foi alterada para apenas membros.
+
+# LOCALIZATION NOTE (conversation.message.MUCShutdown):
+# These are displayed as a system message when a participant is removed from
+# a room because of a system shutdown.
+conversation.message.mucShutdown=Você foi removido da sala devido ao encerramento do sistema.
+
+# LOCALIZATION NOTE (conversation.message.version*):
+# %1$S is the name of the user whose version was requested.
+# %2$S is the client name response from the client.
+# %3$S is the client version response from the client.
+# %4$S is the operating system(OS) response from the client.
+conversation.message.version=%1$S está a utilizar "%2$S %3$S".
+conversation.message.versionWithOS=%1$S está a utilizar "%2$S %3$S" em %4$S.
+
+# LOCALIZATION NOTE (options.*):
+# These are the protocol specific options shown in the account manager and
+# account wizard windows.
+options.resource=Recurso
+options.priority=Prioridade
+options.connectionSecurity=Segurança da ligação
+options.connectionSecurity.requireEncryption=Requer encriptação
+options.connectionSecurity.opportunisticTLS=Se disponível, utilizar encriptação
+options.connectionSecurity.allowUnencryptedAuth=Permitir envio da palavra-passe desencriptada
+options.connectServer=Servidor
+options.connectPort=Porta
+options.domain=Domínio
+
+# LOCALIZATION NOTE (*.protocolName)
+# This name is used whenever the name of the protocol is shown.
+gtalk.protocolName=Google Talk
+odnoklassniki.protocolName=Odnoklassniki
+
+# LOCALIZATION NOTE (gtalk.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Google Talk account.
+gtalk.usernameHint=endereço de e-mail
+
+# LOCALIZATION NOTE (gtalk.disabled):
+# Google Talk was disabled on June 16, 2022. The message below is a localized
+# error message to be displayed to users with Google Talk accounts.
+gtalk.disabled=O Google Talk deixou de ser suportado porque o Google desativou seu gateway XMPP.
+
+# LOCALIZATION NOTE (odnoklassniki.usernameHint):
+# This is displayed inside the accountUsernameInfoWithDescription
+# string defined in imAccounts.properties when the user is
+# configuring a Odnoklassniki account.
+odnoklassniki.usernameHint=ID do perfil
+
+# LOCALZIATION NOTE (command.*):
+# These are the help messages for each command.
+command.join3=%S [<sala>[@<servidor>][/<nick>]] [<palavra-passe>]: entrar numa sala, indicando uma sala, servidor, nick ou palavra passe diferente.
+command.part2=%S [<mensagem>]: Sair da sala com uma mensagem opcional.
+command.topic=%S [<novo tópico>]: Definir o tópico da sala.
+command.ban=%S <nick>[<mensagem>]: Banir alguém da sala. Tem de ter privilégios de administrador para fazer isto.
+command.kick=%S <nick>[<mensagem>]: Remover alguém da sala. Tem de ter privilégios de moderador para fazer isto.
+command.invite=%S <jid>[<mensagem>]: Convidar um utilizador para entrar na sala, com uma mensagem adicional.
+command.inviteto=%S <jid da sala>[<palavra-passe>]: Convidar o seu parceiro de conversação para entrar na sala, juntos com a palavra-passe dele, se necessário.
+command.me=%S <ação a realizar>: Realizar uma ação.
+command.nick=%S <novo nickname>: Alterar o seu pseudónimo.
+command.msg=%S <nick> <mensagem>: Enviar uma mensagem privada para um participante na sala.
+command.version=%S: Solicitar informação sobre o cliente que o seu parceiro de conversação está a utilizar.
diff --git a/l10n-pt-PT/chat/yahoo.properties b/l10n-pt-PT/chat/yahoo.properties
new file mode 100644
index 0000000000..bd486a8dfa
--- /dev/null
+++ b/l10n-pt-PT/chat/yahoo.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+yahoo.disabled=O Yahoo Messenger já não é suportado uma vez que a Yahoo desativou o seu antigo protocolo.
diff --git a/l10n-pt-PT/devtools/client/aboutdebugging.ftl b/l10n-pt-PT/devtools/client/aboutdebugging.ftl
new file mode 100644
index 0000000000..30620d27fa
--- /dev/null
+++ b/l10n-pt-PT/devtools/client/aboutdebugging.ftl
@@ -0,0 +1,322 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the about:debugging UI.
+
+
+# Page Title strings
+
+# Page title (ie tab title) for the Setup page
+about-debugging-page-title-setup-page = Depuração - Configuração
+# Page title (ie tab title) for the Runtime page
+# { $selectedRuntimeId } is the id of the current runtime, such as "this-firefox", "localhost:6080", ...
+about-debugging-page-title-runtime-page = Depuração - Runtime / { $selectedRuntimeId }
+
+# Sidebar strings
+
+# Display name of the runtime for the currently running instance of Firefox. Used in the
+# Sidebar and in the Setup page.
+about-debugging-this-firefox-runtime-name = Este { -brand-shorter-name }
+# Sidebar heading for selecting the currently running instance of Firefox
+about-debugging-sidebar-this-firefox =
+ .name = { about-debugging-this-firefox-runtime-name }
+# Sidebar heading for connecting to some remote source
+about-debugging-sidebar-setup =
+ .name = Configuração
+# Text displayed in the about:debugging sidebar when USB devices discovery is enabled.
+about-debugging-sidebar-usb-enabled = USB ativado
+# Text displayed in the about:debugging sidebar when USB devices discovery is disabled
+# (for instance because the mandatory ADB extension is not installed).
+about-debugging-sidebar-usb-disabled = USB desativado
+# Connection status (connected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-connected = Ligado
+# Connection status (disconnected) for runtime items in the sidebar
+aboutdebugging-sidebar-runtime-connection-status-disconnected = Desassociado
+# Text displayed in the about:debugging sidebar when no device was found.
+about-debugging-sidebar-no-devices = Nenhum dispositivo descoberto
+# Text displayed in buttons found in sidebar items representing remote runtimes.
+# Clicking on the button will attempt to connect to the runtime.
+about-debugging-sidebar-item-connect-button = Ligar
+# Text displayed in buttons found in sidebar items when the runtime is connecting.
+about-debugging-sidebar-item-connect-button-connecting = A ligar…
+# Text displayed in buttons found in sidebar items when the connection failed.
+about-debugging-sidebar-item-connect-button-connection-failed = A ligação falhou
+# Text displayed in connection warning on sidebar item of the runtime when connecting to
+# the runtime is taking too much time.
+about-debugging-sidebar-item-connect-button-connection-not-responding = A ligação ainda está pendente, verifique mensagens no navegador de destino
+# Text displayed as connection error in sidebar item when the connection has timed out.
+about-debugging-sidebar-item-connect-button-connection-timeout = A ligação expirou
+# Text displayed in sidebar items for remote devices where a compatible browser (eg
+# Firefox) has not been detected yet. Typically, Android phones connected via USB with
+# USB debugging enabled, but where Firefox is not started.
+about-debugging-sidebar-runtime-item-waiting-for-browser = A aguardar pelo navegador...
+# Text displayed in sidebar items for remote devices that have been disconnected from the
+# computer.
+about-debugging-sidebar-runtime-item-unplugged = Desligado
+# Title for runtime sidebar items that are related to a specific device (USB, WiFi).
+about-debugging-sidebar-runtime-item-name =
+ .title = { $displayName } ({ $deviceName })
+# Title for runtime sidebar items where we cannot get device information (network
+# locations).
+about-debugging-sidebar-runtime-item-name-no-device =
+ .title = { $displayName }
+# Text to show in the footer of the sidebar that links to a help page
+# (currently: https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/)
+about-debugging-sidebar-support = Suporte da depuração
+# Text to show as the ALT attribute of a help icon that accompanies the help about
+# debugging link in the footer of the sidebar
+about-debugging-sidebar-support-icon =
+ .alt = Ícone de ajuda
+# Text displayed in a sidebar button to refresh the list of USB devices. Clicking on it
+# will attempt to update the list of devices displayed in the sidebar.
+about-debugging-refresh-usb-devices-button = Atualizar dispositivos
+
+# Setup Page strings
+
+# Title of the Setup page.
+about-debugging-setup-title = Configuração
+# Introduction text in the Setup page to explain how to configure remote debugging.
+about-debugging-setup-intro = Configure o método de ligação com o qual deseja depurar remotamente o seu dispositivo.
+# Explanatory text in the Setup page about what the 'This Firefox' page is for
+about-debugging-setup-this-firefox2 = Utilize { about-debugging-this-firefox-runtime-name } para depurar extensões e service workers nesta versão do { -brand-shorter-name }.
+# Title of the heading Connect section of the Setup page.
+about-debugging-setup-connect-heading = Ligue um dispositivo
+# USB section of the Setup page
+about-debugging-setup-usb-title = USB
+# Explanatory text displayed in the Setup page when USB debugging is disabled
+about-debugging-setup-usb-disabled = Ativar isto irá transferir e adicionar os componentes de depuração Android USB para o { -brand-shorter-name }.
+# Text of the button displayed in the USB section of the setup page when USB debugging is disabled.
+# Clicking on it will download components needed to debug USB Devices remotely.
+about-debugging-setup-usb-enable-button = Ativar dispositivos USB
+# Text of the button displayed in the USB section of the setup page when USB debugging is enabled.
+about-debugging-setup-usb-disable-button = Desativar dispositivos USB
+# Text of the button displayed in the USB section of the setup page while USB debugging
+# components are downloaded and installed.
+about-debugging-setup-usb-updating-button = A atualizar…
+# USB section of the Setup page (USB status)
+about-debugging-setup-usb-status-enabled = Ativado
+about-debugging-setup-usb-status-disabled = Desativado
+about-debugging-setup-usb-status-updating = A atualizar...
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-dev-menu2 = Ative o menu de programador no seu dispositivo Android.
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug2 = Ative a depuração USB no menu de programador Android.
+# USB section step by step guide
+about-debugging-setup-usb-step-enable-debug-firefox2 = Ative a depuração USB no Firefox no dispositivo Android.
+# USB section step by step guide
+about-debugging-setup-usb-step-plug-device = Ligue o dispositivo Android ao seu computador.
+# Text shown in the USB section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-to-a-remote-device
+about-debugging-setup-usb-troubleshoot = Problemas ao ligar ao dispositivo USB? Resolução de problemas
+# Network section of the Setup page
+about-debugging-setup-network =
+ .title = Localização da rede
+# Text shown in the Network section of the setup page with a link to troubleshoot connection errors.
+# The link goes to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#connecting-over-the-network
+about-debugging-setup-network-troubleshoot = Problemas ao ligar via localização de rede? Resolução de problemas
+# Text of a button displayed after the network locations "Host" input.
+# Clicking on it will add the new network location to the list.
+about-debugging-network-locations-add-button = Adicionar
+# Text to display when there are no locations to show.
+about-debugging-network-locations-empty-text = Nenhuma localização de rede foi adicionada ainda.
+# Text of the label for the text input that allows users to add new network locations in
+# the Connect page. A host is a hostname and a port separated by a colon, as suggested by
+# the input's placeholder "localhost:6080".
+about-debugging-network-locations-host-input-label = Servidor
+# Text of a button displayed next to existing network locations in the Connect page.
+# Clicking on it removes the network location from the list.
+about-debugging-network-locations-remove-button = Remover
+# Text used as error message if the format of the input value was invalid in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-invalid = Servidor inválido “{ $host-value }”. O formato esperado é “servidor:númerodeporta”.
+# Text used as error message if the input value was already registered in the network locations form of the Setup page.
+# Variables:
+# $host-value (string) - The input value submitted by the user in the network locations form
+about-debugging-network-location-form-duplicate = O servidor “{ $host-value }” já está registado
+
+# Runtime Page strings
+
+# Below are the titles for the various categories of debug targets that can be found
+# on "runtime" pages of about:debugging.
+# Title of the temporary extensions category (only available for "This Firefox" runtime).
+about-debugging-runtime-temporary-extensions =
+ .name = Extensões temporárias
+# Title of the extensions category.
+about-debugging-runtime-extensions =
+ .name = Extensões
+# Title of the tabs category.
+about-debugging-runtime-tabs =
+ .name = Separadores
+# Title of the service workers category.
+about-debugging-runtime-service-workers =
+ .name = Service Workers
+# Title of the shared workers category.
+about-debugging-runtime-shared-workers =
+ .name = Shared Workers
+# Title of the other workers category.
+about-debugging-runtime-other-workers =
+ .name = Outros Workers
+# Title of the processes category.
+about-debugging-runtime-processes =
+ .name = Processos
+# Label of the button opening the performance profiler panel in runtime pages for remote
+# runtimes.
+about-debugging-runtime-profile-button2 = Desempenho do perfil
+# This string is displayed in the runtime page if the current configuration of the
+# target runtime is incompatible with service workers. "Learn more" points to:
+# https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/index.html#service-workers-not-compatible
+about-debugging-runtime-service-workers-not-compatible = A configuração do seu navegador não é compatível com Service Workers. Saber mais
+# This string is displayed in the runtime page if the remote browser version is too old.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $minVersion } is the minimum version that is compatible with the current Firefox instance (same format)
+about-debugging-browser-version-too-old = O navegador ligado tem uma versão antiga ({ $runtimeVersion }). A versão mínima suportada é ({ $minVersion }). Esta é uma configuração não suportada e pode causar com que as DevTools falhem. Por favor atualize o navegador ligado. Resolução de problemas
+# Dedicated message for a backward compatibility issue that occurs when connecting:
+# from Fx 70+ to the old Firefox for Android (aka Fennec) which uses Fx 68.
+about-debugging-browser-version-too-old-fennec = Esta versão do Firefox não pode depurar o Firefox para Android (68). Nós recomendamos a instalação do Firefox Nightly para Android no seu telemóvel para fazer testes. Mais detalhes
+# This string is displayed in the runtime page if the remote browser version is too recent.
+# "Troubleshooting" link points to https://firefox-source-docs.mozilla.org/devtools-user/about_colon_debugging/
+# { $runtimeID } is the build ID of the remote browser (for instance "20181231", format is yyyyMMdd)
+# { $localID } is the build ID of the current Firefox instance (same format)
+# { $runtimeVersion } is the version of the remote browser (for instance "67.0a1")
+# { $localVersion } is the version of your current browser (same format)
+about-debugging-browser-version-too-recent = O navegador ligado é mais recente ({ $runtimeVersion }, buildID { $runtimeID }) do que a sua versão do { -brand-shorter-name } ({ $localVersion }, buildID { $localID }). Esta é uma configuração não suportada e pode fazer com que as DevTools falhem. Por favor atualize o Firefox. Resolução de problemas
+# Displayed for runtime info in runtime pages.
+# { $name } is brand name such as "Firefox Nightly"
+# { $version } is version such as "64.0a1"
+about-debugging-runtime-name = { $name } ({ $version })
+# Text of a button displayed in Runtime pages for remote runtimes.
+# Clicking on the button will close the connection to the runtime.
+about-debugging-runtime-disconnect-button = Desligar
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is false on the target runtime.
+about-debugging-connection-prompt-enable-button = Ativar solicitação de ligação
+# Text of the connection prompt button displayed in Runtime pages, when the preference
+# "devtools.debugger.prompt-connection" is true on the target runtime.
+about-debugging-connection-prompt-disable-button = Desativar solicitação de ligação
+# Title of a modal dialog displayed on remote runtime pages after clicking on the Profile Runtime button.
+about-debugging-profiler-dialog-title2 = Profiler
+# Clicking on the header of a debug target category will expand or collapse the debug
+# target items in the category. This text is used as ’title’ attribute of the header,
+# to describe this feature.
+about-debugging-collapse-expand-debug-targets = Colapsar / expandir
+
+# Debug Targets strings
+
+# Displayed in the categories of "runtime" pages that don't have any debug target to
+# show. Debug targets depend on the category (extensions, tabs, workers...).
+about-debugging-debug-target-list-empty = Nada ainda.
+# Text of a button displayed next to debug targets of "runtime" pages. Clicking on this
+# button will open a DevTools toolbox that will allow inspecting the target.
+# A target can be an addon, a tab, a worker...
+about-debugging-debug-target-inspect-button = Inspecionar
+# Text of a button displayed in the "This Firefox" page, in the Temporary Extension
+# section. Clicking on the button will open a file picker to load a temporary extension
+about-debugging-tmp-extension-install-button = Carregar extra temporário…
+# Text displayed when trying to install a temporary extension in the "This Firefox" page.
+about-debugging-tmp-extension-install-error = Ocorreu um erro durante a instalação do extra temporário.
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will reload the extension.
+about-debugging-tmp-extension-reload-button = Recarregar
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will uninstall the extension and remove it from the page.
+about-debugging-tmp-extension-remove-button = Remover
+# Text of a button displayed for a temporary extension loaded in the "This Firefox" page.
+# Clicking on the button will forcefully terminate the extension background script (button
+# only visible in extensions that includes a non-persistent background script, either an
+# event page or a background service worker).
+about-debugging-tmp-extension-terminate-bgscript-button = Terminar script de fundo
+# Message displayed in the file picker that opens to select a temporary extension to load
+# (triggered by the button using "about-debugging-tmp-extension-install-button")
+# manifest.json .xpi and .zip should not be localized.
+# Note: this message is only displayed in Windows and Linux platforms.
+about-debugging-tmp-extension-install-message = Selecione o ficheiro manifest.json ou arquivo .xpi/.zip
+# This string is displayed as a message about the add-on having a temporaryID.
+about-debugging-tmp-extension-temporary-id = Esta WebExtension tem um ID temporário. Saber mais
+# Text displayed for extensions in "runtime" pages, before displaying a link the extension's
+# manifest URL.
+about-debugging-extension-manifest-url =
+ .label = URL do manifesto
+# Text displayed for extensions in "runtime" pages, before displaying the extension's uuid.
+# UUIDs look like b293e463-481e-5148-a487-5aaf7a130429
+about-debugging-extension-uuid =
+ .label = UUID interno
+# Text displayed for extensions (temporary extensions only) in "runtime" pages, before
+# displaying the location of the temporary extension.
+about-debugging-extension-location =
+ .label = Localização
+# Text displayed for extensions in "runtime" pages, before displaying the extension's ID.
+# For instance "geckoprofiler@mozilla.com" or "{ed26ddcb-5611-4512-a89a-51b8db81cfb2}".
+about-debugging-extension-id =
+ .label = ID da extensão
+# Text displayed for extensions in "runtime" pages, before displaying the status of the
+# extension background script.
+about-debugging-extension-backgroundscript =
+ .label = Script de fundo
+# Displayed for extension using a non-persistent background page (either an event page or
+# background service worker) when the background script is currently running.
+about-debugging-extension-backgroundscript-status-running = Em execução
+# Displayed for extension using a non-persistent background page when is currently stopped.
+about-debugging-extension-backgroundscript-status-stopped = Parado
+# This string is displayed as a label of the button that pushes a test payload
+# to a service worker.
+# Note this relates to the "Push" API, which is normally not localized so it is
+# probably better to not localize it.
+about-debugging-worker-action-push2 = Push
+ .disabledTitle = O push de Service Workers está atualmente desativado para o { -brand-shorter-name } multi-processos
+# This string is displayed as a label of the button that starts a service worker.
+about-debugging-worker-action-start2 = Iniciar
+ .disabledTitle = O iniciar de Service Workers está atualmente desativado para o { -brand-shorter-name } multi-processos
+# This string is displayed as a label of the button that unregisters a service worker.
+about-debugging-worker-action-unregister = Remover registo
+# Displayed for service workers in runtime pages that listen to Fetch events.
+about-debugging-worker-fetch-listening =
+ .label = Fetch
+ .value = A escutar eventos fetch
+# Displayed for service workers in runtime pages that do not listen to Fetch events.
+about-debugging-worker-fetch-not-listening =
+ .label = Fetch
+ .value = A não escutar eventos fetch
+# Displayed for service workers in runtime pages that are currently running (service
+# worker instance is active).
+about-debugging-worker-status-running = Em execução
+# Displayed for service workers in runtime pages that are registered but stopped.
+about-debugging-worker-status-stopped = Parado
+# Displayed for service workers in runtime pages that are registering.
+about-debugging-worker-status-registering = A registar
+# Displayed for service workers in runtime pages, to label the scope of a worker
+about-debugging-worker-scope =
+ .label = Âmbito
+# Displayed for service workers in runtime pages, to label the push service endpoint (url)
+# of a worker
+about-debugging-worker-push-service =
+ .label = Serviço Push
+# Displayed as title of the inspect button when service worker debugging is disabled.
+about-debugging-worker-inspect-action-disabled =
+ .title = A inspeção de Service Worker está atualmente desativada para o { -brand-shorter-name } multi-processos
+# Displayed as title of the inspect button for zombie tabs (e.g. tabs loaded via a session restore).
+about-debugging-zombie-tab-inspect-action-disabled =
+ .title = O separador não está totalmente carregado e não pode ser inspecionado
+# Displayed as name for the Main Process debug target in the Processes category. Only for
+# remote runtimes, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-main-process-name = Processo principal
+# Displayed as description for the Main Process debug target in the Processes category.
+# Only for remote browsers, if `devtools.aboutdebugging.process-debugging` is true.
+about-debugging-main-process-description2 = Processo principal para o navegador de destino
+# Displayed instead of the Main Process debug target when the preference
+# `devtools.browsertoolbox.fission` is true.
+about-debugging-multiprocess-toolbox-name = Caixa de ferramentas multi-processos
+# Description for the Multiprocess Toolbox target.
+about-debugging-multiprocess-toolbox-description = Processo principal e processos de conteúdo para o navegador alvo
+# Alt text used for the close icon of message component (warnings, errors and notifications).
+about-debugging-message-close-icon =
+ .alt = Fechar mensagem
+# Label text used for the error details of message component.
+about-debugging-message-details-label-error = Detalhes do erro
+# Label text used for the warning details of message component.
+about-debugging-message-details-label-warning = Detalhes do aviso
+# Label text used for default state of details of message component.
+about-debugging-message-details-label = Detalhes
diff --git a/l10n-pt-PT/devtools/client/accessibility.ftl b/l10n-pt-PT/devtools/client/accessibility.ftl
new file mode 100644
index 0000000000..00a9ef0764
--- /dev/null
+++ b/l10n-pt-PT/devtools/client/accessibility.ftl
@@ -0,0 +1,81 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Accessibility panel.
+
+accessibility-learn-more = Saber mais
+
+accessibility-text-label-header = Etiquetas e nomes de texto
+
+accessibility-keyboard-header = Teclado
+
+## Text entries that are used as text alternative for icons that depict accessibility isses.
+
+## Text entries that are used as text alternative for icons that depict accessibility issues.
+
+accessibility-warning =
+ .alt = Aviso
+
+accessibility-fail =
+ .alt = Erro
+
+accessibility-best-practices =
+ .alt = Melhores práticas
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has an accessibility issue
+## with its text label or accessible name.
+
+accessibility-text-label-issue-area = Utilize o atributo alt para rotular elementos
area div> que possuem o atributo href. Saber mais
+
+accessibility-text-label-issue-dialog = Diálogos devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-document-title = Documentos devem ter um title. Saber mais
+
+accessibility-text-label-issue-embed = Conteúdo embutido deve ser rotulado. Saber mais
+
+accessibility-text-label-issue-figure = Figuras com legendas opcionais devem ser rotuladas. Saber mais
+
+accessibility-text-label-issue-fieldset = Elementos fieldset devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-fieldset-legend2 = Utilize um elemento legend para etiquetar um fieldset. Saber mais
+
+accessibility-text-label-issue-form = Elementos de formulário devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-form-visible = Elementos de formulário devem ter um rótulo de texto visível. Saber mais
+
+accessibility-text-label-issue-frame = Elementos frame devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-glyph = Utilize o atributo alt code> para rotular elementos mglyph. Saber mais
+
+accessibility-text-label-issue-heading = Cabeçalhos devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-heading-content = Cabeçalhos devem ter conteúdo de texto visível. Saber mais
+
+accessibility-text-label-issue-iframe = Utilize o atributo title para descrever conteúdo iframe. Saber mais
+
+accessibility-text-label-issue-image = Conteúdo com imagens deve ser rotulado. Saber mais
+
+accessibility-text-label-issue-interactive = Elementos interativos devem ser rotulados. Saber mais
+
+accessibility-text-label-issue-optgroup-label2 = Utilize um atributo label para etiquetar um "optgroup". Saber mais
+
+accessibility-text-label-issue-toolbar = Barras de ferramentas devem ser rotuladas quando houver mais de uma barra de ferramentas. Saber mais
+
+## Text entries for a paragraph used in the accessibility panel sidebar's checks section
+## that describe that currently selected accessible object has a keyboard accessibility
+## issue.
+
+accessibility-keyboard-issue-semantics = Os elementos focáveis devem ter semântica de interação. Saber mais
+
+accessibility-keyboard-issue-tabindex = Evite utilizar o atributo tabindex com um valor maior do que zero. Saber mais
+
+accessibility-keyboard-issue-action = Deve ser possível ativar elementos interativos com recurso a um teclado. Saber mais
+
+accessibility-keyboard-issue-focusable = Deve ser possível focar elementos interativos. Saber mais
+
+accessibility-keyboard-issue-focus-visible = Pode estar em falta o estilo de foco de um elemento focável. Saber mais
+
+accessibility-keyboard-issue-mouse-only = Os elementos clicáveis devem ser focáveis e ter semântica de interação. Saber mais
diff --git a/l10n-pt-PT/devtools/client/accessibility.properties b/l10n-pt-PT/devtools/client/accessibility.properties
new file mode 100644
index 0000000000..9358cff1fc
--- /dev/null
+++ b/l10n-pt-PT/devtools/client/accessibility.properties
@@ -0,0 +1,314 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Accessibility panel
+# which is available from the Web Developer sub-menu -> 'Accessibility'.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE These strings are used inside the Accessibility panel
+# which is in the Developer Tools, available in the
+# Browser Tools sub-menu -> 'Web Developer Tools'
+#
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (accessibility.role): A title text used for Accessibility
+# tree header column that represents accessible element role.
+accessibility.role=Função
+
+# LOCALIZATION NOTE (accessibility.name): A title text used for Accessibility
+# tree header column that represents accessible element name.
+accessibility.name=Nome
+
+# LOCALIZATION NOTE (accessibility.logo): A title text used for Accessibility
+# logo used on the accessibility panel landing page.
+accessibility.logo=Logótipo de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.properties): A title text used for header
+# for Accessibility details sidebar.
+accessibility.properties=Propriedades
+
+# LOCALIZATION NOTE (accessibility.treeName): A title text used for
+# Accessibility tree (that represents accessible element name) container.
+accessibility.treeName=Árvore de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.accessible.selectElement.title): A title text
+# displayed on buttons next to accessible elements in the `relations` section, allowing the
+# user to select the element in the accessibility tree.
+accessibility.accessible.selectElement.title=Clique para selecionar o nó na Árvore de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.accessible.selectNodeInInspector.title): A title text
+# displayed on buttons next to nodes in the sidebar, allowing the user to select the node
+# in the Inspector panel.
+accessibility.accessible.selectNodeInInspector.title=Clique para selecionar o nó no inspetor
+
+# LOCALIZATION NOTE (accessibility.accessible.notAvailable): A title text
+# displayed when accessible sidebar panel does not have an accessible object to
+# display.
+accessibility.accessible.notAvailable=Informação acessível indisponível
+
+# LOCALIZATION NOTE (accessibility.enable): A title text for Enable
+# accessibility button used to enable accessibility service.
+accessibility.enable=Ligar funcionalidades de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.enabling): A title text for Enable
+# accessibility button used when accessibility service is being enabled.
+accessibility.enabling=A ligar funcionalidades de acessibilidade…
+
+# LOCALIZATION NOTE (accessibility.disable): A title text for Disable
+# accessibility button used to disable accessibility service.
+accessibility.disable=Desligar funcionalidades de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.disabling): A title text for Disable
+# accessibility button used when accessibility service is being
+# disabled.
+accessibility.disabling=A desligar funcionalidades de acessibilidade…
+
+# LOCALIZATION NOTE (accessibility.pick): A title text for Picker button
+# button used to pick accessible objects from the page.
+accessibility.pick=Escolher objeto acessível a partir da página
+
+# LOCALIZATION NOTE (accessibility.disable.disabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can not
+# be disabled. It is the case when a user is using a 3rd party accessibility
+# tool such as screen reader.
+accessibility.disable.disabledTitle=O serviço de acessibilidade não pode ser desligado. É utilizado fora das Ferramentas de programador.
+
+# LOCALIZATION NOTE (accessibility.disable.enabledTitle): A title text used for
+# a tooltip for Disable accessibility button when accessibility service can be
+# disabled.
+accessibility.disable.enabledTitle=O serviço de acessibilidade será desligado para todos os separadores e janelas.
+
+# LOCALIZATION NOTE (accessibility.enable.disabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can not
+# be enabled.
+accessibility.enable.disabledTitle=O serviço de acessibilidade não pode ser ligado. Está desligado via a preferência de privacidade de serviços de acessibilidade.
+
+# LOCALIZATION NOTE (accessibility.enable.enabledTitle): A title text used for
+# a tooltip for Enabled accessibility button when accessibility service can be
+# enabled.
+accessibility.enable.enabledTitle=O serviço de acessibilidade serão ligados para todos os separadores e janelas.
+
+# LOCALIZATION NOTE (accessibility.learnMore): A text that is used as is or as textual
+# description in places that link to accessibility inspector documentation.
+accessibility.learnMore=Saber mais
+
+# LOCALIZATION NOTE (accessibility.description.general.p1): A title text for the first
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.description.general.p1=O Inspetor de acessibilidade permite-lhe examinar a árvore de acessibilidade da página atual, que é utilizada por leitores de ecrã e outras tecnologias assistivas. %S
+
+# LOCALIZATION NOTE (accessibility.description.general.p2): A title text for the second
+# paragraph, used when accessibility service description is provided before accessibility
+# inspector is enabled.
+accessibility.description.general.p2=As funcionalidades de acessibilidade podem afetar o desempenho de outros painéis de ferramentas de programador e devem ser desligadas quando não estão em utilização.
+
+# LOCALIZATION NOTE (accessibility.tree.menu.printToJSON): A title text used when a
+# context menu item for printing an accessible tree to JSON is rendered after triggering a
+# context menu for an accessible tree row.
+accessibility.tree.menu.printToJSON=Imprimir para JSON
+
+# LOCALIZATION NOTE (accessibility.checks): A title text used for header for checks
+# section in Accessibility details sidebar.
+accessibility.checks=Verificações
+
+# LOCALIZATION NOTE (accessibility.checks.empty2): A title text used for indicating that
+# accessibility checks for a node yielded no results and another node should be
+# selected.
+accessibility.checks.empty2=Nenhuma verificação para este nó.
+
+# LOCALIZATION NOTE (accessibility.contrast.header): A title text used for header for
+# checks related to color and contrast.
+accessibility.contrast.header=Cor e contraste
+
+# LOCALIZATION NOTE (accessibility.contrast.error): A title text for the color
+# contrast ratio, used when the tool is unable to calculate the contrast ratio value.
+accessibility.contrast.error=Não é possível calcular
+
+# LOCALIZATION NOTE (accessibility.contrast.large.text): A title text for the color
+# contrast ratio label indicating that the color contrast criteria used is if for large
+# text. This is lower case because it's used as a label for a tree item in accessibility
+# tree.
+accessibility.contrast.large.text=texto grande
+
+# LOCALIZATION NOTE (accessibility.contrast.large.title): A title text for the tooltip
+# used for the large text label (see accessibility.contrast.large.text).
+accessibility.contrast.large.title=O texto tem 14 pontos e em negrito ou maior, ou 18 pontos ou maior.
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AA): A title text for the paragraph
+# describing that the given colour contrast satisfies AA standard from Web Content
+# Accessibility Guidelines. %S in the content will be replaced by a link at run time
+# with the accessibility.learnMore string.
+accessibility.contrast.annotation.AA=Atende aos padrões WCAG AA para texto acessível. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.AAA): A title text for the
+# paragraph describing that the given colour contrast satisfies AAA standard from Web
+# Content Accessibility Guidelines. %S in the content will be replaced by a link at run
+# time with the accessibility.learnMore string.
+accessibility.contrast.annotation.AAA=Atende aos padrões WCAG AAA para texto acessível. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.FAIL): A title text for the
+# paragraph describing that the given colour contrast fails to meet the minimum level from
+# Web Content Accessibility Guidelines. %S in the content will be replaced by a link at
+# run time with the accessibility.learnMore string.
+accessibility.contrast.annotation.FAIL=Não cumpre os padrões WCAG para texto acessível. %S
+
+# LOCALIZATION NOTE (accessibility.contrast.annotation.transparent.error): A title text for the
+# paragraph suggesting a fix for error in color contrast calculation for text nodes with zero alpha.
+accessibility.contrast.annotation.transparent.error=Escolha uma cor que não seja transparente.
+
+# LOCALIZATION NOTE (accessibility.badges): A title text for the group of badges
+# that are rendered for each accessible row within the accessibility tree when
+# one or more accessibility checks fail.
+accessibility.badges=Verificações de acessibilidade
+
+# LOCALIZATION NOTE (accessibility.filter.none): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# resets all filtering in tree, and for the simulation menu item that resets
+# applied color matrices to the default matrix.
+accessibility.filter.none=Nenhum
+
+# LOCALIZATION NOTE (accessibility.filter.all2): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on all accessibility failures within it.
+accessibility.filter.all2=Todos os problemas
+
+# LOCALIZATION NOTE (accessibility.filter.contrast): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on contrast accessibility failures within it.
+accessibility.filter.contrast=Contraste
+
+# LOCALIZATION NOTE (accessibility.filter.textLabel): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on text label and name accessibility failures within it.
+accessibility.filter.textLabel=Etiquetas de texto
+
+# LOCALIZATION NOTE (accessibility.filter.keyboard): A title text for the filter
+# that is rendered within the accessibility panel toolbar for a menu item that
+# filters the tree based on keyboard accessibility failures within it.
+accessibility.filter.keyboard=Teclado
+
+# LOCALIZATION NOTE (accessibility.badge.contrast): A title text for the badge
+# that is rendered within the accessible row in the accessibility tree for a
+# given accessible object that does not satisfy the WCAG guideline for colour
+# contrast.
+accessibility.badge.contrast=contraste
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.warning): A label for the
+# badge and attached warning icon that is rendered within the accessible row in
+# the accessibility tree for a given accessible object that does not satisfy the
+# WCAG guideline for colour contrast.
+accessibility.badge.contrast.warning=aviso de contraste
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for
+# keyboard accessibility.
+accessibility.badge.keyboard=teclado
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel): A title text for the
+# badge that is rendered within the accessible row in the accessibility tree for
+# a given accessible object that does not satisfy the WCAG guideline for text
+# alternative.
+accessibility.badge.textLabel=rótulo de texto
+
+# LOCALIZATION NOTE (accessibility.badge.contrast.tooltip): A title text for the
+# badge tooltip that is rendered on mouse hover over the badge in the accessible
+# row in the accessibility tree for a given accessible object that does not
+# satisfy the WCAG guideline for colour contrast.
+accessibility.badge.contrast.tooltip=Não atende aos padrões WCAG para texto acessível.
+
+# LOCALIZATION NOTE (accessibility.badge.keyboard.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for keyboard accessibility.
+accessibility.badge.keyboard.tooltip=Não cumpre os padrões WCAG para a acessibilidade com o teclado.
+
+# LOCALIZATION NOTE (accessibility.badge.textLabel.tooltip): A title text
+# for the badge tooltip that is rendered on mouse hover over the badge in the
+# accessible row in the accessibility tree for a given accessible object that
+# does not satisfy the WCAG guideline for text alternative.
+accessibility.badge.textLabel.tooltip=Não atende aos padrões WCAG para alternativa de texto.
+
+# LOCALIZATION NOTE (accessibility.tree.filters): A title text for the toolbar
+# within the main accessibility panel that contains a list of filters to be for
+# accessibility audit.
+accessibility.tree.filters=Verifique por problemas:
+
+# LOCALIZATION NOTE (accessibility.tree.filters.prefs): A title text for the
+# preferences button tooltip that contains preferences for accessibility audit.
+accessibility.tree.filters.prefs=Configurar preferências
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is starting up.
+accessibility.progress.initializing=A inicializar…
+
+# LOCALIZATION NOTE (accessibility.progress.initializing): A title text for the
+# accessibility panel overlay shown when accessibility audit is running showing
+# the number of nodes being audited. Semi-colon list of plural forms. See:
+# http://developer.mozilla.org/en/docs/Localization_and_Plurals
+accessibility.progress.progressbar=A verificar #1 nó;A verificar #1 nós
+
+# LOCALIZATION NOTE (accessibility.progress.finishing): A title text for the
+# accessibility panel overlay shown when accessibility audit is finishing up.
+accessibility.progress.finishing=A terminar…
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.title): A title
+# text for the tooltip for the checkbox pref in the accessibility panel that
+# sets node auto scroll.
+accessibility.pref.scroll.into.view.title=Deslocar para apresentar o nó selecionado na área de visualização automaticamente
+
+# LOCALIZATION NOTE (accessibility.pref.scroll.into.view.label): A title
+# text for the checkbox pref in the accessibility panel that sets node auto
+# scroll.
+accessibility.pref.scroll.into.view.label=Deslocar para ver
+
+# LOCALIZATION NOTE (accessibility.documentation.label): This is the label for
+# the Documentation menu item.
+accessibility.documentation.label=Documentação…
+
+# LOCALIZATION NOTE (accessibility.simulation): A title text for the toolbar
+# within the main accessibility panel that contains a list of simulations for
+# vision deficiencies.
+accessibility.simulation=Simular:
+
+# LOCALIZATION NOTE (accessibility.simulation.protanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the protanopia simulation option.
+accessibility.simulation.protanopia=Protanopia (sem vermelho)
+
+# LOCALIZATION NOTE (accessibility.simulation.deuteranopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the deuteranopia simulation option.
+accessibility.simulation.deuteranopia=Deuteranopia (sem verde)
+
+# LOCALIZATION NOTE (accessibility.simulation.tritanopia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the tritanopia simulation option.
+accessibility.simulation.tritanopia=Tritanopia (sem azul)
+
+# LOCALIZATION NOTE (accessibility.simulation.contrastLoss): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the contrast loss simulation option.
+# It is also shown in the simulation menu button in the accessibility panel and represent the
+# contrast loss simulation option currently selected.
+accessibility.simulation.contrastLoss=Perda de contraste
+
+# LOCALIZATION NOTE (accessibility.simulation.achromatopsia): This label is shown
+# in the "Simulate" menu in the accessibility panel and represent the achromatopsia simulation option.
+accessibility.simulation.achromatopsia=Acromatopsia (sem cor)
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.label): A title text for a checkbox label
+# in the accessibility panel toolbar that turns on/off the overlay of focusable elements in their
+# tabbing order.
+accessibility.toolbar.displayTabbingOrder.label=Mostrar ordem de tabulação
+
+# LOCALIZATION NOTE (accessibility.toolbar.displayTabbingOrder.tooltip): A title text for a checkbox
+# tooltip in the accessibility panel toolbar that turns on/off the overlay of focusable elements in
+# their tabbing order.
+accessibility.toolbar.displayTabbingOrder.tooltip=Mostra a ordem de tabulação dos elementos e o respetivo índice de tabulação.
diff --git a/l10n-pt-PT/devtools/client/animationinspector.properties b/l10n-pt-PT/devtools/client/animationinspector.properties
new file mode 100644
index 0000000000..f734e5d730
--- /dev/null
+++ b/l10n-pt-PT/devtools/client/animationinspector.properties
@@ -0,0 +1,183 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE These strings are used inside the Animation inspector
+# which is available as a sidebar panel in the Inspector.
+# The correct localization of this file might be to keep it in
+# English, or another language commonly spoken among web developers.
+# You want to make that choice consistent across the developer tools.
+# A good criteria is the language in which you'd find the best
+# documentation on web development on the web.
+
+# LOCALIZATION NOTE (panel.noAnimation):
+# This is the label shown in the panel when there are no displayable animations.
+# (e.g. In case of user selected a non-element node or a node that is not animated).
+panel.noAnimation=Não foram encontradas animações para o elemento atual.\nSelecione outro elemento da página.
+
+# LOCALIZATION NOTE (player.animationDurationLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation duration.
+player.animationDurationLabel=Duração:
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in a tooltip on animation player widget, in case the
+# duration of the animation is infinite.
+player.infiniteDurationText=∞
+
+# LOCALIZATION NOTE (player.animationDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation delay.
+player.animationDelayLabel=Atraso:
+
+# LOCALIZATION NOTE (player.animationEndDelayLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation endDelay.
+player.animationEndDelayLabel=Atraso do fim:
+
+# LOCALIZATION NOTE (player.animationRateLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the animation playback rate.
+player.animationRateLabel=Taxa de reprodução:
+
+# LOCALIZATION NOTE (player.animationIterationCountLabel):
+# This string is displayed in each animation player widget. It is the label
+# displayed before the number of times the animation is set to repeat.
+player.animationIterationCountLabel=Repetições:
+
+# LOCALIZATION NOTE (player.infiniteIterationCount):
+# In case the animation repeats infinitely, this string is displayed next to the
+# player.animationIterationCountLabel string, instead of a number.
+player.infiniteIterationCount=∞
+
+# LOCALIZATION NOTE (player.infiniteIterationCountText):
+# See player.infiniteIterationCount for a description of what this is.
+# Unlike player.infiniteIterationCount, this string isn't used in HTML, but in
+# a tooltip.
+player.infiniteIterationCountText=∞
+
+# LOCALIZATION NOTE (player.animationIterationStartLabel2):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# iterationStart value.
+# %1$S will be replaced by the original iteration start value
+# %2$S will be replaced by the actual time of iteration start without time unit
+# e.g.
+# If iterationStart of animation is 0.5 and duration is 1 sec, the string will be
+# "Iteration start: 0.5 (0.5s)"
+player.animationIterationStartLabel2=Início da iteração: %1$S (%2$S)
+
+# LOCALIZATION NOTE (player.animationOverallEasingLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the easing
+# that applies to a whole iteration of an animation as opposed to the
+# easing that applies between animation keyframes.
+player.animationOverallEasingLabel=Suavização geral:
+
+# LOCALIZATION NOTE (player.animationTimingFunctionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the
+# animation-timing-function for CSS Animations.
+player.animationTimingFunctionLabel=Função de temporização de animação:
+
+# LOCALIZATION NOTE (player.animationFillLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# fill mode value.
+player.animationFillLabel=Encher:
+
+# LOCALIZATION NOTE (player.animationDirectionLabel):
+# This string is displayed in a tooltip that appears when hovering over
+# animations in the timeline. It is the label displayed before the animation
+# direction value.
+player.animationDirectionLabel=Direção:
+
+# LOCALIZATION NOTE (player.timeLabel):
+# This string is displayed in each animation player widget, to indicate either
+# how long (in seconds) the animation lasts, or what is the animation's current
+# time (in seconds too);
+player.timeLabel=%Ss
+
+# LOCALIZATION NOTE (player.infiniteDurationText):
+# This string is displayed in animation player widget, in case the duration of the
+# animation is infinite.
+player.infiniteTimeLabel=∞
+
+# LOCALIZATION NOTE (player.playbackRateLabel):
+# This string is displayed in each animation player widget, as the label of
+# drop-down list items that can be used to change the rate at which the
+# animation runs (1× being the default, 2× being twice as fast).
+player.playbackRateLabel=%S×
+
+# LOCALIZATION NOTE (player.runningOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that the
+# animation is running on the compositor thread.
+player.runningOnCompositorTooltip=Esta animação está a ser executada na thread de composição
+
+# LOCALIZATION NOTE (player.allPropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is running on the compositor thread.
+player.allPropertiesOnCompositorTooltip=Todas as propriedades de animação estão otimizadas
+
+# LOCALIZATION NOTE (player.somePropertiesOnCompositorTooltip):
+# This string is displayed as a tooltip for the icon that indicates that
+# all of animation is not running on the compositor thread.
+player.somePropertiesOnCompositorTooltip=Algumas propriedades de animação estão otimizadas
+
+# LOCALIZATION NOTE (timeline.pausedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.pausedButtonTooltip=Retomar as animações
+
+# LOCALIZATION NOTE (timeline.resumedButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# pause/resume button that can be used to pause or resume the animations
+timeline.resumedButtonTooltip=Pausar as animações
+
+# LOCALIZATION NOTE (timeline.rewindButtonTooltip):
+# This string is displayed in the timeline toolbar, as the tooltip of the
+# rewind button that can be used to rewind the animations
+timeline.rewindButtonTooltip=Rebobinar as animações
+
+# LOCALIZATION NOTE (timeline.timeGraduationLabel):
+# This string is displayed at the top of the animation panel, next to each time
+# graduation, to indicate what duration (in milliseconds) this graduation
+# corresponds to.
+timeline.timeGraduationLabel=%Sms
+
+# LOCALIZATION NOTE (timeline.cssanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.cssanimation.nameLabel=%S - Animação CSS
+
+# LOCALIZATION NOTE (timeline.csstransition.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a CSS Transition in the timeline UI.
+# %S will be replaced by the name of the transition at run-time.
+timeline.csstransition.nameLabel=%S - Transição CSS
+
+# LOCALIZATION NOTE (timeline.scriptanimation.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of a script-generated animation in the timeline UI.
+# %S will be replaced by the name of the animation at run-time.
+timeline.scriptanimation.nameLabel=%S - Animação do script
+
+# LOCALIZATION NOTE (timeline.scriptanimation.unnamedLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over an unnamed script-generated animation in the timeline UI.
+timeline.scriptanimation.unnamedLabel=Animação do script
+
+# LOCALIZATION NOTE (timeline.unknown.nameLabel):
+# This string is displayed in a tooltip of the animation panel that is shown
+# when hovering over the name of an unknown animation type in the timeline UI.
+# This can happen if devtools couldn't figure out the type of the animation.
+# %S will be replaced by the name of the transition at run-time.
+timeline.unknown.nameLabel=%S
+
+# LOCALIZATION NOTE (detail.propertiesHeader.percentage):
+# This string is displayed on header label in .animated-properties-header.
+# %S represents the value in percentage with two decimal points, localized.
+# there are two "%" after %S to escape and display "%"
+detail.propertiesHeader.percentage=%S%%
+
diff --git a/l10n-pt-PT/devtools/client/application.ftl b/l10n-pt-PT/devtools/client/application.ftl
new file mode 100644
index 0000000000..26abca027f
--- /dev/null
+++ b/l10n-pt-PT/devtools/client/application.ftl
@@ -0,0 +1,147 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+### These strings are used inside the Application panel which is available
+### by setting the preference `devtools-application-enabled` to true.
+
+
+### The correct localization of this file might be to keep it in English, or another
+### language commonly spoken among web developers. You want to make that choice consistent
+### across the developer tools. A good criteria is the language in which you'd find the
+### best documentation on web development on the web.
+
+# Header for the list of Service Workers displayed in the application panel for the current page.
+serviceworker-list-header = Service Workers
+
+# Text displayed next to the list of Service Workers to encourage users to check out
+# about:debugging to see all registered Service Workers.
+serviceworker-list-aboutdebugging = Open about:debugging for Service Workers from other domains
+
+# Text for the button to unregister a Service Worker. Displayed for active Service Workers.
+serviceworker-worker-unregister = Unregister
+
+# Text for the debug link displayed for an already started Service Worker. Clicking on the
+# link opens a new devtools toolbox for this service worker. The title attribute is only
+# displayed when the link is disabled.
+serviceworker-worker-debug = Debug
+ .title = Only running service workers can be debugged
+
+# Alt text for the image icon displayed inside a debug link for a service worker.
+serviceworker-worker-inspect-icon =
+ .alt = Inspecionar
+
+# Text for the start link displayed for a registered but not running Service Worker.
+# Clicking on the link will attempt to start the service worker.
+serviceworker-worker-start3 = Iniciar
+
+# Text displayed for the updated time of the service worker. The