{
  "emails.passwordReset.subject": "RecipeSage Password Reset",
  "emails.passwordReset.greeting": "Hello,",
  "emails.passwordReset.intro": "Someone recently requested a password reset link for the RecipeSage account associated with this email address.",
  "emails.passwordReset.disregardNotice": "If you did not request a password reset, please disregard this email.",
  "emails.passwordReset.resetLinkText": "Click here to reset your password",
  "emails.passwordReset.copyUrlFallback": "or paste this url into your browser: {{resetLink}}",
  "emails.passwordReset.pasteUrlInstruction": "To reset your password, paste this url into your browser: {{resetLink}}",

  "emails.signature.closing": "Best,",
  "emails.signature.role": "Developer of RecipeSage",
  "emails.signature.socialHeader": "Social:",

  "pages.app.oldBrowserAlert.header": "Unsupported Browser",
  "pages.app.oldBrowserAlert.message": "It looks like you're using an old browser that isn't supported. Some functionality may not work or may be broken. Please switch to a modern browser such as Firefox for full functionality.",
  "pages.app.browser.title": "RecipeSage - The Personal Recipe Keeper",
  "pages.app.nav.login": "Log In",
  "pages.app.nav.register": "Create an Account",
  "pages.app.nav.download": "Download and Install",
  "pages.app.nav.contribute": "Contribute!",
  "pages.app.nav.about": "About & Support",
  "pages.app.nav.home": "My Recipes",
  "pages.app.nav.labels": "Manage Labels",
  "pages.app.nav.people": "People & Profile",
  "pages.app.nav.discover": "Discover",
  "pages.app.nav.messages": "Messages",
  "pages.app.nav.inbox": "Recipe Inbox",
  "pages.app.nav.newrecipe": "Create Recipe",
  "pages.app.nav.shopping": "Shopping Lists",
  "pages.app.nav.meals": "Meal Plans",
  "pages.app.nav.tools": "Tools & Helpers",
  "pages.app.nav.settings": "Settings",
  "pages.app.nav.docs": "Docs",
  "pages.app.nav.github": "GitHub",
  "pages.app.nav.pricing": "Pricing",
  "pages.app.nav.legal": "Legal",
  "pages.app.newMessageToast.message": "New message from {{name}}",
  "pages.app.newMessageToast.view": "View",

  "pages.pricing.tabTitle": "Pricing - RecipeSage",
  "pages.pricing.title": "Pricing",
  "pages.pricing.subtitle": "Free and open source, no gotchas.",
  "pages.pricing.intro.alwaysFree": "RecipeSage is completely free for everyone. No ads, no time-limited trial, and no features locked behind a paywall.",
  "pages.pricing.intro.openSource": "RecipeSage is a hobby project I work on in my free time, alongside my other open source projects. The code is open source, so anyone can read it, fork it, or self-host their own copy.",
  "pages.pricing.support.heading": "Supporting the project",
  "pages.pricing.support.body": "If you'd like to support the project, you can make a one-time or recurring contribution.",
  "pages.pricing.support.hosting": "Contributions are entirely optional and go toward server and image-hosting costs.",
  "pages.pricing.support.link": "Go to the contribute page",

  "pages.welcome.tabTitle": "RecipeSage",
  "pages.welcome.selfhostTitle": "RecipeSage Self Hosted!",
  "pages.welcome.selfhostSubtitle": "An unofficial selfhosted version of RecipeSage.com, a free recipe keeper, meal planner, and shopping list organizer for Web, Desktop, iOS, and Android",
  "pages.welcome.title": "All of your recipes in one place",
  "pages.welcome.subtitle": "A free, open source recipe keeper, meal planner, and shopping list manager for Web, Desktop, iOS, and Android.",
  "pages.welcome.registerButton": "Create an account",
  "pages.welcome.loginButton": "Log In",
  "pages.welcome.description.welcome": "Welcome to RecipeSage!",
  "pages.welcome.description.1": "RecipeSage is a personal cookbook and recipe organizer for cooks who collect recipes from everywhere: blogs, screenshots, PDFs, and handwritten family recipes. It gives them all one searchable home that travels with you between devices.",
  "pages.welcome.description.2": "Auto-import recipes from any website, photo, PDF, or document. Sync your recipes, meal plans, and shopping lists across web, desktop, iOS, and Android, and load them even when you're offline at the back of the grocery store. Plan your meals, build smart shopping lists, and turn your collection into a printable cookbook. Share and collaborate with family and friends.",
  "pages.welcome.description.features": "What can RecipeSage do?",
  "pages.welcome.description.features.import.title": "Save recipes from any link, photo, PDF, or document",
  "pages.welcome.description.features.import.description": "Create recipes automatically from a web URL, a photo of a cookbook page or handwritten recipe card, or any document.",
  "pages.welcome.description.features.nutrition.title": "Nutrition tracking",
  "pages.welcome.description.features.nutrition.description": "Track calories, macros, vitamins, and minerals per serving, auto-fill by pasting a nutrition label, and filter your recipes by any nutrition field",
  "pages.welcome.description.features.cookingAssistant.title": "Cooking assistant",
  "pages.welcome.description.features.cookingAssistant.description": "Ask the built-in cooking assistant for substitutions, techniques, conversions, and recipe ideas",
  "pages.welcome.description.features.cookMode.title": "Cook Mode",
  "pages.welcome.description.features.cookMode.description": "A full-screen, distraction-free cooking view that puts the ingredients and steps side by side. Check off each as you cook, scale servings on the fly, and it keeps the screen awake with a large adjustable font. Great for a kitchen tablet!",
  "pages.welcome.description.features.tools.title": "Kitchen tools (a lot of them!)",
  "pages.welcome.description.features.tools.description": "A built in pan size converter, measurement converter, cooking temperature lookup tool, nutrition calculator, and a tool to search your recipes by the ingredients you have on hand",
  "pages.welcome.description.features.apps.title": "Apps for every device",
  "pages.welcome.description.features.apps.description": "Native desktop apps for Windows, macOS, and Linux, native iOS and Android apps, and a web app that installs to your home screen. Everything stays in sync.",
  "pages.welcome.description.features.offline.title": "Works offline",
  "pages.welcome.description.features.offline.description": "Your recipe collection stays searchable even without internet and syncs automatically across all of your devices, with a one-tap offline mode for weak connections",
  "pages.welcome.description.features.mealPlanning.title": "Drag and drop meal planning",
  "pages.welcome.description.features.mealPlanning.description": "Schedule your meals on a calendar with drag and drop, repeat items daily, weekly, or monthly, print the plan, and share it with family",
  "pages.welcome.description.features.shoppingLists.title": "Smart shopping lists",
  "pages.welcome.description.features.shoppingLists.description": "Auto-categorized by grocery aisle and intelligently grouped: add recipes directly to a shopping list and similar items are combined",
  "pages.welcome.description.features.scaling.title": "Recipe scaling and unit conversion",
  "pages.welcome.description.features.scaling.description": "Scale a recipe by a multiplier, to a target yield, or by a single ingredient's amount, and convert between metric and imperial units",
  "pages.welcome.description.features.editor.title": "Rich recipe editor",
  "pages.welcome.description.features.editor.description": "A formatting toolbar for ingredients, instructions, and notes with section headers, bold, italic, underline, and tables",
  "pages.welcome.description.features.search.title": "Powerful search and labels",
  "pages.welcome.description.features.search.description": "Search for recipes, including a by-ingredient tool, or filter by a set of labels that you assign",
  "pages.welcome.description.features.sharing.title": "Sharing and collaboration",
  "pages.welcome.description.features.sharing.description": "Share recipes publicly or with friends, and collaborate on meal plans and shopping lists",
  "pages.welcome.description.features.migration.title": "Bulk import from a wide variety of sources",
  "pages.welcome.description.features.migration.description": "Imports from: Pepperplate, Living Cookbook, Paprika, Mela, Crouton, Cookmate, Recipe Keeper, CopyMeThat, CookBookManager, Flavorish, Evernote, Plan to Eat, MyRecipeBox, or any JSON-LD / CSV export",
  "pages.welcome.description.features.export.title": "Export and data portability",
  "pages.welcome.description.features.export.description": "Your data is your own. RecipeSage doesn't hold it hostage. Export your data to PDF, JSON-LD, or plaintext at any time",
  "pages.welcome.description.features.browserExtension.title": "Browser extension for Firefox and Chrome",
  "pages.welcome.description.features.browserExtension.description": "Clip recipes from any webpage in one click directly into your RecipeSage account while you're browsing sites across the web, without opening the app",
  "pages.welcome.description.cta": "Why RecipeSage?",
  "pages.welcome.description.cta.noAds": "Free and open source: no ads, no paywall, no tracking",
  "pages.welcome.description.cta.crossPlatform": "Native apps for Windows, macOS, Linux, iOS, and Android, plus any web browser, online or offline",
  "pages.welcome.description.cta.autoImport": "Auto-import from any URL, photo, PDF, or text file",
  "pages.welcome.description.cta.collaboration": "Collaborate with family and friends on meals and shopping",
  "pages.welcome.description.cta.selfHost": "Self-host on your own server, or use the free hosted version at RecipeSage.com",
  "pages.welcome.description.cta.api": "Public, documented API that you can use if you're technical",
  "pages.welcome.languages.title": "In your language",
  "pages.welcome.languages.description": "RecipeSage is community-translated. The interface, ingredient parsing, and shopping list categorization all work in your language.",
  "pages.welcome.demoVideo.label": "RecipeSage auto-import demo",

  "pages.www.nav.language": "Language",

  "pages.auth.tabTitle": "RecipeSage",
  "pages.auth.title.login": "Log In",
  "pages.auth.title.register": "Create an Account",
  "pages.auth.selfhostWarning": "Note: This is a selfhosted version of RecipeSage and is therefore not associated with RecipeSage.com or any of the accounts located on the main site.",
  "pages.auth.welcome.login": "Welcome back!",
  "pages.auth.welcome.login.sub": "Please login with your account details below.",
  "pages.auth.welcome.register": "Welcome!",
  "pages.auth.welcome.register.sub1": "We need a few details to create your account.",
  "pages.auth.welcome.register.sub2": "After this, you'll be set up and ready to go.",
  "pages.auth.input.name": "Full Name or Nickname",
  "pages.auth.input.email": "Email",
  "pages.auth.input.password": "Password",
  "pages.auth.showHidePassword": "Show/hide password",
  "pages.auth.input.confirmPassword": "Confirm Password",
  "pages.auth.selfhostWarning2": "Make sure you trust the site owner of this selfhost copy",
  "pages.auth.button.login": "Log In",
  "pages.auth.button.register": "Create Account",
  "pages.auth.button.forgotPassword": "Forgot password",
  "pages.auth.button.registerInstead": "Create an account instead",
  "pages.auth.button.loginInstead": "Log in instead",
  "pages.auth.or": "OR",
  "pages.auth.error.invalidEmail": "Please enter a valid email address.",
  "pages.auth.error.invalidEmailPassword": "Please enter a valid email address and a password with at least 6 characters.",
  "pages.auth.error.noName": "Please enter a name (you can enter a nickname!)",
  "pages.auth.error.noPassword": "Please enter a password.",
  "pages.auth.error.passwordLength": "Please enter a password at least 6 characters long.",
  "pages.auth.error.noEmail": "Please enter your email address.",
  "pages.auth.error.passwordMatch": "The password and confirmation you entered do not match.",
  "pages.auth.error.incorrectEmail": "No account with that email address exists.",
  "pages.auth.error.incorrectPassword": "The password provided does not match the account on record.",
  "pages.auth.error.ssoAccount": "The account you're trying to log into does not have a password set. Please sign in with Google or use the password reset button to set a password.",
  "pages.auth.error.registrationDisabled": "Registration is disabled via the DISABLE_REGISTRATION environment variable",
  "pages.auth.error.emailTaken": "An account with that email address already exists.",
  "pages.auth.forgot.alert.header": "Password Reset Triggered",
  "pages.auth.forgot.alert.message": "If there is a RecipeSage account associated with that email address, you should receive a password reset link within the next few minutes.",
  "pages.extensionAuth.title": "Connect Browser Extension",
  "pages.extensionAuth.banner": "You're connecting the RecipeSage browser extension to this account.",
  "pages.extensionAuth.loading": "Checking your session...",
  "pages.extensionAuth.signedInAs": "You're signed in as {{email}}",
  "pages.extensionAuth.continue": "Continue",
  "pages.extensionAuth.useDifferentAccount": "Use a different account",
  "pages.extensionAuth.officialBadge": "Official RecipeSage extension",
  "pages.extensionAuth.unofficialWarning.title": "We can't verify this is the official RecipeSage extension.",
  "pages.extensionAuth.unofficialWarning.body": "Only continue if you installed this extension yourself and you trust it. Otherwise, this could be an attempt to take over your account.",
  "pages.extensionAuth.invalidRequest.title": "Invalid sign-in request",
  "pages.extensionAuth.invalidRequest.message": "This page is used by the RecipeSage browser extension to sign in. Open the extension and try again.",

  "pages.home.tabTitle": "Recipes - RecipeSage",
  "pages.home.title.selectionMode": "{{count}} Selected",
  "pages.home.title.main": "My Recipes",
  "pages.home.title.inbox": "Recipe Inbox",
  "pages.home.title.sharedAll": "Shared Recipes",
  "pages.home.title.sharedLabel": "Shared Label: {{label}}",
  "pages.home.title.sharedAll.withProfile": "{{name}}'s Shared Recipes",
  "pages.home.title.sharedLabel.withProfile": "{{name}}'s Shared Label: {{label}}",
  "pages.home.search.placeholder": "Search",
  "pages.home.search.filter": "Filter",
  "pages.home.loading": "Loading your recipes...",
  "pages.home.recipe.source": "Source:",
  "pages.home.recipe.from": "From:",
  "pages.home.recipe.labels": "Labels:",
  "pages.home.recipe.selected": "Selected",
  "pages.home.recipe.fromSharedCollection": "Friend's Recipe",
  "pages.home.errors.emptyCollection.title": "This user's collection is empty",
  "pages.home.errors.emptyCollection.message": "This shared collection has no recipes in it.",
  "pages.home.errors.noRecipes.title": "Welcome to RecipeSage!",
  "pages.home.errors.noRecipes.message1": "This is where your recipes will appear.",
  "pages.home.errors.noRecipes.message2": "It looks like you don't have any recipes yet.",
  "pages.home.errors.noRecipes.message3": "Click the + button in the bottom right corner to add one!",
  "pages.home.errors.noRecipes.message4": "You can also import recipes from other platforms.",
  "pages.home.errors.noRecipes.message5": "Use the side menu to go to settings -> import",
  "pages.home.errors.noRecipes.message6": "You can install the clip tool extension on desktop browsers:",
  "pages.home.errors.noRecipes.message7": "For detailed tutorials for how to use the app, visit the documentation",
  "pages.home.errors.inboxEmpty.message1": "Your recipe inbox is empty.",
  "pages.home.errors.inboxEmpty.message2": "When someone sends you a recipe, it will show up here!",
  "pages.home.errors.noResultsFilters": "No recipes matching the current filters",
  "pages.home.errors.noSearchResults.message1": "No search results.",
  "pages.home.errors.noSearchResults.message2": "Search includes:",
  "pages.home.errors.noSearchResults.message3": "Title, description, source, ingredients, and notes.",
  "pages.home.addLabel.header": "Add Label to Selected Recipes",
  "pages.home.addLabel.message": "Enter the name for the label",
  "pages.home.addLabel.placeholder": "Label Name",
  "pages.home.deleteSelected.header": "Confirm Delete",
  "pages.home.deleteSelected.message": "This will permanently delete the selected recipes from your account. This action is irreversible. The following recipes will be deleted: {{recipeNames}}",
  "pages.home.selectionNotOwned.header": "Recipes from other users selected",
  "pages.home.selectionNotOwned.message": "You can only do this with your own recipes. These recipes belong to another user, so deselect them to continue: {{recipeNames}}",
  "pages.home.exportSelected.header": "Choose Format",
  "pages.home.exportSelected.message": "What format would you like to download these recipes in?",
  "pages.home.exportSelected.pdf": "PDF Format",
  "pages.home.exportSelected.text": "Plain Text Format",
  "pages.home.exportSelected.processing.header": "Exporting Recipes",
  "pages.home.exportSelected.processing.message": "We're working on preparing those recipes for download. This can take a few minutes. The export will be visible for download on the export page within settings.",
  "pages.home.exportSelected.processing.view": "View & Download",

  "pages.homeSearchFilterPopover.title": "Search Filters",
  "pages.homeSearchFilterPopover.filterByRating": "Filter by Rating",
  "pages.homeSearchFilterPopover.filterByLabel": "Filter by Label",
  "pages.homeSearchFilterPopover.filterByNutrition": "Filter by Nutrition",
  "pages.homeSearchFilterPopover.matchAllLabels": "Match All Labels",
  "pages.homeSearchFilterPopover.includeFriends": "Show Friends Recipes",
  "pages.homeSearchFilterPopover.includeFriends.yes": "Always",
  "pages.homeSearchFilterPopover.includeFriends.search": "Only in search results",
  "pages.homeSearchFilterPopover.includeFriends.browse": "Only when not searching",
  "pages.homeSearchFilterPopover.includeFriends.no": "Never",
  "pages.homeSearchFilterPopover.optionsHidden": "Note: some options are hidden, since this is a shared collection",

  "pages.notfound.title": "Page Not Found",
  "pages.notfound.error.title": "Page Not Found!",
  "pages.notfound.error.message1": "It looks like the page you are looking for doesn't exist.",
  "pages.notfound.error.message2": "Check to see if you typed the URL correctly.",
  "pages.notfound.error.message3": "If you're still having trouble, or if somewhere in the app took you here, please contact me.",
  "pages.notfound.error.contact": "Contact me",
  "pages.notfound.error.goHome": "Click here to go to your recipes",

  "pages.homepopover.options": "Options",
  "pages.homepopover.options.layout": "Layout",
  "pages.homepopover.options.layout.tiles": "Tiles",
  "pages.homepopover.options.layout.list": "List",
  "pages.homepopover.options.layout.compact": "Compact",
  "pages.homepopover.options.showLabels": "Show Labels",
  "pages.homepopover.options.showLabelToggles": "Show Label Toggles",
  "pages.homepopover.options.showImages": "Show Images",
  "pages.homepopover.options.showSource": "Show Source",
  "pages.homepopover.options.showRecipeDescription": "Show Description",
  "pages.homepopover.options.showRating": "Show Rating",
  "pages.homepopover.options.sortBy": "Sort by",
  "pages.homepopover.options.sortBy.title": "Title",
  "pages.homepopover.options.sortBy.createdNewest": "Created (newest first)",
  "pages.homepopover.options.sortBy.createdOldest": "Created (oldest first)",
  "pages.homepopover.options.sortBy.updatedNewest": "Updated (newest first)",
  "pages.homepopover.options.sortBy.updatedOldest": "Updated (oldest first)",
  "pages.homepopover.options.sortBy.lastMadeNewest": "Last made (newest first)",
  "pages.homepopover.options.sortBy.lastMadeOldest": "Last made (oldest first)",
  "pages.homepopover.options.unselectAllRecipes": "Unselect All Recipes",
  "pages.homepopover.options.selectMultipleRecipes": "Select Multiple Recipes",
  "pages.homepopover.warning.optionsHidden": "Note: some options are hidden, since this is a shared collection",
  "pages.homepopover.labelShared": "Shared",
  "pages.homepopover.labelSharedCollection": "Labels marked with \"Shared\" are owned by other users",
  "pages.homepopover.labelNull": "You don't have any labels. You can create labels on the recipe details page.",
  "pages.homepopover.unlabeled": "Unlabeled Only",

  "pages.recipeDetails.tabTitle": "Recipe Details - RecipeSage",
  "pages.recipeDetails.pageTitle": "Recipe Details",
  "pages.recipeDetails.rating": "Rating",
  "pages.recipeDetails.untitled": "Untitled",
  "pages.recipeDetails.source": "Source",
  "pages.recipeDetails.activeTime": "Active Time",
  "pages.recipeDetails.totalTime": "Total Time",
  "pages.recipeDetails.yield": "Yield",
  "pages.recipeDetails.sentBy": "This recipe was sent to you by {{name}}",
  "pages.recipeDetails.sentByAction": "Add this recipe to your recipes by clicking the button at the bottom of the page.",
  "pages.recipeDetails.ingredients": "Ingredients",
  "pages.recipeDetails.noIngredients": "No Ingredients",
  "pages.recipeDetails.scaleStatus": "{{scale}}x scale",
  "pages.recipeDetails.instructions": "Instructions",
  "pages.recipeDetails.noInstructions": "No Instructions",
  "pages.recipeDetails.nutrition": "Nutrition (per serving)",
  "pages.recipeDetails.nutritionServingSize": "Serving Size",
  "pages.recipeDetails.nutritionCalories": "Calories",
  "pages.recipeDetails.nutritionTotalFat": "Total Fat",
  "pages.recipeDetails.nutritionSaturatedFat": "Saturated Fat",
  "pages.recipeDetails.nutritionTransFat": "Trans Fat",
  "pages.recipeDetails.nutritionPolyunsaturatedFat": "Polyunsaturated Fat",
  "pages.recipeDetails.nutritionMonounsaturatedFat": "Monounsaturated Fat",
  "pages.recipeDetails.nutritionCholesterol": "Cholesterol",
  "pages.recipeDetails.nutritionSodium": "Sodium",
  "pages.recipeDetails.nutritionTotalCarbs": "Total Carbohydrates",
  "pages.recipeDetails.nutritionDietaryFiber": "Dietary Fiber",
  "pages.recipeDetails.nutritionTotalSugars": "Total Sugars",
  "pages.recipeDetails.nutritionAddedSugars": "Added Sugars",
  "pages.recipeDetails.nutritionProtein": "Protein",
  "pages.recipeDetails.nutritionVitaminD": "Vitamin D",
  "pages.recipeDetails.nutritionCalcium": "Calcium",
  "pages.recipeDetails.nutritionIron": "Iron",
  "pages.recipeDetails.nutritionPotassium": "Potassium",
  "pages.recipeDetails.nutritionOtherDetails": "Other Nutrition Details",
  "pages.recipeDetails.units.kcal": "{{value}} kcal",
  "pages.recipeDetails.units.g": "{{value}} g",
  "pages.recipeDetails.units.mg": "{{value}} mg",
  "pages.recipeDetails.units.mcg": "{{value}} mcg",
  "pages.recipeDetails.notes": "Notes",
  "pages.recipeDetails.noNotes": "No Notes",
  "pages.recipeDetails.labels": "Labels",
  "pages.recipeDetails.labels.uncatLabels": "General",
  "pages.recipeDetails.created": "Created",
  "pages.recipeDetails.updated": "Last edited",
  "pages.recipeDetails.lastMadeAt": "Last made",
  "pages.recipeDetails.lastMadeAtUpdated": "Last made date updated to today",
  "pages.recipeDetails.inInbox": "This recipe is in your inbox, shared to you by another user.",
  "pages.recipeDetails.saveToMyRecipes": "Save to My Recipes",
  "pages.recipeDetails.doesNotBelongToYou": "This recipe does not belong to you yet.",
  "pages.recipeDetails.requiresAccountToSave": "Create an account or login to save this recipe to your collection.",
  "pages.recipeDetails.registerOrLoginToSave": "Register/Login to Save",
  "pages.recipeDetails.edit": "Edit",
  "pages.recipeDetails.delete": "Delete",
  "pages.recipeDetails.addToShoppingList": "Add to Shopping List",
  "pages.recipeDetails.addToMealPlan": "Add to Meal Plan",
  "pages.recipeDetails.share": "Share",
  "pages.recipeDetails.print": "Print",
  "pages.recipeDetails.makeACopy": "Make a Copy",
  "pages.recipeDetails.publishToDiscover": "Publish to Discover",
  "pages.recipeDetails.pinRecipe": "Pin Recipe Open",
  "pages.recipeDetails.unPinRecipe": "Unpin Recipe",
  "pages.recipeDetails.delete.header": "Confirm Delete",
  "pages.recipeDetails.delete.message": "This will permanently delete the recipe from your account. This action is irreversible.",
  "pages.recipeDetails.cloned": "The recipe has been saved to your account",
  "pages.recipeDetails.similar": "Similar recipes in your collection",
  "pages.recipeDetails.linkedRecipes": "Linked Recipes",

  "pages.recipeDetailsPopover.options": "Options",
  "pages.recipeDetailsPopover.keepScreenOn": "Keep Screen On",
  "pages.recipeDetailsPopover.actions": "Actions",
  "pages.recipeDetailsPopover.addToShoppingList": "Add to Shopping List",
  "pages.recipeDetailsPopover.addToMealPlan": "Add to Meal Plan",
  "pages.recipeDetailsPopover.share": "Share",
  "pages.recipeDetailsPopover.print": "Print",
  "pages.recipeDetailsPopover.pinRecipe": "Pin Recipe Open",
  "pages.recipeDetailsPopover.unPinRecipe": "Unpin Recipe",
  "pages.recipeDetailsPopover.edit": "Edit",
  "pages.recipeDetailsPopover.makeACopy": "Make a Copy",
  "pages.recipeDetailsPopover.setLastMadeToday": "Mark as Made Today",
  "pages.recipeDetailsPopover.enterCookMode": "Enter Cook Mode",
  "pages.recipeDetailsPopover.dangerZone": "Danger Zone",
  "pages.recipeDetailsPopover.delete": "Delete Recipe",

  "pages.cook.tabTitle": "Cook Mode - RecipeSage",
  "pages.cook.loading": "Loading recipe...",
  "pages.cook.loadFailed": "We couldn't load this recipe. Please check your connection and try again.",
  "pages.app.localDbUpgrade.confirm": "A new version of the app is available. The app will refresh to load the new version",
  "pages.app.localDbUpgrade.notRefreshed": "The app will not work correctly until it is refreshed",
  "pages.cook.notFound": "This recipe is no longer available. It may have been deleted or is no longer shared with you.",
  "pages.cook.backToRecipes": "Back to my recipes",

  "pages.rselectpopover.resetAll": "Reset All",
  "pages.rselectpopover.done": "Done",

  "pages.legal.tabTitle": "Legal, agreements and disclaimers - RecipeSage",
  "pages.legal.title": "Legal, agreements and disclaimers",

  "pages.about.tabTitle": "About & Support - RecipeSage",
  "pages.about.title": "About & Support",
  "pages.about.metaDescription": "Meet the developer behind RecipeSage and get help through Discord, GitHub, and the user guide.",
  "pages.about.links.details": "About Me & RecipeSage",
  "pages.about.links.contact": "Contact",
  "pages.about.links.contribute": "Contribute!",
  "pages.about.links.userGuide": "User Guide (Tutorials)",
  "pages.about.links.releaseNotes": "Release Notes",
  "pages.about.links.legal": "Legal, agreements and disclaimers",
  "pages.about.socialTitle": "Social Media",

  "pages.aboutDetails.tabTitle": "More About Me & RecipeSage",
  "pages.aboutDetails.title": "More About Me & RecipeSage",
  "pages.aboutDetails.1.title": "A little about me",
  "pages.aboutDetails.1.1": "I'm a software developer in southern California. I do a lot of work on open source code and I spend a lot of time working on small projects.",
  "pages.aboutDetails.1.2": "RecipeSage is one of my hobbies, and I work on it in my free time alongside a lot of other projects. It's not my job and I don't make a living off of it, but it brings me a lot of joy to work on the project.",

  "pages.aboutDetails.2.title": "Why create RecipeSage?",
  "pages.aboutDetails.2.1": "I created RecipeSage to host recipes for me and my family. After trying multiple recipe programs online, I felt it would be best to create a recipe program that worked exactly as me, my mother, my girlfriend (now wife!), and my sibling wanted it to.",
  "pages.aboutDetails.2.2": "I'm a believer in open source software, and I want RecipeSage to be free to use. Everyone should be able to access and use this software, and I never want to subject RecipeSage users to ads or charge to be able to use the app.",
  "pages.aboutDetails.2.3": "If you'd like to contribute to support development, I'd really appreciate it. It's costly to run servers and host images. As a thank you, contributing gives you more of the parts that cost the most to run, like high-resolution and multiple images per recipe, unlimited cooking assistant messages, and a higher daily allowance for imports.",
  "pages.aboutDetails.contribute": "Contribute page",
  "pages.aboutDetails.social": "Social Media",

  "pages.contact.tabTitle": "Contact Me - RecipeSage",
  "pages.contact.title": "Contact Me",
  "pages.contact.subtitle": "Contact Info",
  "pages.contact.pleaseUserGuide": "For any questions, please refer to the user guide:",
  "pages.contact.discord": "For any issues, bugs, or feature suggestions, you can reach out to me via our Discord: ",
  "pages.contact.discord.link": "Discord Link",
  "pages.contact.github": "While Discord is preferred, you can also report things directly on GitHub (slower response time): ",
  "pages.contact.github.link": "GitHub Link",
  "pages.contact.cantUseDiscord": "I can't use Discord and the documentation doesn't answer the issue/question I have",
  "pages.contact.emailMe": "I'm slow to respond to email (sorry!):",

  "pages.contact.socialTitle": "Social Media",

  "pages.contribute.tabTitle": "Contribute - RecipeSage",
  "pages.contribute.selfhostRedirect": "Opening the RecipeSage site, since selfhosted versions aren't linked to Stripe",
  "pages.contribute.title": "Contribute",
  "pages.contribute.subtitle": "Contribute to RecipeSage",
  "pages.contribute.mission": "My goal is to keep RecipeSage open to anyone, without burdening the experience with ads.",
  "pages.contribute.purpose": "However, as RecipeSage grows, hosting costs for servers and images begin to add up.",
  "pages.contribute.monthly": "Monthly",
  "pages.contribute.yearly": "Yearly",
  "pages.contribute.yearlyMonthly": "Monthly & Yearly",
  "pages.contribute.yearlyMonthly.description": "Applies to your account for as long as your recurring contribution is active",
  "pages.contribute.oneTime": "One-Time",
  "pages.contribute.oneTime.description": "Applies to your account for one year.",
  "pages.contribute.custom": "Custom",
  "pages.contribute.action": "Contribute!",
  "pages.contribute.bonus.title": "As a thank you for helping cover the parts of RecipeSage that cost the most to run, you'll be able to:",
  "pages.contribute.bonus.feature.1": "Upload images in high-resolution",
  "pages.contribute.bonus.feature.2": "Upload multiple images for each recipe",
  "pages.contribute.bonus.feature.3": "Unlimited cooking assistant messages",
  "pages.contribute.bonus.feature.4": "Higher daily usage allowance for recipe clipping, OCR/image & PDF recognition, URL & text-file imports, and nutrition autofill",
  "pages.contribute.bonus.enabled": "Enabled",
  "pages.contribute.bonus.reason": "Everything you need to keep, plan, and cook your recipes is free for everyone. Contributing is entirely optional, always.",
  "pages.contribute.cta.1": "I originally created RecipeSage for my own family to host recipes we enjoy sharing. Since then, RecipeSage has grown into a fully-fledged open source project.",
  "pages.contribute.cta.2": "Please consider contributing toward the ongoing maintenance of RecipeSage.",
  "pages.contribute.minimum": "Unfortunately the minimum amount is ${{amount}} due to transaction fees - apologies",
  "pages.contribute.manage": "To manage an existing recurring contribution, click here",

  "pages.contributeThankYou.tabTitle": "Thank You - RecipeSage",
  "pages.contributeThankYou.title": "Thank You!",
  "pages.contributeThankYou.thanks": "Thank you for being a part of the RecipeSage family and helping to keep it alive!",
  "pages.contributeThankYou.bonus": "Your contribution should be reflected on your account shortly.",
  "pages.contributeThankYou.questions": "Please feel free to contact me with any questions, concerns or comments.",

  "pages.contributeCancel.tabTitle": "Contribute - RecipeSage",
  "pages.contributeCancel.title": "We need your help!",
  "pages.contributeCancel.cta.1": "RecipeSage is funded by the community - every contribution helps!",
  "pages.contributeCancel.cta.2": "Unfortunately, RecipeSage doesn't get many contributions since it is a fairly small platform.",
  "pages.contributeCancel.cta.3": "In order to keep things free while paying for server costs, we need your help.",
  "pages.contributeCancel.cta.4": "Please reconsider - your contribution is truly appreciated!",
  "pages.contributeCancel.contribute": "Contribute",

  "pages.downloadAndInstall.tabTitle": "Download & Install - RecipeSage",
  "pages.downloadAndInstall.title": "Download & Install",
  "pages.downloadAndInstall.subtitle": "Install RecipeSage on every device you use. Click your device type to see instructions.",
  "pages.downloadAndInstall.done": "This will install RecipeSage as a native application on your device.",
  "pages.downloadAndInstall.thisDevice": "This Device",
  "pages.downloadAndInstall.android.title": "Android Device",
  "pages.downloadAndInstall.android.instructionHeader": "To install RecipeSage on Android:",
  "pages.downloadAndInstall.android.step.1": "Open the Chrome browser",
  "pages.downloadAndInstall.android.step.2": "Open the browser menu via a button in your browser that looks like this:",
  "pages.downloadAndInstall.android.step.3": "Click \"Add to Home Screen\"",
  "pages.downloadAndInstall.ios.title": "Apple Mobile Device",
  "pages.downloadAndInstall.ios.instructionHeader": "To install RecipeSage on Apple Mobile Devices (iOS):",
  "pages.downloadAndInstall.ios.step.1": "Open Safari",
  "pages.downloadAndInstall.ios.step.2": "Open the share menu via a button in the bottom bar that looks like this:",
  "pages.downloadAndInstall.ios.step.3": "Click \"Add to Home Screen\"",
  "pages.downloadAndInstall.desktop.title": "Desktop or Laptop Devices",
  "pages.downloadAndInstall.desktop.description": "The RecipeSage desktop app is the same as the web version (and depends on the cloud, with an offline fallback). It's a handy way to have RecipeSage always present on your computer for a more desktop-native app. If you'd prefer to use the web version via your browser, it works exactly the same.",
  "pages.downloadAndInstall.desktop.allDownloads": "All downloads",
  "pages.downloadAndInstall.desktop.button.windows": "Download for Windows",
  "pages.downloadAndInstall.desktop.button.macos": "Download for macOS, Apple Silicon",
  "pages.downloadAndInstall.desktop.button.linux": "Download for Linux, AppImage",
  "pages.downloadAndInstall.desktop.platform.windows": "Windows",
  "pages.downloadAndInstall.desktop.platform.macos": "macOS",
  "pages.downloadAndInstall.desktop.platform.linux": "Linux",
  "pages.downloadAndInstall.desktop.file.windowsExe": "Windows installer (.exe)",
  "pages.downloadAndInstall.desktop.file.macosArm": "macOS, Apple Silicon (.dmg)",
  "pages.downloadAndInstall.desktop.file.macosIntel": "macOS, Intel (.dmg)",
  "pages.downloadAndInstall.desktop.file.linuxAppImage": "Linux, AppImage",
  "pages.downloadAndInstall.desktop.file.linuxDeb": "Linux, Debian and Ubuntu (.deb)",
  "pages.downloadAndInstall.desktop.file.linuxRpm": "Linux, Fedora and RHEL (.rpm)",
  "pages.downloadAndInstall.desktop.file.linuxZip": "Linux, portable (.zip)",
  "pages.downloadAndInstall.other": "Other RecipeSage Software",
  "pages.downloadAndInstall.bookmark": "Recipe auto-clip bookmark",
  "pages.downloadAndInstall.bookmark.linkTitle": "Autoclip to RecipeSage",
  "pages.downloadAndInstall.bookmark.instructions": "Drag this link to your bookmarks bar.",
  "pages.downloadAndInstall.bookmark.usage": "Click the bookmark to import the current site you're on.",
  "pages.downloadAndInstall.bookmark.description": "Automatically grabs recipe content from webpages. The browser extension is recommended instead of this bookmark.",
  "pages.downloadAndInstall.extension": "RecipeSage Clip Tool browser extension",
  "pages.downloadAndInstall.extension.description": "Automatically grabs recipe content from webpages, and has greater compatibility across websites that might not import via the in-app importer.",
  "pages.downloadAndInstall.extension.installFirefox": "Install for Firefox",
  "pages.downloadAndInstall.extension.installChrome": "Install for Chrome",
  "pages.downloadAndInstall.icon.menuDots": "three vertical dots icon",
  "pages.downloadAndInstall.icon.share": "share icon",

  "pages.labelsPopover.title": "Options",
  "pages.labelsPopover.options.showCreatedAt": "Show Created At",
  "pages.labelsPopover.options.selectMultipleLabels": "Select Multiple Labels",
  "pages.labelsPopover.options.unselectLabels": "Unselect All Labels",

  "pages.labels.tabTitle": "Manage Labels & Categories - RecipeSage",
  "pages.labels.title": "Manage Labels & Categories",
  "pages.labels.loading": "Loading your labels...",
  "pages.labels.searchPlaceholder": "Search labels and categories",
  "pages.labels.noResults": "No labels or categories match your search.",
  "pages.labels.selectionModeTitle": "{{count}} Selected",
  "pages.labels.label.sectionTitle": "Your Labels",
  "pages.labels.label.sectionDescription": "You have {{count}} total labels. Click a label to view.",
  "pages.labels.label.recipeCount": "{{count}} Recipes.",
  "pages.labels.label.group": "Category: {{title}}.",
  "pages.labels.label.noGroup": "No category.",
  "pages.labels.label.createdAt": "Created {{dateString}}.",
  "pages.labels.label.selected": "Selected",
  "pages.labels.label.nullState.1": "You don't have any labels yet.",
  "pages.labels.label.nullState.2": "Click the + button to create a new label.",
  "pages.labels.modal.delete.header": "Confirm Delete",
  "pages.labels.modal.delete.message": "This will permanently delete the selected labels from your account. This action is irreversible. The following labels will be deleted: {{labelTitles}}",
  "pages.labels.group.sectionTitle": "Your Label Categories",
  "pages.labels.group.sectionDescription": "You have {{count}} total label categories. Click a category to edit.",
  "pages.labels.group.labelCount": "{{count}} labels belong to this category.",
  "pages.labels.group.createdAt": "Created {{dateString}}.",
  "pages.labels.group.nullState.1": "You don't have any label categories yet.",
  "pages.labels.group.nullState.2": "Click the + button to create a new label category.",

  "pages.newLabelItemModal.title": "New Label or Label Category",
  "pages.newLabelItemModal.categoryTitle": "New Label Category",
  "pages.newLabelItemModal.labelTitle": "New Label",
  "pages.newLabelItemModal.label": "Create a label",
  "pages.newLabelItemModal.labelDescription": "Labels are the primary organization method within RecipeSage. They can be attached to recipes to organize & filter them later. Some common label examples are \"breakfast\", \"dessert\", and \"vegetarian\".",
  "pages.newLabelItemModal.group": "Create a label category (advanced)",
  "pages.newLabelItemModal.groupDescription": "Label categories are \"categories for labels\" and can be used to organize multiple different labels into groups. Some examples of common label categories are: \"meal\", or \"diet\". For example, you might put the labels \"breakfast\", \"lunch\", and \"dinner\" under a label category called \"meal\".",
  "pages.newLabelItemModal.labelTitleInput": "Label Name",
  "pages.newLabelItemModal.labelTitleInputPlaceholder": "Enter label name",
  "pages.newLabelItemModal.labelTitleInputHint": "Many people start simple labels such as \"breakfast\", \"dessert\", or \"vegetarian\"",
  "pages.newLabelItemModal.badLabelMessage": "Your title contains invalid characters",
  "pages.newLabelItemModal.existingConflict": "A label with that title already exists",

  "pages.manageLabelGroupModal.title": "Manage Label Category",
  "pages.manageLabelGroupModal.groupTitle": "Label Category Name",
  "pages.manageLabelGroupModal.groupTitlePlaceholder": "Enter label category name",
  "pages.manageLabelGroupModal.groupTitleHint": "Many people start with \"Meal\", \"Diet\", or \"Cuisine\"",
  "pages.manageLabelGroupModal.warn": "Warn me when I do not add",
  "pages.manageLabelGroupModal.warnDescription": "When enabled, you will be warned if saving a recipe without a label in this category attached",
  "pages.manageLabelGroupModal.labels": "Select Labels",
  "pages.manageLabelGroupModal.labelsHint": "Selected labels will be grouped under this category. A given label can belong to at maximum 1 category at a time.",
  "pages.manageLabelGroupModal.labels.noSelectedItems": "No selected labels",
  "pages.manageLabelGroupModal.labels.noItems": "No labels. You should probably be creating labels, not label categories!",
  "pages.manageLabelGroupModal.labels.search": "Search for a label",
  "pages.manageLabelGroupModal.noLabelsSelected": "Warning!",
  "pages.manageLabelGroupModal.noLabelsSelectedMessage": "You haven't selected any labels to be grouped within this category. Label categories are not useful on their own - you may be looking to create a label instead.",
  "pages.manageLabelGroupModal.conflict": "Error",
  "pages.manageLabelGroupModal.conflictMessage": "A label category with that title already exists",
  "pages.manageLabelGroupModal.delete.header": "Confirm Delete Label Category",
  "pages.manageLabelGroupModal.delete.message": "The label category \"{{title}}\" will be deleted. Note: this action will not affect any labels within this category.",

  "pages.manageLabelModal.title": "Manage Label: {{name}}",
  "pages.manageLabelModal.recipeCount": "Assigned to {{count}} recipes",
  "pages.manageLabelModal.group": "Assigned to label category: {{title}}",
  "pages.manageLabelModal.noGroup": "Is not assigned to a label category",
  "pages.manageLabelModal.createdAt": "First created {{dateString}}",
  "pages.manageLabelModal.view": "View All Recipes",
  "pages.manageLabelModal.rename": "Rename",
  "pages.manageLabelModal.merge": "Merge With Another Label",
  "pages.manageLabelModal.delete": "Delete",
  "pages.manageLabelModal.deleteWithRecipes": "Delete Including Recipes",
  "pages.manageLabelModal.renameConflict.header": "Error",
  "pages.manageLabelModal.renameConflict.message": "A label with that title already exists",
  "pages.manageLabelModal.renameInvalid.header": "Error",
  "pages.manageLabelModal.renameInvalid.message": "Please enter a label title",
  "pages.manageLabelModal.rename.header": "Rename label: {{name}}",
  "pages.manageLabelModal.rename.placeholder": "New label name",
  "pages.manageLabelModal.delete.header": "Delete label: {{name}}",
  "pages.manageLabelModal.deleteWithRecipes.header": "Delete label \"{{name}}\" including recipes",
  "pages.manageLabelModal.deleteWithRecipes.message": "This will delete the label {{name}}, along with any recipes that have this label attached to them.",
  "pages.manageLabelModal.notFound.header": "Label not found",
  "pages.manageLabelModal.notFound.subHeader": "The target label \"{{name}}\" was not found",
  "pages.manageLabelModal.notFound.message": "You must enter the title for an existing label to merge into.",
  "pages.manageLabelModal.selfMerge.header": "Cannot merge label to itself",
  "pages.manageLabelModal.selfMerge.subHeader": "The source and target labels must be different labels",
  "pages.manageLabelModal.mergeComplete.header": "Merge Complete!",
  "pages.manageLabelModal.mergeComplete.subHeader": "Label \"{{sourceTitle}}\" has been merged into \"{{targetTitle}}\" successfully",
  "pages.manageLabelModal.mergeComplete.message": "The label \"{{sourceTitle}}\" has been deleted - you'll find all it's recipes moved to \"{{targetTitle}}\".",
  "pages.manageLabelModal.merge.header": "Merge label: {{title}}",
  "pages.manageLabelModal.merge.subHeader": "What label would you like to merge \"{{title}}\" with?",
  "pages.manageLabelModal.merge.message": "All recipes in \"{{title}}\" will be relabeled with the target label instead, and the label \"{{title}}\" will be removed.",
  "pages.manageLabelModal.merge.placeholder": "Target label name",

  "pages.mealPlan.tabTitle": "Meal Plan - RecipeSage",
  "pages.mealPlan.title": "Meal Plan - {{name}}",
  "pages.mealPlan.loading": "Loading meal plan...",
  "pages.mealPlan.noLongerAvailable": "This meal plan is no longer available.",
  "pages.mealPlan.list.empty": "No meals are scheduled. Press the + button to add one.",
  "pages.mealPlan.list.noUpcoming": "No upcoming meals planned. Press + to plan your next meal.",
  "pages.mealPlan.list.pastMeals": "Past Meals",
  "pages.mealPlan.list.noMealsForMonth": "No meals for {{monthYear}}",
  "pages.mealPlan.list.showMore": "Show more",
  "pages.mealPlan.modal.emptyDays.header": "Empty day(s) selected",
  "pages.mealPlan.modal.emptyDays.message": "The day(s) you've selected do not contain any meal plan items. You'll need to select at least one day with meal plan items.",
  "pages.mealPlan.modal.copy.header": "Copy To",
  "pages.mealPlan.modal.copy.message": "This will copy the meal items on the selected days to a series of days starting on the day you select. Please click the day you'd like to copy to.",
  "pages.mealPlan.modal.move.header": "Move To",
  "pages.mealPlan.modal.move.message": "This will move the meal items on the selected days to a series of days starting on the day you select. Please click the day you'd like to move to.",
  "pages.mealPlan.modal.delete.header": "Delete Meal Plan Items",
  "pages.mealPlan.modal.delete.message": "This will delete all items on {{daysList}}",
  "pages.mealPlan.modal.noRecipes.header": "No Recipes",
  "pages.mealPlan.modal.noRecipes.message": "The selected days contain no recipes.\nKeep in mind that only meal items that are recipes can be added to the shopping list.\nYou cannot add manually entered meal items to the shopping list from here.",
  "pages.mealPlan.modal.noRecipesNutrition.header": "No Recipes",
  "pages.mealPlan.modal.noRecipesNutrition.message": "The selected days contain no recipes. Only meal items that are recipes have nutrition to calculate.",
  "pages.mealPlan.modal.manualEntriesNutrition.header": "Manual Entries Will Be Skipped",
  "pages.mealPlan.modal.manualEntriesNutrition.message": "Some of the selected meal items are manual entries, not recipes. They have no nutrition data and will be skipped.",
  "pages.mealPlan.modal.copyConfirm.header": "Copy All Selected Items",
  "pages.mealPlan.modal.copyConfirm.messageSingle": "This will copy the meal items on {{selectedDayList}} to {{destDay}}",
  "pages.mealPlan.modal.copyConfirm.messageMultiple": "This will copy the meal items on {{selectedDayList}} to the days on and following {{destDay}}",
  "pages.mealPlan.modal.copyConfirm.change": "Select Another Day",
  "pages.mealPlan.modal.moveConfirm.header": "Move All Selected Items",
  "pages.mealPlan.modal.moveConfirm.messageSingle": "This will move the meal items on {{selectedDayList}} to {{destDay}}",
  "pages.mealPlan.modal.moveConfirm.messageMultiple": "This will move the meal items on {{selectedDayList}} to the days on and following {{destDay}}",
  "pages.mealPlan.modal.moveConfirm.change": "Select Another Day",

  "pages.mealPlanBulkPinModal.title": "Pin Meal Items",
  "pages.mealPlanBulkPinModal.instructions1": "Select the meal items that you'd like to pin open.",
  "pages.mealPlanBulkPinModal.instructions2": "Note: You can only pin items that are linked to recipes.",
  "pages.mealPlanBulkPinModal.selectAll": "Select All",
  "pages.mealPlanBulkPinModal.deselectAll": "Deselect All",
  "pages.mealPlanBulkPinModal.notLinkedToRecipe": "(not linked to a recipe)",
  "pages.mealPlanBulkPinModal.cancel": "Cancel",
  "pages.mealPlanBulkPinModal.pin": "Pin",

  "pages.mealPlanItemDetailsModal.title": "Meal Plan Item Details",
  "pages.mealPlanItemDetailsModal.scheduled": "Scheduled for {{meal}} on {{date}}",
  "pages.mealPlanItemDetailsModal.lastModified": "Last modified by {{name}} on {{date}}",
  "pages.mealPlanItemDetailsModal.clickToOpen": "Click to open recipe",
  "pages.mealPlanItemDetailsModal.notes": "Notes",
  "pages.mealPlanItemDetailsModal.actions.addToShoppingList": "Add this recipe to shopping list",
  "pages.mealPlanItemDetailsModal.actions.pinRecipe": "Pin this recipe open",
  "pages.mealPlanItemDetailsModal.actions.unpinRecipe": "Unpin this recipe",
  "pages.mealPlanItemDetailsModal.actions.edit": "Edit this item",
  "pages.mealPlanItemDetailsModal.actions.duplicate": "Duplicate this item",
  "pages.mealPlanItemDetailsModal.actions.delete": "Delete this item",
  "pages.mealPlanItemDetailsModal.actions.close": "Close",
  "pages.mealPlanItemDetailsModal.delete.header": "Confirm Removal",
  "pages.mealPlanItemDetailsModal.delete.message": "This will remove \"{{title}}\" from this meal plan.",

  "pages.mealPlanPopover.options.title": "Options",
  "pages.mealPlanPopover.options.startWeekOn.title": "Start week on",
  "pages.mealPlanPopover.options.startWeekOn.monday": "Monday",
  "pages.mealPlanPopover.options.startWeekOn.sunday": "Sunday",
  "pages.mealPlanPopover.options.viewType.title": "View",
  "pages.mealPlanPopover.options.viewType.calendar": "Calendar",
  "pages.mealPlanPopover.options.viewType.list": "List",
  "pages.mealPlanPopover.actions.title": "Actions",
  "pages.mealPlanPopover.actions.ical": "Get ICal Link",
  "pages.mealPlanPopover.actions.print": "Print",
  "pages.mealPlanPopover.actions.pinRecipesOpen": "Pin recipes open",
  "pages.mealPlanPopover.actions.addToShoppingList": "Add to shopping list",
  "pages.mealPlanPopover.actions.calculateNutrition": "Calculate nutrition for selected day(s)",
  "pages.mealPlanPopover.actions.copyDays": "Copy selected day(s)",
  "pages.mealPlanPopover.actions.moveDays": "Move selected day(s)",
  "pages.mealPlanPopover.actions.deleteDays": "Delete selected day(s)",
  "pages.mealPlanPopover.actions.update": "Manage Meal Plan",
  "pages.mealPlanPopover.dangerZone.title": "Danger Zone",
  "pages.mealPlanPopover.dangerZone.delete": "Delete meal plan",
  "pages.mealPlanPopover.deletePlan.header": "Confirm Delete",
  "pages.mealPlanPopover.deletePlan.message": "This will permanently remove this meal plan from your account. If this meal plan is shared with anyone else, it will be removed from their accounts as well.",
  "pages.mealPlanPopover.removeSelfFromPlan.header": "Confirm Remove Plan",
  "pages.mealPlanPopover.removeSelfFromPlan.message": "This will remove this meal plan from your account. Only the owner of the meal plan can permanently delete it completely, but you won't be a member of this meal plan if you proceed. Only the owner of the meal plan can reverse this action.",

  "pages.mealPlanMealOrderModal.title": "Customize Meal Options",
  "pages.mealPlanMealOrderModal.description": "Tap a color swatch to recolor, drag to reorder, or add a new option using the empty row below. Default meal types can't be renamed or removed.",
  "pages.mealPlanMealOrderModal.entryPlaceholder": "Meal name",

  "pages.mealPlans.tabTitle": "Meal Plans - RecipeSage",
  "pages.mealPlans.title": "Meal Plans",
  "pages.mealPlans.loading": "Loading your meal plans...",
  "pages.mealPlans.metadata.createdOn": "Created {{date}}",
  "pages.mealPlans.metadata.collaborators": "In collaboration with:",
  "pages.mealPlans.metadata.createdBy": "Created by {{name}}",
  "pages.mealPlans.metadata.youOwn": "You own this meal plan",
  "pages.mealPlans.noPlans": "You have no meal plans.",
  "pages.mealPlans.toCreate": "To create a meal plan, press the plus button in the bottom corner.",

  "pages.newMealPlanItemModal.title.update": "Update Meal Plan Item",
  "pages.newMealPlanItemModal.title.new": "Add Meal Plan Item",
  "pages.newMealPlanItemModal.inputType.recipe": "Choose Recipe",
  "pages.newMealPlanItemModal.inputType.manual": "Manual Entry",
  "pages.newMealPlanItemModal.itemTitle": "Item title",
  "pages.newMealPlanItemModal.date": "Date",
  "pages.newMealPlanItemModal.notes": "Notes (optional)",
  "pages.newMealPlanItemModal.save": "Save Changes",
  "pages.newMealPlanItemModal.create": "Add to Meal Plan",

  "pages.newMealPlanModal.title": "New meal planner",
  "pages.newMealPlanModal.input.title": "Title",
  "pages.newMealPlanModal.createAndShare": "Create and Share",
  "pages.newMealPlanModal.create": "Create",

  "pages.updateMealPlanModal.title": "Update meal plan",
  "pages.updateMealPlanModal.input.title": "Title",
  "pages.updateMealPlanModal.update": "Update",
  "pages.updateMealPlanModal.updateAndShare": "Update and Share",
  "pages.updateMealPlanModal.detailsTitle": "Details",
  "pages.updateMealPlanModal.customizeMealOptions": "Customize Meal Options",

  "pages.icalMealPlanModal.title": "Meal Plan iCal Link",
  "pages.icalMealPlanModal.description": "The iCal/ICS link below can be used in almost any calendar program to sync your meal plan outside of RecipeSage",

  "pages.assistant.tabTitle": "Cooking Assistant - RecipeSage",
  "pages.assistant.title": "Cooking Assistant",
  "pages.assistant.welcome.1": "Welcome to the RecipeSage cooking assistant!",
  "pages.assistant.welcome.2": "The cooking assistant can respond to your cooking questions and help create recipes.",
  "pages.assistant.welcome.3": "Each message you send consumes one cooking credit from your daily allowance, which is shared with features like recipe clipping and imports. Contributors receive unlimited messaging.",
  "pages.assistant.welcome.4": "Only messages sent by you count toward your daily usage, not the assistant's responses.",
  "pages.assistant.welcome.documentation": "Please read the assistant documentation",
  "pages.assistant.messageSize": "Your message is too long. Please send a shorter message.",

  "pages.messageThread.tabTitle": "Conversation - RecipeSage",
  "pages.messageThread.title": "Conversation with {{name}}",
  "pages.messageThread.clickToOpen": "Click to open",
  "pages.messageThread.recipeDeleted": "Recipe deleted",
  "pages.messageThread.yourRecipeDeleted": "Your copy of this recipe no longer exists",
  "pages.messageThread.recipeCopySent": "A copy of this recipe was sent",
  "pages.messageThread.sending": "Sending...",
  "pages.messageThread.sent": "Sent!",
  "pages.messageThread.messagePlaceholder": "Message...",

  "pages.messages.tabTitle": "Messages - RecipeSage",
  "pages.messages.title": "Messages",
  "pages.messages.loading": "Loading your messages...",
  "pages.messages.history.sentRecipe": "Sent a recipe",
  "pages.messages.history.youSentRecipe": "You: Sent a recipe",
  "pages.messages.history.youSaid": "You: {{message}}",
  "pages.messages.noMessages": "You have no message threads.",
  "pages.messages.instructions": "To start a conversation with someone, press the plus button in the bottom corner.",
  "pages.messages.warning": "Warning:",
  "pages.messages.notificationsRequired": "Notifications must be enabled for messaging to work properly.",
  "pages.messages.notificationsInstructions": "See how to re-enable notifications here",

  "pages.newMessageModal.title": "New Message Thread",
  "pages.newMessageModal.input.target": "Enter a RecipeSage user email or @handle",
  "pages.newMessageModal.compose": "Compose a message",
  "pages.newMessageModal.input.messagePlaceholder": "Hello! I'd like to chat on RecipeSage",
  "pages.newMessageModal.send": "Send",
  "pages.newMessageModal.defaultMessage": "Hello! I'd like to chat on RecipeSage",

  "pages.addRecipeToMealPlanModal.title": "Add Recipe To Meal Plan",
  "pages.addRecipeToMealPlanModal.instructions1": "First, select the destination meal plan:",
  "pages.addRecipeToMealPlanModal.loading": "Loading meal plans...",
  "pages.addRecipeToMealPlanModal.selectDestination": "Select Meal Plan",
  "pages.addRecipeToMealPlanModal.noMealPlans": "You have no meal plans.",
  "pages.addRecipeToMealPlanModal.createMealPlan": "Create a Meal Plan",
  "pages.addRecipeToMealPlanModal.add": "Add to Meal Plan",
  "pages.addRecipeToMealPlanModal.selectMealPlan": "Select a meal plan",
  "pages.addRecipeToMealPlanModal.selectMeal": "Select a meal",
  "pages.addRecipeToMealPlanModal.newMealPlanSuccess": "Excellent! Now select the meal plan you just created.",

  "pages.addRecipeToShoppingListModal.title.singular": "Add Recipe To Shopping List",
  "pages.addRecipeToShoppingListModal.title.plural": "Add Recipes To Shopping List",
  "pages.addRecipeToShoppingListModal.selectDestination": "Select the destination shopping list:",
  "pages.addRecipeToShoppingListModal.loading": "Loading shopping lists...",
  "pages.addRecipeToShoppingListModal.destination": "Destination Shopping List",
  "pages.addRecipeToShoppingListModal.noShoppingLists": "You have no shopping lists.",
  "pages.addRecipeToShoppingListModal.createShoppingList": "Create a Shopping List",
  "pages.addRecipeToShoppingListModal.add": "Add to List",
  "pages.addRecipeToShoppingListModal.newListSuccess": "Excellent! Now select the shopping list you just created.",

  "pages.editRecipe.tabTitle": "Edit Recipe - RecipeSage",
  "pages.editRecipe.title.edit": "Edit Recipe",
  "pages.editRecipe.title.new": "New Recipe",
  "pages.editRecipe.showClipOptions": "Autofill recipe from...",
  "pages.editRecipe.autoclip": "Autofill from URL",
  "pages.editRecipe.clipText": "Autofill from text",
  "pages.editRecipe.scanImage": "Scan from photo",
  "pages.editRecipe.scanDocument": "Scan from document (PDF, .docx, .txt, etc)",
  "pages.editRecipe.input.title": "Title",
  "pages.editRecipe.input.description": "Description",
  "pages.editRecipe.input.yield": "Yield",
  "pages.editRecipe.input.activeTime": "Active Time",
  "pages.editRecipe.input.totalTime": "Total Time",
  "pages.editRecipe.input.source": "Source",
  "pages.editRecipe.input.sourceUrl": "Source URL",
  "pages.editRecipe.input.ingredients": "Ingredients",
  "pages.editRecipe.input.instructions": "Instructions",
  "pages.editRecipe.input.notes": "Notes",
  "pages.editRecipe.input.nutrition": "Nutrition (per serving)",
  "pages.editRecipe.input.nutritionServingSize": "Serving Size",
  "pages.editRecipe.input.nutritionCalories": "Calories (kcal)",
  "pages.editRecipe.input.nutritionTotalFat": "Total Fat (g)",
  "pages.editRecipe.input.nutritionSaturatedFat": "Saturated Fat (g)",
  "pages.editRecipe.input.nutritionTransFat": "Trans Fat (g)",
  "pages.editRecipe.input.nutritionPolyunsaturatedFat": "Polyunsaturated Fat (g)",
  "pages.editRecipe.input.nutritionMonounsaturatedFat": "Monounsaturated Fat (g)",
  "pages.editRecipe.input.nutritionCholesterol": "Cholesterol (mg)",
  "pages.editRecipe.input.nutritionSodium": "Sodium (mg)",
  "pages.editRecipe.input.nutritionTotalCarbs": "Total Carbohydrates (g)",
  "pages.editRecipe.input.nutritionDietaryFiber": "Dietary Fiber (g)",
  "pages.editRecipe.input.nutritionTotalSugars": "Total Sugars (g)",
  "pages.editRecipe.input.nutritionAddedSugars": "Added Sugars (g)",
  "pages.editRecipe.input.nutritionProtein": "Protein (g)",
  "pages.editRecipe.input.nutritionVitaminD": "Vitamin D (mcg)",
  "pages.editRecipe.input.nutritionCalcium": "Calcium (mg)",
  "pages.editRecipe.input.nutritionIron": "Iron (mg)",
  "pages.editRecipe.input.nutritionPotassium": "Potassium (mg)",
  "pages.editRecipe.input.nutritionOtherDetails": "Other Nutrition Details",
  "pages.editRecipe.input.nutritionAutofill": "Autofill nutrition from text",
  "pages.editRecipe.input.nutritionClear": "Clear all nutrition",
  "pages.editRecipe.nutritionAutofill.header": "Autofill Nutrition",
  "pages.editRecipe.nutritionAutofill.message": "Paste nutrition information text below and RecipeSage will attempt to extract the values. Please validate results for accuracy!",
  "pages.editRecipe.input.nutritionClearConfirm.header": "Clear Nutrition",
  "pages.editRecipe.input.nutritionClearConfirm.message": "Are you sure you want to clear all nutrition fields?",
  "pages.editRecipe.nutritionAutofill.placeholder": "Paste nutrition label or text here...",
  "pages.editRecipe.nutritionAutofill.invalid": "Please provide at least 10 characters of text.",
  "pages.editRecipe.nutritionAutofill.loading": "Extracting nutrition...",
  "pages.editRecipe.nutritionAutofill.failed": "Could not extract nutrition from the provided text.",
  "pages.editRecipe.nutritionInvalid": "One or more nutrition fields have invalid values. Nutrition fields support numbers and decimals only.",
  "pages.editRecipe.clip.includeNutrition": "Attempt to grab nutrition information (accuracy varies!)",
  "pages.editRecipe.input.rating": "Rating",
  "pages.editRecipe.input.lastMadeAt": "Last Made",
  "pages.editRecipe.input.lastMadeAt.never": "Never. Click to change",
  "pages.editRecipe.input.labels": "Labels",
  "pages.editRecipe.input.uncatLabels": "General",
  "pages.editRecipe.input.labels.noSelectedItems": "No selected labels",
  "pages.editRecipe.input.labels.noItems": "No labels. Type to create a label",
  "pages.editRecipe.input.labels.noItemsGroup": "No labels in this category. Type to create a label",
  "pages.editRecipe.input.labels.search": "Search for a label",
  "pages.editRecipe.input.linkedRecipes": "Linked Recipes",
  "pages.editRecipe.input.linkedRecipes.none": "No linked recipes. Link related recipes to easily navigate between them.",
  "pages.editRecipe.input.linkedRecipes.add": "Add Linked Recipe",
  "pages.editRecipe.addLabel.otherGroup": "Exists in another category",
  "pages.editRecipe.save": "Save",
  "pages.editRecipe.create": "Create",
  "pages.editRecipe.titleRequired": "Please provide a recipe title (the only required field).",
  "pages.editRecipe.clipURL.header": "Autofill recipe from URL",
  "pages.editRecipe.clipURL.message": "Enter a website URL to grab recipe contents",
  "pages.editRecipe.clipURL.placeholder": "Recipe URL",
  "pages.editRecipe.clipURL.invalidUrl": "You must provide a valid URL",
  "pages.editRecipe.clipURL.unsupportedSiteUrl": "Sites like YouTube, TikTok, etc. do not usually succeed, since they block scrapers. I recommend using the browser extension, or taking a screenshot and using the image importer instead.",
  "pages.editRecipe.clipText.header": "Autofill recipe from block of text",
  "pages.editRecipe.clipText.message": "Enter a block of text with a recipe somewhere in it",
  "pages.editRecipe.clipText.placeholder": "Text that includes recipe...",
  "pages.editRecipe.clipText.invalid": "Error: Text too short or could not recognize recipe",
  "pages.editRecipe.clipDocument.header": "Autofill recipe from document",
  "pages.editRecipe.clipDocument.message": "Choose a document file (PDF, DOCX, RTF, ODT, Markdown, HTML, OrgMode, or plain text) and RecipeSage will try to extract the recipe details.",
  "pages.editRecipe.clipDocument.choose": "Choose file",
  "pages.editRecipe.clipImage.selectMore.header": "Select An Additional Image?",
  "pages.editRecipe.clipImage.selectMore.message": "If you were unable to fit the entire recipe within a single photo you can scan up to {{maxCount}} images. Please try to limit overlapping text as much as possible, as overlapping text may appear more than once in the resulting recipe scan.",
  "pages.editRecipe.clip.loading": "Please wait...",
  "pages.editRecipe.clip.failed": "Failed to autofill. Unfortunately many sites block autofill - I recommend the RecipeSage browser extension, or copying the site text and using the autofill from text option",
  "pages.editRecipe.clip.emptyResult": "There was a problem autofilling from this URL. I recommend the RecipeSage browser extension, or copying the site text and using the autofill from text option",
  "pages.editRecipe.clip.failedSelfhost": "Please check your OpenAI credentials as described in the selfhosting readme",
  "pages.editRecipe.clip.fileTooLarge": "That file is too large. Please try again with a smaller file.",
  "pages.editRecipe.missingLabelGroup.title": "Missing label group",
  "pages.editRecipe.missingLabelGroup.message": "You've specified that the label group \"{{groupName}}\" should be required. You can turn this off via the my labels page.",
  "pages.editRecipe.conflict.title": "Duplicate Title",
  "pages.editRecipe.conflict.message": "A recipe with the title \"{{title}}\" already exists in your collection. You can choose to save anyway, or you can choose to rename the recipe to \"{{uniqueTitle}}\".",
  "pages.editRecipe.conflict.ignore": "Save anyway",
  "pages.editRecipe.conflict.rename": "Rename",
  "pages.editRecipe.addImage.header": "Add Image by URL",
  "pages.editRecipe.addImage.message": "Enter an image URL to be added to the recipe",
  "pages.editRecipe.addImage.placeholder": "Image URL",
  "pages.editRecipe.addImage.downloading": "Downloading image...",
  "pages.editRecipe.addImage.invalidUrl": "Please enter a valid image URL",
  "pages.editRecipe.addImage.fetchFailed": "We could not download an image from that URL. It may have been moved or deleted, or the site may not allow downloads.",

  "pages.editRecipePopover.actions": "Actions",
  "pages.editRecipePopover.addImage": "Add Image by URL",

  "pages.printRecipeModal.title": "Select print layout",
  "pages.printRecipeModal.print": "Print",
  "pages.printRecipeModal.template.standard": "Standard",
  "pages.printRecipeModal.template.standardNoImg": "Standard No Image",
  "pages.printRecipeModal.template.halfSheetCols": "Half Sheet, Columns",
  "pages.printRecipeModal.template.halfSheetCompactNoCols": "Half Sheet, Compact, No Columns",

  "pages.account.tabTitle": "Account & Credentials - RecipeSage",
  "pages.account.title": "Account & Credentials",
  "pages.account.description": "Here you can update and change aspects about your account",
  "pages.account.creds.title": "Credentials and Details",
  "pages.account.creds.name": "Name/Nickname",
  "pages.account.creds.name.save": "Save Name",
  "pages.account.creds.email": "Email",
  "pages.account.creds.email.save": "Save Email",
  "pages.account.creds.password": "Password",
  "pages.account.creds.password.confirm": "Confirm Password",
  "pages.account.creds.password.save": "Save Password",
  "pages.account.creds.instructions": "To change a field above, tap the field, edit it, and press the save button that appears.",
  "pages.account.stats.title": "Stats",
  "pages.account.stats.recipeCount": "Recipe Count",
  "pages.account.stats.recipeImageCount": "Recipe Image Count",
  "pages.account.stats.messageCount": "Total Message Count",
  "pages.account.stats.createdAt": "Account Created",
  "pages.account.stats.lastLogin": "Last Login",
  "pages.account.credits.usageValue": "{{used}} / {{limit}} cooking credits used today",
  "pages.account.bonus.title": "Contributor Status",
  "pages.account.bonus.description": "As a thank you for helping cover the parts that cost the most to host, contributors get:",
  "pages.account.bonus.highResImages": "High Resolution Images",
  "pages.account.bonus.multipleImages": "Multiple Images Per Recipe",
  "pages.account.bonus.assistantMoreMessages": "Unlimited Cooking Assistant Messages",
  "pages.account.bonus.moreUsageCredits": "Higher Daily Cooking Credit Allowance",
  "pages.account.bonus.enabled": "Enabled",
  "pages.account.bonus.notEnabled": "Not Enabled",
  "pages.account.bonus.subscriptionExpired": "Expired {{date}}",
  "pages.account.bonus.subscriptionExpires": "Enabled until {{date}}",
  "pages.account.bonus.subscriptionNeverExpires": "Never Expires",
  "pages.account.bonus.automaticRenewal": "(this will update automatically with a recurring monthly contribution)",
  "pages.account.dangerZone.title": "Danger Zone!",
  "pages.account.dangerZone.warning1": "Be careful with these actions - they are permanent.",
  "pages.account.dangerZone.warning2": "You will be asked a to confirm any action you take here.",
  "pages.account.dangerZone.deleteAllRecipes": "Delete All Recipes",
  "pages.account.dangerZone.deleteAccount": "Delete Account & All Data",
  "pages.account.dangerZone.description": "These actions are irreversible and may take several minutes to complete.",
  "pages.account.nameRequired": "Name/nickname must not be blank.",
  "pages.account.nameUpdated": "Profile name was updated.",
  "pages.account.emailRequired": "Email must not be blank.",
  "pages.account.emailConflict": "Sorry, an account with that email address already exists.",
  "pages.account.emailInvalid": "Please enter a valid email address.",
  "pages.account.emailUpdated": "Email address was updated.",
  "pages.account.passwordMatch": "Passwords do not match.",
  "pages.account.passwordLength": "Passwords must be 6 characters or longer.",
  "pages.account.passwordUpdated.header": "Password Updated",
  "pages.account.passwordUpdated.message": "Your password has been updated. You will need to log back in on any devices that use this account.",
  "pages.account.deleteAllRecipes.header": "Warning - You're about to delete all of your recipes!",
  "pages.account.deleteAllRecipes.message": "This action is PERMANENT. All of your recipes and associated labels will be removed from the RecipeSage system.",
  "pages.account.deleteAllRecipes.confirm": "Yes, continue",
  "pages.account.deleteAllRecipes.success.header": "Recipe Data Deleted",
  "pages.account.deleteAllRecipes.success": "Your recipe data has been permanently deleted.",
  "pages.account.deleteAccount.header": "Delete Account & All Data",
  "pages.account.deleteAccount.message": "This is IRREVERSIBLE and will completely remove all of your data from RecipeSage. This may take several minutes.",

  "pages.export.tabTitle": "Export - RecipeSage",
  "pages.export.title": "Export",
  "pages.export.description1": "Please select an export format to start an export job.",
  "pages.export.description2": "The exported file will contain all of your recipes in the selected format.",
  "pages.export.description3": "Note: If you plan to re-import the data later, you'll need to select JSON-LD format.",
  "pages.export.jobs.job": "Export task",
  "pages.export.jobs.job.jsonld": "JSON-LD export",
  "pages.export.jobs.job.txt": "Plain text export",
  "pages.export.jobs.job.pdf": "PDF export",
  "pages.export.jobs": "Export Task Status",
  "pages.export.jobs.subtitle": "Export tasks continue to run even if you close the app once started",
  "pages.export.jobs.job.created": "Export request created {{timestamp}}",
  "pages.export.status.create": "Created, will begin soon.",
  "pages.export.status.run": "Exporting recipes and images...",
  "pages.export.status.fail": "Export failed.",
  "pages.export.jobs.status.fail.unknown": "An unknown error occurred. Please contact me.",
  "pages.export.status.success": "Export succesfully completed. Click to download.",
  "pages.export.jsonld": "Export to JSON-LD (.json)",
  "pages.export.txt": "Export to plain text (.txt)",
  "pages.export.pdf": "Export to PDF (.zip containing .pdf files)",

  "pages.tools.tabTitle": "Tools & Helpers - RecipeSage",
  "pages.tools.title": "Tools & Helpers",
  "pages.tools.cookbook.subtitle": "Generate a printable PDF cookbook from your recipes",
  "pages.tools.nutritionCalculator.subtitle": "Add up the nutrition across several recipes and scale by servings",
  "pages.tools.assistant.subtitle": "Chat with an AI assistant about cooking and your recipes",
  "pages.tools.measurementConverter.subtitle": "Convert volumes, weights, ingredient amounts, and oven temperatures",
  "pages.tools.cookingTemperatures.subtitle": "Safe internal temperatures, doneness, oven and deep-fry references",
  "pages.tools.panBakewareConverter.subtitle": "Swap pan sizes, scale ingredients, and get suggested bake time and temperature",
  "pages.tools.searchByIngredients.subtitle": "Find recipes you can cook from the ingredients you already have",
  "pages.tools.userGuide.subtitle": "Tutorials and documentation for using RecipeSage",
  "pages.searchByIngredients.tabTitle": "Search by Ingredients - RecipeSage",
  "pages.searchByIngredients.title": "Search by Ingredients",
  "pages.searchByIngredients.info.title": "Cook with what you already have",
  "pages.searchByIngredients.info.body1": "List the ingredients sitting in your fridge, freezer, or cabinet, and this will find the recipes that use as many of them as possible.",
  "pages.searchByIngredients.info.body2": "Recipes are ranked by how many of your ingredients they include.",
  "pages.searchByIngredients.field.label": "Your ingredients",
  "pages.searchByIngredients.field.placeholder": "chicken\nrice\nonion\ngarlic",
  "pages.searchByIngredients.field.helper": "Enter one ingredient per line.",
  "pages.searchByIngredients.includeFriends": "Include recipes shared by friends",
  "pages.searchByIngredients.searchButton": "Search",
  "pages.searchByIngredients.searching": "Searching your recipes...",
  "pages.searchByIngredients.noResults": "None of your recipes use those ingredients yet. Try fewer or more common ingredients.",
  "pages.searchByIngredients.matchLabel": "Uses {{matched}} of your {{total}} ingredients",
  "pages.measurementConverter.tabTitle": "Measurement Converter - RecipeSage",
  "pages.measurementConverter.title": "Measurement Converter",
  "pages.measurementConverter.intro.title": "Type any value to convert",
  "pages.measurementConverter.intro.body": "Enter a number in any field below and every other field updates instantly. Use the tabs to switch between volume and weight, counted items, or oven temperatures.",
  "pages.measurementConverter.intro.bridgeHint": "The ingredient shown between the Volume and Weight sections is only used to convert between volume and weight. If you just want to scale volume to volume (or weight to weight), you can leave it set to Water and ignore it entirely.",
  "pages.measurementConverter.mode.ingredients": "Volume & Weight",
  "pages.measurementConverter.mode.count": "By Count",
  "pages.measurementConverter.mode.temperature": "Temperature",
  "pages.measurementConverter.searchPlaceholder": "Search ingredients",
  "pages.measurementConverter.noResults": "No ingredients match your search.",
  "pages.measurementConverter.basis": "Typical: 1 cup ≈ {{grams}} g",
  "pages.measurementConverter.selectIngredient": "Select an ingredient",
  "pages.measurementConverter.bridgeScope": "Optional · Approx. volume ↔ weight",
  "pages.measurementConverter.volume": "Volume",
  "pages.measurementConverter.weight": "Weight",
  "pages.measurementConverter.units.cup": "Cups",
  "pages.measurementConverter.units.tablespoon": "Tablespoons",
  "pages.measurementConverter.units.teaspoon": "Teaspoons",
  "pages.measurementConverter.units.fluidOunce": "Fluid ounces",
  "pages.measurementConverter.units.milliliter": "Milliliters",
  "pages.measurementConverter.units.liter": "Liters",
  "pages.measurementConverter.units.pint": "Pints",
  "pages.measurementConverter.units.quart": "Quarts",
  "pages.measurementConverter.units.gallon": "Gallons",
  "pages.measurementConverter.units.deciliter": "Deciliters",
  "pages.measurementConverter.units.centiliter": "Centiliters",
  "pages.measurementConverter.units.imperialCup": "Imperial cups",
  "pages.measurementConverter.units.imperialPint": "Imperial pints",
  "pages.measurementConverter.units.imperialFluidOunce": "Imperial fluid ounces",
  "pages.measurementConverter.units.gram": "Grams",
  "pages.measurementConverter.units.kilogram": "Kilograms",
  "pages.measurementConverter.units.ounce": "Ounces",
  "pages.measurementConverter.units.pound": "Pounds",
  "pages.measurementConverter.units.milligram": "Milligrams",
  "pages.measurementConverter.units.stone": "Stone",
  "pages.measurementConverter.unitsShort.cup": "cup",
  "pages.measurementConverter.unitsShort.tablespoon": "tbsp",
  "pages.measurementConverter.unitsShort.teaspoon": "tsp",
  "pages.measurementConverter.unitsShort.fluidOunce": "fl oz",
  "pages.measurementConverter.unitsShort.milliliter": "mL",
  "pages.measurementConverter.unitsShort.liter": "L",
  "pages.measurementConverter.unitsShort.pint": "pt",
  "pages.measurementConverter.unitsShort.quart": "qt",
  "pages.measurementConverter.unitsShort.gallon": "gal",
  "pages.measurementConverter.unitsShort.deciliter": "dL",
  "pages.measurementConverter.unitsShort.centiliter": "cL",
  "pages.measurementConverter.unitsShort.imperialCup": "imp cup",
  "pages.measurementConverter.unitsShort.imperialPint": "imp pt",
  "pages.measurementConverter.unitsShort.imperialFluidOunce": "imp fl oz",
  "pages.measurementConverter.unitsShort.gram": "g",
  "pages.measurementConverter.unitsShort.kilogram": "kg",
  "pages.measurementConverter.unitsShort.ounce": "oz",
  "pages.measurementConverter.unitsShort.pound": "lb",
  "pages.measurementConverter.unitsShort.milligram": "mg",
  "pages.measurementConverter.unitsShort.stone": "st",
  "pages.measurementConverter.unitsShort.fahrenheit": "°F",
  "pages.measurementConverter.unitsShort.celsius": "°C",
  "pages.measurementConverter.displayOptions": "Display options",
  "pages.measurementConverter.variesNote": "This ingredient's weight can vary; the value shown is a typical average.",
  "pages.measurementConverter.countItem": "Item",
  "pages.measurementConverter.quantity": "Quantity",
  "pages.measurementConverter.countItems.egg": "Egg (large)",
  "pages.measurementConverter.countItems.eggWhite": "Egg white (large)",
  "pages.measurementConverter.countItems.eggYolk": "Egg yolk (large)",
  "pages.measurementConverter.countItems.butterStick": "Butter (stick)",
  "pages.measurementConverter.countItems.garlicClove": "Garlic (clove)",
  "pages.measurementConverter.countItems.garlicHead": "Garlic (whole head, large)",
  "pages.measurementConverter.countItems.appleMedium": "Apple (medium)",
  "pages.measurementConverter.countItems.avocadoMedium": "Avocado (medium)",
  "pages.measurementConverter.countItems.bananaMedium": "Banana (medium)",
  "pages.measurementConverter.countItems.breadSlice": "Bread (slice)",
  "pages.measurementConverter.countItems.carrotMedium": "Carrot (medium)",
  "pages.measurementConverter.countItems.lemonMedium": "Lemon (medium)",
  "pages.measurementConverter.countItems.limeMedium": "Lime (medium)",
  "pages.measurementConverter.countItems.onionMedium": "Onion (medium)",
  "pages.measurementConverter.countItems.zucchiniMedium": "Zucchini (medium)",
  "pages.measurementConverter.temperature.fahrenheit": "Fahrenheit (°F)",
  "pages.measurementConverter.temperature.celsius": "Celsius (°C)",
  "pages.measurementConverter.temperature.gasMark": "Gas Mark",
  "pages.measurementConverter.ovenTable.title": "Oven temperatures",
  "pages.measurementConverter.ovenTable.footnote": "Celsius values are rounded from the exact Fahrenheit conversion.",
  "pages.measurementConverter.ingredients.zeroZeroFlour": "00 Flour",
  "pages.measurementConverter.ingredients.allPurposeFlour": "All-Purpose Flour",
  "pages.measurementConverter.ingredients.almondFlour": "Almond Flour",
  "pages.measurementConverter.ingredients.almondMeal": "Almond Meal",
  "pages.measurementConverter.ingredients.amaranthFlour": "Amaranth Flour",
  "pages.measurementConverter.ingredients.barleyFlour": "Barley Flour",
  "pages.measurementConverter.ingredients.breadFlour": "Bread Flour",
  "pages.measurementConverter.ingredients.brownRiceFlour": "Brown Rice Flour",
  "pages.measurementConverter.ingredients.buckwheatFlour": "Buckwheat Flour",
  "pages.measurementConverter.ingredients.cakeFlour": "Cake Flour",
  "pages.measurementConverter.ingredients.chickpeaFlour": "Chickpea Flour",
  "pages.measurementConverter.ingredients.coconutFlour": "Coconut Flour",
  "pages.measurementConverter.ingredients.cornstarch": "Cornstarch",
  "pages.measurementConverter.ingredients.durumFlour": "Durum Flour",
  "pages.measurementConverter.ingredients.firstClearFlour": "First Clear Flour",
  "pages.measurementConverter.ingredients.glutenFreeAllPurposeFlour": "Gluten-Free All-Purpose Flour",
  "pages.measurementConverter.ingredients.glutinousRiceFlour": "Glutinous Rice Flour",
  "pages.measurementConverter.ingredients.hazelnutFlour": "Hazelnut Flour",
  "pages.measurementConverter.ingredients.highGlutenFlour": "High-Gluten Flour",
  "pages.measurementConverter.ingredients.masaHarina": "Masa Harina",
  "pages.measurementConverter.ingredients.oatFlour": "Oat Flour",
  "pages.measurementConverter.ingredients.pastryFlour": "Pastry Flour",
  "pages.measurementConverter.ingredients.pecanMeal": "Pecan Meal",
  "pages.measurementConverter.ingredients.potatoFlour": "Potato Flour",
  "pages.measurementConverter.ingredients.potatoStarch": "Potato Starch",
  "pages.measurementConverter.ingredients.pumpernickelFlour": "Pumpernickel Flour",
  "pages.measurementConverter.ingredients.quinoaFlour": "Quinoa Flour",
  "pages.measurementConverter.ingredients.riceFlourWhite": "White Rice Flour",
  "pages.measurementConverter.ingredients.ryeFlourMedium": "Rye Flour (medium)",
  "pages.measurementConverter.ingredients.selfRisingFlour": "Self-Rising Flour",
  "pages.measurementConverter.ingredients.semolinaFlour": "Semolina Flour",
  "pages.measurementConverter.ingredients.sorghumFlour": "Sorghum Flour",
  "pages.measurementConverter.ingredients.soyFlour": "Soy Flour",
  "pages.measurementConverter.ingredients.speltFlour": "Spelt Flour",
  "pages.measurementConverter.ingredients.sproutedWheatFlour": "Sprouted Wheat Flour",
  "pages.measurementConverter.ingredients.tapiocaStarch": "Tapioca Starch",
  "pages.measurementConverter.ingredients.teffFlour": "Teff Flour",
  "pages.measurementConverter.ingredients.vitalWheatGluten": "Vital Wheat Gluten",
  "pages.measurementConverter.ingredients.wholeWheatFlour": "Whole Wheat Flour",
  "pages.measurementConverter.ingredients.wholeWheatPastryFlour": "Whole Wheat Pastry Flour",
  "pages.measurementConverter.ingredients.whiteRyeFlour": "White Rye Flour",
  "pages.measurementConverter.ingredients.whiteWholeWheatFlour": "White Whole Wheat Flour",
  "pages.measurementConverter.ingredients.superfineSugar": "Superfine Sugar (caster)",
  "pages.measurementConverter.ingredients.brownSugarPacked": "Brown Sugar (packed)",
  "pages.measurementConverter.ingredients.coconutSugar": "Coconut Sugar",
  "pages.measurementConverter.ingredients.confectionersSugar": "Confectioners' Sugar",
  "pages.measurementConverter.ingredients.cinnamonSugar": "Cinnamon Sugar",
  "pages.measurementConverter.ingredients.demeraraSugar": "Demerara Sugar",
  "pages.measurementConverter.ingredients.granulatedSugar": "Granulated Sugar",
  "pages.measurementConverter.ingredients.mapleSugar": "Maple Sugar",
  "pages.measurementConverter.ingredients.pearlSugar": "Pearl Sugar",
  "pages.measurementConverter.ingredients.turbinadoSugar": "Turbinado Sugar (raw)",
  "pages.measurementConverter.ingredients.buttermilk": "Buttermilk",
  "pages.measurementConverter.ingredients.buttermilkPowder": "Buttermilk Powder",
  "pages.measurementConverter.ingredients.cheeseFeta": "Feta Cheese",
  "pages.measurementConverter.ingredients.cheeseGrated": "Grated Cheese (cheddar, jack, mozzarella, Swiss)",
  "pages.measurementConverter.ingredients.cheeseParmesanGrated": "Grated Parmesan",
  "pages.measurementConverter.ingredients.cheeseRicotta": "Ricotta Cheese",
  "pages.measurementConverter.ingredients.cream": "Cream (heavy, light, or half & half)",
  "pages.measurementConverter.ingredients.creamCheese": "Cream Cheese",
  "pages.measurementConverter.ingredients.cremeFraiche": "Crème Fraîche",
  "pages.measurementConverter.ingredients.driedNonfatMilk": "Dried Nonfat Milk (powdered)",
  "pages.measurementConverter.ingredients.driedWholeMilk": "Dried Whole Milk (powdered)",
  "pages.measurementConverter.ingredients.eggWhitesDried": "Dried Egg Whites",
  "pages.measurementConverter.ingredients.mascarpone": "Mascarpone Cheese",
  "pages.measurementConverter.ingredients.milkEvaporated": "Evaporated Milk",
  "pages.measurementConverter.ingredients.milk": "Milk",
  "pages.measurementConverter.ingredients.quesoFresco": "Queso Fresco",
  "pages.measurementConverter.ingredients.sourCream": "Sour Cream",
  "pages.measurementConverter.ingredients.yogurt": "Yogurt",
  "pages.measurementConverter.ingredients.butter": "Butter",
  "pages.measurementConverter.ingredients.coconutOil": "Coconut Oil",
  "pages.measurementConverter.ingredients.ghee": "Ghee",
  "pages.measurementConverter.ingredients.lard": "Lard",
  "pages.measurementConverter.ingredients.oliveOil": "Olive Oil",
  "pages.measurementConverter.ingredients.palmShortening": "Palm Shortening",
  "pages.measurementConverter.ingredients.vegetableOil": "Vegetable Oil",
  "pages.measurementConverter.ingredients.vegetableShortening": "Vegetable Shortening",
  "pages.measurementConverter.ingredients.almondsSliced": "Almonds (sliced)",
  "pages.measurementConverter.ingredients.almondsSlivered": "Almonds (slivered)",
  "pages.measurementConverter.ingredients.almondsWhole": "Almonds (whole)",
  "pages.measurementConverter.ingredients.carawaySeeds": "Caraway Seeds",
  "pages.measurementConverter.ingredients.cashewsChopped": "Cashews (chopped)",
  "pages.measurementConverter.ingredients.cashewsWhole": "Cashews (whole)",
  "pages.measurementConverter.ingredients.chiaSeeds": "Chia Seeds",
  "pages.measurementConverter.ingredients.coconutSweetenedShredded": "Coconut (sweetened, shredded)",
  "pages.measurementConverter.ingredients.coconutToasted": "Coconut (toasted)",
  "pages.measurementConverter.ingredients.coconutDesiccated": "Coconut (unsweetened, desiccated)",
  "pages.measurementConverter.ingredients.coconutLargeFlakes": "Coconut (unsweetened, large flakes)",
  "pages.measurementConverter.ingredients.coconutShredded": "Coconut (unsweetened, shredded)",
  "pages.measurementConverter.ingredients.flaxMeal": "Flax Meal",
  "pages.measurementConverter.ingredients.flaxseed": "Flaxseed",
  "pages.measurementConverter.ingredients.hazelnutsWhole": "Hazelnuts (whole)",
  "pages.measurementConverter.ingredients.macadamiaNuts": "Macadamia Nuts (whole)",
  "pages.measurementConverter.ingredients.peanuts": "Peanuts (shelled)",
  "pages.measurementConverter.ingredients.pecansDiced": "Pecans (diced)",
  "pages.measurementConverter.ingredients.pecansWhole": "Pecans (whole)",
  "pages.measurementConverter.ingredients.pineNuts": "Pine Nuts",
  "pages.measurementConverter.ingredients.pistachios": "Pistachios (shelled)",
  "pages.measurementConverter.ingredients.poppySeeds": "Poppy Seeds",
  "pages.measurementConverter.ingredients.sesameSeeds": "Sesame Seeds",
  "pages.measurementConverter.ingredients.sunflowerSeeds": "Sunflower Seeds",
  "pages.measurementConverter.ingredients.walnutsChopped": "Walnuts (chopped)",
  "pages.measurementConverter.ingredients.walnutsWhole": "Walnuts (whole)",
  "pages.measurementConverter.ingredients.applesDriedDiced": "Apples (dried, diced)",
  "pages.measurementConverter.ingredients.applesSliced": "Apples (peeled, sliced)",
  "pages.measurementConverter.ingredients.applesauce": "Applesauce",
  "pages.measurementConverter.ingredients.apricotsDried": "Apricots (dried, diced)",
  "pages.measurementConverter.ingredients.bananasMashed": "Bananas (mashed)",
  "pages.measurementConverter.ingredients.berriesFrozen": "Berries (frozen)",
  "pages.measurementConverter.ingredients.blueberriesDried": "Blueberries (dried)",
  "pages.measurementConverter.ingredients.blueberries": "Blueberries (fresh or frozen)",
  "pages.measurementConverter.ingredients.candiedLemonPeel": "Candied Lemon Peel",
  "pages.measurementConverter.ingredients.candiedOrangePeel": "Candied Orange Peel",
  "pages.measurementConverter.ingredients.cherriesCandied": "Cherries (candied)",
  "pages.measurementConverter.ingredients.cherriesDried": "Cherries (dried)",
  "pages.measurementConverter.ingredients.cherriesFresh": "Cherries (fresh, pitted, chopped)",
  "pages.measurementConverter.ingredients.cherriesFrozen": "Cherries (frozen)",
  "pages.measurementConverter.ingredients.cranberriesDried": "Cranberries (dried)",
  "pages.measurementConverter.ingredients.cranberriesFresh": "Cranberries (fresh or frozen)",
  "pages.measurementConverter.ingredients.crystallizedGinger": "Crystallized Ginger",
  "pages.measurementConverter.ingredients.currants": "Currants",
  "pages.measurementConverter.ingredients.datesChopped": "Dates (chopped)",
  "pages.measurementConverter.ingredients.figsDried": "Figs (dried, chopped)",
  "pages.measurementConverter.ingredients.passionFruitPuree": "Passion Fruit Purée",
  "pages.measurementConverter.ingredients.peaches": "Peaches (peeled and diced)",
  "pages.measurementConverter.ingredients.pears": "Pears (peeled and diced)",
  "pages.measurementConverter.ingredients.pineappleCrushed": "Pineapple (crushed, drained)",
  "pages.measurementConverter.ingredients.pineappleDried": "Pineapple (dried)",
  "pages.measurementConverter.ingredients.pineappleDiced": "Pineapple (fresh or canned, diced)",
  "pages.measurementConverter.ingredients.raisinsLoose": "Raisins (loose)",
  "pages.measurementConverter.ingredients.raisinsPacked": "Raisins (packed)",
  "pages.measurementConverter.ingredients.raspberries": "Raspberries (fresh)",
  "pages.measurementConverter.ingredients.rhubarb": "Rhubarb (sliced)",
  "pages.measurementConverter.ingredients.strawberries": "Strawberries (fresh, sliced)",
  "pages.measurementConverter.ingredients.bellPeppers": "Bell Peppers (fresh)",
  "pages.measurementConverter.ingredients.carrotsPureed": "Carrots (cooked and puréed)",
  "pages.measurementConverter.ingredients.carrotsDiced": "Carrots (diced)",
  "pages.measurementConverter.ingredients.carrotsGrated": "Carrots (grated)",
  "pages.measurementConverter.ingredients.celeryDiced": "Celery (diced)",
  "pages.measurementConverter.ingredients.chives": "Chives (fresh)",
  "pages.measurementConverter.ingredients.cornKernels": "Corn (fresh or frozen)",
  "pages.measurementConverter.ingredients.garlicMinced": "Garlic (minced)",
  "pages.measurementConverter.ingredients.garlicSliced": "Garlic (peeled and sliced)",
  "pages.measurementConverter.ingredients.gingerSliced": "Ginger (fresh, sliced)",
  "pages.measurementConverter.ingredients.leeksDiced": "Leeks (diced)",
  "pages.measurementConverter.ingredients.mashedPotatoes": "Mashed Potatoes",
  "pages.measurementConverter.ingredients.mashedSweetPotatoes": "Mashed Sweet Potatoes",
  "pages.measurementConverter.ingredients.mushroomsSliced": "Mushrooms (sliced)",
  "pages.measurementConverter.ingredients.olivesSliced": "Olives (sliced)",
  "pages.measurementConverter.ingredients.onionsDiced": "Onions (fresh, diced)",
  "pages.measurementConverter.ingredients.pumpkinPuree": "Pumpkin Purée",
  "pages.measurementConverter.ingredients.scallionsSliced": "Scallions (sliced)",
  "pages.measurementConverter.ingredients.shallotsSliced": "Shallots (peeled and sliced)",
  "pages.measurementConverter.ingredients.sundriedTomatoes": "Sun-Dried Tomatoes (dry pack)",
  "pages.measurementConverter.ingredients.tomatoPaste": "Tomato Paste",
  "pages.measurementConverter.ingredients.zucchiniShredded": "Zucchini (shredded)",
  "pages.measurementConverter.ingredients.cacaoNibs": "Cacao Nibs",
  "pages.measurementConverter.ingredients.chocolateChopped": "Chocolate (chopped)",
  "pages.measurementConverter.ingredients.chocolateChips": "Chocolate Chips",
  "pages.measurementConverter.ingredients.chocolateChunks": "Chocolate Chunks",
  "pages.measurementConverter.ingredients.cocoaUnsweetened": "Cocoa (unsweetened)",
  "pages.measurementConverter.ingredients.miniChocolateChips": "Mini Chocolate Chips",
  "pages.measurementConverter.ingredients.whiteChocolateChips": "White Chocolate Chips",
  "pages.measurementConverter.ingredients.barleyCooked": "Barley (cooked)",
  "pages.measurementConverter.ingredients.barleyPearled": "Barley (pearled)",
  "pages.measurementConverter.ingredients.barleyFlakes": "Barley Flakes",
  "pages.measurementConverter.ingredients.branCereal": "Bran Cereal",
  "pages.measurementConverter.ingredients.brownRiceCooked": "Brown Rice (cooked)",
  "pages.measurementConverter.ingredients.buckwheatWhole": "Buckwheat (whole)",
  "pages.measurementConverter.ingredients.bulgur": "Bulgur",
  "pages.measurementConverter.ingredients.cornPopped": "Popcorn (popped)",
  "pages.measurementConverter.ingredients.cornmealWhole": "Cornmeal (whole)",
  "pages.measurementConverter.ingredients.cornmealYellow": "Cornmeal (yellow)",
  "pages.measurementConverter.ingredients.crackedWheat": "Cracked Wheat",
  "pages.measurementConverter.ingredients.granola": "Granola",
  "pages.measurementConverter.ingredients.maltedWheatFlakes": "Malted Wheat Flakes",
  "pages.measurementConverter.ingredients.millet": "Millet (whole)",
  "pages.measurementConverter.ingredients.oatBran": "Oat Bran",
  "pages.measurementConverter.ingredients.rolledOats": "Rolled Oats (old-fashioned or quick)",
  "pages.measurementConverter.ingredients.oatsPrepared": "Oats (prepared)",
  "pages.measurementConverter.ingredients.polenta": "Polenta (coarse cornmeal)",
  "pages.measurementConverter.ingredients.quinoaCooked": "Quinoa (cooked)",
  "pages.measurementConverter.ingredients.quinoaWhole": "Quinoa (whole)",
  "pages.measurementConverter.ingredients.riceLongGrain": "Rice (long grain, dry)",
  "pages.measurementConverter.ingredients.riceShortGrain": "Rice (short grain, dry)",
  "pages.measurementConverter.ingredients.ryeChops": "Rye Chops",
  "pages.measurementConverter.ingredients.ryeFlakes": "Rye Flakes",
  "pages.measurementConverter.ingredients.steelCutOats": "Steel-Cut Oats",
  "pages.measurementConverter.ingredients.wheatBerries": "Wheat Berries (red)",
  "pages.measurementConverter.ingredients.wheatBran": "Wheat Bran",
  "pages.measurementConverter.ingredients.wheatGerm": "Wheat Germ",
  "pages.measurementConverter.ingredients.agaveSyrup": "Agave Syrup",
  "pages.measurementConverter.ingredients.appleJuiceConcentrate": "Apple Juice Concentrate",
  "pages.measurementConverter.ingredients.barleyMaltSyrup": "Barley Malt Syrup",
  "pages.measurementConverter.ingredients.blueberryJuice": "Blueberry Juice",
  "pages.measurementConverter.ingredients.boiledCider": "Boiled Cider",
  "pages.measurementConverter.ingredients.cherryConcentrate": "Cherry Concentrate",
  "pages.measurementConverter.ingredients.coconutCream": "Coconut Cream (unsweetened)",
  "pages.measurementConverter.ingredients.coconutMilkCanned": "Coconut Milk (canned)",
  "pages.measurementConverter.ingredients.coconutMilkEvaporated": "Coconut Milk (evaporated)",
  "pages.measurementConverter.ingredients.creamOfCoconut": "Cream of Coconut",
  "pages.measurementConverter.ingredients.cornSyrup": "Corn Syrup",
  "pages.measurementConverter.ingredients.honey": "Honey",
  "pages.measurementConverter.ingredients.limeJuice": "Lime Juice",
  "pages.measurementConverter.ingredients.lemonJuice": "Lemon Juice",
  "pages.measurementConverter.ingredients.maltSyrup": "Malt Syrup",
  "pages.measurementConverter.ingredients.mapleSyrup": "Maple Syrup",
  "pages.measurementConverter.ingredients.molasses": "Molasses",
  "pages.measurementConverter.ingredients.sweetenedCondensedCoconutMilk": "Sweetened Condensed Coconut Milk",
  "pages.measurementConverter.ingredients.sweetenedCondensedMilk": "Sweetened Condensed Milk",
  "pages.measurementConverter.ingredients.water": "Water",
  "pages.measurementConverter.ingredients.bakingPowder": "Baking Powder",
  "pages.measurementConverter.ingredients.bakingSoda": "Baking Soda",
  "pages.measurementConverter.ingredients.instantYeast": "Instant Yeast",
  "pages.measurementConverter.ingredients.kosherSaltDiamond": "Kosher Salt (Diamond Crystal)",
  "pages.measurementConverter.ingredients.kosherSaltMorton": "Kosher Salt (Morton's)",
  "pages.measurementConverter.ingredients.tableSalt": "Table Salt",
  "pages.measurementConverter.ingredients.almondButter": "Almond Butter",
  "pages.measurementConverter.ingredients.almondPaste": "Almond Paste (packed)",
  "pages.measurementConverter.ingredients.basilPesto": "Basil Pesto",
  "pages.measurementConverter.ingredients.cookieButter": "Cookie Butter",
  "pages.measurementConverter.ingredients.guavaPaste": "Guava Paste",
  "pages.measurementConverter.ingredients.hazelnutPralinePaste": "Hazelnut Praline Paste",
  "pages.measurementConverter.ingredients.hazelnutSpread": "Hazelnut Spread",
  "pages.measurementConverter.ingredients.jamPreserves": "Jam or Preserves",
  "pages.measurementConverter.ingredients.lemonCurd": "Lemon Curd",
  "pages.measurementConverter.ingredients.marzipan": "Marzipan",
  "pages.measurementConverter.ingredients.mayonnaise": "Mayonnaise",
  "pages.measurementConverter.ingredients.marshmallowSpreadHomemade": "Marshmallow Spread (homemade)",
  "pages.measurementConverter.ingredients.marshmallowSpread": "Marshmallow Spread (store-bought)",
  "pages.measurementConverter.ingredients.peanutButter": "Peanut Butter",
  "pages.measurementConverter.ingredients.pistachioPaste": "Pistachio Paste",
  "pages.measurementConverter.ingredients.tahini": "Tahini",
  "pages.measurementConverter.ingredients.breadCrumbsDried": "Bread Crumbs (dried)",
  "pages.measurementConverter.ingredients.breadCrumbsFresh": "Bread Crumbs (fresh)",
  "pages.measurementConverter.ingredients.panko": "Bread Crumbs (Japanese panko)",
  "pages.measurementConverter.ingredients.caramel": "Caramel",
  "pages.measurementConverter.ingredients.caramelBits": "Caramel Bits (toffee)",
  "pages.measurementConverter.ingredients.cookieCrumbs": "Cookie Crumbs",
  "pages.measurementConverter.ingredients.driedPotatoFlakes": "Dried Potato Flakes (instant)",
  "pages.measurementConverter.ingredients.espressoPowder": "Espresso Powder",
  "pages.measurementConverter.ingredients.grahamCrackerCrumbs": "Graham Cracker Crumbs",
  "pages.measurementConverter.ingredients.maltedMilkPowder": "Malted Milk Powder",
  "pages.measurementConverter.ingredients.marshmallowsMini": "Mini Marshmallows",
  "pages.measurementConverter.ingredients.meringuePowder": "Meringue Powder",
  "pages.measurementConverter.ingredients.coconutMilkPowder": "Coconut Milk Powder",
  "pages.measurementConverter.ingredients.pizzaSauce": "Pizza Sauce",
  "pages.measurementConverter.ingredients.sourdoughStarter": "Sourdough Starter",
  "pages.measurementConverter.ingredients.tapiocaQuickCooking": "Tapioca (quick-cooking)",
  "pages.measurementConverter.ingredients.toffeeChunks": "Toffee Chunks",
  "pages.measurementConverter.ingredients.vanillaExtract": "Vanilla Extract",

  "pages.cookingTemperatures.tabTitle": "Cooking Temperatures - RecipeSage",
  "pages.cookingTemperatures.title": "Cooking Temperatures",
  "pages.cookingTemperatures.searchPlaceholder": "Search a food, doneness, or fry temp",
  "pages.cookingTemperatures.noResults": "Nothing matches your search.",
  "pages.cookingTemperatures.tempValue": "{{c}} °C / {{f}} °F",
  "pages.cookingTemperatures.tempRange": "{{cMin}}–{{cMax}} °C / {{fMin}}–{{fMax}} °F",
  "pages.cookingTemperatures.chip.usdaMinimum": "USDA safe min",
  "pages.cookingTemperatures.chip.preference": "Preference",
  "pages.cookingTemperatures.chip.rest": "Rest {{minutes}} min",
  "pages.cookingTemperatures.chip.oilTemp": "Oil temp",
  "pages.cookingTemperatures.chip.bacteriaZone": "Bacteria zone",
  "pages.cookingTemperatures.chip.smokePoint": "Smoke point",

  "pages.cookingTemperatures.safety.title": "About these temperatures",
  "pages.cookingTemperatures.safety.safeMin": "Green chips mark USDA safe minimum internal temperatures. Measure with a food thermometer in the thickest part of the food, away from bone and fat.",
  "pages.cookingTemperatures.safety.preference": "Grey chips mark personal preference values (doneness levels, BBQ pulls, oil temps). They are not food-safety recommendations.",
  "pages.cookingTemperatures.safety.carryover": "Carryover cooking: meat keeps cooking after coming off the heat, typically rising 5–10 °F / 3–6 °C. For large roasts, pull a bit below your target.",
  "pages.cookingTemperatures.safety.source": "Safe minimum temperatures from USDA FSIS and FoodSafety.gov.",

  "pages.cookingTemperatures.categories.poultry.title": "Poultry",
  "pages.cookingTemperatures.categories.redMeatPork.title": "Red meat & pork",
  "pages.cookingTemperatures.categories.seafood.title": "Fish & seafood",
  "pages.cookingTemperatures.categories.eggs.title": "Eggs",
  "pages.cookingTemperatures.categories.sugarCandy.title": "Sugar & candy",
  "pages.cookingTemperatures.categories.chocolate.title": "Chocolate tempering",
  "pages.cookingTemperatures.categories.other.title": "Other",
  "pages.cookingTemperatures.categories.oilSmokePoints.title": "Oil smoke points",

  "pages.cookingTemperatures.items.poultryAll.label": "Chicken, turkey, duck, goose",
  "pages.cookingTemperatures.items.poultryAll.state": "Whole, parts, breasts, thighs, wings",
  "pages.cookingTemperatures.items.groundPoultry.label": "Ground poultry",
  "pages.cookingTemperatures.items.groundPoultry.state": "Ground chicken, turkey, duck",
  "pages.cookingTemperatures.items.poultryDarkMeatPreference.label": "Chicken / turkey dark meat",
  "pages.cookingTemperatures.items.poultryDarkMeatPreference.state": "Thighs and legs; cooks above the safe minimum for tender, collagen-rendered texture",
  "pages.cookingTemperatures.items.stuffing.label": "Stuffing",
  "pages.cookingTemperatures.items.stuffing.state": "Cooked alone or inside the bird",

  "pages.cookingTemperatures.items.beefWhole.label": "Beef (medium)",
  "pages.cookingTemperatures.items.beefWhole.state": "Warm pink center. USDA safe minimum for whole beef cuts (steaks, chops, roasts, brisket flats).",
  "pages.cookingTemperatures.items.porkWhole.label": "Pork (medium)",
  "pages.cookingTemperatures.items.porkWhole.state": "Slightly pink center. USDA safe minimum for whole pork cuts (chops, roasts, tenderloin, fresh ham).",
  "pages.cookingTemperatures.items.lambWhole.label": "Lamb (medium)",
  "pages.cookingTemperatures.items.lambWhole.state": "Slightly pink center. USDA safe minimum for whole lamb cuts (chops, racks, leg, roasts).",
  "pages.cookingTemperatures.items.vealWhole.label": "Veal (whole cuts)",
  "pages.cookingTemperatures.items.vealWhole.state": "Chops, roasts, cutlets",
  "pages.cookingTemperatures.items.groundBeef.label": "Ground beef",
  "pages.cookingTemperatures.items.groundPork.label": "Ground pork",
  "pages.cookingTemperatures.items.groundLamb.label": "Ground lamb",
  "pages.cookingTemperatures.items.groundVeal.label": "Ground veal",

  "pages.cookingTemperatures.items.beefBlueRare.label": "Beef (blue rare)",
  "pages.cookingTemperatures.items.beefBlueRare.state": "Very cool, deep red center; seared crust only",
  "pages.cookingTemperatures.items.beefRare.label": "Beef (rare)",
  "pages.cookingTemperatures.items.beefRare.state": "Cool, red center",
  "pages.cookingTemperatures.items.beefMediumRare.label": "Beef (medium-rare)",
  "pages.cookingTemperatures.items.beefMediumRare.state": "Warm, red center",
  "pages.cookingTemperatures.items.beefMediumWell.label": "Beef (medium-well)",
  "pages.cookingTemperatures.items.beefMediumWell.state": "Mostly brown, faint pink",
  "pages.cookingTemperatures.items.beefWellDone.label": "Beef (well done)",
  "pages.cookingTemperatures.items.beefWellDone.state": "No pink",

  "pages.cookingTemperatures.items.lambRare.label": "Lamb (rare)",
  "pages.cookingTemperatures.items.lambRare.state": "Cool, red center",
  "pages.cookingTemperatures.items.lambMediumRare.label": "Lamb (medium-rare)",
  "pages.cookingTemperatures.items.lambMediumRare.state": "Warm, pink center",
  "pages.cookingTemperatures.items.lambMediumWell.label": "Lamb (medium-well)",
  "pages.cookingTemperatures.items.lambMediumWell.state": "Mostly cooked through, hint of pink",
  "pages.cookingTemperatures.items.lambWellDone.label": "Lamb (well done)",
  "pages.cookingTemperatures.items.lambWellDone.state": "No pink",

  "pages.cookingTemperatures.items.porkWellDone.label": "Pork (well done)",
  "pages.cookingTemperatures.items.porkWellDone.state": "No pink; classic pork doneness",

  "pages.cookingTemperatures.items.salmonMediumRare.label": "Salmon (medium-rare)",
  "pages.cookingTemperatures.items.salmonMediumRare.state": "Pink, just-translucent center; common chef target",
  "pages.cookingTemperatures.items.salmonMedium.label": "Salmon (medium)",
  "pages.cookingTemperatures.items.salmonMedium.state": "Light pink center, fully cooked exterior",

  "pages.cookingTemperatures.items.tunaRare.label": "Tuna (rare)",
  "pages.cookingTemperatures.items.tunaRare.state": "Red, just-warmed center; classic seared tuna",
  "pages.cookingTemperatures.items.tunaMediumRare.label": "Tuna (medium-rare)",
  "pages.cookingTemperatures.items.tunaMediumRare.state": "Pink center, slightly translucent",
  "pages.cookingTemperatures.items.tunaMedium.label": "Tuna (medium)",
  "pages.cookingTemperatures.items.tunaMedium.state": "Light pink center, fully cooked edges",

  "pages.cookingTemperatures.items.finfish.label": "Finfish",
  "pages.cookingTemperatures.items.finfish.state": "Salmon, tuna, cod, tilapia, trout, halibut, snapper, bass",
  "pages.cookingTemperatures.items.shrimpLobsterCrab.label": "Shrimp, lobster, crab",
  "pages.cookingTemperatures.items.shrimpLobsterCrab.cue": "Cook until the flesh is pearly and opaque.",
  "pages.cookingTemperatures.items.scallops.label": "Scallops",
  "pages.cookingTemperatures.items.scallops.cue": "Cook until pearly and opaque.",
  "pages.cookingTemperatures.items.shellfish.label": "Clams, oysters, mussels",
  "pages.cookingTemperatures.items.shellfish.cue": "Cook until the shells open during cooking.",

  "pages.cookingTemperatures.items.eggsFresh.label": "Fresh eggs",
  "pages.cookingTemperatures.items.eggsFresh.cue": "Cook until both the yolk and the white are firm.",
  "pages.cookingTemperatures.items.eggDishes.label": "Egg dishes",
  "pages.cookingTemperatures.items.eggDishes.state": "Quiches, frittatas, baked custards, casseroles with egg",
  "pages.cookingTemperatures.items.custard.label": "Stirred custard / curd",
  "pages.cookingTemperatures.items.custard.state": "Crème anglaise, pastry cream, lemon curd. Pull just before boiling; eggs scramble above ~85 °C / 185 °F.",

  "pages.cookingTemperatures.items.leftovers.label": "Leftovers & casseroles",
  "pages.cookingTemperatures.items.leftovers.state": "Anything reheated",
  "pages.cookingTemperatures.items.hamPrecookedReheat.label": "Pre-cooked ham (reheating)",
  "pages.cookingTemperatures.items.hamPrecookedReheat.state": "Reheating a cooked ham after storage",
  "pages.cookingTemperatures.items.hotHolding.label": "Hot holding",
  "pages.cookingTemperatures.items.hotHolding.state": "Cooked food being kept warm (buffets, chafers, oven-hold). Hold at or above this temperature.",
  "pages.cookingTemperatures.items.dangerZone.label": "Bacterial danger zone",
  "pages.cookingTemperatures.items.dangerZone.state": "Bacteria multiply rapidly in this range. Don't leave perishable food here for more than 2 hours (1 hour above 32 °C / 90 °F).",

  "pages.cookingTemperatures.items.sugarThread.label": "Thread stage",
  "pages.cookingTemperatures.items.sugarThread.state": "Syrup drips in thin threads that dissolve quickly. Glazes, light syrups.",
  "pages.cookingTemperatures.items.sugarSoftBall.label": "Soft-ball stage",
  "pages.cookingTemperatures.items.sugarSoftBall.state": "A drop in cold water forms a soft, pliable ball. Fudge, fondant, Italian buttercream.",
  "pages.cookingTemperatures.items.sugarFirmBall.label": "Firm-ball stage",
  "pages.cookingTemperatures.items.sugarFirmBall.state": "Forms a firm ball that holds shape but flattens slightly. Caramels, soft marshmallow.",
  "pages.cookingTemperatures.items.sugarHardBall.label": "Hard-ball stage",
  "pages.cookingTemperatures.items.sugarHardBall.state": "Forms a hard, sticky ball. Nougat, divinity, firmer marshmallow.",
  "pages.cookingTemperatures.items.sugarSoftCrack.label": "Soft-crack stage",
  "pages.cookingTemperatures.items.sugarSoftCrack.state": "Sugar forms pliable threads that bend slightly. Taffy, butterscotch.",
  "pages.cookingTemperatures.items.sugarHardCrack.label": "Hard-crack stage",
  "pages.cookingTemperatures.items.sugarHardCrack.state": "Brittle glass-like threads that snap cleanly. Brittle, toffee, lollipops, spun sugar.",
  "pages.cookingTemperatures.items.sugarCaramel.label": "Caramel",
  "pages.cookingTemperatures.items.sugarCaramel.state": "Sugar turns pale gold to deep amber. Light caramel at the lower end; bitter, almost-burnt at the top.",

  "pages.cookingTemperatures.items.chocolateDarkMelt.label": "Dark chocolate (melt)",
  "pages.cookingTemperatures.items.chocolateDarkCool.label": "Dark chocolate (cool down)",
  "pages.cookingTemperatures.items.chocolateDarkWork.label": "Dark chocolate (working temp)",
  "pages.cookingTemperatures.items.chocolateMilkMelt.label": "Milk chocolate (melt)",
  "pages.cookingTemperatures.items.chocolateMilkCool.label": "Milk chocolate (cool down)",
  "pages.cookingTemperatures.items.chocolateMilkWork.label": "Milk chocolate (working temp)",
  "pages.cookingTemperatures.items.chocolateWhiteMelt.label": "White chocolate (melt)",
  "pages.cookingTemperatures.items.chocolateWhiteCool.label": "White chocolate (cool down)",
  "pages.cookingTemperatures.items.chocolateWhiteWork.label": "White chocolate (working temp)",

  "pages.cookingTemperatures.items.pulledPork.label": "Pulled pork (pork shoulder)",
  "pages.cookingTemperatures.items.pulledPork.state": "Pork shoulder or butt; probe slides in with no resistance",
  "pages.cookingTemperatures.items.brisketSlice.label": "Brisket (slicing)",
  "pages.cookingTemperatures.items.brisketSlice.state": "Probe-tender in the thickest part of the flat",
  "pages.cookingTemperatures.items.beefShortRibs.label": "Beef short ribs",
  "pages.cookingTemperatures.items.beefShortRibs.state": "Probe-tender, jiggly fat-cap",
  "pages.cookingTemperatures.items.beefBraising.label": "Beef pot roast (braised)",
  "pages.cookingTemperatures.items.beefBraising.state": "Pot roast, chuck, brisket flat in liquid. Cook until fork-tender; meat shreds with light pressure.",
  "pages.cookingTemperatures.items.porkRibs.label": "Pork ribs",
  "pages.cookingTemperatures.items.porkRibs.state": "Bend test or toothpick-tender between bones",

  "pages.cookingTemperatures.items.fryGeneral.label": "Frying oil (general window)",
  "pages.cookingTemperatures.items.fryGeneral.state": "Most fried foods land in this window",
  "pages.cookingTemperatures.items.fryFrenchBlanch.label": "French fries, blanch (oil temp)",
  "pages.cookingTemperatures.items.fryFrenchBlanch.state": "First fry to cook through",
  "pages.cookingTemperatures.items.fryFrenchFinish.label": "French fries, finish (oil temp)",
  "pages.cookingTemperatures.items.fryFrenchFinish.state": "Second fry to crisp and brown",
  "pages.cookingTemperatures.items.fryChicken.label": "Fried chicken, bone-in (oil temp)",
  "pages.cookingTemperatures.items.fryChickenWings.label": "Fried chicken wings (oil temp)",
  "pages.cookingTemperatures.items.fryChickenTenders.label": "Fried chicken tenders / nuggets (oil temp)",
  "pages.cookingTemperatures.items.fryFish.label": "Battered fish, fried (oil temp)",
  "pages.cookingTemperatures.items.fryDoughnuts.label": "Doughnuts (oil temp)",
  "pages.cookingTemperatures.items.fryTempura.label": "Tempura (oil temp)",
  "pages.cookingTemperatures.items.fryOnionRings.label": "Onion rings (oil temp)",
  "pages.cookingTemperatures.items.fryFritters.label": "Hush puppies / fritters (oil temp)",

  "pages.cookingTemperatures.items.smokeAvocadoRefined.label": "Avocado oil (refined)",
  "pages.cookingTemperatures.items.smokeAvocadoRefined.state": "Highest practical smoke point. Searing, stir-frying, deep frying.",
  "pages.cookingTemperatures.items.smokeGhee.label": "Ghee / clarified butter",
  "pages.cookingTemperatures.items.smokeGhee.state": "Milk solids removed, so it tolerates high heat. Sautéing, searing, frying.",
  "pages.cookingTemperatures.items.smokePeanut.label": "Peanut oil (refined)",
  "pages.cookingTemperatures.items.smokePeanut.state": "Neutral and stable. Classic deep-fry oil; great for wok cooking.",
  "pages.cookingTemperatures.items.smokeSunflowerRefined.label": "Sunflower oil (refined)",
  "pages.cookingTemperatures.items.smokeSunflowerRefined.state": "Neutral and widely available. Frying, baking, sautéing.",
  "pages.cookingTemperatures.items.smokeOliveRefined.label": "Olive oil (refined / pure / light)",
  "pages.cookingTemperatures.items.smokeOliveRefined.state": "Filtered for a higher smoke point and milder flavor than extra virgin. Sautéing and shallow frying.",
  "pages.cookingTemperatures.items.smokeGrapeseed.label": "Grapeseed oil",
  "pages.cookingTemperatures.items.smokeGrapeseed.state": "Light and neutral. Sautéing, dressings, baking.",
  "pages.cookingTemperatures.items.smokeCanola.label": "Canola oil",
  "pages.cookingTemperatures.items.smokeCanola.state": "Neutral and inexpensive. Sautéing, baking, light frying.",
  "pages.cookingTemperatures.items.smokeVegetable.label": "Vegetable oil",
  "pages.cookingTemperatures.items.smokeVegetable.state": "Usually soybean or a blend. Sautéing, baking, light frying.",
  "pages.cookingTemperatures.items.smokeCoconutRefined.label": "Coconut oil (refined)",
  "pages.cookingTemperatures.items.smokeCoconutRefined.state": "Solid at room temperature, mild flavor. Sautéing and baking.",
  "pages.cookingTemperatures.items.smokeOliveExtraVirgin.label": "Extra virgin olive oil",
  "pages.cookingTemperatures.items.smokeOliveExtraVirgin.state": "Best for low-to-medium sautéing, dressings, and finishing. Quality and freshness shift the smoke point.",
  "pages.cookingTemperatures.items.smokeSesameToasted.label": "Sesame oil (toasted)",
  "pages.cookingTemperatures.items.smokeSesameToasted.state": "Strong flavor; treat as a finishing oil. Add off heat or in low-heat sauces, not for frying.",
  "pages.cookingTemperatures.items.smokeCoconutVirgin.label": "Coconut oil (virgin / unrefined)",
  "pages.cookingTemperatures.items.smokeCoconutVirgin.state": "Coconut flavor retained. Low-to-medium heat sautéing and baking.",
  "pages.cookingTemperatures.items.smokeButter.label": "Butter",
  "pages.cookingTemperatures.items.smokeButter.state": "Milk solids brown then burn. Stay below the smoke point, or clarify it / switch to ghee for higher heat.",

  "pages.panBakewareConverter.tabTitle": "Pan & Bakeware Converter - RecipeSage",
  "pages.panBakewareConverter.title": "Pan & Bakeware Converter",
  "pages.panBakewareConverter.intro.title": "Swap pans without ruining the recipe",
  "pages.panBakewareConverter.intro.bodyVolume": "Pick your starting pan and the pan you'd rather use. We scale the ingredients by capacity so the new pan fills to the same level as the original, then suggest a bake-time range and temperature so the inside finishes when the outside does.",
  "pages.panBakewareConverter.batterType.label": "What are you baking?",
  "pages.panBakewareConverter.batterType.cake": "Butter or oil cake",
  "pages.panBakewareConverter.batterType.spongeFoam": "Sponge or foam cake",
  "pages.panBakewareConverter.batterType.quickBread": "Muffins or quick bread",
  "pages.panBakewareConverter.batterType.yeastBread": "Yeast bread",
  "pages.panBakewareConverter.batterType.cheesecake": "Cheesecake or custard",
  "pages.panBakewareConverter.batterType.brownieBar": "Brownies or bars",
  "pages.panBakewareConverter.units.imperial": "Imperial (in, °F)",
  "pages.panBakewareConverter.units.metric": "Metric (cm, °C)",
  "pages.panBakewareConverter.units.in": "in",
  "pages.panBakewareConverter.units.cm": "cm",
  "pages.panBakewareConverter.units.sqIn": "sq in",
  "pages.panBakewareConverter.units.sqCm": "sq cm",
  "pages.panBakewareConverter.units.cups": "cups",
  "pages.panBakewareConverter.units.liters": "L",
  "pages.panBakewareConverter.units.ml": "mL",
  "pages.panBakewareConverter.from.eyebrow": "Your recipe calls for",
  "pages.panBakewareConverter.from.title": "Starting pan",
  "pages.panBakewareConverter.to.eyebrow": "You want to use",
  "pages.panBakewareConverter.to.title": "Replacement pan",
  "pages.panBakewareConverter.swap": "Swap pans",
  "pages.panBakewareConverter.shapes.round": "Round",
  "pages.panBakewareConverter.shapes.square": "Square",
  "pages.panBakewareConverter.shapes.rectangular": "Rectangular",
  "pages.panBakewareConverter.shapes.loaf": "Loaf",
  "pages.panBakewareConverter.shapes.springform": "Springform",
  "pages.panBakewareConverter.shapes.bundtTube": "Bundt / tube",
  "pages.panBakewareConverter.shapes.sheet": "Sheet / jelly roll",
  "pages.panBakewareConverter.shapes.muffin": "Muffin tin",
  "pages.panBakewareConverter.field.diameter": "Diameter",
  "pages.panBakewareConverter.field.side": "Side",
  "pages.panBakewareConverter.field.length": "Length",
  "pages.panBakewareConverter.field.width": "Width",
  "pages.panBakewareConverter.field.depth": "Depth",
  "pages.panBakewareConverter.field.capacityCups": "Capacity",
  "pages.panBakewareConverter.field.cavities": "Cavities",
  "pages.panBakewareConverter.field.cavityCapacity": "Per cavity",
  "pages.panBakewareConverter.area.label": "Surface area",
  "pages.panBakewareConverter.area.value": "{{area}} {{unit}}",
  "pages.panBakewareConverter.area.notApplicable": "Irregular",
  "pages.panBakewareConverter.capacity.label": "Total capacity",
  "pages.panBakewareConverter.capacity.value": "{{cups}} cups",
  "pages.panBakewareConverter.capacity.valueWithMl": "{{cups}} cups · {{ml}}",
  "pages.panBakewareConverter.result.eyebrow": "Multiply ingredients by",
  "pages.panBakewareConverter.result.eyebrowNoScale": "No scaling needed",
  "pages.panBakewareConverter.result.useAsIs": "Use the recipe as-is",
  "pages.panBakewareConverter.result.noScaleExplain": "These pans hold about the same, so bake the recipe as written. To be exact, scale by {{multiplier}}.",
  "pages.panBakewareConverter.multiplier.basis": "Scaled by capacity so the new pan fills like your original",
  "pages.panBakewareConverter.multiplier.explainCapacity": "{{toCups}} cups ÷ {{fromCups}} cups",
  "pages.panBakewareConverter.multiplier.explainCapacityMetric": "{{toVolume}} ÷ {{fromVolume}}",
  "pages.panBakewareConverter.multiplier.copy": "Copy multiplier",
  "pages.panBakewareConverter.multiplier.copied": "Multiplier copied to clipboard",
  "pages.panBakewareConverter.recipeScaler.title": "Scale an ingredient list",
  "pages.panBakewareConverter.recipeScaler.subtitle": "Paste the ingredients section of your recipe; we'll rewrite the quantities at the new scale.",
  "pages.panBakewareConverter.recipeScaler.placeholder": "2 cups flour\n1 1/2 tsp baking powder\n3/4 cup sugar",
  "pages.panBakewareConverter.recipeScaler.outputLabel": "Scaled ingredients",
  "pages.panBakewareConverter.recipeScaler.caveat": "Heads up: don't blindly multiply leavening (baking powder and soda), salt, eggs, or pan-grease, especially past about 25%. Those don't scale in step with volume, so adjust them by feel.",
  "pages.panBakewareConverter.recipeApply.title": "Apply to one of your recipes",
  "pages.panBakewareConverter.recipeApply.subtitle": "Pick a recipe and we'll open it scaled to fit your new pan.",
  "pages.panBakewareConverter.recipeApply.button": "Choose a recipe",
  "pages.panBakewareConverter.bake.title": "Bake time & temperature",
  "pages.panBakewareConverter.bake.direction.similar": "Times should be close",
  "pages.panBakewareConverter.bake.direction.shallower": "Batter is shallower → bakes faster",
  "pages.panBakewareConverter.bake.direction.deeper": "Batter is deeper → bakes slower",
  "pages.panBakewareConverter.bake.guidance.similar": "The batter sits at about the same depth in both pans, so the time should be close to the original. Start checking at the early end of the range.",
  "pages.panBakewareConverter.bake.guidance.shallower": "The batter sits shallower in the new pan, so it bakes faster. Expect a shorter time, and if the difference is large, nudge the temperature up so the edges still brown.",
  "pages.panBakewareConverter.bake.guidance.deeper": "The batter sits deeper in the new pan, so the center takes longer to set. Expect a longer time, and for big differences drop the temperature so the outside doesn't burn before the inside catches up.",
  "pages.panBakewareConverter.bake.originalTime": "Original time (min)",
  "pages.panBakewareConverter.bake.originalTimePlaceholder": "e.g. 30",
  "pages.panBakewareConverter.bake.suggestedTime": "Suggested time (min)",
  "pages.panBakewareConverter.bake.timeRange": "{{low}} to {{high}} min",
  "pages.panBakewareConverter.bake.originalTempF": "Original temp (°F)",
  "pages.panBakewareConverter.bake.originalTempC": "Original temp (°C)",
  "pages.panBakewareConverter.bake.originalTempPlaceholderF": "e.g. 350",
  "pages.panBakewareConverter.bake.originalTempPlaceholderC": "e.g. 180",
  "pages.panBakewareConverter.bake.suggestedTemp": "Suggested temp",
  "pages.panBakewareConverter.bake.tempSame": "Same temperature",
  "pages.panBakewareConverter.bake.tempResultImperial": "{{f}}°F / {{c}}°C",
  "pages.panBakewareConverter.bake.tempResultMetric": "{{c}}°C / {{f}}°F",
  "pages.panBakewareConverter.bake.footnoteRange": "Estimates only. Bake time scales roughly with the square root of batter depth, so treat the range as a starting window.",
  "pages.panBakewareConverter.bake.noEstimate": "Bundt, tube, and muffin shapes bake too differently to estimate a time and temperature reliably. Keep your recipe's original settings as a starting point and lean on the doneness check below.",
  "pages.panBakewareConverter.doneness.label": "Check for doneness",
  "pages.panBakewareConverter.doneness.cake": "Done at about 93 to 99°C (200 to 210°F) in the center, or when a tester comes out clean and the top springs back.",
  "pages.panBakewareConverter.doneness.spongeFoam": "Done when the top springs back and a tester comes out clean, around 93°C (200°F). Cool foam cakes upside down and don't grease the pan.",
  "pages.panBakewareConverter.doneness.quickBread": "Done at about 93°C (200°F) in the center, or when a tester comes out clean.",
  "pages.panBakewareConverter.doneness.yeastBread": "Done at about 88 to 99°C (190 to 210°F) in the center; lean breads run hotter than rich, enriched doughs.",
  "pages.panBakewareConverter.doneness.cheesecake": "Done when the edges are set but the center still jiggles, roughly 66°C (150°F). It firms up as it cools.",
  "pages.panBakewareConverter.doneness.brownieBar": "Done when a tester pulls out with a few moist crumbs, not wet batter. Err toward underbaking for fudgy bars.",
  "pages.panBakewareConverter.incomplete.title": "Fill in both pans",
  "pages.panBakewareConverter.incomplete.body": "Enter dimensions for the starting and replacement pans to see the scaling multiplier and bake advice.",
  "pages.panBakewareConverter.substitutions.title": "Other pans that hold about the same",
  "pages.panBakewareConverter.substitutions.subtitle": "These pans are within ~10% of the starting pan's capacity, close enough to swap in with little or no scaling. Tap one to load it as the replacement.",
  "pages.panBakewareConverter.methodology.toggle": "How the math works",
  "pages.panBakewareConverter.methodology.title": "Methodology",
  "pages.panBakewareConverter.methodology.body1Volume": "The multiplier is the ratio of the two pans' capacities: divide the replacement pan's capacity by the starting pan's. Capacity is the bottom area times the depth, converted to cups, so scaling this way fills both pans to the same level and keeps the batter at roughly the same depth, which is what governs bake time.",
  "pages.panBakewareConverter.methodology.body2": "For irregular pans (bundt, tube, muffin), we fall back to a capacity ratio since 'area' isn't well defined. Treat bake-time advice as a rough starting point, since these shapes also cook differently because of the central hole or individual cavities.",
  "pages.panBakewareConverter.methodology.body3Doneness": "Telling you what you're baking tunes the doneness guidance to that batter: the internal temperature and visual cues that signal it's done. Because changing pans makes the clock unreliable, the doneness check is the part to trust most.",
  "pages.panBakewareConverter.methodology.tip": "No-math alternative: fill the pan with water in measuring cups until it's full. That number is the pan's true capacity, including any quirks of the shape.",
  "pages.panBakewareConverter.methodology.sources": "Pan capacity references from Sally's Baking Addiction, Joy of Baking, and King Arthur Baking. Bake-time guidance synthesized from Food Network and Cook's Illustrated.",
  "pages.panBakewareConverter.reference.toggle": "Standard pan reference",
  "pages.panBakewareConverter.reference.title": "Common bakeware",
  "pages.panBakewareConverter.reference.colPan": "Pan",
  "pages.panBakewareConverter.reference.colCapacity": "Capacity",

  "pages.panBakewareConverter.presets.format.round": "{{d}} {{u}} round × {{h}} {{u}} deep",
  "pages.panBakewareConverter.presets.format.pie": "{{d}} {{u}} pie plate",
  "pages.panBakewareConverter.presets.format.pieDeepDish": "{{d}} {{u}} deep-dish pie",
  "pages.panBakewareConverter.presets.format.square": "{{s}} × {{s}} {{u}} × {{h}} {{u}} deep",
  "pages.panBakewareConverter.presets.format.rectangular": "{{w}} × {{l}} {{u}} × {{h}} {{u}} deep",
  "pages.panBakewareConverter.presets.format.loaf": "{{l}} × {{w}} {{u}} loaf",
  "pages.panBakewareConverter.presets.format.loafMini": "Mini loaf ({{l}} × {{w}} {{u}})",
  "pages.panBakewareConverter.presets.format.springform": "{{d}} {{u}} springform",
  "pages.panBakewareConverter.presets.format.quarterSheet": "Quarter sheet ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.halfSheet": "Half sheet ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.fullSheet": "Full sheet ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.jellyRoll": "Jelly roll ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.bundt": "{{c}}-cup bundt",
  "pages.panBakewareConverter.presets.format.bundtMini": "{{c}}-cup mini bundt",
  "pages.panBakewareConverter.presets.format.bundtMetric": "{{v}} L bundt",
  "pages.panBakewareConverter.presets.format.swissRoll": "Swiss roll ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.bakingTray": "Baking tray ({{w}} × {{l}} {{u}})",
  "pages.panBakewareConverter.presets.format.tube": "{{d}} {{u}} tube (angel food)",
  "pages.panBakewareConverter.presets.format.muffin": "Muffin tin ({{n}}-cavity)",
  "pages.panBakewareConverter.presets.format.muffinMini": "Mini muffin ({{n}}-cavity)",
  "pages.panBakewareConverter.presets.format.muffinStandard": "Standard muffin ({{n}}-cavity)",
  "pages.panBakewareConverter.presets.format.muffinJumbo": "Jumbo muffin ({{n}}-cavity)",

  "pages.cookbook.tabTitle": "Cookbook Generator - RecipeSage",
  "pages.cookbook.title": "Cookbook Generator",
  "pages.cookbook.intro.title": "Bundle your recipes into a printable cookbook",
  "pages.cookbook.intro.body": "Pick the recipes you want, customize the cover and contents, and we'll generate a downloadable PDF you can print, gift, or save offline.",
  "pages.cookbook.intro.exportLink": "Looking for individual recipe PDFs instead? Use the Export page.",
  "pages.cookbook.field.title": "Title",
  "pages.cookbook.field.subtitle": "Subtitle",
  "pages.cookbook.field.author": "Author",
  "pages.cookbook.field.introduction": "Introduction",
  "pages.cookbook.field.toc": "Include table of contents",
  "pages.cookbook.field.includeImages": "Include images",
  "pages.cookbook.field.includeLabels": "Include recipe labels",
  "pages.cookbook.recipes.title": "Recipes",
  "pages.cookbook.recipes.loading": "Loading recipes...",
  "pages.cookbook.recipes.empty": "No recipes added yet. Use Add Recipe or Add Label to build your cookbook.",
  "pages.cookbook.recipes.tooMany": "Cookbooks can contain at most {{max}} recipes. Please remove some to continue.",
  "pages.cookbook.addRecipe.title": "Add Recipe",
  "pages.cookbook.addLabel.title": "Add Label",
  "pages.cookbook.pdf.contents": "Contents",
  "pages.cookbook.pdf.byAuthor": "by {{author}}",
  "pages.cookbook.generate": "Generate Cookbook",

  "pages.nutritionCalculator.tabTitle": "Nutrition Calculator - RecipeSage",
  "pages.nutritionCalculator.title": "Nutrition Calculator",
  "pages.nutritionCalculator.intro.title": "Calculate your nutrition intake for a meal, or for a day's worth of recipes.",
  "pages.nutritionCalculator.intro.body": "Select one or more recipes to see their calories, macros, vitamins, and minerals as a single nutrition facts panel. (Only nutrition already saved on each recipe is counted; recipes without it add nothing.)",
  "pages.nutritionCalculator.recipes.title": "Recipes",
  "pages.nutritionCalculator.recipes.loading": "Loading recipes...",
  "pages.nutritionCalculator.recipes.empty": "No recipes added yet. Use Add Recipe or Add Label to start adding up nutrition.",
  "pages.nutritionCalculator.recipes.servingBasis": "Serving Size: {{servingSize}}",
  "pages.nutritionCalculator.recipes.noData": "No nutrition data",
  "pages.nutritionCalculator.recipes.remove": "Remove recipe",
  "pages.nutritionCalculator.addRecipe.title": "Add Recipe",
  "pages.nutritionCalculator.addLabel.title": "Add Label",
  "pages.nutritionCalculator.servings.label": "Servings",
  "pages.nutritionCalculator.servings.decrease": "Decrease servings",
  "pages.nutritionCalculator.servings.increase": "Increase servings",
  "pages.nutritionCalculator.servings.help": "RecipeSage can't know your portion, so it counts one serving per recipe by default. Set the number to how many servings you're having (one serving = the Serving Size shown on each recipe).",
  "pages.nutritionCalculator.servings.setAll": "Set servings for all recipes",
  "pages.nutritionCalculator.mode.total": "Total",
  "pages.nutritionCalculator.mode.perServing": "Average per serving",
  "pages.nutritionCalculator.coverage.nutrients": "{{present}}/{{total}} nutrients",
  "pages.nutritionCalculator.coverage.recipes": "{{withData}}/{{total}} recipes have nutrition",
  "pages.nutritionCalculator.coverage.servings": "{{servings}} total servings",
  "pages.nutritionCalculator.macros.title": "Calories by macronutrient",
  "pages.nutritionCalculator.macros.fat": "Total fat {{percent}}%",
  "pages.nutritionCalculator.macros.carbs": "Total carbs {{percent}}%",
  "pages.nutritionCalculator.macros.protein": "Total protein {{percent}}%",
  "pages.nutritionCalculator.facts.titleTotal": "Total Nutrition",
  "pages.nutritionCalculator.facts.titlePerServing": "Average Per Serving",
  "pages.nutritionCalculator.facts.divideAmong": "Divide among",
  "pages.nutritionCalculator.facts.perServingBasis": "= Total ÷ {{servings}}",
  "pages.nutritionCalculator.facts.dvHeader": "% Daily Value*",
  "pages.nutritionCalculator.facts.dvValue": "{{percent}}%",
  "pages.nutritionCalculator.facts.dvFootnote": "* % Daily Values are based on a 2,000 calorie diet.",
  "pages.nutritionCalculator.facts.missing": "Missing on {{missing}} of {{total}} recipes",

  "pages.jobs.tabTitle": "Background Jobs - RecipeSage",
  "pages.jobs.title": "Background Jobs",
  "pages.jobs.subtitle": "Background jobs continue to run even if you close the app once started.",
  "pages.jobs.empty": "You have no background jobs yet.",
  "pages.jobs.job.import": "Import",
  "pages.jobs.job.export": "Export",
  "pages.jobs.job.export.pdf": "PDF export",
  "pages.jobs.job.export.txt": "Plain text export",
  "pages.jobs.job.export.jsonld": "JSON-LD export",
  "pages.jobs.job.cookbook": "Cookbook PDF",
  "pages.jobs.status.run": "Running...",
  "pages.jobs.status.success": "Complete. Click to download.",
  "pages.jobs.status.fail": "Failed.",
  "pages.jobs.status.import.partial": "{{count}} recipe(s) could not be read automatically and were imported as plain notes.",
  "pages.jobs.status.import.failed": "{{count}} recipe(s) were skipped due to a failure.",

  "pages.import.tabTitle": "Import - RecipeSage",
  "pages.import.title": "Import",
  "pages.import.jobs": "Import Task Status",
  "pages.import.jobs.subtitle": "Imports continue to run even if you close the app once started",
  "pages.import.jobs.job": "Import Job",
  "pages.import.jobs.job.created": "Created {{timestamp}}",
  "pages.import.jobs.label.unformatted": "Automatic Import Unformatted",
  "pages.import.jobCreated.header": "Import Started!",
  "pages.import.jobCreated.message": "Your data is being imported into your account now, and you can track it's status on the import page. You won't see anything in your account until the import job is complete.",
  "pages.import.status.create": "Created, will begin soon.",
  "pages.import.status.run": "Importing recipes and images...",
  "pages.import.status.fail": "Import failed.",
  "pages.import.jobs.status.fail.badFile": "Incompatible format.",
  "pages.import.jobs.status.fail.emptyFile": "The submitted import does not contain any recognizable recipes.",
  "pages.import.jobs.status.fail.badCredentials": "The submitted credentials are incorrect.",
  "pages.import.jobs.status.fail.tooManyRecipes": "Too many recipes for this import format. Please try again with a smaller batch.",
  "pages.import.jobs.status.fail.unknown": "An unknown error occurred. Please contact me.",
  "pages.import.status.success": "Import succesfully completed.",
  "pages.import.step": "Step {{number}}",
  "pages.import.uploading": "Uploading, please do not leave this page...",
  "pages.import.uploading.hint": "File upload progress",
  "pages.import.processing": "Processing & importing recipes...",
  "pages.import.description": "RecipeSage supports importing a number of formats",
  "pages.import.viewDocumentation": "View documentation",
  "pages.import.jsonld": "Import from JSON-LD file",
  "pages.import.cookmate": "Import from Cookmate file",
  "pages.import.recipeKeeper": "Import from Recipe Keeper file",
  "pages.import.copymethat": "Import from CopyMeThat file",
  "pages.import.pepperplate": "Import from Pepperplate account",
  "pages.import.livingCookbook": "Import from Living Cookbook file",
  "pages.import.paprika": "Import from Paprika Recipes file",
  "pages.import.mela": "Import from Mela file",
  "pages.import.crouton": "Import from Crouton file",
  "pages.import.cookbookManagerCom": "Import from CookBookManager.com file",
  "pages.import.flavorish": "Import from Flavorish file",
  "pages.import.textFiles": "Import from documents (.txt, .rtf, .odt, .docx, .md, .html)",
  "pages.import.enex": "Import from Evernote file",
  "pages.import.urls": "Import from a list of URLs",
  "pages.import.csv": "Import from CSV (PlanToEat, MyRecipeBox & others)",
  "pages.import.pdfs": "Import from PDFs",
  "pages.import.images": "Import from images",
  "pages.import.fileTooLarge": "This file is too large to import into RecipeSage.",
  "pages.import.upload": "Upload and Import",
  "pages.import.upload.ignoreWarning": "Upload and Import Anyway",
  "pages.import.filePicker.file": "{{fileName}} Selected",
  "pages.import.filePicker.noFile": "Choose {{ acceptableFiletypes }} file",
  "pages.import.fileTypeWarning": "Warning! This filetype does not end with: {{ acceptableFiletypes }}. It may not work.",
  "pages.import.defaultLabel": "Import on {{dateStamp}}",

  "pages.importJsonLD.tabTitle": "Import from JSON-LD - RecipeSage",
  "pages.importJsonLD.title": "Import Recipes from JSON-LD File",
  "pages.importJsonLD.description": "This will import a JSON-LD file (ends in .json) file into your RecipeSage account. Please note that JSON-LD is a very specific file format, and not all .json files have the correct contents to be compatible with this import method. If you're having trouble with the import, please refer to the user guide. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importCookmate.tabTitle": "Import from Cookmate - RecipeSage",
  "pages.importCookmate.title": "Import Recipes from Cookmate File",
  "pages.importCookmate.description": "This will import a Cookmate (ends in .mcb) file into your RecipeSage account. If you're having trouble with the import, please refer to the user guide. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importRecipeKeeper.tabTitle": "Import from Recipe Keeper - RecipeSage",
  "pages.importRecipeKeeper.title": "Import Recipes from Recipe Keeper Export",
  "pages.importRecipeKeeper.description": "This will import a RecipeKeeper database (ends in .zip) file into your RecipeSage account. Please note that not all .zip files are compatible, only those exported from RecipeKeeper. If you're having trouble with the import, please refer to the user guide. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importCopymethat.tabTitle": "Import from CopyMeThat - RecipeSage",
  "pages.importCopymethat.title": "Import Recipes from CopyMeThat Export",
  "pages.importCopymethat.description": "This will import a CopyMeThat export (ends in .zip) into your RecipeSage account. Please note that you must export in HTML format from CopyMeThat to be supported by this importer. CopyMeThat's text export can be used with the \"text files\" RecipeSage importer if desired instead. If you're having trouble with the import, please refer to the user guide. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importLivingCookbook.tabTitle": "Import from Living Cookbook - RecipeSage",
  "pages.importLivingCookbook.title": "Import Recipes from Living Cookbook",
  "pages.importLivingCookbook.description": "This will import a LivingCookbook file (ends in .lcb, .fdx, or .fdxz) file into your RecipeSage account. If you're having trouble with the import, consider re-exporting your database (in FDX or FDXZ format), or trying the import with the \"Include stock recipes\" option enabled. Please consider contributing if your file contains a large number of recipes or images.",
  "pages.importLivingCookbook.excludeImages": "Exclude recipe images (optional, not recommended)",
  "pages.importLivingCookbook.includeStock": "Include stock \"filler\" LCB recipes (optional, not recommended)",
  "pages.importLivingCookbook.includeTechniques": "Copy techniques to recipe notes (optional, not recommended)",

  "pages.importPaprika.tabTitle": "Import from Paprika - RecipeSage",
  "pages.importPaprika.title": "Import Recipes from Paprika File",
  "pages.importPaprika.description": "This will import a Paprika export file (ends in .paprikarecipes) file into your RecipeSage account. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importMela.tabTitle": "Import from Mela - RecipeSage",
  "pages.importMela.title": "Import Recipes from Mela File",
  "pages.importMela.description": "This will import a Mela export file (ends in .melarecipes, or a single .melarecipe) into your RecipeSage account. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importCrouton.tabTitle": "Import from Crouton - RecipeSage",
  "pages.importCrouton.title": "Import Recipes from Crouton File",
  "pages.importCrouton.description": "This will import a Crouton export (a .zip archive containing .crumb recipe files) into your RecipeSage account. Please consider contributing if your file contains a large number of recipes or images.",
  "pages.importCookbookManagerCom.tabTitle": "Import from CookBookManager.com - RecipeSage",
  "pages.importCookbookManagerCom.title": "Import Recipes from CookBookManager.com File",
  "pages.importCookbookManagerCom.description": "This will import a CookBookManager.com export (a .zip archive containing .yml recipe files) into your RecipeSage account. Please consider contributing if your file contains a large number of recipes or images.",
  "pages.importFlavorish.tabTitle": "Import from Flavorish - RecipeSage",
  "pages.importFlavorish.title": "Import Recipes from Flavorish File",
  "pages.importFlavorish.description": "This will import a Flavorish export (a .zip archive containing a manifest, JSON recipe files, and an images folder) into your RecipeSage account. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importPepperplate.tabTitle": "Import from Pepperplate - RecipeSage",
  "pages.importPepperplate.title": "Import Recipes from Pepperplate",
  "pages.importPepperplate.description": "This will import all recipes from your Pepperplate account into your RecipeSage account. Please consider contributing if you have a large number of recipes or images.",
  "pages.importPepperplate.username": "Pepperplate Email/Username",
  "pages.importPepperplate.incorrectCredentials.header": "Incorrect Credentials",
  "pages.importPepperplate.incorrectCredentials.message": "It looks like the username or password you entered for Pepperplate is incorrect.",
  "pages.importPepperplate.username.helperText": "The email or username for your Pepperplate account",
  "pages.importPepperplate.password": "Pepperplate Password",
  "pages.importPepperplate.password.helperText": "The password for your Pepperplate account",

  "pages.importTextfiles.tabTitle": "Import from Documents - RecipeSage",
  "pages.importTextfiles.title": "Import Recipes from Zip of Documents",
  "pages.importTextfiles.description": "This will import a set of documents compressed within a zip file (ends in .zip) into your RecipeSage account. Supported formats inside the zip: .txt, .rtf, .odt, .docx, .md, .markdown, .html, .htm, .org. Each document must contain a single recipe, and the zip may contain up to 100 documents (a mix of these formats is supported). Please refer to the user guide for how to create a file in the correct format to be imported here. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importEnex.tabTitle": "Import from Evernote - RecipeSage",
  "pages.importEnex.title": "Import Recipes from Evernote (enex) File",
  "pages.importEnex.description": "This will import recipes from an Evernote export (ends in .enex) into your RecipeSage account. Please refer to the user guide for how to create a file in the correct format to be imported here. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importUrls.tabTitle": "Import from URLs - RecipeSage",
  "pages.importUrls.title": "Import Recipes from a list of URLs",
  "pages.importUrls.description": "This will attempt to import all of the URLs specified into your RecipeSage account using the autoclip functionality. Please keep in mind that some URLs may be unreachable or unparseable, and will not be imported. Please refer to the user guide for any issues. Please consider contributing if your file contains a large number of recipes or images.",
  "pages.importUrls.urls": "Recipe URLs",
  "pages.importUrls.urls.helperText": "Each URL must be on it's own separate line. Only URLs starting with http:// and https:// are supported.",

  "pages.importCSV.tabTitle": "Import from CSV - RecipeSage",
  "pages.importCSV.title": "Import Recipes from a CSV file",
  "pages.importCSV.description": "This will import all of the recipes contained in a CSV file into your RecipeSage account. Many programs output this format, but the internal structure can be somewhat arbitrary. Please refer to the user guide if you have any issues, otherwise contact me. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importPDFs.tabTitle": "Import from PDFs - RecipeSage",
  "pages.importPDFs.title": "Import Recipes from PDF files",
  "pages.importPDFs.description": "This will import a set of PDF files compressed within a zip file (ends in .zip) into your RecipeSage account. Please refer to the user guide for how to create a file in the correct format to be imported here. Please consider contributing if your file contains a large number of recipes or images.",

  "pages.importImages.tabTitle": "Import from Images - RecipeSage",
  "pages.importImages.title": "Import Recipes from image files",
  "pages.importImages.description": "This will import a set of image files compressed within a zip file (ends in .zip) into your RecipeSage account. Please refer to the user guide for how to create a file in the correct format to be imported here. Please consider contributing if your file contains a large number of recipes or images.",

  "offlineMode.prompt.header": "Slow connection detected",
  "offlineMode.prompt.message": "Your connection looks like it's slow. Enable offline mode to instantly browse the recipes saved on this device. This choice lasts until you close the app, and you can turn it off anytime on the settings page.",
  "offlineMode.prompt.enable": "Enable",
  "offlineMode.prompt.notNow": "Not Now",
  "offlineMode.prompt.neverAsk": "Don't Ask Again",
  "offlineMode.blocked.header": "Offline Mode Enabled",
  "offlineMode.blocked.message": "This functionality is only available while online. You can turn off Offline Mode on the settings page.",
  "offlineMode.enabled.header": "Offline Mode Enabled",
  "offlineMode.enabled.message": "Your recipes are now served from the copy saved on this device, so browsing and searching stay instant even when your connection is weak.\n\nActions that need the server, such as creating or editing a recipe, are unavailable until you turn offline mode off. Offline mode lasts for this session only, and it turns itself off the next time you open the app.",
  "offlineMode.syncRequired.header": "Sync Required",
  "offlineMode.syncRequired.message": "This device does not have a full copy of your recipes yet, so offline mode has nothing to show you.\n\nUse Trigger Cache Sync for Offline while you have a good connection, then turn on offline mode once the sync has finished.",

  "pages.settings.tabTitle": "Settings - RecipeSage",
  "pages.settings.title": "Settings",
  "pages.settings.section1.title": "Data & Account",
  "pages.settings.import": "Import Recipe Data",
  "pages.settings.export": "Export Recipe Data",
  "pages.settings.jobs": "View All Background Jobs",
  "pages.settings.debugDump": "Download Debug Dump for Support",
  "pages.settings.account": "Account Settings & Stats",
  "pages.settings.logout": "Log Out",
  "pages.settings.section2.title": "General Settings",
  "pages.settings.sync": "Trigger Cache Sync for Offline",
  "pages.settings.offlineMode.enable": "Enable Offline Mode",
  "pages.settings.offlineMode.prompt": "Offline Mode Prompt",
  "pages.settings.offlineMode.prompt.ask": "Ask Me",
  "pages.settings.offlineMode.prompt.never": "Never",
  "pages.settings.splitPane": "Enable Split Pane View on Large Screens",
  "pages.settings.startPage": "Start Page",
  "pages.settings.startPage.myRecipes": "My Recipes",
  "pages.settings.startPage.manageLabels": "Manage Labels",
  "pages.settings.startPage.mealPlans": "Meal Plans",
  "pages.settings.startPage.shoppingLists": "Shopping Lists",
  "pages.settings.theme": "Theme",
  "pages.settings.theme.default": "System Default",
  "pages.settings.theme.light": "Light",
  "pages.settings.theme.dark": "Dark",
  "pages.settings.theme.midnight": "Midnight",
  "pages.settings.theme.black": "Black (OLED)",
  "pages.settings.language": "Language",
  "pages.settings.language.contribute": "Language support is community powered. Click here to add a language or fix translations",
  "pages.settings.language.default": "Browser Default",
  "pages.settings.fontSize": "Font Size",
  "pages.settings.cookModeFontSize": "Cook Mode Font Size",
  "pages.settings.autoExpandNutrition": "Auto-Expand Nutritional Information When Editing Recipes",
  "pages.settings.preferencesSync": "Sync Preferences Between Devices",
  "pages.settings.reset": "Reset All Preferences",
  "pages.settings.resetCompletion": "Reset Recipe Ingredient and Instruction Completion + Scale",
  "pages.settings.resetCompletion.header": "Reset Recipe Ingredient and Instruction Completion + Scale",
  "pages.settings.resetCompletion.message": "This will clear all of the saved ingredient/instruction completion (items marked as complete in your recipes), as well as any scaling you've set on your recipes.",
  "pages.settings.preferencesSync.header": "Sync Preferences",
  "pages.settings.preferencesSync.message": "You must select whether you want to override the synced settings in the cloud with the local settings on this device, or override the settings on this device with the settings from the cloud.",
  "pages.settings.preferencesSync.local": "Keep Local Settings",
  "pages.settings.preferencesSync.remote": "Keep Cloud Settings",
  "pages.settings.resetPrefs.header": "Reset Preferences Warning",
  "pages.settings.resetPrefs.message": "Resetting your preferences will set all app preferences back to their default state. This includes preferences set via menus on the home page, meal plans page, shopping list page, etc. Note: This only affects this device.",
  "pages.settings.oled.header": "Black (OLED) Warning",
  "pages.settings.oled.message": "The black (OLED) theme may make it difficult to distinguish between elements and alerts. Shadows and other visual animations will also not be displayed.",
  "pages.settings.sync.header": "Sync Triggered",
  "pages.settings.sync.message": "You will see a notification pop up when the sync has completed if you have enabled notification permissions for the app via the messaging page.",
  "pages.settings.serverSettings": "Server Settings",
  "pages.serverSettings.tabTitle": "Server Settings - RecipeSage",
  "pages.serverSettings.title": "Server Settings",
  "pages.serverSettings.switchConfirm.header": "Switch servers?",
  "pages.serverSettings.switchConfirm.message": "Only do this if you know what you're doing. Do not do this if someone instructed you to do so (it can be used to take over your account!). You'll be logged out after confirming.",
  "pages.serverSettings.switchConfirm.confirm": "Switch servers",
  "pages.serverSettings.intro.title": "Choose your server",
  "pages.serverSettings.intro.body": "Select which RecipeSage server this app connects to. Almost everyone should stay on Default.",
  "pages.serverSettings.endpoint": "API endpoint",
  "pages.serverSettings.preset.default": "Default",
  "pages.serverSettings.preset.beta": "Beta",
  "pages.serverSettings.preset.custom": "Custom",
  "pages.serverSettings.default.description": "Uses the standard server this app is configured for. This is the right choice for almost everyone.",
  "pages.serverSettings.beta.description": "Connects to the RecipeSage beta servers, where new features are tested before release. These servers may be unstable.",
  "pages.serverSettings.warning.title": "Advanced setting, do not change this",
  "pages.serverSettings.warning.body": "This setting points the app at a different RecipeSage server. It is intended only for developers and self-hosting users. If you change it without knowing exactly what you are doing, the app will not be able to connect and you may be unable to access your recipes.",
  "pages.serverSettings.confirm": "I'm sure I know what I'm doing",
  "pages.serverSettings.apiBase.label": "API base URL",
  "pages.serverSettings.apiBase.placeholder": "https://example.com/api/",
  "pages.serverSettings.apiBase.helper": "The full URL the app uses to reach the API. This usually ends with /api/.",
  "pages.serverSettings.apiBase.invalid": "Please enter a valid http(s) URL.",
  "pages.serverSettings.gripWs.label": "WebSocket server URL",
  "pages.serverSettings.gripWs.placeholder": "wss://example.com/grip/ws",
  "pages.serverSettings.gripWs.helper": "The WebSocket URL the app uses for live updates. This may be on a different host than the API. The app will reload when you save.",
  "pages.serverSettings.gripWs.invalid": "Please enter a valid ws(s) URL.",
  "sync.notification.title": "Offline Sync Complete",
  "sync.notification.body": "Your content has been cached for offline use, and will be kept up-to-date automatically.",

  "pages.share.title": "Share Recipe",
  "pages.share.description": "When sharing, a copy of this recipe will be sent to the recipient. Your copy will not be affected.",
  "pages.share.byAccount": "RecipeSage",
  "pages.share.byLink": "Link",
  "pages.share.byEmbed": "Embed",
  "pages.share.embedPreview": "Embed Preview",
  "pages.share.byAccount.description": "Recipient must have a RecipeSage account. If you'd like to share with a non-RecipeSage user, use the link sharing option.",
  "pages.share.byEmbed.image": "Show Title Image",
  "pages.share.byEmbed.columns": "Disable Columns",
  "pages.share.byEmbed.print": "Show Print Button",
  "pages.share.byEmbed.sources": "Hide Sources",
  "pages.share.byEmbed.notes": "Hide Notes",
  "pages.share.byEmbed.height": "Height (not shown)",
  "pages.share.byEmbed.width": "Width (not shown)",
  "pages.share.byEmbed.jsonLD": "Enable JSON-LD for SEO",
  "pages.share.byEmbed.copy": "Copy the code below and paste it into your website HTML",
  "pages.share.send": "Send",
  "pages.share.close": "Close",

  "pages.newShoppingListItem.title": "Add item(s)",
  "pages.newShoppingListItem.items": "Items",
  "pages.newShoppingListItem.recipe": "Recipe",
  "pages.newShoppingListItem.itemsLabel": "Items",
  "pages.newShoppingListItem.itemsHelper": "Enter one item per line",
  "pages.newShoppingListItem.add": "Add to List",

  "pages.newShoppingList.title": "New shopping list",
  "pages.newShoppingList.listTitle": "Title",
  "pages.newShoppingList.create": "Create",
  "pages.newShoppingList.createAndShare": "Create and Share",

  "pages.updateShoppingList.title": "Update shopping list",
  "pages.updateShoppingList.listTitle": "Title",
  "pages.updateShoppingList.update": "Update",
  "pages.updateShoppingList.updateAndShare": "Update and Share",

  "pages.shoppingList.tabTitle": "Shopping List",
  "pages.shoppingList.title": "Shopping List - {{title}}",
  "pages.shoppingList.loading": "Loading shopping list...",
  "pages.shoppingList.noLongerAvailable": "This shopping list is no longer available.",
  "pages.shoppingList.nullState.1": "There are no items in this shopping list.",
  "pages.shoppingList.nullState.2": "Use the menu in the upper right hand corner to enable or disable automatic grouping.",
  "pages.shoppingList.nullState.add": "Add the first item",
  "pages.shoppingList.recipes": "Recipes in this list",
  "pages.shoppingList.completed": "Completed Items",
  "pages.shoppingList.restoreAll": "Restore all completed items",
  "pages.shoppingList.deleteAll": "Delete all completed items",
  "pages.shoppingList.removeMultiple.header": "Confirm Removal",
  "pages.shoppingList.removeMultiple.message": "This will permanently delete these items from this list.",
  "pages.shoppingList.removed": "Removed {{itemCount}} item(s)",
  "pages.shoppingList.removed.undo": "Undo",
  "pages.shoppingList.category.uncategorized": "Uncategorized",
  "pages.shoppingList.category.produce": "Produce",
  "pages.shoppingList.category.dairy": "Dairy",
  "pages.shoppingList.category.meat": "Meat",
  "pages.shoppingList.category.bakery": "Bakery",
  "pages.shoppingList.category.grocery": "Grocery",
  "pages.shoppingList.category.liquor": "Liquor",
  "pages.shoppingList.category.seafood": "Seafood",
  "pages.shoppingList.category.nonfood": "Nonfood",
  "pages.shoppingList.category.frozen": "Frozen",
  "pages.shoppingList.category.canned": "Canned",
  "pages.shoppingList.category.beverages": "Beverages",
  "pages.shoppingList.category.baking": "Baking",
  "pages.shoppingList.category.spices": "Spices",
  "pages.shoppingList.category.condiments": "Condiments",

  "pages.shoppingListPopover.options.title": "Options",
  "pages.shoppingListPopover.sortBy": "Sort by",
  "pages.shoppingListPopover.sortBy.title": "Title",
  "pages.shoppingListPopover.sortBy.createdDesc": "Created (newest first)",
  "pages.shoppingListPopover.sortBy.createdAsc": "Created (oldest first)",
  "pages.shoppingListPopover.groupCategories": "Group Items by Category",
  "pages.shoppingListPopover.groupSimilar": "Group Similar Items",
  "pages.shoppingListPopover.showTitle": "Show Recipe Title",
  "pages.shoppingListPopover.showAddedBy": "Show Added By",
  "pages.shoppingListPopover.showAddedOn": "Show Added On",
  "pages.shoppingListPopover.preferDelete": "Delete Upon Completion",
  "pages.shoppingListPopover.actions.title": "Actions",
  "pages.shoppingListPopover.print": "Print",
  "pages.shoppingListPopover.update": "Manage List",
  "pages.shoppingListPopover.categoryOrder": "Change Category Order",
  "pages.shoppingListPopover.dangerZone.title": "Danger Zone",
  "pages.shoppingListPopover.removeAll": "Remove all items",
  "pages.shoppingListPopover.delete": "Delete list",
  "pages.shoppingListPopover.removeAll.header": "Confirm Removal",
  "pages.shoppingListPopover.removeAll.message": "This will permanently delete all items from this list. This action is irreversible.",
  "pages.shoppingListPopover.deleteList.header": "Confirm Delete",
  "pages.shoppingListPopover.deleteList.message": "This will permanently remove this shopping list from your account. If this list is shared with anyone else, it will be removed from their accounts as well.",
  "pages.shoppingListPopover.removeSelfFromList.header": "Confirm Remove List",
  "pages.shoppingListPopover.removeSelfFromList.message": "This will remove this shopping list from your account. Only the owner of the list can permanently delete it completely, but you won't be a member of this list if you proceed. Only the owner of the list can reverse this action.",

  "pages.shoppingLists.tabTitle": "Shopping Lists - RecipeSage",
  "pages.shoppingLists.title": "Shopping Lists",
  "pages.shoppingLists.loading": "Loading your shopping lists...",
  "pages.shoppingLists.editIgnore": "Edit Item Ignore List",
  "pages.shoppingLists.created": "Created {{date}}",
  "pages.shoppingLists.collaboration": "In collaboration with:",
  "pages.shoppingLists.createdBy": "Created by {{name}}",
  "pages.shoppingLists.owner": "You own this list",
  "pages.shoppingLists.nullState.1": "You have no shopping lists.",
  "pages.shoppingLists.nullState.2": "To create a shopping list, press the plus button in the bottom corner.",

  "pages.shoppingListIgnoreModal.title": "Shopping List Item Ignore List",
  "pages.shoppingListIgnoreModal.description": "Items listed here will be automatically excluded when adding a recipe to a shopping list. This is particularly handy for ingredients such as salt, which you likely don't need added every time you add an item to a shopping list.",
  "pages.shoppingListIgnoreModal.instructions": "Each entry should be on it's own line. Entries will match an ingredient if the ingredient contains any part of the line. If you enter \"salt\", it will match \"1 tbsp sea salt finely ground\".",
  "pages.shoppingListIgnoreModal.scopeNote": "This list applies to all of your shopping lists, and only to you. Other collaborators on a shopping list are not affected by your ignore list.",
  "pages.shoppingListIgnoreModal.label": "Ignore list",
  "pages.shoppingListIgnoreModal.placeholder": "Keywords to ignore, each on their own line",

  "pages.shoppingListCategoryOrderModal.title": "Shopping List Category Order List",
  "pages.shoppingListCategoryOrderModal.description": "Categories within this shopping list will be sorted in the order you list them here.",
  "pages.shoppingListCategoryOrderModal.instructions": "Each entry should be on it's own line, and should match one of the predefined categories, or a custom category title you've entered when sorting items. Capitalization is ignored.",
  "pages.shoppingListCategoryOrderModal.label": "Category order",
  "pages.shoppingListCategoryOrderModal.placeholder": "Category titles, each on their own line",

  "pages.addFriendModal.title": "Find User",
  "pages.addFriendModal.profileWarning": "Note: The desired user must have enabled their profile.",
  "pages.addFriendModal.send": "Send Friend Request",
  "pages.addFriendModal.open": "Open Profile",
  "pages.addFriendModal.profileDisabled.header": "Profile is not enabled",
  "pages.addFriendModal.profileDisabled.message": "This user has disabled their profile and is therefore private/inaccessible.",
  "pages.addFriendModal.success": "Friend invite sent!",

  "pages.addProfileItem.title": "Add Profile Item",
  "pages.addProfileItem.prompt": "What Would You Like to Share?",
  "pages.addProfileItem.recipe": "A Recipe",
  "pages.addProfileItem.label": "A Label",
  "pages.addProfileItem.allRecipes": "All of My Recipes",
  "pages.addProfileItem.type": "Profile Item Type:",
  "pages.addProfileItem.type.recipe": "Recipe",
  "pages.addProfileItem.type.label": "Label",
  "pages.addProfileItem.type.allRecipes": "All Recipes",
  "pages.addProfileItem.change": "Click to change",
  "pages.addProfileItem.selectRecipe": "Select a recipe",
  "pages.addProfileItem.selectLabel": "Select a label",
  "pages.addProfileItem.selectVisibility": "Who Should Be Able to See This?",
  "pages.addProfileItem.selectVisibility.public": "Anyone (Public)",
  "pages.addProfileItem.selectVisibility.friends": "My Friends Only",
  "pages.addProfileItem.visibilityPublic": "Visibility: Public",
  "pages.addProfileItem.visibilityFriends": "Visibility: Friends only",
  "pages.addProfileItem.itemTitle": "Featured Title",
  "pages.addProfileItem.tos": "By adding this item, you agree to the RecipeSage Sharing Policy",
  "pages.addProfileItem.done": "Done",

  "pages.myProfile.tabTitle": "Edit Profile - RecipeSage",
  "pages.myProfile.title": "Edit Profile",
  "pages.myProfile.loading": "Loading your profile...",
  "pages.myProfile.welcome": "Welcome to your profile!",
  "pages.myProfile.setup1": "Before you get started, there are a few things that you'll need to set up.",
  "pages.myProfile.setup.name": "First, choose the name or nickname to be shown on your profile.",
  "pages.myProfile.name": "Name/Nickname",
  "pages.myProfile.setup2": "Now, choose the handle for your profile, for example: @recipesage",
  "pages.myProfile.handle": "Unique @handle",
  "pages.myProfile.handle.taken": "That handle is taken",
  "pages.myProfile.handle.invalid": "Handle is invalid",
  "pages.myProfile.handle.unique": "Note: Handle must be unique, and must not contain any special characters.",
  "pages.myProfile.share": "Share",
  "pages.myProfile.view": "View Profile",
  "pages.myProfile.pinned": "Pinned Recipes & Labels",
  "pages.myProfile.add": "Add",
  "pages.myProfile.nullState.1": "You have nothing on your profile yet.",
  "pages.myProfile.nullState.2": "To add your first profile item, click the \"add\" button to the right.",
  "pages.myProfile.save": "Save",
  "pages.myProfile.notEnabled.header": "Profile Not Enabled",
  "pages.myProfile.notEnabled.message": "You'll need to enable your profile to interact with sharing features, such as sending friend requests.",
  "pages.myProfile.ignore": "Ignore",
  "pages.myProfile.enable": "Enable",
  "pages.myProfile.share.unsaved.header": "Unsaved Changes",
  "pages.myProfile.share.unsaved.message": "You'll need to save your changes before you can share your profile.",
  "pages.myProfile.view.unsaved.header": "Unsaved Changes",
  "pages.myProfile.view.unsaved.message": "You'll need to save your changes before you can view what your profile looks like.",

  "pages.people.tabTitle": "People - RecipeSage",
  "pages.people.title": "People",
  "pages.people.loading": "Loading...",
  "pages.people.nullState.1": "You haven't set up a profile.",
  "pages.people.nullState.2": "Creating a profile allows you to share collections of recipes with friends and the public.",
  "pages.people.create": "Create",
  "pages.people.edit": "View/edit my profile",
  "pages.people.friends": "Friends",
  "pages.people.unfriend": "Unfriend",
  "pages.people.invites": "Friend invites (incoming)",
  "pages.people.accept": "Accept",
  "pages.people.decline": "Decline",
  "pages.people.sentInvites": "Pending (sent) friend requests",
  "pages.people.cancel": "Cancel",
  "pages.people.noFriends.1": "You don't have any friends added.",
  "pages.people.noFriends.2": "Adding someone as a friend allows you to collaborate on recipes, meal plans, and shopping lists.",
  "pages.people.noFriends.3": "To add someone, click the search icon.",
  "pages.people.setup.header": "Profile Not Setup",
  "pages.people.setup.message": "You'll need to setup your profile before you can go adding friends.",
  "pages.people.setup.confirm": "Setup",

  "pages.discover.tabTitle": "Discover Recipes - RecipeSage",
  "pages.discover.title": "Discover",
  "pages.discover.search.placeholder": "Search for titles or ingredients",
  "pages.discover.filters.title": "Filter",
  "pages.discover.filters.language": "Language",
  "pages.discover.filters.language.all": "All languages",
  "pages.discover.filters.minRating": "Minimum rating",
  "pages.discover.filters.minRating.any": "Any",
  "pages.discover.filters.categories": "Categories",
  "pages.discover.filters.categories.all": "All categories",
  "pages.discover.filters.matchAllCategories": "Match all categories",
  "pages.discover.filters.minRatingCount": "Minimum number of ratings",
  "pages.discover.filters.minRatingCount.any": "Any",
  "pages.discover.filters.photo": "Photos",
  "pages.discover.filters.photo.optional": "Optional",
  "pages.discover.filters.photo.required": "Required",
  "pages.discover.filters.photo.none": "Without photos",
  "pages.discover.filters.sort": "Sort by",
  "pages.discover.filters.sort.trending": "Trending",
  "pages.discover.filters.sort.newest": "Newest",
  "pages.discover.filters.sort.topRated": "Top rated",
  "pages.discover.filters.sort.mostSaved": "Most saved",
  "pages.discover.empty.title": "No recipes found",
  "pages.discover.empty.message": "Try adjusting your search or filters.",
  "pages.discover.publishCta": "Please help me build out RecipeSage's Discover section. You can use the \"Publish to Discover\" button while on one of your recipes to publish it here.",
  "pages.discover.recipe.by": "by {{handle}}",
  "pages.discover.recipe.saves": "{{count}} saves",
  "pages.discover.categoryGroups.course": "Course",
  "pages.discover.categoryGroups.cuisine": "Cuisine",
  "pages.discover.categoryGroups.dietary": "Dietary",
  "pages.discover.categoryGroups.mainIngredient": "Main ingredient",
  "pages.discover.categoryGroups.method": "Cooking method",
  "pages.discover.categories.breakfast": "Breakfast",
  "pages.discover.categories.lunch": "Lunch",
  "pages.discover.categories.dinner": "Dinner",
  "pages.discover.categories.appetizer": "Appetizer",
  "pages.discover.categories.sideDish": "Side dish",
  "pages.discover.categories.salad": "Salad",
  "pages.discover.categories.soup": "Soup",
  "pages.discover.categories.dessert": "Dessert",
  "pages.discover.categories.snack": "Snack",
  "pages.discover.categories.beverage": "Beverage",
  "pages.discover.categories.bread": "Bread",
  "pages.discover.categories.sauce": "Sauce",
  "pages.discover.categories.northAmerican": "North American",
  "pages.discover.categories.latinAmerican": "Latin American",
  "pages.discover.categories.mediterranean": "Mediterranean",
  "pages.discover.categories.westernEuropean": "Western European",
  "pages.discover.categories.easternEuropean": "Eastern European",
  "pages.discover.categories.middleEastern": "Middle Eastern",
  "pages.discover.categories.african": "African",
  "pages.discover.categories.southAsian": "South Asian",
  "pages.discover.categories.eastAsian": "East Asian",
  "pages.discover.categories.southeastAsian": "Southeast Asian",
  "pages.discover.categories.vegetarian": "Vegetarian",
  "pages.discover.categories.vegan": "Vegan",
  "pages.discover.categories.pescatarian": "Pescatarian",
  "pages.discover.categories.glutenFree": "Gluten free",
  "pages.discover.categories.dairyFree": "Dairy free",
  "pages.discover.categories.nutFree": "Nut free",
  "pages.discover.categories.keto": "Keto",
  "pages.discover.categories.lowCarb": "Low carb",
  "pages.discover.categories.highProtein": "High protein",
  "pages.discover.categories.sugarFree": "Sugar free",
  "pages.discover.categories.halal": "Halal",
  "pages.discover.categories.kosher": "Kosher",
  "pages.discover.categories.chicken": "Chicken",
  "pages.discover.categories.beef": "Beef",
  "pages.discover.categories.pork": "Pork",
  "pages.discover.categories.lamb": "Lamb",
  "pages.discover.categories.seafood": "Seafood",
  "pages.discover.categories.tofu": "Tofu",
  "pages.discover.categories.beansLegumes": "Beans & legumes",
  "pages.discover.categories.pasta": "Pasta",
  "pages.discover.categories.rice": "Rice",
  "pages.discover.categories.vegetables": "Vegetables",
  "pages.discover.categories.baking": "Baked",
  "pages.discover.categories.grilling": "Grilled",
  "pages.discover.categories.frying": "Fried",
  "pages.discover.categories.airFryer": "Air fryer",
  "pages.discover.categories.slowCooker": "Slow cooker",
  "pages.discover.categories.pressureCooker": "Pressure cooker",
  "pages.discover.categories.onePot": "One pot",
  "pages.discover.categories.noCook": "No-cook",
  "pages.discoverRecipe.tabTitle": "Discover Recipe - RecipeSage",
  "pages.discoverRecipe.pageTitle": "Discover",
  "pages.discoverRecipe.categories": "Categories",
  "pages.discoverRecipe.author": "Author:",
  "pages.discoverRecipe.rateThis": "Rate this recipe:",
  "pages.discoverRecipe.save": "Save to my recipes",
  "pages.discoverRecipe.saveSuccess": "Recipe saved to your collection",
  "pages.discoverRecipe.edit": "Edit",
  "pages.discoverRecipe.unpublish": "Unpublish",
  "pages.discoverRecipe.unpublish.confirm.header": "Unpublish recipe",
  "pages.discoverRecipe.unpublish.confirm.message": "This will remove the recipe from Discover. Your own copy is not affected.",
  "pages.discoverRecipe.report": "Report",
  "pages.discoverRecipe.report.confirm.header": "Report this recipe?",
  "pages.discoverRecipe.report.confirm.message": "This recipe will be flagged for moderator review. Report recipes that are inappropriate, contain copyrighted content, or otherwise break the rules.",
  "pages.discoverRecipe.report.reasonPlaceholder": "Please explain why you are reporting this recipe",
  "pages.discoverRecipe.report.reasonTooShort": "Please enter at least 5 characters explaining why you are reporting this recipe.",
  "pages.discoverRecipe.report.success": "Thanks for reporting. This recipe will be reviewed.",
  "pages.discoverRecipe.linkedRecipes": "Linked recipes",
  "pages.discoverRecipe.modified": "Modified: {{date}}",
  "pages.discoverRecipe.ratingCount": "{{count}} ratings",
  "pages.discoverRecipe.notFound": "This recipe could not be found.",
  "pages.publishDiscoverRecipe.tabTitle": "Publish to Discover - RecipeSage",
  "pages.publishDiscoverRecipe.title.publish": "Publish to Discover",
  "pages.publishDiscoverRecipe.title.edit": "Edit Discover Recipe",
  "pages.publishDiscoverRecipe.input.language": "Language",
  "pages.publishDiscoverRecipe.input.linkedRecipes": "Linked recipes",
  "pages.publishDiscoverRecipe.tos.agreeLabel": "I agree to the RecipeSage Terms of Service and Sharing Policy.",
  "pages.publishDiscoverRecipe.tos.viewLink": "View the RecipeSage Terms of Service and Sharing Policy",
  "pages.publishDiscoverRecipe.button.publish": "Publish",
  "pages.publishDiscoverRecipe.button.save": "Save changes",
  "pages.publishDiscoverRecipe.publishSuccess": "Your recipe is now on Discover",
  "pages.publishDiscoverRecipe.editSuccess": "Your published recipe has been updated",
  "pages.publishDiscoverRecipe.ineligible.header": "Cannot publish",
  "pages.publishDiscoverRecipe.ineligible.message": "This recipe appears to come from an external source, so it cannot be published to Discover. Only your own original recipes can be published.",
  "pages.profile.tabTitle": "Profile - RecipeSage",
  "pages.profile.title": "{{name}}'s Profile",
  "pages.profile.loading": "Loading profile...",
  "pages.profile.pinned": "Pinned Recipes & Labels",
  "pages.profile.publishedRecipes": "Published recipes",
  "pages.profile.nullState": "{{name}} hasn't added anything to their profile yet.",
  "pages.profile.send": "Send Friend Request",
  "pages.profile.cancel": "Cancel Friend Request",
  "pages.profile.accept": "Accept Friend Request",
  "pages.profile.decline": "Decline Friend Request",
  "pages.profile.unfriend": "Unfriend",
  "pages.profile.setup": "Setup Your Profile to Add Friend",
  "pages.profile.login": "Log In/Register to Add Friend",
  "pages.profile.disabled.header": "Profile is not enabled",
  "pages.profile.disabled.message": "This user has disabled their profile and is therefore private/inaccessible.",
  "pages.profile.inviteSent": "Friend invite sent!",
  "pages.profile.inviteRemoved": "Friendship removed",
  "pages.profile.setup.header": "Your profile isn't setup yet",
  "pages.profile.setup.message": "To add this user as a friend, you need to setup your profile.",
  "pages.profile.setup.confirm": "Setup",
  "pages.profile.alreadyRequested": "It looks like you already have a friendship in progress. Please try again.",

  "pages.shareProfileModal.title": "Share {{name}}'s Profile",
  "pages.shareProfileModal.close": "Close",
  "pages.shareProfileModal.shareTitle": "{{name}}'s RecipeSage profile",
  "pages.shareProfileModal.shareBody": "Click to view {{name}}'s public RecipeSage profile:",
  "pages.shareProfileModal.errorLoadingProfileUrl": "Error loading profile url",

  "components.cookingToolbar.clear": "Clear All Pinned Recipes?",

  "components.rating.label": "Rating: {{rating}} out of 5",

  "components.recipeFormatToolbar.bold": "Bold",
  "components.recipeFormatToolbar.italic": "Italic",
  "components.recipeFormatToolbar.underline": "Underline",
  "components.recipeFormatToolbar.header": "Section header",
  "components.recipeFormatToolbar.scale": "Scalable amount",
  "components.recipeFormatToolbar.continuation": "Continue step on next line",
  "components.recipeFormatToolbar.image": "Insert image reference",
  "components.recipeFormatToolbar.table": "Insert table",
  "components.recipeFormatToolbar.help": "Formatting help",
  "components.recipeFormatToolbar.placeholder.bold": "bold text",
  "components.recipeFormatToolbar.placeholder.italic": "italic text",
  "components.recipeFormatToolbar.placeholder.underline": "underlined text",
  "components.recipeFormatToolbar.placeholder.header": "Section name",
  "components.recipeFormatToolbar.placeholder.scale": "amount",
  "components.recipeFormatToolbar.table.header": "Header",
  "components.recipeFormatToolbar.table.cell": "Cell",

  "components.copyWithWebshare.instructions": "To share, copy the link below",
  "components.copyWithWebshare.shareIcon": "or press the share icon",

  "components.mealCalendar.recipes": "Recipes scheduled on this day",
  "components.mealCalendar.noRecipes": "No recipes are currently scheduled on this day.",
  "components.mealCalendar.meals": "Meals For This Day",
  "components.mealCalendar.selectDay": "Select a day to see meals for that day.",
  "components.mealCalendar.noMeals": "There are no meals scheduled for this day.",
  "components.mealCalendar.breakfast": "Breakfast",
  "components.mealCalendar.lunch": "Lunch",
  "components.mealCalendar.dinner": "Dinner",
  "components.mealCalendar.snack": "Snack",
  "components.mealCalendar.other": "Other",
  "components.mealCalendar.dayTitle.sun": "Sun",
  "components.mealCalendar.dayTitle.mon": "Mon",
  "components.mealCalendar.dayTitle.tue": "Tue",
  "components.mealCalendar.dayTitle.wed": "Wed",
  "components.mealCalendar.dayTitle.thu": "Thu",
  "components.mealCalendar.dayTitle.fri": "Fri",
  "components.mealCalendar.dayTitle.sat": "Sat",

  "components.multiImageUpload.add": "Click to Add Image",
  "components.multiImageUpload.imageLimit": "You can attach attach up to 10 images",
  "components.multiImageUpload.imageError": "There was an error processing one or more of the images that you selected",
  "components.multiImageUpload.imageFormatError": "One or more images couldn't be processed because the format isn't supported. Try uploading JPEG, PNG, or HEIC files.",
  "components.multiImageUpload.contributorHint.header": "About Recipe Images",
  "components.multiImageUpload.contributorHint.message": "Hosting images is one of the biggest costs of running RecipeSage.\n\nTo keep the rest of the app free for everyone, uploading multiple images per recipe and storing images in high resolution are reserved for contributors as a thank you.\n\nIf you're enjoying RecipeSage, please consider contributing to help keep it alive!",

  "components.messaging.notificationPermission.header": "Requires Notification Permissions",
  "components.messaging.notificationPermission.message": "To notify you when your contacts send you messages, we need notification access. After dismissing this popup, you will be prompted to enable notification access.",

  "components.selectCollaborators.title": "Collaborators",
  "components.selectCollaborators.placeholder": "Add collaborators by email address",
  "components.selectCollaborators.added": "Already added",
  "components.selectCollaborators.add": "Click to add",
  "components.selectCollaborators.searching": "Searching...",
  "components.selectCollaborators.notFound": "User not found",
  "components.selectCollaborators.notFoundError": "Could not find user with that email address.",
  "components.selectCollaborators.invalidEmail": "Please enter a valid email and press enter.",

  "components.selectIngredients.title": "Select the ingredients you'd like to add:",
  "components.selectIngredients.toggleAll": "Select/Deselect All",
  "components.selectIngredients.scale": "{{scale}}x scale (click to change)",
  "components.selectIngredients.null": "This recipe has no ingredients.",

  "components.selectLabel.change": "Click to change",
  "components.selectLabel.select": "Click to select",
  "components.selectLabel.search": "Type to search for a label...",
  "components.selectLabel.null": "No labels called \"{{name}}\"",

  "components.selectMultipleItems.null": "No results for {{searchText}}",
  "components.selectMultipleItems.select": "Click to select",
  "components.selectMultipleItems.create": "Click to create",
  "components.selectMultipleItems.noSelected": "No items selected",
  "components.selectMultipleItems.noItems": "No items",
  "components.selectMultipleItems.alreadyAdded": "Already added",
  "components.selectMultipleItems.searchPlaceholder": "Search for an item to add",

  "components.selectMeal.title": "Select Meal",

  "components.recurrenceEditor.repeat": "Repeat",
  "components.recurrenceEditor.frequency": "Frequency",
  "components.recurrenceEditor.frequency.daily": "Daily",
  "components.recurrenceEditor.frequency.weekly": "Weekly",
  "components.recurrenceEditor.frequency.monthly": "Monthly",
  "components.recurrenceEditor.every": "Every",
  "components.recurrenceEditor.unit.day": "day(s)",
  "components.recurrenceEditor.unit.week": "week(s)",
  "components.recurrenceEditor.unit.month": "month(s)",
  "components.recurrenceEditor.repeatOn": "Repeat on",
  "components.recurrenceEditor.weekdayShort.sun": "S",
  "components.recurrenceEditor.weekdayShort.mon": "M",
  "components.recurrenceEditor.weekdayShort.tue": "T",
  "components.recurrenceEditor.weekdayShort.wed": "W",
  "components.recurrenceEditor.weekdayShort.thu": "T",
  "components.recurrenceEditor.weekdayShort.fri": "F",
  "components.recurrenceEditor.weekdayShort.sat": "S",
  "components.recurrenceEditor.weekday.0": "Sunday",
  "components.recurrenceEditor.weekday.1": "Monday",
  "components.recurrenceEditor.weekday.2": "Tuesday",
  "components.recurrenceEditor.weekday.3": "Wednesday",
  "components.recurrenceEditor.weekday.4": "Thursday",
  "components.recurrenceEditor.weekday.5": "Friday",
  "components.recurrenceEditor.weekday.6": "Saturday",
  "components.recurrenceEditor.ordinal.1": "first",
  "components.recurrenceEditor.ordinal.2": "second",
  "components.recurrenceEditor.ordinal.3": "third",
  "components.recurrenceEditor.ordinal.4": "fourth",
  "components.recurrenceEditor.ordinal.5": "fifth",
  "components.recurrenceEditor.monthlyOnDay": "Monthly on day {{day}}",
  "components.recurrenceEditor.monthlyOnNthWeekday": "Monthly on the {{ordinal}} {{weekday}}",
  "components.recurrenceEditor.ends": "Ends",
  "components.recurrenceEditor.ends.onDate": "On date",
  "components.recurrenceEditor.ends.afterOccurrences": "After",
  "components.recurrenceEditor.ends.occurrences": "occurrences",
  "components.recurrenceEditor.preview.count": "This will create {{count}} item(s).",
  "components.recurrenceEditor.preview.truncated": "Limited to {{count}} items (max {{max}}).",
  "components.recurrenceEditor.preview.empty": "This rule produces no items. Check your settings.",
  "components.recurrenceEditor.preview.invalid": "This repeat rule isn't valid. Please check your settings.",

  "components.selectRecipe.change": "Click to change",
  "components.selectRecipe.select": "Click to select",
  "components.selectRecipe.search": "Type to search for a recipe...",
  "components.selectRecipe.searching": "Searching for \"{{searchText}}\"...",
  "components.selectRecipe.null": "No results for \"{{searchText}}\"",
  "components.selectDiscoverRecipe.search": "Search public recipes, or paste a recipe link...",
  "components.selectDiscoverRecipe.searching": "Searching for \"{{searchText}}\"...",
  "components.selectDiscoverRecipe.null": "No public recipes found for \"{{searchText}}\"",
  "components.selectDiscoverRecipe.idNotFound": "A published recipe with that ID could not be found",
  "components.selectRecipeModal.title": "Add Recipe",
  "components.selectLabelModal.title": "Add Label",
  "components.searchableSelectModal.search": "Search...",
  "components.searchableSelectModal.noResults": "No results found",

  "components.selectUser.placeholder": "Search by email or handle",
  "components.selectUser.change": "Click to change",
  "components.selectUser.select": "Click to select",
  "components.selectUser.searching": "Searching for \"{{name}}\"...",
  "components.selectUser.null": "No results for \"{{name}}\"",

  "components.selectKnownUser.friends": "Friends",
  "components.selectKnownUser.conversations": "Message Threads",

  "components.selfhostWarning.1": "Note: This is a selfhosted version of RecipeSage and is therefore not associated with",
  "components.selfhostWarning.2": "or any of the accounts located on the main site.",

  "components.shoppingListItem.recipe": "For recipe:",
  "components.shoppingListItem.added": "Added",
  "components.shoppingListItem.addedBy": "Added by",
  "components.shoppingListItem.moveTo": "Move to Section",
  "components.shoppingListItem.moveToCustom": "Custom Category",
  "components.shoppingListItem.customCategory.title": "Move to Custom Category",
  "components.shoppingListItem.customCategory.message": "Enter the name of the custom category",
  "components.shoppingListItem.customCategory.placeholder": "Category name...",

  "components.tos.warning": "By continuing, you're agreeing to the RecipeSage",
  "components.tos.title": "Terms of Service",

  "components.ratingFilter.title": "Filter by Rating",
  "components.ratingFilter.unrated": "Unrated",
  "components.ratingFilter.reset": "Reset",

  "components.nutritionFilterPopover.title": "Filter by Nutrition",
  "components.nutritionFilterPopover.calories": "Calories (kcal)",
  "components.nutritionFilterPopover.protein": "Protein (g)",
  "components.nutritionFilterPopover.totalCarbs": "Carbs (g)",
  "components.nutritionFilterPopover.totalFat": "Fat (g)",
  "components.nutritionFilterPopover.sodium": "Sodium (mg)",
  "components.nutritionFilterPopover.min": "Min",
  "components.nutritionFilterPopover.max": "Max",
  "components.nutritionFilterPopover.matchMissing": "Include recipes with no value",
  "components.nutritionFilterPopover.matchMissingOnly": "Only recipes with no value",
  "components.nutritionFilterPopover.apply": "Apply",
  "components.nutritionFilterPopover.reset": "Reset",

  "components.scaleRecipe.title": "Scale & Convert Recipe",
  "components.scaleRecipe.click": "Click to multiply the recipe scale",
  "components.scaleRecipe.presetMultiplier": "{{value}}x",
  "components.scaleRecipe.manual": "Or, enter a number, decimal, or fraction to multiply by",
  "components.scaleRecipe.servingsLabel": "Or, scale by yield (original recipe makes {{originalServings}})",
  "components.scaleRecipe.anchorLabel": "Or, pick an ingredient to scale by",
  "components.scaleRecipe.anchorPlaceholder": "Pick an ingredient",
  "components.scaleRecipe.anchorQty": "Amount in {{unit}} (original recipe requires {{originalQty}})",
  "components.scaleRecipe.anchorQtyNoUnit": "Amount I have (original recipe requires {{originalQty}})",
  "components.scaleRecipe.systemLabel": "Units",
  "components.scaleRecipe.system.original": "Original",
  "components.scaleRecipe.system.metric": "Metric",
  "components.scaleRecipe.system.imperial": "Imperial",
  "components.scaleRecipe.cancel": "Cancel",
  "components.scaleRecipe.apply": "Apply",

  "components.fontSize.title": "Adjust Font Size",
  "components.fontSize.option.X1_0": "Respect System Preference",
  "components.fontSize.option.PX14": "14px (Small)",
  "components.fontSize.option.PX16": "16px (Normal)",
  "components.fontSize.option.PX18": "18px (Larger)",
  "components.fontSize.option.PX20": "20px (Larger)",
  "components.fontSize.option.PX22": "22px (Larger)",
  "components.fontSize.option.PX24": "24px (Larger)",
  "components.fontSize.reset": "Reset",

  "components.signInWithGoogle.button": "Sign in with Google",

  "services.quickTutorial.multipleRecipeSelection.header": "Multiple Recipe Selection",
  "services.quickTutorial.multipleRecipeSelection.message": "You're now in multiple recipe selection mode. You can click as many recipes as you'd like to select, then use the buttons that appear in the header to take bulk actions such as labelling or deleting. You can exit multiple recipe selection mode at any time by clicking the X in the header, or via the options menu.",
  "services.quickTutorial.multipleLabelSelection.header": "Multiple Label Selection",
  "services.quickTutorial.multipleLabelSelection.message": "You're now in multiple label selection mode. You can click as many labels as you'd like to select, then use the buttons that appear in the header to take bulk actions. You can exit multiple label selection mode at any time by clicking the X in the header, or via the options menu.",
  "services.quickTutorial.splitPaneView.header": "Split Pane View",
  "services.quickTutorial.splitPaneView.message": "Split pane view is only visible on devices with large screens (laptops, large tablets, etc). When split pane view is enabled, the side menu will always be visible. This feature is useful for optimizing the experience on larger devices.",
  "services.quickTutorial.pinnedRecipes.header": "Pinned Recipes",
  "services.quickTutorial.pinnedRecipes.message": "This recipe is now pinned! Pinning recipes provides a quick way to jump between multiple recipes quickly while cooking. Pinned recipes appear in the toolbar at the bottom of the screen. You'll see a bubble with the recipe image and the first letter of the recipe title. Pinned recipes will stay open until they are unpinned or until you close the application.",
  "services.quickTutorial.nativePrintView.header": "Print-Friendly View Available",
  "services.quickTutorial.nativePrintView.message": "For a better printing experience use the native print option supported by this page via the options menu in the top corner.",

  "services.util.justNow": "just now",
  "services.util.today": "today",

  "services.unsavedChanges.message": "It looks like you have been editing something. If you leave before saving, your changes will be lost.",

  "services.versionCheck.outOfDate.header": "App is out of date",
  "services.versionCheck.outOfDate.message": "The cached app version is very old. The app will restart to update.",

  "errors.offline": "A connectivity error occurred. While offline, you're only able to do read-only actions, and view content if your device has it cached locally.",
  "errors.unexpected": "An unexpected error occurred and the app may not work correctly. Please reload the app and try again. If this continues to occur, please contact me.",
  "errors.unexpected.selfhost": "An unexpected error occurred. Please check your server logs as well as the self hosting FAQ.",
  "errors.resourceNotFound": "Resource Not Found",
  "errors.resourceNotFound.message": "It looks like we tried to fetch something that doesn't exist. If this continues to occur unexpectedly, please contact me.",
  "errors.creditsLimitReached.title": "Sorry, limit reached",
  "errors.creditsLimitReached": "The autoimport feature is particularly costly to host, so I've had to place a gentle limit on the number of times per day this feature can be used (sorry!). Your usage limit for automatic import & cooking assistant messages resets at 0:00GMT.\n\nContributing gives you a larger daily allowance (10x the limit) since it helps to cover the costs. Sorry for the inconvenience!",

  "generic.moreInfo": "More Info",
  "generic.showMore": "Show More",
  "generic.error": "Error",
  "generic.warning": "Warning",
  "generic.reload": "Reload",
  "generic.delete": "Delete",
  "generic.cancel": "Cancel",
  "generic.confirm": "Confirm",
  "generic.yes": "Yes",
  "generic.no": "No",
  "generic.close": "Close",
  "generic.save": "Save",
  "generic.done": "Done",
  "generic.okay": "Okay",
  "generic.retry": "Retry",
  "generic.ok": "Ok",
  "generic.ignore": "Ignore",
  "generic.options": "Options",
  "generic.submit": "Submit",
  "generic.labeledPageTitle": "{{title}} - RecipeSage",
  "generic.printedOn": "Printed on {{date}}",

  "printViews.recipe.openInRecipeSage": "Click to Open in RecipeSage",
  "printViews.recipe.ingredientsAtScale": "Ingredients at {{scale}}x scale",

  "webextension.action.welcomeHeading": "Welcome!",
  "webextension.action.welcomeSubtitle": "You are logged out.",
  "webextension.action.signIn": "Sign in",
  "webextension.action.tutorialHeading": "Tutorial",
  "webextension.action.tutorialIntro": "The RecipeSage browser extension allows you to quickly snip recipes from the internet.",
  "webextension.action.tutorialStep1": "Navigate to a page that contains a recipe.",
  "webextension.action.tutorialStep2": "Activate the RecipeSage clip tool by clicking the RecipeSage icon in your browser's toolbar (you've already done this to view this popup).",
  "webextension.action.tutorialStep3": "The clip tool will automatically grab the contents of the page and find recipe content within it.",
  "webextension.action.tutorialStep4": "The saved recipe will open in a new tab once the process is complete.",
  "webextension.action.tutorialDismiss": "Dismiss",
  "webextension.action.includeNutrition": "Include nutrition",
  "webextension.action.openAfterImport": "Open recipe in new tab after import",
  "webextension.action.autoImport": "Auto Import",
  "webextension.action.interactiveImport": "Interactive Import",
  "webextension.action.documentation": "Documentation",
  "webextension.action.importingHeading": "Importing...",
  "webextension.action.importingSubtitle": "This may take up to 1 minute.",
  "webextension.action.signingIn": "Signing in...",
  "webextension.action.signInFailed": "Sign-in failed. Please try again.",
  "webextension.action.signInCancelled": "Sign-in was cancelled.",
  "webextension.action.signInSuccessful": "You are now logged in. Click the RecipeSage icon again to clip this website.",
  "webextension.action.notLoggedInPrompt": "Please login. It looks like you're logged out. Please close and re-open the clip tool to login.",
  "webextension.creditLimitAlert": "Sorry, limit reached\n\nThe autoimport feature is particularly costly to host, so I've had to place a gentle limit on the number of times per day this feature can be used (sorry!). Your usage limit for automatic import & cooking assistant messages resets at 0:00GMT.\n\nContributing gives you a larger daily allowance (10x the limit) since it helps to cover the costs. Sorry for the inconvenience!",
  "webextension.action.clipFailed": "Failed to clip recipe. If this continues, please report a bug.",
  "webextension.action.missingTitle": "Could not save recipe: no recipe title was detected on the page.",
  "webextension.action.saveFailed": "An error occurred while saving the recipe. Please try again.",
  "webextension.action.fetchFailed": "Failed to fetch page content.",
  "webextension.action.importSuccess": "Recipe imported successfully.",
  "webextension.action.sessionExpired": "Your session has expired. Please sign in again.",
  "webextension.action.duplicateConfirm": "You already have a recipe saved from this page. Click OK to save another copy, or Cancel to skip.",
  "webextension.action.languageLabel": "Language",
  "webextension.action.languageDefault": "Default (Browser)",
  "webextension.settings.pageTitle": "RecipeSage Browser Settings",
  "webextension.settings.heading": "RecipeSage Browser Extension Settings",
  "webextension.settings.loggedInAs": "You're currently logged in as",
  "webextension.settings.loading": "loading...",
  "webextension.settings.logout": "Logout",
  "webextension.settings.loggedOutMessage": "You're not logged in. Click the RecipeSage icon next to the address bar to log in.",
  "webextension.settings.loggedOutNote": "Note: If you don't see the RecipeSage icon next to the address bar, you may need to enable it in your browser settings.",
  "webextension.settings.serverHeading": "Server",
  "webextension.settings.serverHint": "If you self-host RecipeSage, set the API and web URLs of your installation here. Leave a field blank to use the default. For a typical self-hosted install on yourdomain.com, the API URL is https://yourdomain.com/api and the Web URL is https://yourdomain.com.",
  "webextension.settings.apiUrlLabel": "API URL",
  "webextension.settings.webUrlLabel": "Web URL",
  "webextension.settings.save": "Save",
  "webextension.settings.resetToDefaults": "Reset to defaults",
  "webextension.settings.accountFetchError": "There was an error while fetching your account data.",
  "webextension.settings.saved": "Saved.",
  "webextension.settings.reset": "Reset to defaults.",
  "webextension.settings.invalidUrl": "Must be a valid http(s) URL",
  "webextension.settings.defaultUrl": "Default: {{url}}",
  "webextension.settings.languageHeading": "Language",
  "webextension.settings.languageDefault": "Default (Browser)",
  "webextension.inject.grabbing": "Grabbing Recipe Content...",
  "webextension.inject.close": "CLOSE",
  "webextension.inject.save": "Save",
  "webextension.inject.field.imageUrl": "Image URL",
  "webextension.inject.field.title": "Title",
  "webextension.inject.field.description": "Description",
  "webextension.inject.field.yield": "Yield",
  "webextension.inject.field.activeTime": "Active Time",
  "webextension.inject.field.totalTime": "Total Time",
  "webextension.inject.field.source": "Source",
  "webextension.inject.field.sourceUrl": "Source URL",
  "webextension.inject.field.ingredients": "Ingredients",
  "webextension.inject.field.instructions": "Instructions",
  "webextension.inject.field.notes": "Notes",
  "webextension.inject.nutritionHeading": "Nutrition (per serving)",
  "webextension.inject.nutrition.servingSize": "Serving Size",
  "webextension.inject.nutrition.calories": "Calories (kcal)",
  "webextension.inject.nutrition.totalFat": "Total Fat (g)",
  "webextension.inject.nutrition.saturatedFat": "Saturated Fat (g)",
  "webextension.inject.nutrition.transFat": "Trans Fat (g)",
  "webextension.inject.nutrition.polyunsaturatedFat": "Polyunsaturated Fat (g)",
  "webextension.inject.nutrition.monounsaturatedFat": "Monounsaturated Fat (g)",
  "webextension.inject.nutrition.cholesterol": "Cholesterol (mg)",
  "webextension.inject.nutrition.sodium": "Sodium (mg)",
  "webextension.inject.nutrition.totalCarbs": "Total Carbohydrates (g)",
  "webextension.inject.nutrition.dietaryFiber": "Dietary Fiber (g)",
  "webextension.inject.nutrition.totalSugars": "Total Sugars (g)",
  "webextension.inject.nutrition.addedSugars": "Added Sugars (g)",
  "webextension.inject.nutrition.protein": "Protein (g)",
  "webextension.inject.nutrition.vitaminD": "Vitamin D (mcg)",
  "webextension.inject.nutrition.calcium": "Calcium (mg)",
  "webextension.inject.nutrition.iron": "Iron (mg)",
  "webextension.inject.nutrition.potassium": "Potassium (mg)",
  "webextension.inject.nutrition.otherDetails": "Other Nutrition Details",
  "webextension.inject.beforeUnload": "You've made changes in the RecipeSage editor. If you leave before saving, your changes will be lost.",
  "webextension.inject.pleaseLoginTitle": "Please Login",
  "webextension.inject.pleaseLoginBody": "It looks like you're logged out. Please click the RecipeSage icon to login again.",
  "webextension.inject.recipeSavedTitle": "Recipe Saved!",
  "webextension.inject.clickToOpen": "Click to open",
  "webextension.inject.saveFailedTitle": "Could Not Save Recipe",
  "webextension.inject.missingTitleBody": "A recipe title is required.",
  "webextension.inject.saveFailedBody": "An error occurred while saving the recipe. Please try again.",
  "webextension.pageTooLarge": "This page is too large to import automatically. Try importing it by its web address from the RecipeSage website instead.",
  "webextension.inject.duplicateConfirm": "You already have a recipe saved from this page. Click OK to save another copy, or Cancel to skip."
}
