# Main menu
menu:
  subtitle: 'Terminal Typoefening'
  adaptive_drill: 'Adaptieve Oefening'
  adaptive_drill_desc: 'Fonetische woorden met adaptieve letterontgrendeling'
  code_drill: 'Code-oefening'
  code_drill_desc: 'Oefen met code-syntax typen'
  passage_drill: 'Tekstoefening'
  passage_drill_desc: 'Typ passages uit boeken'
  skill_tree: 'Vaardigheidsboom'
  skill_tree_desc: 'Bekijk voortgangstakken en start oefeningen'
  keyboard: 'Toetsenbord'
  keyboard_desc: 'Verken toetsenbordindeling en toetsstatistieken'
  statistics: 'Statistieken'
  statistics_desc: 'Bekijk je typstatistieken'
  settings: 'Instellingen'
  settings_desc: 'Configureer keydr'
  day_streak: ' | %{days} dagen reeks'
  key_progress: ' Toetsvoortgang %{unlocked}/%{total} (%{mastered} beheerst) | Doel %{target} WPM%{streak}'
  hint_start: 'Start'
  hint_skill_tree: 'Vaardigheidsboom'
  hint_keyboard: 'Toetsenbord'
  hint_stats: 'Statistieken'
  hint_settings: 'Instellingen'
  hint_quit: 'Stoppen'

# Drill screen
drill:
  title: ' Oefening '
  mode_adaptive: 'Adaptief'
  mode_code: 'Code (Ongerangschikt)'
  mode_passage: 'Tekst (Ongerangschikt)'
  focus_char: 'Aandacht: ''%{ch}'''
  focus_bigram: 'Aandacht: "%{bigram}"'
  focus_both: 'Aandacht: ''%{ch}'' + "%{bigram}"'
  header_wpm: 'WPM'
  header_acc: 'Nwk'
  header_err: 'Ftn'
  code_source: ' Codebron '
  passage_source: ' Tekstbron '
  footer: '[ESC] Oefening stoppen  [Backspace] Wissen'
  keys_reenabled: 'Toetsen weer actief na %{ms}ms'
  hint_end: 'Oefening stoppen'
  hint_backspace: 'Wissen'

# Dashboard / drill result
dashboard:
  title: ' Oefening voltooid '
  results: 'Resultaten'
  unranked_note_prefix: '  (Ongerangschikt'
  unranked_note_suffix: ' telt niet mee voor de vaardigheidsboom)'
  speed: '  Snelheid:      '
  accuracy_label: '  Nauwkeurigheid:'
  time_label: '  Tijd:          '
  errors_label: '  Fouten:        '
  correct_detail: '  (%{correct}/%{total} juist)'
  input_blocked: '  Invoer tijdelijk geblokkeerd '
  input_blocked_ms: '(%{ms}ms resterend)'
  hint_continue: 'Doorgaan'
  hint_retry: 'Opnieuw'
  hint_menu: 'Menu'
  hint_stats: 'Statistieken'
  hint_delete: 'Verwijderen'

# Stats sidebar (during drill)
sidebar:
  title: ' Statistieken '
  wpm: 'WPM: '
  target: 'Doel: '
  target_wpm: '%{wpm} WPM'
  accuracy: 'Nauwkeurigheid: '
  progress: 'Voortgang: '
  correct: 'Correct: '
  errors: 'Fouten:  '
  time: 'Tijd: '
  last_drill: ' Vorige oefening '
  vs_avg: '  vs gem: '

