{ "title": "WPlace Auto-Image", "toggleOverlay": "Basculer l'overlay", "scanColors": "Scanner les couleurs", "uploadImage": "Télécharger l'image", "resizeImage": "Traiter/Éditer l'image", "selectPosition": "Sélectionner la position", "startPainting": "Commencer à peindre", "stopPainting": "Arrêter de peindre", "checkingColors": "🔍 Vérification des couleurs disponibles...", "noColorsFound": "❌ Ouvrez la palette de couleurs sur le site et réessayez!", "colorsFound": "✅ {count} couleurs trouvées. Prêt à télécharger.", "loadingImage": "🖼️ Chargement de l'image...", "imageLoaded": "✅ Image chargée avec {count} pixels valides ⚠️ Traitez d'abord l'image via \"Traiter/Éditer l'image\" avant de la placer!", "imageNeedsProcessing": "L'image nécessite un traitement ⚠️", "imageError": "❌ Erreur lors du chargement de l'image", "selectPositionAlert": "Peignez le premier pixel à l'endroit où vous voulez que l'art commence!", "waitingPosition": "👆 En attente que vous peigniez le pixel de référence...", "positionSet": "✅ Position définie avec succès!", "positionTimeout": "❌ Délai d'attente pour la sélection de position", "startPaintingMsg": "🎨 Début de la peinture...", "paintingProgress": "🧱 Progrès: {painted}/{total} pixels...", "noCharges": "⌛ Aucune charge. En attente {time}...", "paintingStopped": "⏹️ Peinture arrêtée par l'utilisateur", "paintingComplete": "✅ Peinture terminée! {count} pixels peints.", "paintingError": "❌ Erreur pendant la peinture", "missingRequirements": "❌ Veuillez charger une image et sélectionner une position d'abord", "progress": "Progrès", "pixels": "Pixels", "charges": "Charges", "paintingOrder": "Ordre de peinture", "paintingOrderSequential": "Normal (Haut en bas)", "paintingOrderColorByColor": "Couleur par couleur", "currentlyPaintingColor": "Peinture en cours: {colorName}", "colorProgress": "{painted} sur {total} pixels {colorName}", "estimatedTime": "Temps estimé", "initMessage": "Cliquez sur 'Télécharger l'image' pour commencer", "waitingInit": "En attente d'initialisation...", "initializingToken": "🔧 Initialisation du générateur de tokens Turnstile...", "tokenReady": "✅ Générateur de tokens prêt - vous pouvez commencer à peindre!", "tokenRetryLater": "⚠️ Le générateur de tokens réessaiera si nécessaire", "resizeSuccess": "✅ Image redimensionnée en {width}x{height}", "paintingPaused": "⏸️ Peinture en pause à la position X: {x}, Y: {y}", "captchaNeeded": "❗ Échec de la génération de token. Veuillez réessayer dans un moment.", "saveData": "Sauvegarder le progrès", "loadData": "Charger le progrès", "saveToFile": "Sauvegarder dans un fichier", "loadFromFile": "Charger depuis un fichier", "dataManager": "Données", "autoSaved": "✅ Progrès sauvegardé automatiquement", "dataLoaded": "✅ Progrès chargé avec succès", "fileSaved": "✅ Sauvegardé dans un fichier avec succès", "fileLoaded": "✅ Chargé depuis un fichier avec succès", "noSavedData": "❌ Aucun progrès sauvegardé trouvé", "savedDataFound": "✅ Progrès sauvegardé trouvé! Charger pour continuer?", "savedDate": "Sauvegardé le: {date}", "clickLoadToContinue": "Cliquez sur 'Charger le progrès' pour continuer.", "fileError": "❌ Erreur lors du traitement du fichier", "invalidFileFormat": "❌ Format de fichier invalide", "paintingSpeed": "Vitesse de peinture", "pixelsPerSecond": "pixels/seconde", "speedSetting": "Vitesse: {speed} pixels/sec", "keepAspectRatio": "Conserver le rapport d'aspect", "settings": "Paramètres", "botSettings": "Paramètres du Bot", "close": "Fermer", "language": "Langue", "themeSettings": "Paramètres de Thème", "themeSettingsDesc": "Choisissez votre thème de couleurs préféré pour l'interface.", "languageSelectDesc": "Sélectionnez votre langue préférée. Les changements prendront effet immédiatement.", "autoCaptcha": "Résolveur de CAPTCHA automatique (Turnstile)", "autoCaptchaDesc": "Génère automatiquement des jetons Turnstile en utilisant le générateur intégré. Se replie sur l'automatisation du navigateur si nécessaire.", "applySettings": "Appliquer les paramètres", "settingsSaved": "✅ Paramètres enregistrés avec succès !", "speedOn": "Activé", "speedOff": "Désactivé", "cooldownSettings": "Paramètres de recharge", "waitCharges": "Attendre que les charges atteignent", "captchaSolving": "🔑 Génération du jeton Turnstile...", "captchaFailed": "❌ Échec de génération du jeton Turnstile. Tentative de méthode alternative...", "automation": "Automatisation", "noChargesThreshold": "⌛ En attente que les charges atteignent {threshold}. Actuel: {current}. Prochaine dans {time}...", "tokenCapturedSuccess": "Jeton capturé avec succès ! Vous pouvez démarrer le bot maintenant.", "notificationsNotSupported": "Les notifications ne sont pas supportées dans ce navigateur.", "chargesReadyNotification": "WPlace — Charges Prêtes", "chargesReadyMessage": "Charges prêtes : {current} / {max}. Seuil : {threshold}.", "testNotificationTitle": "WPlace — Test", "testNotificationMessage": "Ceci est une notification de test.", "showStats": "Afficher les Stats", "compactMode": "Mode Compact", "refreshCharges": "Actualiser les Charges", "closeStats": "Fermer les Stats", "zoomOut": "Dézoomer", "zoomIn": "Zoomer", "fitToView": "Ajuster à la vue", "actualSize": "Taille réelle (100%)", "panMode": "Panoramique (glisser pour déplacer la vue)", "clearIgnoredPixels": "Effacer tous les pixels ignorés", "invertMask": "Inverser le masque", "waitingSetupComplete": "🔄 En attente de la fin de l'installation initiale...", "waitingTokenGenerator": "🔄 En attente de l'initialisation du générateur de jetons...", "uploadImageFirst": "Téléchargez d'abord une image pour capturer les couleurs disponibles", "pleaseWaitInitialSetup": "🔄 Veuillez attendre la fin de l'installation initiale avant de charger les progrès.", "pleaseWaitFileSetup": "🔄 Veuillez attendre la fin de l'installation initiale avant de charger depuis un fichier.", "errorSavingProgress": "❌ Erreur lors de la sauvegarde des progrès", "errorLoadingProgress": "❌ Erreur lors du chargement des progrès", "fileOperationsAvailable": "📂 Les opérations sur fichiers (Charger/Télécharger) sont maintenant disponibles !", "tokenGeneratorReady": "🔑 Générateur de jetons prêt !", "paintingStats": "Statistiques de Peinture", "enablePaintingSpeedLimit": "Activer la limite de vitesse de peinture (contrôle de la taille de lot)", "enableNotifications": "Activer les notifications", "notifyOnChargesThreshold": "Notifier quand les charges atteignent le seuil", "onlyWhenNotFocused": "Seulement quand l'onglet n'est pas au premier plan", "repeatEvery": "Répéter toutes les", "minutesPl": "minute(s)", "grantPermission": "Accorder la Permission", "test": "Test", "showAllColorsIncluding": "Afficher toutes les couleurs (y compris indisponibles)", "chromaWeight": "Poids de Chrominance", "downloadPreview": "Télécharger l'Aperçu", "apply": "Appliquer", "cancel": "Annuler", "fit": "Ajuster", "hundred": "100%", "clear": "Effacer", "invert": "Inverser", "reprocessingOverlay": "Retraitement de l'overlay...", "overlayUpdated": "Overlay mis à jour !", "notificationsEnabled": "Notifications activées.", "notificationsPermissionDenied": "Permission de notifications refusée.", "overlayEnabled": "Overlay activé.", "overlayDisabled": "Overlay désactivé.", "tokenSourceSet": "Source de jeton définie à : {source}", "batchModeSet": "Mode lot défini à : {mode}", "randomRange": "Plage Aléatoire", "normalFixedSize": "Taille Fixe Normale", "advancedColorSettingsReset": "Paramètres de couleur avancés réinitialisés.", "shiftRowAltColumn": "Shift = Ligne • Alt = Colonne", "hideTurnstileBtn": "Masquer", "turnstileInstructions": "Cloudflare Turnstile — veuillez compléter la vérification si affichée", "uploadImageFirstColors": "Veuillez d'abord télécharger une image pour capturer les couleurs disponibles", "availableColors": "Couleurs Disponibles ({count})", "colorTooltip": "ID : {id}\nRVB : {rgb}", "expandMode": "Mode Étendu", "minimize": "Réduire", "restore": "Restaurer", "hideStats": "Masquer les Stats", "paintOptions": "Options de peinture", "paintWhitePixels": "Peindre les pixels blancs", "paintWhitePixelsDescription": "Si activé, les pixels blancs du modèle seront peints.", "paintTransparentPixels": "Peindre les pixels transparents", "paintTransparentPixelsDescription": "Si activé, les pixels transparents du modèle seront peints", "paintUnavailablePixels": "Peindre les pixels indisponibles", "paintUnavailablePixelsDescription": "Si activé, les couleurs de modèle non disponibles seront peintes avec la couleur disponible la plus proche", "paintingModeAuto": "Auto", "paintingModeAssist": "Assistance", "paintingModeAutoDesc": "Le bot peindra automatiquement les pixels", "paintingModeAssistDesc": "La superposition guidera votre placement manuel de pixels", "colorsUpdated": "✅ Couleurs disponibles augmentées {oldCount} -> {newCount}, {diffCount} nouvelles couleurs trouvées", "overlayTilesNotLoaded": "❌ Tuiles de carte requises non chargées. Vérifiez la connexion ou réessayez.", "paintingBatchFailed": "❌ Échec de l'envoi du lot après plusieurs tentatives. Peinture arrêtée.", "paintingPixelCheckFailed": "❌ Impossible de lire le pixel à ({x}, {y}). Peinture arrêtée.", "paintingFinalBatchFailed": "⚠️ Lot final de {count} pixels échoué après plusieurs tentatives.", "paintingStoppedByUser": "⏹️ Peinture arrêtée par l'utilisateur", "fullChargeIn": "Pleine charge dans", "batchSize": "Taille du lot", "autoLoadProgress": "Charger automatiquement la progression sauvegardée", "autoLoadProgressDesc": "Si activé, chargera automatiquement la progression sauvegardée après l’initialisation du générateur de jetons lors du chargement de la page." }