{
  "account.device_unknown": "Unknown device",
  "account.entitlement.active_until": "Active until {date}",
  "account.entitlement.lifetime": "Lifetime access",
  "account.entitlement.subscription": "Subscription",
  "account.entitlement.trial": "Trial",
  "account.entitlement.unavailable": "Access details unavailable",
  "account.entitlement.until": "{noun} until {date}",
  "account.error.display_name_not_allowed": "That display name is not available. Please choose another.",
  "account.error.handle_not_allowed": "That handle is not available. Please choose another.",
  "account.error.handle_taken": "That handle is already taken. Try another.",
  "account.not_invited": "Vamoto is invite-only during testing. {who} has no account yet. Sign in with the Google account you used on your invite link, or ask for an invite at support@vamoto.app.",
  "account.not_invited_who": "That address",
  "account.provider.apple": "Apple",
  "account.provider.email": "Email",
  "account.provider.github": "GitHub",
  "account.provider.google": "Google",
  "account.provider.unknown": "Unknown",
  "account.session_meta": "{platform} · last seen {date}",
  "account.storage.almost_full": "Almost full",
  "account.storage.full": "Storage full: new rides sync without their track",
  "account.storage.line": "{percent} % used",
  "account.summary.generic": "Vamoto account",
  "account.summary.joined": "joined {date}",
  "account.summary.provider": "{providers} account",
  "account.validate.code": "Enter the 6-digit code",
  "account.validate.display_name": "Display name must be 60 characters or fewer",
  "account.validate.email": "Enter a valid email address",
  "account.validate.handle": "Handle must be 3 to 30 characters: lowercase letters, digits or _",
  "admin.action.remove_invite": "Remove",
  "admin.confirm.remove_invite": "Remove the invite for {identity}?",
  "admin.detail.joined": "joined {date}",
  "admin.detail.loading": "Loading...",
  "admin.doc.deleted": "deleted",
  "admin.doc.ride": "ride",
  "admin.doc.route": "route",
  "admin.doc.untitled": "(untitled)",
  "admin.entitlements.current": "Current access: {access}",
  "admin.entitlements.error": "Could not update access: {message}",
  "admin.entitlements.invalid": "Enter a valid access action.",
  "admin.error.add_invite": "Could not add invite: {message}",
  "admin.error.detail": "Failed to load: {message}",
  "admin.error.grant": "Could not grant server routing: {message}",
  "admin.error.load": "Could not load admin data: {message}",
  "admin.error.load_invites": "Could not load invites: {message}",
  "admin.error.remove_invite": "Could not remove invite: {message}",
  "admin.error.revoke": "Could not revoke server routing: {message}",
  "admin.hazards.action.delete": "Delete",
  "admin.hazards.confirm.delete": "Delete this report? It disappears for everyone.",
  "admin.hazards.error.delete": "Could not delete the report: {message}",
  "admin.hazards.error.load": "Could not load reports: {message}",
  "admin.hazards.no_handle": "unknown",
  "admin.links.action.revoke": "Revoke",
  "admin.links.confirm.revoke": "Revoke this invite link? People who already joined keep their accounts.",
  "admin.links.copied": "Copied",
  "admin.links.copy": "Copy",
  "admin.links.error.create": "Could not create the link: {message}",
  "admin.links.error.forbidden": "Only the site operator can manage invite links.",
  "admin.links.error.load": "Could not load invite links: {message}",
  "admin.links.error.not_found": "That invite link is already gone.",
  "admin.links.error.revoke": "Could not revoke the link: {message}",
  "admin.links.meta.created": "created {date}",
  "admin.links.revoked": "revoked",
  "admin.links.used.limited": "used {used} of {max}",
  "admin.links.used.unlimited": "used {used}, unlimited",
  "admin.links.validate.max_uses": "Enter a limit from 1 to 1000, or leave it empty for unlimited.",
  "admin.links.validate.policy": "Choose Lifetime, Trial or Until a date access.",
  "admin.links.validate.until": "Choose a valid date from today to five years from now.",
  "admin.live.error.load": "Could not load the live invite: {message}",
  "admin.live.renews": "renews in {clock}",
  "admin.reports.action.actioned": "Resolve: action taken",
  "admin.reports.action.disable": "Disable account",
  "admin.reports.action.dismissed": "Dismiss report",
  "admin.reports.action.enable": "Enable account",
  "admin.reports.action.hide_profile": "Hide profile",
  "admin.reports.action.hide_share": "Hide",
  "admin.reports.action.more_shares": "More shares",
  "admin.reports.action.rename": "Apply",
  "admin.reports.action.unhide_profile": "Show profile",
  "admin.reports.action.unhide_share": "Show",
  "admin.reports.confirm.disable": "Disable the account of {name}? They can no longer sign in.",
  "admin.reports.confirm.hide_profile": "Hide the public profile of {name}?",
  "admin.reports.confirm.hide_share": "Hide this share? Its link will stop working.",
  "admin.reports.context.friend_request": "friend request",
  "admin.reports.context.profile": "in the app",
  "admin.reports.context.public_profile": "public profile",
  "admin.reports.context.public_share": "shared ride",
  "admin.reports.error.action": "Could not apply action: {message}",
  "admin.reports.error.load": "Could not load rider reports: {message}",
  "admin.reports.error.lookup": "No share found: {message}",
  "admin.reports.flag.disabled": "account disabled",
  "admin.reports.flag.hidden": "profile hidden",
  "admin.reports.flag.private": "private profile",
  "admin.reports.flag.public": "public profile",
  "admin.reports.label.display_name": "Display name",
  "admin.reports.label.handle": "Handle",
  "admin.reports.lookup_owner": "Shared by: {name}",
  "admin.reports.no_handle": "unknown",
  "admin.reports.no_shares": "No shares.",
  "admin.reports.rename_unchanged": "Nothing to change.",
  "admin.reports.reporter": "reported by {handle}",
  "admin.reports.resolution.actioned": "Resolved: action taken",
  "admin.reports.resolution.dismissed": "Resolved: dismissed",
  "admin.reports.share.hidden": "hidden",
  "admin.reports.shares_heading": "Share links",
  "admin.reports.snapshot": "Name when reported: {name}",
  "admin.stat.docs": "Docs (incl. deleted)",
  "admin.stat.ridden_km": "Synced ridden km",
  "admin.stat.rides": "Rides",
  "admin.stat.routes": "Routes",
  "admin.stat.shares": "Shares",
  "admin.stat.users": "Users",
  "admin.users.remove.action": "Remove user",
  "admin.users.remove.body": "This deletes the account and all its data. This cannot be undone.",
  "admin.users.remove.confirm": "Remove {who}?",
  "admin.users.remove.error": "Could not remove the user: {message}",
  "admin.users.remove.error.not_found": "This user was already removed.",
  "admin.users.remove.error.self": "You cannot remove your own account here.",
  "app.shell.close": "Close",
  "app.shell.dialog_cancel": "Cancel",
  "app.shell.dialog_save": "Save",
  "app.shell.info_about": "About {what}",
  "app.shell.shortcut_change": "Change",
  "app.staging.refused.go": "Go to vamoto.app",
  "app.staging.refused.title": "Staging is for testers",
  "beta.admin_confirm_decline": "Decline the application from {email}? No email is sent.",
  "beta.admin_confirm_delete": "Permanently delete the application from {email}? This won’t delete their Vamoto account or revoke an existing invitation.",
  "beta.admin_confirm_invite": "Send the invite email to {email}?",
  "beta.admin_confirm_resend": "Send the invite email to {email} again?",
  "beta.admin_copied": "Email addresses copied.",
  "beta.admin_counts": "{n} applications, {invited} invited",
  "beta.admin_decline": "Decline",
  "beta.admin_declined": "Application declined.",
  "beta.admin_delete": "Delete",
  "beta.admin_deleted": "Application deleted.",
  "beta.admin_empty": "No applications yet.",
  "beta.admin_empty_filtered": "No applications match these filters.",
  "beta.admin_error_action": "Couldn’t complete this action. Please try again.",
  "beta.admin_error_copy": "Couldn’t copy the email addresses. Please try again.",
  "beta.admin_error_load": "Couldn’t load applications. Please try again.",
  "beta.admin_filter_all": "All",
  "beta.admin_filter_declined": "Declined",
  "beta.admin_filter_invited": "Invited",
  "beta.admin_filter_new": "New",
  "beta.admin_filter_status": "Status",
  "beta.admin_invite": "Invite",
  "beta.admin_invite_mail_failed": "Access granted, but the invitation email couldn’t be sent. Use “Resend invite” to try again.",
  "beta.admin_invited": "Invitation sent.",
  "beta.admin_loading": "Loading applications…",
  "beta.admin_resend": "Resend invite",
  "beta.admin_sending": "Sending invitation…",
  "beta.admin_summary_distance": "Distance",
  "beta.admin_summary_navigation": "Navigation today",
  "beta.admin_summary_platform": "Platform",
  "beta.admin_summary_region": "Region",
  "beta.admin_summary_riding": "Riding",
  "beta.admin_summary_source": "Source",
  "beta.bikes_label": "Your motorcycles",
  "beta.distance_1000_3000": "1,000-3,000 km",
  "beta.distance_3000_8000": "3,000-8,000 km",
  "beta.distance_over_8000": "More than 8,000 km",
  "beta.distance_under_1000": "Less than 1,000 km",
  "beta.navigation_display": "CarPlay / Android Auto display on the bike",
  "beta.navigation_gps": "Dedicated GPS device, such as Garmin or TomTom",
  "beta.navigation_none": "No navigation",
  "beta.navigation_phone": "Phone on the handlebar",
  "beta.navigation_voice": "Voice only, through a headset",
  "beta.phone_android": "Android",
  "beta.phone_iphone": "iPhone",
  "beta.riding_adventure": "Offroad / adventure",
  "beta.riding_commuting": "Fast commuting",
  "beta.riding_day_tours": "Day tours",
  "beta.riding_multi_day": "Multi-day tours",
  "beta.riding_networks": "TET or other route networks",
  "beta.riding_other": "Other",
  "beta.riding_sport": "Track or sport riding",
  "download.sha": "SHA-256 {sha}...",
  "download.size": "{mb} MB",
  "download.version": "Version {name} (build {code})",
  "entitlements.policy.lifetime": "Lifetime",
  "entitlements.policy.trial": "Trial",
  "entitlements.policy.until": "Until {date}",
  "features.granted": "Granted {date}.",
  "features.granted_by": "Granted {date} by {name}.",
  "features.not_granted": "Not granted.",
  "format.na": "n/a",
  "format.unit.deg": "°",
  "format.unit.deg_per_km": "°/km",
  "format.unit.deg_per_mi": "°/mi",
  "format.unit.ft": "ft",
  "format.unit.h": "h",
  "format.unit.kb": "KB",
  "format.unit.km": "km",
  "format.unit.kmh": "km/h",
  "format.unit.m": "m",
  "format.unit.mb": "MB",
  "format.unit.mi": "mi",
  "format.unit.min": "min",
  "format.unit.mph": "mph",
  "format.utc": "UTC",
  "friend.error.default": "Sending the friend request failed - try again later.",
  "friend.error.network": "Could not reach the server - check your connection and try again.",
  "friend.error.rate_limited": "Too many requests - try again in {seconds}s.",
  "friend.friends": "You are already friends with {name}.",
  "friend.friends_generic": "You are already friends.",
  "friend.friends_now": "You are now friends with {name}.",
  "friend.friends_now_generic": "You are now friends.",
  "friend.invalid": "This link is no longer valid. Ask for the QR code again.",
  "friend.invalid_named": "This link is no longer valid. Ask {name} to show you their QR code again.",
  "friend.send.btn": "Send friend request to {name}",
  "friend.send.btn_generic": "Send friend request",
  "friend.sent": "Request sent. {name} accepts it in the app.",
  "friend.sent_generic": "Request sent.",
  "friend.signedout.lead": "Sign in to send {name} a friend request.",
  "friend.signedout.lead_generic": "Sign in to send a friend request.",
  "hazard.age.days.one": "reported {count} day ago",
  "hazard.age.days.other": "reported {count} days ago",
  "hazard.age.hours.one": "reported {count} hour ago",
  "hazard.age.hours.other": "reported {count} hours ago",
  "hazard.age.just_now": "reported just now",
  "hazard.age.minutes.one": "reported {count} minute ago",
  "hazard.age.minutes.other": "reported {count} minutes ago",
  "hazard.expires.days.one": "expires in {count} day",
  "hazard.expires.days.other": "expires in {count} days",
  "hazard.expires.expired": "expired",
  "hazard.expires.hours.one": "expires in {count} hour",
  "hazard.expires.hours.other": "expires in {count} hours",
  "hazard.expires.minutes.one": "expires in {count} minute",
  "hazard.expires.minutes.other": "expires in {count} minutes",
  "hazard.lifetime.m1": "1 month",
  "hazard.lifetime.m3": "3 months",
  "hazard.lifetime.today": "Today",
  "hazard.lifetime.w1": "1 week",
  "hazard.type.dangerous_spot": "Dangerous spot",
  "hazard.type.dirt_on_road": "Dirt on road",
  "hazard.type.pothole": "Pothole",
  "hazard.type.road_blocked": "Road blocked",
  "invite.done": "You're in, {handle}.",
  "invite.lead": "{inviter} has invited you to test Vamoto before release. Create your account with the Google or Apple account you will sign in with on your phone, then install the app.",
  "invite.lead_generic": "You have been invited to test Vamoto before release. Create your account with the Google or Apple account you will sign in with on your phone, then install the app.",
  "invites.error.forbidden": "Only the site operator can manage invites.",
  "invites.error.not_found": "That invite was already removed.",
  "invites.meta.added": "added {date}",
  "invites.meta.by": "by {name}",
  "invites.validate": "Enter an email address, or a provider id like gh:12345 or google:1029...",
  "invites.validate.policy": "Choose Lifetime, Trial or Until a date access.",
  "live.done": "You're in, {handle}.",
  "locations.add_place": "Add place",
  "locations.catalogue_unavailable": "The location icons could not be loaded. Reload the page to add locations.",
  "locations.confirm.delete": "Delete \"{name}\"?",
  "locations.count.one": "{count} place",
  "locations.count.other": "{count} places",
  "locations.creator.add": "Add here",
  "locations.creator.coordinate_empty": "Move the map or search for a place",
  "locations.creator.hint.place_name": "The link named a place. Pick a result below.",
  "locations.creator.invalid_coordinate": "Enter a valid coordinate or place",
  "locations.creator.link_offline": "Connect your phone to open this link.",
  "locations.creator.resolving_link": "Opening the link on your phone...",
  "locations.creator.search_label": "Search for a place or coordinates",
  "locations.creator.search_placeholder": "Place or coordinates",
  "locations.delete": "Delete",
  "locations.dialog.cancel": "Cancel",
  "locations.dialog.icon_filter": "Find an icon",
  "locations.dialog.icon_filter_placeholder": "For example tree or coffee",
  "locations.dialog.icons": "Icons",
  "locations.dialog.name": "Name",
  "locations.dialog.name_required": "Enter a name.",
  "locations.dialog.no_icons": "No icon matches that name.",
  "locations.dialog.save": "Save",
  "locations.dialog.save_failed": "The location could not be saved. Nothing was stored.",
  "locations.dialog.saving": "Saving...",
  "locations.dialog.selected_icon": "Icon: {name}",
  "locations.dialog.title": "Add location",
  "locations.empty.text": "Save a café, a viewpoint or a workshop. It shows on your phone's map.",
  "locations.empty.title": "No places yet",
  "locations.heading": "Custom locations",
  "locations.info.body": "Your own places: a café, a viewpoint, a workshop. They sync with your phone and show on its map.\nSearch for a place or coordinates, or press Add place and move the map until the crosshair sits on the spot.",
  "locations.info.title": "Custom locations",
  "locations.more": "More for {name}",
  "locations.place.cancel": "Cancel",
  "locations.place.hint": "Move the map until the crosshair sits on the spot.",
  "locations.place.title": "Place a location",
  "locations.plan_here": "Plan a route here",
  "locations.rename": "Rename",
  "locations.rename_title": "Rename place",
  "locations.saved_notice": "Saved on this device: {name}",
  "locations.status.delete_failed": "The location could not be deleted.",
  "locations.status.empty": "No saved locations yet.",
  "locations.status.failed": "Sync failed. Your locations stay on this device and sync later.",
  "locations.status.loading": "Loading your locations...",
  "locations.status.pending": "Saved on this device. Waiting to sync: {count}",
  "locations.status.rejected": "The server rejected a location. It stays on this device only.",
  "locations.status.rename_failed": "The location could not be renamed.",
  "locations.status.storage": "This browser could not read its saved locations.",
  "locations.status.synced": "All locations are synced.",
  "locations.sync_now": "Sync now",
  "map.fullscreen": "Full screen",
  "map.fullscreen_exit": "Exit full screen",
  "map.layers.btn": "Map layers",
  "map.layers.close": "Close map layers",
  "map.layers.hazards": "Hazard reports",
  "map.layers.locations": "Custom locations",
  "map.layers.on_map": "On the map",
  "map.layers.place_types": "Place types",
  "map.layers.rides": "Past rides",
  "map.layers.shade": "Route colour",
  "map.layers.shade.curviness": "Curviness",
  "map.layers.shade.default": "Default",
  "map.layers.shade.surface": "Surface",
  "map.layers.trails": "Trails",
  "map.load_error.retry": "Map unavailable, retry",
  "map.panel.hide": "Hide panel",
  "map.panel.show": "Show panel",
  "map.zoom_in": "Zoom in",
  "map.zoom_out": "Zoom out",
  "my_location.error.denied": "Location is blocked for this site. Allow it in your browser settings.",
  "my_location.error.timeout": "Finding your location took too long.",
  "my_location.error.unavailable": "Your location is not available right now.",
  "my_location.error.unsupported": "This browser cannot share a location.",
  "my_location.source.browser": "My location",
  "my_location.source.phone": "Phone's position",
  "my_location.status.home_missing": "No home place is synced yet.",
  "my_location.status.locating": "Finding your location...",
  "my_location.status.locating_phone": "Asking your phone where it is...",
  "my_location.status.phone_failed": "Your phone did not report a position.",
  "passkeys.browser_generic": "This browser",
  "passkeys.error.already_registered": "This device already has a passkey for your account.",
  "passkeys.error.cancelled_login": "Passkey sign-in was cancelled or timed out.",
  "passkeys.error.cancelled_register": "Passkey setup was cancelled or timed out.",
  "passkeys.error.generic": "Passkey error: {message}",
  "passkeys.error.not_configured": "Passkeys are unavailable right now.",
  "passkeys.error.rate_limited": "Too many attempts. Wait a minute and try again.",
  "passkeys.error.rejected": "That passkey was not accepted. Sign in with an email code instead.",
  "passkeys.error.unknown": "unknown",
  "passkeys.error.unsupported_login": "This browser cannot use passkeys for Vamoto. Sign in with an email code instead.",
  "passkeys.error.unsupported_register": "This browser cannot create a passkey for Vamoto.",
  "passkeys.error.wrong_origin": "Passkeys only work on vamoto.app.",
  "phone_link.default_name.loop": "{km} km loop",
  "phone_link.default_name.loop_plain": "loop",
  "phone_link.default_name.ride": "{km} km ride",
  "phone_link.default_name.ride_plain": "ride",
  "pin_actions.pin.make_pass_through": "Make pass-through",
  "pin_actions.pin.make_stop": "Make stop",
  "pin_actions.pin.remove": "Remove",
  "pin_actions.point.add_report.label": "Add report",
  "pin_actions.point.add_report.title": "Report a hazard at this point",
  "pin_actions.point.add_stop.label": "Add stop",
  "pin_actions.point.add_stop.title": "Route stops here",
  "pin_actions.point.my_location.label": "Start from my location",
  "pin_actions.point.my_location.title": "Put your own position in front of this pin",
  "pin_actions.point.pass_through.label": "Pass through here",
  "pin_actions.point.pass_through.title": "Pass here without ending the leg",
  "pin_actions.point.report_unavailable.label": "Add report (server access required)",
  "pin_actions.point.report_unavailable.title": "Open and connect the Vamoto app, or use an account with server access, before filing a report.",
  "pin_actions.point.set_end.label": "Set end",
  "pin_actions.point.set_end.title": "Finish the route here",
  "pin_actions.point.set_start.label": "Set start",
  "pin_actions.point.set_start.title": "Start the route here",
  "pin_actions.refusal": "That is waypoint {index} already. Pick a different spot.",
  "plan.avoid.ferries": "Ferries",
  "plan.avoid.label": "Avoid",
  "plan.avoid.motorways": "Motorways",
  "plan.avoid.none": "No avoids",
  "plan.avoid.tolls": "Tolls",
  "plan.avoid.unpaved": "Unpaved",
  "plan.blocks.phone_note": "Your phone computed this route and applies the reports stored on the phone, so un-ticking one here only changes a route computed on the hosted service.",
  "plan.blocks.show": "Show",
  "plan.coverage.action.retry": "Retry",
  "plan.coverage.outside": "A waypoint lies outside the maps installed on your phone.",
  "plan.direction.any": "Any",
  "plan.direction.e": "E",
  "plan.direction.n": "N",
  "plan.direction.ne": "NE",
  "plan.direction.nw": "NW",
  "plan.direction.s": "S",
  "plan.direction.se": "SE",
  "plan.direction.sw": "SW",
  "plan.direction.w": "W",
  "plan.discard.body": "Your waypoints will be lost.",
  "plan.discard.confirm": "Discard",
  "plan.discard.title": "Discard this plan?",
  "plan.engine.hosted": "Computed on the hosted service",
  "plan.engine.hosted.hint": "This route was planned by the hosted routing service, not by your phone.",
  "plan.friend.error.default": "Something went wrong. Try again.",
  "plan.friend.error.inbox_full": "That friend's route inbox is full.",
  "plan.friend.error.invalid_request": "That route could not be sent.",
  "plan.friend.error.network": "Could not reach the server. Check your connection and try again.",
  "plan.friend.error.rate_limited": "Too many requests. Try again in {seconds}s.",
  "plan.friend.error.unauthorized": "Your session expired. Sign in again.",
  "plan.friend.error.unknown_handle": "That friend could not be found.",
  "plan.friend.picker.cancel": "Cancel",
  "plan.friend.picker.empty": "You don't have any friends yet.",
  "plan.friend.picker.heading": "Send to a friend",
  "plan.friend.picker.load_failed": "Could not load your friends.",
  "plan.friend.picker.loading": "Loading your friends...",
  "plan.friend.picker.note_placeholder": "Add a note (optional)",
  "plan.friend.sent": "Sent to {name}.",
  "plan.gpx.default_name": "curvy route",
  "plan.gpx.end": "End",
  "plan.gpx.import_failed": "GPX import failed: {message}",
  "plan.gpx.imported.one": "Imported {count} waypoint from {file}.",
  "plan.gpx.imported.other": "Imported {count} waypoints from {file}.",
  "plan.gpx.need_route": "Route something first, then export.",
  "plan.gpx.start": "Start",
  "plan.gpx.via": "Via {n}",
  "plan.guidance.unavailable": "Guidance is unavailable for this saved route. Replan to ride it.",
  "plan.handoff.imported.one": "Opened \"{name}\" as a plan with 1 point. Nothing is saved until you save it.",
  "plan.handoff.imported.other": "Opened \"{name}\" as a plan with {n} points. Nothing is saved until you save it.",
  "plan.hazard.confirm": "Confirm",
  "plan.hazard.confirm_delete": "Delete this report?",
  "plan.hazard.delete": "Delete",
  "plan.hazard.delete_failed": "Could not delete the report.",
  "plan.hazard.failed": "Could not file the report.",
  "plan.hazard.filed": "Report filed.",
  "plan.hazard.no_road": "No road here. Pick a point on a road.",
  "plan.hazard.pick_lifetime": "How long is it blocked?",
  "plan.hazard.pick_type": "What is here?",
  "plan.instruction.dist": "{length} · {total} total",
  "plan.lab.badge.error": "error",
  "plan.lab.badge.fallback": "fallback",
  "plan.lab.badge.out_of_band": "out of band",
  "plan.lab.profiles_loading": "Profiles still loading. Try again in a moment.",
  "plan.lab.status.calculating": "Calculating all variants...",
  "plan.lab.toggle_row": "Show / hide this variant on the map",
  "plan.leg.arrive_by": "Arrive by",
  "plan.leg.custom": "{profile} (custom)",
  "plan.leg.direct": "Direct",
  "plan.leg.distance": "Distance",
  "plan.leg.duration": "Duration",
  "plan.leg.early": "Direct · early arrival {time}",
  "plan.leg.long_way_no_fit": "Leg {leg}: no Long way round fits your maps. Try a shorter goal or Direct.",
  "plan.leg.long_way_round": "Long way round",
  "plan.leg.missed": "Direct · too late, arrival {time}",
  "plan.leg.name": "Leg {index}: {from} - {to}",
  "plan.leg.open_hint": "Edit leg",
  "plan.leg.pill_arrive_by": "by {time}",
  "plan.leg.progress": "Planning leg {n} of {total}…",
  "plan.leg.route": "Route",
  "plan.leg.short_name": "Leg {index}",
  "plan.leg.status.failed": "Routing failed",
  "plan.leg.status.failed_allocation_failure": "Memory ran out while planning.",
  "plan.leg.status.failed_memory_unavailable": "Too little memory right now.",
  "plan.leg.status.failed_no_fit": "No Long way round fits your maps.",
  "plan.leg.status.failed_no_road": "No road near this point.",
  "plan.leg.status.failed_out_of_band": "No route fits your goal.",
  "plan.leg.status.failed_over_budget": "Needs more phone memory.",
  "plan.leg.status.failed_pruning_failure": "No route with reduced search.",
  "plan.leg.status.hint_change_target": "Change the distance or time goal.",
  "plan.leg.status.hint_close_apps": "Close other apps. Plan again.",
  "plan.leg.status.hint_move_point": "Move {point} closer to a road.",
  "plan.leg.status.hint_move_stop": "Add or move a Stop.",
  "plan.leg.status.hint_shorter_legs": "Add a Stop for shorter legs.",
  "plan.leg.status.reduced": "Reduced search: check this leg.",
  "plan.leg.status.routing": "Planning…",
  "plan.leg.status.routing_slow": "Still planning…",
  "plan.leg.trails": "Trails {strength}",
  "plan.leg.without_preferred_trails": "Leg {n} was planned without your preferred trails.",
  "plan.leg_sheet.avoid_changed": "Changed",
  "plan.leg_sheet.avoid_explain": "From your profile. Changes make this leg custom.",
  "plan.leg_sheet.collections_last_hint": "Keep at least one collection selected.",
  "plan.leg_sheet.collections_title": "Choose collections",
  "plan.leg_sheet.customize_profiles": "Customize profiles…",
  "plan.leg_sheet.customize_profiles_hint": "Open Riding profiles in Settings",
  "plan.leg_sheet.direct_explain": "Take the best road for your profile, without a longer-route goal.",
  "plan.leg_sheet.direct_same_place": "Direct needs different start and end points.",
  "plan.leg_sheet.direction": "Ride direction",
  "plan.leg_sheet.direction_explain": "Nudge the longer route in this direction.",
  "plan.leg_sheet.direction_value": "Direction: {direction}",
  "plan.leg_sheet.expected_arrival": "Arrival: {time}",
  "plan.leg_sheet.goal_explain_arrive_by": "Reach this leg’s Stop by the chosen time.",
  "plan.leg_sheet.goal_explain_distance": "Aim for this distance on this leg.",
  "plan.leg_sheet.goal_explain_duration": "Ride this leg for the chosen duration.",
  "plan.leg_sheet.goal_label": "Goal",
  "plan.leg_sheet.keep_adjusting": "Keep adjusting",
  "plan.leg_sheet.keep_adjusting_explain": "Reshape this leg as you ride to meet your time goal. Later Stops stay fixed.",
  "plan.leg_sheet.reset": "Reset",
  "plan.leg_sheet.reset_hint": "Reset to {profile}",
  "plan.leg_sheet.route": "{from} → {to}",
  "plan.leg_sheet.tab_avoid": "Avoid",
  "plan.leg_sheet.tab_profile": "Profile",
  "plan.leg_sheet.tab_trails": "Trails",
  "plan.leg_sheet.tab_way": "Way",
  "plan.leg_sheet.title": "Leg {index}/{count}",
  "plan.leg_sheet.trails_collections": "Collections",
  "plan.leg_sheet.trails_collections_all": "All collections",
  "plan.leg_sheet.trails_collections_value": "{first} +{more}",
  "plan.leg_sheet.trails_custom": "Custom trails for this leg",
  "plan.leg_sheet.trails_explain": "Prefer your selected imported GPX trails on this leg.",
  "plan.leg_sheet.trails_global": "Settings strength: {strength}",
  "plan.leg_sheet.trails_none": "No GPX collections yet. Import them in Settings › Trails.",
  "plan.leg_sheet.way_semantics": "Way: {way}",
  "plan.location.home_hint": "Start from your home place",
  "plan.location.locating": "Locating...",
  "plan.location.my_location": "My location",
  "plan.loop.duration_invalid": "Pick a ride time from {min} to {max}.",
  "plan.loop.kept_previous": "No other round trip found here. Your current one stays.",
  "plan.loop.none_found": "No scenic loop found here - try a different distance or location.",
  "plan.loop.time_invalid": "Pick a time {min} to {max} from now.",
  "plan.mode.round_trip": "Round trip",
  "plan.phone.marker": "Your phone",
  "plan.phone.need_phone": "Connect your phone",
  "plan.phone.need_route": "Plan a route first",
  "plan.phone.no_answer": "Sent, but no answer from the phone.",
  "plan.phone.offline": "Your phone isn't connected.",
  "plan.phone.open_failed": "The phone couldn't open the route.",
  "plan.phone.opened": "Opened on your phone.",
  "plan.phone.send_ready": "Open this route on your phone",
  "plan.phone_pill.build_mismatch": "Your phone's maps and the web map are different versions.",
  "plan.phone_pill.checking": "Connected · checking maps...",
  "plan.phone_pill.disconnected": "Not connected",
  "plan.phone_pill.empty": "Your phone has no offline maps. Download a region in the app under Offline maps.",
  "plan.phone_pill.error": "The maps on your phone could not be checked.",
  "plan.phone_pill.maps.one": "Connected · {count} map",
  "plan.phone_pill.maps.other": "Connected · {count} maps",
  "plan.phone_pill.maps_unknown": "Connected · maps unknown",
  "plan.phone_pill.no_maps": "Connected · no offline maps",
  "plan.phone_pill.open_app": "Open the Vamoto app on your phone.",
  "plan.phone_pill.probing": "Looking for your phone...",
  "plan.phone_pill.stale": "The maps on your phone were last checked a while ago.",
  "plan.phone_pill.unsupported": "Update the Vamoto app on your phone to see its maps here.",
  "plan.phone_pill.update_app": "Connected · update the app",
  "plan.poi.busy": "Place lookup is busy. Try again shortly.",
  "plan.poi.camping": "Camping",
  "plan.poi.charging": "Charging",
  "plan.poi.food": "Food",
  "plan.poi.fuel": "Fuel",
  "plan.poi.hotel": "Hotels",
  "plan.poi.hut": "Huts",
  "plan.poi.pass": "Passes",
  "plan.poi.shop": "Shops",
  "plan.poi.unavailable": "Places could not be loaded. Check your connection and try again.",
  "plan.poi.unnamed": "Unnamed",
  "plan.poi.viewpoint": "Viewpoints",
  "plan.profile.avoids_none": "No avoids",
  "plan.profile.blurb.adventure": "Gravel and curves",
  "plan.profile.blurb.cruiser": "Relaxed, wide curves",
  "plan.profile.blurb.fastest": "Quick roads, motorways too",
  "plan.profile.blurb.sport_touring": "Curves, balanced road mix",
  "plan.profile.blurb.twisty_hunter": "Serpentines, scenic passes",
  "plan.profile.modified": "Modified",
  "plan.profile.starred_hint": "Star = your default profile",
  "plan.profile_chart.curviness": "{value} {unit}",
  "plan.reduced.accept": "Accept leg",
  "plan.reduced.action.export": "Export",
  "plan.reduced.action.save": "Save",
  "plan.reduced.action.share": "Share",
  "plan.reduced.body": "{leg}: The search covered fewer small roads, so this leg may miss some. You can add or move a stop to try again.",
  "plan.reduced.edit": "Edit stops",
  "plan.reduced.guard": "{action}: Confirm the affected legs first.",
  "plan.reduced.title": "Use this leg?",
  "plan.round.arrive_by_approx": "about {duration}",
  "plan.round.arrive_by_invalid": "0:30 to 10 h from now",
  "plan.round.explain_arrive_by": "Return to your start by the chosen time.",
  "plan.round.explain_distance": "Aim for this distance, back at your start.",
  "plan.round.explain_duration": "Ride for this duration, back at your start.",
  "plan.round.keep_adjusting_hint": "Adjust the remaining route as you ride to meet your time goal.",
  "plan.round.leg_entry_hint": "Profile, avoids and trails",
  "plan.round.leg_entry_semantics": "Leg settings: {summary}",
  "plan.round.loop_number": "Loop number (optional)",
  "plan.round.reduced_hint": "Open route confirmation",
  "plan.round.reduced_line": "Reduced search: check this round trip.",
  "plan.round.search_start": "Search a place",
  "plan.round.search_via": "Search a place to pass",
  "plan.round.start_semantics": "Start: {text}",
  "plan.round.start_via": "{start} · {via}",
  "plan.round.via": "Pass-through",
  "plan.round.waiting": "Waiting for your location…",
  "plan.save.not_here": "That route is not on this device yet.",
  "plan.save.nothing": "Nothing to save.",
  "plan.save.rejected": "Save rejected: {reason}",
  "plan.save.saved": "Saved \"{name}\". Syncing to your account.",
  "plan.save.unnamed": "Unnamed route",
  "plan.search.busy": "Search is busy. Try again shortly.",
  "plan.search.hint.place_name": "The link named a place; results are below.",
  "plan.search.invalid.ambiguous": "That coordinate is ambiguous. Add N/S and E/W or use a decimal pair.",
  "plan.search.invalid.link_offline": "Connect your phone to open this link.",
  "plan.search.invalid.malformed": "That does not look like a valid coordinate.",
  "plan.search.invalid.out_of_range": "That coordinate is outside the valid range.",
  "plan.search.invalid.unsupported_link": "This link has no exact position. Share a link with coordinates instead.",
  "plan.search.kind.coordinate": "Coordinates",
  "plan.search.kind.home": "Home",
  "plan.search.kind.location": "Custom location",
  "plan.search.kind.star": "Favourite",
  "plan.search.kind.work": "Work",
  "plan.search.no_results": "No results",
  "plan.search.resolving_link": "Opening the link on your phone...",
  "plan.search.unavailable": "Search is unavailable right now. Check your connection and try again.",
  "plan.seed.label": "seed ",
  "plan.seed.pin_loops": "Pin this seed: the next fan-out reproduces these exact loops",
  "plan.shade.surface_pending": "Surface colors appear once road-surface metrics load",
  "plan.share.confirm": "Anyone with the link sees this route, start point included. A planned route is not trimmed around your home the way a recorded ride is.",
  "plan.share.copied": "Link copied",
  "plan.share.copy": "Save a copy",
  "plan.share.copy_hint": "Original unchanged",
  "plan.share.failed": "The link could not be created.",
  "plan.share.gpx": "Export GPX",
  "plan.share.gpx_hint": "Other apps/devices",
  "plan.share.link": "Share link",
  "plan.share.link_hint": "In any browser",
  "plan.share.needs_save": "Save first",
  "plan.share.needs_sign_in": "Sign in first",
  "plan.share.not_synced": "Not synced yet",
  "plan.share.outcome_direct": "No scenic roads fit here - this is the direct route.",
  "plan.share.outcome_missed_by": "Missed the target by {distance}.",
  "plan.share.outcome_missed_by_time": "Missed the time by {minutes} min.",
  "plan.share.outcome_no_loop": "No round trip found. Try another distance or place.",
  "plan.share.rename": "Rename",
  "plan.share.rename_hint": "Change route name",
  "plan.share.reverse": "Reverse",
  "plan.share.reverse_hint": "Ride the other way",
  "plan.share.reverse_longer": "Reversed, the loop is {distance} longer (one-way roads).",
  "plan.share.reverse_shorter": "Reversed, the loop is {distance} shorter (one-way roads).",
  "plan.share.save": "Save",
  "plan.share.save_first": "Share link (save this route first)",
  "plan.share.save_hint": "Routes; syncs online",
  "plan.share.send": "Send to a friend",
  "plan.share.send_hint": "Their Vamoto app",
  "plan.share.send_phone": "Send to phone",
  "plan.share.send_phone_hint": "Open in your Vamoto app",
  "plan.share.title": "Save & share",
  "plan.share.too_large": "This route is too large to send.",
  "plan.share.unsaved_name": "Planned route",
  "plan.share.update": "Update",
  "plan.share.update_hint": "Update saved route",
  "plan.status.cancelled": "Cancelled.",
  "plan.status.elapsed": "{message} {seconds}s",
  "plan.status.hosted_fallback": "Routed using approved server access; your trail preference was not included.",
  "plan.status.hunting": "Hunting for curves...",
  "plan.status.need_target": "Enter a target length in km.",
  "plan.status.routing": "Routing...",
  "plan.status.routing_phone": "Routing via your phone...",
  "plan.status.slow": "Still planning your route…",
  "plan.status.trail_note": "Trail preference needs your phone - routed without it.",
  "plan.status.updating": "Updating route...",
  "plan.status_action.cancel": "Cancel",
  "plan.status_action.cancel.aria": "Cancel this route calculation",
  "plan.status_action.routing": "How routing works",
  "plan.surface.legend": "{label} {pct}% · {km} · {time}",
  "plan.surface.pct_label": "{pct}% {label}",
  "plan.surface.share": "{label} {pct}%",
  "plan.trails.heading": "Trail strength",
  "plan.trip.arrive": "Arr {time}",
  "plan.trip.arrive_day": "Arr {day} {time}",
  "plan.trip.back": "Back",
  "plan.trip.bar_arrive": "Arrival {time}",
  "plan.trip.bar_arrive_day": "Arr {day} {time}",
  "plan.trip.day_label": "Day",
  "plan.trip.depart": "Dep {time}",
  "plan.trip.depart_day": "Dep {day} {time}",
  "plan.trip.done": "Done",
  "plan.trip.home": "Home",
  "plan.trip.my_location": "My location",
  "plan.trip.my_location_round_trip": "Start a round trip here",
  "plan.trip.pass_through": "Pass-through",
  "plan.trip.pass_through_hint": "Pass here without ending the leg",
  "plan.trip.phone_offline_hint": "Open Vamoto on your phone to connect.",
  "plan.trip.remove": "Remove point",
  "plan.trip.reorder": "Reorder point",
  "plan.trip.round_trip": "Round trip",
  "plan.trip.settings": "Trip settings",
  "plan.trip.start_at": "{day} {time}",
  "plan.trip.start_later": "Later",
  "plan.trip.start_now": "Now",
  "plan.trip.start_title": "Start time",
  "plan.trip.stay_add": "Add stay",
  "plan.trip.stay_none": "No stay",
  "plan.trip.stay_title": "Stay: {stop}",
  "plan.trip.stay_value": "{duration} stay",
  "plan.trip.stop": "Stop",
  "plan.trip.stop_hint": "This leg ends here",
  "plan.trip.time_label": "Time",
  "plan.trip.title": "Trip",
  "plan.trip.to_pass_through_hint": "Make pass-through",
  "plan.trip.to_stop_hint": "Make stop",
  "plan.trip.today": "Today",
  "plan.trip.tomorrow": "Tomorrow",
  "plan.trip.work": "Work",
  "plan.trip_settings.apply_body.one": "Also change the leg using {old}? Custom legs stay unchanged.",
  "plan.trip_settings.apply_body.other": "Also change {count} legs using {old}? Custom legs stay unchanged.",
  "plan.trip_settings.apply_no": "Only new legs",
  "plan.trip_settings.apply_title": "Also use {profile}?",
  "plan.trip_settings.apply_yes.one": "Change 1 leg",
  "plan.trip_settings.apply_yes.other": "Change {count} legs",
  "plan.trip_settings.bike": "Bike",
  "plan.trip_settings.new_legs": "New legs",
  "plan.trip_settings.new_legs_explain": "Default: your bike’s profile, otherwise your starred profile.",
  "plan.trip_settings.no_bike": "No bike",
  "plan.trip_settings.per_leg_note": "Set Way, avoids and trails separately for each leg.",
  "plan.trip_settings.pick_profile_title": "Profile for new legs",
  "profile.all_time": "All time",
  "profile.busiest.one": "{count} ride · {distance}",
  "profile.busiest.other": "{count} rides · {distance}",
  "profile.busiest_month": "Busiest month",
  "profile.chart.aria": "Distance ridden per month",
  "profile.chart.clipped.one": "{count} ride older than the charted {months}-month window is not shown.",
  "profile.chart.clipped.other": "{count} rides older than the charted {months}-month window are not shown.",
  "profile.chart.month.one": "{month}: {distance} · {count} ride",
  "profile.chart.month.other": "{month}: {distance} · {count} rides",
  "profile.chart.undated.one": "{count} ride without a usable date cannot be placed on the timeline.",
  "profile.chart.undated.other": "{count} rides without a usable date cannot be placed on the timeline.",
  "profile.coverage": "from {n} of {total} rides",
  "profile.edit": "Edit profile",
  "profile.empty": "No rides yet. Record one in the app or import GPX under",
  "profile.empty_link": "Rides",
  "profile.heading.monthly": "Distance per month",
  "profile.heading.records": "Records",
  "profile.heading.sources": "Where your rides come from",
  "profile.no_dated": "None of these rides carries a usable date, so there is no timeline to draw.",
  "profile.no_records": "No records yet.",
  "profile.record.biggest_climb": "Biggest single-ride climb",
  "profile.record.lean_left": "Deepest lean left",
  "profile.record.lean_right": "Deepest lean right",
  "profile.record.longest_ride": "Longest ride",
  "profile.record.longest_time": "Longest time riding",
  "profile.record.top_speed": "Top speed",
  "profile.source.app": "Recorded in the app",
  "profile.source.gpx": "Imported from GPX",
  "profile.source.unknown": "Other / unknown",
  "profile.stat.climbed": "climbed",
  "profile.stat.distance": "total distance",
  "profile.stat.rides": "rides",
  "profile.stat.riding_time": "riding time",
  "profile.year_in_review": "Year in review",
  "profiles.unavailable": "Rider profiles could not be loaded. Reload the page.",
  "relay.engine_error": "Could not plan this trip.",
  "relay.hosted_unavailable": "The hosted service is unavailable. Try again later.",
  "relay.outcome.allocation_failure": "{leg}: Phone ran out of memory while planning.",
  "relay.outcome.memory_unavailable": "{leg}: Phone memory is low right now.",
  "relay.outcome.no_road": "{leg}: A point is too far from any road.",
  "relay.outcome.out_of_band": "{leg}: No route fits your distance or time target.",
  "relay.outcome.over_budget": "{leg}: This route needs more memory.",
  "relay.outcome.pruning_failure": "{leg}: No route found with the reduced search.",
  "relay.phone_changed": "Your connected phone changed. Check its maps and try again.",
  "relay.phone_unreachable": "Vamoto computes routes on your own phone, not on a server. Open the Vamoto app on your phone, keep it in the foreground, and try again.",
  "relay.rate_limited": "Too many requests. Try again in {seconds}s.",
  "relay.scenic_declined": "Your phone found no round trip here. Try New suggestion or a shorter length.",
  "report.action": "Report",
  "report.block_body": "Blocking ends any friendship between you. They are not told about the block.",
  "report.block_toggle": "Block @{handle}",
  "report.cancel": "Cancel",
  "report.note_hint": "Tell us what happened.",
  "report.note_label": "Note (optional)",
  "report.reason.harassment": "Harassment",
  "report.reason.offensive_name": "Offensive name",
  "report.reason.other": "Other",
  "report.send": "Send report",
  "report.sent": "Report sent",
  "report.sent_blocked": "Report sent. Rider blocked.",
  "report.sign_in": "Sign in",
  "report.sign_in_required": "Sign in to report this rider.",
  "report.title": "Report @{handle}",
  "report.visibility": "Your report goes to the Vamoto team. The rider is not told.",
  "ride_detail.action.delete": "Delete",
  "ride_detail.action.unshare": "Stop sharing",
  "ride_detail.chart.ele": "Elevation",
  "ride_detail.chart.lean": "Lean",
  "ride_detail.chart.speed": "Speed",
  "ride_detail.confirm.delete": "Delete \"{name}\" from your rides (all devices)?",
  "ride_detail.info.share.body": "Anyone with the link can see the track, the date and time of the ride and your ride stats, and can download the ride as GPX. No account is needed.\nYour name appears only while your rider page is public.\nSections near your home are hidden only when home protection is on and your home has been synced.",
  "ride_detail.info.share.title": "What a share link shows",
  "ride_detail.legend.unit.pct_max": "% of max",
  "ride_detail.meta.date_unknown": "date unknown",
  "ride_detail.meta.nth": "Ride {n} of {total} in {year}",
  "ride_detail.meta.planned_route": "Planned route",
  "ride_detail.meta.track_not_uploaded": "Track not uploaded (storage full)",
  "ride_detail.meta.track_size": "Full track {size}",
  "ride_detail.name_fallback": "Ride",
  "ride_detail.prompt.name": "Ride name",
  "ride_detail.route.unnamed": "Unnamed route",
  "ride_detail.share.confirm_revoke": "Unshare this ride? The public link stops working immediately.",
  "ride_detail.share.copied": "Link copied to clipboard.",
  "ride_detail.share.copy": "Copy link",
  "ride_detail.share.copy_blocked": "Copy blocked by the browser. The link is selected, press Ctrl/Cmd+C.",
  "ride_detail.share.create": "Create link",
  "ride_detail.share.created": "Share link created.",
  "ride_detail.share.creating": "Creating share link...",
  "ride_detail.share.expiry_30d": "After 30 days",
  "ride_detail.share.expiry_7d": "After 7 days",
  "ride_detail.share.expiry_label": "Link expires",
  "ride_detail.share.expiry_never": "Never",
  "ride_detail.share.failed": "Sharing failed ({code}).",
  "ride_detail.share.hide_home": "Hide home in shared rides",
  "ride_detail.share.home_required": "Set a home place in Settings > Privacy first, or turn home protection off. A shared ride hides the roads around your home, and there is nothing to hide without one.",
  "ride_detail.share.native": "Share",
  "ride_detail.share.network": "Sync server unreachable. Check your connection.",
  "ride_detail.share.not_found": "The server does not know this ride yet. Sync first, then share.",
  "ride_detail.share.off": "Off",
  "ride_detail.share.on": "On",
  "ride_detail.share.on_profile": "Show on my rider page",
  "ride_detail.share.rate_limited": "Rate limited. Try again in {seconds}s.",
  "ride_detail.share.title": "Share ride",
  "ride_detail.share.unauthorized": "Session expired. Sign in again.",
  "ride_detail.share.unsupported_doc": "This document cannot be shared.",
  "ride_detail.stat.avg_speed": "avg speed",
  "ride_detail.stat.distance": "distance",
  "ride_detail.stat.duration": "duration",
  "ride_detail.stat.ele_gain": "climbed",
  "ride_detail.stat.lean_left": "max lean left",
  "ride_detail.stat.lean_right": "max lean right",
  "ride_detail.stat.max_ele": "max elevation",
  "ride_detail.stat.max_speed": "max speed",
  "ride_detail.stat.min_ele": "min elevation",
  "ride_panel.chart_aria": "{series} over distance",
  "ride_panel.lean_unavailable": "Lean needs a ride recorded by the Vamoto app",
  "ride_stats.unnamed_ride": "Unnamed ride",
  "rider.doc_title": "{name} on Vamoto",
  "rider.error.bad_response": "The server returned something this page cannot render.",
  "rider.error.default": "Loading the rider profile failed - try again later.",
  "rider.error.network": "Could not reach the server - check your connection and try again.",
  "rider.error.not_found": "This rider profile does not exist - the link may be wrong, or the rider made their profile private.",
  "rider.error.rate_limited": "Too many requests - try again in {seconds}s.",
  "rider.heading_fallback": "Rider profile",
  "rider.meta.avg": "{speed} avg",
  "rider.meta.date_unknown": "date unknown",
  "rider.name_fallback": "Ride",
  "rider.since": "riding with us since {date}",
  "rider.stat.climbed": "climbed",
  "rider.stat.distance": "total distance",
  "rider.stat.friends.one": "friend",
  "rider.stat.friends.other": "friends",
  "rider.stat.lean_left": "deepest lean left",
  "rider.stat.lean_right": "deepest lean right",
  "rider.stat.rides.one": "ride",
  "rider.stat.rides.other": "rides",
  "rider.stat.riding_time": "riding time",
  "rider.stat.top_speed": "top speed",
  "rider.status.loading": "Loading rider profile...",
  "rides.auto_title": "Ride on {date}",
  "rides.badge.imported": "Imported",
  "rides.badge.recorded": "Recorded in app",
  "rides.empty.body": "Import the GPX files your navigator or phone recorded, or record a ride with the Vamoto app.",
  "rides.empty.import": "Import GPX",
  "rides.empty.title": "No rides yet",
  "rides.filter.all_years": "All years",
  "rides.highlight": "Longest this month",
  "rides.import.done.one": "Imported {count} ride.",
  "rides.import.done.other": "Imported {count} rides.",
  "rides.import.failed.one": "Imported {imported} of {count} file.",
  "rides.import.failed.other": "Imported {imported} of {count} files.",
  "rides.import.failure_line": "{file}: {reason}",
  "rides.import.first_failure": "Failed: {failure}",
  "rides.import.track_failed": "{file}: the ride was imported, but its track could not be saved.",
  "rides.jump": "Jump to {year}",
  "rides.month.more.one": "Show {count} more ride",
  "rides.month.more.other": "Show {count} more rides",
  "rides.month.sum.one": "{count} ride · {km}",
  "rides.month.sum.other": "{count} rides · {km}",
  "rides.nomatch": "No ride matches these filters.",
  "rides.nomatch_clear": "Clear filters",
  "rides.seasons": "Seasons",
  "rides.stat.distance": "Ridden",
  "rides.stat.distance_sub": "{time} in the saddle",
  "rides.stat.longest": "Longest ride",
  "rides.stat.rides": "Rides",
  "rides.stat.rides_sub": "{recorded} recorded · {imported} imported",
  "rides.stat.seasons": "Seasons",
  "rides.stat.seasons_sub.one": "{count} season",
  "rides.stat.seasons_sub.other": "{count} seasons",
  "rides.undated": "Undated",
  "rides.year.bars": "Distance per month in {year}",
  "rides.year.fold": "Fold {year}",
  "rides.year.sum.one": "{count} ride · {km} · {time}",
  "rides.year.sum.other": "{count} rides · {km} · {time}",
  "rides.year.unfold": "Show {year}",
  "routes.action.delete": "Delete",
  "routes.action.rename": "Rename",
  "routes.badge.ridden.one": "ridden {count} time",
  "routes.badge.ridden.other": "ridden {count} times",
  "routes.confirm.delete": "Delete \"{name}\"? It will be removed from all synced devices.",
  "routes.count.one": "{count} route",
  "routes.count.other": "{count} routes",
  "routes.empty.action": "Plan a route",
  "routes.empty.text": "Plan a route and save it. It shows up here and on your phone.",
  "routes.empty.title": "No saved routes yet",
  "routes.heading": "Routes",
  "routes.info.body": "Routes are rides you planned. They sync with your phone; pick one to see it on the map and open it in the planner.",
  "routes.info.title": "Routes",
  "routes.kind.destination": "A to B",
  "routes.kind.loop": "Round trip",
  "routes.leg_profile": "{leg}: {profile}",
  "routes.meta.updated": "updated {date}",
  "routes.more": "More for {name}",
  "routes.new": "New route",
  "routes.no_match": "No route matches \"{query}\".",
  "routes.open_title": "Open in planner",
  "routes.phone_guidance_note": "Turn-by-turn guidance is added on your phone when you press Go.",
  "routes.prompt.name": "Route name",
  "routes.search_label": "Search routes",
  "routes.search_placeholder": "Search routes",
  "routes.sort.label": "Sort by",
  "routes.sort.length": "Length",
  "routes.sort.name": "Name",
  "routes.sort.updated": "Last changed",
  "routes.stat.length": "Length",
  "routes.stat.time": "Time",
  "routes.stat.twisty": "Twisty",
  "routes.status.connecting": "Connecting to your account...",
  "routes.sync_now": "Sync now",
  "routes.trip_counts": "{stops} · {legs}",
  "routes.trip_legs.one": "{count} leg",
  "routes.trip_legs.other": "{count} legs",
  "routes.trip_profiles": "Profiles: {profiles}",
  "routes.trip_stops.one": "{count} stop",
  "routes.trip_stops.other": "{count} stops",
  "rules.accept": "Accept rules",
  "rules.body": "Be respectful. Don't use offensive names or share offensive content. Only share what you have permission to share. The Vamoto team may change names, hide content or disable accounts that break these rules.",
  "rules.cancel": "Cancel",
  "rules.failed": "Couldn't save your agreement. Try again.",
  "rules.title": "Community rules",
  "scheme.mode.auto": "Auto",
  "scheme.mode.dark": "Dark",
  "scheme.mode.light": "Light",
  "scheme.theme.contrast": "High contrast",
  "scheme.theme.default": "Default",
  "seo.friend.description": "{name} shared their Vamoto friend code. Open this link to send a friend request.",
  "seo.friend.description_generic": "Someone shared their Vamoto friend code. Open this link to send a friend request.",
  "seo.friend.notfound.description": "This friend link is no longer valid. Ask for the QR code again.",
  "seo.friend.notfound.title": "Friend link no longer valid",
  "seo.friend.title": "Add {name} on Vamoto",
  "seo.friend.title_generic": "Add a friend on Vamoto",
  "seo.invite.description": "{inviter} has invited you to test Vamoto before release.",
  "seo.invite.description_generic": "You have been invited to test Vamoto before release.",
  "seo.invite.notfound.description": "This invite link is no longer valid. Ask the person who sent it for a new one.",
  "seo.invite.notfound.title": "Invite link no longer valid",
  "seo.invite.title": "Vamoto prerelease test",
  "seo.live.description": "You have been invited to test Vamoto before release.",
  "seo.live.title": "Vamoto prerelease test",
  "seo.rider.description.one": "{count} shared ride, {distance} in total. Rider profile @{handle} on Vamoto.",
  "seo.rider.description.other": "{count} shared rides, {distance} in total. Rider profile @{handle} on Vamoto.",
  "seo.rider.notfound.description": "There is no public rider page at this address.",
  "seo.rider.notfound.heading": "Rider not found",
  "seo.rider.notfound.title": "Rider not found on Vamoto",
  "seo.rider.title": "{name} on Vamoto",
  "seo.share.by": "Ridden by {name}",
  "seo.share.fallback_name": "Ride",
  "seo.share.notfound.description": "This share link does not exist any more, or it was never valid.",
  "seo.share.notfound.heading": "Shared ride not found",
  "seo.share.notfound.title": "Shared ride not found on Vamoto",
  "seo.share.tagline": "Shared from Vamoto, the motorcycle route planner that works offline.",
  "seo.share.title": "{name} on Vamoto",
  "settings.about.browser_id": "Browser id",
  "settings.about.browser_id_note": "Share this only if support asks for it.",
  "settings.about.impressum": "Impressum",
  "settings.about.invite_only": "Vamoto is invite-only during testing.",
  "settings.about.language": "Language",
  "settings.about.privacy": "Privacy",
  "settings.about.release_notes": "Release notes",
  "settings.about.release_notes_failed": "Could not load the release notes.",
  "settings.about.release_notes_initial": "Initial testing release",
  "settings.about.version": "Vamoto website {version}",
  "settings.account.confirm_sign_out": "Sign out @{handle}?",
  "settings.account.confirm_sign_out_body": "Your rides, routes and settings leave this browser. They stay in your account.",
  "settings.account.confirm_sign_out_unsynced.one": "{count} change on this browser has not been synced yet and will be lost.",
  "settings.account.confirm_sign_out_unsynced.other": "{count} changes on this browser have not been synced yet and will be lost.",
  "settings.account.confirm_unlink": "Remove {provider} as a sign-in method for this account?",
  "settings.account.last_identity": "That is your only sign-in method, so it cannot be removed.",
  "settings.account.link_in_app": "Link this in the Vamoto app.",
  "settings.account.methods_heading": "Sign-in methods",
  "settings.account.no_subscription": "No subscription",
  "settings.account.not_linked": "Not linked",
  "settings.account.only_method": "Only method",
  "settings.account.sign_out": "Sign out",
  "settings.account.storage_heading": "Online storage",
  "settings.account.subscription_heading": "Subscription",
  "settings.account.sync_now": "Sync now",
  "settings.account.unlink": "Unlink",
  "settings.account.unlink_failed": "Could not unlink: {message}",
  "settings.city.allow_ferries": "Ferries",
  "settings.city.allow_heading": "In cities, allow",
  "settings.city.allow_motorways": "Motorways",
  "settings.city.allow_tolls": "Tolls",
  "settings.city.discourage": "Avoid city centres",
  "settings.city.discourage_note": "Prefer bypasses and ring roads",
  "settings.city.fastest": "Fastest way through cities",
  "settings.city.fastest_note": "Your profile applies outside towns",
  "settings.city.heading": "Cities",
  "settings.data.delete_account": "Delete account...",
  "settings.data.delete_line": "Delete the account and everything synced",
  "settings.data.export": "Export my data (JSON)",
  "settings.data.export_failed": "Export failed: {message}",
  "settings.data.exported": "Export downloaded.",
  "settings.data.heading": "Your data",
  "settings.data.import": "Import data (JSON)...",
  "settings.data.import_failed": "Import failed: {message}",
  "settings.data.import_incomplete": "Import paused after {routes} routes, {locations} custom locations and {settings} settings. Choose the same file again to continue.",
  "settings.data.import_not_resumable": "This browser could not store the progress, so the next attempt starts from the beginning.",
  "settings.data.import_rejected.one": "{count} entry was rejected.",
  "settings.data.import_rejected.other": "{count} entries were rejected.",
  "settings.data.import_skipped.one": "{count} entry was skipped because the server already has it.",
  "settings.data.import_skipped.other": "{count} entries were skipped because the server already has them.",
  "settings.data.import_uncertain": "Import interrupted: at least {routes} routes, {locations} custom locations and {settings} settings were imported, but the last step is unconfirmed. Choose the same file again to continue.",
  "settings.data.imported": "Imported {routes} routes, {locations} custom locations and {settings} settings.",
  "settings.data.importing": "Importing...",
  "settings.data.preparing": "Preparing export...",
  "settings.delete.apple_confirm": "Confirm with Apple",
  "settings.delete.apple_needed": "To delete your account, sign in with Apple once more, then return here to delete it. Nothing is deleted without this confirmation. No longer have that Apple ID? Write to support.",
  "settings.delete.cancel": "Cancel",
  "settings.delete.confirm": "Delete everything",
  "settings.delete.done": "Account deleted. Local data wiped. Ride safe out there.",
  "settings.delete.failed": "Deletion failed: {message}",
  "settings.delete.heading": "Delete account",
  "settings.delete.phrase": "delete my account",
  "settings.delete.preview.friends": "Friends",
  "settings.delete.preview.hazard_reports": "Hazard reports",
  "settings.delete.preview.ride_tracks": "Ride recordings",
  "settings.delete.preview.rides": "Rides",
  "settings.delete.preview.route_inbox": "Routes friends sent you",
  "settings.delete.preview.routes": "Planned routes",
  "settings.delete.preview.row": "{label}: {count}",
  "settings.delete.preview.sessions": "Signed-in devices",
  "settings.delete.preview.shares": "Share links",
  "settings.delete.type_after": " to confirm:",
  "settings.delete.type_before": "Type ",
  "settings.delete.warning": "This permanently removes your account and every synced route and ridden track from the server, and wipes the local copy in this browser. There is no undo.",
  "settings.desc.about": "Version, release notes",
  "settings.desc.account": "Sign-in, devices, your data",
  "settings.desc.appearance": "Mode and theme",
  "settings.desc.friends": "What friends see",
  "settings.desc.general": "Units, language",
  "settings.desc.locations": "Your own places",
  "settings.desc.privacy": "Home protection",
  "settings.desc.profile": "Name, handle, public page",
  "settings.desc.routing": "Star, avoids, fine-tuning",
  "settings.desc.trails": "Trail preference",
  "settings.devices.empty": "No other devices.",
  "settings.devices.heading": "Your devices",
  "settings.devices.load_failed": "Could not load devices: {message}",
  "settings.devices.revoke": "Revoke",
  "settings.devices.show_all": "Show all {count}",
  "settings.devices.sign_out": "Sign out",
  "settings.devices.sign_out_everywhere": "Sign out everywhere else",
  "settings.devices.sign_out_everywhere_confirm": "Sign every other device out? This browser stays signed in.",
  "settings.devices.this_device": "This device",
  "settings.friends.empty": "No friends yet. Add friends in the Vamoto app.",
  "settings.friends.hide_near_home": "Hide my position near home",
  "settings.friends.list_heading": "Your friends",
  "settings.friends.load_failed": "Could not load your friends.",
  "settings.friends.requests_from": "Who can send me friend requests",
  "settings.friends.requests_from.anyone": "Anyone",
  "settings.friends.requests_from.code": "Only with my friend code",
  "settings.friends.ridden_map": "Show my ridden map on my public profile",
  "settings.friends.ridden_map_note": "Your ridden map is only shown while your profile is public.",
  "settings.friends.share_position": "Share my position with friends",
  "settings.friends.visibility_heading": "What friends see",
  "settings.group.riding": "Riding",
  "settings.group.website": "This website",
  "settings.group.you": "You",
  "settings.heading": "Settings",
  "settings.info.city.body": "These settings apply on your phone and here, on every route. Inside a city they help you get out or through the fastest way; an allow switch lifts your avoid setting inside cities only.",
  "settings.info.city.title": "Cities",
  "settings.info.data.body": "Downloads everything stored on the sync server for your account, including custom locations and deleted-route and deleted-location tombstones.\nRestores routes, custom locations and account settings from an export file into this account. Newer data on the server is kept.",
  "settings.info.data.title": "Your data",
  "settings.info.friends.body": "Friends see your position only while you ride, only within 200 km, and only while it is less than 15 minutes old. Add and remove friends in the Vamoto app.",
  "settings.info.friends.title": "What friends see",
  "settings.info.hide_home.body": "Hide parts of shared rides inside your home zone, including the start and end. You can change the zone's shape. Your own rides stay complete.",
  "settings.info.hide_home.title": "Hide home in shared rides",
  "settings.info.mode.body": "Mode makes the site light or dark. Theme picks whose colours. The site chrome follows it, and so do the route, ride and trail lines on the plan map.",
  "settings.info.mode.title": "Mode and theme",
  "settings.info.passkeys.body": "A passkey signs you in with your fingerprint, face or screen lock. Email codes keep working either way.",
  "settings.info.passkeys.title": "Passkeys",
  "settings.info.profiles.body": "These profiles apply on your phone and here. The star picks what a new route starts on.",
  "settings.info.profiles.title": "Riding profiles",
  "settings.info.public.body": "Your handle, join date and your totals over ALL rides (distance, riding time, climb) plus your records (top speed and deepest lean) become visible to anyone with the link. Individual rides stay private: feature a ride on this page from the Vamoto app.",
  "settings.info.public.title": "Public rider page",
  "settings.info.subscription.body": "Manage or renew your subscription from the Vamoto app; purchases are not handled on the website.",
  "settings.info.subscription.title": "Subscription",
  "settings.info.trails.body": "How hard route planning tries to follow your trails. The planner uses the same setting.",
  "settings.info.trails.title": "Trail preference",
  "settings.info.units.body": "Changes how distances, speeds and heights are shown. Everything the site stores and sends stays metric, so switching back shows the same rides and routes.",
  "settings.info.units.title": "Units",
  "settings.locations.count.one": "{count} location",
  "settings.locations.count.other": "{count} locations",
  "settings.locations.open": "Open custom locations",
  "settings.map.mode": "Mode",
  "settings.map.mode_group": "Mode",
  "settings.map.theme": "Theme",
  "settings.passkey.add": "Add a passkey in this browser",
  "settings.passkey.confirm_delete": "Delete the passkey \"{name}\"?",
  "settings.passkey.confirm_last": "You can still sign in with an email code.",
  "settings.passkey.delete": "Delete",
  "settings.passkey.delete_failed": "Could not delete: {message}",
  "settings.passkey.empty": "No passkeys in this account yet.",
  "settings.passkey.heading": "Passkeys",
  "settings.passkey.load_failed": "Could not load passkeys: {message}",
  "settings.passkey.meta": "Added {added}, last used {used}",
  "settings.passkey.name_fallback": "Passkey",
  "settings.passkey.never": "never",
  "settings.privacy.heading": "Home protection",
  "settings.privacy.hide_home": "Hide home in shared rides",
  "settings.privacy.home_line": "Home: {home}. Set your home in the Vamoto app.",
  "settings.privacy.home_line_empty": "No home is set yet, so nothing is trimmed. Set your home in the Vamoto app.",
  "settings.privacy.zone_add_point_hint": "Tap a handle between two points to add a point.",
  "settings.privacy.zone_busy": "Too many changes. Try again later.",
  "settings.privacy.zone_close_warning": "Parts of the edge are less than 5 km from home. This makes it easier to guess where you live.",
  "settings.privacy.zone_delete_point": "Delete point",
  "settings.privacy.zone_explainer": "Parts of shared rides inside this zone are hidden, including the start and end. You can change its shape.",
  "settings.privacy.zone_heading": "Home zone",
  "settings.privacy.zone_invalid": "This shape isn't valid. Check for crossing edges.",
  "settings.privacy.zone_load_error": "Couldn't load your zone. Try again.",
  "settings.privacy.zone_max_points": "Maximum of 10 points reached.",
  "settings.privacy.zone_must_contain_home": "Your home must be inside the zone.",
  "settings.privacy.zone_no_home": "Set your home in the app first.",
  "settings.privacy.zone_regenerate": "New shape",
  "settings.privacy.zone_regenerate_confirm": "Generate a new shape?",
  "settings.privacy.zone_regenerate_confirm_body": "This replaces your current shape.",
  "settings.privacy.zone_save": "Save",
  "settings.privacy.zone_saved": "Zone saved",
  "settings.privacy.zone_too_few_points": "Keep at least 4 points.",
  "settings.profile.copied": "Link copied to clipboard.",
  "settings.profile.copy": "Copy",
  "settings.profile.copy_blocked": "Copy blocked by the browser. The link is selected, press Ctrl/Cmd+C.",
  "settings.profile.display_name": "Display name",
  "settings.profile.handle": "Handle",
  "settings.profile.handle_rule": "3 to 30 characters: a to z, 0 to 9 and _",
  "settings.profile.identity_heading": "Name and picture",
  "settings.profile.picture_github": "Your picture comes from GitHub.",
  "settings.profile.picture_initial": "Link GitHub in the Vamoto app to show its picture.",
  "settings.profile.public_error": "Could not change the rider page: {message}",
  "settings.profile.public_heading": "Public rider page",
  "settings.profile.public_off": "Only you see your profile.",
  "settings.profile.public_on": "Anyone with the link can see it.",
  "settings.profile.public_toggle": "Show my rider page",
  "settings.profile.save": "Save",
  "settings.profile.save_error": "Could not save: {message}",
  "settings.profile.saved": "Profile saved.",
  "settings.profiles.advanced": "Advanced",
  "settings.profiles.avoid.ferries": "Avoid ferries",
  "settings.profiles.avoid.motorways": "Avoid motorways",
  "settings.profiles.avoid.tolls": "Avoid tolls",
  "settings.profiles.avoid.unpaved": "Avoid unpaved roads",
  "settings.profiles.avoid_heading": "Avoid",
  "settings.profiles.avoid_note": "These are preferences, not bans. A road is still used when it is the only way through.",
  "settings.profiles.close": "Close",
  "settings.profiles.edit": "Edit",
  "settings.profiles.heading": "Riding profiles",
  "settings.profiles.hint.curvy_alpha": "0 = the straightest way, 1 = curves at any cost.",
  "settings.profiles.hint.use_highways": "How welcome a motorway is when it saves time. Turn motorways off completely with the switch under \"Avoid\".",
  "settings.profiles.hint.use_scenic_tolls": "How much a nicer road is worth its toll. 0.2 is the lowest this one goes.",
  "settings.profiles.hint.use_small_roads": "How far the route goes out of its way for narrow back roads instead of main roads.",
  "settings.profiles.hint.use_trails": "How much you prefer unpaved roads. To avoid them, turn on their switch under Avoid.",
  "settings.profiles.ladder.0": "off",
  "settings.profiles.ladder.1": "low",
  "settings.profiles.ladder.2": "medium",
  "settings.profiles.ladder.3": "high",
  "settings.profiles.ladder.4": "max",
  "settings.profiles.load_failed": "Could not load the profiles. Try again later.",
  "settings.profiles.modified": "Changed",
  "settings.profiles.option.curvy_alpha": "Weight on curves",
  "settings.profiles.option.use_highways": "Use motorways",
  "settings.profiles.option.use_scenic_tolls": "Pay tolls for a nicer road",
  "settings.profiles.option.use_small_roads": "Use small roads",
  "settings.profiles.option.use_trails": "Unpaved roads",
  "settings.profiles.picker.balanced": "Balanced",
  "settings.profiles.picker.efficient": "Efficient",
  "settings.profiles.picker.scenic": "Scenic",
  "settings.profiles.picker_mode": "How far a curvy route may swing out",
  "settings.profiles.picker_mode_hint": "How far off its line from start to destination a curvy road may lie and still cost nothing extra. Scenic swings out furthest, Efficient stays closest. Round trips are not affected.",
  "settings.profiles.reset": "Reset to default",
  "settings.profiles.reset_confirm": "Reset {name} to its default settings?",
  "settings.profiles.reset_done": "{name} is back to default.",
  "settings.profiles.roughness": "Roughest road you like",
  "settings.profiles.roughness_hint": "Rougher roads cost extra on every route, the rougher the more. A curvy road rougher than this no longer counts as a nice road.",
  "settings.profiles.roughness_word.0": "Smooth asphalt",
  "settings.profiles.roughness_word.1": "Asphalt and paving stones",
  "settings.profiles.roughness_word.2": "Cobbles too",
  "settings.profiles.roughness_word.3": "Compacted gravel too",
  "settings.profiles.roughness_word.4": "Dirt roads too",
  "settings.profiles.roughness_word.5": "Loose gravel too",
  "settings.profiles.roughness_word.6": "Tracks and paths too",
  "settings.profiles.roughness_word.7": "Anything",
  "settings.profiles.star.aria": "Start new routes on {name}",
  "settings.profiles.starred": "Default",
  "settings.revoke.cancel": "Cancel",
  "settings.revoke.confirm": "Revoke",
  "settings.revoke.current": "This is the device you are using, so you will be signed out here.",
  "settings.revoke.failed": "Could not revoke: {message}",
  "settings.revoke.heading": "Sign out this device?",
  "settings.revoke.line_after": "?",
  "settings.revoke.line_before": "Revoke ",
  "settings.section.about": "About",
  "settings.section.account": "Account",
  "settings.section.appearance": "Appearance",
  "settings.section.friends": "Friends",
  "settings.section.general": "General",
  "settings.section.locations": "Custom locations",
  "settings.section.privacy": "Privacy",
  "settings.section.profile": "Profile",
  "settings.section.routing": "Riding profiles",
  "settings.section.trails": "Trails",
  "settings.trails.count.one": "{count} trail",
  "settings.trails.count.other": "{count} trails",
  "settings.trails.open": "Open Trails",
  "settings.trails.status.cached": "Showing the last list your phone sent.",
  "settings.trails.status.no_phone": "Your phone is not connected. Trails live on your phone, so this page needs the Vamoto app open and signed in to the same account.",
  "settings.trails.status.unreachable": "Could not reach your phone for the trail list. Try again in a moment.",
  "settings.trails.strength_explain": "Applies to GPX collections used in routing. Each leg can have its own strength.",
  "settings.trails.strength_label": "Trail preference",
  "settings.units.heading": "Units",
  "settings.units.imperial": "Imperial (mi, ft, mph)",
  "settings.units.metric": "Metric (km, m, km/h)",
  "shared.by": "Shared by ",
  "shared.doc_title": "{name} on Vamoto",
  "shared.error.bad_response": "The server returned something this page cannot render.",
  "shared.error.default": "Loading the shared ride failed. Try again later.",
  "shared.error.network": "Could not reach the server. Check your connection and try again.",
  "shared.error.not_found": "This shared ride does not exist. The link may be wrong, or the owner unshared it.",
  "shared.error.rate_limited": "Too many requests. Try again in {seconds}s.",
  "shared.meta.date_unknown": "date unknown",
  "shared.name_fallback": "Shared ride",
  "shared.plan_failed": "Could not hand this ride to the planner. Your browser is blocking session storage.",
  "shared.status.loading": "Loading shared ride...",
  "signin.account_disabled": "Your account has been disabled. Contact support@vamoto.app.",
  "signin.otp.expired": "That code has expired. Request a new one.",
  "signin.otp.invalid": "That code is wrong. Check the digits and try again.",
  "signin.otp.not_configured": "Email sign-in is unavailable right now.",
  "signin.otp.send_failed": "Could not send code: {message}",
  "signin.otp.sent": "We sent a 6-digit code to {email}.",
  "signin.otp.too_many": "Too many attempts. Request a new code.",
  "signin.otp.verify_failed": "Could not verify: {message}",
  "split.close": "Close",
  "split.fit_all": "Show all",
  "split.list": "List",
  "split.map": "Map",
  "split.view": "View",
  "store.sync.expired": "Session expired. Please sign in again.",
  "store.sync.failed": "Sync failed: {message}",
  "store.sync.not_signed_in": "Not signed in. Rides stay on this device.",
  "store.sync.rate_limited": "Rate limited. Try again in {seconds}s.",
  "store.sync.rejected.one": "Synced with {count} rejected document ({reason}).",
  "store.sync.rejected.other": "Synced with {count} rejected documents ({reason}).",
  "store.sync.signed_out": "Signed out. Rides stay on this device.",
  "store.sync.skipped.one": "Skipped {count} invalid pulled document.",
  "store.sync.skipped.other": "Skipped {count} invalid pulled documents.",
  "store.sync.staging_only": "This is the staging website, for testers only. Your account is on vamoto.app.",
  "store.sync.synced_at": "Synced at {time}.",
  "store.sync.syncing": "Syncing...",
  "store.sync.unreachable": "Sync server unreachable: {message}",
  "surface.group.asphalt": "Asphalt",
  "surface.group.compacted": "Compacted",
  "surface.group.gravel_dirt": "Gravel & dirt",
  "surface.group.impassable": "Impassable",
  "surface.group.path": "Path",
  "surface.group.rough": "Rough asphalt",
  "surface.group.smooth": "Smooth asphalt",
  "surface.group.unknown": "Unknown",
  "sync.storage_full": "This device has no free space left, so Vamoto couldn't save this here.",
  "tracks.unnamed_ride": "Unnamed ride",
  "trails.action.colour": "Colour",
  "trails.action.delete": "Delete",
  "trails.action.rename": "Rename",
  "trails.check_again": "Check again",
  "trails.confirm.delete": "Delete \"{name}\"? This removes it from your phone.",
  "trails.connect_phone": "Connect your phone",
  "trails.empty.text": "Import a GPX file to draw it on the map and prefer it while routing.",
  "trails.empty.title": "No trails yet",
  "trails.heading": "Trails",
  "trails.import": "Import GPX",
  "trails.info.body": "Import a GPX route network, for example a TET country file. Show it on the Plan map and prefer it while routing.\nTrails live on your phone, so importing needs the Vamoto app open and signed in to this account.",
  "trails.info.title": "Trails",
  "trails.more": "More for {name}",
  "trails.offline.text": "Trails live on your phone. Open the Vamoto app, signed in to this account.",
  "trails.offline.title": "Your phone isn't connected",
  "trails.peek.in_routing": "Used in routing",
  "trails.peek.loading": "Loading the line from your phone...",
  "trails.peek.no_line": "The line is not here yet. Your phone sends it when it is online.",
  "trails.peek.off_map": "Not on the Plan map",
  "trails.peek.off_routing": "Not used in routing",
  "trails.peek.on_map": "On the Plan map",
  "trails.prompt.name": "Trail name",
  "trails.row.colour": "Trail colour",
  "trails.row.map": "Map",
  "trails.row.map_all": "Show all on the Plan map",
  "trails.row.map_one": "Show on the Plan map",
  "trails.row.routing": "Routing",
  "trails.row.routing_all": "Use all in routing",
  "trails.row.routing_one": "Use in routing",
  "trails.status.mutation_failed": "That change did not reach your phone.",
  "trails.status.phone_offline": "Your phone isn't connected.",
  "trails.strength.max": "Max",
  "trails.strength.mild": "Mild",
  "trails.strength.off": "Off",
  "trails.strength.strong": "Strong",
  "trails.strength_explain.max": "Prefer your selected GPX trails as much as possible.",
  "trails.strength_explain.mild": "Slightly prefer your selected GPX trails.",
  "trails.strength_explain.off": "No preference for imported GPX trails.",
  "trails.strength_explain.strong": "Strongly prefer your selected GPX trails.",
  "trails.upload.chunk": "Uploading chunk {done}/{total}...",
  "trails.upload.done": "Imported \"{name}\".",
  "trails.upload.duplicate": "Already imported.",
  "trails.upload.failed": "Upload failed.",
  "trails.upload.no_response": "Upload failed - your phone did not respond.",
  "trails.upload.preparing": "Preparing...",
  "trails.upload.too_large": "That file is too large (max 30 MB).",
  "trails_ui.matched": "{pct}% matched",
  "trails_ui.mutation.bad_request": "That name is not valid.",
  "trails_ui.mutation.default": "Your phone rejected that change.",
  "trails_ui.mutation.not_found": "That trail is no longer on your phone.",
  "trails_ui.ungrouped": "Ungrouped",
  "trails_ui.upload.bad_chunk": "Upload failed - try again.",
  "trails_ui.upload.default": "Upload failed.",
  "trails_ui.upload.hash_mismatch": "Upload failed - the file did not arrive intact. Try again.",
  "trails_ui.upload.no_tracks": "That GPX file has no tracks to import.",
  "trails_ui.upload.too_large": "That file is too large for your phone's trail import.",
  "version.dismiss": "Dismiss",
  "version.new": "A new version of Vamoto is live.",
  "version.reload": "Reload",
  "waypoints.loop_trim": "Round trips start and end at pin 1; other pins removed."
}
