{
  "dual_translation.title": "Dual Translation",
  "dual_translation.loading": "Loading…",
  "dual_translation.reference_label": "Reference (in your language)",
  "dual_translation.rubric_heading": "What you'll be graded on",
  "dual_translation.rubric_generic": "Accuracy, meaning, and how natural your translation sounds.",
  "dual_translation.self_rating_prompt": "How well do you think you'll do?",
  "dual_translation.self_rating_hint": "Just for your own reflection — this isn't graded.",
  "dual_translation.your_translation_label": "Your translation",
  "dual_translation.reproduction_placeholder": "Type your translation here…",
  "dual_translation.submit": "Submit for feedback",
  "dual_translation.submitting": "Grading…",
  "dual_translation.empty_reproduction": "Write your translation before submitting.",
  "dual_translation.error_load": "Couldn't load a passage.",
  "dual_translation.error_none": "No dual-translation passage yet — finish a test first, then come back.",
  "dual_translation.error_submit": "Couldn't grade your translation.",
  "dual_translation.grading_incomplete": "Grading didn't finish — submit again to get full feedback.",
  "dual_translation.overall_band": "Overall band",
  "dual_translation.self_rating_recall": "You predicted: {rating}/4",
  "dual_translation.diff_heading": "Reference vs. your translation",
  "dual_translation.diff_empty": "No differences to show.",
  "dual_translation.legend_reference": "Reference",
  "dual_translation.legend_yours": "What you wrote",
  "dual_translation.dimensions_heading": "How it scored",
  "dual_translation.naturalness_optional": "Optional — style, not correctness",
  "dual_translation.naturalness_show": "Show naturalness (optional)",
  "dual_translation.errors_heading": "Points to notice",
  "dual_translation.no_errors": "No specific errors flagged — nice work.",
  "dual_translation.corrected_to": "→",
  "dual_translation.reveal_correction": "Show the correction",
  "dual_translation.drill_this": "Drill this",
  "dual_translation.drill_soon": "Practice cards are coming soon",
  "dual_translation.try_another": "Try another",
  "dual_translation.dim.accuracy": "Accuracy",
  "dual_translation.dim.range": "Range",
  "dual_translation.dim.understandability": "Understandability",
  "dual_translation.dim.fidelity": "Fidelity",
  "dual_translation.dim.naturalness": "Naturalness",
  "dual_translation.category.grammatical": "Grammar",
  "dual_translation.category.lexical": "Word choice",
  "dual_translation.category.pragmatic_expressional": "Expression",
  "dual_translation.severity.minor": "Minor",
  "dual_translation.severity.major": "Major",
  "dual_translation.severity.critical": "Critical",
  "dual_translation.highlights_heading": "What worked",
  "dual_translation.highlight_reason.grammar": "Grammar",
  "dual_translation.highlight_reason.word_choice": "Word choice",
  "dual_translation.highlight_reason.register_politeness": "Register",
  "dual_translation.highlight_reason.structure": "Structure",
  "dual_translation.because_clean": "no issues affected this",
  "dual_translation.because_judged": "judged from your whole translation",
  "dual_translation.because_minor": "{count} minor issue|{count} minor issues",
  "dual_translation.because_major": "{count} major issue|{count} major issues",
  "dual_translation.because_critical": "{count} critical issue|{count} critical issues",
  "dual_translation.next_focus": "Next focus: {subtype}",
  "dual_translation.next_focus_hint": "Targeted practice for this is coming soon.",
  "dual_translation.source.interlingual": "First-language influence",
  "dual_translation.source.intralingual": "Overgeneralization",
  "dual_translation.profile.title": "My Error Profile",
  "dual_translation.profile.intro": "Patterns from your translations, tracked so you can watch them shrink over time.",
  "dual_translation.profile.loading": "Loading…",
  "dual_translation.profile.error_load": "Couldn't load your error profile.",
  "dual_translation.profile.empty": "No patterns tracked yet — keep practicing and this page will fill in.",
  "dual_translation.profile.resolved_banner": "{count} patterns resolved",
  "dual_translation.profile.active_label": "Currently watching",
  "dual_translation.profile.resolved_label": "Resolved",
  "dual_translation.profile.status.watching": "Watching",
  "dual_translation.profile.status.queued": "Queued",
  "dual_translation.profile.status.drilling": "Drilling",
  "dual_translation.profile.status.resolved": "Resolved",
  "dual_translation.profile.trend_flat": "Same as last window",
  "dual_translation.profile.trend_down": "{pct}% fewer this window",
  "dual_translation.profile.trend_up": "Up this window",
  "session.accuracy": "Accuracy",
  "session.browse_instead": "Browse tests instead",
  "session.browse_instead_practice": "Back to daily session",
  "session.correct": "Correct!",
  "session.correct_label": "Correct",
  "session.cta": "Start today's session",
  "session.done_browse": "Back to tests",
  "session.done_browse_practice": "Back to daily session",
  "session.done_line": "Nice work — you finished today’s load.",
  "session.done_title": "Session complete!",
  "session.done_title_practice": "Exercises done!",
  "session.empty": "No session items for today. Check your Study Plan or browse tests.",
  "session.done_line_practice": "Nice work — you finished today’s exercises.",
  "session.new_words.prompt": "Exercises done — want to learn some new words?",
  "session.new_words.start": "Learn new words",
  "session.new_words.later": "Not now",
  "session.empty_practice_page": "No exercises due right now.",
  "session.header": "Daily Session",
  "session.header_practice": "Practice",
  "session.incorrect": "Incorrect",
  "session.loading": "Loading your session…",
  "session.next_item": "Next",
  "session.practice_done": "Practice complete!",
  "session.practice_empty": "No practice items right now — you can move on.",
  "session.practice_error": "Couldn’t load practice. You can move on.",
  "session.practice_heading": "Practice",
  "session.practice_unavailable": "Practice isn’t available right now.",
  "session.save_failed": "Couldn’t save your progress — check your connection.",
  "session.retry": "Retry",
  "session.progress_label": "Session progress",
  "session.dot_label": "{type} — {state}",
  "session.results_title": "Your results",
  "session.item_done": "Done",
  "session.item_skipped": "Skipped",
  "session.item_current": "In progress",
  "session.item_pending": "Not started",
  "session.resume_button": "Resume session",
  "session.start_button": "Start session",
  "session.start_title": "Today's Study Session",
  "session.start_title_practice": "Today's Practice",
  "session.summary_line": "{tests} tests · {practice} practice · {remaining} left today",
  "session.summary_line_practice": "{practice} practice · {remaining} left today",
  "session.open_page": "Open page",
  "session.skip_for_now": "Skip for now",
  "session.continue": "Continue",
  "session.flashcards_heading": "Flashcards",
  "session.flashcards_unavailable": "Couldn’t load your review cards right now.",
  "session.flashcards_progress": "Card {current} of {total}",
  "session.flashcards_reveal": "Show answer",
  "session.fc_again": "Again",
  "session.fc_hard": "Hard",
  "session.fc_good": "Good",
  "session.fc_easy": "Easy",
  "session.dt_heading": "Dual Translation",
  "session.speed_round_heading": "Speed Round",
  "session.dt_unavailable": "Couldn’t load a translation passage right now.",
  "session.dt_error_card_pending": "Your next item is a review card, which isn’t playable here yet.",
  "session.dt_instructions": "Reproduce this passage in the language you’re studying.",
  "session.dt_input_label": "Your translation",
  "session.dt_submit": "Submit translation",
  "session.dt_graded": "Translation graded",
  "session.dt_graded_no_score": "Your work has been recorded.",
  "session.dt_see_details": "See full feedback",
  "session.dt_retry": "Try again",
  "session.dt_grading_incomplete": "Grading didn’t finish, so nothing was saved. Try again to get your grade.",
  "classifier_drill.also": "also",
  "classifier_drill.cloze_prompt": "Fill in the blank",
  "classifier_drill.demoted_n": "{count} classifier dropped back|{count} classifiers dropped back",
  "classifier_drill.error_empty": "No items available — try again later.",
  "classifier_drill.error_init": "Failed to initialize.",
  "classifier_drill.error_load": "Failed to load drill.",
  "classifier_drill.feedback_continue": "Continue",
  "classifier_drill.loading": "Loading…",
  "classifier_drill.mode_auto": "Auto",
  "classifier_drill.mode_mc": "Choose",
  "classifier_drill.mode_type": "Type",
  "classifier_drill.promoted_n": "{count} classifier promoted!|{count} classifiers promoted!",
  "classifier_drill.results_classifiers": "classifiers",
  "classifier_drill.results_elo": "ELO {value}",
  "classifier_drill.results_elo_unchanged": "Repeat · ELO unchanged",
  "classifier_drill.results_exit": "Done",
  "classifier_drill.results_next": "Next round",
  "classifier_drill.reverse_prompt": "Which noun takes",
  "classifier_drill.subtitle": "Drill Chinese classifiers",
  "classifier_drill.title": "Measure Words",
  "classifier_drill.typed_placeholder": "measure word",
  "classifier_drill.your_answer": "Your answer",
  "common.footer.copyright": "All rights reserved.",
  "common.footer.tagline": "Master any language with active practice",
  "common.loading": "Loading...",
  "common.nav.browse_tests": "Browse Tests",
  "common.nav.classifier_drill": "Measure Words",
  "common.nav.counter_drill": "Counters",
  "common.nav.daily_session": "Daily Session",
  "common.nav.exercises": "Exercises",
  "common.nav.flashcards": "Flashcards",
  "common.nav.language_selection": "Language Selection",
  "common.nav.logout": "Logout",
  "common.nav.open_menu": "Open menu",
  "common.nav.practice": "Practice",
  "common.nav.profile": "Profile",
  "common.nav.report": "Report",
  "common.nav.study_plan": "Study Plan",
  "common.nav.switch_language": "Switch language",
  "common.nav.switch_theme": "Switch theme",
  "common.nav.user_menu": "User menu",
  "common.nav.vocab_dojo": "Vocab Dojo",
  "common.nav.word_list": "Word List",
  "common.nav.calibration": "Calibration",
  "dictation.all_tests": "All Tests",
  "dictation.badge": "Dictation",
  "dictation.error.no_audio": "This test has no audio.",
  "dictation.error.submit_failed": "Failed to submit dictation",
  "dictation.error.title": "Error",
  "dictation.grade.excellent": "Excellent!",
  "dictation.grade.fair": "Good Effort",
  "dictation.grade.good": "Great Job!",
  "dictation.grade.poor": "Keep Practicing",
  "dictation.loading": "Loading dictation...",
  "dictation.replays": "Plays",
  "dictation.result.accuracy": "Word Accuracy",
  "dictation.result.legend.correct": "Correct",
  "dictation.result.legend.extra": "Extra",
  "dictation.result.legend.missing": "Missing",
  "dictation.result.legend.wrong": "Wrong",
  "dictation.result.time": "Time",
  "dictation.retry": "Retry",
  "dictation.stat.words": "Words",
  "dictation.submit": "Submit",
  "dictation.submitting": "Grading...",
  "dictation.your_diff": "Your transcript",
  "difficulty.advanced": "Advanced",
  "difficulty.advanced_minus": "Advanced-",
  "difficulty.advanced_plus": "Advanced+",
  "difficulty.beginner": "Beginner",
  "difficulty.elementary": "Elementary",
  "difficulty.expert": "Expert",
  "difficulty.intermediate": "Intermediate",
  "difficulty.intermediate_minus": "Intermediate-",
  "difficulty.intermediate_plus": "Intermediate+",
  "error.description_short": "Description too short",
  "error.invalid_category": "Invalid category",
  "error.network": "Network error. Please try again.",
  "error.server": "Server error occurred",
  "error.unauthorized": "Please log in",
  "exercises.check": "Check",
  "exercises.filter.all_levels": "All Levels",
  "exercises.filter.all_sources": "All Sources",
  "exercises.filter.all_types": "All Types",
  "exercises.filter.collocation": "Collocation",
  "exercises.filter.grammar": "Grammar",
  "exercises.filter.vocabulary": "Vocabulary",
  "exercises.hint": "Hint: {hint}",
  "exercises.instruction.choose_translation": "Choose the correct translation:",
  "exercises.instruction.collocation_gap_fill": "Complete the collocation:",
  "exercises.instruction.collocation_repair": "Tap the word that sounds unnatural in this sentence:",
  "exercises.instruction.collocation_repair_phase2": "Now type the correct word:",
  "exercises.instruction.fill_blank": "Fill in the blank:",
  "exercises.instruction.type_missing_word": "Type the missing word:",
  "exercises.type.cloze_typed": "Type the Word",
  "exercises.type_word_placeholder": "Type the word...",
  "exercises.instruction.odd_collocation_out": "Which collocation with <strong>{word}</strong> doesn't sound natural?",
  "exercises.instruction.odd_one_out": "Which one doesn't belong?",
  "exercises.instruction.translate_to_tl": "Translate to the target language:",
  "exercises.instruction.which_sentence": "Which sentence uses <strong>{word}</strong> correctly?",
  "exercises.load": "Load Exercises",
  "exercises.next": "Next",
  "exercises.type.cloze_completion": "Cloze",
  "exercises.type.collocation_gap_fill": "Collocation",
  "exercises.type.collocation_repair": "Collocation Repair",
  "exercises.type.context_spectrum": "Context Spectrum",
  "exercises.type.jumbled_sentence": "Word Order",
  "exercises.type.nl_tl_translation": "Translation (Production)",
  "exercises.type.odd_collocation_out": "Odd Collocation Out",
  "exercises.type.odd_one_out": "Odd One Out",
  "exercises.type.semantic_discrimination": "Semantic",
  "exercises.type.spot_incorrect_sentence": "Spot the Error",
  "exercises.type.timed_speed_round": "Speed Round",
  "exercises.type.tl_nl_translation": "Translation",
  "exercises.type.verb_noun_match": "Verb-Noun Match",
  "exercises.type_placeholder": "Type your translation...",
  "exercises.type.tone_id_word": "Tone Pattern",
  "exercises.type.hanzi_to_pinyin": "Hanzi → Pinyin",
  "exercises.type.pinyin_to_hanzi": "Pinyin → Hanzi",
  "exercises.type.kanji_to_reading": "Kanji → Reading",
  "exercises.type.reading_to_kanji": "Reading → Kanji",
  "exercises.type.classifier_match": "Measure Word",
  "exercises.type.counter_match": "Counter",
  "exercises.type.synonym_antonym_match": "Word Relations",
  "exercises.type.word_family": "Word Family",
  "exercises.type.particle_selection": "Particle Choice",
  "exercises.instruction.hanzi_to_pinyin": "Choose the correct pinyin:",
  "exercises.instruction.pinyin_to_hanzi": "Choose the characters for this pinyin:",
  "exercises.instruction.kanji_to_reading": "Choose the correct reading:",
  "exercises.instruction.reading_to_kanji": "Choose the written form for this reading:",
  "exercises.instruction.tone_id_word": "Which tone pattern does this word have?",
  "exercises.instruction.classifier_match": "Choose the correct measure word:",
  "exercises.instruction.counter_match": "Choose the correct counter:",
  "exercises.instruction.synonym": "Which word means the same?",
  "exercises.instruction.antonym": "Which word means the opposite?",
  "exercises.instruction.word_family": "Choose the correct form of the word:",
  "exercises.instruction.particle_selection": "Choose the correct particle:",
  "exercises.in_context": "In this sentence:",
  "exercises.tone_id_answer": "Full pinyin: {pinyin}",
  "exercises.measure_word_group": "Group: {label}",
  "exercises.word_family_stem": "Stem: {stem}",
  "exercises.word_family_pos": "Needs a {pos}",
  "flashcards.again": "Again",
  "flashcards.answer": "Answer",
  "flashcards.back_to_tests": "Back to Tests",
  "flashcards.browse_tests": "Browse Tests",
  "flashcards.card": "Card",
  "flashcards.continue_practicing": "Continue Practicing",
  "flashcards.easy": "Easy",
  "flashcards.easy_hint": "~4 days",
  "flashcards.fail": "Fail",
  "flashcards.fail_hint": "< 1 min",
  "flashcards.flip": "Flip",
  "flashcards.good": "Good",
  "flashcards.good_hint": "~1 day",
  "flashcards.hard": "Hard",
  "flashcards.hard_hint": "~10 min",
  "flashcards.keyboard_hint": "<kbd>Space</kbd> to flip &middot; <kbd>1</kbd> <kbd>2</kbd> <kbd>3</kbd> <kbd>4</kbd> to rate",
  "flashcards.listening": "Listening",
  "flashcards.no_cards_desc": "Complete some tests to build your flashcard deck.<br>Cards are created automatically as you learn new words.",
  "flashcards.no_cards_due": "No cards due",
  "flashcards.of": "of",
  "flashcards.reading": "Reading",
  "flashcards.restart": "Review Again",
  "flashcards.session_complete": "Session Complete!",
  "flashcards.session_summary": "You reviewed all cards in this session.",
  "flashcards.tap_to_listen": "Tap to listen",
  "flashcards.title": "Flashcards",
  "lang_select.browse_tests": "Browse tests",
  "lang_select.continue": "Continue to Tests",
  "lang_select.start_session": "Start Daily Session",
  "lang_select.subtitle": "This will be used for all tests and content",
  "lang_select.title": "Choose your language to practice",
  "login.back": "← Back to Email",
  "login.code_label": "Verification Code",
  "login.code_sent": "We sent a 6-digit code to",
  "login.email_label": "Email Address",
  "login.email_placeholder": "your@email.com",
  "login.error.invalid_code": "Please enter a valid 6-digit code",
  "login.error.invalid_email": "Please enter a valid email address",
  "login.error.network": "Network error. Please check your connection and try again.",
  "login.error.resend_failed": "Failed to resend code",
  "login.error.send_failed": "Failed to send verification code. Please try again.",
  "login.error.verify_failed": "Invalid verification code. Please try again.",
  "login.new_user_hint": "New here? Just enter your email to create an account.",
  "login.processing": "Processing...",
  "login.remember_device": "Remember this device for 6 months",
  "login.resend": "Resend",
  "login.resend_prompt": "Didn't receive the code?",
  "login.send_code": "Send Verification Code",
  "login.sending": "Sending...",
  "login.tagline": "Master any language with active practice",
  "login.verify": "Verify & Continue",
  "onboarding.get_started": "Get Started",
  "onboarding.how_1_html": "Choose between <strong>listening</strong> tests (audio first, transcript shown after) or <strong>reading</strong> tests (text on screen from the start)",
  "onboarding.how_2": "Each test has 5 multiple-choice questions with 4 options, giving you clear, targeted feedback",
  "onboarding.how_3": "As you complete tests, LinguaDojo adapts to your level and recommends material that fits your ability",
  "onboarding.how_title": "How Tests Work",
  "onboarding.lang_desc": "Switch the site interface language to navigate in your preferred language. More interface languages coming soon.",
  "onboarding.lang_title": "Language Selector",
  "onboarding.native_desc": "We'll use this to show translations in a language you already know. You can change it anytime from your profile.",
  "onboarding.native_title": "What's your native language?",
  "onboarding.profile_desc": "View your ELO rating, track progress over time, and see your test history. Watch how your skills improve with practice.",
  "onboarding.profile_title": "Profile",
  "onboarding.report_desc": "Use the flag icon to report issues, bad translations, or suggest improvements. Your feedback helps improve test quality for everyone.",
  "onboarding.report_title": "Report Button",
  "onboarding.tagline": "Master any language with active practice",
  "onboarding.welcome": "Welcome to LinguaDojo",
  "onboarding.what_1": "Improve foreign language skills through short, active exercises instead of passive study",
  "onboarding.what_2": "Answer focused comprehension tests designed for translators, exam preparation, and serious learners",
  "onboarding.what_3": "Each test is calibrated with an ELO rating so you are matched with challenges that fit your level",
  "onboarding.what_title": "What LinguaDojo Does",
  "pinyin.all_tests": "All Tests",
  "pinyin.badge": "Pinyin",
  "pinyin.continue": "Continue",
  "pinyin.correct": "Correct",
  "pinyin.error.load_failed": "Failed to load test: {status}",
  "pinyin.error.no_chars": "No playable characters found in this passage.",
  "pinyin.error.no_data": "This test does not have pinyin data. Please try a different Chinese test.",
  "pinyin.error.title": "Error",
  "pinyin.grade.excellent": "Excellent!",
  "pinyin.grade.fair": "Good Effort",
  "pinyin.grade.good": "Great Job!",
  "pinyin.grade.poor": "Keep Practicing",
  "pinyin.loading": "Loading pinyin data...",
  "pinyin.neutral": "Neutral",
  "pinyin.retry": "Retry",
  "pinyin.sandhi_rule": "Tone Sandhi Rule:",
  "pinyin.space": "Space",
  "pinyin.stat.characters": "Characters",
  "pinyin.stat.elo_change": "ELO Change",
  "pinyin.stat.mistakes": "Mistakes",
  "pinyin.stat.time": "Time",
  "pinyin.title": "Pinyin Tone Trainer",
  "pinyin.tone_accuracy": "Tone Accuracy",
  "pinyin.your_answer": "Your answer",
  "pitch.accuracy_label": "Accent accuracy",
  "pitch.all_tests": "All tests",
  "pitch.class.atamadaka": "Atamadaka",
  "pitch.class.atamadaka_desc": "Drop after mora 1. The first mora is high, everything after is low.",
  "pitch.class.heiban": "Heiban",
  "pitch.class.heiban_desc": "No drop. Pitch rises after mora 1 and stays high - even on the following particle.",
  "pitch.class.nakadaka": "Nakadaka",
  "pitch.class.nakadaka_desc": "Drop somewhere in the middle. Mora 1 is low, then high, then drops back to low.",
  "pitch.class.odaka": "Odaka",
  "pitch.class.odaka_desc": "Drop falls on the boundary - only audible when a particle follows.",
  "pitch.continue": "Continue",
  "pitch.contour.high": "HIGH for current mora",
  "pitch.contour.instruction": "Click HIGH or LOW for each mora. Then press Enter.",
  "pitch.contour.low": "LOW for current mora",
  "pitch.contour.navigate": "Move mora",
  "pitch.contour.submit": "Submit (Enter)",
  "pitch.contour.submit_short": "Submit",
  "pitch.correct": "Correct",
  "pitch.error.empty": "No contour was submitted.",
  "pitch.error.load_failed": "Failed to load test",
  "pitch.error.mora1_eq_mora2": "Mora 1 and mora 2 must differ in pitch.",
  "pitch.error.multiple_drops": "A Japanese word has at most one H->L drop.",
  "pitch.error.no_data": "No pitch accent data is available for this test yet.",
  "pitch.error.no_words": "No drillable words found in this passage.",
  "pitch.error.rise_after_drop": "Pitch cannot rise again after it has fallen.",
  "pitch.error.title": "Error",
  "pitch.error.wrong_drop": "Close - your contour is valid, but the drop is in the wrong place.",
  "pitch.explain.drop_at": "drop after mora",
  "pitch.explain.heiban": "no drop; pitch stays high after the first mora (including any following particle).",
  "pitch.explain.odaka_particle": "- the drop only becomes audible because of the following particle.",
  "pitch.grade.excellent": "Excellent!",
  "pitch.grade.fair": "Fair",
  "pitch.grade.good": "Good",
  "pitch.grade.poor": "Keep practicing",
  "pitch.loading": "Loading pitch accent data...",
  "pitch.mode.contour": "Contour",
  "pitch.mode.quick": "Quick",
  "pitch.retry": "Retry",
  "pitch.stat.elo_change": "ELO change",
  "pitch.stat.mistakes": "Mistakes",
  "pitch.stat.time": "Time",
  "pitch.stat.words": "Words",
  "pitch.title": "Pitch Accent Trainer",
  "pitch.your_answer": "Your answer",
  "profile.browse_tests": "Browse Tests",
  "profile.days_ago": "{count} days ago",
  "profile.elo_rating": "ELO Rating",
  "profile.error.load_failed": "Failed to load profile. Please refresh.",
  "profile.last_test": "Last Test",
  "profile.load_more": "Load More",
  "profile.loading": "Loading profile...",
  "profile.native_current": "Current:",
  "profile.native_desc": "Used to show translations in a language you understand.",
  "profile.native_loading": "Loading…",
  "profile.native_not_set": "Not set",
  "profile.native_save_failed": "Could not save — try again",
  "profile.native_saved": "Saved",
  "profile.native_saving": "Saving…",
  "profile.native_title": "Native Language",
  "profile.no_history": "No Test History",
  "profile.no_history_hint": "Start taking tests to track your progress!",
  "profile.no_skill_tests": "No {skill} tests for this language yet.",
  "profile.review_badge": "Review · {factor}× ELO",
  "profile.review_badge_tooltip": "Daily-load retry attempt — ELO updated at {factor}× volatility",
  "profile.script_desc": "Choose the script used in Chinese practice sessions. Tests are unaffected for now.",
  "profile.script_save_failed": "Could not save — try again",
  "profile.script_saved": "Saved",
  "profile.script_saving": "Saving…",
  "profile.script_title": "Chinese Script",
  "profile.script_traditional": "Use Traditional characters (繁體)",
  "profile.select_language": "Select Language",
  "profile.skills_count": "{count} skill|{count} skills",
  "profile.statistics": "Statistics",
  "profile.subtitle": "Track your language learning progress",
  "profile.test_history": "Test History",
  "profile.tests_count": "{count} tests",
  "profile.tests_taken": "Tests Taken",
  "profile.title": "My Profile",
  "profile.today": "Today",
  "profile.weeks_ago": "{count} weeks ago",
  "profile.yesterday": "Yesterday",
  "report.cancel": "Cancel",
  "report.cat.audio_quality": "Audio quality poor",
  "report.cat.improvement_idea": "Improvement idea",
  "report.cat.other": "Other",
  "report.cat.test_answer_incorrect": "Test answer incorrect",
  "report.cat.test_load_error": "Test won't load",
  "report.cat.website_crash": "Website crashed",
  "report.description": "Description",
  "report.error.failed": "Submission failed",
  "report.issue_type": "Issue Type",
  "report.min_chars": "Min 10 characters",
  "report.placeholder": "Describe the issue...",
  "report.select": "Select",
  "report.submit": "Submit",
  "report.submitting": "Submitting...",
  "report.success": "Report submitted!",
  "report.title": "Report Issue",
  "study_plan.advanced": "Advanced",
  "study_plan.daily_target.hint": "How much time per day you want to commit to this language.",
  "study_plan.daily_target.title": "Daily target",
  "study_plan.daily_target.unit": "min/day",
  "study_plan.error.no_languages": "No active languages found. Make sure your account is set up.",
  "study_plan.flag_disabled.banner": "Preview mode. The Study Plan orchestrator is currently disabled (Config.STUDY_PLAN_ENABLED = False). You can edit the plan here, but the legacy daily-load is still running. Plan-driven daily sessions activate when the flag is flipped.",
  "study_plan.language_heading": "Language",
  "study_plan.loading": "Loading your plan…",
  "study_plan.no_plan.hint": "Pick a starting bucket — you can fine-tune everything below afterwards.",
  "study_plan.no_plan.intro": "You don't have a Study Plan for this language yet.",
  "study_plan.no_week_yet": "No weekly state yet — will be computed by the Sunday 23:00 UTC cron, or click \"Recompute\" above.",
  "study_plan.overrides.hint": "Multiply the value of each skill in the weekly allocator. Default 1.00; range 0.5–2.0.",
  "study_plan.overrides.title": "Per-skill weight overrides",
  "study_plan.recompute_button": "Recompute this week now",
  "study_plan.recompute_disabled": "Recompute is disabled while STUDY_PLAN_ENABLED is False.",
  "study_plan.recompute_success": "Recompute complete.",
  "study_plan.save_button": "Save changes",
  "study_plan.save_failed": "Save failed: {error}",
  "study_plan.save_success": "Saved.",
  "study_plan.stat.acq_share": "acq share",
  "study_plan.stat.maint_share": "maint share",
  "study_plan.stat.practice_target": "practice min target",
  "study_plan.stat.total_min": "min total this week",
  "study_plan.studied.progress": "Studied this week: {done} / {target} min",
  "study_plan.studied.progress_no_target": "Studied this week: {done} min",
  "study_plan.studied.breakdown_title": "By activity",
  "study_plan.studied.kind.test": "Tests",
  "study_plan.studied.kind.practice": "Vocabulary practice",
  "study_plan.studied.kind.flashcard": "Flashcards",
  "study_plan.studied.kind.dual_translation": "Dual translation",
  "study_plan.studied.kind.drill": "Other drills",
  "study_plan.studied.kind.prestudy": "Test prestudy",
  "study_plan.studied.minutes": "{n} min",
  "study_plan.studied.empty": "Nothing logged yet this week.",
  "study_plan.subtitle": "Set your weekly time targets — the system adapts the daily mix.",
  "study_plan.targets.done_col": "Done / target",
  "study_plan.targets.empty": "No targets set.",
  "study_plan.targets.heading": "Per-skill targets vs completed",
  "study_plan.targets.skill_col": "Skill",
  "study_plan.template.created": "Plan created. Adjust below and save when ready.",
  "study_plan.template.daily_minutes_label": "{minutes} min/day",
  "study_plan.template.default_suffix": "(default)",
  "study_plan.template.failed": "Failed to apply template: {error}",
  "study_plan.template.hint": "Changing the template resets daily_minutes; weekday shape and overrides are preserved.",
  "study_plan.template.select_placeholder": "— pick to reset daily_minutes —",
  "study_plan.template.title": "Template",
  "study_plan.title": "Study Plan",
  "study_plan.total_tally": "Total across languages: {minutes} min/day",
  "study_plan.week_starting": "Week starting {date}",
  "study_plan.week_summary_title": "This week so far",
  "study_plan.weekday.fri": "Fri",
  "study_plan.weekday.mon": "Mon",
  "study_plan.weekday.sat": "Sat",
  "study_plan.weekday.sun": "Sun",
  "study_plan.weekday.thu": "Thu",
  "study_plan.weekday.tue": "Tue",
  "study_plan.weekday.wed": "Wed",
  "study_plan.weekday_shape.hint": "Lighter on weekdays, heavier on weekends? Adjust the multipliers. Values normalize to sum=7 on save.",
  "study_plan.weekday_shape.title": "Weekday shape",
  "study_plan.weekday_sum": "Currently summing to: {sum} (will renormalize to 7 on save).",
  "test.answered": "Answered",
  "test.answered_count": "{answered}/{total} answered",
  "test.audio": "Audio",
  "test.back_to_test_list": "Back to Test List",
  "test.back_to_tests": "Back to Tests",
  "test.characters": "characters",
  "test.confirm_submit": "Please answer all questions before submitting.",
  "test.definition_error": "Could not load definition",
  "test.dictation_in_progress": "Dictation in progress",
  "test.dictation_not_started": "Dictation not started",
  "test.dictation_placeholder": "Start typing the text you hear from the audio...",
  "test.error_title": "Error Loading Test",
  "test.explanation": "Explanation:",
  "test.hide": "Hide",
  "test.level": "Level {level}",
  "test.loading": "Loading test...",
  "test.loading_title": "Loading...",
  "test.mark_unknown": "Mark as Unknown",
  "test.next": "Next",
  "test.of_answered": "{answered} of {total} answered",
  "test.previous": "Previous",
  "test.question_of": "Question {current} of {total}",
  "test.questions": "Questions",
  "test.reading_passage": "Reading Passage",
  "test.retry": "Retry",
  "test.show": "Show",
  "test.submit_failed": "Failed to submit test. Please try again.",
  "test.submit_test": "Submit Test",
  "test.success_hint": "Great job! Use the \"Back to Test List\" button below to continue practicing.",
  "test.success_score": "Score: {score}/{total} ({percentage}%)",
  "test.success_title": "Test submitted successfully!",
  "test.tap_word_hint": "Tap any word for its definition",
  "test.type_what_you_hear": "Type what you hear",
  "test_intro.classifier_drill.body": "<p>Practice matching Chinese nouns with their correct measure word (classifier) — an endless drill, not a scored test.</p><p>Use the toggle at the top to switch between <strong>Auto</strong> (adapts to your mastery), <strong>Choose</strong> (multiple choice), and <strong>Type</strong> (type the classifier yourself).</p>",
  "test_intro.classifier_drill.title": "Classifier (Measure Word) Drill",
  "test_intro.counter_drill.body": "<p>Practice matching Japanese nouns with their correct counter (助数詞) — an endless drill, not a scored test.</p><p>Use the toggle at the top to switch between <strong>Auto</strong> (adapts to your mastery), <strong>Choose</strong> (multiple choice), and <strong>Type</strong> (type the counter yourself).</p>",
  "test_intro.counter_drill.title": "Counter Drill",
  "test_intro.dictation.body": "<p>Listen to the audio, then type exactly what you hear into the box.</p><p>Submit your answer to see how closely it matches — you can replay the audio as many times as you like.</p>",
  "test_intro.dictation.title": "Dictation",
  "test_intro.got_it": "Got it, let's go!",
  "test_intro.info_aria": "About this test",
  "test_intro.listening.body": "<p>Press play to hear the audio clip — you can replay it as many times as you need.</p><p>Then answer each multiple-choice question based on what you heard.</p>",
  "test_intro.listening.title": "Listening Comprehension",
  "test_intro.pinyin.body": "<p>Read through the passage character by character, marking the tone of each one as you go.</p><p>Use the arrow keys (or swipe on touch devices): right for Tone 1, up for Tone 2, left for Tone 3, down for Tone 4, and space (or tap) for the neutral tone.</p>",
  "test_intro.pinyin.title": "Pinyin Tone Practice",
  "test_intro.pitch_accent.body": "<p>In <strong>Quick mode</strong>, classify each word's overall pitch pattern — Heiban, Atamadaka, Nakadaka, or Odaka — using the arrow keys or a swipe.</p><p>In <strong>Contour mode</strong>, mark each mora of the word as low or high, then submit.</p>",
  "test_intro.pitch_accent.title": "Pitch Accent Practice",
  "test_intro.reading.body": "<p>Read the passage, then answer the multiple-choice questions about it.</p><p>There's no time limit, and you can scroll back up to re-read the passage at any point.</p>",
  "test_intro.reading.title": "Reading Comprehension",
  "test_list.all_levels": "All Levels",
  "test_list.all_types": "All Types",
  "test_list.attempts": "{count} attempts",
  "test_list.classifier_drill": "Measure Words",
  "test_list.clear_filters": "Clear Filters",
  "test_list.custom": "Custom",
  "test_list.dictation": "Dictation",
  "test_list.difficulty": "Difficulty",
  "test_list.error_default": "Failed to load tests. Please try again.",
  "test_list.error_title": "Error Loading Tests",
  "test_list.featured": "Featured",
  "test_list.filter": "Filter Tests",
  "test_list.listening": "Listening",
  "test_list.no_tests": "No Tests Found",
  "test_list.no_tests_hint": "Try adjusting your filters or check back later for new tests.",
  "test_list.pinyin": "Pinyin Tones",
  "test_list.pitch_accent": "Pitch Accent",
  "test_list.premium": "Premium",
  "test_list.random_failed": "Failed to get random test. Please try again.",
  "test_list.random_hint": "Get a random test at your level",
  "test_list.reading": "Reading",
  "test_list.recommended": "Recommended for You",
  "test_list.recommended_empty": "Complete a few tests to get personalized recommendations!",
  "test_list.recommended_error": "Could not load recommendations",
  "test_list.reset": "Reset",
  "test_list.retry": "Retry",
  "test_list.start_test": "Start Test",
  "test_list.subtitle": "Select a test to practice and improve your language skills",
  "test_list.surprise": "Surprise Me!",
  "test_list.test_type": "Test Type",
  "test_list.title": "Browse Tests",
  "test_preview.attempts": "1 attempt|{count} attempts",
  "test_preview.audio_available": "Audio Available",
  "test_preview.back_to_tests": "Back to Tests",
  "test_preview.breadcrumb_home": "Home",
  "test_preview.breadcrumb_preview": "Test Preview",
  "test_preview.breadcrumb_tests": "Tests",
  "test_preview.coming_soon": "Coming Soon",
  "test_preview.custom": "Custom",
  "test_preview.dictation": "Dictation",
  "test_preview.elo_rating": "ELO Rating:",
  "test_preview.error_default": "Failed to load test details. Please try again.",
  "test_preview.error_title": "Error Loading Test",
  "test_preview.listening": "Listening",
  "test_preview.loading": "Loading test details...",
  "test_preview.pinyin": "Pinyin Tones",
  "test_preview.pitch_accent": "Pitch Accent",
  "test_preview.reading": "Reading",
  "test_preview.select_type": "Select Test Type",
  "test_preview.start_test": "Start Test",
  "test_preview.start_type_test": "Start {type} Test",
  "test_preview.volatility": "Volatility: {value}",
  "test_preview.your_attempts": "Your Attempts: {count}",
  "test_preview.study_first": "Study first",
  "test_preview.study_first_hint": "Learn the key words before you take the test. Your first attempt then counts at half weight for your rating.",
  "counter_drill.title": "Counters",
  "counter_drill.mode_mc": "Choose",
  "counter_drill.mode_type": "Type",
  "counter_drill.loading": "Loading…",
  "counter_drill.empty": "No counter items are available yet.",
  "counter_drill.typed_placeholder": "counter",
  "counter_drill.typed_hint": "Press Enter to check",
  "counter_drill.feedback_continue": "Continue",
  "counter_drill.feedback_numerals": "Counting 1-10:",
  "counter_drill.feedback_also": "Also acceptable:",
  "counter_drill.results_counters": "counters",
  "counter_drill.results_next": "Next round",
  "counter_drill.results_exit": "Done",
  "counter_drill.error_init": "Could not start the counter drill.",
  "counter_drill.error_load": "Could not load counter items.",
  "counter_drill.submit_failed": "Score not recorded — your ELO is unchanged.",
  "dt_card.heading": "Review card",
  "dt_card.subtype_label": "Focus",
  "dt_card.cloze_instructions": "Fill in the missing part.",
  "dt_card.isolate_instructions": "Translate this into the language you’re studying.",
  "dt_card.reference_label": "Reference (in your language)",
  "dt_card.your_answer_label": "Your answer",
  "dt_card.check": "Show answer",
  "dt_card.answer_label": "Answer",
  "dt_card.full_sentence_label": "Full sentence",
  "dt_card.correct": "Correct",
  "dt_card.incorrect": "Not quite",
  "dt_card.rate_prompt": "How well did you know it?",
  "dt_card.rating_again": "Again",
  "dt_card.rating_hard": "Hard",
  "dt_card.rating_good": "Good",
  "dt_card.rating_easy": "Easy",
  "dt_card.save_failed": "Couldn’t save your review — check your connection.",
  "word_list.col_language": "Language",
  "word_list.col_ladder": "Ladder",
  "word_list.col_match": "Matched Test",
  "word_list.col_uploaded": "Uploaded",
  "word_list.col_word": "Word",
  "word_list.error_empty": "Enter at least one word.",
  "word_list.error_generic": "Something went wrong. Please try again.",
  "word_list.error_load": "Couldn't load your watchlist.",
  "word_list.error_no_language": "Choose a language.",
  "word_list.inactive": "Inactive",
  "word_list.intro": "Upload words you want to keep practicing. Every word is added to your vocabulary ladder right away, and the app watches for matching tests as new ones are created.",
  "word_list.ladder_pending": "Pending",
  "word_list.ladder_ready": "Ladder ready",
  "word_list.language_label": "Language",
  "word_list.loading": "Loading…",
  "word_list.match_found": "Match found",
  "word_list.processing": "Processing your words — this can take a while for brand-new words.",
  "word_list.sense_label": "Sense",
  "word_list.submit": "Submit",
  "word_list.submitting": "Submitting…",
  "word_list.textarea_label": "Words",
  "word_list.textarea_placeholder": "Enter one word per line",
  "word_list.title": "Word List",
  "word_list.view_test": "View test",
  "word_list.watching": "Watching",
  "word_list.watchlist_empty": "No words yet — submit a list above to get started.",
  "word_list.watchlist_title": "Your Watchlist",
  "calibration.title": "Calibration",
  "calibration.answered": "answered",
  "calibration.correct": "correct",
  "calibration.finish": "Finish",
  "calibration.loading": "Preparing your calibration…",
  "calibration.instruction": "Which definition is correct?",
  "calibration.skip": "I don't know",
  "calibration.next": "Next word",
  "calibration.next_hint": "or press Enter",
  "calibration.restart": "Start again",
  "calibration.home": "Back home",
  "calibration.exhausted": "You have seen every word we have for this language. That is the whole dictionary!",
  "calibration.error_start": "Could not start calibration. Please try again.",
  "calibration.error_item": "Could not load the next word. Please try again.",
  "calibration.result_zipf_sub": "Your vocabulary reaches down to this word-frequency level (Zipf). Lower is a larger vocabulary.",
  "calibration.result_not_enough": "Answer more words to get a frequency level — right now this is just your score so far.",
  "calibration.rating_title": "Test difficulty",
  "calibration.rating_set": "{type}: set to {to}",
  "calibration.rating_changed": "{type}: adjusted {from} → {to}",
  "calibration.rating_unchanged": "{type}: unchanged — {reason}",
  "calibration.rating_type_reading": "Reading",
  "calibration.rating_type_listening": "Listening",
  "calibration.rating_type_dictation": "Dictation",
  "calibration.rating_type_pitch_accent": "Pitch accent",
  "calibration.rating_reason_G1_no_state": "no vocabulary estimate yet",
  "calibration.rating_reason_G2_low_items": "answer at least 20 words first",
  "calibration.rating_reason_G3_high_se": "the estimate is still too uncertain",
  "calibration.rating_reason_G4_stale": "the estimate is out of date",
  "calibration.rating_reason_G5_in_session": "you took a test in the last hour — try again later",
  "calibration.rating_reason_G6_rate_limit": "already adjusted in the last 7 days",
  "calibration.rating_reason_within_deadband": "already close to your level",
  "calibration.note_curve": "Each bar is how often you knew words at that frequency. Common words are at the bottom of the list, rare words at the top.",
  "calibration.note_low_confidence": "This is based on only a few answers, so treat it as a rough first impression.",
  "calibration.mode_definition": "Meanings",
  "calibration.mode_pronunciation": "Readings",
  "calibration.mode_pronunciation_unavailable": "Readings are only available for Chinese and Japanese.",
  "calibration.instruction_pronunciation": "Which reading is correct?",
  "study_plan.daily_session.title": "Daily session",
  "study_plan.daily_session.intro": "Choose what your daily time covers and which parts make up your session.",
  "study_plan.daily_session.scope.heading": "What your daily time covers",
  "study_plan.daily_session.scope.tests_and_review": "Tests + vocabulary review",
  "study_plan.daily_session.scope.tests_and_review_desc": "Your daily time covers tests and vocabulary review. New words are a daily quota planned inside it; what does not fit is offered as optional work after the session.",
  "study_plan.daily_session.scope.tests_only": "Tests only",
  "study_plan.daily_session.scope.tests_only_desc": "Your daily time covers tests only (flashcards and dual translation count as tests). Review and new words are offered as optional work after the session.",
  "study_plan.daily_session.scope.hint": "Flashcards and dual translation count as tests. “Tests only” needs at least one test module switched on.",
  "study_plan.daily_session.new_words.label": "New words per day",
  "study_plan.daily_session.new_words.unit": "words per day",
  "study_plan.daily_session.new_words.help": "A daily quota (0–50; 0 turns new words off), planned inside your session. Practice time is counted at about {minutes} min per word. What does not fit is offered as an optional round after the session.",
  "study_plan.daily_session.new_words.hint_in_budget": "About {words} of these fit inside your {daily} min; the rest come in an optional extra round after your session.",
  "study_plan.daily_session.new_words.hint_tail_only": "New words come in an optional extra round after your session.",
  "study_plan.daily_session.new_words.estimate": "~{fit} fit in your session, ~{after} after (optional)",
  "study_plan.daily_session.new_words.estimate_off": "Off — no new words",
  "study_plan.daily_session.new_words.estimate_paused": "Paused today — 0 new words",
  "study_plan.daily_session.new_words.needs_module": "At least one module must stay on, so new words cannot go to 0.",
  "study_plan.daily_session.new_words.decrease": "Fewer new words",
  "study_plan.daily_session.new_words.increase": "More new words",
  "study_plan.daily_session.forecast": "≈ +{minutes} min/day of reviews in a month (estimate)",
  "study_plan.daily_session.typical_day": "Typical day: {daily} min (about {words} new words and ~{review} min of review inside it).",
  "study_plan.daily_session.typical_day_no_words": "Typical day: {daily} min (including ~{review} min of review).",
  "study_plan.daily_session.typical_day_tail": "Optional extra round: ~{words} new words (~{minutes} min).",
  "study_plan.daily_session.typical_day_tests_only": "Typical day: {daily} min of tests. Optional extra round: ~{review} min of review and {words} new words (~{minutes} min).",
  "study_plan.daily_session.typical_day_tests_only_no_words": "Typical day: {daily} min of tests. Optional extra round: ~{review} min of review.",
  "study_plan.daily_session.typical_day_tests_only_no_review": "Typical day: {daily} min of tests. Optional extra round: {words} new words (~{minutes} min).",
  "study_plan.daily_session.typical_day_tests_only_none": "Typical day: {daily} min of tests.",
  "study_plan.daily_session.shortfall": "{n} short today: exercises for more words are still being prepared.",
  "study_plan.daily_session.last_module_hint": "At least one module (or new words) must stay on.",
  "study_plan.daily_session.governor.paused": "New words paused — catching up on {reviews}",
  "study_plan.daily_session.governor.reduced": "New words reduced — catching up on {reviews}",
  "study_plan.session.new_words_no_review_warning": "Vocabulary review is off — words you learn won't be reviewed.",
  "study_plan.stats.new_words": "New words",
  "study_plan.stats.optional_rounds": "{minutes} min in optional rounds",
  "study_plan.modules.title": "Modules",
  "study_plan.modules.hint": "Turned-off modules are only left out of your daily session — you can still use them any time from the rest of the app.",
  "study_plan.modules.last_one": "At least one module (or new words) must stay on.",
  "study_plan.modules.last_test": "Tests only needs at least one test module switched on.",
  "study_plan.modules.flashcards_only_hint": "Only Flashcard review is on, so your daily session will be short.",
  "study_plan.modules.session_rebuilt": "Saved — today’s unfinished session was rebuilt.",
  "study_plan.modules.reading": "Reading",
  "study_plan.modules.listening": "Listening",
  "study_plan.modules.dictation": "Dictation",
  "study_plan.modules.pinyin": "Pinyin tones",
  "study_plan.modules.classifier_drill": "Measure words",
  "study_plan.modules.pitch_accent": "Pitch accent",
  "study_plan.modules.flashcards": "Flashcard review",
  "study_plan.modules.dual_translation": "Dual translation",
  "study_plan.modules.practice": "Vocabulary review",
  "session.tail.prompt": "Session done — {reviews} and {words} left today. Keep going?",
  "session.tail.prompt_reviews_only": "Session done — {reviews} left today. Keep going?",
  "session.tail.prompt_words_only": "Session done — {words} left today. Keep going?",
  "session.tail.keep_going": "Keep going",
  "session.tail.done": "Done for today",
  "session.tail.finished": "Done for today — nice work.",
  "session.tail.reviews_count": "{n} reviews",
  "session.tail.reviews_count_one": "1 review",
  "session.tail.words_count": "{n} new words",
  "session.tail.words_count_one": "1 new word",
  "session.governor.paused": "New words paused — catching up on {reviews}",
  "session.governor.reduced": "New words reduced — catching up on {reviews}",
  "study_plan.daily_session.typical_heading": "Typical day",
  "study_plan.daily_session.prestudy.heading": "Study before hard tests",
  "study_plan.daily_session.prestudy.auto": "Automatically",
  "study_plan.daily_session.prestudy.ask": "Ask me",
  "study_plan.daily_session.prestudy.off": "Off",
  "study_plan.daily_session.prestudy.hint": "Before a new test where more than a quarter of the key words are new to you, and before every retry, the session adds a short word study. It uses test time, so a day may have one fewer test. \"Study first\" stays available on every test.",
  "session.extra.title": "Keep practising",
  "session.extra.reviews": "Reviews (no limit — due first, then ahead of schedule)",
  "session.extra.new_words": "New words this round",
  "session.extra.start": "Start round",
  "session.extra.done": "Done",
  "session.extra.beyond_quota": "{n} of these words go beyond today's goal — they add to your future reviews.",
  "session.prestudy.title": "Study first",
  "session.prestudy.why_full": "{pct}% of this test's key words are new to you. Learn them first, then take the test.",
  "session.prestudy.why_light": "{pct}% of this test's key words are new to you: a quick warm-up on the words you don't know yet.",
  "session.prestudy.why_retry": "You are retrying this test. Study its key words first.",
  "session.prestudy.minutes": "About {n} min",
  "session.prestudy.elo": "Your first attempt then counts at half weight",
  "session.prestudy.dropped": "1 fewer test today|{count} fewer tests today",
  "session.prestudy.start": "Start studying",
  "session.prestudy.cold": "Take it cold",
  "session.prestudy.offer": "{pct}% of the key words are new to you. Study first (about {n} min).",
  "session.prestudy.offer_recommended": "{pct}% of the key words are new to you. Study first? About {n} min.",
  "prestudy.page_title": "Study first",
  "prestudy.loading": "Preparing your study session...",
  "prestudy.error_load": "Could not load the study material. You can still take the test.",
  "prestudy.step_preview": "Preview",
  "prestudy.step_prime": "Word prime",
  "prestudy.step_ready": "Ready",
  "prestudy.unknown_share": "{pct}% of key words new to you",
  "prestudy.mode_full": "Full prestudy recommended",
  "prestudy.mode_light": "A short prime is enough",
  "prestudy.mode_none": "You know most of these words",
  "prestudy.minutes": "About {n} min",
  "prestudy.elo_note": "Your first attempt after studying counts at half weight for your rating.",
  "prestudy.audio_unavailable": "Audio could not be loaded.",
  "prestudy.highlight": "Highlight new words",
  "prestudy.aids_label": "Reading aids",
  "prestudy.aids_unknown": "On new words",
  "prestudy.aids_all": "On every word",
  "prestudy.aids_off": "Off",
  "prestudy.passage_stats": "{n} linked words · {unknown} new · {inq} of those appear in a question",
  "prestudy.key_words": "Key words",
  "prestudy.key_words_count": "{shown} of {total} new words",
  "prestudy.no_key_words": "No new words in this test for you. You can take it straight away.",
  "prestudy.no_gloss": "(no definition in your language yet)",
  "prestudy.in_question": "In a question",
  "prestudy.occurrences": "×{n}",
  "prestudy.exercises_count": "1 exercise|{count} exercises",
  "prestudy.pop_close": "Close",
  "prestudy.drill_words_count": "{n} words to study",
  "prestudy.added_chip": "Added by you",
  "prestudy.pop_add": "I don't know this — add to study",
  "prestudy.pop_remove": "Remove from study",
  "prestudy.pop_in_drill": "In your study list",
  "prestudy.pop_in_passage": "×{n} in the passage",
  "prestudy.status_unknown": "New",
  "prestudy.status_encountered": "Seen before",
  "prestudy.status_learning": "Learning",
  "prestudy.status_probably_known": "Probably known",
  "prestudy.status_known": "Known",
  "prestudy.take_cold": "Skip and take the test",
  "prestudy.start_prime": "Start the word prime",
  "prestudy.back": "Back",
  "prestudy.continue": "Continue",
  "prestudy.stage_reading": "Reading",
  "prestudy.stage_meaning": "Meaning",
  "prestudy.stage_use": "Use",
  "prestudy.stage_practice": "Practice",
  "prestudy.ask_read": "Type the reading",
  "prestudy.ask_read_again": "Type the reading again",
  "prestudy.ask_def": "Choose the meaning",
  "prestudy.ask_rev": "Which word means this?",
  "prestudy.ask_cloze": "Which word fits the passage?",
  "prestudy.ask_exercise": "Exercise",
  "prestudy.item_of": "Item {i} of {n}",
  "prestudy.again": "again",
  "prestudy.exposure": "Exposure {n}",
  "prestudy.hint_zh": "Type the pinyin. Add tones as numbers or marks (mu4 tou5 / mù tou), or pick them next.",
  "prestudy.hint_ja": "Type the reading in kana or romaji.",
  "prestudy.placeholder_pinyin": "pinyin",
  "prestudy.placeholder_kana": "ひらがな / romaji",
  "prestudy.typed_placeholder_zh": "汉字",
  "prestudy.typed_placeholder_ja": "漢字・かな",
  "prestudy.typed_placeholder_en": "Type the word",
  "prestudy.check": "Check",
  "prestudy.tones_now": "Syllables right. Now pick the tones:",
  "prestudy.tone_label": "Tone {n}",
  "prestudy.idk": "I don't know",
  "prestudy.idk_note": "Shows the answer, and this word comes back for extra practice.",
  "prestudy.correct": "Correct.",
  "prestudy.idk_reveal": "No problem, here it is.",
  "prestudy.wrong": "Not quite.",
  "prestudy.meaning_label": "Meaning: {def}",
  "prestudy.meaning_next": "The meaning comes next. Say the word to yourself once more first.",
  "prestudy.example": "Example: {ex}",
  "prestudy.in_passage": "In this passage:",
  "prestudy.full_sentence": "Full sentence:",
  "prestudy.reasked": "You'll see this one again in a moment.",
  "prestudy.moving_on": "Moving on for now.",
  "prestudy.booster_added": "One extra turn for this word was added at the end.",
  "prestudy.syllables_wrong": "The syllables are not right.",
  "prestudy.tones_wrong": "Syllables right, tones wrong.",
  "prestudy.romaji_ok": "Romaji accepted.",
  "prestudy.next": "Next",
  "prestudy.finish": "Finish",
  "prestudy.prime_header": "{words} words · {items} items",
  "prestudy.no_prime_needed": "No words to prime for this test. Continue when you're ready.",
  "prestudy.done_first_try": "correct on the first try",
  "prestudy.done_reading": "reading items",
  "prestudy.done_meaning": "meaning and use items",
  "prestudy.done_idk": "\"I don't know\" answers",
  "prestudy.next_readiness": "Next: a quick readiness check, up to five typed readings with no feedback until the end.",
  "prestudy.next_readiness2": "Next: one more readiness check.",
  "prestudy.next_ready": "Next: you're ready to take the test.",
  "prestudy.finish_round_first": "Finish the current round first.",
  "prestudy.readiness_title": "Readiness check · round {n}",
  "prestudy.check_of": "Check {i} of {n}",
  "prestudy.no_feedback": "No feedback yet",
  "prestudy.ready_hint_zh": "Pinyin with tones (mu4 tou5 or mù tou)",
  "prestudy.ready_hint_ja": "Kana or romaji",
  "prestudy.no_readiness_words": "No words with readings to check. Continue when you're ready.",
  "prestudy.readiness_score": "Round {round} (need {need})",
  "prestudy.ready": "Ready",
  "prestudy.not_yet": "Not yet",
  "prestudy.ready_unlocked": "You're ready for the test.",
  "prestudy.extra_round_note": "One short extra round on the words you missed, then one more check.",
  "prestudy.proceed_anyway": "You can take the test anyway. Studying never blocks it.",
  "prestudy.col_word": "Word",
  "prestudy.col_typed": "You typed",
  "prestudy.col_reading": "Reading",
  "prestudy.extra_round": "Extra round on missed words",
  "prestudy.extra_round_header": "Extra round · {n} missed words",
  "prestudy.ready_title": "Ready for the test",
  "prestudy.summary_words": "words studied",
  "prestudy.summary_first_try": "correct on the first try",
  "prestudy.summary_readiness": "readiness check",
  "prestudy.saving": "Saving your answers...",
  "prestudy.saved": "Your answers were saved to your word knowledge.",
  "prestudy.save_failed": "Your answers could not be saved. The test still works.",
  "prestudy.take_test": "Take the test",
  "prestudy.tap_pieces": "Tap the pieces in order",
  "prestudy.undo": "Undo",
  "prestudy.ex_cloze_completion": "Fill the blank",
  "prestudy.ex_cloze_typed": "Type the missing word",
  "prestudy.ex_semantic_discrimination": "Which sentence uses it correctly?",
  "prestudy.ex_spot_incorrect_sentence": "Which sentence is wrong?",
  "prestudy.ex_tl_nl_translation": "Choose the translation",
  "prestudy.ex_jumbled_sentence": "Put the sentence in order",
  "prestudy.ex_definition_match": "Match the definition",
  "prestudy.ex_particle_selection": "Choose the particle",
  "prestudy.ex_morphology_slot": "Choose the form",
  "prestudy.ex_synonym_antonym_match": "Synonym or antonym",
  "prestudy.step_followup": "Follow-up",
  "prestudy.step_produce": "Produce",
  "prestudy.next_produce": "Next: use these words yourself in a short translation.",
  "prestudy.followup_done_title": "Follow-up done",
  "prestudy.produce_intro": "Now produce them: translate two to four sentences of this passage back into the language you are learning, from a reference in your language. Each primed word you use is marked.",
  "prestudy.produce_start": "Translate a passage (about 5 min)",
  "prestudy.produce_loading": "Choosing the passage...",
  "prestudy.produce_none": "No translation passage is ready for this test in your language yet.",
  "prestudy.produce_failed": "The translation could not be started. Try again later.",
  "prestudy.back_to_session": "Back to today's session",
  "prestudy.result_followup": "Review the words you missed (about 2 min)",
  "prestudy.result_produce": "Translate a passage from this test (about 5 min)",
  "prestudy.result_prestudied": "Prestudied: this attempt counted at half weight.",
  "prestudy.produce_words": "Your primed words",
  "prestudy.produce_produced": "Produced",
  "prestudy.produce_variant": "Different form",
  "prestudy.produce_omitted": "Missing: back tomorrow",
  "test.show_translation": "Show translation",
  "test.hide_translation": "Hide translation",
  "intro.progress": "New words — {n} of {total} to go",
  "intro.stage": "New word · session {n} of 4",
  "intro.pips_title": "Right answers needed",
  "intro.ask_reading": "Type the reading",
  "intro.pinyin_hint": "pinyin with tone numbers, e.g. mu4 tou5",
  "intro.kana_hint": "kana or romaji",
  "intro.ask_recall": "Type the word for this meaning",
  "intro.ask_cloze_typed": "Type the missing word",
  "intro.ask_meaning": "What does it mean?",
  "intro.ask_word": "Which word means this?",
  "intro.ask_cloze": "Which word fills the gap?",
  "intro.check": "Check",
  "intro.idk": "I don't know",
  "intro.right": "Right!",
  "intro.wrong": "Not quite.",
  "intro.idk_shown": "Here it is — it will come back soon.",
  "intro.done": "New-word drill done: {n} words.",
  "prestudy.overflow_title": "You drilled {total} words; today's new-word limit has room for {fits}.",
  "prestudy.overflow_body": "The other {over} can wait for the coming days, or start today (about +{min} min a day for the next four days).",
  "prestudy.overflow_queue": "Queue the rest for later",
  "prestudy.overflow_add": "Add all {over} now",
  "prestudy.overflow_queued": "{over} words queued for the coming days.",
  "prestudy.overflow_added": "{n} words added to today’s drill.",
  "intro.saving": "Saving your new words…",
  "session.checkpoint_badge": "Checkpoint · {i} of {n}",
  "session.final_test_badge": "Final test · {i} of {n}",
  "session.checkpoint_loading": "Getting your checkpoint ready…",
  "session.checkpoint_passed": "Checkpoint passed ({score}) — this word moves up a ring.",
  "session.checkpoint_failed": "Checkpoint not passed ({score}) — keep practising this word and it will come back.",
  "session.final_test_passed": "Final test passed ({score}) — this word is mastered and moves to long-term review.",
  "session.final_test_failed": "Final test not passed ({score}) — a little more practice first.",
  "session.count_loading": "Counting exercises…",
  "session.count_exercises_one": "1 exercise",
  "session.count_exercises": "{count} exercises",
  "session.count_new_words_one": "1 new word to learn",
  "session.count_new_words": "{count} new words to learn",
  "session.count_minutes": "about {minutes} min",
  "session.count_more_rounds_one": "then 1 more round",
  "session.count_more_rounds": "then {count} more rounds",
  "session.count_none": "Nothing to practise right now",
  "session.count_drill_reviews_one": "1 word to review",
  "session.count_drill_reviews": "{count} words to review",
  "dictation.audio_error": "The audio couldn’t load. Check your connection and try again, or skip this one for now.",
  "native_prompt.title": "Which language do you read best?",
  "native_prompt.body": "We'll explain new words in this language. You can change it any time in your profile.",
  "native_prompt.skip": "Skip",
  "difficulty.tier1": "Toddler (4–5)",
  "difficulty.tier2": "Primary school (8–9)",
  "difficulty.tier3": "Young teen (13–14)",
  "difficulty.tier4": "High school (16–17)",
  "difficulty.tier5": "University (19–21)",
  "difficulty.tier6": "Professional (30+)",
  "dt_repair.dialog_label": "Feedback",
  "dt_repair.close": "Close",
  "dt_repair.progress": "Sentence {i} of {n}",
  "dt_repair.result_fix_one": "sentence to fix",
  "dt_repair.result_fix_many": "sentences to fix",
  "dt_repair.result_look_one": "sentence to look at",
  "dt_repair.result_look_many": "sentences to look at",
  "dt_repair.result_others_fine": "The other {n} look fine.",
  "dt_repair.start": "Start",
  "dt_repair.clean_title": "No issues found",
  "dt_repair.clean_body": "Nothing was flagged in your translation.",
  "dt_repair.done": "Done",
  "dt_repair.label_fix": "Fix your sentence",
  "dt_repair.label_unsure": "This part may need another look",
  "dt_repair.from_date": "From your translation on {day}",
  "dt_repair.prompt_more": "Show the whole prompt",
  "dt_repair.tap_close": "Tap to close",
  "dt_repair.check": "Check",
  "dt_repair.checking": "Checking…",
  "dt_repair.hint_need": "Need a hint?",
  "dt_repair.hint_another": "Another hint",
  "dt_repair.show_answer": "Show answer",
  "dt_repair.mine_fine": "Mine is fine",
  "dt_repair.hint_n_of": "Hint {n} of {total}",
  "dt_repair.hint_where": "Look at the underlined part.",
  "dt_repair.still": "Still not quite. Try again, or take a hint.",
  "dt_repair.still_last": "Still not quite. Try again.",
  "dt_repair.same": "That’s the same sentence. Change something first.",
  "dt_repair.check_failed": "Couldn’t check just now — try again.",
  "dt_repair.hint_failed": "Couldn’t load a hint — try again.",
  "dt_repair.answer_failed": "Couldn’t load the answer.",
  "dt_repair.retry": "Try again",
  "dt_repair.skip_sentence": "Skip this sentence",
  "dt_repair.fixed": "Fixed",
  "dt_repair.fixed_own": "On your own",
  "dt_repair.fixed_no_more": "Without any more help",
  "dt_repair.fixed_hints_one": "With 1 hint",
  "dt_repair.fixed_hints_many": "With {n} hints",
  "dt_repair.kept_title": "Kept as written",
  "dt_repair.kept_body": "We’ll leave this one alone.",
  "dt_repair.compare": "Compare",
  "dt_repair.compare_no_issue": "No issue found. Compare:",
  "dt_repair.compare_disputed": "Noted. Compare:",
  "dt_repair.you_wrote": "You wrote",
  "dt_repair.answer": "Answer",
  "dt_repair.next": "Next",
  "dt_repair.finish": "Finish",
  "dt_repair.summary_title": "All done",
  "dt_repair.summary_daily_title": "Practice done",
  "dt_repair.summary_fixed": "Fixed yourself",
  "dt_repair.summary_help": "Needed help",
  "dt_repair.summary_saved": "Saved to practice",
  "dt_repair.summary_later": "Back in practice later",
  "dt_repair.result_load_failed": "Couldn’t load your full feedback.",
  "dt_repair.loading": "Loading…",
  "session.dt_repair_heading": "Fix your sentences",
  "session.dt_repair_none": "Nothing to fix today."
}
