-- HDG locale table -- enUS (reference locale)
-- ============================================================================
-- The complete set of user-facing strings HDG ships with. Other locales
-- (deDE, frFR, ...) override keys from this table; missing keys fall back
-- to enUS automatically (HDG.Locale:Get).
--
-- Key naming: SCREAMING_SNAKE_CASE. Group by namespace prefix matching the
-- consuming widget cluster (DECOR_*, ACQ_*, STATUS_*, DEBUG_*).

HDG = HDG or {}
if not HDG.Locale then return end

HDG.Locale:Register("enUS", {
    -- ===== Chrome / tabs =====
    TAB_DECOR              = "Decor",
    TAB_ACQUISITION        = "Acquire",
    TAB_DEBUG              = "Debug",

    -- ===== Common / shared across tabs =====
    COMMON_RESET           = "Reset",
    COMMON_CANCEL          = "Cancel",
    COMMON_SAVE            = "Save",
    COMMON_DELETE          = "Delete",
    COMMON_CLEAR           = "Clear",
    COMMON_COPY            = "Copy",
    COMMON_ADD             = "Add",
    COMMON_ALL             = "All",
    COMMON_BACK            = "Back",
    COMMON_IMPORT          = "Import",
    COMMON_EXPORT          = "Export",

    -- ===== Decor browser =====
    DECOR_BROWSER_TITLE    = "Decor Browser",
    DECOR_SELECTED_ITEM    = "Selected Item",
    DECOR_CLICK_AN_ITEM    = "Click an item",
    DECOR_PROFESSION_LABEL = "Profession:",
    DECOR_EXPANSION_LABEL  = "Expansion:",
    DECOR_ITEM_ID_LABEL    = "itemID:",
    DECOR_SEARCH_PLACEHOLDER = "Search decor by name...",
    -- Filter strip
    DECOR_FILTER_LABEL     = "Filter:",
    DECOR_TAGS_LABEL       = "Tags:",
    DECOR_UNCOLLECTED      = "Uncollected",
    DECOR_DESTROY_TOGGLE   = "Destroy decor",
    DECOR_BG_PLACEHOLDER   = "Background",
    DECOR_BG_PREFIX        = "Background ",
    -- Data states (loading / error / blank overlays)
    DECOR_LOADING          = "Scanning catalog...",
    DECOR_ERROR_HEADLINE   = "Catalog not loaded",
    DECOR_ERROR_SUB        = "Open the Housing Catalog in-game to scan.",
    DECOR_BLANK            = "No decor matches your filters.",
    -- Browser header click hints
    DECOR_HINT_LEFT        = "Select a decor item",
    DECOR_HINT_RIGHT       = "Favorite or unfavorite",
    DECOR_HINT_SHIFT       = "Send to craft queue",
    -- Detail pane
    DECOR_PREVIEW_PLACEHOLDER = "Click an item to preview",
    DECOR_DESTROY_BTN      = "Destroy a stored copy",
    DECOR_WISHLIST_BTN     = "+ Wishlist",
    DECOR_NOTE_PLACEHOLDER = "Add a personal note...",

    -- ===== Acquisition =====
    ACQ_VENDORS_TITLE      = "Vendors",
    ACQ_ITEMS_TITLE        = "Items",
    ACQ_SELECTED_VENDOR    = "Selected Vendor",
    ACQ_SELECTED_ITEM      = "Selected Item",
    ACQ_CLICK_VENDOR       = "Click a vendor",
    ACQ_CLICK_ITEM         = "Click an item",
    ACQ_SEARCH_PLACEHOLDER = "Search vendors by name or zone...",
    ACQ_ALL_FACTIONS       = "All factions",
    ACQ_ALL_EXPANSIONS     = "All Expansions",
    ACQ_ALL_ZONES          = "All Zones",
    ACQ_ALL_REPS           = "All Reps",
    ACQ_FACTION_LABEL      = "Faction:",
    ACQ_ITEMS_LABEL        = "Items:",
    ACQ_ITEMS_NONE         = "Items: none",
    ACQ_VIEW_VENDORS       = "Shop by Vendor",
    ACQ_VIEW_ITEMS         = "Find by Item",
    ACQ_ADVANCED_OPEN      = "- Advanced Filters",
    ACQ_ADVANCED_CLOSED    = "+ Advanced Filters",
    ACQ_ACTIVE_FILTERS     = "Active filters:",
    ACQ_NO_ACTIVE_FILTERS  = "No active filters",
    ACQ_RESET_FILTERS      = "Reset",
    ACQ_PREVIEW_PLACEHOLDER = "Click an item to preview",

    -- ===== Debug tab =====
    DEBUG_TITLE            = "Debug Log",
    DEBUG_TAG_ALL          = "All tags",
    DEBUG_LEVEL_ALL        = "All levels",
    DEBUG_CLEAR            = "Clear",
    DEBUG_COPY             = "Copy",
    DEBUG_COPIED           = "Selected -- press Ctrl+C to copy",
    DEBUG_AUTOSCROLL       = "Auto-scroll",

    -- ===== Status rail / general =====
    STATUS_READY           = "Ready",

    -- ===== Errors =====
    ERROR_GENERIC          = "An error occurred",

    -- ============================================================
    -- Easy-pass keys (LayoutConfig statics + tooltips), 2026-06
    -- ============================================================
    -- Styles tab
    STY_BACK                        = "< Back",
    STY_PANEL_TITLE                 = "Styles",
    STY_SMARTSET_HINTS_LEFT         = "Cycle a tag's severity -- signature, accent, clashing, or off.",
    STY_LANDING_TAGLINE             = "Style, On Purpose -- drag, drop, and act like that was the plan.",
    STY_SAVE_PLACED_DECOR           = "Save Placed Decor",
    STY_IMPORT_BTN                  = "Import",
    STY_SEARCH_STYLES_PLACEHOLDER   = "Search styles...",
    STY_SEARCH_ITEMS_PLACEHOLDER    = "Search items...",
    STY_CURATOR_SOURCE_LABEL        = "VIEWING (SOURCE)",
    STY_CURATOR_SOURCE_PLACEHOLDER  = "Source...",
    STY_CURATOR_FILE_INTO_LABEL     = "FILE INTO (TARGET)",
    STY_CURATOR_NEW_STYLE           = "+ New Style",
    STY_CURATOR_MOVE                = "Move",
    STY_CURATOR_CLEAR_SELECTION     = "Clear selection",
    STY_CURATOR_UNDO_LAST_MOVE      = "Undo last move",
    STY_CURATOR_RECENT_LABEL        = "RECENT (UNDO)",
    STY_CURATOR_MEMBERSHIPS_LABEL   = "MEMBERSHIPS",
    STY_IMPORT_TITLE                = "Import Shopping List",
    STY_IMPORT_INTRO                = "Paste a URL, comma-separated item IDs, or any text containing item numbers. Parse builds a preview; Commit saves as a Shopping List.",
    STY_IMPORT_URL_PLACEHOLDER      = "Paste URL or item IDs here...",
    STY_IMPORT_PARSE                = "Parse",
    STY_IMPORT_COMMIT               = "Commit",
    STY_SMARTSET_NAME_LABEL         = "Name",
    STY_SMARTSET_NAME_PLACEHOLDER   = "Untitled",
    STY_SMARTSET_DESC_LABEL         = "Description",
    STY_SMARTSET_DESC_PLACEHOLDER   = "Short description (optional)",
    STY_SMARTSET_AXIS_LABEL         = "AXIS",
    STY_SMARTSET_TAG_LABEL          = "TAG (CLICK TO ADD)",
    STY_SMARTSET_CLEAR_ALL          = "Clear All",
    STY_SMARTSET_HINT               = "Select tags to see preview",

    -- Mogul tab
    MOG_PANEL_TITLE             = "Mogul",
    MOG_SRC_AUTO                = "Auto",
    MOG_SRC_AUCTIONATOR         = "Auctionator",
    MOG_SRC_DIRECT              = "Direct",
    MOG_SRC_TSM                 = "TSM",
    MOG_REFRESH_FROM_AH         = "Refresh from AH",
    MOG_SCAN_HINT               = "No price data yet -- visit an Auction House and click 'Refresh from AH' to scan prices.",
    MOG_MODE_PROFIT             = "Profit",
    MOG_MODE_COLLECTION         = "Collection",
    MOG_VIEW_CHAR               = "Char",
    MOG_VIEW_ACCOUNT            = "Account",
    MOG_OPT_USE_OWNED_MATS      = "Use Owned Mats",
    MOG_OPT_BUY_MATS_FROM_AH   = "Buy Mats from AH",
    MOG_SUPPLY_IMPACT_LABEL     = "Supply impact:",
    MOG_FRUGAL                  = "Frugal",
    MOG_QUEUE_ALL               = "Queue All",
    MOG_PLAN_COL_RECIPE         = "Recipe",
    MOG_PLAN_COL_REVENUE_NET    = "Revenue / Net",
    MOG_PLAN_COL_EXP            = "Exp",
    MOG_LUMBER_USED_IN_PLAN     = "Lumber used in plan",
    MOG_REAGENTS_TO_BUY         = "Reagents to buy",
    MOG_SEND_TO_AUCTIONATOR     = "-> Auctionator",
    MOG_SEARCH_PLACEHOLDER      = "Search by name...",
    MOG_GOBLIN_HINTS_LEFT       = "Sort by a column header, or expand a row for its reagent breakdown.",
    MOG_GOBLIN_HINTS_SHIFT      = "Add the recipe to the craft queue.",
    MOG_KNOWLEDGE_PLACEHOLDER   = "Knowledge: ...",
    MOG_KNOWLEDGE_PREFIX        = "Knowledge: ",
    MOG_QUEUE_PLACEHOLDER       = "Queue: ...",
    MOG_QUEUE_PREFIX            = "Queue: ",
    MOG_AUCTIONS                = "Your Auctions",
    MOG_DETAIL_COL_QTY          = "Qty",
    MOG_DETAIL_COL_OWNED        = "Owned",
    MOG_DETAIL_COL_COST         = "Cost",
    MOG_PROF_LABEL              = "Prof:",

    -- Projects tab
    PROJ_TITLE                  = "Projects",
    PROJ_HOUSE_DROPDOWN_PLACEHOLDER = "House...",
    PROJ_OPEN_ARCHITECT         = "Open Architect",
    PROJ_NEW_ROOM               = "+ New Design",
    PROJ_NEW_WHATIF             = "+ What-if",
    PROJ_START_DESIGN           = "New blank layout",
    PROJ_NO_ROOMS_CTA           = "Capture your house in the Layout editor to plan its decor -- or start a blank layout to mock up a house you don't own yet.",
    PROJ_CANVAS_LEFT_HINT       = "Select a room. Drag it to reposition on the grid.",
    PROJ_CANVAS_RIGHT_HINT      = "Room options -- move, rotate, or remove the room.",
    PROJ_CANVAS_TITLE           = "Canvas controls",
    PROJ_ADD_FLOOR              = "+ Floor",
    PROJ_REMOVE_FLOOR           = "- Floor",
    PROJ_QUEUE_CRAFT            = "Queue craft",
    PROJ_ADD_SHOPPING           = "+ Shopping list",
    TIP_PROJECTS_QUEUE_CRAFT_TITLE = "Queue craft",
    TIP_PROJECTS_QUEUE_CRAFT_BODY  = "Adds this piece to your craft queue -- reagents and lumber feed the Recipes material plan and the Lumber Tracker.",
    TIP_PROJECTS_ADD_SHOPPING_TITLE = "Add to Shopping list",
    TIP_PROJECTS_ADD_SHOPPING_BODY  = "Adds this piece to your active shopping list (Tools > Shopping) so the vendor run covers it.",
    PROJ_AUTO_ASSIGN            = "Auto-assign",
    TIP_PROJECTS_AUTO_ASSIGN_TITLE = "Auto-assign designs",
    TIP_PROJECTS_AUTO_ASSIGN_BODY  = "Every unassigned room takes your best matching design -- same shape, most decor first. One design can fill several rooms; rooms with no matching design are left for you.",
    PROJ_CAPTURE_ALL_FLOORS     = "Capture all floors",
    PROJ_DETAIL_ROOM_TITLE      = "Room",
    PROJ_PICKER_ROOMS_TITLE     = "Rooms",
    PROJ_PICKER_WHATIF_HINT     = "Click to place, then drag.",
    PROJ_PICKER_STOCK_HINT      = "Live house -- your captured layout. The game doesn't give addons your room connections, so HDG can't auto-arrange them -- drag rooms to place them (they join where their doors touch). Branch a what-if to redesign.",
    PROJ_NEW_WHATIF_PICKER      = "+ New what-if",
    PROJ_SHOPPING_LIST_LABEL    = "House changes",
    PROJ_ROOM_CONNECT_HINT      = "Rooms connect where their doors touch -- drag them next to each other.",
    PROJ_ADD_DECOR              = "+ Add decor",
    PROJ_EXPORT_BTN             = "Export",
    PROJ_ASSIGN_HINT            = "What is this room? Pick one of your designs, or create one here.",
    PROJ_ASSIGN_EMPTY           = "No design matches this shape yet -- create one below.",
    PROJ_NEW_ROOM_HERE          = "+ New design here",
    PROJ_DETACH_CRATE           = "Save pieces as Set",
    PROJ_PICKER_SOURCE_PLACEHOLDER = "Viewing: All Decor",
    PROJ_PICKER_HINT_TITLE      = "Card actions",
    PROJ_PICKER_HINT_LEFT       = "Add 1 to this set",
    PROJ_PICKER_HINT_RIGHT      = "Remove 1",
    PROJ_PICKER_HINT_SHIFT      = "Shift+Right-click removes the item entirely",
    PROJ_MAKE_COPY_HERE         = "Make a copy just for this layout",
    TIP_COMPANION_ROOMS_TITLE   = "Designs",
    TIP_COMPANION_ROOMS_BODY    = "Your designs -- pick the one for the room you're standing in to see everything planned (equipped sets + its own pieces) and place straight from the plan.",
    PROJ_SAVE_AS_SET            = "Save as Set",
    PROJ_EQUIP_SET              = "+ Equip set",
    PROJ_LAYOUTS_TITLE          = "Layouts",
    PROJ_LOAD_IN_ARCHITECT      = "Load in Architect",
    PROJ_SHARE_CODE             = "Export",
    PROJ_RENAME_BTN             = "Rename",
    PROJ_DUPLICATE_BTN          = "Duplicate",
    PROJ_EDIT_BTN               = "Edit Set >",
    PROJ_OPEN_IN_ARCHITECT      = "Open in Architect >",
    PROJ_EQUIP_TO_ROOM          = "Equip to Design",
    PROJ_FORK_DESIGN            = "Fork into its own design",
    TIP_PROJECTS_FORK_TITLE     = "Fork into its own design",
    TIP_PROJECTS_FORK_BODY      = "This room becomes a copy you can change freely -- the other rooms keep the original design. Equipped sets stay shared by reference; the design's own pieces are cloned.",
    PROJ_UNASSIGN               = "Unassign design",
    TIP_PROJECTS_UNASSIGN_TITLE = "Unassign design",
    TIP_PROJECTS_UNASSIGN_BODY  = "Clears this room back to an unassigned shape -- the design keeps all its furnishings.",

    -- Help workspace (the workflow cycle diagram).
    PROJ_HELP_BUTTON   = "Help!",
    PROJ_HELP_TITLE    = "How Projects works",
    PROJ_HELP_TAGLINE  = "Designs are permanent. Sets are reusable. Layouts are sketches.",
    TIP_PROJECTS_HELP_TITLE = "How Projects works",
    TIP_PROJECTS_HELP_BODY  = "The whole workflow at a glance -- capture, arrange, assign, furnish, plan, build. Click a stage in the diagram for the details.",
    PROJ_HELP_S1_NAME  = "Capture",
    PROJ_HELP_S1_TITLE = "1. Capture your house",
    PROJ_HELP_S1_BODY  = "Visit your house and hit Capture All Floors in the Architect.\n- Every floor is swept; the layout fills with your house's rooms.\n- Recapture any time -- design assignments survive.",
    PROJ_HELP_S2_NAME  = "Arrange",
    PROJ_HELP_S2_TITLE = "2. Arrange the canvas",
    PROJ_HELP_S2_BODY  = "Captured rooms arrive neatly packed, not where they really are.\n- Drag rooms around the canvas until it matches your house.\n- They snap to the grid; door dots show what connects.",
    PROJ_HELP_S3_NAME  = "Assign",
    PROJ_HELP_S3_TITLE = "3. Assign designs",
    PROJ_HELP_S3_BODY  = "A room marked * is asking: what is this room?\n- Click it, then pick one of My Designs -- or create one in place.\n- Auto-assign (next to Capture) fills every * room with your best matches.\n- One design can fill many rooms (three closets, one Basement); Fork splits one off.\n- Unassign empties a room; the design keeps its furnishings.",
    PROJ_HELP_S4_NAME  = "Furnish",
    PROJ_HELP_S4_TITLE = "4. Furnish with sets",
    PROJ_HELP_S4_BODY  = "Sets are reusable decor plans kept in your library.\n- Build one in the decor picker, then Save as Set.\n- Plan with unowned pieces too -- one click queues a craft or adds to your shopping list.\n- Equip it to any design -- edits reach every design using it.\n- Each design also keeps its own loose pieces.",
    PROJ_HELP_S5_NAME  = "Plan",
    PROJ_HELP_S5_TITLE = "5. Plan a what-if",
    PROJ_HELP_S5_BODY  = "Layouts are disposable sketches -- branch a what-if and play.\n- Add shapes from the palette; swap which design fills a room.\n- House changes lists the rooms to build or remove vs your real house.\n- Deleting a layout never deletes a design.",
    PROJ_HELP_S6_NAME  = "Build",
    PROJ_HELP_S6_TITLE = "6. Build it for real",
    PROJ_HELP_S6_BODY  = "In the house editor, the companion's Designs tab is your plan.\n- Pick the design for the room you're in; place piece by piece.\n- When the dust settles, recapture -- the loop closes.",
    PROJ_NEW_SET                = "+ New Set",
    TIP_PROJECTS_NEW_SET_TITLE  = "New Set",
    TIP_PROJECTS_NEW_SET_BODY   = "Create an empty Furnishing Set and open the decor picker to fill it. Equip it into any design afterwards.",
    TIP_PROJECTS_ROOM_MORE_TITLE = "More actions",
    TIP_PROJECTS_ROOM_MORE_BODY = "Rename, Duplicate, or Delete the selected design.",
    TIP_PROJECTS_SET_MORE_TITLE = "More actions",
    TIP_PROJECTS_SET_MORE_BODY  = "Rename, Export, or Delete the selected set.",
    TIP_PROJECTS_LANDING_EQUIP_TITLE = "Equip to Design",
    TIP_PROJECTS_LANDING_EQUIP_BODY = "Equips the selected set into the selected design above. Sets are shared by reference -- editing the set updates every design using it.",
    -- Companion tab
    COMP_ADDON_TITLE            = "Housing Decor Guide",
    COMP_SEARCH_PLACEHOLDER     = "Search decor...",
    COMP_RECENT_PLACEMENTS_LABEL = "Recent placements",

    -- Acquisition tab
    ACQ_BLANK_VENDOR           = "No vendors match your filters.",
    ACQ_BLANK_ITEM             = "No items match your filters.",
    ACQ_MAP_VENDORS            = "Map Vendors",
    ACQ_ALL_SOURCES            = "All Sources",
    ACQ_WAYPOINT               = "Waypoint",
    ACQ_SHOW_ON_MAP            = "Show on Map",
    ACQ_VENDOR_NOTE_PLACEHOLDER = "Add a vendor note...",
    ACQ_ITEMS_VIEW_GRID        = "Grid",
    ACQ_ITEMS_VIEW_LIST        = "List",
    ACQ_CART_ADD_BTN           = "Cart +",
    ACQ_SELECTED_CART_BTN      = "+ Cart",
    ACQ_MISSING_TOGGLE         = "Missing",

    -- Recipes tab
    REC_BLANK_RECIPES          = "No recipes match your filters.",
    REC_QUEUE_EMPTY            = "Queue is empty.",
    REC_ALL_PROFESSIONS        = "All Professions",
    REC_CLEAR_ALL              = "Clear all",
    REC_RECIPES_TITLE          = "Recipes",
    REC_FILTER_ALL             = "All Recipes",
    REC_FILTER_KNOWN           = "Known Recipes",
    REC_FILTER_READY           = "Ready to Craft",
    REC_FILTER_UNKNOWN         = "Unknown Recipes",
    REC_FILTER_DECOR_UNCOLLECTED = "Decor not collected",
    -- Dim inline suffix shown on each filter-dropdown row (and the closed trigger).
    REC_FILTER_ALL_DESC               = "everything",
    REC_FILTER_KNOWN_DESC             = "char/alts have learned",
    REC_FILTER_READY_DESC             = "have the reagents",
    REC_FILTER_UNKNOWN_DESC           = "no alt knows",
    REC_SEARCH_PLACEHOLDER     = "Search recipes...",
    REC_QUEUE_TITLE            = "Queue",
    REC_QUEUE_HINTS_TITLE      = "Queue actions",
    REC_QUEUE_HINTS_LEFT       = "Pick a recipe -- scopes its materials + previews it (click again to clear).",
    REC_QUEUE_HINTS_RIGHT      = "Remove a recipe from the queue.",
    REC_LIST_HINTS_LEFT        = "Select a recipe to preview it and scope its materials.",
    REC_LIST_HINTS_SHIFT       = "Add the recipe to the craft queue.",
    REC_PREVIEW_PLACEHOLDER    = "Select a recipe to preview",
    REC_MATERIALS_TITLE        = "Materials",
    REC_CRAFT_THESE_FIRST      = "Craft These First:",
    REC_BUY_MATS_FROM_AH       = "Buy Mats from AH",

    -- Config tab
    CFG_PANEL_TITLE                = "Config",
    CFG_MAIN_SETTINGS_BTN          = "Main Settings",
    CFG_APPEARANCE_SECTION         = "Appearance",
    CFG_LUMBER_SECTION             = "Lumber Tracker",
    CFG_THEME_LABEL                = "Theme",
    CFG_THEME_PLACEHOLDER          = "Theme...",
    CFG_SCALE_LABEL                = "UI Scale",
    CFG_ABOUT_SECTION              = "About",
    CFG_DISCORD_LABEL              = "Discord",
    CFG_COFFEE_LABEL               = "Buy Me a Coffee",
    CFG_DANGER_SECTION             = "Danger Zone",
    CFG_COLLECTION_RESET_BTN       = "Reset Collection Cache",
    CFG_COLLECTION_RESET_HINT      = "Wipes the catalog cache and rescans.",
    CFG_HARD_RESET_BTN             = "Hard Reset",
    CFG_HARD_RESET_HINT            = "Wipes all HDG settings and reloads.",
    CFG_CREDITS_SECTION            = "Special Thanks",
    CFG_THEME_PREVIEW_TITLE        = "Theme Preview",
    -- Warehouse tab
    WARE_PANEL_TITLE               = "Warehouse",
    WARE_AUTOSHOW_TOGGLE           = "Auto-open Lumber Tracker",
    WARE_LUMBER_HDR_NAME           = "Lumber",
    WARE_LUMBER_HDR_EXP            = "Exp",
    WARE_LUMBER_HDR_BAG            = "Bag",
    WARE_LUMBER_HDR_BANK           = "Bnk",
    WARE_LUMBER_HDR_WARBAND        = "Wband",
    WARE_LUMBER_HDR_NEED           = "Need",
    WARE_LUMBER_HDR_STOCK          = "In Stock",
    WARE_LUMBER_HISTORY_HDR        = "Lumber Farming History",
    WARE_ALL_MATS_HDR              = "Materials",
    WARE_USED_IN_HDR               = "Used In",
    WARE_MAT_SEARCH_PLACEHOLDER    = "Search materials...",
    -- Data tab
    DATA_PANEL_TITLE               = "Your Data",
    DATA_KPI_ACHIEVEMENTS          = "Achievements Earned",
    DATA_KPI_ACQUIRED              = "Items Acquired",
    DATA_KPI_FARM_SESSIONS         = "Farming Sessions",
    DATA_KPI_LUMBER                = "Lumber Gathered",

    -- Shopping tab
    SHOP_TITLE              = "Shopping List",
    SHOP_HINT_LEFT          = "Expand or collapse a group (zone, vendor, or wishlist).",
    SHOP_HINT_RIGHT         = "Item options -- set quantity, remove, or show the vendor on the map.",
    SHOP_PANEL_TITLE        = "Shopping",
    SHOP_NO_LIST            = "(no list)",
    SHOP_OPEN_BTN           = "Open",
    SHOP_WAYPOINT_ALL       = "Waypoint All",
    SHOP_NEW_LIST           = "+ New",

    -- Removalist tab
    REMV_FACTION_PLACEHOLDER = "Faction...",
    REMV_ORIENTATION_TITLE  = "Move & Orientation",
    REMV_SWAP               = "Swap",
    REMV_ROTATION_KEY_HEADING = "COMMUNITY ROTATION KEY",
    REMV_CREDIT             = "Thanks to |cffB388EBBlue|r from AoA discord",

    -- Debug tab
    DEBUG_DESCRIBE_LAYOUT   = "Describe Layout",
    DEBUG_MEM_PROFILE       = "Memory Profile",
    DEBUG_PERF_PROFILE      = "Perf Profile",

    -- Alts tab
    ALTS_TITLE              = "Alts",
    ALTS_SUMMARY_HEADING    = "Account Summary  (best skill per profession)",
    ALTS_CHARS_TITLE        = "Characters",
    ALTS_PILL_ACTIVE        = "Active",
    ALTS_PILL_HIDDEN        = "Hidden",

    -- Zone tab
    ZONE_TITLE              = "Zone Scanner",
    ZONE_SEARCH_PLACEHOLDER = "Search vendors...",
    ZONE_SHOW_COLLECTED     = "Show Collected",
    ZONE_MAP_ALL            = "Map All",

    -- Lumber tab
    LUM_TITLE               = "Lumber Tracker",
    LUM_END_SESSION         = "End Session",

    -- Trainers tab
    TRN_TITLE               = "Trainers",
    TRN_SEARCH_PLACEHOLDER  = "Search trainer / zone...",

    -- HouseTab tab
    HT_PICKER_TITLE         = "Customize Dashboard",
    HT_BLANK_DASHBOARD      = "Your dashboard fills in as HDG captures your house data -- visit your house or open the Housing Catalog to get started.",

    -- Tooltip hints
    HINT_CLICK_EXPAND_COLLAPSE = "Click to expand or collapse",
    HINT_CLICK_NAVIGATE = "Click to set a waypoint",
    HINT_CLICK_SCAN = "Click to refresh",
    HINT_CLICK_CONFIRM_CRAFT = "Click to confirm craft",
    HINT_CLICK_COPY_URL = "Click to copy URL",
    HINT_CLICK_CYCLE_SORT = "Click to cycle sort order",
    HINT_CLICK_AH_SEARCH = "Click to search the auction house",
    HINT_CLICK_OPEN_PROFESSION = "Click to open profession window",
    HINT_CLICK_INSPECT = "Click to inspect",
    HINT_LEFT_APPLY = "Left-click to apply",
    HINT_SHIFT_SHOPPING = "Shift-click to add to shopping list",
    HINT_SHIFT_WAYPOINT = "Shift-click to set waypoint",
    HINT_SHIFT_AUCTIONATOR = "Shift-click to send to Auctionator",
    HINT_SHIFT_REMOVE_ONE = "Shift-click to remove one",
    HINT_SHIFT_REMOVE_ALL = "Shift-click to remove all",
    HINT_CTRL_QUEUE = "Ctrl-click to queue",
    HINT_RIGHT_REMOVE = "Right-click to remove",
    HINT_RIGHT_AUCTIONATOR = "Right-click to send to Auctionator",
    -- Tooltip recipes
    TIP_CLOSE = "Close",
    TIP_ADDON_TITLE = "|cFFfcd34dHousing Decor Guide|r",
    TIP_ADDON_BODY = "Track and craft housing decor items",
    TIP_COMPARTMENT_CLICK = "Click: Toggle addon window",
    TIP_MINIMAP_LEFT_CLICK = "Left-click: Toggle window",
    TIP_MINIMAP_RIGHT_CLICK = "Right-click: Open settings",
    TIP_MINIMAP_DRAG = "Drag: Reposition icon",
    TIP_DISCORD_TITLE = "Discord",
    TIP_DISCORD_BODY = "Click the link box and press Ctrl+C to copy the invite, then paste it in your browser.",
    TIP_COFFEE_TITLE = "Buy me a coffee",
    TIP_COFFEE_BODY = "Click the link box and press Ctrl+C to copy it -- thank you for supporting the addon!",
    TIP_CONFIG_DEBUG_TITLE = "Debug mode",
    TIP_CONFIG_DEBUG_BODY = "Print debug breadcrumbs to chat",
    TIP_CONFIG_MINIMAP_TITLE = "Minimap icon",
    TIP_CONFIG_MINIMAP_BODY = "Show / hide the minimap button",
    TIP_OPEN_DEBUG_LOG_TITLE = "Open Debug Log",
    TIP_OPEN_DEBUG_LOG_BODY = "Open the HDG log window (buffered debug trace; requires Debug Mode on to populate)",
    TIP_WOWHEAD_TITLE = "Wowhead",
    TIP_WOWHEAD_BODY = "Open this item's Wowhead page in your browser",
    TIP_PROJECTS_NEW_ROOM_TITLE = "New Design",
    TIP_PROJECTS_NEW_ROOM_BODY = "Create a named design without placing it. To finish it: open the Architect, place the shape you want from the palette, then click that room and assign this design to it.",
    TIP_PROJECTS_OPEN_ARCHITECT_TITLE = "Open in Architect",
    TIP_PROJECTS_OPEN_ARCHITECT_BODY = "Jump to this design on the canvas. If it isn't placed yet: place the shape you want from the palette, then click that room and assign this design to it.",
    TIP_PROJECTS_NEW_ROOM_HERE_TITLE = "New design here",
    TIP_PROJECTS_NEW_ROOM_HERE_BODY = "Create a design for this room in place -- it takes this shape and position immediately, and you can build out its furnishings any time.",
    TIP_PROJECTS_SWAP_ROOM_TITLE = "Swap design",
    TIP_PROJECTS_SWAP_ROOM_BODY = "Hand this room to another design with the same footprint. Both designs keep their furnishings -- only the placement changes hands.",
    TIP_PROJECTS_PICKER_SOURCE_TITLE = "Source",
    TIP_PROJECTS_PICKER_SOURCE_BODY = "Whose list to browse: the full decor catalog, just the pieces you don't own yet, one of your Styles, a Room Concept, or a shopping list. Combines with the category rail on the left.",
    TIP_PROJECTS_SAVE_AS_SET_TITLE = "Save as Set",
    TIP_PROJECTS_SAVE_AS_SET_BODY = "Names this design's pieces and saves them to your library as a reusable Furnishing Set -- equip it in any design, in any layout. It stays equipped here.",
    TIP_PROJECTS_EQUIP_SET_TITLE = "Equip a set",
    TIP_PROJECTS_EQUIP_SET_BODY = "Equip a Furnishing Set from your library into this design. Sets are shared by reference -- editing the set updates every design using it.",
    TIP_PROJECTS_IMPORT_SET_TITLE = "Import a set",
    TIP_PROJECTS_IMPORT_SET_BODY = "Paste a shared set code (HDGRCRATE:...) to add it to your library as a Furnishing Set. Equip it into any design afterwards.",
    TIP_PROJECTS_DETACH_CRATE_TITLE = "Save pieces as Set",
    TIP_PROJECTS_DETACH_CRATE_BODY = "Saves this design's own pieces to your library as a reusable Furnishing Set. The design keeps them equipped -- nothing is removed.",
    TIP_PROJECTS_CAPTURE_ALL_TITLE = "Capture all floors",
    TIP_PROJECTS_CAPTURE_ALL_BODY = "Captures every room on each floor of your house. NOTE: the game doesn't tell addons how your rooms connect, so HDG can't auto-arrange them -- after capturing, drag the rooms into their real layout yourself (rooms join where their doors touch).",
    TIP_LUMBER_AUTO_SHOW_TITLE = "Auto-open Lumber Tracker",
    TIP_LUMBER_AUTO_SHOW_BODY = "Pop the lumber tracker automatically when you harvest lumber. Turn off to keep it out of the way -- the Warehouse tab always has the numbers.",
    TIP_REMOVALIST_FILTER_TITLE = "Filter plots",
    TIP_REMOVALIST_FILTER_BODY = "Click to show only this plot group. Click again to clear.",
    TIP_REMOVALIST_RESET_TITLE = "Reset filter",
    TIP_REMOVALIST_RESET_BODY = "Show all plots again.",
    TIP_LAYOUT_LOAD_TITLE = "Load in Architect",
    TIP_LAYOUT_LOAD_BODY = "Open this layout in the Architect to view or edit it. Editing a what-if never changes your real house or the Live snapshot.",
    TIP_LAYOUT_SHARE_TITLE = "Share code",
    TIP_LAYOUT_SHARE_BODY = "Copy a shareable code of this layout's room plan (geometry only -- no decor). A friend pastes it into Import to recreate it in their own house.",
    TIP_LAYOUT_IMPORT_TITLE = "Import layout",
    TIP_LAYOUT_IMPORT_BODY = "Paste a shared layout code to add it as a new what-if. With more than one house, you pick which house it lands under.",
    TIP_LAYOUT_DUPLICATE_TITLE = "Duplicate",
    TIP_LAYOUT_DUPLICATE_BODY = "Copy this layout into a new what-if you can redesign freely, leaving the original untouched.",
    TIP_GOBLIN_TSM_SERVER_TITLE = "Server",
    TIP_GOBLIN_TSM_SERVER_BODY = "Maps to TSM DBMinBuyout: the lowest current auction-house buyout on your realm.",
    TIP_GOBLIN_TSM_MARKET_TITLE = "Market",
    TIP_GOBLIN_TSM_MARKET_BODY = "Maps to TSM DBMarket: TSM's calculated market value for this item.",
    TIP_GOBLIN_TSM_REGION_TITLE = "Region",
    TIP_GOBLIN_TSM_REGION_BODY = "Maps to TSM DBRegionSaleAvg: the average sale price across your whole region.",
    TIP_GOBLIN_SALE_RATE_TITLE = "Rate",
    TIP_GOBLIN_SALE_RATE_BODY = "Maps to TSM DBRegionSaleRate: how often this item sells region-wide (sold/day vs posted/day). Needs the TSM Desktop App.",
    TIP_GOBLIN_SOLD_PER_DAY_TITLE = "/Day",
    TIP_GOBLIN_SOLD_PER_DAY_BODY = "Maps to TSM DBRegionSoldPerDay: estimated units sold per day across your region. Needs the TSM Desktop App.",
    TIP_GOBLIN_AH_QTY_TITLE = "#AH",
    TIP_GOBLIN_AH_QTY_BODY = "Units currently listed on your realm's auction house. Populated by 'Refresh from AH'; shows '-' until you scan.",
    TIP_ACQ_PRESET_ACH_TITLE = "Achievement-gated decor",
    TIP_ACQ_PRESET_ACH_BODY = "Shows only vendors whose items are locked behind an achievement.",
    TIP_ACQ_PRESET_REP_TITLE = "Reputation-gated decor",
    TIP_ACQ_PRESET_REP_BODY = "Shows only vendors whose items require a specific reputation to purchase.",
    TIP_ACQ_PRESET_END_TITLE = "Endeavor-gated decor",
    TIP_ACQ_PRESET_END_BODY = "Shows vendors whose items unlock through the housing Endeavor system.",
    TIP_ACQ_PRESET_QST_TITLE = "Quest-gated decor",
    TIP_ACQ_PRESET_QST_BODY = "Shows only vendors whose items require completing a quest first.",
    TIP_ACQ_PRESET_REC_TITLE = "Recipe vendors",
    TIP_ACQ_PRESET_REC_BODY = "Shows only vendors that sell at least one decor recipe scroll.",
    TIP_ACQ_MISSING_TITLE = "Not Collected",
    TIP_ACQ_MISSING_BODY = "Narrows the list to decor you haven't collected yet -- stacks with the source filter beside it.",
    TIP_DECOR_WISHLIST_TITLE = "Add to Wishlist",
    TIP_DECOR_WISHLIST_BODY = "Saves this item to the Wishlist section of your active Shopping list -- create a Shopping list first if you don't have one.",
    TIP_DECOR_DESTROY_TITLE = "Destroy Stored Decor",
    TIP_DECOR_DESTROY_BODY = "Permanently removes copies from your housing storage -- opens a quantity dialog first. This cannot be undone.",
    TIP_DECOR_STORED_FILTER_TITLE = "Show Stored Decor",
    TIP_DECOR_STORED_FILTER_BODY = "Filters the list to decor sitting in your housing storage and enables the Destroy button in the detail panel. Clicking this filter does not destroy anything.",
    TIP_GOBLIN_SRC_AUTO_TITLE = "Auto (Best Available)",
    TIP_GOBLIN_SRC_AUTO_BODY = "Uses TSM prices if installed, then Auctionator, then HDG's own scan -- picks the richest source automatically.",
    TIP_GOBLIN_SRC_DIRECT_TITLE = "Direct AH Scan",
    TIP_GOBLIN_SRC_DIRECT_BODY = "Uses only HDG's own scan data -- press 'Refresh from AH' with the Auction House open to populate it.",
    TIP_GOBLIN_TSM_PCT_TITLE = "TSM Market %",
    TIP_GOBLIN_TSM_PCT_BODY = "Server price as a percentage of TSM's market value -- below 100% means the item is selling under its historical norm.",
    TIP_MOGUL_QUEUE_ALL_TITLE = "Queue All for Crafting",
    TIP_MOGUL_QUEUE_ALL_BODY = "Sends every recipe in the current plan to the Craft Queue and opens the Recipes tab.",
    TIP_MOGUL_SEND_AH_TITLE = "Send to Auctionator",
    TIP_MOGUL_SEND_AH_BODY = "Pushes the materials you still need to buy into Auctionator's shopping list for quick AH searching.",
    TIP_REC_GROUPING_TITLE = "Materials Grouping",
    TIP_REC_GROUPING_BODY = "Totals: reagents summed across all queued recipes. By Recipe: reagents listed separately for each.",
    TIP_REC_DEPTH_TITLE = "Material Depth",
    TIP_REC_DEPTH_BODY = "Direct: shows each recipe's immediate ingredients. Raw: expands sub-recipes down to base crafting materials.",
    TIP_REC_ADD_ALL_TITLE = "Send to Auctionator",
    TIP_REC_ADD_ALL_BODY = "Pushes only the materials you're still short on (after counting what you own) into Auctionator's shopping list.",
    TIP_CONFIG_COLL_RESET_TITLE = "Reset Collection Cache",
    TIP_CONFIG_COLL_RESET_BODY = "Clears HDG's cached collection scan and rescans from the catalog. Not a data wipe -- your lists, notes, and settings are untouched.",
    TIP_CUR_MOVE_TITLE = "Move to Style",
    TIP_CUR_MOVE_BODY = "Files the selected items into the highlighted style on the left -- select items in the grid and a target style to enable.",
    TIP_CUR_UNDO_TITLE = "Undo Last Move",
    TIP_CUR_UNDO_BODY = "Reverses the most recent batch of items moved to a style. One level of undo only.",
    TIP_STY_SNAPSHOT_TITLE = "Save Placed Decor",
    TIP_STY_SNAPSHOT_BODY = "Saves everything currently placed in your house as a Snapshot collection. Enables once the catalog has scanned and at least one item is placed -- if it's greyed out, open the Housing Catalog in-game first.",
    TIP_STY_SEV_ALL_TITLE = "All bands",
    TIP_STY_SEV_ALL_BODY = "Show every item regardless of how well it matches this set's tags.",
    TIP_STY_SEV_SIGNATURE_TITLE = "Signature",
    TIP_STY_SEV_SIGNATURE_BODY = "Defines the look -- strongly matches the tags this set is built on.",
    TIP_STY_SEV_ACCENT_TITLE = "Accent",
    TIP_STY_SEV_ACCENT_BODY = "Complements the look -- partial tag match; works alongside Signature pieces.",
    TIP_STY_SEV_VERSATILE_TITLE = "Versatile",
    TIP_STY_SEV_VERSATILE_BODY = "Neutral -- carries none of this set's tags, so it mixes in without fighting the look.",
    TIP_STY_SEV_CLASHING_TITLE = "Clashing",
    TIP_STY_SEV_CLASHING_BODY = "Carries tags this set excludes -- likely to fight the look.",
    TIP_MOGUL_MODE_PROFIT_TITLE = "Profit",
    TIP_MOGUL_MODE_PROFIT_BODY = "Ranks crafts by the gold you'll make.",
    TIP_MOGUL_MODE_COLLECTION_TITLE = "Collection",
    TIP_MOGUL_MODE_COLLECTION_BODY = "Ranks by decor you don't own yet -- completion over gold.",
    TIP_MOGUL_VIEW_CHAR_TITLE = "This character",
    TIP_MOGUL_VIEW_CHAR_BODY = "Plans from this character's known recipes and bags.",
    TIP_MOGUL_VIEW_ACCOUNT_TITLE = "Account-wide",
    TIP_MOGUL_VIEW_ACCOUNT_BODY = "Pools recipes and materials across all your characters.",
    TIP_MOGUL_OPT_OWNED_TITLE = "Use owned materials",
    TIP_MOGUL_OPT_OWNED_BODY = "Only plans crafts your current materials cover -- no shopping.",
    TIP_MOGUL_OPT_BUY_TITLE = "Buy materials from the AH",
    TIP_MOGUL_OPT_BUY_BODY = "Includes buying missing reagents; their AH cost is subtracted from the profit.",
    TIP_MOGUL_FRUGAL_TITLE = "Frugal",
    TIP_MOGUL_FRUGAL_BODY = "Favors lumber-light crafts so your wood stretches across more pieces.",
    TIP_MOGUL_SUPPLY_IMPACT_TITLE = "Supply impact",
    TIP_MOGUL_SUPPLY_IMPACT_BODY = "Accounts for prices dropping as you flood the market. Smooth% decays the price per copy sold; Cap limits how many you plan.",
    TIP_RECIPE_FILTER_UNKNOWN_TITLE = "Unknown",
    TIP_RECIPE_FILTER_UNKNOWN_BODY = "Recipes no character on your account has learned.",
    TIP_REDEEMABLE_TAG_TITLE = "Redeemable",
    TIP_REDEEMABLE_TAG_BODY = "You own these -- they were auto-awarded to you (e.g. an achievement or quest reward); you've just never placed one. Place it once to claim a permanent copy. Until then it sits in your catalog as an unredeemed instance.",
    TIP_COMPANION_STYLES_TITLE = "Your Styles",
    TIP_COMPANION_STYLES_BODY = "Place decor from the style sets you've saved.",
    TIP_COMPANION_SHOPPING_TITLE = "Shopping",
    TIP_COMPANION_SHOPPING_BODY = "Place straight from your shopping lists.",
    TIP_COMPANION_SNAPSHOTS_TITLE = "Snapshots",
    TIP_COMPANION_SNAPSHOTS_BODY = "Re-place a saved layout to rebuild a room.",
    TIP_COMPANION_THEMES_TITLE = "Themes",
    TIP_COMPANION_THEMES_BODY = "Furnish a space from a ready-made room concept.",
    TIP_COMPANION_COLLECTIONS_TITLE = "Collections",
    TIP_COMPANION_COLLECTIONS_BODY = "Browse decor by category -- Recently Learned, Dyeable, and by placement cost.",
    TIP_COMPANION_RECENT_TITLE = "Recent",
    TIP_COMPANION_RECENT_BODY = "Decor you've placed or removed this editing session.",
    TIP_QUEUE_HEADER_TITLE = "Queue",
    TIP_QUEUE_HEADER_BODY = "TODO: lift workflow description from HDG queue header tooltip.",
    TIP_MATERIALS_HEADER_TITLE = "Materials",
    TIP_MATERIALS_HEADER_BODY = "TODO: lift workflow description from HDG materials panel header tooltip.",
    TIP_WARN_RESET_CONFIG_TITLE = "|cffff6060Reset all settings|r",
    TIP_WARN_RESET_CONFIG_BODY = "This resets HDG's display options. Your tracked data is preserved.",
    TIP_WARN_HARD_RESET_TITLE = "|cffff6060Hard reset all data|r",
    TIP_WARN_HARD_RESET_BODY = "Wipes ALL HDG data: SavedVariables, queue, alts. Click once to arm, a second time within 5 seconds to confirm. Requires /reload.",
    TIP_WARN_CLEAR_PINS_TITLE = "|cffff6060Clear all map pins|r",
    TIP_WARN_CLEAR_PINS_BODY = "Removes every HDG pin from the world map. Pinned again on next refresh.",
})
