{
  "shareLinks": {
    "action": {
      "share": "Share",
      "share_form": "Share this form",
      "whatsapp": "WhatsApp",
      "email": "Email",
      "download_qr": "Download QR",
      "open": "Open link"
    },
    "link_label": "Link",
    "switch_label": "Link type",
    "qr_alt": "QR code for {{link}}",
    "media_title": "Photo",
    "registration_subtitle": "Registration form",
    "stats": "{{clicks}} clicks · {{shares}} shares",
    "option": {
      "short": "Short",
      "trusted": "Trusted",
      "trusted_hint": "On tormatch.com — for places that distrust short links",
      "tracked": "Tracked",
      "full": "Full link",
      "other": "Link"
    },
    "secret": {
      "generic": "Anyone with this link can use it — share it only with the people it is meant for.",
      "team_signup": "Anyone with this link can join the team — share it only with your players.",
      "invite": "Anyone with this link can accept the invitation — share it only with the person you invited.",
      "screen": "Anyone with this link can open this screen — share it only with the people setting up the TVs."
    },
    "upsell": {
      "cta": "Upgrade",
      "frozen_cta": "Move it here",
      "reserve": "Reserve your own short link.",
      "upgrade_to": "Upgrade to {{tier}}."
    },
    "vanity": {
      "title": "Your link",
      "desc": "A short address of your own for posters, flyers and the announcer. It always opens your newest edition.",
      "handle_label": "Your address",
      "checking": "Checking…",
      "status": {
        "available": "Available",
        "yours": "Already yours",
        "taken": "Taken — try another name",
        "reserved": "Reserved — try another name",
        "too_short": "Too short — use at least {{min}} characters",
        "too_long": "Too long — use at most {{max}} characters",
        "invalid": "Use letters, numbers and dashes only",
        "numeric": "Add at least one letter"
      },
      "preview": "Will become",
      "saved": "Your link is saved",
      "save_failed": "Couldn't save your link",
      "cooldown": "You can change it again on {{date}} (once every {{days}} days).",
      "cooldown_error": "You can change your link again on {{date}}.",
      "grace": "Free to change until {{date}}: an unused old name is simply released.",
      "change_hint": "If you change it, the old link keeps working as a redirect. One change every {{days}} days.",
      "claim_hint": "Pick a name and save to claim it.",
      "frozen_title": "Your link opens an earlier edition",
      "frozen_body": "{{handle}} stays on the last edition whose plan includes it. Upgrade this edition to move it here.",
      "locked_no_purchase": "Your own short link is part of {{tier}}. Ask the tournament owner to upgrade.",
      "aliases_title": "Old links (still redirect here)",
      "alias_meta": "{{clicks}} clicks · released on {{date}} if unused"
    },
    "stats_card": {
      "empty_title": "No shared links yet",
      "empty_desc": "When someone shares this tournament, a match or an invite, the link shows up here with its clicks.",
      "title": "Shared links",
      "desc": "Every tormat.ch link of this tournament and how often it is opened. Link previews are not counted.",
      "clicks": "Clicks",
      "app_opens": "App opens",
      "shares": "Shares",
      "links": "Links",
      "col_link": "Link"
    },
    "kind": {
      "tournament": "Tournament",
      "match": "Match",
      "team": "Team",
      "official": "Official",
      "post": "News post",
      "media": "Photo",
      "venue": "Venue",
      "standings": "Standings",
      "registration": "Registration",
      "team_signup": "Team signup",
      "invite": "Invitation",
      "screen": "TV screen",
      "other": "Link"
    },
    "my_links": {
      "title": "My links",
      "desc": "The short links of your tournaments.",
      "status_alias": "old link, redirects"
    }
  },
  "widget_embed": {
    "unavailable_title": "This widget is currently unavailable",
    "unavailable_desc": "Please check back later.",
    "unavailable_powered_by": "Powered by {{brand}}",
    "type_teams": "Teams",
    "type_stage": "Standings",
    "type_schedule": "Schedule",
    "type_results": "Results",
    "live": "Live",
    "live_now": "Live now",
    "powered_by": "Powered by",
    "view_full_tournament": "View full tournament",
    "empty_teams": "No teams yet",
    "empty_teams_hint": "Teams appear here once they are registered.",
    "other_teams": "Other teams",
    "open_team": "Open {{name}}",
    "empty_stage": "Standings appear here once the format is published",
    "empty_stage_hint": "Group tables and brackets show up as soon as the organiser publishes the format.",
    "groups": "Groups",
    "all_groups": "All groups",
    "empty_schedule": "No upcoming matches yet",
    "empty_schedule_hint": "Matches appear here as soon as the schedule is published.",
    "next_matches_on": "Next matches on {{date}}",
    "empty_results": "No results yet",
    "empty_results_hint": "Results appear here as soon as matches are played.",
    "show_more": "Show more",
    "today": "Today",
    "tomorrow": "Tomorrow",
    "yesterday": "Yesterday",
    "time_tbc": "Time to be confirmed",
    "no_field": "No field assigned",
    "upcoming": "Upcoming",
    "winner_of": "Winner of {{name}}",
    "loser_of": "Loser of {{name}}",
    "position_of": "#{{pos}} of {{name}}",
    "tbd": "TBD",
    "vs": "vs",
    "pens": "Pens"
  },
  "widgets": {
    "embed_widget": "Embed widget",
    "embed_done": "Done",
    "embed_saved_intro": "{{name}} is saved. Paste this code on your website where the widget should appear.",
    "feature_off_title": "Widgets is turned off",
    "feature_off_desc": "Your embedded widgets show “unavailable” on your website until you turn Widgets back on.",
    "feature_off_cta": "Turn on Widgets",
    "tab_overview": "Overview",
    "tab_stats": "Statistics",
    "new_widget": "New widget",
    "limit_reached": "You can have up to {{max}} widgets per tournament.",
    "edit": "Edit",
    "copy_embed": "Copy embed code",
    "copy_embed_short": "Embed code",
    "copy_embed_hint": "Copy the code to paste on your website",
    "embed_copied": "Embed code copied",
    "copy_failed": "Couldn’t copy. Select the code and copy it manually.",
    "open_preview": "Open preview",
    "duplicate": "Duplicate",
    "duplicated": "Widget duplicated",
    "pause": "Pause",
    "resume": "Resume",
    "paused_toast": "Widget paused. Websites now show “currently unavailable”.",
    "resumed": "Widget is live again",
    "delete": "Delete",
    "delete_title": "Delete this widget?",
    "delete_message": "“{{name}}” stops working on every website that embeds it. This can’t be undone.",
    "delete_confirm": "Delete widget",
    "deleted": "Widget deleted",
    "more_actions": "More actions",
    "card_stats": "{{views}} views · 30 days · {{hosts}} websites",
    "card_not_embedded": "Not embedded yet",
    "status_active": "Active",
    "status_paused": "Paused",
    "status_disabled": "Disabled by TorMatch",
    "status_new": "Not saved yet",
    "conflict_list": "This widget was changed elsewhere. The list has been refreshed.",
    "error_load": "Couldn’t load your widgets.",
    "error_generic": "Something went wrong. Please try again.",
    "error_save": "Couldn’t save the widget. Please try again.",
    "error_not_found": "That widget doesn’t exist any more.",
    "empty_title": "Put your tournament on your website",
    "empty_desc": "Widgets are live blocks you paste into your club or sponsor website. They update by themselves while the tournament runs.",
    "create_first": "Create your first widget",
    "empty_foot": "Takes about a minute. Nothing goes live until you paste the code.",
    "type_teams": "Teams",
    "type_stage": "Standings & bracket",
    "type_schedule": "Schedule",
    "type_results": "Results",
    "type_teams_desc": "Every team with its logo; tap one for its matches and squad.",
    "type_stage_desc": "Group tables or the knockout bracket; follows the current stage.",
    "type_schedule_desc": "Upcoming and live matches, grouped by day.",
    "type_results_desc": "Final scores, newest first.",
    "picker_title": "What do you want to show?",
    "picker_subtitle": "You can fine-tune it on the next screen.",
    "needs_scheduling": "Needs Scheduling",
    "change_type_title": "Change widget type",
    "back_to_overview": "Back to widgets",
    "name_label": "Widget name",
    "active_label": "Live",
    "active_hint": "Off = websites show “currently unavailable” instead of the widget.",
    "admin_disabled_hint": "Disabled by TorMatch. Contact support to re-enable it.",
    "admin_disabled_banner": "TorMatch has disabled this widget. Websites show “currently unavailable” until support re-enables it.",
    "save": "Save",
    "save_create": "Save widget",
    "saved_state": "All changes saved",
    "saved": "Widget saved. Every site that embeds it shows the update.",
    "created": "Widget created. Copy the code below to put it on your website.",
    "reloaded": "Loaded the latest version",
    "conflict_title": "Someone else changed this widget",
    "conflict_message": "{{name}} saved a newer version while you were editing. Load theirs, or keep editing.",
    "conflict_someone": "Another organiser",
    "conflict_reload": "Load latest version",
    "conflict_keep": "Keep editing",
    "conflict_overwrite_title": "Use my version instead",
    "conflict_overwrite_desc": "Replaces their changes with yours.",
    "conflict_overwrite": "Overwrite",
    "conflict_toggle": "This widget was changed elsewhere. Reload the page to see the latest version.",
    "leave_title": "Leave without saving?",
    "leave_message": "Your changes to this widget will be lost.",
    "leave_confirm": "Discard changes",
    "leave_stay": "Stay",
    "mobile_settings": "Settings",
    "mobile_preview": "Preview",
    "section_content": "Content",
    "section_content_desc": "What the widget shows",
    "section_display": "Display",
    "section_display_desc": "Title, grouping and live updates",
    "section_appearance": "Appearance",
    "section_appearance_desc": "Theme, background, colour and language",
    "section_embed": "Put it on your website",
    "section_embed_desc": "Copy the code and paste it into your site",
    "embed_disabled_hint": "Save the widget first to get its code",
    "change_type": "Change",
    "type_locked_hint": "The type is fixed once a widget is saved. Create a new widget for a different type.",
    "change_type_confirm_title": "Change the widget type?",
    "change_type_confirm_message": "Your content and display choices are reset to the new type’s defaults. Appearance stays as it is.",
    "change_type_confirm": "Change type",
    "needs_scheduling_note": "This widget shows matches and stages, which need the Scheduling feature. Turn it on in Features.",
    "no_stages_note": "This division has no format yet. Standings appear here once you set one up.",
    "no_stages_link": "Set up the format",
    "no_filters_needed": "Nothing to choose here: the widget shows everything in your tournament.",
    "filter_all": "All",
    "filter_division": "Division",
    "filter_division_stage_hint": "Standings show one division at a time.",
    "filter_stage": "Stage",
    "filter_stage_current": "Follow the current stage",
    "filter_stage_current_hint": "Moves from the group tables to the bracket by itself.",
    "filter_stage_all": "All stages",
    "filter_groups": "Groups",
    "filter_venue": "Venue",
    "filter_field": "Field",
    "filter_team": "Team",
    "filter_team_all": "All teams",
    "filter_team_hint": "Pick a team to show only its matches, e.g. on that club’s own website.",
    "filter_team_highlight": "Highlight a team",
    "filter_team_none_highlight": "No highlight",
    "filter_window": "Period",
    "window_all_schedule": "All upcoming",
    "window_all_results": "All",
    "window_today": "Today",
    "window_next_7d": "Next 7 days",
    "window_last_7d": "Last 7 days",
    "more_filters": "More filters",
    "search_teams": "Search teams…",
    "no_matches": "No matches",
    "stale_division": "{{count}} selected division no longer exists",
    "stale_stage": "The selected stage no longer exists; the widget follows the current stage",
    "stale_groups": "{{count}} selected group no longer exists",
    "stale_venue": "{{count}} selected venue no longer exists",
    "stale_field": "{{count}} selected field no longer exists",
    "stale_team": "The selected team no longer exists",
    "stale_clean": "Clean up",
    "show_header": "Show header",
    "show_header_desc": "Tournament logo and a title above the widget.",
    "title_label": "Title",
    "title_hint": "Leave empty to use the suggested title.",
    "group_by": "Group matches by",
    "group_by_date": "Day",
    "group_by_field": "Field",
    "group_by_none": "None",
    "limit": "Matches shown",
    "limit_all": "All",
    "limit_n": "First {{n}}",
    "limit_hint": "Visitors can tap “Show more” for the rest.",
    "standings_mode": "Standings columns",
    "standings_simple": "Simple",
    "standings_extended": "Extended",
    "group_by_division": "Group by division",
    "group_by_division_desc": "A heading per division above its teams.",
    "live_updates": "Live updates",
    "live_updates_desc": "Scores change on the website as they happen, without reloading.",
    "theme": "Theme",
    "theme_light": "Light",
    "theme_dark": "Dark",
    "theme_auto": "Auto",
    "theme_auto_hint": "Matches the website it’s placed on: dark on dark sites, light on light ones.",
    "background": "Background",
    "background_transparent": "Transparent",
    "background_solid": "Solid",
    "background_transparent_hint": "Sits directly on your page, blending in with your site.",
    "background_solid_hint": "Shown on its own card, readable on any background.",
    "accent": "Accent colour",
    "accent_tournament": "Tournament colour",
    "accent_custom": "Custom colour",
    "accent_hint": "Used for highlights, live badges and links.",
    "language": "Language",
    "language_auto": "Visitor’s language",
    "embed_tab_script": "Script (recommended)",
    "embed_tab_iframe": "iframe",
    "embed_tab_link": "Direct link",
    "embed_script_hint": "Adjusts its height automatically and matches your site’s theme. Paste it where the widget should appear.",
    "embed_iframe_hint": "For site builders that remove scripts. Fixed height of 640 px with its own scrollbar.",
    "embed_link_hint": "A page with just the widget. Handy for sharing or a “view standings” button.",
    "iframe_title": "{{name}} — powered by TorMatch",
    "copy": "Copy code",
    "copied": "Copied",
    "embed_paused_note": "This widget is paused, so websites show “currently unavailable”. Resume it from the menu on its card in the Widgets overview.",
    "embed_disabled_note": "TorMatch has disabled this widget, so websites show “currently unavailable”.",
    "howto_title": "How to add it",
    "howto_wordpress_title": "WordPress",
    "howto_wordpress_body": "Edit the page, add a “Custom HTML” block where the widget should go, paste the code and update the page.",
    "howto_wix_title": "Wix",
    "howto_wix_body": "In the editor choose Add › Embed code › Embed HTML, paste the code, then drag the box to size. The iframe code works best here.",
    "howto_squarespace_title": "Squarespace",
    "howto_squarespace_body": "Edit the page, add a “Code” block, paste the code and save. Turn off “Display source” if it shows the code instead of the widget.",
    "detected_title": "Detected on",
    "detected_loading": "Checking…",
    "detected_empty": "Not detected yet — it appears here after the first visit.",
    "detected_seen": "Last seen {{date}}",
    "detected_other": "Other websites",
    "preview_devices": "Preview width",
    "preview_phone": "Phone",
    "preview_tablet": "Tablet",
    "preview_desktop": "Desktop",
    "preview_fit": "Fit",
    "preview_fit_hint": "Use all available width",
    "preview_resize": "Resize preview",
    "preview_drag_tip": "Drag the handle on the right to try any screen size. Double-click it to fit.",
    "preview_title": "Widget preview",
    "backdrop_light": "Light site",
    "backdrop_dark": "Dark site",
    "backdrop_checker": "Checker",
    "open_new_tab": "Open in new tab",
    "open_new_tab_hint": "Opens the saved version in a new tab",
    "contrast_warning": "A light, transparent widget is hard to read on a dark website. Choose Dark or Auto, or a solid background.",
    "preview_zoom_fit": "Fit the preview to the panel",
    "preview_zoom_actual": "Show at actual size"
  },
  "studio_page": {
    "tab_designs": "Designs",
    "tab_themes": "Themes",
    "new_visual": "New visual",
    "filter_type": "Type",
    "filter_all": "All types",
    "search": "Search designs",
    "select": "Select",
    "select_all": "Select all",
    "select_none": "Select none",
    "selected": "Selected",
    "select_one": "Select",
    "export_zip": "Export (ZIP)",
    "exporting": "Exporting {{done}}/{{total}}…",
    "no_match": "No designs match this filter.",
    "open": "Open",
    "export": "Export",
    "more_actions": "More actions",
    "duplicate": "Duplicate",
    "rename": "Rename",
    "delete": "Delete",
    "delete_confirm": "Delete",
    "delete_title": "Delete design?",
    "delete_message": "“{{name}}” will be deleted. Images you already exported are not affected.",
    "delete_many_title": "Delete designs?",
    "delete_many_message": "{{n}} designs will be deleted.",
    "deleted": "Design deleted",
    "deleted_many": "{{n}} designs deleted",
    "delete_partial": "{{n}} designs could not be deleted.",
    "duplicated": "Design duplicated",
    "rename_title": "Rename design",
    "name": "Name",
    "conflict": "Someone else changed this meanwhile — showing the latest version.",
    "error_load": "Could not load TorMatch Studio.",
    "exported": "{{n}} images exported",
    "export_partial": "Exported, except: {{names}}",
    "export_failed": "The export failed.",
    "updated": "Updated {{when}}",
    "updated_by": "Updated {{when}} by {{name}}",
    "empty_title": "Create your first visual",
    "empty_desc": "Branded images and PDFs of your matches, schedule, results, format and sponsors — in your tournament’s look, ready to share.",
    "create_first": "Create a visual",
    "empty_foot": "Designs you save in TorMatch Studio appear here — open them again any time with up-to-date data.",
    "picker_title": "What do you want to make?",
    "picker_subtitle": "Pick a kind of visual — you choose the template and size in the studio.",
    "module_desc": {
      "match": "Goals, half-time, full-time, match day and line-ups of one match.",
      "schedule": "Match days, timetables, and team, field and official schedules.",
      "results": "Standings, knockout results and final rankings.",
      "format": "Group draws, brackets and the tournament format.",
      "sponsors": "Your sponsors on a clean logo wall."
    },
    "themes": {
      "new_theme": "New theme",
      "lead": "The active theme is the look every new visual opens with, wherever you press TorMatch Studio.",
      "active": "Active",
      "active_hint": "New visuals open with this theme.",
      "is_active": "Active",
      "set_active": "Set active",
      "edit": "Edit",
      "rename_title": "Rename theme",
      "copy_name": "{{name}} (copy)",
      "delete_title": "Delete theme?",
      "delete_message": "“{{name}}” will be deleted. Designs that use it switch to the active theme.",
      "delete_active_message": "“{{name}}” is the active theme. After deleting it, new visuals use your tournament colours until you set another theme active.",
      "deleted": "Theme deleted",
      "duplicated": "Theme duplicated",
      "created": "“{{name}}” created",
      "create_failed": "The theme could not be created.",
      "activated": "“{{name}}” is now the active theme",
      "empty_title": "Give your visuals one look",
      "empty_desc": "A theme is your tournament’s style — colours, fonts and shapes. Set one active and every new visual opens with it.",
      "create_first": "Start from your colours",
      "empty_foot": "Or start from one of the looks above and make it yours in the studio.",
      "unavailable_title": "Themes are almost here",
      "unavailable_desc": "Themes are not available on this server yet. Your visuals keep using your tournament’s style in the meantime.",
      "new_title": "New theme",
      "new_subtitle": "Pick a starting point — you design the rest in the studio.",
      "create_and_design": "Create and design",
      "name": "Name",
      "name_placeholder": "e.g. Summer Cup 2026",
      "start_from": "Start from",
      "make_active": "Make this the active theme",
      "make_active_hint": "New visuals will open with it.",
      "tournament_colors": "Tournament colours"
    }
  },
  "visual_studio": {
    "bracket": {
      "block": "Bracket",
      "empty": "No knockout bracket in this division",
      "champion": "Champion",
      "third_place": "3rd place",
      "hint": {
        "no_mirror": "This bracket can't be mirrored, so it is shown left to right."
      },
      "opt": {
        "item": "Bracket",
        "item_hint": "Defaults to the main bracket of the division",
        "placements": "Show placement brackets",
        "use_theme": "Use theme bracket design",
        "use_theme_hint": "Turn off to style this bracket on its own",
        "design": "Bracket design",
        "preset": "Preset",
        "inherit": "From theme",
        "orientation": "Orientation",
        "card": "Match card",
        "connector": "Connector lines",
        "round_header": "Round headers",
        "logo": "Team logos",
        "byes": "Byes",
        "bronze": "3rd place match",
        "champion": "Champion",
        "champion_path": "Highlight champion's path"
      },
      "orientation": {
        "auto": "Automatic",
        "ltr": "Left to right",
        "rtl": "Right to left",
        "mirrored": "Mirrored",
        "ttb": "Top to bottom",
        "btt": "Bottom to top (pyramid)",
        "mirrored_vertical": "Mirrored vertical",
        "rounds_list": "Rounds list"
      },
      "card": {
        "box": "Box",
        "split": "Split tiles",
        "pill": "Pills",
        "line": "Printed lines",
        "stadium": "Stadium",
        "chamfer": "Chamfer"
      },
      "connector": {
        "fork": "Fork",
        "elbow": "Elbow",
        "rounded": "Rounded",
        "straight": "Straight",
        "curve": "Curve"
      },
      "round_header": {
        "none": "None",
        "text": "Text",
        "pill": "Pill",
        "band": "Band"
      },
      "logo": {
        "crest": "Crest",
        "initials": "Initials",
        "none": "None"
      },
      "byes": {
        "show": "Show",
        "ghost": "Faded",
        "hide": "Hide"
      },
      "bronze": {
        "below_final": "Below the final",
        "separate": "Separate",
        "hide": "Hide"
      },
      "champion_mode": {
        "none": "None",
        "card": "Card",
        "banner": "Banner"
      },
      "champion_path": {
        "on": "On",
        "off": "Off"
      },
      "preset": {
        "classic": {
          "label": "Classic",
          "description": "Clean cards with a fork connector — the app's look"
        },
        "print_lines": {
          "label": "Print lines",
          "description": "Names written on rules, like a printed wall chart"
        },
        "pill": {
          "label": "Pill",
          "description": "Rounded team pills with floating crests"
        },
        "stadium": {
          "label": "Stadium",
          "description": "Scoreboard cards with match strip, time and field"
        },
        "newsroom": {
          "label": "Newsroom",
          "description": "Editorial, text-first, thin rules and no logos"
        },
        "glass": {
          "label": "Glass",
          "description": "Soft translucent cards with flowing curves"
        },
        "esports": {
          "label": "Esports",
          "description": "Angled plates and bold winners, broadcast style"
        }
      }
    },
    "module": {
      "format": "Format",
      "results": "Results",
      "schedule": "Schedule",
      "sponsors": "Sponsors",
      "match": "Match"
    },
    "artboard": {
      "ig_post": "Instagram post",
      "ig_portrait": "Instagram portrait",
      "story": "Story",
      "landscape": "Landscape (16:9)",
      "x_post": "X / Facebook post",
      "a4_portrait": "A4 portrait",
      "a4_landscape": "A4 landscape",
      "a3_portrait": "A3 portrait",
      "a3_landscape": "A3 landscape",
      "letter_portrait": "Letter portrait",
      "letter_landscape": "Letter landscape"
    },
    "warn": {
      "block_empty": "This block has nothing to show for the selected content.",
      "block_error": "A block could not be drawn and was skipped.",
      "legibility": "Text is {{size}}{{unit}} at this size — hard to read.",
      "contrast": "Some text has low contrast against its background.",
      "overflow": "Some content does not fit on the page."
    },
    "data_stamp": "Updated {{when}}",
    "entry": {
      "label": "TorMatch Studio",
      "tooltip": {
        "format": "Create a branded image or PDF of the tournament format",
        "results": "Create a branded image or PDF of results and standings",
        "schedule": "Create a branded image or PDF of the match schedule",
        "sponsors": "Create a branded image or PDF of your sponsors"
      },
      "team": {
        "tooltip": "Create a schedule or results graphic for this team",
        "schedule": "Team schedule",
        "results": "Team results"
      },
      "official": {
        "tooltip": "Create a schedule or results graphic for this official",
        "schedule": "Official schedule",
        "results": "Officiated matches"
      },
      "officials": {
        "tooltip": "Create schedule graphics for your officials",
        "each": "Schedule per official",
        "sheet": "Assignment sheet"
      },
      "match": {
        "tooltip": "Create a graphic of this match",
        "goal": "Goal graphic",
        "goal_share": "Share this goal",
        "score": "Score update",
        "halftime": "Half-time",
        "fulltime": "Full-time",
        "preview": "Match day",
        "lineups": "Line-ups",
        "segment": "{{unit}} won",
        "break": "Break",
        "goal_noun": "{{noun}} graphic",
        "final": "Final"
      }
    },
    "slot": {
      "position_of": "{{position}} of {{name}}"
    },
    "export": {
      "title": "Export",
      "action": {
        "export": "Export",
        "exporting": "Exporting…",
        "download": "Download",
        "share": "Share",
        "download_again": "Download again"
      },
      "format": {
        "png": "PNG image",
        "jpg": "JPG image",
        "svg": "SVG (vector)",
        "pdf": "PDF",
        "zip_png": "ZIP of PNGs",
        "zip_svg": "ZIP of SVGs"
      },
      "scale": {
        "label": "Size",
        "value": "{{n}}×"
      },
      "pages": {
        "label": "Pages",
        "current": "Current page",
        "all": "All pages ({{count}})"
      },
      "option": {
        "transparent": "Transparent background",
        "transparent_hint": "PNG, SVG and PDF only. Pick a wordmark tone that suits where you'll place it.",
        "link_fonts": "Smaller file (link fonts)",
        "link_fonts_hint": "Fonts load from Google Fonts when the file is opened, so it needs an internet connection."
      },
      "progress": {
        "assets": "Loading images…",
        "fonts": "Embedding fonts…",
        "render": "Rendering page {{done}} of {{total}}…",
        "encode": "Encoding page {{done}} of {{total}}…",
        "package": "Packing ZIP…",
        "done": "Done"
      },
      "notice": {
        "image_failed": "{{count}} image(s) couldn't be loaded and were replaced by initials.",
        "font_failed": "Couldn't embed {{fonts}}, so a system font was used instead.",
        "scale_reduced": "Image size lowered to {{actual}}× to stay within this device's limit.",
        "dpi_reduced": "Print resolution lowered to {{dpi}} DPI to stay within this device's limit.",
        "transparent_ignored": "JPG can't be transparent, so a solid background was used.",
        "no_pages": "There's nothing to export: this design has no pages."
      },
      "done": {
        "downloaded": "Downloaded {{filename}}",
        "shared": "Shared"
      },
      "error": {
        "failed": "The export failed. Please try again."
      }
    },
    "shared": {
      "auto": "Auto",
      "n1": "1",
      "n2": "2",
      "n3": "3",
      "n4": "4",
      "n5": "5",
      "n6": "6",
      "align": {
        "start": "Left",
        "center": "Centre"
      },
      "header": {
        "label": "Header",
        "opt": {
          "layout": "Layout",
          "size": "Size",
          "title": "Title",
          "title_placeholder": "Default title",
          "subtitle": "Subtitle",
          "show": "Show",
          "show_logo": "Tournament logo",
          "show_name": "Tournament name",
          "show_division": "Division",
          "show_dates": "Dates",
          "show_location": "Location"
        },
        "layout": {
          "left": "Left",
          "center": "Centred",
          "split": "Split"
        },
        "size": {
          "compact": "Compact",
          "normal": "Normal",
          "large": "Large"
        }
      },
      "qr": {
        "label": "QR code",
        "empty": "The tournament has no public page yet.",
        "caption_default": "Live results",
        "opt": {
          "caption": "Caption",
          "show_url": "Show link",
          "layout": "Caption position",
          "size": "Size",
          "color": "Colour"
        },
        "layout": {
          "side": "Beside",
          "below": "Below"
        },
        "color": {
          "ink": "Ink",
          "accent": "Accent"
        }
      },
      "sponsors": {
        "label": "Sponsors",
        "empty": "No sponsors added to this tournament.",
        "title_default": "Partners",
        "opt": {
          "layout": "Layout",
          "tiles": "Logo tiles",
          "columns": "Columns",
          "tile_height": "Logo size",
          "show_title": "Show title",
          "title": "Title"
        },
        "layout": {
          "row": "Row",
          "grid": "Grid"
        },
        "tiles": {
          "card": "Tiles",
          "plain": "Plain"
        }
      },
      "note": {
        "label": "Note",
        "empty": "Type a text to show the note.",
        "placeholder": "e.g. Matches 2 × 10 min",
        "opt": {
          "text": "Text",
          "style": "Style",
          "align": "Alignment",
          "size": "Text size"
        },
        "style": {
          "plain": "Plain",
          "card": "Card",
          "accent": "Accent"
        }
      },
      "legend": {
        "label": "Legend",
        "empty": "Nobody advances from the groups shown, so there is nothing to explain.",
        "advance_to": "Advance to {{target}}",
        "advance": "Advance",
        "pool_named": "{{target}}: may still advance",
        "pool": "May still advance",
        "placement_named": "Play for {{target}}",
        "placement": "Placement matches",
        "out": "Eliminated",
        "opt": {
          "style": "Style",
          "align": "Alignment",
          "show_out": "Show “Eliminated”",
          "size": "Text size"
        },
        "style": {
          "plain": "Plain",
          "card": "Card"
        }
      },
      "stage_title": {
        "label": "Stage title",
        "empty": "No stage to title",
        "opt": {
          "text": "Title",
          "text_hint": "Leave empty to use the stage name.",
          "size": "Size",
          "align": "Alignment"
        }
      }
    },
    "format": {
      "places": "Places {{from}}–{{to}}",
      "edge": {
        "winners": "Winners",
        "top": "Top {{n}}",
        "place": "{{pos}} place",
        "range": "{{from}}–{{to}}",
        "best_of": "Best {{pos}} ({{take}} of {{size}})",
        "to_pool": "{{pos}} places",
        "losers": "{{round}} losers",
        "winners_of": "{{round}} winners"
      },
      "title": {
        "how_it_works": "How it works",
        "group_draw": "Group draw",
        "knockout": "Knockout stage",
        "poster": "Tournament format"
      },
      "journey": {
        "label": "How it works",
        "empty": "This division has no format yet.",
        "groups_n": "{{n}} groups",
        "swiss_n": "{{n}} Swiss pools",
        "meta_swiss": "{{teams}} teams · {{rounds}} rounds",
        "meta_groups": "{{teams}} teams each",
        "meta_group": "{{teams}} teams · {{matches}} matches",
        "meta_matches_each": "{{n}} matches per group",
        "meta_pool": "{{teams}} teams ranked · best {{take}} advance",
        "meta_pool_plain": "{{teams}} teams ranked across groups",
        "meta_bracket": "{{teams}} teams · {{rounds}} rounds",
        "round": {
          "final": "Final",
          "sf": "SF",
          "qf": "QF",
          "rn": "R{{n}}",
          "bronze": "3rd place"
        },
        "opt": {
          "direction": "Direction",
          "cluster": "Combine identical groups",
          "show_steps": "Numbered stages",
          "show_rounds": "Show rounds"
        },
        "direction": {
          "horizontal": "Across",
          "vertical": "Down"
        }
      },
      "groups": {
        "label": "Groups",
        "empty": "This division has no groups.",
        "from_position": "{{pos}} {{name}}",
        "pot_n": "Pot {{n}}",
        "team_n": "Team {{n}}",
        "teams_count": "{{n}} teams",
        "opt": {
          "items": "Groups",
          "columns": "Columns",
          "style": "Card style",
          "mode": "Content",
          "bands": "Qualification colours",
          "size": "Size",
          "crests": "Team crests",
          "show_count": "Team count",
          "show_numbers": "Show numbers"
        },
        "style": {
          "theme": "Theme",
          "table": "Table",
          "tiles": "Tiles",
          "list": "List"
        },
        "mode": {
          "format": "Placeholders",
          "draw": "Teams"
        },
        "bands": {
          "rows": "Rows",
          "strip": "Strip",
          "off": "Off"
        },
        "size": {
          "normal": "Normal",
          "large": "Large"
        }
      },
      "rules": {
        "label": "Rules",
        "empty": "No rules to show for this selection.",
        "title_default": "Rules",
        "win": "Win",
        "draw": "Draw",
        "loss": "Loss",
        "match": "Match",
        "pts": "pts",
        "tiebreakers": "Tiebreakers",
        "extra_time": "Extra time {{count}} × {{minutes}} min",
        "penalties": "Penalty shootout",
        "add_score": "Goals scored also count as points",
        "tb": {
          "score_difference": "Goal difference",
          "scores_for": "Goals scored",
          "scores_against": "Fewest goals conceded",
          "wins": "Wins",
          "head_to_head_points": "Head-to-head points",
          "head_to_head_score_diff": "Head-to-head goal difference",
          "head_to_head_scores_for": "Head-to-head goals scored",
          "segments_ratio": "Set ratio",
          "segments_difference": "Set difference",
          "inner_ratio": "Game / point ratio",
          "inner_difference": "Game / point difference"
        },
        "opt": {
          "style": "Style",
          "show_points": "Points",
          "show_tiebreakers": "Tiebreakers",
          "show_duration": "Match duration",
          "show_title": "Show title",
          "title": "Title",
          "layout": "Layout"
        },
        "layout": {
          "stacked": "Stacked",
          "strip": "Strip"
        },
        "style": {
          "card": "Card",
          "plain": "Plain"
        },
        "ot_win": "OT win",
        "ot_loss": "OT loss",
        "so_win": "SO win",
        "so_loss": "SO loss",
        "try_bonus": "+{{points}} for {{min}}+ {{type}}",
        "losing_bonus": "+{{points}} for a loss by {{margin}} or less",
        "deciding_win": "Deciding win",
        "deciding_loss": "Deciding loss",
        "best_of": "Best of · {{units}}",
        "first_to": "First to · {{units}}"
      },
      "template": {
        "overview": {
          "label": "Format overview",
          "description": "How the tournament works, from groups to the final, with the rules."
        },
        "group_draw": {
          "label": "Group draw",
          "description": "Every group with its teams and who goes through."
        },
        "knockout": {
          "label": "Knockout bracket",
          "description": "The knockout bracket, empty, drawn or filled in."
        },
        "poster": {
          "label": "Full poster",
          "description": "Every stage, its groups and brackets, on one printable poster."
        },
        "group_pages": {
          "label": "One page per group",
          "description": "A post for each group, ready for a carousel."
        },
        "needs_stages": "Set up the format of this division first.",
        "needs_groups": "This division has no groups.",
        "needs_bracket": "This division has no knockout bracket."
      }
    },
    "match": {
      "status": {
        "preview": "Match day",
        "live": "Live",
        "penalties": "Penalties",
        "fulltime": "Full-time",
        "halftime": "Half-time",
        "timeout": "Time-out",
        "et_break": "Extra-time break",
        "end_of_quarter": "End of Q{{n}}",
        "end_of_period": "End of period {{n}}",
        "end_of": "End of {{period}}",
        "break": "Break"
      },
      "vs": "VS",
      "goal_unknown": "Goal",
      "card_unknown": "Card",
      "more": "+{{n}} more",
      "empty": "Pick a match to show.",
      "sub": {
        "aet": "After extra time",
        "pens": "{{a}}–{{b}} on penalties",
        "aggregate": "Aggregate {{a}}–{{b}}",
        "ot": "After overtime"
      },
      "opt": {
        "colors": "Colours",
        "colors_hint": "Your tournament style, or each team in its kit colour.",
        "players": "Player names",
        "players_hint": "Graphics are public. Initials (\"J. Smith\") are a safe default, especially for youth players."
      },
      "colors": {
        "brand": "Tournament",
        "kits": "Team kits"
      },
      "players": {
        "initials": "Initials",
        "full": "Full",
        "number": "Number"
      },
      "picker": {
        "match": "Match",
        "goal": "Goal",
        "latest": "Latest goal",
        "live": "LIVE",
        "latest_of": "Latest: {{noun}}"
      },
      "scoreboard": {
        "label": "Scoreboard",
        "opt": {
          "moment": "Moment",
          "moment_hint": "Automatic follows the match: preview, live, half-time or full-time.",
          "show": "Show",
          "scorers": "Scorers",
          "cards": "Cards",
          "shootout": "Penalty kicks",
          "label": "Stage / round",
          "details": "Day, time and field"
        },
        "moment": {
          "auto": "Automatic",
          "preview": "Match day",
          "live": "Live",
          "halftime": "Half-time",
          "fulltime": "Full-time"
        },
        "hint": {
          "moment_mismatch": "This graphic shows a different moment than the match is in right now."
        }
      },
      "goal": {
        "label": "Goal",
        "empty": "No goal in this match yet.",
        "headline": {
          "goal": "GOAL!",
          "try": "TRY!",
          "basket": "SCORE!"
        },
        "type": {
          "penalty": "Penalty",
          "own_goal": "Own goal",
          "free_kick": "Free kick"
        },
        "assist": "Assist: {{name}}",
        "opt": {
          "headline": "Headline",
          "type": "Goal type",
          "assist": "Assist",
          "score": "New score"
        }
      },
      "lineups": {
        "label": "Line-ups",
        "empty": "No published line-ups for this match.",
        "none": "Not published",
        "captain": "C",
        "bench": "Bench",
        "opt": {
          "layout": "Layout",
          "layout_hint": "Automatic uses a pitch on tall graphics when every player has a position.",
          "formation": "Formation",
          "bench": "Bench"
        },
        "layout": {
          "auto": "Auto",
          "pitch": "Pitch",
          "lists": "Lists"
        }
      },
      "presented": {
        "label": "Presented by",
        "empty": "Add a sponsor to the tournament first.",
        "caption": "Presented by",
        "opt": {
          "sponsor": "Sponsor",
          "sponsor_hint": "None selected = the first sponsor in your list.",
          "size": "Size"
        },
        "size": {
          "small": "S",
          "medium": "M",
          "large": "L"
        }
      },
      "template": {
        "needs_matches": "This division has no matches yet.",
        "goal": {
          "label": "Goal!",
          "description": "The goal that was just scored: scorer, minute and the new score.",
          "label_noun": "{{noun}}!",
          "description_noun": "The latest score: who scored, the minute and the new score."
        },
        "score": {
          "label": "Score update",
          "description": "The live score with the scorers so far."
        },
        "halftime": {
          "label": "Half-time",
          "description": "The score at the break, with scorers and cards."
        },
        "fulltime": {
          "label": "Full-time",
          "description": "The final result, including extra time, penalties and aggregate.",
          "label_final": "Final"
        },
        "preview": {
          "label": "Match day",
          "description": "Who plays, when and where — before kick-off."
        },
        "lineups": {
          "label": "Line-ups",
          "description": "Both published line-ups, on a pitch or as lists."
        },
        "segment": {
          "label": "{{unit}} won",
          "description": "The set (map, leg …) just won: who took it, its score and the sets won so far."
        },
        "break": {
          "label": "Break",
          "description": "The score at a break between periods, with scorers and cards."
        }
      },
      "segment": {
        "label": "Set won",
        "empty": "Shows once a set (map, leg …) of this match is finished.",
        "final": "Final",
        "match_won": "Wins the match",
        "headline_placeholder": "SET 2",
        "opt": {
          "score": "Score of the set",
          "tally": "Sets won"
        }
      },
      "scorer_points_one": "{{name}} · {{n}} point",
      "scorer_points_other": "{{name}} · {{n}} points"
    },
    "results": {
      "cont": "(cont.)",
      "tbd": "TBD",
      "title": {
        "standings": "Standings",
        "results": "Results",
        "bracket": "Knockout results",
        "placements": "Final standings",
        "team": "Team results",
        "official": "Officiated matches"
      },
      "score": {
        "pens": "({{a}}–{{b}} p)",
        "agg": "Agg {{a}}–{{b}}",
        "away_goals": "(a)",
        "leg1": "1st leg"
      },
      "standings": {
        "label": "Standings",
        "empty": "No standings yet for the selected groups.",
        "from_position": "{{pos}} {{name}}",
        "final": "Final table",
        "form_w": "W",
        "form_d": "D",
        "form_l": "L",
        "col": {
          "pos": "#",
          "p": "P",
          "w": "W",
          "d": "D",
          "l": "L",
          "gf": "GF",
          "ga": "GA",
          "gd": "GD",
          "pts": "Pts",
          "form": "Form",
          "unit_won": "{{u}}W",
          "unit_lost": "{{u}}L",
          "unit_ratio": "{{u}}R"
        },
        "opt": {
          "items": "Groups",
          "stats": "Columns",
          "layout": "Layout",
          "text_size": "Text size",
          "highlight": "Highlight team",
          "bands": "Qualification colours",
          "legend": "Legend",
          "crests": "Team crests",
          "show_status": "Mark final tables"
        },
        "stats": {
          "theme": "As in the theme",
          "compact": "Compact (W D L Pts)",
          "standard": "Standard",
          "full": "All stats",
          "form": "With form",
          "points": "Points only"
        },
        "layout": {
          "stack": "Stacked",
          "grid": "Grid"
        },
        "size": {
          "compact": "Compact",
          "large": "Large"
        }
      },
      "list": {
        "label": "Results list",
        "empty": "No results yet for this selection.",
        "third_place": "3rd place",
        "live": "LIVE",
        "ft": "FT",
        "opt": {
          "items": "Groups and brackets",
          "rounds": "Rounds",
          "round_number": "Round number",
          "days": "Days",
          "group_by": "Group by",
          "include_live": "Include live scores",
          "include_live_hint": "Matches in progress get a LIVE badge.",
          "status": "Status badge"
        },
        "rounds": {
          "all": "All",
          "latest": "Latest",
          "pick": "Choose"
        },
        "group_by": {
          "round": "Round",
          "item": "Group",
          "day": "Day"
        },
        "status": {
          "auto": "Live only",
          "always": "Always",
          "off": "Off"
        }
      },
      "placements": {
        "label": "Final placements",
        "empty": "No final places have been decided yet.",
        "caption": {
          "champion": "Champion",
          "runner_up": "Runner-up",
          "third": "Third place"
        },
        "opt": {
          "podium": "Podium",
          "unresolved": "Undecided places",
          "max_place": "Show places up to",
          "max_place_hint": "0 shows every decided place.",
          "layout": "Layout"
        },
        "unresolved": {
          "tbd": "Show TBD",
          "hide": "Hide"
        },
        "layout": {
          "stacked": "Stacked",
          "side": "Side by side"
        }
      },
      "champion": {
        "label": "Champion",
        "empty": "The final hasn’t been decided yet.",
        "caption": "Champions",
        "final": "Final",
        "runner_up": "Runner-up",
        "opt": {
          "style": "Style",
          "caption": "Caption",
          "show_final": "Final score",
          "show_runner_up": "Runner-up",
          "show_division": "Division and tournament"
        },
        "style": {
          "glow": "Glow",
          "card": "Card"
        }
      },
      "template": {
        "standings": {
          "label": "Standings",
          "description": "One page per group with the table and who goes through."
        },
        "round_results": {
          "label": "Round results",
          "description": "The scores of the latest round or matchday."
        },
        "bracket": {
          "label": "Bracket results",
          "description": "The knockout bracket with every score and the champion’s path."
        },
        "placements": {
          "label": "Final placements",
          "description": "A podium for the top three and the final ranking."
        },
        "champion": {
          "label": "Champion",
          "description": "A hero graphic of the winner, made for social media."
        },
        "needs_standings": "Needs groups with standings.",
        "needs_results": "Needs at least one finished match.",
        "needs_bracket_results": "Needs a knockout with at least one result.",
        "needs_placements": "Needs a decided final or a finished league.",
        "needs_champion": "Needs a decided final.",
        "team": {
          "label": "Team results",
          "description": "One team's played matches and its group table."
        },
        "official": {
          "label": "Officiated matches",
          "description": "The matches one official has officiated, with final scores"
        }
      }
    },
    "schedule": {
      "vs": "vs",
      "pens": "{{a}}–{{b}} pens",
      "continued": "continued",
      "status": {
        "live": "Live",
        "halftime": "HT",
        "moved": "Moved",
        "cancelled": "Cancelled"
      },
      "outcome": {
        "w": "W",
        "d": "D",
        "l": "L"
      },
      "count": {
        "matches_one": "{{n}} match",
        "matches_other": "{{n}} matches"
      },
      "note": {
        "unscheduled_one": "{{n}} match not yet scheduled",
        "unscheduled_other": "{{n}} matches not yet scheduled",
        "unscheduled_more_one": "{{n}} more match not yet scheduled",
        "unscheduled_more_other": "{{n}} more matches not yet scheduled",
        "none": "No matches scheduled yet",
        "parked_one": "{{n}} match postponed, new time to follow",
        "parked_other": "{{n}} matches postponed, new time to follow"
      },
      "title": {
        "matchday": "Matchday",
        "timetable": "Timetable",
        "team": "Match schedule",
        "field": "Field schedule",
        "official": "Official schedule",
        "assignments": "Match officials"
      },
      "opt": {
        "density": "Density",
        "columns": "Columns",
        "show": "Show",
        "show_field": "Field",
        "show_label": "Group / round label",
        "show_label_hint": "Group name, or the knockout match (QF1, Final)",
        "show_results": "Scores",
        "show_results_hint": "Shows the score of live and finished matches",
        "group_by_time": "Group by kick-off",
        "group_by_time_hint": "Matches at the same time share one time cell",
        "show_days": "Day headings",
        "crests": "Team logos",
        "show_note": "Unscheduled note",
        "show_note_hint": "Says how many matches have no kick-off yet",
        "show_officials": "Officials",
        "show_officials_hint": "Name the assigned officials under each match."
      },
      "density": {
        "auto": "Auto",
        "normal": "Roomy",
        "compact": "Compact"
      },
      "columns": {
        "auto": "Auto",
        "one": "1",
        "two": "2"
      },
      "list": {
        "label": "Match schedule",
        "empty": "No matches scheduled in this selection yet"
      },
      "timetable": {
        "label": "Timetable",
        "empty": "No matches with a kick-off time in this selection",
        "time": "Time",
        "no_field": "No field",
        "hint": {
          "landscape": "The fields don't fit side by side on a portrait page: switch to a landscape artboard.",
          "narrow": "The cells are too narrow for team names: lower \"Fields per grid\" or pick fewer fields."
        },
        "opt": {
          "fields": "Fields",
          "fields_hint": "Pick the fields to show. Leave empty for all fields.",
          "fields_per_page": "Fields per grid",
          "fields_per_page_hint": "More fields continue in another grid with the same times. Auto keeps team names readable.",
          "per_page": {
            "2": "2 fields",
            "3": "3 fields",
            "4": "4 fields",
            "5": "5 fields",
            "6": "6 fields",
            "8": "8 fields"
          }
        }
      },
      "team": {
        "label": "Team schedule",
        "empty": "Pick a team, or repeat the page per team",
        "opt": {
          "team": "Team",
          "team_hint": "Ignored when the page repeats per team",
          "matches": "Matches"
        },
        "matches": {
          "all": "All",
          "played": "Played",
          "upcoming": "Upcoming"
        }
      },
      "field": {
        "label": "Field schedule",
        "empty": "No matches are scheduled on a field yet",
        "eyebrow": "Field",
        "opt": {
          "field": "Field",
          "field_hint": "Empty = every field. Ignored when the page repeats per field"
        }
      },
      "template": {
        "needs_schedule": "Schedule matches first: nothing has a kick-off time yet",
        "needs_teams": "Needs scheduled matches with known teams",
        "needs_fields": "Assign matches to fields first",
        "matchday": {
          "label": "Matchday",
          "description": "Every match of the day by kick-off, one page per day"
        },
        "timetable": {
          "label": "Timetable",
          "description": "Kick-off times × fields for the venue, one page per day"
        },
        "team": {
          "label": "Team schedule",
          "description": "Each team's own matches, one page per team for every coach"
        },
        "field": {
          "label": "Field schedule",
          "description": "To print at each pitch: one page per field with a QR code"
        },
        "official": {
          "label": "Official schedule",
          "description": "One page per official with their matches, ready to send to each of them."
        },
        "needs_officials": "Assign officials to matches first",
        "assignments": {
          "label": "Match officials",
          "description": "Every match of the day with its officials, for the officials’ room or the crew chat."
        }
      },
      "official": {
        "label": "Official schedule",
        "empty": "This official has no matches in this selection",
        "eyebrow": "Official"
      },
      "officials": {
        "none": "No official assigned"
      }
    },
    "sponsors": {
      "template": {
        "wall": {
          "label": "Sponsor wall",
          "description": "All your sponsors on a clean white panel, every logo balanced."
        },
        "featured": {
          "label": "Main sponsor",
          "description": "Your main sponsors big on top, the rest below."
        },
        "banner": {
          "label": "Sponsor banner",
          "description": "A single row of logo tiles for wide formats."
        },
        "needs_sponsors": "Add sponsors to this tournament first."
      },
      "title": {
        "partners": "Our partners",
        "thanks": "Thank you to our sponsors"
      },
      "wall": {
        "label": "Sponsor logos",
        "empty": "No sponsors selected.",
        "opt": {
          "sponsors": "Sponsors",
          "sponsors_hint": "None selected = all sponsors, in your sponsor order.",
          "layout": "Layout",
          "featured_count": "Main sponsors",
          "featured_count_hint": "The first sponsors in the list are shown larger.",
          "panel": "Background",
          "panel_hint": "Logos always sit on a light surface so every logo stays readable.",
          "paper": "Surface",
          "spacing": "Spacing",
          "show_names": "Show names",
          "grayscale": "Monochrome logos",
          "grayscale_hint": "A calm, uniform look when logo colours clash."
        },
        "layout": {
          "grid": "Grid",
          "featured": "Featured",
          "row": "Row"
        },
        "n": {
          "1": "1",
          "2": "2",
          "3": "3"
        },
        "panel": {
          "card": "One panel",
          "tiles": "Tiles"
        },
        "paper": {
          "white": "White",
          "soft": "Soft grey"
        },
        "spacing": {
          "compact": "Compact",
          "normal": "Normal",
          "airy": "Airy"
        }
      }
    },
    "ui": {
      "title": "TorMatch Studio",
      "untitled": "Untitled design",
      "loading": "Loading the studio…",
      "load_failed": "The studio couldn't load.",
      "retry": "Try again",
      "section": {
        "template": "Template",
        "artboard": "Artboard",
        "content": "Content",
        "style": "Style",
        "export": "Export"
      },
      "section_desc": {
        "template": "Pick a starting layout",
        "artboard": "Size and format of the image",
        "content": "What the visual shows",
        "style": "How it looks"
      },
      "bar": {
        "undo": "Undo (⌘Z)",
        "redo": "Redo (⌘⇧Z)",
        "name": "Design name",
        "division": "Division",
        "refresh": "Refresh data",
        "more": "More actions",
        "save_as_new": "Save as new…",
        "save_as_brand": "Save as tournament brand",
        "my_designs": "My designs",
        "export": "Export",
        "options": "Show or hide options",
        "save_as_theme": "Save as new theme…",
        "update_theme": "Update theme “{{name}}”"
      },
      "template": {
        "none": "No templates for this module yet.",
        "unavailable": "Not available for this division's data"
      },
      "artboard": {
        "social": "Social",
        "print": "Print",
        "custom": "Custom size",
        "customize": "Customize",
        "width": "Width",
        "height": "Height",
        "rotate": "Swap portrait / landscape",
        "unit": "Unit",
        "dpi": "Print resolution",
        "margin": "Margin"
      },
      "content": {
        "data_mode": "Show",
        "mode_format": "Format",
        "mode_draw": "Draw",
        "mode_results": "Results",
        "mode_schedule": "Schedule",
        "data_stamp": "\"Updated at\" stamp",
        "page_n": "Page {{n}}",
        "region_header": "Header",
        "region_body": "Body",
        "region_footer": "Footer",
        "region_empty": "Nothing here yet.",
        "add": "Add",
        "drag": "Drag to reorder",
        "move_up": "Move up",
        "move_down": "Move down",
        "show": "Show",
        "hide": "Hide",
        "remove": "Remove block",
        "no_options": "This block has no options.",
        "no_blocks": "No content blocks are available yet."
      },
      "fields": {
        "all": "All",
        "all_included": "All are included.",
        "n_selected": "{{n}} selected",
        "nothing_to_pick": "Nothing to choose from yet.",
        "search": "Search…"
      },
      "style": {
        "preset": "Theme",
        "inherit_brand": "Follow theme",
        "inherit_brand_hint": "On: later changes to the theme also update this design. Your tweaks here stay on top.",
        "colors": "Colors",
        "typography": "Typography",
        "shapes": "Shapes",
        "background": "Background",
        "logo": "Tournament logo",
        "font_heading": "Heading font",
        "font_body": "Body font",
        "font_numeric": "Numbers font",
        "font_numeric_hint": "Used for scores, times and tables.",
        "weight_heading": "Heading weight",
        "weight_body": "Body weight",
        "weight_300": "Light",
        "weight_400": "Regular",
        "weight_500": "Medium",
        "weight_600": "Semibold",
        "weight_700": "Bold",
        "weight_800": "Extra bold",
        "weight_900": "Black",
        "uppercase": "Uppercase headings",
        "tracking": "Letter spacing",
        "scale": "Text size",
        "radius": "Corner radius",
        "chamfer": "Angled corners",
        "chamfer_hint": "Replaces rounded corners when set.",
        "border": "Border",
        "shadow": "Shadow",
        "bg_kind": "Fill",
        "bg_solid": "Solid",
        "bg_gradient": "Gradient",
        "bg_angle": "Gradient angle",
        "bg_pattern": "Pattern",
        "bg_pattern_opacity": "Pattern strength",
        "pattern_none": "None",
        "pattern_dots": "Dots",
        "pattern_grid": "Grid",
        "pattern_stripes": "Stripes",
        "pattern_pitch": "Pitch",
        "pattern_halftone": "Halftone",
        "logo_show": "Show logo",
        "logo_position": "Logo position",
        "left": "Left",
        "center": "Center",
        "right": "Right",
        "bracket": {
          "title": "Bracket design",
          "orientation": "Layout",
          "orient_auto": "Auto",
          "orient_ltr": "Left → right",
          "orient_rtl": "Right → left",
          "orient_mirrored": "Mirrored",
          "orient_ttb": "Top → bottom",
          "orient_btt": "Pyramid",
          "orient_mirrored_vertical": "Mirrored vertical",
          "orient_rounds_list": "Rounds list",
          "card": "Match card",
          "card_box": "Box",
          "card_split": "Split",
          "card_pill": "Pill",
          "card_line": "Lines",
          "card_stadium": "Stadium",
          "card_chamfer": "Angled",
          "density": "Spacing",
          "density_compact": "Compact",
          "density_normal": "Normal",
          "density_spacious": "Airy",
          "card_width": "Card width",
          "match_colors": "Also apply matching colours",
          "match_colors_hint": "Picking a preset also switches to the colours it was designed with.",
          "group_teams": "Teams & scores",
          "team_logo": "Team badge",
          "logo_crest": "Crest",
          "logo_initials": "Initials",
          "logo_none": "None",
          "team_seed": "Show seed",
          "team_uppercase": "Uppercase names",
          "score_style": "Score",
          "score_inline": "Inline",
          "score_box": "Box",
          "score_none": "Hidden",
          "score_penalties": "Show penalties",
          "score_aggregate": "Show aggregate",
          "winner": "Winner",
          "winner_bold": "Bold",
          "winner_accent_fill": "Accent fill",
          "winner_accent_bar": "Accent bar",
          "winner_none": "No highlight",
          "loser_dim": "Loser opacity",
          "group_connectors": "Connector lines",
          "connector_style": "Line style",
          "conn_fork": "Fork",
          "conn_elbow": "Elbow",
          "conn_rounded": "Rounded",
          "conn_straight": "Straight",
          "conn_curve": "Curve",
          "connector_width": "Line width",
          "connector_dash": "Line type",
          "dash_solid": "Solid",
          "dash_dashed": "Dashed",
          "dash_dotted": "Dotted",
          "connector_color": "Line colour",
          "winner_path": "Highlight winners’ path",
          "champion_path": "Highlight champion's path",
          "group_details": "Rounds & final",
          "round_header": "Round titles",
          "rh_none": "None",
          "rh_text": "Text",
          "rh_pill": "Pill",
          "rh_band": "Band",
          "round_dates": "Show dates",
          "meta_label": "Match number",
          "meta_time": "Kick-off time",
          "meta_field": "Field",
          "final_scale": "Final size",
          "final_trophy": "Trophy icon",
          "champion": "Champion",
          "champ_none": "Hidden",
          "champ_card": "Card",
          "champ_banner": "Banner",
          "bronze": "3rd place match",
          "bronze_below_final": "Below final",
          "bronze_separate": "Separate",
          "bronze_hide": "Hidden",
          "byes": "Byes",
          "byes_show": "Show",
          "byes_ghost": "Faint",
          "byes_hide": "Hide"
        }
      },
      "tokens": {
        "background": "Background",
        "backgroundAlt": "Background 2",
        "surface": "Cards",
        "surfaceAlt": "Cards 2",
        "onSurface": "Text on cards",
        "text": "Text",
        "muted": "Muted text",
        "accent": "Accent",
        "accent2": "Accent 2",
        "line": "Lines",
        "win": "Win",
        "loss": "Loss"
      },
      "presets": {
        "brand": "Tournament brand",
        "brand_hint": "Your tournament's saved house style",
        "dark_stadium": "Dark stadium",
        "dark_stadium_hint": "Floodlit navy with a mint accent",
        "clean_light": "Clean light",
        "clean_light_hint": "Bright and minimal",
        "newsroom": "Newsroom",
        "newsroom_hint": "Editorial serif on paper",
        "glass": "Glass",
        "glass_hint": "Soft gradients, rounded cards",
        "esports": "Esports",
        "esports_hint": "Neon on black, angled cards",
        "print": "Print",
        "print_hint": "Black on white, ink-friendly"
      },
      "wordmark": {
        "title": "TorMatch wordmark",
        "position": "Position",
        "pos_bottom-left": "Bottom left",
        "pos_bottom-center": "Bottom center",
        "pos_bottom-right": "Bottom right",
        "pos_top-right": "Top right",
        "tone": "Wordmark tone",
        "tone_auto": "Auto",
        "tone_light": "Light",
        "tone_dark": "Dark",
        "always_on": "The TorMatch wordmark appears on every graphic."
      },
      "viewport": {
        "fit": "Fit",
        "zoom_in": "Zoom in",
        "zoom_out": "Zoom out",
        "prev_page": "Previous page",
        "next_page": "Next page"
      },
      "warnings": {
        "more": "{{n}} more"
      },
      "fix": {
        "use_mirrored": "Use mirrored bracket",
        "use_vertical": "Use vertical bracket",
        "denser": "Compact cards",
        "artboard": "Switch to {{name}}",
        "contrast": "Fix contrast",
        "hide_block": "Hide block"
      },
      "library": {
        "continue": "Continue a design",
        "new_from_template": "New from template",
        "empty": "No saved designs yet.",
        "updated_by": "{{name}} · {{when}}",
        "updated": "Updated {{when}}",
        "actions": "Design actions",
        "open": "Open",
        "rename": "Rename",
        "duplicate": "Duplicate",
        "delete_title": "Delete design?",
        "delete_message": "\"{{name}}\" will be deleted for everyone. This can't be undone."
      },
      "save_as": {
        "title": "Save as a new design",
        "name": "Name",
        "save": "Save",
        "default_name": "{{name}} (copy)"
      },
      "close": {
        "title": "Unsaved changes",
        "message": "Close the studio and discard your changes?",
        "leave_message": "Leave this design and discard your changes?",
        "discard": "Discard",
        "keep": "Keep editing",
        "save_title": "Save before closing?",
        "save_hint": "Keep this design to export it again later with fresh data.",
        "save_close": "Save and close"
      },
      "conflict": {
        "title": "Edited elsewhere",
        "message": "Someone saved this design after you opened it.",
        "message_named": "{{name}} saved this design after you opened it.",
        "overwrite": "Overwrite with mine",
        "keep_editing": "Keep editing",
        "reload_title": "Load their version",
        "reload_hint": "Your unsaved changes are discarded.",
        "reload": "Reload",
        "brand_title": "Brand changed elsewhere",
        "brand_message": "The tournament brand was changed since the studio opened. Replace it with this design's style?",
        "brand_message_named": "{{name}} changed the tournament brand since the studio opened. Replace it with this design's style?"
      },
      "toast": {
        "saved": "Design saved",
        "save_failed": "The design couldn't be saved.",
        "brand_saved": "Saved as the tournament brand",
        "brand_failed": "The brand couldn't be saved.",
        "open_failed": "That design couldn't be opened.",
        "list_failed": "Your designs couldn't be loaded.",
        "template_failed": "That template couldn't be built for this data.",
        "refreshed": "Data refreshed",
        "refresh_partial": "Some data couldn't be refreshed.",
        "reloaded": "Loaded the latest version",
        "renamed": "Renamed",
        "changed_elsewhere": "That design was changed elsewhere, so the list was reloaded.",
        "duplicated": "Design duplicated",
        "duplicate_failed": "The design couldn't be duplicated.",
        "deleted": "Design deleted",
        "delete_failed": "The design couldn't be deleted.",
        "theme_created": "Theme “{{name}}” saved — this design now follows it.",
        "theme_saved": "Theme “{{name}}” saved",
        "theme_failed": "The theme could not be saved.",
        "theme_conflict": "Someone else changed this theme meanwhile. Reloaded it — your changes are still on top; save again.",
        "theme_missing": "That theme no longer exists."
      },
      "dev": {
        "demo_block": "Demo block (dev)",
        "demo_template": "Demo template (dev)",
        "demo_template_hint": "Developer preview only",
        "title": "Title",
        "subtitle": "Subtitle",
        "align": "Alignment",
        "left": "Left",
        "center": "Center",
        "right": "Right",
        "look": "Look",
        "size": "Size",
        "accent": "Accent",
        "style": "Style",
        "card": "Cards",
        "plain": "Plain",
        "items": "Groups"
      },
      "theme": {
        "strip": "Theme",
        "customised": "Customised",
        "active_hint": "The active theme — new visuals open with it.",
        "untitled": "My theme",
        "default_name": "My theme",
        "save_title": "Save as new theme",
        "save": "Save theme",
        "name": "Theme name",
        "editing": "Theme editor"
      },
      "theme_editor": {
        "title": "Theme editor",
        "intro": "Design the look of all your visuals: colours, fonts and shapes. The previews use sample data.",
        "preview_label": "Preview",
        "shuffle": "Shuffle",
        "shuffle_hint": "New sample teams, scores and kit colours",
        "preview": {
          "goal": "Goal",
          "score": "Half-time",
          "schedule": "Schedule",
          "standings": "Standings",
          "bracket": "Bracket",
          "sponsors": "Sponsors"
        }
      }
    },
    "segments": {
      "unit": {
        "set": "Set",
        "set_plural": "Sets",
        "set_short": "S",
        "game": "Game",
        "game_plural": "Games",
        "game_short": "G",
        "point": "Point",
        "point_plural": "Points",
        "point_short": "P",
        "map": "Map",
        "map_plural": "Maps",
        "map_short": "M",
        "leg": "Leg",
        "leg_plural": "Legs",
        "leg_short": "L",
        "frame": "Frame",
        "frame_plural": "Frames",
        "frame_short": "F",
        "rack": "Rack",
        "rack_plural": "Racks",
        "rack_short": "R",
        "round": "Round",
        "round_plural": "Rounds",
        "round_short": "R"
      },
      "golden_set": "golden set"
    }
  },
  "delete_all_participants": {
    "title": "Delete all participants",
    "desc": "Remove every participant and their players at once, for example to start over before importing a schedule. This can't be undone.",
    "summary": "{{teams}} participants and {{players}} players will be deleted.",
    "none": "There are no participants to delete.",
    "placed": "{{count}} participants are still in a group or bracket. Remove the format on the Format page first.",
    "button": "Delete all participants",
    "confirm_title": "Delete all participants?",
    "confirm_message": "This permanently deletes {{teams}} participants and {{players}} players. This can't be undone.",
    "confirm_button": "Delete all",
    "done": "{{count}} participants deleted"
  },
  "schedule_import": {
    "group_pool": "Qualification pool",
    "pool_line": "place {{position}} of {{groups}} groups",
    "title": "Import & export schedule",
    "subtitle": "Teams, format and match times in one JSON document",
    "tab_import": "Import",
    "tab_export": "Export",
    "division": "Division",
    "intro": "Paste a schedule in TorMatch's JSON format. Teams and fields that don't exist yet are created, and the division's format and match times are set up in one go.",
    "copy_prompt": "Copy AI instructions",
    "copy_prompt_hint": "Have screenshots, a photo or a PDF of the schedule? Give an AI assistant these instructions together with the images, then paste its answer below.",
    "insert_example": "Insert example",
    "placeholder": "Paste JSON here…",
    "replace_existing": "Replace this division's current format",
    "replace_existing_hint": "Deletes the division's stages, groups and matches first. Only possible while none of its matches has started.",
    "check": "Check",
    "import": "Import",
    "invalid_json": "This isn't valid JSON: {{message}}",
    "invalid_json_at": "This isn't valid JSON (line {{line}}, column {{column}}): {{message}}",
    "errors_title": "Fix these before importing",
    "warnings_title": "Good to know",
    "preview_title": "Ready to import",
    "preview_stale": "Checked — but you changed something since. Check again.",
    "preview_hint": "Nothing has been saved yet. Press Import to apply it.",
    "teams_label": "Teams",
    "fields_label": "Fields",
    "matches_label": "Matches",
    "n_new": "{{count}} new",
    "n_existing": "{{count}} existing",
    "n_scheduled": "{{scheduled}} of {{total}} scheduled",
    "match_length": "Match length",
    "minutes": "{{count}} min",
    "minutes_between": "{{count}} min between matches",
    "group_round_robin": "Round robin",
    "group_knockout": "Knockout",
    "group_line": "{{teams}} teams · {{matches}} matches",
    "replaces": "Replaces the current format ({{count}} stages)",
    "imported": "Schedule imported",
    "export_intro": "This division's teams, format and schedule in the import format. Keep it as a backup, or edit it and import it into another division or tournament.",
    "copy": "Copy",
    "copied": "Copied to clipboard",
    "download": "Download",
    "export_empty": "This division has no format yet.",
    "menu_label": "Import / export",
    "menu_import": "Import schedule…",
    "menu_export": "Export schedule…",
    "setup_link": "Already have a schedule? Import it"
  },
  "gallery_setup": {
    "layout_title": "Public layout",
    "layout_desc": "How the gallery page looks to visitors. Your own view here is unaffected.",
    "layout_albums_title": "Albums",
    "layout_albums_desc": "A grid of albums, with any loose media underneath.",
    "layout_stream_title": "One stream",
    "layout_stream_desc": "Every photo and video in a single wall, newest first.",
    "sort_title": "Order",
    "sort_desc": "The order visitors see media in.",
    "sort_manual_title": "Your order",
    "sort_manual_desc": "The order you dragged them into.",
    "sort_newest_title": "Newest first",
    "sort_newest_desc": "Latest uploads at the top, always.",
    "sidebar_title": "On the tournament page",
    "sidebar_desc": "How many recent photos the gallery block shows on your tournament page.",
    "visitors_title": "What visitors can do",
    "visitors_desc": "Extras on the public gallery. Uploading stays organizers-only either way.",
    "captions_title": "Show captions",
    "captions_desc": "Print each item's description under it in the grid.",
    "reactions_title": "Allow reactions",
    "reactions_desc": "Visitors can react to photos and videos with an emoji.",
    "downloads_title": "Allow downloads",
    "downloads_desc": "Offer a link to the full-size original from the preview.",
    "download_action": "Full size",
    "public_note": "These settings only change what visitors see. Nothing here affects your albums or uploads."
  },
  "cookie_consent": {
    "title": "Cookies",
    "description": "We use cookies to run the site and, with your consent, to measure how it's used.",
    "learn_more": "Learn more",
    "customize": "Customize",
    "hide": "Hide options",
    "save": "Save choices",
    "reject": "Reject all",
    "accept": "Accept all",
    "necessary_label": "Strictly necessary",
    "necessary_desc": "Required for the site to work. Always on.",
    "always_on": "Always on",
    "analytics_label": "Analytics",
    "analytics_desc": "Helps us understand how the site is used.",
    "settings_link": "Cookie settings"
  },
  "presence": {
    "someoneEditing": "{{name}} is also editing",
    "countEditing": "{{count}} others are also editing",
    "anotherOfficial": "Another official",
    "editingNow": "Editing now",
    "device_desktop": "Desktop",
    "device_mobile": "Mobile",
    "device_app": "App"
  },
  "conflict": {
    "eventUpdated": "This event was just changed by someone else.",
    "eventDeleted": "This event was just deleted by someone else.",
    "reload": "Reload"
  },
  "contact": {
    "hero": {
      "eyebrow": "CONTACT",
      "title": "Get in touch",
      "subtitle": "Whether you have a question, a business proposal, or an idea to make TorMatch better — we'd love to hear from you. Pick a topic below and send us a message."
    },
    "info": {
      "email_label": "Email us directly",
      "response_title": "Response time",
      "response_body": "We usually reply within 1–2 business days.",
      "help_title": "Running a tournament?",
      "help_body": "Most day-to-day answers are in your organizer dashboard or the FAQ below.",
      "social_title": "Follow us"
    },
    "topics": {
      "general": {
        "label": "General",
        "blurb": "Questions about TorMatch, your account, or how something works? Ask away."
      },
      "business": {
        "label": "Business",
        "blurb": "Partnerships, federations, large events, or a custom plan — let's talk."
      },
      "feedback": {
        "label": "Ideas & feedback",
        "blurb": "Spotted a bug or have a feature idea? Your feedback shapes our roadmap."
      }
    },
    "form": {
      "topic_legend": "What's this about?",
      "name_label": "Your name",
      "name_ph": "Jane Doe",
      "email_label": "Email address",
      "email_ph": "you@example.com",
      "company_label": "Company or organization",
      "company_ph": "Your club, federation or company",
      "subject_label": "Subject (optional)",
      "subject_ph": "A short summary",
      "message_label": "Message",
      "message_ph_general": "How can we help?",
      "message_ph_business": "Tell us about your organization and what you're looking for.",
      "message_ph_feedback": "Tell us what you'd like to see, or describe the issue you ran into.",
      "submit": "Send message",
      "sending": "Sending…",
      "err_name": "Please enter your name.",
      "err_email": "Please enter a valid email address.",
      "err_message": "Please enter a message of at least 10 characters.",
      "privacy_note": "By sending this message you agree to our"
    },
    "success": {
      "title": "Message sent — thank you!",
      "body": "We've received your message and will reply to the email address you provided, usually within 1–2 business days.",
      "another": "Send another message"
    },
    "error": {
      "body": "Something went wrong and your message wasn't sent.",
      "retry": "Try again"
    },
    "faq_title": "Frequently asked questions",
    "faq_q1": "Is TorMatch free to use?",
    "faq_a1": "Yes — you can create a tournament and run it on the Free plan at no cost. Paid plans unlock higher limits and advanced features, and you pay only once per tournament, with no subscription.",
    "faq_q2": "How do I report a bug or request a feature?",
    "faq_a2": "Pick the \"Ideas & feedback\" topic above and describe what happened or what you'd like to see. The more detail you share, the faster we can act on it.",
    "faq_q3": "Do you offer plans for federations or large events?",
    "faq_a3": "Absolutely. Choose the \"Business\" topic and tell us about your organization — we'll put together a plan that fits multi-day events, many divisions, or federation-wide needs.",
    "faq_q4": "I need help running my tournament right now. What's the fastest way?",
    "faq_a4": "Most day-to-day tasks are handled in your organizer dashboard, and common questions are answered in our FAQs. For anything else, send us a message using the \"General\" topic.",
    "faq_q5": "Which email will your reply come from?",
    "faq_a5": "Our team replies from a TorMatch address to the email you enter in the form, so please double-check it before sending. Add info@tormatch.com to your contacts so our reply doesn't land in spam.",
    "faq_q6": "Can I reach you on social media?",
    "faq_a6": "Yes — we're on Instagram, X, Facebook and LinkedIn (the links are on this page). For anything involving your account or private details, the contact form is the safest channel."
  },
  "editor": {
    "controlPanel": "Control Panel",
    "recordEvent": "Record event",
    "overview": "Overview",
    "matchOverview": "Match Overview"
  },
  "countdown": {
    "starts_in": "Starts in",
    "days": "days",
    "hours": "hrs",
    "minutes": "min",
    "ended": "Tournament ended",
    "ended_today": "Ended today",
    "day_ago": "{{count}} day ago",
    "days_ago": "{{count}} days ago",
    "month_ago": "{{count}} month ago",
    "months_ago": "{{count}} months ago",
    "year_ago": "{{count}} year ago",
    "years_ago": "{{count}} years ago"
  },
  "billing": {
    "checkout": {
      "title": "Checkout",
      "subtitle": "Complete your purchase in two quick steps.",
      "back_to_plans": "Back to plans",
      "step_details": "Billing details",
      "step_payment": "Payment",
      "details_hint": "Your invoice identity — reused on every purchase.",
      "address_required": "Enter a complete billing address to continue.",
      "continue_to_payment": "Continue to payment",
      "processing": "Processing…",
      "payment_title": "Payment",
      "payment_secure": "Encrypted and processed securely by Stripe.",
      "edit_details": "Edit details",
      "processing_async": "Payment received — we'll unlock your plan the moment it clears. Bank debits can take a few days.",
      "waiver": "I understand I get immediate access and waive my 14-day right of withdrawal.",
      "pay": "Pay {{amount}}",
      "hosted_intro": "You'll be taken to Stripe's secure page to complete your payment.",
      "continue_secure": "Continue to secure payment",
      "promo_placeholder": "Promo code",
      "promo_apply": "Apply",
      "promo_remove": "Remove",
      "summary_title": "Order summary",
      "your_order": "Your order",
      "upgrade_badge": "Upgrade",
      "subtotal": "Subtotal",
      "discount": "Discount",
      "vat_incl": "incl. {{rate}}% VAT",
      "vat_reverse": "VAT reverse-charged (€0)",
      "total": "Total",
      "trust": "Secure checkout · Cancel anytime before you pay",
      "stripe_unavailable": "We couldn't load the secure payment form. Please refresh and try again.",
      "payment_failed": "Your payment couldn't be completed. Please try another method.",
      "payment_failed_retry": "Your payment wasn't completed. Please try again.",
      "status_loading": "Loading secure payment…",
      "status_succeeded": "Payment successful.",
      "taking_too_long": "This is taking longer than expected. A browser extension or ad blocker may be blocking the payment — try disabling your extensions or use a private/incognito window."
    },
    "check_again": "Check again",
    "billing_country": "Billing country",
    "billing_country_hint": "We only sell in the countries listed here.",
    "select_country": "Select your country…",
    "search_countries": "Search countries…",
    "select_country_first": "Please select your billing country first.",
    "country_not_supported": "TorMatch isn't available for purchase in your country yet.",
    "excl_vat": "excl. VAT",
    "account_level": "Account",
    "refund_policy": "Refund Policy",
    "group_profile": "Tournament Profile",
    "group_content": "Content & Engagement",
    "group_competition": "Competition & Scheduling",
    "recommended": "Recommended",
    "current_plan": "Current plan",
    "tier_included": "Included",
    "one_time": "one-time",
    "free": "Free",
    "full_analytics_title": "Full Analytics",
    "tiers_unavailable": "Plans are not available right now. Please try again shortly.",
    "dashboard_hint_free": "Unlock more capacity and features.",
    "dashboard_hint_paid": "Manage your plan and invoices.",
    "unlimited": "Unlimited",
    "included_title": "Included in every plan",
    "all_unlimited": "Everything included, unlimited.",
    "page_title": "Plan",
    "page_subtitle": "Manage this tournament's plan, upgrades and invoices.",
    "upgrade_now": "Upgrade now",
    "upgrade": "Upgrade",
    "manage_plan": "Manage plan",
    "my_purchases": "Purchases & invoices",
    "my_purchases_subtitle": "Your purchases and downloadable invoices across all tournaments.",
    "upgrade_to": "Upgrade to {{tier}}",
    "upgrade_dialog_title": "A {{tier}} feature",
    "upgrade_dialog_message": "{{feature}} is part of the {{tier}} plan. Explore the plans to unlock it for your tournament.",
    "explore_plans": "Explore plans",
    "see_plans": "See plans",
    "view_plan": "View plan",
    "a_higher_plan": "a higher plan",
    "this_feature": "This feature",
    "plan_locked_title": "A {{tier}} feature",
    "plan_locked_message": "{{feature}} is part of {{tier}}. Upgrade your tournament's plan to switch it on.",
    "plan_locked_no_purchase": "{{feature}} is part of {{tier}}. Ask the tournament owner to upgrade the plan.",
    "plan_locked_no_purchase_short": "This feature is part of {{tier}}. Ask the tournament owner to upgrade the plan.",
    "plan_locked_hint": "Included in {{tier}}",
    "plan_locked_page_message": "This feature is part of {{tier}}. Upgrade your tournament's plan to unlock it.",
    "plan_lapsed_hint": "Still running, but no longer included in your plan — {{tier}} covers it.",
    "locked_banner": "{{feature}} is part of {{tier}}. Choose a plan below to unlock it.",
    "upgrade_difference": "Upgrade — pay the difference",
    "limit_reached": "Plan limit reached. Upgrade to add more.",
    "your_plan": "Your plan",
    "ask_owner": "Ask the tournament owner to upgrade.",
    "owner_only": "Owner only",
    "who_can_purchase": "Who can purchase / upgrade",
    "scope_owner_admin": "Owner + administrators",
    "scope_owner_only": "Owner only",
    "usage_title": "Usage on your plan",
    "tab_upgrade": "Upgrade",
    "tab_usage": "Usage",
    "usage_empty": "Usage appears here once a paid plan is active for this tournament.",
    "invoices_hint": "Upgrading opens a secure Stripe checkout. Invoices are on your account's Purchases & invoices page.",
    "season_title": "TorMatch Season",
    "season_tagline": "10 tournaments · everything unlimited",
    "season_buy": "Get TorMatch Season",
    "season_applied": "TorMatch Season is active on this tournament",
    "season_apply": "Apply Season to this tournament",
    "season_remove": "Remove Season from this tournament",
    "season_slots": "{{used}} of {{total}} tournaments used",
    "season_no_slots": "You've used all your Season tournaments",
    "not_enabled": "Paid plans aren't enabled for this tournament. Everything is currently free and unlimited.",
    "payment_received": "Payment received — your plan is being activated. This page refreshes automatically.",
    "payment_cancelled": "Checkout cancelled — no charge was made.",
    "no_purchases": "You haven't made any purchases yet.",
    "col_date": "Date",
    "col_tournament": "Tournament",
    "col_plan": "Plan",
    "col_amount": "Amount",
    "col_status": "Status",
    "col_invoice": "Invoice",
    "profile": {
      "title": "Billing details",
      "description": "Your invoice identity and address. We reuse this on every checkout.",
      "checkout_hint": "Used on your invoice for this purchase.",
      "account_type": "Account type",
      "personal": "Personal",
      "business": "Business",
      "company_name": "Company name",
      "company_name_placeholder": "Legal company name",
      "vat_number": "VAT number",
      "vat_number_placeholder": "e.g. NL123456789B01",
      "vat_hint": "This doesn't look like a valid VAT number — please double-check it.",
      "contact_name": "Contact name",
      "contact_name_placeholder": "Full name",
      "address_line1": "Address",
      "address_line1_placeholder": "Street and number",
      "address_line2": "Address line 2",
      "address_line2_placeholder": "Apartment, suite, etc. (optional)",
      "postal_code": "Postal code",
      "postal_code_placeholder": "Postal code",
      "city": "City",
      "city_placeholder": "City",
      "state": "State / Province",
      "state_placeholder": "State or province (optional)",
      "invoice_email": "Invoice email",
      "invoice_email_placeholder": "billing@example.com",
      "invoice_email_hint": "Invoices and receipts are sent here. Leave blank to use your account email.",
      "invoice_email_invalid": "Please enter a valid email address.",
      "invalid": "Please complete the required billing details.",
      "country_hint": "Choose the country of your billing address — it determines the VAT on your invoice.",
      "country_mismatch": "You seem to be in {{detected}}, but your billing country is set to {{chosen}}. Your invoice and VAT are based on this country — please check it.",
      "use_country": "Use {{country}}",
      "keep_country": "{{country}} is correct"
    },
    "plan": "Plan"
  },
  "pay": {
    "title": "Complete your payment",
    "subtitle": "Upgrade for {{tournament}} — pay securely in two quick steps.",
    "details_hint": "Your invoice identity for this purchase.",
    "amount_due": "Amount due",
    "loading": "Loading your payment link…",
    "not_found_title": "Payment link not found",
    "not_found_body": "This payment link is invalid or has been removed. Please check the link, or contact us for a new one.",
    "cancelled_title": "Payment link cancelled",
    "cancelled_body": "This payment link has been cancelled and can no longer be used. Please contact us if you'd like to complete your purchase.",
    "expired_title": "Payment link expired",
    "expired_body": "This payment link has expired. Please contact us and we'll be happy to send you a fresh one.",
    "paid_title": "Payment received",
    "paid_confirmed": "Thank you! Your payment is complete and {{tournament}} has been upgraded.",
    "paid_pending": "Thank you! Your payment is being processed — {{tournament}} will be upgraded automatically the moment it clears.",
    "paid_checking": "Confirming your upgrade…"
  },
  "pricing": {
    "eyebrow": "PRICING",
    "section_title": "One plan per tournament. For its whole life.",
    "section_subtitle": "Pick a plan when you need more. You pay once, and that tournament keeps everything it unlocked — from kickoff to the final whistle.",
    "cta_get_started": "Get started",
    "section_note": "One-time payment per tournament — no subscriptions, no renewals.",
    "custom_title": "Need something tailored?",
    "custom_desc": "For federations, large multi-day events, or bespoke requirements — we'll put together a custom plan.",
    "custom_cta": "Contact us",
    "faq_title": "How pricing works",
    "faq_q1": "How does pricing work?",
    "faq_a1": "You upgrade per tournament. Each tournament has its own plan, and upgrading lifts that single tournament for its entire existence — there's no monthly subscription and nothing to renew.",
    "faq_q2": "Is it a subscription or a one-time payment?",
    "faq_a2": "It's a one-time payment per tournament. You pay once through a secure Stripe checkout and the plan stays active for that tournament's whole lifetime.",
    "faq_q3": "Can I upgrade later?",
    "faq_a3": "Yes. You can move from Free to Pro to Premium at any time. Upgrades only ever go up, and you pay just the difference between your current plan and the new one.",
    "faq_q4": "Who can buy or change a tournament's plan?",
    "faq_a4": "The tournament owner can always purchase, and administrators can too by default. The owner can restrict purchasing to owner-only from the billing settings.",
    "faq_q5": "If plans change later, do my limits change?",
    "faq_a5": "No. The plan you bought is locked to the version you purchased, so future changes to limits or pricing never reduce what your tournament already has.",
    "hero_eyebrow": "ONE-TIME PRICING",
    "hero_title": "One payment per tournament",
    "hero_lede": "No subscription and nothing to renew. Answer three questions and see exactly which plan fits — and what it costs.",
    "hero_point_1": "Pay once — the plan stays with that tournament for its whole life",
    "hero_point_2": "Upgrade whenever you like, and only pay the difference",
    "hero_point_3": "Scheduling, listings and player management are in every plan",
    "calc_title": "What will your tournament cost?",
    "calc_subtitle": "Three questions. No sign-up needed.",
    "calc_show": "Calculate my price",
    "calc_collapse": "Hide the result",
    "calc_tournaments_label": "Tournaments",
    "calc_tournaments_hint": "Editions you'll run",
    "calc_divisions_label": "Age categories",
    "calc_divisions_hint": "Divisions or age classes",
    "calc_teams_label": "Teams in total",
    "calc_teams_valuetext_one": "{{count}} team",
    "calc_teams_valuetext_other": "{{count}} teams",
    "calc_decrease": "Fewer {{field}}",
    "calc_increase": "More {{field}}",
    "calc_best_fit": "Best fit for you",
    "calc_your_fit": "Your fit",
    "calc_per_tournament": "one-time, per tournament",
    "calc_whats_included": "What you get",
    "calc_more_in_table": "+{{count}} more in the comparison below",
    "calc_total_label": "Your total",
    "calc_total_sub_one": "1 tournament",
    "calc_total_sub_other": "{{count}} tournaments × {{price}}",
    "calc_cta": "Start building your tournament",
    "calc_see_in_table": "See this plan in the comparison",
    "calc_why_per_division_one": "{{teams}} teams in one age category is more than the {{limit}} that {{blockedPlan}} allows per category.",
    "calc_why_per_division_other": "{{teams}} teams across {{divisions}} age categories is about {{perDivision}} per category — more than the {{limit}} that {{blockedPlan}} allows.",
    "calc_why_total": "{{teams}} teams is more than the {{limit}} that {{blockedPlan}} covers.",
    "calc_why_divisions": "{{divisions}} age categories is more than {{blockedPlan}} covers.",
    "calc_gives_capped_total": "{{plan}} covers up to {{limit}} teams in total.",
    "calc_gives_capped_per_division": "{{plan}} covers up to {{limit}} teams per age category.",
    "calc_gives_capped_divisions": "{{plan}} covers up to {{limit}} age categories.",
    "calc_gives_unlimited_total": "{{plan}} has no limit on the number of teams.",
    "calc_gives_unlimited_per_division": "{{plan}} has no limit per age category.",
    "calc_gives_unlimited_divisions": "{{plan}} has no limit on age categories.",
    "calc_gives_cheapest_one": "{{plan}} already covers {{teams}} teams in one age category — this costs you nothing.",
    "calc_gives_cheapest_other": "{{plan}} already covers {{teams}} teams across {{divisions}} age categories — this costs you nothing.",
    "calc_over_capacity": "{{teams}} teams is bigger than any standard plan. Let's put together something that fits.",
    "calc_unavailable": "Compare the plans below to find the one that fits your tournament.",
    "calc_promo_badge": "Launch offer",
    "calc_promo_until": "Launch price until {{date}}",
    "calc_promo_was": "Regular price {{price}}",
    "calc_total_sub_bundle": "{{count}} tournaments · launch bundle",
    "calc_total_sub_bundle_rest": "Launch bundle ({{covered}}) + {{remaining}} × {{unit}}",
    "calc_bundle_saving_vs": "Save {{saving}} vs buying separately",
    "show_plan": "Show {{plan}}"
  },
  "page_descriptions": {
    "tournaments": "Browse tournaments worldwide by age group, level, location and date, and find the right next tournament for your team on TorMatch.",
    "download": "Get the TorMatch app for iOS and Android: follow tournaments with live scores, schedules and results, and manage your team on the go."
  },
  "routes": {
    "download": "Download the App",
    "team_signup": "Team Sign-up",
    "public_tournament": {
      "rules": "Rules",
      "gallery": "Gallery",
      "schedule": "Schedule & Results",
      "posts": "News",
      "post": "News",
      "match": "Match",
      "referees": "Officials",
      "referee": "Referee Schedule",
      "team": "Team Schedule",
      "standings": "Standings",
      "venues": "Venues",
      "officiate": "Officiate match",
      "match_report": "Match report",
      "showcase": "Showcase"
    },
    "account": {
      "feed": "My Feed",
      "following": "Following",
      "my_tournaments": "My Tournaments",
      "participations": "My Participations",
      "settings": "Account Settings",
      "purchases": "My Purchases",
      "notifications": "Notifications",
      "invitations": "Invitations"
    },
    "home": "Find Tournaments & Organize Your Own",
    "tournaments": "Browse Tournaments Worldwide",
    "user-profile": "My TorMatch",
    "tournament-page": "Tournament Page",
    "register": "Register",
    "sign_in": "Sign In",
    "invitations": "Invitation",
    "newsletter_confirm": "Confirm Subscription",
    "unsubscribe": "Unsubscribe",
    "email_preferences": "Email Preferences",
    "create_tournament": "Create Tournament",
    "edit-tournament": "Edit Tournament",
    "next-edition": "Organize Next Edition",
    "friendlymatch": "Friendly Match",
    "tournamentMemberInvite": "Tournament Member Invite",
    "tournamentRegister": "Registration",
    "tournamentRegistrationRequests": "Tournament Registration Submissions",
    "tournamentAnalytics": "Tournament Analytics",
    "tournamentResults": "Tournament Results",
    "pay": "Payment",
    "not-found": "Page Not Found",
    "manage": {
      "widgets": "Widgets",
      "widget_edit": "Edit widget",
      "studio": "TorMatch Studio",
      "inbox": "Inbox",
      "announcements": "Announcements",
      "announcement": "Announcement",
      "announcements_setup": "Announcements Setup",
      "documents": "Documents",
      "coming_soon": "Coming Soon",
      "teams": "Teams",
      "players": "Players",
      "participants_setup": "Participants Setup",
      "officials_setup": "Officials Setup",
      "official": "Official",
      "match": "Match",
      "team": "Team",
      "venue": "Venue",
      "field": "Field",
      "album": "Album",
      "new_post": "New Post",
      "edit_post": "Edit Post",
      "checkout": "Checkout",
      "presentation_view": "Presentation View",
      "registration_forms": "Registration Forms",
      "registration_submissions": "Registration Submissions",
      "registration_design": "Registration Form Design",
      "billing": "Billing",
      "dashboard": "Dashboard",
      "features": "Features",
      "statistics": "Statistics",
      "format": "Format",
      "stages": "Stages",
      "participants": "Participants",
      "officials": "Officials",
      "scheduling": "Scheduling",
      "results": "Results",
      "live_matches": "Live Matches",
      "discipline": "Discipline",
      "settings": "Settings",
      "sponsors": "Sponsors",
      "staff": "Staff",
      "gallery": "Gallery",
      "posts": "Posts",
      "showcase": "Showcase",
      "registrations": "Registrations",
      "tournament_site": "Tournament Site",
      "presentation": "Presentation",
      "media": "Media",
      "plan_locked": "Plan required",
      "venues": "Venues"
    },
    "my-space": "My TorMatch",
    "my_space": "My Space",
    "my-tormatch": "My TorMatch",
    "features": "Features",
    "pricing": "Pricing",
    "contact": "Contact",
    "reset_password": "Reset Password"
  },
  "live_matches": {
    "page_title": "Live Matches",
    "page_description": "Track which matches are live now and what's up next across the whole tournament.",
    "loading": "Loading matches…",
    "empty_title": "Nothing scheduled yet",
    "empty_message": "Once matches are scheduled, the ones that are live and coming up will appear here.",
    "live_now": "Live now",
    "none_live": "No matches are live right now.",
    "by_court": "By court",
    "idle": "Idle",
    "live": "Live",
    "next_up": "Next up",
    "needs_attention": "Needs attention",
    "needs_attention_hint": "These matches are past their scheduled start but have no result yet."
  },
  "forgot_password_dialog": {
    "subtitle": "Enter your account email and we'll send you a link to reset your password.",
    "send_link": "Send reset link",
    "recaptcha_error": "Verification failed. Please try again.",
    "sent_title": "Check your inbox",
    "sent_body": "If an account exists for {{email}}, we've sent a password reset link. The link expires in 1 hour."
  },
  "reset_password_page": {
    "title": "Reset your password",
    "subtitle_for_email": "Choose a new password for {{email}}.",
    "verifying": "Checking your reset link…",
    "new_password": "New password",
    "confirm_password": "Confirm new password",
    "submit": "Update password",
    "password_min_length": "At least 10 characters",
    "password_requires_uppercase": "At least one uppercase letter",
    "passwords_dont_match": "Passwords don't match.",
    "code_invalid_title": "This link is no longer valid",
    "code_invalid_body": "Reset links expire after 1 hour and can only be used once.",
    "request_new_link": "Request a new link",
    "done_title": "Password updated",
    "done_body": "You can now sign in with your new password.",
    "go_to_sign_in": "Sign in",
    "confirm_fail": "We couldn't update your password. The link may have just expired — please request a new one.",
    "back_to_sign_in": "Back to sign in"
  },
  "features_page": {
    "hero": {
      "eyebrow": "FEATURES",
      "headline": "Tournaments, your way.",
      "subtitle": "From a 16-team weekend cup to a 200-team championship — one platform that gets out of your way and stays there.",
      "cta_primary": "Start a tournament",
      "cta_secondary": "Explore features",
      "bullet_blank_canvas": "Every feature is opt-in. Use what you need, hide the rest.",
      "bullet_any_size": "Same product whether you run 16 teams or 1,000.",
      "bullet_every_role": "Organizers, coaches, players, referees — all in one app.",
      "sync_caption": "Live across every screen, in real time."
    },
    "promises": {
      "eyebrow": "WHY TORMATCH",
      "title": "Three promises, every tournament.",
      "lede": "Tormatch was built around the way tournaments actually run. Not how software vendors wish they did.",
      "blank_canvas": {
        "title": "Only the features you need",
        "desc": "Every feature is a toggle. Turn on registration, brackets, live scoring, sponsors, analytics — or leave them off. Your tournament page only shows what you've enabled."
      },
      "any_size": {
        "title": "Simple at any size",
        "desc": "16 teams or 1,000. One division or twelve. The same UI, the same workflow, the same speed. Tormatch scales with you, not against you."
      },
      "every_role": {
        "title": "One app for every role",
        "desc": "Organizers create. Coaches manage squads. Players check fixtures. Referees score live. Everyone gets push notifications. All in the same product."
      }
    },
    "playground": {
      "eyebrow": "PLAYGROUND",
      "title": "See it. Touch it. Try it.",
      "lede": "Three working demos. No signup, no install — they run right here in your browser.",
      "demo1_title": "Build your format",
      "demo1_desc": "Drop teams into a group, then run a knockout bracket on the same screen the real organizers use.",
      "demo2_title": "Run a live match",
      "demo2_desc": "Kick off the match, log goals and cards, and watch the same scoreboard your venue sees in real time.",
      "demo3_title": "Design a kiosk display",
      "demo3_desc": "Pick a slide, swap a theme, and see the venue screens re-render instantly — same components, dark preview."
    },
    "personas": {
      "eyebrow": "ONE PRODUCT",
      "title": "One app, every role.",
      "lede": "Tormatch is the same product for the people who run the tournament, the people who play in it, and the people who watch.",
      "related_label": "Related features"
    },
    "headline_grid": {
      "eyebrow": "WHAT YOU GET",
      "title": "Everything your tournament needs.",
      "lede": "Explore each feature in depth — and switch any of them on or off, per tournament."
    },
    "hundred": {
      "eyebrow": "EVERYTHING ELSE",
      "title_suffix": "features inside the platform.",
      "lede": "The complete capability surface. Some are on by default, some you toggle, some you forget about until you need them — and then they are there."
    },
    "sports": {
      "eyebrow": "SPORTS",
      "title": "Built for the sports you actually run.",
      "lede": "Tormatch ships ready for football, rugby and hockey — and for set sports like tennis, padel, volleyball and table tennis.",
      "note": "Need a sport that is not on the list? Tell us — most are a configuration tweak away.",
      "badge_soon": "Soon"
    },
    "final_cta": {
      "title": "Run your tournament on tormatch.",
      "lede": "Free to start. No credit card. Cancel a tournament with one click. Build the next one in five minutes.",
      "primary": "Start a tournament",
      "secondary": "Explore tournaments",
      "r1": "Free to start",
      "r2": "Cancel anytime",
      "r3": "Setup in minutes"
    },
    "showcase": {
      "eyebrow": "WEB × APP",
      "title": "One tournament. Every screen in step.",
      "lede": "The web and the app are one live system. Do something on one — the other moves with it. Pick a workflow and try it both ways.",
      "tab_live": "Live scoring",
      "tab_live_sub": "Score on the web — the coach, referee and fans see it move on the app, instantly.",
      "tab_fixtures": "Fixtures",
      "tab_fixtures_sub": "Enter a result in a dialog on the web — every phone’s fixtures list updates live.",
      "tab_brackets": "Brackets",
      "tab_brackets_sub": "Decide your groups on the web — the knockout bracket fills itself on the app.",
      "tab_presentation": "Presentation",
      "tab_presentation_sub": "Design your venue screens on the web — the big screen re-renders in real time.",
      "live_sync": "live sync",
      "phone_view": "Phone view",
      "role_coach": "Coach",
      "role_coach_sub": "players & fans too",
      "role_referee": "Referee",
      "role_referee_sub": "logs the score",
      "role_organizer": "Organizer",
      "role_organizer_sub": "full control"
    },
    "app": {
      "preview_aria": "App preview {{n}} of {{total}}",
      "show_mockup": "Show mockup {{n}}",
      "explore_app": "Explore App"
    },
    "subpage": {
      "back_link": "All features",
      "cta_start_tournament": "Start a tournament",
      "cta_all_features": "All features",
      "problem_eyebrow": "The problem",
      "capabilities_eyebrow": "What it does",
      "capabilities_title": "How {{title}} earns its place.",
      "works_with_eyebrow": "Works with",
      "works_with_title": "Pair {{title}} with",
      "final_cta_title": "Run a real tournament with {{title}} on it.",
      "cta_back_to_all": "Back to all features",
      "status_available_label": "Available now",
      "status_coming_soon_label": "Coming soon",
      "status_platform_label": "Built into the platform"
    }
  },
  "manage_posts": {
    "no_posts_desc": "Posts are news and updates that appear on your tournament's public page.",
    "no_published_desc": "Published posts appear on your tournament's public page. Publish a draft to see it here.",
    "no_drafts_desc": "Posts you save without publishing wait here until they're ready.",
    "no_trashed_desc": "Posts you move to the trash show up here.",
    "no_results_desc": "No posts match your search. Try another term.",
    "create_first_desc": "Share news, results or announcements with everyone following the tournament.",
    "publish_all": "Publish all",
    "unpublish_all": "Unpublish all",
    "confirm_publish_title": "Publish posts",
    "confirm_publish_message": "The selected drafts will go live on your public tournament page.",
    "confirm_unpublish_title": "Unpublish posts",
    "confirm_unpublish_message": "The selected posts will go back to drafts and disappear from your public page. Nothing is deleted.",
    "confirm_bulk_trash_title": "Move posts to trash",
    "confirm_bulk_trash_message": "The selected posts will be moved to the trash. You can restore them from there.",
    "confirm_bulk_delete_title": "Delete posts permanently",
    "confirm_bulk_delete_message": "The selected posts will be deleted for good. This cannot be undone.",
    "tab_overview": "Overview",
    "configure_layout_note": "This is how posts appear on your public tournament page.",
    "title": "Posts",
    "description": "Share updates, news and announcements with your followers.",
    "new_post": "New post",
    "filter_by_status": "Filter by status",
    "all_posts": "All posts",
    "published": "Published",
    "drafts": "Drafts",
    "trash": "Trash",
    "trash_post": "Trash post",
    "delete_post": "Delete post",
    "trashed": "Trashed",
    "restore": "Restore",
    "permanently_delete": "Permanently delete",
    "confirm_trash": "Are you sure you want to move this post to the trash?",
    "confirm_permanent_delete": "Are you sure you want to permanently delete this post? This action cannot be undone.",
    "no_posts": "No posts yet",
    "no_published": "No published posts",
    "no_drafts": "No drafts",
    "no_trashed": "No trashed posts found",
    "create_first": "Create your first post",
    "col_media": "Media",
    "col_title": "Title",
    "col_author": "Author",
    "col_created": "Created",
    "col_published": "Published on",
    "col_likes": "Likes",
    "col_media_count": "Files",
    "view_table": "Table",
    "view_grid": "Grid",
    "view_layout": "Layout",
    "reset_columns": "Reset",
    "detail_title": "Edit post",
    "detail_subtitle": "Update the content, media and publishing status.",
    "title_placeholder": "Give your post a title…",
    "content_placeholder": "Write something…",
    "publish_card": "Publish",
    "media_reorder_hint": "Drag to reorder. The first item is the cover.",
    "media_cover": "Cover",
    "media_add": "Add media",
    "not_found": "This post no longer exists.",
    "back_to_posts": "Back to posts",
    "preview_unsaved": "Save first to see your latest changes",
    "publish": "Publish",
    "unpublish": "Unpublish",
    "publish_post": "Publish post",
    "unpublish_post": "Unpublish post",
    "confirm_publish": "Publish this post? It becomes visible on your public tournament page.",
    "confirm_unpublish": "Unpublish this post? It returns to drafts and is removed from your public tournament page.",
    "new_subtitle": "Write your post, add media and choose how to save it.",
    "new_publish_hint": "This post isn’t saved yet. Publish it to your public tournament page, or keep it as a draft you can finish later.",
    "save_draft": "Save as draft",
    "status_draft": "Draft",
    "status_published_hint": "Visible to everyone on the tournament page.",
    "status_draft_hint": "Only you can see this post.",
    "media_attached": "{{count}} file(s) attached",
    "media_drop_hint": "Drop files anywhere or click + to add",
    "enter_url": "Enter URL:"
  },
  "sponsors_setup": {
    "columns_title": "Logos per row",
    "columns_desc": "How many sponsor logos sit side by side in the widget on your tournament page.",
    "size_title": "Logo size",
    "size_desc": "How much height each logo gets. Larger logos are easier to read but fewer fit on screen.",
    "size_small_title": "Small",
    "size_small_desc": "Compact — good for a long sponsor list.",
    "size_medium_title": "Medium",
    "size_medium_desc": "The balanced default.",
    "size_large_title": "Large",
    "size_large_desc": "Maximum prominence for a handful of sponsors.",
    "color_title": "Colour treatment",
    "color_desc": "How sponsor logos are coloured on the public page.",
    "color_full_title": "Full colour",
    "color_full_desc": "Logos always shown exactly as supplied.",
    "color_grayscale_title": "Black & white",
    "color_grayscale_desc": "Subtle and uniform; a logo returns to colour on hover.",
    "details_title": "Details",
    "details_desc": "Extras shown alongside each logo.",
    "names_title": "Show sponsor names",
    "names_desc": "Print the sponsor's name under its logo.",
    "tile_title": "Frame each logo",
    "tile_desc": "Give every logo its own bordered tile instead of sitting bare on the card.",
    "public_note": "These settings only change what visitors see. Your sponsor list is unaffected."
  },
  "manage_sponsors": {
    "tab_overview": "Overview",
    "col_logo": "Logo",
    "col_name": "Sponsor",
    "col_website": "Website",
    "confirm_delete_title": "Delete this sponsor?",
    "confirm_delete_message": "This sponsor will be removed from your tournament's public pages. This cannot be undone.",
    "title": "Sponsors",
    "description": "Manage your tournament sponsors. Their logos will be showcased on the public pages to give them visibility.",
    "add_sponsor": "Add sponsor",
    "no_sponsors": "No sponsors yet.",
    "add_first": "Add your first sponsor"
  },
  "segmented_toggle": {
    "off": "Off",
    "on": "On"
  },
  "lineup_editor": {
    "name_label": "Lineup name",
    "captain_none": "No captain",
    "tap_slot_hint": "Tap a position to pick a player",
    "choose_player": "Choose player",
    "sort_by": "Sort by",
    "sort_name": "Name",
    "sort_number": "Number",
    "leave_empty": "Leave empty",
    "no_players": "No players available",
    "suspended_short": "Suspended",
    "formation": "Formation",
    "name_placeholder": "Lineup name (optional)",
    "bench": "Bench",
    "bench_empty": "All players are placed.",
    "tap_bench_hint": "Tap a bench player to fill this spot.",
    "captain": "Captain",
    "clear_slot": "Clear",
    "save_draft": "Save draft",
    "available": "Available",
    "suspended_group": "Suspended / unavailable",
    "suspended_in_lineup": "{{count}} suspended in this lineup",
    "suspended_in_lineup_block": "{{count}} suspended in this lineup — remove them before you submit",
    "blocked_suspended": "Suspended players can't be in this lineup: {{names}}"
  },
  "team_staff": {
    "count_one": "{{count}} staff member",
    "count_many": "{{count}} staff members",
    "section_title": "Team staff",
    "empty_title": "No staff yet",
    "empty_hint": "Add the coaches and other team officials.",
    "add_member": "Add staff member",
    "role_label": "Role",
    "empty": "No staff added yet.",
    "name_placeholder": "Staff name",
    "add": "Add",
    "role_head_coach": "Head coach",
    "role_assistant_coach": "Assistant coach",
    "role_gk_coach": "Goalkeeping coach",
    "role_physio": "Physio",
    "role_manager": "Manager",
    "role_other": "Other",
    "remove_title": "Remove this staff member?",
    "remove_message": "{{name}} will be removed from the team staff. You can add them again later."
  },
  "discipline": {
    "suspend_action": "Suspend",
    "add_note_action": "Add note",
    "stat_yellow": "Yellow",
    "stat_second_yellow": "2nd yellow",
    "stat_red": "Red",
    "stat_matches_out": "Matches out",
    "suspensions_heading": "Suspensions",
    "no_suspensions": "No suspensions.",
    "opponent_tbd": "Opponent not known yet",
    "new_suspension": "New suspension",
    "new_note": "New note",
    "status_served": "Served",
    "status_none": "No suspension",
    "served_tooltip": "Suspension served — eligible again.",
    "col_last_card": "Last card",
    "next_label": "Next",
    "no_fixture_yet": "No fixture yet",
    "notes_more": "+{{n}} more — click to see all",
    "note_from_referee": "Referee",
    "note_from_organizer": "Organiser",
    "status_suspended": "Suspended",
    "filter_yellow_cards": "Yellow cards",
    "filter_red_cards": "Red cards",
    "has_notes": "Has notes",
    "without_notes": "No notes",
    "add_suspension_heading": "Add a suspension",
    "add_suspension_hint": "Bans this player from their team's next matches, on top of any automatic ban from cards.",
    "ban_length_label": "Matches to miss",
    "reason_label": "Reason (optional)",
    "add_suspension": "Add suspension",
    "add_note": "Add",
    "note_placeholder": "Write a note about this player…",
    "save_note": "Save note",
    "fewer_matches": "Fewer matches",
    "more_matches": "More matches",
    "matches_unit": "matches",
    "empty_title": "No cards or suspensions yet",
    "empty_hint": "Cards from match reports appear here automatically. You can also add a suspension or note by hand.",
    "page_title": "Discipline",
    "page_subtitle": "Players who have received cards or are suspended.",
    "search_placeholder": "Search player or team",
    "show": "Show",
    "filter_all": "All",
    "filter_suspended": "Suspended only",
    "filter_has_cards": "Has cards",
    "col_player": "Player",
    "col_team": "Team",
    "col_cards": "Cards",
    "col_suspension": "Suspension",
    "col_notes": "Notes",
    "suspended_n": "{{n}} matches",
    "eligible": "Eligible",
    "unlinked": "Unlinked",
    "unlinked_no_name": "No name",
    "unlinked_tooltip": "This card was recorded against a typed-in name, not a rostered player, so it can't be tracked for suspensions. Add the player to the team and record cards against them to enable suspension tracking.",
    "manage": "Manage",
    "overview_empty": "No cards or suspensions yet.",
    "no_matches": "No players match your search",
    "dialog_title": "Manage discipline",
    "notes_heading": "Notes",
    "no_notes": "No notes yet.",
    "suspend_matches_label": "Suspend for N matches",
    "organizer_note_label": "Organizer note",
    "save": "Save",
    "clear_suspension": "Clear suspension",
    "delete_entry": "Delete entry",
    "delete_entry_title": "Delete this entry?",
    "delete_entry_confirm": "This permanently deletes this player's disciplinary entries, including any notes. This can't be undone.",
    "delete_blocked_cards": "This entry comes from cards shown in a match. Delete the card from the match to remove it.",
    "delete_note": "Delete this entry",
    "delete_note_title": "Delete this entry?",
    "delete_note_confirm": "This permanently deletes this entry and its notes. This can't be undone.",
    "no_cards": "No cards registered",
    "cards_cleared": "Cleared",
    "cards_cleared_tooltip": "Suspension cleared for {{n}} card(s). The cards stay on the record but no longer carry a ban.",
    "ban_matches_n": "{{n}} match ban",
    "decision_none": "No action",
    "decision_warning": "Warning",
    "decision_fine": "Fine",
    "status_dismissed": "Dismissed",
    "add_entry": "Add disciplinary entry",
    "select_player": "Select a player",
    "search_player_placeholder": "Search player, team or number",
    "player_team": "Team",
    "player_no_team": "No team",
    "no_players": "No players found.",
    "change_player": "Change player",
    "current_suspensions": "Current suspensions",
    "ban_covers_heading": "This ban covers",
    "vs": "vs",
    "unscheduled": "Unscheduled",
    "served": "served",
    "no_forward_ban": "Sent off only — no further matches missed.",
    "and_n_after": "And {{n}} more match(es) after that",
    "origin_red": "Red card",
    "origin_second_yellow": "Second yellow",
    "origin_yellow_accumulation": "Yellow accumulation",
    "origin_manual": "Disciplinary ban",
    "open_match": "Open match",
    "decision_null": "Pending decision",
    "origin_sanction": "Sanction",
    "origin_accumulation": "Accumulation",
    "counter": {
      "penalties": "Penalties",
      "suspensions": "Suspensions",
      "personal_fouls": "Personal fouls",
      "team_fouls": "Team fouls",
      "cautions": "Cautions",
      "majors": "Major penalties",
      "misconducts": "Misconducts",
      "green_cards": "Green cards",
      "gd_fouls": "Technical/flagrant fouls",
      "exclusions": "Exclusions"
    },
    "col_sanctions": "Sanctions",
    "filter_dismissals": "Sent off",
    "other_cards": "Other cards",
    "col_official": "Team official",
    "staff_title": "Team officials",
    "staff_hint": "Coaches and other team staff with a sanction or a case. Their bans keep them off the bench.",
    "staff_hint_off": "Coaches and other team staff with a sanction. Bans for team officials are off in the rules.",
    "staff_add": "Suspend a team official",
    "staff_empty": "No team official has a sanction yet.",
    "staff_pick": "Who is it about?",
    "staff_pick_team": "Choose a team",
    "staff_pick_official": "Choose a team official",
    "staff_bans_off_note": "Bans for team officials are off in the rules (Configuration). A ban filed here is recorded but doesn’t keep anyone off the bench until you switch them on.",
    "staff_suspend_hint": "Keeps this team official off the bench for the team’s next matches, on top of any automatic ban.",
    "reason": {
      "accumulated_cautions": "{{n}} yellow cards",
      "accumulated": "{{counter}}: {{n}}",
      "decision": "Disciplinary decision",
      "sanctions_red": "{{n}} red cards",
      "sanctions_second_yellow": "{{n}} second-yellow dismissals",
      "sanctions": "{{sanction}}: {{n}}",
      "manual_bans": "disciplinary ban",
      "sanctions_red_one": "{{n}} red card",
      "sanctions_second_yellow_one": "{{n}} second-yellow dismissal"
    },
    "rules": {
      "custom": "own rules",
      "reset_action": "Reset to TorMatch default",
      "reset_title": "Reset the rules?",
      "reset_confirm": "The bans, accumulation, counting and lineup rules go back to the TorMatch default for this sport. Decisions you already made on players stay.",
      "division_inherits": "This division follows the tournament’s rules. A change you save here gives it its own rules.",
      "division_custom": "This division has its own rules.",
      "follow_tournament": "Use the tournament’s rules",
      "bans_title": "Bans",
      "bans_desc": "How many of the team’s following matches a sanction costs by default.",
      "no_ban": "No automatic ban",
      "no_ban_short": "None",
      "no_sanctions": "This sport records no sanctions.",
      "ban_hint_dismissal": "Following matches missed after this sending-off (0 = sent off in that match only).",
      "ban_hint_other": "Following matches missed after this sanction. Usually none: it counts towards accumulation instead.",
      "accum_title": "Accumulation",
      "accum_desc": "Optionally turn repeated sanctions across matches into a ban.",
      "accum_label": "{{counter}} accumulation",
      "accum_hint": "Every N {{counter}} across the tournament triggers a ban.",
      "accum_mode": "How the ban is triggered",
      "mode_every": "Every N",
      "mode_at": "At set counts",
      "accum_readout_every": "Every {{n}} = {{m}} matches out",
      "accum_readout_at": "At {{list}} = {{m}} matches out",
      "accum_readout_at_then": "At {{list}}, then every {{then}} = {{m}} matches out",
      "every_label": "Count per ban",
      "at_label": "Ban at",
      "then_every_label": "then every",
      "matches_out_label": "Matches out",
      "accum_off_note": "Repeated sanctions won’t cause bans on their own.",
      "counting_title": "Counting",
      "counting_desc": "When accumulated counts start again, and where they add up.",
      "reset_label": "Counts start again",
      "reset_never": "Never",
      "reset_group_stage": "After the group stage",
      "reset_quarter_final": "From the quarter-finals",
      "reset_stage": "After every stage",
      "reset_match": "After every match",
      "reset_custom_stage": "After a chosen stage",
      "scope_division": "Per division",
      "scope_division_desc": "Counts add up within each division.",
      "scope_tournament": "Whole tournament",
      "scope_tournament_desc": "Counts add up across all divisions.",
      "counting_note": "Only matters when accumulation is on.",
      "lineups_step": "Lineups",
      "lineups_title": "Lineups and team officials",
      "lineups_desc": "What happens when a suspended player is put in a lineup, and whether team officials can be suspended.",
      "policy_warn": "Warn",
      "policy_warn_desc": "The lineup can be submitted; suspended players are flagged.",
      "policy_block": "Block",
      "policy_block_desc": "A lineup with a suspended player can’t be submitted or confirmed.",
      "staff_bans_label": "Bans for team officials",
      "staff_bans_hint": "Coaches and other team staff are suspended by the same rules as players.",
      "preview_title": "Effect on players",
      "preview_desc": "Your edits, applied to the sanctions of the players on the Discipline list.",
      "preview_was": "was {{n}}",
      "preview_players": "players with a ban",
      "preview_matches": "matches out in total",
      "preview_more": "+{{n}} more",
      "preview_same": "No player’s ban changes.",
      "preview_note": "An estimate: every sanction counts once, without reset points, cleared cards or your own bans.",
      "summary_ban": "{{sanction}}: {{n}} following matches",
      "summary_accum_on": "{{counter}}: a ban every {{n}}",
      "summary_accum_off": "{{counter}}: no accumulation ban",
      "summary_warn": "Lineups: suspended players are flagged",
      "summary_block": "Lineups: suspended players are blocked",
      "summary_staff_bans": "Team officials can be suspended",
      "accum_readout_every_one": "Every {{n}} = {{m}} match out",
      "accum_readout_at_one": "At {{list}} = {{m}} match out",
      "accum_readout_at_then_one": "At {{list}}, then every {{then}} = {{m}} match out",
      "summary_ban_one": "{{sanction}}: {{n}} following match"
    },
    "ladder": {
      "code_violation": "Code violation",
      "misconduct": "Misconduct"
    },
    "ladder_step": {
      "warning": "Warning",
      "yellow": "Yellow card",
      "point_penalty": "Point penalty",
      "game_penalty": "Game penalty",
      "default": "Default",
      "penalty_point": "Penalty point",
      "penalty_points_2": "2 penalty points",
      "expulsion": "Expulsion",
      "disqualification": "Disqualification",
      "fault": "Fault",
      "stroke": "Stroke",
      "match_awarded": "Match awarded",
      "leg_awarded": "Leg awarded",
      "frame_awarded": "Frame awarded",
      "rack_awarded": "Rack awarded",
      "map_loss": "Map loss"
    },
    "ladder_effect": {
      "award_point": "Point to {{name}}",
      "award_game": "Game to {{name}}",
      "award_segment": "{{unit}} to {{name}}",
      "award_count": "{{n}} points to {{name}}",
      "person_out_segment": "Out for the rest of the set",
      "person_out_match": "Out for the rest of the match",
      "match_default": "Loses the match by default",
      "none": "No score change"
    },
    "ladder_ui": {
      "next_step": "Next: {{step}}",
      "override": "Umpire's choice",
      "pending_default": "{{name}} loses by default. Finish the match as a walkover.",
      "section_title": "Discipline",
      "ladder": "Type",
      "step": "Step",
      "step_hint": "Picked automatically from the earlier steps. Choose another step only for an umpire's decision.",
      "automatic": "Automatic: {{step}}",
      "player_optional": "Optional: the step counts for the whole side.",
      "record": "Record step",
      "recorded": "Step recorded",
      "remove": "Remove step",
      "removed": "Step removed",
      "finish_walkover": "Finish as walkover",
      "timeline_title": "Discipline in this set"
    },
    "page_subtitle_sanctions": "Players with sanctions or suspensions.",
    "col_last_sanction": "Last sanction",
    "suspended_n_one": "{{n}} match"
  },
  "common": {
    "not_found_desc": "Check the link, or go back and pick it from the list.",
    "no_results_desc": "Nothing matches your search or filters.",
    "search": "Search",
    "actions": "Actions",
    "back": "Back",
    "back_to_tournament": "Back to tournament",
    "cancel": "Cancel",
    "confirm": "Confirm",
    "done": "Done",
    "ok": "OK",
    "dismiss": "Dismiss",
    "preview": "Preview",
    "edit": "Edit",
    "save": "Save",
    "reset_to_default": "Reset to default",
    "error": "Something went wrong. Please try again.",
    "changes_saved": "Changes saved",
    "close": "Close",
    "delete": "Delete",
    "remove": "Remove",
    "yes": "Yes",
    "no": "No",
    "loading": "Loading...",
    "move_up": "Move up",
    "move_down": "Move down",
    "enabled": "Enabled",
    "disabled": "Disabled",
    "details": "Details",
    "change": "Change",
    "copy": "Copy",
    "view": "View",
    "no_results": "No results",
    "clear_search": "Clear search",
    "reorder": "Reorder",
    "clear": "Clear",
    "optional": "Optional",
    "saving": "Saving…",
    "no_matches": "No matches",
    "copied": "Copied to clipboard",
    "copy_failed": "Couldn't copy. Select the text and copy it manually.",
    "next": "Next",
    "add": "Add",
    "create": "Create",
    "apply": "Apply",
    "reset": "Reset",
    "disable": "Disable",
    "enable": "Enable",
    "discard": "Discard",
    "continue": "Continue",
    "send": "Send",
    "retry": "Try again",
    "archive": "Archive",
    "unpublish": "Unpublish",
    "publish": "Publish",
    "open_name": "Open {{name}}",
    "open_match_between": "Open {{team1}} vs {{team2}}",
    "open_match": "Open match",
    "team_logo_alt": "{{name}} logo",
    "city_icon_alt": "City",
    "tournament_image_alt": "Tournament image",
    "download_app_store": "Download on the App Store",
    "get_it_google_play": "Get it on Google Play",
    "generated_by_tormatch": "Generated by tormatch.com",
    "step_of": "Step {{current}} of {{total}}",
    "unsaved_changes": "Unsaved changes"
  },
  "user_page": {
    "nav_notifications": "Notifications",
    "edit": "Edit",
    "role": "Role",
    "organization": "Organization",
    "organizer_status": "Organizer status",
    "organize_tournament": "Organize tournament",
    "add_team": "Add team",
    "my_teams": "My teams",
    "kit_color": "Kit color",
    "find_tournaments": "Find tournaments",
    "edit_team": "Edit team",
    "activity": "Activity",
    "activity_empty": "No recent activity yet.",
    "load_more": "Load more",
    "my_tournaments": "My tournaments",
    "my_favorite_tournaments": "My favorite tournaments",
    "my_information": "My information",
    "what_is_your_name": "What is your name?",
    "enter_your_name": "Enter your name",
    "which_organization_are_you_part_of": "Which organization are you part of?",
    "enter_organization": "Enter organization",
    "select_role": "Select role",
    "active": "Active",
    "inactive": "Inactive",
    "account_settings": "Account settings",
    "account_settings_description": "Manage your account details and security settings below.",
    "e_mail_address": "E-mail address",
    "verified": "Verified",
    "resend_verification_email": "Resend verification email",
    "change_password": "Change password",
    "close": "Close",
    "scroll_to_favorites": "Scroll to favorites",
    "open_account_settings": "Open account settings",
    "save_changes": "Save changes",
    "are_you_an_organizer": "Are you an organizer?",
    "what_is_your_role": "What is your role?",
    "back_to_account_settings": "Back to account settings",
    "save_password": "Save password",
    "enter_new_password": "Enter new password",
    "confirm_new_password": "Confirm new password",
    "could_not_change_password": "Could not change password, try again",
    "new_password": "New password",
    "confirm_password": "Confirm password",
    "scroll_to_top": "Scroll to top",
    "city": "City",
    "team": "Team",
    "whats_your_team_class": "What is your team's class?",
    "whats_your_team_name": "What is your team's name?",
    "edit_team_subtitle": "Update your team's details below.",
    "add_team_subtitle": "Fill in your team details to get started.",
    "delete_team": "Delete team",
    "delete_team_confirm": "Are you sure you want to delete this team?",
    "password_reset_email_sent": "Password reset email sent successfully to ",
    "phone_number": "Phone number",
    "complete_your_profile": "Complete your profile",
    "complete_profile_description": "Add missing details to get the most out of TorMatch.",
    "add_organization": "Add organization",
    "add_city": "Add location",
    "complete_profile_btn": "Complete profile",
    "verify_your_email": "Verify your email address",
    "verify_email_description": "Please verify your email to unlock all organizer features.",
    "verify_email_btn": "Verify now",
    "not_verified": "Not verified",
    "verification_email_sent": "Verification email sent successfully.",
    "verification_email_error": "Failed to send verification email. Please try again.",
    "my_feed": "My Feed",
    "discover": "Discover",
    "following": "Following",
    "discover_empty": "Nothing to discover yet",
    "discover_empty_desc": "Community activity from nearby tournaments will appear here.",
    "complete_profile_nudge": "Complete your profile",
    "complete_profile_desc": "Add your organization and location for personalized activity.",
    "explore_near_you": "Explore tournaments near you",
    "explore_near_you_desc": "Find and follow tournaments in",
    "explore_tournaments": "Explore",
    "browse_all_tournaments": "Browse all",
    "whats_happening": "What's happening",
    "view": "View",
    "invitations": "Invitations",
    "invitations_subtitle": "Manage your tournament invitations",
    "view_all": "View all",
    "pending_invitations": "Pending",
    "past_invitations": "Past",
    "expired_invitations": "Expired",
    "no_invitations": "No invitations",
    "accept_invite": "Accept",
    "decline_invite": "Decline",
    "your_tournaments": "My tournaments",
    "your_tournaments_desc": "A quick overview of your latest tournaments",
    "status_upcoming": "Upcoming",
    "status_live": "Live",
    "status_past": "Past",
    "no_pending_invitations": "No pending invitations",
    "no_pending_invitations_sub": "You're all caught up — new invites will show up here.",
    "pin": "Pin to top",
    "unpin": "Unpin",
    "pinned_toast": "Pinned to top",
    "unpinned_toast": "Unpinned",
    "pinned": "Pinned",
    "pin_failed": "Couldn't update pin — please try again",
    "more_invitations": "more",
    "invite_accepted": "Accepted",
    "my_participations": "My Participations",
    "my_participations_desc": "Your active roles across all tournaments",
    "my_participations_desc_short": "Your current tournament roles",
    "no_upcoming_participations": "No upcoming participations",
    "no_past_participations": "No past participations",
    "upcoming": "Upcoming",
    "past": "Past",
    "role_coach": "Coach",
    "role_player": "Player",
    "role_referee": "Referee",
    "edit_profile": "Edit Profile",
    "settings": {
      "title": "Settings",
      "subtitle": "Manage how your profile shows up across Tormatch.",
      "saved": "Saved",
      "save_failed": "Couldn't save your changes. Please try again.",
      "private_field_hint": "Kept private — never shown on your public profile.",
      "tab_profile": "My Profile",
      "tab_account": "Account Settings",
      "tab_billing": "Billing",
      "basics": {
        "title": "Basics",
        "description": "Your name and private contact details."
      },
      "organization": {
        "title": "Organization & role",
        "description": "Your club, location and role."
      },
      "become_organizer": {
        "title": "Become an organizer",
        "description": "Unlock tournament organizing tools on your account.",
        "status_note": "You're currently a regular member. Upgrade to an organizer account to create and run your own tournaments, manage teams and referees, and publish matches to participants — all from the same account.",
        "cta": "Become an organizer",
        "dialog_title": "Ready to organize tournaments?",
        "dialog_message": "Switching on organizer mode unlocks the full Tormatch toolkit. You can always reach out if you'd like to switch back later.",
        "perk_organize": "Create tournaments with schedules, groups and brackets",
        "perk_manage": "Invite staff and manage teams, referees and matches",
        "perk_reach": "Publish updates to participants and followers",
        "confirm": "Yes, enable organizer mode",
        "success": "You're now an organizer — welcome aboard!",
        "error": "Couldn't enable organizer mode. Please try again."
      },
      "account": {
        "title": "Account & security",
        "description": "Your login email and password.",
        "change_password_desc": "You'll be signed out and sent an email to reset it.",
        "change_password_cta": "Send reset email"
      },
      "danger": {
        "title": "Danger zone",
        "description": "Actions that end your session or permanently affect your account.",
        "sign_out_title": "Sign out",
        "sign_out_desc": "End your session on this device.",
        "sign_out_cta": "Sign out",
        "delete_title": "Delete account",
        "delete_desc": "Contact us to permanently delete your account and all associated data.",
        "delete_cta": "Request deletion"
      },
      "delete_account_confirm": "Delete your account? This schedules permanent deletion after a 30-day grace period. Your invoices are kept (anonymized) as required by tax law.",
      "delete_account_scheduled": "Your account is scheduled for deletion. You have been signed out.",
      "delete_account_owned": "Please transfer or delete the tournaments you solely own first:",
      "tab_email": "Email"
    },
    "profile": "Profile",
    "account": "Account",
    "organizer": "Organizer",
    "organized": "Organized",
    "participated": "Participated",
    "nav_overview": "Overview",
    "overview_subtitle": "Your activity, tournaments and updates at a glance.",
    "nav_tournaments_run": "My Tournaments",
    "nav_participations": "Participations",
    "nav_following": "Following",
    "nav_purchases": "Purchases",
    "nav_settings": "Settings",
    "status_draft": "Draft",
    "unfollow": "Unfollow",
    "unfollowed_toast": "Unfollowed {{name}}",
    "undo": "Undo",
    "sort_date": "Tournament date",
    "sort_created": "Date created",
    "sort_name": "Name (A–Z)",
    "sort_date_desc": "Tournament date (newest)",
    "sort_date_asc": "Tournament date (oldest)",
    "sort_created_desc": "Date created (newest)",
    "sort_created_asc": "Date created (oldest)",
    "highlight_happening_now": "Happening now",
    "highlight_up_next": "Up next",
    "highlight_live": "Live",
    "highlight_today": "Today",
    "highlight_tomorrow": "Tomorrow",
    "highlight_in_days": "In {{count}} days",
    "highlight_manage": "Manage",
    "highlight_view": "View",
    "following_desc": "Tournaments you are following",
    "no_tournaments_yet": "You haven't organized any tournaments yet",
    "no_tournaments_sub": "Tournaments you organize will show up here.",
    "no_participations_yet": "No participations yet",
    "no_participations_sub": "Tournaments you join as coach, player or referee will show up here.",
    "no_following_yet": "You're not following any tournaments yet",
    "no_search_results": "No results match your search",
    "concept": "Concept",
    "suggestions": "Suggestions",
    "suggestions_no_team_title": "Find tournaments near you",
    "suggestions_no_team_desc": "Add your first team to get personalized tournament suggestions",
    "suggestions_no_team_btn": "Add a team",
    "suggestions_empty": "No upcoming tournaments found",
    "suggestions_tournament_suffix": "tournaments",
    "suggestions_upcoming": "Upcoming",
    "verify_required_title": "Verify your email first",
    "verify_required_desc": "To create and manage tournaments, you need to verify your email address.",
    "wrong_email_question": "Using the wrong email address?",
    "new_email_label": "New email address",
    "save_and_resend": "Save & resend verification",
    "email_updated_resent": "Email updated! Verification link sent.",
    "verify_edit_hint": "Enter your correct email address and we'll send a new verification link.",
    "cancel": "Cancel",
    "app_prompt_title": "Get the TorMatch app",
    "app_prompt_desc": "Access your upcoming matches, live results, and tournament announcements on the go.",
    "app_prompt_downloaded": "I already have the app",
    "verify_email_nudge": "Verify your email address",
    "verify_email_desc": "A verified email is required to publish your tournament and reach participants.",
    "no_upcoming_following": "No upcoming tournaments",
    "no_past_following": "No past tournaments yet",
    "invite_expires": "Expires {{date}}",
    "invite_declined": "Declined",
    "invite_revoked": "Revoked",
    "invite_expired": "Expired"
  },
  "tournament_page": {
    "location": "Location",
    "participating_teams": "Participating teams",
    "showcase": "Showcase",
    "message": "Message",
    "share": "Share",
    "share_now": "Share this tournament now!",
    "copy_link": "Copy link",
    "copy": "Copy",
    "link_copied": "Copied!",
    "share_via": "Share via",
    "location_widget": {
      "open_details": "Open location details",
      "venues": "Venues",
      "main_venue": "Main",
      "get_directions": "Get directions",
      "google_maps": "Google Maps",
      "apple_maps": "Apple Maps",
      "waze": "Waze",
      "open_in_maps": "Open in Maps",
      "copy_address": "Copy address",
      "address_copied": "Address copied to clipboard",
      "share_location": "Share location",
      "location_copied": "Location copied to clipboard",
      "add_to_calendar": "Add to calendar",
      "show_distance": "How far is it?",
      "distance_away": "{{distance}} away",
      "distance_unavailable": "Distance unavailable",
      "location": "Location",
      "full_map": "Full map",
      "pitches": "{{count}} pitches",
      "pitch_one": "1 pitch",
      "indoor": "Indoor",
      "more_venues": "+ {{count}} more",
      "show_less": "Show less",
      "two_finger_hint": "Use two fingers to move the map",
      "all_venues": "All venues"
    },
    "description": "Description",
    "read_less": "Read less",
    "read_more": "Read more",
    "tournament_format": "Tournament format",
    "blog_posts": "Blog posts",
    "news": "News",
    "tournament_news": "Tournament news",
    "posts_all": "All posts",
    "posts_stat_posts": "Posts",
    "posts_stat_reactions": "Reactions",
    "posts_empty": "No posts have been published yet.",
    "post_not_found": "This post is no longer available.",
    "see_more": "See more",
    "see_less": "See less",
    "team": "Team",
    "teams": "Teams",
    "competitor": "Competitor",
    "competitors": "Competitors",
    "tournament_status_not_published": "Not Published",
    "unpublished_title": "This tournament isn't public yet",
    "unpublished_body": "The organizer hasn't published this tournament. Once they do, its schedule, results and teams will appear here.",
    "unpublished_signin_hint": "Organizing or taking part?",
    "unpublished_signin": "Sign in",
    "tournament_status_published": "Your tournament is live!",
    "tournament_published_description": "Your tournament is public and visible to everyone.",
    "view_public_page": "View public page",
    "preview_public_site": "Preview public site",
    "tournament_status_complete": "complete",
    "tournament_publish_checklist_header": "To publish your tournament, make sure to complete the following:",
    "tournament_publish_checklist_add_logo": "Add logo",
    "tournament_publish_checklist_add_cover": "Add cover",
    "tournament_publish_checklist_add_description": "Add description",
    "tournament_publish_checklist_add_organization_info": "Add organization info",
    "tournament_publish_button": "Publish",
    "no_description": "Your tournament does not have a description",
    "add_now": "Add now",
    "continue_and_add_later": "Continue and add later",
    "remove_team": "Remove team",
    "upload_and_add": "Upload And Add",
    "add_team": "Add team",
    "send_a_message": "Send a message",
    "send_a_message_to_organizers_of_the_tournament": "Send a message to organizers of the tournament",
    "enter_your_message": "Enter your message",
    "send_a_mail_response": "Send a mail response",
    "send_on_behalf": "Send on behalf of a team?",
    "view_all": "View all",
    "view_all_results": "View all results",
    "view_full_schedule": "View full schedule",
    "matches_card": {
      "live": "Live",
      "results": "Results",
      "fixtures": "Fixtures",
      "by_date": "By date",
      "by_court": "By court",
      "no_live": "No matches are live right now.",
      "no_results": "No results yet.",
      "no_upcoming": "No upcoming matches.",
      "ordinal_1": "1st",
      "ordinal_2": "2nd",
      "ordinal_3": "3rd",
      "ordinal_n": "{{n}}th"
    },
    "matches": "Matches",
    "gallery": "Gallery",
    "results_card_title": "Results",
    "latest_results": "Latest results",
    "upcoming_games": "Upcoming games",
    "live_now": "Live",
    "final": "Final",
    "scheduled": "Scheduled",
    "results_empty_before_start": "Tournament starts on {{date}}. Results will appear after matches finish.",
    "results_empty": "No results yet.",
    "upcoming_empty": "Upcoming games will appear here.",
    "upcoming_empty_finished": "Tournament finished. No upcoming games.",
    "delete_club": "Delete Club",
    "past_winner": "Past winner",
    "title_holder": "Title holder",
    "latest_edition": "Latest edition",
    "showcase_no_teams": "No participating teams added",
    "delete_team": "Delete team",
    "gallery_dialog": {
      "archive_empty_desc": "Items you archive in the Gallery tab are hidden from the public and collected here.",
      "empty_desc": "Photos and videos you add here appear in your tournament's public gallery.",
      "empty_upload_desc": "Add photos and videos from your device.",
      "empty_album_desc": "Group media into albums, like one per match day.",
      "album_empty_desc": "Upload photos and videos to fill this album.",
      "albums": "Albums",
      "items": "items",
      "blog_media": "Blog & Media",
      "upload_media": "Upload media",
      "create_album": "Create album",
      "confirm_delete_media_title": "Delete media",
      "confirm_delete_media_message": "The selected media will be deleted permanently. This cannot be undone.",
      "confirm_delete_album_title": "Delete album",
      "confirm_delete_album_message": "This album and everything in it will be deleted. This cannot be undone.",
      "add_album": "Add album",
      "edit_album": "Edit album",
      "name": "Name",
      "what_is_you_album_name": "What is your album name?",
      "archived_albums": "Archived albums",
      "manage_album_content": "Manage album content",
      "archived_media": "Archived media",
      "no_archived_media": "No archived media",
      "no_archived_albums": "No archived albums",
      "no_media_yet": "No media yet",
      "album_is_empty": "Album is empty",
      "no_albums_yet": "No albums yet",
      "choose_album": "Choose album",
      "tab_overview": "Overview",
      "all_media": "All media",
      "current_album": "Current album",
      "no_albums_found": "No albums match your search",
      "remove_from_album": "Remove from album",
      "remove_from_album_hint": "Stays in your gallery",
      "confirm_remove_from_album_title": "Remove from album",
      "confirm_remove_from_album_message": "The selected media will no longer belong to an album. It stays in your gallery.",
      "confirm_move_title": "Move content",
      "confirm_move_message": "Confirm moving content to the selected album",
      "gallery": "Gallery",
      "gallery_description": "Manage your tournament photos and albums. Upload, organize, and share your tournament media.",
      "all_photos": "All Photos",
      "album": "Album",
      "drop_to_upload": "Drop files to upload",
      "drop_subtitle": "Images and videos will be added to the selected album",
      "upload": "Upload",
      "archive": "Archive",
      "archive_info": "Archived items are not visible to the public. You can unarchive items to make them visible again.",
      "no_archived_content": "No archived content"
    },
    "schedule_page": {
      "eyebrow": "Schedule",
      "title": "Schedule",
      "coming_soon": "The schedule will appear here soon.",
      "view_calendar": "Calendar",
      "view_list": "List",
      "all_teams": "All teams",
      "all_fields": "All fields",
      "fields_count": "{{count}} fields",
      "select_all": "Select all",
      "clear_all": "Clear all",
      "events": "Events",
      "no_court": "No court",
      "unscheduled": "Not yet scheduled",
      "empty": "No matches or events have been scheduled yet.",
      "empty_day": "Nothing scheduled on this day."
    },
    "upload_blog_post": "Upload blog post",
    "edit_blog_post": "Edit blog post",
    "title": "Title",
    "blog_post_title": "Blog post title",
    "blog_post_content": "Blog post content",
    "all_editions": "All editions",
    "open": "Open",
    "add_tournament_date_range_in_future": "Add tournament date range in the future",
    "social_links": "Social links",
    "links": {
      "youtube": "YouTube",
      "instagram": "Instagram",
      "facebook": "Facebook",
      "twitter": "Twitter",
      "x": "X",
      "website": "Website",
      "linkedin": "LinkedIn",
      "tiktok": "TikTok",
      "add": "Add",
      "added": "Added",
      "add_social": "Add Social Media Link",
      "add_custom": "Add Custom Link",
      "edit_social": "Edit Social Media Link",
      "edit_custom": "Edit Custom Link",
      "choose_platform": "Choose a platform",
      "choose_icon": "Choose an icon",
      "enter_url": "Enter the URL",
      "url": "URL",
      "label": "Label",
      "url_placeholder": "example.com/your-page",
      "normalize_hint": "You can paste a full URL or just the handle — we'll add https:// for you.",
      "host_mismatch": "This doesn't look like a {{platform}} URL. You can save anyway.",
      "empty_title": "No links added yet",
      "empty_subtitle": "Add your social media profiles or custom links so visitors can find tickets, rules, and more.",
      "custom_cap": "You can add up to {{max}} custom links.",
      "save_failed": "Could not save links. Please try again."
    },
    "tournament_brochure": "tournament brochure",
    "tournament_documents": "tournament documents",
    "sponsors": "Sponsors",
    "preview_analytics": "Preview analytics",
    "preview_analytics_description": "Preview the detailed analytics of the tournament, including traffic and reach metrics, user engagement data, and advanced insights to help you understand performance and participation trends.",
    "viewer_card_app_subtitle": "Open the tournament in the mobile app for the best experience",
    "viewer_card_title": "Viewing as participant",
    "viewer_role_player": "Player",
    "viewer_role_coach": "Coach",
    "viewer_role_referee": "Referee",
    "viewer_team_label": "Team",
    "my_team_tooltip": "My Team",
    "team_events_title": "Team events",
    "follower": "follower",
    "followers": "followers",
    "preview_schedule": "Preview schedule",
    "schedule_settings": "Schedule settings",
    "tournament_publish_intro": "Your tournament is live — now let's make it stand out! Add a logo, cover photo, description, and organizer info so teams know exactly what to expect. You can complete everything now or come back to it anytime from your tournament settings.",
    "tournament_publish_progress": "Progress",
    "about_the_tournament": "About the tournament",
    "manage_links": "Manage links",
    "send_message": {
      "sent_title": "Message sent",
      "sent_body": "The organisers will get back to you by email shortly. Thanks for reaching out.",
      "title": "Message the organisers",
      "subtitle": "They'll receive your message by email and reply to your account email.",
      "your_message": "Your message",
      "optional": "(optional)",
      "sending": "Sending…",
      "send": "Send message",
      "as_myself": "Just me"
    },
    "gallery_image_alt": "Image {{n}}",
    "upload_progress": "Progress",
    "post_media_alt": "Post media",
    "tournament_status_not_published_info": "Tournament is not published!"
  },
  "tournament_results_page": {
    "title": "Tournament results",
    "coming_soon": "This page will show all results and upcoming games. Coming soon.",
    "back_to_tournament": "Back to tournament"
  },
  "home_page": {
    "welcome_to_tormatch": "Welcome to Tormatch",
    "language": "Language",
    "the_ultimate_platform_for_matching_teams_with_tournaments_and_tournaments_with_teams": " The ultimate platform for matching teams with tournaments and tournaments with teams",
    "all_rights_reserved": "All Rights Reserved.",
    "about_us": "About us",
    "privacy_policy": "Privacy policy",
    "download_today": "Download Today",
    "download_description": "Discover the easiest way to connect teams with tournaments. Take the first step towards your next challenge. Connect easily and elevate your game.",
    "popular_destinations": "Popular destinations",
    "popular_destinations_subtitle": "Explore tournaments in top-rated locations.",
    "happening_now": "Happening Now",
    "happening_now_subtitle": "Check out tournaments currently in progress.",
    "upcoming_tournaments": "Upcoming Tournaments",
    "upcoming_tournaments_subtitle": "Sign up for the next tournaments.",
    "featured_tournaments": "Featured tournaments",
    "featured_tournaments_subtitle": "Highlighting some of the best tournaments available right now.",
    "recently_viewed_tournaments": "Recently viewed tournaments",
    "recently_viewed_tournaments_subtitle": "Quickly access the tournaments you checked out lately.",
    "featured_matches": "Featured Matches",
    "featured_matches_subtitle": "Highlighted matches from tournaments happening right now.",
    "featured_posts": "From the Community",
    "featured_posts_subtitle": "Stories, updates and highlights from the world of tournament football.",
    "learn_more": "Learn more",
    "home_page_filter": {
      "age_class": "Age Class",
      "choose_age_class": "Choose Age Class",
      "level": "Level",
      "choose_level": "Choose Level",
      "location": "Location",
      "find_your_location": "Find Your Location",
      "no_results": "No results found",
      "number_of_results": "Number Of Results: ",
      "country": "Country",
      "city": "City",
      "state": "State",
      "tournaments": "Tournaments",
      "no_tournaments": "No Tournaments",
      "show_results": "Show {{count}} Tournaments",
      "choose_gender": "Gender",
      "all_genders": "All genders",
      "find_your_match": "Find Your Match",
      "filter_description": "Filter by location, age and level to find the perfect tournament."
    },
    "choose_your_level": "Choose your level",
    "choose_your_level_subtitle": "Select a category to find tournaments suitable for your team.",
    "choose_your_level_desc": "Select your level to find or attract the right teams and tournaments.",
    "elite_pro": "Elite",
    "elite_pro_desc": "Professional academies & elite youth teams. Compete at the highest level.",
    "explore_elite_pro": "Explore Elite",
    "international": "International",
    "international_desc": "Ambitious amateur or semi-pro teams. Experience international competition.",
    "explore_international": "Explore International",
    "amateur": "Amateur",
    "amateur_desc": "Local and regional tournaments. Accessible, fun and community-driven.",
    "explore_amateur": "Explore Amateur",
    "tournaments_count_label": "{{count}} tournaments",
    "for_teams": "For Teams",
    "find_better_tournaments": "Find better tournaments — faster.",
    "find_better_tournaments_sub": "Join the largest network of tournaments worldwide.",
    "fbt_list_1": "Over 2,000 live tournaments",
    "fbt_list_2": "Advanced filters: level, distance, date, age",
    "fbt_list_3": "Direct contact with organizers",
    "fbt_list_4": "One account for multiple teams",
    "fbt_list_5": "Follow tournaments and receive updates in your feed",
    "create_team_account": "Create Team Account",
    "for_tournaments": "For Tournaments",
    "go_live": "Go live in 5 minutes.",
    "go_live_sub": "Get the visibility and tools your website doesn't have.",
    "gl_list_1": "Publish tournament info in minutes",
    "gl_list_2": "Free registration tool",
    "gl_list_3": "Teams can follow you and receive automatic updates",
    "gl_list_4": "Professional dashboard",
    "gl_list_5": "Direct leads from teams in your level",
    "create_tournament_account": "Create Tournament Account",
    "features_badge": "Platform Features",
    "features_title": "Everything you need to run great tournaments.",
    "features_subtitle": "From registration to final standings — Tormatch handles it all.",
    "feature_brackets": "Live Brackets",
    "feature_brackets_desc": "Single & double elimination",
    "feature_registration": "Team Registration",
    "feature_registration_desc": "Online sign-up in minutes",
    "feature_live_scores": "Live Scores",
    "feature_live_scores_desc": "Scores as they happen",
    "feature_group_stage": "Group Stages",
    "feature_group_stage_desc": "Round-robin made simple",
    "feature_scheduling": "Smart Scheduling",
    "feature_scheduling_desc": "Auto-generate fixtures",
    "feature_public_pages": "Public Pages",
    "feature_public_pages_desc": "Shareable tournament sites",
    "feature_analytics": "Analytics",
    "feature_analytics_desc": "Track views & registrations",
    "feature_sponsors": "Sponsor Management",
    "feature_sponsors_desc": "Showcase your partners",
    "feature_presentation": "Live Presentation",
    "feature_presentation_desc": "TV display for your venue",
    "features_cta": "Create your tournament",
    "org_eyebrow": "For organizers",
    "org_title": "Everything you need to run a tournament",
    "org_lede": "Every feature is a toggle. Explore what TorMatch can do — then switch on only what your tournament needs.",
    "org_cta_primary": "Create your tournament",
    "org_cta_secondary": "Explore all features",
    "team_eyebrow": "For teams",
    "team_title": "Find and join better tournaments",
    "team_lede": "You're already exploring. Create a free team account to follow tournaments, get every fixture update, and keep all your teams in one place.",
    "team_point_1": "Follow tournaments and get updates in your feed",
    "team_point_2": "One free account for all your teams",
    "team_point_3": "Get pushed the moment a fixture or result changes",
    "team_point_4": "Reach organizers directly and register in minutes",
    "team_cta_primary": "Create team account",
    "team_cta_secondary": "Browse tournaments",
    "dl_eyebrow": "TorMatch App",
    "dl_title": "Your tournaments, in your pocket",
    "dl_lede": "Live scores, fixtures, standings and instant alerts — for organizers, teams, players and fans. Free on iOS and Android.",
    "dl_appstore_pre": "Download on the",
    "dl_play_pre": "Get it on",
    "discover_something_new": "Discover something new",
    "discover_something_new_subtitle": "Explore a random selection of tournaments you might enjoy."
  },
  "footer": {
    "tagline": "The all-in-one platform to run and discover tournaments — from registration to results.",
    "newsletter_sub": "Product updates and tournament tips. No spam.",
    "menu_countries": "Tournaments by country",
    "menu_features": "Features",
    "menu_company": "Company",
    "menu_legal": "Legal",
    "all_tournaments": "Browse all tournaments",
    "all_features": "All features",
    "all_docs": "All docs",
    "menu_resources": "Resources",
    "create_tournament": "Create a tournament",
    "browse_tournaments": "Browse tournaments",
    "download_app": "Download the app",
    "terms": "Terms of Service",
    "payment_methods": "Accepted payment methods",
    "build": "Build",
    "nav_label": "Footer",
    "home_link": "TorMatch home"
  },
  "top_navbar": {
    "region": "Region",
    "search_section_tournaments": "Tournaments",
    "search_section_places": "Places",
    "search_no_results": "No results for “{{query}}”",
    "search": "Search",
    "sign_in": "Sign In",
    "register": "Register",
    "log_out": "Log out",
    "account": "Account",
    "my_tormatch": "My TorMatch",
    "settings": "Settings",
    "purchases": "Purchases",
    "back_to_homepage": "Back to Homepage",
    "country": "Country",
    "city": "City",
    "tournament": "Tournament",
    "notifications": "Notifications",
    "all": "All",
    "opened": "Opened",
    "unopened": "Unopened",
    "unread": "Unread",
    "mark_all_read": "Mark all as read",
    "edit": "Edit",
    "home": "Home",
    "tournaments": "Tournaments",
    "features": "Features",
    "pricing": "Pricing"
  },
  "Terms and Conditions": "Terms and Conditions",
  "male": "male",
  "female": "female",
  "register_or_sign_in": "You can not perform this action until you are signed in. Please sign in or register if you don't have an account",
  "register": "Register",
  "sign_in": "Sign In",
  "city": "City",
  "country": "Country",
  "state": "State",
  "dont_have_account": "Don’t have an account?",
  "login": {
    "dont_have_account": "Don’t have an account?",
    "create_one": "Create one!",
    "login": "Login",
    "home": "Home",
    "input_your_email_and_password": "Input your email and password.",
    "email": "E-Mail",
    "password": "Password",
    "login_error": "Please enter valid credentials.",
    "forgot_password": "Forgot password?",
    "remember_me": "Remember me",
    "reset_password": "Reset password",
    "continue_with_google": "Continue with Google",
    "sign_in_with_apple": "Sign in with Apple",
    "or_divider": "or",
    "account_exists_different_provider": "An account with this email already exists. Try signing in with your email and password."
  },
  "auth_prompt": {
    "default_reason": "Sign in to continue.",
    "reason_follow": "Sign in to follow and stay updated.",
    "reason_react": "Sign in to react.",
    "reason_message": "Sign in to send a message.",
    "reason_claim": "Sign in to claim this tournament.",
    "reason_external_link": "Sign in to open this link.",
    "reason_documents": "Sign in to download documents.",
    "reason_session_expired": "Your session has expired. Sign in to continue."
  },
  "all": "All",
  "authentication_required": "Authentication Required",
  "register_page": {
    "welcome": "Register an account",
    "sign_up_now_to_connect": "Sign up now to connect with teams, manage tournaments, and kick off your football journey!",
    "name": "Name",
    "email": "Email",
    "password": "Password",
    "enter_your_full_name": "Enter your full name",
    "enter_your_email": "Enter your email address",
    "enter_your_password": "Enter your password",
    "at_least_10_characters": "At least 10 characters",
    "contains_at_least_one_capital_letter": "Contains at least one capital letter",
    "i_subscribe_to_the_newsletter": "I subscribe to the TorMatch newsletter",
    "i_agree_to_the": "I agree to the",
    "terms_and_conditions": "Terms&Conditions",
    "create_account": "Create Account",
    "very_weak": "Very Weak",
    "weak": "Weak",
    "strong": "Strong",
    "very_strong": "Very Strong",
    "password_strength": "Password strength:",
    "lets_get_started": "Let’s get started. What are you here for?",
    "we_ll_help_you_organize_or_discover_tournaments_effortlessly": "We’ll help you organize or discover tournaments effortlessly.",
    "i_organize_tournaments": "I organize tournaments",
    "i_am_searching_for_tournaments": "I participate in tournaments",
    "next": "Next",
    "back": "Back",
    "which_organization": "Which organization are you representing?",
    "please_enter_name_to_help_us_tailor_your_experience": "Please enter the name to help us tailor your experience.",
    "enter_organization_name": "Enter organization name",
    "what_is_your_role": "What is your role?",
    "choose_a_card_so_we_can": "Choose a card so we can customize your experience and provide relevant opportunities.",
    "coach_trainer": "Coach / Trainer",
    "team_manager": "Team manager",
    "scout_analyst": "Scout analyst",
    "player": "Player",
    "organizer": "Organizer",
    "check_your_inbox": "Check your inbox to confirm email address",
    "weve_sent_a_verification_link_to_your_email": "We’ve sent a verification link to your email. If you don’t see it, check your spam folder.",
    "resend_email": "Resend email",
    "toaster_error": "There has been an error, try again.",
    "email_already_exists": "User with this email already exists",
    "email_sent": "Mail sent!",
    "already_have_account": "Already have an account?",
    "sign_in": "Sign In",
    "continue": "Continue",
    "confirm_password": "Confirm Password",
    "enter_confirm_password": "Re-enter your password",
    "passwords_match": "Passwords match",
    "finish": "Finish",
    "city": "City",
    "enter_your_city": "Enter your city",
    "organization_label": "Organization",
    "team_organization_label": "Team / Organization",
    "which_organization_title": "Which organization are you representing?",
    "which_team_organization_title": "Which team or organization are you from?",
    "open_in_app_title": "Open in the TorMatch app",
    "open_in_app_desc": "Access your matches, schedule, and announcements in the app.",
    "viewer_card_title": "Your participation",
    "viewer_card_app_subtitle": "Get your schedule, live results and announcements in the app",
    "viewer_role_player": "Player",
    "viewer_role_coach": "Coach",
    "viewer_role_referee": "Referee",
    "viewer_team_label": "Team",
    "how_should_we_call_you": "What should we call you?",
    "how_should_we_call_you_placeholder": "Enter your name",
    "toggle_password": "Show or hide password"
  },
  "edit_tournament_page": {
    "update_name_and_subtitle": "Update name and subtitle",
    "update_date": "Update date",
    "update_location": "Update location",
    "update_tournament_management": " Update tournament management",
    "update_logo": " Update logo",
    "update_cover": "Update cover",
    "update_description": " Update description",
    "update_organization_info": " Update organization info",
    "update_registration_links": "Update registration links",
    "registration_deadline": "Registration deadline",
    "update_brochure": "Update brochure",
    "add_staff_member": "Add staff member",
    "invite_staff_member": "Invite staff member",
    "invite_user_request_with_account": "Are you sure you want to invite the user to the tournament? The user will receive an invitation email and must claim the tournament. The user already has an account.",
    "invite_user_request_no_account": "Are you sure you want to invite the user to the tournament? The user will receive an invitation email, must register, and claim the tournament. The user does not have an account yet.",
    "selected_user_must_be_a_manager": "Selected user must be a manager",
    "user_is_already_managing_the_tournament": "User is already managing the tournament",
    "pending_invites": "Pending invites",
    "cancel_invite": "Cancel invite",
    "cancel_invite_request": "Are you sure you want to cancel the invite for the user? The user will no longer have access to the tournament via this invitation.",
    "one_main_manager_required": "There should be exactly one tournament owner for the tournament",
    "remove_staff_member": "Remove staff member",
    "edit_role": "Edit role",
    "role": "Role",
    "tournament_owner": "Tournament Owner",
    "administrator": "Administrator",
    "staff_member_col": "Staff member",
    "email_col": "Email",
    "invited_user": "Invited user",
    "status_col": "Status",
    "access_col": "Access",
    "invited_at_col": "Invited",
    "joined_at_col": "Joined",
    "expires_at_col": "Invite expires",
    "invited_by_col": "Invited by",
    "status_joined": "Joined",
    "status_pending": "Pending",
    "status_declined": "Declined",
    "status_expired": "Expired",
    "status_revoked": "Revoked",
    "access_tooltip": "Manage sections this role can open",
    "no_staff_matches": "No staff match your search",
    "only_owner_can_change_role": "Only the tournament owner can change roles",
    "block_staff_member": "Block access",
    "unblock_staff_member": "Restore access",
    "blocked_label": "Blocked",
    "block_staff_tooltip": "This user will no longer be able to access the tournament management area. You can unblock them at any time.",
    "staff_management_title": "Staff Management",
    "staff_management_desc": "Manage your tournament staff and administrators. Invite new members or adjust roles.",
    "staff_tab_overview": "Overview",
    "staff_tab_activity": "Activity",
    "at_least_one_owner_required": "Exactly one tournament owner is required. You cannot remove or change the role of the only owner.",
    "no_staff_yet": "No staff yet. Invite someone to help you manage this tournament.",
    "owner_tooltip": "Tournament owner — created this tournament.",
    "theme_color_help": "Choose a color that represents your tournament. It replaces the default TorMatch accent on your <strong>public profile</strong> only — buttons, links, tab indicators and other accent surfaces will use it. Leave on default to keep the TorMatch look."
  },
  "next_edition": {
    "page_title": "Organize the next edition",
    "based_on": "Based on",
    "section_identity": "Identity",
    "section_dates": "Dates",
    "section_carry_over": "Carry over from the previous edition",
    "carry_over_hint": "Choose what to bring along to the new edition. Everything else starts fresh.",
    "name_label": "Tournament name",
    "subtitle_label": "Subtitle",
    "copy_blog_label": "Blog posts & media",
    "copy_blog_hint": "Copy over blog posts and the images attached to them.",
    "copy_gallery_label": "Gallery images",
    "copy_gallery_hint": "Copy over the gallery album images.",
    "copy_staff_label": "Tournament staff",
    "copy_staff_hint": "Re-invite the same organizers and staff members.",
    "create_cta": "Create next edition",
    "creating": "Creating…",
    "back_to_manage": "Back to manage",
    "success": "Next edition created.",
    "error": "Something went wrong creating the next edition.",
    "banner_title": "Ready for the next edition?",
    "banner_subtitle": "This tournament has wrapped up. Clone it into a new dated edition in a few clicks.",
    "banner_cta": "Organize next edition",
    "date_placeholder": "MM/DD/YYYY"
  },
  "create_tournament_page": {
    "allowed_characters_hint": "Use letters, numbers, spaces and . , & ( ) ' - only.",
    "max_length_chars": "Maximum {{max}} characters.",
    "back": "Back",
    "create_tournament": "Create tournament",
    "name_and_subtitle": "Name and subtitle",
    "date": "Date",
    "location": "Location",
    "manage_tournament": "Manage tournament",
    "tournament_parts": "Tournament parts",
    "confirm": "Confirm",
    "what_is_the_name_of_the_tournament": "What is the name of the tournament?",
    "enter_tournament_name": "Enter tournament name",
    "does_your_tournament_have_a_subtitle": "Does your tournament have a subtitle?",
    "enter_tournament_subtitle": "Enter tournament subtitle",
    "enter_description": "Describe your tournament — format, venue, experience, prizes...",
    "next": "Next",
    "previous": "Previous",
    "start": "Start",
    "end": "End",
    "multiday_tournament": "This is a multiday tournament",
    "search_location": "Search location",
    "location_info": "Select your primary location. You can add more locations after the tournament is created.",
    "tournament_parts_description": "Configure the structure of your tournament by defining categories, age groups, and match formats. You can set specific rules for each part to tailor the competition to your needs.",
    "the_tournament_you_are_organizing_can_have_multiple_age_classes": "The tournament you are organizing can have multiple age classes. On this section, each can be managed separately.",
    "gender": "Gender",
    "men": "Men",
    "women": "Women",
    "select_the_correct_level_to_make_sure_your_tournament_will_have_exposure_to_the_right_teams": "Select the correct level to make sure your tournament will have exposure to the right teams",
    "select_level": "Select level",
    "is_the_tournament_indoor_or_outdoor": "Is the tournament indoor or outdoor?",
    "indoor": "Indoor",
    "outdoor": "Outdoor",
    "what_is_the_age_class_for_the_teams": "What is the age class for the teams?",
    "select_age_class": "Select age class",
    "born_after_optional": "Born after (optional)",
    "optional": "optional",
    "name": "Tournament name",
    "subtitle": "Subtitle",
    "enter_name": "Enter tournament name",
    "enter_subtitle": "Enter subtitle",
    "name_required": "Tournament name is required",
    "start_date": "Start date",
    "end_date": "End date",
    "end_date_error": "End date must be after start date",
    "choose_the_format": "Choose the format",
    "select_format": "Select format",
    "choose_the_number_of_teams": "Choose the number of teams",
    "add_tournament_part": "Add tournament part",
    "cancel": "Cancel",
    "complete_tournament": "Complete tournament",
    "publish_later": "Publish later",
    "publish_tournament": "Publish tournament",
    "logo": "Logo",
    "cover": "Cover",
    "description": "Description",
    "organization_info": "Organization info",
    "add_your_tournament_logo": "Add your tournament logo.",
    "remove": "Remove",
    "choose": "Choose",
    "choose_file": "Choose file",
    "add_your_tournament_cover": "Add your tournament cover.",
    "add_tournament_brochure": "Add tournament brochure",
    "here_write_your_tournament_description": "Here write your tournament description...",
    "organization": "Organization",
    "enter_organization_name": "Enter organization name",
    "phone_number": "Phone number",
    "email_address": "E-mail address",
    "enter_email_address": "Enter e-mail address",
    "website": "Website",
    "enter_website": "Enter website",
    "edit_tournament": "Edit tournament",
    "back_to_tournament": "Back to tournament",
    "delete": "Delete",
    "are_you_sure": "Are you sure you want to delete this tournament?",
    "draft_restored": "Your tournament draft has been saved. Complete the form below to publish it.",
    "upgrade_title": "Choose your plan",
    "upgrade_subtitle": "Upgrade this tournament now, or skip and decide later.",
    "upgrade_skip": "Skip for now",
    "upgrade_continue": "Continue",
    "registration_links": "Registration links",
    "allow_registration_links": "Allow users to register for tournament parts through public, shareable web links.",
    "select_parts_for_registration": "Select the tournament parts for which you want to accept registrations.",
    "unpublish": "Unpublish",
    "showcase": "Showcase",
    "teams": "Teams",
    "add_participating_team": "Add participating team",
    "add_sponsor": "Add sponsor",
    "update_sponsor": "Update sponsor",
    "confirmed_teams": "Confirmed teams",
    "past_teams": "Past teams",
    "label": "Label",
    "team_participated_in_latest_edition": "This team participated in the latest edition of this tournament.",
    "this_team_will_participate_in_the_next_edition": "This team will participate in the next edition.",
    "organize_the_next_edition": "Organize the next edition",
    "copy_blog_posts_and_their_media_items": "Copy blog posts and their media items",
    "copy_galley_album_images": "Copy gallery album images",
    "copy_tournament_staff": "Copy tournament staff",
    "brochure": "Brochure",
    "chat_messages": "Chat messages",
    "chat_messages_mobile_app": "Chat messages are available only on the mobile app.",
    "click_here_to_download": "Click here to download",
    "tournament_staff": "Tournament staff",
    "sponsor_logo": "Sponsor logo",
    "sponsor_name": "Sponsor name",
    "sponsor_website": "Sponsor website",
    "sponsor_image_format_hint": "JPG or PNG",
    "sponsor_aspect_ratio_warning": "This image's proportions may look inconsistent alongside other sponsors",
    "min_one_part_tooltip": "Add at least one tournament part to continue.",
    "mixed": "Mixed",
    "email_invalid": "Please enter a valid email address.",
    "deleted_success": "Tournament deleted",
    "edit_tournament_part": "Edit division",
    "add_division": "Add Division",
    "chat_hours_ago": "{{count}}h ago",
    "chat_just_now": "Just now",
    "chat_reply_subject": "Re: Message about {{tournament}}",
    "chat_yesterday": "Yesterday",
    "col_age_class": "Age Class",
    "col_born_after": "Born After",
    "col_format": "Format",
    "col_name": "Name",
    "col_surface": "Surface",
    "col_type": "Type",
    "date_placeholder": "MM/DD/YYYY",
    "delete_part_confirmation": "Are you sure you want to delete this division? Its settings are removed from the tournament.",
    "delete_part_title": "Delete division?",
    "tournament_cover_alt": "Tournament cover",
    "tournament_logo_alt": "Tournament logo",
    "complete_tournament_hint": "All fields are optional — add what you have and save the rest for later.",
    "tournament_logo": "Tournament logo",
    "tournament_cover": "Tournament cover",
    "save_and_view": "Save & view tournament",
    "features_step_title": "Choose the features you want to use",
    "features_step_hint": "You can turn features on or off at any time in the Features menu.",
    "features_step_skip": "Skip for now",
    "features_step_available_on": "Available on {{tier}}",
    "features_step_some_failed": "Not every feature could be turned on. You can turn them on in the Features menu."
  },
  "locations": {
    "list_header_one": "1 location",
    "list_header_many": "{{count}} locations",
    "hint_idle": "Drag to reorder. Primary is always first.",
    "hint_editing": "Click anywhere on the map or search for an address.",
    "hint_click_map": "Click on the map or search above to place this venue.",
    "banner_adding": "Adding a new venue — click on the map or search for an address.",
    "banner_editing": "Editing: {{name}}",
    "search_placeholder": "Search address or place name",
    "primary": "Primary",
    "set_primary": "Set as primary",
    "unnamed_venue": "Untitled venue",
    "add": "Add Location"
  },
  "close": "Close",
  "notifications": {
    "title": "Notifications",
    "subtitle": "Likes, registrations, messages and match updates",
    "see_all": "See all notifications",
    "tab_all": "All",
    "tab_unread": "Unread",
    "tab_read": "Read",
    "category_all": "All types",
    "category_like": "Likes",
    "category_message": "Messages",
    "category_registration": "Registrations",
    "category_match": "Matches",
    "category_invite": "Invites",
    "category_other": "Other",
    "search_placeholder": "Search notifications",
    "group_today": "Today",
    "group_yesterday": "Yesterday",
    "group_this_week": "This week",
    "group_earlier": "Earlier",
    "empty_all": "You're all caught up",
    "empty_unread": "No unread notifications",
    "empty_read": "No read notifications",
    "empty_search": "No notifications match your filters",
    "mark_read": "Mark as read",
    "mark_unread": "Mark as unread",
    "delete": "Delete",
    "deleted_toast": "Notification deleted",
    "clear_read": "Clear read",
    "clear_read_confirm_title": "Clear read notifications?",
    "clear_read_confirm_body": "This permanently deletes all notifications you have already read. This can't be undone.",
    "hello": "Hello",
    "message_reply_tormatch": "Message reply - Tormatch",
    "replaying_to_message": "Replaying to message:",
    "warm_regards": "Warm regards",
    "mark_all_read": "Mark all as read",
    "no_notifications": "No notifications",
    "unable_to_load": "We couldn't load the full details for this notification. It may have been removed or is no longer available."
  },
  "amateur": "amateur",
  "professional": "professional",
  "tournaments_filter_page": {
    "we_found": "We found:",
    "tournaments": "tournaments",
    "no_tournaments": "No tournaments found.",
    "map": "Map",
    "location": "Location",
    "age_class": "Age Class",
    "gender": "Gender",
    "date": "Date",
    "level": "Level",
    "format": "Format",
    "environment": "Environment",
    "start_date": "Start date",
    "end_date": "End date",
    "filter_this_area_of_map": "Filter this area of the map",
    "advanced_filters_tooltip": "Advanced filters",
    "map_tooltip": "Toggle map",
    "show_filters": "Show Filters",
    "hide_filters": "Hide Filters",
    "show_map": "Show Map",
    "hide_map": "Hide Map",
    "apply_filters": "Apply Filters ({{count}})"
  },
  "team_page": {
    "message_on_behalf_of_the_team": "Message on behalf of the team:"
  },
  "tournament_member_invite_page": {
    "no_pending_invitation": "No pending invitation found for this user.",
    "successfully_claimed": "Successfully claimed this tournament!"
  },
  "tournament_register_page": {
    "register_for_tournament": "Register for tournament",
    "select_team": "Select a team which to register for tournament part",
    "register": "Register",
    "select_tournament_part": "Select tournament part",
    "other_parts_still_open": "Other parts of this tournament are still open — pick one above to register.",
    "registration_deadline_passed": "Registration deadline has passed",
    "registration_deadline_passed_desc": "The deadline to enter this tournament has passed, so the organizer is no longer accepting registrations.",
    "next": "Next",
    "team": "Team",
    "team_details": "Team details",
    "team_name": "Team name",
    "use_suggested_name": "Use the suggested name",
    "use_custom_name": "My team has its own name",
    "team_name_pending": "Fill in your club name",
    "team_name_composed_hint": "Built from your club, age class and team number.",
    "team_class": "Team's class",
    "age_class": "Age Class",
    "city": "City",
    "type": "Type",
    "gender": "Gender",
    "prefilled_from_link": "Prefilled from the registration link — change them if your team differs.",
    "club_name": "Club name",
    "contact_info": "Contact info",
    "agree_to_terms": "Registration terms",
    "contact_name": "Contact name",
    "contact_email": "Contact email",
    "contact_phone": "Contact phone number",
    "contact_role": "Contact role",
    "role": "Role",
    "submit": "Submit",
    "registration_request_sent_successfully": "Registration request sent successfully!",
    "open": "Open",
    "closed": "Closed",
    "you_dont_have_any_teams": "You don't have any teams yet.",
    "create_a_team": "Create a team",
    "register_for_tournament_subtitle": "Get ready for the ultimate tournament experience! Register your team now!",
    "register_team_now": "Register team now",
    "register_now": "Register now",
    "preview_registration_requests": "Preview registration requests",
    "preview_registration_requests_subtitle": "View and manage incoming team registration requests, and get in touch with team organizers directly.",
    "team_age_class_message": "Team age class <strong>{{teamAgeClass}}</strong> does not match part age class <strong>{{partAgeClass}}</strong>",
    "team_gender_message": "Team gender <strong>{{teamGender}}</strong> does not match part gender <strong>{{partGender}}</strong>",
    "age_class_mismatch": "Team age class does not match the tournament part age class.",
    "view_tournament_on_tormatch": "View tournament on TorMatch",
    "registration_closes": "Registration closes",
    "registration_closed_on": "Registration closed on",
    "status_public": "Open",
    "status_open_private": "Open",
    "status_closed": "Closed",
    "status_disabled": "Disabled",
    "change": "Change",
    "logged_in_as": "Logged in as",
    "have_an_account": "Have an account?",
    "autofill_from_team": "Auto-fill from your team",
    "your_team": "Your team",
    "competitor_name": "Competitor name",
    "your_competitor": "Your competitor",
    "create_a_competitor": "Create a competitor",
    "autofill_from_competitor": "Auto-fill from your competitor",
    "organisation_name": "Organisation / Club name",
    "level": "Level",
    "contact_person": "Contact person",
    "additional_information": "Additional information",
    "accept_terms": "I accept the registration terms",
    "almost_done": "Almost done",
    "continue_without_account": "Continue without account",
    "login": "Log in",
    "create_account": "Create account",
    "skip_note": "Your registration will be sent without an account. You can track it via your contact email.",
    "email": "Email",
    "password": "Password",
    "confirm_password": "Confirm password",
    "login_and_submit": "Log in & submit",
    "create_account_and_submit": "Create account & submit",
    "registration_sent": "Registration sent!",
    "check_inbox": "We sent a confirmation to",
    "track_on_tormatch": "Track your registration on TorMatch →",
    "login_failed": "Login failed. Please check your credentials.",
    "register_failed": "Account creation failed. Please try again.",
    "passwords_do_not_match": "Passwords do not match.",
    "submission_error": "Something went wrong. Please try again.",
    "registration_is_closed": "Registration is closed",
    "registration_closed_desc": "The registration period for this tournament has ended.",
    "registration_not_available": "Registration is not available",
    "registration_disabled_desc": "Registration for this tournament has been disabled by the organization. Check back later.",
    "welcome_title": "Welcome!"
  },
  "not_found_page": {
    "tournament": "Tournament not found",
    "tournament_subtitle": "This tournament doesn't exist or may have been deleted. Check the URL or browse all tournaments.",
    "friendly": "Friendly match not found",
    "friendly_subtitle": "This friendly match doesn't exist or may have been removed. Check the link or go back home.",
    "undefined": "Page not found",
    "undefined_subtitle": "The page you're looking for doesn't exist or has been moved.",
    "go_home": "Go to Home",
    "browse_tournaments": "Browse Tournaments",
    "docs_article": "Article not found",
    "docs_article_subtitle": "This help article doesn't exist or has moved."
  },
  "tournament_registration_request_page": {
    "registration_requests": "Registration requests",
    "registration_requests_subtitle": "Select a tournament part for which you want to preview registration requests.",
    "team": "Team",
    "teams": "Teams",
    "confirmed": "Confirmed",
    "registration": "Registration",
    "registrations": "Registrations",
    "see_more": "See more",
    "see_less": "See less",
    "my_registrations": "My registrations"
  },
  "tournament_registration_submissions_page": {
    "registration_settings": "Registration Settings",
    "registration_settings_description": "Manage public registration links and individual part deadlines for your tournament.",
    "capacity": "Capacity",
    "registration": "Registration",
    "registrations": "Registrations",
    "registration_request_submissions": "Registration request submissions",
    "request_from": "Request from",
    "open_chat": "Open chat",
    "open_mail": "Open mail",
    "share": "Share",
    "share_tournament_registration": "Share tournament registration",
    "status": "Status",
    "status_disabled": "Disabled",
    "status_open_private": "Open Private",
    "status_public": "Public",
    "status_closed": "Closed"
  },
  "media": {
    "reactions": "Reactions",
    "reaction": "Reaction",
    "like": "Like",
    "love": "Love",
    "haha": "Haha",
    "wow": "Wow",
    "sad": "Sad",
    "angry": "Angry",
    "care": "Care",
    "items_selected": "Items selected"
  },
  "actions": {
    "reorder": "Re-order",
    "delete": "Delete",
    "archive": "Archive",
    "unarchive": "Unarchive",
    "edit": "Edit",
    "archived": "Archived",
    "reorder_content": "Reorder content",
    "add": "Add",
    "save": "Save",
    "close": "Close",
    "move_content": "Move content",
    "items_selected": "Items selected",
    "select": "Select",
    "select_multiple": "Select multiple",
    "select_all": "Select all",
    "select_none": "Deselect all",
    "cancel": "Cancel",
    "confirm": "Confirm",
    "invite": "Invite",
    "update": "Update",
    "clear_filters": "Clear filters",
    "search": "Search",
    "more": "More",
    "start": "Start",
    "unopened": "Unopened",
    "unread": "Unread"
  },
  "translation": {
    "loading": "Loading",
    "show_original": "Show original",
    "translate": "Translate"
  },
  "validation": {
    "invalid_url": "Invalid URL",
    "end_time_after_start_time": "End time must be after start time",
    "required": "This field is required"
  },
  "custom_link_icons": {
    "link": "Link",
    "tickets": "Tickets",
    "document": "Document",
    "map": "Map",
    "accommodation": "Accommodation",
    "food": "Food",
    "sport": "Sport",
    "stream": "Stream",
    "shop": "Shop",
    "payment": "Payment",
    "email": "Email",
    "forum": "Forum"
  },
  "user": {
    "email": "Email"
  },
  "analytics": {
    "vs_previous_days": "vs previous {{days}} days",
    "vs_previous_period": "vs previous period",
    "click_through_rate": "Click-through rate",
    "ctr_caption": "{{views}} views from {{impressions}} impressions",
    "busiest_day": "Busiest day",
    "busiest_day_caption": "{{count}} impressions",
    "traffic_sources": "Traffic sources",
    "top_cities": "Top cities",
    "source_app": "TorMatch app",
    "not_specified": "Not specified",
    "no_location_data": "No location data for this period",
    "total_interactions": "Total interactions",
    "conversion_rate": "Conversion rate",
    "share_open_rate": "Share open rate",
    "from_profile_views": "from {{count}} profile views",
    "registered_count": "{{count}} registered",
    "shares_opened_caption": "{{opened}} of {{total}} shared links opened",
    "external_links_by_platform": "External links by platform",
    "website": "Website",
    "overall": "Overall",
    "continued": "continued",
    "dropped_off": "{{count}} dropped off",
    "like_rate": "Like rate",
    "avg_views_per_day": "Avg. views / day",
    "best_day": "Best day",
    "awaiting_review": "Awaiting your review",
    "declined_count": "{{count}} declined",
    "full": "Full",
    "spots_left": "{{count}} spots left",
    "no_capacity_set": "No capacity set",
    "gender_male": "Male",
    "gender_female": "Female",
    "gender_mixed": "Mixed",
    "hint_impressions": "How often your tournament was shown on TorMatch — in search, on the explore page, in feeds and lists. Counted once per visitor session.",
    "hint_profile_views": "How often someone opened your tournament page.",
    "hint_click_through_rate": "Profile views as a share of impressions. Visitors who arrive through a direct link count as a view without an impression, so this can go above 100%.",
    "hint_busiest_day": "The day in this period when your tournament was shown most often.",
    "hint_total_interactions": "Every action visitors took on your page: likes, calendar adds, shares, opened share links, link clicks, map previews and brochure downloads.",
    "hint_started_registration": "Visitors who opened your registration form.",
    "hint_conversion_rate": "Completed registrations as a share of profile views.",
    "hint_share_open_rate": "Share of the links visitors created that someone actually opened.",
    "hint_media_views": "Photo and video views in your gallery.",
    "hint_media_likes": "Likes on your photos and videos.",
    "hint_blog_views": "Views of your posts.",
    "hint_blog_likes": "Likes on your posts.",
    "hint_registrations_submitted": "Registrations received in this period.",
    "hint_registrations_accepted": "Registrations you accepted in this period.",
    "hint_registrations_pending": "Registrations still waiting for a decision.",
    "hint_acceptance_rate": "Accepted registrations as a share of all decisions made.",
    "caption_traffic_trend": "Impressions: times your tournament was shown. Profile views: times your page was opened.",
    "caption_devices": "What visitors used to open your page.",
    "caption_returning": "New faces versus visitors who came back.",
    "caption_traffic_sources": "How visitors found their way to your page.",
    "caption_visitor_age": "Age classes of the teams your visitors play for.",
    "caption_visitor_level": "Playing level of your visitors' teams.",
    "caption_geolocation": "Where your visitors are, shown as density.",
    "caption_top_cities": "Cities your visitors come from most.",
    "caption_engagement_over_time": "What visitors did on your page, per day. Click a metric to show or hide it.",
    "caption_conversion_funnel": "How many people made it from seeing your tournament to registering.",
    "caption_external_links": "Which of your links visitors clicked.",
    "caption_media": "Photo and video views and likes over time.",
    "caption_blog": "Post views and likes over time.",
    "caption_registrations_over_time": "Registrations received, accepted and declined per day.",
    "caption_registrants_gender": "Gender categories of registered teams.",
    "caption_registrants_age": "Age classes of registered teams.",
    "caption_fill_vs_capacity": "Accepted teams against the spots available in each division.",
    "caption_widgets_views": "Daily views and card opens across your embedded widgets.",
    "caption_widgets_hosts": "Websites where your widgets were seen.",
    "caption_widgets_per_widget": "Performance of each widget.",
    "widgets_tab": "Widgets",
    "widgets_card_opens": "Card opens",
    "widgets_outbound_clicks": "Clicks to TorMatch",
    "widgets_websites": "Websites",
    "widgets_views_over_time": "Widget views over time",
    "widgets_where_published": "Where your widgets are published",
    "widgets_per_widget": "Per widget",
    "widgets_col_website": "Website",
    "widgets_col_widgets": "Widgets",
    "widgets_col_widget": "Widget",
    "widgets_col_type": "Type",
    "widgets_col_last_seen": "Last seen",
    "widgets_col_last_page": "Last page",
    "widgets_unknown_host": "Unknown website",
    "widgets_other_hosts": "Other websites",
    "widgets_deleted_widget": "Deleted widget",
    "widgets_empty_title": "No widget views yet",
    "widgets_empty_desc": "Embed a widget on your website to see statistics here.",
    "widgets_load_error": "Couldn't load widget statistics.",
    "widgets_retry": "Try again",
    "widgets_type_teams": "Teams",
    "widgets_type_stage": "Stage",
    "widgets_type_schedule": "Schedule",
    "widgets_type_results": "Results",
    "tournament_analytics": "Analytics",
    "analytics_subtitle": "Track your tournament's performance, reach, and engagement.",
    "impressions": "Impressions",
    "profile_views": "Profile views",
    "from": "From",
    "to": "To",
    "apply": "Apply",
    "media": "Media",
    "blog": "Blog",
    "engagement_over_time": "Engagement over time",
    "impressions_and_profile_views": "Impressions & profile views",
    "top_campaigns": "Top campaigns",
    "all_sources": "All sources",
    "registrations": "Registrations",
    "registrations_submitted": "Submitted",
    "registrations_accepted": "Accepted",
    "registrations_declined": "Declined",
    "registrations_pending": "Pending",
    "acceptance_rate": "Acceptance rate",
    "registrations_over_time": "Registrations over time",
    "registrants_by_age_class": "Registrants by age class",
    "registrants_by_gender": "Registrants by gender",
    "fill_vs_capacity": "Fill vs capacity",
    "no_data": "No data for this period",
    "date": "Date",
    "view": "View",
    "daily": "Daily",
    "cumulative": "Cumulative",
    "past": {
      "7": "Past 7 days",
      "14": "Past 14 days",
      "28": "Past 28 days",
      "90": "Past 90 days",
      "365": "Past 365 days",
      "custom": "Custom range"
    },
    "traffic_and_reach": "Traffic and reach",
    "engagement": "Engagement",
    "advance_insights": "Advance insights",
    "total_views": "Total views",
    "total_visits": "Total page visits",
    "devices": "Devices",
    "views_and_visits": "Views and visits",
    "visit_attribution": "Visit attribution",
    "views": "Views",
    "visits": "Visits",
    "pc": "PC",
    "mobile": "Mobile",
    "tablet": "Tablet",
    "link_clicks_direct": "Link click (direct)",
    "tormatch_search": "Tormatch Search",
    "browser_search": "Browser Search",
    "other": "Other",
    "total_tournament_likes": "Total tournament likes",
    "tournament_likes": "Tournament likes",
    "likes": "Likes",
    "total_calendar_adds": "Total calendar adds",
    "calendar_adds": "Calendar adds",
    "share_links_created": "Share links created",
    "share_links_opened": "Share links opened",
    "shares": "Shares",
    "links_opened": "Links opened",
    "opened": "Opened",
    "not_opened": "Not opened",
    "total_external_links_clicked": "Total external links clicked",
    "external_links_clicked": "External links clicked",
    "total_map_details_previewed": "Total map details previewed",
    "map_details_preview": "Map details preview",
    "total_media_views": "Total media views",
    "total_media_likes": "Total media likes",
    "media_views_and_likes": "Media views and likes",
    "photo_views": "Photo views",
    "photo_likes": "Photo likes",
    "video_views": "Video views",
    "video_likes": "Video likes",
    "total_blog_views": "Total blog views",
    "total_blog_likes": "Total blog likes",
    "blogs": "Blogs",
    "total_brochure_downloads": "Total brochure downloads",
    "brochure_downloads": "Brochure downloads",
    "conversion_funnel": "Conversion funnel",
    "started_registration": "Started registration",
    "registered": "Registered",
    "visitor_team_age_classes": "Visitor team age classes",
    "visitor_team_level": "Visitor team level",
    "first_time_vs_returning_visitors": "First-time vs returning visitors",
    "first_time": "First-time",
    "returning": "Returning",
    "visitor_geolocation": "Visitor geolocation",
    "amateur": "amateur",
    "professional": "professional",
    "custom_date_range": "Custom date range",
    "distinct_views": "Distinct views",
    "distinct_visits": "Distinct visits",
    "unlock_advanced": "Unlock advanced analytics",
    "edit": "Edit",
    "unopened": "Unopened",
    "unread": "Unread"
  },
  "manage_tournament_sidebar": {
    "page_widgets": "Widgets",
    "page_desc_widgets": "Embed live schedules, standings and brackets on your own website.",
    "page_studio": "Studio",
    "page_desc_studio": "Branded images and PDFs of your tournament — and the themes they use.",
    "manage_title": "Manage {{name}}",
    "collapse_sidebar": "Collapse sidebar",
    "expand_sidebar": "Expand sidebar",
    "status_draft": "Draft",
    "status_live": "Live",
    "status_upcoming": "Upcoming",
    "status_ended": "Ended",
    "days_left": "{{count}} days left",
    "starting_tomorrow": "Starting Tomorrow",
    "approaching": "Approaching",
    "happening_currently": "Happening currently",
    "days_ago": "{{count}} days ago",
    "published": "Published",
    "not_published": "Not Published",
    "not_published_toolbar_tooltip": "This tournament is only visible to staff. Complete the remaining steps to publish it.",
    "tooltip_no_stages": "Create stages and stage items in Format section to enable.",
    "tooltip_no_matches": "Schedule matches to enable Results.",
    "tooltip_division_needs_format": "1 division still needs a format",
    "tooltip_divisions_need_format": "{{count}} divisions still need a format",
    "tooltip_match_unscheduled": "1 match still needs to be scheduled",
    "tooltip_matches_unscheduled": "{{count}} matches still need to be scheduled",
    "unknown_role_banner": "Your role on this tournament isn't recognized. Most pages are hidden until an owner re-invites you with a valid role — please contact the tournament owner if you think this is wrong.",
    "access_denied_for_role": "Your role can't access {{page}}.",
    "participants": "Participants",
    "players": "Players",
    "officials": "Officials",
    "management_mode": "Management Mode",
    "master_admin_mode": "God Mode",
    "demo_mode": "Demo Mode",
    "dashboard": "Dashboard",
    "scheduling": "Scheduling",
    "results": "Results",
    "role_tournament_owner": "Tournament Owner",
    "role_administrator": "Administrator",
    "role_content_manager": "Content Manager",
    "role_competition_manager": "Competition Manager",
    "role_admissions_manager": "Admissions Manager",
    "role_moderator": "Moderator",
    "role_result_entry_manager": "Result Entry Manager",
    "role_desc_tournament_owner": "Full access to all features and settings.",
    "role_desc_administrator": "Full access, including configuration and features.",
    "role_desc_content_manager": "Manage gallery, posts, showcase, sponsors, widgets and public site.",
    "role_desc_competition_manager": "Manage participants, format, scheduling and results.",
    "role_desc_admissions_manager": "Manage tournament registrations.",
    "role_desc_moderator": "Full day-to-day management; no configuration, staff, billing or settings.",
    "role_desc_result_entry_manager": "Enter and edit match results only.",
    "access_matrix_title": "Access for this role",
    "page_dashboard": "Dashboard",
    "page_desc_dashboard": "Always accessible to all staff.",
    "page_analytics": "Analytics",
    "page_desc_analytics": "Tournament statistics and insights.",
    "page_registrations": "Registrations",
    "page_desc_registrations": "Review and manage team registrations.",
    "page_participants": "Participants",
    "page_desc_participants": "Manage teams and players.",
    "page_officials": "Officials",
    "page_desc_officials": "Manage referees and other tournament officials.",
    "page_format": "Format",
    "page_desc_format": "Build the tournament bracket structure.",
    "page_scheduling": "Schedule",
    "page_desc_scheduling": "Schedule and manage matches.",
    "page_results": "Results",
    "page_desc_results": "Enter and manage match results.",
    "page_gallery": "Gallery",
    "page_desc_gallery": "Media and photo management.",
    "page_posts": "Posts",
    "page_desc_posts": "Blog post and news management.",
    "page_showcase": "Showcase",
    "page_desc_showcase": "Manage featured clubs and teams.",
    "page_sponsors": "Sponsors",
    "page_desc_sponsors": "Manage sponsor listings and logos.",
    "page_tournament_site": "Public page",
    "page_desc_tournament_site": "Branding, social links and brochure.",
    "page_staff": "Staff",
    "page_desc_staff": "Manage staff members and roles.",
    "page_settings": "Settings",
    "page_desc_settings": "General tournament settings.",
    "page_features": "Features",
    "page_desc_features": "Enable or disable tournament features.",
    "page_configuration": "Configuration & Features",
    "page_desc_configuration": "Enable features and configure tournament setup.",
    "page_inbox": "Inbox",
    "page_desc_inbox": "View messages sent to your tournament.",
    "page_announcements": "Announcements",
    "page_live_matches": "Live Matches",
    "page_discipline": "Discipline",
    "page_presentation": "Presentation",
    "page_billing": "Plan",
    "section_main": "General",
    "section_scheduling": "Scheduling",
    "section_content": "Content",
    "section_settings": "Settings",
    "toolbar_settings": "Toolbar Settings",
    "toolbar_settings_title": "Customize Toolbar",
    "toolbar_settings_desc": "Drag items to reorder. Everything above the divider appears in the toolbar, everything below in the overflow menu.",
    "toolbar_in_toolbar": "Shown in toolbar",
    "toolbar_in_overflow": "Shown in overflow menu",
    "page_venues": "Venues",
    "no_stages_title": "No stages yet",
    "rounds": "Rounds"
  },
  "settings": {
    "locked_after_start": "This tournament is published and under way, so its name, dates, description, images, venue and published status can't be changed until it has ended. Contact TorMatch support if something needs correcting.",
    "locked_after_start_master_admin": "These fields are locked for organisers while the tournament is published and under way. You can still edit them as master admin — changes go live immediately.",
    "page_description": "Manage your tournament's general info, branding, location, and divisions.",
    "participation": {
      "section_title": "Participation & result entry",
      "section_subtitle": "Configure who is allowed to enter match results, and which roles can self-manage in this tournament.",
      "part_picker_label": "Division",
      "part_picker_hint": "These settings apply only to the selected division. Each division can have its own officiating, scoring and roster rules.",
      "section_result_entry": "Result entry",
      "section_team_player": "Team & player management",
      "result_entry_mode_label": "Who can enter results",
      "mode_organizer_only": "Organizer only (default)",
      "mode_referee": "Referees can submit",
      "mode_teams": "Teams submit (mediated)",
      "mode_hybrid": "Referees + teams (hybrid)",
      "mode_hint_organizer_only": "Only tournament staff can record match results from the manage page. This is the safe default.",
      "mode_hint_referee": "Assigned referees can submit results from the TorMatch app. Organizers can still review, edit, or override anything they enter.",
      "mode_hint_teams": "Both team coaches submit independently. If they agree, the result is final. If they disagree, the organizer is notified to resolve the dispute.",
      "mode_hint_hybrid": "Referees are authoritative when assigned. For matches without a referee, both teams submit and the system mediates.",
      "allow_referee_score_entry_label": "Allow referees to submit scores",
      "allow_referee_score_entry_hint": "Master switch. Even when the mode above is set to 'Referees can submit', referees only see the score entry screen on mobile when this is enabled.",
      "allow_referee_score_edit_label": "Allow referees to edit submitted scores",
      "allow_referee_score_edit_hint": "When enabled, referees can revise an already-submitted result from the match detail screen.",
      "allow_team_score_entry_label": "Allow team coaches to submit scores",
      "allow_team_score_entry_hint": "Master switch for team-submitted results. Both coaches must submit before the system reconciles the score.",
      "lineup_publish_mode_label": "When lineups go public",
      "lineup_publish_mode_hint": "Coaches always plan privately. This controls how a submitted official lineup becomes visible on the match page.",
      "lineup_publish_mode_auto": "Publish automatically",
      "lineup_publish_mode_confirm": "Confirm before publishing",
      "lineup_publish_mode_private": "Keep private",
      "lineup_lock_minutes_label": "Lineup locks (minutes before kickoff)",
      "lineup_lock_minutes_hint": "How long before kickoff coaches can no longer change a match lineup. 0 = at kickoff.",
      "allow_coach_player_management_label": "Allow team coaches to manage their squad",
      "allow_coach_player_management_hint": "When enabled, the coach of each team can add, edit and remove players from their squad in the TorMatch app.",
      "allow_player_self_signup_label": "Allow players to sign up via a link",
      "allow_player_self_signup_hint": "Players can join via a shareable link. Works independently of coach roster management.",
      "mode_coach_open": "Coach-led with open signup: coaches manage the roster and players can self-join via the signup link.",
      "mode_coach_closed": "Coach-led closed: coaches manage the roster. Players claim their pre-added slot via link.",
      "mode_open_only": "Open enrollment: players self-join via link directly. No coach roster management required.",
      "max_players_per_team_label": "Max players per team",
      "max_players_per_team_hint": "Optional. Leave empty for no cap. Self-signup will refuse new joins once the cap is reached."
    },
    "branding_card_subtitle": "Upload your tournament logo and cover image.",
    "branding_card_title": "Tournament Branding",
    "cover_alt": "Tournament cover",
    "danger_subtitle": "Irreversible actions for this tournament.",
    "danger_title": "Danger Zone",
    "dates_card_subtitle": "Define when your tournament starts and ends.",
    "dates_card_title": "Tournament Dates",
    "delete_desc": "Permanently remove this tournament and all its data. This action cannot be undone.",
    "delete_title": "Delete tournament",
    "desc_card_subtitle": "Provide a detailed overview of your event.",
    "desc_card_title": "Tournament Description",
    "divisions_card_subtitle": "Manage the divisions (parts) for your tournament.",
    "divisions_card_title": "Tournament Divisions",
    "location_card_subtitle": "Set the venue(s) for your tournament. Drag to reorder, pin to set primary.",
    "location_card_title": "Tournament Location",
    "logo_alt": "Tournament logo",
    "name_card_subtitle": "Set the display name and tagline for your tournament.",
    "name_card_title": "Tournament Name & Subtitle",
    "org_card_subtitle": "Manage the contact details for the tournament organizer.",
    "org_card_title": "Organization Info",
    "tab_activity_updates": "Activity Updates",
    "tab_audit_log": "Audit Log",
    "tab_short_links": "Short links",
    "tab_branding": "Branding",
    "tab_divisions": "Divisions",
    "tab_general": "General Info",
    "tab_location": "Location",
    "unpublish_desc": "Make this tournament invisible to the public. You can republish it at any time.",
    "unpublish_title": "Unpublish tournament",
    "moved_to_site": "The description, logo, cover and theme colour are edited under Public Site now.",
    "moved_to_site_link": "Go to Public Site",
    "ended_rollover": "This edition is over. Change the dates below to reuse this page for the next one, or create a next edition to keep this page and its results as they are.",
    "ended_rollover_cta": "Create next edition"
  },
  "feed_settings": {
    "card_title": "Activity Updates",
    "card_subtitle": "Control which events are published to your tournament's activity feed.",
    "always": "Always",
    "during_tournament": "During Tournament",
    "never": "Never",
    "during_tournament_tooltip": "This event gets added to the activity feed only on the dates of the tournament.",
    "group_match": "Match & Score Events",
    "group_progression": "Progression Events",
    "group_content": "Content & Registration Events",
    "match_finished": {
      "label": "Match Finished",
      "desc": "Published when a match result is confirmed."
    },
    "match_scheduled": {
      "label": "Match Scheduled",
      "desc": "Published when a match is assigned a date and time."
    },
    "match_rescheduled": {
      "label": "Match Rescheduled",
      "desc": "Published when a previously scheduled match is moved."
    },
    "score_submission": {
      "label": "Score Submitted",
      "desc": "Published when a result is submitted for a match."
    },
    "stage_advanced": {
      "label": "Stage Advanced",
      "desc": "Published when teams advance from one stage to the next."
    },
    "champion_crowned": {
      "label": "Champion Crowned",
      "desc": "Published when the final standings are locked."
    },
    "announcement_sent": {
      "label": "Announcement Sent",
      "desc": "Published when you send an announcement to participants."
    },
    "media_uploaded": {
      "label": "Media Uploaded",
      "desc": "Published when photos or videos are added to a gallery."
    },
    "blog_published": {
      "label": "Blog Post Published",
      "desc": "Published when a new blog post goes live."
    },
    "blog_updated": {
      "label": "Blog Post Updated",
      "desc": "Published when an existing blog post is updated."
    },
    "bracket_published": {
      "label": "Bracket Published",
      "desc": "Published when the draw or bracket is released."
    },
    "registration_opened": {
      "label": "Registration Opened",
      "desc": "Published when registrations become available."
    },
    "clear_feed": {
      "card_title": "Clear Activity Feed",
      "card_subtitle": "Wipe the public activity feed for this tournament. The audit log keeps a complete record.",
      "action_title": "Clear the activity feed",
      "action_desc": "Hides every existing event from the tournament's activity feed. Future events will still be published normally.",
      "button": "Clear Feed",
      "confirm_title": "Clear activity feed?",
      "confirm_message": "This will remove every existing event from the tournament's activity feed. The audit log will still keep a complete record. Future events will continue to be published.",
      "success": "Activity feed cleared."
    }
  },
  "audit_log": {
    "card_title": "Audit Log",
    "card_subtitle": "Chronological record of all tournament events, including those not published to feeds.",
    "empty": "No events recorded yet.",
    "published": "Published",
    "not_published": "Not published",
    "load_more": "Load more"
  },
  "inbox": {
    "title": "Inbox",
    "page_subtitle": "Messages sent to your tournament's public page.",
    "search_placeholder": "Search messages...",
    "all_tournaments": "All tournaments",
    "filter_unread": "Unread",
    "filter_all": "All",
    "filter_archived": "Archived",
    "archive": "Archive",
    "delete": "Delete",
    "mark_as_unread": "Mark as unread",
    "no_messages": "No messages yet",
    "no_messages_desc": "Messages sent from your tournament's public page will appear here.",
    "no_message_selected": "Select a message to read it",
    "no_message_selected_desc": "Choose a conversation from the list on the left.",
    "reply_via_email": "Reply via email",
    "sent_on_behalf": "Sent on behalf of",
    "is_organizer": "Organizer on Tormatch",
    "mark_as_read": "Mark as read",
    "unread_badge": "{{count}} unread",
    "load_more": "Load more",
    "from_tournament": "To tournament",
    "no_results": "No matching messages",
    "no_results_desc": "No message matches your search. Try a different name or word.",
    "no_archived": "Nothing archived",
    "no_archived_desc": "Messages you archive are kept here.",
    "no_reply_address": "No reply address available for this message."
  },
  "tournament_site": {
    "page_description": "Manage the public-facing information for your tournament page.",
    "tab_social": "Social links",
    "tab_brochure": "Brochure",
    "tab_visibility": "View Settings",
    "social_links_title": "Social links",
    "social_links_subtitle": "Add links to your social media profiles and website.",
    "brochure_title": "Tournament Brochure",
    "brochure_subtitle": "Upload a PDF brochure for your tournament. Changes are saved automatically.",
    "auto_saved": "Auto-saved",
    "upload_brochure_title": "Upload your brochure",
    "upload_brochure_hint": "PDF files only. Your brochure will be visible on the tournament page.",
    "brochure_ready": "Brochure uploaded",
    "brochure_visible": "Your brochure is visible on the tournament page.",
    "replace_brochure": "Replace",
    "uploading_brochure": "Uploading...",
    "publish_to_access": "Publish your tournament first to access this page",
    "always_visible": "Always visible",
    "configure": "Configure",
    "drag_to_reorder": "Drag to reorder",
    "enable_in_features": "Enable in Features →",
    "fixed_order": "Fixed order",
    "layout_desc": "Choose how posts appear on the Posts page",
    "layout_title": "Layout",
    "main_content": "Main content",
    "matches_hidden_hint": "Won't appear publicly until matches are scheduled.",
    "sidebar": "Sidebar",
    "site_description": "Customize how your tournament looks to the public.",
    "standings_desc": "How teams are ranked in group tables",
    "standings_extended_hint": "Includes GF, GA & GD",
    "standings_simple_hint": "W / D / L / Pts",
    "standings_title": "Standings",
    "tab_public_page": "Public Page",
    "tab_theme": "Theme",
    "theme_color_subtitle": "The accent colour of your public site: menu, buttons and highlights.",
    "theme_color_title": "Theme colour",
    "upload_documents": "Upload documents →",
    "visible": "Visible",
    "widget_blog": "News & Posts",
    "widget_blog_desc": "Tournament updates, articles and announcements.",
    "widget_brochure": "Brochure",
    "widget_brochure_desc": "Downloadable PDF brochure for the tournament.",
    "widget_countdown": "Countdown",
    "widget_countdown_desc": "A live countdown to the tournament kickoff.",
    "widget_gallery": "Photo Gallery",
    "widget_gallery_desc": "Latest photos and albums from the tournament.",
    "widget_location": "Location & Map",
    "widget_location_desc": "Map and directions to the tournament venue.",
    "widget_matches": "Results & Fixtures",
    "widget_matches_desc": "Scheduled match results and upcoming fixtures.",
    "widget_profile_card": "Tournament Info",
    "widget_profile_card_desc": "Name, dates, location banner, registration status.",
    "widget_registration_card": "Registration",
    "widget_registration_card_desc": "Call-to-action card for teams to sign up.",
    "widget_showcase": "Clubs Showcase",
    "widget_showcase_desc": "Highlight participating clubs and organizations.",
    "widget_sponsors": "Sponsors",
    "widget_sponsors_desc": "Sponsorship logos and partner recognition.",
    "widget_standings": "Standings & Brackets",
    "widget_standings_desc": "Live group tables, knockout brackets, and results.",
    "widget_teams": "Participating Teams",
    "widget_teams_desc": "Show a public grid of the confirmed participating teams for this edition.",
    "open_site": "Open site",
    "tab_overview": "Overview",
    "tab_menu": "Menu",
    "tab_homepage": "Homepage",
    "tab_appearance": "Appearance",
    "overview_settings_title": "Your site",
    "overview_settings_desc": "Everything visitors see, in one place.",
    "overview_menu_desc": "{{count}} tabs on the menu",
    "overview_homepage_desc": "{{main}} sections · {{side}} sidebar cards",
    "overview_theme_default": "TorMatch default colours",
    "overview_count": "{{count}} added",
    "overview_none": "None yet",
    "overview_rules_live": "Published · {{count}} rules",
    "overview_rules_off": "Not on the site",
    "menu_title": "Site menu",
    "menu_desc": "The tabs across the top of your tournament site. Drag to change the order, switch off what you don't want to show.",
    "menu_reset": "Reset",
    "menu_overview_fixed": "Always first — the tournament's home",
    "menu_waiting": "Not shown yet",
    "menu_note": "A tab only appears once it has something to show. Hidden tabs stay reachable by their link.",
    "menu_matches_desc": "Schedule, live scores and results",
    "menu_matches_needs": "Appears once your format has matches",
    "menu_standings_desc": "Group tables, brackets and the final ranking",
    "menu_standings_needs": "Needs the Scheduling feature",
    "menu_news_desc": "Your posts and updates",
    "menu_news_needs": "Appears with your first published post",
    "menu_gallery_desc": "Photos and videos",
    "menu_gallery_needs": "Appears once photos are uploaded",
    "menu_officials_desc": "Referees and their match schedules",
    "menu_officials_needs": "Appears once officials are added",
    "menu_rules_desc": "The tournament's rules and regulations",
    "menu_rules_needs": "Appears once rules are published (Rules tab)",
    "main_content_desc": "The sections in the main column of your homepage.",
    "sidebar_desc": "The cards beside it, top to bottom. Drag to reorder.",
    "sidebar_note": "On phones the sidebar cards follow the main sections, in this order.",
    "enable_feature": "Enable",
    "add_documents": "Add documents",
    "standings_detail": "Group table detail",
    "menu_venues_desc": "Addresses, directions, pitches and the matches at each venue",
    "menu_venues_needs": "Needs the Venue Management feature and a venue",
    "tab_branding": "Branding",
    "brand_images_title": "Logo & cover",
    "brand_images_desc": "The logo is the tournament's badge everywhere; the cover fills the header of your site.",
    "logo_hint": "Square, at least 512 px. Transparent backgrounds look best.",
    "cover_hint": "Landscape, at least 1080 px wide. Keep faces and text in the middle — the edges fade into the header.",
    "brand_locked": "The tournament has started: the logo and cover are locked.",
    "preview_title": "Preview",
    "preview_note": "Shows your changes before you save them.",
    "preview_button": "Register",
    "preview_chip": "Group A",
    "preview_link": "All matches",
    "colour_palette": "Colours",
    "colour_custom": "Pick any colour",
    "colour_hex": "Hex code",
    "colour_default": "Use TorMatch colour",
    "colour_using_default": "Using the TorMatch colour",
    "shade_soft": "Soft",
    "shade_main": "Main",
    "shade_strong": "Strong",
    "shades_hint": "Your site uses these shades: soft for highlights, main for buttons and the menu, strong for links. Text on the colour switches to dark automatically when it's light.",
    "about_title": "About the tournament",
    "about_desc": "The description at the top of your homepage — also used by search engines and link previews.",
    "desc_locked": "The tournament has started: the description is locked.",
    "menu_showcase_desc": "Titleholders, past winners and past participants",
    "menu_showcase_needs": "Appears once the Showcase feature is on and teams are added (Showcase)",
    "widget_showcase_card_desc": "Teams from earlier editions: titleholders, past winners and past participants. Never the current participants."
  },
  "dashboard": {
    "todo_list": "Setup Checklist",
    "all_tasks_completed": "All set! Your tournament is ready.",
    "todo_add_logo": "Upload Tournament Logo",
    "todo_add_description": "Add Description",
    "todo_set_dates": "Set Tournament Dates",
    "todo_add_parts": "Define Tournament Parts",
    "todo_publish": "Publish Tournament",
    "quick_actions": "Quick Actions",
    "action_add_post": "Write Post",
    "action_add_team": "Add Showcase Team",
    "action_upload_photos": "Upload Photos",
    "action_invite_staff": "Invite Staff",
    "action_manage_parts": "Manage Format",
    "qr_card": {
      "title": "Spread the word",
      "description": "Share your tournament with participants and fans using this QR code or the share button.",
      "download": "Download QR",
      "share": "Share Tournament"
    },
    "suggestions": {
      "dismiss": "Don't show this suggestion anymore",
      "registration": {
        "title": "Enable Registrations",
        "description": "Allow teams to sign up directly through your tournament page and manage submissions easily.",
        "cta": "Start with TorMatch Registration"
      },
      "scheduling": {
        "title": "Build Your Schedule",
        "description": "Create stages, brackets, and auto-generate match fixtures for your tournament.",
        "cta": "Start with TorMatch Scheduling"
      },
      "analytics": {
        "title": "Track Performance",
        "description": "Understand your reach, track page views, and see how teams interact with your tournament.",
        "cta": "Start with TorMatch Analytics"
      },
      "sponsors": {
        "title": "Showcase Sponsors",
        "description": "Give your partners visibility by adding their logos directly to the public tournament site.",
        "cta": "Add your first Sponsor"
      },
      "showcase": {
        "title": "Highlight Teams",
        "description": "Build excitement early by showcasing participating teams on your public tournament page.",
        "cta": "Add Showcase Teams"
      },
      "posts": {
        "title": "Share Updates",
        "description": "Keep participants and fans informed with announcements, news, and updates.",
        "cta": "Write your first Post"
      },
      "gallery": {
        "title": "Upload Photos",
        "description": "Share the best moments. Create albums and upload photos from the event.",
        "cta": "Create an Album"
      },
      "staff": {
        "title": "Invite Your Team",
        "description": "Don't do it alone. Invite staff, administrators, and referees to help manage the tournament.",
        "cta": "Invite Staff"
      },
      "brochure": {
        "title": "Add a Brochure",
        "description": "Upload a PDF brochure with rules, maps, or info for your participants to download.",
        "cta": "Upload a Brochure"
      },
      "documents": {
        "title": "Add Documents",
        "description": "Upload PDF documents — rules, maps, schedules — for participants to download. Pin one to show its preview on the tournament page.",
        "cta": "Upload Documents"
      },
      "customize": {
        "title": "Customize Your Public Page",
        "description": "Make your tournament stand out by adding social links, contact info, and custom display settings.",
        "cta": "Customize Public Page"
      },
      "announce_registration": {
        "title": "Announce that registration is open",
        "description": "Post an update so teams know they can sign up now.",
        "cta": "Write a post"
      },
      "recap_live": {
        "title": "Share a match recap",
        "description": "The action is fresh — post highlights and results while everyone's watching.",
        "cta": "Write a recap"
      },
      "champion": {
        "title": "Crown your champion",
        "description": "The tournament's over — add the winners to your showcase.",
        "cta": "Open showcase"
      }
    }
  },
  "bracket": {
    "delete_placement_bracket": "Delete placement bracket",
    "two_legs": "2 legs",
    "round_settings": "Round settings",
    "remove_bye_tooltip": "Remove the bye and make this a real spot",
    "remove_bye_aria": "Remove the bye from this spot",
    "bye_option_hint": "no opponent, the other team advances",
    "slot_empty": "Empty",
    "error_rename_match": "Failed to rename match.",
    "error_update_round": "Failed to update round.",
    "error_update_bye": "Could not update the bye",
    "error_add_match": "Failed to add the match.",
    "error_delete_third_place": "Failed to delete 3rd place match.",
    "match_names_reset_done": "Match names reset ({{count}} updated)",
    "auto_schedule_dialog": {
      "title": "Auto schedule",
      "selection": "What will be scheduled",
      "matches_to_place": "matches to place",
      "no_filters": "Every unscheduled match, no filters applied.",
      "destination": "Where they go",
      "free_time": "{{time}} free",
      "forecast": "What will happen",
      "no_fields": "Pick at least one field to schedule onto.",
      "will_be_placed": "will be placed",
      "will_remain": "will stay unscheduled",
      "capacity": "{{used}} of {{total}} field time used",
      "wont_fit": "{{count}} match(es) will not fit in the remaining field time on this day.",
      "venue_not_selected": "Some of these matches are assigned to {{venue}}, but no field there is selected.",
      "all_fit": "Everything fits in the field time available.",
      "estimate_note": "An estimate based on match durations and the field time still free on this day. The scheduler decides the final order.",
      "confirm": "Schedule {{count}} matches",
      "pacing": "Pacing",
      "ends_at": "ends {{time}}",
      "strategy": {
        "spread": {
          "name": "Spread across the day",
          "why": "Share the spare time out so kick-offs run evenly and the day finishes near closing time."
        },
        "early": {
          "name": "Finish as early as possible",
          "why": "The minimum turnaround throughout. Everyone goes home sooner."
        },
        "window": {
          "name": "Fit a time window",
          "why": "Keep every match inside the hours you choose."
        }
      },
      "window_start": "From",
      "window_end": "Until"
    },
    "auto_schedule": "Auto Schedule",
    "drilldown": {
      "division": "Division",
      "stage": "Stage",
      "group": "Group or bracket",
      "all_divisions": "All divisions",
      "all_stages": "All stages",
      "all_groups": "All groups and brackets",
      "n_of_m": "{{selected}} of {{total}}",
      "stage_fallback": "Stage {{number}}"
    },
    "total_match_duration": "Total match duration",
    "time_settings": "Time Settings",
    "match_duration": "Match duration",
    "match_duration_different_per_division": "Match duration is different per division",
    "for_all_matches": "For all matches",
    "per_age_class": "Per age class",
    "time_between_matches": "Time between matches",
    "save_changes": "Save changes",
    "cancel": "Cancel",
    "confirm_clear_schedule": "Are you sure you want to clear all scheduled matches for this tournament?",
    "not_planned": "Not planned",
    "plan": "Plan",
    "referees": "Officials",
    "referees_title": "Officials",
    "search_referees_label": "Search officials",
    "search_referees_placeholder": "Search by name or email...",
    "add_referee_button": "Add official",
    "no_referees_title": "No officials yet",
    "no_referees_hint": "Add the referees and other officials working at this tournament.",
    "create_referee_modal_title": "Add official",
    "referee_name_input_placeholder": "Official name",
    "referee_email_input_placeholder": "Official email",
    "active_referee_checkbox_label": "Active official",
    "edit_referee": "Edit official",
    "delete_referee_button": "Delete official",
    "referees_spotlight_description": "Manage tournament officials",
    "email_table_header": "Email",
    "select_groups_brackets": "Select groups/brackets",
    "all_groups_brackets": "All groups/brackets",
    "selected": "selected",
    "all_rounds": "All rounds",
    "round_label": "Round {{number}}",
    "selected_rounds": "Selected rounds",
    "select_courts": "Select playing fields",
    "all_courts": "All playing fields",
    "plan_on": "plan on",
    "clear_schedule": "Clear schedule",
    "search_matches": "Search matches",
    "referee_count_per_match": "Official count per match",
    "one_referee_per_match": "One official per match",
    "two_referees_per_match": "Two officials per match",
    "three_referees_per_match": "Three officials per match",
    "four_referees_per_match": "Four officials per match",
    "five_referees_per_match": "Five officials per match",
    "assign_on_date": "Assign on {{date}}",
    "manage_referees": "Manage officials",
    "filter": "Filter",
    "edit_courts": "Edit playing fields",
    "edit_court_name": "Edit playing field name",
    "court": "Playing field",
    "court_name": "Playing field name",
    "start_time": "Start time",
    "end_time": "End time",
    "required": "This field is required",
    "enter_court_name": "Enter playing field name",
    "enter_start_time": "Enter start time",
    "enter_end_time": "Enter end time",
    "use_planner_tool": "Use planner tool from side panel reorder matches using drag and drop",
    "schedule_desktop_only_title": "Scheduling is available on desktop",
    "schedule_desktop_only_body": "Please switch to a desktop device to arrange the schedule.",
    "format_desktop_only_title": "Format editor is available on desktop",
    "format_desktop_only_body": "Please switch to a desktop device to build the tournament format.",
    "add_court": "Add playing field",
    "clear_court": "Clear playing field",
    "delete_court": "Delete playing field",
    "remove_all_scheduled_matches_from_court": "Remove all scheduled matches from playing field {{court_name}} for {{date}}?",
    "all_matches_are_scheduled": "All matches are scheduled",
    "empty_slot": "Empty slot",
    "add_slot": "Add slot",
    "add_break": "Add break",
    "add_event": "Add event",
    "edit_break": "Edit break",
    "edit_event": "Edit event",
    "event_name": "Event name",
    "enter_event_name": "Enter event name",
    "event_description": "Description (optional)",
    "event_description_optional": "Description (optional)",
    "enter_event_description": "Add a short description...",
    "event_duration": "Event duration (minutes)",
    "enter_event_duration": "Enter duration in minutes",
    "event_details": "Details",
    "event_schedule": "Schedule",
    "event_teams": "Linked teams",
    "linked_teams_helper": "Players and coaches on these teams will see this event in their personal schedule.",
    "add_team_placeholder": "Search teams...",
    "no_teams_linked": "No teams linked yet",
    "no_teams_in_tournament": "No teams have been added to this tournament yet.",
    "select_all_teams": "Select all",
    "clear_teams": "Clear",
    "remove_team_aria": "Remove team",
    "event_visibility": {
      "shown_to_all": "Shown to all teams",
      "shown_to_all_helper": "Including any teams added later.",
      "hidden_from_all": "Hidden from all teams",
      "hidden_from_all_helper": "No team will see this event in their schedule.",
      "specific_teams": "Visible to {{count}} team(s)",
      "show_to_all_action": "Show to all teams",
      "hide_from_all_action": "Hide from everyone"
    },
    "break_name": "Break name",
    "enter_break_name": "Enter break name",
    "break_duration": "Break duration (minutes)",
    "enter_break_duration": "Enter duration in minutes",
    "break": "Break",
    "event": "Event",
    "schedule_conflict": "Team scheduled on another court at the same time.",
    "round_order_conflict": "Later round is scheduled before an earlier round.",
    "stage_order_conflict": "Later stage is scheduled before an earlier stage.",
    "court_time_conflict": "Match is scheduled outside the court time window.",
    "delete_court_and_remove_all_scheduled_matches": "Delete court {{court_name}} and remove its scheduled matches for all dates?",
    "minutes": "minutes",
    "reset_all_referees": "Reset all officials",
    "age_class": "Age Class",
    "round": "Round",
    "group": "Group",
    "unscheduled_matches_subtitle": "Here is an overview of unscheduled matches. You can drag & drop them manually into the schedule.",
    "auto_schedule_officials": "Auto Schedule Officials",
    "official_count_label": "Official count per match",
    "officials": "Officials",
    "officials_drawer_description": "Manage referees and assign them to matches manually or automatically.",
    "delete_item_title": "Delete Group / Bracket",
    "delete_item_confirm_msg": "Are you sure you want to delete this group or bracket? All associated data will be permanently removed.",
    "add_bronze_match": "Add match for places {{low}}–{{high}}",
    "delete_item_clear_title": "Just want to clear the teams?",
    "delete_item_clear_desc": "Removes all assigned teams but keeps the group in place.",
    "delete_item_clear_action": "Clear teams",
    "rename_match": "Match name",
    "rename_leg_1": "1st leg",
    "rename_leg_2": "2nd leg",
    "reset_match_names": "Reset Match Names",
    "confirm_reset_match_names": "All auto-generated match names (e.g. Match A1, A2…) will be renumbered. Bracket references inside the app will keep working, but printed brackets, screenshots, and external links to specific match names will become stale. Continue?",
    "placement_matches_title": "Placement matches",
    "placement_matches_description": "Determine the final ranking by adding placement brackets for losers from each round. Toggle a range on or off; existing brackets are kept as-is.",
    "placement_matches_open_panel": "Placement matches",
    "placement_option_third_place": "3rd-place match",
    "placement_option_third_place_summary": "Decides 3rd-4th place from semi-final losers (1 match, sits next to the final).",
    "placement_option_bronze_generic_title": "{{low}}th-{{high}}th place match",
    "placement_option_bronze_generic_summary": "Decides {{low}}th-{{high}}th place from the semi-final losers in this placement bracket (1 match).",
    "placement_option_places_5_8": "5th-8th place",
    "placement_option_places_5_8_summary": "Mini-bracket for the four quarter-final losers.",
    "placement_option_places_9_16": "9th-16th place",
    "placement_option_places_9_16_summary": "Mini-bracket for the eight Round of 16 losers.",
    "placement_option_places_17_32": "17th-32nd place",
    "placement_option_places_17_32_summary": "Mini-bracket for the sixteen Round of 32 losers.",
    "placement_option_places_33_64": "33rd-64th place",
    "placement_option_places_33_64_summary": "Mini-bracket for the thirty-two Round of 64 losers.",
    "placement_option_match_count": "{{count}} extra match",
    "placement_option_match_count_plural": "{{count}} extra matches",
    "placement_option_present_label": "Already added",
    "placement_option_unavailable_too_few_rounds": "Bracket is not deep enough for this option",
    "placement_apply_button": "Save",
    "placement_no_options_available": "Bracket has too few rounds for any placement options.",
    "placement_total_extra_matches": "Total extra matches: {{count}}",
    "placement_derivation_label": "Losers of {{bracket}}, {{round}}",
    "placement_apply_failed": "Could not save placement matches.",
    "placement_loading": "Loading placement options…",
    "orphan_refs_warning": "{{count}} match references a deleted match",
    "orphan_refs_warning_plural": "{{count}} matches reference deleted matches",
    "code_stability_tooltip": "Bracket codes don't shift if a bracket is deleted. They're stable per tournament.",
    "final_standings_title": "Final standings",
    "periods": "Periods",
    "conflict": {
      "venue_mismatch": {
        "row": "Played at a venue this group is not assigned to.",
        "title": "Wrong venue",
        "explanation": "This group plays at {{subject}}, but the match sits on a field somewhere else. Teams and officials travel to the venue they were told about, so a match that quietly moves site is one people miss. A group can be assigned several venues — any of them is fine.",
        "fix": "Move the match to a field at one of the venues listed above, or add this venue to the group under Venues.",
        "expected_label": "Allowed venues",
        "source_group": "From this group",
        "source_division": "From this division",
        "short": "Wrong venue"
      },
      "no_venue": "No venue",
      "open_details": "Show what this conflict is about",
      "this_match": "This match",
      "conflicts_with": "Conflicts with",
      "field_hours": "Field hours",
      "occupies": "This match occupies",
      "how_to_fix": "How to fix it",
      "no_court": "Unnamed field",
      "team_double_booked": {
        "row": "{{subject}} plays elsewhere at the same time.",
        "title": "Team double-booked",
        "explanation": "{{subject}} cannot be in two places at once. The matches below overlap in time and are on different fields. Each time window includes the turnaround margin after the match, so fixtures that look back-to-back can still overlap.",
        "fix": "Move one of these matches to a free slot, or put them both on the same field so they run one after the other.",
        "short": "Double-booked"
      },
      "official_double_booked": {
        "row": "{{subject}} is also officiating elsewhere.",
        "title": "Official double-booked",
        "explanation": "{{subject}} is assigned to more than one match whose time windows overlap, so they cannot cover both.",
        "fix": "Assign another official to one of these matches, or move it to a slot where {{subject}} is free.",
        "short": "Official clash"
      },
      "court_hours": {
        "row": "Scheduled outside the field’s hours.",
        "title": "Outside field hours",
        "explanation": "This match starts before {{subject}} opens or runs past the time it closes, so part of it falls outside the hours the field is available for play.",
        "fix": "Move the match inside the field’s window, or widen that window from the field’s header at the top of the column.",
        "short": "Outside field hours"
      },
      "stage_order": {
        "row": "{{subject}} starts before an earlier stage.",
        "title": "Stage played out of order",
        "explanation": "{{subject}} belongs to a later stage of this division, but it kicks off before matches from an earlier stage. The teams that advance into it are not decided yet.",
        "fix": "Move this match after the earlier stage’s matches, or bring those matches forward.",
        "short": "Stage order"
      },
      "round_order": {
        "row": "{{subject}} starts before an earlier round.",
        "title": "Round played out of order",
        "explanation": "{{subject}} is a later round of this bracket, but it kicks off before matches from an earlier round. The teams that advance into it are not decided yet.",
        "fix": "Move this match after the earlier round’s matches, or bring those matches forward.",
        "short": "Round order"
      },
      "team_unavailable": {
        "short": "Team unavailable",
        "row": "{{subject}} cannot play at this time.",
        "title": "Team is unavailable",
        "explanation": "{{subject}} is marked unavailable from {{start}} to {{end}} on this day, and this match falls inside that window. A match nobody turns up for is not a tight schedule — it is a walkover, so auto-scheduling never places one here.",
        "fix": "Move the match outside {{start}} – {{end}}, or change the availability on the team or division it belongs to.",
        "window_label": "Unavailable",
        "someone": "This team"
      },
      "pitch_mismatch": {
        "short": "Wrong pitch",
        "row": "Pitch does not match what this group needs.",
        "title": "Wrong kind of pitch",
        "explanation": "This group asks for {{pitch}}, and the pitch it is on is not that. Age classes play on the pitch they were built for — putting the youngest teams on a full-size field, or the seniors on a quarter one, is the kind of mistake nobody notices until kick-off.",
        "fix": "Move the match to a pitch that is {{pitch}}, or change what this group requires under Scheduling rules.",
        "required_label": "Required"
      },
      "official_team_excluded": {
        "short": "Official excluded",
        "row": "{{subject}} may not officiate one of these teams.",
        "title": "Official is excluded",
        "explanation": "{{subject}} is marked as unable to officiate one of the teams in this match — a parent, a coach from the same club, or any other reason the organiser recorded. Auto-assign never picks them for it; a manual assignment is allowed, and this is the alert that comes with it.",
        "fix": "Assign another official, or remove the exclusion on the official’s page if it no longer applies."
      },
      "insufficient_rest": {
        "short": "Short rest",
        "row": "{{subject}} gets only {{actual}} min rest ({{required}} asked).",
        "title": "Not enough rest",
        "explanation": "{{subject}} has {{actual}} minutes between these two matches, and this division asks for {{required}}. The match can be played — this is a warning, not a clash — but a team going straight from one pitch to the next plays the second one tired.",
        "fix": "Move one of the two matches later, or lower the rest this division asks for under Scheduling rules.",
        "gap_label": "Rest between matches",
        "gap_actual": "{{minutes}} min actual",
        "gap_required": "{{minutes}} min asked"
      },
      "official_overloaded": {
        "short": "Official overloaded",
        "row": "{{subject}} has {{actual}} matches today (max {{required}}).",
        "title": "Official is over their limit",
        "explanation": "{{subject}} is on {{actual}} matches today and agreed to {{required}}. Nothing clashes — this is a warning — but volunteers who are handed a whole day tend not to come back next year.",
        "fix": "Take them off one of today’s matches, or raise their limit on the official’s page.",
        "load_label": "Matches today",
        "someone": "This official"
      },
      "pitch_source_group": "set on this group",
      "pitch_source_division": "set on the division",
      "pitch_source_division_format": "the division’s own format",
      "short_turnaround": {
        "short": "Tight turnaround",
        "row": "Only {{actual}} min to turn {{subject}} around ({{required}} needed).",
        "title": "Not enough time between matches",
        "explanation": "These two matches are {{actual}} minutes apart on {{subject}}, and this pitch is set up for {{required}} minutes between matches. They do not overlap, so the day will run — but there is little time to clear the previous teams, reset the nets and get the next side on.",
        "fix": "Move the later match back a few minutes, or lower the time between matches under Scheduling rules.",
        "gap_label": "Time between matches",
        "gap_actual": "{{minutes}} min actual",
        "gap_required": "{{minutes}} min needed"
      },
      "leg_order": {
        "row": "{{subject}} starts before the first leg of its tie has ended.",
        "title": "Second leg before the first leg",
        "explanation": "{{subject}} is one leg of a two-legged tie, and the second leg kicks off before the first leg has finished. The aggregate only makes sense when the first leg is played first.",
        "fix": "Move the second leg after the first leg, or bring the first leg forward.",
        "short": "Leg order"
      }
    },
    "official_count_hint": "How many officials each match should get.",
    "officials_run_respects": "Respects each official’s exclusions, daily limit and rest — and reports any match it could not crew.",
    "officials_in_pool": "{{count}} officials available",
    "gap": {
      "free": "{{minutes}} min gap",
      "overlap": "overlaps by {{minutes}} min"
    },
    "resize_event": "Drag to change how long this event lasts",
    "break_total_hint": "A {{own}} min break plus the {{lead}} min changeover after the previous match.",
    "break_duration_hint": "Includes the {{minutes}} min changeover after the previous match.",
    "break_min_error": "Must be longer than the {{minutes}} min changeover. Delete the break to leave just that.",
    "duration_locked_hint": "Locked while the schedule is locked — changing it would move every match below this card.",
    "field_add_hint": "Add to the top of this field",
    "clear_schedule_reset_durations": "Also reset {{count}} custom match durations",
    "durations_title": "Match & break durations",
    "save_and_recalculate": "Save & recalculate",
    "durations_recalc_warning": "Saving will automatically recalculate all scheduled match times.",
    "change_official_role_aria": "Change official role",
    "delete_break": "Delete break",
    "drop_match_first_slot": "Drop a match here to create the first slot",
    "remove_match_aria": "Remove match from schedule",
    "remove_official_aria": "Remove official",
    "remove_selection_aria": "Remove selection"
  },
  "participants": {
    "page_description": "Manage all tournament participants including teams, players, and officials.",
    "add_noun": "Add {{noun}}",
    "configure_noun": "Configure {{noun}}",
    "empty_noun": "No {{noun}} yet",
    "teams_empty_hint": "Add everyone taking part in this tournament.",
    "players_empty_hint": "Add the players taking part in this tournament.",
    "list_subtitle": "Manage the {{noun}} taking part in this tournament.",
    "edit_noun": "Edit {{noun}}",
    "noun_name": "{{noun}} name",
    "noun_logo": "{{noun}} logo",
    "noun_status": "{{noun}} status",
    "name_placeholder_noun": "Enter {{noun}} name",
    "single_noun": "Single {{noun}}",
    "multiple_noun": "Multiple {{noun}}",
    "noun_not_found": "{{noun}} not found",
    "back_to_noun": "Back to {{noun}}",
    "manage_noun": "Manage {{noun}}",
    "select_noun": "Select {{noun}}",
    "noun_photo": "Photo",
    "delete_noun_title": "Delete {{noun}}",
    "delete_noun_message": "Are you sure you want to delete this {{noun}}?",
    "delete_team_title": "Delete Team",
    "delete_team_message": "Are you sure you want to delete this team?",
    "delete_player_title": "Delete Player",
    "delete_player_message": "Are you sure you want to delete this player?",
    "delete_official_title": "Delete Official",
    "delete_official_message": "Are you sure you want to delete this official?",
    "present": "Present",
    "not_present": "Not Present",
    "paid": "Paid",
    "unpaid": "Unpaid",
    "view_options": "View",
    "view_columns": "Columns",
    "col_number": "Number",
    "col_position": "Position",
    "view_rows_per_page": "Rows per page",
    "all_rows": "All",
    "of": "of",
    "prev_page": "Previous page",
    "next_page": "Next page",
    "pagination": "Pagination",
    "export": "Export",
    "export_csv": "Export as CSV",
    "export_xlsx": "Export as XLSX",
    "export_pdf": "Export as PDF",
    "player_linked_tooltip": "Linked to a TorMatch account",
    "players_description": "Manage all players in this tournament.",
    "remove_account_access": "Remove account access",
    "remove_account_title": "Remove account access",
    "remove_account_message": "This will unlink the player's TorMatch account. They will no longer be able to access this player slot. The player's match history will be preserved.",
    "account_unlinked": "Account unlinked successfully.",
    "account_unlink_failed": "Failed to unlink account. Please try again.",
    "no_team": "No team",
    "officials_description": "Manage referees and officials for this tournament.",
    "select_team": "Select team",
    "team": "Team",
    "team_logo": "Team logo",
    "upload_logo": "Upload logo",
    "col_goals": "Goals",
    "col_assists": "Assists",
    "col_yellow": "Yellow",
    "col_red": "Red",
    "col_appearances": "Apps",
    "stats_title": "Match statistics",
    "stats_goals": "Goals",
    "stats_assists": "Assists",
    "stats_penalty_goals": "Penalty goals",
    "stats_own_goals": "Own goals",
    "stats_goal_contributions": "Goal contributions",
    "stats_yellow_cards": "Yellow cards",
    "stats_red_cards": "Red cards",
    "stats_appearances": "Appearances",
    "stats_no_data": "No match-event data recorded yet.",
    "stats_minutes_note": "Minutes played will be available once lineups are recorded.",
    "stats_top_scorers": "Top scorers",
    "stats_most_cards": "Most cards",
    "filters": "Filters",
    "filter_none": "None",
    "filter_by": "Filter by",
    "filter_clear_all": "Clear all filters",
    "filter_clear_field": "Clear this filter",
    "filter_remove": "Remove filter",
    "filter_from": "From",
    "filter_to": "To",
    "filter_unset": "Not set",
    "filter_no_team": "No team",
    "filter_account": "TorMatch account",
    "filter_account_linked": "Linked",
    "filter_account_none": "Not linked",
    "filter_search": "Search",
    "view_custom_fields": "Custom fields",
    "filter_filled": "Filled in",
    "filter_empty": "Empty",
    "col_points": "Points",
    "col_pim": "PIM",
    "col_fouls": "Fouls",
    "col_exclusions": "Excl.",
    "col_fouled_out": "FO",
    "stats_pim": "Penalty minutes",
    "stats_fouls": "Fouls",
    "stats_exclusions": "Exclusions",
    "stats_fouled_out": "Fouled out",
    "stats_segment": {
      "played": "Played",
      "won": "Won",
      "lost": "Lost",
      "units_won": "{{units}} won",
      "units_lost": "{{units}} lost"
    },
    "col_score_type": {
      "fg2": "2-pointers",
      "fg3": "3-pointers",
      "ft": "Free throws",
      "try": "Tries",
      "conversion": "Conversions",
      "penalty_goal": "Penalty goals",
      "drop_goal": "Drop goals",
      "goal": "Goals",
      "behind": "Behinds",
      "point": "Points"
    },
    "col_card_short": {
      "minor": "Minor",
      "major": "Major",
      "misconduct": "Misc."
    }
  },
  "schedule": {
    "stages_title": "Tournament Format",
    "stages_description": "Fully customize the structure of your competition for every tournament part. Create dynamic stages tailored to your format—set up group phases, organize round-robin leagues, or build excitement with single and double-elimination playoffs. Manage team assignments, schedule matches, and control the progression path to deliver a professional tournament experience.",
    "teams_title": "Teams",
    "teams_description": "Manage all teams participating in your tournament. Add new teams, edit team information, and track the status of all registered participants. Organize team details, manage player rosters, and ensure all team information is up-to-date for smooth tournament operations.",
    "add_team_button": "Add Team",
    "logo_table_header": "Logo",
    "status": "Status",
    "name_table_header": "Name",
    "members_table_header": "Members",
    "created": "Created",
    "active": "Active",
    "inactive": "Inactive",
    "no_teams_title": "No teams yet",
    "no_stages_title": "No stages yet",
    "rounds": "rounds",
    "no_matches_title": "No matches",
    "no_matches_description": "No matches found for this stage.",
    "start_tournament_button": "Start tournament",
    "page_title": "Schedule",
    "page_description": "Assign playing fields, match times and officials.",
    "configure": "Configure",
    "menu_match_duration": "Set up match duration",
    "view_grid": "Grid",
    "view_calendar": "Calendar",
    "fullscreen": "Fullscreen",
    "exit_fullscreen": "Exit fullscreen",
    "lock_schedule": "Lock schedule",
    "unlock_schedule": "Unlock schedule",
    "lock_schedule_title": "Lock schedule?",
    "lock_schedule_message": "The times become final: nothing can be re-planned, and changing one match becomes a postponement that is recorded and announced to the teams. Unlock any time to go back to planning.",
    "locked_banner": "The schedule is locked, so the times are final. Changing one now postpones the match: the teams are told and the change is recorded.",
    "locked_match_tooltip": "Locked — change this time by postponing the match",
    "clear_blocked_locked": "Unlock the schedule before clearing it.",
    "clear_officials_blocked_locked": "Unlock the schedule before clearing the officials.",
    "court_action_blocked_locked": "This would remove matches from the locked schedule. Unlock it first.",
    "setup_title": "Set up your schedule",
    "setup_description": "Configure match timing and add your playing fields to get started. These settings decide how matches are laid out — you can fine-tune everything later.",
    "setup_timing_section": "Match timing",
    "setup_duration_label": "Match duration",
    "setup_duration_hint": "How long a single match lasts. Every field's time slots are sized to this.",
    "setup_between_label": "Time between matches",
    "setup_between_hint": "Buffer added after each match before the next one starts on the same field (changeovers, short breaks).",
    "setup_fields_section": "Playing fields",
    "setup_count_label": "Number of fields",
    "setup_count_hint": "How many fields (courts/pitches) to create now. Matches run in parallel across fields, so more fields means a shorter day. You can add or remove fields anytime.",
    "setup_start_label": "Day start time",
    "setup_start_hint": "Earliest a match can start on each field.",
    "setup_end_label": "Day end time",
    "setup_end_hint": "Latest a match can run until on each field.",
    "setup_time_error": "End time must be after the start time.",
    "setup_submit": "Create schedule",
    "setup_submitting": "Setting up…",
    "setup_minutes": "min",
    "setup_per_division": "Per division",
    "setup_duration_per_division": "Match duration per division",
    "setup_duration_adjust_note": "Individual matches can be adjusted later.",
    "touch_drag_hint": "Press and hold a match to start dragging",
    "division": "Choose which division you want to edit the stages for",
    "date": "Date",
    "court": "Playing field",
    "all_courts": "All playing fields",
    "all_dates": "All dates",
    "match_settings": "Match Settings",
    "settings_updated": "Match duration settings updated and schedule recalculated",
    "settings_update_failed": "Failed to update match duration settings",
    "view_options": "View Options",
    "zoom_label": "Row height",
    "zoom_taller": "Taller rows",
    "zoom_shorter": "Shorter rows",
    "zoom_tier_minimal": "Minimal",
    "zoom_tier_compact": "Compact",
    "zoom_tier_standard": "Standard",
    "zoom_tier_detailed": "Detailed",
    "zoom_tier_full": "Full detail",
    "show_officials": "Show officials in match cards",
    "show_official_roles": "Show official roles",
    "single_team": "Single Team",
    "multiple_teams": "Multiple Teams",
    "edit_team_title": "Edit Team",
    "name_input_label": "Name",
    "division_label": "Division",
    "division_unassigned": "Not assigned",
    "division_all": "All",
    "team_name_input_placeholder": "Team Name",
    "too_short_name_validation": "Name is too short",
    "active_team_checkbox_label": "Active Team",
    "team_member_select_title": "Team Members",
    "multiple_teams_input_label": "Teams List",
    "multiple_teams_input_placeholder": "Team 1\nTeam 2",
    "example_label": "Example:",
    "active_teams_checkbox_label": "Active Teams",
    "logo_settings_title": "Logo Settings",
    "remove_logo": "Remove Logo",
    "upload_logo": "Upload Logo",
    "team_email_placeholder": "Email address",
    "team_dressing_room_placeholder": "e.g. Room A",
    "team_custom_fields_label": "Custom Fields",
    "edit_player": "Edit Player",
    "add_player_button": "Add Player",
    "single_player_title": "Single Player",
    "player_name_input_placeholder": "Player Name",
    "active_player_checkbox_label": "Active Player",
    "multiple_players_title": "Multiple Players",
    "multiple_players_input_label": "Players List",
    "multiple_players_input_placeholder": "Player 1\nPlayer 2",
    "active_players_checkbox_label": "Active Players",
    "edit_referee": "Edit Official",
    "add_referee_button": "Add Official",
    "single_official_title": "Single Official",
    "multiple_officials_title": "Multiple Officials",
    "multiple_officials_input_label": "Officials List",
    "multiple_officials_input_placeholder": "Official 1\nOfficial 2",
    "referee_name_input_placeholder": "Official Name",
    "email_input_label": "Email",
    "referee_email_input_placeholder": "official@example.com",
    "invalid_email_validation": "Invalid email format",
    "official_email_hint": "Optional. Filled in for you when you invite this official.",
    "active_referee_checkbox_label": "Active Official",
    "official_role_label": "Role",
    "official_role_placeholder": "Select a role",
    "official_country_label": "Country",
    "official_country_placeholder": "e.g. Netherlands",
    "official_license_label": "License Number",
    "official_license_placeholder": "e.g. 12345",
    "player_dob_label": "Date of Birth",
    "player_shirt_number_label": "Shirt Number",
    "player_shirt_number_placeholder": "e.g. 10",
    "player_position_label": "Preferred Position",
    "player_position_placeholder": "e.g. Goalkeeper",
    "save_button": "Save",
    "no_players_title": "No players yet",
    "no_players_body": "Add your first player or share team signup links so players can register themselves.",
    "no_players_secondary_hint": "Tip: open a team to share its Invitation QR with your players.",
    "team": "Team",
    "select_team": "Select a team",
    "no_team": "No team (unassigned)",
    "clear_selection": "Clear",
    "import_from_participants_button": "Import from Participants",
    "import_from_participants_subtitle": "Pick participants to add to your Confirmed Teams",
    "import_from_participants_title": "Import from Participants",
    "import_from_showcase_subtitle": "Pick teams from your Showcase to add as participants",
    "import_selected_button": "Import selected",
    "no_participants_to_import": "No participants available to import.",
    "no_showcase_teams_to_import": "All confirmed showcase teams have already been imported.",
    "participant_already_added": "Already in Confirmed Teams",
    "select_all": "Select all",
    "showcase_team_already_added": "Already in Participants",
    "tab_from_showcase": "From Showcase",
    "division_none": "No division",
    "division_change": "Change division",
    "n_matches": "{{count}} matches scheduled",
    "menu_scheduling_rules": "Scheduling rules",
    "clear_officials": "Clear all officials",
    "clear_officials_confirm": "Clear officials",
    "confirm_clear_officials": "Every official assignment in this tournament will be removed — every day, not just this one. The matches, times and pitches stay exactly as they are.",
    "clear_officials_none": "No officials are assigned yet.",
    "drawer_matches_title": "Schedule matches",
    "drawer_matches_subtitle": "Drag onto a pitch, or auto-schedule",
    "drawer_officials_subtitle": "Drag onto a match, or auto-assign",
    "auto_scheduled_summary": "Scheduled {{count}} matches — kick-offs every {{cadence}} min, done by {{finish}}",
    "field_summary": {
      "open_hint": "Open playing field details",
      "no_venue": "Not linked to a venue",
      "opening_hours": "Opening hours",
      "matches": "Matches",
      "breaks": "Breaks",
      "events": "Events",
      "officials": "Officials on this field",
      "officials_empty": "No officials are assigned to matches on this field yet.",
      "official_matches": "{{count}} matches",
      "venue": "Venue",
      "venue_name": "Venue",
      "setting": "Setting",
      "indoor": "Indoor",
      "outdoor": "Outdoor",
      "surface": "Surface",
      "size": "Pitch size",
      "edit_field": "Edit playing field",
      "edit_all": "Edit all playing fields",
      "edit_all_hint": "Open the pitch table in Configure",
      "locked_hint": "The schedule is locked, so this field cannot be changed."
    },
    "move_failed": "This match could not be moved.",
    "move_unavailable": "Moving matches on the calendar needs the scheduling service to be updated.",
    "tab_board": "Schedule",
    "view_label": "View",
    "options": "Options",
    "view_officials": "Officials",
    "view_official_roles": "Official roles",
    "view_badges": "Group / round badges",
    "view_match_names": "Match names",
    "view_end_time": "End time",
    "view_gaps": "Gaps between matches",
    "cfg_pitches": "Playing fields",
    "cfg_pitches_hint": "Hours, surface and size. These are exactly what the scheduler reads when deciding which matches can go where.",
    "bulk_hours_done": "Opening hours updated on every pitch",
    "view_badges_sideline": "Show in card sideline",
    "view_card_color": "Colour on card edge",
    "card_menu": {
      "preview": "Preview match",
      "duration": "Edit duration",
      "remove": "Remove from slot",
      "postpone": "Postpone match",
      "remove_break": "Remove break",
      "remove_event": "Remove event",
      "swap_sides": "Switch home and away",
      "swap_sides_blocked_started": "Already started, so the sides are fixed",
      "swap_sides_blocked_bye": "A bye has no opponent to switch with",
      "swap_sides_blocked_two_leg": "Each team hosts one leg of a two-legged tie",
      "change_location_time": "Change location / time…"
    },
    "unscheduled_label": "Unscheduled",
    "drawer_locked_note": "The schedule is locked — unlock it to place these matches.",
    "locked_chip": "Schedule locked",
    "undo": "Undo",
    "redo": "Redo",
    "clear_schedule_none": "Nothing is scheduled yet",
    "ledger_none": "Nothing has been postponed",
    "undo_unavailable": "The pitches changed, so there is nothing left to undo.",
    "cfg_tab_general": "General",
    "cfg_tab_fields": "Playing fields",
    "cfg_tab_advanced": "Advanced",
    "cfg_unsaved": "You have unsaved changes",
    "cfg_discard": "Discard",
    "col_appearances": "Apps",
    "col_assists": "Assists",
    "col_goals": "Goals",
    "col_red": "Red",
    "col_yellow": "Yellow",
    "stats_appearances": "Appearances",
    "stats_assists": "Assists",
    "stats_goal_contributions": "Goal contributions",
    "stats_goals": "Goals",
    "stats_minutes_note": "Minutes played become available once lineups are recorded.",
    "stats_most_cards": "Most cards",
    "stats_no_data": "No match data recorded yet.",
    "stats_own_goals": "Own goals",
    "stats_penalty_goals": "Penalty goals",
    "stats_red_cards": "Red cards",
    "stats_title": "Match statistics",
    "stats_top_scorers": "Top scorers",
    "stats_yellow_cards": "Yellow cards",
    "auto_schedule_count_one": "Auto Schedule {{count}} Match",
    "auto_schedule_count_other": "Auto Schedule {{count}} Matches",
    "no_fields_alt": "No playing fields",
    "no_fields_on_day": "No playing fields on this day yet. Add a field to start scheduling matches.",
    "official_role_none": "None",
    "unschedule_drop_hint": "Drop here to return to unscheduled",
    "unschedule_drop_title": "Unschedule",
    "multiple_teams_example_placeholder": "Team 1\nTeam 2, Alex\nTeam 3, Bob, Charlie",
    "multiple_teams_hint": "One team per line. Add players after a comma.",
    "multiple_players_hint": "One player per line.",
    "multiple_officials_hint": "One official per line.",
    "all_divisions": "All divisions",
    "swap_sides_done": "Home and away switched: {{home}} now hosts {{away}}",
    "swap_sides_undone": "Home and away switched back",
    "swap_sides_failed": "Couldn't switch home and away",
    "swap_sides_tbd": "TBD"
  },
  "lineups": {
    "lineups": "Lineups",
    "team_goals_aria": "Team goals",
    "team_yellows_aria": "Team yellow cards",
    "team_reds_aria": "Team red cards",
    "empty_team_title": "Lineup not registered",
    "empty_team_body": "{{team}} hasn't added players to the roster yet.",
    "goals_count_one": "{{count}} goal",
    "goals_count_other": "{{count}} goals",
    "group_other": "Other",
    "red_and_second_yellow": "{{red}} red · {{second}} 2nd yellow",
    "red_count_one": "{{count}} red card",
    "red_count_other": "{{count}} red cards",
    "yellow_count_one": "{{count}} yellow card",
    "yellow_count_other": "{{count}} yellow cards",
    "points_count_one": "{{count}} point",
    "points_count_other": "{{count}} points",
    "team_points_aria": "Team points"
  },
  "results": {
    "delete_event": "Delete event",
    "sub_in": "In",
    "sub_out": "Out",
    "event_form": {
      "confirm_time": "Confirm time",
      "added_time_hint": "{{minute}}+{{added}}' — added time",
      "header_goal": "Select goal type and scorer",
      "header_card": "Select card type and player",
      "header_sub": "Select players for substitution",
      "header_player": "Select player",
      "penalty_shot": "Penalty shot",
      "card_yellow": "Yellow",
      "card_red": "Red",
      "card_second_yellow": "2nd yellow",
      "sub_tactical": "Tactical",
      "sub_injury": "Injury",
      "player": "Player",
      "player_name": "Player name",
      "add_assist": "Add assist",
      "remove_assist": "Remove assist",
      "substitution_n": "Substitution {{n}}",
      "player_out": "Player out",
      "injured_player_out": "Injured player out",
      "player_in": "Player in",
      "add_another_sub": "Add another substitution",
      "team_n": "Team {{n}}",
      "type_card": "Card",
      "type_sub": "Substitution",
      "type_injury": "Injury",
      "type_timeout": "Timeout",
      "type_penalty": "Penalty",
      "own_goal": "Own goal",
      "own_goal_hint": "Pick the player who put it into their own net — the goal counts for {{team}}.",
      "type_foul": "Foul",
      "header_foul": "Select foul type and player"
    },
    "adjust_clock_title": "Adjust Match Clock",
    "player_manual_entry": "Not listed",
    "mark_match_finished": "Mark Match Finished",
    "award_reset_events_warning": "Awarding a result replaces this match's recorded goals.",
    "clock_running_time": "Running time",
    "clock_current": "Current",
    "clock_new": "New",
    "clock_period_start": "Period start",
    "clock_match_kickoff": "Match kickoff",
    "clock_scheduled_start": "Scheduled start",
    "clock_paused_note": "The clock is paused. Adjust the period start or kickoff time below.",
    "clock_prem_note": "Start the match from the Control Panel to begin the clock.",
    "clock_final_note": "This match has finished. You can still correct the kickoff time.",
    "clock_minutes": "Minutes",
    "clock_seconds": "Seconds",
    "start_match": "Start Match",
    "start_extra_time": "Start Extra Time",
    "start_penalties": "Start Penalties",
    "waiting_for_extra_time": "Waiting for Extra Time...",
    "waiting_for_penalties": "Waiting for Penalties...",
    "change_override_result": "Change / Override Result",
    "page_title": "Results",
    "page_description": "View and manage the outcomes of all matches in your tournament. Keep track of scores, winners, and standings in real-time.",
    "edit_match": "Edit Match",
    "kit_to_wear": "Kit",
    "live_match_editor": "Live Match Editor",
    "live_match_editor_description": "Manage scores, events and period transitions in real time.",
    "mark_as_finished": "Mark as Finished",
    "move_to_pre_match": "Move to Pre-Match",
    "match_started": "Match Started",
    "period_started": "Period Started",
    "period_started_suffix": "Started",
    "match_period": "Match Period",
    "resolve_tie_cta": "Resolve tie",
    "period_change_failed": "Couldn't change the period — showing the server's state.",
    "assist": "Assist",
    "stale_events_warning_title": "Match is in pre-match but has recorded events",
    "stale_events_warning_message": "These events are visible to the public. Reset the match to clear them, or move the match forward to the period the events belong to.",
    "match_events": "Match Events",
    "substitutions": "Substitutions",
    "sub_out_for": "Out:",
    "no_events_yet": "No events yet",
    "no_events_in_period": "No events in this period yet",
    "team_slot": "{{group}} · Slot {{slot}}",
    "periods": "Periods",
    "winner_advances_to": "Winner advances to",
    "loser_goes_to": "Loser goes to",
    "first_leg": "First leg",
    "no_events_yet_message": "Goals, cards, and substitutions will appear here once the match is underway.",
    "no_players_yet": "No players yet",
    "no_players_yet_message": "This team has no roster yet. Add players from the Participants page.",
    "confirm_lineups": "Confirm lineups",
    "confirm_lineups_hint": "A coach has submitted an official lineup that is awaiting your confirmation before it goes public.",
    "lineup_awaiting_confirmation": "Awaiting confirmation",
    "lineup_confirmed": "Lineup confirmed",
    "lineup_confirm_error": "Could not confirm the lineup. Please try again.",
    "set_lineup": "Set lineup",
    "edit_lineup": "Edit lineup",
    "lineup_saved": "Lineup saved",
    "lineup_save_error": "Could not save the lineup. Please try again.",
    "clear_lineup": "Clear lineup",
    "lineup_cleared": "Lineup cleared",
    "lineup_clear_error": "Could not clear the lineup. Please try again.",
    "clear_lineup_confirm_title": "Clear this lineup?",
    "clear_lineup_confirm_message": "This removes the lineup for this team in this match, so it no longer shows on the public page or app. You can set it again afterwards.",
    "lineup_suspended_count": "{{count}} suspended player(s) in this lineup",
    "match_suspensions": "Suspended for this match",
    "match_suspensions_none": "No players are suspended for this match.",
    "player_suspended_this_match": "Suspended for this match",
    "add_match_event": "Add Match Event",
    "add_event": "Add event",
    "edit_event": "Edit event",
    "minute": "Minute",
    "match_finished_title": "Match Finished",
    "match_finished_message": "The match has been finalized. You can still add events or adjust details below.",
    "event_deleted": "Event deleted",
    "event_delete_failed": "Failed to delete event",
    "undo": "Undo",
    "live": "Live",
    "match_not_found": "Match not found",
    "match_detail_title": "Match",
    "match_status": "Match Status",
    "match_summary": "Summary",
    "lineups": "Lineups",
    "standings": "Standings",
    "bookings": "Bookings",
    "no_bookings_yet": "No cards have been issued yet.",
    "reason": "Reason",
    "match_info": "Match info",
    "overview": "Overview",
    "information": "Information",
    "scheduled": "Scheduled",
    "duration": "Duration",
    "venue": "Venue",
    "stage": "Stage",
    "round": "Round",
    "referee": "Referee",
    "referees": "Referees",
    "halftime_short": "HT",
    "penalties_short": "Pens",
    "timeout_short": "TIMEOUT",
    "timeout_active_title": "Timeout in progress",
    "timeout_active_sub": "Match was paused during {{period}}",
    "resume_period": "Resume {{period}}",
    "resume": "Resume",
    "upcoming_short": "VS",
    "final_aet": "FT (AET)",
    "final_pens": "FT (Pens)",
    "first_leg_pending_title": "Result decided on the next match",
    "first_leg_pending_message": "This is the first leg of a two-leg tie. The aggregate score across both legs will determine who advances.",
    "away_goals_decided_title": "{{team}} advances on away goals",
    "away_goals_decided_message": "Aggregate score is level, so the away-goals rule decides the tie.",
    "event_button": {
      "card": "Card",
      "sub": "Sub",
      "timeout": "Timeout",
      "penalty": "Penalty",
      "yellow_card": "Yellow card",
      "second_yellow": "Second yellow",
      "red_card": "Red card",
      "substitute_off": "Substitute off",
      "goal": "Goal",
      "penalty_scored": "Penalty Goal",
      "penalty_missed": "Penalty Missed",
      "penalty_saved": "Penalty Saved",
      "green_card": "Green card"
    },
    "penalty_event": {
      "section_header": "Select Outcome and Taker",
      "section_header_taker": "Select Taker",
      "scored": "Scored",
      "missed": "Missed",
      "saved": "Saved",
      "penalty_outcome": "Penalty {{outcome}}"
    },
    "final": "Final",
    "select_team_instruction": "Select which team this event belongs to",
    "reset_match": "Reset match",
    "reset_match_confirm_title": "Reset this match?",
    "reset_match_confirm_message": "All match events (goals, cards, substitutions, kickoff), the score, and any custom match structure for this match will be cleared. The match returns to its pre-match state and falls back to the tournament's default structure. Scheduling and team assignments are not affected.",
    "reset_match_success": "Match reset",
    "reset_match_error": "Couldn't reset the match. Please try again.",
    "match_structure_menu": "Match structure",
    "match_structure_title": "Match structure",
    "match_structure_period_structure": "Period structure",
    "match_structure_total": "Total",
    "match_structure_reset": "Reset to tournament default",
    "match_structure_source_custom": "Custom for this match",
    "match_structure_source_default": "From tournament default",
    "match_structure_locked_tooltip": "Match structure can only be changed before the match starts. Reset the match to edit it again.",
    "match_structure_default_note": "Editing affects this match only. To change the default for all matches, go to Features → Live Matches → Configure.",
    "match_setup_title": "Match Setup",
    "match_setup_kickoff": "Kickoff",
    "match_setup_court": "Court",
    "match_setup_format": "Format",
    "match_setup_extra_time": "Extra time",
    "match_setup_penalties": "Penalties",
    "match_setup_timeouts": "Timeouts",
    "match_setup_result": "Result",
    "match_setup_draw_allowed": "Draw allowed",
    "match_setup_must_win": "Must have a winner",
    "match_setup_aggregate_must_win": "Aggregate must have a winner",
    "match_slot_title": "Match slot duration",
    "match_slot_duration_label": "Slot duration",
    "match_slot_duration_hint": "Period structure (halves, extra time, penalties) is configured under Features → Live Match Management, and per-match overrides live in the live editor.",
    "minutes_short": "min",
    "scheduled_short": "Scheduled",
    "actual_short": "Actual",
    "kickoff_on_time": "Started on time",
    "kickoff_late": "Started {{minutes}} min late",
    "kickoff_in": "Kicks off in {{time}}",
    "kickoff_overdue": "Overdue by {{time}}",
    "officials": "Officials",
    "kickoff_early": "Started {{minutes}} min early",
    "edit_kickoff_tooltip": "Click to adjust. Clocks and minute markers update everywhere.",
    "kickoff_no_schedule": "No scheduled time",
    "start_match_off_day_title": "Start match outside its scheduled day?",
    "start_match_off_day_message": "This match is scheduled for {{ scheduled }}. Are you sure you want to start it now?",
    "mark_completed": "Mark as completed",
    "save_score": "Save result",
    "show": "Show",
    "show_all": "All",
    "show_unfinished": "Unfinished Only",
    "show_finished": "Finished Only",
    "start_title": "Start Tournament",
    "start_description": "You are about to start the tournament. The first stage will become active.",
    "start_checklist_stage": "The first stage will be activated",
    "start_checklist_scheduling": "Match scheduling and score entry will become available",
    "start_checklist_standings": "Standings will update in real time as scores are entered",
    "advance_title": "Advance to Next Stage",
    "advance_description": "The following teams will advance to the next stage based on current standings.",
    "advance_teams_hint": "Teams are determined by the current ranking rules. You can override any team manually by clicking the edit icon.",
    "advance_preview_standings": "Preview Standings",
    "previous_title": "Go Back to Previous Stage",
    "previous_description": "This will reactivate the previous stage.",
    "deactivate_title": "Go Back to Pre-Tournament",
    "deactivate_description": "This will deactivate all stages and return to pre-tournament.",
    "go_back_scores_warning": "All match scores and results in the current stage will be permanently reset to zero. This cannot be undone.",
    "clear_scores_label": "Reset all scores and standings",
    "clear_scores_hint": "Permanently clears all match scores, wins, draws, losses and points.",
    "advance_unfinished_warning": "Some matches in this stage haven't been completed yet. Proceeding will automatically mark all unfinished matches as done — make sure all scores are correct before continuing.",
    "advance_blocked_elimination": "Cannot advance: one or more elimination matches have no score entered (0–0). Every elimination match must have a winner before you can proceed.",
    "unlock_results": "Reopen results",
    "tab_standings": "Standings",
    "ds_matches_played": "{{played}} of {{total}} matches played",
    "ds_stage_active": "Active",
    "ds_stage_completed": "Completed",
    "ds_stage_upcoming": "Upcoming",
    "ds_no_stages": "This division has no stages yet. Set up its format to see standings here.",
    "tab_overview": "Overview",
    "tab_final": "Final Standings",
    "fo_status_ready": "Ready to close",
    "fo_ready_text": "Close this division's results to publish its final standings.",
    "fo_close_results": "Close results",
    "fo_incomplete": "These results were closed before every match was played, so there's no final ranking.",
    "fo_teams": "{{count}} teams",
    "fo_matches": "{{played}}/{{total}} matches",
    "fo_status_final": "Final",
    "fo_status_in_progress": "In progress",
    "fo_no_ranking": "This division ends in parallel groups, so there's no single overall ranking. Open the stage below to see each group's table.",
    "fo_champion": "Champion",
    "fo_runner_up": "Runner-up",
    "fo_third": "Third place",
    "fo_stages": "Stages",
    "fo_view_stage": "View stage results",
    "fo_stage_group_one": "1 group",
    "fo_stage_groups": "{{count}} groups",
    "fo_stage_bracket_one": "1 bracket",
    "fo_stage_brackets": "{{count}} brackets",
    "penalty_add": "Add penalty shootout",
    "penalty_hide": "Hide penalty shootout",
    "elimination_tie_error": "Elimination matches cannot end in a draw. Add a penalty shootout result.",
    "aggregate_tie_error": "The aggregate score is level. Add a penalty shootout result for the second leg.",
    "elimination_tie_alert_title": "This match cannot end in a tie",
    "aggregate_tie_alert_title": "The aggregate score is level — choose a tie-breaker",
    "go_to_extra_time": "Go to extra time",
    "aggregate": "Aggregate",
    "no_results_yet": "No results yet",
    "finished": "Finished",
    "penalty_abbr": "pen",
    "final_standings": "Final Standings",
    "match_results": "Match Results",
    "no_matches_scheduled": "No matches scheduled yet.",
    "loading_matches": "Loading matches…",
    "loading_team_preview": "Loading team preview…",
    "advance_unresolvable_error": "All advancements must be filled in before continuing. Some slots have no team assigned — pick a team for each, or wait until the remaining matches have results.",
    "advance_entry_from": "from",
    "advance_waiting_on": "Waiting on {{remaining}} of {{total}} matches in {{source}}",
    "no_team": "No team",
    "no_teams_found": "No teams found",
    "no_team_assignments": "No team assignments to preview.",
    "error_load_preview": "Unable to load team preview. You can still proceed.",
    "select_team": "Select team...",
    "error_marking_done": "Something went wrong while marking matches as done. Please try again.",
    "error_team_overrides": "Could not apply team overrides. Please try again.",
    "error_activate": "Something went wrong. Please try again.",
    "third_place_match": "3rd Place Match",
    "aggregate_short": "Agg",
    "winner_of_leg2": "Winner of leg 2 of 2 ({{name}})",
    "loser_of_leg2": "Loser of leg 2 of 2 ({{name}})",
    "zoom_in": "Zoom in",
    "zoom_out": "Zoom out",
    "fit_to_view": "Fit to view",
    "round_final": "Final",
    "round_semi_final": "Semi-Final",
    "round_quarter_final": "Quarter-Final",
    "round_number": "Round {{number}}",
    "winner_of": "Winner of {{name}}",
    "loser_of": "Loser of {{name}}",
    "advances_from": "Advances from {{name}}",
    "tbd": "TBD",
    "bye": "BYE",
    "home_team": "Home Team",
    "away_team": "Away Team",
    "deleted_match_ref": "(deleted match)",
    "consolation_matches": "Consolation matches",
    "cards_title": "Cards",
    "add_card": "Add card",
    "cards_empty": "No cards recorded yet.",
    "cards_unknown": "Unknown player",
    "award_dialog": {
      "score_with_pens": "{{score}}, {{pens}} on penalties",
      "penalties_label": "Penalties",
      "winner_on_penalties": "{{team}} wins on penalties",
      "shootout_edit": "Edit penalty shootout",
      "vs": "vs",
      "confirm_btn_extra_time": "Start extra time",
      "confirm_btn_penalties": "Start penalty shootout",
      "option_extra_time": "Go to extra time",
      "option_extra_time_desc": "Add {{count}} x {{duration}} min periods to resolve the tie on the field.",
      "option_penalties": "Penalty shootout",
      "option_penalties_desc": "Go straight to a penalty shootout to decide the winner.",
      "option_ended_blocked": "Not available — this match still has no winner.",
      "blocked_reason": "This match must produce a winner. Play extra time, record a penalty shootout, or award a decisive score.",
      "shootout_add": "Record penalty shootout",
      "shootout_hide": "Hide penalty shootout",
      "tie_title": "This match cannot end level",
      "tie_desc": "A winner is required for this knockout round. Choose how to decide it.",
      "tie_aggregate_title": "Level on aggregate",
      "tie_aggregate_desc": "The tie is level on aggregate ({{aggregate}}). Choose how to decide it.",
      "tie_after_et_title": "Still level after extra time",
      "tie_after_et_desc": "Extra time has finished and the scores are level. Record a penalty shootout or award the result manually.",
      "save_failed": "Could not finish the match. Please try again.",
      "title": "Confirm Match End",
      "description": "How should this match be finalized? Choose an option below to determine the final score and the advancing team.",
      "option_ended": "Match Ended",
      "option_ended_desc": "The match finished naturally. Use the current recorded score ({{score}}).",
      "option_awarded": "Award Manually",
      "option_awarded_desc": "Set a specific final score regardless of recorded match events (e.g. for forfeits or disciplinary decisions).",
      "score_label": "Final Score",
      "confirm_btn": "Finalize Match",
      "confirm_btn_label": "Confirm End",
      "current_score": "Current score",
      "award_manually": "Award manually"
    },
    "all_stages": "All stages",
    "match_slot_forecast": "What will happen",
    "match_slot_moved": "matches move",
    "match_slot_day_ends": "This pitch now ends at {{time}}.",
    "match_slot_was": "(was {{time}})",
    "match_slot_closes": "— it closes at {{time}}",
    "match_slot_resolved": "Resolves: {{alert}}",
    "match_slot_clean": "This creates no new problems.",
    "match_slot_forecast_note": "Checked against the whole day, with the same rules the board warns on. Nothing is saved until you press Save.",
    "match_slot_stat_length": "slot length (min)",
    "match_slot_shift_later": "minutes later",
    "match_slot_shift_earlier": "minutes earlier",
    "match_slot_resolved_many": "Resolves {{count}} existing alerts.",
    "status_upcoming": "Upcoming",
    "period_config": {
      "allow_timeouts": "Allow timeouts",
      "count_aria": "Number of periods",
      "et_count_aria": "Number of extra time periods",
      "total_play_time": "Total play time: {{minutes}} min",
      "slot_over": "slot: {{slot}} min · {{diff}} min over",
      "slot_under": "slot: {{slot}} min · {{diff}} min under",
      "name_1": "period",
      "name_2": "halves",
      "name_3": "thirds",
      "name_4": "quarters"
    },
    "all_brackets": "All brackets",
    "duration_minutes": "{{minutes}} min",
    "goal_type_abbr": {
      "free_kick": "FK",
      "own_goal": "OG",
      "penalty": "P"
    },
    "live_badge": "LIVE",
    "matchup": "{{home}} vs {{away}}",
    "period_label": {
      "et_end": "ET END",
      "et_first": "ET 1st",
      "et_halftime": "ET HT",
      "et_second": "ET 2nd",
      "first": "1st",
      "first_half": "1st Half",
      "full_time": "FT",
      "match": "Match",
      "second": "2nd",
      "second_half": "2nd Half",
      "third": "3rd",
      "overtime": "Overtime",
      "extra_time_n": "Extra time {{n}}"
    },
    "period_structure": "{{count}} × {{minutes}} min",
    "select_bracket": "Select bracket",
    "assist_abbr": "ast. {{name}}",
    "card_yellow_red": "Yellow-Red",
    "extra_time_started": "Extra Time Started",
    "shootout_started": "Penalty Shootout Started",
    "stepper": {
      "current_status": "Current Status",
      "finish": "Finish",
      "go_back": "Go back",
      "hint_advance": "All matches done — advance to the next stage.",
      "hint_all_complete": "All matches complete — finish the tournament.",
      "hint_enter_scores": "Enter scores to update standings in real time.",
      "hint_final_underway": "Final stage underway ({{current}} of {{total}}).",
      "hint_ready": "Ready to start the first stage.",
      "hint_stage_complete": "Stage {{stage}} complete — advance to the next stage.",
      "hint_stage_progress": "Stage {{stage}} of {{total}} in progress.",
      "pre_tournament": "Pre-Tournament",
      "start_stage": "Start Stage"
    },
    "unknown_player": "Unknown",
    "action_enter_result": "Enter result",
    "action_edit_result": "Edit result",
    "action_match_editor": "Match editor",
    "event_kicker_own_goal": "Own goal",
    "timeline_pen": "PEN",
    "timeline_events_count": "{{count}} events",
    "timeline_pens_result": "{{a}}–{{b}} (pens)",
    "leg_of": "Leg {{leg}} of {{legs}}",
    "leg_of_short": "L{{leg}}/{{legs}}",
    "final_ot": "FT (OT)",
    "final_forfeit": "FT (w/o)",
    "final_with_tag": "FT ({{tag}})",
    "segments": {
      "golden_set": "golden set",
      "golden_set_decided_title": "{{team}} wins the golden set",
      "golden_set_decided_message": "Level on match wins over both legs · golden set {{score}}",
      "format": {
        "to_points": "to {{n}} points",
        "deciding_to": "decider to {{n}}",
        "tiebreak_at": "tiebreak at {{a}}–{{b}}"
      },
      "format_title": "Match format",
      "format_per_division": "The match format is set per division (Match format card). A different format for a single match is not available yet.",
      "match_wins": "Match wins",
      "match_wins_short": "Wins {{a}}–{{b}}"
    }
  },
  "score_audit_log": {},
  "submissions": {
    "no_requests_desc": "Registration requests show up here as soon as someone submits this form.",
    "title": "Registration",
    "description": "Create and manage your registration links for this tournament.",
    "tab_links": "Links",
    "tab_submissions": "Submissions",
    "links_title": "Registration Links",
    "setup_tab": "Setup Registration Links",
    "all_submissions_title": "All Submissions",
    "part_detail_description": "View and manage team registrations for this part.",
    "total": "Total",
    "open_tab": "Open",
    "accepted_tab": "Accepted",
    "declined_tab": "Declined",
    "archived_tab": "Archived",
    "all_tab": "All",
    "badge_label": "Submissions",
    "no_requests": "No registration requests found.",
    "back": "Back",
    "actions": "Actions",
    "no_submissions_label": "No Submissions",
    "date": "Date",
    "team": "Team",
    "category": "Category",
    "all_categories": "All categories",
    "gender": "Gender",
    "view_details": "View Details",
    "view_all": "View All",
    "total_count": "Total Submissions",
    "capacity_confirmed": "Capacity & Confirmed",
    "deadline": "Deadline",
    "status": "Status",
    "view_submissions": "View Submissions",
    "share_link": "Share Link",
    "edit_settings": "Edit Settings",
    "edit_settings_title": "Edit Registration Settings",
    "share_registration_link": "Share Registration Link",
    "share_global_registration_link": "Global Registration Link",
    "show_qr_code": "QR Code",
    "show_global_qr_code": "Global QR Code",
    "qr_dialog_title": "Registration QR Code",
    "qr_hint_global": "Scan to view all registration links for this tournament. Participants can choose their preferred category on the overview page.",
    "qr_hint_part": "Scan to register directly for this specific tournament category.",
    "qr_preview_link": "Click here to preview the page",
    "download_qr": "Download PNG",
    "view_all_submissions": "View All Submissions",
    "registration_link_index": "Registration Link #{{ index }}",
    "registration_overview": "Registration Overview",
    "registration_overview_desc": "Manage and view all submissions for this tournament in one place.",
    "status_public_desc": "Visible on the public tournament page and can be shared privately.",
    "status_open_private_desc": "Not visible on the public page. Only accessible via a shared link.",
    "status_closed_desc": "Registrations are closed. The link still exists but shows a closed message.",
    "status_disabled_desc": "Completely disabled and hidden from everywhere.",
    "tab_configuration": "Configuration",
    "custom_fields_title": "Custom Fields",
    "custom_fields_hint": "Add your own fields to the registration form. These will appear at the bottom of the form.",
    "add_field_placeholder": "e.g. T-Shirt Size, Dietary Requirements...",
    "welcome_message_label": "Welcome Message",
    "welcome_message_hint": "Shown at the top of the registration page before the form.",
    "welcome_message_placeholder": "Write a short welcome message for registering teams...",
    "thank_you_message_label": "Thank You Message",
    "thank_you_message_hint": "Shown after a team has successfully submitted their registration.",
    "thank_you_message_placeholder": "Write a thank you message shown after successful registration...",
    "design_saved": "Design saved successfully.",
    "design_save_error": "Failed to save design. Please try again.",
    "preview_form": "Preview Registration Form",
    "tab_forms": "Forms",
    "form_index": "Form {{ index }}",
    "preview_open_hint": "Open the live registration page in a new tab",
    "preview_open": "Open",
    "preview_thanks_empty": "With no thank you message, teams see the standard confirmation instead.",
    "preview_welcome_empty": "With no welcome message, teams go straight to the form and never see this step.",
    "preview_chip_place": "Location",
    "preview_chip_date": "Date",
    "preview_placeholder_name": "Your tournament",
    "preview_composed_name": "Wilhelminaboys U16-4",
    "preview_tab_thanks": "Thank you",
    "preview_tab_form": "Form",
    "preview_tab_welcome": "Welcome",
    "landing_hidden_one": "One closed or disabled form is not shown.",
    "landing_private_one": "One private form is not listed here — only its own link reaches it.",
    "landing_lists_one": "Teams open this link and are taken to the one public form.",
    "landing_hidden": "{{ count }} closed or disabled forms are not shown.",
    "landing_private": "{{ count }} private forms are not listed here — only their own link reaches them.",
    "landing_empty": "No form is public, so this page currently shows nothing.",
    "landing_lists": "Teams open this link and choose from the {{ count }} public forms.",
    "landing_subtitle": "One link for the whole tournament.",
    "landing_title": "Registration page",
    "status_change": "Change the status",
    "confirmed_full_note": "This division is full.",
    "confirmed_capacity_note": "A tally you keep yourself — accepting a submission does not change it. The capacity comes from the division format.",
    "confirmed_received_hint": "{{ count }} submissions received on this form.",
    "confirmed_increase": "One more",
    "confirmed_decrease": "One fewer",
    "confirmed_dialog_label": "Teams confirmed",
    "confirmed_dialog_title": "Confirmed teams",
    "confirmed_edit": "Set confirmed teams",
    "deadline_closed_alert": "Not accepting registrations — the deadline has passed.",
    "deadline_past_warning": "This date has already passed, so the form stops accepting registrations as soon as you save.",
    "deadline_preset_1w": "1 week before",
    "deadline_preset_2w": "2 weeks before",
    "deadline_preset_4w": "4 weeks before",
    "deadline_presets": "Or pick one",
    "deadline_clear": "Remove deadline",
    "deadline_dialog_label": "Last day to register",
    "deadline_dialog_title": "Registration deadline",
    "deadline_edit": "Set the deadline",
    "custom_field_delete_message": "\"{{ label }}\" disappears from the registration form. Answers already submitted are kept.",
    "custom_field_delete_title": "Remove this field?",
    "custom_fields_note": "Custom fields apply to every registration form. Answers already submitted are kept if you remove one.",
    "custom_fields_empty": "No custom fields yet.",
    "welcome_message_effect": "Registrants read this before the form opens.",
    "forms_empty_title": "No registration forms yet",
    "forms_empty_body": "A registration form is created for every division. Add a division under Formats and it will appear here.",
    "stat_confirmed": "Confirmed",
    "no_deadline": "No deadline",
    "capacity_full": "Full",
    "spots_left": "{{ count }} left",
    "pending_short": "{{ count }} new",
    "share_needs_open": "Open this form before sharing it.",
    "share_tournament_link": "Tournament link",
    "share_dialog_title": "Share registration form",
    "share_dialog_title_global": "Share tournament registration",
    "share_copy_label": "Link",
    "share_via_label": "Share via",
    "locked_badge": "Locked",
    "locked_cta": "Upgrade to unlock",
    "locked_body": "Your plan keeps {{ limit }} registration forms open at once. Upgrade, or close one you no longer need, to open this one.",
    "locked_body_generic": "Your plan has no open registration form left. Upgrade, or close one you no longer need, to open this one.",
    "locked_no_purchase": "Only the tournament owner can upgrade this plan.",
    "locked_save_refused": "Your plan does not allow another open registration form.",
    "limit_notice_title": "{{ count }} forms locked by your plan",
    "limit_notice_body": "You can keep {{ limit }} of your {{ total }} registration forms open at a time.",
    "col_team": "Team",
    "col_division": "Division",
    "col_submitted": "Submitted",
    "col_contact": "Contact",
    "col_email": "Email",
    "col_phone": "Phone",
    "col_location": "Location",
    "col_team_number": "Team no.",
    "col_team_class": "Level",
    "col_age_class": "Age class",
    "col_gender": "Gender",
    "col_type": "Type",
    "col_status": "Status",
    "accept": "Accept",
    "decline": "Decline",
    "archive": "Archive",
    "reopen": "Move back to open",
    "status_changed": "Submission updated",
    "status_change_failed": "Could not update the submission",
    "native_share_title_part": "Tournament Registration - {{name}} ({{age_class}})",
    "native_share_title": "Tournament Registration - {{name}}",
    "capacity_edit_hint": "The capacity for each division can be edited on the Format page",
    "preview_contact_info": "Contact information"
  },
  "gender": {
    "male": "Male",
    "female": "Female",
    "mixed": "Mixed"
  },
  "type": {
    "amateur": "Amateur",
    "professional": "Professional"
  },
  "view_settings": {
    "title": "Public Visibility Settings",
    "subtitle": "Control which data is visible to the public on your tournament page.",
    "scheduling_required_notice": "Enable the Scheduling feature first to configure visibility settings.",
    "not_published_notice": "Publish your tournament first to enable visibility settings.",
    "publish_teams_label": "Publish Teams",
    "publish_teams_desc": "Show the list of registered teams on the public tournament page.",
    "publish_standings_label": "Publish Standings",
    "publish_standings_desc": "Show live standings and rankings on the public tournament page.",
    "publish_format_label": "Publish Format",
    "publish_format_desc": "Show the bracket or group format for each division. Cannot be enabled while standings are published.",
    "publish_schedule_label": "Publish Match Schedule",
    "publish_schedule_desc": "Show the full match schedule on the public tournament page.",
    "tooltip_not_published": "Publish the tournament to enable this setting.",
    "tooltip_feature_disabled": "Enable the Scheduling feature to use this setting.",
    "tooltip_standings_overrides_format": "Standings already include format information. Disable standings to publish format separately.",
    "confirm_title": "Update Visibility",
    "confirm_enable_teams": "Make the teams list public? Visitors will be able to see all registered teams.",
    "confirm_disable_teams": "Hide the teams list from the public? Visitors will no longer see registered teams.",
    "confirm_enable_standings": "Make standings public? Visitors will see live rankings and results.",
    "confirm_disable_standings": "Hide standings from the public? Visitors will no longer see live rankings.",
    "confirm_enable_schedule": "Make the match schedule public? Visitors will see all scheduled matches.",
    "confirm_disable_schedule": "Hide the match schedule from the public? Visitors will no longer see scheduled matches.",
    "confirm_enable_format": "Make this division's format public? Visitors will see the bracket or group structure.",
    "confirm_disable_format": "Hide this division's format from the public?",
    "saved_enabled": "Setting enabled",
    "saved_disabled": "Setting disabled",
    "callout_text": "Control what's visible on your public tournament page.",
    "callout_link": "Manage visibility settings"
  },
  "public_sections": {
    "teams": "Teams",
    "standings": "Stages",
    "format": "Format",
    "matches": "Matches",
    "participants": "Participants",
    "officials": "Officials",
    "officials_empty": "No officials yet"
  },
  "tournament_standings": {
    "no_standings": "No standings available yet.",
    "title": "Standings",
    "divisions_count": "{{count}} divisions",
    "teams": "teams",
    "groups": "groups",
    "matches": "Matches",
    "live": "Live",
    "full_time": "FT",
    "pts": "pts",
    "view_standings": "View standings",
    "open": "Open",
    "division": "Division",
    "divisions": "Divisions",
    "teams_count": "{{count}} teams",
    "groups_count": "{{count}} groups",
    "knockout": "Knockout",
    "stage_live": "In progress",
    "stage_done": "Finished",
    "stage_upcoming": "Upcoming",
    "progress": "Progress",
    "table": "Table",
    "previous": "Previous",
    "next": "Next",
    "all_groups": "All groups",
    "all_divisions": "All divisions",
    "not_found": "This standing doesn't exist (anymore)",
    "empty_title": "No standings yet",
    "empty_body": "Tables and brackets appear here once the organiser has set up the format.",
    "progress_title": "Tournament progress",
    "view_all": "View all",
    "show_less": "Show less",
    "not_started": "Not started",
    "finished": "Finished",
    "full_standings": "Full standings",
    "snapshot_title": "Standings",
    "final_title": "Final standings",
    "final_all": "All final standings",
    "stage": "Stage",
    "group": "Group",
    "played_of": "{{played}}/{{total}} played",
    "pens_short": "{{a}}–{{b}} pens",
    "teams_count_one": "1 team",
    "before_kickoff": "Before kick-off"
  },
  "matches": {
    "teams": "Teams",
    "division": "Division",
    "duration": "Duration",
    "margin": "Margin between matches",
    "schedule_status": "Schedule",
    "scheduled_at": "Scheduled at",
    "not_scheduled_yet": "Not scheduled yet",
    "running_long": "Running long",
    "seo_final_result": "Final result: {{home}} {{score}} {{away}} · {{event}}.",
    "seo_in_city": "{{tournament}} in {{city}}"
  },
  "roles": {
    "coach": "Coach",
    "trainer": "Trainer",
    "manager": "Manager",
    "player": "Player",
    "other": "Other"
  },
  "presentation": {
    "final": "Final",
    "editor": {
      "untitled": "Untitled screen",
      "screen_word": "Screen",
      "status_new": "Not saved yet",
      "loop_chip_none": "No slides yet",
      "loop_chip_one": "{{n}} slide · loops every {{duration}}",
      "loop_chip_other": "{{n}} slides · loops every {{duration}}",
      "orientation_landscape": "Landscape",
      "orientation_portrait": "Portrait",
      "show_on_tv": "Show on a TV",
      "save": "Save",
      "save_create": "Save screen",
      "saved_note": "TVs pick up saved changes within 30 seconds.",
      "saved_toast": "Screen saved. TVs show the update within 30 seconds.",
      "created_toast": "Screen created.",
      "save_partial": "Some changes couldn’t be saved. Your edits are still here: press Save to try again.",
      "save_error": "Couldn’t save the screen. Please try again.",
      "load_error": "Couldn’t load this screen.",
      "leave_title": "Leave without saving?",
      "leave_message": "Your changes to this screen will be lost. TVs keep showing the last saved version.",
      "leave_confirm": "Discard changes",
      "leave_stay": "Stay",
      "feature_off_title": "Screens are turned off",
      "feature_off_desc": "Turn Screens on for this tournament to keep it in your menu and manage your TVs from here.",
      "feature_off_cta": "Turn on",
      "quota_title": "You’ve reached your screen limit",
      "quota_desc": "Your plan includes {{limit}} live screens. Pause a screen or upgrade to save this one.",
      "quota_cta": "See plans",
      "paused_note": "This screen is paused. TVs on its link show a “paused” card until you resume it from the Screens overview.",
      "section_slides": "Slides",
      "section_slides_desc": "What the screen shows",
      "section_look": "Look",
      "section_look_desc": "Colours, fonts and style",
      "section_screen": "Screen",
      "section_screen_desc": "Orientation, timing and what’s around the slides",
      "section_details": "Details",
      "section_details_desc": "Name and tags",
      "slides_empty_hint": "Add a slide to choose what this screen shows. Each slide becomes one or more pages on the TV.",
      "drag_slide": "Drag to reorder",
      "duplicate_slide": "Duplicate slide",
      "delete_slide": "Delete slide",
      "delete_slide_title": "Delete this slide?",
      "delete_slide_message": "The “{{name}}” slide is removed from this screen when you save.",
      "delete_slide_confirm": "Delete slide",
      "loop_summary_one": "{{pages}} page · loops every {{duration}}",
      "loop_summary_other": "{{pages}} pages · loops every {{duration}}",
      "orientation": "Orientation",
      "rotation": "Time per page",
      "rotation_hint": "How long each page stays on the TV before the next one.",
      "language_hint": "Dates and labels on the TV (“Live”, “Next”) use this language.",
      "sponsor_logo_desc": "Shown in the top corner of every slide.",
      "sponsor_logo_pick": "Logo",
      "sponsor_logo_none": "Choose a sponsor",
      "sponsor_logo_other": "Other image URL…",
      "sponsor_logo_no_sponsors": "No sponsors yet. Add them on the Sponsors page, or paste an image URL.",
      "qr_code": "QR code",
      "qr_code_desc": "Lets people scan the screen to open it on their phone.",
      "tags": "Tags",
      "tags_hint": "Group screens on the overview, e.g. “Hall A” or “Entrance”.",
      "tags_placeholder": "Add a tag…",
      "slide_stepper": "Slide",
      "page_stepper": "Page",
      "prev_slide": "Previous slide",
      "next_slide": "Next slide",
      "prev_page": "Previous page",
      "next_page": "Next page",
      "page_of": "Page {{n}} of {{total}}",
      "play": "Play",
      "pause": "Pause",
      "play_hint": "Rotate through the slides like the TV does",
      "data_source": "Preview data",
      "data_live": "Live data",
      "data_sample": "Sample data",
      "open_new_tab": "Open in new tab",
      "open_new_tab_hint": "Opens the saved screen in a new tab",
      "preview_title": "Screen preview",
      "preview_empty": "Add a slide to see it here.",
      "mobile_settings": "Settings",
      "mobile_preview": "Preview",
      "teams_label": "Teams",
      "team_logos": "Team logos",
      "team_logos_desc": "Each team's logo next to its name, on a white tile. Teams without a logo show their initials.",
      "team_logos_none": "None of your teams has a logo yet, so every team would show its initials. Add logos under Participants."
    },
    "kiosk": {
      "no_slides": "No slides yet",
      "scan": "Scan",
      "paused_title": "This screen isn't showing right now",
      "paused_body": "It starts again by itself as soon as the organiser resumes it. If the screen link was changed, open the new link on this TV.",
      "scan_cta": "Scan for live results",
      "not_found": "Presentation not found or no longer available."
    },
    "overview": {
      "page_subtitle": "Put live matches, standings and sponsors on the TVs at your venue.",
      "tab_tv_setup": "TV setup",
      "limit_note": "You've reached your plan's limit of live screens. Pause a screen or upgrade to add another.",
      "search_placeholder": "Search screens",
      "filter_tag": "Tag",
      "tag_all": "All tags",
      "view_label": "Layout",
      "view_grid": "Grid",
      "view_list": "List",
      "card_meta_one": "1 slide · {{loop}} loop",
      "card_meta_other": "{{n}} slides · {{loop}} loop",
      "card_no_slides": "No slides yet",
      "show_on_tv": "Show on a TV",
      "show_on_tv_hint": "Link, QR code and setup steps",
      "menu_open": "Open screen",
      "col_loop": "Loop",
      "delete_title": "Delete this screen?",
      "delete_message": "\"{{name}}\" will be deleted and any TV showing it will stop. This can't be undone.",
      "delete_confirm": "Delete screen",
      "deleted": "Screen deleted",
      "duplicated": "Screen duplicated",
      "paused_toast": "Screen paused",
      "resumed": "Screen resumed",
      "error_load": "Couldn't load your screens.",
      "empty_title": "Put your tournament on a TV",
      "empty_desc": "Show live scores, upcoming matches, standings and your sponsors on any TV or projector at the venue. All it needs is a browser.",
      "empty_foot": "Pick a template and you'll see a live preview before anything goes on air.",
      "setup_hint": "Print the sheet and take it round the venue, or click a screen for its link and setup card.",
      "setup_print_all": "Print all setup cards"
    },
    "show_on_tv": {
      "title": "Show on a TV",
      "subtitle": "Open this screen on any TV, projector or laptop with a browser.",
      "open": "Open",
      "saved_intro": "Saved! Now put \"{{name}}\" on a TV.",
      "qr_alt": "QR code for {{name}}",
      "link_label": "Screen link",
      "paused_note": "This screen is paused. TVs on this link show a \"paused\" card until you resume it.",
      "sync_note": "TVs pick up saved changes within 30 seconds. No need to reload them.",
      "print": "Print setup card",
      "reset": "Reset link",
      "reset_hint": "Creates a new link. TVs on the old one stop showing this screen.",
      "reset_title": "Reset this screen's link?",
      "reset_message": "\"{{name}}\" gets a new link and QR code. TVs and bookmarks on the current link stop showing it until you open the new link on them.",
      "reset_confirm": "Reset link",
      "reset_done": "New link created",
      "copy_failed": "Couldn't copy the link"
    },
    "templates": {
      "picker_title": "Start a new screen",
      "picker_subtitle": "Pick a starting point. You can change every slide afterwards, and nothing goes live until you save.",
      "needs_scheduling": "Needs the Scheduling feature",
      "match_day_title": "Match day",
      "match_day_desc": "Upcoming matches and live courts, for the hall entrance.",
      "standings_title": "Standings",
      "standings_desc": "Group tables and the bracket of a stage.",
      "full_loop_title": "Full loop",
      "full_loop_desc": "Matches, standings, the schedule and your sponsors on rotation.",
      "blank_title": "Blank",
      "blank_desc": "An empty screen. Add the slides yourself."
    },
    "slide_kinds": {
      "stage": "Standings & bracket",
      "stage_desc": "Group tables and the knockout bracket of a stage.",
      "courts": "Live courts",
      "courts_desc": "What’s playing on each court right now, and what’s next.",
      "next_matches": "Next matches",
      "next_matches_desc": "A list of the upcoming matches.",
      "schedule": "Schedule",
      "schedule_desc": "The match schedule as a list or a calendar.",
      "hero_match": "Featured match",
      "hero_match_desc": "One big scoreboard for the live match or one you choose.",
      "sponsor": "Sponsors",
      "sponsor_desc": "Your sponsors’ logos, full screen.",
      "announcement": "Announcement",
      "announcement_desc": "A message with an optional image.",
      "photo": "Photos",
      "photo_desc": "A slideshow from your gallery.",
      "standings": "Standings (old)",
      "bracket": "Bracket (old)",
      "legacy_desc": "An older slide type. Convert it to Standings & bracket."
    },
    "add_slide": {
      "title": "Add a slide",
      "subtitle": "Pick what this slide shows. You can fine-tune it right after.",
      "needs_scheduling": "Needs Scheduling",
      "needs_sponsors": "Turn on Sponsors to use this"
    },
    "slide_editor": {
      "what_it_shows": "What it shows",
      "layout": "Layout",
      "more_options": "More options",
      "division": "Division",
      "all_divisions": "All divisions",
      "stage": "Stage",
      "all_stages": "All stages",
      "all_courts": "All courts",
      "all_matches": "All matches",
      "all": "All",
      "groups": "Groups & brackets",
      "groups_hint": "Pick some to show only those.",
      "courts": "Courts",
      "no_stages": "This tournament has no stages yet. The slide fills in once you build the format.",
      "nothing_to_filter": "Shows everything: there’s nothing to narrow down yet.",
      "per_page_stage": "Groups per page",
      "per_page_courts": "Courts per page",
      "per_page_next_matches": "Matches per page",
      "per_page_sponsor": "Logos per page",
      "per_page_photo": "Photos per page",
      "grid_summary": "{{rows}}×{{cols}} grid",
      "n_columns": "{{n}} columns",
      "calendar_columns": "One column per",
      "max_teams_hint": "Cuts long tables so every group fits the same height.",
      "optional": "Optional",
      "now_line_desc": "A line marking the current time.",
      "fade_completed_desc": "Finished matches are dimmed.",
      "hero_auto": "Live or next",
      "hero_manual": "Choose a match",
      "hero_more": "{{n}} more: refine your search.",
      "sponsors_hint": "They rotate in the order you pick them.",
      "sponsors_none_picked": "Pick at least one sponsor, or the slide stays empty.",
      "select_all": "Select all",
      "add_sponsors": "Add sponsors",
      "ann_title_ph": "e.g. Final at 16:00 on court 1",
      "ann_body_ph": "A short message for everyone at the venue.",
      "ann_image_hint": "A link to a picture, shown next to the text.",
      "pick_album": "Choose an album",
      "open_gallery": "Open the gallery",
      "n_selected": "{{n}} selected",
      "clear": "Clear",
      "photos_pick_hint": "Tap photos to add them. With none picked, nothing is shown.",
      "photo_legacy_note": "This slide shows {{n}} image link(s) from an older version. Pick an album to switch it to your gallery.",
      "photo_legacy_summary": "{{n}} image link(s)",
      "summary_no_sponsors": "No sponsors picked",
      "summary_no_album": "No album picked",
      "summary_no_text": "No text yet",
      "summary_legacy": "Older slide type",
      "legacy_title": "This is an older slide type",
      "legacy_body": "Convert it to Standings & bracket for paging, layouts and group picking. Its settings are kept.",
      "convert": "Convert"
    },
    "look": {
      "style": "Style",
      "style_hint": "Sets colours, fonts and corners in one go. Tweak anything below.",
      "custom": "Custom",
      "default": "Default",
      "browse_all": "Browse all {{n}} styles",
      "browse_title": "All styles",
      "browse_subtitle": "Pick a starting point. You can change every colour and font afterwards.",
      "filter_tone": "Light or dark",
      "tone_all": "All",
      "tone_light": "Light",
      "tone_dark": "Dark",
      "n_styles": "{{n}} styles",
      "family_house": "TorMatch",
      "family_sports": "Sports",
      "family_editorial": "Editorial",
      "family_modern": "Modern & mono",
      "family_warm": "Warm",
      "family_cool": "Cool",
      "family_light": "Light & airy",
      "family_nature": "Nature",
      "family_luxe": "Premium & jewel",
      "family_retro": "Retro & neon",
      "family_bold": "Bold",
      "family_metal": "Metal & industrial",
      "family_contrast": "High contrast",
      "family_refined": "Refined",
      "family_other": "More",
      "layout_style": "Layout style",
      "layout_minimal": "Minimal",
      "layout_branded": "Branded",
      "layout_immersive": "Immersive",
      "layout_minimal_hint": "Just the content: no logo or name in the header unless you turn them on.",
      "layout_branded_hint": "Your logo and tournament name in the header, on a plain background.",
      "layout_immersive_hint": "Your tournament cover photo fills the background behind every slide.",
      "group_colors": "Colours",
      "group_type": "Typography",
      "group_bracket": "Bracket style",
      "group_corners": "Corners",
      "heading_inherits": "Headings use the body font until you pick one.",
      "same_as_body": "Same as body",
      "bracket_hint": "How knockout brackets look on Standings & bracket slides.",
      "reset": "Reset to style defaults",
      "adjusted_note": "Some colours are adjusted on the TV so all text stays readable. The preview shows what the TV will show.",
      "adjusted_tag": "Adjusted"
    },
    "slide_courts": "Live Courts",
    "slide_standings": "Standings",
    "slide_next_matches": "Upcoming Matches",
    "slide_bracket": "Bracket",
    "live": "LIVE",
    "next": "NEXT",
    "available": "Available",
    "vs": "vs",
    "scan": "Scan",
    "no_courts": "No courts scheduled",
    "no_stage_content": "No stage content yet",
    "no_standings": "No standings available",
    "no_upcoming_matches": "No upcoming matches",
    "no_scheduled_matches": "No scheduled matches",
    "no_bracket": "No bracket stages available",
    "no_sponsor": "No sponsor selected",
    "no_announcement": "Nothing to announce",
    "no_hero_match": "No featured match available",
    "no_photos": "No photos to display",
    "photos_loading": "Loading photos…",
    "no_calendar": "No calendar entries for the selected days",
    "calendar_loading": "Loading schedule…",
    "index": {
      "page_title": "Screens",
      "page_subtitle": "Kiosk views for courts displays, scoreboards, and public screens.",
      "new_screen": "New screen",
      "empty_state": "No screens yet — create one to display matches on a TV or projector.",
      "create_first": "Create your first screen",
      "col_name": "Name",
      "col_slides": "Slides",
      "col_created": "Created",
      "row_copy": "Copy link",
      "row_open": "Open kiosk",
      "row_preview": "Preview",
      "row_more": "More",
      "menu_edit": "Edit",
      "menu_duplicate": "Duplicate",
      "menu_delete": "Delete",
      "link_copied": "Link copied",
      "not_found": "Screen not found",
      "delete_confirm": "Delete screen \"{{name}}\"? This can't be undone.",
      "tab_screens": "Screens",
      "tab_setup": "Set up",
      "col_status": "Status",
      "status_all": "All screens",
      "status_live": "Live",
      "status_paused": "Paused",
      "filter_showing": "Showing",
      "filter_empty": "No screens match this filter.",
      "filter_clear": "Show all",
      "menu_pause": "Pause screen",
      "menu_resume": "Resume screen",
      "setup_empty": "Create a screen first — then come back here to get it onto a TV.",
      "setup_how_title": "Getting a screen onto a TV",
      "setup_print": "Print this sheet",
      "setup_step_scan_title": "Scan it",
      "setup_step_scan_body": "Open the browser on the TV (or your phone) and point the camera at the code.",
      "setup_step_type_title": "Type it",
      "setup_step_type_body": "No camera? Enter the address under the code with the remote. Skip the https://.",
      "setup_step_cast_title": "Cast it",
      "setup_step_cast_body": "Open the address on a laptop, go fullscreen, then cast or plug into the TV.",
      "setup_paused_warn": "Paused — this code will not load until you resume the screen."
    },
    "detail": {
      "header_subtitle": "Edit slides, adjust the design, and tune the settings of this screen.",
      "tab_slides": "Slides",
      "tab_design": "Design",
      "tab_settings": "Settings",
      "url_label": "Kiosk URL",
      "url_copy": "Copy",
      "url_open": "Open",
      "add_slide": "Add slide",
      "add_first_slide": "Add your first slide",
      "no_slides_title": "No slides yet",
      "no_slides_hint": "Add a slide to start building this screen. Each slide is a rotating page on the kiosk.",
      "convert": "Convert",
      "convert_tooltip": "Migrate to Stage slide",
      "edit_slide": "Edit slide",
      "remove_tooltip": "Remove slide",
      "save": "Save",
      "cancel": "Cancel",
      "pages_tooltip": "Kiosk pages produced",
      "pages_one": "{{n}} page",
      "pages_other": "{{n}} pages",
      "head_slide": "Slide",
      "head_loop": "{{pages}} pages · {{duration}} loop",
      "head_loop_tooltip": "How long one full pass takes at the current rotation interval.",
      "filter_label": "Filter this slide",
      "filter_part": "Part",
      "filter_court": "Court",
      "filter_stage": "Stage",
      "filter_items": "Items",
      "filter_group": "Group",
      "all_parts": "All parts",
      "all_stages": "All stages",
      "all_courts": "All courts",
      "all_groups": "All groups",
      "all_items": "All items",
      "n_courts": "{{n}} courts",
      "n_items": "{{n}} items",
      "convert_confirm": "Convert this {{type}} slide to the new Stage slide?",
      "layout_label": "Layout",
      "rows_per_column": "Rows per column"
    },
    "slide_types": {
      "stage_label": "Stage",
      "stage_description": "Groups + bracket for a stage",
      "courts_label": "Courts",
      "courts_description": "Live matches per court",
      "next_matches_label": "Next Matches",
      "next_matches_description": "Upcoming matches list",
      "schedule_label": "Schedule",
      "schedule_description": "Match schedule — list or calendar view, by court / referee / stage",
      "hero_match_label": "Hero Match",
      "hero_match_description": "One big scoreboard for a featured match",
      "sponsor_label": "Sponsor",
      "sponsor_description": "Full-screen sponsor logo",
      "announcement_label": "Announcement",
      "announcement_description": "Free-text message + optional image",
      "photo_label": "Photo Gallery",
      "photo_description": "Rotating tournament photos",
      "standings_label": "Standings (legacy)",
      "standings_description": "Convert to a Stage slide for the new layout engine.",
      "bracket_label": "Bracket (legacy)",
      "bracket_description": "Convert to a Stage slide for the new layout engine.",
      "sponsor_disabled": "Turn on the Sponsors feature for this tournament to use this slide."
    },
    "slide_stage": {
      "bracket_layout": "Bracket layout",
      "max_teams_per_group": "Max teams per group",
      "optional": "(optional)",
      "no_cap": "No cap"
    },
    "slide_hero": {
      "title": "Hero match",
      "auto": "Auto (live or next)",
      "auto_tooltip": "Auto-picks the currently-live match, or the next scheduled one",
      "manual": "Pick a match",
      "search_placeholder": "Search by team, stage, or court…",
      "no_matches": "No matches yet — schedule matches first.",
      "no_search_results": "No matches match that search.",
      "summary_auto": "Auto",
      "summary_match_id": "Match #{{id}}"
    },
    "slide_sponsor": {
      "label": "Sponsors",
      "label_hint": "(pick one or more — they paginate by the grid layout below)",
      "empty": "No sponsors added yet.",
      "manage_link": "Manage sponsors →",
      "n_sponsors": "{{n}} sponsors",
      "plate_label": "Logo background",
      "plate_auto": "Auto",
      "plate_light": "Light",
      "plate_dark": "Dark",
      "plate_none": "None",
      "plate_auto_hint": "Each logo gets the card it needs: white for dark logos, dark for white ones, none for logos with their own background.",
      "plate_light_hint": "Every logo on a white card.",
      "plate_dark_hint": "Every logo on a dark card. Use this when your sponsors' logos are white.",
      "plate_none_hint": "Logos straight on the screen background. Dark logos can disappear on a dark style."
    },
    "slide_announcement": {
      "title_label": "Title",
      "body_label": "Body",
      "image_url_label": "Image URL"
    },
    "slide_photo": {
      "no_albums": "No albums yet.",
      "manage_link": "Manage gallery →",
      "album_label": "Album",
      "photos_label": "Photos",
      "whole_album": "Whole album",
      "pick_photos": "Pick photos",
      "no_photos_in_album": "No photos in this album yet.",
      "n_photos": "{{n}} photos"
    },
    "slide_schedule": {
      "view_label": "View",
      "list": "List",
      "calendar": "Calendar",
      "columns_label": "Columns",
      "one_column_hint": "One flat list of matches.",
      "split_by_label": "Split columns by",
      "axis_court": "Court",
      "axis_referee": "Referee",
      "axis_stage_item": "Stage",
      "axis_tournament_part": "Part",
      "time_window_label": "Time window",
      "time_fit_day": "Fit day",
      "time_fit_day_tooltip": "Auto-fit all matches of the day",
      "time_live_window": "Live window",
      "time_live_window_tooltip": "5-hour window around now",
      "time_business_hours": "Business hours",
      "time_business_hours_tooltip": "Fixed 8:00–22:00 range",
      "density_label": "Density",
      "density_comfortable": "Comfortable",
      "density_compact": "Compact",
      "show_now_line": "Show now-line",
      "fade_completed": "Fade completed matches",
      "date_header": "Date header",
      "date_header_tooltip": "Auto: visible when 2+ days are on screen",
      "date_header_auto": "Auto",
      "date_header_always": "Always",
      "date_header_never": "Never",
      "days_label": "Days",
      "track_today": "Track today",
      "pick_days": "Pick days",
      "no_scheduled_days": "No scheduled days yet — schedule matches first.",
      "summary_today": "Today",
      "summary_all_days": "All days",
      "summary_n_days": "{{n}} days",
      "rows_capped_hint": "Side-by-side columns show up to {{n}} matches each, so they stay readable on a TV. More continue on the next page."
    },
    "axis": {
      "by_court": "By court",
      "by_referee": "By referee",
      "by_stage": "By stage",
      "by_part": "By part"
    },
    "settings": {
      "name_label": "Screen name",
      "rotation_label": "Rotation interval — {{value}}",
      "language_label": "Display language",
      "aspect_ratio_label": "Aspect ratio",
      "header_label": "Header",
      "footer_label": "Footer",
      "tournament_logo": "Tournament logo",
      "tournament_name": "Tournament name",
      "clock": "Clock",
      "sponsor_logo": "Sponsor logo",
      "sponsor_logo_url": "Sponsor logo URL",
      "slide_dots": "Slide dots",
      "rotation_progress": "Rotation progress bar",
      "qr_code": "QR code (scan to view this kiosk)",
      "danger_zone": "Danger zone",
      "danger_hint": "Deleting a screen is permanent. The public URL stops working immediately.",
      "delete_button": "Delete this screen",
      "delete_confirm": "Delete screen \"{{name}}\"? This can't be undone.",
      "aspect_16_9_hint": "Standard TV / monitor",
      "aspect_16_10_hint": "Older monitors",
      "aspect_21_9_hint": "Ultra-wide",
      "aspect_9_16_hint": "Portrait (rotated TV)"
    },
    "design": {
      "tab_preset": "Preset",
      "tab_colors": "Colors",
      "tab_typography": "Typography",
      "tab_brackets": "Brackets",
      "tab_shape": "Shape",
      "reset": "Reset",
      "apply": "Apply",
      "preview_slide": "Preview slide:",
      "no_slides": "No slides to preview.",
      "real_data": "Real data",
      "dummy_data": "Dummy data",
      "color_background_label": "Background",
      "color_background_hint": "Page background.",
      "color_surface_label": "Surface",
      "color_surface_hint": "Card backgrounds.",
      "color_surface_alt_label": "Surface (alt)",
      "color_surface_alt_hint": "Alternating row backgrounds.",
      "color_foreground_label": "Foreground",
      "color_foreground_hint": "Main text color.",
      "color_foreground_muted_label": "Muted text",
      "color_foreground_muted_hint": "Secondary labels and captions.",
      "color_accent_label": "Accent",
      "color_accent_hint": "Highlights, dots, progress bar.",
      "color_live_label": "Live",
      "color_live_hint": "Live-match badge color.",
      "color_divider_label": "Divider",
      "color_divider_hint": "Borders between cards and rows.",
      "body_font": "Body font",
      "body_weight": "Body weight",
      "heading_font": "Heading font",
      "heading_weight": "Heading weight",
      "card_radius": "Card radius",
      "button_radius": "Button radius",
      "bracket_classic_label": "Classic",
      "bracket_classic_hint": "Default — stacked cards.",
      "bracket_pill_label": "Pill",
      "bracket_pill_hint": "Rounded pills, logos float outside.",
      "bracket_minimal_label": "Minimal",
      "bracket_minimal_hint": "Bare rows, no card chrome.",
      "bracket_stadium_label": "Stadium",
      "bracket_stadium_hint": "Bold scoreboard, sharp corners.",
      "bracket_newsroom_label": "Newsroom",
      "bracket_newsroom_hint": "Serif editorial, text-first.",
      "bracket_glass_label": "Glass",
      "bracket_glass_hint": "Translucent, soft glow."
    },
    "presets": {
      "branded_description": "House dark with mint accent. The default.",
      "minimal_description": "Slate dark, sharp corners, calm blue.",
      "immersive_description": "Cover image background with soft overlay.",
      "stadium_description": "Outdoor-screen contrast, gold accent.",
      "court_description": "Bright venue light theme, deep blue accent.",
      "pitch_description": "Football pitch green, crisp white text.",
      "newsroom_description": "Warm dark + cream serif, red accent.",
      "broadsheet_description": "Cream paper feel with classic serif.",
      "magazine_description": "Beige + ink navy, generous radii.",
      "cyber_description": "Pure black, neon green, monospace.",
      "wireframe_description": "Steel gray + cool blue, technical feel.",
      "electric_description": "Slate base, electric purple accent.",
      "sunrise_description": "Deep brown + orange, club / festival vibes.",
      "coral_description": "Peach light theme, soft coral accent.",
      "linen_description": "Warm cream + terracotta, editorial.",
      "ocean_description": "Deep navy + cyan, oceanic depth.",
      "sky_description": "Soft blue, friendly, modern.",
      "glacier_description": "Icy gray-blue, calm and crisp.",
      "midnight_gold_description": "Near-black + warm gold, premium feel.",
      "wine_cellar_description": "Deep burgundy + soft cream, refined.",
      "forest_description": "Deep forest green + warm cream, organic.",
      "mono_description": "Pure black & white, no color.",
      "pastel_description": "Soft pink + plum, playful, rounded.",
      "noir_description": "Black + ivory + red, cinematic.",
      "charcoal_description": "Warm dark gray + rose accent.",
      "vaporwave_description": "Magenta + cyan over deep purple.",
      "aurora_description": "Aurora-borealis green + violet on dark.",
      "matrix_description": "Pure black with phosphor-green glow.",
      "mocha_description": "Espresso brown + warm cream.",
      "honey_description": "Amber dark + ivory text.",
      "volcano_description": "Lava red over deep black, condensed.",
      "eclipse_description": "Black with a single red ring.",
      "ruby_description": "Deep red + soft rose, refined.",
      "sapphire_description": "Deep blue + bright sky highlight.",
      "emerald_description": "Deep emerald + lime highlight.",
      "amethyst_description": "Deep purple + soft lavender text.",
      "onyx_description": "Pure black with silver-cool highlights.",
      "sage_description": "Muted sage green + warm cream.",
      "botanical_description": "Deep botanical green + ivory.",
      "lagoon_description": "Turquoise water + sandy highlights.",
      "tundra_description": "Cool ice grays, crisp blue accent.",
      "apricot_description": "Pale peach + warm clay accent.",
      "cherry_blossom_description": "Pale pink + earth brown serif.",
      "solar_description": "Sun-yellow light + warm red accent.",
      "citrus_description": "Lime green light + deep green text.",
      "lavender_description": "Soft lavender light, plum text.",
      "slate_blue_description": "Slate gray base + cobalt accent.",
      "mint_chip_description": "Cool mint light + dark espresso text.",
      "bronze_description": "Warm dark gray + bronze accent.",
      "rose_gold_description": "Soft blush + brushed pink-gold accent.",
      "carbon_description": "Graphite dark + electric blue accent.",
      "highlighter_description": "Black with neon-yellow attention accent.",
      "crimson_description": "Bright crimson light + ivory text.",
      "pop_art_description": "White + magenta + cyan, high-energy.",
      "plum_description": "Deep plum + soft amber accent.",
      "parchment_description": "Aged paper cream + warm brown ink.",
      "pearl_description": "Off-white + iridescent cool accents.",
      "tropical_description": "Mango orange + lime + ocean teal.",
      "flamingo_description": "Hot pink + tropical teal.",
      "concrete_description": "Cool gray surfaces, safety-yellow accent.",
      "steel_description": "Brushed steel gray + sharp orange.",
      "electric_lime_description": "Lime-on-black, neon energy.",
      "cyber_punk_description": "Magenta + electric yellow over dark."
    },
    "dialogs": {
      "rename_title": "Rename screen",
      "rename_name_label": "Name",
      "rename_save": "Save",
      "rename_cancel": "Cancel",
      "add_slide_title": "Add slide",
      "add_slide_hint": "Pick the slide type to add to this screen.",
      "add_slide_button": "Add slide"
    },
    "languages": {
      "en": "English",
      "de": "Deutsch",
      "nl": "Nederlands",
      "fr": "Français",
      "es": "Español",
      "it": "Italiano"
    },
    "color_popover": {
      "pick": "Pick a color",
      "opacity": "Opacity"
    },
    "font_picker": {
      "pick": "Pick a font",
      "search_placeholder": "Search fonts…",
      "no_results": "No fonts match \"{{q}}\""
    },
    "layout_picker": {
      "per_page": "{{n}} per page",
      "n_rows": "{{n}} rows",
      "fit_one_page": "Fit one page",
      "fit_one_page_hint": "Bracket scales to fit the screen.",
      "split_by_round": "Split by round",
      "split_by_round_hint": "One page per round."
    },
    "tag_chip_input": {
      "placeholder": "Add tag…"
    },
    "preview_dialog": {
      "aria_preview_slide": "Preview slide",
      "aria_preview_data": "Preview data source"
    },
    "no_match_now": "No match right now"
  },
  "stages": {
    "page_description": "Build the tournament structure and assign teams to groups and brackets.",
    "division_no_format": "No format set up yet",
    "format_warning": "{{count}} division needs a format",
    "format_warning_plural": "{{count}} divisions need a format",
    "lock_format": "Lock format",
    "unlock_format": "Unlock format",
    "format_locked_chip": "Format locked",
    "format_locked_hint": "Format is locked. Unlock to make changes to stages, teams, brackets or matches.",
    "empty_title": "Setup your format",
    "empty_subtitle": "Choose how to structure your tournament",
    "format_group_name": "Group Stage",
    "format_group_desc": "Round-robin — every team plays every other team",
    "format_round_robin": "Round-robin",
    "format_knockout_desc": "Single elimination — lose once and you're out",
    "format_single_elim": "Single elimination",
    "format_group_knockout_name": "Group + Knockout",
    "format_group_knockout_desc": "Groups first, then knockout with advancing teams",
    "format_two_stages": "2 stages",
    "format_empty_name": "Empty Stage",
    "format_empty_desc": "Start blank and add groups or brackets yourself",
    "format_custom": "Custom",
    "active_badge": "Active",
    "add_group_stage": "Add Group Stage",
    "add_knockout": "Add Knockout",
    "add_qualification_pool": "Add Qualification Pool",
    "add_pool_tooltip": "Rank the same position across groups, so the best 3rd places can advance",
    "pool_badge_tooltip": "This table ranks the same position across groups. It has no matches of its own.",
    "pool_edit_tooltip": "Edit which position and which groups this pool uses",
    "pool_equalize_note": "Results against each larger group's last-placed team are excluded so groups of different sizes compare fairly — so a team's numbers here can differ from its own group table.",
    "pool_not_decided": "Not decided yet",
    "clear_slot_tooltip": "Clear team from this spot",
    "picker_section_advancement": "Advancement",
    "picker_search": "Search...",
    "ordinal": "{{n}}th",
    "ordinal_first": "1st",
    "position_of_group": "{{position}} of {{group}}",
    "pool_summary_qualify": "The {{position}}-placed teams from {{count}} groups are ranked against each other — only the best one advances.",
    "pool_summary_qualify_plural": "The {{position}}-placed teams from {{count}} groups are ranked against each other — the best {{qualify}} advance.",
    "pool_summary_open": "The {{position}}-placed teams from {{count}} groups are ranked against each other. Point a later stage at this table to decide how many advance.",
    "group_fallback_name": "Group {{id}}",
    "randomize_all_filled": "All slots are already filled",
    "randomize_no_teams": "No teams available to draw",
    "randomize_partial_no_more": "{{teams}} assigned, {{slots}} still empty — no more teams available",
    "randomize_all_assigned": "{{teams}} assigned — all slots filled",
    "randomize_assigned_remaining": "{{teams}} assigned, {{available}} still available",
    "count_teams": "{{count}} team",
    "count_teams_plural": "{{count}} teams",
    "count_slots": "{{count}} slot",
    "count_slots_plural": "{{count}} slots",
    "cleared_teams": "Cleared {{count}} team from {{name}}",
    "cleared_teams_plural": "Cleared {{count}} teams from {{name}}",
    "error_create_stage": "Failed to create stage.",
    "error_rename_stage": "Failed to rename stage.",
    "error_delete_stage": "Failed to delete stage.",
    "error_create_item": "Failed to create group/bracket: {{detail}}",
    "error_create_format": "Failed to create format: {{detail}}",
    "error_create_combined": "Failed to create combined format: {{detail}}",
    "error_unknown": "Unknown error",
    "error_delete_item": "Failed to delete group/bracket.",
    "error_clear_teams": "Failed to clear teams.",
    "error_randomize": "Failed to randomize.",
    "error_randomize_stage": "Failed to randomize stage.",
    "error_reorder": "Failed to reorder.",
    "error_save_pool": "Could not save the qualification pool.",
    "error_assign_advancement": "Failed to assign advancement slot.",
    "error_assign_team": "Failed to assign team.",
    "error_move_team": "Failed to move team.",
    "error_preview_add_spot": "Could not work out what adding a spot would do.",
    "error_preview_remove_spot": "Could not work out what removing this spot would do.",
    "error_group_change": "The group could not be changed. Nothing was saved.",
    "error_clear_slot": "Failed to clear slot.",
    "error_save_ranking": "Failed to save the ranking.",
    "error_lock_format": "Failed to lock format.",
    "error_unlock_format": "Failed to unlock format.",
    "error_save": "Failed to save.",
    "setup_title": "Setup Format",
    "setup_subtitle": "Choose how to structure this stage",
    "setup_group_subtitle": "Round-robin format",
    "setup_knockout_subtitle": "Single elimination format",
    "setup_step_group": "Group Stage setup",
    "setup_step_knockout": "Knockout setup",
    "setup_group_desc": "Every team plays every other team in the group",
    "setup_knockout_desc": "Lose once and you're out — winner advances each round",
    "setup_both_desc": "Group stage first, then knockout with advancing teams",
    "setup_both_footer": "2 stages created",
    "default_group_name": "Group A",
    "default_bracket_name": "Bracket A",
    "setup_group_count": "Number of Groups",
    "setup_teams_per_group": "Teams per Group",
    "setup_teams_in_group": "Teams in group",
    "setup_home_away_hint": "Each team plays at home and away",
    "setup_create_group": "Create Group",
    "setup_create_both": "Create Both",
    "setup_create_bracket": "Create Bracket",
    "setup_team_count": "Number of teams",
    "team_count_custom": "Custom",
    "setup_bye_hint": "Bracket of {{size}} · {{count}} bye — one team goes straight through to round 2.",
    "setup_bye_hint_plural": "Bracket of {{size}} · {{count}} byes — {{count}} teams go straight through to round 2.",
    "setup_two_legged_hint": "Each match played twice (home & away)",
    "setup_placement_label": "Determine which places?",
    "setup_placement_bronze": "Top with 3rd-place match",
    "setup_placement_full": "Full standings (1–{{n}})",
    "setup_advance_per_group": "Teams advancing from each group",
    "setup_qual_exact": "{{qualifiers}} qualifiers fill all {{slots}} knockout slots exactly.",
    "setup_qual_over": "{{qualifiers}} qualifiers is {{over}} more than the {{slots}} knockout slots.",
    "setup_qual_unfilled": "{{qualifiers}} qualifiers leaves {{gap}} of {{slots}} knockout slots unfilled.",
    "setup_qual_gap": "{{groups}} groups advancing {{per}} each fills {{qualifiers}} of {{slots}} slots — {{gap}} still to fill.",
    "setup_pool_offer_title": "Let the best {{position}}-placed team fill the last slot",
    "setup_pool_offer_title_plural": "Let the best {{position}}-placed teams fill the last {{count}} slots",
    "setup_pool_offer_help": "Adds a table beside the groups that ranks every group's {{position}}-placed team against each other, so the best one can advance. You point the remaining knockout slot at it once the groups exist.",
    "setup_pool_offer_help_plural": "Adds a table beside the groups that ranks every group's {{position}}-placed team against each other, so the best {{count}} can advance. You point the remaining knockout slots at it once the groups exist.",
    "pool_equalize_label": "Compare over the same number of matches",
    "setup_pool_equalize_help": "Only matters if the groups end up different sizes. Leaves out results against each larger group's last-placed team, the way major tournaments do it.",
    "pool_add_title": "Add qualification pool",
    "pool_save": "Save pool",
    "pool_add": "Add pool",
    "pool_subtitle": "Compare the same position across groups",
    "pool_lede": "Some teams advance without winning their group — the best third-placed teams, for example. This builds a table that ranks the same position from every group against each other, so the next stage can take the best of them.",
    "pool_position_label": "Which position competes",
    "pool_position_hint": "The {{position}}-placed team of each selected group goes into this table.",
    "pool_groups_label": "Groups that feed it",
    "pool_groups_error": "Select at least two groups — there is nothing to compare otherwise.",
    "pool_groups_none": "This stage has no groups yet. Add the groups first, then come back.",
    "pool_equalize_hint": "These groups are different sizes, so some teams played more matches. Leaving out results against each larger group's last-placed team is how major tournaments handle it. Group positions never change — only the numbers in this table.",
    "pool_default_name": "Best {{position}} places",
    "pool_rule_summary_qualify": "The {{position}}-placed teams from {{count}} groups are ranked against each other, and the best one advances.",
    "pool_rule_summary_qualify_plural": "The {{position}}-placed teams from {{count}} groups are ranked against each other, and the best {{qualify}} advance.",
    "pool_rule_summary_open": "The {{position}}-placed teams from {{count}} groups are ranked against each other. Point the next stage's slots at this table to decide how many advance.",
    "picker_no_search_match": "No teams match your search",
    "picker_no_teams": "No teams have been added to this tournament yet",
    "picker_all_placed": "Every other team is already placed in this stage, or belongs to another division",
    "lock_format_title": "Lock format?",
    "lock_format_message": "Stages, teams, brackets and matches will be read-only until you unlock the format.",
    "slot_placeholder_pick": "Select team…",
    "slot_placeholder_locked": "Spot {{n}}",
    "match_summary_one": "match",
    "match_summary_other": "matches",
    "match_summary_created": "will be created",
    "match_summary_in_group": "in this group",
    "match_summary_in_bracket": "in this bracket",
    "match_summary_per_group": "per group",
    "match_summary_bracket": "bracket",
    "match_summary_placement": "placement",
    "color_none": "No color",
    "spot_add": "Add spot",
    "spot_remove_title": "Remove spot {{n}}?",
    "spot_add_title": "Add a spot to {{group}}?",
    "spot_change_message": "{{group}} goes from {{before}} to {{after}} teams.",
    "spot_remove_confirm": "Remove spot",
    "spot_add_confirm": "Add spot",
    "spot_detail_team_out": "{{team}} is taken out of this group. The team stays in the tournament.",
    "spot_detail_matches_deleted": "{{count}} matches involving this spot are deleted.",
    "spot_detail_scheduled_deleted": "{{count}} of them are already on the schedule and will disappear from it.",
    "spot_detail_matches_created": "{{count}} new matches are created for the new spot. They still need to be scheduled.",
    "spot_detail_moved": "{{count}} existing matches move to a different round so every round stays valid. Their scheduled times and fields stay the same.",
    "spot_detail_rounds": "The group will be played over {{after}} rounds instead of {{before}}.",
    "spot_detail_downstream": "{{item}}: the spot for the {{position}} of {{group}} is emptied, because the group no longer has a {{position}} place.",
    "spot_detail_recalculated": "Standings and match numbers in this group are recalculated.",
    "spot_blocked_min_size": "A group needs at least {{min}} teams, so this spot can’t be removed.",
    "spot_blocked_max_size": "A group can have at most {{max}} teams.",
    "spot_blocked_played_matches": "This spot already has matches that have started or been played. Removing it would delete those results, so it can’t be removed.",
    "spot_blocked_pool_reference": "{{pools}} ranks the {{position}} place of every group. Change that qualification pool first, then remove this spot.",
    "ranking_rules_label": "Ranking rules",
    "ranking_change": "Change ranking",
    "ranking_points_line": "Win {{win}} · Draw {{draw}} · Loss {{loss}}",
    "ranking_picker_title": "Ranking rules",
    "ranking_picker_subtitle": "Choose how this group awards points and breaks ties.",
    "ranking_picker_use": "Use this ranking",
    "ranking_default_badge": "Default",
    "ranking_used_by": "Used by {{names}}",
    "ranking_unused": "Not used by any group yet",
    "ranking_new": "New ranking",
    "ranking_new_hint": "Saved as a preset you can pick for any group.",
    "ranking_save_preset": "Save as preset",
    "ranking_delete_preset": "Delete preset",
    "ranking_delete_in_use": "This preset can't be deleted — a group in another division still uses it.",
    "drag_badge_swap": "Swap",
    "drag_badge_move": "Move here",
    "drag_badge_invalid": "Not here",
    "drag_hint_swap": "Swap with {{name}}",
    "drag_hint_move": "Move to this spot",
    "drag_hint_invalid": "Teams can only move within the same stage",
    "drag_hint_idle": "Drop on another spot to move it",
    "slot_menu": {
      "view_team": "Open team",
      "choose": "Choose team…",
      "change": "Change team…",
      "add_new": "{{label}}…",
      "make_bye": "Make this a bye",
      "remove_bye": "Remove bye",
      "clear": "Clear spot",
      "remove_spot": "Remove spot from group"
    },
    "item_menu": {
      "randomize": "Randomize teams",
      "group_settings": "Group settings",
      "bracket_settings": "Bracket settings",
      "pool_settings": "Pool settings",
      "placement": "Placement matches",
      "delete_group": "Delete group",
      "delete_bracket": "Delete bracket",
      "delete_pool": "Delete pool"
    },
    "stage_menu": {
      "rename": "Rename stage",
      "randomize": "Randomize teams in stage",
      "add_group": "Add group stage",
      "add_knockout": "Add knockout",
      "add_pool": "Add qualification pool",
      "delete": "Delete stage"
    },
    "foreign_team_tooltip": "This team belongs to {{division}}, not this division. Clear the spot or move the team.",
    "foreign_team_tooltip_unknown": "This team belongs to a different division. Clear the spot or move the team.",
    "ranking_config_btn": "Configure ranking",
    "ranking_config_title": "Ranking Configuration",
    "ranking_config_subtitle": "Manage ranking rules and tiebreaker criteria",
    "ranking_edit_title": "Edit Ranking",
    "ranking_create_title": "New Ranking",
    "ranking_add_btn": "Add Ranking",
    "no_rankings": "No rankings configured",
    "tiebreaker_rules": "rules",
    "points_config_label": "Points",
    "win_points": "Win",
    "draw_points": "Draw",
    "loss_points": "Loss",
    "add_score_points_label": "Add score to points",
    "add_score_points_hint": "Add match score directly to ranking points",
    "tiebreaker_order_label": "Tiebreaker Order",
    "tiebreaker_order_hint": "Applied sequentially when teams are level on points",
    "tiebreaker_none": "No tiebreaker rules configured",
    "tiebreaker_default_label": "Default tiebreaker",
    "tiebreaker_add_placeholder": "Add a tiebreaker criterion",
    "tiebreaker_add_btn": "Add",
    "tiebreaker_h2h_points": "Head-to-head points",
    "tiebreaker_h2h_score_diff": "Head-to-head score difference",
    "tiebreaker_h2h_scores_for": "Head-to-head goals scored",
    "tiebreaker_score_diff": "Score difference",
    "tiebreaker_scores_for": "Goals scored",
    "tiebreaker_scores_against": "Goals conceded",
    "tiebreaker_wins": "Wins",
    "stage_config_btn": "Stage Config",
    "stage_config_title": "Stage Configuration",
    "stage_name_label": "Name",
    "ranking_label": "Ranking",
    "color_label": "Color",
    "home_away_label": "Home & Away",
    "home_away_hint": "Each team plays home and away",
    "two_legged_label": "Two-legged ties",
    "two_legged_hint": "Each round is played over two legs",
    "away_goals_label": "Away goals rule",
    "away_goals_hint": "Away goals break aggregate ties before penalties",
    "teams": "teams",
    "add_stage_btn": "Add Stage",
    "add_stage_helper": "Add an extra stage to progress teams based on their performance in earlier stages.",
    "more_actions": "More actions",
    "reorder_pool_blocked": "{{group}} can't be placed below {{pool}}: a qualification pool has to come after the groups it ranks.",
    "creating": "Creating...",
    "delete_stage_title": "Delete Stage",
    "delete_stage_confirm_msg": "Are you sure you want to delete this stage? This will also delete all its groups/brackets and their contents.",
    "rename_stage_title": "Rename Stage",
    "tab_structure": "Structure",
    "default_ranking_title": "Ranking rules",
    "default_ranking_desc": "How groups are scored and separated. Applies to every group unless a group overrides it.",
    "points_config_hint": "What each result is worth in the standings.",
    "points_standard": "Standard",
    "unsaved_changes": "Unsaved changes",
    "ranking_uses_default": "Default ranking",
    "ranking_custom": "Custom ranking",
    "ranking_use_default": "Use default",
    "ranking_copy_from": "Copy from",
    "error_create_item_title": "Couldn't create group/bracket",
    "error_create_format_title": "Couldn't create format",
    "decrease_win_points": "Decrease win points",
    "increase_win_points": "Increase win points",
    "decrease_draw_points": "Decrease draw points",
    "increase_draw_points": "Increase draw points",
    "decrease_loss_points": "Decrease loss points",
    "increase_loss_points": "Increase loss points",
    "tiebreaker_wins_regulation": "Wins in regular time",
    "tiebreaker_bonus_points": "Bonus points",
    "points_preset_label": "Start from a standard",
    "points_preset_sport": "This sport",
    "points_preset_custom": "Custom",
    "points_advanced": "Points per result (advanced)",
    "points_advanced_hint": "Leave a field empty to use the win or loss points above.",
    "points_col_win": "Win",
    "points_col_loss": "Loss",
    "points_after_extra_time": "After extra time",
    "points_after_overtime": "After overtime",
    "points_after_shootout": "After a shootout",
    "points_forfeit": "Forfeit / no-show",
    "try_bonus_label": "Try bonus",
    "try_bonus_hint": "Extra points for scoring at least a number of tries.",
    "try_bonus_min": "Tries needed",
    "bonus_points_value": "Points",
    "losing_bonus_label": "Losing bonus",
    "losing_bonus_hint": "Extra points for a narrow loss.",
    "losing_bonus_margin": "Maximum margin",
    "points_preset": {
      "football": "Football",
      "iihf": "3-2-1-0 (overtime and shootout)",
      "rugby": "Rugby with bonus points",
      "sevens": "Rugby sevens",
      "basketball": "Win 2 · loss 1",
      "basketball_simple": "Win only",
      "handball": "Handball, netball and more",
      "korfball": "Korfball",
      "afl": "Australian football",
      "deciding_set": "3-2-1-0 (deciding set)",
      "win_only": "Win 1 · loss 0",
      "win_2_1": "Win 2 · loss 1",
      "win_2_0": "Win 2 · loss 0",
      "win_3_0": "Win 3 · loss 0"
    },
    "tiebreaker_segments_ratio": "Set ratio",
    "tiebreaker_segments_difference": "Set difference",
    "tiebreaker_inner_ratio": "Game / point ratio",
    "tiebreaker_inner_difference": "Game / point difference",
    "tiebreaker_unit": {
      "ratio": "{{unit}} ratio",
      "difference": "{{unit}} difference"
    },
    "points_deciding": "Deciding set played (3–2, 2–1)",
    "tiebreaker_use_segment_default": "Use the default for set sports",
    "points_deciding_unit": {
      "game": "Deciding game played (3–2, 2–1)",
      "point": "Deciding point played (3–2, 2–1)",
      "map": "Deciding map played (3–2, 2–1)",
      "leg": "Deciding leg played (3–2, 2–1)",
      "frame": "Deciding frame played (3–2, 2–1)",
      "rack": "Deciding rack played (3–2, 2–1)",
      "round": "Deciding round played (3–2, 2–1)"
    },
    "points_preset_deciding_unit": {
      "game": "3-2-1-0 (deciding game)",
      "point": "3-2-1-0 (deciding point)",
      "map": "3-2-1-0 (deciding map)",
      "leg": "3-2-1-0 (deciding leg)",
      "frame": "3-2-1-0 (deciding frame)",
      "rack": "3-2-1-0 (deciding rack)",
      "round": "3-2-1-0 (deciding round)"
    },
    "ranking_points_line_wl": "Win {{win}} · Loss {{loss}}"
  },
  "round_settings": {
    "title": "Round Settings",
    "name_placeholder": "Round name",
    "format_hint": "Number of matches played per tie",
    "single": "Single",
    "away_goals_hint": "Away goals count double in ties",
    "legs_change_warning": "Changing the number of legs will add or remove matches in the schedule."
  },
  "plan_card": {
    "eyebrow": "Current plan",
    "stat_features": "Features on",
    "stat_tier": "Plan",
    "from": "from",
    "cta_upgrade": "Upgrade plan",
    "cta_manage": "Manage plan",
    "cta_view": "View plans"
  },
  "name_showcase": {
    "title": "Name your teams",
    "subtitle": "These teams were imported from your showcase without a name. Add a name to turn each one into a real participant.",
    "name_label": "Team name",
    "name_placeholder": "Enter the team's name",
    "discard": "Discard",
    "save_next": "Save & next",
    "done_title": "All done",
    "done_summary": "Added {{created}} team(s) and removed {{deleted}}.",
    "done_button": "Close",
    "banner_title": "{{count}} participating team(s) without a name",
    "banner_body": "Some showcase teams couldn't be added to your participant list automatically. Name them to finalize the participation list.",
    "banner_action": "Name teams"
  },
  "manage_features": {
    "widgets_title": "TorMatch Widgets",
    "widgets_desc": "Embed live schedules, standings and brackets on your own website.",
    "wizard_info_widgets_intro": "Put your tournament on your club or sponsor website: live schedules, standings, brackets, results and teams, always up to date.",
    "wizard_info_widgets_point_1": "Pick what to show, choose a colour and copy one snippet. That’s it.",
    "wizard_info_widgets_point_2": "Scores and standings update by themselves; edits you make here reach every site that embeds the widget.",
    "wizard_info_widgets_point_3": "Works on WordPress, Wix, Squarespace and any site that accepts HTML, on phones and desktops alike.",
    "wizard_info_widgets_faq_1_q": "Do I need to update my website when results change?",
    "wizard_info_widgets_faq_1_a": "No. You paste the snippet once; the widget always shows the latest data from TorMatch.",
    "wizard_info_widgets_faq_2_q": "Can I see where my widgets are used?",
    "wizard_info_widgets_faq_2_a": "Yes. Each widget lists the websites it was detected on, and the Statistics tab shows views per site.",
    "setup_success_widgets_msg": "Widgets are on. Create your first one and put it on your website.",
    "setup_success_widgets_cta": "Create a widget",
    "configuration_tab": "Configuration",
    "see_inside": "See what's inside",
    "configure_button_tooltip": "Configure features",
    "configure_button_default": "Configure",
    "configure_teams_button": "Configure Teams",
    "configure_players_button": "Configure Players",
    "configure_officials_button": "Configure Officials",
    "configure_participants_title": "Configure Participants",
    "advanced_setup": "Advanced setup",
    "expand_subfeatures": "Show options",
    "show_extra_features": "Show {{count}} extra features",
    "collapse_extra_features": "Hide extra features",
    "collapse_subfeatures": "Hide options",
    "configure_page_subtitle": "Choose which fields appear on this page and how participants behave per division.",
    "default_fields_title": "Default fields",
    "default_fields_subtitle": "These fields are always enabled and cannot be turned off.",
    "default_field_locked_tooltip": "This field is always enabled.",
    "default_team_name_title": "Team name",
    "default_team_name_desc": "Every team must have a display name.",
    "default_team_active_title": "Active status",
    "default_team_active_desc": "Mark teams as active or inactive in the tournament.",
    "default_team_members_title": "Team members",
    "default_team_members_desc": "Link players to a team to manage its roster.",
    "default_team_members_disabled_tooltip": "Enable the Players feature to link players to teams.",
    "default_player_name_title": "Player name",
    "default_player_name_desc": "Every player must have a display name.",
    "default_player_status_title": "Active status",
    "default_player_status_desc": "Mark players as active or inactive in the tournament.",
    "default_player_team_title": "Team",
    "default_player_team_desc": "Assign each player to a team.",
    "default_player_team_disabled_tooltip": "Enable the Teams feature to assign players to teams.",
    "default_official_name_title": "Official name",
    "default_official_name_desc": "Every official must have a display name.",
    "default_official_email_title": "Email",
    "default_official_email_desc": "Used to invite officials and send notifications.",
    "optional_fields_title": "Optional fields",
    "optional_fields_subtitle": "Toggle the fields you want to track for this entity.",
    "field_delegate_label": "Coaches fill in",
    "field_required_label": "Required",
    "custom_fields_title": "Custom fields",
    "custom_fields_subtitle": "Define your own fields to capture extra information.",
    "add_custom_field": "Add field",
    "participation_card_title": "Participation",
    "participation_card_subtitle": "Settings that apply per division.",
    "participation_squad_title": "Squad management",
    "participation_squad_subtitle": "Control how teams build and maintain their roster.",
    "participation_team_score_title": "Result entry",
    "participation_team_score_subtitle": "Allow team coaches to submit scores.",
    "participation_referee_score_title": "Result entry",
    "participation_referee_score_subtitle": "Allow assigned referees to submit scores.",
    "participation_referee_abilities_title": "Referee abilities",
    "participation_referee_abilities_subtitle": "What assigned referees can do from the app: cards, presence, incident notes, and lineup confirmation.",
    "participation_lineup_publish_title": "Lineup publishing",
    "participation_lineup_publish_subtitle": "Choose when a coach's submitted lineup becomes public on the match page.",
    "wizard_referee_report_lineup_confirm_title": "Confirm lineups",
    "wizard_referee_report_lineup_confirm_desc": "Referees can confirm a submitted team lineup in divisions that publish on confirmation.",
    "share_across_divisions": "All divisions share the same settings",
    "share_across_divisions_hint": "When enabled, saving applies these values to every division at once.",
    "group_competition_title": "Competition",
    "group_competition_subtitle": "The core engine that powers your tournament — brackets, matches, and live results.",
    "group_participants_title": "Participants",
    "group_participants_subtitle": "Control who participates and how they're managed throughout the tournament.",
    "group_engagement_title": "Content & Engagement",
    "group_engagement_subtitle": "Tools to create content and keep your audience informed before, during, and after the event.",
    "group_growth_title": "Growth",
    "group_growth_subtitle": "Features that help you attract teams, showcase partners, and understand your audience.",
    "scheduling_title": "Scheduling",
    "live_matches_title": "Live Match Management",
    "live_matches_desc": "Track match events in real-time: goals, cards, substitutions. Referees and coaches can manage matches live from the app.",
    "scheduling_desc": "Build stages, brackets, and match schedules for your tournament.",
    "presentation_title": "Presentation",
    "presentation_desc": "Show live results and standings on kiosk screens and TVs.",
    "team_management_title": "Team Management",
    "team_management_desc": "Manage teams and their details throughout the tournament.",
    "team_management_config_desc": "Enable and configure which team details you want to track. Turn on only the fields your tournament needs — everything else stays out of the way.",
    "participant_management_title": "Participants",
    "participant_management_desc": "Manage the teams or competitors taking part — and their rosters.",
    "participant_management_config_desc": "Set up how participants are organised for this sport — teams with rosters, or individual competitors.",
    "player_management_title": "Player Management",
    "player_management_desc": "Track individual players and their information.",
    "official_management_title": "Referees & Officials",
    "official_management_desc": "Manage referees, judges, and other tournament officials.",
    "blog_title": "Blog & Posts",
    "blog_desc": "Publish news and updates to keep everyone informed.",
    "gallery_title": "Gallery",
    "gallery_desc": "Share photos and videos from your tournament.",
    "showcase_title": "Showcase",
    "showcase_desc": "A clean and professional landing page to highlight your tournament, sponsors, and key information.",
    "registration_title": "Registrations",
    "registration_desc": "Let teams sign up directly through your tournament page.",
    "sponsors_title": "Sponsors",
    "sponsors_desc": "Display sponsor logos and links to give visibility to your partners.",
    "analytics_title": "Analytics",
    "analytics_desc": "Track views, engagement, and audience insights for your tournament.",
    "announcements_title": "Announcements",
    "announcements_desc": "Send targeted messages to participants, coaches, referees, or specific teams.",
    "locked_team_management": "Required by Scheduling. Cannot be disabled.",
    "locked_presentation": "Requires Scheduling to be enabled.",
    "tier_locked": "This feature requires a higher plan. Upgrade to unlock it.",
    "locked_live_matches": "Requires Scheduling to be enabled.",
    "lineups_title": "Lineups",
    "lineups_desc": "Show a visual starting XI & formation on the public match page, with an optional submit-and-approve flow. The player list is always shown; this adds the positional layer.",
    "locked_lineups": "Requires Scheduling to be enabled.",
    "wizard_lineups_title": "Set up Lineups",
    "wizard_lineups_step_intro_label": "Intro",
    "wizard_lineups_step_intro_title": "Add visual lineups",
    "wizard_lineups_step_intro_desc": "Choose how lineups work for this tournament.",
    "wizard_lineups_step_manage_label": "Management",
    "wizard_lineups_step_manage_title": "How are lineups managed?",
    "wizard_lineups_step_manage_desc": "Decide who sets the public lineup for each match.",
    "wizard_lineups_step_options_label": "Options",
    "wizard_lineups_step_options_title": "Lineup options",
    "wizard_lineups_step_options_desc": "Fine-tune approval and timing.",
    "wizard_lineups_intro_point_roster": "The full player roster is always shown on every match — this feature adds the visual starting XI and formation on top.",
    "wizard_lineups_intro_point_visual": "Lineups appear on the public match page and in the app once published.",
    "wizard_lineups_intro_point_coach": "Coaches can always build a lineup in the app for their own use — this only controls what's shown publicly.",
    "wizard_lineups_manage_curated_title": "I'll set them myself",
    "wizard_lineups_manage_curated_desc": "You decide each match's public lineup. Teams can still build their own for reference.",
    "wizard_lineups_manage_auto_title": "Teams publish automatically",
    "wizard_lineups_manage_auto_desc": "A team's submitted lineup goes public right away.",
    "wizard_lineups_manage_confirm_title": "Teams submit, I approve",
    "wizard_lineups_manage_confirm_desc": "A team's submitted lineup goes public after you approve it.",
    "wizard_lineups_options_referee_title": "Let assigned officials approve too",
    "wizard_lineups_options_referee_desc": "The official assigned to a match can approve its lineups, not just organizers.",
    "wizard_lineups_options_referee_locked": "Enable the Officials feature to let officials approve lineups.",
    "wizard_lineups_options_lock_label": "Lock changes before kickoff (minutes)",
    "wizard_lineups_options_lock_hint": "Teams can't change their lineup once it's this many minutes before kickoff. 0 = lock at kickoff.",
    "wizard_lineups_finish_enable": "Enable Lineups",
    "wizard_lineups_finish_save": "Save",
    "locked_official_management": "Requires Scheduling to be enabled.",
    "locked_discipline": "Requires Scheduling to be enabled.",
    "referee_match_report_title": "Referee Match Report",
    "referee_match_report_desc": "Let assigned referees add cards, check in teams, and file incident notes from the app — without live match management.",
    "locked_referee_match_report": "Requires Official Management to be enabled.",
    "discipline_title": "Discipline",
    "discipline_desc": "Manage suspensions: automatic card accumulation plus a referee-to-organizer disciplinary workflow.",
    "wizard_referee_report_title": "Set up Referee Match Report",
    "wizard_referee_report_step_label": "Abilities",
    "wizard_referee_report_step_title": "What can referees do?",
    "wizard_referee_report_step_desc": "Grant lightweight match-day abilities to assigned referees, decoupled from live match management.",
    "wizard_referee_report_card_title": "Card entry",
    "wizard_referee_report_card_desc": "Referees can add yellow and red cards during the match.",
    "wizard_referee_report_presence_title": "Team check-in",
    "wizard_referee_report_presence_desc": "Referees register each team's presence before kickoff.",
    "wizard_referee_report_discipline_title": "Incident notes",
    "wizard_referee_report_discipline_desc": "Referees file incident notes for the organizer to review.",
    "configure_btn": "Configure",
    "always_on_note": "Always on — every tournament has participants.",
    "dialog_default_title": "Included by default",
    "dialog_default_hint": "These capabilities are always part of this feature.",
    "dialog_optional_title": "Optional add-ons",
    "dialog_optional_hint": "Enable only what your tournament needs.",
    "sub_team_base_title": "Manage Teams",
    "sub_team_base_desc": "Create, edit, and organise teams in your tournament.",
    "sub_team_logo_title": "Team Logo",
    "sub_team_logo_desc": "Display team logos across the platform and on the public page.",
    "sub_team_country_title": "Country",
    "sub_team_country_desc": "Track which country each team represents.",
    "sub_team_city_title": "City",
    "sub_team_city_desc": "Track which city each team is based in.",
    "sub_team_city_placeholder": "e.g. Amsterdam",
    "sub_team_email_title": "Email",
    "sub_team_email_desc": "Store a contact email address for each team.",
    "sub_team_present_title": "Presence",
    "sub_team_present_desc": "Mark whether each team has checked in and is present at the tournament.",
    "sub_team_paid_title": "Payment Status",
    "sub_team_paid_desc": "Track whether each team has paid their entry fee.",
    "sub_team_dressing_room_title": "Dressing Room",
    "sub_team_dressing_room_desc": "Assign a dressing room identifier to each team.",
    "sub_kit_color_title": "Kit Color",
    "sub_kit_color_desc": "Set a primary kit color for each team. Used as avatar accent and in match detail headers.",
    "sub_kit_color_home_away_title": "Home & Away Kit Colors",
    "sub_kit_color_home_away_desc": "Enable a second color per team for away kits. Requires Kit Color to be enabled.",
    "sub_kit_color_extended_title": "Extended Kit Design",
    "sub_kit_color_extended_desc": "Unlock shirt patterns, a secondary color, and shorts and socks colors. Requires Kit Color to be enabled.",
    "sub_team_custom_fields_title": "Custom Data Fields",
    "sub_team_custom_fields_desc": "Add your own fields to capture any additional information per team.",
    "custom_fields_add": "Add custom field",
    "custom_fields_name_placeholder": "Field name (e.g. Shirt sponsor)",
    "custom_fields_empty": "No custom fields yet. Add one below.",
    "custom_fields_save": "Save",
    "custom_fields_saved": "Custom fields saved",
    "sub_official_base_title": "Manage Officials",
    "sub_official_base_desc": "Create, edit, and organise officials in your tournament.",
    "sub_official_role_title": "Role",
    "official_role_matrix_title": "Role permissions",
    "official_role_matrix_subtitle": "Decide what each official role may do. These refine the per-division referee toggles above — both must allow an action.",
    "official_role_matrix_role_col": "Role",
    "official_role_matrix_empty": "No official roles are active for this tournament yet.",
    "official_role_matrix_hint": "Defaults come from the platform; changes here apply only to this tournament.",
    "official_perm_submit_result": "Submit result",
    "official_perm_edit_result": "Edit result",
    "official_perm_go_live": "Go live",
    "official_perm_card_entry": "Cards",
    "official_perm_presence_check": "Presence",
    "official_perm_disciplinary_notes": "Discipline",
    "official_perm_lineup_confirm": "Confirm lineup",
    "sub_official_role_desc": "Assign a role to each official (e.g. Referee, Medic, Field Manager).",
    "sub_official_country_title": "Country",
    "sub_official_country_desc": "Track which country each official represents or is licensed in.",
    "sub_official_license_title": "License Number",
    "sub_official_license_desc": "Store the official's licence number.",
    "sub_official_custom_fields_title": "Custom Data Fields",
    "sub_official_custom_fields_desc": "Add your own fields to capture any additional information per official.",
    "official_management_config_desc": "Enable and configure which official details you want to track. Turn on only the fields your tournament needs.",
    "wizard_back": "Back",
    "wizard_next": "Next",
    "wizard_finish": "Finish",
    "wizard_cancel": "Cancel",
    "wizard_step_of": "Step {{current}} of {{total}}",
    "wizard_officials_title": "Set up Officials",
    "wizard_officials_step_mode_label": "Usage",
    "wizard_officials_step_mode_title": "How will you use officials?",
    "wizard_officials_step_mode_desc": "This sets up the right tools and tells you what to expect. You can change it later.",
    "wizard_officials_mode_schedule_title": "Schedule officials only",
    "wizard_officials_mode_schedule_desc": "Keep a roster of officials and assign them to matches. Print or share their schedules. No app or invites needed.",
    "wizard_officials_mode_connected_title": "Connected officials",
    "wizard_officials_mode_connected_desc": "Invite officials to TorMatch. They accept, see their assignments, and can submit match scores from the app.",
    "wizard_officials_app_banner": "Referees download the TorMatch app and accept their tournament invite before they can submit scores. You'll invite and assign officials after setup.",
    "wizard_officials_step_fields_label": "Fields",
    "wizard_officials_step_roles_label": "Roles",
    "wizard_officials_step_roles_title": "Which official roles will you use?",
    "wizard_officials_step_roles_desc": "Pick the roles for this tournament. The first official added to a match becomes the referee; you can change any role later on the schedule.",
    "wizard_officials_roles_note": "You can fine-tune what each role may do (enter scores, go live, …) later on the officials configuration page.",
    "wizard_officials_step_fields_title": "What do you want to track for each official?",
    "wizard_officials_step_fields_desc": "Pick the optional details you'll record for officials. You can change these at any time.",
    "wizard_officials_fields_custom_note": "Need to track something else? You can add your own custom fields anytime from the officials configure page.",
    "wizard_officials_step_scoring_label": "Scoring",
    "wizard_officials_step_scoring_title": "Can referees enter match scores?",
    "wizard_officials_step_scoring_desc": "Decide how match results get into the system.",
    "wizard_officials_scoring_single_part_note": "You can change this anytime from the configure page.",
    "wizard_officials_scoring_entry_title": "Referees can submit scores",
    "wizard_officials_scoring_entry_desc": "Assigned referees enter match results themselves from the TorMatch app.",
    "wizard_officials_scoring_edit_title": "…and edit scores afterward",
    "wizard_officials_scoring_edit_desc": "Referees can revise a result they have already submitted.",
    "wizard_officials_scoring_per_part_note": "This applies to all divisions now. You can fine-tune it per division later from the configure page.",
    "wizard_officials_scoring_no_parts_note": "Referee scoring becomes available once you've created divisions. You can set it from the configure page afterward.",
    "wizard_officials_faq_title": "Good to know",
    "wizard_officials_faq_next_q": "What happens after I finish setup?",
    "wizard_officials_faq_next_a": "You'll invite officials by email. Once they accept and install the TorMatch app, assign them to matches from the Scheduling page — then they can submit scores from their phone.",
    "wizard_officials_faq_hybrid_q": "Can referees and teams both enter scores?",
    "wizard_officials_faq_hybrid_a": "Yes. If a division allows both, the first score submitted counts and an organizer can always override it afterward.",
    "wizard_officials_faq_lmm_q": "Do I need the Live Matches feature for this?",
    "wizard_officials_faq_lmm_a": "No. Referee scoring works on its own. Live Matches is a separate feature for real-time match tracking.",
    "wizard_officials_faq_where_q": "Where do the officials I add show up?",
    "wizard_officials_faq_where_a": "In your Officials list. Assign them to matches from the Scheduling page — manually or automatically — and print or share their schedules.",
    "wizard_officials_faq_later_q": "Can officials enter scores later?",
    "wizard_officials_faq_later_a": "Yes. Switch on referee scoring anytime from the officials configure page, and invite them to connect.",
    "setup_success_title": "You're all set!",
    "setup_success_continue": "Continue exploring features",
    "setup_success_officials_msg": "Officials management is set up. Add or invite officials to get started.",
    "setup_success_officials_cta": "Go to officials",
    "setup_success_participant_msg": "Participant management is set up. Add your teams or competitors to get started.",
    "setup_success_participant_cta": "Go to participants",
    "setup_success_livematch_msg": "Live match management is set up. It's ready for the matches on your schedule.",
    "setup_success_livematch_cta": "Go to live matches",
    "wizard_participant_title": "Set up participants",
    "wizard_participant_step_label": "Structure",
    "wizard_participant_step_title": "How are participants organised?",
    "wizard_participant_step_desc": "Choose whether you manage teams with player rosters or individual competitors.",
    "wizard_participant_team_title": "Teams",
    "wizard_participant_team_desc": "Teams with player rosters.",
    "wizard_participant_individual_desc": "Individual competitors — no rosters.",
    "wizard_participant_single_mode_note": "This sport only supports one participant structure.",
    "wizard_participant_sport_note": "Wrong sport? Change it in General settings — that re-applies the sport's rules to the whole tournament.",
    "wizard_participant_scheduling_note": "Scheduling needs participants. Choose how they're organised to switch it on.",
    "wizard_participant_mgmt_label": "Management",
    "wizard_participant_mgmt_title": "Who manages teams & players?",
    "wizard_participant_mgmt_desc": "Decide how rosters and results get filled in.",
    "wizard_participant_mgmt_organizer_title": "You manage everything",
    "wizard_participant_mgmt_organizer_desc": "You add and manage teams, players, and results yourself. No invites needed.",
    "wizard_participant_mgmt_team_title": "Teams manage themselves",
    "wizard_participant_mgmt_team_desc": "Invite each team's coach. They build their roster and/or enter their results — you choose what.",
    "wizard_participant_abilities_label": "Teams",
    "wizard_participant_abilities_title": "What can teams do?",
    "wizard_participant_abilities_desc": "Pick what invited coaches handle for their own team.",
    "wizard_participant_fill_label": "Details",
    "wizard_participant_fill_title": "Who fills in the details?",
    "wizard_participant_fill_desc": "Choose who completes team and player details. You can fine-tune this per field on the configure page.",
    "wizard_participant_fill_organizer_title": "I fill everything",
    "wizard_participant_fill_organizer_desc": "You complete all team and player details yourself.",
    "wizard_participant_fill_coaches_title": "Coaches fill everything",
    "wizard_participant_fill_coaches_desc": "Invited coaches complete their own team and player details.",
    "wizard_participant_fill_hybrid_title": "A mix",
    "wizard_participant_fill_hybrid_desc": "Decide per field on the configure page who fills what.",
    "wizard_participant_ability_roster_title": "Coaches manage their roster",
    "wizard_participant_ability_roster_desc": "Coaches add and edit their own players.",
    "wizard_participant_ability_signup_title": "Players can self-sign up",
    "wizard_participant_ability_signup_desc": "Coaches share a link so players add themselves to the team.",
    "wizard_participant_ability_results_title": "Coaches enter their match results",
    "wizard_participant_ability_results_desc": "Coaches submit their team's scores from the app.",
    "wizard_participant_maxplayers_label": "Max players per team",
    "wizard_participant_maxplayers_hint": "Leave empty for no limit.",
    "wizard_participant_results_note": "Teams submit results once their matches are scheduled. The first submission counts — you can always override it.",
    "wizard_participant_hybrid_note": "Referees can also score these matches — whichever side submits first wins.",
    "wizard_participant_fields_label": "Fields",
    "wizard_participant_fields_title": "What do you want to track?",
    "wizard_participant_fields_desc": "Pick the optional details to record. You can change these anytime.",
    "wizard_participant_fields_custom_note": "Need more? Add other fields and custom fields anytime from the configure page.",
    "wizard_participant_faq_title": "Good to know",
    "wizard_participant_faq_invite_q": "How do coaches get access?",
    "wizard_participant_faq_invite_a": "You invite each team's coach by email. They create a free TorMatch account, accept, and can then manage that team from the app or web.",
    "wizard_participant_faq_results_q": "When can teams enter results?",
    "wizard_participant_faq_results_a": "Once you've built a schedule and their matches exist. The first submission counts and organizers can override it; if referees also score, whoever submits first wins.",
    "wizard_participant_faq_invite_later_q": "Can I let teams help later?",
    "wizard_participant_faq_invite_later_a": "Yes. Switch any division to team-managed anytime from the configure page and invite the coaches.",
    "wizard_participant_faq_individual_q": "What about individual competitors?",
    "wizard_participant_faq_individual_a": "You manage the competitor list centrally. Rosters, coaches, and team-entered results don't apply in individual mode.",
    "wizard_participant_faq_change_q": "Can I change this later?",
    "wizard_participant_faq_change_a": "Yes — all of this is editable anytime from the participants configure page.",
    "wizard_livematch_title": "Set up live matches",
    "wizard_livematch_step_structure_label": "Structure",
    "wizard_livematch_step_structure_title": "How are matches structured?",
    "wizard_livematch_step_structure_desc": "Set the periods (halves, quarters…) used to run and time your matches.",
    "wizard_livematch_default_structure": "Default period structure",
    "wizard_livematch_per_division_structure": "Period structure per division",
    "wizard_livematch_per_division_toggle": "Different period structure per division",
    "wizard_livematch_min_slot": "{{minutes}} min slot",
    "wizard_livematch_step_automation_label": "Automation",
    "wizard_livematch_step_automation_title": "Automate the match flow?",
    "wizard_livematch_step_automation_desc": "Let TorMatch start and finish matches based on their scheduled times.",
    "wizard_livematch_autostart_title": "Auto-start matches",
    "wizard_livematch_autostart_desc": "Matches go live automatically at their scheduled kickoff time.",
    "wizard_livematch_autofinish_title": "Auto-finish matches",
    "wizard_livematch_autofinish_desc": "Matches are marked finished after their scheduled end time.",
    "wizard_livematch_buffer_label": "Buffer",
    "wizard_livematch_buffer_unit": "min",
    "wizard_livematch_step_scores_label": "Public scores",
    "wizard_livematch_step_scores_title": "Show live scores publicly?",
    "wizard_livematch_step_scores_desc": "Choose whether live scores appear on the public tournament views.",
    "wizard_livematch_showscores_title": "Show live scores in public views",
    "wizard_livematch_showscores_desc": "Spectators see scores update live on the public tournament page.",
    "sub_player_base_title": "Manage Players",
    "sub_player_base_desc": "Create, edit, and organise players in your tournament.",
    "sub_player_dob_title": "Date of Birth",
    "sub_player_dob_desc": "Store each player's date of birth.",
    "sub_player_shirt_number_title": "Shirt Number",
    "sub_player_shirt_number_desc": "Assign a shirt number to each player.",
    "sub_player_position_title": "Preferred Position",
    "sub_player_position_desc": "Record each player's preferred playing position.",
    "sub_player_custom_fields_title": "Custom Data Fields",
    "sub_player_custom_fields_desc": "Add your own fields to capture any additional information per player.",
    "player_management_config_desc": "Enable and configure which player details you want to track. Turn on only the fields your tournament needs.",
    "wizard_view_full_config": "View full configuration",
    "wizard_enable": "Enable",
    "wizard_done": "Done",
    "wizard_info_faq_title": "Good to know",
    "wizard_info_gallery_intro": "Share photos and videos from your tournament with everyone who follows it.",
    "wizard_info_gallery_point_1": "A gallery appears on your public tournament page.",
    "wizard_info_gallery_point_2": "Upload photos and videos in seconds — drag and drop or pick from your device.",
    "wizard_info_gallery_point_3": "Visitors browse your latest moments right from the tournament profile.",
    "wizard_info_gallery_faq_1_q": "Where does the gallery show up?",
    "wizard_info_gallery_faq_1_a": "On your public tournament profile, as a gallery showing your most recent uploads.",
    "wizard_info_gallery_faq_2_q": "Who can see the photos?",
    "wizard_info_gallery_faq_2_a": "Anyone visiting your public tournament page. Only organizers can upload or remove media.",
    "wizard_info_sponsors_intro": "Give your partners the visibility they deserve on your public tournament page.",
    "wizard_info_sponsors_point_1": "Show sponsor logos on your public tournament profile.",
    "wizard_info_sponsors_point_2": "Each logo can link straight to the sponsor's website.",
    "wizard_info_sponsors_point_3": "Add, reorder, and remove sponsors anytime.",
    "wizard_info_sponsors_faq_1_q": "Where are sponsors displayed?",
    "wizard_info_sponsors_faq_1_a": "In a dedicated sponsors section on your public tournament page.",
    "wizard_info_sponsors_faq_2_q": "How many sponsors can I add?",
    "wizard_info_sponsors_faq_2_a": "As many as you like — they're shown in the order you arrange them.",
    "wizard_info_showcase_intro": "A clean, professional landing page that highlights your tournament at a glance.",
    "wizard_info_showcase_point_1": "Spotlight participating clubs and past winners.",
    "wizard_info_showcase_point_2": "Give visitors a polished first impression of your event.",
    "wizard_info_showcase_point_3": "Curate exactly what you want to feature.",
    "wizard_info_showcase_faq_1_q": "What does the showcase show?",
    "wizard_info_showcase_faq_1_a": "Highlights you choose — participating clubs, past champions, and key tournament information.",
    "wizard_info_showcase_faq_2_q": "Where do people find it?",
    "wizard_info_showcase_faq_2_a": "It's part of your public tournament profile, designed as an inviting landing page.",
    "wizard_info_announcements_intro": "Send targeted messages to the right people, at the right moment.",
    "wizard_info_announcements_point_1": "Message participants, coaches, referees, or specific teams.",
    "wizard_info_announcements_point_2": "Keep everyone informed before, during, and after the event.",
    "wizard_info_announcements_point_3": "Recipients see announcements in the TorMatch app and on the web.",
    "wizard_info_announcements_faq_1_q": "Who receives my announcements?",
    "wizard_info_announcements_faq_1_a": "Exactly the groups you target — everyone, a role (coaches, referees), or specific teams.",
    "wizard_info_announcements_faq_2_q": "Where do announcements appear?",
    "wizard_info_announcements_faq_2_a": "In the recipient's TorMatch inbox and on the tournament's announcements page.",
    "wizard_info_analytics_intro": "Understand your audience with views, engagement, and reach insights.",
    "wizard_info_analytics_point_1": "Track how many people view your tournament.",
    "wizard_info_analytics_point_2": "See which content and pages get the most attention.",
    "wizard_info_analytics_point_3": "Follow engagement trends over time.",
    "wizard_info_analytics_faq_1_q": "What gets tracked?",
    "wizard_info_analytics_faq_1_a": "Aggregated page views and engagement for your public tournament — no personal data about individual visitors.",
    "wizard_info_analytics_faq_2_q": "Where do I see the data?",
    "wizard_info_analytics_faq_2_a": "On the Analytics page in your tournament management area.",
    "wizard_info_presentation_intro": "Put live results and standings on the big screen at your venue.",
    "wizard_info_presentation_point_1": "Show live scores and standings on kiosk screens and TVs.",
    "wizard_info_presentation_point_2": "Full-screen views designed to read from across the room.",
    "wizard_info_presentation_point_3": "Keep spectators up to date without lifting a finger.",
    "wizard_info_presentation_faq_1_q": "How do I display it?",
    "wizard_info_presentation_faq_1_a": "Open a presentation view on any screen or TV browser — it updates automatically as results come in.",
    "wizard_info_presentation_faq_2_q": "What can I show?",
    "wizard_info_presentation_faq_2_a": "Live match scores, schedules, and standings, in views you set up on the Presentation page.",
    "wizard_info_discipline_intro": "Keep cards and suspensions under control, automatically.",
    "wizard_info_discipline_point_1": "Cards accumulate automatically toward suspensions.",
    "wizard_info_discipline_point_2": "A clear referee-to-organizer workflow for incidents.",
    "wizard_info_discipline_point_3": "Track and manage suspensions across the tournament.",
    "wizard_info_discipline_faq_1_q": "How do cards turn into suspensions?",
    "wizard_info_discipline_faq_1_a": "Based on the rules you set per division — yellow-card thresholds, red cards, and second-yellow handling.",
    "wizard_info_discipline_faq_2_q": "Can I override a suspension?",
    "wizard_info_discipline_faq_2_a": "Yes. Organizers can review, adjust, or clear suspensions from the discipline page.",
    "setup_success_scheduling_msg": "Scheduling is on. Build your stages, brackets, and matches whenever you're ready.",
    "setup_success_scheduling_cta": "Go to scheduling",
    "setup_success_blog_msg": "Your blog is live. Write your first post to share news with everyone.",
    "setup_success_blog_cta": "Write a post",
    "setup_success_gallery_msg": "The gallery is on. Upload your first photos and videos.",
    "setup_success_gallery_cta": "Upload media",
    "setup_success_sponsors_msg": "Sponsors is on. Add your partners and their logos.",
    "setup_success_sponsors_cta": "Add sponsors",
    "setup_success_showcase_msg": "Showcase is on. Curate what to highlight on your landing page.",
    "setup_success_showcase_cta": "Open showcase",
    "setup_success_announcements_msg": "Announcements is on. Send your first message to participants.",
    "setup_success_announcements_cta": "Create announcement",
    "setup_success_analytics_msg": "Analytics is on. Insights will appear as people visit your tournament.",
    "setup_success_analytics_cta": "View analytics",
    "setup_success_presentation_msg": "Presentation is on. Set up the views to show on your screens.",
    "setup_success_presentation_cta": "Open presentation",
    "setup_success_discipline_msg": "Discipline is on. Set your card rules and review incidents here.",
    "setup_success_discipline_cta": "Open Discipline",
    "discipline_wizard_title": "Set up suspensions",
    "discipline_wizard_subtitle": "How cards turn into match suspensions",
    "discipline_wizard_intro": "A suspension is anchored to the matches a player misses. Set how many of the team's following matches each offence costs — a red card defaults to 0, meaning the player is only sent off in that match.",
    "discipline_red_label": "Red card suspension",
    "discipline_red_hint": "Following matches missed after a straight red (0 = sent off in that match only).",
    "discipline_second_yellow_label": "Second yellow suspension",
    "discipline_second_yellow_hint": "Following matches missed after two yellows in one match (0 = sent off only).",
    "discipline_yellow_accum_label": "Yellow-card accumulation",
    "discipline_yellow_accum_hint": "Every N yellow cards across the tournament triggers a one-match ban, then the count resets.",
    "discipline_yellow_threshold_label": "Yellow cards per suspension",
    "discipline_wizard_finish": "Enable suspensions",
    "discipline_step_sendoffs_label": "Sending-offs",
    "discipline_step_sendoffs_title": "Red & second-yellow defaults",
    "discipline_step_sendoffs_desc": "Set how many of the team's following matches a sending-off costs by default.",
    "discipline_step_accum_label": "Accumulation",
    "discipline_step_accum_title": "Yellow-card accumulation",
    "discipline_step_accum_desc": "Optionally turn repeated yellow cards into a one-match ban.",
    "discipline_step_review_label": "Review",
    "discipline_step_review_title": "You're all set",
    "discipline_step_review_desc": "These are the starting points — your staff decide each real case.",
    "discipline_matches_missed": "{{n}} following match(es) missed",
    "discipline_defaults_note": "These are defaults. Once enabled, entitled staff and officials review each incident and make the final call per player.",
    "discipline_yellow_readout": "Every {{n}} yellows = a one-match ban",
    "discipline_yellow_off_note": "Yellow cards won't cause suspensions on their own.",
    "discipline_summary_red": "Red card: {{n}} following match(es)",
    "discipline_summary_second": "Second yellow: {{n}} following match(es)",
    "discipline_summary_yellow_on": "Yellows: a ban every {{n}} cards",
    "discipline_summary_yellow_off": "Yellows: no accumulation ban",
    "discipline_summary_authority": "These are only defaults. Discipline lets your entitled staff and officials review incidents and make the final decision for each player.",
    "discipline_faq_title": "Good to know",
    "discipline_faq_defaults_q": "Are these final?",
    "discipline_faq_defaults_a": "No — they're defaults. Every card produces a suggested suspension that your staff and officials can confirm, shorten, extend or dismiss per player.",
    "discipline_faq_who_q": "Who can change a suspension?",
    "discipline_faq_who_a": "Organisers and the staff or officials you've entitled can review incidents and set the final ban on the Discipline page.",
    "discipline_faq_zero_q": "What does 0 mean?",
    "discipline_faq_zero_a": "Zero means the player is only sent off in that match and misses no further games. Set 1 or more to also bench them for upcoming matches.",
    "discipline_faq_change_q": "Can I change these later?",
    "discipline_faq_change_a": "Yes — reopen this wizard any time from the Features page to adjust the defaults.",
    "wizard_scheduling_title": "Set up scheduling",
    "wizard_scheduling_now_title": "Set it up now",
    "wizard_scheduling_now_desc": "Pick a format and we'll create your first stage. You can fine-tune everything afterwards.",
    "wizard_scheduling_later_title": "Just enable scheduling",
    "wizard_scheduling_later_desc": "Turn the feature on now and build your format later from the Scheduling page.",
    "wizard_scheduling_step_choose_label": "Start",
    "wizard_scheduling_step_choose_title": "Ready to set up your competition?",
    "wizard_scheduling_step_choose_desc": "Design your format now, or simply switch scheduling on and do it later.",
    "wizard_scheduling_step_shape_label": "Format",
    "wizard_scheduling_step_shape_title": "How is your competition played?",
    "wizard_scheduling_step_shape_desc": "Choose the shape that fits. You can change or extend it later.",
    "wizard_scheduling_shape_group_title": "Group phase only",
    "wizard_scheduling_shape_group_desc": "Teams play in one or more round-robin groups.",
    "wizard_scheduling_shape_knockout_title": "Knockout only",
    "wizard_scheduling_shape_knockout_desc": "A single-elimination bracket — win or go home.",
    "wizard_scheduling_shape_both_title": "Groups + knockout",
    "wizard_scheduling_shape_both_desc": "Group phase first, then the top teams advance to a knockout bracket.",
    "wizard_scheduling_step_group_label": "Groups",
    "wizard_scheduling_step_group_title": "Configure your groups",
    "wizard_scheduling_step_group_desc": "Set how many teams play in each group.",
    "wizard_scheduling_step_knockout_label": "Knockout",
    "wizard_scheduling_step_knockout_title": "Configure your knockout",
    "wizard_scheduling_step_knockout_desc": "Choose the bracket size and how ties are played.",
    "wizard_scheduling_step_review_label": "Review",
    "wizard_scheduling_step_review_title": "Review and create",
    "wizard_scheduling_step_review_desc": "Here's what we'll set up for your first division.",
    "wizard_scheduling_group_teamcount": "Teams per group",
    "wizard_scheduling_group_count": "Number of groups",
    "wizard_scheduling_group_home_away_title": "Home & away",
    "wizard_scheduling_group_home_away_desc": "Each pair of teams plays twice (double round-robin).",
    "wizard_scheduling_knockout_size": "Bracket size",
    "wizard_scheduling_knockout_byes": "Bracket of {{size}} · {{byes}} bye(s) — those teams go straight through to round 2.",
    "wizard_scheduling_knockout_two_legged_title": "Two-legged ties",
    "wizard_scheduling_knockout_two_legged_desc": "Each tie is played over two matches (home and away). The final stays single.",
    "wizard_scheduling_knockout_away_goals_title": "Away-goals rule",
    "wizard_scheduling_knockout_away_goals_desc": "Break a level tie by goals scored away from home.",
    "wizard_scheduling_placement_title": "Final placement",
    "wizard_scheduling_placement_winners_title": "Winners only",
    "wizard_scheduling_placement_winners_desc": "Only crown the champion — no extra placement matches.",
    "wizard_scheduling_placement_bronze_title": "With bronze final",
    "wizard_scheduling_placement_bronze_desc": "Add a 3rd-place playoff for the losing semi-finalists.",
    "wizard_scheduling_placement_full_title": "Full standings",
    "wizard_scheduling_placement_full_desc": "Add placement matches so every position is decided.",
    "wizard_scheduling_summary_group": "{{groups}} group(s) of {{teams}} teams",
    "wizard_scheduling_summary_knockout": "{{teams}}-team knockout bracket",
    "wizard_scheduling_summary_multipart": "We'll set this up for {{division}}. You can set up your other divisions afterwards.",
    "wizard_scheduling_summary_finetune": "You can fine-tune teams, seeding, and matches on the Scheduling page.",
    "wizard_scheduling_faq_title": "Good to know",
    "wizard_scheduling_faq_change_q": "Can I change this later?",
    "wizard_scheduling_faq_change_a": "Yes. Everything you set here can be edited, extended, or rebuilt from the Scheduling page.",
    "wizard_scheduling_faq_teams_q": "Do I need to add teams first?",
    "wizard_scheduling_faq_teams_a": "No. We'll create the structure now; you can assign teams to slots anytime on the Scheduling page.",
    "wizard_scheduling_faq_divisions_q": "What about my other divisions?",
    "wizard_scheduling_faq_divisions_a": "This wizard sets up your first division. Set up the rest from the Scheduling page when you're ready.",
    "wizard_blog_title": "Set up your blog",
    "wizard_blog_step_layout_label": "Layout",
    "wizard_blog_step_layout_title": "How should posts look on your page?",
    "wizard_blog_step_layout_desc": "Choose the layout that fits your tournament. You can change it anytime.",
    "wizard_blog_step_done_label": "Done",
    "wizard_blog_step_done_title": "Your blog is ready",
    "wizard_blog_step_done_desc": "Here's what happens next.",
    "wizard_blog_layout_long_title": "Full articles",
    "wizard_blog_layout_long_desc": "Large, full-width posts — great for storytelling and photos.",
    "wizard_blog_layout_short_title": "Compact list",
    "wizard_blog_layout_short_desc": "A tight, scannable list of posts.",
    "wizard_blog_layout_columns_title": "Two columns",
    "wizard_blog_layout_columns_desc": "A balanced two-column grid of posts.",
    "wizard_blog_done_point_public": "Your posts appear on your public tournament page in this layout.",
    "wizard_blog_done_point_write": "Write your first post from the Posts page whenever you're ready.",
    "wizard_blog_faq_title": "Good to know",
    "wizard_blog_faq_layout_q": "Can I change the layout later?",
    "wizard_blog_faq_layout_a": "Yes — reopen this from the Configure button to switch layouts anytime.",
    "wizard_blog_faq_visibility_q": "Who can see my posts?",
    "wizard_blog_faq_visibility_a": "Published posts are public on your tournament page. Drafts stay private until you publish them.",
    "wizard_sponsors_title": "Set up sponsors",
    "wizard_sponsors_step_appearance_label": "Appearance",
    "wizard_sponsors_step_appearance_title": "How should sponsors look on your page?",
    "wizard_sponsors_step_appearance_desc": "Choose how sponsor logos are displayed on your public tournament page. You can change this anytime.",
    "wizard_sponsors_columns_label": "Grid",
    "wizard_sponsors_columns_1_title": "One column",
    "wizard_sponsors_columns_1_desc": "One logo per row — the largest, most prominent display.",
    "wizard_sponsors_columns_2_title": "Two columns",
    "wizard_sponsors_columns_2_desc": "Two logos per row — a balanced grid.",
    "wizard_sponsors_color_label": "Logo color",
    "wizard_sponsors_color_bw_title": "Black & white, color on hover",
    "wizard_sponsors_color_bw_desc": "Logos appear in black & white and reveal their colors on hover.",
    "wizard_sponsors_color_color_title": "Always in color",
    "wizard_sponsors_color_color_desc": "Show every logo in full color, all the time.",
    "wizard_sponsors_step_done_label": "Done",
    "wizard_sponsors_step_done_title": "Your sponsors are ready",
    "wizard_sponsors_step_done_desc": "Here's what happens next.",
    "wizard_sponsors_done_point_public": "Sponsor logos appear on your public tournament page in this style.",
    "wizard_sponsors_done_point_add": "Add, reorder, and remove sponsors anytime from the Sponsors page.",
    "wizard_sponsors_faq_appearance_q": "Can I change how sponsors look later?",
    "wizard_sponsors_faq_appearance_a": "Yes — reopen this from the Configure button to switch the grid or colors anytime.",
    "wizard_sponsors_faq_logos_q": "What logos look best?",
    "wizard_sponsors_faq_logos_a": "Logos with a transparent background work best. They're shown at a consistent size on your page.",
    "venue_management_title": "Venue Management",
    "venue_management_desc": "Playing at more than one place? Group your fields by venue, then filter and plan the schedule one venue at a time.",
    "locked_venue_management": "Requires Scheduling to be enabled.",
    "wizard_info_venue_management_intro": "Keep a multi-site tournament straight, one venue at a time.",
    "wizard_info_venue_management_point_1": "Group your playing fields by the site they are on.",
    "wizard_info_venue_management_point_2": "Filter the schedule to one venue instead of scrolling past every field.",
    "wizard_info_venue_management_point_3": "Set travel time between venues so nobody is double-booked across town.",
    "wizard_info_venue_management_faq_1_q": "Do I have to assign every field?",
    "wizard_info_venue_management_faq_1_a": "No. Fields without a venue keep working exactly as they do today, so you can move them over whenever it suits you.",
    "wizard_info_venue_management_faq_2_q": "Where do venue addresses come from?",
    "wizard_info_venue_management_faq_2_a": "From the addresses already on your tournament, under Settings. A venue points at one of them, so your map and search stay correct.",
    "setup_success_venue_management_msg": "Venue Management is on. Add your venues, then drag each field to where it belongs.",
    "setup_success_venue_management_cta": "Open Venues",
    "disable_confirm_title": "Disable feature?",
    "disable_confirm_message": "Are you sure you want to disable this feature? Data associated with it might be hidden.",
    "sub_kit_color_skirts_title": "Skirts",
    "sub_kit_color_skirts_desc": "Let a kit show a skirt instead of shorts, chosen per kit. Shorts stay the default. Requires Extended Kit Design.",
    "sub_team_country_flags_title": "Country flags next to team names",
    "sub_team_country_flags_desc": "Display each team's country flag after its name everywhere: the public site, the app and the match lists. Off by default. Requires Country.",
    "wizard_referee_report_sanction_title": "Sanction entry",
    "wizard_referee_report_sanction_desc": "Referees can record cards, time penalties and fouls during the match.",
    "wizard_referee_report_ladder_title": "Warnings and penalties",
    "wizard_referee_report_ladder_desc": "Officials record warnings, penalty points and defaults (code violations / misconduct). The next step and its score effect are applied automatically.",
    "wizard_scheduling_knockout_away_points_title": "Away-points rule",
    "wizard_scheduling_knockout_away_points_desc": "Break a level tie by points scored away from home."
  },
  "official_roles": {
    "referee": "Referee",
    "official": "Official",
    "medic": "Medic",
    "field_manager": "Field Manager"
  },
  "showcase": {
    "confirm_delete_title": "Delete this entry?",
    "confirm_delete_message": "This showcase entry will be removed from your public profile. This cannot be undone.",
    "move_to": "Move to",
    "select_all": "Select all",
    "select_none": "Deselect all",
    "confirm_bulk_delete_title": "Delete selected entries?",
    "confirm_bulk_delete_message": "The selected showcase entries will be removed from your public profile. This cannot be undone.",
    "add_item_title": "Add Showcase Item",
    "edit_item_title": "Edit Showcase Item",
    "category_label": "Category",
    "category_past_participant": "Past participant",
    "category_past_winner": "Past winner",
    "category_titleholder": "Titleholder",
    "winning_year_label": "Winning year",
    "winning_year_placeholder": "e.g. 2024",
    "tab_past_participants": "Past Participants",
    "tab_past_winners": "Past Winners",
    "tab_titleholders": "Titleholders",
    "add_past_participant": "Add Past Participant",
    "add_past_winner": "Add Past Winner",
    "add_titleholder": "Add Titleholder",
    "empty_past_participants": "No past participants listed yet.",
    "empty_past_winners": "No past winners added yet.",
    "empty_titleholders": "No titleholders listed yet.",
    "page_title": "Showcase",
    "page_description": "Highlight participating clubs and past winners on your tournament's public profile."
  },
  "manage_coaches": {
    "invite_to_tormatch": "Invite team manager to TorMatch",
    "invite_coach_title": "Invite a team manager",
    "invite_coach_subtitle": "Give the person who runs {{team}} their own access in the TorMatch app.",
    "how_title": "How it works",
    "how_step_email": "They get an email with an invitation link.",
    "how_step_account": "They sign in, or create a free TorMatch account.",
    "how_step_accept": "Once they accept, they run {{team}} in the TorMatch app.",
    "how_revoke": "You can revoke the invitation at any time.",
    "email_label": "Coach email",
    "send_invitation": "Send invitation",
    "invite_errors": {
      "forbidden": "You don't have permission to send invitations for this tournament.",
      "invalid": "Please enter a valid email address.",
      "generic": "Something went wrong. Please try again."
    },
    "invite_status_tooltip": {
      "invited": "Coach invitation pending",
      "registered": "Coach registered on TorMatch"
    },
    "revoke_invite": "Revoke coach invitation",
    "revoke_invite_title": "Revoke this coach invitation?",
    "revoke_invite_message": "The invitation link will stop working. You can send a new invitation later.",
    "remove_from_tournament": "Remove coach from team",
    "remove_member_title": "Remove this coach?",
    "remove_member_message": "They will lose access to this team in the tournament. You can re-invite them later.",
    "invite_sent_title": "Invitation sent",
    "invite_sent_subtitle": "An invitation email has been sent to {{team}}'s team manager.",
    "coach_invite_link_or_share": "Or share this link directly:",
    "coach_link_copy": "Copy invite link",
    "coach_invite_link_hint": "Anyone with this link can accept the invitation, no email required."
  },
  "manage_referees": {
    "how_step_accept": "Once they accept, their matches show up in the TorMatch app.",
    "share_schedules_button": "Share schedules",
    "view_schedule": "View schedule",
    "official_not_found": "Official not found",
    "back_to_officials": "Back to officials",
    "official_detail_section_title": "Invitation",
    "official_detail_section_subtitle": "Manage this official's TorMatch access.",
    "invite_referee_button": "Invite to TorMatch",
    "invite_to_tormatch": "Invite to TorMatch",
    "invite_referee_title": "Invite a referee",
    "invite_referee_subtitle": "Send an email invitation. The recipient will be able to accept and link their TorMatch account to this tournament.",
    "invite_existing_official_title": "Invite this official to TorMatch",
    "invite_existing_official_subtitle": "Give {{name}} their own access in the TorMatch app.",
    "email_label": "Email address",
    "send_invitation": "Send invitation",
    "invite_errors": {
      "forbidden": "You don't have permission to send invitations for this tournament.",
      "invalid": "Please enter a valid email address.",
      "duplicate_referee": "This email already has a pending or accepted referee invitation for this tournament.",
      "generic": "Something went wrong. Please try again."
    },
    "invite_status": {
      "invited": "Invited",
      "registered": "Registered"
    },
    "invite_status_tooltip": {
      "invited": "Invitation pending",
      "registered": "Already registered on TorMatch"
    },
    "revoke_invite": "Revoke invitation",
    "revoke_invite_title": "Revoke this invitation?",
    "revoke_invite_message": "The invitation link will stop working. You can send a new invitation later.",
    "remove_from_tournament": "Remove from tournament",
    "remove_member_title": "Remove this member?",
    "remove_member_message": "They will lose access to this tournament. You can re-invite them later.",
    "invite_sent": "Invitation sent"
  },
  "official_detail": {
    "per_day_title": "Matches per day",
    "access_status_none": "Not on the app",
    "access_status_pending": "App invite pending",
    "access_status_active": "On the app",
    "access_account_label": "App account",
    "access_not_invited": "Not invited to the app yet.",
    "access_invite": "Invite to the app",
    "perk_matches": "See their matches and kick-off times",
    "perk_reminders": "Get a reminder before each match",
    "perk_results": "Enter results and cards, where you allow it",
    "perk_follow": "Follow the tournament and its updates",
    "any_venue": "Any venue",
    "delete_official": "Delete official",
    "delete_blocked_finished": "Can't delete: this official worked finished matches, and those match records would lose them.",
    "delete_message_assigned": "They're assigned to {{n}} upcoming match(es) and will be removed from them. This can't be undone.",
    "profile_title": "Official profile",
    "fact_name": "Name",
    "fact_email": "Contact",
    "status_active": "Active",
    "status_inactive": "Inactive",
    "access_title": "Official access",
    "assignments": "Assignments",
    "next_assignment": "Next assignment",
    "workload_title": "Workload",
    "role_mix_title": "Roles worked",
    "no_assignments": "No matches assigned yet",
    "stat_total": "Total",
    "match_one": "match",
    "match_many": "matches",
    "share_title": "Schedule link",
    "share_hint": "No account needed: anyone with the link sees their matches.",
    "copy_link": "Copy link",
    "link_copied": "Copied"
  },
  "officials_schedule": {
    "empty_desc": "Once matches are scheduled on this day, you can assign officials to them here.",
    "tab_overview": "Overview",
    "tab_schedule": "Schedule",
    "columns": "Columns",
    "by_official": "Per official",
    "by_field": "Per field",
    "fields": "Fields",
    "officials": "Officials",
    "all_fields": "All fields",
    "all_officials": "All officials",
    "no_fields": "No fields on this day",
    "no_officials": "No officials yet",
    "hide_idle": "Hide officials without matches",
    "display": "Display",
    "show_teams": "Show teams",
    "show_unassigned": "Show unassigned matches",
    "density": "Row height",
    "density_s": "Compact",
    "density_m": "Normal",
    "density_l": "Roomy",
    "edit_schedule": "Edit schedule",
    "unassigned": "Unassigned",
    "unassigned_hint": "No official yet",
    "matches_count": "{{count}} matches",
    "gaps_count": "{{count}} need officials",
    "conflicts_count": "{{count}} clashes",
    "idle_count": "{{count}} officials free",
    "count_one": "{{count}} match",
    "count_many": "{{count}} matches",
    "needs": "Needs {{count}}",
    "conflict": "Double-booked",
    "versus": "vs",
    "locked": "Schedule locked",
    "clear_filters": "Clear filters",
    "column_empty": "Nothing scheduled",
    "no_columns": "No officials or fields match the current filters.",
    "empty_title": "Nothing scheduled on this day"
  },
  "officials_setup": {
    "roles_note": "Roles are assigned per match on the Scheduling page. The first official on a match takes the first role.",
    "roles_min_one": "Keep at least one role — every assignment needs one.",
    "abilities_account_note": "Officials need a TorMatch account to use these. Invite them from the Officials page.",
    "permissions_all_divisions": "Role permissions apply to every division.",
    "track_title": "What do you track per official?",
    "track_desc": "Locked fields always exist. Add the optional ones you need, or define your own."
  },
  "match_officials": {
    "crew_title": "Crew",
    "crew_count": "{{count}} assigned",
    "crew_of": "{{count}} of {{required}}",
    "crew_empty": "Nobody is assigned to this match yet.",
    "empty_seat": "Empty slot",
    "clear_crew": "Remove all",
    "remove": "Remove from match",
    "available_title": "Add an official",
    "search": "Search officials",
    "free": "Free at this time",
    "busy_at": "Busy at {{time}} on {{field}}",
    "clash_with": "Also at {{time}} on {{field}}",
    "day_load": "{{count}} matches today",
    "none_available": "No other officials to add.",
    "save_failed": "Some changes could not be saved. Reopen the match to check what applied.",
    "clash_with_match": "Also on {{match}} at {{time}} on {{field}}",
    "busy_with_match": "Busy: {{match}} at {{time}} on {{field}}",
    "off_division": "Usually works other divisions",
    "group_free": "Free",
    "group_busy": "Busy",
    "group_off": "Other divisions",
    "group_inactive": "Inactive"
  },
  "newsletter": {
    "actions": {
      "go_home": "Back to homepage"
    },
    "footer": {
      "label": "Stay in the loop"
    },
    "signup": {
      "title": "Join the TorMatch newsletter",
      "blurb": "Product updates, new features, and tips for running better tournaments — straight to your inbox.",
      "email_placeholder": "Your email address",
      "submit": "Subscribe",
      "invalid_email": "Please enter a valid email address.",
      "success_title": "Almost there — check your inbox",
      "success_body": "We've sent you a confirmation link. Click it to complete your subscription.",
      "error": "Something went wrong. Please try again.",
      "retry": "Try again"
    },
    "confirm": {
      "loading": "Confirming your subscription…",
      "subscribed_title": "You're subscribed!",
      "subscribed_body": "Thanks for confirming. You'll now receive the TorMatch newsletter.",
      "explore_cta": "Explore TorMatch",
      "invalid_title": "This link is no longer valid",
      "invalid_body": "The confirmation link is invalid or has already been used. Try subscribing again.",
      "error_title": "Something went wrong",
      "error_body": "We couldn't confirm your subscription right now. Please try again later."
    },
    "unsubscribe": {
      "loading": "Unsubscribing you…",
      "done_title": "You've been unsubscribed",
      "done_body": "You won't receive marketing emails from us anymore. We're sorry to see you go.",
      "manage_cta": "Manage email preferences instead",
      "error_title": "Something went wrong",
      "error_body": "We couldn't process your request. The link may be invalid or expired.",
      "topic_done_title": "You're unsubscribed from {{topic}}",
      "topic_done_body": "You won't receive this newsletter anymore. Your other email preferences stay as they are.",
      "topic_fallback": "this newsletter",
      "topic_unsubscribe_all_cta": "Unsubscribe from all emails",
      "topic_manage_cta": "Manage email preferences"
    },
    "preferences": {
      "loading": "Loading your preferences…",
      "title": "Email preferences",
      "subtitle": "Manage what {{email}} receives from TorMatch.",
      "empty": "You're not subscribed to any lists right now.",
      "save": "Save preferences",
      "saved": "Your preferences have been saved.",
      "unsubscribe_all": "Unsubscribe from everything",
      "error_title": "Something went wrong",
      "error_body": "We couldn't load your preferences. The link may be invalid or expired."
    }
  },
  "invitations": {
    "loading": "Loading invitation…",
    "role": {
      "coach": "Team coach",
      "referee": "Referee",
      "player": "Player",
      "organizer": "Tournament owner",
      "administrator": "Administrator",
      "content_manager": "Content manager",
      "competition_manager": "Competition manager",
      "admissions_manager": "Admissions manager",
      "manager": "Manager",
      "moderator": "Moderator",
      "result_entry_manager": "Result entry manager"
    },
    "preview": {
      "title": "You've been invited",
      "body": "You've been invited to join {{tournament}} as {{role}}.",
      "auth_required": "Sign in or create an account to accept this invitation."
    },
    "actions": {
      "accept": "Accept invitation",
      "decline": "Decline",
      "sign_in_to_accept": "Sign in to accept",
      "register": "Create an account",
      "go_home": "Go to homepage"
    },
    "claimed": {
      "title": "You're in!",
      "subtitle": "You've joined {{tournament}} as {{role}}.",
      "go_to_tournament": "Go to tournament",
      "go_to_manage": "Open tournament management",
      "download_hint": "Download the TorMatch app to access your matches, schedule, and announcements."
    },
    "open_in_app": "Have the app? Open this invitation in TorMatch",
    "errors": {
      "title": "Something went wrong",
      "missing_token": "This invitation link is missing required information.",
      "not_found": "We couldn't find this invitation. It may have been removed.",
      "already_claimed": "This invitation has already been claimed by someone else.",
      "expired": "This invitation has expired.",
      "revoked": "This invitation has been revoked.",
      "declined": "You declined this invitation.",
      "accepted": "This invitation has already been accepted.",
      "generic": "Something went wrong. Please try again.",
      "not_allowed": "You don't have permission to accept this invitation."
    }
  },
  "team_signup": {
    "loading": "Loading…",
    "role_chip": "Player",
    "preview": {
      "title": "Join {{team}}",
      "body": "You've been invited to join {{team}} as a player in {{tournament}}.",
      "auth_required": "Sign in or create an account to join the team."
    },
    "actions": {
      "join": "Join team",
      "continue": "Continue",
      "sign_in_to_join": "Sign in to join"
    },
    "roster": {
      "title": "Who are you?",
      "subtitle": "Select your name from the {{team}} roster, or add yourself as a new player.",
      "not_listed": "I'm not on the list",
      "already_linked": "Already linked to a registered user"
    },
    "form": {
      "title": "Your player profile",
      "subtitle": "Tell us a bit about yourself for {{team}}.",
      "name_hint": "Leave blank to use your account name.",
      "shirt_taken_by": "Shirt #{{number}} is already taken by {{name}}."
    },
    "claimed": {
      "title": "You're on the team!",
      "subtitle": "You've joined {{team}} in {{tournament}} as a player.",
      "go_to_tournament": "View my participation"
    },
    "errors": {
      "title": "Something went wrong",
      "missing_token": "This signup link is missing required information.",
      "not_found": "We couldn't find this signup link. It may have been disabled.",
      "expired": "This signup link has expired.",
      "not_allowed": "Player self-signup is not enabled for this division.",
      "cap_reached": "This team has reached its player limit.",
      "shirt_taken": "This shirt number is already taken. Please choose a different one.",
      "generic": "Something went wrong. Please try again."
    }
  },
  "team_signup_link": {
    "title": "Player self-signup link",
    "tooltip": "Get player self-signup link",
    "subtitle": "Share this link with players who should join {{team}}.",
    "hint": "Anyone with this link who is signed in can join the team as a player.",
    "disable": "Disable link"
  },
  "country_picker": {
    "placeholder": "Select a country",
    "search_placeholder": "Search countries…",
    "no_results": "No countries match your search.",
    "no_match": "No countries match \"{{query}}\""
  },
  "player_position": {
    "gk": "Goalkeeper",
    "def": "Defender",
    "mid": "Midfielder",
    "fwd": "Forward"
  },
  "player_errors": {
    "shirt_taken": "That shirt number is already taken by another active player on this team.",
    "save_failed": "Could not save the player. Please try again."
  },
  "invite_status": {
    "menu": {
      "copy_email": "Copy email",
      "change_email": "Change email",
      "revoke": "Revoke invite",
      "remove_member": "Remove from tournament",
      "reinvite": "Re-invite",
      "resend": "Resend invitation"
    },
    "change_email_dialog": {
      "title": "Change invited email",
      "subtitle": "Send the invitation to a different email address. The previous invite will be revoked first.",
      "previously": "Previously invited:",
      "new_email_label": "New email address",
      "submit": "Update invite"
    },
    "coach": {
      "label": {
        "pending": "Invitation pending",
        "accepted": "Joined on TorMatch",
        "declined": "Invitation declined",
        "expired": "Invitation expired",
        "revoked": "Invitation revoked"
      },
      "tooltip": {
        "none": "Invite team manager to TorMatch",
        "pending": "Invited {{email}} — pending",
        "accepted": "{{email}} joined the tournament",
        "declined": "{{email}} declined the invitation",
        "expired": "Invitation to {{email}} expired",
        "revoked": "Invitation to {{email}} was revoked"
      }
    },
    "referee": {
      "label": {
        "pending": "Invitation pending",
        "accepted": "Joined on TorMatch",
        "declined": "Invitation declined",
        "expired": "Invitation expired",
        "revoked": "Invitation revoked"
      },
      "tooltip": {
        "none": "Invite to TorMatch",
        "pending": "Invited {{email}} — pending",
        "accepted": "{{email}} joined the tournament",
        "declined": "{{email}} declined the invitation",
        "expired": "Invitation to {{email}} expired",
        "revoked": "Invitation to {{email}} was revoked"
      }
    },
    "staff": {
      "label": {
        "pending": "Invitation pending",
        "accepted": "Joined on TorMatch",
        "declined": "Invitation declined",
        "expired": "Invitation expired",
        "revoked": "Invitation revoked"
      },
      "tooltip": {
        "none": "Invite to manage this tournament",
        "pending": "Invited {{email}} — pending",
        "accepted": "{{email}} joined the tournament",
        "declined": "{{email}} declined the invitation",
        "expired": "Invitation to {{email}} expired",
        "revoked": "Invitation to {{email}} was revoked"
      }
    }
  },
  "generic": {
    "cancel": "Cancel",
    "save": "Save",
    "add": "Add",
    "next": "Next",
    "back": "Back",
    "loading": "Loading…",
    "ok": "OK",
    "saving": "Saving…",
    "edit": "Edit"
  },
  "team_card": {
    "wins": "W",
    "draws": "D",
    "losses": "L",
    "home_kit": "Home kit",
    "away_kit": "Away kit",
    "kit_colors": "Kit",
    "team_image_alt": "Team"
  },
  "manage_announcements": {
    "no_announcements_desc": "Send targeted messages to everyone in your tournament, or just coaches, officials, players or specific teams.",
    "title": "Announcements",
    "description": "Send targeted messages to your tournament participants.",
    "tab_overview": "Overview",
    "tab_setup": "Setup",
    "new_announcement": "New Announcement",
    "no_announcements": "No announcements yet",
    "create_first": "Create your first announcement",
    "back_to_overview": "Back to overview",
    "edit_announcement": "Edit Announcement",
    "not_found": "Announcement not found",
    "stat_total_sent": "Total Sent",
    "stat_avg_open_rate": "Avg. Open Rate",
    "stat_sent_this_month": "This Month",
    "status_draft": "Draft",
    "status_scheduled": "Scheduled",
    "status_sent": "Sent",
    "status_cancelled": "Cancelled",
    "audience_all": "All participants",
    "audience_coaches": "Coaches only",
    "audience_referees": "Referees only",
    "audience_players": "Players only",
    "audience_teams": "Specific teams",
    "audience_count": "This will be sent to {{count}} participant(s)",
    "field_title": "Title",
    "field_title_placeholder": "Announcement title",
    "field_body": "Message",
    "field_body_placeholder": "Write your announcement...",
    "field_audience": "Send to",
    "field_pin": "Pin this announcement",
    "field_pin_hint": "Pinned announcements appear at the top of the feed (max 3).",
    "field_send_option": "When to send",
    "field_scheduled_at": "Scheduled date & time",
    "field_team_ids": "Team IDs",
    "field_team_ids_placeholder": "Enter team IDs separated by commas",
    "field_team_ids_hint": "Comma-separated team IDs from the scheduling service",
    "send_immediately": "Send immediately",
    "schedule_for_later": "Schedule for later",
    "save_as_draft": "Save as draft",
    "send_now": "Send now",
    "save_draft": "Save Draft",
    "schedule": "Schedule",
    "btn_cancel": "Cancel",
    "confirm_send_title": "Send announcement?",
    "confirm_send_message": "This announcement will be sent to all selected participants. Once sent, it cannot be edited.",
    "confirm_delete_title": "Delete announcement?",
    "confirm_delete_message": "This announcement will be permanently deleted.",
    "confirm_resend_title": "Resend to unread?",
    "confirm_resend_message": "This will resend the announcement to participants who haven't read it yet.",
    "recipients": "Recipients",
    "read": "Read",
    "have_read": "have read this announcement",
    "open_rate": "Open rate",
    "delivery_stats": "Delivery stats",
    "show_readers": "Show who read it",
    "hide_readers": "Hide reader list",
    "resend_unread": "Resend to unread",
    "pin": "Pin",
    "unpin": "Unpin",
    "setup_title": "Automatic Announcements",
    "setup_description": "Configure system-generated notifications that are sent automatically based on tournament events.",
    "rule_match_reminder_participants_title": "Match reminder for participants",
    "rule_match_reminder_participants_desc": "Send a reminder to coaches and players before their match starts.",
    "rule_match_reminder_referees_title": "Match reminder for referees",
    "rule_match_reminder_referees_desc": "Send a reminder to assigned referees before the match starts.",
    "rule_schedule_published_title": "Schedule published",
    "rule_schedule_published_desc": "Notify all participants when the match schedule is published.",
    "rule_result_posted_title": "Result posted",
    "rule_result_posted_desc": "Notify coaches and players when results for their match are published.",
    "rule_tournament_start_reminder_title": "Tournament start reminder",
    "rule_tournament_start_reminder_desc": "Remind all participants the day before the tournament starts.",
    "rule_registration_closing_title": "Registration closing",
    "rule_registration_closing_desc": "Notify registered contacts before registration closes.",
    "rule_lineup_deadline_title": "Lineup deadline",
    "rule_lineup_deadline_desc": "Remind coaches to publish their lineup before the deadline.",
    "hours_before": "Hours before",
    "hours_before_hint": "How many hours before the event to send the notification",
    "confirm_schedule_title": "Schedule announcement?",
    "created": "Announcement saved",
    "deleted": "Announcement deleted",
    "resent": "Announcement resent to unread recipients",
    "sent": "Announcement sent"
  },
  "feed": {
    "tabs": {
      "my_feed": "My Feed",
      "following": "Following",
      "discover": "Discover"
    },
    "card": {
      "common": {
        "follow": "Follow",
        "following": "Following",
        "badge_managing": "Managing",
        "badge_participating": "Participating",
        "tooltip_managing": "You are organizing this tournament",
        "tooltip_participating": "You are participating in this tournament",
        "more_actions": "More actions",
        "dismiss": "Not interested",
        "badge_private": "Private",
        "tooltip_private": "This event isn't visible to public viewers",
        "remove_from_feed": "Remove from feed"
      },
      "match_finished": {
        "team1_fallback": "Team 1",
        "team2_fallback": "Team 2"
      },
      "match_scheduled": {
        "title": "Match scheduled"
      },
      "blog": {
        "read_more": "Read more",
        "updated_eyebrow": "POST UPDATED"
      },
      "announcement": {
        "direct_eyebrow": "TO YOUR TEAM"
      },
      "team_confirmed": {
        "fallback_name": "A team",
        "subtitle": "joined the tournament"
      },
      "registration_opened": {
        "title": "Registration is now open",
        "deadline_prefix": "until"
      },
      "bracket_published": {
        "title": "Bracket published"
      },
      "stage": {
        "from": "COMPLETED",
        "to": "NOW PLAYING",
        "advancing": "{{count}} teams advanced",
        "view_standings": "Final standings",
        "view_next": "View next stage"
      },
      "champion": {
        "fallback_name": "Champion",
        "subtitle": "has been crowned",
        "podium_eyebrow": "FINAL PODIUM",
        "first": "1st",
        "second": "2nd",
        "third": "3rd",
        "view_final_stage": "View final standings"
      },
      "sentence": {
        "match_finished": "submitted a new match result",
        "score_submission": "submitted a score",
        "match_scheduled": "scheduled a new match",
        "match_rescheduled": "rescheduled a match",
        "registration_opened": "opened registration",
        "announcement_sent": "sent an announcement",
        "media_uploaded_one": "uploaded a new media item",
        "media_uploaded_other": "uploaded {{count}} new media items",
        "blog_published": "published a new post",
        "blog_updated": "updated a post",
        "team_confirmed": "confirmed a team",
        "team_registered": "registered a new team",
        "bracket_published": "published a bracket",
        "stage_advanced": "advanced to the {{stage}}",
        "champion_crowned": "crowned a champion",
        "registration_submission": "received a registration",
        "registration_closed": "closed registration",
        "tournament_published": "published the tournament",
        "player_added": "added a player",
        "player_removed": "removed a player",
        "staff_invited": "invited a new staff member",
        "staff_joined": "added a new staff member",
        "tournament_liked": "liked the tournament"
      }
    },
    "empty": {
      "my_feed": {
        "title": "No activity yet",
        "description": "Join or organize a tournament to see events here."
      },
      "following": {
        "title": "You aren't following anything yet",
        "description": "Tap the heart on a tournament to see its updates here."
      },
      "discover": {
        "title": "No tournaments to discover",
        "description": "Check back soon."
      },
      "tournament": {
        "title": "No activity yet",
        "description": "Events will show up here once they happen."
      }
    },
    "error": {
      "loading": "Couldn't load the feed.",
      "retry": "Try again"
    },
    "end_of_list": "You're all caught up",
    "dashboard": {
      "title": "Recent activity"
    },
    "event_type": {
      "match_finished": "Match results",
      "match_started": "Matches started",
      "match_scheduled": "Matches scheduled",
      "match_rescheduled": "Matches rescheduled",
      "score_submission": "Score submissions",
      "stage_advanced": "Stage advanced",
      "champion_crowned": "Champions crowned",
      "announcement_sent": "Announcements",
      "media_uploaded": "Photos and videos",
      "blog_published": "Posts published",
      "blog_updated": "Posts updated",
      "bracket_published": "Brackets published",
      "registration_opened": "Registration opened",
      "registration_closed": "Registration closed",
      "registration_submission": "Registration forms",
      "team_registered": "Teams added",
      "team_confirmed": "Teams confirmed",
      "player_added": "Players added",
      "player_removed": "Players removed",
      "tournament_published": "Tournament published",
      "tournament_liked": "Likes",
      "staff_invited": "Staff invited",
      "staff_joined": "Staff joined",
      "document_added": "Documents added",
      "document_removed": "Documents removed",
      "sponsor_added": "Sponsors added",
      "sponsor_removed": "Sponsors removed",
      "showcase_updated": "Showcase updated"
    }
  },
  "search": "Search",
  "coming_soon": {
    "pill": "Coming Soon",
    "default_title": "Coming Soon",
    "default_message": "This feature is almost ready. We're rolling it out gradually and it's not yet available to all tournaments.",
    "scheduling": {
      "title": "Scheduling — coming soon",
      "message": "Full bracket and schedule management will be available for all tournaments very soon."
    },
    "live_matches": {
      "title": "Live Match Management — coming soon",
      "message": "Live scoring, period management and real-time match controls are being readied for public release."
    },
    "presentation": {
      "title": "Presentation Mode — coming soon",
      "message": "The big-screen presentation view is nearly ready for prime-time."
    },
    "announcements": {
      "title": "Announcements — coming soon",
      "message": "Scheduled announcements with read tracking and auto-rules will be enabled for all tournaments shortly."
    },
    "team_management": {
      "title": "Team Management — coming soon",
      "message": "Full team rosters, coaches and team-level administration will be available very soon."
    },
    "player_management": {
      "title": "Player Management — coming soon",
      "message": "Player profiles, transfers and roster tools will be rolled out to all organizers soon."
    },
    "official_management": {
      "title": "Official Management — coming soon",
      "message": "Referees, judges and match officials management is coming to all tournaments in the next release."
    }
  },
  "referee_detail": {
    "title": "Official",
    "not_found": "We couldn't find this official.",
    "upcoming": "Upcoming",
    "completed": "Completed",
    "empty_upcoming": "No upcoming matches assigned.",
    "empty_completed": "No completed matches yet.",
    "empty_any": "No assignments yet."
  },
  "team_detail": {
    "players_count_one": "{{count}} player",
    "players_count_many": "{{count}} players",
    "qr_dialog_title": "Invite players",
    "qr_how_title": "How it works",
    "qr_step_scan": "Players scan the code or open the link",
    "qr_step_account": "They sign in or create a free account",
    "qr_step_join": "They pick their name and join {{team}}",
    "qr_joined": "{{n}} / {{max}} joined",
    "qr_joined_unlimited": "{{n}} players joined",
    "qr_spots_left": "{{n}} spots left",
    "qr_full": "Squad full: new players can't join",
    "qr_copy_link": "Copy link",
    "qr_copied": "Copied",
    "qr_download": "Download QR",
    "qr_turn_off": "Turn off link",
    "qr_off_title": "The signup link is off",
    "qr_off_desc": "Turn it on to get a QR code players can scan to join {{team}}.",
    "qr_turn_on": "Turn on link",
    "event_dialog_when_where": "When & where",
    "event_dialog_duration": "Duration",
    "event_dialog_location": "Location",
    "event_dialog_all_teams": "Open to all teams",
    "event_dialog_no_teams": "No teams assigned",
    "team": "Team",
    "team_not_found": "We couldn't find this team.",
    "load_failed": "We couldn't load this team. Check your connection and try again.",
    "retry": "Try again",
    "back_to_teams": "Back to teams",
    "edit_team": "Edit team",
    "manage_team": "Manage team",
    "overview": "Overview",
    "next_match": "Next match",
    "next_match_badge": "Next",
    "no_upcoming": "No upcoming matches.",
    "empty_upcoming_title": "No upcoming matches",
    "empty_finished_title": "No finished matches yet",
    "empty_any_title": "No matches yet",
    "empty_team_hint": "Matches show up here once this team is on the schedule.",
    "empty_official_hint": "Matches show up here once this official is assigned to them.",
    "empty_day_hint": "Nothing on this day. Pick another day, or All days.",
    "recent_form": "Recent form",
    "recent_form_empty": "No completed matches yet.",
    "kit_colors": "Kit colours",
    "kit_unknown": "Unknown kit colours",
    "wins": "Wins",
    "draws": "Draws",
    "losses": "Losses",
    "goal_difference": "Goal difference",
    "current_streak": "Current streak",
    "penalty_short": "Pens",
    "group_standings": "Group standings",
    "current_standings": "Current standings",
    "standings_pending": "Standings will appear here once matches start.",
    "points_short": "Pts",
    "players": "Players",
    "squad": "Squad",
    "squad_empty": "No players have joined this team yet.",
    "squad_empty_manage": "Add players or share the team's signup QR to start filling the roster.",
    "squad_empty_title": "No players yet",
    "squad_empty_hint": "Tip: open the Invitation QR to let players sign themselves up.",
    "matches": "Matches",
    "schedule": "Schedule",
    "event_kind": "Event",
    "event_other_team": "team",
    "event_other_teams": "teams",
    "event_dialog_time": "Time",
    "event_dialog_description": "Description",
    "event_dialog_teams": "Teams assigned",
    "event_dialog_this_team": "This team",
    "upcoming": "Upcoming",
    "finished": "Finished",
    "unscheduled": "TBD",
    "vs_home": "Home vs.",
    "vs_away": "Away vs.",
    "coach": "Coach",
    "coach_section_title": "Coach invitation",
    "coach_section_subtitle": "Invite a coach to manage this team's roster, lineups and player invites.",
    "invitations_card_title": "Invitations",
    "invitations_card_subtitle": "Manage who can join and edit this team.",
    "invitations_section_coach": "Coach",
    "invitations_section_players": "Players",
    "invite_players": "Invite players",
    "stats_joined": "Joined",
    "stats_capacity": "Capacity",
    "stats_spots_left": "Spots left",
    "stats_unlimited": "Unlimited",
    "present_yes": "Checked in",
    "present_no": "Not checked in",
    "paid_yes": "Paid",
    "paid_no": "Unpaid",
    "dressing_room": "Room",
    "inactive": "Inactive",
    "email_label": "Email",
    "more_count": "+{{count}} more",
    "coach_empty": "No coach invited yet.",
    "invite_coach": "Invite coach",
    "coach_link_label": "Or share this link directly:",
    "coach_link_copy": "Copy invite link",
    "coach_link_copied": "Copied!",
    "player_access_self_signup_note": "Players are self-joining via the signup link. The organizer manages the roster directly.",
    "invitation": "Invitation QR",
    "add_player": "Add player",
    "edit_player": "Edit player",
    "remove_player": "Remove player",
    "invite_pending": "Invite pending",
    "invite_accepted": "Invite accepted",
    "placeholder_slot": "Slot",
    "edit_shirt_number": "Edit shirt number",
    "shirt_number": "Shirt number",
    "shirt_number_taken": "Already worn by {{name}}.",
    "save": "Save",
    "toast_player_added": "Player added to the team.",
    "toast_player_updated": "Player details updated.",
    "toast_player_removed": "Player removed from the team.",
    "toast_player_remove_failed": "Couldn't remove the player. Please try again.",
    "toast_shirt_number_updated": "Shirt number updated.",
    "toast_shirt_number_failed": "Couldn't update the shirt number. Please try again.",
    "remove_player_title": "Remove player from team?",
    "remove_player_confirm": "The player stays in the tournament but is no longer assigned to this team. You can re-add them at any time.",
    "qr_card_title": "Player signup QR",
    "qr_card_subtitle": "Players scan to join {{team}}",
    "qr_card_disabled": "Signup link is disabled. Generate a new one to start accepting players.",
    "qr_card_regenerate": "Generate new link",
    "qr_card_slots_left": "{{n}} slot(s) left",
    "qr_card_full": "Roster full — new joins will be rejected.",
    "qr_card_players_count": "{{n}} players",
    "qr_card_disable_title": "Disable signup link?",
    "qr_card_disable_message": "Anyone who already has this link will lose access immediately. You can re-enable it later — the same link starts working again.",
    "qr_card_load_error": "Failed to load the signup link. Make sure player self-signup is enabled in Settings → Participation.",
    "no_finished": "No completed matches yet.",
    "no_matches": "No matches yet.",
    "qr_card_disable_error": "Failed to disable the signup link.",
    "form_aria": "Form (oldest to newest): {{results}}",
    "form_aria_empty": "No recent matches",
    "header_aria": "Team {{name}}",
    "all_played_title": "All matches played",
    "all_played_caption": "Played all {{count}} scheduled matches in this tournament.",
    "knockout_path": "Knockout path",
    "ko_live": "Live",
    "ko_champion": "Champions",
    "ko_runner_up": "Runners-up",
    "ko_finished": "Final place: {{rank}}",
    "ko_out": "Out in the {{round}}",
    "ko_next": "Next up: {{round}}",
    "stage_place": "Place"
  },
  "standings": {
    "team": "Team",
    "no_data": "No standings yet",
    "advances_to": "Advances to {{target}}",
    "advances_to_with_slot": "Advances to {{target}} · Slot {{slot}}",
    "mode_label": "Table view",
    "mode_simple": "Simple",
    "mode_extended": "Extended",
    "col_mp": "MP",
    "col_w": "W",
    "col_d": "D",
    "col_l": "L",
    "col_gf": "GF",
    "col_ga": "GA",
    "col_gd": "GD",
    "col_pts": "Pts",
    "tiebreaker": {
      "tooltip": "How ranking is decided",
      "title": "Ranked by",
      "points_with_config": "Points (W={{win}} · D={{draw}} · L={{loss}})",
      "add_score_points": "Goals scored count toward total points",
      "score_difference": "Goal difference",
      "scores_for": "Goals scored",
      "scores_against": "Fewer goals conceded",
      "wins": "Wins",
      "head_to_head_points": "Head-to-head points",
      "head_to_head_score_diff": "Head-to-head goal difference",
      "head_to_head_scores_for": "Head-to-head goals scored",
      "unknown": "Unknown criterion",
      "bonus_points": "Bonus points",
      "wins_regulation": "Wins in regular time",
      "ot_points": "After overtime or a shootout: win {{win}} · loss {{loss}}",
      "try_bonus": "Try bonus: +{{points}} for {{min}} or more tries",
      "losing_bonus": "Losing bonus: +{{points}} for a loss by {{margin}} or less",
      "segments_ratio": "Set ratio",
      "segments_difference": "Set difference",
      "inner_ratio": "Game / point ratio",
      "inner_difference": "Game / point difference",
      "points_deciding": "Win in the deciding set {{win}} · loss in the deciding set {{loss}}",
      "points_wl": "Points (W={{win}} · L={{loss}})",
      "by_points": {
        "score_difference": "Point difference",
        "scores_for": "Points scored",
        "scores_against": "Fewer points conceded",
        "head_to_head_score_diff": "Head-to-head point difference",
        "head_to_head_scores_for": "Head-to-head points scored",
        "add_score_points": "Points scored count toward total points"
      },
      "points_deciding_unit": {
        "game": "Win in the deciding game {{win}} · loss in the deciding game {{loss}}",
        "point": "Win on the deciding point {{win}} · loss on the deciding point {{loss}}",
        "map": "Win on the deciding map {{win}} · loss on the deciding map {{loss}}",
        "leg": "Win in the deciding leg {{win}} · loss in the deciding leg {{loss}}",
        "frame": "Win in the deciding frame {{win}} · loss in the deciding frame {{loss}}",
        "rack": "Win in the deciding rack {{win}} · loss in the deciding rack {{loss}}",
        "round": "Win in the deciding round {{win}} · loss in the deciding round {{loss}}"
      }
    },
    "col_otw": "OTW",
    "col_otw_hint": "Won after overtime or a shootout",
    "col_otl": "OTL",
    "col_otl_hint": "Lost after overtime or a shootout",
    "col_bonus": "BP",
    "col_bonus_hint": "Bonus points (included in the total)",
    "record_wdl": "{{w}}W · {{d}}D · {{l}}L",
    "record_wl": "{{w}}W · {{l}}L",
    "segments": {
      "col_units": {
        "set": "Sets",
        "game": "Games",
        "point": "Points",
        "map": "Maps",
        "leg": "Legs",
        "frame": "Frames",
        "rack": "Racks",
        "round": "Rounds"
      },
      "col_segments_for": "SW",
      "col_segments_against": "SL",
      "col_segments_ratio": "SR",
      "col_inner_for": {
        "game": "GW",
        "point": "PW",
        "leg": "LW",
        "frame": "FW",
        "rack": "RW",
        "round": "RW"
      },
      "col_inner_against": {
        "game": "GL",
        "point": "PL",
        "leg": "LL",
        "frame": "FL",
        "rack": "RL",
        "round": "RL"
      },
      "col_inner_ratio": {
        "game": "GR",
        "point": "PR",
        "leg": "LR",
        "frame": "FR",
        "rack": "RR",
        "round": "RR"
      },
      "ratio_max": "MAX"
    }
  },
  "claim": {
    "banner": {
      "title": "You have tournaments to claim",
      "subtitle": "{{count}} tournament(s) registered to your email are waiting for you. Claim them to start managing.",
      "cta": "Review and claim"
    },
    "dialog": {
      "title": "Claim your tournaments",
      "subtitle_one": "1 tournament is linked to your email. Claim it to start managing.",
      "subtitle_other": "{{count}} tournaments are linked to your email. Claim them to start managing.",
      "verify_email_required": "Verify your email before claiming.",
      "verify_email_cta": "Verify email",
      "claim_cta": "Claim",
      "pending_invite_badge": "Pending invite"
    },
    "toast": {
      "success": "Tournament claimed.",
      "conflict": "This tournament is no longer available to claim.",
      "error": "Could not claim this tournament. Please try again."
    },
    "header_cta": "Claim this tournament"
  },
  "share_referee_schedules": {
    "title": "Share referee schedules",
    "helper": "Share one link or QR code with your whole roster, or copy each referee's individual schedule link below.",
    "directory_label": "Public referee directory",
    "individual_label": "Individual referees",
    "copy_link": "Copy link",
    "view_in_new_tab": "Open in new tab",
    "no_referees": "No active officials yet."
  },
  "public_referees": {
    "title": "Officials",
    "subtitle": "Find your name to view your full schedule.",
    "empty": "No officials are listed for this tournament yet.",
    "match_count": "Matches: {{count}}"
  },
  "manage_tournament": {
    "documents": {
      "title": "Tournament Documents",
      "subtitle": "Upload PDF documents for participants. Pin one to show its preview at the top of the public card.",
      "upload_title": "Upload your documents",
      "upload_hint": "PDF files only. You can upload up to {{max}} documents per tournament.",
      "choose_files": "Choose files",
      "add_more": "Add more",
      "count": "{{count}} of {{max}} documents",
      "max_reached": "You've reached the {{max}}-document limit. Delete one to add another.",
      "uploading": "Uploading...",
      "added_on": "Added",
      "pin": "Pin with preview",
      "unpin": "Unpin",
      "delete": "Delete",
      "delete_title": "Delete document?",
      "delete_confirm": "This will permanently remove the document from your tournament page.",
      "default_name": "Document"
    },
    "media": {
      "title": "Media",
      "subtitle": "Every image, video, and document uploaded for this tournament.",
      "upload": "Upload",
      "search_placeholder": "Search by filename or ID",
      "item_one": "item",
      "item_many": "items",
      "empty": "No media yet. Upload a logo, gallery photo, or document to get started.",
      "delete": "Delete",
      "delete_success": "Media deleted",
      "url_copied": "URL copied",
      "derivatives": "Derivative URLs",
      "usages": "Used by",
      "usages_loading": "Looking for usages…",
      "no_usages": "Not used anywhere. Safe to delete.",
      "open_document": "Open document",
      "kind": {
        "all": "All",
        "image": "Images",
        "video": "Videos",
        "document": "Documents"
      },
      "state": {
        "uploading": "Uploading",
        "processing": "Processing",
        "ready": "Ready",
        "failed": "Failed"
      },
      "field": {
        "kind": "Kind",
        "state": "State",
        "size": "Size",
        "dimensions": "Dimensions",
        "duration": "Duration",
        "uploaded": "Uploaded",
        "mime": "MIME"
      },
      "delete_in_use": "This media is still in use. Unlink it from the items below first."
    }
  },
  "sport": {
    "label": "Sport",
    "filter_all": "All sports",
    "select_placeholder": "Select a sport",
    "create_hint": "Pick the sport this tournament is for. You can change this later.",
    "edit_question": "Which sport is this tournament for?",
    "edit_hint": "Changing the sport only updates how it's labeled and filtered — it won't affect existing matches or registrations.",
    "change_confirm_title": "Change the sport for this tournament?",
    "change_confirm_message": "This re-applies the new sport's rules (scoring, draws, periods) to the whole tournament and can change already-computed standings. Labels update either way.",
    "save": "Save"
  },
  "tournament_timezone": {
    "badge_tooltip": "Times shown in {{abbr}} ({{tz}}). This tournament is in a different timezone than your device ({{viewer}}).",
    "badge_tooltip_same": "Times shown in {{abbr}} ({{tz}}).",
    "card_lead_public": "This tournament runs on {{zone}} time ({{abbr}}).",
    "card_lead_manage": "You're scheduling in {{zone}} time ({{abbr}}) — the time at the venue.",
    "card_delta_ahead": "You're {{delta}} ahead in {{viewer}}.",
    "card_delta_behind": "You're {{delta}} behind in {{viewer}}.",
    "card_delta_same": "Your device is in {{viewer}}.",
    "card_prompt_public": "Show match times in:",
    "card_prompt_manage": "Preview the schedule in:",
    "card_aria": "Choose which timezone match times are shown in",
    "toggle_viewer": "My time",
    "toggle_venue": "Venue time"
  },
  "media_picker": {
    "title": "Choose media",
    "tab_upload": "Upload",
    "tab_library": "From library",
    "dropzone_primary": "Click to choose a file",
    "dropzone_secondary": "or drag and drop here",
    "crop_hint": "Drag the corners to crop. Aspect ratio is locked.",
    "uploading": "Uploading…",
    "processing": "Processing — generating sizes…",
    "use_upload": "Upload and use",
    "use_selected": "Use selected",
    "search_placeholder": "Search media by name",
    "no_library_items": "No media in this tournament's library yet.",
    "low_quality_title": "Low quality image",
    "low_quality_body": "This image is {{width}}px wide. {{slot}} look best at {{min}}px or larger — the quality will look degraded at this size.",
    "continue_anyway": "Continue with this one",
    "choose_another": "Choose another",
    "low_quality_slot_default": "Images",
    "low_quality_slot_cover": "Covers",
    "low_quality_slot_logo": "Logos",
    "low_quality_slot_sponsor": "Sponsor logos",
    "low_quality_slot_avatar": "Avatars",
    "upload_failed": "Upload failed",
    "processing_failed": "Processing failed"
  },
  "media_picker_button": {
    "choose": "Choose…",
    "change": "Change…",
    "clear": "Clear"
  },
  "media_uploader": {
    "drop_title": "Drop to upload",
    "drop_subtitle": "Release anywhere in this window",
    "title": "Upload media",
    "dropzone_primary": "Choose files or drag and drop",
    "dropzone_secondary": "Multiple files supported",
    "file_one": "file",
    "file_many": "files",
    "done": "Done",
    "retry": "Retry",
    "remove": "Remove",
    "status": {
      "queued": "Queued",
      "running": "In progress",
      "ready": "Ready",
      "failed": "Failed"
    }
  },
  "staff_activity": {
    "action_widget_created": "{{actor}} created the widget {{target}}",
    "action_widget_updated": "{{actor}} updated the widget {{target}}",
    "action_widget_deleted": "{{actor}} deleted the widget {{target}}",
    "action_widget_paused": "{{actor}} paused the widget {{target}}",
    "action_widget_resumed": "{{actor}} resumed the widget {{target}}",
    "title": "Recent activity",
    "loading": "Loading…",
    "error": "Couldn't load activity",
    "empty": "No staff activity yet",
    "load_more": "Show more",
    "action_staff_added": "{{actor}} added {{target}} as staff",
    "action_staff_removed": "{{actor}} removed {{target}} from staff",
    "action_staff_role_changed": "{{actor}} changed {{target}}'s role from {{from}} to {{to}}",
    "action_staff_blocked": "{{actor}} blocked {{target}}",
    "action_staff_unblocked": "{{actor}} unblocked {{target}}",
    "action_staff_invited": "{{actor}} invited {{target}}",
    "action_feature_enabled": "{{actor}} enabled {{target}}",
    "action_feature_disabled": "{{actor}} disabled {{target}}",
    "action_generic": "{{actor}} performed {{action}}",
    "action_team_division_changed": "{{actor}} moved {{target}} from {{from}} to {{to}}"
  },
  "setup": {
    "subtab_basic": "Basic",
    "subtab_advanced": "Advanced",
    "tab_new": "New",
    "track_team_title": "What do you track per team?",
    "track_team_desc": "Locked fields always exist. Add the optional ones you need, or define your own.",
    "track_player_title": "What do you track per player?",
    "track_player_desc": "Same idea, for the people inside each team.",
    "add_field": "Add field",
    "available_fields": "Available fields",
    "all_tracked": "Everything is already tracked.",
    "needs_field": "needs {{field}}",
    "new_custom_field": "New custom field",
    "stop_tracking": "Stop tracking this field",
    "locked_count": "{{count}} locked fields always exist and can't be removed.",
    "fill_desc": "Now that you know what you track, decide who completes it.",
    "fill_hybrid_desc": "Decide per field who fills what.",
    "matrix_note": "Only the fields you're tracking appear here — add or remove them in the sections above.",
    "nothing_tracked": "Nothing optional is being tracked yet.",
    "applies_to": "Applies to",
    "all_divisions": "All divisions",
    "division": "Division",
    "divisions_differ": "Your divisions currently have different settings. Pick one to edit, or choose All divisions to give them the same answer.",
    "track_noun_title": "What do you track per {{noun}}?",
    "track_noun_desc": "Locked fields always exist. Add the optional ones you need, or define your own."
  },
  "team_detail_v2": {
    "record_title": "Record",
    "stat_played": "P",
    "stat_won": "W",
    "stat_drawn": "D",
    "stat_lost": "L",
    "stat_record": "W-D-L",
    "stat_goals": "Goals",
    "stat_gd": "GD",
    "stat_points": "Pts",
    "rank_of": "{{rank}} of {{total}}",
    "show_full_table": "Show full table",
    "show_less": "Show less",
    "view_all_results": "View all results",
    "view_full_schedule": "View full schedule",
    "delete_team": "Delete team",
    "delete_blocked_results": "Can't delete: this team has match results.",
    "delete_blocked_matches": "Can't delete: this team has scheduled matches. Remove it from the format first.",
    "delete_blocked_placed": "Can't delete: this team is placed in a group or bracket. Remove it from the format first.",
    "profile_title": "Team profile",
    "kit_home": "Home kit",
    "kit_away": "Away kit",
    "fact_kit": "Kit",
    "kit_not_set": "Not set",
    "kit_edit": "Edit kit",
    "logo_add": "Add logo",
    "logo_change": "Change logo",
    "photo_add": "Add photo",
    "photo_change": "Change photo",
    "logo_remove": "Remove",
    "fact_dressing_room": "Dressing room",
    "fact_location": "Location",
    "fact_country": "Country",
    "fact_city": "City",
    "fact_email": "Contact",
    "fact_present": "Checked in",
    "fact_paid": "Paid",
    "access_title": "App access",
    "access_tips_hide": "Hide explanations",
    "access_tips_show": "Show explanations",
    "manager_label": "Team manager",
    "manager_empty": "No team manager invited yet.",
    "manager_invite": "Invite team manager",
    "manager_perk_squad": "Manage the squad",
    "manager_perk_lineups": "Submit lineups",
    "manager_perk_signup": "Invite players with a signup link",
    "manager_perk_follow": "Follow matches and results",
    "coach_none": "No team manager",
    "coach_pending": "Manager invited",
    "coach_active": "Manager assigned",
    "plan_lineup": "Plan a lineup",
    "lineup_hint": "Build a reusable draft lineup for this team. Coaches submit the official lineup per match.",
    "no_matches_played": "No matches played yet",
    "fact_name": "Name",
    "fact_division": "Division",
    "fact_players": "Players",
    "fact_registered": "Registered",
    "kit_save_failed": "Could not save the kit. Please try again."
  },
  "manage_header": {
    "home": "Home",
    "back_to_my_tormatch": "My TorMatch"
  },
  "manage_search": {
    "placeholder": "Search or jump to…",
    "no_results": "Nothing matches “{{query}}”",
    "group_actions": "Actions",
    "group_pages": "Pages",
    "group_features": "Features",
    "group_teams": "Teams",
    "group_matches": "Matches",
    "group_officials": "Officials",
    "hint_open": "Open",
    "hint_enable": "Enable",
    "hint_configure": "Configure",
    "hint_upgrade": "Upgrade",
    "hint_navigate": "to navigate",
    "hint_select": "to select",
    "hint_close": "to close"
  },
  "manage_actions": {
    "write_rules_title": "Write tournament rules",
    "write_rules_desc": "Publish the rules teams and visitors should know.",
    "create_widget_title": "Create a website widget",
    "create_widget_desc": "Show your schedule, standings or results on your club website.",
    "add_team_title": "Add a team",
    "add_team_desc": "Register a team so it can be drawn into the competition.",
    "add_player_title": "Add a player",
    "add_player_desc": "Build out a squad with players and shirt numbers.",
    "open_registration_title": "Open registrations",
    "open_registration_desc": "Let teams sign up themselves instead of adding them by hand.",
    "invite_staff_title": "Invite a colleague",
    "invite_staff_desc": "Share the workload — give someone access to help you run this.",
    "invite_official_title": "Invite an official",
    "invite_official_desc": "Add referees and officials, and assign them to matches.",
    "start_scheduling_title": "Start scheduling",
    "start_scheduling_desc": "Lay out pitches, times and fixtures for the whole tournament.",
    "build_format_title": "Build the format",
    "build_format_desc": "Set up groups, brackets and how teams progress.",
    "enter_results_title": "Enter a result",
    "enter_results_desc": "Record scores and keep the standings up to date.",
    "go_live_title": "Run a live match",
    "go_live_desc": "Track the clock, goals and cards as the match is played.",
    "manage_discipline_title": "Record a card",
    "manage_discipline_desc": "Track cards and suspensions across the tournament.",
    "start_presentation_title": "Show it on a screen",
    "start_presentation_desc": "Put fixtures, results and standings on a big screen.",
    "write_post_title": "Write a post",
    "write_post_desc": "Publish news and updates on your tournament page.",
    "upload_photos_title": "Upload photos",
    "upload_photos_desc": "Add albums so players and fans can relive the day.",
    "send_announcement_title": "Send an announcement",
    "send_announcement_desc": "Reach everyone taking part with an important update.",
    "showcase_teams_title": "Showcase a team",
    "showcase_teams_desc": "Highlight teams and champions on your public page.",
    "customize_site_title": "Customise your page",
    "customize_site_desc": "Choose what visitors see on your public tournament page.",
    "add_sponsor_title": "Add a sponsor",
    "add_sponsor_desc": "Give your partners visible space on your tournament page.",
    "view_analytics_title": "Check your numbers",
    "view_analytics_desc": "See how many people are following your tournament.",
    "read_inbox_title": "Read your messages",
    "read_inbox_desc": "Answer questions from teams and visitors.",
    "complete_info_title": "Complete tournament information",
    "complete_info_desc": "Fill in what your public page still needs before it can go live.",
    "publish_tournament_title": "Publish your tournament",
    "publish_tournament_desc": "Everything is ready. Make your page visible to everyone."
  },
  "manage_dashboard": {
    "page_description": "Everything that needs your attention, on one board.",
    "dismiss_action": "Dismiss",
    "no_actions": "You are all caught up. Nothing needs your attention right now.",
    "view_all": "View all",
    "live_now": "Live now",
    "results_entered": "Results entered",
    "activity_title": "Activity",
    "activity_desc": "Everything happening in your tournament, newest first.",
    "w_next_actions_title": "Next steps",
    "w_countdown_title": "Countdown",
    "w_analytics_title": "Traffic",
    "w_live_title": "Live matches",
    "w_results_title": "Results",
    "w_site_title": "Public site",
    "site_state_live": "Live",
    "site_state_ready": "Ready to publish",
    "site_state_draft": "Not live yet",
    "site_setup_lead": "Finish these before your tournament page can go public.",
    "site_ready_lead": "{{name}} is ready. Publishing makes its page visible to everyone.",
    "site_publish": "Publish",
    "site_preview": "Preview page",
    "site_blocked": "Complete the required steps to publish.",
    "site_optional": "Optional",
    "site_open": "Open public page",
    "site_customize": "Customise page",
    "site_unpublish": "Unpublish",
    "site_unpublish_confirm": "Your page will no longer be visible to the public. You can publish it again at any time.",
    "site_copy": "Copy link",
    "site_copied": "Copied",
    "site_more": "More",
    "site_stat_teams": "Teams",
    "site_stat_matches": "Matches",
    "site_stat_followers": "Followers",
    "site_polish": "Finishing touches ({{count}})",
    "site_save_next": "Save and next",
    "site_task_dates": "Set the tournament dates",
    "site_task_dates_hint": "Dates appear on your page and in search results. An event whose dates have already passed looks abandoned.",
    "site_task_description": "Describe your tournament",
    "site_task_description_hint": "The first thing a visitor reads. Say who it is for, what the format is, and why they should come.",
    "site_task_organization": "Add organiser details",
    "site_task_organization_hint": "Teams need to know who is running the event and how to reach you.",
    "site_task_logo": "Add a logo",
    "site_task_logo_hint": "Your logo identifies the tournament across the page, the app and every shared link.",
    "site_task_cover": "Add a cover image",
    "site_task_cover_hint": "The banner at the top of your page. It is also what shows when someone shares the link.",
    "site_task_branding": "Logo and cover",
    "site_task_branding_hint": "Your logo identifies the tournament everywhere. The cover is the banner at the top of the page and the image shown when the link is shared.",
    "site_share": "Share",
    "site_share_title": "Share your tournament",
    "site_share_hint": "Scan the code, copy the link, or download the code to print on posters and programmes.",
    "site_share_download": "Download code",
    "site_share_native": "Share",
    "tab_overview": "Overview",
    "w_teams_title": "Teams",
    "teams_one": "team",
    "teams_many": "teams",
    "teams_players": "{{count}} players",
    "teams_search": "Find a team",
    "teams_no_match": "No team matches that.",
    "teams_more": "{{count}} more match your search.",
    "teams_unassigned": "No age class",
    "teams_failed": "Teams could not be loaded.",
    "site_share_link": "Link",
    "site_dates_past": "These dates have already passed. Your page can't go public until the end date is today or later.",
    "w_officials_title": "Officials",
    "officials_one": "official",
    "officials_many": "officials",
    "officials_inactive": "{{count}} inactive",
    "officials_search": "Find an official",
    "officials_no_match": "No official matches that.",
    "officials_more": "{{count}} more match your search.",
    "officials_no_role": "No role",
    "officials_failed": "Officials could not be loaded.",
    "officials_partial": "Search covers the first {{count}} officials.",
    "checklist_hint": "Each step opens the form that fills it in. Your page can go live once the required ones are done.",
    "checklist_ready": "Everything required is done — your page is ready to go live.",
    "activity_heat": {
      "title": "Activity pulse",
      "aria": "Activity heat map: {{count}} events between {{range}}.",
      "in_range": "{{count}} events in this period",
      "tooltip_one": "1 event on {{date}}",
      "tooltip_other": "{{count}} events on {{date}}",
      "less": "Less",
      "more": "More"
    },
    "activity_breakdown": {
      "title": "What's in the feed",
      "empty": "Nothing has been posted to this feed yet.",
      "show_more": "Show {{count}} more",
      "show_less": "Show less"
    },
    "activity_manage": {
      "title": "Manage feed",
      "count_visible": "Visible",
      "count_hidden": "Removed",
      "note": "Removed events stay in your audit log — nothing is permanently deleted.",
      "settings_label": "Activity feed settings",
      "settings_desc": "Choose what gets posted, and clear the feed.",
      "restore_label": "Restore removed events",
      "restore_desc": "Put all {{count}} back on the feed.",
      "restore_title": "Restore removed events?",
      "restore_message": "All {{count}} removed events will reappear on your public feed. This includes cards you removed one at a time — they cannot be told apart from a cleared feed.",
      "restore_success": "Events restored to the feed."
    }
  },
  "date_selector": {
    "title": "Date",
    "today": "Today",
    "first_day": "First day",
    "last_day": "Last day",
    "all_days": "All days",
    "previous_day": "Previous day",
    "next_day": "Next day",
    "previous_month": "Previous month",
    "next_month": "Next month",
    "issues_conflict": "This day has conflicts",
    "issues_warning": "This day has warnings"
  },
  "schedule_share": {
    "button": "Share",
    "title": "Share schedule",
    "intro_team": "A public page with {{name}}'s matches — fixtures, results and live scores, always up to date. Anyone with the link or the QR code can open it; no account needed.",
    "intro_official": "A public page with the matches {{name}} is assigned to — times, pitches and results, always up to date. Anyone with the link or the QR code can open it; no account needed.",
    "intro_officials": "A public page with every official of {{name}} — each one opens their own match schedule: times, pitches and results, always up to date. Anyone with the link or the QR code can open it; no account needed.",
    "not_published": "This tournament isn't published yet, so others can't open this page until it is.",
    "link": "Link",
    "open": "Open page",
    "download": "Download QR",
    "tooltip_team": "Share this team's schedule",
    "tooltip_official": "Share this official's schedule",
    "tab_share": "Share public schedule",
    "tab_send": "Send to official",
    "send_intro": "A personal route for {{name}}: once their account is linked to this slot, their matches, to-dos and score entry appear in Your space — in the TorMatch app or at tormatch.com.",
    "send_state_label": "Account",
    "state_linked": "Linked",
    "state_invited": "Invited",
    "state_not_invited": "Not invited",
    "state_hint_linked": "Their account is linked: they see these matches in Your space",
    "state_hint_invited": "Invitation sent, not accepted yet",
    "state_hint_not_invited": "No account linked yet — send an invitation from Share",
    "send_linked": "{{name}} is linked. Their matches are in Your space; pass this link on if they can’t find it.",
    "your_space_link": "Your space link",
    "send_invited": "An invitation is waiting to be accepted. Send it again if it got lost.",
    "send_invited_to": "An invitation to {{email}} is waiting to be accepted. Send it again if it got lost.",
    "send_resend": "Resend invitation",
    "send_resent": "Invitation sent again",
    "send_resend_failed": "Couldn’t resend the invitation",
    "send_not_invited": "{{name}} has no linked account yet. Invite them: they accept with their email and find their matches in Your space.",
    "send_invite": "Send invitation"
  },
  "venues": {
    "profile_title": "Venue profile",
    "fact_hours": "Opening hours",
    "hours_not_set": "Not set",
    "location_title": "Location",
    "no_location_hint": "Add an address so teams can find it.",
    "add_photos": "Add photos",
    "photos_empty_hint": "Up to 4 photos, so visiting teams recognise the entrance and pitches.",
    "delete_venue": "Delete venue",
    "no_pitches_here": "No pitches here yet",
    "step_details": "Details",
    "step_location": "Location",
    "step_location_hint": "Search for the address, click the map to drop a pin, or pick one of your saved addresses.",
    "wizard_next": "Next",
    "create_venue": "Create venue",
    "map_click_hint": "Click the map to drop a pin",
    "dropped_pin": "Dropped pin",
    "new_address_note": "New: will be added to your tournament's addresses.",
    "no_address_picked": "No address yet. You can skip this and add one later.",
    "saved_addresses": "Your tournament's addresses",
    "page_title": "Venues",
    "page_description": "Group your playing fields by the place they are actually at, then plan one venue at a time.",
    "tab_venues": "Venues",
    "tab_overview": "Overview",
    "add_venue": "Add venue",
    "edit_venue": "Edit venue",
    "edit_location": "Edit location",
    "dialog_subtitle": "A venue is one physical site where your fields are.",
    "empty_title": "No venues yet",
    "empty_desc": "Add one for each place your tournament is played.",
    "unassigned": "Unassigned",
    "no_location": "No address yet",
    "location_in_use": "Already used",
    "location_missing": "This address was removed from the tournament settings. Pick another one.",
    "field_name": "Name",
    "field_name_placeholder": "Sportpark North",
    "field_short_name": "Short name",
    "field_short_name_hint": "Used where space is tight, like column headers.",
    "field_short_name_placeholder": "North",
    "field_location": "Address",
    "field_location_hint": "Choose one of the tournament's addresses. Add new ones under Settings.",
    "field_opens": "Opens",
    "field_closes": "Closes",
    "hours_note": "New fields added to this venue start with these hours. You can still change any field on its own.",
    "field_color": "Colour",
    "delete_title": "Delete this venue?",
    "delete_message": "\"{{name}}\" will be removed. Matches and fields are not deleted.",
    "delete_blocked": "Move its {{count}} fields to another venue first.",
    "overview_empty": "Add a venue to see how busy each site is.",
    "nothing_scheduled": "Nothing scheduled here yet.",
    "col_day": "Day",
    "col_matches": "Matches",
    "col_window": "First to last",
    "all_venues": "All venues",
    "filter_title": "Show venue",
    "filter_prefix": "Venue",
    "tab_fields": "Fields",
    "venue": "Venue",
    "indoor": "Indoor",
    "surface": "Surface",
    "size_format": "Size",
    "directions": "Get directions",
    "not_set": "Not set",
    "add_field": "Add field",
    "no_matches_day_title": "No matches on this day",
    "no_matches_day_hint": "Nothing is scheduled on this pitch on this day. Pick another day above, or plan matches on the schedule.",
    "no_matches_pitch_title": "No matches on this pitch yet",
    "no_matches_pitch_hint": "Nothing is scheduled on this pitch. Plan matches on the schedule.",
    "open_schedule": "Open schedule",
    "rules_intro_no_officials": "Tell the scheduler what belongs at this venue. Auto-schedule follows these rules, and the schedule flags any match that breaks them. Saving doesn't move anything that's already scheduled.",
    "delete_venue_rules_no_officials": "Remove its scheduling rules: no groups or divisions will belong to this venue any more.",
    "people_here": "Teams & officials",
    "delete_venue_title": "Delete venue",
    "delete_venue_intro": "Deleting {{name}} will:",
    "delete_venue_fields": "Move its {{count}} field(s) to Unassigned — you can add them to another venue later.",
    "delete_venue_matches": "Keep the {{count}} match(es) scheduled on those fields where they are.",
    "delete_venue_rules": "Remove its scheduling rules: no groups, divisions or officials will belong to this venue any more.",
    "delete_venue_final": "The venue itself can't be restored.",
    "delete_venue_confirm": "Delete venue",
    "venue_deleted": "{{name}} deleted.",
    "remove_field": "Remove field",
    "remove_opt_unassign_title": "Remove from this venue",
    "remove_opt_unassign_desc": "The field stays in the tournament as an unassigned field, so you can add it to another venue.",
    "remove_opt_unassign_matches": "Its {{count}} scheduled match(es) stay on it.",
    "remove_opt_delete_title": "Delete field",
    "remove_opt_delete_desc": "Removes the field from the tournament completely.",
    "remove_delete_warning": "{{count}} scheduled match(es) on this field will become unscheduled.",
    "remove_confirm_unassign": "Remove from venue",
    "remove_confirm_delete": "Delete field",
    "field_unassigned_done": "{{name}} is now unassigned.",
    "field_notes": "Notes",
    "field_notes_hint": "Anything worth knowing on the day — like how to find it once someone is at the venue.",
    "hours_every_day": "Applies to every day this field is used.",
    "col_setting": "Indoor/outdoor",
    "rules_row": "Scheduling rules",
    "rules_none": "None",
    "rules_count_groups": "{{count}} group(s)",
    "rules_count_divisions": "{{count}} division(s)",
    "rules_count_officials": "{{count}} official(s)",
    "rules_edit": "Edit scheduling rules",
    "rules_title": "Scheduling rules",
    "rules_intro": "Tell the scheduler what belongs at this venue. Auto-schedule and auto-assign follow these rules, and the schedule flags any match or official that breaks them. Saving doesn't move anything that's already scheduled.",
    "rules_also_at": "Also at {{venues}}",
    "rules_nothing_to_pick": "Nothing to choose from yet.",
    "assign_mode_new": "New field",
    "assign_mode_existing": "Unassigned ({{count}})",
    "assign_hint": "Fields that aren't at any venue yet. Tick the ones at this venue.",
    "assign_submit": "Add {{count}} to venue",
    "fields_assigned": "{{count}} field(s) added to this venue.",
    "edit_field": "Edit field",
    "no_fields": "No fields yet",
    "no_fields_desc": "Add the first one to start scheduling.",
    "field_dialog_subtitle": "A field is one playing surface. Name it the way people will look for it on the day.",
    "field_name_ph": "Field 1",
    "directions_hint": "How to find it once someone is at the venue.",
    "directions_ph": "Behind the clubhouse, through the side gate",
    "use_venue_hours": "Use the venue's hours ({{hours}})",
    "surface_grass": "Grass",
    "surface_artificial": "Artificial",
    "surface_hybrid": "Hybrid",
    "surface_indoor_hall": "Indoor hall",
    "surface_sand": "Sand",
    "surface_hard_court": "Hard court",
    "surface_gravel": "Gravel",
    "col_venue": "Venue",
    "col_field": "Field",
    "col_fields": "Fields",
    "col_fields_used": "Fields used",
    "col_hours": "Hours",
    "col_details": "Details",
    "add_address": "Add address",
    "search_address": "Search for an address",
    "searching": "Searching…",
    "resolving_address": "Looking up that address…",
    "address_will_be_added": "\"{{name}}\" will be added to your tournament's addresses.",
    "location_missing_short": "Address removed",
    "unassigned_hint": "{{count}} fields have no venue yet. They still work exactly as before.",
    "delete_field_title": "Delete this field?",
    "delete_field_message": "\"{{name}}\" will be removed. Nothing else in your schedule changes.",
    "delete_field_blocked": "This field has {{count}} scheduled matches. Clear them first.",
    "field_moved": "{{field}} moved to {{venue}}.",
    "field_moved_with_matches": "{{field}} moved to {{venue}}, taking {{count}} scheduled matches with it.",
    "cascade_hours_title": "Apply these hours to the fields here?",
    "cascade_hours_message": "{{count}} fields at this venue can take the new opening hours.",
    "cascade_hours_message_stranded": "{{count}} fields can take the new hours, but {{stranded}} already-scheduled matches would then fall outside them.",
    "cascade_hours_confirm": "Apply to all fields",
    "cascade_hours_skip": "Leave fields as they are",
    "hours_applied": "Opening hours applied to {{count}} fields.",
    "more_fields": "+{{count}} more",
    "venue_no_fields": "No fields here yet",
    "venue_no_fields_hint": "Add the playing fields at this venue so matches can be scheduled on them.",
    "tab_schedule": "Schedule",
    "not_found": "That venue no longer exists.",
    "stat_teams": "Teams",
    "stat_officials": "Officials",
    "n_matches": "{{count}} matches",
    "groups_here": "Groups playing here",
    "groups_here_hint": "Matches in these groups are planned here first.",
    "no_groups_here": "No groups assigned yet",
    "attach_group": "Add a group…",
    "divisions_here": "Divisions here",
    "divisions_here_hint": "Every group in these divisions starts here.",
    "no_divisions_here": "No divisions assigned yet",
    "attach_division": "Add a division…",
    "officials_here": "Officials based here",
    "officials_here_hint": "Their assignments are expected at this venue.",
    "no_officials_here": "No officials assigned yet",
    "attach_official": "Add an official…",
    "teams_playing": "Teams playing here",
    "officials_working": "Officials working here",
    "derived_hint": "Taken from what is scheduled, not something you set.",
    "detach": "Remove",
    "tab_pitches": "Pitches",
    "manage_pitches": "Manage pitches",
    "photos": "Photos",
    "photos_hint": "Up to four pictures of the site, so a visiting team recognises where to go.",
    "add_photo": "Add photo",
    "remove_photo": "Remove photo",
    "officials_feature_off": "Officials are turned off for this tournament.",
    "enable_officials_feature": "Enable officials",
    "cannot_host_groups": "This venue has no pitch for {{items}}. Matches scheduled here will be flagged.",
    "no_pitches_yet": "This venue has no pitches yet, so nothing can be scheduled here.",
    "bulk_hours": "Set hours for all",
    "bulk_hours_subtitle": "Applies to {{count}} pitches",
    "bulk_hours_apply": "Apply to all",
    "bulk_hours_note": "Every pitch on this day gets these hours — {{count}} in total.",
    "bulk_hours_note_all_days": "Every pitch gets these hours on every tournament day — {{count}} in total.",
    "bulk_hours_invalid": "A pitch cannot close before it opens.",
    "opens": "Opens",
    "closes": "Closes",
    "bulk_hours_pill": "Set global",
    "field": "Playing field",
    "no_venue_link": "Not linked to a venue",
    "field_not_found": "This playing field no longer exists.",
    "field_details": "Playing field",
    "field_details_hint": "What this pitch is. The scheduler reads these when deciding what can go where.",
    "stat_days": "Days in use",
    "setting": "Setting",
    "reorder_fields": "Reorder",
    "reorder_done": "Done",
    "reorder_hint": "Drag a field to change its position. Fields are ordered within their venue, and the schedule shows its columns in this order."
  },
  "schedule_issues": {
    "title": "Issues today",
    "title_soft": "Worth a look",
    "jump": "Go to the first one"
  },
  "scheduling_rules": {
    "title": "Scheduling rules",
    "subtitle": "What auto-scheduling is allowed to do",
    "teams_title": "Teams",
    "min_rest": "Rest between a team’s matches",
    "min_rest_hint": "The gap from the end of one match to the start of the team’s next. Auto-scheduling tries every slot that honours it first, and tells you when a day left it no choice. 0 turns it off.",
    "officials_title": "Officials",
    "official_max": "Matches per official per day",
    "official_max_hint": "Auto-assign stops handing an official matches once they reach this. Leave empty for no limit; a single official can override it on their own page.",
    "no_limit": "No limit",
    "matches_per_day": "matches per day",
    "official_min_rest": "Rest between assignments",
    "official_min_rest_hint": "Time an official needs between two matches — enough to walk between pitches, at least.",
    "official_respect_venue": "Keep officials at their own venue",
    "official_respect_venue_hint": "An official based at a venue only gets matches there, as long as someone is free to take the rest. A match with nobody is worse than an official at the wrong site.",
    "divisions_title": "Divisions",
    "divisions_hint": "Only where a division differs from the rules above. Groups inherit their division unless they say otherwise.",
    "no_divisions": "This tournament has no divisions yet.",
    "rest_override": "Rest for this division",
    "rest_override_hint": "Leave empty to use the tournament’s setting.",
    "inherit": "Inherits {{minutes}} min",
    "allowed_venues": "Venues it may play at",
    "allowed_venues_hint": "Pick every venue that works — they are all equally valid, and auto-scheduling uses whichever gives the better slot. Pick none to allow anywhere.",
    "anywhere": "Anywhere — no venue restriction.",
    "pitch_requirement": "Pitch it needs",
    "pitch_requirement_hint": "Size, surface and indoor / outdoor. Auto-scheduling only uses pitches that match, and says so if a day forces it to break that.",
    "availability": "When it cannot play",
    "availability_hint": "Hours this whole division is away. Saved as soon as you close the editor.",
    "add_availability": "Add unavailable hours",
    "edit_availability": "Edit {{count}} window(s)",
    "groups_label": "Groups in this division",
    "inherits_division": "inherits the division",
    "any": "Any",
    "outdoor": "Outdoor",
    "rest_tag": "rest",
    "save_failed": "Could not save. Try again.",
    "save_partial": "Some rules were not saved. Check them and try again.",
    "venue_cannot_host": "{{venues}} has no pitch for {{requirement}}. Matches sent there will be flagged.",
    "venue_cannot_host_tooltip": "No pitch here fits {{requirement}}",
    "timing_title": "Match timing",
    "timing_hint": "How long a match lasts, and the least time a pitch needs between two of them. The scheduler may leave more room to spread a day across the hours your pitches are open — it will never leave less.",
    "match_duration": "Match duration",
    "match_duration_hint": "Playing time, excluding the turnaround.",
    "between_matches": "Minimum time between matches",
    "between_matches_hint": "A floor, not a fixed gap.",
    "duration_override": "Match duration",
    "duration_override_hint": "Leave empty to use the tournament's match duration.",
    "use_default": "Use the default ({{minutes}} min)",
    "teams_hint": "How much recovery a team gets between its own matches, and how much you are willing to ask of it in one day.",
    "officials_hint": "The same limits for the people running the matches: how many they can take, and what they need between them."
  },
  "availability": {
    "title": "When {{name}} cannot play",
    "subtitle_team": "Hours this team is away",
    "subtitle_division": "Hours this division is away",
    "lede": "Everyone is available all day until you say otherwise. Drag across the hours they are away — auto-scheduling will not place a match in them, and the planner flags any that already sits there.",
    "n_windows": "{{count}} window(s)",
    "legend_free": "Available",
    "legend_blocked": "Unavailable",
    "preset_all_day": "All day",
    "preset_morning": "Until noon",
    "preset_afternoon": "From noon",
    "clear_day": "Clear this day",
    "clear_all": "Clear all {{count}}",
    "windows_on_day": "Windows on this day",
    "none_on_day": "Available all day.",
    "note_ph": "Why? e.g. arrives late",
    "remove_window": "Remove this window",
    "card_title": "Unavailable hours",
    "fact_label": "Availability",
    "fact_full": "Full",
    "fact_limited_one": "1 blocked window",
    "fact_limited_other": "{{count}} blocked windows",
    "card_empty": "Available all tournament.",
    "edit": "Edit unavailable hours",
    "lede_list": "Everyone is available all day until you say otherwise. Add the days or hours they are away — auto-scheduling won't place a match in them, and the planner flags any that already sits there.",
    "invalid_day": "Pick one of the tournament's days.",
    "empty_body_team": "Add the times this team can't play. Auto-scheduling keeps its matches out of them.",
    "empty_body_division": "Add the times this division can't play. Auto-scheduling keeps its matches out of them."
  },
  "official_rules": {
    "title": "Officiating rules",
    "card_title": "Officiating rules",
    "edit": "Edit officiating rules",
    "exclusions_title": "Cannot officiate",
    "exclusions_hint": "Teams this official must not be given. Auto-assign never picks them for one of these; a manual assignment still works and raises an alert instead.",
    "no_exclusions": "No teams excluded.",
    "no_exclusions_short": "Can officiate any team.",
    "reason_ph": "Why? e.g. coaches this club",
    "remove": "Remove exclusion",
    "add_team": "Add a team",
    "workload_title": "Workload",
    "workload_hint": "Overrides the tournament’s defaults for this one official. Leave a field empty to use the default.",
    "max_per_day": "Max matches per day",
    "min_rest": "Rest between matches",
    "cannot_officiate": "Cannot officiate",
    "inherit_max": "Default: {{count}}",
    "inherit_rest": "Default: {{minutes}} min",
    "where_title": "Where they work",
    "where_hint": "Used by auto-assign, and by the filters in the officials drawer.",
    "based_at": "Based at",
    "based_at_hint": "Pick every venue they cover — several is normal. Binding only when the tournament asks officials to stay at their own venue.",
    "based_nowhere": "Not based at any venue — available everywhere.",
    "preferred_division": "Preferred divisions",
    "preferred_division_hint": "Pick one or more. Auto-assign offers them these divisions’ matches first, and still uses them elsewhere when it has to.",
    "any_division": "No preference"
  },
  "auto_schedule_report": {
    "title": "What the run did",
    "subtitle": "{{scheduled}} placed, {{unscheduled}} not placed",
    "placed": "placed",
    "not_placed": "not placed",
    "a_match": "A match",
    "venue_relaxed": {
      "title": "Moved to another venue ({{count}})",
      "why": "Their own venue had no room left on this day, so they went somewhere that did rather than staying unplanned.",
      "detail": "wanted {{expected}}, went to {{actual}}"
    },
    "pitch_relaxed": {
      "title": "On a pitch that does not match ({{count}})",
      "why": "No pitch meeting the requirement was free, so the requirement was set aside to get the match played.",
      "detail": "needed {{expected}}"
    },
    "rest_relaxed": {
      "title": "Less rest than asked ({{count}})",
      "why": "The day had no slot that kept the rest these teams are owed. The matches are playable; the teams will be tired.",
      "detail": "{{minutes}} min asked"
    },
    "unplaced_no_space": {
      "title": "No room left ({{count}})",
      "why": "The selected fields ran out of open time on this day. Add field hours, another pitch, or another day.",
      "detail": "still unplanned"
    },
    "unplaced_unavailable": {
      "title": "Nobody available ({{count}})",
      "why": "Every slot that was free fell inside a window a team or division is away for, so nothing was placed rather than placing a match nobody can attend.",
      "detail": "blocked by availability"
    },
    "official_unfilled": {
      "title": "Matches short of officials ({{count}})",
      "why": "Every remaining official was already busy, over their day’s limit, or excluded from one of the teams.",
      "detail": "{{count}} still needed"
    },
    "rescheduled_selection": {
      "title": "Already-planned matches moved ({{count}})",
      "why": "They were part of the selection, so the run was free to place them again.",
      "detail": "rescheduled"
    },
    "plan_cadence": {
      "title": "Kick-offs every {{minutes}} minutes",
      "why": "The pace the day was planned at. Your time between matches is a minimum, so the scheduler may leave more room to use the hours your pitches are open.",
      "detail": "{{minutes}} minutes between kick-offs on each pitch"
    },
    "plan_balance": {
      "title": "Matches spread over {{count}} pitches",
      "why": "Every pitch takes a fair share, so no field sits idle while another runs all day.",
      "detail": "{{expected}} per pitch"
    },
    "plan_off_grid": {
      "title": "{{count}} kick-off(s) off the pace",
      "why": "These matches could not fit the planned pace, so they were placed where they fit instead. A tidy schedule never costs a match.",
      "detail": "placed outside the planned pace"
    },
    "plan_over_capacity": {
      "title": "More matches than pitch time",
      "why": "The selected pitches do not have enough open hours for every match, so some could not be placed. Add pitch time, extend the day, or schedule fewer matches.",
      "detail": "{{minutes}} minutes needed, {{count}} available"
    },
    "official_unavailable": {
      "title": "Officials skipped as unavailable ({{count}})",
      "why": "These officials marked the match time unavailable, so auto-assign left them out. You can still assign them by hand.",
      "detail": "{{actual}}"
    }
  },
  "officials_filter": {
    "search": "Search officials…",
    "all_venues": "All venues",
    "all_divisions": "All divisions",
    "no_venue": "No venue",
    "no_division": "No division",
    "n_matches": "{{count}} matches",
    "none_match": "No officials match these filters.",
    "none_added": "No officials added yet."
  },
  "reflow": {
    "title": "Re-time the day",
    "subtitle": "{{count}} match(es) would move",
    "subtitle_none": "Nothing would move",
    "nothing_to_do": "The schedule already matches these settings.",
    "apply": "Apply new times",
    "cadence": "between kick-offs",
    "first_kickoff": "first kick-off",
    "last_finish": "last whistle",
    "spread_note": "The day is spread {{extra}} minutes beyond the {{minimum}}-minute minimum, to use the hours your pitches are open.",
    "moves_title": "Changes ({{count}})",
    "col_match": "Match",
    "col_from": "From",
    "col_to": "To",
    "col_change": "Change",
    "unplaced_title": "Could not be re-timed ({{count}})",
    "unplaced_why": "These keep their current time. There is no slot that fits them under the new settings.",
    "preview_failed": "Your settings were saved, but the day could not be re-timed.",
    "apply_failed": "The new times could not be applied."
  },
  "postpone": {
    "strategy": {
      "delay": {
        "name": "Delay it",
        "why": "Same pitch, later kick-off. Later matches shift only as far as needed."
      },
      "move": {
        "name": "Move it",
        "why": "Pick a new time, and another pitch if you want."
      },
      "park": {
        "name": "No new time yet",
        "why": "It keeps its place but loses its time. Teams see “time to follow”."
      }
    },
    "title": "Postpone match",
    "action": "Postpone",
    "badge": "Moved",
    "info": "Why this moved",
    "confirm": "Postpone",
    "failed": "This postponement could not be applied.",
    "applied": "Postponed — {{count}} match(es) moved",
    "what_happens": "What happens",
    "ripple": "What else moves",
    "working": "Working it out…",
    "pick_a_change": "Choose a change to see what it affects.",
    "nothing_else_moves": "Nothing else moves — the day absorbs this.",
    "also_moves": "{{count}} later match(es) shift to make room.",
    "this_match": "this match",
    "a_match": "A match",
    "time_to_follow": "time to follow",
    "blocked_one": "{{names}} cannot be moved — it is under way or already played.",
    "blocked_many": "{{names}} cannot be moved — they are under way or already played.",
    "reason": "Reason",
    "reason_hint": "Shown to the teams and kept with the record.",
    "reason_placeholder": "Pitch flooded, previous match ran long…",
    "park_note": "The match keeps its place in the tournament but loses its time. Teams see “time to follow” until you give it one.",
    "cascade_absorb": "Absorbing where possible",
    "cascade_push": "Pushing everything back",
    "new_time": "New time",
    "new_pitch": "Pitch",
    "new_pitch_hint": "Leave as-is to keep it where it is.",
    "same_pitch": "Same pitch",
    "ledger": "Postponements",
    "ledger_title": "What has moved",
    "ledger_hint": "Every change since the schedule was locked, newest first.",
    "ledger_empty": "Nothing has been postponed yet.",
    "knock_on": "knock-on",
    "undo": "Undo",
    "undone": "Put back",
    "undo_failed": "That could not be undone.",
    "parked_title": "Waiting for a time ({{count}})",
    "parked_hint": "Postponed with no new time yet. These teams are owed a slot.",
    "was_at": "was {{time}}",
    "give_a_time": "Give it a time",
    "park_not_found": "That match is no longer waiting for a time.",
    "warning": {
      "past_closing_time": "This pushes play past the pitch's closing time.",
      "cannot_cross_break": "The delay stops at a break — a break is not shortened to absorb it.",
      "blocked_by_live_match": "The delay stops at a match that has already started.",
      "match_already_started": "This match has already started or finished, so its time cannot change.",
      "match_not_on_this_day": "That match is not on this day's schedule.",
      "no_destination": "Choose a new time."
    }
  },
  "docs": {
    "title": "TorMatch Docs",
    "nav_link": "Docs",
    "menu": "Menu",
    "close": "Close",
    "search_placeholder": "Search docs…",
    "search_no_results": "No results for “{{query}}”",
    "search_results_count": "{{count}} results",
    "search_recent": "Recent searches",
    "search_view_all": "See all results",
    "search_header_group": "Docs",
    "landing_title": "How can we help?",
    "landing_subtitle": "Guides and tutorials for organizers, teams and officials.",
    "start_here": "Start here",
    "new_and_updated": "New & updated",
    "articles_count": "{{count}} articles",
    "empty_category": "Articles for this topic are coming soon.",
    "category_next": "Next: {{title}}",
    "on_this_page": "On this page",
    "breadcrumb_home": "Docs",
    "previous": "Previous",
    "next": "Next",
    "related": "Related articles",
    "reading_time": "{{minutes}} min read",
    "updated": "Updated {{date}}",
    "fallback_title": "Not fully translated yet",
    "fallback_notice": "Parts of this article aren't translated yet and are shown in English.",
    "preview_banner": "Draft preview — this article is not published.",
    "helpful_question": "Was this article helpful?",
    "helpful_yes": "Yes",
    "helpful_no": "No",
    "helpful_comment_placeholder": "What were you looking for? (optional)",
    "helpful_send": "Send",
    "helpful_thanks": "Thanks for your feedback!",
    "still_stuck": "Still stuck?",
    "contact_us": "Contact us",
    "copy_link": "Copy link to this section",
    "link_copied": "Link copied",
    "image_zoom": "Click to enlarge",
    "step_label": "Step {{n}}",
    "video_play": "Play video: {{title}}",
    "video_jump": "Jump to {{time}} in the video",
    "screenshot_coming": "Screenshot coming soon",
    "video_coming": "Video coming soon",
    "plan_badge": "Available on {{plan}}",
    "see_plans": "See plans",
    "help_link": "Help",
    "load_error": "Couldn't load this page. Check your connection and try again.",
    "retry": "Try again",
    "preview_expired": "This preview link has expired or is no longer valid. Open a fresh preview from the console.",
    "level": {
      "basics": "Basics",
      "intermediate": "Intermediate",
      "advanced": "Advanced"
    },
    "type": {
      "how_to": "How-to",
      "concept": "Concept",
      "troubleshooting": "Troubleshooting",
      "reference": "Reference"
    },
    "audience": {
      "organizer": "Organizers",
      "player": "Players",
      "coach": "Coaches",
      "official": "Officials",
      "everyone": "Everyone"
    },
    "surface": {
      "web": "Web",
      "app": "App",
      "both": "Web & app"
    },
    "plan": {
      "free": "Free",
      "pro": "Pro",
      "premium": "Premium"
    },
    "callout": {
      "info": "Note",
      "tip": "Tip",
      "warning": "Warning",
      "prerequisite": "Before you start",
      "plan": "Plan"
    },
    "breadcrumb": "Breadcrumb"
  },
  "versions": {
    "title_formats": "Load format",
    "title_schedules": "Load schedule",
    "title_results": "Results backups",
    "menu_label": "Versions",
    "save": "Save",
    "save_format_hint": "Save this division's format together with its current schedule",
    "menu_load_format": "Load format…",
    "menu_results": "Results backups…",
    "menu_save_schedule": "Save schedule…",
    "menu_load_schedule": "Load schedule…",
    "intro_formats": "A saved format is the division's stages, groups, brackets and seeding, saved together with the schedule it had. Loading one with the same structure only updates names and seeding. A different structure replaces every match, so that is only possible before any match has started.",
    "intro_schedules": "A saved schedule is the field and time of every match. Loading one moves the matches that haven't started and keeps everything attached to them: results, officials and lineups stay.",
    "intro_results": "A results backup holds every score with its goals, cards, lineups and officials. It can be restored as long as the format and the teams in it haven't changed.",
    "division": "Division",
    "search": "Search",
    "places": "Folders",
    "place_saved": "Saved",
    "place_auto": "Automatic backups",
    "col_name": "Name",
    "col_date": "Date saved",
    "col_contents": "Contents",
    "empty_formats": "No saved formats for this division yet. Save the current one to be able to come back to it.",
    "empty_schedules": "No saved schedules yet. Save the current one, try another, and come back.",
    "empty_results": "No results backups yet. One is also made automatically before results are cleared.",
    "empty_auto": "No automatic backups yet. One is made before every load and before clearing or replacing things.",
    "no_match": "Nothing matches “{{q}}”",
    "auto_hint": "Made automatically before every load and before clearing or replacing things. The newest 20 are kept; rename one to keep it for good.",
    "auto_untitled": "Automatic backup",
    "in_use": "In use",
    "in_use_hint": "Same structure as the division has now",
    "n_matches": "{{n}} matches",
    "n_played": "{{n}} played",
    "n_scheduled": "{{n}}/{{total}} scheduled",
    "fit_exact": "Fits",
    "fit_other": "Other format",
    "fit_other_hint": "Made for a different format: only matches that still exist get their time",
    "results_unfit": "The format or the teams have changed since this backup, so it can't be restored onto these matches.",
    "results_unfit_short": "Doesn't fit the current format or teams",
    "blocked_format_locked": "The format is locked. Unlock it on the Format page to load a saved format.",
    "blocked_schedule_locked": "The schedule is locked. Unlock it on the Scheduling page to load a saved schedule.",
    "blocked_results_locked": "Results are locked for this division. Unlock them to restore a backup.",
    "load": "Load",
    "restore": "Restore",
    "more": "More actions",
    "rename": "Rename",
    "rename_title": "Rename version",
    "download": "Download as JSON",
    "delete": "Delete",
    "delete_title": "Delete saved version?",
    "delete_message": "\"{{name}}\" will be deleted. This doesn't change anything in the tournament.",
    "name_label": "Name",
    "save_format": "Save format",
    "save_schedule": "Save schedule",
    "save_results": "Back up results",
    "default_name_format": "Format",
    "default_name_schedule": "Schedule",
    "default_name_results": "Results",
    "saved": "Saved",
    "saved_format": "Format saved",
    "saved_schedule": "Schedule saved",
    "save_failed": "Could not save",
    "open_history": "View",
    "load_list_failed": "Could not load the saved versions",
    "back": "Back",
    "divisions_to_load": "Divisions to load",
    "conflicts_label": "If a field is already taken",
    "conflicts_hint": "By a match of another division, or one that has already started",
    "conflicts_skip": "Leave that match unscheduled",
    "conflicts_refuse": "Don't load anything",
    "also_load_schedule": "Also load the schedule saved with this format",
    "previewing": "Working out what would change…",
    "pick_a_division": "Pick at least one division to load.",
    "what_happens": "What will happen",
    "undo_note": "A backup of the current state is saved first, so you can undo this.",
    "confirm_schedule": "Load schedule",
    "confirm_results": "Restore results",
    "confirm_format_same": "Load format",
    "confirm_format_replace": "Replace format",
    "p_changed": "{{n}} matches get a new field or time",
    "p_unscheduled": "{{n}} matches will be unscheduled",
    "p_kept_started": "{{n}} matches that have started or finished stay where they are",
    "p_not_in_format": "{{n}} saved matches don't exist in the current format and are skipped",
    "p_missing_courts": "{{n}} matches wait unscheduled, because these fields no longer exist: {{fields}}",
    "p_past_end": "{{n}} matches fall after the last tournament day and wait unscheduled",
    "p_shifted": "The tournament dates have moved, so times shift by {{n}} day(s), at the same hour",
    "p_partial_fit": "This schedule was made for a slightly different format. Matches are found by their place in the format.",
    "p_conflicts_skip": "{{n}} matches would share a field with another match and stay unscheduled ({{examples}})",
    "p_conflicts_refuse": "{{n}} matches would share a field with another match, so nothing will be loaded ({{examples}})",
    "p_nothing_changes": "{{n}} matches are already where this version puts them",
    "p_format_same": "Same structure as now: names, colours, rankings and seeding are updated. Every match, its schedule and its result stay.",
    "p_format_replace": "All {{old}} current matches are replaced by {{new}} new ones.",
    "p_dropped_officials": "{{n}} official assignments go with the old matches",
    "p_dropped_lineups": "{{n}} submitted lineups go with the old matches",
    "p_dropped_checkins": "{{n}} team check-ins go with the old matches",
    "p_its_schedule": "Its schedule",
    "p_results_back": "Results go back to this backup: {{after}} played matches (now {{before}})",
    "p_results_schedule_kept": "The schedule isn't touched",
    "changed_since_preview": "Something changed since the preview. Here is the updated one.",
    "load_failed": "Could not load this version",
    "preview_failed": "Could not work out what loading this would do",
    "loaded_format": "Format loaded",
    "loaded_schedule": "Schedule loaded",
    "loaded_results": "Results restored",
    "undo": "Undo",
    "undone": "Undone",
    "undo_failed": "Could not undo",
    "reason_before_load_schedule": "before loading a schedule",
    "reason_before_load_format": "before loading a format",
    "reason_before_restore_results": "before restoring results",
    "reason_before_import": "before a JSON import",
    "reason_before_clear_scores": "before clearing scores",
    "reason_before_clear_schedule": "before clearing the schedule"
  },
  "errors": {
    "title": {
      "plan": "Plan limit reached",
      "invalid": "Couldn't complete that",
      "conflict": "Not possible right now",
      "forbidden": "No permission",
      "auth": "Sign-in needed",
      "notFound": "Not found",
      "expired": "Link expired",
      "rateLimit": "Too many attempts",
      "offline": "No connection",
      "server": "Something went wrong on our side"
    },
    "message": {
      "plan": "Your current plan doesn't allow this. Upgrade to continue.",
      "invalid": "Some of the information wasn't accepted. Check it and try again.",
      "conflict": "This can't be changed in its current state. Refresh the page and try again.",
      "forbidden": "Your role in this tournament doesn't allow this action.",
      "auth": "Your session expired or you don't have access. Sign in again and retry.",
      "notFound": "This item no longer exists — it may have been deleted. Refresh the page.",
      "expired": "This link has expired or was revoked.",
      "rateLimit": "Wait a moment, then try again.",
      "offline": "We couldn't reach TorMatch. Check your internet connection and try again.",
      "server": "This wasn't caused by anything you did. Please try again in a moment — if it keeps happening, contact support."
    }
  },
  "tournament_rules": {
    "tab": "Tournament Rules",
    "load_failed_title": "Couldn't load the rules",
    "load_failed_desc": "Something went wrong while loading this tournament's rules.",
    "retry": "Try again",
    "intro_title": "Introduction",
    "intro_desc": "An optional opening paragraph, shown above the rules.",
    "intro_ph": "e.g. Welcome to the tournament! Please read these rules carefully before your first match.",
    "show": "Show",
    "hidden_note": "Hidden: the text is kept but not shown on the public page.",
    "empty_note": "Left empty, nothing is shown.",
    "rules_title": "Rules",
    "rules_desc": "Give every rule a title and an explanation. Drag to change the order.",
    "empty_title": "No rules yet",
    "empty_desc": "Add the rules teams and visitors should know, or start from a suggestion below.",
    "add_rule": "Add rule",
    "drag": "Drag to reorder",
    "untitled": "Untitled rule",
    "collapse": "Collapse",
    "edit": "Edit",
    "remove": "Remove rule",
    "rule_title_label": "Title",
    "rule_title_ph": "e.g. Match duration",
    "rule_body_label": "Description",
    "rule_body_ph": "Explain the rule…",
    "title_required": "Give this rule a title.",
    "suggestions": "Suggestions",
    "suggest_eligibility": "Eligibility",
    "suggest_format": "Match format",
    "suggest_points": "Points & standings",
    "suggest_tiebreakers": "Tie-breakers",
    "suggest_conduct": "Fair play & conduct",
    "suggest_disputes": "Protests & disputes",
    "footer_title": "Closing note",
    "footer_desc": "An optional note shown below the rules, such as contact details or final remarks.",
    "footer_ph": "e.g. Questions about the rules? Contact the tournament desk.",
    "public_title": "On the public page",
    "public_desc": "Shown as the Rules tab in your site menu (and linked from the tournament card).",
    "public_switch": "Show rules publicly",
    "public_switch_desc": "Turn off to hide the rules page and its link.",
    "status_live": "Live on the public page",
    "status_hidden": "Hidden: only staff can see the rules.",
    "status_empty": "Add at least one rule. The link appears once there is something to read.",
    "outline_rules": "Rules ({{count}})",
    "view_public": "View rules page",
    "card_link": "Tournament Rules",
    "public_eyebrow": "Tournament Rules",
    "public_title_page": "Rules & Regulations",
    "public_stat_rules": "Rules",
    "public_stat_updated": "Last updated",
    "public_kicker": "Official rulebook",
    "public_count": "{{count}} rules",
    "public_count_one": "1 rule",
    "public_updated_on": "Updated {{date}}",
    "public_print": "Print",
    "public_contents": "Contents",
    "public_empty_title": "No rules published yet",
    "public_empty_desc": "The organiser hasn't published the rules for this tournament yet. Check back later.",
    "public_article": "Article {{n}}",
    "public_closing": "From the organizer",
    "add_rules": "Add rules",
    "manager_empty_desc": "Visitors see this until you add your rules. Write them once and they appear as a Rules tab on your site."
  },
  "confirm_dialog": {
    "type_to_confirm": "Type “{{text}}” to confirm"
  },
  "rich_text": {
    "bold": "Bold",
    "italic": "Italic",
    "underline": "Underline",
    "link": "Insert link",
    "bullet_list": "Bullet list",
    "numbered_list": "Numbered list",
    "enter_url": "Enter URL:"
  },
  "color_picker": {
    "default_tag": "DEFAULT",
    "derived_theme": "Derived theme",
    "soft": "Soft",
    "primary": "Primary",
    "strong": "Strong",
    "on_primary": "On primary",
    "presets": "Presets"
  },
  "kit": {
    "home": "Home",
    "away": "Away",
    "pattern": "Pattern",
    "pattern_solid": "Solid",
    "pattern_stripes": "Stripes",
    "pattern_hoops": "Hoops",
    "pattern_halves": "Halves",
    "pattern_sash": "Sash",
    "pattern_checkered": "Checkered",
    "pattern_pinstripes": "Pinstripes",
    "shirt_color": "Shirt color",
    "pick_color": "Pick a color",
    "secondary_color": "Secondary color",
    "default_white_hint": "(default white)",
    "white_default_value": "#FFFFFF (default)",
    "reset_to_white": "Reset to white",
    "shorts_color": "Shorts color",
    "socks_color": "Socks color",
    "use_shirt_color": "Use shirt color",
    "matches_shirt": "{{color}} (matches shirt)",
    "copy_from_home": "Copy from home",
    "copy_from_home_tooltip": "Copy all home values into away",
    "bottom_style": "Shorts or skirt",
    "bottom_shorts": "Shorts",
    "bottom_skirt": "Skirt",
    "skirt_color": "Skirt color",
    "skirt_not_saved": "The kit colours were saved, but the skirt choice wasn't stored. It shows shorts until the update is live — please try again later."
  },
  "player_picker": {
    "select_player": "Select player",
    "no_match": "No players match \"{{query}}\"",
    "no_players": "No players available",
    "player_name": "Player name",
    "number_placeholder": "Nr",
    "enter_manually": "Enter manually",
    "enter_manually_ellipsis": "Enter manually…",
    "select_from_list": "Select from list",
    "pick_from_list": "Pick from list",
    "search_placeholder": "Search by name or #",
    "assigned_shirt_number": "Assigned shirt number"
  },
  "select_club": {
    "placeholder": "Select club"
  },
  "promo_banner": {
    "dismiss": "Dismiss offer"
  },
  "tournament_card": {
    "badge_elite": "ELITE",
    "badge_international": "INTERNATIONAL",
    "badge_trending": "TRENDING"
  },
  "relative_time": {
    "just_now": "Just now",
    "minutes_ago": "{{count}}m ago",
    "hours_ago": "{{count}}h ago",
    "days_ago": "{{count}}d ago",
    "weeks_ago": "{{count}}w ago",
    "months_ago": "{{count}}mo ago",
    "years_ago": "{{count}}y ago"
  },
  "friendly_match": {
    "status_hosted_past": "Match was hosted in the past",
    "status_arranged": "Match has been arranged",
    "status_hosting": "Team is hosting this match",
    "request_to_play_match": "Request to play this match",
    "request_to_play": "Request to play",
    "match": "Match",
    "vs": "VS",
    "match_level": "Match level",
    "confirmed_date": "Confirmed date",
    "location": "Location",
    "country_flag": "Country flag",
    "offer_details": "Offer details",
    "match_location": "Match location",
    "host_information": "Match host information",
    "player_illustration": "Football player",
    "title": "Match offer",
    "edit_offer": "Edit offer",
    "flexible_date_title": "Flexible match date",
    "flexible_date_desc": "You've marked this match as flexible for rescheduling",
    "no_referee_title": "No referee confirmed",
    "no_referee_desc": "You haven't arranged a referee yet for this match"
  },
  "mockups": {
    "placeholder": {
      "recording_needed": "Screenshot or short recording needed",
      "screenshot_needed": "Screenshot needed",
      "dark_mode": "Dark mode",
      "light_mode": "Light mode",
      "video_ok": "Video OK"
    }
  },
  "legal_document": {
    "effective_from": "In effect from {{date}}",
    "download_pdf": "Download as PDF",
    "not_found_title": "Not found",
    "not_found_desc": "This document doesn’t exist or isn’t published yet."
  },
  "preview_dock": {
    "preview": "Preview",
    "show": "Show preview",
    "hide": "Fold preview away",
    "full": "Full-screen preview",
    "exit_full": "Close full-screen preview",
    "rotate_hint": "Turn your phone sideways for a bigger preview",
    "turn": "Turn the preview sideways"
  },
  "big_screen_hint": {
    "text": "Everything works on your phone — designing is just roomier on a computer or tablet.",
    "send": "Send to computer",
    "copy": "Copy link",
    "copied": "Link copied — open it on your computer"
  },
  "tournament_hero": {
    "starts_in": "Starts in {{days}} days",
    "starts_tomorrow": "Starts tomorrow",
    "day_of": "Day {{day}} of {{total}}",
    "happening_today": "Happening today",
    "finished": "Finished",
    "registration_open": "Registration open",
    "registration_closes": "closes {{date}}",
    "live_now": "Live now"
  },
  "tournament_site_nav": {
    "overview": "Overview",
    "matches": "Matches",
    "news": "News",
    "gallery": "Gallery",
    "rules": "Rules",
    "live": "Live now",
    "standings": "Standings",
    "venues": "Venues",
    "venue": "Venue",
    "showcase": "Showcase"
  },
  "tournament_news": {
    "heading": "Latest news",
    "count": "{{count}} posts",
    "count_one": "1 post",
    "latest": "Latest",
    "min_read": "{{min}} min read",
    "read_article": "Read article",
    "empty_title": "No news yet",
    "empty_body": "Updates from the organiser will appear here. Follow the tournament to hear about them first.",
    "follow_title": "Never miss an update",
    "follow_body": "Follow {{name}} to keep up with news and results.",
    "most_liked": "Most liked",
    "from_gallery": "From the gallery",
    "view_gallery": "View gallery",
    "all_news": "All news",
    "more_news": "More news"
  },
  "tournament_site_sections": {
    "all": "All",
    "show_all_count": "Show all ({{count}})",
    "officials_count": "{{count}} officials",
    "matches_count": "{{count}} matches",
    "match_one": "1 match",
    "schedule": "Schedule",
    "more_matches": "{{count}} more matches",
    "officials_count_one": "1 official"
  },
  "tournament_matches": {
    "my_team": "My team",
    "all_teams": "All teams",
    "other_teams": "Other teams",
    "all_divisions": "All divisions",
    "status_all": "All",
    "status_upcoming": "Upcoming",
    "status_finished": "Results",
    "view_list": "List",
    "view_pitch": "By pitch",
    "day": "Day",
    "your_team": "Your team",
    "playing_now": "Playing now",
    "next_match": "Next match",
    "last_result": "Last result",
    "no_team_matches": "No matches scheduled for this team yet.",
    "played": "played",
    "live_now": "Live now",
    "no_matches_filtered": "No matches on this day for these filters.",
    "not_scheduled": "Not yet scheduled",
    "day_summary": "This day",
    "next_kickoff": "Next kick-off",
    "empty_title": "No matches yet",
    "empty_body": "The schedule appears here once the organiser publishes it.",
    "count_matches": "{{count}} matches",
    "count_days": "{{count}} days",
    "count_pitches": "{{count}} pitches",
    "not_scheduled_hint": "Kick-off times follow when the schedule is published"
  },
  "tournament_gallery": {
    "all": "All",
    "items": "{{count}} photos and videos",
    "items_one": "1 photo",
    "albums": "{{count}} albums",
    "albums_one": "1 album",
    "albums_label": "Albums",
    "news_album": "From the news",
    "show_more": "Show more",
    "empty_title": "No photos yet",
    "empty_body": "Photos and videos from the tournament will appear here.",
    "other_photos": "More photos"
  },
  "tournament_officials": {
    "empty_title": "No officials yet",
    "empty_body": "The referees and officials of this tournament will be listed here."
  },
  "tournament_venues": {
    "kicker": "Venue",
    "count": "{{count}} venues",
    "map": "Map",
    "pitches": "{{count}} pitches",
    "pitch_one": "1 pitch",
    "pitches_title": "Pitches",
    "matches": "{{count}} matches",
    "match_one": "1 match",
    "today": "{{count}} matches today",
    "today_one": "1 match today",
    "next_at": "next at {{time}}",
    "indoor": "Indoor",
    "outdoor": "Outdoor",
    "indoor_and_outdoor": "Indoor & outdoor",
    "indoor_outdoor": "{{indoor}} indoor · {{outdoor}} outdoor",
    "all_indoor": "All indoor",
    "all_outdoor": "All outdoor",
    "matches_here": "Matches here",
    "no_matches": "No matches scheduled at this venue yet.",
    "all_matches": "All matches",
    "getting_there": "Getting there",
    "no_address": "Address not published",
    "opening_hours": "Opening hours",
    "other_venues": "Other venues",
    "view_venue": "View venue",
    "directions": "Directions",
    "empty_title": "No venues yet",
    "empty_body": "The venues of this tournament will appear here.",
    "not_found": "Venue not found",
    "not_found_body": "This venue isn't part of the tournament (anymore).",
    "show_all": "Show all ({{count}} more)",
    "location": "Location"
  },
  "tournament_format_card": {
    "title_divisions": "Divisions",
    "title_format": "Format",
    "tba": "Format to be announced",
    "teams_of_max": "{{count}} / {{max}} teams",
    "periods": "{{count}} × {{minutes}} min",
    "minutes": "{{minutes}} min",
    "league": "Round robin · {{teams}} teams",
    "swiss": "Swiss system · {{teams}} teams",
    "groups_of": "{{groups}} groups of {{teams}}",
    "groups_range": "{{groups}} groups of {{min}}–{{max}}",
    "knockout_teams": "Knockout · {{teams}} teams",
    "brackets": "{{count}} knockout brackets",
    "up_to": "Up to {{count}} teams",
    "tba_all": "The format of each division will be announced soon."
  },
  "import": {
    "tab": "Import",
    "title": "Import {{noun}}",
    "noun": {
      "player_one": "player",
      "player_other": "players",
      "official_one": "official",
      "official_other": "officials"
    },
    "drop_title": "Drop your file here",
    "drop_armed": "Release to import",
    "choose_file": "Choose file",
    "paste_hint": "or paste cells copied from Excel",
    "drop_hint": ".xlsx · .xls · .ods · .csv · max 10 MB",
    "reading": "Reading {{name}}…",
    "pasted_cells": "Pasted cells",
    "read_error": {
      "too_large": "This file is larger than {{max}} MB. Remove sheets or rows you don't need, or save it as .csv, and try again.",
      "unsupported": "We can't read {{ext}} files. Save the file as .xlsx or .csv and try again.",
      "protected": "This file is password-protected. Remove the password in Excel, save the file and try again.",
      "empty": "We couldn't find any data in this file.",
      "unreadable": "We couldn't read this file. Open it in Excel, save it as .xlsx or .csv and try again.",
      "too_many_rows": "This sheet has {{count}} rows. You can import up to {{max}} at a time: split the file or filter it in Excel first.",
      "too_many_columns": "This sheet has {{count}} columns. Remove the columns you don't need (at most {{max}}) and try again."
    },
    "last_import": "Last import",
    "last_import_counts": "{{created}} added, {{updated}} updated",
    "undo": "Undo",
    "undo_import": "Undo import",
    "info_title_player": "Import players from a file",
    "info_title_team": "Import {{noun}} from a file",
    "info_title_official": "Import officials from a file",
    "info_body_player": "Upload an Excel (.xlsx) or CSV file with one player per row, in any column order. Next, you match the columns to TorMatch fields; columns TorMatch doesn't have yet can become custom fields. A Team column puts players straight into their teams.",
    "info_body_player_team": "Upload an Excel (.xlsx) or CSV file with one player per row, in any column order. Everyone is added to {{team}}. Next, you match the columns to TorMatch fields; columns TorMatch doesn't have yet can become custom fields.",
    "info_body_team": "Upload an Excel (.xlsx) or CSV file with a row for each of your {{noun}}, in any column order. Next, you match the columns to TorMatch fields; columns TorMatch doesn't have yet can become custom fields.",
    "info_body_official": "Upload an Excel (.xlsx) or CSV file with one official per row, in any column order. Next, you match the columns to TorMatch fields; columns TorMatch doesn't have yet can become custom fields.",
    "example": "Example file",
    "example_file_player": "TorMatch players import",
    "example_file_team": "TorMatch teams import",
    "example_file_official": "TorMatch officials import",
    "example_failed": "Couldn't create the example file",
    "loading": "Getting your tournament's data…",
    "load_failed_title": "Couldn't load your tournament's data",
    "load_failed_desc": "Check your connection, close this window and try again.",
    "step": {
      "data": "Data",
      "data_title": "Check your data",
      "data_desc": "Pick the sheet and the row that holds the column names.",
      "data_desc_found": "We found {{rows}} rows and {{columns}} columns on “{{sheet}}”. If the column names below look wrong, pick the row they're on.",
      "columns": "Columns",
      "columns_title": "Match your columns",
      "columns_desc": "Tell us what each column contains. We've filled in what we recognised — change anything that's wrong.",
      "teams": "Teams",
      "teams_title": "Match teams",
      "teams_desc": "Each team in your file is linked to a team in this tournament. Anything we don't recognise becomes a new team.",
      "teams_desc_check": "Each team in your file is linked to a team in this tournament. Please check the suggestions marked CHECK ({{count}}). Anything we don't recognise becomes a new team.",
      "teams_desc_whole": "Your file has no team column. Where should these {{noun}} go? ({{count}})",
      "check": "Check",
      "check_title": "Check and import",
      "check_desc": "Here's what will happen. Fix flagged rows, or untick rows you don't want.",
      "result": "Done",
      "result_title": "Import complete",
      "result_desc": "Saved. If something isn't right, you can undo the whole import."
    },
    "sheet": "Sheet",
    "sheet_empty": "Empty",
    "sheets_one": "1 sheet",
    "sheets_other": "{{count}} sheets",
    "rows_count": "Rows: {{count}}",
    "header_row": "Column names are in",
    "header_row_hint": "Rows above it, such as titles or logos, are skipped.",
    "row_n": "Row {{n}}",
    "no_header": "My file has no column names",
    "column_letter": "Column {{letter}}",
    "preview": "Preview of the first rows",
    "more_rows": "…and {{count}} more",
    "replace_file": "Choose another file",
    "need_name_title": "Which column has the names?",
    "need_name_desc": "Pick it in the list below: one column with the full name, or separate columns for first and last name.",
    "name_preview": "Names will read like this: {{name}}",
    "col_your_column": "Your column",
    "col_import_as": "Import as",
    "col_status": "Status",
    "import_column_as": "Import “{{header}}” as",
    "search_fields": "Search fields",
    "dont_import": "Don't import",
    "group_builtin": "TorMatch fields",
    "group_custom": "Your custom fields",
    "group_new": "New custom field",
    "group_detailed": "Detailed positions",
    "group_teams": "Teams in this tournament",
    "in_use": "In use: {{header}}",
    "turns_on": "Switches on “{{field}}” for this tournament",
    "combinable_hint": "Pick it for several columns to join them",
    "new_field_named": "New field “{{name}}”",
    "field_name": "Field name",
    "new_field_hint": "Added to your custom fields, so it also shows on the configuration page.",
    "field_error": {
      "required": "Give the field a name.",
      "too_long": "Use at most {{max}} characters.",
      "duplicate": "Another column already creates a field with this name.",
      "exists": "A field with this name already exists — pick it in the list instead."
    },
    "read_dates_as": "Read dates as",
    "date_dmy": "Day-month",
    "date_mdy": "Month-day",
    "values_count": "Values found: {{count}}",
    "values_to_match": "To match: {{count}}",
    "value_as": "Import “{{value}}” as",
    "leave_empty": "Leave empty",
    "default_division": "Default division",
    "team_column_not_needed": "Not needed: you're adding players to this team.",
    "column_empty": "This column is empty.",
    "unmapped_count": "Columns with data that aren't imported: {{count}}.",
    "make_fields": "Make them custom fields",
    "reset_suggestions": "Reset to our suggestions",
    "remembered_note": "Your choices are remembered on this device for the next import.",
    "tag": {
      "auto": "Auto",
      "remembered": "Remembered",
      "suggested": "Check",
      "new": "New",
      "skipped": "Skipped",
      "update": "Update"
    },
    "col_in_file": "In your file",
    "col_tormatch_team": "TorMatch team",
    "filter_all": "All",
    "filter_check": "Check",
    "filter_new": "New",
    "filter_issues": "Issues",
    "filter_update": "Update",
    "filter_skipped": "Skipped",
    "search_teams": "Search teams",
    "empty_team_cell": "No team in the file",
    "players_count": "Players: {{count}}",
    "team_for": "Team for “{{name}}”",
    "create_team": "Create team “{{name}}”",
    "no_team": "No team",
    "new_team_name": "Name of the new team",
    "new_team_placeholder": "e.g. U11 Lions",
    "team_error": {
      "required": "Give the new team a name.",
      "too_long": "Team names can be at most {{max}} characters.",
      "duplicate": "Another team in your file would get this name. Change one, or type the same name for both to make them one team."
    },
    "accept_suggestions": "Accept all suggestions",
    "nothing_here": "Nothing to show here.",
    "whole_existing": "Add them to an existing team",
    "whole_existing_desc": "Pick one of the teams in this tournament.",
    "whole_new": "Create a new team",
    "whole_new_desc": "Everyone goes into a new team with the name you choose.",
    "whole_none": "Don't assign a team",
    "whole_none_desc": "You can add them to teams later.",
    "whole_pick_team": "Team",
    "new_teams_division": "New teams go to",
    "new_teams_division_hint": "The division for the teams this import creates.",
    "teams_division": "Teams without a division go to",
    "teams_division_hint": "Used for rows without a (recognised) division.",
    "no_division": "No division",
    "summary": "Summary",
    "chip_new": "New",
    "chip_added": "Added",
    "chip_updated": "Updated",
    "chip_skipped": "Skipped",
    "chip_new_teams": "New teams",
    "chip_new_fields": "New fields",
    "quota_title": "Your plan's limit is reached",
    "dry_run_failed_title": "We couldn't check your rows",
    "dry_run_failed_desc": "The check with the server failed. Nothing has been changed.",
    "retry": "Try again",
    "show_rows": "Show rows",
    "issue_group": {
      "no_name": "Rows without a name: {{count}}. They're left out — click the empty name to type one.",
      "name_too_long": "Names longer than {{max}} characters: {{count}}. Shorten them to import those rows.",
      "team_name_too_long": "Team names that are too long: {{count}}.",
      "bad_date": "Dates we couldn't read: {{count}}. Those rows are imported without a date.",
      "bad_number": "Numbers we couldn't read: {{count}}. Those rows are imported without that number.",
      "bad_email": "Invalid e-mail addresses: {{count}}. They're left empty.",
      "bad_country": "Countries we didn't recognise: {{count}}. They're left empty.",
      "unmatched_value": "Values without a match: {{count}}. They're left empty — match them in the Columns step.",
      "shirt_taken": "Shirt numbers already taken in the team: {{count}}. Those players are imported without a number.",
      "value_too_long": "Values that are too long: {{count}}. They're left empty.",
      "server": "{{detail}} (rows: {{count}})",
      "unmatched_division": "Divisions we didn't recognise: {{count}}. Those rows are left out — match the values in the Columns step."
    },
    "issue": {
      "no_name": "No name — click to type one.",
      "name_too_long": "Longer than {{max}} characters.",
      "team_name_too_long": "Team name is too long.",
      "bad_date": "Not a date we can read — imported without it.",
      "bad_number": "Not a number we can read — imported without it.",
      "bad_email": "Not a valid e-mail address — left empty.",
      "bad_country": "Country not recognised — left empty.",
      "unmatched_value": "No match for this value — left empty.",
      "shirt_taken": "This number is already taken in the team — imported without it.",
      "value_too_long": "Too long — left empty.",
      "server": "This row can't be imported.",
      "unmatched_division": "Division not recognised — match it in the Columns step."
    },
    "reimport_title": "Looks like you've imported this list before",
    "reimport_desc": "Some of these {{noun}} already exist under the same name ({{count}} without a date of birth, number or e-mail to confirm it), so we treat them as the same people.",
    "reimport_desc_new": "Everyone without a confirming detail is added as new, even where the name already exists.",
    "reimport_treat_new": "Treat them as new",
    "reimport_treat_same": "Treat them as existing",
    "existing_title": "Already in this tournament",
    "policy_update": "Update their details",
    "policy_update_desc": "Fills in the columns you're importing. Empty cells never erase what's there.",
    "policy_skip": "Skip them",
    "policy_skip_desc": "Leaves them exactly as they are.",
    "policy_create": "Add them as new anyway",
    "policy_create_desc": "Creates a second entry with the same name.",
    "recommended": "Recommended",
    "rows_label": "Rows to import",
    "include_all": "Include all rows",
    "include_row": "Include row {{row}}",
    "col_row": "Row",
    "col_name": "Name",
    "col_reason": "Reason",
    "edit_cell": "Edit {{field}} in row {{row}}",
    "row_action": "What to do with row {{row}}",
    "edit_hint": "Click a cell to fix it here. Your file isn't changed.",
    "also_title": "This import will also",
    "also_feature": "Switch on “{{field}}” for this tournament",
    "also_field": "Create the custom field “{{name}}”",
    "also_teams": "Create new teams ({{count}})",
    "import_n": "Import {{count}} {{noun}}",
    "done": "Done",
    "failed": "Import failed",
    "rows_changed": "Nothing was imported: some rows can't be saved any more. They're marked in the list.",
    "dry_run": {
      "running": "Checking your rows with the server…",
      "ok": "Checked — ready to import.",
      "problems": "Checked — rows with problems are left out.",
      "failed": "We couldn't check your rows.",
      "quota": "Checked — your plan's limit stops this import."
    },
    "server_error": {
      "team_not_found": "This team no longer exists in this tournament.",
      "division_not_found": "This division no longer exists.",
      "existing_not_found": "This record no longer exists — it may have been deleted.",
      "duplicate_target": "Another row already updates the same record.",
      "shirt_taken": "This shirt number is already taken in the team.",
      "db_error": "This row couldn't be saved. Check its values and try again."
    },
    "toast_done": "Imported {{count}} {{noun}}",
    "undo_done": "Import undone",
    "stop_title": "Stop importing?",
    "stop_message": "Nothing has been imported yet. Your choices for this file will be lost.",
    "stop_action": "Stop",
    "keep_going": "Keep going",
    "undo_confirm_title": "Undo this import?",
    "undo_confirm_message": "This puts everything back the way it was before the import.",
    "undo_confirm_action": "Undo import",
    "undo_detail_created": "Removes what it added ({{count}})",
    "undo_detail_updated": "Gives updated records their old details back ({{count}})",
    "undo_detail_field": "Removes the custom field “{{name}}”, if nothing else uses it",
    "undo_detail_later_edits": "Changes made after the import are kept.",
    "undo_failed": "Couldn't undo the import",
    "undo_blocked_title": "This import can't be undone",
    "undo_blocked_message": "Part of it is already in use. Change or remove these by hand instead:",
    "blocker_line": "{{text}}",
    "result_title": "{{count}} {{noun}} imported",
    "result_fields_note": "New custom fields: {{names}}. You'll find them on the configuration page, next to the fields you added yourself.",
    "download_skipped": "Download skipped rows ({{count}})",
    "download_failed": "Couldn't create the file",
    "skipped_file_suffix": "skipped rows",
    "reason_unticked": "Left out by you",
    "reason_existing": "Already in TorMatch (skipped)",
    "custom_fields_feature": "Custom fields",
    "target": {
      "full_name": "Full name",
      "first_name": "First name",
      "middle_name": "Middle name / prefix",
      "last_name": "Last name",
      "team": "Team",
      "team_name": "Name",
      "division": "Division",
      "shirt_number": "Shirt number",
      "date_of_birth": "Date of birth",
      "position": "Position",
      "email": "E-mail",
      "city": "City",
      "country": "Country",
      "dressing_room": "Dressing room",
      "is_present": "Present",
      "is_paid": "Paid",
      "role": "Role",
      "license_number": "License number",
      "active": "Active"
    },
    "position": {
      "rb": "Right back",
      "cb": "Centre back",
      "lb": "Left back",
      "rwb": "Right wing-back",
      "lwb": "Left wing-back",
      "cdm": "Defensive midfielder",
      "cm": "Central midfielder",
      "cam": "Attacking midfielder",
      "rm": "Right midfielder",
      "lm": "Left midfielder",
      "rw": "Right winger",
      "lw": "Left winger",
      "cf": "Centre forward",
      "st": "Striker"
    },
    "left_out_title": "Rows left out: {{count}}",
    "gaps_title": "Rows imported with gaps: {{count}}",
    "new_field_no_permission": "Only staff who can change the tournament's settings can add fields.",
    "uncertain": "We couldn't confirm the import. Check the list before you try again.",
    "uncertain_title": "Did the import go through?",
    "uncertain_desc": "The server didn't answer, so we can't tell whether your rows were saved. To avoid importing them twice, close this window and check the list first.",
    "feature_failed": "Couldn't switch on “{{field}}”",
    "also_feature_admin": "Keep “{{field}}” hidden until an admin switches it on"
  },
  "officiate": {
    "team_1": "Team 1",
    "team_2": "Team 2",
    "badge_live": "Live match editor",
    "badge_score": "Score entry",
    "decrease": "Decrease",
    "increase": "Increase",
    "submit_score": "Save score",
    "score_saved": "Score saved",
    "score_save_failed": "Couldn't save the score",
    "locked": "The result has been submitted. Ask the organizer if it needs changing.",
    "not_assigned": "You're not assigned to this match.",
    "no_permission": "Your official role can't enter scores for this match. Ask the organizer to enable it.",
    "not_an_official": "This account isn't an official of this tournament. Sign in with the account you were invited with, or ask the organizer to invite you.",
    "not_found": "Match not found.",
    "view_match": "View match",
    "banner_signed_in": "You're signed in as an official. Tap one of your matches to enter the score.",
    "sign_in": "Sign in",
    "switch_to_score": "Enter final score instead",
    "switch_to_live": "Open live editor",
    "shootout": "Penalty shootout",
    "add_shootout": "Add penalty shootout",
    "first_leg_title": "Result decided on the next match",
    "first_leg_message": "This is the first leg of a two-leg tie. The aggregate score across both legs will determine who advances.",
    "away_goals_decided": "{{name}} advances on away goals",
    "winner_on_penalties": "{{name}} wins on penalties",
    "must_win": "This match must produce a winner. Play extra time, record a penalty shootout, or award a decisive score.",
    "extra_time_hint": "Enter the score after extra time — extra-time goals count.",
    "open_your_space": "Open your space",
    "result_title": "Result",
    "status_label": "Match status",
    "must_win_aggregate": "This tie must produce a winner on aggregate. Record a penalty shootout or enter a decisive score.",
    "back_to_schedule": "Back to schedule",
    "banner_are_you": "Are you {{name}}? Sign in to enter results.",
    "banner_owner": "This is your schedule. Open Your space for to-dos and match actions.",
    "connection_notice": "This page needs a connection. For offline scoring, use the app.",
    "get_app": "Get the app"
  },
  "match_actions": {
    "go_live": "Go live",
    "continue_live": "Continue live",
    "go_live_subtitle": "Open the live editor",
    "open_editor": "Live match editor",
    "open_editor_subtitle": "Manage scores, events and period transitions in real time.",
    "enter_result": "Enter result",
    "enter_result_subtitle": "Submit the final score for this match",
    "edit_result": "Edit result",
    "edit_result_subtitle": "Adjust the entered result",
    "confirm_lineup": "Confirm lineup",
    "confirm_lineups": "Confirm lineups",
    "confirm_lineup_subtitle": "Publish the submitted lineup(s)",
    "submit_lineup": "Submit lineup",
    "submit_lineup_subtitle": "Make your lineup official for this match",
    "check_in": "Check in teams",
    "check_in_subtitle": "Mark which teams are present",
    "add_card": "Add card",
    "add_card_subtitle": "Record a yellow or red card",
    "file_incident": "File incident",
    "file_incident_subtitle": "Write a disciplinary report for this match",
    "more": "More actions",
    "load_failed": "Couldn't load your match actions.",
    "lineup_awaiting": "Submitted · awaiting confirmation",
    "lineups_awaiting": "{{count}} awaiting confirmation",
    "lineup_suspended_count": "{{count}} suspended player(s) in this lineup",
    "lineup_confirmed": "Lineup confirmed",
    "lineups_confirmed": "Lineups confirmed",
    "lineup_confirm_partial": "Not all lineups could be confirmed",
    "lineup_confirm_failed": "Could not confirm lineup",
    "lineups_none_awaiting": "No lineups yet",
    "reason": {
      "results_locked": "Results are closed.",
      "lineup_locked": "Lineup locked",
      "bye": "No match to play (bye)",
      "teams_unknown": "Teams not known yet",
      "first_wins_taken": "A result has already been entered",
      "not_kicked_off": "Not started yet",
      "starts_at": "Starts at {{time}}",
      "feature_off": "Not available in this tournament",
      "unavailable": "Not available right now",
      "too_late": "Too late to decline — contact the organiser",
      "match_started": "The match has started",
      "match_finished": "The match is finished",
      "not_assigned": "You're not assigned to this match",
      "side_unknown": "This team isn't known yet",
      "not_scheduled": "The match has no time yet",
      "postpone_unlocked": "Lock the schedule to postpone matches. Before the lock, use Change location / time.",
      "swap_two_leg": "Each team hosts one leg of a two-legged tie"
    },
    "kicker": "Your actions",
    "bar_label": "Match actions",
    "decline_assignment": "Decline match",
    "decline_assignment_subtitle": "Can't make it? Step down so the organiser can find a replacement",
    "live_editor": "Live editor",
    "add_foul": "Add foul",
    "add_foul_subtitle": "Record a foul",
    "add_ladder_step": "Warning or penalty",
    "add_ladder_step_subtitle": "Record a warning or a penalty step"
  },
  "match_report": {
    "title": "Match report",
    "checkin": "Check-in",
    "cards": "Cards",
    "incident": "Incident",
    "present": "Present",
    "absent": "Absent",
    "select_player": "Select player",
    "no_players": "No players found for this team.",
    "submit_incident": "Submit incident",
    "save_failed": "Could not save",
    "nothing_enabled": "No referee abilities are enabled for this match.",
    "card_yellow": "Yellow",
    "card_second_yellow": "2nd yellow",
    "card_red": "Red",
    "card_recorded": "Card recorded",
    "incident_type": "Incident type",
    "incident_type_hint": "e.g. misconduct, injury",
    "incident_note": "Note",
    "incident_note_hint": "Describe what happened",
    "incident_note_required": "A note is required.",
    "incident_filed": "Incident filed",
    "no_minute": "No minute",
    "minute_live": "Prefilled with the live match minute",
    "minute": "Minute (optional)",
    "suspended_title": "Suspended for this match",
    "suspension_check_failed": "Couldn't verify suspensions",
    "suspended": "Suspended",
    "team": "Team",
    "player": "Player",
    "card_type": "Card",
    "pick_team_first": "Pick a team first",
    "minute_hint": "Leave empty when you don’t know the minute",
    "record_card": "Record card",
    "recorded": "Recorded cards",
    "unknown_player": "Unknown player",
    "no_teams": "The teams for this match aren’t known yet.",
    "opens_at": "Opens at {{time}}",
    "fouls": "Fouls",
    "foul_type": "Foul",
    "record_foul": "Record foul",
    "foul_recorded": "Foul recorded",
    "sanction_duration": "Duration: {{duration}}",
    "official_name": "Name of the team official",
    "select_official": "Select team official"
  },
  "your_space": {
    "title": "Your space",
    "tab_home": "Home",
    "tab_assignments": "Assignments",
    "tab_matches": "Matches",
    "tab_team": "Team",
    "tab_lineups": "Lineups",
    "tab_standings": "Standings",
    "tab_announcements": "Announcements",
    "tab_discipline": "Discipline",
    "role_participant": "Participant",
    "switch_label": "Role",
    "switch_title": "Switch role or team",
    "todo_continue_live": "Continue live: {{x}}",
    "todo_result_vs": "Enter the result vs {{x}}",
    "todo_report": "Enter the result: {{x}}",
    "todo_checkin": "Check in the teams: {{x}}",
    "todo_confirm_lineups": "Confirm lineups: {{x}}",
    "todo_lineup": "Set your lineup for {{x}}",
    "todo_generic": "Open {{x}}",
    "todo_lineup_locks": "Locks at {{x}}",
    "todo_starts": "Starts at {{x}}",
    "todo_kicked_off": "Kicked off at {{x}}",
    "todo_count": "{{count}} to-dos",
    "todo_count_one": "1 to-do",
    "load_failed_title": "Couldn't load your space",
    "load_failed_body": "Check your connection and try again.",
    "no_role_title": "You're not part of this tournament",
    "no_role_body": "You no longer have a coach, player or official role here. You can still follow the tournament.",
    "view_tournament": "View tournament",
    "not_member": "You're not part of this tournament",
    "staff_not_member": "You manage this tournament, but you don't have a coach, player or official role in it.",
    "open_management": "Open management",
    "open": "Open your space",
    "card_signed_out_title": "Coach, player or official?",
    "card_signed_out_body": "Sign in to see your tasks",
    "card_sign_in": "Sign in",
    "card_multiple_roles": "You have multiple roles",
    "card_official": "You're an official in this tournament",
    "card_coach": "You're a coach in this tournament",
    "card_player": "You're a player in this tournament",
    "card_coach_of": "You're the coach of {{team}}",
    "card_player_of": "You play for {{team}}",
    "card_more_todos": "+{{count}} more to-dos",
    "card_next": "Next: {{match}}",
    "card_next_when": "{{x}}",
    "sign_in_title": "Sign in to see your space in {{name}}",
    "sign_in_title_generic": "Sign in to see your space",
    "sign_in_subtitle": "Your matches, to-dos and team for this tournament.",
    "player": {
      "suspended_title": "You're suspended",
      "suspended_body": "You miss your next {{count}} match(es).",
      "suspended_generic": "You can't play until the organizer clears the suspension.",
      "over_title": "Your tournament is over",
      "over_body": "See the final standings and results below.",
      "no_matches_title": "No matches scheduled yet",
      "no_matches_body": "Once the organizer plans your matches, the next one shows up here.",
      "all_matches": "All matches",
      "my_team": "My team",
      "you": "You",
      "my_stats": "My stats",
      "stats_failed": "Couldn't load your stats.",
      "team_page": "Team page",
      "team_page_hint": "Squad, matches and stats",
      "played_to_go": "{{played}} played · {{toGo}} to go",
      "coming_up": "Coming up",
      "vs": "vs {{name}}",
      "team_failed": "Couldn't load your team",
      "team_missing_title": "Your team isn't listed yet",
      "team_missing_body": "Once the organizer has placed your team, its squad shows up here."
    },
    "official": {
      "all_done_title": "All matches officiated",
      "all_done_body": "You have no open matches left in this tournament.",
      "assignments_failed": "Couldn't load your assignments",
      "assignments_stale": "Couldn't refresh your assignments. They may be out of date.",
      "no_assignments_title": "No matches assigned yet",
      "no_assignments_body": "No officiating assignments yet.",
      "no_upcoming_title": "No upcoming matches",
      "no_upcoming_body": "Matches you're assigned to will appear here.",
      "no_finished_title": "No finished matches yet",
      "no_finished_body": "Matches you've officiated will appear here.",
      "time_tbc": "Time to be confirmed",
      "with": "With",
      "match_actions": "Match actions",
      "todos": "To-dos",
      "see_all": "See all",
      "progress": "Progress",
      "played": "Played",
      "to_go": "To go",
      "total": "Total",
      "played_of": "{{played}} of {{total}} played",
      "today_title": "Your matches today",
      "today_none": "No matches for you today.",
      "next_on": "Next: {{x}}",
      "co_officials": "Co-officials",
      "crew_matches": "{{count}} matches",
      "crew_matches_one": "1 match",
      "schedule_title": "Your public schedule",
      "schedule_body": "Anyone with the link can see your matches. Share it with your co-officials or the teams.",
      "bookings_failed": "Couldn't load bookings",
      "bookings_empty_title": "No bookings yet",
      "bookings_empty_body": "Cards from your matches will appear here.",
      "under_review": "Under review"
    },
    "todo_title": "To do",
    "todo_more_setup": "{{count}} more setup tasks",
    "all_set_title": "You're all set",
    "all_set_body": "Nothing needs your attention right now.",
    "next_match": "Next match",
    "match_details": "Details",
    "squad_health": "Squad",
    "stat_setup": "Setup",
    "squad_load_failed": "Couldn't load the squad.",
    "squad_not_linked": "{{count}} player(s) not connected to a TorMatch account yet. Share the signup link so they can join themselves.",
    "squad_empty_coach": "Add players manually or share the signup link so they can join themselves.",
    "squad_empty_locked": "The tournament organizer hasn't enabled player management yet.",
    "share_link": "Share signup link",
    "signup_link_on": "Link is on: players can join",
    "signup_link_hint": "Players join themselves via a link",
    "team_page": "Team page",
    "coach_my_team": "My team",
    "coach_record": "{{w}}W · {{d}}D · {{l}}L",
    "coach_rank": "{{rank}} in {{group}}",
    "setup_title": "Team setup",
    "setup_add_players": "Add your players",
    "setup_players_count": "{{count}} added",
    "setup_players_count_capped": "{{count}} of {{cap}} added",
    "setup_shirts": "Assign shirt numbers",
    "setup_positions": "Set player positions",
    "setup_missing_count": "{{count}} still missing",
    "setup_share_link": "Share the signup link with your players",
    "setup_share_link_hint": "Players can add themselves via the link",
    "setup_connect": "Connect players to their accounts",
    "setup_connect_count": "{{count}} not connected yet",
    "setup_kit": "Set team kit",
    "setup_kit_hint": "No colors set yet",
    "team_details_title": "Team details",
    "team_details_failed": "Couldn't save the team details.",
    "discipline_title": "Cards & suspensions",
    "discipline_failed": "Cards and suspensions couldn't be loaded.",
    "player_add_title": "Add player",
    "player_edit_title": "Edit player",
    "player_added": "{{name}} added to the squad",
    "player_updated": "{{name}} updated",
    "player_save_failed": "Could not save. Please try again.",
    "remove_player_message": "{{name}} will be removed from the squad. You can add them back later.",
    "player_removed": "{{name}} removed from the squad",
    "player_remove_failed": "Couldn't remove the player",
    "leave_team": "Leave team",
    "leave_team_title": "Leave team?",
    "leave_team_message": "Are you sure you want to leave {{team}} as a player? You will no longer be part of this squad.",
    "leave_team_confirm": "Leave",
    "left_team": "You have left the team.",
    "leave_team_failed": "Couldn't leave the team",
    "lineup_badge_needed": "Lineup needed",
    "lineup_badge_draft": "Draft · not submitted",
    "lineup_status_none": "No lineup yet",
    "lineup_status_draft": "Draft · not submitted",
    "lineup_status_submitted": "Submitted",
    "lineup_status_awaiting": "Submitted · awaiting confirmation",
    "lineup_status_published": "Published",
    "lineup_hint_auto": "Submitting makes it official and shows it on the match page right away.",
    "lineup_hint_confirm": "Submitting makes it official. The organizer confirms it before it shows on the match page.",
    "lineup_hint_private": "Submitting makes it official for the organizer. It isn't shown publicly.",
    "lineup_set": "Set lineup",
    "lineup_edit_submit": "Edit & submit",
    "lineup_locks_in": "Locks in {{x}}",
    "duration_dh": "{{d}} d {{h}} h",
    "duration_hm": "{{h}} h {{m}} min",
    "duration_m": "{{m}} min",
    "lineup_withdraw": "Withdraw",
    "lineup_withdraw_title": "Withdraw this lineup?",
    "lineup_withdraw_message": "The lineup is removed from this match. You can set a new one until the lineup locks.",
    "lineup_withdrawn": "Lineup withdrawn",
    "lineup_withdraw_failed": "Couldn't withdraw the lineup",
    "lineups_matches_title": "Your matches",
    "lineups_no_matches": "You can submit a lineup once your matches are scheduled.",
    "lineups_not_used": "Lineups aren't used in this tournament.",
    "lineups_view_only": "You can view this team's lineups, but not change them.",
    "lineups_load_failed": "Couldn't load lineups",
    "lineups_suspended": "Suspended ({{count}}):",
    "divisions_yours": "Your divisions",
    "divisions_other": "Other divisions",
    "back_to_space": "Back to your space",
    "tab_availability": "Availability"
  },
  "app_nudge": {
    "title": "Get the app",
    "body": "Get reminders, offline scoring and live updates in the TorMatch app.",
    "scan": "Scan with your phone to open this page in the app.",
    "dismiss": "Dismiss"
  },
  "participant_announcements": {
    "load_failed": "Couldn't load announcements",
    "retry": "Try again",
    "empty_title": "No announcements yet",
    "empty_body": "Updates from the tournament organizer will appear here.",
    "unread": "Unread",
    "pinned": "Pinned",
    "read_more": "Read more",
    "show_less": "Show less",
    "see_all": "All"
  },
  "tournament_showcase": {
    "count": "{{count}} teams",
    "count_one": "1 team",
    "empty_title": "No showcase teams yet",
    "empty_body": "Teams from earlier editions appear here once the organizer adds them."
  },
  "match_toolbar": {
    "live_editor": "Live editor",
    "continue_live": "Continue live",
    "open_editor": "Open editor",
    "postpone": "Postpone",
    "options": "Options",
    "more_actions": "More actions",
    "manage_officials": "Manage officials",
    "change_location_time": "Change location / time",
    "open_on_schedule": "Open on schedule",
    "home": "Home",
    "away": "Away",
    "reason_bye": "A bye isn't played",
    "reason_teams_unknown": "Both teams must be known first",
    "reason_side_unknown": "This team isn't known yet",
    "reason_results_closed": "Results are closed for this division",
    "reason_started": "The match has already started",
    "reason_finished": "The match is finished",
    "reason_not_scheduled": "The match has no time yet",
    "reason_postpone_unlocked": "Lock the schedule to postpone matches. Before the lock, use Change location / time.",
    "lineup_home": "Set lineup · Home",
    "lineup_away": "Set lineup · Away"
  },
  "reschedule": {
    "title": "Reschedule match",
    "mode": {
      "delay": "Delay",
      "move": "Move",
      "park": "Postpone"
    },
    "reason": {
      "lock_to_delay": "Lock the schedule to delay matches. Before the lock, use Move.",
      "lock_to_park": "Lock the schedule to postpone matches with the time to follow.",
      "lock_to_postpone": "Lock the schedule to postpone matches. Before the lock, use Change location / time.",
      "no_time": "This match has no time yet, so there is nothing to delay. Use Move to give it one."
    },
    "reason_hint_unlocked": "Kept with the change. Teams are not notified while the schedule is unlocked.",
    "locked_tag": "Schedule locked",
    "planning_tag": "Planning",
    "no_time_yet": "No time yet",
    "delay_title": "Delay by",
    "move_title": "New time and field",
    "custom": "Custom",
    "cascade": {
      "label": "Later matches",
      "hint": "Absorbing lets the day's gaps take the delay; pushing keeps every later match in order."
    },
    "day": "Day",
    "pick_field": "Choose a field",
    "fields_overview": "Fields this day",
    "legend": {
      "free": "Free",
      "busy": "Match",
      "break": "Break / event",
      "closed": "Closed"
    },
    "no_fields_day": "No fields are open on this day yet.",
    "open_hours": "Open {{from}}–{{to}}",
    "free_slot": "Free on {{field}} from {{time}}",
    "current_slot": "Where it is now",
    "slot_refused": "This slot is not available.",
    "field_word": "Field",
    "field_added": "Field added",
    "field_add_failed": "The field could not be added.",
    "conflicts_title": "Conflicts ({{count}})",
    "conflicts_hint": "Advisory — you can still go ahead.",
    "conflict": {
      "team_double_booked": "{{team}} also plays {{other}} at that time",
      "rest_violation": "{{team}}: only {{gap}}′ rest next to {{other}} (needs {{required}}′)",
      "pitch_overlap": "Overlaps {{other}} on the field",
      "official_double_booked": "{{official}} is also officiating {{other}}",
      "other": "Clashes with {{other}}",
      "leg_order": "Out of order with the other leg of this tie ({{other}}): the second leg has to come after the first"
    },
    "a_team": "A team",
    "an_official": "An official",
    "confirm": {
      "delay": "Delay match",
      "move": "Move match"
    },
    "moved": "Moved — {{count}} match(es) changed",
    "match_not_found": "This match is not on the schedule any more.",
    "load_failed": "The schedule could not be loaded."
  },
  "match_progress": {
    "summary": "{{completed}} / {{total}} matches",
    "counted_rule": "Counts every match, including placement matches and second legs. Byes are not counted."
  },
  "manage_shell": {
    "view_tournament_site": "View Tournament Site"
  },
  "team_move": {
    "title": "Move to another division",
    "confirm": "Move team",
    "to_label": "New division",
    "from": "Now in {{division}}",
    "from_none": "Now without a division",
    "pick": "Choose a division",
    "checking": "Checking what the move does…",
    "travels": "{{players}} players, {{staff}} staff, the kit and the team's details move with it.",
    "quota_title": "Plan limit reached",
    "quota_body": "This division is full on your current plan. Upgrade to move more teams in.",
    "placed_title": "Already in the format",
    "placed_body": "The team is placed in {{groups}}. Moving takes it out; its {{matches}} matches there get an empty slot (to be decided).",
    "remove_toggle": "Take it out of these groups",
    "remove_toggle_desc": "Only groups and brackets that haven't started. Results are never changed.",
    "needs_format_role": "The team is placed in {{groups}}. Only someone who can edit the format can take it out.",
    "started_title": "Already started",
    "locked_title": "Format locked",
    "over_capacity": "This division already has {{count}} of {{max}} teams.",
    "moved": "Moved to {{division}}",
    "failed": "Couldn't move the team",
    "preview_failed": "Couldn't check what the move does"
  },
  "official_availability": {
    "title": "Availability",
    "subtitle": "Mark when you can't officiate. The organiser sees it when assigning officials.",
    "organiser_title": "Availability",
    "add": "Add unavailable time",
    "all_day": "All day",
    "date": "Date",
    "from": "From",
    "to": "Until",
    "note": "Note (optional)",
    "note_placeholder": "e.g. exam, away until 14:00",
    "invalid_window": "The end time must be after the start time.",
    "remove": "Remove",
    "empty_title": "No unavailable times",
    "empty_body": "You're available for every match. Add the times you can't officiate — the organiser sees them when assigning officials.",
    "organiser_empty_title": "Available all tournament",
    "organiser_empty_body": "This official hasn't marked any unavailable times. They can add them in their app; you can add them here for them.",
    "saved": "Availability saved",
    "save_failed": "Couldn't save the availability",
    "load_failed": "Couldn't load the availability",
    "locked_tournament_finished": "The tournament is over, so availability can no longer be changed.",
    "locked_tournament_archived": "The tournament is archived, so availability can no longer be changed.",
    "decline_window_hint": "You can decline an assignment until {{hours}} hours before kick-off.",
    "declined_title": "Declined matches",
    "decline_title": "Decline this match?",
    "decline_confirm": "Decline match",
    "decline_consequences_title": "What happens",
    "decline_consequence_crew": "You're taken off this match straight away.",
    "decline_consequence_notify": "The organiser is told and looks for a replacement.",
    "decline_consequence_undo": "Only the organiser can put you back on it.",
    "decline_reason_label": "Reason (optional)",
    "decline_reason_placeholder": "e.g. ill, travel delay",
    "decline_reason_hint": "The organiser sees this with the decline.",
    "declined_toast": "You declined the match. The organiser has been told.",
    "decline_failed": "Couldn't decline the match",
    "status_declined": "Declined",
    "status_replaced": "Replacement found",
    "status_needs_official": "Needs an official",
    "status_dismissed": "Dismissed",
    "declined_notice": "{{name}} declined this match",
    "an_official": "An official",
    "dismiss": "Dismiss",
    "dismiss_failed": "Couldn't dismiss",
    "assign_anyway_title": "Assign anyway?",
    "assign_anyway": "Assign anyway",
    "assign_anyway_message": "{{name}} marked this time unavailable ({{window}}).",
    "unavailable_window": "Unavailable {{window}}",
    "unavailable_days": "Unavailable {{count}}×",
    "declined_chip": "{{count}} declined",
    "needs_official_notice": "{{count}} match(es) need an official after a decline.",
    "open_schedule": "Open the officials schedule",
    "locked_generic": "Availability can no longer be changed for this tournament."
  },
  "platform_promo": {
    "aria": "TorMatch: run your own tournament",
    "eyebrow": "Your tournament here",
    "title": "Run your next tournament on TorMatch",
    "body_main": "Schedules, live scores, standings and a public site like this one. Set up in minutes, free to start.",
    "body_rail": "Schedules, live scores and a site like this one. Free to start.",
    "cta": "Create your tournament",
    "more": "See how it works",
    "mini_title": "Your tournament",
    "hide": "Hide this",
    "hide_hint": "Only organizers see this link. Upgrade this tournament to remove TorMatch banners for everyone."
  },
  "public_schedule": {
    "official_kicker": "Official schedule",
    "team_kicker": "Team schedule"
  },
  "live_editor": {
    "score_type": {
      "fg2": "2-pointer",
      "fg3": "3-pointer",
      "ft": "Free throw",
      "try": "Try",
      "conversion": "Conversion",
      "penalty_goal": "Penalty goal",
      "drop_goal": "Drop goal",
      "behind": "Behind",
      "point": "Point",
      "other": "Score"
    },
    "card": {
      "minor": "Minor penalty",
      "major": "Major penalty",
      "misconduct": "Misconduct",
      "other": "Penalty",
      "suspension": "2-minute suspension",
      "exclusion": "Exclusion",
      "technical": "Technical foul",
      "personal": "Personal foul"
    },
    "period": {
      "et_short": "ET",
      "ot_short": "OT"
    },
    "decider": {
      "overtime": "Overtime"
    },
    "start_decider": "Start {{name}}",
    "waiting_for_decider": "Waiting for {{name}}…",
    "time_left": "{{time}} left",
    "overtime_score_hint": "Enter the final score, overtime included.",
    "award": {
      "confirm_btn_shootout": "Start the shootout",
      "confirm_btn_overtime": "Start overtime",
      "option_overtime_desc": "Play {{minutes}} min of overtime to decide the winner.",
      "option_overtime_golden_desc": "Up to {{minutes}} min of overtime; the first score wins.",
      "option_shootout_desc": "Go to the {{name}} to decide the winner.",
      "option_forfeit": "Forfeit / no-show",
      "option_forfeit_desc": "A team forfeited or did not show up. Enter the awarded score.",
      "forfeit_hint": "Saved as a forfeit: the recorded events are replaced by this score.",
      "forfeit_needs_winner": "A forfeit needs a winner: give one team the higher score.",
      "reset_events_warning": "Awarding a result replaces this match's recorded {{noun}}.",
      "blocked_reason": "This match must produce a winner. Play the next tie-breaker or award a decisive score.",
      "tie_desc": "A level result is not allowed here. Choose how to decide it."
    },
    "match_format": {
      "deciders": "Tie-breakers (in order)",
      "deciders_hint": "Used when a match must have a winner and ends level, in this order. Only what the sport allows is listed."
    },
    "discipline_errors": {
      "cards_not_enabled": "This sport doesn’t use cards.",
      "card_type_not_allowed": "This sanction isn’t used in this sport.",
      "fouls_not_enabled": "This sport doesn’t count fouls.",
      "foul_type_not_allowed": "This type of foul isn’t used in this sport.",
      "sanction_person_not_allowed": "This sanction can’t be given to this person.",
      "generated_incident_not_applicable": "This automatic sanction no longer applies to this match.",
      "ladder_not_found": "This sport has no such discipline ladder.",
      "ladder_step_not_allowed": "That step is not part of this ladder."
    },
    "foul": {
      "button": "Foul",
      "add": "Add foul",
      "personal": "Personal foul",
      "technical": "Technical foul",
      "flagrant": "Unsportsmanlike foul",
      "disqualifying": "Disqualifying foul",
      "foul": "Foul",
      "penalty_foul": "Penalty foul"
    },
    "sanction": {
      "red_20": "20-minute red",
      "game_misconduct": "Game misconduct",
      "match_penalty": "Match penalty",
      "violent_action": "Violent action",
      "expulsion": "Expulsion"
    },
    "sanction_person": {
      "label": "Given to",
      "player": "Player",
      "official": "Team official",
      "team": "Team (bench)"
    },
    "sanction_duration_minutes": "Duration (minutes)",
    "sanction_duration_seconds": "Duration (seconds)",
    "discipline_board": {
      "title": "Penalty board",
      "team_fouls": "Team fouls",
      "bonus": "Bonus",
      "auto": "Auto",
      "ends_on_goal": "Ends early on a goal against",
      "sent_off": "Sent off",
      "open": "Running",
      "can_return": "Can return",
      "replacement": "Replacement allowed",
      "fouled_out": "Fouled out",
      "disqualified": "Disqualified",
      "bench": "Bench",
      "official": "Team official",
      "player": "Player",
      "strength": "{{home}} v {{away}}",
      "strength_aria": "Strength: {{home}} against {{away}}",
      "fouls_count": "{{count}} fouls",
      "can_return_toast": "{{name}} can return ({{sanction}})",
      "released_toast": "Goal: {{sanction}} for {{name}} ends early",
      "undo_goal": "Undo goal",
      "fouls_count_one": "{{count}} foul"
    },
    "race": {
      "start_match": "Start match",
      "pad_not_started": "Start the match to score points",
      "pad_no_permission": "You can't score this match",
      "pad_finished": "The match is finished",
      "first_server_title": "Who serves first?",
      "decided_title": "Match won by {{name}} · {{score}}",
      "decided_hint": "Finish the match, or undo the last point.",
      "sending": "Sending {{n}}…",
      "segment_end_toast": "{{unit}} to {{name}} · {{score}}",
      "match_end_toast": "Match won by {{name}} · {{won}}",
      "write_failed": "Couldn't save the score",
      "finish_not_decided": "Nobody has won yet: keep scoring, or end the match early (retired or awarded).",
      "finish_confirm_title": "Finish the match?",
      "finish_confirm_message": "{{name}} wins {{score}}. The result goes to the standings and the bracket.",
      "finish_match": "Finish match",
      "walkover_confirm_title": "Finish as a walkover?",
      "walkover_confirm_message": "{{name}} wins by walkover ({{score}}). The score played so far is replaced by the walkover score.",
      "finish_walkover": "Finish as walkover",
      "serve_tracking": "Serve tracking",
      "serve_on": "On",
      "serve_off": "Off",
      "tools": "Match tools",
      "swap_ends": "Swap ends",
      "change_server": "Change server",
      "correct_score": "Correct a score",
      "correct_title": "Correct a score",
      "correct_won_by": "Won by",
      "correct_hint_closed": "This replaces the score recorded for it. Later ones keep their score.",
      "correct_hint_open": "This closes the one in play with this score.",
      "correct_save": "Save correction",
      "end_early": "End early",
      "discipline": "Discipline",
      "ladder_record": "Record",
      "ladder_player_optional": "Choose a player (optional)",
      "ladder_step": "Step",
      "ladder_default_hint": "{{name}} loses the match by default. You then finish it as a walkover.",
      "feed_discipline": "Discipline",
      "feed_generated": "Awarded to {{name}}",
      "feed_in_play": "In play",
      "feed_won_by": "Won by {{name}}",
      "break": "Break",
      "resume": "Resume"
    }
  },
  "scoreline": {
    "pens": "pens",
    "ot": "OT",
    "aet": "aet",
    "agg": "agg",
    "forfeit": "w/o"
  },
  "segment_kit": {
    "unit_n": {
      "set": "Set {{n}}",
      "game": "Game {{n}}",
      "point": "Point {{n}}",
      "map": "Map {{n}}",
      "leg": "Leg {{n}}",
      "frame": "Frame {{n}}",
      "rack": "Rack {{n}}",
      "round": "Round {{n}}"
    },
    "pad": {
      "to": {
        "point": "Point to {{name}}",
        "game": "Game to {{name}}",
        "set": "Set to {{name}}",
        "leg": "Leg to {{name}}",
        "frame": "Frame to {{name}}",
        "rack": "Rack to {{name}}",
        "map": "Map to {{name}}",
        "round": "Round to {{name}}"
      },
      "undo": "Undo",
      "history": "Last points",
      "no_history": "No points yet",
      "keyboard_hint": "← → to score · Backspace to undo"
    },
    "status": {
      "live": "Live",
      "final": "Final",
      "upcoming": "Upcoming",
      "awaiting_finish": "Decided · awaiting finish"
    },
    "retired": "ret.",
    "best_of": "Best of {{n}}",
    "first_to": "First to {{n}}",
    "race": {
      "tiebreak": "Tiebreak",
      "super_tiebreak": "Match tiebreak",
      "golden_point": "Golden point",
      "deuce": "Deuce",
      "advantage": "Advantage",
      "advantage_short": "Ad",
      "set_point": "Set point",
      "match_point": "Match point",
      "serve": "Serving"
    },
    "timeline": {
      "progression": "Progression"
    }
  },
  "match_score": {
    "segment_server_errors": {
      "kind_not_for_sport": "This sport isn’t scored point by point.",
      "invalid_race_event": "This point can’t be added: the score has moved on. Refresh and try again.",
      "race_decided": "The match is already decided. Finish it or undo the last point.",
      "retired_side_required": "Choose who retired.",
      "results_exist": "Results are already recorded, so you can’t switch between a single score and sets. Reset those results first.",
      "invalid_levels": "This match format can’t be played. Check best of, targets and tiebreaks.",
      "golden_set_required": "The tie is level on match wins. Record the golden set or award the tie."
    }
  },
  "segment_entry": {
    "ending_label": "How it ended",
    "ending": {
      "played": "Played",
      "retired": "Retired",
      "walkover": "Walkover"
    },
    "walkover_to": "Walkover to",
    "walkover_hint": "The winner gets the {{n}} they needed; the result shows as w/o.",
    "who_retired": "Who retired?",
    "retired_hint": "The units played stand. The last row is the one in play at retirement: leave it empty if it hadn't started.",
    "rows_label": "Result by unit",
    "side_1": "Side 1",
    "side_2": "Side 2",
    "at_retirement": "at retirement",
    "optional_score": "score (optional)",
    "remove_row": "Remove the last row",
    "golden_set": "Golden set",
    "golden_hint": "The tie is level 1–1 in matches: the golden set decides who goes through.",
    "row_label": "{{unit}} {{n}}",
    "result": "Result",
    "summary_walkover": "walkover to {{name}}",
    "summary_retired": "{{name}} retired",
    "summary_winner": "won by {{name}}",
    "summary_golden": "{{name}} goes through on the golden set",
    "sets_only_notice": "Only the final score is saved, so tie-breakers on smaller units (games, points) leave this match out.",
    "add": {
      "set": "Add set",
      "game": "Add game",
      "point": "Add point",
      "map": "Add map",
      "leg": "Add leg",
      "frame": "Add frame",
      "rack": "Add rack",
      "round": "Add round"
    },
    "sets_only": {
      "set": "Only enter the sets won",
      "game": "Only enter the games won",
      "point": "Only enter the points won",
      "map": "Only enter the maps won",
      "leg": "Only enter the legs won",
      "frame": "Only enter the frames won",
      "rack": "Only enter the racks won",
      "round": "Only enter the rounds won"
    },
    "unit_word": {
      "set": "set",
      "game": "game",
      "point": "point",
      "map": "map",
      "leg": "leg",
      "frame": "frame",
      "rack": "rack",
      "round": "round"
    },
    "error": {
      "negative": "Scores can't be negative.",
      "segment_incomplete": "Not finished yet: the {{unit}} goes to {{target}}.",
      "segment_incomplete_winner": "Pick who won it.",
      "over_target": "Too high: it ends as soon as someone reaches {{target}} with the lead needed.",
      "over_target_score": "A side wins at most {{target}}.",
      "win_by_not_met": "Needs a lead of {{win_by}}.",
      "tiebreak_missing": "At {{at}} a tiebreak decides: enter its score.",
      "tiebreak_invalid": "The tiebreak score doesn't add up (first to {{target}}, a lead of 2).",
      "tiebreak_not_here": "Only a set decided at the tiebreak score has a tiebreak.",
      "cap_exceeded": "Can't go past {{cap}}.",
      "after_decided": "The match was already decided: remove this one.",
      "not_decided": "Nobody has won yet: add the next {{unit}}, or mark the match upcoming.",
      "not_decided_score": "Nobody has won yet: one side needs more, or mark the match upcoming.",
      "too_many_segments": "At most {{max}}.",
      "deciding_mode_super_tiebreak": "The deciding set is a match tiebreak: enter its points.",
      "deciding_mode_normal": "Only the deciding set is a match tiebreak.",
      "golden_not_allowed": "A golden set is only played when the tie is level.",
      "retired_side": "Pick who retired.",
      "walkover_winner": "Pick who gets the walkover.",
      "golden_missing": "The tie is level 1–1: enter the golden set."
    },
    "award": {
      "ended_blocked": "Not decided yet: enter the result instead.",
      "awarded_desc": "Enter the result unit by unit.",
      "retired_desc": "Keep the units played; the opponent wins.",
      "walkover_desc": "No play: the winner gets every unit needed (w/o)."
    }
  },
  "match_format": {
    "title": "Match format",
    "hint": "How a match is won in this division. Preset by the sport; change it any time before results are in.",
    "saved": "Match format saved",
    "save_failed": "Couldn't save the match format",
    "results_exist": "This division already has results, so its result model can't change. Pick a format of the same kind.",
    "length_notice": "Saving also updates the planned length of this division's matches.",
    "switch_to_segments": "Results will be entered unit by unit from now on. Only possible while the division has no results.",
    "switch_to_single": "Results will be a single score again. Only possible while the division has no results.",
    "expected_length": "≈ {{minutes}} min per match",
    "serve_tracking": "Track the serve",
    "serve_tracking_hint": "The umpire picks the first server; TorMatch follows the serve from there. Off by default.",
    "minutes_per": {
      "set": "Minutes per set",
      "game": "Minutes per game",
      "point": "Minutes per point",
      "map": "Minutes per map",
      "leg": "Minutes per leg",
      "frame": "Minutes per frame",
      "rack": "Minutes per rack",
      "round": "Minutes per round"
    },
    "two_legs_golden_set": "At 1–1 in matches over two legs, a golden set on the return leg decides the tie.",
    "setup_hint": "Matches: {{format}}. Change it under Configure → Match format.",
    "no_clock_title": "No clock",
    "no_clock_hint": "This sport plays to a score, not to time: set the match format instead.",
    "custom": {
      "label": "Custom",
      "best_of": {
        "set": "Best of (number of sets)",
        "game": "Best of (number of games)",
        "point": "Best of (number of points)",
        "map": "Best of (number of maps)",
        "leg": "Best of (number of legs)",
        "frame": "Best of (number of frames)",
        "rack": "Best of (number of racks)",
        "round": "Best of (number of rounds)"
      },
      "first_to": {
        "set": "Sets to win",
        "game": "Games to win",
        "point": "Points to win",
        "map": "Maps to win",
        "leg": "Legs to win",
        "frame": "Frames to win",
        "rack": "Racks to win",
        "round": "Rounds to win"
      },
      "inner_target": {
        "set": "Sets to win a unit",
        "game": "Games to win a unit",
        "point": "Points to win a unit",
        "map": "Maps to win a unit",
        "leg": "Legs to win a unit",
        "frame": "Frames to win a unit",
        "rack": "Racks to win a unit",
        "round": "Rounds to win a unit"
      },
      "win_by_2": "Win by 2",
      "cap": "Cap (the next one wins at)",
      "tiebreak": "Tiebreak",
      "tiebreak_at": "at",
      "golden_point": "Golden point at deuce",
      "deciding": {
        "set": "Deciding set",
        "game": "Deciding game",
        "point": "Deciding point",
        "map": "Deciding map",
        "leg": "Deciding leg",
        "frame": "Deciding frame",
        "rack": "Deciding rack",
        "round": "Deciding round"
      },
      "deciding_normal": "Normal",
      "deciding_target": {
        "set": "Shorter set",
        "game": "Shorter game",
        "point": "Shorter point",
        "map": "Shorter map",
        "leg": "Shorter leg",
        "frame": "Shorter frame",
        "rack": "Shorter rack",
        "round": "Shorter round"
      },
      "deciding_to": "to"
    },
    "desc": {
      "single_score": "Single score",
      "best_of": {
        "set": "Best of {{n}} sets",
        "game": "Best of {{n}} games",
        "point": "Best of {{n}} points",
        "map": "Best of {{n}} maps",
        "leg": "Best of {{n}} legs",
        "frame": "Best of {{n}} frames",
        "rack": "Best of {{n}} racks",
        "round": "Best of {{n}} rounds"
      },
      "first_to": {
        "set": "First to {{n}} sets",
        "game": "First to {{n}} games",
        "point": "First to {{n}} points",
        "map": "First to {{n}} maps",
        "leg": "First to {{n}} legs",
        "frame": "First to {{n}} frames",
        "rack": "First to {{n}} racks",
        "round": "First to {{n}} rounds"
      },
      "inner_to": {
        "set": "sets to {{n}}",
        "game": "games to {{n}}",
        "point": "points to {{n}}",
        "map": "maps to {{n}}",
        "leg": "legs to {{n}}",
        "frame": "frames to {{n}}",
        "rack": "racks to {{n}}",
        "round": "rounds to {{n}}"
      },
      "cap": "cap {{n}}",
      "win_by_1": "no 2-point lead",
      "tiebreak_at": "tiebreak at {{at}}",
      "super_tiebreak": "match tiebreak to {{n}}",
      "deciding_to": {
        "set": "deciding set to {{n}}",
        "game": "deciding game to {{n}}",
        "point": "deciding point to {{n}}",
        "map": "deciding map to {{n}}",
        "leg": "deciding leg to {{n}}",
        "frame": "deciding frame to {{n}}",
        "rack": "deciding rack to {{n}}",
        "round": "deciding round to {{n}}"
      },
      "golden_point": "golden point",
      "single": {
        "set": "1 set",
        "game": "1 game",
        "point": "1 point",
        "map": "1 map",
        "leg": "1 leg",
        "frame": "1 frame",
        "rack": "1 rack",
        "round": "1 round"
      }
    },
    "formats": {
      "bo3_stb": "Best of 3 · match tiebreak",
      "bo3": "Best of 3 sets",
      "one_set": "One set",
      "pro_set_9": "Pro set to 9",
      "bo5": "Best of 5",
      "bo3_stb_gp": "Best of 3 · match tiebreak · golden point",
      "bo3_gp": "Best of 3 · golden point",
      "one_set_21": "One set to 21",
      "one_game": "One game",
      "bo7": "Best of 7",
      "one_game_15": "One game to 15",
      "legs_bo5": "Best of 5 legs",
      "legs_bo9": "Best of 9 legs",
      "sets_bo3_legs3": "Best of 3 sets of legs",
      "race_7": "Race to 7",
      "race_5": "Race to 5",
      "race_9": "Race to 9",
      "single": "Single score",
      "maps_bo3": "Best of 3 maps",
      "maps_bo5": "Best of 5 maps"
    },
    "sport_change": {
      "to_segments": "Results will be entered set by set ({{format}}).",
      "to_scored": "Results will be a single score again.",
      "refused_with_results": "Not possible once a division has results."
    }
  },
  "manage_save": {
    "stripped": "{{fields}} not saved: these can't change while the tournament is running.",
    "denied": "{{fields}} not saved: your role can't change these.",
    "field": {
      "name": "name",
      "subtitle": "subtitle",
      "description": "description",
      "logo": "logo",
      "cover": "cover image",
      "published": "published status",
      "dates": "dates",
      "venue": "venue",
      "sport": "sport",
      "other": "other settings"
    }
  },
  "breakdown": {
    "total": "Total",
    "ht": "HT",
    "ft": "FT",
    "aet": "AET",
    "team": "Team",
    "col": {
      "q": "Q{{n}}",
      "h": "H{{n}}",
      "p": "P{{n}}",
      "et": "ET{{n}}"
    }
  },
  "period_entry": {
    "add_quarters": "Add quarter scores",
    "add_periods": "Add period scores",
    "title_quarters": "Quarter scores",
    "title_periods": "Period scores",
    "hint": "Optional. The totals fill in the final score.",
    "add_overtime": "Add overtime",
    "add_extra_time": "Add extra time period",
    "stale": "These quarter scores no longer add up to the score and will be removed when you save.",
    "must_win": "This match needs a winner. Add the overtime score.",
    "error": {
      "incomplete": "Enter both scores for {{period}}.",
      "negative": "{{period}}: enter whole numbers of 0 or more.",
      "bad_key": "{{period}} isn't part of this match's rules.",
      "order": "Enter the periods in order, without gaps.",
      "sum_mismatch": "The quarters add up to {{a}}–{{b}}, but the score is {{c}}–{{d}}."
    }
  },
  "match_rules": {
    "title": "Match rules",
    "hint": "How a match is played and decided. Every other screen shows these rules and links here.",
    "saved": "Match rules saved",
    "save_failed": "Couldn't save the match rules",
    "scope": {
      "all": "All divisions",
      "division": "This division",
      "aria": "Which rules"
    },
    "override": {
      "own": "This division has its own rules",
      "inherits": "Uses the tournament rules",
      "inherits_hint": "This division plays by the rules of all divisions. Set rules for this division to change them only here.",
      "set": "Set rules for this division",
      "new": "New rules for this division: save to keep them",
      "clear": "Use the tournament rules",
      "clear_title": "Use the tournament rules?",
      "clear_message": "{{division}} drops its own match rules and plays by the rules of all divisions again.",
      "cleared": "This division uses the tournament rules again"
    },
    "section": {
      "preset": "Preset",
      "play": "How a match is played",
      "level": "When it's level",
      "scoring": "Scoring"
    },
    "preset": {
      "custom": "Custom",
      "custom_hint": "Your own rules",
      "custom_based_on": "Custom · based on {{name}}",
      "deviations_note": "The preset stays selected: only what happens when it's level differs.",
      "beach_pairs": "Beach is usually played in pairs (Settings → Participants).",
      "beach_pairs_short": "Beach is usually played in pairs.",
      "beach_pairs_link": "Set up pairs in Participants",
      "outdated": "This preset has been updated since these rules were set. Your matches keep the rules as they are.",
      "update_latest": "Update to the latest preset"
    },
    "play": {
      "periods": "Periods",
      "minutes_aria": "Minutes per period",
      "total": "Playing time: {{minutes}} min",
      "countdown": "The clock counts down.",
      "no_clock": "No clock: a match is played to a result.",
      "name_3": "periods"
    },
    "level": {
      "draws": "Draws in group matches",
      "draws_on": "A level group match ends in a draw.",
      "draws_off": "A level group match is decided like a knockout match.",
      "chain": "If a knockout match is level",
      "chain_hint": "Played in this order until there is a winner.",
      "et_minutes_aria": "Minutes per extra-time period",
      "ot_minutes_aria": "Overtime minutes",
      "golden": "Golden score: the first score wins",
      "repeat": "Repeat overtime while level",
      "kicks": "Kicks per side",
      "sudden_death": "Sudden death after that",
      "no_decider": "No decider",
      "no_draws_short": "no draws in groups",
      "always_winner": "No draws: a match always has a winner.",
      "always_winner_short": "Always a winner",
      "kicks_named": "{{name}}: attempts per side",
      "repeat_named": "Play another {{name}} period while level"
    },
    "decider": {
      "extra_time": "Extra time",
      "overtime": "Overtime",
      "shootout": "Penalty shootout",
      "golden_segment": "Golden set",
      "replay": "Replay",
      "coin": "Coin toss"
    },
    "sum": {
      "periods": "{{count}} × {{minutes}} min",
      "named_minutes": "{{name}} {{minutes}} min",
      "named_periods": "{{name}} {{count}} × {{minutes}}",
      "no_clock": "No clock",
      "extra_time": "Extra time {{count}} × {{minutes}}",
      "overtime": "Overtime {{minutes}} min",
      "overtime_untimed": "Overtime",
      "shootout": "Penalties",
      "golden_segment": "Golden set",
      "replay": "Replay",
      "coin": "Coin toss"
    },
    "deviation": {
      "extra_time_on": "extra time {{count}} × {{minutes}}",
      "extra_time_off": "no extra time",
      "overtime_on": "overtime {{minutes}} min",
      "overtime_off": "no overtime",
      "shootout_on": "with {{name}}",
      "shootout_off": "no {{name}}",
      "draws_on": "draws allowed",
      "draws_off": "no draws",
      "timeouts_on": "timeouts on",
      "timeouts_off": "no timeouts"
    },
    "scoring": {
      "points_aria": "Points for {{name}}",
      "sin_bin": "Sin bin: {{minutes}} min.",
      "discipline_link": "Discipline"
    },
    "score_type": {
      "goal": "Goal",
      "fg2": "2-pointer",
      "fg3": "3-pointer",
      "ft": "Free throw",
      "try": "Try",
      "conversion": "Conversion",
      "penalty_goal": "Penalty goal",
      "drop_goal": "Drop goal"
    },
    "slot": {
      "offer": "Planned slot is {{slot}} min; a match now takes about {{minutes}} min.",
      "update": "Update slot to {{minutes}} min",
      "updated": "Planned slot updated to {{minutes}} min",
      "update_failed": "Couldn't update the planned slot"
    },
    "summary": {
      "label": "Match rules",
      "if_level": "If level",
      "change": "Change",
      "this_match": "This match"
    },
    "lmm": {
      "step_title": "Match rules",
      "step_desc": "Periods, extra time and shootouts are set once, in Match rules.",
      "section_title": "Matches are played as",
      "hint": "Live matches follow these rules. Change them in Match rules (Format → Configure).",
      "step_label": "Match rules",
      "live_title": "For live scoring",
      "timeouts_hint": "Adds a timeout button to the live editor.",
      "live_all_divisions": "Saved to Match rules for every division that follows them."
    },
    "sched": {
      "playing_time": "Playing time",
      "playing_time_hint": "Periods × minutes, as the live clock plays them. Saved to Match rules.",
      "part_playing_time_hint": "Changing it gives this division its own match rules.",
      "slot": "Planned slot",
      "slot_hint": "Time the schedule reserves per match, breaks included.",
      "part_slot": "Planned slot",
      "slot_suggestion": "Playing time plus breaks is about {{minutes}} min.",
      "use_slot": "Use {{minutes}} min",
      "estimate": "≈ {{minutes}} min per match",
      "estimate_hint": "The schedule sizes each match from the format and the minutes per set (or map) in Match rules.",
      "slot_per_division": "Planned slot per division"
    },
    "setup": {
      "if_level": "If level",
      "if_level_hint": "What decides a level knockout match, in this order. Saved to Match rules.",
      "save_to": "Where to save",
      "only_division": "Only this division",
      "if_level_hint_all": "What decides a level knockout match, in this order. Saved to Match rules (all divisions).",
      "if_level_hint_own": "What decides a level knockout match, in this order. Saved to this division’s match rules."
    },
    "standings": {
      "offer": "{{name}} points are {{points}} in the standings.",
      "use": "Use them"
    },
    "structure": {
      "note": "Only this match. The default for every match is the division's match rules.",
      "default_label": "Default"
    },
    "sport_change": {
      "edit_hint": "Changing the sport applies the new sport's default match rules (scoring, draws, periods) to the whole tournament. Check them in Match rules afterwards.",
      "notice": "The match rules now follow the {{sport}} defaults. Check how matches are played.",
      "open": "Open Match rules",
      "reset_warning": "Divisions with their own match rules ({{divisions}}) are reset to the new sport’s defaults. A division with results keeps its rules.",
      "divisions_reset": "Reset to the new defaults: {{divisions}}.",
      "divisions_kept": "Kept their own rules because results are recorded: {{divisions}}."
    },
    "create": {
      "variants_hint": "Variants (Sevens, Beach, best of 3…) are picked in Match rules after creating."
    },
    "locked_reach": "Read only: these rules also apply to {{divisions}}, whose format is locked.",
    "own_divisions": {
      "one": "{{divisions}} keeps its own rules, so changes here don’t reach it.",
      "many": "{{count}} divisions keep their own rules ({{divisions}}), so changes here don’t reach them.",
      "apply": "Use for all divisions",
      "apply_title": "Use these rules for all divisions?",
      "apply_message": "{{divisions}} will drop their own rules and follow the rules of all divisions.",
      "applied": "All divisions now use the same rules"
    },
    "prompt": {
      "title": "Check how matches are played",
      "card_hint": "These are the defaults for this sport. Confirm them, or change what differs and save.",
      "confirm": "Looks right",
      "confirmed": "Match rules confirmed",
      "more": "More options",
      "lead": {
        "format": "Before you build groups and brackets: are these the {{sport}} rules you play by?",
        "knockout": "Knockout matches follow these {{sport}} rules. Do they match your tournament?",
        "schedule": "The schedule sizes each match from these {{sport}} rules. Are they right?",
        "live": "Live matches are scored by these {{sport}} rules. Are they right?",
        "result": "Results are checked against these {{sport}} rules. Are they right?",
        "result_format": "Results are checked against this {{sport}} format. Is it the one you play?",
        "sport": "The match rules now follow the {{sport}} defaults. Are they right?"
      }
    },
    "dialog": {
      "lead": "Saved changes apply to every match these rules cover. Results already entered stay as they are."
    }
  },
  "email_subscriptions": {
    "title": "Newsletters",
    "intro": "Pick the newsletters you'd like to get from TorMatch. Changes are saved automatically.",
    "sent_to": "Sent to {{email}}",
    "age_senior": "Senior",
    "badge_for_organizers": "For organizers",
    "saving": "Saving…",
    "saved": "Saved",
    "save_failed": "Couldn't save your email preferences. Please try again.",
    "load_failed": "Couldn't load your email preferences",
    "load_failed_desc": "Something went wrong on our side. Please try again in a moment.",
    "retry": "Try again",
    "empty": "There are no newsletters for your account right now.",
    "footnote": "Account and tournament emails (invitations, match updates) are not affected.",
    "facets": {
      "toggle": "Which tournaments?",
      "hint": "Choose the age classes and genders you care about — we'll only recommend tournaments that match.",
      "age_classes": "Age classes",
      "genders": "Gender",
      "all_age_classes": "All age classes",
      "all_genders": "All genders",
      "suggested": "Your teams play in {{age_classes}}",
      "only_these": "Only these"
    },
    "unsubscribe_all": {
      "link": "Unsubscribe from all marketing emails",
      "confirm_title": "Unsubscribe from all newsletters?",
      "confirm_body": "You'll stop receiving every newsletter from TorMatch. You can resubscribe at any time.",
      "confirm_cta": "Unsubscribe from all",
      "cancel": "Keep my newsletters"
    },
    "banner": {
      "title": "You won't receive any newsletters",
      "body": "You've unsubscribed from all marketing emails. Resubscribe to choose the newsletters you'd like again.",
      "cta": "Resubscribe"
    }
  },
  "seo_pages": {
    "default_title": "Find Tournaments & Organize Your Own | TorMatch",
    "default_description": "Find tournaments for your team or run your own on TorMatch — registration, scheduling, live scores, standings and a public tournament website in one place.",
    "pricing_title": "Pricing — One Payment Per Tournament | TorMatch",
    "pricing_description": "No subscription and nothing to renew. Answer three questions and see exactly which plan your tournament needs and what it costs — from free to unlimited.",
    "contact_title": "Contact TorMatch — Get in Touch",
    "contact_description": "Questions, business enquiries or feedback about TorMatch? Send us a message and our team will get back to you.",
    "docs_title": "TorMatch Docs — Guides & tutorials for tournament organizers",
    "docs_description": "Step-by-step guides and tutorials for running tournaments on TorMatch: setup, teams, formats, scheduling, live results and the mobile app.",
    "docs_search_title": "Search — TorMatch Docs",
    "docs_search_description": "Search the TorMatch guides and tutorials.",
    "features_title": "Tournament Management Software — Run Any Tournament | TorMatch",
    "features_description": "One platform to run any tournament — registration, brackets, scheduling, live scoring and a public website. Every feature is opt-in, from 16 teams to 1,000.",
    "friendly_title": "Friendly match: {{host}}",
    "friendly_description": "Friendly match hosted by {{host}} on {{date}}{{where}}. View the match details on TorMatch.",
    "friendly_where": " at {{place}}",
    "register_title": "Register for {{name}}",
    "register_description": "Register your team for {{name}}{{where}} on TorMatch.",
    "tournament": {
      "where": " in {{city}}",
      "when": " ({{dates}})",
      "overview": "{{name}}{{where}}{{when}}: teams, match schedule, live scores, results and standings on TorMatch.",
      "schedule": "Match schedule, live scores, results and standings for {{name}}{{where}}{{when}}.",
      "standings": "Standings, group tables and knockout brackets of {{name}}{{where}}{{when}}.",
      "gallery": "Photos and videos from {{name}}{{where}}{{when}}.",
      "posts": "News, updates and match reports from {{name}}{{where}}.",
      "rules": "Official rules and regulations of {{name}}{{where}}{{when}}.",
      "venues": "Venues of {{name}}{{where}}{{when}}: addresses, directions, pitches and the matches played at each.",
      "venue": "Address, directions, pitches and match schedule at this venue of {{name}}{{when}}.",
      "match": "Live score, match events and lineups from {{name}}{{where}}.",
      "referees": "The referees and officials of {{name}} — open any official to see their match schedule.",
      "showcase": "Titleholders, past winners and past participants of {{name}}{{where}}.",
      "referee": "Referee match schedule for {{name}}{{where}}{{when}}.",
      "team": "Team match schedule, results and live scores for {{name}}{{where}}{{when}}."
    }
  }
}
