{
  "STORYFRAME": {
    "Title": "StoryFrame",
    "Settings": {
      "Debug": "Debug Mode",
      "DebugHint": "Enable debug logging to console",
      "CinematicPrepMode": {
        "Name": "Cinematic Prep Mode",
        "Hint": "When enabled, launching Scene Mode opens only for the GM. Players won't see it until you click 'Show to Players'."
      },
      "AutoOpenSidebar": "Auto-Open Sidebar",
      "AutoOpenSidebarHint": "Automatically open the sidebar when opening a journal",
      "PeekHidesSidebar": "Peek Hides Sidebar",
      "PeekHidesSidebarHint": "When peeking at the canvas, also hide the StoryFrame sidebar",
      "SpeakerControlsMode": "Speaker Controls Mode",
      "SpeakerControlsModeHint": "How speaker action buttons (edit, remove, hide, etc.) are displayed. Hover: overlay on hover. Sides: controls on left, image nav on right. Bottom bar: always visible below speaker name.",
      "SpeakerControlsHover": "Hover (overlay)",
      "SpeakerControlsSides": "Sides (left & right edges)",
      "SpeakerControlsBottombar": "Bottom bar (always visible)",
      "CinematicChatMessageLimit": "Cinematic Chat Message Limit",
      "CinematicChatMessageLimitHint": "Maximum number of recent chat messages shown in the cinematic scene chat log.",
      "UseMonksTokenBar": "Use Monks TokenBar for Rolls",
      "UseMonksTokenBarHint": "Route skill checks and saves through Monks TokenBar instead of the built-in player viewer prompts. Requires Monks TokenBar module to be active.",
      "QuickButtonSkills": "Quick Button Skills",
      "QuickButtonSkillsHint": "Configure via the gear icon in the GM Sidebar skill buttons area",
      "SkillOrderByCategory": "Skill Order By Category",
      "SkillOrderByCategoryHint": "Custom order of skills within each category (drag to reorder in GM Sidebar)",
      "SkillCategoryOrder": "Skill Category Order",
      "SkillCategoryOrderHint": "Custom order of skill categories (drag category labels to reorder in GM Sidebar)",
      "PlayerSpeakerAutoActivate": "Auto-Activate Player Speakers",
      "PlayerSpeakerAutoActivateHint": "When enabled, player speaker requests skip GM approval and immediately activate as the responding speaker.",
      "AddSpeakersHidden": "Add Speakers Hidden",
      "AddSpeakersHiddenHint": "When enabled, newly added speakers are hidden from players by default. You can reveal them individually using the eye icon.",
      "PlayerViewerLayoutGrid": "Grid",
      "PlayerViewerLayoutList": "List",
      "PlayerViewerLayoutHorizontal": "Horizontal"
    },
    "WindowTitles": {
      "PresentChallenge": "Present Challenge",
      "ChallengeLibrary": "Challenge Library",
      "RequestRolls": "Request Rolls",
      "DCPresets": "DC Presets",
      "PlayerSidebar": "Storyframe Player Sidebar",
      "PlayerViewer": "StoryFrame Player Viewer",
      "GMSidebar": "Storyframe",
      "TargetSelector": "Target Selector",
      "SceneGatherer": "Populate from Scene"
    },
    "Dialogs": {
      "RollRequest": {
        "FoundChecks": "Found {count} check(s):",
        "FoundSaves": "Found {count} save(s):",
        "FoundChecksAndSaves": "Found {count} check(s) and save(s):",
        "SelectPCs": "Select PCs to request rolls from:",
        "DragHint": "Drag a check onto a PC to send it only to that PC.",
        "SendRollRequests": "Send Roll Requests",
        "Secret": "Secret",
        "AllowOnlyOne": "Allow only one roll (dismiss others when one is rolled)",
        "RemoveCheck": "Remove check",
        "UnlinkPC": "Click to unlink {name} from this check"
      },
      "AddSpeaker": {
        "Title": "Add Speaker",
        "Content": "Enter name for this speaker:",
        "Button": "Add"
      },
      "DeleteScene": {
        "Title": "Delete Scene",
        "Content": "Delete scene \"{name}\"?",
        "Button": "Delete"
      },
      "DeletePreset": {
        "Title": "Delete Preset",
        "Content": "Delete preset \"{name}\" (DC {dc})?",
        "Button": "Delete"
      },
      "AddDCPreset": {
        "Title": "Add DC Preset",
        "Button": "Add"
      },
      "ClearAllPCs": {
        "Title": "Clear All PCs",
        "Content": "Remove all PCs from the list?",
        "Button": "Clear All"
      },
      "ClearAllChallenges": {
        "Title": "Clear All Challenges",
        "Content": "Clear all active challenges?",
        "Button": "Clear All"
      },
      "DeleteChallenge": {
        "Title": "Delete Challenge",
        "Content": "Delete this challenge from library?",
        "Button": "Delete"
      },
      "EnterDC": {
        "Title": "Enter DC value",
        "Label": "Enter DC value",
        "Validation": "Enter a valid DC (1-60)"
      },
      "EnterNPCName": {
        "Title": "NPC Name",
        "Label": "Enter NPC name"
      },
      "EditNPCName": {
        "Title": "Edit NPC Name",
        "Label": "Enter new name",
        "Button": "Save"
      },
      "ClearAllNPCs": {
        "Title": "Clear All NPCs"
      },
      "CreateChallenge": {
        "Title": "Create Challenge",
        "Content": "Enter a name for this challenge:",
        "Button": "Create"
      },
      "Cancel": "Cancel",
      "Close": "Close",
      "SceneGatherer": {
        "SelectActors": "Select actors to add as speakers:",
        "GatherButton": "Populate & Save",
        "NoTokensOnScene": "No tokens found on the current scene",
        "NoActorsFound": "No valid actors found",
        "TokenCount": "{count} actor(s) on scene",
        "WorldActorCount": "{count} actor(s) in world"
      },
      "TargetSelector": {
        "Rolling": "Rolling",
        "SelectTargets": "Select Targets:",
        "RollDamage": "Roll Damage",
        "NoTokens": "No tokens on scene"
      }
    },
    "Notifications": {
      "Scene": {
        "NoSpeakersToAdd": "No current speakers to add",
        "SpeakersAdded": "Added {count} speaker(s)",
        "ActorNotFound": "Actor not found",
        "CannotAddLootOrHazard": "Cannot add loot or hazard actors",
        "SpeakerAlreadyInScene": "Speaker already in scene",
        "SpeakerAdded": "Added {actor}",
        "SceneNameRequired": "Scene name required",
        "AddAtLeastOneSpeaker": "Add at least one speaker",
        "SceneUpdated": "Updated scene \"{name}\"",
        "SceneCreated": "Created scene \"{name}\"",
        "NoSavedScenes": "No saved scenes",
        "SceneDeleted": "Deleted scene \"{name}\"",
        "SceneLoaded": "Loaded scene \"{name}\"",
        "SceneUpdatedWithCurrentSpeakers": "Updated \"{name}\" with {count} current speaker(s)",
        "SceneStateUpdated": "Saved playlist & background to \"{name}\""
      },
      "SceneGatherer": {
        "SceneGathered": "Populated \"{name}\" with {count} speaker(s)"
      },
      "Speaker": {
        "AlreadyInList": "{label} is already in the list",
        "AddedAsNPC": "Added {label} as NPC",
        "NameUpdated": "Updated speaker name to \"{name}\"",
        "OpeningForPlayers": "Opening StoryFrame on all player clients",
        "ClosingForPlayers": "Closing StoryFrame on all player clients",
        "NoSpeakersToSave": "No speakers to save",
        "NoNPCsAvailable": "No NPCs available",
        "SceneHasNoSpeakers": "Scene has no speakers",
        "NoScenesRemaining": "No scenes remaining. Show speakers directly next time.",
        "OpeningSidebarsForPlayers": "Opening StoryFrame sidebars on all player clients",
        "ClosingSidebarsForPlayers": "Closing StoryFrame sidebars on all player clients"
      },
      "NoAssignedCharacter": "You need an assigned character to join as a speaker",
      "Participant": {
        "NoPCsFound": "No player characters found",
        "PCsAdded": "Added {count} PC(s)",
        "NoPartyFound": "No party found",
        "NoMembersInParty": "No members in party",
        "NoValidMembersInParty": "No valid members in party",
        "PartyMembersAdded": "Added {count} party member(s)",
        "OpeningSidebarsForPlayers": "Opening StoryFrame sidebars on all player clients",
        "ClosingSidebarsForPlayers": "Closing StoryFrame sidebars on all player clients"
      },
      "DC": {
        "PresetAdded": "Added DC {value} preset",
        "PresetDeleted": "Deleted preset: DC {value}",
        "PresetApplied": "Applied: {name} (DC {dc})",
        "InvalidDC": "Enter a valid DC (1-60)",
        "DCAdded": "Added DC {value}",
        "DCSet": "Set DC to {dc}"
      },
      "SkillCheck": {
        "SelectPCsForBatch": "Select PCs first to use batch selection",
        "NoPCsSelected": "No PCs selected",
        "CheckRequested": "Requested {checkName} check from {count} PC(s)",
        "SaveRequested": "Requested {checkName} save from {count} PC(s)",
        "PlayersOffline": "{names} offline - skipped",
        "PlayersLackSkill": "{names} don't have {skillName} - skipped",
        "NoPlayersHaveSkill": "No player characters have the {skillName} skill",
        "PCLacksSkill": "{name} doesn't have {skillName}",
        "MultipleChecksRequested": "Requested {checkCount} check(s) from {uniqueCount} PC(s)",
        "MultipleSavesRequested": "Requested {checkCount} save(s) from {uniqueCount} PC(s)",
        "MultipleChecksAndSavesRequested": "Requested {checkCount} check(s) and save(s) from {uniqueCount} PC(s)",
        "UnknownSkill": "Unknown skill: {skillName}",
        "SelectPCsFirst": "Select PCs first to request a roll",
        "NoSpecificActions": "No specific actions for {skillName}",
        "PlayerMissingSkills": "{name} (missing {skillList})",
        "SkippedMissingSkills": "{details} - skipped"
      },
      "PendingRolls": {
        "NoPendingRolls": "No pending rolls",
        "RollCancelled": "Roll request cancelled",
        "AllRollsCancelled": "All roll requests cancelled"
      },
      "Challenge": {
        "NoChallenges": "No active challenges",
        "AllChallengesCleared": "All challenges cleared",
        "ChallengeCleared": "Challenge cleared",
        "ChallengeNotFound": "Challenge not found",
        "ChallengeDuplicateName": "A challenge named \"{name}\" is already active. Clear it first or rename this challenge.",
        "ChallengeDuplicateNamePrompt": "A challenge named \"{name}\" is already active. Please use a different name or clear the existing challenge.",
        "ChallengePresentedAll": "Challenge \"{name}\" presented to all players",
        "ChallengePresentedPCs": "Challenge \"{name}\" presented to {count} PC(s)",
        "ChallengeUpdated": "Challenge \"{name}\" updated and presented to {count} PC(s)",
        "ChallengeDeleted": "Challenge deleted from library",
        "NoJournalContent": "No journal content found",
        "NoTextSelected": "No text selected in journal",
        "SelectionNotInContent": "Selection must be within the journal content",
        "NoSkillChecksFound": "No skill checks found in selected text",
        "ChallengeCreated": "Challenge \"{name}\" created with {count} check(s)",
        "NoParticipantsAdded": "No participants added. Add PCs first."
      },
      "Roll": {
        "RequestNotFound": "Roll request not found",
        "ParticipantNotFound": "Participant not found",
        "ActorNotFound": "Actor not found",
        "SkillNotFound": "Skill \"{skill}\" not found on {actor}",
        "SaveNotFound": "Save \"{save}\" not found on {actor}",
        "UnsupportedSystem": "Unsupported system: {system}",
        "RollFailed": "Failed to execute roll",
        "ChallengeNoLongerActive": "Challenge no longer active",
        "InvalidSkill": "Invalid skill",
        "NoParticipantForUser": "No participant found for your user",
        "CheckCompleted": "{skill} check completed ({total})",
        "NA": "N/A",
        "GroupRollsDismissed": "{count} other roll(s) in group dismissed",
        "ChallengeIdNotFound": "Challenge ID not found"
      },
      "NoPlayerCharactersFound": "No player-owned characters found in the world.",
      "OpenGMSidebarFirst": "Open GM Sidebar first (click book icon in token controls)",
      "OpenGMSidebarFirstChallenge": "Open GM Sidebar first (click users icon in token controls)",
      "NoTextSelected": "No text selected",
      "NoSkillChecksFoundInSelection": "No skill checks found in selected text",
      "SidebarNotAvailable": "StoryFrame sidebar not available",
      "FailedToSendRollRequest": "Failed to send roll request: {error}",
      "ChallengeCreatedFromSelection": "Challenge \"{name}\" created with {count} check(s)",
      "NoContent": "No pending rolls, challenges or speakers to show you.",
      "NoSpeakers": "No speakers to display. Check the sidebar for rolls and challenges.",
      "ViewerNotReady": "The GM hasn't opened the viewer yet. Please wait."
    },
    "UI": {
      "Tabs": {
        "NPCs": "NPCs",
        "PCs": "PCs"
      },
      "Labels": {
        "Skills": "Skills",
        "Saves": "Saves",
        "SceneName": "Scene Name",
        "SelectSkill": "Select skill...",
        "SelectSave": "Select save...",
        "OptionName": "Option name...",
        "PendingRolls": "Pending Rolls ({count})",
        "ActiveChallenges": "Active Challenges ({count})",
        "SavedScenes": "Saved Scenes ({count})",
        "ByPC": "By PC",
        "BySkill": "By Skill",
        "AddSkill": "Add Skill",
        "AddSave": "Add Save",
        "AddDCPreset": "Add DC Preset",
        "ClearAll": "Clear All",
        "CancelAll": "Cancel All",
        "Remove": "Remove",
        "RemoveOption": "Remove Option",
        "Update": "Update",
        "SaveToLibrary": "Save to Library",
        "ToggleLayout": "Toggle Layout",
        "ToggleGrouping": "Toggle grouping",
        "Close": "Close",
        "Unknown": "Unknown",
        "NowSpeaking": "now speaking",
        "Challenges": "Challenges",
        "Rolls": "Rolls",
        "NoPendingActions": "No Pending Actions",
        "WaitingForGM": "Waiting for GM...",
        "WaitingForGMFull": "Waiting for GM to request rolls or present challenges",
        "Delete": "Delete",
        "PresentToAllPlayers": "Present to All Players",
        "NoSavedChallenges": "No saved challenges",
        "CreateChallengeHint": "Create a challenge and check \"Save to library\"",
        "DragActorsHere": "Drag actors here",
        "JournalImages": "Journal Images",
        "JournalActors": "Journal Actors",
        "JournalChecks": "Journal Checks",
        "JournalSkills": "Journal Skills",
        "JournalSaves": "Journal Saving Throws",
        "JournalLore": "Journal Lore",
        "ActorDeleted": "Actor Deleted",
        "HiddenFromPlayers": "Hidden from Players",
        "Deselect": "Deselect",
        "SelectAll": "Select All",
        "LevelShort": "Lv",
        "AllowOnlyOne": "Allow only one",
        "ChooseOne": "Choose One",
        "Save": "Save",
        "Check": "Check"
      },
      "Categories": {
        "Physical": "Physical",
        "Magical": "Magical",
        "Social": "Social",
        "Utility": "Utility",
        "SavingThrows": "Saving Throws"
      },
      "Tooltips": {
        "MinProficiency": "Minimum proficiency required",
        "SecretRoll": "Secret roll (GM only)",
        "DragToSidebar": "Drag to StoryFrame sidebar",
        "ToggleSidebar": "Toggle StoryFrame Sidebar",
        "HideSidebar": "Hide StoryFrame Sidebar",
        "ShowSidebar": "Show StoryFrame Sidebar",
        "LockGrid": "Lock grid (freeze current card size)",
        "UnlockGrid": "Unlock grid (cards grow with window)",
        "SelectedCount": "{selected} of {total} selected",
        "SelectAll": "Select all",
        "DeselectAll": "Deselect all",
        "AddCurrentSpeakers": "Add current speakers",
        "AddToScene": "Add to scene",
        "ClearChallenge": "Clear {name}",
        "EditScene": "Edit {name}",
        "UpdateScene": "Update {name} with current speakers",
        "DeleteScene": "Delete {name}",
        "RollSkill": "Roll {skill}",
        "RollSkillWithAction": "Roll {skill} ({action})",
        "InsufficientProficiency": "Insufficient proficiency",
        "LockedInsufficientProficiency": "Locked - insufficient proficiency",
        "RollSkillCheck": "Roll {skill} check",
        "EditChallenge": "Edit challenge",
        "DeleteChallenge": "Delete challenge",
        "AddNPC": "Add NPC",
        "ClearActiveNPC": "Clear active NPC",
        "ClearAllNPCs": "Clear all NPCs",
        "SaveSpeakersAsScene": "Save speakers as scene",
        "ManageSpeakerScenes": "Manage speaker scenes",
        "EditName": "Edit {name}",
        "RemoveName": "Remove {name}",
        "NameHiddenFromPlayers": "This name is hidden from players",
        "ToggleNameVisibility": "Toggle name visibility for players",
        "HiddenFromPlayers": "This speaker is hidden from players",
        "ToggleSpeakerHidden": "Toggle speaker visibility for players",
        "PrevImage": "Previous image",
        "NextImage": "Next image",
        "AddAltImage": "Add alternate image",
        "RemoveAltImage": "Remove this image",
        "HoldAltToHide": "Hold ALT while dragging to hide name from players",
        "ClickToAddAsNPC": "Click to add {name} as NPC",
        "PendingRollsCount": "{count} pending roll(s)",
        "AddPartyMembers": "Add party members",
        "AddAllPCs": "Add all PCs",
        "OpenCloseOnPlayers": "Open/Close on players",
        "OpenCloseViewerOnPlayers": "Open/Close viewer on players",
        "OpenCloseSidebarsOnPlayers": "Open/Close sidebars on players",
        "ClearAllPCs": "Clear all PCs",
        "ConfigureQuickSkills": "Configure Quick Skills",
        "RequestRollsFromSelection": "Request Rolls from Selection",
        "MusicVolume": "Music Volume",
        "DCPresets": "DC Presets",
        "AddPreset": "Add preset",
        "PartyLevel": "Party Level",
        "GMOnlyRoll": "GM Only Roll",
        "SendBatchedSkillChecks": "Send batched skill checks",
        "SkillChecks": "{skill} Checks",
        "SavingThrows": "{save} Saving Throws",
        "RequestSave": "Request {save} Save",
        "RollSave": "Roll {save} Save",
        "ActiveChallengesCount": "{count} active challenge(s)",
        "PresentChallenge": "Present Challenge",
        "CreateFromSelection": "Create from Selection",
        "AllowOnlyOne": "When enabled, only the first roll from this group will count. Other pending rolls will be automatically dismissed.",
        "GatherSceneTokens": "Populate from scene"
      },
      "AriaLabels": {
        "AddNPCFromImage": "Add NPC from image",
        "DeselectActiveNPC": "Deselect active NPC",
        "RemoveAllNPCs": "Remove all NPCs",
        "SaveSpeakersAsScene": "Save current speakers as scene",
        "ManageSpeakerScenes": "Manage saved speaker scenes",
        "NPCSpeakers": "NPC speakers",
        "EditName": "Edit {name}",
        "RemoveName": "Remove {name}",
        "ViewPendingRolls": "View pending rolls",
        "AddPartyMembers": "Add all party members",
        "AddAllPCs": "Add all player characters",
        "OpenViewerOnPlayers": "Open StoryFrame viewer on all player clients",
        "OpenSidebarsOnPlayers": "Open StoryFrame sidebars on all player clients",
        "RemoveAllPCs": "Remove all PCs",
        "ConfigureQuickSkills": "Configure quick skill buttons",
        "RequestRollsFromSelection": "Parse inline checks from selected text and request rolls",
        "DCControls": "DC controls",
        "PlayerCharacters": "Player characters",
        "DifficultyClass": "Difficulty class",
        "DifficultyByLevel": "Difficulty by level",
        "SelectDifficulty": "Select difficulty",
        "ToggleSecretRoll": "Toggle secret roll",
        "SendBatch": "Send batch",
        "SkillChecks": "{skill} Checks",
        "SavingThrows": "{save} saving throw checks",
        "RequestSkillCheck": "Request {skill} check",
        "RequestSave": "Request {save} saving throw",
        "RollCheck": "Roll {check}",
        "SkillButtonsByCategory": "Skill buttons by category",
        "ViewActiveChallenges": "View active challenges",
        "PresentChallenge": "Present multi-option challenge to all players",
        "CreateFromSelection": "Create challenge from selected journal text",
        "GatherSceneTokens": "Populate speakers from all tokens on the current scene"
      },
      "Placeholders": {
        "EnterSceneName": "Enter scene name",
        "EnterDC": "Enter DC value",
        "EnterNPCName": "Enter NPC name",
        "AddDC": "Add DC"
      }
    },
    "Difficulty": {
      "PF2e": {
        "Trivial": "Trivial",
        "Low": "Low",
        "LowMed": "Low-Med",
        "Standard": "Standard",
        "MedHigh": "Med-High",
        "High": "High",
        "Extreme": "Extreme"
      },
      "DND5e": {
        "VeryEasy": "Very Easy",
        "Easy": "Easy",
        "Medium": "Medium",
        "Hard": "Hard",
        "VeryHard": "Very Hard",
        "NearlyImpossible": "Nearly Impossible",
        "SaveLabel": "{ability} Save"
      },
      "Daggerheart": {
        "VeryEasy": "Very Easy",
        "Easy": "Easy",
        "Standard": "Standard",
        "Hard": "Hard",
        "VeryHard": "Very Hard",
        "Extreme": "Extreme"
      },
      "ProjectFU": {
        "Easy": "Easy",
        "Standard": "Standard",
        "Hard": "Hard",
        "VeryHard": "Very Hard"
      },
      "DrawSteel": {
        "Easy": "Easy",
        "Medium": "Medium",
        "Hard": "Hard"
      }
    },
    "Keybindings": {
      "RequestRoll": "Request Roll from Journal Selection",
      "RequestRollHint": "Select text in a journal containing skill checks and press this key to open the roll request dialog",
      "CreateChallenge": "Create Challenge from Journal Selection",
      "CreateChallengeHint": "Select text in a journal containing skill checks and press this key to create a new challenge",
      "SpeakerWheel": "Speaker Selection Wheel",
      "SpeakerWheelHint": "Hold to show radial speaker selection wheel",
      "PeekCanvas": "Peek at Canvas",
      "PeekCanvasHint": "Hold to temporarily hide the journal and see the canvas. Release to restore."
    },
    "ToolButtons": {
      "Viewer": "StoryFrame Viewer",
      "GMSidebar": "StoryFrame GM Sidebar",
      "SceneMode": "StoryFrame Scene Mode"
    },
    "Errors": {
      "ProficiencyFilteringNotImplemented": "Proficiency filtering not implemented in base class"
    },
    "CinematicScene": {
      "Title": "Frame Mode",
      "LaunchScene": "Launch Frame Mode",
      "ExitScene": "Exit Frame Mode",
      "NoSpeakers": "No speakers to display",
      "GMControls": "GM Controls",
      "OpenFullSidebar": "Open Full Sidebar",
      "ScenesAndMusic": "Scenes & Music",
      "SpeakerScenes": "Speaker Scenes",
      "SaveSceneState": "Save current playlist & background",
      "SaveCurrentScene": "Save current speakers as scene",
      "NoSavedScenes": "No saved scenes",
      "NowPlaying": "Now Playing",
      "Playlists": "Playlists",
      "Tracks": "Tracks",
      "RelaunchForPlayers": "Relaunch for Players",
      "ShowToPlayers": "Show to Players",
      "PrepModeBanner": "GM Prep Mode — Players cannot see this",
      "PlayerLostCinematic": "{name} refreshed — click Show to Players to re-sync",
      "ShowToAll": "Show to All",
      "ShownToPlayer": "Cinematic shown to {name}",
      "PendingLabel": "Pending",
      "ActiveLabel": "Active",
      "Minimize": "Minimize",
      "Journal": "Journal",
      "SearchJournals": "Search journals...",
      "NoJournalsFound": "No journals found",
      "SearchTracks": "Search playlists & tracks...",
      "ChatLog": "Chat Log",
      "SetBackground": "Set Scene Background",
      "ClearBackground": "Clear Background",
      "DeselectSpeaker": "Deselect Speaker",
      "ShowSpeaker": "Show speaker",
      "HideSpeaker": "Hide speaker",
      "ShowName": "Show name",
      "HideName": "Hide name",
      "EditName": "Edit name",
      "JournalFontSize": "Font Size",
      "NewNote": "New Note",
      "EditJournal": "Edit",
      "NoContent": "No content.",
      "PartySheet": "Party Sheet",
      "OpenScene": "Open Scene",
      "SearchScenes": "Search scenes...",
      "NoScenesFound": "No scenes found",
      "ActiveScene": "Active",
      "PreviewScene": "Preview scene",
      "ClickToClose": "Click anywhere to close",
      "PopoutImage": "Open in new tab",
      "ResetTrackVolumes": "Reset volume",
      "Relaunched": "Cinematic scene relaunched for all players",
      "TogglePlayerSpeakers": "Toggle Player Speakers",
      "DismissSecondary": "Dismiss responding speaker",
      "SpeakerRequests": "Speaker Requests",
      "ApproveRequest": "Approve — set as responding speaker",
      "DismissRequest": "Dismiss request",
      "JoinAsSpeaker": "Join as Speaker",
      "LeaveAsSpeaker": "Leave Speakers",
      "RequestToSpeak": "Request to Speak",
      "CancelRequest": "Cancel Request",
      "StepDown": "Step Down",
      "ChooseCharacter": "Choose which character to join as:",
      "Music": {
        "Shuffle": "Shuffle",
        "Previous": "Previous",
        "Play": "Play",
        "Pause": "Pause",
        "Stop": "Stop",
        "Next": "Next",
        "Repeat": "Repeat"
      }
    },
    "SpeakerWheel": {
      "Back": "Back"
    },
    "SceneEditor": {
      "TitleCreate": "Create Speaker Scene",
      "TitleEdit": "Edit Speaker Scene",
      "SpeakersCount": "Speakers ({count})",
      "JournalImagesCount": "Journal Images ({count})",
      "JournalActorsCount": "Journal Actors ({count})",
      "Current": "Current",
      "NoSpeakersMessage": "No speakers. Add from sources below or drag actors here.",
      "WorldActorsCount": "World Actors ({count})",
      "SearchActors": "Search actors...",
      "SearchToShowActors": "Type in the search box to find actors",
      "ShowMore": "Show more ({remaining} remaining)",
      "SaveChanges": "Save Changes",
      "CreateScene": "Create Scene"
    },
    "ChallengeBuilder": {
      "ChallengeName": "Challenge Name",
      "ChallengeNamePlaceholder": "e.g., Reinforce Camp",
      "ChallengeImage": "Challenge Image (optional)",
      "ChallengeImagePlaceholder": "path/to/image.png",
      "PickImage": "Pick Image",
      "SaveToLibrary": "Save this challenge to library",
      "ChallengeOptions": "Challenge Options",
      "OptionLabel": "Option {num}",
      "AddOption": "Add Another Option",
      "LoreSkills": "Lore",
      "NoAction": "No action",
      "DC": "DC",
      "Proficiency": {
        "Any": "Any",
        "Trained": "Trained",
        "Expert": "Expert",
        "Master": "Master",
        "Legendary": "Legendary",
        "Proficient": "Proficient",
        "Expertise": "Expertise"
      },
      "Validation": {
        "AddAtLeastOneOption": "Add at least one option with skills",
        "AtLeastOneSkill": "Must have at least one skill",
        "AtLeastOneOption": "Must have at least one option",
        "InvalidDCValue": "Please enter a valid DC value",
        "PresetNotFound": "Preset not found"
      },
      "SavedToLibrary": "Saved \"{name}\" to library",
      "UpdatedInLibrary": "Updated \"{name}\" in library",
      "UpdateAndPresent": "Update & Present",
      "PresentChallenge": "Present Challenge"
    },
    "Integrations": {
      "SimpleRequests": {
        "CallNext": "Call next request"
      }
    }
  }
}