# Statistics dashboard
stats:
  title: ' Statistieken '
  empty: 'Nog geen oefeningen voltooid. Begin met typen!'
  tab_dashboard: '[1] Dashboard'
  tab_history: '[2] Geschiedenis'
  tab_activity: '[3] Activiteit'
  tab_accuracy: '[4] Nauwkeurigheid'
  tab_timing: '[5] Timing'
  tab_ngrams: '[6] N-grammen'
  hint_back: 'Terug'
  hint_next_tab: 'Volgend tabblad'
  hint_switch_tab: 'Tabblad wisselen'
  hint_navigate: 'Navigeren'
  hint_page: 'Pagina'
  hint_delete: 'Verwijderen'
  summary_title: ' Samenvatting '
  drills: '  Oefeningen: '
  avg_wpm: '    Gem. WPM: '
  best_wpm: '    Beste WPM: '
  accuracy_label: '  Nauwkeurigheid: '
  total_time: '    Totale tijd: '
  wpm_chart_title: ' WPM per oefening (Laatste 20, Doel: %{target}) '
  accuracy_chart_title: ' Nauwkeurigheid %% (Laatste 50 oefeningen) '
  chart_drill: 'Oefening #'
  chart_accuracy_pct: 'Nauwkeurigheid %%'
  sessions_title: ' Recente sessies '
  session_header: '   #     WPM    Ruw    Nwk%%    Tijd      Datum/Tijd        Modus      Gerangsch. Deels'
  session_separator: '  ─────────────────────────────────────────────────────────────────────'
  delete_confirm: 'Sessie #%{idx} verwijderen? (y/n)'
  confirm_title: ' Bevestigen '
  yes: 'ja'
  no: 'nee'
  keyboard_accuracy_title: ' Toetsenbord nauwkeurigheid %% '
  keyboard_timing_title: ' Toetsenbord timing (ms) '
  slowest_keys_title: ' Langzaamste toetsen (ms) '
  fastest_keys_title: ' Snelste toetsen (ms) '
  worst_accuracy_title: ' Slechtste nauwkeurigheid (%%) '
  best_accuracy_title: ' Beste nauwkeurigheid (%%) '
  not_enough_data: ' Niet genoeg gegevens'
  streaks_title: ' Reeksen '
  current_streak: '  Huidig: '
  best_streak: '    Beste: '
  active_days: '    Actieve dagen: '
  top_days_none: '  Topdagen: geen'
  top_days: '  Topdagen: %{days}'
  wpm_label: '  WPM: %{avg}/%{target} (%{pct}%%)'
  acc_label: '  Nwk: %{pct}%%'
  keys_label: '  Toetsen: %{unlocked}/%{total} (%{mastered} beheerst)'
  ngram_empty: 'Voltooi enkele adaptieve oefeningen om n-gram gegevens te zien'
  ngram_header_speed_narrow: ' Bgrm Snelh Verw Anom%'
  ngram_header_error_narrow: ' Bgrm Ftn Stp Freq Verw Anom%'
  ngram_header_speed: ' Bigram   Snelh  Verwacht  Steekpr.  Anom%'
  ngram_header_error: ' Bigram  Fouten  Steekpr.  Freq  Verwacht  Anom%'
  focus_title: ' Actieve focus '
  focus_char_label: '  Aandacht: '
  focus_bigram_value: 'Bigram %{label}'
  focus_plus: ' + '
  anomaly_error: 'fout'
  anomaly_speed: 'snelheid'
  focus_detail_both: '  Teken ''%{ch}'': zwakste toets | Bigram %{label}: %{type}-anomalie %{pct}%%'
  focus_detail_char_only: '  Teken ''%{ch}'': zwakste toets, geen bevestigde bigram-anomalieen'
  focus_detail_bigram_only: '  (%{type}-anomalie: %{pct}%%)'
  focus_empty: '  Voltooi enkele adaptieve oefeningen om focusgegevens te zien'
  error_anomalies_title: ' Fout-anomalieen (%{count}) '
  no_error_anomalies: ' Geen fout-anomalieen gedetecteerd'
  speed_anomalies_title: ' Snelheid-anomalieen (%{count}) '
  no_speed_anomalies: ' Geen snelheid-anomalieen gedetecteerd'
  scope_label_prefix: ' '
  bi_label: ' | Bi: %{count}'
  hes_label: ' | Hes: >%{ms}ms'
  focus_char_value: 'Teken ''%{ch}'''

# Activity heatmap
heatmap:
  title: ' Dagelijkse activiteit (Sessies per dag) '
  jan: 'Jan'
  feb: 'Feb'
  mar: 'Mrt'
  apr: 'Apr'
  may: 'Mei'
  jun: 'Jun'
  jul: 'Jul'
  aug: 'Aug'
  sep: 'Sep'
  oct: 'Okt'
  nov: 'Nov'
  dec: 'Dec'

# Chart
chart:
  wpm_over_time: ' WPM in de tijd '
  drill_number: 'Oefening #'

