"""
Catalogo PT -> EN do curso. Gerado por extrair_textos.py --stub.

A CHAVE e o texto em portugues EXATAMENTE como esta dentro do T() no codigo.
Valor "" = ainda nao traduzido (o aluno ve o portugues, nunca um vazio).
Editou o portugues no codigo? A chave muda: rode --faltando para ver.
"""
TEXTOS = {
    "\n [ATENCAO] A Sprint {0} tem o card 'Sprint Planning', mas SEM data de inicio.\n   Sem ela os KRs sao calculados errados (a janela da Sprint fica indefinida).":
        "\n [WARNING] Sprint {0} has a 'Sprint Planning' card, but NO start date.\n   Without it the KRs are calculated wrong (the Sprint window is undefined).",
    '  Formato invalido. Use AAAA-MM-DD (ex.: 2026-05-25).':
        '  Invalid format. Use YYYY-MM-DD (e.g. 2026-05-25).',
    '  Qual foi a data de INICIO da Sprint {0}? [AAAA-MM-DD, Enter = hoje]:':
        '  What was the START date of Sprint {0}? [YYYY-MM-DD, Enter = today]:',
    "  [AVISO] Evento '{0}' nao encontrado em Eventos Scrum.":
        "  [WARNING] Event '{0}' not found in Scrum Events.",
    '  [AVISO] nao consegui apagar card {0}: {1}':
        '  [WARNING] could not delete card {0}: {1}',
    '  [OK] Data de inicio da Sprint {0} gravada no card: {1}':
        '  [OK] Start date of Sprint {0} saved on the card: {1}',
    '  [OK] Evento registrado: {0}':
        '  [OK] Event recorded: {0}',
    "ERRO: a Sprint {0} ainda nao teve Sprint Planning (nenhuma data de inicio no card 'Sprint {1} - Sprint Planning'). Rode sprint_planning.py para a Sprint {2} antes do OKR Check-in.":
        "ERROR: Sprint {0} has not had its Sprint Planning yet (no start date on the card 'Sprint {1} - Sprint Planning'). Run sprint_planning.py for Sprint {2} before the OKR Check-in.",
    'ERRO: preencha {0} no arquivo .env antes de rodar.':
        'ERROR: fill in {0} in the .env file before running.',
    'Lista desconhecida: {0}. Use uma de {1}':
        'Unknown list: {0}. Use one of {1}',
    '\n  Criando card RESUMO DO PROJETO em Eventos Scrum...':
        '\n  Creating PROJECT SUMMARY card in Scrum Events...',
    '\n  [OK] arquivo gerado: {0}':
        '\n  [OK] file generated: {0}',
    '  1. Contexto (2 min)':
        '  1. Context (2 min)',
    '  2. Objetivo e KRs (2 min)':
        '  2. Objective and KRs (2 min)',
    '  3. Demo do Produto (5 min)':
        '  3. Product Demo (5 min)',
    '  4. Jornada das {0} Sprints (3 min)':
        '  4. The journey across {0} Sprints (3 min)',
    '  5. Resultado dos OKRs (2 min) — use os numeros acima':
        '  5. OKR results (2 min) — use the numbers above',
    '  6. Licoes Aprendidas (3 min)':
        '  6. Lessons Learned (3 min)',
    '  7. Proximos Passos (1 min)':
        '  7. Next Steps (1 min)',
    '  8. Agradecimentos (1 min)':
        '  8. Acknowledgements (1 min)',
    '  Eventos: {0}/{1}  |  IA: {2}/{3}':
        '  Events: {0}/{1}  |  AI: {2}/{3}',
    '  KR1 curso: {0}%  |  Entregas: {1}':
        '  KR1 course: {0}%  |  Deliverables: {1}',
    '  KR1 — Taxa de Conclusao: {0}% ({1}/{2} cards · meta 80%)':
        '  KR1 — Completion Rate: {0}% ({1}/{2} cards · target 80%)',
    '  KR2 — Velocidade (ultima Sprint): {0} cards':
        '  KR2 — Velocity (last Sprint): {0} cards',
    '  KR3 — Consistencia: {0}/{1} eventos documentados ({2} Sprints x {3})':
        '  KR3 — Consistency: {0}/{1} events documented ({2} Sprints x {3})',
    '  KR4 — Alavancagem IA: {0}/{1} tarefas com [IA] entregues ({2} Sprints x 5)':
        '  KR4 — AI Leverage: {0}/{1} tasks marked [AI] delivered ({2} Sprints x 5)',
    '  Sprint {0}: (nao iniciada)':
        '  Sprint {0}: (not started)',
    '  Sprint {0}: KR1 {1}%  KR2 {2} cards  KR3 {3}/{4}  KR4 {5}/5':
        '  Sprint {0}: KR1 {1}%  KR2 {2} cards  KR3 {3}/{4}  KR4 {5}/5',
    '  [OK] Card criado':
        '  [OK] Card created',
    '(nao preenchido em .env)':
        '(not filled in .env)',
    'AGILE TOGETHER — DADOS PARA APRESENTACAO FINAL':
        'AGILE TOGETHER — DATA FOR THE FINAL PRESENTATION',
    'BACKLOG NAO INICIADO ({0} cards no Product Backlog):':
        'BACKLOG NOT STARTED ({0} cards in the Product Backlog):',
    'DURACAO DO CURSO: {0} Sprint{1} (concluidas: {2})':
        'COURSE LENGTH: {0} Sprint{1} (completed: {2})',
    'ENTREGAS DO PRODUTO ({0} cards concluidos):':
        'PRODUCT DELIVERABLES ({0} completed cards):',
    'EVENTOS SCRUM REALIZADOS: {0} de {1}':
        'SCRUM EVENTS HELD: {0} of {1}',
    'EVOLUCAO POR SPRINT:':
        'PROGRESS BY SPRINT:',
    'Extraindo dados do projeto para a apresentacao final ({0} Sprint{1})...':
        'Extracting project data for the final presentation ({0} Sprint{1})...',
    'ITENS NAO CONCLUIDOS ({0} no Sprint Backlog):':
        'ITEMS NOT COMPLETED ({0} in the Sprint Backlog):',
    'OBJETIVO: {0}':
        'OBJECTIVE: {0}',
    'OBJETIVO: {0}\n\nDURACAO: {1} Sprints (concluidas: {2})\n\nRESULTADO FINAL\n  KR1: {3}% ({4}/{5} cards · meta 80%)\n  KR2: {6} cards na ultima Sprint\n  KR3: {7}/{8} eventos ({9} x {10})\n  KR4: {11}/{12} tarefas [IA] entregues ({13} x 5)\n\nENTREGAS: {14} cards concluidos.':
        'OBJECTIVE: {0}\n\nLENGTH: {1} Sprints (completed: {2})\n\nFINAL RESULT\n  KR1: {3}% ({4}/{5} cards · target 80%)\n  KR2: {6} cards in the last Sprint\n  KR3: {7}/{8} events ({9} x {10})\n  KR4: {11}/{12} [AI] tasks delivered ({13} x 5)\n\nDELIVERABLES: {14} completed cards.',
    'Pronto! Abra apresentacao_dados.txt e prepare seus slides.':
        'Done! Open apresentacao_dados.txt and prepare your slides.',
    'RESULTADO FINAL DOS 4 KRs (agregado das {0} Sprint{1} concluida{2}):':
        'FINAL RESULT OF THE 4 KRs (aggregated across {0} completed Sprint{1}{2}):',
    'RESUMO DO PROJETO — Agile Together':
        'PROJECT SUMMARY — Agile Together',
    'USE ESTES DADOS NA APRESENTACAO (estrutura sugerida):':
        'USE THIS DATA IN YOUR PRESENTATION (suggested structure):',
    "A resposta nao trouxe nada em RENOMEAR nem em ADICIONAR — pelo visto o backlog esta bom como esta'.":
        'The answer brought nothing under RENAME or ADD — it seems the backlog is fine as it is.',
    'Adicionar ({0})':
        'Add ({0})',
    'O Product Backlog esta vazio — rode o criar_backlog.py antes.':
        'The Product Backlog is empty — run criar_backlog.py first.',
    "Product Backlog revisado. Ordene-o contra a Meta do Produto: o topo e' o que entra na proxima Sprint.":
        'Product Backlog reviewed. Order it against the Product Goal: the top is what goes into the next Sprint.',
    'Revisao do Product Backlog':
        'Product Backlog review',
    'nao encontrei item com o trecho: {0}':
        'could not find an item matching: {0}',
    '\n  Atualizar agora? [S/n] ':
        '\n  Update now? [Y/n] ',
    '\n  Falta o seu PORTFOLIO — a pasta onde o seu projeto vai morar.':
        '\n  Your PORTFOLIO is missing — the folder where your project will live.',
    '\n  Nao achei um portfolio com esse nome. O unico que voce tem e "{0}".':
        '\n  I could not find a portfolio with that name. The only one you have is "{0}".',
    '\n  Nao achei um portfolio com esse nome. Os seus portfolios:':
        '\n  I could not find a portfolio with that name. Your portfolios:',
    "\n  Pronto — o menu abaixo ja e' a versao nova.\n":
        '\n  Done — the menu below is already the new version.\n',
    '\n  Pronto. O seu quadro esta no ProjectAdm e o curso ja sabe qual e.':
        '\n  Done. Your board is in ProjectAdm and the course knows which one it is.',
    '\n(configuracao cancelada — clique no Iniciar de novo quando quiser)':
        '\n(setup cancelled — click Start again whenever you want)',
    '\nAbra o ProjectAdm > seu perfil > API Keys, gere uma chave e cole aqui.':
        '\nOpen ProjectAdm > your profile > API Keys, generate a key and paste it here.',
    '\n[!] Nao consegui concluir a configuracao: {0}':
        '\n[!] I could not finish the setup: {0}',
    '     1. abra https://projectadm.com':
        '     1. open https://projectadm.com',
    '     2. clique em Novo Portfolio (ou Novo Projeto, se for esse o nome do botao)':
        '     2. click New Portfolio (or New Project, if that is what the button says)',
    '     3. de a ele este nome:\n':
        '     3. give it this name:\n',
    '     4. volte aqui e tecle Enter\n':
        '     4. come back here and press Enter\n',
    '    Enter para abrir o menu mesmo assim...':
        '    Press Enter to open the menu anyway...',
    '    Rode o Iniciar de novo — ele continua de onde parou.':
        '    Run Start again — it picks up where it left off.',
    '   (vazio — cole o token e tecle Enter)\n':
        '   (empty — paste the token and press Enter)\n',
    '   Esse token nao foi aceito pelo ProjectAdm. Gere outro e cole de novo.\n':
        '   ProjectAdm did not accept that token. Generate another one and paste it again.\n',
    '   Nao consegui falar com o ProjectAdm ({0}).':
        '   I could not reach ProjectAdm ({0}).',
    '   TOKEN do ProjectAdm = ':
        '   ProjectAdm TOKEN = ',
    '   Verifique a internet e tente de novo.\n':
        '   Check your internet connection and try again.\n',
    '  (leva 10 segundos, e uma vez so):\n':
        '  (takes 10 seconds, and only once):\n',
    '  (nao achei o update.py nesta pasta — atualize pela opcao 0 do menu.)':
        '  (I could not find update.py in this folder — update from option 0 of the menu.)',
    '  (nao consegui criar o portfolio pela API: {0})':
        '  (I could not create the portfolio through the API: {0})',
    '  A atualizacao troca os scripts do curso e PRESERVA o seu .env — o seu':
        '  The update replaces the course scripts and PRESERVES your .env — your',
    '  Ainda nao vejo nenhum portfolio seu nesta conta — confira se salvou.\n':
        '  I still cannot see any portfolio in this account — check that you saved it.\n',
    '  Digite o numero do portfolio do curso (ou Enter para procurar de novo): ':
        '  Type the number of the course portfolio (or Enter to search again): ',
    '  Nao consegui criar pela API nesta conta, entao faca assim':
        '  I could not create it through the API in this account, so do it this way',
    '  O quadro {0} existe, mas esta dentro de um portfolio que o ProjectAdm':
        '  Board {0} exists, but it is inside a portfolio that ProjectAdm',
    '  O seu quadro nao esta acessivel pela API':
        '  Your board is not reachable through the API',
    '  Ok — voce pode atualizar quando quiser pela opcao 0 do menu.\n':
        '  OK — you can update whenever you want from option 0 of the menu.\n',
    '  Quer usar esse mesmo? [Enter = sim / n = eu crio o certo agora] ':
        '  Use that one? [Enter = yes / n = I will create the right one now] ',
    '  SAIU UMA VERSAO NOVA DO CURSO':
        '  A NEW VERSION OF THE COURSE IS OUT',
    '  Voce nunca mais vai precisar digitar isso.\n':
        '  You will never have to type this again.\n',
    '  [Enter] quando o portfolio estiver criado... ':
        '  [Enter] once the portfolio is created... ',
    '  desta vez o portfolio e criado por VOCE, no site, e ele funciona.\n':
        '  this time the portfolio is created by YOU, on the site, and it works.\n',
    '  nao libera para a API — nada feito nele chegaria ao curso. Vamos refazer:':
        '  does not open to the API — nothing done in it would reach the course. Let us redo it:',
    '  portfolio: "{0}"':
        '  portfolio: "{0}"',
    '  portfolio: "{0}" (criado)':
        '  portfolio: "{0}" (created)',
    '  portfolio: "{0}" (encontrado)':
        '  portfolio: "{0}" (found)',
    '  portfolio: "{0}" (ja existia)':
        '  portfolio: "{0}" (already existed)',
    '  quadro: "{0}" (criado)':
        '  board: "{0}" (created)',
    '  quadro: "{0}" (ja existia)':
        '  board: "{0}" (already existed)',
    '  token, o seu quadro e o seu progresso continuam exatamente como estao.':
        '  token, your board and your progress stay exactly as they are.',
    '  {0} — configuracao (so na primeira vez)':
        '  {0} — setup (first time only)',
    '(e a unica coisa que voce precisa digitar neste curso)\n':
        '(and it is the only thing you have to type in this course)\n',
    'Enter para sair...':
        'Press Enter to exit...',
    'O seu projeto no curso {0}. Cada lista responde uma pergunta do 5W2H.':
        'Your project in the {0} course. Each list answers one 5W2H question.',
    'Portfolio do curso {0}. Cada quadro aqui dentro e um projeto seu.':
        'Portfolio for the {0} course. Each board inside it is a project of yours.',
    'Preparando o seu ambiente no ProjectAdm (leva alguns segundos)...':
        'Preparing your environment in ProjectAdm (takes a few seconds)...',
    '[!] menu.py nao encontrado nesta pasta (extraiu o curso direto aqui?).':
        '[!] menu.py not found in this folder (did you extract the course straight into it?).',
    'a sua é {0}; no ar está a {1}':
        'yours is {0}; the version online is {1}',
    'criei o quadro, mas a API nao deixa mexer nele — o portfolio escolhido nao pertence a esta conta. Crie um portfolio pelo site e rode o Iniciar de novo.':
        'I created the board, but the API will not let me touch it — the chosen portfolio does not belong to this account. Create a portfolio on the site and run Start again.',
    '  1. Cole na sua IA          2. Copie a resposta INTEIRA':
        '  1. Paste it into your AI       2. Copy the WHOLE answer',
    '  3. Cole no cartao "{0}" do seu quadro':
        '  3. Paste it into the "{0}" card on your board',
    '  4. Rode este mesmo passo de novo — ele le o quadro e segue.':
        '  4. Run this same step again — it reads the board and moves on.',
    '  Copie o texto acima (nao consegui usar a area de transferencia).':
        '  Copy the text above (I could not use the clipboard).',
    '  Peca a sua IA para responder com esses cabecalhos e cole de novo.\n':
        '  Ask your AI to answer using those headings and paste it again.\n',
    '  [OK] O prompt esta na sua area de transferencia (Ctrl+V para colar).':
        '  [OK] The prompt is on your clipboard (Ctrl+V to paste).',
    'A lista "{0}" tem outros cartoes seus — deixei como esta.':
        'The "{0}" list has other cards of yours — I left it as it is.',
    'A resposta no cartao nao traz: {0}':
        'The answer in the card does not include: {0}',
    'Caixa de entrada limpa — pronta para a proxima resposta.':
        'Inbox cleared — ready for the next answer.',
    'Cartao "{0}" agora e o primeiro da lista "{1}".':
        'Card "{0}" is now the first in the "{1}" list.',
    'Cartao "{0}" criado no topo da lista "{1}".':
        'Card "{0}" created at the top of the "{1}" list.',
    'Cole AQUI a resposta da sua IA':
        "Paste your AI's answer HERE",
    "Cole AQUI a resposta da sua IA e rode o passo de novo.\n\nO script le este cartao, leva o resultado para o quadro e limpa o caminho.\nPode colar uma resposta por vez — a ultima e' a que vale.":
        "Paste your AI's answer HERE and run the step again.\n\nThe script reads this card, takes the result to your board and clears the way.\nYou can paste one answer at a time — the last one is the one that counts.",
    'Lista "{0}" aposentada (o cartao agora vive na Referencia).':
        'List "{0}" retired (the card now lives in Reference).',
    '\n Marcar esses {0} card(s) como concluido=true agora? (datas de conclusao existentes sao preservadas) [s/N]':
        '\n Mark these {0} card(s) as completed=true now? (existing completion dates are preserved) [y/N]',
    '\n Sincronizando {0} eventos Scrum ({1} Sprint(s) x {2} = 1 Planning + {3} Daily + Review + Retro)...':
        '\n Syncing {0} Scrum events ({1} Sprint(s) x {2} = 1 Planning + {3} Daily + Review + Retro)...',
    '\nCriando lista Daily Scrum...':
        '\nCreating Daily Scrum list...',
    '\nCriando lista Eventos Scrum...':
        '\nCreating Scrum Events list...',
    '\nCriando lista Referencia...':
        '\nCreating Reference list...',
    '\nPopulando lista Referencia com {0} cards de playbook...':
        '\nFilling the Reference list with {0} playbook cards...',
    '\nPreparando a Caixa de entrada...':
        '\nPreparing the Inbox...',
    '\nPronto! Quadro configurado e .env atualizado.':
        '\nDone! Board configured and .env updated.',
    '\nSalvando IDs no .env...':
        '\nSaving IDs to .env...',
    "\nVerificando saude da lista 'Concluido' (status concluido=true)...":
        "\nChecking the health of the 'Completed' list (status completed=true)...",
    '     [AVISO] nao removeu duplicata de {0}: {1}':
        '     [WARNING] did not remove duplicate of {0}: {1}',
    '     [removida duplicata] {0}':
        '     [duplicate removed] {0}',
    '    ... e mais {0}':
        '    ... and {0} more',
    '    Se reduziu a cadencia de proposito, apague-os manualmente no ProjectAdm; caso contrario, aumente DAILIES_POR_SPRINT no .env.':
        '    If you reduced the cadence on purpose, delete them manually in ProjectAdm; otherwise, increase DAILIES_POR_SPRINT in .env.',
    '   este passo 1 de novo)\n':
        '   this step 1 again)\n',
    "  (um nome com pelo menos 3 letras — da' para mudar depois: e' so' rodar":
        '  (a name with at least 3 letters — you can change it later: just run',
    "  (uma frase, por favor — o backlog inteiro e' ordenado contra ela)":
        '  (one sentence, please — the whole backlog is ordered against it)',
    "  ATENCAO: {0} card(s) na lista 'Concluido' SEM status concluido=true (provavelmente arrastados na UI):":
        "  WARNING: {0} card(s) in the 'Completed' list WITHOUT status completed=true (probably dragged in the UI):",
    '  Cartao "{0}" pronto na lista "{1}".':
        '  Card "{0}" ready in the "{1}" list.',
    '  Ele nasceu com o nome do curso porque nos ainda nao sabiamos o seu.':
        '  It was born with the course name because we did not know yours yet.',
    '  Exemplo: "Envelhecer bem", "Meu podcast", "App de habitos".\n':
        '  Example: "Ageing well", "My podcast", "Habit-tracking app".\n',
    '  Exemplo: "Lancar a primeira versao do meu podcast"\n':
        '  Example: "Launch the first version of my podcast"\n',
    '  Guardado. (Rode este passo 1 de novo quando quiser mudar.)':
        '  Saved. (Run this step 1 again whenever you want to change it.)',
    '  Guardado: "{0}".':
        '  Saved: "{0}".',
    '  Ja existe (ID={0})':
        '  Already exists (ID={0})',
    '  Lista criada (ID={0})':
        '  List created (ID={0})',
    '  Nada alterado. (Os KRs continuarao ignorando esses cards ate que tenham status concluido=true.)':
        '  Nothing changed. (The KRs will keep ignoring those cards until they have status completed=true.)',
    '  O SEU OBJETIVO — a primeira decisao do curso':
        '  YOUR OBJECTIVE — the first decision of the course',
    '  O SEU PROJETO — o nome que o seu quadro vai levar':
        '  YOUR PROJECT — the name your board will carry',
    "  O quadro que o Iniciar criou E' o seu projeto (ou o seu produto).":
        '  The board that Start created IS your project (or your product).',
    '  O seu quadro passa a se chamar "{0}".':
        '  Your board is now called "{0}".',
    '  OBJETIVO = ':
        "  OBJECTIVE = ",
    "  OK — todos os cards de 'Concluido' tem status concluido=true.":
        "  OK — every card in 'Completed' has status completed=true.",
    '  PROJETO = ':
        "  PROJECT = ",
    '  Referencia reordenada: a Caixa de entrada e o primeiro cartao.':
        '  Reference reordered: the Inbox is the first card.',
    '  Resumo: {0} criados, {1} atualizados, {2} movidos, {3} duplicata(s), {4} orfao(s) removido(s).':
        '  Summary: {0} created, {1} updated, {2} moved, {3} duplicate(s), {4} orphan(s) removed.',
    '  Resumo: {0} criados, {1} ja existiam, {2} duplicata(s) removida(s), {3} migrado(s).':
        '  Summary: {0} created, {1} already existed, {2} duplicate(s) removed, {3} migrated.',
    '  SEM numero — o numero vive nos Key Results, que voce define depois.':
        '  NO number — the number lives in the Key Results, which you define later.',
    '  Uma frase: onde voce quer chegar neste ciclo de Sprints.':
        '  One sentence: where you want to get to in this cycle of Sprints.',
    '  [AVISO] nao removeu duplicata de {0}: {1}':
        '  [WARNING] did not remove duplicate of {0}: {1}',
    '  [AVISO] nao removeu orfao {0}: {1}':
        '  [WARNING] did not remove orphan {0}: {1}',
    '  [AVISO] {0} Daily(s) ACIMA da cadencia atual (DAILIES_POR_SPRINT={1}) continuam no board (nao apagados):':
        '  [WARNING] {0} Daily(s) ABOVE the current cadence (DAILIES_POR_SPRINT={1}) are still on the board (not deleted):',
    '  [Enter] mantem, ou digite um novo nome: ':
        "  [Enter] keeps it, or type a new name: ",
    '  [Enter] mantem, ou digite um novo objetivo: ':
        "  [Enter] keeps it, or type a new objective: ",
    '  [OK] {0}/{1} card(s) marcado(s) como concluido.':
        '  [OK] {0}/{1} card(s) marked as completed.',
    '  [atualizado] {0}':
        '  [updated] {0}',
    '  [aviso] nao consegui renomear o quadro ({0}) - segue o jogo.':
        '  [warning] I could not rename the board ({0}) - moving on.',
    '  [aviso] nao consegui reordenar a Referencia ({0}) - segue o jogo.':
        '  [warning] I could not reorder Reference ({0}) - moving on.',
    '  [criado] {0}':
        '  [created] {0}',
    '  [duplicata removida de Eventos Scrum] {0}':
        '  [duplicate removed from Scrum Events] {0}',
    '  [migrado] {0}  ->  {1}':
        '  [migrated] {0}  ->  {1}',
    '  [movido+atualizado] {0} (estava fora da Referencia)':
        '  [moved+updated] {0} (it was outside Reference)',
    '  [orfao removido] {0}':
        '  [orphan removed] {0}',
    '  cartao "{0}" -> roda o mesmo passo de novo.':
        '  card "{0}" -> run the same step again.',
    '  lista criada: {0}':
        '  list created: {0}',
    '  o passo entrega o prompt -> voce cola na sua IA -> cola a resposta no':
        '  the step hands you the prompt -> you paste it into your AI -> you paste the answer into the',
    'Como funciona daqui em diante:':
        'How it works from here on:',
    'Configurando listas...':
        'Configuring lists...',
    "ERRO: feche o menu e abra o Iniciar — e' ele que pede o seu token\n      e cria o seu quadro. Depois volte a este passo 1.":
        'ERROR: close the menu and open Start — it is Start that asks for your token\n      and creates your board. Then come back to this step 1.',
    'Hoje: {0}':
        "Today: {0}",
    'Proximo passo do menu: 2. Meta do Produto + Product Backlog.':
        'Next step in the menu: 2. Product Goal + Product Backlog.',
    '\n  (Copia de seguranca do prompt em: {0})':
        '\n  (Backup copy of the prompt in: {0})',
    '\n  Quando a IA responder:':
        '\n  When the AI answers:',
    '\n(consolidacao cancelada — nada foi alterado no seu quadro.)':
        '\n(consolidation cancelled — nothing was changed on your board.)',
    '       (selecione tudo e cole por cima);':
        '       (select everything and paste over it);',
    '       os cabecalhos (META DO PRODUTO:, HISTORIAS: ...);':
        '       the headings (PRODUCT GOAL:, STORIES: ...);',
    '       ponto onde VOCE decide;':
        '       the point where YOU decide;',
    "    1. leia a COMPARACAO (concordam · divergem · falta nas duas) — e' o":
        '    1. read the COMPARISON (they agree · they differ · missing in both) — that is',
    '    1. rode um passo (ex.: 2. Meta do Produto) e pegue o prompt;':
        '    1. run a step (e.g. 2. Product Goal) and take the prompt;',
    '    2. cole o MESMO prompt em duas IAs diferentes;':
        '    2. paste the SAME prompt into two different AIs;',
    '    2. copie a resposta INTEIRA dela;':
        '    2. copy its WHOLE answer;',
    '    3. cole as DUAS respostas no cartao, uma embaixo da outra, SEM apagar':
        '    3. paste BOTH answers into the card, one below the other, WITHOUT deleting',
    '    3. cole no cartao "{0}" NO LUGAR das duas de antes':
        '    3. paste it into the "{0}" card IN PLACE OF the two previous ones',
    '    4. escolha a tecla C de novo.':
        '    4. press the C key again.',
    '    4. rode o passo normal — ele le a versao consolidada e segue.':
        '    4. run the normal step — it reads the consolidated version and moves on.',
    '  Abra o arquivo e copie TUDO (Ctrl+A, Ctrl+C): {0}':
        '  Open the file and copy EVERYTHING (Ctrl+A, Ctrl+C): {0}',
    '  Blocos presentes: {0}.':
        '  Blocks present: {0}.',
    "  Cada um aparece uma vez so' — entao nao ha' duas respostas concorrentes.\n":
        '  Each one appears only once — so there are no two competing answers.\n',
    "  Cole numa IA (Ctrl+V) — pode ser ate' uma terceira, para desempatar.":
        '  Paste it into an AI (Ctrl+V) — it can even be a third one, to break the tie.',
    '  Como colar duas respostas no cartao "0. Caixa de entrada":':
        '  How to paste two answers into the "0. Inbox" card:',
    "  Nao ha' o que comparar ainda.\n":
        '  There is nothing to compare yet.\n',
    '  Os cabecalhos que eu procuro sao os que o proprio passo pede (ex.: HISTORIAS:).\n':
        '  The headings I look for are the ones the step itself asks for (e.g. STORIES:).\n',
    '--- Resposta {0} ---':
        '--- Answer {0} ---',
    "A sua Caixa de entrada esta' vazia.":
        'Your Inbox is empty.',
    'Consolidar as respostas de duas IAs':
        'Consolidate the answers of two AIs',
    'Encontrei resposta na caixa, mas nenhuma para COMPARAR ainda.':
        'I found an answer in the Inbox, but none to COMPARE it with yet.',
    "O prompt de consolidacao JA' ESTA' na sua area de transferencia.":
        'The consolidation prompt IS ALREADY on your clipboard.',
    "O prompt de consolidacao esta' pronto.":
        'The consolidation prompt is ready.',
    'encontrei bloco(s) com mais de uma resposta: {0}':
        'I found block(s) with more than one answer: {0}',
    "nao reconheci nenhum cabecalho do curso no que esta' colado la'.":
        'I did not recognise any course heading in what is pasted there.',
    "{0} — so' UMA das respostas trouxe este bloco (mantenha-o na versao final):\n \n {1}\n":
        '{0} — only ONE of the answers brought this block (keep it in the final version):\n \n {1}\n',
    '\n\nCriterios de aceitacao:\n{0}':
        '\n\nAcceptance criteria:\n{0}',
    "  Ela esta' INTEIRA na descricao do cartao: nada se perdeu.":
        '  It is COMPLETE in the card description: nothing was lost.',
    "  Mas vale reescreve-la: pelo Guia do Scrum a Meta do Produto e' o":
        '  But it is worth rewriting: by the Scrum Guide the Product Goal is the',
    '  compromisso do Product Backlog — uma frase que se decora, nao um':
        '  commitment for the Product Backlog — one sentence you can memorise, not a',
    '  paragrafo. Se ela junta tres metas com virgulas, provavelmente sao':
        '  paragraph. If it joins three goals with commas, they are probably',
    '  tres metas — e o ciclo cumpre UMA de cada vez.\n':
        '  three goals — and the cycle delivers ONE at a time.\n',
    'A secao HISTORIAS veio vazia. Peca a lista de novo a sua IA.':
        'The STORIES section came back empty. Ask your AI for the list again.',
    'A sua IA nao escreveu a META DO PRODUTO — o backlog entra sem ela.':
        'Your AI did not write the PRODUCT GOAL — the backlog goes in without it.',
    "ERRO: escolha o passo 1 do menu (Configurar o quadro) antes deste.\n      E' ele que pergunta o seu OBJETIVO — a primeira acao pratica do\n      curso (P1). A direcao e' sua, e o backlog inteiro e' ordenado\n      contra ela. Voce nao precisa abrir arquivo nenhum.":
        'ERROR: choose step 1 of the menu (Configure the board) before this one.\n      It is step 1 that asks for your OBJECTIVE — the first practical action\n      of the course (P1). The direction is yours, and the whole backlog is\n      ordered against it. You do not need to open any file.',
    'META DO PRODUTO: {0}':
        'PRODUCT GOAL: {0}',
    'Meta do Produto + Product Backlog':
        'Product Goal + Product Backlog',
    'Prioridade: {0} | Story Points: {1}':
        'Priority: {0} | Story Points: {1}',
    'Product Backlog — {0} itens':
        'Product Backlog — {0} items',
    'a sua META DO PRODUTO tem {0} caracteres — o TITULO do cartao mostra os primeiros {1}.':
        'your PRODUCT GOAL has {0} characters — the card TITLE shows the first {1}.',
    'atualizada  {0}':
        'updated     {0}',
    'atualizado  [{0}] {1}':
        'updated     [{0}] {1}',
    'criada      {0}':
        'created     {0}',
    'criado      [{0}] {1}':
        'created     [{0}] {1}',
    '{0} itens no Product Backlog. Proximo passo: a Sprint Planning (sprint_planning.py).':
        '{0} items in the Product Backlog. Next step: the Sprint Planning (sprint_planning.py).',
    '\n  Em qual lista (numero): ':
        '\n  In which list (number): ',
    '  Descricao (Enter para deixar vazia): ':
        '  Description (Enter to leave it empty): ',
    'Cartao criado em {0}.':
        'Card created in {0}.',
    'Criar um cartao':
        'Create a card',
    'Lista invalida — nada foi criado.':
        'Invalid list — nothing was created.',
    'Sem titulo — nada foi criado.':
        'No title — nothing was created.',
    '     Concluiu? Arraste para Concluido no ProjectAdm. Travou? Registre um impedimento (registrar_impedimento.py).':
        '     Finished it? Drag it to Completed in ProjectAdm. Stuck? Log an impediment (registrar_impedimento.py).',
    'Daily Scrum — Sprint {0}':
        'Daily Scrum — Sprint {0}',
    'IMPEDIMENTO (Sprint {0}): {1}':
        'IMPEDIMENT (Sprint {0}): {1}',
    "Impedimento registrado em Eventos Scrum — resolver e' prioridade do dia.":
        'Impediment logged in Scrum Events — clearing it is the priority of the day.',
    'Levantado na Daily de {0}.\n\n{1}':
        'Raised in the Daily on {0}.\n\n{1}',
    'O Sprint Backlog esta vazio — rode o sprint_planning.py antes.':
        'The Sprint Backlog is empty — run sprint_planning.py first.',
    "Todos os Dailies desta Sprint ja' foram concluidos (cadencia = {0} por Sprint).":
        'Every Daily in this Sprint has already been held (cadence = {0} per Sprint).',
    'foco de hoje  {0}':
        "today's focus  {0}",
    'nao encontrei no Sprint Backlog: {0}':
        'could not find it in the Sprint Backlog: {0}',
    '{0} item(ns) de ontem ainda no Daily Scrum:':
        '{0} item(s) from yesterday still in the Daily Scrum:',
    '{0} item(ns) no foco de hoje. Durante o dia, arraste para Concluido o que terminar.':
        '{0} item(s) in focus today. During the day, drag to Completed whatever you finish.',
    '\n  APAGAR_ORFAOS=True -> apagando...':
        '\n  APAGAR_ORFAOS=True -> deleting...',
    '\n  Estes podem ser DUPLICATAS com titulo antigo.':
        '\n  These may be DUPLICATES with an old title.',
    '\n  Nenhum card orfao — Referencia esta limpa.':
        '\n  No orphan cards — Reference is clean.',
    '\n--- Diagnostico card a card ---\n':
        '\n--- Card-by-card diagnosis ---\n',
    '\n--- {0} card(s) orfao(s) no board (NAO em referencia_cards.py) ---':
        '\n--- {0} orphan card(s) on the board (NOT in referencia_cards.py) ---',
    '\n[Board]  {0} cards na lista Referencia':
        '\n[Board]  {0} cards in the Reference list',
    '              → board tem {0} chars; codigo tem {1} chars':
        '              → the board has {0} chars; the code has {1} chars',
    '              → configurar_board.py vai ATUALIZAR este card':
        '              → configurar_board.py will UPDATE this card',
    '              → configurar_board.py vai CRIAR este card':
        '              → configurar_board.py will CREATE this card',
    '  OU rode configurar_board.py (que tambem remove orfaos).':
        '  OR run configurar_board.py (which also removes orphans).',
    '  Para APAGA-los: mude APAGAR_ORFAOS=True no topo e rode de novo,':
        '  To DELETE them: set APAGAR_ORFAOS=True at the top and run it again,',
    '  [ORFAO]     id={0}  {1}':
        '  [ORPHAN]    id={0}  {1}',
    '  {0}/{1} orfao(s) apagado(s).':
        '  {0}/{1} orphan(s) deleted.',
    'Diagnostico + limpeza concluidos.':
        'Diagnosis + cleanup complete.',
    'Diagnostico concluido. Nada foi modificado.':
        'Diagnosis complete. Nothing was changed.',
    'ERRO: LIST_REFERENCIA nao configurado no .env. Rode configurar_board.py primeiro.':
        'ERROR: LIST_REFERENCIA not configured in .env. Run configurar_board.py first.',
    'Lista Referencia ID = {0}':
        'Reference list ID = {0}',
    'Para sincronizar conteudo (criar/atualizar): rode configurar_board.py':
        'To sync content (create/update): run configurar_board.py',
    '[Codigo] {0} cards esperados em referencia_cards.py':
        '[Code] {0} cards expected in referencia_cards.py',
    'ERRO: .env nao encontrado em {0}':
        'ERROR: .env not found in {0}',
    'ERRO: arquivo .env nao encontrado em {0}':
        'ERROR: .env file not found in {0}',
    '\n  Arquivo nao encontrado: {0}':
        '\n  File not found: {0}',
    "\n  Ate' a proxima.\n":
        '\n  See you next time.\n',
    '\n  Tecla fora da lista.':
        '\n  Key not in the list.',
    '\n  [Enter] para voltar ao menu ':
        '\n  [Enter] to go back to the menu ',
    '  AGILE TOGETHER — powered by AI':
        '  AGILE TOGETHER — powered by AI',
    '  Numero do passo (ou C para consolidar duas IAs): ':
        '  Step number (or C to consolidate two AIs): ',
    ' (usa a sua IA)':
        " (uses your AI)",
    'Apresentacao final e licoes aprendidas':
        'Final presentation and lessons learned',
    'Configurar o quadro (uma vez, no comeco)':
        'Configure the board (once, at the start)',
    'Consolidar as respostas de DUAS IAs (cole as 2 na Caixa de entrada)':
        'Consolidate the answers of TWO AIs (paste both in the Inbox)',
    'Criar um cartao avulso':
        'Create a standalone card',
    'Daily Scrum':
        'Daily Scrum',
    'Decompor um item em tarefas':
        'Break an item down into tasks',
    'OKR Check-in — ver os meus 4 KRs':
        'OKR Check-in — see my 4 KRs',
    'Objetivo: {0}':
        "Objective: {0}",
    'Refinar o backlog (prioridade, pontos, aceitacao)':
        'Refine the backlog (priority, points, acceptance)',
    'Registrar um impedimento':
        'Log an impediment',
    'Revisar o backlog (reescrever e acrescentar itens)':
        'Review the backlog (rewrite and add items)',
    'Sair':
        "Exit",
    'Sprint Planning':
        'Sprint Planning',
    'Sprint Retrospective (fecha a Sprint)':
        'Sprint Retrospective (closes the Sprint)',
    'Sprint Review':
        'Sprint Review',
    'Sprint {0} de {1}':
        "Sprint {0} of {1}",
    '  [AVISO] nao consegui apagar a lista {0}: {1}':
        '  [WARNING] I could not delete list {0}: {1}',
    '  [AVISO] nao consegui apagar o checklist {0}: {1}':
        '  [WARNING] I could not delete checklist {0}: {1}',
    '  [AVISO] nao consegui apagar o item {0}: {1}':
        '  [WARNING] I could not delete item {0}: {1}',
    '  [AVISO] nao consegui atribuir o usuario {0} ao cartao {1}: {2}':
        '  [WARNING] I could not assign user {0} to card {1}: {2}',
    '  [AVISO] nao consegui criar dependencia {0}->{1}: {2}':
        '  [WARNING] I could not create dependency {0}->{1}: {2}',
    '  [aviso] não consegui atualizar o cartão {0}: {1}':
        '  [warning] I could not update card {0}: {1}',
    '  [aviso] não consegui criar o cartão "{0}": {1}':
        '  [warning] I could not create the card "{0}": {1}',
    '  [rede] {0} — tento de novo em {1}s (tentativa {2} de {3}; o passo continua sozinho).':
        '  [network] {0} — trying again in {1}s (attempt {2} of {3}; the step carries on by itself).',
    'Sem resposta do ProjectAdm apos {0} tentativas ({1} {2}). Verifique a internet/VPN e rode o mesmo passo de novo — ele e idempotente e continua de onde parou. Ultimo erro: {3}':
        'No answer from ProjectAdm after {0} attempts ({1} {2}). Check your internet/VPN and run the same step again — it is idempotent and picks up where it left off. Last error: {3}',
    'a conexão com o ProjectAdm oscilou':
        'the connection to ProjectAdm wobbled',
    'o ProjectAdm respondeu com um erro temporário ({0})':
        'ProjectAdm answered with a temporary error ({0})',
    'A secao REFINAMENTO veio vazia. Peca de novo a sua IA.':
        'The REFINEMENT section came back empty. Ask your AI again.',
    'Refinamento do Product Backlog':
        'Product Backlog refinement',
    '{0} item(ns) refinado(s). Item sem criterio de aceitacao nao esta pronto para entrar numa Sprint.':
        '{0} item(s) refined. An item without acceptance criteria is not ready to enter a Sprint.',
    '\n  Numero do item (Enter cancela): ':
        '\n  Item number (Enter cancels): ',
    'A secao TAREFAS veio vazia. Peca a lista de novo a sua IA.':
        'The TASKS section came back empty. Ask your AI for the list again.',
    'Checklist "{0}" criada no cartao.':
        'Checklist "{0}" created on the card.',
    'Nada escolhido — nada foi alterado.':
        'Nothing chosen — nothing was changed.',
    "Nao ha' item para refinar — rode o criar_backlog.py antes.":
        'There is no item to refine — run criar_backlog.py first.',
    'Qual item voce quer decompor em tarefas?':
        'Which item do you want to break down into tasks?',
    "Todas as tarefas propostas ja' estavam na checklist.":
        'All the proposed tasks were already in the checklist.',
    '{0} tarefa(s) adicionada(s) ao item. Uma tarefa que nao cabe num dia ainda esta grande demais.':
        '{0} task(s) added to the item. A task that does not fit in one day is still too big.',
    '  Contexto: causa, impacto na Meta da Sprint, quem pode ajudar\n  > ':
        '  Context: cause, impact on the Sprint Goal, who can help\n  > ',
    '  O que esta travando (uma linha): ':
        '  What is blocking you (one line): ',
    'IMPEDIMENTO [{0}]: {1}':
        'IMPEDIMENT [{0}]: {1}',
    'Impedimento registrado em Eventos Scrum.':
        'Impediment logged in Scrum Events.',
    "Leve-o para a proxima Daily: impedimento visivel e' impedimento que anda.":
        'Take it to the next Daily: a visible impediment is an impediment that moves.',
    'Registrar impedimento — Sprint {0}':
        'Log an impediment — Sprint {0}',
    'Sem descricao — nada foi registrado.':
        'No description — nothing was logged.',
    'Tipo invalido — nada foi registrado.':
        'Invalid type — nothing was logged.',
    '\n   Li isto da área de transferência:':
        '\n   I read this from the clipboard:',
    '\n   Uso este texto? [S/n] ':
        '\n   Use this text? [Y/n] ',
    '     • já copiou o texto?  tecle  V  e Enter — eu leio da área de transferência':
        '     • already copied the text?  press  V  and Enter — I will read the clipboard',
    '     • prefere colar aqui? cole (Ctrl+V) e, numa linha NOVA, digite  .  e Enter':
        '     • prefer to paste here? paste (Ctrl+V) and, on a NEW line, type  .  and Enter',
    '     • só Enter (linha vazia) = seguir sem texto':
        '     • just Enter (empty line) = carry on without text',
    "   (não achei texto na área de transferência — pode colar aqui mesmo, terminando com um '.' sozinho numa linha)\n":
        "   (I found no text on the clipboard — you can paste right here, ending with a '.' alone on a line)\n",
    '   Como responder (o texto pode ter QUANTAS linhas você quiser):':
        '   How to answer (the text can have AS MANY lines as you want):',
    "   Ok — cole aqui então (termine com um '.' sozinho numa linha).\n":
        "   OK — paste it here then (end with a '.' alone on a line).\n",
    'Pronto!':
        'Done!',
    '[AVISO]':
        '[WARNING]',
    '[s/N]':
        '[y/N]',
    '\n  O seu Product Backlog tem exatamente estes itens:':
        '\n  Your Product Backlog has exactly these items:',
    '\nPeca a sua IA para escolher SOMENTE entre os titulos acima, copiados como estao, e cole a resposta de novo na Caixa de entrada.':
        '\nAsk your AI to choose ONLY from the titles above, copied exactly as they are, and paste the answer into the Inbox again.',
    'A resposta nao trouxe a META DA SPRINT. Peca de novo a sua IA.':
        'The answer did not bring the SPRINT GOAL. Ask your AI again.',
    'A resposta nao trouxe nenhum item em SELECIONADOS.':
        'The answer did not bring any item under SELECTED.',
    "Evento 'Sprint Planning' nao encontrado — o intervalo da Sprint NAO foi gravado e o Check-in vai falhar. Rode o configurar_board.py e tente de novo.":
        "Event 'Sprint Planning' not found — the Sprint window was NOT saved and the Check-in will fail. Run configurar_board.py and try again.",
    'Inicio da Sprint {0} gravado no evento: {1}':
        'Start of Sprint {0} saved on the event: {1}',
    'Item inexistente no Product Backlog — NADA foi criado':
        'Item does not exist in the Product Backlog — NOTHING was created',
    'Sprint Planning — Sprint {0} de {1}':
        'Sprint Planning — Sprint {0} of {1}',
    'Sprint {0} planejada: {1} itens no Sprint Backlog. Amanha, a Daily (daily_scrum.py).':
        'Sprint {0} planned: {1} items in the Sprint Backlog. Tomorrow, the Daily (daily_scrum.py).',
    'nao existe no quadro: {0}':
        'does not exist on the board: {0}',
    'A secao ACOES veio vazia — a Retrospectiva precisa de pelo menos uma acao concreta para a proxima Sprint.':
        'The ACTIONS section came back empty — the Retrospective needs at least one concrete action for the next Sprint.',
    'Acao acordada na Retrospectiva da Sprint {0}.':
        'Action agreed in the Retrospective of Sprint {0}.',
    'Esta foi a ultima Sprint do curso (de {0}).':
        'That was the last Sprint of the course (of {0}).',
    'RETROSPECTIVE Sprint {0}':
        'RETROSPECTIVE Sprint {0}',
    'Retrospectiva registrada com {0} acao(oes)':
        'Retrospective recorded with {0} action(s)',
    'SPRINT_ATUAL: {0} -> {1}':
        'SPRINT_ATUAL: {0} -> {1}',
    'Sprint Retrospective — Sprint {0} de {1}':
        'Sprint Retrospective — Sprint {0} of {1}',
    'Sprint {0} fechada. {1}':
        'Sprint {0} closed. {1}',
    'no backlog  [Melhoria] {0}':
        'to the backlog  [Improvement] {0}',
    'Concluido nesta Sprint: {0} item(ns)':
        'Completed in this Sprint: {0} item(s)',
    'Nao concluido: {0} item(ns)':
        'Not completed: {0} item(s)',
    'RESUMO Sprint {0} - Review':
        'SUMMARY Sprint {0} - Review',
    'Resumo da Review gravado em Eventos Scrum':
        'Review summary saved in Scrum Events',
    'Review da Sprint {0} concluida. Agora a Retrospectiva (sprint_retrospective.py) fecha a Sprint.':
        'Review of Sprint {0} complete. Now the Retrospective (sprint_retrospective.py) closes the Sprint.',
    'Sprint Review — Sprint {0} de {1}':
        'Sprint Review — Sprint {0} of {1}',
    '\nConfigurando o board automaticamente ({0}) — voce nao precisa mais rodar isso a mao...\n':
        '\nConfiguring the board automatically ({0}) — you no longer have to run this by hand...\n',
    '  (nao achei o script de configurar o board nesta pasta; se preciso, rode o card 01 a mao.)':
        '  (I could not find the board-configuration script in this folder; if needed, run card 01 by hand.)',
    '  .env: preservado':
        '  .env: preserved',
    '  O passo acima nao rodou ate o fim — e o normal se voce ainda nao fez o':
        '  The step above did not run to the end — that is normal if you have not done',
    '  Passo 1 estiver feito, este passo passa a rodar sozinho a cada atualizacao.':
        '  Step 1 is done, this step starts running by itself on every update.',
    '  Passo 1: ele precisa do seu projeto no .env. Siga pelo menu; quando o':
        '  Step 1 yet: it needs your project in the .env. Follow the menu; once',
    '  atualizados: {0} arquivo(s)':
        '  updated: {0} file(s)',
    '  backup dos .py antigos em: {0}/':
        '  backup of the old .py files in: {0}/',
    '  baixado: {0} KB':
        '  downloaded: {0} KB',
    '  baixando a versao mais nova de {0} ...':
        '  downloading the newest version from {0} ...',
    '  nao consegui baixar automaticamente ({0}); vou procurar o .zip na pasta Downloads.':
        '  I could not download it automatically ({0}); I will look for the .zip in the Downloads folder.',
    '  nao consegui rodar o {0} automaticamente ({1}); rode o card 01 a mao.':
        '  I could not run {0} automatically ({1}); run card 01 by hand.',
    '  o arquivo baixado nao parece o pacote do curso — usando a pasta Downloads.':
        '  the downloaded file does not look like the course package — using the Downloads folder.',
    '  pacote: {0}':
        '  package: {0}',
    ' (sem novas chaves)':
        ' (no new keys)',
    '; novas chaves: {0}':
        '; new keys: {0}',
    'A ATUALIZACAO TERMINOU (os scripts novos ja estao aqui).':
        'THE UPDATE IS FINISHED (the new scripts are already here).',
    'Atualizacao concluida.':
        'Update complete.',
    'Atualizar — {0}':
        'Update — {0}',
    'Board configurado. Tudo pronto.':
        'Board configured. All set.',
    'Este pacote ainda nao tem atualizacao automatica (curso em pre-lancamento):\n  ele foi entregue sem link de download.\n  Voce ja esta com a versao que baixou — quando sair uma nova, o e-mail do\n  curso avisa. Basta salvar o .zip novo na pasta Downloads e rodar isto aqui:\n  o seu .env (token, quadro, progresso) e sempre preservado.':
        'This package does not have automatic updates yet (course in pre-launch):\n  it was delivered without a download link.\n  You already have the version you downloaded — when a new one comes out, the\n  course email tells you. Just save the new .zip in your Downloads folder and run this:\n  your .env (token, board, progress) is always preserved.',
    'Nao consegui baixar a versao nova nem achar o .zip na pasta Downloads.\n   Baixe por este link e salve em Downloads: {0}\n   Depois rode a atualizacao de novo.':
        'I could not download the new version nor find the .zip in the Downloads folder.\n   Download it from this link and save it in Downloads: {0}\n   Then run the update again.',
    'O QUE MUDOU nesta versao ({0}):':
        'WHAT CHANGED in this version ({0}):',
    'curso Together':
        'Together course',
    "\n Mover esses {0} cartao(oes) para a lista 'Concluido' do Agile Together agora? [s/N]":
        "\n Move these {0} card(s) to the Agile Together 'Completed' list now? [y/N]",
    '\nKR1 — Taxa de Conclusao: {0} {1}%':
        '\nKR1 — Completion Rate: {0} {1}%',
    '\nKR2 — Velocidade: {0} cards concluidos na Sprint {1}':
        '\nKR2 — Velocity: {0} cards completed in Sprint {1}',
    '\nKR3 — Consistencia do Scrum: {0} {1}/{2} eventos':
        '\nKR3 — Scrum Consistency: {0} {1}/{2} events',
    '\nKR4 — Alavancagem de IA: {0} {1}/{2} tarefas com [IA]':
        '\nKR4 — AI Leverage: {0} {1}/{2} tasks marked [AI]',
    '\nProximo Check-in: proxima sexta-feira.':
        '\nNext Check-in: next Friday.',
    '      (primeira Sprint — estabelece o baseline; sem comparativo)':
        '      (first Sprint — it sets the baseline; nothing to compare against)',
    '      Sprint {0}: {1}  ->  Sprint {2}: {3}  (delta {4:+d} — {5})':
        '      Sprint {0}: {1}  ->  Sprint {2}: {3}  (delta {4:+d} — {5})',
    '      [n/a] comparacao com Sprint {0} indisponivel: {1}':
        '      [n/a] comparison with Sprint {0} unavailable: {1}',
    '      {0}  |  meta: 80%':
        '      {0}  |  target: 80%',
    '  ... e mais {0}':
        '  ... and {0} more',
    '  ACOES PARA A PROXIMA SPRINT':
        '  ACTIONS FOR THE NEXT SPRINT',
    '  AGILE TOGETHER — Verificacao de KRs (Sprint {0} de {1})':
        '  AGILE TOGETHER — KR check (Sprint {0} of {1})',
    '  Nada movido. Lembre-se: na pratica Scrum, todo item pronto vai para a lista Concluido/Incremento.':
        '  Nothing moved. Remember: in Scrum practice, every finished item goes to the Completed/Increment list.',
    "  ORGANIZACAO — {0} cartao(oes) concluido(s) fora da lista 'Concluido'":
        "  ORGANISATION — {0} completed card(s) outside the 'Completed' list",
    '  Sprint {0} dentro da meta. Prepare a Sprint Planning da proxima semana.':
        "  Sprint {0} is on target. Get ready for next week's Sprint Planning.",
    '  [OK] {0}/{1} movido(s). Datas de conclusao originais preservadas.':
        '  [OK] {0}/{1} moved. Original completion dates preserved.',
    'A Sprint {0} ainda nao teve Sprint Planning. Rode sprint_planning.py para a Sprint {1} antes do OKR Check-in.':
        'Sprint {0} still has not had its Sprint Planning. Run sprint_planning.py for Sprint {1} before the OKR Check-in.',
}
