{
  "ui": {
    "app": {
      "name": "Live Youth Scores",
      "tagline": "Live results for children's and youth sport, reported by the people at the events."
    },
    "auth": {
      "sign_in": "Sign in",
      "email_code_help": "Enter your account email. We will send a one-time sign-in code.",
      "email": "Email address",
      "code": "Sign-in code",
      "send_code": "Send code",
      "verify_code": "Verify and sign in",
      "sign_in_failed": "We couldn't sign you in. Check the details and try again.",
      "signed_in_as": "Signed in as {username}",
      "sign_out": "Sign out",
      "continue": "Continue",
      "oauth_client_published_at": "Published at {host}",
      "oauth_client_name_self_described": "Name supplied by the app: {name}",
      "oauth_open_connected_apps": "Open Connected apps",
      "oauth_scopes_intro": "This app is asking permission to:",
      "oauth_scope_unknown": "Do something this screen cannot describe ({scope}). If you do not recognise it, choose Cancel.",
      "oauth_scope": {
        "public_read": {
          "label": "Read public results and follow for you",
          "detail": "See public fixtures, live scores, rankings and records — and follow or unfollow teams, schools, clubs and competitions on your behalf."
        },
        "score_submit": {
          "label": "Report scores as you",
          "detail": "Submit live scores and results in your name. Every score it sends is marked as sent through this app."
        },
        "name_submit": {
          "label": "Suggest player names",
          "detail": "Propose a player's given name on a fixture page. You approve each suggestion before it is submitted."
        },
        "resource_assert": {
          "label": "Say which field or court a match is on",
          "detail": "Pick one of the venue's existing fields or courts for a match. Adding a new field or court always needs your approval first."
        },
        "team_manage": {
          "label": "Help run teams you manage",
          "detail": "Draft squad proposals and match-day lineups for your teams. You approve each one before anything is published to players or guardians."
        },
        "event_manage": {
          "label": "Help run events you organise",
          "detail": "Update event programmes and send organiser notices, such as delays, for events you organise."
        },
        "household_respond": {
          "label": "Answer for your household",
          "detail": "Respond to availability, duty and confirmation requests on behalf of the players you are guardian for."
        }
      }
    },
    "public_mcp": {
      "fixture_programme_view": "Read one nameless fixture programme.",
      "fixture_score_projection": "Read the current score and confidence for one fixture.",
      "item_score_projection": "Read the current score and confidence for one public item.",
      "venue_day": "Page through public items at one venue on one date.",
      "event_programme": "Page through the public programme for one event.",
      "event_live_token": "Get bounded live subscription tokens for one event page.",
      "team_ranking_table": "Page through a country and date selected team ranking table.",
      "team_ranking_scope_options": "List available team ranking filters for a country and date.",
      "performance_ranking_table": "Page through a country and date selected performance ranking table.",
      "performance_ranking_scope_options": "List available performance ranking filters for a country and date.",
      "session_points_table": "Page through one competition's session points on a date.",
      "standards_ranking_table": "Page through a country and date selected standards table.",
      "ranking_rulebook": "Read one published ranking programme version's rulebook.",
      "record_board": "Page through current nameless record holders for a sport.",
      "fixture_slot_lineages": "Page through non identifying shirt or entry lineages in one fixture.",
      "fixture_slot_lineage_stats": "Read one non identifying shirt or entry lineage within one fixture.",
      "item_score_timeline": "Read the selected match timeline, with reported timing and shirt numbers."
    },
    "connected_apps": {
      "title": "Connected apps and agents",
      "scopes_intro": "What this app is allowed to do:",
      "restriction_read_only": "Read only — it cannot change anything for you.",
      "restriction_resource_scope": "Limited to one team, organisation or event ({id}).",
      "restriction_historical_read": "May read past events under one expired grant ({id}).",
      "restriction_unknown": "Restriction {kind} ({id}).",
      "restriction_no_resource": "not set",
      "agents": "AI agent connections",
      "api_keys": "API keys",
      "pending": "Pending approvals",
      "none": "None",
      "active": "Active",
      "revoked": "Revoked",
      "revoke": "Revoke",
      "activity": "View activity",
      "restriction": "Add a restriction",
      "read_only": "Read only",
      "resource_scope": "One resource",
      "historical_read": "Historical read grant",
      "resource_kind": "Resource type",
      "resource_id": "Resource ID or historical grant ID",
      "team": "Team",
      "organisation": "Organisation",
      "event": "Event",
      "narrow": "Add restriction",
      "revoke_restriction": "Remove restriction",
      "review": "Review agent request",
      "expires": "Expires",
      "approve": "Approve exact request",
      "deny": "Deny request",
      "choose_historical_grant": "Choose an expired grant",
      "no_historical_grants": "No eligible expired grants for this agent",
      "moderator": "Moderator",
      "team_manager": "Team manager",
      "event_organizer": "Event organiser",
      "cannot_review": "This request cannot be reviewed here, so it cannot be approved. Deny it or let it expire.",
      "review_name_title": "Proposed fixture name",
      "review_given_name": "Given name",
      "review_surname_hint": "Surname hint (never displayed)",
      "review_fixture": "Fixture",
      "review_shirt": "Shirt",
      "review_organisation": "Representing organisation",
      "review_submitted_at": "Submitted at",
      "review_exact_request": "Exact request",
      "review_roster_title": "Proposed squad member",
      "review_team": "Team",
      "review_season": "Season",
      "review_player": "Player",
      "review_birth_year": "Birth year",
      "review_agent": "Requested by",
      "review_roster_unavailable": "You no longer hold team authority for this proposal, or the player is not available to this team, so it cannot be approved.",
      "review_lineup_unavailable": "You no longer manage this team, a player is no longer in the squad, or the request no longer matches the fixture, so this lineup cannot be approved.",
      "review_lineup_title": "Proposed match-day lineup",
      "review_lineup_notice": "Approving lets the agent publish exactly this lineup for you. Selection and non-selection notices then go to guardians first, then players.",
      "review_fixture_date": "Date",
      "review_lineup_entries": "Players in this lineup",
      "review_entry_target": "Fixture, rubber or event",
      "review_role": "Role",
      "review_position": "Position",
      "review_display_key": "Shirt or entry key",
      "review_captain": "Captain",
      "review_captain_yes": "Captain",
      "review_relay_leg": "Relay leg",
      "review_unnamed_player": "Squad player",
      "review_rubber_seat": "Rubber {rubberNumber} ({type}), seat {seatNumber}",
      "review_rubber_label": "listed as “{label}”",
      "review_rubber_partners": "with {partners}",
      "review_rubber_type_unlabelled": "rubber",
      "review_rubber_type": {
        "singles": "singles",
        "doubles": "doubles"
      },
      "review_display_key_value": "{label}: {value}",
      "lede": "What acts for you, and what it may do."
    },
    "language": {
      "en": "English",
      "af": "Afrikaans",
      "zu": "isiZulu",
      "xh": "isiXhosa",
      "zh_hans": "简体中文",
      "hi": "हिन्दी",
      "es": "Español",
      "ar": "العربية",
      "fr": "Français",
      "bn": "বাংলা",
      "pt": "Português",
      "id": "Bahasa Indonesia",
      "ur": "اردو",
      "ru": "Русский",
      "de": "Deutsch",
      "ja": "日本語",
      "mr": "मराठी",
      "vi": "Tiếng Việt",
      "sw": "Kiswahili"
    },
    "home": {
      "title": "What's live",
      "intro": "Follow teams, players, schools and clubs. Every score carries how sure we are of it.",
      "live_count": "{count, plural, =0 {Nothing live right now} one {# match live right now} other {# matches live right now}}",
      "nothing_yet": "No fixtures have been reported yet.",
      "sports_covered": "{count, plural, one {# sport covered} other {# sports covered}}",
      "hero_title": "Your sport. Your scores.",
      "hero_intro": "Follow a match, update the score, or add what is happening at the ground.",
      "brand_home": "Live Youth Scores home",
      "account_navigation": "Account",
      "search_label": "Find a venue or sports ground",
      "search_placeholder": "Venue or sports ground",
      "search_submit": "Find games",
      "follow_or_update": "Follow or Update Scores",
      "create_match": "Create Match",
      "trust_heading": "What the labels mean",
      "trust_intro": "Every score shows how sure it is.",
      "trust_unconfirmed": "Just reported.",
      "trust_corroborated": "Backed up, so it’s more certain.",
      "trust_verified": "Confirmed.",
      "trust_disputed": "Being checked.",
      "join_heading": "Your teams, one place",
      "join_body": "Follow schools, clubs and competitions for a personal feed, or report the score when you are at the game.",
      "spaces_heading": "Your Live Youth Scores",
      "more_heading": "More ways in",
      "sign_in": "Sign in",
      "create_account": "Create an account",
      "your_account": "Your account",
      "coach_verification": "Coach verification",
      "coach_verification_help": "Claim or review a team role.",
      "find_venue": "Browse nearby venues",
      "find_venue_help": "Use location or search by venue name.",
      "scorekeeper_leaderboard": "Scorekeeper leaderboard",
      "scorekeeper_help": "See the people helping scores stay current.",
      "your_household": "Your household",
      "your_feed": "Your feed",
      "your_following": "Following",
      "profile_pending_heading": "Finish your profile",
      "profile_pending_body": "Add your date of birth and country to unlock your personal feed and account spaces.",
      "profile_pending_cta": "Finish profile",
      "follow_or_update_help": "Find a match, save it, or help keep the score current.",
      "create_match_help": "Add a game, race or event at the ground.",
      "how_it_works": "How Live Youth Scores works",
      "how_it_works_help": "What the score labels mean, and how children stay private.",
      "ways_heading": "Three ways in",
      "way_follow_body": "Watch a match, update the score and follow your children’s teams.",
      "way_coach_body": "Claim your team, then share training times and team details with its families.",
      "way_coach_today": "Score your team’s matches from your phone, like anyone at the ground.",
      "way_school_title": "School or club",
      "way_school_body": "Load the fixture list, run events and choose who helps at your school or club.",
      "ways_note": "One account does all three. Switch at the top at any time.",
      "privacy_heading": "Children stay private by default",
      "privacy_link": "How privacy works",
      "you_follow": "You follow",
      "manage_following": "Manage",
      "whats_happening": "What’s happening",
      "full_feed": "Full feed"
    },
    "bookmarks": {
      "heading": "Saved matches",
      "help": "Saved matches stay private and do not turn on notifications.",
      "empty": "You have not saved a match yet.",
      "match": "View match",
      "find": "Find a match to save",
      "unavailable": "Saved match unavailable",
      "unavailable_help": "Its public details are no longer available.",
      "remove": "Remove",
      "remove_unavailable_help": "Open Saved matches to remove this saved reference."
    },
    "health": {
      "title": "Service health",
      "api_label": "API",
      "db_label": "Database",
      "ok": "OK",
      "unreachable": "Unreachable",
      "checked_at": "Checked {at, time, medium}"
    },
    "fixture_demo": {
      "title": "Fixture page header regime",
      "explanation": "This route demonstrates the per-route response headers every name-bearing surface carries.",
      "surface_unknown": "Field not reported",
      "surface_prompt": "Where is this?"
    },
    "fixture_display": {
      "title": "Fixture",
      "participant_unknown": "Participant not reported",
      "agent_generated_result": "Score submitted by an agent",
      "agent_generated_name": "Name submitted by an agent"
    },
    "fixture_name": {
      "title": "Suggest a participant name",
      "explanation": "Choose a shirt and suggest the player’s name.",
      "open_form": "Suggest a participant name",
      "given_name": "Given name",
      "surname_hint": "Surname (private, never shown)",
      "submit": "Send suggestion",
      "submitted": "Thanks. Your suggestion is in.",
      "publish_guardian": "Publish this verified name",
      "trusted_published": "This name now shows on this player’s matches.",
      "withdraw_trusted": "Withdraw verified name",
      "suppress_public": "Hide this player's name on public fixtures",
      "enable_full_names": "Show verified full names for this organisation",
      "disable_full_names": "Show given names only for this organisation",
      "no_targets": "There are no shirts you may name on this fixture.",
      "back": "Back to fixture"
    },
    "confidence": {
      "unconfirmed": "Unconfirmed",
      "corroborated": "Corroborated",
      "verified": "Verified",
      "disputed": "Disputed"
    },
    "state": {
      "loading": "Loading…",
      "error": "Something went wrong. Check the latest result before trying the action again.",
      "empty": "Nothing here yet.",
      "offline": "You're offline. What you've sent is queued and will go when you reconnect."
    },
    "dispute_photo": {
      "title": "Private dispute photo",
      "heading": "Scoreboard photo evidence",
      "file_label": "Scoreboard image",
      "upload": "Upload photo",
      "no_javascript": "Photo upload needs JavaScript because this private endpoint accepts the image itself, not a multipart form.",
      "review_label": "Photo ID",
      "review_support": "Supports the resolution",
      "review_reject": "Reject photo",
      "review": "Record review",
      "uploaded": "Photo uploaded."
    },
    "dispute_desk": {
      "title": "Disputed results",
      "heading": "Disputed results",
      "intro": "Each result below is frozen while a platform moderator decides. Dismiss the dispute if the reported result stands, or name the one report that was fabricated.",
      "queue_link": "Go to the moderation queue",
      "case_heading": "Disputed result",
      "empty": "No result is disputed right now.",
      "no_verdict": "This case is closed. No verdict can be recorded on it.",
      "disputed_result": "What is disputed",
      "item": "Fixture",
      "headline_confidence": "Current confidence",
      "no_confidence": "Not scored",
      "opened_at": "Opened",
      "evidence_heading": "Reports on this fixture",
      "evidence_option": "{kind} reported by {reporter} at {recordedAt}",
      "evidence_truncated": "Only the first 50 reports are listed.",
      "no_evidence": "No report on this fixture can be named as fabricated.",
      "photos_heading": "Photo evidence",
      "no_photos": "No photo was uploaded to this case.",
      "choose_fabricated": "Which report was fabricated?",
      "dismiss": "Dismiss the dispute",
      "confirm_fabrication": "Confirm a fabrication",
      "succeeded": "The verdict was recorded.",
      "failed_title": "The verdict was not recorded",
      "resolved_heading": "Verdict",
      "verdict": "Decision",
      "verdict_dismissed": "Dismissed",
      "verdict_fabrication": "Confirmed fabrication",
      "condemned": "Report found fabricated",
      "correction_run": "Correction run",
      "targets_completed": "{completed} of {planned} targets corrected",
      "next_page": "Next page"
    },
    "leaderboard": {
      "title": "Scorekeeper leaderboard",
      "intro": "Recognising the people whose reports help keep results up to date.",
      "scope_label": "Leaderboard scope",
      "scope_global": "Everywhere",
      "scope_sport": "One sport",
      "scope_organisation": "One school or club",
      "scope_id_label": "Sport or organisation ID",
      "scope_id_placeholder": "Enter an ID",
      "window_label": "Time period",
      "window_all_time": "All time",
      "window_season": "Season",
      "window_rolling_90d": "Last 90 days",
      "season_id_label": "Season ID",
      "season_id_placeholder": "Enter a season ID",
      "apply": "Show leaderboard",
      "rank": "Rank",
      "username": "Scorekeeper",
      "badges": "Badges",
      "credits": "Eligible reports",
      "trusted_reporter": "Trusted reporter",
      "no_badges": "No badges",
      "empty_heading": "Not enough scorekeepers yet",
      "empty_body": "No scorekeepers to show yet.",
      "failed_title": "We couldn't load this leaderboard",
      "next_page": "Show more"
    },
    "lineage": {
      "title": "Shirt performance",
      "season_history_title": "Shirt history",
      "season_scope": "Statistics for this shirt or entry throughout this team season.",
      "fixture_scope": "Statistics for this shirt or entry in this fixture only.",
      "event_history_title": "Event entry history",
      "event_scope": "Current result claims for this entry within the event on {date}.",
      "event_nameless_note": "This record describes an event entry. It does not identify a person or connect entries across events.",
      "event_view_event": "View event programme",
      "event_source_date": "Result date: {date}",
      "event_team_label": "Team",
      "event_no_season": "No season assigned",
      "event_heat": "Heat {heat}",
      "event_lane": "Lane or order {lane}",
      "event_display_key": "{label}: {value}",
      "event_display_key_unreported": "Not reported",
      "event_claims_heading": "Current result claims",
      "event_claim_column": "Claim",
      "event_placing_value": "Place {place}",
      "event_unavailable_heading": "This event entry is unavailable",
      "event_unavailable_body": "The event and entry combination may be unavailable, private, or no longer current.",
      "event_failed_heading": "We couldn't load this event entry",
      "event_claim": {
        "performance": "Performance",
        "placing": "Placing",
        "entrant_status": "Entry status"
      },
      "nameless_note": "This record describes the shirt or entry. It does not identify who wore it.",
      "view_fixture": "View fixture",
      "view_season_history": "View season history",
      "organisation_label": "School or club",
      "sport_label": "Sport",
      "season_label": "Season",
      "season_dates_label": "Season dates",
      "season_dates": "{start} to {end}",
      "age_group_label": "Age group",
      "level_label": "Level",
      "gender_label": "Gender",
      "rubber_source": "Rubber",
      "fixture_item": "Fixture",
      "rubber_item": "Rubber {number}",
      "fixture_date": "Fixture date: {date}",
      "round": "Round: {round}",
      "role_label": "Role: {role}",
      "stats_heading": "Recorded statistics",
      "stat_column": "Statistic",
      "value_column": "Value",
      "confidence_column": "Confidence",
      "stat_value_both": "{numeric} ({text})",
      "stat_value_numeric": "{numeric}",
      "stat_value_with_unit": "{value} {unit}",
      "no_stats_heading": "No individual statistics reported",
      "no_stats_body": "The source shirt or entry is part of this fixture, but no individual statistics have been reported for it.",
      "unavailable_heading": "This shirt record is unavailable",
      "unavailable_body": "The fixture and shirt combination may be unavailable, private, or no longer current.",
      "failed_heading": "We couldn't load this shirt record",
      "unsupported_body": "A source value has no supported display label yet. The page has stopped rather than showing a technical key.",
      "display_scheme": {
        "jersey_position": "Shirt or cap number / position",
        "bib_position": "Playing position",
        "batting_order": "Batting order",
        "entry_heat_lane": "Entry / heat / lane",
        "competitor_number": "Competitor number"
      },
      "role": {
        "starter": "Starter",
        "substitute": "Substitute",
        "reserve_unused": "Unused reserve"
      },
      "stat": {
        "try_scorer": "Tries scored",
        "conversion_kicker": "Conversions kicked",
        "penalty_kicker": "Penalties kicked",
        "drop_goal_kicker": "Drop goals kicked",
        "scorer": "Scoring events",
        "assist": "Assists",
        "own_goal": "Own goals",
        "penalty_goal": "Penalty goals",
        "card": "Cards",
        "exclusion": "Exclusions",
        "foul": "Fouls",
        "substitution": "Substitutions",
        "time": "Time",
        "distance": "Distance",
        "height": "Height",
        "points": "Points",
        "place": "Place"
      },
      "unit": {
        "penalty_points": "penalty points",
        "percent": "percent",
        "points": "points"
      }
    },
    "ranking": {
      "platform_fixture_points_3_1_0": "Platform default fixture table (3–1–0)",
      "platform_fixture_points_3_1_0_rulebook": "Live Youth Scores platform default: 3 points for a win, 1 for a draw and 0 for a loss. This is not a federation rule.",
      "platform_fixture_program_rulebook": "Rules for this Live Youth Scores fixture ranking program version.",
      "platform_performance_event": "Platform default event performance table",
      "platform_performance_event_rulebook": "Live Youth Scores platform performance-event ranking rules. Exact confidence, cohort, condition, unit and direction policies are shown below. This is not a federation rule.",
      "platform_performance_placing": "Platform default class placing table",
      "platform_performance_placing_rulebook": "Live Youth Scores platform placing ranking rules. Exact confidence, cohort and placing policies are shown below. This is not a federation rule.",
      "title": "Team rankings",
      "performance_title": "Performance rankings",
      "performance_cohort_scope": "Cohort: {scope}",
      "performance_cohort_event": "One event",
      "performance_cohort_selected_scope": "Selected scope",
      "performance_cohort_meet_item": "One meet item",
      "performance_context": "Context",
      "performance_source": "Source",
      "performance_source_not_disclosed": "No public organisation or team",
      "performance_result": "Result",
      "performance_value_confidence": "Value confidence: {confidence}",
      "performance_value_with_unit": "{value} {unit}",
      "performance_placing": "Place {placing}",
      "performance_status": "Status",
      "performance_status_confidence": "Status confidence: {confidence}",
      "performance_status_not_applied": "No entrant status applied",
      "performance_conditions": "Conditions",
      "performance_conditions_none": "No recorded conditions",
      "performance_condition_true": "Yes",
      "performance_condition_false": "No",
      "performance_condition": "{condition}: {value}",
      "performance_includes_unconfirmed_values": "Includes unconfirmed values",
      "performance_excludes_unconfirmed_values": "Unconfirmed values are excluded",
      "performance_includes_unconfirmed_statuses": "Includes unconfirmed entrant statuses",
      "performance_excludes_unconfirmed_statuses": "Unconfirmed entrant statuses are excluded",
      "performance_contribution_versions_heading": "Performance-date contribution rules",
      "performance_contribution_versions_empty": "No performance-date contribution rules were applied.",
      "performance_empty_heading": "No performances are ranked yet",
      "performance_empty_body": "This table will appear once eligible performance results are available for this ranking programme.",
      "performance_failed_title": "We couldn't load these performance rankings",
      "performance_offline_title": "Performance rankings are unavailable offline",
      "performance_offline_body": "Reconnect to load the latest performance rankings. This table is not saved on your device.",
      "performance_native_row_accessibility": "Rank {rank}: {context}. Source: {source}. Result: {result}. Status: {status}. Conditions: {conditions}.",
      "performance_row_accessibility": "Rank {rank}: {context}. Source: {source}. Result: {result}. Status: {status}.",
      "standards_title": "Performance standards",
      "standards_intro": "Compare each public result with the standards that applied on its performance date.",
      "standards_results": "Standards results",
      "standards_performance": "Performance",
      "standards_category": "Category",
      "standards_category_separator": " · ",
      "standards_result": "Result and tier",
      "standards_no_tier": "No qualifying tier",
      "standards_empty": "No eligible public performances are available for these standards.",
      "standards_failed_title": "We couldn't load these performance standards",
      "view_standards": "View performance standards",
      "platform_standards": "Public performance standards",
      "platform_standards_rulebook": "Public performance standards rulebook",
      "standards": {
        "standard": "Performance standard",
        "tier": {
          "bronze": "Bronze",
          "silver": "Silver",
          "gold": "Gold"
        }
      },
      "scope_filters": {
        "title": "Filter team rankings",
        "performance_title": "Filter performance rankings",
        "help": "Choose the public scope for this table.",
        "custom_scope": "Selected filters create a custom scope.",
        "includes_unconfirmed": "Include unconfirmed results",
        "country_codes": "Countries",
        "regions": "Regions",
        "organisations": "Organisations",
        "teams": "Teams",
        "age_groups": "Age groups",
        "seasons": "Seasons",
        "competitions": "Competitions",
        "no_options": "No options are available for this filter.",
        "unsupported": "Some filters are not available for this ranking yet.",
        "binding_unavailable": "Filters are unavailable because the ranking options no longer match this table.",
        "reset": "Reset filters"
      },
      "country_code": "Country code",
      "selected_for_date": "Ranking date",
      "apply": "Apply filters",
      "rulebook_failed_title": "We couldn't load these ranking rules",
      "rank": "Rank",
      "team": "Team",
      "played": "Played",
      "wins": "Won",
      "draws": "Drawn",
      "losses": "Lost",
      "points": "Points",
      "score_difference": "Difference",
      "program_version": "Programme version {version}",
      "selected_ordering_version": "Ordering rules: programme {programId}, version {version}",
      "effective_from": "Effective from {date}",
      "rulebook": "View ranking rules",
      "contribution_versions_heading": "Fixture-date contribution rules",
      "contribution_version": "Programme {programId}, version {version}, effective from {date}",
      "contribution_version_rulebook": "View rules for programme {programId}, version {version}",
      "contribution_versions_empty": "No fixture-date contribution rules were applied.",
      "custom_scope": "Custom scope",
      "includes_unconfirmed": "Includes unconfirmed results",
      "excludes_unconfirmed": "Unconfirmed results are excluded",
      "stale_since": "Results may be stale since {at}",
      "empty_heading": "No teams are ranked yet",
      "empty_body": "This table will appear once results are available for this ranking programme.",
      "failed_title": "We couldn't load these team rankings",
      "offline_title": "Team rankings are unavailable offline",
      "offline_body": "Reconnect to load the latest rankings. This table is not saved on your device.",
      "row_accessibility": "Rank {rank}: {team}. Played {played}; won {wins}; drawn {draws}; lost {losses}; {points} points; score difference {scoreDifference}.",
      "generated_rulebook": {
        "section": {
          "context": "How this ranking works",
          "formats": "Match-format conversion",
          "outcomes": "Outcome points",
          "statuses": "Status treatment",
          "facts": "Sport measures",
          "bonuses": "Conditional bonuses",
          "tiebreaks": "Tie-break order",
          "glicko_periods": "Rating periods",
          "glicko_initial": "Initial rating",
          "glicko_bounds": "Rating-deviation limits",
          "glicko_calculation": "Calculation limits",
          "glicko_display": "Displayed rating",
          "challenge_range": "Challenge range",
          "challenge_movement": "Movement after a match",
          "challenge_rematch": "Rematches",
          "challenge_response": "Challenge responses",
          "challenge_absence": "Absence",
          "sessions": "Session scoring",
          "standards": "Standards and tiers",
          "pyramid": "Pyramid rules",
          "box_cycle": "Box cycle and scoring",
          "box_movement": "Box movement",
          "performance_source": "Performance source",
          "performance_entries": "Eligible entries",
          "performance_confidence": "Confidence requirements",
          "performance_statuses": "Entrant-status treatment",
          "performance_fallback": "Equal-value order"
        },
        "context": {
          "public_confidence": "Results are scored from public confidence.",
          "opponent_confirmation": "Confirmed results and exact-source audited coach overrides count. Pending reviews count provisionally only when the programme includes them before the deadline. Quarantined and disputed reviews never count. Public confidence does not decide eligibility.",
          "unconfirmed": "{included, select, true {Unconfirmed results are included.} false {Unconfirmed results are excluded.} other {}}",
          "confidence_floor": "The confidence floor is {floor}.",
          "visibility": "This ranking is {visibility}.",
          "display": "Rankings are displayed as {mode}.",
          "conversion": "{format}: {canonicalUnitCount, plural, one {{canonicalUnits} canonical unit} other {{canonicalUnits} canonical units}} per completed item, weight {weight}, and at least {minimumUnitCount, plural, one {{minimumUnitsToCount} unit} other {{minimumUnitsToCount} units}} to count."
        },
        "points": {
          "outcome": "A {outcome} awards {pointCount, plural, one {{points} point} other {{points} points}}.",
          "status": "For {source} status {status}, the ranking treatment is {ranking}.",
          "played": "{value, select, true {It counts as played.} false {It does not count as played.} other {}}",
          "record": "{value, select, true {It can count for records.} false {It cannot count for records.} other {}}",
          "appearance": "Appearance statistics {treatment}.",
          "bonus_eligible": "{value, select, true {It can receive conditional bonus points.} false {It cannot receive conditional bonus points.} other {}}",
          "award": "Apply the award to the {recipient}: own score {ownPoints}; opponent score {opponentPoints}.",
          "fact": "The rules use the {fact} measure.",
          "bonus_group": "Bonus group {group}: matching rules {hitPolicy}.",
          "bonus_rule": "{rule} changes the score by {points} when its conditions are met."
        },
        "performance": {
          "source": "The ranking uses {source}, with {aggregation}.",
          "descriptor": "{format}: {discipline}, measured in {unit}; {direction} is better.",
          "placing_descriptor": "{format}: {discipline}, using a {semantics}; {direction} is better.",
          "cohort": "Comparable entries are grouped {scope}.",
          "conditions": "Performance conditions must match {comparison}.",
          "value_confidence": "Performance values need at least {floor} confidence.",
          "status_confidence": "Entrant statuses apply only at or above {floor} confidence.",
          "status": "Entries with {status} status are {treatment}.",
          "fallback": "Equal entries are ordered by {key}, {direction}."
        },
        "condition": {
          "number": "Apply when {fact} {comparator} {value}.",
          "enum": "Apply when {fact} {comparator} {value}.",
          "all": "Every following condition must apply.",
          "any": "At least one following condition must apply.",
          "not": "The following condition must not apply."
        },
        "tiebreak": "{position, number}. Compare {metric} {scope}, with {direction}. {equalMeetingsRequired, select, true {Head-to-head comparison requires every tied competitor to have the same number of meetings.} false {} other {}}",
        "glicko": {
          "period": "Ratings update in {mode} periods.",
          "rating": "New competitors start at rating {rating}.",
          "deviation": "New competitors start with rating deviation {deviation}.",
          "provisional_threshold": "A competitor is provisional while rating deviation is greater than {threshold}.",
          "volatility": "New competitors start with volatility {volatility}.",
          "range": "Rating deviation stays from {floor} to {ceiling}.",
          "constraint": "Volatility uses constraint {value}.",
          "tolerance": "Volatility solving stops at tolerance {value}.",
          "iterations": "Volatility solving allows at most {value, plural, one {{value, number} iteration} other {{value, number} iterations}}.",
          "display": "Display rating minus {multiplier} times rating deviation."
        },
        "challenge": {
          "position_basis": "Challenge positions use {basis}.",
          "range": "A competitor may challenge up to {places, number} places above; unavailable positions {unavailable}.",
          "win": "When the challenger wins, {movement}.",
          "draw": "When a match is drawn, {movement}.",
          "rematch": "Rematches are {kind}; requirement: {requirement}.",
          "response": "A refusal is {refusal}.",
          "absence": "Absence movement: {movement}."
        },
        "session": {
          "participation": "Each attended session changes the score by {points}.",
          "outcome": "A session {outcome} changes the score by {points}.",
          "placing": "Place {place, number} changes the score by {points}.",
          "unplaced": "An unplaced result changes the score by {points}.",
          "counting": "Counting rule: {kind}. {count, select, null {} other {{count, plural, one {Count {count, number} session.} other {Count {count, number} sessions.}}}}",
          "completion": "Completion bonus: {kind}. {minimumSessions, select, null {} other {{minimumSessions, plural, one {Attend at least {minimumSessions, number} session; score changes by {points}.} other {Attend at least {minimumSessions, number} sessions; score changes by {points}.}}}}"
        },
        "standards": {
          "applicability": "{standard}: {discipline}, {ageGroup}, {gender}, measured in {unit}; {direction} is better.",
          "tier": "{tier}: threshold {threshold}."
        },
        "pyramid": {
          "rows": "The pyramid has {count, number} rows.",
          "lateral": "A lateral challenge is in the {range}; a win means {winnerEffect}.",
          "vertical": "A vertical challenge is in the {range}; eligibility is {eligibility}; it is consumed {consumption}; a challenger win means {challengerWin}.",
          "draw": "On a draw, {effect}."
        },
        "box": {
          "cycle": "Boxes hold {boxSize, number} competitors over {cycleDays, plural, one {{cycleDays, number} day} other {{cycleDays, number} days}}. At least {minimumMatches, plural, =0 {no matches} one {{minimumMatches, number} match} other {{minimumMatches, number} matches}} are required; anyone short is placed {placement}.",
          "scoreline": "A {winnerUnits, number}–{loserUnits, number} result gives winner score {winnerPoints} and loser score {loserPoints}.",
          "walkover": "A walkover gives claimant score {claimantPoints} and conceder score {concederPoints}; it {countsAsPlayed, select, true {counts as played} false {does not count as played} other {}} and needs {offers, number} documented court offers.",
          "completion": "Completion bonus: {kind}. {points, select, null {} other {Score changes by {points}.}}",
          "movement": "{box, select, null {Default movement} other {Box {box, number} movement}}: promote {promote, number}; relegate {relegate, number}.",
          "exceptional": "Exceptional promotion: {kind}. {promoteBoxes, select, null {} other {{promoteBoxes, plural, one {Promote {promoteBoxes, number} box.} other {Promote {promoteBoxes, number} boxes.}}}}"
        },
        "vocabulary": {
          "visibility": {
            "public": "public",
            "team_internal": "team-internal"
          },
          "display": {
            "ordinal": "ordinal positions",
            "band": "bands"
          },
          "confidence": {
            "unconfirmed": "unconfirmed",
            "corroborated": "corroborated",
            "verified": "verified"
          },
          "outcome": {
            "win": "win",
            "draw": "draw",
            "loss": "loss",
            "no_result": "no result"
          },
          "lifecycle": {
            "completed": "completed",
            "forfeited": "forfeited",
            "walkover": "walkover",
            "abandoned": "abandoned",
            "cancelled": "cancelled"
          },
          "status_source": {
            "entrant": "entrant",
            "lifecycle": "fixture"
          },
          "ranking": {
            "exclude": "excluded",
            "award_zero": "award zero",
            "use_result": "use the recorded result",
            "award_points": "use the configured award",
            "award_opponent": "award the opponent"
          },
          "appearance": {
            "count": "count",
            "exclude": "exclude"
          },
          "recipient": {
            "status_bearing_side": "status-bearing side",
            "winning_side": "winning side",
            "losing_side": "losing side"
          },
          "fact": {
            "score_for": "score for",
            "score_against": "score against",
            "score_difference": "score difference",
            "losing_margin": "losing margin",
            "outcome": "outcome",
            "lifecycle_outcome": "fixture outcome",
            "entrant_status": "entrant status"
          },
          "comparator": {
            "eq": "equals",
            "ne": "does not equal",
            "lt": "is less than",
            "lte": "is at most",
            "gt": "is greater than",
            "gte": "is at least"
          },
          "value": {
            "none": "no value"
          },
          "hit_policy": {
            "unique": "do not stack",
            "collect_sum": "add together"
          },
          "scope": {
            "overall": "across all results",
            "in_scope_subset": "within the selected scope",
            "match_losses": "within losses",
            "head_to_head": "between the tied competitors"
          },
          "direction": {
            "asc": "the lower value first",
            "desc": "the higher value first"
          },
          "metric": {
            "points": "points",
            "played": "matches played",
            "wins": "wins",
            "draws": "draws",
            "losses": "losses",
            "no_results": "no results",
            "score_for": "score for",
            "score_against": "score against",
            "score_difference": "score difference",
            "entity_public_id": "public identifier",
            "match_wins": "match wins",
            "units_difference": "units difference",
            "head_to_head_points": "head-to-head points",
            "matches_played": "matches played",
            "session_wins": "session wins",
            "sessions_counted": "sessions counted",
            "sessions_attended": "sessions attended",
            "best_session_points": "best session points"
          },
          "period": {
            "explicit_fixture_period": "explicit fixture"
          },
          "position_basis": {
            "match_time": "match time"
          },
          "unavailable": {
            "count_toward_range": "count toward that range",
            "skip_for_range": "do not count toward that range"
          },
          "movement": {
            "swap": "swap the two positions",
            "insert_at_challenged_position": "move into the challenged position",
            "no_change": "no position changes",
            "challenger_up_one": "move the challenger up one position",
            "challenger_directly_below_challenged": "move the challenger directly below the challenged competitor"
          },
          "rematch": {
            "allowed": "allowed",
            "intervening_match": "allowed after an intervening match"
          },
          "rematch_requirement": {
            "none": "none",
            "either_competitor": "either competitor must play another opponent",
            "both_competitors": "both competitors must play another opponent"
          },
          "refusal": {
            "forbidden": "not permitted",
            "allowed_no_change": "allowed with no position change"
          },
          "absence": {
            "none": "no position change",
            "present_lower_may_move_absent_to_bottom": "a lower present competitor may move the absent competitor to the bottom"
          },
          "counting": {
            "all": "count every session",
            "best_n": "count the best sessions"
          },
          "completion": {
            "none": "none",
            "minimum_sessions": "minimum sessions",
            "all_opponents": "all opponents"
          },
          "age_group": {
            "all": "all ages"
          },
          "gender": {
            "all": "all genders"
          },
          "better_direction": {
            "asc": "a lower value",
            "desc": "a higher value"
          },
          "performance_unit": {
            "m": "metres",
            "penalty_points": "penalty points",
            "percent": "percent",
            "points": "points",
            "s": "seconds",
            "strokes": "strokes"
          },
          "source_kind": {
            "performance": "a recorded performance",
            "placing": "a recorded placing"
          },
          "aggregation": {
            "single_entry": "one entry per participant"
          },
          "cohort_scope": {
            "event": "within one event",
            "selected_scope": "within the selected scope; each entry remains event-scoped",
            "meet_item": "within one meet item"
          },
          "conditions_comparison": {
            "exact_document": "the exact source document"
          },
          "value_semantics": {
            "positive_integer": "positive whole-number placing"
          },
          "status_treatment": {
            "retain": "retained",
            "exclude": "excluded"
          },
          "fallback": {
            "source_entry_key": "the source entry key"
          },
          "pyramid_range": {
            "same_row": "same row",
            "next_row_up": "next row up"
          },
          "pyramid_effect": {
            "earn_vertical_challenge": "earn a vertical challenge"
          },
          "pyramid_eligibility": {
            "unspent_lateral_win_in_current_row": "an unspent lateral win in the current row"
          },
          "pyramid_consumption": {
            "on_match": "when the match is played"
          },
          "minimum_placement": {
            "below_eligible": "below eligible competitors"
          },
          "exceptional": {
            "none": "none",
            "perfect_cycle": "perfect cycle"
          }
        }
      },
      "platform_session_points": "Public session points",
      "platform_session_points_rulebook": "Live Youth Scores public session-points rules. The exact participation, result, counting, completion and tie-break policies are shown below.",
      "session_title": "Session points",
      "session_failed_title": "We couldn't load these session standings",
      "session_selected_rules": "Ordering rules: programme {programId}, version {version}, effective {date}",
      "session_contribution_versions": "Fixture-date contribution rules",
      "session_contribution_versions_empty": "No scored source row contributed to this table.",
      "session_empty_heading": "No teams or organisations are ranked yet",
      "session_empty_body": "This table will appear once an eligible public result exists in a selected session.",
      "session_entity": "Team or organisation",
      "session_attended": "Attended",
      "session_counted": "Counted",
      "session_wins": "Session wins",
      "session_trace": "Counted session trace",
      "session_trace_row": "{session}: {points} points, {counted}",
      "session_counted_yes": "counted",
      "session_counted_no": "not counted"
    },
    "ranking_authoring": {
      "title": "Ranking rule administration",
      "heading": "Ranking rule administration",
      "intro": "Edit a public ranking rule, run its real source simulation, review the exact change, then publish that reviewed version.",
      "empty": "No public ranking programs are available to edit.",
      "mode_fixture_points": "Fixture points",
      "mode_performance_points": "Performance points",
      "mode_standards_tiers": "Performance standards",
      "new_standards": "Create performance standards",
      "new_standards_heading": "Create performance standards",
      "new_standards_intro": "Define the country-specific standards, run them against the real public performance source, review the exact tier changes, then publish the reviewed version.",
      "sport_key": "Sport key",
      "current_version": "Current version {version}, effective {date}",
      "edit": "Edit and preview a successor",
      "back": "Back to ranking programs",
      "editor_title": "Edit ranking rules",
      "editor_heading": "Edit {sport} ranking rules",
      "failed_title": "The ranking rule operation failed",
      "stale_body": "The current rule changed while this form was open. Review the current version and try again.",
      "valid_from": "Effective date",
      "fixture_points": "Points awarded by result",
      "win": "Win",
      "draw": "Draw",
      "loss": "Loss",
      "no_result": "No result",
      "performance_policy": "Performance admission and cohort policy",
      "value_confidence": "Performance value confidence",
      "status_confidence": "Entrant status confidence",
      "cohort_scope": "Comparison cohort",
      "cohort_event": "Entries in one event",
      "cohort_selected": "Entries in the selected public scope",
      "cohort_meet_item": "Entries in one meet item",
      "confidence_unconfirmed": "Unconfirmed or stronger",
      "confidence_corroborated": "Corroborated or stronger",
      "confidence_verified": "Verified only",
      "preview": "Run real preview",
      "review_heading": "Review the exact simulated change",
      "cutover": "Effective date",
      "sampled_date": "Source measured on",
      "body_hash": "Rule body digest",
      "authority_hash": "Source authority digest",
      "diff_hash": "Simulation digest",
      "rule_summary": "Rule summary",
      "fixture_rule_summary": "Win {win}; draw {draw}; loss {loss}; no result {noResult}.",
      "performance_rule_summary": "Value confidence {valueConfidence}; status confidence {statusConfidence}; cohort {cohort}.",
      "standards_policy": "Standards and tiers",
      "standards_help": "Enter one standard per line: standard key, label key, discipline, age group or -, gender or -, unit, asc or desc, then comma-separated tier key:label key:threshold values. Separate the eight fields with |.",
      "standards_lines": "Country-specific standards",
      "standards_rule_summary": "{count, plural, one {# standards table.} other {# standards tables.}}",
      "prospective_changes_heading": "Standings at the proposed cutover",
      "hypothetical_changes_heading": "Proposed rules applied to the current source",
      "hypothetical_disclosure": "This second simulation is for review only. It does not apply the proposed rules retroactively.",
      "no_changes": "No entries change in this simulation.",
      "not_ranked": "Not ranked",
      "no_standard_tier": "No qualifying tier",
      "standard_tier_value": "{tier} at {threshold}",
      "entry": "Entry",
      "entry_context": "{entry} in {context}",
      "before": "Before",
      "after": "After",
      "rank_points": "Rank {rank}; points {points}",
      "rank_value": "Rank {rank}; value {value}",
      "publish": "Publish this reviewed version",
      "published_heading": "Ranking rule published",
      "published_version": "Version {version} is effective {date}.",
      "mode_session_points": "Session points",
      "session_new": "Create session-points rules",
      "session_title": "Author session-points rules",
      "session_heading": "Author public session-points rules",
      "session_intro": "Choose one real public competition, enter its existing sessions in their exact scoring order, preview the current source, then publish the reviewed rules and source together.",
      "session_sport": "Sport key",
      "session_country": "Country code",
      "session_competition": "Competition public ID",
      "session_order": "Ordered session public IDs",
      "session_order_help": "Enter one existing session public ID per line, earliest scoring session first.",
      "session_source_review_heading": "Reviewed session source order",
      "session_source_review_row": "{session}, order {sequence}",
      "session_current_review_heading": "Current published source and rules",
      "session_prospective_review_heading": "Proposed source with prospective rules",
      "session_hypothetical_review_heading": "Proposed source with proposed rules throughout",
      "session_review_empty": "No public standings are produced.",
      "session_review_row": "{entity}: rank {rank}, {points} points; {counted} of {attended} sessions counted",
      "session_scoring": "Session scoring",
      "session_source_kind": "Source result kind",
      "session_outcome": "Fixture outcomes",
      "session_placing": "Event placings",
      "session_participation": "Participation points per attended session",
      "session_placing_points": "Placing points, comma-separated from first place",
      "session_unplaced_points": "Points outside the listed places",
      "session_counting": "Counted sessions",
      "session_count_all": "Count every attended session",
      "session_count_best": "Count only the best sessions",
      "session_best_n": "Number of best sessions",
      "session_completion": "Attendance completion bonus",
      "session_completion_none": "No completion bonus",
      "session_completion_minimum": "Bonus after a minimum number of sessions",
      "session_minimum": "Minimum sessions",
      "session_completion_points": "Completion bonus points",
      "session_view_public": "View the public session standings",
      "session_rule_summary": "Participation {participation}; {scoring} source; {counting} counting."
    },
    "records": {
      "title": "Records",
      "intro": "Current best performances and their published change history.",
      "view_records": "View records",
      "current_heading": "Current records",
      "history_heading": "Record changes",
      "empty_heading": "No records are held yet",
      "empty_body": "No records yet.",
      "history_empty": "No record changes have been published yet.",
      "failed_title": "We couldn't load these records",
      "offline_title": "Records are unavailable offline",
      "offline_body": "Reconnect to load the latest records and published changes. This board is not saved on your device.",
      "older_changes": "View older record changes",
      "value_with_unit": "{value} {unit}",
      "scope_worldwide": "Worldwide",
      "scope_country": "Country: {country}",
      "scope_region": "Region: {region}",
      "scope_organisation": "Organisation: {organisation}",
      "achieved_on": "Achieved",
      "classification": "Classification",
      "classification_open": "Open classification",
      "representing": "Representing",
      "no_organisation": "No public organisation",
      "conditions": "Conditions",
      "conditions_none": "No recorded conditions",
      "condition": "{condition}: {value}",
      "condition_true": "Yes",
      "condition_false": "No",
      "provenance": "Performance provenance",
      "source_item": "Source item",
      "source_participant": "Source entry",
      "source_assertion": "Source assertion",
      "claim": "Qualification fact",
      "definition": "Record definition",
      "definition_version": "Definition version",
      "policy_version": "Validity policy version",
      "config_version": "Sport config version",
      "season": "Season",
      "no_season": "No season attached",
      "evidence": "Elevated evidence",
      "source_generation": "Source generation",
      "config_hash": "Sport config hash",
      "publication_hash": "Publication plan hash",
      "event_awarded": "Record awarded",
      "event_superseded": "Record superseded",
      "event_updated": "Record updated",
      "event_corrected": "Record corrected",
      "event_rescinded": "Record rescinded",
      "event_restored": "Record restored",
      "event_transition": "{oldMark} → {newMark}",
      "event_mark": "{value}, achieved {date}",
      "no_current_mark": "No current mark",
      "previous_claim": "Previous qualification fact",
      "next_claim": "Next qualification fact",
      "correction_run": "Correction run",
      "no_correction_run": "No correction run applies to this change",
      "none": "None",
      "notice_awarded": "This performance became the current record.",
      "notice_superseded": "A better eligible performance became the current record.",
      "notice_corrected": "A confirmed correction changed the current record.",
      "notice_result_updated": "An updated eligible result changed the current record.",
      "notice_rescinded": "The current record is no longer eligible.",
      "notice_conditions_invalidated": "Corrected conditions made the current record ineligible.",
      "notice_evidence_invalidated": "Corrected evidence made the current record ineligible.",
      "notice_dispute_opened": "The current mark was removed while its result is disputed.",
      "notice_scope_changed": "Corrected scope facts made the current record ineligible.",
      "notice_source_unavailable": "The source performance is no longer available for records.",
      "notice_restored": "An earlier eligible performance became the current record again.",
      "native_holder_accessibility": "{scope}. {discipline}. Record {result}. Achieved {date}. {classification}. Representing {organisation}. Conditions: {conditions}.",
      "native_event_accessibility": "{kind}. {discipline}. {reason}. Published {date}. {transition}. Correction run: {correctionRun}."
    },
    "delegation": {
      "title": "Organisation delegation",
      "heading": "Organisation delegation desk",
      "intro": "Give a colleague access for a sport, a team or an event, pause it, or take it away. Every change is recorded.",
      "ids_help": "Use the public IDs shown by the administration records. An ID identifies the target; it never grants permission by itself.",
      "failed_title": "The operation was not completed",
      "succeeded": "Operation completed. Result ID: {id}",
      "organisation_id_label": "Organisation public ID",
      "account_id_label": "Account public ID",
      "delegation_id_label": "Delegation public ID",
      "grant_id_label": "Grant public ID",
      "grant_kind_label": "Grant role",
      "grant_kind_moderator": "Event moderator",
      "grant_kind_team_manager": "Team manager",
      "grant_kind_event_organizer": "Event organiser",
      "scope_kind_label": "Grant scope",
      "scope_team": "One team",
      "scope_team_sport_season": "One team, sport and season",
      "scope_org_sport": "One organisation and sport",
      "scope_event": "One event",
      "scope_org_events": "All organisation events",
      "scope_help": "Complete only the ID fields required by the selected scope. A moderator grant must name one event.",
      "team_id_label": "Team public ID",
      "season_id_label": "Season public ID",
      "sport_key_label": "Sport key",
      "event_id_label": "Event public ID",
      "valid_from_label": "Valid from",
      "valid_to_label": "Valid until",
      "utc_note": "Times on this desk are entered in UTC.",
      "delegate": {
        "heading": "Attest an organisation moderator",
        "submit": "Attest moderator"
      },
      "suspend": {
        "heading": "Suspend a moderator delegation",
        "submit": "Suspend delegation"
      },
      "lift": {
        "heading": "Lift a delegation suspension",
        "submit": "Lift suspension"
      },
      "issue": {
        "heading": "Issue a bounded grant",
        "submit": "Issue grant"
      },
      "revoke": {
        "heading": "Revoke a grant",
        "submit": "Revoke grant"
      }
    },
    "moderation": {
      "title": "Platform moderation",
      "heading": "Needs a decision",
      "intro": "Review only the evidence cases your current platform authority permits.",
      "failed_title": "The moderation action was not completed",
      "succeeded": "Moderation action completed.",
      "empty": "There are no moderation cases waiting for you.",
      "name_queue": "Name review",
      "coach_claim_queue": "Coach claim review",
      "coach_claim_team": "Team",
      "coach_claim_organisation": "Organisation",
      "coach_claim_season": "Season",
      "coach_claim_reason": "Review reason",
      "coach_claim_state": "Claim status",
      "coach_claim_reasons": {
        "competing_claims": "Competing coach claims",
        "rejected_reclaim": "Reclaim after rejection",
        "reports_threshold": "Reports reached the suspension threshold",
        "household_collapse_contested": "Household verification changed",
        "electorate_lost_quorum": "Eligible household quorum was lost"
      },
      "corroboration_queue": "Corroboration review",
      "proxy_queue": "Shared-device review",
      "proxy_blackball_case": "Blackball case",
      "proxy_held_act": "Held reports",
      "proxy_held_yes": "Reports are held for review",
      "proxy_held_no": "No report is held",
      "proxy_review_help": "This account shares a device with a blackballed account. Its reports are held until you decide. Approve clears it: every held report is released and its later reports count. Reject treats it as the same person: held reports stay held and its later reports carry no weight.",
      "no_decision": "This evidence is readable, but no moderator decision is available yet.",
      "claim": "Claim case",
      "rationale": "Decision rationale",
      "evidence_unavailable": "The decision evidence could not be loaded.",
      "evidence_heading": "Decision evidence",
      "candidate_name": "Candidate given name",
      "gate_outcome": "Content-gate outcome",
      "gate_pending": "Pending human review",
      "matched_rules": "Matched rules",
      "corroboration_evidence": "Corroboration-exclusion evidence",
      "authority_heading": "Decision authority",
      "authority_kind": "Authority type",
      "platform_staff_authority": "Platform staff authority",
      "grant_event": "Authority grant event",
      "next_page": "Show more cases",
      "approve": "Approve",
      "reject": "Reject",
      "suspension_lift": {
        "heading": "Restore a suspended helper",
        "help": "When a finding of made-up results is overturned or reviewed, lift the suspension here. The helper's organisation can then give them access again. Your reason is kept with the record.",
        "account": "Account ID",
        "account_help": "The account ID from the finding, starting with acc_.",
        "rationale": "Reason for lifting",
        "submit": "Lift fabrication suspension",
        "succeeded": "Suspension lifted. The helper's organisation can give them access again."
      }
    },
    "phone_reassignment": {
      "title": "Carrier-recycled numbers",
      "heading": "Carrier-recycled number decisions",
      "intro": "Review the possession evidence and decide exactly which listed accounts release or retain the number.",
      "privacy_help": "This desk uses case, account and OTP public IDs only. It never displays a telephone number.",
      "failed_title": "The decision was not completed",
      "succeeded": "Decision completed. Result ID: {id}",
      "empty": "There are no open carrier-recycled number cases.",
      "case_heading": "Case {id}",
      "gaining_account": "Gaining account public ID",
      "otp": "Verified phone-change OTP public ID",
      "holders": "Accounts holding the number when the case opened",
      "release_label": "Accounts releasing the number",
      "retain_label": "Accounts retaining the number",
      "source_label": "Evidence source",
      "source_carrier_notice": "Carrier reassignment notice",
      "source_carrier_support": "Carrier support case",
      "source_holder_confirmation": "Account-holder confirmation",
      "reference_label": "Evidence reference",
      "rationale_label": "Decision rationale",
      "submit": "Record decision"
    },
    "score": {
      "eyebrow": "Score report",
      "title": "Record the score",
      "format": "Format: {format}",
      "period_label": "Current period or slot",
      "increment_surface": "Quick score actions",
      "increment_needs_javascript": "Quick score actions need JavaScript.",
      "increment_noscript": "Quick score actions need JavaScript.",
      "increment_noscript_link": "Use the score-state form instead",
      "snapshot_surface": "Current score state",
      "side": "Side {order}",
      "innings": "Innings {order}",
      "set": "Set {order}",
      "mark": "Mark ({unit})",
      "runs": "Runs",
      "wickets": "Wickets",
      "overs": "Overs",
      "declared": "Declared",
      "games": "Games",
      "points": "Points",
      "correction": "Correct {action}",
      "completed_correction_heading": "Correct a completed result",
      "completed_correction_start": "Correct this result",
      "completed_correction_target": "Result to correct",
      "completed_correction_prior_result": "Current result",
      "completed_correction_review": "Review correction",
      "completed_correction_submit": "Submit correction",
      "completed_correction_place": "Place",
      "correction_target": {
        "final_score": "Final result",
        "rubber_result": "Rubber result",
        "performance": "Performance result for participant {participantIndex}",
        "placing": "Placing for participant {participantIndex}",
        "entrant_status": "Entry status for participant {participantIndex}"
      },
      "source_changed": "The source changed. Reload and review the current result.",
      "rubber_outcome": "Rubber result",
      "outcome_undecided": "Still in play",
      "condition_unset": "Choose a value",
      "yes": "Yes",
      "no": "No",
      "add_details": "Add details",
      "snapshot_document": "Score state",
      "submit": "Submit score",
      "submit_final": "Submit final score",
      "review_heading": "Review the final result",
      "review_fixture_final": "Fixture result",
      "review_rubber_result": "Rubber result",
      "review_tie_rollup": "Tie result from its rubbers",
      "review_meet_results": "Meet results",
      "review_confidence": "Confidence: {confidence}",
      "report_finished": "Report finished",
      "completed": "The match is over. This is the final result.",
      "format_prompt": "Choose the format before recording a score.",
      "format_label": "Match format",
      "format_placeholder": "Choose a format",
      "continue": "Continue",
      "queue_unavailable": "Score saving is getting ready. Please try again.",
      "queue_offline": "You're offline. Your score will stay on this device until you choose to send it.",
      "queue_queued": "Your score is queued to send.",
      "queue_syncing": "Sending queued score reports…",
      "queue_sent": "Queued score reports are up to date.",
      "queue_attention": "A queued score report needs your attention.",
      "queue_count": "{count, plural, one {# score report is waiting.} other {# score reports are waiting.}}",
      "queue_pending": "Waiting to send",
      "queue_failed": "Needs your attention",
      "send_now": "Send now",
      "queue_match": "{first} v {second}",
      "queue_other_match": "another match",
      "queue_refused_for": "Not sent for {match}",
      "queue_open_match": "Open that match",
      "discard": "Discard this unsent report",
      "extra_time": "Extra time",
      "period": {
        "rubber": "Rubber {order}"
      },
      "presence_surface": "Where you are",
      "presence_attach": "I am at this ground",
      "presence_locating": "Checking where you are…",
      "presence_attached": "Attached — your report will say you were there.",
      "presence_unavailable": "Your device couldn't work out where it is. Send the score without it.",
      "venue": {
        "changes_lost": "{count, plural, one {Your last change wasn’t recorded and needs to be entered again.} other {Your last # changes weren’t recorded and need to be entered again.}}",
        "earlier_notice": "Your last score here wasn’t sent: {reason}",
        "dismiss": "Dismiss",
        "title": "Confirm you’re at {venue} to score",
        "title_ground": "Confirm you’re at the ground to score",
        "the_ground": "the ground",
        "ask": "Scoring is for people at the match. Share your location once and it goes with each score you send.",
        "share": "Share my location",
        "share_again": "Share my location again",
        "waiting_send": "Finding your location. Your score sends as soon as it’s found.",
        "asking": "Finding your location…",
        "shared": "Location shared. It goes with each score you send.",
        "denied": "Location is blocked for this site. Allow it in your browser’s site settings, then share your location again.",
        "unavailable": "Your device couldn’t find its location. Check that location is switched on, then share it again.",
        "stale_fix": "Your device gave a location from earlier, not where you are now, so it can’t go with your score. Turn location off and on again or reload the page, then share it again.",
        "fix_required": "Share your location to send this score. What you entered is still here.",
        "too_far": "You’re too far from {venue} to score. Scoring is for people at the ground. If you’ve just arrived, share your location again.",
        "imprecise_needed": "Scoring needs a precise location, and your device’s location isn’t precise enough. Turn on precise location for this site, or move into the open, then share it again.",
        "outside_window": "Scoring for this match isn’t open right now.",
        "venue_unlocated": "{venue} has no location on the map yet, so scores can’t be checked here.",
        "follow_match": "Follow the match",
        "no_script": "Scoring needs your location, and this page can only read it with JavaScript on. Turn JavaScript on and reload to score.",
        "not_allowed": "Scoring isn’t available for this account. Scoring needs your location, and this account can’t share it.",
        "not_needed": "Location isn’t needed for this match.",
        "earlier_score": "It was {scoreline}.",
        "window_ended": "Scoring for this match has ended, so the result can no longer be changed here.",
        "shared_short": "Location shared with each score.",
        "share_again_short": "Share again"
      },
      "readiness": {
        "profile_required": "Complete your profile before reporting a score.",
        "adult_required": "Score reporting is available only to an adult account during testing.",
        "email_required": "Verify your email address before reporting a score.",
        "credential_revoked": "Your reporting verification is no longer active. Verify again to continue.",
        "verification_unavailable": "Score reporting verification is not available right now.",
        "verify_email": "Verify by email"
      },
      "participant_option": "Participant {participantIndex}",
      "tie": {
        "fix_hint": "Made a mistake? Change any set with − and +, or type over it.",
        "surplus": "{slot} doesn’t count: the match was won in {decider}.",
        "clear_set": "Clear {slot}",
        "stalled": "{slot} isn’t finished, so the sets after it don’t count yet.",
        "preview_heading": "Your score",
        "how_to_games": "Tap + for each game won. A finished set moves up by itself.",
        "how_to_points": "Tap + for each point won. It moves up by itself once it is won.",
        "slot": "{name} {order}",
        "slot_tiebreak": "Match tiebreak",
        "now_row": "{slot} · now",
        "current_set_games": "Games in the set being played",
        "current_set_points": "Points in the set being played",
        "current_game": "Current game",
        "current_game_hint": "Optional — leave it on the dash if you only know the sets and games.",
        "tiebreak_points": "Tiebreak points",
        "points_group": "{side} points",
        "input_label": "{side}, {slot}",
        "decrease": "One less for {side}, {slot}",
        "increase": "One more for {side}, {slot}",
        "who_won": "Who won?",
        "still_playing": "Still playing",
        "decided_hint": "These sets finish the match, so {winner} is selected. Change it if that’s wrong.",
        "save_empty": "Save score",
        "save": "Save score — {scoreline}",
        "save_final": "Save final score — {scoreline}",
        "pair": "{first}–{second}",
        "pair_separator": ", ",
        "more_options": "More options",
        "labels_unavailable": "Team names couldn’t be loaded right now, so players are numbered. Scoring still works.",
        "refusal_set": "{score} isn’t a finished score for {slot} in this format.",
        "refusal_games": "{score} can’t be the games in {slot} while it is still being played.",
        "refusal_points": "That current-game score isn’t possible at this point.",
        "refusal_outcome": "The sets entered don’t finish the match yet.",
        "refusal_outcome_detail": "Choose Still playing, or enter the sets that finished it.",
        "refusal_incomplete": "{slot} needs a score for both players.",
        "refusal_nothing_sent": "Check with the players and set it again — nothing has been sent.",
        "rule_game_set": "Sets here end when a player reaches {gamesToWin} games with a {winBy}-game lead.",
        "rule_game_set_tiebreak": "Sets here end at {gamesToWin} games with a {winBy}-game lead, or {tiebreakWin}–{tiebreakAt} after a tiebreak.",
        "rule_point_set": "This one ends at {target} points with a {winBy}-point lead.",
        "rule_point_set_capped": "This one ends at {target} points with a {winBy}-point lead, or at {cap} points.",
        "no_points": "No points",
        "preview_published": "Score followers see now",
        "refusal_gap": "{slot} has a score but {missing} is empty.",
        "refusal_gap_detail": "Enter the sets in the order they were played, or clear the later one."
      },
      "status": {
        "idle": "Followers see {scoreline}",
        "idle_plain": "Scores send as you enter them.",
        "sending": "Sending {scoreline}…",
        "sending_plain": "Sending your score…",
        "sent": "Followers see {scoreline}",
        "sent_plain": "Sent. Followers see your latest score.",
        "sent_result": "Result sent: {scoreline}",
        "sent_result_plain": "Result sent.",
        "offline": "You’re offline. {scoreline} sends when you’re back.",
        "offline_plain": "You’re offline. Your score sends when you’re back.",
        "waiting": "{scoreline} didn’t get through. It’s kept and sends shortly.",
        "waiting_plain": "Your score didn’t get through. It’s kept and sends shortly.",
        "location": "Share your location to send {scoreline}.",
        "location_plain": "Share your location to send your score.",
        "unsent": "{scoreline} wasn’t sent. Send it, or change the score.",
        "unsent_plain": "Your score wasn’t sent. Change the score to send it.",
        "incomplete": "Finish entering the score to send it.",
        "send_now": "Send now",
        "storage_blocked": "This site is open in another tab. Close the other tabs of this site to keep sending scores.",
        "storage_failed": "Your score couldn’t be stored on this device, so it wasn’t sent. Allow this site to store data, then change the score to try again.",
        "attention": "Not sent. Check the score below.",
        "blocked_short": "Not sending while another tab of this site is open.",
        "expired": "This score waited more than a day without a connection, so it wasn’t sent. Enter the current score to send it.",
        "send_score": "Send {scoreline}",
        "earlier_sent": "Your earlier score {scoreline} was sent. The match is now at {current}.",
        "earlier_sent_plain": "Your earlier score was sent. The score shown is the current one.",
        "held_elsewhere": "{scoreline} is being sent from another tab of this site. It goes within about a minute.",
        "held_elsewhere_plain": "Your score is being sent from another tab of this site. It goes within about a minute.",
        "sent_on_leave": "{scoreline} was sent as you left the page.",
        "sent_on_leave_plain": "Your score was sent as you left the page."
      },
      "result": {
        "trigger": "Send result: {winner} won",
        "question": "{winner} won {scoreline}.",
        "question_plain": "{winner} won.",
        "detail": "Followers will see this as the result.",
        "confirm": "Yes, send result",
        "cancel": "Not yet",
        "summary": "{winner} won {scoreline}",
        "trigger_final": "Send result",
        "agree_first": "The scorers disagree. Agree on one score first: use one of the other scores, then send the result.",
        "question_final": "Send the score above as the result?",
        "behind_increments_title": "The score above doesn’t include the points you’ve just added.",
        "behind_increments_detail": "Check the totals and correct them, or wait a moment for them to update, then send the result."
      },
      "finish": {
        "trigger": "The match is over",
        "question": "Is the match over?",
        "detail": "The result above becomes the final score.",
        "confirm": "Yes, it’s over",
        "cancel": "Not yet"
      },
      "end": {
        "expected": "Expected to end about {time}",
        "prompt_expected": "Has the match finished?",
        "not_yet": "Not yet",
        "undo": "Undo",
        "withdrawn_by_score": "You sent a new score, so you no longer say the match is over.",
        "closed_by_time": "The match has ended. This is the result.",
        "you_said_plain": "You said it’s over.",
        "closed_by_staff": "The organisers ended the match. This is the final result.",
        "detail_running": "The score followers see now becomes the final score.",
        "reporting_closed": "Your account can’t report scores right now, so it can’t say the match is over.",
        "hold_sending": "Sending your latest score first. The match ends as soon as it’s through.",
        "hold_offline": "Your latest score hasn’t been sent yet because you’re offline. When you’re back online it sends by itself; then say the match is over again.",
        "hold_refused": "Your latest score wasn’t sent, so the match can’t be ended yet. Sort out what the page says about it, then say the match is over again.",
        "prompt_answer": "It’s over",
        "hold_cancelled": "You changed the score, so the match isn’t ended yet. Say it’s over again when it is.",
        "you_said_confirming": "You said it’s over. Thanks. It ends once that’s confirmed.",
        "detail_confirm": "The score followers see becomes final once it’s confirmed.",
        "detail_confirm_score": "{scoreline} becomes final once it’s confirmed.",
        "others_said_plain": "Someone scoring this match says it’s over. Is it?",
        "agree_first": "The scorers disagree. Agree on one score before you say the match is over."
      },
      "held": {
        "question_result": "Send the corrected result?",
        "detail_result": "Followers will see this result: {scoreline}",
        "detail_result_plain": "Followers will see the changed score as the result.",
        "question_reopen": "Reopen the match?",
        "detail_reopen": "This score doesn’t decide the match, so scoring goes on. Followers will see: {scoreline}",
        "detail_reopen_plain": "This score doesn’t decide the match, so scoring goes on.",
        "confirm_result": "Yes, send corrected result",
        "confirm_reopen": "Yes, reopen the match",
        "withdraws_statement": "You’ll no longer say the match is over.",
        "question_unsendable": "The sent result still stands.",
        "detail_unsendable": "Finish the score to send a corrected result or reopen the match, or put the sent result back.",
        "restore": "Put the sent result back",
        "increments_locked": "The result has been sent. Changing the score will ask whether to send a corrected result or reopen the match."
      },
      "review_in_words_unavailable": "The result is ready. It shows on the match page.",
      "review_place": "Place {place}",
      "ended": {
        "window": "Scoring for this match has ended, so the result can no longer be changed here.",
        "see_match": "See the match",
        "by_you": "You ended the match. This is the final result.",
        "by_scorers": "Its scorers ended the match. This is the final result.",
        "final_score": "Final score"
      },
      "private_note": "This match is private, so it has no public page to share.",
      "no_script_plain": "Turn JavaScript on and reload to score this match.",
      "private_current_unknown": "This match is private, so this page can’t show its current score. Enter the whole score as it stands now.",
      "clock": {
        "title": "Reported match clock",
        "absent": "No timing reported",
        "not_started": "Not started",
        "running": "Running",
        "paused": "Paused",
        "ended": "Period ended",
        "start_period": "Start in period",
        "start": "Start clock",
        "pause": "Pause the clock",
        "resume": "Resume the clock",
        "end": "End period",
        "next": "Start next period",
        "adjust": "Adjust playing time",
        "elapsed_seconds": "Elapsed playing seconds in this period",
        "apply_adjust": "Apply time",
        "retry": "Retry clock change",
        "minute": "{minute}′",
        "added_minute": "{minute}+{added}′",
        "period_relative": "Time within this period",
        "unconfirmed": "Unconfirmed timing",
        "withheld": "Reported timing disagrees or is unavailable",
        "conflict": "The reported clock changed. Refresh and try the clock action again.",
        "delivery_unconfirmed": "Clock delivery is unconfirmed. Retry the same change to recover its receipt.",
        "elapsed_unavailable": "The reported time is outside the supported range. Adjust the clock before attaching timing.",
        "face": "{minutes}:{seconds}",
        "board_not_started": "Clock not started",
        "board_unconfirmed": "The clock change may not have gone through.",
        "waiting_location": "Finding your location. Your clock change goes as soon as it’s found.",
        "waiting_superseded": "The match clock changed while your location was being found, so your clock change wasn’t made. Check the clock and change it again if you still need to.",
        "waiting_unsent": "Your location wasn’t found, so your clock change wasn’t made. Share your location, then change the clock again if you still need to.",
        "checked": "✓ checked",
        "open_hint": "Tap to check or change the clock",
        "period_state": "{period} · {state}",
        "time_invalid": "Enter the minutes and seconds the clock shows.",
        "time_before_period": "That time is before this period started.",
        "check_heading": "Is it right?",
        "check_help": "Check it against the referee’s or the ground’s clock.",
        "its_right": "Yes, it’s right",
        "change": "Change it",
        "minutes": "Minutes",
        "seconds": "Seconds",
        "colon": ":",
        "save": "Save the time",
        "stoppages": "Stoppages",
        "end_named": "End {period}",
        "next_named": "Start {period}",
        "followers_note": "Followers see the time you report. Changing it never moves a score that’s already in the timeline.",
        "sheet_title": "Match clock",
        "full_time": "Full time",
        "ending": "Ending, waiting for the other scorers",
        "not_current": "Updating…",
        "start_at": "Start at this time",
        "undo_end": "Undo end",
        "undo_next": "Undo next period",
        "changed_meanwhile": "The clock was changed on another phone. It shows the latest time.",
        "pause_not_recorded": "That pause wasn't recorded.",
        "not_sent_retry": "That change didn't go through. Try again.",
        "undo_expired": "That period can no longer be undone."
      },
      "shirt": {
        "optional": "Who scored? (optional)",
        "event": "Scoring detail",
        "send": "Add shirt number",
        "change": "Change shirt number",
        "status": {
          "idle": "The score is already sent. Add a shirt number if you know it.",
          "sending": "Sending the shirt number…",
          "queued": "Shirt number queued. The score is already sent.",
          "sent": "Shirt number sent. It appears only with the selected score report.",
          "refused": "Shirt number could not be added. The score is already sent."
        }
      },
      "sheet": {
        "close": "Close"
      },
      "board": {
        "label": "Scoreboard and scoring buttons",
        "pad": "Add points for {side}",
        "updating": "Updating…",
        "showing_own": "Showing your score.",
        "showing_followers": "Showing what followers see.",
        "show_followers": "See what followers see",
        "show_own": "Back to your score",
        "own_unavailable": "Your score could not be loaded. Showing what followers see.",
        "tap_not_sent": "That score wasn't added.",
        "stream_too_long": "This match has reached its score limit. That score wasn't added."
      },
      "more": {
        "title": "More",
        "open": "More",
        "clock_hint": "The clock has its own panel: tap the time on the scoreboard.",
        "take_off": "Take points off",
        "take_off_help": "Undo covers your last score. Use this for anything older.",
        "take_off_action": "−{value} {action}",
        "late": "Arrived late? Set the totals",
        "result": "Declare the result (optional)",
        "location": "Location",
        "location_help": "Shared with each score you send, never shown to anyone.",
        "back_to_match": "Back to the match page"
      },
      "who": {
        "title": "Who scored",
        "question": "{action} · who scored?",
        "skip": "Skip",
        "done": "Done",
        "whose": "Whose jerseys",
        "sent": "✓ Jersey {number} · {detail}",
        "change": "Change",
        "name_hint": "Tap a jersey to add a name",
        "detail": "Which detail",
        "event_number": "({number})",
        "jerseys": "{side} jersey numbers",
        "jersey_scored": "Jersey {number}: {action}",
        "jersey_name": "Jersey {number}, {side}. Add a name",
        "other": "Other",
        "other_label": "Jersey number",
        "other_send": "Add",
        "other_name": "Name this jersey",
        "refused": "The jersey couldn’t be added. The score is in.",
        "sending": "Adding jersey {number}…"
      },
      "name": {
        "title": "Name jersey {number} · {side}",
        "title_plain": "Name a player",
        "unavailable": "Names can’t be added right now. Scoring still works.",
        "locked": "You can’t name {side} players.",
        "thanks": "Thanks. Your suggestion is in.",
        "given": "First name",
        "surname": "Surname (optional)",
        "surname_help": "Never shown to anyone.",
        "submit": "Send the name",
        "slot": "{label}: {number}",
        "unconfirmed": "The name couldn’t be sent. Check your signal and try again."
      },
      "tennis": {
        "board": "Scoreboard",
        "caption": "Score: players in rows, sets in columns, the current game last",
        "points_short": "Pts",
        "tiebreak_short": "TB",
        "who_won_point": "Who won the point?",
        "side_won_point": "{side} won the point",
        "fix_cell": "{slot}, {side} {value}. Fix this set",
        "fix_hint": "Tap a set score to fix it.",
        "decided": "{winner} won.",
        "fix_title": "Fix the score",
        "fix_done": "Done",
        "fix_help": "Set it to what the scoreboard on court shows.",
        "late_help": "Arrived late? Tap any set score on the board and set it to what the court shows. Undo puts back the score from before."
      },
      "heat": {
        "label": "Record results",
        "board_label": "Results by place, then entrants still waiting",
        "details": "Event details",
        "round": "Round",
        "competitor": "Competitor",
        "entrant_in_lane": "{entrant}, lane {lane}",
        "entrant_in_order": "{entrant}, no. {order}",
        "order": "Number {order} in order",
        "lane": "Lane {lane}",
        "waiting": "Waiting",
        "enter": "Enter",
        "time_for": "Time for {entrant}",
        "mark_for": "Result for {entrant}",
        "send": "Send",
        "time_hint": "As on the board, e.g. {example}",
        "mark_hint": "As recorded at the event",
        "or": "or",
        "status_for": "{status}: {entrant}",
        "pick": "Tap an entrant to record their result.",
        "sent": "Sent: {entrant}, {what}.",
        "private_unknown": "This event is private, so results so far aren’t shown here.",
        "refused_empty_time": "Type the time first.",
        "refused_empty": "Type the result first.",
        "refused_not_time": "Not sent: {mark} isn’t a time.",
        "refused_seconds": "Seconds stop at {max}.",
        "refused_not_number": "Not sent: {mark} isn’t a number.",
        "refused_step_detail": "Results go in steps of {step}.",
        "refused_condition": "Not sent: choose {condition} first.",
        "refused_condition_range": "Not sent: {condition} goes from {min} to {max}.",
        "refused_invalid": "Not sent: {mark} can’t be recorded for this event."
      },
      "scorers": {
        "followers_see": "Followers see {scoreline}",
        "yours": "Your score: {scoreline}",
        "disagree": "The scorers disagree. Please check the score.",
        "other": "Another scorer has {scoreline}",
        "use": "Use this score",
        "unavailable": "The other scorers’ scores can’t be shown right now."
      }
    },
    "form": {
      "continue": "Continue",
      "back": "Back",
      "save": "Save",
      "cancel": "Cancel",
      "required": "Required",
      "submitting": "Working…",
      "retry": "Try again"
    },
    "share": {
      "heading": "Share live updates",
      "help": "Anyone with this public match link can watch without an account.",
      "match_title": "Live Youth Scores live match",
      "message": "Follow the live scores and results here.",
      "whatsapp": "Share on WhatsApp",
      "native": "Share another way",
      "copy": "Copy link",
      "open": "Open public match",
      "copied": "Link copied.",
      "manual": "Copy this public match link"
    },
    "signup": {
      "title": "Create your account",
      "step_of": "Step {current} of {total}",
      "email": {
        "heading": "What's your email address?",
        "explanation": "We'll send you a six-digit code. There's no password to remember — we don't store one at all.",
        "label": "Email address",
        "submit": "Send me a code",
        "sent": "We've sent a code to {email}."
      },
      "code": {
        "heading": "Enter the code we emailed you",
        "explanation": "It's six digits and it expires in a few minutes.",
        "label": "Six-digit code",
        "submit": "Verify",
        "resend": "Send another code"
      },
      "profile": {
        "heading": "A few basics",
        "explanation": "Language is your setting, not your country's — you can change it any time.",
        "username_label": "Username",
        "username_help": "This is what other people see on the scorekeeper leaderboard. It is never your real name.",
        "language_label": "Language",
        "timezone_label": "Time zone",
        "country_label": "Country",
        "date_of_birth_label": "Date of birth",
        "date_of_birth_help": "We need this to know which rules apply to your account. It is never shown to anyone.",
        "submit": "Continue",
        "country_help": "Two-letter country code, e.g. GB or ZA. We use it to know which rules apply to this account — nothing else."
      },
      "minor": {
        "heading": "A parent or guardian needs to be here",
        "explanation": "This account is for someone under {childDataAge}. Before it can be created, a parent or guardian has to sign in on this device and give their permission.",
        "detail": "Until they do, we collect nothing beyond what's on this screen — no phone number, no device details, no location.",
        "guardian_signed_in": "Signed in as {username}. You're giving permission as a parent or guardian.",
        "sign_in_guardian": "Parent or guardian: sign in",
        "consent_label": "I am this child's parent or guardian and I give permission for this account.",
        "submit": "Give permission and create the account",
        "not_me": "That isn't me — sign in as a different adult"
      },
      "home_org": {
        "heading": "Which school or club do you support?",
        "explanation": "Pick it from the list. This is your community — it decides whose players you can help name on a fixture page, and nothing else.",
        "search_label": "Search for a school or club",
        "search_placeholder": "Start typing a name",
        "no_results": "Nothing matched that. Try part of the name, or tell us it's missing.",
        "matched_alias": "also known as {alias}",
        "select": "Choose",
        "not_listed": "My school or club isn't listed",
        "not_listed_heading": "Tell us what's missing",
        "not_listed_explanation": "We'll add it to the registry. Your account works fine in the meantime — you just won't have naming rights until it's added.",
        "proposed_name_label": "School or club name",
        "not_listed_submit": "Send the request",
        "pending": "We're adding {name} to the registry. You'll be able to declare it once it's there.",
        "declared": "Your home organisation is {name}.",
        "skip": "Skip for now"
      },
      "done": {
        "heading": "You're in",
        "explanation": "You can follow teams and see live scores straight away. Your account page shows anything still needed before you report a score.",
        "go_home": "Go to what's live",
        "verify_phone": "Open my account"
      },
      "eyebrow": "Join Live Youth Scores",
      "heading": "Create your account",
      "explanation": "We’ll email you a secure sign-in link. No password needed.",
      "given_name": "First name",
      "surname": "Last name",
      "phone": "Cellphone number",
      "phone_help": "Include your country code, for example +27 82 123 4567. This number is not verified yet.",
      "email_label": "Email address",
      "terms_before": "I have read the",
      "terms_link": "terms and conditions",
      "terms_after": ".",
      "submit": "Create my account",
      "have_account": "Already have an account?",
      "sign_in": "Sign in",
      "error_heading": "We couldn’t create your account",
      "sent": {
        "heading": "Check your email",
        "explanation": "Use the secure link we sent to finish creating your account. It expires soon.",
        "private_notice": "Open the email to finish creating your account.",
        "home": "Back to live scores",
        "already_used": "Already finished?",
        "try_again": "Edit details or send another link"
      },
      "whatsapp_updates": "Send me match, team and account updates on WhatsApp.",
      "whatsapp_combined": "Send me WhatsApp updates and offers.",
      "whatsapp_help": "WhatsApp messages aren’t available yet. We’ll save your choices.",
      "whatsapp_promotions": "Send me promotional news and offers on WhatsApp.",
      "messaging_details": "Read the messaging details.",
      "draft_note": "Test terms: draft awaiting legal review.",
      "date_of_birth": {
        "legend": "Date of birth",
        "day": "Day",
        "month": "Month",
        "year": "Year",
        "help": "We use this to check you're old enough for an account. It's never shown to anyone.",
        "invalid": "Enter a real date of birth, for example 23 4 2001."
      },
      "country": {
        "label": "Country",
        "choose": "Choose your country",
        "not_listed": "My country isn't listed",
        "detected": "We guessed this from your internet connection. Change it if it's wrong.",
        "required": "Choose your country, or choose “My country isn’t listed”."
      },
      "unavailable_country": {
        "heading": "Not available in your country yet",
        "explanation": "You can only create an account in the countries on the list for now. No account was created. You can still follow live scores without one."
      },
      "below_age": {
        "heading": "You can't create an account yet",
        "explanation": "Accounts for people under {childDataAge} in {country} aren't available yet. No account was created. You can still follow live scores without one.",
        "explanation_plain": "Accounts for people your age aren't available yet. No account was created. You can still follow live scores without one."
      },
      "outcome": {
        "follow": "Follow live scores",
        "back": "Back to sign up"
      }
    },
    "login": {
      "title": "Sign in",
      "heading": "Sign in",
      "explanation": "Enter your email and we’ll send a secure sign-in link. No password, no code to copy.",
      "email_label": "Email address",
      "submit": "Email me a sign-in link",
      "code_heading": "Enter the code we emailed you",
      "code_label": "Six-digit code",
      "code_submit": "Sign in",
      "sent": "If that address has an account, a secure sign-in link is on its way.",
      "no_account": "New to Live Youth Scores?",
      "create": "Create an account",
      "resend": "Send another code",
      "change_email": "Use a different email address",
      "eyebrow": "Welcome back",
      "sent_heading": "Check your email",
      "sent_private": "Open the email on this device to finish signing in.",
      "use_different_email": "Send another link or use a different email"
    },
    "internal_testing": {
      "terms_heading": "Internal testing terms",
      "consent_draft_label": "Internal testing draft — this wording is still awaiting counsel review and is not presented as legally approved terms.",
      "terms_acknowledgement": "I understand this is a test draft and want to create an adult testing account.",
      "terms_continue": "Accept test draft and continue",
      "minor_signup_unavailable": "Child accounts stay unavailable in internal testing until the guardian-consent wording has been approved. No child account or consent record will be created."
    },
    "account": {
      "title": "Your account",
      "heading": "Your account",
      "username_label": "Username",
      "country_label": "Country",
      "language_label": "Language",
      "language_public_note": "Public match, event and ground pages stay in {language}. Choose a language below to read Help in it. Your personal pages, including scoring and your account, use the stored choice.",
      "timezone_label": "Time zone",
      "timezone_suggestion": "Your times show in UTC. Your country’s time zone is {zone}.",
      "timezone_use": "Use {zone}",
      "home_org_label": "Home organisation",
      "home_org_none": "Not set — you have no naming rights until you declare one.",
      "home_org_pending": "Waiting for {name} to be added to the registry.",
      "declare_home_org": "Declare a home organisation",
      "household_link": "Your household",
      "privacy_link": "Privacy and your data",
      "following_link": "Following and saved matches",
      "notifications_link": "Your notifications",
      "continue_cta": "Back to what you were doing",
      "settings_saved": "Saved.",
      "sign_out": "Sign out",
      "phone": {
        "heading": "Mobile number",
        "explanation": "Browsing and following never need a mobile number.",
        "verified": "Verified.",
        "reassignment_case": "Your carrier-recycled number case reference is {id}.",
        "not_verified": "Not verified yet.",
        "label": "Mobile number",
        "placeholder": "+27821234567",
        "send": "Send me a code",
        "sent": "We've sent a code to {phone}.",
        "code_label": "Six-digit code",
        "verify": "Verify",
        "internal_testing_unavailable": "Mobile number verification isn’t available yet.",
        "shared_number_note": "More than one person in a household can use the same number."
      },
      "minor_notice": "This account belongs to someone under {childDataAge}. A parent or guardian gave permission for it, and they can withdraw that at any time.",
      "profile": {
        "heading": "Add your date of birth and country",
        "explanation": "You need these before you can score matches. We use them only to apply the right rules for your country, and we never show your date of birth.",
        "submit": "Save profile details",
        "saved": "Your profile details are saved.",
        "pending_value": "To be completed",
        "submit_continue": "Save and continue",
        "below_age": "Accounts for people under {childDataAge} in {country} can't score matches yet. Nothing was saved.",
        "unavailable_country": "Live Youth Scores isn't available in your country yet. Nothing was saved.",
        "delete_hint": "You can still follow matches, or delete this account on the privacy page."
      },
      "messaging": {
        "heading": "WhatsApp preferences",
        "help": "Both choices are optional and can be switched off here at any time. Saving them does not make WhatsApp delivery available."
      },
      "profile_completion_required": "Complete your date of birth and country in account settings before using age-dependent features.",
      "lede": "Your details, how we reach you, and your data.",
      "details_heading": "Details",
      "preferences_heading": "Preferences",
      "spaces_label": "Your spaces",
      "household_help": "Your children, and what you can do for them.",
      "notifications_help": "What you’re told about, and when.",
      "following_help": "Teams, schools, events and saved matches.",
      "team_hub_help": "Notices from the teams you belong to.",
      "privacy_help": "Get a copy of your data, or ask us to erase it. For you or a child.",
      "details": {
        "name_label": "Name",
        "date_of_birth_fixed": "Your date of birth can’t be changed.",
        "not_given": "Not given",
        "edit_heading": "Change your details",
        "private_note": "Only you can see your name, email, date of birth and phone.",
        "saved": "Your details are saved."
      },
      "email": {
        "heading": "Change your email",
        "new_label": "New email address",
        "send": "Send confirmation link",
        "sent": "We sent a link to the new address. Open it to finish changing your email.",
        "pending": "Waiting for you to open the link we sent to {email}."
      }
    },
    "account_email": {
      "title": "Confirm your new email",
      "heading": "Confirm your new email",
      "intro": "Make this the email you use to sign in.",
      "confirm": "Confirm new email",
      "done_heading": "Email changed",
      "done_intro": "Your email is now {email}. Use it next time you sign in.",
      "unavailable_detail": "Your email has not changed.",
      "signed_out_heading": "Sign in to change your email",
      "signed_out_intro": "Sign in on this device, then open the link in your email again.",
      "back": "Back to your account"
    },
    "errors": {
      "age_group_not_selectable": "Pick an age group from the list.",
      "age_status_stale": "We need to recheck this account's age settings. Try again in a moment.",
      "agent_write_barred": "This can only be done by a person signed in themselves — a connected app or assistant can't do it.",
      "archetype_not_creatable": "That sport's matches are set up by the organiser, not added here yet.",
      "assertion_kind_not_submittable": "That kind of report can't be sent for this match. Send the score instead.",
      "assertion_not_selectable": "We couldn't find the earlier report you're correcting. Reload the match and try again.",
      "assertion_payload_invalid": "That score doesn't add up the way this sport works. Check the numbers and send it again.",
      "below_platform_minimum_age": "We're sorry — accounts aren't available at that age in your country.",
      "block_card_not_scoreable": "That's the card for the whole fixture, not one match. Pick the age group you're watching and score that row.",
      "career_record_not_visible": "There's no public career record for this player.",
      "challenge_not_verified": "That sign-up hasn't been verified by email yet. Start again.",
      "code_invalid": "That code is not valid. Request a new one.",
      "consent_text_missing": "We can't show you the wording to agree to yet, so we've stopped here rather than guess.",
      "country_not_shipped": "We haven't launched in that country yet.",
      "creation_confirmation_required": "Have another look at the match we found, then choose again.",
      "cross_origin_refused": "That request came from somewhere else, so we stopped it.",
      "dispute_already_open": "Someone has already flagged this score, and it's with moderation now. Nothing more to send — the result stays marked as disputed until they decide.",
      "email_taken": "That email address already has an account. Sign in instead.",
      "erase_not_available": "We can't delete this record yet. Contact us and we'll do it by hand.",
      "event_not_visible": "There's no published programme here. If the organiser hasn't published yet, it will appear once they do.",
      "fixture_upload_refused": "That fixture list has moved on since this page loaded. Reload it and look at where the rows are now.",
      "fixture_upload_duplicate": "You have already uploaded this exact list, and it is waiting for review. Open it, or withdraw it there to upload it again.",
      "fixture_upload_unparsable": "We couldn't read that fixture list. Check the columns and the date format, then try again.",
      "forbidden": "You don't have permission to do that.",
      "format_not_selectable": "That match format isn't set up for this sport yet.",
      "gender_not_selectable": "Pick a section category from the list.",
      "match_format_conflict": "This match is recorded as a different format — leave the format blank or pick the one it lists.",
      "match_format_required": "Pick the match format before submitting this score.",
      "guardian_must_be_adult": "The signed-in account can't give permission for another account.",
      "guardian_required": "A parent or guardian needs to sign in before this account can be created.",
      "home_org_already_set": "Your home organisation is already set. Changing it is a verified switch.",
      "reported_clock_conflict": "The reported clock changed. Refresh and try the clock action again.",
      "write_contended": "A lot is being saved at once. Send it again in a moment — nothing was lost.",
      "idempotency_key_conflict": "We've already saved something different under that submission. Send it again and we'll save it as a new report.",
      "internal_game_source_conflict": "That internal result changed after you reviewed it. Reload it and review the current result.",
      "agent_scopes_expanded": "This app is already connected with fewer permissions. To give it more, revoke it under Connected apps, then approve it again.",
      "internal": "Something went wrong on our side. Check the latest result before trying the action again.",
      "score_unconfirmed": "We couldn’t confirm that your score arrived. Check the match score before you send it again.",
      "creation_unconfirmed": "We couldn’t confirm that this was saved. Try again with the same details: nothing will be added twice.",
      "link_unconfirmed": "We couldn’t confirm that your link was sent. Try again in a moment, then use the newest email.",
      "follow_unconfirmed": "We couldn’t confirm that this change was saved. Reload the page to check, then try again.",
      "account_unconfirmed": "Your change may not have been saved. Reload the page to check, then try again.",
      "household_unconfirmed": "That change may not have been saved. Reload the page to check before you try again.",
      "school_unconfirmed": "That step may not have finished. Reload the page to check before you try again.",
      "invalid_request": "That doesn't look right. Check the form and try again.",
      "item_not_scoreable": "That match isn't ready for scores yet, or has moved. Reload the page and score the match that's there.",
      "language_not_active": "That language isn't available yet.",
      "lineage_assertions_not_visible": "There is nothing to show for that shirt.",
      "location_collision": "That spot is already registered as another venue. We've sent it for review.",
      "merge_holds_results": "That match already has scores, so it can't be merged yet. Leave a note for moderation instead.",
      "merge_not_permitted": "Those two can't be merged.",
      "merge_reversal_refused": "That merge can't be undone any more.",
      "minor_data_consent_missing": "A parent or guardian's permission is needed before we can store that.",
      "not_found": "We couldn't find that.",
      "org_domain_not_verified": "That email address isn't at a domain this organisation has verified. Use your organisation address, or ask them to add the domain.",
      "org_not_selectable": "Pick a school or club from the list.",
      "org_verification_already_held": "This account is already verified for that organisation.",
      "org_verification_required": "Only a verified member of the school or club can upload its fixtures. Verify an email address at your school's own domain first.",
      "participant_not_selectable": "That entrant isn't in this match. Pick one from the list.",
      "phone_number_change_barred": "This account already has a verified number. Changing it needs a moderator.",
      "phone_number_change_contested": "Someone else has just verified that number. Ask for a new code — a moderator has to look at a number that has changed hands.",
      "phone_number_change_cooldown": "This account changed its number recently. You can change it again after the cool-off period, or ask a moderator.",
      "phone_number_invalid": "That doesn't look like a phone number we can send to. Include the country code, e.g. +27821234567.",
      "email_invalid": "That doesn’t look like an email address. Check it has one @ and no spaces.",
      "timezone_invalid": "We don’t recognise that time zone. Use a name like Europe/London or Africa/Johannesburg.",
      "phone_verification_unavailable": "Mobile number verification isn’t available yet.",
      "internal_terms_required": "Read and accept the clearly labelled internal-testing draft to continue.",
      "internal_terms_changed": "The test terms changed since this page opened. Review the updated draft and tick the box again.",
      "player_identity_contested": "These two records don't agree, so we haven't merged them. A moderator will look at it.",
      "private_binding_conflict": "You have already recorded an answer for this. If the school has confirmed this shirt, or you have already added it, there is nothing more to do here.",
      "programme_act_refused": "This programme has moved on since the page loaded. Reload it and look at where things are now.",
      "programme_event_duplicate": "There is already an event at this ground on this date. Open that one and add your programme to it.",
      "programme_item_duplicate": "That match is already on the programme. Open the fixture that's there and check whether it's the same one.",
      "programme_scored_published": "Matches under this have scores, so it stays public. That's the rule once people have started scoring — nothing you reload will change it.",
      "programme_structure_invalid": "That doesn't fit the draw as it stands. Have another look at the section before saving.",
      "photo_rejected": "That photo couldn't be used. Try another JPEG, PNG or WebP photo of the scoreboard, under 10 MB.",
      "rate_limited": "Too many attempts. Wait a little and try again.",
      "presence_venue_unlocated": "This venue has no location on the map yet, so scores can’t be checked here.",
      "presence_fix_required": "Share your location to send a score.",
      "presence_fix_imprecise": "Your location isn’t precise enough yet. Share it again.",
      "presence_outside_window": "Scoring for this match isn’t open right now.",
      "presence_outside_venue": "You’re too far from the ground to score.",
      "presence_window_ended": "The scoring time for this match has ended, so the result can no longer be changed here.",
      "completion_not_scorer": "Only someone who has sent a score for this match can say it’s over.",
      "completion_not_live": "This match isn’t in progress any more, so there’s nothing to end.",
      "completion_reports_disagree": "The scorers disagree. Agree on one score before you say the match is over.",
      "resource_binding_refused": "We couldn't put that match on that field. The field may have been renamed, merged or taken out of use since this page loaded — reload and pick again.",
      "sport_not_scoreable": "Scores can't be recorded for this sport yet. We're still setting up how it's scored.",
      "sport_not_selectable": "Pick a sport from the list.",
      "submission_gate_not_cleared": "Your account isn’t ready for this yet. Your account page shows what’s needed.",
      "surface_merge_refused": "We couldn't merge those two fields. Check which one you're keeping: the one that stays should be the older or more official of the two.",
      "surface_name_taken": "A field here is already called that. Pick another name, or rename or merge the one that has it.",
      "team_not_selectable": "Pick a team from the list.",
      "trust_invariant": "Something went wrong on our side while recording that. Nothing you sent was lost — try again shortly.",
      "unauthorised": "You need to be signed in to do that.",
      "unknown_country": "We don't recognise that country code.",
      "unknown_resource_type": "We don't know that kind of playing surface. Pick one from the list.",
      "venue_not_selectable": "Pick a venue from the list.",
      "suspension_lift_unavailable": "There's no suspension you can lift for that account. Check the account ID from the finding.",
      "bookmark_capacity": "You can save up to 500 matches. Remove one before saving another.",
      "registration_age_unavailable": "Accounts for people your age aren't available yet.",
      "ranking_unavailable": "Rankings are not available for this sport, country and date yet. Try another date or return later.",
      "email_change_unavailable": "This link can no longer change your email. Ask for a new link from your account page.",
      "email_unchanged": "That is already your email address.",
      "coach_claim_list_too_large": "There are too many teams to list right now. Please try again later."
    },
    "registry": {
      "surface_not_reported": "Field not reported",
      "surface_where_prompt": "Where is this?",
      "surface_pending": "Pending review"
    },
    "result_status": {
      "dq": "DQ",
      "dns": "DNS",
      "dnf": "DNF",
      "eliminated": "Eliminated",
      "nh": "NH",
      "retired": "Retired",
      "wd": "Withdrawn",
      "scratched": "Scratched"
    },
    "lifecycle": {
      "scheduled": "Scheduled",
      "in_progress": "Live",
      "completed": "Full time",
      "cancelled": "Cancelled",
      "forfeited": "Forfeited",
      "walkover": "Walkover",
      "abandoned": "Abandoned",
      "merged_into": "Merged"
    },
    "venue": {
      "title": "What's on at {venue}",
      "heading": "What's on at {venue}",
      "date_line": "{date}",
      "summary": "{count, plural, =0 {Nothing on the grounds today} one {# match on the grounds} other {# matches on the grounds}}",
      "live_summary": "{count, plural, =0 {none live right now} one {# live now} other {# live now}}",
      "status": {
        "live": "Live now",
        "soon": "Starting soon",
        "later": "Later today",
        "overdue": "Due to have started",
        "recent": "Done for the day"
      },
      "no_score_yet": "Nobody scoring yet",
      "kickoff": "{at}",
      "no_set_time": "No set time",
      "queue_position": "Court order {position}",
      "teams_line": "{home} vs {away}",
      "participants_unknown": "Teams not listed yet",
      "dead_rubber": "Dead rubber",
      "surfaces_all_unreported": "Nobody has said which field these are on. Once somebody does, they'll be grouped by field here.",
      "surface_not_reported": "Field not reported",
      "surface_unreported_note": "Nobody has said which field these are on yet.",
      "surface_changed": "{surface} (moved)",
      "empty_heading": "Nothing on here today",
      "empty_body": "No matches have been reported at this ground today. Try another date, or find a different venue.",
      "find_another": "Find another venue",
      "load_error_title": "Couldn't load what's on here.",
      "load_error_body": "Check your signal and try again.",
      "not_found_title": "We don't know that ground.",
      "not_found_body": "The link may be out of date. Search for the venue by name.",
      "slot": {
        "bye": "Bye",
        "qualifier": "Qualifier",
        "winner_of": "Winner of an earlier match",
        "loser_of": "Loser of an earlier match",
        "rank_n_of": "A group placing",
        "seeded_from": "From the seeding list",
        "tbd": "To be decided"
      },
      "add_match": "Add a match",
      "last_published": "Order of play updated {at}",
      "see_programme": "See the programme for {event}",
      "surface_off_site": "(away from these grounds)",
      "surface_agent_generated": "Field chosen through a connected app",
      "surface_community_reported": "{surface} · community reported (unconfirmed)"
    },
    "discover": {
      "title": "Find your venue",
      "heading": "Where are you watching?",
      "intro": "Find live scores and upcoming matches at a sports ground, or choose a school and team to follow from anywhere.",
      "use_location": "Use my location",
      "locating": "Finding your ground…",
      "denied": "Location is off, so we can't spot the venue for you. Search for it — everything on there today comes up the same way.",
      "unavailable": "Your device couldn't work out where it is. Search for the venue instead.",
      "timed_out": "That took too long. Search for the venue instead.",
      "none_nearby": "We couldn't find a registered ground near you. Search for it by name.",
      "nearby_heading": "Grounds near you",
      "distance_m": "{metres, number} m away",
      "distance_km": "{km, number} km away",
      "search_heading": "Search by name",
      "search_label": "Search for a venue",
      "search_placeholder": "Part of a school, club or ground name",
      "search_submit": "Search",
      "search_venue_only": "Searches venues and sports grounds by name.",
      "no_results": "No venues matched that. Try part of the name.",
      "sport_filter": "Sport",
      "age_filter": "Age group",
      "all_sports": "All sports",
      "all_age_groups": "All age groups",
      "apply_filters": "Show matches",
      "view_match": "View",
      "follow_match": "Save",
      "unfollow_match": "Saved",
      "update_score": "Update score",
      "no_matches_heading": "No matches here yet",
      "no_matches_body": "When a source publishes a match at this venue, it will appear here.",
      "minor_location_blocked": "We don't use location on accounts under {childDataAge}. Search for the venue by name instead — it works exactly the same way.",
      "update_requires_account": "Sign in to check whether you can report this score.",
      "update_requires_readiness": "We’ll check what you need before score entry.",
      "home": "Home"
    },
    "event": {
      "title": "Programme — {event}",
      "title_untitled": "Programme — {venue}",
      "eyebrow": "{date} · {venue}",
      "host_line": "Hosted by {host}",
      "last_published": "Programme updated {at}",
      "tabs_label": "Event views",
      "tab_programme": "Programme",
      "tab_draws": "Draws",
      "tab_standings": "Standings",
      "tab_entrants": "Entrants",
      "sections_label": "Sections",
      "section_all": "All",
      "surfaces_label": "Fields and courts",
      "surface_all": "Everywhere",
      "print_link": "Print the programme",
      "back_to_event": "Back to the programme",
      "back_to_venue": "What else is on at {venue}",
      "director_heading": "From the event desk",
      "director_who": "Event desk · {at}",
      "director_redacted": "This notice was taken down by the organiser.",
      "director_truncated": "Showing the latest {shown} of {total} notices.",
      "director_agent_generated": "Sent by the organiser's AI assistant",
      "agenda_slot": "{at}",
      "agenda_slot_estimated": "About {at}",
      "order_of_play": "Order of play",
      "order_of_play_note": "These have no set time — they run in the order shown.",
      "timing_not_before": "Not before {at}",
      "timing_follows": "Follows the match before it",
      "timing_queue": "{position} in the order",
      "time_estimated": "About {at}",
      "no_set_time": "No set time",
      "versus": " vs ",
      "participants_unknown": "Not listed yet",
      "venue_unknown": "Unnamed ground",
      "block_card": "One card, {count, plural, one {# match} other {# matches}}",
      "dead_rubber": "Dead rubber — the tie is already decided",
      "where_unreported": "Field not reported",
      "surface_agent_generated": "Field chosen through a connected app",
      "programme_empty_heading": "Nothing published for this event yet",
      "programme_empty_body": "The organiser has not published this part of the programme. It appears here the moment they do.",
      "lens_one_entry": "Showing one entry only.",
      "lens_show_all": "Show the whole programme",
      "slot_bye": "Bye",
      "slot_qualifier": "A qualifier",
      "slot_winner_of": "Winner of an earlier match",
      "slot_winner_of_numbered": "Winner of match {match}",
      "slot_loser_of": "Loser of an earlier match",
      "slot_loser_of_numbered": "Loser of match {match}",
      "slot_rank_n_of": "A place from a group",
      "slot_rank_n_of_numbered": "Place {rank} in a group",
      "slot_rank_n_of_group": "Place {rank} in {group}",
      "slot_seeded_from": "From the seeding list",
      "slot_tbd": "To be decided",
      "slot_seed": "Seed {seed}",
      "slot_provisional": "Provisional — waiting on the result",
      "slot_unnamed": "Not listed yet",
      "draw_views_label": "Draw view",
      "draw_view_list": "Matches",
      "draw_view_path": "One entry",
      "draw_view_tree": "Tree",
      "draw_round": "Round {round}",
      "draw_round_final": "Final",
      "draw_round_semi": "Semi-finals",
      "draw_round_quarter": "Quarter-finals",
      "draw_group": "Group",
      "draw_bye": "Bye — no match played",
      "draws_empty_heading": "No draws in this event",
      "draws_empty_body": "Nothing published here plays as a draw. The programme lists what is on.",
      "draw_tree_hint": "Swipe sideways. The match list is usually quicker on a phone.",
      "draw_stage_of": "{section} · {stage}",
      "path_heading": "Follow one entry",
      "path_body": "Pick an entry to see just their matches, in the order they play them.",
      "path_past": "Earlier",
      "path_next": "Next up",
      "path_future": "Later",
      "path_empty_body": "This entry has no published matches yet.",
      "path_pick_label": "Whose matches?",
      "path_pick_cta": "Show their matches",
      "meet_sessions_heading": "Sessions",
      "meet_session_warm_up": "Warm-up {at}",
      "meet_session_starts": "Starts {at}",
      "meet_session_no_time": "No time published",
      "meet_event_number": "Event {number}",
      "meet_heat": "Heat {number}",
      "meet_heat_unnumbered": "Start list",
      "meet_round_heat": "Heats",
      "meet_round_semi": "Semi-finals",
      "meet_round_final": "Final",
      "meet_round_timed_final": "Timed final",
      "meet_round_jump_off": "Jump-off",
      "meet_col_lane": "Lane",
      "meet_col_entry": "Entry",
      "meet_lane_unknown": "—",
      "meet_psych_heading": "Entries",
      "meet_psych_body": "The entry list, in seeded order. Lanes and heats appear here once the organiser seeds them.",
      "meet_heats_heading": "Heat sheet",
      "meet_heats_body": "Who is in which heat, and in which lane.",
      "meet_results_heading": "Results",
      "meet_results_body": "No results yet. They appear here as they are reported from the meet.",
      "meet_empty_body": "No events published in this section yet.",
      "standings_heading": "Standings",
      "standings_none": "This section publishes results, not a table — the organiser set it up that way.",
      "standings_pending": "A table is set up for this section. Nothing is being scored yet, so there is nothing to rank.",
      "standings_empty_body": "This event is not split into sections, so there is no table to show.",
      "entrants_heading": "Who is entered",
      "entrants_col_seed": "Seed",
      "entrants_col_entry": "Entry",
      "entrants_col_mark": "Seed time or mark",
      "entrant_seeded": "Seed {seed}",
      "entrant_unnamed": "Entry not named",
      "entrants_withdrawn": "Withdrawn",
      "entrants_exhibition": "Exhibition — does not score",
      "entrants_empty_body": "No entries published for this section yet.",
      "entrants_nameless_note": "Individual entries are shown by their seed and their lane or number, never by name.",
      "entrants_count": "{count, plural, one {# entry} other {# entries}}",
      "print_title": "Programme to print — {event}",
      "print_title_unknown": "Programme to print",
      "print_heading": "The programme, to print",
      "print_intro": "What is on at the gate. Only published matches are on it.",
      "print_cta": "Print or save as PDF",
      "print_no_js": "Use your browser's Print to print this page or save it as a PDF.",
      "print_col_time": "Time",
      "print_col_match": "Match",
      "print_col_where": "Where",
      "print_other": "Everything else",
      "print_empty_heading": "Nothing to print yet",
      "print_empty_body": "The organiser has not published any of this programme.",
      "print_footer": "{event} · {date} · {venue} · {url}",
      "print_row_unnamed": "Not listed yet",
      "not_found_title": "We can't find that event.",
      "not_found_body": "It may not be published yet, or the link may be wrong. Try the ground it is played at.",
      "load_error_title": "We couldn't load this programme.",
      "load_error_body": "Something went wrong at our end. Try again in a moment.",
      "separator": " · ",
      "path_versus_label": "Against"
    },
    "creation": {
      "suppressed": {
        "programme_covers_slot": "The organiser's programme already covers this slot."
      }
    },
    "create": {
      "title": "Add a match at {venue}",
      "heading": "Add a match at {venue}",
      "already_here": "Already on here today",
      "nothing_here_yet": "Nothing has been added at this ground today yet.",
      "add_heading": "Not listed? Add it",
      "sign_in_heading": "Sign in to add a match",
      "sign_in_body": "You'll come straight back here.",
      "sign_in_cta": "Sign in",
      "verify_heading": "Finish setting up your account",
      "verify_body": "Your account isn’t ready to add matches yet. Your account page shows what’s needed, and you’ll come straight back here.",
      "verify_cta": "Open my account",
      "sport_label": "Sport",
      "sport_placeholder": "Pick a sport",
      "organiser_sets_up": "the organiser sets these up",
      "age_label": "Age group",
      "age_any": "Not sure",
      "apply": "Next",
      "side_home": "Home side",
      "side_away": "Away side",
      "school_label": "School or club",
      "school_placeholder": "Start typing a name",
      "search": "Search",
      "pick_sport_first": "Pick a sport first, so we can show the right teams.",
      "team_label": "Team",
      "team_placeholder": "Pick a team",
      "choose": "Choose",
      "change_team": "Change",
      "no_teams_for_sport": "This school has no team listed for that sport yet. Ask them to add it — teams come from the register, so we can't type one in here.",
      "when_label": "When",
      "timing_label": "Start",
      "timing_fixed": "At a set time",
      "timing_not_before": "Not before a time",
      "timing_queue": "No set time — an order on the court",
      "time_label": "Kick-off ({zone})",
      "queue_label": "Position in the order",
      "submit": "Add the match",
      "fill_in_first": "Pick a sport, both teams and a time first.",
      "failed_title": "We couldn't add that",
      "created": "Added. Anyone at the ground can score it now.",
      "view_match": "See it",
      "is_it_this_one": "Is it this one?",
      "already_exists": "This match is already here",
      "host_shortcut": "Use {name}",
      "join_it": "Yes — that's it",
      "create_anyway": "No, add mine anyway"
    },
    "match_creation": {
      "title": "Create a match or event",
      "eyebrow": "Live from the venue",
      "heading": "Create a match or event",
      "intro": "Find your ground, choose your sport and start sharing scores. Add anything missing as you go.",
      "use_location": "Use my location to find nearby venues",
      "locating": "Finding nearby venues…",
      "location_denied": "Location is off. Search for the venue by name instead.",
      "location_unavailable": "Your device could not get an accurate location. Search by name instead.",
      "location_timeout": "Location took too long. Search by name instead.",
      "find_venue": "Choose the venue",
      "venue_search": "Venue name or town",
      "venue_search_placeholder": "School, club, ground or town",
      "search": "Search",
      "no_venues": "No venues found for “{query}”. Try another name or a nearby town, or add a new venue.",
      "registry_help": "Search by name or town, or add a missing venue here.",
      "already_here": "Already happening here",
      "details": "Match or event details",
      "date": "Date at the venue",
      "sport": "Sport",
      "choose_sport": "Choose a sport",
      "age_group": "Age group",
      "choose_age_group": "Choose an age group",
      "category": "Category",
      "choose_category": "Choose a category",
      "format": "Format",
      "choose_format": "Choose a format",
      "timing": "Start arrangement",
      "start_time": "Start time",
      "queue_position": "Position in the order",
      "sequence": "Visible match number",
      "update_choices": "Update choices",
      "profile_unavailable": "This sport does not have a published creation setup for this venue and date.",
      "side": "Side {number}",
      "school_or_club": "Find a school or club",
      "registered_organisation": "School or club affiliation",
      "no_affiliation": "No affiliation",
      "choose_organisation": "Choose a school or club",
      "registered_team": "Team",
      "choose_team": "Choose a team",
      "rubber": "Match {number}",
      "player_slots": "Player slots",
      "event": "Event",
      "new_venue_day_event": "Create the venue-day event",
      "existing_event": "Use this existing event",
      "discipline": "Discipline",
      "round": "Round or heat",
      "round_number": "Heat or sequence number",
      "create": "Create and open scoring",
      "sign_in_heading": "Sign in to create this",
      "sign_in_body": "Your answers stay in this form while you sign in.",
      "sign_in": "Sign in",
      "profile_heading": "Finish the reporting check",
      "complete_profile": "Continue in my account",
      "readiness": {
        "profile_required": "Add your country and age first. Your answers stay here while you do that.",
        "adult_required": "Public creation is available only to an adult account in testing mode.",
        "email_required": "Verify the email on this account before creating a public match.",
        "credential_revoked": "The verified email credential for this account is no longer active.",
        "verification_unavailable": "Public creation is not available with the verification methods currently commissioned."
      },
      "failed": "We could not create that",
      "match_found": "This looks like a match already listed",
      "open_match": "Open the existing match",
      "add_venue": "Add a new venue",
      "add_organisation": "Add a school or club",
      "add_team": "Add a team",
      "add_surface": "Add a field, court or area",
      "add_and_continue": "Add and continue",
      "change": "Change",
      "choose": "Choose…",
      "club": "Club",
      "school": "School",
      "community_help": "Added by the community and available straight away. Please use the public name.",
      "confirm_distinct": "This is a different place or team from those listed.",
      "country": "Country",
      "created": "Your match is ready",
      "draft_warning": "This browser could not save your draft. Keep this page open until you finish.",
      "entrants_later": "Choose how many participants you need. You can record results without names.",
      "error_title": "That didn’t go through",
      "location_ready": "Choose a nearby venue or add this ground below.",
      "location_inaccurate": "Your location is too approximate. Search for the venue by name.",
      "match_exists": "This looks like a match that is already here.",
      "organisation_type": "School or club",
      "participants": "Who’s playing?",
      "reuse_help": "Is one of these the same? Select it to keep scores together.",
      "rubber_count": "Number of matches",
      "rubbers": "Matches in this tie",
      "saving": "Saving…",
      "selected_organisation": "Selected school or club",
      "share_after": "Your live match link is ready to share as soon as you create it.",
      "sign_in_help": "Sign in to create a match. Your choices will be kept.",
      "sign_in_to_add": "Sign in to add missing places and teams.",
      "surface": "Field, court or area (optional)",
      "surface_name": "Name or number",
      "surface_retry": "Your match was created, but its field or court could not be saved. You can start scoring or retry the location below.",
      "surface_type": "Type of playing area",
      "surface_unknown": "Not sure yet",
      "timezone_confirm": "Check the venue’s time zone so match times appear correctly.",
      "town": "Town or area",
      "venue_name": "Venue name",
      "organisation_name": "School or club name",
      "team_name": "Team name",
      "venue_confirmed": "Selected venue",
      "venue_local_time": "Venue time zone",
      "when": "Starting at {time} · {timezone}",
      "where": "Where are you playing?",
      "where_on_ground": "Where at the venue?",
      "contest": "Players per side",
      "duplicate_join": "Same match — join it",
      "duplicate_separate": "No, a separate match",
      "retry_surfaces": "Retry failed locations",
      "category_standard": "Standard",
      "contest_standard": "Standard",
      "contest_singles": "Singles",
      "contest_doubles": "Doubles",
      "player": "Player {number}",
      "participant_count": "Number of participants",
      "venue_pin": {
        "title": "Mark where the ground is",
        "why": "Share your location while you are at the venue. We use local open data to suggest its details. You’ll review its accuracy and check the details before confirming the public point as an unconfirmed community location. Nothing is added until you confirm.",
        "share": "Share my location",
        "share_again": "Get location again",
        "asking": "Finding your location…",
        "placed": "Location accurate to about {metres} m.",
        "denied": "Location is blocked for this site. Allow it in your browser’s site settings, then try location again. You can also go back and search for an existing venue.",
        "unavailable": "Your device couldn’t find its location. Turn location on and try again, or go back and search for an existing venue.",
        "imprecise": "Your location is only accurate to about {metres} m. Move into the open and share it again.",
        "no_script": "Adding a venue needs your location, and this page can only read it with JavaScript on. Choose an existing venue, or turn JavaScript on.",
        "not_allowed": "This account can’t share a precise location, so it can’t add a new venue. Go back to venue search and choose an existing venue.",
        "required": "Share your location at the ground to add a new venue.",
        "share_continue": "Share venue location and continue",
        "retry": "Try location again",
        "confirm_title": "Confirm this is the venue’s location",
        "confirm_public": "Only continue if you’re at {venue}. This point will be public as an unconfirmed community location.",
        "confirm_add": "Use this location and add venue",
        "timeout": "Finding your location took too long. Move into the open and try location again, or go back to venue search."
      },
      "locate_not_allowed": "Search for the ground by its name.",
      "back_to_search": "Back to venue search",
      "required_label": "{label} (required)",
      "venue_validation": {
        "summary": "Check the venue details",
        "name": "Enter a venue name between 2 and 120 characters.",
        "locality": "Enter a town or area between 1 and 120 characters.",
        "country": "Choose a country from the list.",
        "timezone": "Choose the venue’s time zone from the list.",
        "name_required": "Enter a venue name.",
        "locality_required": "Enter a town or area."
      },
      "team_validation": {
        "summary": "Check the team details",
        "name_required": "Enter the team name.",
        "name_length": "Enter a team name between 2 and 120 characters.",
        "sport_required": "Choose the sport first.",
        "age_required": "Choose the age group first.",
        "date_required": "Choose the date first."
      },
      "creation_validation": {
        "summary": "Check the match details",
        "field_required": "Fill in this field.",
        "age_required": "Choose an age group.",
        "category_required": "Choose a category.",
        "contest_required": "Choose the players per side.",
        "format_required": "Choose a format."
      },
      "searching": "Searching for venues…",
      "search_failed": "We couldn’t search for venues",
      "add_venue_location_help": "You’ll need to be at the venue to share its location.",
      "venue_metadata": {
        "loading": "Finding the town, country and time zone…",
        "suggested": "We found suggested details from local open data. Check and edit them before adding the venue.",
        "ambiguous": "Some details are uncertain near a boundary or neighbouring town. Enter or correct the missing details.",
        "unsupported": "Local data does not cover this location. Enter the town, country and time zone.",
        "no_locality": "We found the country and time zone, but no nearby town. Enter the town or area.",
        "failed": "The place lookup failed. Your location is still available; enter the venue details manually.",
        "attribution_notice": "Place suggestions use GeoNames, geoBoundaries and © OpenStreetMap contributors.",
        "attribution_link": "Data sources, licences and downloads",
        "attribution_title": "Venue suggestion data",
        "attribution_downloads": "Download the data and exact preparation recipe"
      }
    },
    "upload": {
      "title": "Upload a fixture list",
      "heading": "Fixture list",
      "intro": "Upload your fixture list. Nothing goes live until you review it and commit.",
      "sign_in_heading": "Sign in to upload fixtures",
      "sign_in_body": "Uploading a fixture list needs a verified school or club account.",
      "sign_in_cta": "Sign in",
      "venue_label": "Home ground",
      "venue_placeholder": "Search for the ground",
      "venue_search": "Search",
      "venue_change": "Change ground",
      "sport_label": "Sport for rows with no Sport column",
      "sport_placeholder": "Choose a sport",
      "file_label": "Fixture list (CSV)",
      "file_help": "One line per team. Columns we read: Team, Opponent, Date (YYYY-MM-DD), Time, H/A, Sport, Block. Any other column is ignored and its contents are not kept.",
      "filename_label": "File name (optional)",
      "submit": "Upload and check",
      "fill_in_first": "Choose a ground and paste the list first.",
      "failed_title": "We couldn't stage that list",
      "fix_fields": "Nothing was staged. Fix the marked fields and try again.",
      "venue_required": "Choose the ground first.",
      "venue_unavailable": "We couldn't find that ground. Search for it again.",
      "venue_not_accepted": "Fixture lists can't be added for this ground yet. Choose another ground.",
      "sport_from_file": "Use the Sport column in the file",
      "sport_unknown": "Choose a sport from the list.",
      "content_required": "Paste the fixture list first.",
      "batch_heading": "Review before anything goes live",
      "batch_intro": "Nothing here is on the site yet. Check each row, then commit.",
      "count_ready": "Ready to create",
      "count_blocked": "Needs you",
      "count_matched": "Already on the site",
      "count_created": "Created",
      "count_rejected": "Skipped",
      "count_duplicate": "Repeated in the file",
      "row_heading": "Line {line}",
      "row_state_unmatched_ready": "Ready to create",
      "row_state_unmatched_blocked": "Needs you",
      "row_state_auto_matched": "Already on the site",
      "row_state_manual_matched": "Linked by you",
      "row_state_created": "Created",
      "row_state_rejected": "Skipped",
      "row_state_duplicate": "Repeated in the file",
      "blocker_parse_failed": "We couldn't read this line.",
      "blocker_sport_unresolved": "We don't have that sport.",
      "blocker_archetype_not_creatable": "That sport needs the organiser tools, not a fixture list.",
      "blocker_own_team_unresolved": "That team isn't on your list of teams yet.",
      "blocker_opponent_unresolved": "We don't have that school or club yet.",
      "blocker_opponent_ambiguous": "More than one school or club matches that name.",
      "blocker_opponent_team_unresolved": "We don't have that team at that school or club.",
      "blocker_venue_unresolved": "We don't know which ground this is at.",
      "blocker_age_group_unknown": "That age group isn't one your country uses.",
      "blocker_near_match_needs_review": "This looks like a fixture that is already on the site.",
      "blocker_programme_covers_slot": "An organiser's programme already covers this slot.",
      "blocker_block_inconsistent": "The rows in this block card disagree about the opponent, the date or the sport.",
      "registry_request_cta": "Ask us to add it",
      "action_join": "Yes, that is this fixture",
      "action_create_anyway": "No, create this one",
      "action_skip": "Skip this line",
      "view_fixture": "View the fixture",
      "commit": "Create the ready fixtures",
      "committed_summary": "{created} created, {linked} already on the site, {skipped} left alone.",
      "rollback": "Withdraw this list",
      "open_staged": "Open that list",
      "start_new": "Start a new list",
      "rolled_back_body": "This list was withdrawn. Anything it created has been cancelled.",
      "staging_note": "Staging is not live: nothing on this page is on the site until you commit.",
      "empty": "No rows.",
      "unmapped_columns": "Columns we did not read: {columns}. Their contents are not kept.",
      "block_field_opponent": "the opponent",
      "block_field_date": "the date",
      "block_field_sport": "the sport",
      "level_label": "Level: {level}",
      "parse_file_too_large": "That file is bigger than {limit} characters. A fixture list is a term of fixtures, not a database export.",
      "parse_file_empty": "That file is empty.",
      "parse_no_header_row": "That file has no header row. The first row must name the columns.",
      "parse_blank_header_row": "The header row is blank. The first row must name the columns.",
      "parse_ambiguous_delimiter": "The header row uses both semicolons and tabs and no commas, so we cannot tell what separates the columns. Save the file as comma-separated CSV.",
      "parse_unterminated_quote": "A quoted cell is never closed, so the rest of the file reads as one cell. Check the quotation marks.",
      "parse_text_after_quote": "Line {line} has text straight after a closing quotation mark. Check the quotation marks on that line.",
      "parse_too_many_rows": "That file has {rows} rows and the limit is {limit}.",
      "parse_extra_cells": "Line {line} has {cells} cells but the header names {columns} columns. The extra cells belong to no column.",
      "parse_cell_too_long": "Line {line}, column \"{column}\" holds {length} characters and the limit is {limit}.",
      "parse_duplicate_columns": "These columns all mean the same thing: {columns}. Keep one and remove the rest — we will not choose for you.",
      "parse_missing_columns": "That file has no column for: {missing}. It has: {present}.",
      "parse_no_fixture_rows": "That file has a header and no fixture rows.",
      "parse_format_not_implemented": "We cannot read the {format} format yet. Export the list as CSV in the meantime.",
      "parse_unknown_format": "There is no {format} fixture-list format. We read: {shipped}.",
      "parse_payload_not_json": "That payload is not valid JSON.",
      "parse_payload_not_array": "That payload must be a list of fixture rows.",
      "parse_payload_empty": "That payload has no rows.",
      "parse_bad_date": "Line {line}: the {column} column reads \"{value}\", which is not YYYY-MM-DD. A date like 03/04/2026 means two different days depending on where it was written, so we do not guess. Format the column as YYYY-MM-DD.",
      "parse_bad_time": "Line {line}: the {column} column reads \"{value}\", which is not a 24-hour HH:MM.",
      "parse_bad_home_away": "Line {line}: the {column} column reads \"{value}\". Use H, A or N.",
      "parse_no_sport": "Line {line}: no sport. The file has no Sport column and no default sport was chosen.",
      "parse_invalid_value": "Line {line}: we could not read the {column} column.",
      "blocker_opponent_is_self": "That line puts the same team on both sides.",
      "surface_hint_resolved": "Field: {surface}",
      "surface_hint_unresolved": "Field in your file: \"{hint}\" — no field here goes by that name yet, so nothing will be set. Add the field on the venue page, then upload again.",
      "surface_hint_not_bound": "Field in your file: \"{hint}\" — no field is set for this match."
    },
    "workspace": {
      "team_context": "{organisation} · {team}",
      "team_tabs": {
        "label": "{team} pages",
        "hub": "Notice board",
        "logistics": "Squad and schedule",
        "lineup": "Lineup",
        "fitness": "Fitness",
        "games": "Practice games",
        "programmes": "Ladders"
      },
      "staff": {
        "desks_heading": "Your desks",
        "desk_disputes_help": "Score cases with photo evidence",
        "desk_notices_help": "Team notices someone reported",
        "desk_rankings_help": "Public points, standards and session points",
        "desk_phones_help": "Recycled phone numbers",
        "desk_school_admins_help": "Split email addresses, and addresses that don't look like the school's",
        "desk_open": "{count, number} open",
        "queue_empty_heading": "Nothing needs a platform decision",
        "case_name_title": "A suggested player name was held for review",
        "case_proxy_title": "Reports from a shared device are held",
        "case_review_title": "A report needs review",
        "notices_lede": "Notices a squad member, guardian or school reported. A notice stays on the board until you remove it.",
        "reported_on": "Reported {date}",
        "rankings_col_sport": "Sport",
        "rankings_col_kind": "Programme",
        "rankings_col_version": "Current version",
        "rankings_col_actions": "Actions"
      },
      "school": {
        "powers_heading": "What each power means",
        "power_team_manager": "Everything in the Coach lens for one team.",
        "power_event_organiser": "The organiser desk for one event, or for all of your school's events.",
        "power_event_moderator": "Looks after one event on the day.",
        "power_org_moderator_title": "Organisation moderator",
        "power_org_moderator": "Looks after your school's names and reports, for a set time.",
        "ids_heading": "Filling in this page"
      },
      "coach": {
        "open_team": "Open {team}, {organisation}",
        "lineups_empty": "No team sheet has been published yet.",
        "attendance_empty": "No session attendance has been recorded yet."
      },
      "on_this_page": "On this page",
      "event_tabs": {
        "label": "Event pages",
        "sections": "Sections",
        "block": "Block fixture",
        "schedule": "Schedule",
        "publish": "Publish",
        "announce": "Announce",
        "print": "Print",
        "public": "Public page"
      }
    },
    "organise": {
      "act_failed_title": "That didn't work",
      "act_lock": "Mark it final",
      "act_lock_note": "No more changes. You can unlock it again if something has to move.",
      "act_publish": "Publish it",
      "act_publish_note": "People can see it from the moment you press this.",
      "act_republish": "Send the changes out",
      "act_republish_note": "What people see catches up with what you've changed.",
      "act_unlock": "Unlock it",
      "act_unlock_note": "This undoes “final”, so it goes in the record of the event.",
      "act_unlock_submit": "Unlock",
      "act_unpublish": "Take it down",
      "act_unpublish_note": "People stop seeing it. We'll refuse this once matches have scores.",
      "add_entrant_cta": "Add {name}",
      "add_section_body": "Another age group, another gender, another draw.",
      "add_section_cta": "Add a section",
      "add_section_heading": "Add another section",
      "announce_agent_generated": "Sent by your connected AI assistant",
      "announce_body_label": "What do you want to say?",
      "announce_empty_body": "When courts flood or a draw runs late, this is where you say so.",
      "announce_empty_heading": "Nothing sent yet",
      "announce_framing": "This shows on every page of this event, to everyone. Good for delays and court changes.",
      "announce_heading": "Tell everyone at this event",
      "announce_history_heading": "Already sent",
      "announce_remove": "Remove this",
      "announce_remove_note": "The words go, the record of it stays. Say why.",
      "announce_remove_submit": "Remove",
      "announce_removed": "Removed",
      "announce_submit": "Send it",
      "announce_title": "Announcements — {event}",
      "announce_who": "Event desk · {at}",
      "back_to_event": "Back to the event",
      "back_to_events": "Back to your events",
      "block_add_row": "Add this match",
      "block_away_label": "Their side",
      "block_back_to_desk": "Back to the event",
      "block_desk_body": "U9A through U19A against the same school, staggered kick-offs. One card, one act.",
      "block_desk_cta": "Add a block fixture day",
      "block_desk_heading": "A day against one school",
      "block_done_eyebrow": "The card is made",
      "block_duplicate_body": "One of your rows clashes with a match that already exists, so nothing was created. Remove that row and try again.",
      "block_duplicate_draft": "It's on an unpublished programme, so we can't show you which — it may be another organiser's. Check with whoever runs the ground.",
      "block_duplicate_drop": "Drop row {row} and carry on",
      "block_duplicate_eyebrow": "One of these clashes with a match that already exists",
      "block_duplicate_row": "Row {row} clashes with a match that already exists, so nothing was created — the whole card is waiting for you.",
      "block_duplicate_see": "See the match it clashes with",
      "block_failed_title": "We couldn't build that card",
      "block_fill_in_first": "Choose the other school, the sport, and at least one match.",
      "block_heading": "A whole day against one school",
      "block_home_label": "Your side",
      "block_intro": "One card for the whole day against one school — every age group's match in rows underneath it.",
      "block_opponent_change": "Change",
      "block_opponent_heading": "Who are you playing?",
      "block_opponent_label": "The other school or club",
      "block_opponent_unknown": "That school",
      "block_pick_team": "Choose a team",
      "block_ready": "{count, plural, =0 {No matches on the card yet.} one {# match on the card.} other {# matches on the card.}}",
      "block_row_added": "{row} was added.",
      "block_row_full": "That's the most rows one card can hold ({max}).",
      "block_row_invalid": "We couldn't add that row. Pick a team on each side.",
      "block_row_open": "See it",
      "block_row_remove": "Remove",
      "block_row_self": "A team can't play itself. Pick one of yours and one of theirs.",
      "block_row_updated": "That match was already on the card, so we've updated it.",
      "block_rows_blocked": "Choose the other school and the sport first — the team lists come from them.",
      "block_rows_empty": "No rows yet. Pick one of yours and one of theirs below.",
      "block_rows_full": "That's the most rows one card can hold ({max}).",
      "block_rows_heading": "The matches",
      "block_spent": "The card is made. Open the event to see it.",
      "block_sport_apply": "Use this sport",
      "block_submit": "Create the card",
      "block_time_help": "Leave it blank and the match simply runs in its place in the order on the card.",
      "block_time_label": "Kick-off ({zone}) — optional",
      "block_title": "Add a block fixture day",
      "block_versus": "vs",
      "chain_cta": "Then a knockout between the pool winners",
      "chain_floor": "{pools, plural, one {With # pool you need at least {least} through, so there are two teams in the knockout.} other {With # pools you need at least {least} through each, so there are two teams in the knockout.}}",
      "chain_help": "{pools, plural, one {The top finishers from your # pool go through.} other {The top finishers from each of your # pools go through.}} Nobody is entered by hand — the pools decide who plays.",
      "chain_per_group_label": "How many go through from each pool?",
      "chain_stage_name": "Knockout",
      "chain_submit": "Add the knockout",
      "change_bare": "{field} changed.",
      "change_cleared": "{field} cleared.",
      "change_moved": "{field} moved from {from} to {to}.",
      "change_set": "{field} set to {to}.",
      "change_unknown_field": "Something changed.",
      "date_label": "Day",
      "desk_empty_body": "A section is one group that plays together — “U15 Boys hockey”, “U13 singles”. Most events have a few.",
      "desk_empty_heading": "Add your first section",
      "desk_eyebrow": "{date} · {venue}",
      "desk_framing_live": "Some of this is public. People can see everything marked Published below.",
      "desk_framing_nothing_live": "Nobody outside the event can see any of this yet. Publishing makes it the public programme.",
      "desk_heading_unknown": "This event",
      "desk_open_section": "Open",
      "desk_rest_heading": "The rest of the event",
      "desk_section_counts": "{entrants, plural, =0 {No entries} one {# entry} other {# entries}} · {matches, plural, =0 {no matches yet} one {# match} other {# matches}}",
      "desk_section_withdrawn": "{count, plural, one {# withdrawn} other {# withdrawn}}",
      "desk_sections_heading": "Sections",
      "desk_title": "Programme — {event}",
      "disciplines_help": "Tick each event you're running. One item goes on the programme for each.",
      "disciplines_legend": "Which events?",
      "disciplines_none": "This sport's list of events — 100 m, long jump, and the rest — isn't set up yet, so there's nothing to pick from. It arrives with the sport's own set-up.",
      "draw_entrant_count": "{count, plural, =0 {No entries yet.} one {# entry.} other {# entries.}}",
      "draw_group": "Group",
      "draw_heading": "The draw",
      "draw_made": "{matches, plural, one {Made # match.} other {Made # matches.}}",
      "draw_made_rubbers": "{count, plural, one {# rubber in all.} other {# rubbers in all.}}",
      "draw_make_cta": "Make the draw",
      "draw_make_heading": "Make the draw",
      "draw_no_stage": "This section has no way of playing set up yet.",
      "draw_round": "Round {round}",
      "duplicate_body": "There is already an event at this ground on this day. Open it and add your programme to that one.",
      "duplicate_cta": "Open that event",
      "duplicate_eyebrow": "Already on the calendar",
      "entrant_unlabelled": "Entry with no name",
      "entrants_empty_body": "Find a school or club, then pick the team taking part.",
      "entrants_empty_heading": "Add the entries",
      "entrants_heading": "Entries",
      "entrants_org_label": "School or club",
      "estimated_at": "(running to about {at})",
      "family_boxes": "Boxes and ladders",
      "family_boxes_note": "Small groups that play each other, and players move up and down.",
      "family_knockout": "Knockout",
      "family_knockout_note": "Lose and you're out. One winner at the end.",
      "family_league": "A league",
      "family_league_note": "Everyone plays a series of matches and you keep a table.",
      "family_list": "Just a list of matches",
      "family_list_note": "You pick who plays who. No table, no bracket.",
      "family_qualify_then_knockout": "Qualify, then knockout",
      "family_qualify_then_knockout_note": "Play for a place first, then a knockout between whoever qualifies.",
      "family_second_chance": "Knockout with a second chance",
      "family_second_chance_note": "Losers keep playing — a Plate, a compass, or matches for the other places.",
      "family_timed_sessions": "Timed sessions",
      "family_timed_sessions_note": "A gala or an athletics day: events run one after another, in sessions.",
      "field_age_group": "The age group",
      "field_compass_arm": "The compass arm",
      "field_config": "The format's settings",
      "field_discipline": "The event",
      "field_draw_size": "The draw size",
      "field_duration": "How long it runs",
      "field_entry_close": "When entries close",
      "field_feed_in_round": "The round losers drop in at",
      "field_follows": "The match it follows",
      "field_format": "The match format",
      "field_gender": "The gender",
      "field_grade": "The grade",
      "field_level": "The level",
      "field_name": "The name",
      "field_ordinal": "The order",
      "field_queue_position": "The position in the queue",
      "field_scheduled_time": "The time",
      "field_seeding_rule": "The seeding rule",
      "field_seeds_hidden": "Whether seeds are shown",
      "field_session": "The session",
      "field_timing": "When it runs",
      "format_box_ladder": "Box league",
      "format_box_ladder_note": "Small boxes that play each other; winners move up, losers move down.",
      "format_classification": "Places for everyone",
      "format_classification_note": "Extra matches to settle 3rd, 5th, 7th and the rest.",
      "format_consolation_compass": "Compass draw",
      "format_consolation_compass_note": "Four draws off one, so every entry keeps playing to the end.",
      "format_consolation_feed_in": "Feed-in consolation",
      "format_consolation_feed_in_note": "Losers drop into a lower draw at the round you choose.",
      "format_consolation_fmc": "Everyone plays twice",
      "format_consolation_fmc_note": "Losers of the first match go into a second draw, so nobody travels for one match.",
      "format_consolation_frlc": "Plate for first-round losers",
      "format_consolation_frlc_note": "Whoever loses their first match plays on in a Plate draw.",
      "format_flat": "A list of matches",
      "format_flat_note": "You pick who plays who.",
      "format_knockout_double": "Double elimination",
      "format_knockout_double_note": "Two losses and you're out, so everyone gets a second life.",
      "format_knockout_single": "Straight knockout",
      "format_knockout_single_note": "One loss and you're out.",
      "format_qualify_then_matchplay": "Qualify, then matchplay",
      "format_qualify_then_matchplay_note": "A qualifying round decides who goes into the knockout.",
      "format_round_robin": "Round robin",
      "format_round_robin_note": "Everyone plays everyone. Split it into pools if the field is big.",
      "format_swiss": "Swiss",
      "format_swiss_note": "Each round pairs whoever is doing equally well. Nobody is knocked out.",
      "format_timed_session": "Timed sessions",
      "format_timed_session_note": "Events run one after another through the day, in sessions.",
      "history_cta": "What has changed",
      "history_empty": "Nothing has changed since this was published.",
      "history_heading": "What has changed",
      "history_items": "{count, plural, =0 {No matches moved} one {# match} other {# matches}}",
      "host_help": "Whose event is it? You need a verified account there, or an invitation from them.",
      "host_label": "School or club",
      "host_none": "You aren't set up to run events for any school or club yet. Ask them to verify your account, or to invite you as an organiser.",
      "index_empty_body": "A derby day, a gala, a festival. Set it up here and the programme people read at the gate builds itself as you go.",
      "index_empty_heading": "Plan your first event",
      "index_heading": "Your events",
      "index_intro": "The events you can build a programme for.",
      "index_row_eyebrow": "{date} · {venue}",
      "index_row_sections": "{count, plural, =0 {No sections yet} one {# section} other {# sections}}",
      "index_title": "Your events",
      "item_unnamed": "Match with no names yet",
      "link_announce": "Announcements",
      "link_announce_body": "Tell everyone at the event about a delay or a court change.",
      "link_publish": "Publish and print",
      "link_publish_body": "Make the programme public, and print the copy for the gate.",
      "link_schedule": "Times and courts",
      "link_schedule_body": "Put each match on a court and a clock.",
      "load_failed_title": "We couldn't load that",
      "match_at": "Starts {at}",
      "match_no_time": "No time set",
      "match_queue": "{position} in the order",
      "min_rest_cta": "Warn me when a team plays twice too close together",
      "min_rest_label": "Least time between a team's matches (minutes)",
      "min_rest_off": "Off — nothing is being checked.",
      "min_rest_on": "On — anything under {minutes} minutes is flagged below.",
      "min_rest_submit": "Use this",
      "new_after_duplicate": "Open the event that is already there, or change the ground or the day.",
      "new_event_cta": "New event",
      "new_failed_title": "We couldn't open that event",
      "new_fill_in_first": "Choose a ground, a day and whose event it is first.",
      "new_heading": "New event",
      "new_intro": "An event is a ground and a day. Sections, draws and times all go on it afterwards.",
      "new_submit": "Create the event",
      "new_title": "New event",
      "next_draw": "Make the draw",
      "next_entries": "Add the entries",
      "next_published": "Publish this section",
      "next_times": "Set times and courts",
      "orphan_body": "“{name}” was set up but its draw was never made. Make it now and the section is complete.",
      "orphan_cta": "Make the cup draw",
      "orphan_eyebrow": "Half-finished",
      "pairings_add": "Add this match",
      "pairings_heading": "The matches",
      "pairings_help": "Pick two entries for each match. Every entry has to appear in at least one.",
      "pairings_left": "One side",
      "pairings_pick": "Choose an entry",
      "pairings_remove": "Remove",
      "pairings_right": "The other side",
      "param_box_size": "How many in each box?",
      "param_draw_size": "Draw size (leave blank to fit the entries)",
      "param_feed_in_round": "Losers drop in at round",
      "param_group_count": "How many pools?",
      "param_legs": "How many times does each pair meet?",
      "param_places_from": "First place to decide",
      "param_places_to": "Last place to decide",
      "param_qualifier_count": "How many qualify?",
      "param_rounds": "How many rounds?",
      "partial_continue": "Open the section",
      "partial_entrants": "{created} of {intended} entries were added.",
      "partial_eyebrow": "Partly done",
      "partial_section_created": "The section was created.",
      "partial_stage_created": "The way it plays was set up.",
      "partial_stopped_entrant": "We stopped there. Open the section to add the rest of the entries.",
      "partial_stopped_stage": "We stopped there. The section exists — open it to finish setting up how it plays.",
      "place_check_fields": "Check: {fields}.",
      "competition_label": "Competition",
      "competition_help": "Choose the competition this result counts towards. The list contains only competitions already set up for this sport and country.",
      "competition_none": "No competition",
      "competition_submit": "Save the competition",
      "place_field_item": "The match",
      "place_field_time": "The time",
      "place_fixed": "At a set time",
      "place_follows": "Straight after another match",
      "place_follows_label": "After which match?",
      "place_follows_none": "Not after anything",
      "place_not_before": "Not before a time",
      "place_queue": "Next in the queue on a court",
      "place_queue_label": "Position in the queue",
      "place_submit": "Save this time",
      "surface_label": "Field or court",
      "surface_help": "Where this match is played. Leave it on \"not reported yet\" if nobody has decided — that is a real answer, and the page says so rather than guessing.",
      "surface_none": "Not reported yet",
      "surface_submit": "Save the field",
      "place_time_label": "Time ({zone})",
      "place_when_label": "When does it run?",
      "preview_lock": "Locks it as it stands.",
      "preview_publish": "{count, plural, =0 {Nothing to show yet.} one {# match becomes public.} other {# matches become public.}}",
      "preview_republish": "{count, plural, one {# match, as version {revision}.} other {# matches, as version {revision}.}}",
      "preview_unpublish": "{count, plural, one {# match stops being public.} other {# matches stop being public.}}",
      "print_col_match": "Match",
      "print_col_time": "Time",
      "print_col_where": "Where",
      "print_cta": "Print or save as PDF",
      "print_empty_body": "The programme prints what people can see, and nothing is published yet.",
      "print_empty_heading": "Nothing to print yet",
      "print_footer": "{event} · version {revision} · {url}",
      "print_heading": "The printed programme",
      "print_intro": "What people get at the gate. Only published matches are on it.",
      "print_no_js": "Use your browser's Print to print this page or save it as a PDF.",
      "print_other_matches": "Everything else",
      "print_publish_cta": "Publish something first",
      "print_title": "Programme — {event}",
      "programme_heading": "The programme of events",
      "programme_make_cta": "Build the programme",
      "programme_make_heading": "Build the programme of events",
      "pub_all_live": "Published — people can see everything on this programme.",
      "pub_chip_draft": "Draft",
      "pub_chip_live": "Published",
      "pub_chip_locked": "Final",
      "pub_chip_part": "Part published",
      "pub_locked_notice": "{count, plural, one {# part is final and can't be changed.} other {# parts are final and can't be changed.}}",
      "pub_nothing_live": "Nobody can see this event yet. Publishing makes it the public programme.",
      "pub_partly_live": "{live} of {total} parts are published. The rest is still only visible to you.",
      "publication_cta": "Go to publishing",
      "publication_heading": "What people can see",
      "publish_empty_body": "Publish a section above and it appears here, with its history.",
      "publish_empty_heading": "Nothing published yet",
      "publish_heading": "Publish and print",
      "publish_pending_heading": "Not published yet",
      "publish_title": "Publish — {event}",
      "publish_to_print": "Print the programme",
      "publish_units_heading": "Published parts",
      "reason_help": "This note goes in the record of the event.",
      "reason_label": "Why? (optional)",
      "reason_required_label": "Why?",
      "reseed_applied": "{count, plural, one {# position moved.} other {# positions moved.}}",
      "reseed_bye": "Nobody — a bye",
      "reseed_cta": "Change who is where in the draw",
      "reseed_help": "Set who starts in each position. The draw re-forms, and this is recorded.",
      "reseed_position": "Position now holding {name}",
      "reseed_submit": "Re-seed the draw",
      "rev_amend": "Edited",
      "rev_lock": "Marked final",
      "rev_publish": "Published",
      "rev_republish": "Changes sent out",
      "rev_unpublish": "Taken down",
      "rubbers_doubles": "Doubles rubbers",
      "rubbers_help": "A tie is played as several rubbers. Say how many of each and we'll number them.",
      "rubbers_legend": "The rubbers",
      "rubbers_singles": "Singles rubbers",
      "rubbers_to_win": "Rubbers needed to win the tie (optional)",
      "schedule_empty_body": "Make a draw in one of your sections and the matches appear here.",
      "schedule_empty_heading": "Nothing to place yet",
      "schedule_filter_all": "All sections",
      "schedule_filter_apply": "Show",
      "schedule_filter_label": "Which section?",
      "schedule_heading": "Times and courts",
      "schedule_intro": "Times are the ground's own ({zone}). Tap any match to move it.",
      "schedule_queue_band": "In order, no set time",
      "schedule_table_caption": "Matches by time and playing surface.",
      "schedule_time_column": "Time",
      "schedule_title": "Times and courts — {event}",
      "schedule_to_publish": "Publish and print",
      "search": "Search",
      "section_all_done": "This section is done. Back to the event",
      "section_heading_unknown": "This section",
      "section_name_sport_only": "{sport}",
      "section_name_with_age": "{age} — {sport}",
      "section_title": "Section — {name}",
      "seed": "Seed {rank}",
      "seed_label": "Seed (optional)",
      "separator": " · ",
      "severity_change": "Something has moved",
      "severity_delay": "We're running late",
      "severity_info": "Just letting people know",
      "severity_label": "What kind?",
      "severity_urgent": "Urgent",
      "show_more": "Show more",
      "sign_in_body": "Building a programme needs a verified school or club account, or an invitation from the people running the event.",
      "sign_in_cta": "Sign in",
      "sign_in_heading": "Sign in to organise an event",
      "slot_bye": "Bye",
      "slot_change": "Change who's in this match",
      "slot_kind_loser_of": "Loser of a match",
      "slot_kind_qualifier": "A qualifier",
      "slot_kind_rank_n_of": "A place from a group",
      "slot_kind_seeded_from": "Seeded from a table",
      "slot_kind_tbd": "To be decided",
      "slot_kind_winner_of": "Winner of a match",
      "slot_loser_of": "Loser of match {match}",
      "slot_provisional": "Provisional",
      "slot_qualifier": "A qualifier",
      "slot_rank_n_of": "A place from a group",
      "slot_resolve_cta": "Set who goes through",
      "slot_resolve_label": "Who goes through?",
      "slot_resolve_placeholder": "Choose an entry",
      "slot_seeded_from": "Seeded from a table",
      "slot_tbd": "To be decided",
      "slot_unnamed": "Empty",
      "slot_unresolve_cta": "Undo",
      "slot_unresolve_label": "Put this position back to",
      "slot_winner_of": "Winner of match {match}",
      "spine_draw": "Draw",
      "spine_entries": "Entries",
      "spine_published": "Published",
      "spine_state_current": "next step",
      "spine_state_done": "done",
      "spine_state_todo": "not done yet",
      "spine_times": "Times",
      "surface_unbound": "No court or field yet",
      "surfaces_failed": "We also couldn't load this ground's list of courts and fields, so only the ones already in use have a column.",
      "timing_fixed": "At a set time",
      "timing_not_before": "Not before a time",
      "timing_queue": "In order on the court — no set times",
      "title_help": "What people read at the top of the programme — “Winter Derby Day”, “U13 Tennis Festival”.",
      "title_label": "What is it called?",
      "tray_heading": "Not placed yet",
      "tray_help": "These have no time and no place in a queue. Tap one to give it either.",
      "unit_framing_draft": "Only you can see this.",
      "unit_framing_locked": "Final — no more changes. Unlock it below if something has to move.",
      "unit_framing_published": "People can see this.",
      "unit_revision": "Version {revision}",
      "unit_scope_day": "Day",
      "unit_scope_event": "The whole event",
      "unit_scope_section": "Section",
      "unit_scope_stage": "Draw",
      "untitled_event": "Untitled event",
      "venue_change": "Change ground",
      "venue_label": "Ground",
      "venue_placeholder": "Search for the ground",
      "venue_unknown": "That ground",
      "versus": " — ",
      "violation_congestion": "{running} matches are on {surface} at once, and it's set up for {limit}.",
      "violation_min_rest": "Two matches for the same team are only {minutes} minutes apart.",
      "violations_eyebrow": "Worth a look",
      "violations_note": "These aren't errors — you may well have meant it. Four U9 games run across one field every Saturday.",
      "withdraw_cta": "Withdraw this entry",
      "withdraw_eyebrow": "What that changed",
      "withdraw_left_locked": "{count, plural, one {# position is in a draw that is final. Unlock it and re-seed to change it.} other {# positions are in draws that are final. Unlock them and re-seed to change them.}}",
      "withdraw_left_scored": "{count, plural, one {# match already has a score, so it was left as it is.} other {# matches already have scores, so they were left as they are.}}",
      "withdraw_submit": "Withdraw",
      "withdraw_vacated": "{count, plural, =0 {No positions in the draw changed.} one {# position in the draw is now empty.} other {# positions in the draw are now empty.}}",
      "withdrawn_chip": "Withdrawn",
      "wizard_age_any": "Any age group",
      "wizard_age_label": "Age group",
      "wizard_back_to_step1": "Back to the first question",
      "wizard_change_family": "Change",
      "wizard_choose": "Choose",
      "wizard_draw_next": "Next: make the draw once the entries are in.",
      "wizard_entries_failed": "We couldn't search for that",
      "wizard_entries_help": "Add the teams you already know about. The rest can come later — nothing here waits on a full entry list.",
      "wizard_entries_meet_help": "Add the schools taking part. The rest can come later.",
      "wizard_failed_title": "We couldn't create that section",
      "wizard_finish_later": "Finish later",
      "wizard_heading": "Add a section",
      "wizard_more_options": "More options",
      "wizard_more_options_help": "You can leave these alone — the defaults work.",
      "wizard_name_help": "This is what people read on the programme. We've filled in the obvious one — change it if you like.",
      "wizard_name_label": "Call this section",
      "wizard_next": "Next",
      "wizard_org_label": "School or club",
      "wizard_org_placeholder": "Search for the school or club",
      "wizard_param_problem": "One of the numbers above is outside what we can use. Check it before going on.",
      "wizard_pick_sport_first": "Choose a sport — the rest of the questions depend on it.",
      "wizard_ready": "Ready to create {name}.",
      "wizard_remove_entry": "Remove",
      "wizard_seeding_note": "Seeds are placed the usual way, and pools are filled in snake order.",
      "wizard_surface_label": "Where does it start?",
      "wizard_surface_help": "Optional. Every match in this draw starts on this field or court, and you can move any of them afterwards on the schedule.",
      "wizard_surface_none": "Decide later",
      "wizard_sport_label": "Sport",
      "wizard_sport_placeholder": "Choose a sport",
      "wizard_step1_heading": "Who plays in this section?",
      "wizard_step2_heading": "How do they play?",
      "wizard_step3_heading": "Who's entered?",
      "wizard_step_of": "Step {step} of {total}",
      "wizard_submit": "Create the section",
      "wizard_timing_label": "When do the matches run?",
      "wizard_title": "Add a section"
    },
    "private_binding": {
      "title": "My child's matches",
      "heading": "My child's matches",
      "intro": "Say which shirt your child wore, and their matches show up here for your household.",
      "privacy_help": "This is a private household note. It never appears on a fixture page, in search, or in any ranking, and it never changes your child's official record.",
      "empty": "You have not linked a shirt to any of your children yet.",
      "no_children": "Add a private profile for your child first, then come back to link their shirt.",
      "child_heading": "{name}",
      "child_heading_unnamed": "Private profile {id}",
      "shirt": "Shirt",
      "appearances": "Public matches for this shirt: {count}",
      "asserted_at": "You added this on {at}",
      "state_label": "Status",
      "state_active": "Waiting for the school to confirm",
      "state_withdrawn": "You removed this",
      "state_confirmed": "Confirmed by the school",
      "state_frozen_superseded": "The school confirmed a different child for this shirt",
      "withdraw": "Remove this",
      "withdraw_help": "Removing it stops it showing in your household. The record that you said it is kept.",
      "add_heading": "Link a shirt to your child",
      "add_help": "You need your child's private profile and the shirt's ID, which is on the team page for that season.",
      "child_label": "Which child",
      "lineage_label": "Shirt ID",
      "submit": "Link this shirt",
      "failed_title": "That did not work",
      "asserted_success": "Linked. It shows in your household only.",
      "withdrawn_success": "Removed from your household."
    },
    "surfaces": {
      "title": "Fields and courts",
      "intro": "The playing surfaces at this ground, in your own words. Once a field has a name, every fixture on it can say which one it is — on the venue page, on the programme and on the printed sheet.",
      "empty_heading": "No fields named yet",
      "empty_body": "Nothing here has a name, so every match at this ground reads \"field not reported\". Add your first one below — \"Top Field\", \"Astro 2\", \"Court 1\", whatever the people at the gate call it.",
      "column_name": "Name",
      "column_type": "Kind",
      "column_rename": "Rename",
      "off_site": "Away from this ground",
      "rename_label": "New name for {surface}",
      "rename_submit": "Rename",
      "add_heading": "Add a field or court",
      "add_help": "Use the name people actually say. You can rename it later, and the old name keeps working on fixtures that already use it.",
      "name_label": "Name",
      "type_label": "What kind is it?",
      "no_geo_note": "You don’t need map coordinates to name a field.",
      "add_submit": "Add the field",
      "merge_heading": "Two names for one field?",
      "merge_help": "If the same field ended up listed twice, join them. Nothing is deleted: the other name is kept and still works on the fixtures that used it.",
      "merge_keep_label": "Keep this one",
      "merge_into_label": "Join this one into it",
      "merge_rule_note": "If these two cannot be joined the way round you chose, we keep the one that was here first — the other name is kept either way.",
      "merge_submit": "Join them",
      "back_to_venue": "Back to what is on at this ground",
      "sign_in": "Sign in with your school or club account to name the fields at this ground.",
      "sign_in_action": "Sign in",
      "failed_title": "That didn't work."
    },
    "following": {
      "title": "Following",
      "heading": "Following and updates",
      "help": "Choose which updates reach you in the app or as browser notifications, for each source you follow.",
      "open_inbox": "Open notifications",
      "in_app_corrections": "Send ranking corrections to my private inbox",
      "follow": "Follow updates",
      "save": "Save choices",
      "unfollow": "Stop following",
      "current": "Currently following",
      "empty": "You are not following any sources yet.",
      "follow_updates": "Follow updates",
      "source_selector_heading": "Follow a permitted source",
      "source_selector_help": "Enter the exact source ID you are allowed to follow. We check it before showing it.",
      "target_kind": "Source kind",
      "target_public_id": "Source ID",
      "source_selector_submit": "Open follow settings",
      "preferences": "Update preferences",
      "preferences_help": "Choose each delivery channel for this source.",
      "channel_in_app": "In the app",
      "channel_web_push": "Browser notification",
      "not_muted": "Updates are not muted.",
      "muted": "Muted",
      "muted_until": "Muted until {time}.",
      "mute_one_hour": "Mute for one hour",
      "unmute": "Unmute updates",
      "target": {
        "team": "Team",
        "player": "Player",
        "organisation": "Organisation",
        "competition": "Competition",
        "event": "Event",
        "section": "Section",
        "fixture": "Fixture",
        "programme_slot": "Programme slot",
        "venue": "Venue",
        "community_team": "Community team"
      },
      "event": {
        "ranking.correction": "Ranking corrections",
        "sports.match.final": "Match final",
        "sports.match.started": "Match start",
        "sports.programme.changed": "Programme changes",
        "sports.record.changed": "Record changes",
        "sports.resource.changed": "Field or court changes",
        "sports.score.changed": "Score changes",
        "sports.slot.resolved": "Programme slot changes"
      },
      "no_longer_available": "No longer available"
    },
    "feed": {
      "heading": "Your feed",
      "help": "Recent updates from the sources you follow.",
      "empty": "There are no followed updates yet.",
      "older": "Older feed updates",
      "score_changed": "A followed score changed.",
      "match_started": "A followed match started.",
      "match_final": "A followed match finished.",
      "score_changed_named": "Score update: {match}.",
      "score_changed_now": "Score update: {match}, now {score}.",
      "score_changed_then": "Score update: {match}, {score} at the time.",
      "match_started_named": "{match} started.",
      "match_final_named": "{match} finished.",
      "match_final_now": "{match} finished: {score}.",
      "record_changed": "A followed record changed.",
      "programme_changed": "A followed programme changed.",
      "resource_changed": "The field or court for a followed match changed.",
      "slot_resolved": "The programme now identifies a match for a place you follow.",
      "team_broadcast": "A followed team published a notice.",
      "team_trial_selected": "Your child's trial outcome is ready: selected.",
      "team_trial_not_selected": "Your child's trial outcome is ready: not selected."
    },
    "notifications": {
      "title": "Notifications",
      "heading": "Your private notifications",
      "manage_following": "Change what you follow",
      "empty": "There are no notifications yet.",
      "ranking_correction": "{count, plural, one {A ranking correction affected # followed source.} other {A ranking correction affected # followed sources.}}",
      "ranking_history_apply": "{count, plural, one {A historical ranking correction affected # followed source.} other {A historical ranking correction affected # followed sources.}}",
      "ranking_history_revert": "{count, plural, one {A historical ranking correction was reversed for # followed source.} other {A historical ranking correction was reversed for # followed sources.}}",
      "sports_update": "A followed sports update is available.",
      "team_broadcast": "A new Team Hub notice is available.",
      "internal_game_review_quarantined": "A practice game result wasn’t confirmed and has been set aside.",
      "internal_game_review_confirmed": "A practice game result was confirmed.",
      "internal_programme_rule_changed": "The rules for a private squad programme changed.",
      "internal_programme_history_applied": "A reviewed historical run was applied to a private squad programme.",
      "internal_programme_history_reverted": "A reviewed historical run was reversed for a private squad programme.",
      "internal_programme_rank_drop": {
        "generic": "A private squad programme result changed.",
        "ordinal": "A private squad programme ranking changed from {previousValue} to {currentValue}.",
        "band": "A private squad programme band changed from {previousValue} to {currentValue}.",
        "tier": "A private squad programme tier changed from {previousValue} to {currentValue}.",
        "current_value_unavailable": "no current value"
      },
      "team_lineup_selected": "You were selected for this match or event.",
      "team_lineup_not_selected": "Your match or event selection update is available.",
      "team_trial_selected": "Your child was selected for the team.",
      "team_trial_not_selected": "Your child's trial outcome is available.",
      "team_trial_expired": "Your child's trial registration expired without a completed selection outcome.",
      "mark_viewed": "Mark as viewed",
      "viewed": "Viewed",
      "older": "Older notifications",
      "preferences": "Notification preferences",
      "defaults": "Defaults for new follows",
      "defaults_help": "Choose which channels new follows use. Existing follows keep their own choices.",
      "save_defaults": "Save default channels",
      "quiet_hours": "Quiet hours",
      "quiet_hours_help": "Browser notifications pause between these two times. Enter each as minutes after midnight, for example 1320 for 22:00.",
      "quiet_start": "Quiet hours start minute",
      "quiet_end": "Quiet hours end minute",
      "save_quiet_hours": "Save quiet hours",
      "clear_quiet_hours": "Turn off quiet hours",
      "quiet_hours_off": "Quiet hours are off.",
      "quiet_hours_on": "Quiet hours run from minute {start} to minute {end}.",
      "invalid_quiet_hours": "Enter two different minutes from 0 to 1439, or turn quiet hours off.",
      "web_push": "Browser notifications",
      "web_push_help": "Browser notifications never include player names.",
      "web_push_native_help": "Browser notifications are managed in the web app. Native push delivery is being added with the mobile release.",
      "web_push_registered": "Browser notifications are on for this browser.",
      "web_push_not_registered": "Browser notifications are off for this browser.",
      "web_push_enable": "Turn on browser notifications",
      "web_push_disable": "Turn off browser notifications",
      "web_push_unsupported": "This browser does not support notifications.",
      "web_push_denied": "This browser has blocked notification permission.",
      "web_push_failed": "Browser notification setup did not complete. Try again.",
      "web_push_requires_javascript": "Browser notification setup needs JavaScript.",
      "score_changed": "A followed score changed.",
      "match_started": "A followed match started.",
      "match_final": "A followed match finished.",
      "record_changed": "A followed record changed.",
      "programme_changed": "A followed programme changed.",
      "resource_changed": "The field or court for a followed match changed.",
      "slot_resolved": "The programme now identifies a match for a place you follow.",
      "lede": "What we’ve told you, and how we tell you.",
      "inbox_heading": "Inbox"
    },
    "team_hub": {
      "title": "Team Hub",
      "directory_title": "Your Team Hubs",
      "directory_heading": "Your teams",
      "directory_help": "Open a current team you manage, play for or support as a linked guardian.",
      "directory_empty": "No Team Hubs are linked to your account yet.",
      "directory_open": "Open Team Hub",
      "directory_guardian_task": "A guardian link needs organisation attention.",
      "directory_link": "Team Hubs",
      "audience": {
        "squad_guardians_org": "Every notice is visible to the squad, their linked guardians and the organisation."
      },
      "author": {
        "team_manager": "Team manager"
      },
      "compose_heading": "Post a team notice",
      "one_way_help": "This is a one-way notice board. Replies and private adult-to-player messages are not available.",
      "message_label": "Notice",
      "publish": "Publish to the team",
      "notices_heading": "Team notices",
      "empty": "There are no team notices yet.",
      "message_unavailable": "This notice has been removed.",
      "report": "Report",
      "reported": "Reported to the organisation and platform moderation.",
      "block": "Block sender",
      "blocked_delivery_help": "You blocked this sender and sent the notice to organisation and platform moderation. Required team notices remain visible here so you do not miss institutional information.",
      "report_reason_label": "Reason",
      "report_reason": {
        "inappropriate": "Inappropriate content",
        "safeguarding_concern": "Safeguarding concern",
        "harassment": "Harassment",
        "other": "Other concern"
      },
      "guardian_tasks_heading": "Guardian links need attention",
      "guardian_tasks_help": "These current minor squad members have no verified guardian link. The notice was still published; the organisation can repair the missing link.",
      "guardian_task_player": "{givenName}, born {birthYear} · roster {membershipPublicId}",
      "guardian_task_player_unnamed": "Squad member born {birthYear} · roster {membershipPublicId}",
      "guardian_task_handoff": "Prepare guardian claim handoff",
      "guardian_task_handoff_help": "Optional: share this private link only with the intended guardian. It opens a request for a public, searchable profile and a verified guardian link. The organisation must counterapprove before verified guardian standing begins. Team notices already remain available without this request. Career aggregation requires a separate consent choice.",
      "guardian_task_erased": "Erased player record retained as a safeguarding task.",
      "operation_failed": "That Team Hub action did not complete.",
      "moderation_title": "Team Hub moderation",
      "moderation_heading": "Reported team notices",
      "moderation_empty": "There are no open Team Hub reports you may review.",
      "moderation_dismiss": "Dismiss report",
      "moderation_remove": "Remove notice"
    },
    "team_logistics": {
      "title": "Team logistics",
      "directory_title": "Your team logistics",
      "directory_heading": "Your teams",
      "directory_help": "Open a current team's schedules, rules and roster work.",
      "directory_empty": "No team logistics are linked to your account yet.",
      "directory_open": "Open team logistics",
      "directory_link": "Team logistics",
      "operation_failed": "That Team Hub logistics action did not complete.",
      "operation_saved": "Your Team Hub logistics change was saved.",
      "schedule_heading": "Training schedule",
      "schedule_empty": "There are no training sessions yet.",
      "schedule_publish_heading": "Add a training session",
      "schedule_title_label": "Session title",
      "schedule_note_label": "Notes (optional)",
      "schedule_starts_label": "Starts at",
      "schedule_ends_label": "Ends at",
      "schedule_time_help": "Use an ISO-8601 date and time with its timezone offset.",
      "schedule_venue_label": "Venue",
      "schedule_publish": "Publish training session",
      "schedule_source_notice": "Published team schedule",
      "availability_heading": "Availability",
      "availability_unacknowledged": "Unacknowledged",
      "availability_available": "Available",
      "availability_unavailable": "Unavailable",
      "availability_mark_available": "Mark available",
      "availability_mark_unavailable": "Mark unavailable",
      "availability_player": "{givenName}, born {birthYear}",
      "availability_player_unnamed": "Squad member born {birthYear}",
      "rules_heading": "Pinned team rules and documents",
      "rules_empty": "There are no pinned rules or documents yet.",
      "rules_publish_heading": "Pin a rule or document",
      "rules_title_label": "Title",
      "rules_text_label": "Text",
      "rules_links_label": "Links (optional)",
      "rules_links_help": "Enter one HTTPS link on each line.",
      "rules_publish": "Pin rule or document",
      "rules_pinned_at": "Pinned {at}",
      "roster_heading": "Roster proposals",
      "roster_empty": "There are no roster proposals yet.",
      "roster_propose_heading": "Propose a roster place",
      "roster_candidate_label": "Player",
      "roster_propose": "Send roster proposal",
      "roster_invitations_heading": "Roster invitations",
      "roster_invitations_empty": "There are no roster invitations waiting for you.",
      "roster_invitation": "{givenName}, born {birthYear}",
      "roster_player_unnamed": "Squad member born {birthYear}",
      "roster_consent_heading": "Consent shown for this roster proposal",
      "consent_language": "Shown in {language}",
      "roster_accept": "Accept roster proposal",
      "roster_decline": "Decline roster proposal",
      "roster_consent_active": "Processing consent is active.",
      "roster_needs_guardian_verification": "This response has been recorded for guardian verification.",
      "roster_status_label": "Status",
      "roster_status": {
        "open": "Waiting for a response",
        "accepted": "Accepted",
        "declined": "Declined"
      },
      "roster_response_basis": {
        "self": "Accepted by the player",
        "asserted_guardian": "Accepted by an asserted guardian",
        "verified_guardian": "Accepted by a verified guardian",
        "organisation": "Confirmed by the organisation"
      },
      "roster_bulk_heading": "Confirm selected roster proposals",
      "roster_bulk_help": "Organisation confirmation records squad membership. It does not create or claim guardian consent.",
      "roster_bulk_submit": "Confirm selected proposals",
      "trials_heading": "Trials",
      "trials_empty": "There are no open or recent trials.",
      "trial_register_title": "Register for a team trial",
      "trial_register_link": "Register a child for this trial",
      "trial_registered": "The trial registration was recorded without creating a player profile.",
      "trial_register_submit": "Register child and consent",
      "trial_confirm_title": "Confirm a trial registration",
      "trial_confirm_heading": "Confirm this trial registration",
      "trial_confirm_child": "{givenName}, born {birthYear}",
      "trial_confirmed": "The guardian confirmation was recorded.",
      "trial_confirmation_link": "Open the guardian confirmation form",
      "trial_confirmation_awaiting_slip": "Waiting for the guardian to confirm with the code from their slip.",
      "trial_consent_heading": "Parental processing consent",
      "trial_child_account": "Child account (optional)",
      "trial_child_account_none": "No linked child account",
      "trial_confirm_submit": "Confirm registration and consent",
      "trial_confirm_code_help": "Enter the confirmation code from the paper slip the coach gave you.",
      "trial_confirm_code_label": "Confirmation code",
      "trial_confirm_code_submit": "Continue",
      "trial_confirm_code_refused": "That code did not open a registration that is waiting for confirmation. Check the slip, or ask the coach for a new one.",
      "trial_closes": "Registration closes {date}.",
      "trial_selection_due": "Selection is due {date}.",
      "trial_publish_heading": "Create a trial",
      "trial_title": "Trial title",
      "trial_closes_label": "Registration closes",
      "trial_selection_due_label": "Selection due",
      "trial_publish": "Publish trial",
      "trial_given_name": "Child's given name",
      "trial_surname": "Child's family name",
      "trial_birth_year": "Child's birth year",
      "trial_paper_heading": "Record a paper registration",
      "trial_paper_help": "This stays pending until the actual guardian opens the confirmation form and agrees to the displayed wording.",
      "trial_paper_submit": "Record pending registration",
      "trial_paper_slip_heading": "Guardian confirmation slip",
      "trial_paper_slip_body": "Give this link and code to the child's parent or guardian, for example on the paper slip. The code is shown only now, and only someone holding it can confirm this registration. After 10 wrong codes the registration locks until you issue a new slip.",
      "trial_paper_slip_code": "Confirmation code: {code}",
      "trial_slip_locked": "Too many wrong codes were tried for this registration. It stays locked until you issue a new slip.",
      "trial_slip_reissue": "Issue a new slip",
      "trial_purge": "Remove personal registration details when eligible",
      "trial_path": {
        "guardian": "Registered by guardian",
        "coach_paper": "Paper registration"
      },
      "trial_confirmation": {
        "pending_guardian": "Waiting for guardian",
        "confirmed": "Guardian confirmed"
      },
      "trial_outcome": {
        "expired": "Selection window expired",
        "pending": "Decision pending",
        "selected": "Selected",
        "rejected": "Not selected"
      },
      "trial_promotion": {
        "not_selected": "No player profile created",
        "pending": "Identity promotion pending",
        "promoted": "Promoted to the squad"
      },
      "trial_decide": {
        "selected": "Select and promote",
        "rejected": "Mark not selected"
      },
      "trial_abandon": "Close unconfirmed entry",
      "trial_resume_promotion": "Resume squad promotion",
      "duties_heading": "Guardian duties",
      "duties_empty": "There are no duty rosters yet.",
      "duty_capacity": "{remaining} of {capacity} places remaining",
      "duty_volunteer": "Volunteer",
      "duty_withdraw": "Withdraw",
      "duty_publish_heading": "Create a duty roster",
      "duty_publish_help": "Add the first duty slot. More rosters can be published as needed.",
      "duty_roster_title": "Duty roster title",
      "duty_slot_title": "Duty slot",
      "duty_starts_at": "Starts at",
      "duty_capacity_label": "Number of volunteers needed",
      "duty_publish": "Publish duty roster",
      "agent_generated_response": "Recorded by a connected app",
      "agent_generated_proposal": "Proposed through a connected app after the coach approved it",
      "agent_generated_duty": "A volunteer on this duty was added by a connected app"
    },
    "team_fitness": {
      "title": "Team fitness",
      "heading": "{teamName} fitness",
      "private_help": "Routines, fitness measures and internal leaderboards stay inside this team. This screen records fitness only; it does not collect medical details.",
      "operation_failed": "That Team Fitness action did not complete.",
      "members_heading": "Current squad consent",
      "member_unnamed": "Current squad member",
      "member_label": "Squad member",
      "consent": {
        "available": "Ready for Team Fitness",
        "consent_needed": "Consent needed before Team Fitness can be recorded"
      },
      "routines_heading": "Exercise routines",
      "routines_empty": "No exercise routines have been defined for this team yet.",
      "routine_label": "Routine {routinePublicId}",
      "current_season": "Defined for this season",
      "inherited": "Inherited definition",
      "define_routine_heading": "Define an exercise routine",
      "no_medical_help": "Use the structured exercise and amount fields only. Do not enter diagnoses, treatment or injury details.",
      "step_count_label": "Number of routine steps",
      "step_heading": "Step {index}",
      "exercise_label": "Exercise",
      "exercise": {
        "bodyweight_squat": "Bodyweight squat",
        "push_up": "Push-up",
        "plank_hold": "Plank hold",
        "run": "Run"
      },
      "prescription_label": "Prescription type",
      "prescription": {
        "sets_reps": "Sets and repetitions",
        "duration": "Duration",
        "distance": "Distance"
      },
      "sets_label": "Sets (for sets and repetitions)",
      "repetitions_label": "Repetitions (for sets and repetitions)",
      "duration_seconds_label": "Duration in seconds (for duration)",
      "distance_metres_label": "Distance in metres (for distance)",
      "define_routine": "Define routine",
      "assign_routine_heading": "Assign a routine",
      "routine_select_label": "Routine",
      "assigned_on_label": "Assigned on",
      "due_on_label": "Due on (optional)",
      "assign_squad": "Assign to the squad",
      "assign_individual": "Assign to one squad member",
      "acknowledgement": {
        "completed": "Completion acknowledged",
        "unacknowledged": "Awaiting completion acknowledgement"
      },
      "completed_on": "Completed on {date}",
      "completed_on_label": "Completed on",
      "acknowledge": "Acknowledge completion",
      "metrics_heading": "Team metrics",
      "define_metric_heading": "Define a metric",
      "unit_label": "Unit",
      "aggregation_label": "How to combine results",
      "direction_label": "Ranking direction",
      "unit": {
        "count": "Count",
        "seconds": "Seconds",
        "metres": "Metres"
      },
      "aggregation": {
        "latest": "Latest result",
        "best": "Best result",
        "sum": "Total"
      },
      "direction": {
        "higher": "Higher is better",
        "lower": "Lower is better"
      },
      "attendance_status_label": "Attendance status to count",
      "attendance": {
        "present": "Present",
        "absent": "Absent",
        "late": "Late",
        "excused": "Excused"
      },
      "define_fitness_metric": "Define fitness metric",
      "define_attendance_metric": "Define attendance metric",
      "record_metric_heading": "Record a metric result",
      "metric_label": "Metric",
      "recorded_on_label": "Recorded on",
      "value_label": "Value",
      "record_metric": "Record result",
      "from_on_label": "From",
      "through_on_label": "Through",
      "publish_leaderboard": "Publish internal leaderboard",
      "leaderboards_heading": "Internal leaderboards",
      "leaderboards_empty": "No internal leaderboards have been published yet.",
      "leaderboard_value": "Rank {rank}: {value} {unit}",
      "unavailable": "Unavailable"
    },
    "internal_games": {
      "title": "Practice games",
      "open": "Practice games",
      "heading": "{teamName} practice games",
      "private": "Private to this team",
      "help": "Create a team-only practice game, then use the usual lineup, scoring and Report finished steps. A finished result counts once it’s confirmed.",
      "operation_failed": "That practice game action did not complete.",
      "source_conflict_title": "The result changed",
      "source_conflict": "The reviewed source is no longer current. The latest result is shown below.",
      "create_heading": "Create a practice game",
      "event_date": "Game date",
      "load_options": "Load choices for this date",
      "choose_date_help": "Choose a date inside this team's season to load its current sport choices.",
      "venue": "Registered venue",
      "search_venues": "Search registered venues",
      "venue_search_failed": "We couldn't search venues",
      "venue_time_zone": "Venue time zone: {timeZone}",
      "item_title": "Game title",
      "scheduled_time": "Scheduled time at the venue",
      "scheduled_time_optional_help": "Leave blank if no time is scheduled.",
      "scheduled_time_unavailable": "Scheduled time unavailable",
      "time_help": "Enter the date and time shown on the venue clock. The registered venue time zone is applied automatically.",
      "age_group": "Age group",
      "format": "Match format",
      "discipline": "Discipline",
      "round": "Round",
      "programme_context_heading": "Programme contribution",
      "programme_context_help": "Optionally count this game in one current squad programme. The selected programme supplies the eligible challenge, box and period choices.",
      "programme": "Squad programme",
      "programme_context_none": "Do not count this game in a programme",
      "programme_home_competitor": "Home programme competitor",
      "programme_away_competitor": "Away programme competitor",
      "programme_target_rubber": "Rubber to count in programme",
      "period_or_cycle_value": "Period or cycle {value}",
      "accepted_challenge": "Accepted challenge",
      "box": "Box",
      "box_value": "Box {value}",
      "performance_entrants_heading": "Performance entrants",
      "performance_entrants_help": "Enter the distinct competitors for this performance item. The server will mint their exact lineup targets after creation.",
      "performance_entrant_label": "Competitor {index}",
      "competitor_kind": {
        "individual": "Individual",
        "pair": "Pair",
        "relay_squad": "Relay squad"
      },
      "add_performance_entrant": "Add another competitor",
      "remove_performance_entrant": "Remove competitor",
      "member_lineup_heading": "Select participating squad members",
      "member_lineup_help": "Choose the current consented squad member for every place. Your own player must be included.",
      "member_lineup_root": "Game",
      "member_lineup_rubber": "Rubber {number}",
      "member_lineup_performance": "Performance entry {number}",
      "member_lineup_choose_side": "Choose a side",
      "member_lineup_side": "Side",
      "member_lineup_target": "{target} · {side} · member {number}",
      "member_lineup_add_starter": "Add starter",
      "member_lineup_remove_starter": "Remove starter",
      "member_lineup_unnamed_player": "Existing squad member",
      "member_lineup_incomplete_entry": "Choose squad members for this entry",
      "member_player": "Squad player",
      "member_competitor_kind": "Competitor type",
      "member_display_key": "Display key",
      "member_position": "Position",
      "member_captain": "Captain",
      "member_side_label": "Side",
      "member_side": {
        "home": "Home",
        "away": "Away"
      },
      "member_target": {
        "root": "{side} side",
        "rubber": "Rubber {number}, {side} side",
        "performance": "{label}"
      },
      "add_member_lineup_entry": "Add another squad player",
      "performance_entrant_targets_heading": "Created entrant targets",
      "performance_entrant_target": "{label} is ready for the exact lineup target.",
      "rubber_plan": "Tie format",
      "not_specified": "Not specified",
      "create": "Create practice game",
      "games_heading": "Team games",
      "empty": "There are no practice games for this team yet.",
      "open_lineup": "Open lineup",
      "open_score_and_finish": "Record score and Report finished",
      "review_heading": "Private result review",
      "confidence": "Recorded source confidence: {confidence}",
      "source_field": "Result field: {field}",
      "source_fixture_result": "Fixture result",
      "source_tie_result": "Tie result",
      "source_rubber_result": "Rubber {number}: {confidence}",
      "source_rubber_result_unspecified": "Rubber result",
      "source_meet_result": "Meet results",
      "source_meet_entry": "Entry {participant}: {claim}; {confidence}",
      "source_claim": {
        "performance": "Performance",
        "placing": "Placing",
        "entrant_status": "Entrant status"
      },
      "source_changed": "This exact source has changed and cannot be confirmed. Reload to review its replacement.",
      "confirm": "Confirm this result",
      "dispute": "Dispute this result",
      "override_reason": "Reason for coach override",
      "override": "Record reasoned coach override",
      "unnamed_player": "Current squad player",
      "plan": {
        "singles": "Singles",
        "singles_doubles": "Singles and doubles"
      },
      "lifecycle": {
        "scheduled": "Scheduled",
        "in_progress": "In progress",
        "completed": "Completed",
        "cancelled": "Cancelled",
        "forfeited": "Forfeited",
        "walkover": "Walkover",
        "abandoned": "Abandoned",
        "merged_into": "Merged into another item",
        "unavailable": "Lifecycle unavailable"
      },
      "review_state": {
        "pending": "Waiting to be confirmed",
        "confirmed": "Confirmed",
        "disputed": "Being checked — not counted for now",
        "quarantined": "Not confirmed — not counted",
        "overridden": "Counted by the coach",
        "invalidated": "Changed — not counted"
      }
    },
    "internal_programmes": {
      "title": "Internal programmes",
      "open": "Internal programmes",
      "heading": "{teamName} internal programmes",
      "private": "Private to this team",
      "help": "Choose dated squad competitors and form-authored rules. Every preview uses the current reviewed sporting source and must be published with its exact receipt.",
      "operation_failed": "That internal programme action did not complete.",
      "source_conflict_title": "The programme source changed",
      "source_conflict": "The reviewed programme source changed. Reload the current private view before making a new request.",
      "create_heading": "Create or revise a programme",
      "rule_date": "Rules date",
      "load_choices": "Load dated choices",
      "rule_date_help": "Choose a date inside this team season to load the current sport, roster and rule choices.",
      "reusable_definition": "Reusable squad rules",
      "new_reusable_definition": "Start with a fresh definition",
      "name": "Programme name",
      "valid_from": "Rules apply from",
      "existing_programme": "Programme to revise",
      "new_programme": "Create a new programme",
      "no_reusable_definition": "Start with this mode's current rules",
      "display_mode": "Private display",
      "bands_heading": "Named bands",
      "band_name": "Band name",
      "band_through_rank": "Last place in band",
      "add_band": "Add band",
      "remove_band": "Remove band",
      "mode_label": "Programme mode",
      "include_pending": "Show eligible pending reviews as provisional before their deadline",
      "competitors_heading": "Squad competitors",
      "competitor_type": "Competitor type",
      "competitor_kind": {
        "player": "Individual player",
        "pair": "Pair",
        "relay": "Relay"
      },
      "competitor_player": "Player",
      "competitor_help": "Choose existing squad members. Add individual competitors, pairs or ordered relays; each choice is bound to the current private source.",
      "competitors_empty": "Add at least one squad competitor before previewing the programme.",
      "add_competitor": "Add selected competitor",
      "remove_competitor": "Remove competitor",
      "pair_first": "First pair member",
      "pair_second": "Second pair member",
      "relay_members": "Relay members in leg order",
      "none": "None",
      "preview": "Preview programme",
      "preview_heading": "Reviewed programme preview",
      "review_heading": "Review before publication",
      "rulebook_heading": "Generated rulebook",
      "rulebook_unavailable": "The generated rulebook is unavailable for this response.",
      "publish": "Publish reviewed programme",
      "programmes_heading": "Current programmes",
      "empty": "There are no internal programmes for this team yet.",
      "current_output": "Current output",
      "proposed_output": "Proposed output",
      "hypothetical_output": "Hypothetical output",
      "source_digest": "Reviewed source digest",
      "body_hash": "Rules body hash",
      "version": "Version {version}",
      "period_or_cycle": "Period or cycle {value}",
      "not_available": "Unavailable",
      "provisional": "Provisional",
      "output_status": {
        "current": "Current",
        "provisional": "Provisional while eligible reviews are pending",
        "closure_required": "A reviewed closure is required before this output is current",
        "invalidated": "This closed output was invalidated and needs reviewed recomputation"
      },
      "display": {
        "ordinal": "Ordinal order",
        "band": "Bands",
        "tier": "Tiers"
      },
      "mode": {
        "fixture_points": "Fixture points",
        "performance_points": "Performance points",
        "session_points": "Session points",
        "standards_tiers": "Standards tiers",
        "challenge_ladder": "Challenge ladder",
        "pyramid": "Pyramid",
        "box_league": "Box league",
        "glicko2": "Glicko-2 ratings"
      },
      "competitor": {
        "player": "{members}",
        "pair": "Pair: {members}",
        "relay": "Relay: {members}"
      },
      "unnamed_player": "Current squad player",
      "unnamed_competitor": "Current squad competitor",
      "standing_summary": "Rank {rank}; points {points}; played {played}",
      "standing_summary_without_rank": "Points {points}; played {played}",
      "band_value": "Band {value}",
      "tier_value": "Tier {value}",
      "pyramid_position": "Row {row}, position {position}",
      "box_number": "Box {value}",
      "rating_value": "Rating {rating}; deviation {deviation}",
      "classification": "{value} {unit}; {tier}",
      "contributions_heading": "Exact contributions",
      "contributions_empty": "No reviewed sporting contribution is included yet.",
      "contribution": "{date}: {state}; {eligibility}; source confidence {confidence}; rules version {version}.",
      "eligibility": {
        "confirmed": "Confirmed and included",
        "overridden": "Included by an exact reasoned override",
        "provisional": "Eligible provisional contribution",
        "excluded": "Excluded from this output"
      },
      "source_field": "Source field: {field}",
      "source_presentation_empty": "The source has no additional private presentation fields.",
      "fixture_rules": "Fixture points rules",
      "win_points": "Points for a win",
      "draw_points": "Points for a draw",
      "loss_points": "Points for a loss",
      "no_result_points": "Points for no result",
      "performance_rules": "Performance points rules",
      "performance_confidence": "Minimum source confidence",
      "session_rules": "Session points rules",
      "session_source_heading": "Published session source",
      "session_source_unit": "Eligible sessions",
      "session_source_ordering": "Published order",
      "session_source": {
        "completed_game": "Completed practice games",
        "chronological_order": "Fixture date → scheduled time (unscheduled last) → stable game order",
        "contribution": "Session {ordinal}; scheduled {scheduledAt}.",
        "scheduled_time_unavailable": "Scheduled time unavailable"
      },
      "participation_points": "Points for participating",
      "sessions_counted": "Sessions counted",
      "best_session_count": "Best sessions to count",
      "counting": {
        "all": "Count every session",
        "best_n": "Count the best selected number"
      },
      "standards_rules": "Standards tiers rules",
      "standard_threshold": "Tier threshold",
      "challenge_rules": "Challenge ladder rules",
      "challenge_places_above": "Maximum places above",
      "challenge_unavailable_label": "Unavailable positions",
      "challenge_win_label": "Challenger win movement",
      "challenge_unavailable": {
        "count": "Count toward challenge range",
        "skip": "Skip when counting range"
      },
      "challenge_win": {
        "swap": "Swap positions",
        "insert": "Move into the challenged position"
      },
      "pyramid_rules": "Pyramid rules",
      "pyramid_rows": "Pyramid rows",
      "pyramid_layout_help": "Choose exactly the triangular number of competitors for the selected rows.",
      "box_rules": "Box league rules",
      "box_size": "Competitors in each box",
      "box_cycle_days": "Cycle length in days",
      "box_minimum_matches": "Minimum matches",
      "box_layout_help": "Choose a number of competitors exactly divisible by the selected box size.",
      "glicko_rules": "Glicko-2 rules",
      "glicko_default_rating": "Starting rating",
      "glicko_default_deviation": "Starting rating deviation",
      "glicko_closure_help": "Periods close through a separate reviewed, source-bound action after matches are complete.",
      "band": {
        "squad": "Squad"
      },
      "change_layout": "Review a layout change",
      "layout_group": "Group {value}",
      "preview_layout": "Preview layout change",
      "layout_heading": "Layout",
      "move_up": "Move up",
      "move_down": "Move down",
      "layout_not_changed": "The layout has not changed.",
      "programme_actions": "Programme actions",
      "absence_heading": "Absence movement",
      "present_lower_competitor": "Present competitor",
      "absent_competitor": "Absent competitor",
      "move_for_absence": "Move for absence",
      "walkover_heading": "Box walkover",
      "record_walkover": "Record walkover",
      "documented_court_offers": "Documented court offers",
      "minimum_documented_court_offers": "At least {count} documented court offers are required.",
      "left_competitor": "First competitor",
      "right_competitor": "Second competitor",
      "walkover_winner": "Walkover winner",
      "vertical_challenge_eligible": "Eligible for a vertical challenge",
      "vertical_challenge_ineligible": "Not eligible for a vertical challenge",
      "movement_heading": "Movement decisions",
      "movement_reason": {
        "replayed_result": "Replayed result",
        "held": "Held",
        "promoted": "Promoted",
        "relegated": "Relegated",
        "exceptional_perfect_cycle": "Exceptional perfect cycle"
      },
      "from_rank": "From rank",
      "to_rank": "To rank",
      "from_row": "From row",
      "to_row": "To row",
      "from_position": "From position",
      "to_position": "To position",
      "from_box": "From box",
      "to_box": "To box",
      "refresh_heading": "Refresh current output",
      "refresh_output": "Preview refreshed output",
      "publish_output": "Publish reviewed output",
      "challenge_heading": "Challenges",
      "challenge_summary": "Challenge from {competitor}",
      "challenge_target": "Competitor to challenge",
      "issue_challenge": "Issue challenge",
      "respond_to_challenge": "Respond to challenge",
      "acting_player": "Player responding",
      "challenger": "Challenger",
      "challenged": "Challenged competitor",
      "challenge_decision": "Challenge response",
      "challenge_kind": {
        "ladder": "Ladder challenge",
        "lateral": "Lateral challenge",
        "vertical": "Vertical challenge"
      },
      "challenge_response": {
        "accepted": "Accept",
        "refused": "Refuse"
      },
      "challenge_response_summary": "{kind}: {challenger} challenges {challenged}",
      "availability_heading": "Availability",
      "availability_status": "Availability status",
      "mark_available": "Available",
      "mark_unavailable": "Unavailable",
      "save_availability": "Save availability",
      "closure_heading": "Period closure",
      "closure_period": "Period or cycle to close",
      "close_period": "Preview period closure",
      "recompute_period": "Preview period recomputation",
      "publish_closure": "Publish reviewed closure",
      "publish_recompute": "Publish reviewed recomputation",
      "history_heading": "Historical rules",
      "target_version": "Rules version to apply",
      "select_contribution": "Select exact contributions",
      "select_contribution_source": "{date}: {state}",
      "apply_history": "Preview historical application",
      "publish_history": "Apply reviewed historical rules",
      "revert_history": "Revert historical application",
      "history_version_option": "Version {version}, effective {date}",
      "history_run": "Version {version} applied on {date}",
      "history_applied_on": "Applied on {date}",
      "history_reverted_on": "Reverted on {date}",
      "source_fixture_result": "Fixture result",
      "source_tie_result": "Tie result",
      "source_rubber_result": "Rubber {number}: {confidence}",
      "source_rubber_result_unspecified": "Rubber result",
      "source_meet_result": "Meet results",
      "source_meet_entry": "Entry {participant}: {claim}; {confidence}",
      "source_claim": {
        "performance": "Performance",
        "placing": "Placing",
        "entrant_status": "Entrant status"
      },
      "unavailable": {
        "sport_source": "This template isn’t available for this sport’s rules on the selected date."
      }
    },
    "team_lineup": {
      "title": "Match-day lineup",
      "agent_published": "Published for you by a connected AI agent ({clientId})",
      "agent_fact": "Reported through a connected AI agent",
      "open": "Open lineup and attendance",
      "heading": "{teamName} lineup",
      "source_help": "Selections show whether each existing player comes from the current squad, the organisation, a consented public profile or an exact event nomination.",
      "builder_heading": "Build the team sheet",
      "fixture_label": "Fixture or event",
      "select_player": "Select this player",
      "entry_target_label": "Entry, rubber or side",
      "role_label": "Role",
      "position_label": "Position",
      "position_none": "No position",
      "position": {
        "goal_shooter": "Goal shooter",
        "goal_attack": "Goal attack",
        "wing_attack": "Wing attack",
        "centre": "Centre",
        "wing_defence": "Wing defence",
        "goal_defence": "Goal defence",
        "goal_keeper": "Goal keeper",
        "goalkeeper": "Goalkeeper",
        "defender": "Defender",
        "midfielder": "Midfielder",
        "forward": "Forward",
        "front_row": "Front row",
        "lock": "Lock",
        "loose_forward": "Loose forward",
        "halfback": "Halfback",
        "outside_back": "Outside back",
        "batter": "Batter",
        "bowler": "Bowler",
        "all_rounder": "All-rounder",
        "wicketkeeper": "Wicketkeeper",
        "guard": "Guard",
        "field_player": "Field player"
      },
      "display_key_label": "Shirt, bib or lane key (when the event requires one)",
      "relay_leg_label": "Relay leg (relay entries only)",
      "captain_label": "Captain",
      "publish": "Publish lineup",
      "update": "Update published lineup",
      "correct": "Publish audited correction",
      "published_heading": "Published team sheets",
      "revision_heading": "Revision {revision}",
      "invitation_fixture_label": "Event for the invitation",
      "create_invitation": "Create private player invitation",
      "open_invitation": "Open and share this exact-event invitation",
      "invitation_title": "Match-day player invitation",
      "invitation_heading": "Nominate a player for {teamName}",
      "invitation_help": "Only players you already lawfully represent are shown. The nomination applies only to this match or event.",
      "nominate_player": "Nominate this player",
      "substitute_label": "Incoming player",
      "record_substitution": "Record substitution",
      "corroboration_heading": "Opponent facts you can corroborate",
      "fact_summary": "{field}: {value}",
      "corroborate_fact": "Corroborate this exact fact",
      "attendance_heading": "Session attendance",
      "attendance_consent_needed": "Attendance cannot be recorded until the player or guardian accepts the roster processing notice.",
      "attendance_status_label": "Observed attendance",
      "record_attendance": "Record attendance",
      "acknowledge_confirm": "Confirm attendance",
      "acknowledge_dispute": "Dispute attendance",
      "operation_failed": "That lineup or attendance action did not complete.",
      "unnamed_player": "Existing player born {birthYear}",
      "named_player": "{name}, born {birthYear}",
      "source": {
        "squad": "Current squad",
        "same_organisation": "Existing player from this organisation",
        "public_profile": "Consented public profile",
        "borrowed_nomination": "Exact event nomination"
      },
      "role": {
        "starter": "Starter",
        "substitute": "Substitute",
        "reserve_unused": "Unused reserve",
        "not_applicable": "Individual, pair or relay entry"
      },
      "state": {
        "published": "Published before kickoff",
        "frozen": "Frozen at kickoff",
        "completed": "Completed"
      },
      "confidence": {
        "unconfirmed": "Unconfirmed",
        "corroborated": "Corroborated",
        "verified": "Verified"
      },
      "attendance": {
        "present": "Present",
        "absent": "Absent",
        "late": "Late",
        "excused": "Excused"
      }
    },
    "privacy": {
      "title": "Privacy and your data",
      "heading": "Privacy and your data",
      "intro": "See everything we hold about you, download a copy, or ask us to erase it. Each request runs immediately and is recorded.",
      "subject_label": "Whose data",
      "subject_self": "My account",
      "subject_child": "One of my children",
      "subject_owned_player": "A Player record I own",
      "owned_player_label": "Your Player record",
      "owned_player_placeholder": "Choose a Player record",
      "owned_player_unnamed": "Unnamed Player",
      "child_id_label": "Child's profile ID",
      "child_id_help": "Shown on the child's profile page. You need a verified link to erase a child's record.",
      "household_link": "Find your children and their IDs in your household",
      "action_access": "See what we hold",
      "action_export": "Download a copy",
      "action_erasure": "Erase this record",
      "access_help": "Opens a full list of everything the platform holds about the person you chose.",
      "export_help": "The same list, as a file you can keep.",
      "erasure_help": "Removes the personal details for good. Team facts stay as anonymous history, and the records the law requires us to keep survive without a name.",
      "erasure_confirm_label": "Type ERASE to confirm",
      "erasure_confirm_word": "ERASE",
      "erasure_confirm_error": "Type ERASE exactly to confirm.",
      "history_heading": "Your requests",
      "history_empty": "You have not made a request yet.",
      "history_kind": "Request",
      "history_state": "State",
      "history_received": "Made",
      "history_document": "Open",
      "kind_access": "Access",
      "kind_export": "Export",
      "kind_erasure": "Erasure",
      "state_completed": "Done",
      "state_received": "Received",
      "state_in_progress": "Running",
      "state_refused": "Refused",
      "done": "Request completed.",
      "document_heading": "What we hold",
      "document_intro": "One section per place the platform stores something about the person you asked about. Sections marked as kept are the records we must keep by law even after an erasure.",
      "document_back": "Back to privacy",
      "failed_title": "The request was not completed",
      "retention_moderation_evidence": "Moderation evidence that names you is kept. A decision about a reported account, a merge review or a blackball adjudication survives your erasure with the free text you or anyone else wrote into it removed, because the record of the decision itself is what makes it auditable."
    },
    "household": {
      "title": "Your household",
      "heading": "Your household",
      "intro": "The children you can act for, and where every request has got to.",
      "back": "Back to your household",
      "acting_heading": "Who you are acting for",
      "acting_self": "You are acting as yourself.",
      "acting_for": "You are acting for {name}.",
      "acting_for_unnamed": "You are acting for one of your children.",
      "acting_stale": "You were acting for a child whose link is no longer active, so you are acting as yourself again.",
      "act_as_self": "Act as myself",
      "act_as_child": "Act for this child",
      "act_current": "You are acting for this child",
      "act_unavailable": "You can act for a child while the link is active.",
      "contexts_heading": "Your children",
      "contexts_empty_heading": "No children linked yet",
      "contexts_empty_body": "Add a child and their details stay inside your household. Nothing about them becomes searchable.",
      "name_withheld": "Name not shown",
      "name_withheld_help": "This link is no longer live, so the name is not shown here.",
      "born": "Born {birthYear, number, ::group-off}",
      "merged_notice": "This record was merged into another one. Use the record it was merged into.",
      "deidentified_notice": "The personal details on this record have been removed.",
      "strength_verified": "Verified link",
      "strength_verified_help": "Confirmed. You can do everything below for them.",
      "strength_asserted": "Not verified yet",
      "strength_asserted_help": "You can hold their details and give consent for them. Voting, duty slots and anything public need the school or club to confirm you first.",
      "org_confirmation_pending": "Waiting for the school or club to confirm this link.",
      "link_state_active": "Active",
      "link_state_ended": "Ended",
      "link_state_demoted_viewer": "View only",
      "link_state_frozen_readonly": "Frozen",
      "link_state_demoted_help": "They have reached the age of majority, so the record is theirs now. You can still read it.",
      "link_state_frozen_help": "Somebody else was confirmed for this child, so this copy is read-only.",
      "link_ended_reason": "Reason: {reason}",
      "profile_private": "Private to your household",
      "profile_pending_public": "Public profile requested",
      "profile_public": "Public profile",
      "powers_heading": "What you can do for them",
      "power_consent": "Give consent on their behalf",
      "power_team_hub": "Answer the coach on their behalf",
      "power_coach_vote": "Confirm their coach",
      "power_duty": "Take a parent duty slot",
      "power_yes": "Yes",
      "power_no": "Not yet",
      "claims_heading": "Requests and invitations",
      "claims_empty": "Nothing waiting. Anything you ask for, or are invited to, appears here.",
      "claim_kind_bind_to_existing": "Make an existing profile public",
      "claim_kind_create_and_bind": "Create a profile and claim it",
      "claim_kind_coguardian_invite": "Invitation to a second parent",
      "claim_kind_self_claim_majority": "Claiming your own profile",
      "claim_kind_majority_handover": "Handing a profile over",
      "claim_state_pending": "Waiting for the school or club",
      "claim_state_approved": "Approved",
      "claim_state_rejected": "Refused",
      "claim_state_withdrawn": "Withdrawn",
      "claim_state_expired": "Expired",
      "claim_party_claimant": "You asked for this",
      "claim_party_subject": "This is about you",
      "claim_party_invitee": "You were invited",
      "claim_org": "Confirmed by: {organisation}",
      "claim_expires": "Expires {date}",
      "claim_opened": "Asked on {date}",
      "claim_pending_help": "Somebody at the school or club has to confirm this. There is nothing more for you to do yet.",
      "claim_approved_help": "Done. The link is verified and the profile is public.",
      "claim_rejected_help": "The school or club did not confirm this one. Ask them at the ground, then start a new request.",
      "claim_expired_help": "Nobody answered in time. You can start a new request.",
      "claim_withdrawn_help": "This one was withdrawn.",
      "invite_pending_help": "An invitation is not accepted by the person invited: the school or club confirms it, exactly the way a first claim is confirmed.",
      "add_child_cta": "Add a child",
      "claim_cta": "Ask to make a profile public",
      "invite_cta": "Invite another parent",
      "privacy_cta": "See, download or erase what we hold",
      "privacy_child_cta": "Privacy for this child",
      "career_profile": "Career profile",
      "career_off": "Off",
      "career_requested": "Requested",
      "career_on": "On",
      "career_off_help": "Switch it on from {name}'s privacy and consent to gather appearances and honours into one page that signed-in people can see.",
      "career_privacy_link": "Open privacy and consent",
      "career_requested_help": "Waiting for the school to confirm the public profile request.",
      "career_view": "View {name}'s career profile",
      "handover_cta": "Open the handover notice",
      "confirm_cta": "Answer this",
      "next_heading": "What you can do next",
      "switch_failed_title": "You were not switched",
      "create_title": "Add a child",
      "create_heading": "Add a child",
      "create_intro": "This puts their details in your household. Nobody outside it can see them, they are not searchable, and no school is asked for anything.",
      "create_visibility": "Visible only to your household.",
      "create_given_name_label": "First name",
      "create_surname_label": "Surname (optional)",
      "create_surname_help": "Never shown anywhere. We keep it only to match them to the right games when you later claim a profile.",
      "create_birth_year_label": "Year of birth",
      "create_confirm_label": "Type ADD to confirm",
      "create_confirm_word": "ADD",
      "create_confirm_help": "Typing it is the confirmation, so this works with or without JavaScript.",
      "create_submit": "Add to my household",
      "create_done": "Added. They are in your household now.",
      "create_failed_title": "The child was not added",
      "claim_new_title": "Ask to make a profile public",
      "claim_new_heading": "Ask to make a profile public",
      "claim_new_intro": "A public profile can be found by name and builds a career record across seasons. Somebody at the school or club confirms you before any of that switches on.",
      "claim_new_org_label": "School or club that will confirm it",
      "claim_new_org_help": "The school or club the child plays for. Its ID is on its page.",
      "claim_new_target_label": "What are you claiming?",
      "claim_new_target_existing": "A profile the school already has",
      "claim_new_target_slot": "A shirt with no profile yet",
      "claim_new_player_label": "Profile ID",
      "claim_new_slot_label": "Shirt ID",
      "claim_new_slot_help": "On the shirt's own page — for example the U15A number 14. Use this where the school has not created a profile yet.",
      "claim_new_birth_year_label": "Year of birth",
      "claim_new_private_label": "Their household profile (optional)",
      "claim_new_private_help": "If you already added them above, put their ID here and their details carry across when the claim is approved.",
      "claim_new_capacity_label": "You are claiming as",
      "claim_new_capacity_guardian": "Their parent or guardian",
      "claim_new_capacity_self": "Myself",
      "claim_new_submit": "Send the request",
      "claim_new_done": "Sent. It appears in your household while the school or club looks at it.",
      "claim_new_failed_title": "The request was not sent",
      "invite_title": "Invite another parent",
      "invite_heading": "Invite another parent",
      "invite_intro": "The other parent ends up with the same access you have. The school or club confirms the invitation — sending it grants nothing on its own.",
      "invite_account_label": "Their account ID",
      "invite_account_help": "They can read it on their own account page.",
      "invite_child_label": "Child's profile ID",
      "invite_link_label": "Your verified link to that child",
      "invite_link_help": "Shown beside the child in your household. Only a verified link can invite.",
      "invite_org_label": "School or club that will confirm it",
      "invite_submit": "Send the invitation",
      "invite_done": "Sent. It appears in your household while the school or club looks at it.",
      "invite_failed_title": "The invitation was not sent",
      "invite_unavailable_heading": "No verified link yet",
      "invite_unavailable_body": "Inviting a second parent needs a link the school or club has already confirmed. Ask to make a profile public first.",
      "handover_title": "Taking over your profile",
      "handover_heading": "Taking over your profile",
      "handover_intro": "You have reached the age where your sports record becomes yours. Everything in it stays exactly as it is.",
      "handover_none_heading": "Nothing to hand over",
      "handover_none_body": "There is no handover notice for this profile.",
      "handover_majority_on": "Age of majority reached on {date}",
      "handover_state_triggered": "Started",
      "handover_state_notified": "You and your guardians have been told",
      "handover_state_completed": "Done — the profile is yours",
      "handover_state_defaulted": "Guardian access has dropped to view-only",
      "handover_state_escalated": "With the platform moderators",
      "handover_path_verified_guardian_link": "You and your guardian complete this together.",
      "handover_path_org_counter_approval": "Your school or club completes this one.",
      "handover_path_platform_moderation": "We’re looking at this one.",
      "handover_escalation_reason": "Reason: {reason}",
      "handover_identity_verified": "Identity checked on {date}",
      "handover_completed_on": "Completed on {date}",
      "handover_defaulted_on": "Guardian access dropped on {date}",
      "handover_next_heading": "What happens next",
      "handover_next_body": "Accepting or declining is not on this screen yet. Nothing is lost while you wait: if nobody acts, guardian access simply drops to view-only and the record stays yours.",
      "confirm_title": "Is this your parent or guardian?",
      "confirm_heading": "Is this your parent or guardian?",
      "confirm_intro": "Somebody has asked to look after your profile. You answer this here, signed in — never from a link in an email.",
      "confirm_unavailable_heading": "Nothing to answer",
      "confirm_unavailable_body": "There is no request waiting for your answer.",
      "confirm_blocked_title": "We cannot show you who is asking",
      "confirm_blocked_body": "Never confirm somebody you cannot see. Until this screen can show you their name and email address, ask an adult at your school or club to confirm the request instead.",
      "confirm_claimant_heading": "Who is asking",
      "confirm_claimant_name": "Name: {name}",
      "confirm_claimant_email": "Email: {email}",
      "confirm_submit": "Yes, that is my parent or guardian",
      "confirm_done": "Thank you. They can look after your profile now.",
      "confirm_failed_title": "Your answer was not recorded",
      "confirm_org_note": "As soon as your school or club is active here, they see this and can confirm or dispute it."
    },
    "player_profile": {
      "unavailable_heading": "This profile isn't available",
      "unavailable_body": "Player profiles appear only when a parent or guardian has switched them on. If you were sent this link, ask the person who sent it.",
      "back_household": "Back to your household",
      "career_line": "{appearances, plural, one {# appearance} other {# appearances}} over {seasons, plural, one {# season} other {# seasons}} at {organisations, plural, one {# organisation} other {# organisations}}, and {caps, plural, one {# representative cap} other {# representative caps}}.",
      "no_appearances": "No appearances recorded yet.",
      "public_profile": "Public profile",
      "own_note_label": "Note for {name}'s household",
      "own_note": "You switched this profile on. Only people signed in to Live Youth Scores can see it, and it never appears in search engines.",
      "switch_off": "Switch it off any time from {name}'s privacy and consent",
      "switch_off_result": "— every page goes back to number only.",
      "honours_heading": "Honours",
      "honours_empty": "No representative caps recorded yet.",
      "honours_help": "Caps are recorded by the selecting provincial or national body.",
      "cap_singular": "cap",
      "cap_plural": "caps",
      "seasons_heading": "Seasons",
      "empty_heading": "Nothing recorded yet",
      "empty_body": "Matches appear here once they are played and recorded.",
      "buckets_label": "Appearances by confidence",
      "started": "Started",
      "bench": "Off the bench",
      "unused": "Unused reserve",
      "stats_label": "Recorded stats",
      "date_span": "{start} to {end}",
      "disputed_help": "Some appearances are being checked and stay counted meanwhile.",
      "confidence_help": "Each number shows how sure it is: Unconfirmed when just reported, Corroborated once backed up, Verified once confirmed, Disputed while it’s being checked.",
      "privacy_help": "This page exists because a parent or guardian switched it on. It is never searchable from outside Live Youth Scores, and match pages keep showing a given name and number only."
    },
    "ranking_history": {
      "title": "Historical ranking rules",
      "heading": "Correct historical ranking rules",
      "disclosure": "A correction changes only the reviewed items’ rule authority. It keeps source facts current, delivers an in-app notice, and can be reversed explicitly.",
      "event_kind": "Action",
      "entry_context": "{entry} in {context}",
      "apply": "Apply a correction",
      "revert": "Reverse a correction",
      "country": "Country code",
      "selected_date": "Table date",
      "source_performance": "Measured performance",
      "source_placing": "Placing",
      "source_outcome": "Session outcome",
      "from_date": "First affected date",
      "to_date": "Last affected date",
      "target_version": "Rule version",
      "correction_id": "Correction ID for reversal",
      "correction_receipt": "Correction ID",
      "apply_run_id": "Applied run ID for reversal",
      "review": "Review actual changes",
      "review_heading": "Review historical correction",
      "affected_sources_heading": "Reviewed source items and rule versions",
      "affected_source": "{item} on {date}",
      "before_rule": "Rule before correction",
      "after_rule": "Rule after correction",
      "before_standings": "Standings before correction",
      "after_standings": "Standings after correction",
      "run_receipt": "Applied run ID",
      "notice_reach": "The committed notice will cover {count, plural, one {# affected ranking target} other {# affected ranking targets}}.",
      "no_changes": "The reviewed rule authority does not change this table.",
      "applied": "Historical correction applied",
      "reverted": "Historical correction reversed",
      "delivered": "{count, plural, one {Delivered to # in-app inbox.} other {Delivered to # in-app inboxes.}}",
      "confirm_apply": "Deliver notice and apply",
      "confirm_revert": "Deliver notice and reverse",
      "open": "Historical correction"
    },
    "coach_profile": {
      "title": "Coach profile",
      "heading": "Coach profile and track record",
      "help": "Show your name and your coaching record.",
      "saved": "The coach profile change was saved.",
      "operation_failed": "That coach profile action did not complete.",
      "identity_heading": "Public identity",
      "adult_required": "A public coach profile is available only to an adult account.",
      "engagement_required": "Your school signs you off as a coach before you can show your name.",
      "display_name": "Exact public display name",
      "request_attestation": "Ask for your name to be confirmed",
      "attested_by": "Confirmed by {organisation}",
      "status": {
        "pending": "Waiting to be confirmed",
        "attested": "Confirmed",
        "withdrawn": "No longer confirmed",
        "disputed": "Being checked"
      },
      "opt_in": "Show this name",
      "opt_out": "Remove my public coach profile",
      "view_public": "View public coach profile",
      "withdraw_attestation": "Withdraw your confirmation",
      "dispute_identity": "Report an identity dispute",
      "attestation_queue": "Coach names to confirm",
      "attestation_empty": "No coach names are waiting for you.",
      "attestation_context": "{team} · {season} · {organisation}",
      "attest_exact_name": "Confirm the name {name}",
      "title_sources": "Recorded title sources",
      "title_help": "Choose the completed competition result that supports this title. Check the winning team shown before publishing.",
      "title_sources_empty": "There are no competition results you can use to record a title right now.",
      "award_name": "Official award name",
      "preview_title": "Preview derived winner",
      "derived_winner": "Derived winning team: {team}",
      "title_decided_on": "Decided on {date}",
      "publish_title": "Publish recorded title",
      "revoke_title": "Revoke recorded title",
      "representative_heading": "Representative team selections",
      "representative_help": "Record the player’s actual place in the receiving team’s squad. This does not enable public career sharing, which is unavailable in the current testing service.",
      "representative_empty": "There are no players you can select for a representative team right now.",
      "representative_team": "Receiving representative team",
      "team_season_window": "{from} to {to}",
      "choose_team": "Choose a representative team",
      "selection_date": "Selection start date",
      "record_selection": "Record representative squad selection",
      "public_title": "Coach profile",
      "public_unavailable": "This coach profile is not publicly available.",
      "recorded_coverage": "Includes recorded results, titles and representative selections.",
      "window": "Observed window: {start} to {end}",
      "partial_current_window": "This is a partial current engagement window.",
      "record": "{wins} wins, {draws} draws and {losses} losses from {matches} matches",
      "win_percentage": "Win percentage: {percentage}%",
      "win_percentage_unavailable": "Win percentage is unavailable because this window has no qualifying matches.",
      "improvement_heading": "Observed comparison",
      "improvement_observed": "Change from the immediately previous season for this registry team: {points} percentage points.",
      "improvement_unavailable": "No non-empty immediately previous same-team season is available for comparison.",
      "baseline_window": "Baseline window: {start} to {end}, {matches} qualifying matches.",
      "recorded_titles": "Recorded titles",
      "recorded_titles_empty": "No supported recorded titles in this engagement window.",
      "representative_count": "Consented players selected for representative teams: {count}"
    },
    "coach_claims": {
      "title": "Coach verification",
      "explanation": "Claim a team, see where your claims stand, answer questions about your children’s coaches, or sign off a coach for your school.",
      "saved": "The coach verification was updated.",
      "create": "Claim a team",
      "prerequisites": "Before you claim",
      "adult_ready": "Adult account requirement met.",
      "adult_required": "Coach claims require an adult account. Your country's majority age is {majorityAge, number}.",
      "phone_ready": "A current mobile number is verified.",
      "email_ready": "Your email address is verified.",
      "phone_required": "A current verified mobile number is still required.",
      "submission_gate_ready": "First-submission mobile verification is complete.",
      "submission_gate_required": "First-submission mobile verification is still required.",
      "complete_submission_gate": "Complete mobile verification",
      "choose_team_season": "Team and season",
      "team_id": "Team ID",
      "season_id": "Season ID",
      "team_season_window": "{from} to {to}",
      "claim": "Start claim",
      "no_claimable_team_seasons": "No team seasons are available to claim.",
      "your_work": "Coach verification work",
      "empty": "No coach claims need your attention.",
      "rung": "Standing",
      "state": "Status",
      "current_round": "Right now",
      "no_open_round": "Nothing is open right now.",
      "rounds": {
        "verification": "Families are confirming",
        "withdrawal": "Families are deciding on withdrawal",
        "school_checking": "The school is checking this claim",
        "verification_restart": "Verification needs to start again"
      },
      "confirm": "Confirm coach",
      "reject": "Reject claim",
      "reject_withdrawal": "Keep coach authority",
      "withdraw_vote": "Support withdrawal",
      "open_withdrawal": "Open withdrawal vote",
      "retry_verification": "Restart verification",
      "valid_from": "Authority starts",
      "valid_to": "Authority ends",
      "date_placeholder": "YYYY-MM-DD",
      "ratify": "Ratify coach",
      "revoke": "Revoke coach authority",
      "refresh_expiry": "Refresh claim status",
      "withdraw_claim": "Withdraw my claim",
      "carry_forward": "Carry my claim into next season",
      "report_reason": "Report reason",
      "report": "Report coach claim",
      "rungs": {
        "claimed": "Claimed",
        "community_verified": "Confirmed by the families",
        "org_verified": "Signed off by the school"
      },
      "states": {
        "pending": "Pending verification",
        "active": "Active",
        "expired": "Expired",
        "rejected": "Rejected",
        "withdrawn": "Withdrawn",
        "suspended": "Suspended",
        "superseded": "Superseded"
      },
      "reasons": {
        "inappropriate": "Inappropriate conduct",
        "safeguarding_concern": "Safeguarding concern",
        "harassment": "Harassment",
        "other": "Other concern"
      },
      "profile_required": "Finish your age and country details before requesting a coach role.",
      "complete_profile": "Finish profile"
    },
    "email_link": {
      "title": "Secure email link",
      "eyebrow": "Secure access",
      "heading": "Opening your secure link",
      "intro": "We’re checking the link and this browser.",
      "checking": "Checking your link…",
      "paste_help": "If the link did not open automatically, paste the full link or token below.",
      "paste_label": "Email link or token",
      "paste_submit": "Continue securely",
      "confirm_heading": "Confirm your email",
      "confirm_intro": "This link was opened in a different browser. Enter the full address matching {email}.",
      "email_label": "Email address",
      "cross_device_help": "Confirm the email address you want to sign in with.",
      "complete": "Continue to Live Youth Scores",
      "invalid_heading": "That link cannot be used",
      "invalid_intro": "It may have expired, already been used, or been copied incompletely.",
      "invalid_detail": "Request a fresh secure link. Check the recipient address and open the link in the email you receive.",
      "try_login": "Send a new sign-in link",
      "try_signup": "Create an account"
    },
    "terms": {
      "title": "Terms and conditions",
      "eyebrow": "Before you join",
      "heading": "Terms and conditions",
      "intro": "Read the exact wording attached to this internal-testing account.",
      "back": "Back to account creation",
      "version": "Draft version {version}",
      "messaging_heading": "WhatsApp choices",
      "messaging_body": "Match, team and account updates are separate from promotional news and offers. Both choices are optional, start off, and can be changed later. Saving a preference does not itself make messaging available or override age, guardian, safety or delivery requirements."
    },
    "match_watch": {
      "title": "Live score",
      "period": "Period {number}",
      "decider": "Decider",
      "innings_total": "{runs}/{wickets}",
      "overs": "{overs} overs",
      "place": "Place {place}",
      "details": "Match details",
      "when": "When",
      "where": "Where",
      "date_time": "{date} at {time}",
      "live_connecting": "Connecting to live updates…",
      "live_connected": "Live updates connected",
      "live_offline": "You are offline. The score may have changed.",
      "live_error": "Live updates are unavailable. Refresh to check the latest score.",
      "end_pending": "Ending — waiting for confirmation",
      "closed_by_time": "Ended. Final score unconfirmed.",
      "refresh": "Refresh score",
      "live_updating": "Updating…",
      "live_not_current": "This may not be the latest score.",
      "try_again": "Try again",
      "expected_end": "Expected to end about {time}",
      "ended_by_scorers": "Ended by its scorers.",
      "ended_by_staff": "Ended by the organisers.",
      "scorers_disagree": "The scorers disagree. Please check the score."
    },
    "scoreboard": {
      "caption": "Score by set",
      "side_column": "Player or team",
      "winner": "Match winner",
      "blank": "–",
      "team_caption": "Team scores",
      "total": "Total",
      "period_caption": "Scores by period",
      "period_name": "{label} {number}",
      "add_value": "+{value}",
      "enter_score": "Enter the score",
      "last_action": "Last: {action} · {side} · {period}",
      "undo": "Undo",
      "correct_score": "Correct a score",
      "innings_caption": "Innings scores",
      "choose_innings": "Choose innings",
      "batting_side": "Batting team",
      "remove_run": "Remove one run",
      "subtract_one": "−1",
      "add_runs": "Add {value, plural, one {# run} other {# runs}}",
      "add_ball": "+1 ball",
      "performance_time": "{minutes}:{seconds}",
      "results_pending": "Results pending",
      "results": "Results",
      "current_positions": "Current positions",
      "position": "Pos",
      "competitor": "Competitor",
      "mark": "Mark",
      "stroke_tie": "T{position}",
      "shared_position": "{position}",
      "position_value": "{position}",
      "pending": "Pending",
      "thru": "Thru {holes}",
      "result_status": {
        "dq": "Disqualified",
        "dns": "Did not start",
        "dnf": "Did not finish",
        "nh": "No height",
        "eliminated": "Eliminated",
        "retired": "Retired",
        "wd": "Withdrawn",
        "scratched": "Scratched"
      },
      "shared_position_label": "Shared position {position}"
    },
    "task_bar": {
      "home": "Home",
      "match": "Match",
      "scoring": "Scoring",
      "sign_in": "Sign in",
      "signed_in_as": "Signed in as"
    },
    "shell": {
      "skip_to_content": "Skip to content",
      "lenses_label": "What are you here to do?",
      "sections_label": "{lens} sections",
      "notifications": "Notifications",
      "signed_in_as": "Signed in as",
      "footer_label": "About Live Youth Scores",
      "lens": {
        "follow": "Follow",
        "follow_sub": "Scores, matches, my kids",
        "coach": "Coach",
        "coach_sub": "My team",
        "school": "School",
        "school_sub": "My school or club",
        "staff": "Staff",
        "staff_sub": "Platform desk"
      },
      "nav": {
        "follow": {
          "home": "Today",
          "discover": "Find a match",
          "create": "Create match",
          "following": "Following",
          "household": "My kids",
          "events": "Events"
        },
        "coach": {
          "home": "My team",
          "hub": "Notice board",
          "schedule": "Schedule",
          "profile": "Coach profile"
        },
        "school": {
          "home": "Dashboard",
          "events": "Events & fixtures",
          "people": "Staff & delegations",
          "approvals": "Approvals"
        },
        "staff": {
          "home": "Needs a decision",
          "disputes": "Disputes",
          "rankings": "Ranking rules",
          "phones": "Phone reassignments",
          "school_admins": "Administrator cases"
        }
      },
      "footer": {
        "help": "Help",
        "terms": "Terms",
        "privacy": "Privacy and your data",
        "connected_apps": "Connected apps",
        "how_it_works": "How Live Youth Scores works",
        "for_coaches": "For coaches",
        "for_schools": "For schools and clubs"
      },
      "coach_home": {
        "title": "Coaches",
        "eyebrow": "For coaches and team managers",
        "heading": "Run your team from your phone. Parents hear from you in one place.",
        "heading_today": "Score your team’s matches from your phone.",
        "intro": "Claim your registered team, then check your claim status and the tools available to you. Some team tools also need an eligible school role.",
        "sign_in_to_claim": "Sign in to claim your team",
        "claim": "Claim your team",
        "scoring_note": "You can score supported public matches at the ground without a coach claim.",
        "steps_heading": "Start a coach claim",
        "step_claim_title": "You claim the team",
        "step_claim_body": "Choose a registered team and an available season, then check the status shown after submission.",
        "step_families_title": "Check your claim status",
        "step_families_body": "The Coach page shows the outcome and the team tools available to you. You can return to it after submitting a claim.",
        "step_school_title": "Check school access",
        "step_school_body": "Some team tools need an eligible school role as well as a coach claim. Ask a school administrator if those tools are unavailable.",
        "tools_heading": "Your coaching pages",
        "tool_claims": "Coach verification",
        "tool_claims_help": "Your team claims and where they stand.",
        "tool_hub_help": "Notices to your squad and their families.",
        "tool_schedule_help": "Training times, team rules and roster work.",
        "tool_profile_help": "Your coaching record, if you choose to publish one."
      },
      "school_home": {
        "title": "Schools and clubs",
        "eyebrow": "For schools and clubs",
        "heading": "Your fixtures and events, live.",
        "intro": "Load the term's fixture list, run derby days and galas as live programmes, and give colleagues access for a sport, a team or an event.",
        "sign_in": "Sign in to your school's pages",
        "access_heading": "Getting access",
        "access_colleague": "If someone at your school already uses these pages, ask them to add you from Staff and delegations.",
        "access_new": "Schools can't sign themselves up on the site.",
        "tools_heading": "Your school's pages",
        "tool_events_help": "Build a derby day or gala with sections, draws and a programme parents follow.",
        "tool_upload": "Fixture list",
        "tool_upload_help": "Upload the term's fixture list and review it before it goes live.",
        "tool_people_help": "Give a colleague access for a sport, a team or an event, for a set time."
      },
      "approvals_waiting": "Approvals waiting: {count}",
      "notifications_unread": "Notifications, unread: {count}",
      "notifications_unread_capped": "Notifications, more than {count} unread",
      "unread_capped": "{count}+"
    },
    "how_it_works": {
      "title": "How Live Youth Scores works",
      "heading": "How Live Youth Scores works",
      "lede": "Scores reported by people at the game, labelled by their published status. Fixture pages can show permitted player names; children are not searchable.",
      "toc_label": "On this page",
      "toc_trust": "The labels",
      "toc_privacy": "Privacy",
      "toc_parents": "For parents",
      "toc_apps": "Apps and agents",
      "unconfirmed_more": "Useful straight away.",
      "disputed_more": "The match keeps being scored.",
      "location_note": "To score a match, you need to be at the ground: the score page asks for your location.",
      "privacy_heading": "Children stay private by default",
      "privacy_names_title": "Match pages show shirt numbers, and a player’s name once it’s confirmed.",
      "privacy_names_body": "A parent can hide their child’s name at any time.",
      "privacy_names_today": "Pages that show a player’s name are kept out of search engines.",
      "privacy_search_title": "Nobody can search for a child.",
      "privacy_search_body": "Children cannot be searched for. Public career sharing is unavailable in the current testing service.",
      "privacy_switch_title": "Household details stay private.",
      "privacy_switch_body": "My kids holds your private family links; it does not switch on public career sharing.",
      "privacy_coaches_title": "Coaches never message a child privately.",
      "privacy_coaches_body": "Notices go to the whole squad and their guardians, one way.",
      "privacy_data_title": "Your data is yours.",
      "privacy_data_body": "Ask for a copy, or ask us to erase it, from Privacy and your data.",
      "parents_heading": "For parents",
      "parents_body": "Follow your child’s matches and they show up on your Today page. Add your child under My kids to answer the coach for them, confirm their coach and decide what’s shown about them.",
      "parents_today": "Follow your child’s matches and they show up on your Today page. Add your child under My kids: their details stay inside your household.",
      "coaches_heading": "For coaches",
      "coaches_link": "The Coach lens",
      "coaches_today": "Coaches score their matches like anyone at the ground, with nothing to set up first. Claiming a team for its notices, lineups and training times isn’t open yet.",
      "schools_heading": "For schools and clubs",
      "schools_link": "The School lens",
      "apps_heading": "Apps and agents",
      "apps_body": "Other apps and AI assistants can read public, nameless scores, and act for you only with your permission and within the limits you set. You see what they do and can disconnect them at any time."
    },
    "seo": {
      "title_template": "{page} · {brand}",
      "og_image_alt": "Live Youth Scores: live results for children's and youth sport",
      "crumb_home": "Home",
      "home": {
        "title": "Live scores for school and youth sport",
        "description": "Follow school and youth matches live, see results as they come in, and keep the score yourself when you're at the game."
      },
      "coach": {
        "description": "Claim your team to share training times and team details with your squad’s families.",
        "description_today": "Score your team’s matches live from your phone, with nothing to set up first."
      },
      "school": {
        "description": "Publish your school's fixtures and events, print programmes and bring colleagues in to help run your sport."
      },
      "discover": {
        "description": "Find matches at a ground near you or search for a ground by name, then follow the score live."
      },
      "how_it_works": {
        "description": "What the score labels mean, how children's names are shown and kept private, and how coaches and schools take part."
      },
      "venue": {
        "description": "Live scores and results from matches at {venue}.",
        "description_locality": "Live scores and results from matches at {venue}, {locality}."
      },
      "event": {
        "description": "Programme, draw and live results for {event}."
      },
      "match": {
        "title_pair": "{home} v {away}, {sport}",
        "title_venue": "{sport} at {venue}",
        "description": "Follow the live score and result on {date}.",
        "description_venue": "Follow the live score and result from {venue} on {date}."
      },
      "fixture": {
        "description": "The score and result of this match."
      },
      "ranking": {
        "team_description": "Team rankings from this season's results.",
        "performance_description": "The best performances in this sport, event by event.",
        "standards_description": "Performance standards for this sport, event by event.",
        "session_description": "The session points table for this competition."
      },
      "records": {
        "description": "Record performances in this sport, event by event."
      }
    },
    "school_register": {
      "title": "Register your school",
      "heading": "Register your school",
      "lede": "Make your school the authority over its teams, coaches and what's shown about its pupils.",
      "community_added": "Community added",
      "back_to_follow": "Back to Follow",
      "already_admin": "You're already an administrator of {school}.",
      "see_administrators": "See your school's administrators",
      "unknown_school": "We couldn't find that school. Search for it again.",
      "find": {
        "heading": "Find your school",
        "label": "School or club name",
        "submit": "Search",
        "help": "Try the town too. Spelling variants are fine.",
        "results_label": "Schools and clubs",
        "none": "No school or club matches “{query}”.",
        "not_listed": "Not listed?",
        "add_link": "Add your school.",
        "again": "Search again"
      },
      "add": {
        "heading": "Add a school or club",
        "name_label": "Name",
        "name_help": "The official name.",
        "type_label": "Type",
        "type_school": "School",
        "type_club": "Club",
        "town_label": "Town",
        "country_label": "Country",
        "submit": "Add and continue",
        "back": "Back to search",
        "similar_heading": "Is it one of these?",
        "similar_body": "A school or club with that name is already listed.",
        "use_this": "Use this one",
        "add_anyway": "No, add mine"
      },
      "email": {
        "change": "Change",
        "heading": "Verify a school email address",
        "body": "We send a link to the email address the school gave you. Clicking it proves you receive mail there.",
        "label": "Your school email address",
        "help": "Free addresses (Gmail, Outlook, Yahoo, iCloud and the like) can't register a school.",
        "submit": "Send the link"
      },
      "sent": {
        "heading": "Check your school inbox",
        "body": "We've sent a link to {address}. It works once and not for long, so open it soon, on this device or any other.",
        "retry": "Use a different address",
        "nothing_arrived": "Nothing arrived? Check spam, and that the address is spelled right. A link opened by a mail scanner still works for you."
      },
      "refused": {
        "heading": "That address can't be used.",
        "free_heading": "That's a free email address.",
        "free_body": "{address} can't register {school}. Use the address the school gave you.",
        "not_accepted": "{address} can't register {school}. Use the address the school gave you.",
        "adult_required": "Registering a school needs an adult account.",
        "profile_incomplete": "Finish your profile first: add your date of birth and country.",
        "expired_heading": "This link request has expired.",
        "expired": "We couldn't get the link to you in time, so it can't be used now. Start again to get a new one.",
        "try_another": "Try another address",
        "finish_profile": "Finish your profile"
      },
      "problem": {
        "email": "Enter an email address, like sport@school.example.",
        "add_fields": "Enter the name and town, and choose the type and country.",
        "given_name": "Enter your first name.",
        "surname": "That surname is too long.",
        "role": "Choose your role.",
        "role_text": "Say what your role is, in a few words.",
        "authorised": "Tick the box to confirm you may do this.",
        "typed_address": "Type the full email address the link was sent to."
      },
      "role": {
        "sports_administrator": "Sports administrator",
        "head_of_sport": "Head of sport",
        "teacher_in_charge": "Teacher in charge of a sport",
        "principal": "Headmaster or principal",
        "club_secretary": "Club secretary",
        "other": "Something else"
      }
    },
    "school_link": {
      "title": "Confirm your school email",
      "heading": "Confirm your school email",
      "waiting_heading": "Checking your link",
      "checking": "Checking your link…",
      "paste_help": "If nothing happens, paste the link from the email here.",
      "paste_label": "Link from the email",
      "paste_submit": "Continue",
      "who_heading": "Make {account} an administrator of {school}?",
      "who_body": "This link was sent to {address}. Confirming it makes the account {account} an administrator of {school}.",
      "who_continue": "Yes, that's me",
      "who_not_me": "Not me: cancel the link",
      "role_heading": "Your name and role at {school}",
      "role_body": "Last step for {address}: your name and your role at the school.",
      "typed_address_label": "Type the full school email address",
      "typed_address_help": "You opened the link on a different device or browser, so type the address it was sent to.",
      "given_name_label": "Your first name",
      "surname_label": "Your surname (optional)",
      "role_label": "Your role",
      "role_text_label": "Your role in a few words (optional)",
      "role_text_help": "For example: teacher in charge of swimming. Needed if you chose “Something else”.",
      "authorised_label": "I'm authorised to administer {school}'s sport on Live Youth Scores.",
      "confirm_submit": "Finish",
      "address_mismatch": "That isn't the address this link was sent to.",
      "first_heading": "{school} is registered. You're its first administrator.",
      "first_body": "From now on you're the authority over {school}'s teams, coaches, grounds and display settings.",
      "first_body_promoted": "From now on you're the authority over {school}'s teams, coaches, grounds and display settings, and the “community added” label is gone.",
      "colleagues_note": "Colleagues join the same way, with their own school email.",
      "next_heading": "Get the school running",
      "next_fixtures": "Load the term's fixtures",
      "next_fixtures_link": "Upload a fixture list",
      "next_events": "Run a derby day or gala",
      "next_people": "Give colleagues access",
      "joined_heading": "You're now an administrator of {school}",
      "joined_body": "{school} is already registered, and you've joined its administrators.",
      "renewed_heading": "You're still an administrator of {school}",
      "renewed_body": "Your school email is confirmed again.",
      "confirmed_heading": "Your school email is confirmed.",
      "go_school": "Go to your school",
      "see_administrators": "See your school's administrators",
      "invalid_heading": "This link can't be used",
      "invalid_body": "It has expired, was already used or was cancelled. Start again to get a new one.",
      "cancelled_heading": "Link cancelled",
      "cancelled_body": "Nothing changed. Whoever asked for this link can't use it now.",
      "not_accepted_heading": "We couldn't finish this",
      "not_accepted_body": "Nothing changed. Start again with the address the school gave you.",
      "busy_heading": "Too many requests right now",
      "busy_body": "Nothing changed. Try again later.",
      "start_again": "Start again"
    },
    "school_admins": {
      "title": "School administrators",
      "heading": "{school}: administrators",
      "list_heading": "Administrators",
      "you": "You · {name}",
      "row_meta": "{role} · @{domain}",
      "role_with_text": "{role}: {text}",
      "colleagues_note": "Colleagues join with their own school email.",
      "teams_heading": "Teams people added",
      "teams_body": "When people score your school's matches, they sometimes add a team for it. Adopt them to make them your school's own.",
      "teams_link": "See community teams",
      "withdraw_heading": "Stepping down",
      "withdraw_open": "Stop being an administrator",
      "withdraw_body": "You stop being an administrator of {school}. Your account, your scores and anything you follow are unchanged.",
      "withdraw_confirm": "Yes, stop",
      "withdraw_not_administrator": "You're not an administrator of this school.",
      "withdrawn_heading": "You've stepped down as an administrator of {school}.",
      "lost_heading": "You're no longer an administrator of {school}.",
      "lost_account": "Your account is still yours.",
      "lost_body": "Your scores and anything you follow are unchanged.",
      "lost_contact": "Think this is wrong? Ask one of the school's administrators, or",
      "lost_contact_link": "tell us.",
      "none_heading": "You're not an administrator of {school}",
      "none_body": "Verify your school email to join its administrators.",
      "none_register": "Verify your school email",
      "under_review": "We're reviewing who administers this school. You're still an administrator for now; there's nothing you need to do."
    },
    "school_teams": {
      "title": "Community teams",
      "heading": "{school}: community teams",
      "lede": "Teams that people added for your school when they scored its matches. Adopt one to make it an official team of your school.",
      "list_heading": "Community teams",
      "team_meta": "{sport} · {ageGroup} · first match {date} · matches: {matches, number}",
      "adopted_as": "Adopted as {team}",
      "adopt_as_label": "Adopt as",
      "adopt_as_new": "A new team called {name}",
      "adopt_as_existing": "Existing team: {team}",
      "adopt_submit": "Adopt",
      "adopted_new": "{name} is now one of {school}'s teams.",
      "adopted_existing": "{name} is now part of {team}.",
      "empty_heading": "No community teams",
      "empty_body": "Nobody has added a team for your school yet.",
      "add_heading": "Add a team",
      "add_cta": "Add a team",
      "add_name_label": "Team name",
      "add_sport_label": "Sport",
      "add_choose_sport": "Choose a sport",
      "add_age_group_label": "Age group",
      "add_choose_age_group": "Choose an age group",
      "add_submit": "Add the team",
      "add_no_sports": "No sport has a season to add a team to yet.",
      "add_name_invalid": "Enter a team name of 2 to 120 characters.",
      "add_sport_required": "Choose a sport from the list.",
      "add_age_group_required": "Choose an age group from the list.",
      "add_refused_name_taken": "Your school already has a team with that name for this sport.",
      "add_refused_no_season": "That sport has no season to add a team to yet.",
      "add_refused_age_group_unavailable": "That age group isn’t offered for this sport.",
      "own_teams_heading": "Your school’s teams",
      "truncated": "There are more community teams. Adopt these to see the rest.",
      "not_administrator": "Only the school's administrators can adopt its community teams.",
      "see_administrators": "See your school's administrators",
      "refused": {
        "not_administrator": "You're not an administrator of this school.",
        "unavailable": "This team can't be adopted right now.",
        "already_adopted": "This team has already been adopted.",
        "team_mismatch": "Choose one of your school's teams in the same sport.",
        "name_taken": "Your school already has a team with this name. Choose it from the list instead.",
        "no_season": "This team can't be adopted until its season is set up.",
        "age_group_unavailable": "This team can't be adopted until its age group is set up for your school."
      }
    },
    "school_home_reg": {
      "register": "Register your school",
      "sign_in_register": "Sign in to register your school",
      "setup_heading": "How a school gets set up",
      "setup_find": "Find or add your school",
      "setup_find_body": "Most schools are already listed. If parents added yours from a match, it's there as “community added” and registering makes it official.",
      "setup_email": "Verify your school email address",
      "setup_email_body": "Something like sport@school.example. We send a link; clicking it proves you receive mail at the school.",
      "setup_colleagues": "Colleagues join the same way",
      "setup_colleagues_body": "Each verifies their own school email.",
      "setup_run": "Load fixtures and give colleagues access",
      "setup_run_body": "Paste the term's fixture list, build your events and give colleagues access for a sport, a team or an event.",
      "free_note": "Free for schools and clubs. You need the email address your school gave you; a Gmail-type address won't do.",
      "pending_heading": "Registering {school}",
      "pending_found": "School found",
      "pending_click": "Click the link in your school inbox",
      "pending_click_body": "We sent it to {address}. It works once and not for long.",
      "pending_role": "Your name and role",
      "pending_role_body": "The last step, on the page the link opens.",
      "pending_resend": "Send the link again",
      "yours_heading": "Your schools",
      "yours_meta": "Administrator",
      "yours_administrators": "Administrators",
      "lost_more": "More"
    },
    "school_desk": {
      "title": "School administrator cases",
      "heading": "School administrators: open cases",
      "intro": "Schools whose administrators need a decision: an even split between email domains, a majority that would end sitting administrators' roles, an address that doesn't look like the school's, or a review you opened. Nobody loses the role until you decide. Every decision is audited.",
      "kind": "School administrators · tie",
      "kind_lookalike": "School administrators · address check",
      "case_heading": "{school}: administrators tied between email domains",
      "case_heading_lookalike": "{school}: an administrator's address doesn't look like the school's",
      "opened": "Opened {date}",
      "domain_evidence": "@{domain} · administrators: {administrators, number} · first of them joined {date} · approvals made: {approvals, number}",
      "administrators_label": "Administrators in this case",
      "administrator_evidence": "{name} · {role} · @{domain} · joined {date} · {standing}",
      "standing": {
        "live": "Active",
        "outvoted": "Outvoted",
        "suspended": "Suspended",
        "ended": "Ended"
      },
      "decide_legend": "Which is the school's address?",
      "domain_choice": "@{domain}",
      "domain_choice_help": "Administrators on the other addresses lose the role.",
      "note_label": "Note for the audit record",
      "decide_submit": "Decide",
      "end_legend": "Or end one administrator's role",
      "end_choice": "{name} · @{domain}",
      "end_choice_help": "Only this person loses the role.",
      "end_submit": "End this role",
      "dismiss_submit": "Dismiss",
      "decided": "Decided. Administrators on the other addresses no longer have the role.",
      "ended": "Done. That administrator no longer has the role.",
      "dismissed": "Dismissed. Nothing changed.",
      "refused_recused": "This case involves you, so another moderator decides it.",
      "refused_already": "This case was already decided.",
      "refused_domain": "Choose one of this case's addresses.",
      "refused_administrator": "Choose one of this case's administrators.",
      "empty_heading": "No open cases",
      "empty_body": "Every school's administrators are settled.",
      "truncated": "More cases are waiting. Decide these to see the rest.",
      "forbidden": "This desk is for Live Youth Scores staff.",
      "kind_contested": "School administrators · contested",
      "kind_review": "School administrators · review",
      "kind_second_domain": "School administrators · second address",
      "case_heading_contested": "{school}: a majority would end sitting administrators' roles",
      "case_heading_review": "{school}: review opened by staff",
      "case_heading_second_domain": "{school}: an administrator joined with a second address",
      "open_approvals": "· approvals still in force: {approvals, number}",
      "revoke_legend": "Which address is this case about?",
      "grants_legend": "Or end the approvals a former administrator gave",
      "grants_choice_help": "Only the approvals they gave at this school end.",
      "grants_submit": "End their approvals",
      "recompute_submit": "Count again",
      "recompute_help": "Count again decides the school's address afresh from its current administrators.",
      "revoke_submit": "Withdraw this address",
      "revoke_help": "Withdraw this address: nobody using it can join or stay an administrator at this school.",
      "recomputed": "Done. The school's address was decided again from its current administrators.",
      "domain_revoked": "Done. That address no longer makes anyone an administrator here.",
      "grants_ended": "Done. Their approvals at this school have ended.",
      "case_opened": "Review opened. It's in the list below.",
      "refused_case_open": "This school already has an open case. Decide it below.",
      "refused_school": "No school with that ID, or its review isn't yours to open.",
      "open_heading": "Open a review",
      "open_body": "Look at a school's administrators again, for example after a suspension or an erasure.",
      "open_school_label": "School ID",
      "open_school_help": "The ID at the end of the school's page address.",
      "open_submit": "Open review",
      "problem": {
        "note": "Write a note for the audit record.",
        "decision": "Choose an address or an administrator, or dismiss the case.",
        "school": "Enter the school's ID."
      }
    },
    "lens": {
      "score": {
        "side": "{side} {score}",
        "side_separator": ", ",
        "unavailable": "Scores couldn't be loaded just now. Open a match to see its score.",
        "add_jersey": "Add jersey",
        "change_jersey": "Change jersey",
        "current_jersey": "(now No. {number})",
        "own_unavailable": "Your earlier scores can't take a jersey just now."
      },
      "item": {
        "team_only": "Team only"
      },
      "live_now": "Live now: {count}",
      "later_today": "Later today: {count}",
      "list_truncated": "There's more than fits here.",
      "home": {
        "playing_today": "Playing today",
        "nobody_plays": "Nobody in your house plays today.",
        "watch": "Watch",
        "waiting": "Waiting for you",
        "coming_up": "Coming up",
        "everything_you_follow": "Everything you follow",
        "live_near": "Live near you",
        "all_venues": "All venues",
        "show_live_near": "Show what's live near me",
        "live_near_help": "Share your location once to see which grounds near you have matches on now.",
        "live_near_empty_title": "Nothing's being scored near you right now",
        "live_near_empty_body": "Search a school or ground, or follow a team so you're told when they play.",
        "nothing_linked_title": "Nothing's linked to you yet",
        "nothing_linked_body": "Follow your child's school or team to see their fixtures here, or link your child to answer for them.",
        "follow_a_team": "Follow a team",
        "link_my_child": "Link my child"
      },
      "pending": {
        "due": "Answer by {date}.",
        "coach_claim_vote": {
          "kind": "Coach verification",
          "title": "A coach has claimed your child's team",
          "body": "Tell us whether it's really them.",
          "action": "Answer"
        },
        "internal_game_review": {
          "kind": "Practice game",
          "title": "A practice game result needs your answer",
          "body": "Check the result recorded for your child.",
          "action": "Review"
        },
        "child_confirmation": {
          "kind": "Parent or guardian",
          "title": "Someone says they're your parent or guardian",
          "body": "Confirm it only if it's true.",
          "action": "Answer"
        },
        "guardian_invite": {
          "kind": "Family invitation",
          "title": "You've been invited to join a child's family",
          "body": "It appears in your household once it's confirmed.",
          "action": "See your household"
        }
      },
      "events": {
        "item_count": "In the programme: {count}",
        "title": "Events",
        "description": "Derby days, festivals, galas and tournaments with a published programme, near you or at a ground.",
        "lede": "Derby days, festivals, galas and tournaments with a published programme.",
        "at_venue": "At this ground",
        "followed": "Events you follow",
        "near_you": "Near you",
        "near_me": "Show events near me",
        "near_help": "Share your location once to see the events at grounds near you.",
        "none_at_venue": "No events are published at this ground yet.",
        "none_followed": "None of the schools and teams you follow has an event coming up.",
        "none_near": "No events near you right now.",
        "load_error": "Events couldn't be loaded",
        "more": "More events",
        "sign_in": "Sign in to see the events of the schools and teams you follow first.",
        "single_matches_title": "Looking for one match?",
        "single_matches_body": "Single matches don't need an event: find them by ground."
      },
      "venue": {
        "coming_up_here": "Coming up here",
        "upcoming_unavailable": "The next days at this ground couldn't be loaded just now.",
        "nothing_upcoming": "Nothing else is scheduled here this week yet.",
        "events_here": "Events at this ground"
      },
      "discover": {
        "counts_unavailable": "What's on now couldn't be loaded."
      },
      "event": {
        "tab_live": "Live",
        "tab_results": "Results",
        "live_heading": "Being played now",
        "results_heading": "Results",
        "live_empty": "Nothing is being played right now",
        "results_empty": "No results yet",
        "see_programme": "The Programme tab shows everything that's scheduled.",
        "host_page": "{host}: teams and results"
      },
      "school": {
        "description": "{school}: fixtures, live scores, results and teams.",
        "description_locality": "{school}, {locality}: fixtures, live scores, results and teams.",
        "coming_up": "Coming up",
        "nothing_upcoming": "Nothing is scheduled yet.",
        "recent_results": "Recent results",
        "no_results": "No results yet this season.",
        "teams": "Teams",
        "no_teams": "No teams are listed for this season yet.",
        "not_found_title": "We can't find that school",
        "not_found_body": "The link may be old. Search for the school or its ground instead.",
        "load_error": "This school's page couldn't be loaded"
      },
      "team": {
        "title": "{team} · {school}",
        "description": "{team}, {school}, {season}: fixtures, live scores and results.",
        "coach_profile": "Coach profile",
        "coach_this_team": "Coach this team?",
        "fixtures": "Fixtures and results",
        "record": "Won {won} · Drawn {drawn} · Lost {lost}",
        "no_fixtures": "No public fixtures yet this season.",
        "recent_results": "Recent results",
        "squad": "Squad",
        "no_shirts": "No shirt numbers have been recorded on this team's matches yet.",
        "shirts_note": "Shirt numbers only: the team page never names a player.",
        "not_found_title": "We can't find that team",
        "not_found_body": "The link may be from another season. Look the team up on its school's page.",
        "load_error": "This team's page couldn't be loaded"
      },
      "coach": {
        "standing": {
          "claim_pending": "Claimed: waiting for the squad's families",
          "families_confirmed": "The squad's families confirmed you",
          "ratified": "Your school signed you off",
          "team_manager": "Team manager"
        },
        "public_page": "Team page",
        "guardian_task_title": "Some players aren't linked to a parent yet",
        "guardian_task_body": "Their families don't get your notices until they are.",
        "guardian_task_action": "See who",
        "post_notice": "Post a notice",
        "next_fixtures": "Next fixtures",
        "this_week": "Matches this week: {count}",
        "no_fixtures": "No public fixtures coming up.",
        "team_pages": "{team} pages",
        "your_standing": "Your standing",
        "pending_body": "There's nothing you need to do. The team's pages open as your claim goes through.",
        "see_claim": "See your claim",
        "lede_one": "Your team this season.",
        "lede_many": "Your teams this season.",
        "claim_another": "Claim another team"
      },
      "org": {
        "which_school": "Which school",
        "lede": "What needs you, what's coming up, and your school's tools.",
        "public_page": "Public page",
        "kpi_approvals": "approvals waiting",
        "kpi_upcoming": "matches coming up",
        "kpi_teams": "teams this season",
        "kpi_fields": "fields to confirm",
        "waiting": "Waiting for a decision",
        "all_approvals": "All approvals",
        "kpi_teams_listed": "teams"
      },
      "approvals": {
        "title": "Approvals",
        "lede": "Decisions only your school can make. Each one opens the page where it's made.",
        "filter_label": "Show approvals of one kind",
        "filter": {
          "all": "All: {count}",
          "guardian_claim": "Guardians: {count}",
          "coach_ratification": "Coaches: {count}",
          "hub_report": "Reports: {count}",
          "provisional_surface": "Fields: {count}"
        },
        "kind": {
          "guardian_claim": "Guardian link",
          "coach_ratification": "Coach ratification",
          "hub_report": "Reported notice",
          "provisional_surface": "Playing field"
        },
        "subject": {
          "guardian_claim": "A parent asked to be linked to a pupil",
          "coach_ratification": "A coach is ready for your sign-off",
          "hub_report": "A team notice was reported",
          "provisional_surface": "A field was added at your ground"
        },
        "action": {
          "coach_ratification": "Review the coach",
          "hub_report": "Review the notice"
        },
        "arrived": "Arrived {date}",
        "no_page_yet": "This decision can't be made on the website yet.",
        "empty": "Nothing is waiting for a decision",
        "empty_body": "New requests appear here as they arrive.",
        "more": "More approvals",
        "no_school_title": "No school to approve for",
        "no_school_body": "Approvals appear here for a school where you hold staff authority."
      },
      "grants": {
        "heading": "Who holds authority at {school}",
        "empty": "Nobody holds authority here yet.",
        "col": {
          "kind": "Authority",
          "scope": "Covers",
          "holder": "Account ID",
          "dates": "Valid",
          "state": "State"
        },
        "kind": {
          "delegation": "Staff authority",
          "moderator": "Match-day scoring authority",
          "team_manager": "Team manager",
          "event_organizer": "Event organiser"
        },
        "state": {
          "live": "Active",
          "suspended": "Suspended",
          "scheduled": "Starts later"
        },
        "scope": {
          "organisation": "The whole school",
          "org_sport": "One sport",
          "team": "One team",
          "team_sport_season": "One team, one season",
          "event": "One event",
          "org_events": "The school's events"
        },
        "open_scope": "Open",
        "you": "You",
        "from": "From {from}",
        "between": "{from} to {to}",
        "more": "More"
      }
    },
    "uat_following": {
      "search_help": "Search for a school or club, then choose it to see its teams and matches. You can follow from anywhere; location is not needed.",
      "school_name": "School or club name",
      "search": "Find schools and teams",
      "remote_heading": "Following from home?",
      "no_schools": "No schools or clubs match that name. Try another name or spelling.",
      "quiet_help": "Choose local times in your account timezone: {timezone}. Quiet hours pause browser notifications, including overnight.",
      "quiet_on": "Quiet hours: {start} to {end}",
      "quiet_start": "Start time",
      "quiet_end": "End time",
      "save_match": "Save this match",
      "unavailable": "Updates are not available for this source. Community-added schools, teams and venues may be usable for matches before notification following is available. You can still watch and save public matches.",
      "teams_heading": "Choose a team or follow this school",
      "view_school": "View school matches",
      "no_teams": "No teams are listed for this school yet. You can view its public matches or find a match by venue."
    },
    "uat_notify": {
      "follow_saved": "Saved. From now on, the updates you ticked reach you.",
      "follow_started": "You’re now following {name}. From now on, the updates you ticked reach you.",
      "defaults_saved": "Saved. Sources you start following from now on begin with these choices.",
      "empty_help": "Updates appear here when “In the app” is ticked for a team, school or match you follow.",
      "zone_country_group": "Your country",
      "zone_all_group": "All time zones",
      "zone_unrenderable_heading": "Choose your time zone",
      "zone_unrenderable": "The time zone saved on your account can’t be used to show times. Choose your time zone again on your account page, then come back.",
      "zone_fix": "Open your account"
    },
    "uat_school": {
      "claim_seasons_help": "Only registered team seasons whose claim window is open appear here. Ask a school administrator to adopt a community-added team, then check which season it was placed in. A match outside that season can still be followed and scored without a coach claim.",
      "find_matches": "Find matches",
      "review_adopted_season": "Review the adopted season",
      "adoption_season_help": "Adoption chooses a season automatically from the team’s first match. It does not move later matches into that season or open coach claims outside its claim window.",
      "adopted_season_help": "This is the season selected when the team was adopted. If it has ended, it may not appear among current school teams or coach claims. You can still open its matches. Ask the school administrator about the next registered season.",
      "season_matches": "Open this season and its matches",
      "registered_school_required": "Event organising and Team Hubs require a registered school. A community-added school first needs an administrator to verify a genuine school email address. A platform staff attestation or a role grant alone does not register the school.",
      "hub_prerequisites": "A Team Hub needs a registered school, a current registered team season, and your eligible team role or family link. A role grant for a community-added school alone does not make its Hub available.",
      "delegation_authority_required": "Only a school’s current administrators can manage its roles here. Open School to register with your school email or check your administrator standing.",
      "school_label": "School",
      "local_time_note": "Dates and times use your account time zone: {timeZone}.",
      "recipients_help": "Choose a colleague already known to this school. To add another colleague, ask them to register with their genuine school email first.",
      "colleague_label": "Colleague",
      "no_colleagues": "No eligible colleagues are available for this school yet.",
      "grant_label": "Role",
      "no_available_roles": "No roles on this page can be changed with this action.",
      "staff_tools": "Live Youth Scores staff tools",
      "staff_tools_help": "These controls are for platform staff handling a reviewed request. Use the exact account, school and authority references from that request. Staff authority is checked when you submit.",
      "colleague_visibility_required": "Colleague names are available here after you register with a genuine school email. Open School to check your administrator standing before granting a role. Existing grants can still be reviewed below.",
      "ambiguous_colleagues": "Some colleagues have the same visible details. Ask the school office to check the right person before granting a role."
    },
    "uat_household": {
      "home_org_deferred": "Home organisation declarations are not available yet. You can watch, follow and report scores without one. Declaring a community school does not grant public naming rights.",
      "phone_signup": "A mobile number is required to register. Include your country code, for example +27 82 123 4567. Email verifies this signup; your mobile number remains unverified.",
      "phone_account": "Registration collects a mobile number. You can watch public scores without registering, and following does not require mobile verification.",
      "career_off": "Career profiles and career-consent controls are not available during testing. Your child’s profile stays private. The privacy page lets you request, view or erase personal data; it does not enable a career profile.",
      "privacy_controls": "Open personal data controls",
      "no_linked_today": "No matches are linked to your household today. This does not mean your children have no matches.",
      "choose_match": "Choose a match",
      "saved_match": "Saved match",
      "saved_placeholder": "Choose from your saved matches",
      "open_shirts": "Choose a shirt",
      "find_match": "Find a match",
      "match_help": "Choose a saved match, or find a match and open its shirt list to link it privately to your child.",
      "match_url": "Or paste a match link",
      "match_url_help": "Use a match link from this site. You do not need a Shirt ID.",
      "shirt_label": "Shirt in this match",
      "shirt_empty": "No shirts have been recorded for this match yet. Once a scorer records a shirt, you can choose it here.",
      "shirt_more": "More shirts",
      "open_match": "View this match",
      "link_child": "Link a shirt privately to my child",
      "document_nav": "In this document",
      "document_help": "These sections show the personal-data inventory returned for your request. Labels describe stored fields; counts and handling rules may appear instead of personal content to protect other people.",
      "document_exact": "Exact JSON representation",
      "document_exact_help": "This is the complete, unchanged document. You can use your browser’s save function to keep a copy; a saved copy remains on your device after later erasure.",
      "document_empty": "No entries in this section.",
      "document_null": "No value recorded",
      "document_yes": "Yes",
      "document_no": "No",
      "unsupported_saved": "Saved individual results cannot be linked as team shirts. You can still view them in Following.",
      "match_unavailable": "This match’s shirts are unavailable. Choose another saved match or find a public fixture. Individual results do not have team shirts.",
      "shirt_page_unavailable": "This shirt page is no longer available. Choose the match again to load its current shirts."
    },
    "uat_rankings": {
      "country": "Country",
      "choose_country": "Choose a country",
      "country_unavailable": "Choose an available country",
      "initial_help": "Choose a country and date to look for published rankings. Some sports or dates may not have rankings yet.",
      "base_filters_help": "You can choose a country and date again. This starts with the default rankings and clears custom filters.",
      "show_default": "Show default rankings",
      "recovery_heading": "We couldn't open this page",
      "recovery_body": "You can open the page again or return to a familiar place.",
      "retry_page": "Open this page again",
      "go_back": "Go back",
      "home": "Home",
      "check_latest": "Check your last action",
      "check_latest_help": "If you just sent a score or created something, check the match or your workspace before submitting again. The action may have completed even though this page failed.",
      "find_match": "Find a match",
      "coach_workspace": "Coach workspace",
      "school_workspace": "School workspace",
      "no_countries": "No countries are available for rankings here yet. Please return later.",
      "unavailable": "Rankings are not available for this sport, country and date yet. Try another date or return later.",
      "unavailable_heading": "Rankings are not available yet",
      "recovery_status": "Page status: {status}"
    },
    "coach_claim_school": {
      "label": "Your school",
      "help": "Choose the school whose team you coach to see the teams you can claim.",
      "choose": "Choose a school",
      "show": "Show its teams",
      "none_for_school": "{school} has no team you can claim right now. Choose another school.",
      "too_many": "There are too many teams to list right now. Please try again later."
    },
    "upload_search": {
      "too_short": "Type at least {count} characters of the ground's name or town.",
      "no_results": "No ground matches “{query}”. Try part of its name or its town."
    },
    "upload_file": {
      "label": "Or choose the CSV file",
      "help": "Paste the list or choose its file, not both.",
      "content_required": "Paste the fixture list or choose its CSV file first.",
      "both": "You pasted a list and chose a file. Keep one of them and send again.",
      "too_large": "That file is too large. A fixture list can be up to {megabytes} MB.",
      "not_text": "That file couldn't be read as text. Save it from your spreadsheet as CSV and choose it again."
    }
  },
  "notifications": {
    "push": {
      "title": "Live Youth Scores update",
      "ranking_correction": "{count, plural, one {A ranking correction affected # followed source.} other {A ranking correction affected # followed sources.}}",
      "ranking_history_apply": "{count, plural, one {A historical ranking correction affected # followed source.} other {A historical ranking correction affected # followed sources.}}",
      "ranking_history_revert": "{count, plural, one {A historical ranking correction was reversed for # followed source.} other {A historical ranking correction was reversed for # followed sources.}}",
      "score_changed": "A followed score changed.",
      "match_started": "A followed match started.",
      "match_final": "A followed match finished.",
      "record_changed": "A followed record changed.",
      "programme_changed": "A followed programme changed.",
      "resource_changed": "The field or court for a followed match changed.",
      "slot_resolved": "The programme now identifies a match for a place you follow.",
      "team_broadcast": "A followed team published a notice.",
      "internal_game_review_quarantined": "A practice game result wasn’t confirmed and has been set aside.",
      "internal_game_review_confirmed": "A practice game result was confirmed.",
      "internal_programme_rank_drop": "A private squad programme result changed.",
      "internal_programme_rule_changed": "The rules for a private squad programme changed.",
      "internal_programme_history_applied": "A reviewed historical run was applied to a private squad programme.",
      "internal_programme_history_reverted": "A reviewed historical run was reversed for a private squad programme.",
      "team_lineup_selected": "You were selected for a match or event.",
      "team_lineup_not_selected": "A match or event selection update is available.",
      "team_trial_expired": "Your child's trial registration expired without a completed selection outcome.",
      "team_trial_not_selected": "Your child's trial outcome is available.",
      "team_trial_selected": "Your child was selected for the team."
    },
    "email": {
      "signup_code": {
        "subject": "Your Live Youth Scores sign-up code",
        "body": "Your Live Youth Scores code is {code}. It expires shortly. If you didn't ask for it, ignore this email — nothing has been created."
      },
      "login_code": {
        "subject": "Your Live Youth Scores sign-in code",
        "body": "Your Live Youth Scores code is {code}. It expires shortly. If you didn't ask for it, ignore this email — nobody has signed in."
      },
      "org_verification_code": {
        "subject": "Your Live Youth Scores organisation verification code",
        "body": "Your Live Youth Scores code for verifying {organisation} is {code}. It expires shortly. If you didn't ask for it, ignore this email — nothing has been verified."
      },
      "org_admin_link": {
        "subject": "Confirm your school email for {school}",
        "body": "Open this link to confirm your address at {school}: {link}\n\nIt expires shortly and works once. If you didn't ask, ignore this email."
      },
      "signup_link": {
        "subject": "Your Live Youth Scores sign-up link",
        "body": "Open this link to finish signing up: {link}\n\nThe link expires shortly and can be used once. If you did not request it, ignore this email."
      },
      "login_link": {
        "subject": "Your Live Youth Scores sign-in link",
        "body": "Open this link to sign in: {link}\n\nThe link expires shortly and can be used once. If you did not request it, ignore this email."
      },
      "email_change_link": {
        "subject": "Confirm your new Live Youth Scores email",
        "body": "Open this link while signed in to make this your Live Youth Scores email: {link}\n\nThe link expires shortly and can be used once. If you did not ask for this, ignore this email. Nothing changes."
      },
      "email_changed_notice": {
        "subject": "Your Live Youth Scores sign-in email was changed",
        "body": "The email address you use to sign in to Live Youth Scores was changed. If you made this change, there is nothing more to do. If this wasn’t you, contact us."
      }
    },
    "sms": {
      "phone_verification": {
        "body": "Your Live Youth Scores verification code is {code}."
      }
    }
  },
  "sport": {
    "resource_type": {
      "field": "Field",
      "pitch": "Pitch",
      "astro": "Astro",
      "court": "Court",
      "pool": "Pool",
      "track": "Track",
      "pit": "Pit",
      "ring": "Ring",
      "apparatus": "Apparatus",
      "tee": "Tee",
      "course": "Course"
    },
    "round": {
      "heat": "Heat",
      "semifinal": "Semifinal",
      "final": "Final",
      "timed_final": "Timed final"
    },
    "rugby_union": {
      "name": "Rugby union",
      "display_key": {
        "jersey": "Jersey number / position"
      },
      "detail": {
        "try_scorer": "Try scorer",
        "conversion_kicker": "Conversion kicker",
        "penalty_kicker": "Penalty kicker",
        "drop_goal_kicker": "Drop-goal kicker",
        "card": "Card",
        "substitution": "Substitution"
      },
      "event": {
        "try": "Try",
        "conversion": "Conversion",
        "penalty": "Penalty",
        "drop_goal": "Drop goal"
      },
      "format": {
        "halves_35": "Two 35-minute halves",
        "halves_40": "Two 40-minute halves",
        "bunnies_2x10": "Bunnies: two 10-minute halves",
        "u9_2x15": "Under-9: two 15-minute halves",
        "u10_2x15": "Under-10: two 15-minute halves",
        "u11_2x20": "Under-11: two 20-minute halves",
        "u12_2x20": "Under-12: two 20-minute halves",
        "u13_2x25": "Under-13: two 25-minute halves"
      },
      "period": {
        "half": "Half"
      },
      "competition": {
        "session_series": "Schools session series"
      }
    },
    "netball": {
      "name": "Netball",
      "display_key": {
        "bib": "Playing position"
      },
      "detail": {
        "assist": "Assist",
        "card": "Card",
        "scorer": "Scorer",
        "substitution": "Substitution"
      },
      "event": {
        "goal": "Goal"
      },
      "format": {
        "mini_4x8": "Mini-netball: four 8-minute quarters",
        "quarters_10": "Four 10-minute quarters",
        "quarters_15": "Four 15-minute quarters"
      },
      "period": {
        "quarter": "Quarter"
      }
    },
    "hockey": {
      "name": "Hockey",
      "display_key": {
        "jersey": "Jersey number / position"
      },
      "detail": {
        "scorer": "Scorer",
        "assist": "Assist",
        "card": "Card",
        "substitution": "Substitution"
      },
      "event": {
        "goal": "Goal"
      },
      "decider": {
        "shootout": "Shootout",
        "shootout_score": "Shootout score"
      },
      "format": {
        "quarters_15": "Four 15-minute quarters",
        "quarters_15_knockout": "Four 15-minute quarters — knockout",
        "halves_25": "Two 25-minute halves",
        "seven_a_side_halves_15": "7-a-side: two 15-minute halves"
      },
      "period": {
        "half": "Half",
        "quarter": "Quarter"
      }
    },
    "football": {
      "name": "Football",
      "display_key": {
        "jersey": "Jersey number / position"
      },
      "detail": {
        "scorer": "Scorer",
        "assist": "Assist",
        "own_goal": "Own goal",
        "penalty_goal": "Penalty goal",
        "card": "Card",
        "substitution": "Substitution"
      },
      "event": {
        "goal": "Goal"
      },
      "decider": {
        "penalty_shootout": "Penalty shootout",
        "penalty_score": "Penalties scored"
      },
      "format": {
        "halves_35": "Two 35-minute halves",
        "halves_45": "Two 45-minute halves",
        "halves_45_knockout": "Two 45-minute halves — knockout",
        "halves_40": "Two 40-minute halves",
        "small_sided_halves_20": "Small-sided: two 20-minute halves",
        "small_sided_halves_15": "Small-sided: two 15-minute halves"
      },
      "period": {
        "extra_time": "Extra time",
        "half": "Half"
      }
    },
    "waterpolo": {
      "name": "Water polo",
      "display_key": {
        "jersey": "Cap number / position"
      },
      "detail": {
        "scorer": "Scorer",
        "assist": "Assist",
        "exclusion": "Exclusion",
        "substitution": "Substitution"
      },
      "event": {
        "goal": "Goal"
      },
      "format": {
        "quarters_8": "Four 8-minute quarters",
        "quarters_6": "Junior: four 6-minute quarters"
      },
      "period": {
        "quarter": "Quarter"
      }
    },
    "basketball": {
      "name": "Basketball",
      "display_key": {
        "jersey": "Jersey number / position"
      },
      "detail": {
        "scorer": "Scorer",
        "assist": "Assist",
        "foul": "Foul",
        "substitution": "Substitution"
      },
      "event": {
        "free_throw": "Free throw",
        "field_goal": "2-point field goal",
        "three_point_goal": "3-point field goal"
      },
      "format": {
        "quarters_10": "Four 10-minute quarters",
        "quarters_8": "Junior: four 8-minute quarters",
        "quarters_6": "Junior: four 6-minute quarters"
      },
      "period": {
        "quarter": "Quarter"
      }
    },
    "cricket": {
      "name": "Cricket",
      "event": {
        "run": "Run",
        "wicket": "Wicket",
        "pairs_wicket": "Pairs wicket (-5 runs)"
      },
      "period": {
        "innings": "Innings"
      },
      "format": {
        "t20": "Twenty20",
        "fifty_over": "50-over match",
        "two_innings_declaration": "Timed two-innings declaration match",
        "pairs_16_over": "Pairs cricket: 16 overs",
        "mini_soft_ball_8_over": "Mini soft-ball: 8 overs"
      },
      "display_key": {
        "batting_order": "Batting order"
      }
    },
    "tennis": {
      "name": "Tennis",
      "display_key": {
        "competitor_number": "Competitor number"
      },
      "period": {
        "set": "Set"
      },
      "format": {
        "best_of_3_match_tiebreak": "Best of 3 sets, match tiebreak decider",
        "best_of_3_full_sets": "Best of 3 full sets",
        "pro_set_8": "8-game pro set",
        "short_sets": "Short sets",
        "tiebreak_10": "10-point tiebreak"
      }
    },
    "squash": {
      "name": "Squash",
      "display_key": {
        "competitor_number": "Competitor number"
      },
      "period": {
        "set": "Game"
      },
      "format": {
        "par11_best_of_5": "PAR 11, best of 5",
        "par11_best_of_3": "PAR 11, best of 3",
        "par9_best_of_3": "Junior PAR 9, best of 3"
      }
    },
    "badminton": {
      "name": "Badminton",
      "display_key": {
        "competitor_number": "Competitor number"
      },
      "period": {
        "set": "Game"
      },
      "format": {
        "rally21_best_of_3": "Rally 21, best of 3",
        "rally21_best_of_1": "Rally 21, one game",
        "rally15_best_of_3": "Junior rally 15, best of 3"
      }
    },
    "athletics": {
      "name": "Athletics",
      "competition": {
        "schools_championships": "Schools athletics championships"
      },
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "timing_method": "Timing method",
        "wind_mps": "Wind (m/s)",
        "implement_mass_kg": "Implement mass (kg)"
      },
      "team_points": {
        "gala": "Inter-house gala points"
      },
      "discipline": {
        "sprint_100m": "100 m",
        "sprint_200m": "200 m",
        "sprint_400m": "400 m",
        "middle_800m": "800 m",
        "middle_1500m": "1 500 m",
        "hurdles_100m": "100 m hurdles",
        "relay_4x100m": "4 × 100 m relay",
        "long_jump": "Long jump",
        "high_jump": "High jump",
        "shot_put": "Shot put",
        "javelin": "Javelin"
      }
    },
    "swimming": {
      "name": "Swimming",
      "competition": {
        "schools_championships": "Schools swimming championships"
      },
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "pool_length": "Pool length",
        "timing_method": "Timing method"
      },
      "team_points": {
        "gala": "Inter-house gala points"
      },
      "discipline": {
        "freestyle_50m": "50 m freestyle",
        "freestyle_100m": "100 m freestyle",
        "freestyle_200m": "200 m freestyle",
        "backstroke_50m": "50 m backstroke",
        "backstroke_100m": "100 m backstroke",
        "breaststroke_50m": "50 m breaststroke",
        "breaststroke_100m": "100 m breaststroke",
        "butterfly_50m": "50 m butterfly",
        "medley_200m": "200 m individual medley",
        "relay_4x50m_freestyle": "4 × 50 m freestyle relay"
      }
    },
    "cross_country": {
      "name": "Cross-country",
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "course_surface": "Course surface"
      },
      "discipline": {
        "course_2km": "2 km course",
        "course_4km": "4 km course",
        "course_6km": "6 km course"
      }
    },
    "condition": {
      "timing": {
        "electronic": "Electronic",
        "hand": "Hand timed"
      },
      "pool": {
        "m25": "25 m",
        "m50": "50 m"
      },
      "course": {
        "grass": "Grass",
        "trail": "Trail"
      }
    },
    "golf": {
      "name": "Golf",
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "holes_completed": "Holes completed"
      },
      "round": {
        "round": "Round"
      },
      "discipline": {
        "stroke_play_18": "18-hole stroke play",
        "stroke_play_9": "9-hole stroke play"
      }
    },
    "equestrian": {
      "name": "Equestrian",
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "round_kind": "Round kind"
      },
      "round": {
        "standard": "Standard round",
        "jump_off": "Jump-off"
      },
      "discipline": {
        "showjumping": "Showjumping",
        "dressage": "Dressage",
        "eventing": "Eventing"
      }
    },
    "gymnastics": {
      "name": "Gymnastics",
      "format": {
        "performance": "Performance"
      },
      "display_key": {
        "entry_heat_lane": "Entry / heat / lane"
      },
      "condition": {
        "judging_panel": "Judging panel"
      },
      "panel": {
        "club": "Club panel",
        "qualified": "Qualified panel"
      },
      "discipline": {
        "vault": "Vault",
        "uneven_bars": "Uneven bars",
        "balance_beam": "Balance beam",
        "floor": "Floor",
        "pommel_horse": "Pommel horse",
        "rings": "Rings",
        "parallel_bars": "Parallel bars",
        "high_bar": "High bar"
      }
    }
  },
  "country": {
    "za": {
      "name": "South Africa",
      "tier": {
        "province": "Province",
        "district": "District",
        "region": "Region",
        "national": "National"
      },
      "age_group": {
        "u7": "U7",
        "u8": "U8",
        "u9": "U9",
        "u10": "U10",
        "u11": "U11",
        "u12": "U12",
        "u13": "U13",
        "u14": "U14",
        "u15": "U15",
        "u16": "U16",
        "u17": "U17",
        "u18": "U18",
        "u19": "U19",
        "open": "Open"
      },
      "season_calendar": {
        "school_winter": "School winter season",
        "school_summer": "School summer season"
      },
      "level": {
        "a": "A",
        "b": "B",
        "c": "C",
        "first": "1st team",
        "second": "2nd team",
        "third": "3rd team"
      },
      "gender": {
        "boys": "Boys",
        "girls": "Girls",
        "mixed": "Mixed",
        "open": "Open"
      }
    }
  },
  "ui.score.timeline.title": "Match timeline",
  "ui.score.timeline.empty": "No selected score updates yet.",
  "ui.score.timeline.unavailable": "The selected timeline is unavailable. The score above remains current.",
  "ui.score.timeline.changed": "The selected score or its details changed. Restart the timeline to see the current view.",
  "ui.score.timeline.incomplete": "Unit counts are unavailable because this history starts from a recorded score.",
  "ui.score.timeline.recorded_update": "Recorded update",
  "ui.score.timeline.target": "Player {number}",
  "ui.score.timeline.correction": "Correction · {value} {unit}",
  "ui.score.timeline.shirt": "Shirt {number}",
  "ui.score.timeline.running": "{home}–{away}",
  "ui.score.timeline.count": "{side}: {count} {unit}",
  "ui.score.timeline.read_failed": "The timeline could not be loaded. Try again.",
  "ui.score.timeline.restart": "Restart timeline",
  "ui.score.timeline.next": "Earlier updates",
  "ui.score.timeline.loading": "Loading earlier updates…",
  "ui.score.timeline.fact_score": "{side}: {value}",
  "ui.score.timeline.fact_runs": "{side} · innings {number}: {value} runs",
  "ui.score.timeline.fact_wickets": "{side} · innings {number}: {value} wickets",
  "ui.score.timeline.fact_overs": "{side} · innings {number}: {value} overs",
  "ui.score.timeline.fact_rubber": "Rubber {number}: {side}",
  "ui.score.timeline.fact_set": "{side} · set {number}: {value}",
  "ui.score.timeline.fact_games": "{side}: {value} games",
  "ui.score.timeline.fact_points": "{side}: {value, plural, one {# point} other {# points}}",
  "ui.score.timeline.fact_mark": "{value} {unit}",
  "ui.score.timeline.fact_place": "Place {value}",
  "ui.score.timeline.newest_first": "newest first",
  "ui.score.timeline.time": "Time",
  "ui.score.timeline.running_pair": "{first}–{second}",
  "ui.score.timeline.incident": "{unit} +{value}",
  "ui.score.timeline.side": "{side}:",
  "ui.score.clock.last_reported": "Last reported clock",
  "ui.score.clock.last_state": "Last reported as {state}",
  "ui.match_watch.surface_unconfirmed": "No confirmed field or court",
  "ui.match_creation.sport_unavailable": "{sport} — not yet available",
  "ui.uat_help.account_or_sign_in": "Account / sign in",
  "ui.uat_help.public_language_summary": "Read Help in another language",
  "ui.uat_help.guide_following": "Help with finding, saving and following matches",
  "ui.uat_help.guide_scoring": "Help with recording a score",
  "ui.uat_help.guide_sign_in": "Help with email sign-in",
  "ui.uat_help.guide_parent": "A parent’s guide to getting started",
  "ui.uat_help.guide_school": "Help with school registration, teams and roles",
  "ui.uat_help.guide_privacy": "Help with your private data",
  "ui.uat_help.school_registration_intro": "Register with your own eligible school email to manage a school account. Community-added schools can be used for matches before registration.",
  "ui.uat_help.school_registration_access": "Check your administrator status on School. Team tools and event organising also depend on the registered season and your role.",
  "ui.uat_help.school_registration_unavailable": "School registration is unavailable on this deployment. You can still find, watch, create and score supported public matches.",
  "ui.uat_help.guide_coaching": "Help with claiming your team"
}