# Settings
settings:
  title: ' Instellingen '
  subtitle: 'Pijltjestoetsen om te navigeren, Enter/Rechts om te wijzigen, ESC om op te slaan'
  target_wpm: 'Doel-WPM'
  theme: 'Thema'
  word_count: 'Aantal woorden'
  ui_language: 'UI-taal'
  dictionary_language: 'Woordenboektaal'
  keyboard_layout: 'Toetsenbordindeling'
  code_language: 'Codetaal'
  code_downloads: 'Code-downloads'
  on: 'Aan'
  off: 'Uit'
  code_download_dir: 'Code-downloadmap'
  snippets_per_repo: 'Fragmenten per repo'
  unlimited: 'Onbeperkt'
  download_code_now: 'Code nu downloaden'
  run_downloader: 'Download starten'
  passage_downloads: 'Tekst-downloads'
  passage_download_dir: 'Tekst-downloadmap'
  paragraphs_per_book: 'Alinea''s per boek'
  whole_book: 'Heel boek'
  download_passages_now: 'Teksten nu downloaden'
  export_path: 'Exportpad'
  export_data: 'Gegevens exporteren'
  export_now: 'Nu exporteren'
  import_path: 'Importpad'
  import_data: 'Gegevens importeren'
  import_now: 'Nu importeren'
  hint_save_back: 'Opslaan & terug'
  hint_change_value: 'Waarde wijzigen'
  hint_edit_path: 'Bewerken'
  hint_move: 'Verplaatsen'
  hint_tab_complete: 'Aanvullen (aan einde)'
  hint_confirm: 'Bevestigen'
  hint_cancel: 'Annuleren'
  success_title: ' Geslaagd '
  error_title: ' Fout '
  press_any_key: 'Druk op een toets'
  file_exists_title: ' Bestand bestaat '
  file_exists: 'Er bestaat al een bestand op dit pad.'
  overwrite_rename: '[d] Overschrijven  [r] Hernoemen  [Esc] Annuleren'
  erase_warning: 'Dit zal je huidige gegevens wissen.'
  export_first: 'Exporteer eerst als je ze wilt bewaren.'
  proceed_yn: 'Doorgaan? (y/n)'
  confirm_import_title: ' Import bevestigen '

# Selection screens
select:
  dictionary_language_title: ' Woordenboektaal selecteren '
  keyboard_layout_title: ' Toetsenbordindeling selecteren '
  code_language_title: ' Codetaal selecteren '
  passage_source_title: ' Tekstbron selecteren '
  ui_language_title: ' UI-taal selecteren '
  more_above: '... %{count} meer boven ...'
  more_below: '... %{count} meer onder ...'
  current: ' (huidig)'
  disabled: ' (uitgeschakeld)'
  enabled_default: ' (ingeschakeld, standaard: %{layout})'
  enabled: ' (ingeschakeld)'
  disabled_blocked: ' (uitgeschakeld: geblokkeerd)'
  built_in: ' (ingebouwd)'
  cached: ' (opgeslagen)'
  disabled_download: ' (uitgeschakeld: download vereist)'
  download_required: ' (download vereist)'
  hint_navigate: 'Navigeren'
  hint_confirm: 'Bevestigen'
  hint_back: 'Terug'
  language_resets_layout: 'Taalselectie herstelt de toetsenbordindeling naar de standaard van die taal.'
  layout_no_language_change: 'Indelingswijzigingen veranderen de woordenboektaal niet.'
  disabled_network_notice: 'Sommige talen zijn uitgeschakeld: schakel netwerkdownloads in via intro/instellingen.'
  disabled_sources_notice: 'Sommige bronnen zijn uitgeschakeld: schakel netwerkdownloads in via intro/instellingen.'
  passage_all: 'Alles (Ingebouwd + alle boeken)'
  passage_builtin: 'Alleen ingebouwde passages'
  passage_book_prefix: 'Boek: %{title}'

# Progress
progress:
  overall_key_progress: 'Totale toetsvoortgang'
  unlocked_mastered: '%{unlocked}/%{total} ontgrendeld (%{mastered} beheerst)'

# Skill tree
skill_tree:
  title: ' Vaardigheidsboom '
  locked: 'Vergrendeld'
  unlocked: 'ontgrendeld'
  mastered: 'beheerst'
  in_progress: 'bezig'
  complete: 'voltooid'
  locked_status: 'vergrendeld'
  locked_notice: 'Voltooi %{count} basisletters om takken te ontgrendelen'
  branches_separator: 'Takken (beschikbaar na %{count} basisletters)'
  unlocked_letters: '%{unlocked}/%{total} letters ontgrendeld'
  level: 'Niveau %{current}/%{total}'
  level_zero: 'Niveau 0/%{total}'
  in_focus: '  in aandacht'
  hint_navigate: 'Navigeren'
  hint_scroll: 'Scrollen'
  hint_back: 'Terug'
  hint_unlock: 'Ontgrendelen'
  hint_start_drill: 'Oefening starten'
  unlock_msg_1: 'Na ontgrendeling worden ontgrendelde toetsen van deze tak gemengd in de adaptieve oefening.'
  unlock_msg_2: 'Wil je alleen deze tak oefenen, start dan een oefening direct vanuit deze tak in de Vaardigheidsboom.'
  confirm_unlock: '%{branch} ontgrendelen?'
  confirm_yn: '[y] Ontgrendelen  [n/ESC] Annuleren'
  lvl_prefix: 'Niv'
  branch_primary_letters: 'Basisletters'
  branch_capital_letters: 'Hoofdletters'
  branch_numbers: 'Cijfers 0-9'
  branch_prose_punctuation: 'Leestekens'
  branch_whitespace: 'Witruimte'
  branch_code_symbols: 'Code-symbolen'
  level_frequency_order: 'Frequentievolgorde'
  level_common_sentence_capitals: 'Veelvoorkomende zinhoofdletters'
  level_name_capitals: 'Naamhoofdletters'
  level_remaining_capitals: 'Overige hoofdletters'
  level_common_digits: 'Veelvoorkomende cijfers'
  level_all_digits: 'Alle cijfers'
  level_essential: 'Essentieel'
  level_common: 'Veelvoorkomend'
  level_expressive: 'Expressief'
  level_enter_return: 'Enter/Return'
  level_tab_indent: 'Tab/Inspringen'
  level_arithmetic_assignment: 'Rekenen & Toewijzing'
  level_grouping: 'Groepering'
  level_logic_reference: 'Logica & Referentie'
  level_special: 'Speciaal'

# Milestones
milestones:
  unlock_title: ' Toets ontgrendeld! '
  mastery_title: ' Toets beheerst! '
  branches_title: ' Nieuwe vaardigheidstakken beschikbaar! '
  branch_complete_title: ' Tak voltooid! '
  all_unlocked_title: ' Alle toetsen ontgrendeld! '
  all_mastered_title: ' Volledig toetsenbordbheersing! '
  unlocked: 'ontgrendeld'
  mastered: 'beheerst'
  use_finger: 'Gebruik je %{finger}'
  hold_right_shift: 'Houd rechter Shift ingedrukt (rechter pink)'
  hold_left_shift: 'Houd linker Shift ingedrukt (linker pink)'
  congratulations_all_letters: 'Gefeliciteerd! Je hebt alle %{count} basisletters beheerst'
  new_branches_available: 'Nieuwe vaardigheidstakken zijn nu beschikbaar:'
  visit_skill_tree: 'Bezoek de Vaardigheidsboom om een nieuwe tak te ontgrendelen'
  and_start_training: 'en begin met trainen!'
  open_skill_tree: 'Druk op [t] om de Vaardigheidsboom te openen'
  branch_complete_msg: 'Je hebt de tak %{branch} voltooid!'
  all_levels_mastered: 'Alle %{count} niveaus beheerst.'
  all_keys_confident: 'Elke toets in deze tak heeft vol vertrouwen.'
  all_unlocked_msg: 'Je hebt elke toets op het toetsenbord ontgrendeld!'
  all_unlocked_desc: 'Elk teken, symbool en elke modifier is nu beschikbaar in je oefeningen.'
  keep_practicing_mastery: 'Blijf oefenen om meesterschap op te bouwen — zodra elke toets vol'
  confidence_complete: 'vertrouwen bereikt, heb je volledige toetsenbordbeheersing!'
  all_mastered_msg: 'Gefeliciteerd — je hebt volledige toetsenbordbeheersing bereikt!'
  all_mastered_desc: 'Elke toets op het toetsenbord heeft maximaal vertrouwen.'
  mastery_takes_practice: 'Meesterschap is geen bestemming — het vereist voortdurend oefenen.'
  keep_drilling: 'Blijf oefenen om je niveau te behouden.'
  hint_skill_tree_continue: 'Vaardigheidsboom  [Andere toets] Doorgaan'
  hint_any_key: 'Druk op een toets om door te gaan'
  input_blocked: 'Invoer tijdelijk geblokkeerd (%{ms}ms resterend)'
  unlock_msg_1: 'Goed gedaan! Blijf je typvaardigheden opbouwen.'
  unlock_msg_2: 'Weer een toets erbij in je arsenaal!'
  unlock_msg_3: 'Je toetsenbord groeit! Ga zo door.'
  unlock_msg_4: 'Een stap dichter bij volledige toetsenbordbeheersing!'
  mastery_msg_1: 'Deze toets heeft nu vol vertrouwen!'
  mastery_msg_2: 'Je beheerst deze toets perfect!'
  mastery_msg_3: 'Spiergeheugen verankerd!'
  mastery_msg_4: 'Weer een toets veroverd!'

# Adaptive drill intro overlay
adaptive_intro:
  title: ' Welkom bij keydr! '
  how_it_works: 'Hoe adaptieve oefeningen werken:'
  description: 'Je begint met een kleine set van de meest voorkomende letters ontgrendeld. De oefening genereert alleen woorden die deze letters gebruiken. Naarmate je ze met vertrouwen typt, worden nieuwe toetsen geleidelijk ontgrendeld totdat je het volledige toetsenbord beheerst.'
  target_wpm_label: 'Doel-WPM:'
  target_wpm_desc: 'Dit bepaalt hoe snel toetsen ontgrendelen — hogere doelen vereisen sneller typen. 35 WPM is een goed startpunt als je het niet zeker weet. Je kunt dit later altijd wijzigen in de instellingen.'
  hint_adjust: 'WPM aanpassen'
  hint_start: 'Oefening starten'
  hint_back: 'Hoofdmenu'

# Keyboard explorer
keyboard:
  title: ' Toetsenbord '
  subtitle: 'Druk op een toets of klik op een toets'
  hint_navigate: 'Navigeren'
  hint_back: 'Terug'
  key_label: 'Toets: '
  finger_label: 'Vinger: '
  hand_left: 'Links'
  hand_right: 'Rechts'
  finger_index: 'Wijsvinger'
  finger_middle: 'Middelvinger'
  finger_ring: 'Ringvinger'
  finger_pinky: 'Pink'
  finger_thumb: 'Duim'
  overall_accuracy: '  Totale nauwkeurigheid: %{correct}/%{total} (%{pct}%%)'
  ranked_accuracy: '  Gerangschikte nauwkeurigheid: %{correct}/%{total} (%{pct}%%)'
  confidence: 'Vertrouwen: '
  no_data: 'Nog geen gegevens'
  no_data_short: 'Geen gegevens'
  key_details: ' Toetsdetails '
  key_details_char: ' Toetsdetails: ''%{ch}'' '
  key_details_name: ' Toetsdetails: %{name} '
  press_key_hint: 'Druk op een toets voor details'
  shift_label: 'Shift: '
  shift_no: 'Nee'
  overall_avg_time: 'Totaal gem. tijd: '
  overall_best_time: 'Totaal beste tijd: '
  overall_samples: 'Totaal steekproeven: '
  overall_accuracy_label: 'Totaal nauwkeurigheid: '
  branch_label: 'Tak: '
  level_label: 'Niveau: '
  built_in_key: 'Ingebouwde toets'
  unlocked_label: 'Ontgrendeld: '
  yes: 'Ja'
  no: 'Nee'
  in_focus_label: 'In focus?: '
  mastery_label: 'Beheersing: '
  mastery_locked: 'Vergrendeld'
  ranked_avg_time: 'Gerangschikte gem. tijd: '
  ranked_best_time: 'Gerangschikte beste tijd: '
  ranked_samples: 'Gerangschikte steekproeven: '
  ranked_accuracy_label: 'Gerangschikte nauwkeurigheid: '

# Intro dialogs
intro:
  passage_title: ' Tekstdownload instellen '
  code_title: ' Code-download instellen '
  enable_downloads: 'Netwerkdownloads inschakelen'
  download_dir: 'Downloadmap'
  paragraphs_per_book: 'Alinea''s per boek (0 = geheel)'
  whole_book: 'heel boek'
  snippets_per_repo: 'Fragmenten per repo (0 = onbeperkt)'
  unlimited: 'onbeperkt'
  start_passage_drill: 'Tekstoefening starten'
  start_code_drill: 'Code-oefening starten'
  confirm: 'Bevestigen'
  hint_navigate: 'Navigeren'
  hint_adjust: 'Aanpassen'
  hint_edit: 'Bewerken'
  hint_confirm: 'Bevestigen'
  hint_cancel: 'Annuleren'
  preparing_download: 'Download wordt voorbereid...'
  download_passage_title: ' Tekstbron downloaden '
  download_code_title: ' Codebron downloaden '
  book_label: ' Boek: %{name}'
  repo_label: ' Repo: %{name}'
  progress_bytes: '[%{name}] %{downloaded}/%{total}  bytes'
  downloaded_bytes: 'Gedownload: %{bytes} bytes'
  downloading_book_progress: 'Huidig boek downloaden: [%{bar}] %{downloaded}/%{total} bytes'
  downloading_book_bytes: 'Huidig boek downloaden: %{bytes} bytes'
  downloading_code_progress: 'Downloaden: [%{bar}] %{downloaded}/%{total} bytes'
  downloading_code_bytes: 'Downloaden: %{bytes} bytes'
  current_book: 'Huidig: %{name}  (boek %{done}/%{total})'
  current_repo: 'Huidig: %{name}  (repo %{done}/%{total})'
  passage_instructions_1: 'keydr kan passages van Project Gutenberg downloaden om te oefenen met typen.'
  passage_instructions_2: 'Boeken worden eenmalig gedownload en lokaal opgeslagen.'
  passage_instructions_3: 'Configureer de downloadinstellingen hieronder en start een tekstoefening.'
  code_instructions_1: 'keydr kan open-source code van GitHub downloaden om te oefenen met typen.'
  code_instructions_2: 'Code wordt eenmalig gedownload en lokaal opgeslagen.'
  code_instructions_3: 'Configureer de downloadinstellingen hieronder en start een code-oefening.'

# Status messages (from app.rs)
status:
  recovery_files: 'Herstelbestanden gevonden van onderbroken import. Gegevens kunnen inconsistent zijn — overweeg opnieuw importeren.'
  dir_not_exist: 'Map bestaat niet: %{path}'
  no_data_store: 'Geen gegevensopslag beschikbaar'
  serialization_error: 'Serialisatiefout: %{error}'
  exported_to: 'Geexporteerd naar %{path}'
  export_failed: 'Export mislukt: %{error}'
  could_not_read: 'Kan bestand niet lezen: %{error}'
  invalid_export: 'Ongeldig exportbestand: %{error}'
  unsupported_version: 'Niet-ondersteunde exportversie: %{got} (verwacht %{expected})'
  import_failed: 'Import mislukt: %{error}'
  imported_theme_fallback: 'Succesvol geimporteerd (thema ''%{theme}'' niet gevonden, standaard wordt gebruikt)'
  imported_success: 'Succesvol geimporteerd'
  adaptive_unavailable: 'Adaptieve gerangschikte modus niet beschikbaar: %{error}'
  switched_to: 'Gewisseld naar %{name}'
  layout_changed: 'Indeling gewijzigd naar %{name}'

# Errors (for UI boundary translation)
errors:
  unknown_language: 'Onbekende taal: %{key}'
  unknown_layout: 'Onbekende toetsenbordindeling: %{key}'
  unsupported_pair: 'Niet-ondersteund taal-/indelingspaar: %{language} + %{layout}'
  language_blocked: 'Taal geblokkeerd door ondersteuningsniveau: %{key}'

# Common
common:
  wpm: 'WPM'
  cpm: 'CPM'
  back: 'Terug'
