{
  "app": {
    "title": "ScanChess",
    "subtitle": "Reconnaissance de feuilles de partie par IA",
    "aiPowered": "Propulsé par l'IA"
  },
  "auth": {
    "login": "Se connecter",
    "signup": "Créer un compte",
    "logout": "Se déconnecter",
    "loginRequired": "Connexion requise",
    "loginDescription": "Connectez-vous pour utiliser la numérisation. Les nouveaux comptes reçoivent 10 crédits gratuits.",
    "loginNow": "Se connecter / Créer un compte",
    "email": "E-mail",
    "password": "Mot de passe",
    "confirmPassword": "Confirmer le mot de passe",
    "forgotPassword": "Mot de passe oublié ?",
    "noAccount": "Pas encore de compte ?",
    "hasAccount": "Vous avez déjà un compte ?",
    "signupSuccess": "Compte créé avec succès",
    "orContinueWith": "Ou continuer avec",
    "loginSuccess": "Connexion réussie",
    "logoutSuccess": "Déconnecté",
    "emailNotVerified": "E-mail non vérifié",
    "emailNotVerifiedDesc": "Consultez votre boîte mail et cliquez sur le lien de vérification pour activer votre compte.",
    "invalidCredentials": "E-mail ou mot de passe incorrect",
    "emailAlreadyRegistered": "Cette adresse e-mail est déjà enregistrée",
    "verificationSent": "E-mail de vérification envoyé",
    "verificationSentDesc": "Consultez votre boîte de réception et cliquez sur le lien de vérification.",
    "checkYourEmail": "Consultez votre boîte mail",
    "verificationSentTo": "Nous avons envoyé un e-mail de vérification à {{email}}. Cliquez sur le lien pour activer votre compte.",
    "resendEmail": "Renvoyer l'e-mail de vérification",
    "verificationResent": "E-mail renvoyé",
    "verificationResentDesc": "Un nouvel e-mail de vérification est parti.",
    "enterEmailFirst": "Saisissez d'abord votre adresse e-mail",
    "didntReceiveEmail": "Vous n'avez rien reçu ? Renvoyer",
    "referralBonus": "Utilisez un code de parrainage pour obtenir 5 crédits en plus",
    "emailVerificationNotice": "Vous devrez vérifier votre adresse e-mail pour terminer l'inscription.",
    "emailVerified": "E-mail vérifié",
    "emailUnverified": "E-mail non vérifié",
    "verifyStatus": {
      "waiting": {
        "title": "Consultez votre boîte mail",
        "description": "Ouvrez le lien de vérification que nous avons envoyé avant de dépenser des crédits."
      },
      "verifying": {
        "title": "Vérification de votre e-mail",
        "description": "Ce ne sera qu'un instant."
      },
      "verified": {
        "title": "E-mail vérifié",
        "description": "Votre compte est prêt à numériser."
      },
      "failed": {
        "title": "Lien de vérification invalide",
        "description": "Le lien est invalide ou a expiré. Connectez-vous pour en demander un autre."
      }
    },
    "welcomeBack": "Bon retour parmi nous.",
    "welcome": "Bienvenue sur ScanChess.",
    "emailPlaceholder": "vous@exemple.com",
    "passwordPlaceholder": "Au moins 6 caractères",
    "signupWithCredits": "Créer un compte — 10 crédits gratuits",
    "enterValidEmail": "Saisissez une adresse e-mail valide",
    "passwordResetSent": "Consultez votre boîte mail",
    "passwordResetSentDesc": "S'il existe un compte à cette adresse, nous avons envoyé un lien de réinitialisation.",
    "validation": {
      "emailInvalid": "Saisissez une adresse e-mail valide.",
      "passwordMin": "Le mot de passe doit comporter au moins 6 caractères."
    },
    "agreement": "En continuant, vous acceptez les <terms>conditions d'utilisation</terms> et la <privacy>politique de confidentialité</privacy>.",
    "pageTitle": "Connexion à ScanChess"
  },
  "scan": {
    "title": "Lancer la numérisation",
    "seoHeading": "Numériser une feuille de partie ou la photo d'un échiquier",
    "seoIntro": "Envoyez une photo nette pour convertir les coups manuscrits en notation SAN validée et en PGN, ou une position d'échiquier en FEN.",
    "inputType": "Type d'image",
    "scoresheetMode": "Feuille manuscrite",
    "boardMode": "Image d’échiquier",
    "uploadBoardImage": "Envoyer l'image de l'échiquier",
    "scanning": "L'IA lit...",
    "uploadImages": "Envoyer des images",
    "dragDrop": "Déposez ici les images de la feuille de partie",
    "orClick": "ou cliquez pour choisir",
    "tapUpload": "Touchez pour ajouter des photos de la feuille",
    "tapUploadHint": "Prenez une photo ou choisissez-en une dans votre galerie",
    "pasteSupport": "Le collage est possible (Ctrl+V)",
    "maxImages": "{{count}} images au maximum",
    "maxSize": "{{size}} Mo maximum par image",
    "scanSuccess": "Numérisation terminée",
    "scanSuccessDesc": "{{count}} coups reconnus, coût {{credits}} crédits",
    "scanSuccessSavedDesc": "{{count}} coups reconnus, {{credits}} crédits utilisés, et la partie a été enregistrée dans l'historique",
    "scanSuccessImagePending": "{{count}} coups reconnus et la partie enregistrée dans l'historique, mais l'image d'origine reste à sauvegarder",
    "notationTranslated": "Les lettres des pièces ont été lues comme de la notation {{language}} ({{mapping}}).",
    "scanFailed": "Échec de la numérisation",
    "noImages": "Envoyez des images",
    "noImagesDesc": "Envoyez des images de la feuille de partie pour lancer la numérisation",
    "insufficientCredits": "Crédits insuffisants",
    "insufficientCreditsDesc": "La numérisation coûte {{cost}} crédits, votre solde est de {{balance}}",
    "inviteFriends": "Invitez des amis pour plus de crédits",
    "scoresheetImages": "Images de la feuille de partie",
    "uploadedImages": "Images envoyées",
    "monthlyQuotaUsed": "Quota Pro mensuel épuisé",
    "monthlyQuotaUsedDesc": "Vous avez utilisé les crédits Pro de ce mois. Ils se renouvellent le {{date}}.",
    "monthlyQuotaUsedDescNoDate": "Vous avez utilisé les crédits Pro de ce mois. Ils se renouvellent à la prochaine période.",
    "upgradeHint": "Passez à Pro dans l'application ScanChess pour 100 crédits par mois",
    "outOfCredits": "Vous n'avez plus de crédits pour cette numérisation.",
    "seePricing": "Obtenir plus de crédits — 4,99 $/mois",
    "overlayDescription": "Analyse des images de la feuille et extraction des coups.",
    "cancelWait": "Ne plus attendre",
    "cancelWaitDesc": "Le traitement peut se terminer en arrière-plan. Renvoyez les mêmes images pour récupérer le résultat sans nouveau prélèvement.",
    "uploadRejected": "Certaines images n'ont pas pu être ajoutées",
    "uploadRejectedDesc": "{{count}} fichier(s) dépassaient le format, la taille ou la limite de {{max}} images.",
    "verifyEmailRequired": "Vérifiez d'abord votre e-mail",
    "verifyEmailRequiredDesc": "La numérisation sera possible dès que vous aurez confirmé votre adresse e-mail. Consultez votre boîte de réception ou faites-vous renvoyer le lien.",
    "verifyEmailCta": "Envoyer le lien de vérification",
    "repeatScanTitle": "Même image — aucun crédit utilisé",
    "repeatScanDesc": "Voici le résultat de la numérisation précédente de cette photo. Renumériser une image inchangée ne coûte jamais de crédits. Pour un autre résultat, prenez une photo plus nette ou plus complète.",
    "lowBalance": "Il vous reste {{balance}} crédits — environ une feuille de plus.",
    "onlineSourceNotice": "Cela ressemble à une capture d'écran d'une partie en ligne. Une capture ne montre que les coups visibles dans le panneau, la numérisation ne peut donc pas retrouver le reste — sur Chess.com ou Lichess, exporter le PGN depuis la partie elle-même donne la partie complète.",
    "scanWithCost": "Numériser · {{cost}} crédits",
    "recognizeWithCost": "Reconnaître · {{cost}} crédit",
    "pasteHint": "Collez avec {{shortcut}}",
    "uploadLimits": "Jusqu'à {{max}} images de {{size}} Mo chacune — JPG, PNG ou WebP. Le HEIC n'est pas pris en charge, convertissez-le d'abord.",
    "uploadLimitsBoard": "Une image de {{size}} Mo maximum — JPG, PNG ou WebP. Le HEIC n'est pas pris en charge, convertissez-le d'abord.",
    "imageCount": "{{count}} image(s) ajoutée(s) sur {{max}}",
    "fileRejectedType": "{{name}} : format non pris en charge. Utilisez JPG, PNG ou WebP — le HEIC doit être converti au préalable.",
    "fileRejectedSize": "{{name}} : dépasse {{size}} Mo.",
    "fileRejectedCount": "{{name}} : seules {{max}} image(s) peuvent être numérisées à la fois.",
    "fileRejectedRead": "{{name}} : n'a pas pu être lu comme une image.",
    "switchToBoardTitle": "Ne garder que la première image ?",
    "switchToBoardDesc": "La reconnaissance d'échiquier lit une seule photo. Le changement conserve la première de vos {{count}} images et supprime les autres.",
    "switchToBoardConfirm": "Garder la première image",
    "signInHint": "Une connexion vous sera demandée avant la numérisation. Les nouveaux comptes reçoivent 10 crédits gratuits.",
    "unverifiedNotice": "Votre première numérisation fonctionne sans vérifier votre e-mail ; vérifiez-le pour continuer.",
    "unverifiedUsedTitle": "Numérisation gratuite sans vérification déjà utilisée",
    "unverifiedUsedDesc": "Vérifiez votre e-mail pour continuer à numériser. Nous pouvons renvoyer le lien.",
    "resendVerification": "Renvoyer le lien",
    "stillRunningTitle": "La numérisation est encore en cours",
    "stillRunningDesc": "Le serveur traite encore cette photo. Vos crédits ont été prélevés une fois et la même photo ne sera pas facturée à nouveau — réessayez dans une minute pour récupérer le résultat.",
    "replayedTitle": "Votre résultat précédent a été chargé",
    "replayedDesc": "Cette photo avait déjà été numérisée. Aucun crédit n'a été prélevé.",
    "getCredits": "Obtenir des crédits",
    "insufficientInline": "Vous avez {{balance}} crédits ; cette numérisation en demande {{cost}}.",
    "imageAlt": "Page {{n}} de la feuille de partie",
    "boardImageAlt": "Photo de l'échiquier",
    "removeImage": "Retirer l'image {{n}}",
    "moveImageEarlier": "Déplacer l'image {{n}} vers le début",
    "moveImageLater": "Déplacer l'image {{n}} vers la fin",
    "restoredTitle": "Votre partie non enregistrée a été récupérée",
    "restoredDesc": "Vos coups et vos images d'avant le rechargement sont de retour.",
    "restoredDismiss": "Masquer",
    "batchHint": "Vous numérisez une ronde entière ? Utilisez la numérisation par lot"
  },
  "notation": {
    "de": "allemande",
    "es": "espagnole",
    "fr": "française",
    "pt": "portugaise",
    "nl": "néerlandaise",
    "pl": "polonaise",
    "cs": "tchèque",
    "hu": "hongroise",
    "ru": "russe",
    "zh": "chinoise"
  },
  "game": {
    "moves": "Coups",
    "totalMoves": "{{count}} coups au total",
    "doubleClickEdit": "Utilisez le crayon pour modifier",
    "noMoves": "Aucune partie",
    "noMovesDesc": "Envoyez des images de la feuille de partie pour lancer la numérisation",
    "suspiciousMoves": "{{count}} coup(s) à vérifier peut-être",
    "autoFixPrompt": "La vérification a signalé {{issues}} coup(s) problématique(s) ; la correction automatique modifierait {{changes}} endroit(s)",
    "autoFixApply": "Essayer la correction automatique",
    "autoFixDismiss": "Garder tel quel",
    "allMovesValid": "Tous les coups ont été validés",
    "alternatives": "Alternatives",
    "moveEmpty": "Le coup ne peut pas être vide",
    "illegalMove": "Le coup {{move}} ne peut pas être joué depuis la position précédente. Corrigez-le avec le crayon ; s'il y a un autre problème plus loin, il apparaîtra ensuite.",
    "white": "Blancs",
    "black": "Noirs",
    "event": "Tournoi",
    "site": "Lieu",
    "date": "Date",
    "result": "Résultat",
    "unknown": "Inconnu",
    "unknownEvent": "Tournoi inconnu",
    "unknownSite": "Lieu inconnu",
    "unknownDate": "Date inconnue",
    "navStart": "Aller au début",
    "navPrev": "Coup précédent",
    "navNext": "Coup suivant",
    "navEnd": "Aller à la position finale",
    "navReset": "Réinitialiser l'échiquier",
    "navFlip": "Retourner l'échiquier",
    "resultWhite": "Les Blancs ont gagné",
    "resultBlack": "Les Noirs ont gagné",
    "resultDraw": "Nulle",
    "resultOngoing": "En cours",
    "editMove": "Modifier {{move}}",
    "goToMove": "Afficher la position après {{move}}",
    "resetTitle": "Abandonner cette numérisation ?",
    "resetDescription": "Cela efface les images, les coups et toutes les corrections non enregistrées. C'est irréversible.",
    "scanUnreliable": {
      "notFromStartingPosition": "Cette liste de coups ne commence pas à l'ouverture",
      "notFromStartingPositionHint": "On dirait un fragment de partie : une capture du panneau de coups, ou une page ultérieure de la feuille. Les coups sont affichés exactement tels qu'ils ont été lus ; sans les coups précédents, impossible de les rejouer ni de les corriger. Numérisez la feuille complète depuis le coup 1 ou modifiez les coups à la main.",
      "descriptiveNotation": "Cette feuille utilise la notation descriptive",
      "descriptiveNotationHint": "Des coups comme P-K4 ou P4R nomment des pièces au lieu de cases. Nous ne savons lire pour l'instant que la notation algébrique (e4, Cf3), les coups sont donc affichés tels quels plutôt que convertis."
    },
    "lowConfidence": "Lu avec {{percent}} % de confiance — comparez-le à la feuille.",
    "implausible": "Un coup légal que la partie contredit : {{san}} gagnerait {{gain}} pions en {{square}} et personne ne l'a joué. Ce demi-coup ou le suivant a sans doute été mal lu.",
    "replaceWith": "Remplacer par {{move}}",
    "insertBefore": "Insérer un coup avant {{move}}",
    "insertMove": "Insérer un coup",
    "deleteMove": "Supprimer {{move}}",
    "undoEdit": "Annuler la dernière modification",
    "newMovePlaceholder": "par ex. Cf3",
    "moreActions": "Autres actions pour {{move}}",
    "round": "Ronde",
    "opening": "Ouverture",
    "addWhite": "Ajouter le joueur des Blancs",
    "addBlack": "Ajouter le joueur des Noirs",
    "addEvent": "Ajouter le tournoi",
    "addSite": "Ajouter le lieu",
    "addDate": "Ajouter la date",
    "addRound": "Ajouter la ronde",
    "editField": "Modifier {{field}}"
  },
  "history": {
    "title": "Historique",
    "viewAll": "Tout voir",
    "noHistory": "Aucun historique",
    "cloudSync": "Connectez-vous pour synchroniser l'historique dans le cloud",
    "gameLoaded": "Partie chargée",
    "deleted": "Supprimée",
    "deletedDesc": "Entrée d'historique supprimée",
    "justNow": "À l'instant",
    "minutesAgo": "il y a {{count}} min",
    "hoursAgo": "il y a {{count}} heures",
    "daysAgo": "il y a {{count}} jours",
    "startScan": "Numériser une feuille de partie",
    "totalRecords_one": "1 partie enregistrée",
    "totalRecords_other": "{{count}} parties enregistrées",
    "loadedRecords": "{{count}} parties chargées — il y en a d'autres",
    "moveCount_one": "1 coup",
    "moveCount_other": "{{count}} coups",
    "scanAnother": "En numériser une autre",
    "noHistoryDesc": "Les parties que vous enregistrez après une numérisation apparaissent ici, sur tous les appareils où vous vous connectez.",
    "deleteGame": "Supprimer {{game}}",
    "deleteTitle": "Supprimer cette partie ?",
    "deleteDesc": "{{game}} sera retirée de votre bibliothèque. C'est irréversible — exportez d'abord le PGN si vous voulez la garder.",
    "searchLabel": "Rechercher dans les parties enregistrées",
    "searchPlaceholder": "Rechercher par joueur, tournoi ou date",
    "matchCount": "{{count}} parties sur {{total}}",
    "savedAt": "Enregistrée {{when}}",
    "loadMore": "Charger plus de parties",
    "openGame": "Ouvrir {{game}}",
    "deleteFailed": "La partie n'a pas pu être supprimée",
    "deleteFailedDesc": "La partie est toujours dans votre bibliothèque. Veuillez réessayer.",
    "sharedBadge": "Partagée",
    "revokeShare": "Révoquer le lien de partage de {{game}}",
    "revokeTitle": "Révoquer ce lien ?",
    "revokeDesc": "Le lien vers {{game}} cessera de fonctionner pour tout le monde. Vous pourrez en créer un autre plus tard.",
    "needsCorrection_one": "1 coup à corriger",
    "needsCorrection_other": "{{count}} coups à corriger",
    "sortLabel": "Trier",
    "sort": {
      "savedDesc": "Enregistrées récemment",
      "savedAsc": "Enregistrées il y a longtemps",
      "gameDateDesc": "Date de la partie, plus récente d'abord",
      "gameDateAsc": "Date de la partie, plus ancienne d'abord",
      "white": "Joueur des Blancs, de A à Z",
      "black": "Joueur des Noirs, de A à Z"
    },
    "filterLabel": "Résultat",
    "filter": {
      "all": "Toutes",
      "whiteWins": "1-0",
      "blackWins": "0-1",
      "draws": "½-½",
      "unfinished": "Inachevées"
    },
    "tryBatch": "Numériser une ronde entière d'un coup"
  },
  "export": {
    "exportPGN": "Exporter le PGN",
    "copyPGN": "Copier le PGN",
    "copied": "Copié",
    "embed": "Intégrer la partie",
    "embedCopied": "Code d'intégration copié dans le presse-papiers",
    "exportSuccess": "Export réussi",
    "exportSuccessDesc": "Fichier PGN téléchargé",
    "copySuccess": "Copie réussie",
    "copySuccessDesc": "PGN copié dans le presse-papiers",
    "noData": "Aucune partie",
    "noDataDesc": "Numérisez d'abord les images de la feuille de partie",
    "saveGame": "Enregistrer la partie",
    "saving": "Enregistrement...",
    "gameSaved": "Partie enregistrée",
    "gameSavedDesc": "La partie a été enregistrée dans votre historique",
    "saveFailed": "Échec de l'enregistrement",
    "saveFailedDesc": "La partie n'a pas pu être enregistrée. Veuillez réessayer.",
    "gameSavedWithCorrections_one": "Enregistrée — 1 coup reste à corriger",
    "gameSavedWithCorrections_other": "Enregistrée — {{count}} coups restent à corriger",
    "gameSavedWithCorrectionsDesc": "La relecture s'arrête au coup {{ply}}. Corrigez les coups et enregistrez à nouveau.",
    "signInToSave": "Connectez-vous pour enregistrer",
    "openLichess": "Ouvrir sur Lichess",
    "lichessOpening": "Envoi vers Lichess…",
    "lichessFailed": "Lichess n'a pas accepté la partie",
    "lichessFailedDesc": "L'import n'a pas abouti. Copiez le PGN et collez-le plutôt sur lichess.org/paste.",
    "lichessRateLimited": "Lichess limite les imports en ce moment. Attendez une minute et réessayez, ou collez le PGN sur lichess.org/paste.",
    "lichessPasteReady": "Nous avons ouvert la page de collage de Lichess et copié le PGN — appuyez sur ⌘V / Ctrl+V là-bas et importez-le."
  },
  "share": {
    "title": "Partager",
    "text": "Regardez cette partie : {{title}} ({{count}} coups) - Numérisée avec ScanChess.com",
    "wechat": "WeChat",
    "wechatTitle": "Partager sur WeChat",
    "wechatDesc": "Lien copié ! Collez-le dans WeChat pour le partager.",
    "copyLink": "Copier le lien",
    "copied": "Copié !",
    "linkCopied": "Lien copié",
    "linkCopiedDesc": "Lien de partage copié dans le presse-papiers",
    "more": "Plus d'options",
    "cardTitle": "Partagez-la avec votre adversaire",
    "cardBody": "Vous avez joué cette partie à deux — envoyez-lui un lien pour qu'il puisse la rejouer. N'importe qui peut l'ouvrir, sans compte.",
    "cardBodyShared": "Le lien est actif. Toute personne qui l'a peut rejouer cette partie.",
    "needsSave": "Enregistrez d'abord la partie — le lien pointe vers la copie enregistrée.",
    "createLink": "Créer un lien de partage",
    "linkReady": "Lien de partage prêt",
    "linkReadyDesc": "Envoyez-le à votre adversaire — il pourra l'ouvrir sans se connecter.",
    "linkFailed": "Le lien n'a pas pu être créé",
    "linkFailedDesc": "Veuillez réessayer dans un instant.",
    "linkRevoked": "Lien révoqué",
    "linkRevokedDesc": "L'ancien lien n'ouvre plus cette partie.",
    "revokeLink": "Révoquer",
    "anyoneWithLink": "Toute personne disposant du lien peut voir cette partie.",
    "anyoneWithLinkImages": "Toute personne disposant du lien peut voir cette partie et les photos de la feuille.",
    "unsavedEdits": "Vous avez modifié cette partie depuis son enregistrement. Enregistrez à nouveau pour que le lien montre vos corrections.",
    "includeImages": "Inclure les photos originales de la feuille",
    "includeImagesHint": "Désactivé par défaut. Activez-le si la personne qui reçoit le lien doit voir les photos envoyées.",
    "imagesNowShared": "Les photos de la feuille sont désormais visibles via le lien",
    "imagesNowPrivate": "Les photos de la feuille ne sont plus visibles via le lien",
    "updateFailed": "Le lien n'a pas pu être mis à jour",
    "revokeFailed": "Le lien n'a pas pu être révoqué",
    "copyFailedDesc": "Copiez plutôt le lien depuis le champ ci-dessus."
  },
  "user": {
    "profile": "Profil",
    "credits": "Crédits",
    "settings": "Paramètres",
    "referralCode": "Code de parrainage",
    "copyCode": "Copier le code",
    "codeCopied": "Code copié",
    "copyReferralLink": "Copier le lien de parrainage",
    "referralBonusDesc": "Partagez-le avec vos amis, vous gagnez 5 crédits chacun !",
    "referralPlaceholder": "Code de parrainage d'un ami",
    "proUntil": "Pro jusqu'au",
    "creditsRefresh": "Renouvellement des crédits",
    "manageSubscription": "Gérer l'abonnement"
  },
  "demo": {
    "title": "Comment ça marche",
    "source": "Feuille de partie",
    "sourceBoard": "Photo de l'échiquier",
    "result": "Échiquier numérique"
  },
  "nav": {
    "home": "Accueil",
    "history": "Historique",
    "about": "À propos",
    "howToUse": "Tutoriel",
    "faq": "FAQ",
    "boardRecognition": "Reconnaissance d'échiquier",
    "scan": "Numériser",
    "howItWorks": "Comment ça marche",
    "blog": "Blog",
    "solutions": "Solutions",
    "scanCta": "Numériser une feuille",
    "pricing": "Tarifs",
    "settings": "Paramètres",
    "tools": "Outils"
  },
  "footer": {
    "tagline": "Transformez un diagramme en position à analyser, ou une feuille manuscrite en partie à rejouer. Vérifiez le résultat, puis poursuivez.",
    "rights": "Tous droits réservés",
    "product": "Produit",
    "resources": "Ressources",
    "company": "Entreprise",
    "scanScoresheet": "Numériser une feuille",
    "boardToFen": "Photo d'échiquier → FEN",
    "howItWorks": "Comment ça marche",
    "blog": "Blog",
    "solutions": "Solutions",
    "scoresheetToPgn": "Feuille de partie → PGN",
    "faq": "FAQ",
    "about": "À propos",
    "gameHistory": "Historique des parties",
    "privacy": "Politique de confidentialité",
    "terms": "Conditions d'utilisation",
    "deleteAccount": "Supprimer le compte",
    "pricing": "Tarifs",
    "support": "Assistance",
    "contactSupport": "Contacter l'assistance",
    "supportLabel": "Assistance",
    "refunds": "Politique de remboursement",
    "operator": "ScanChess est exploité par SudoAI. Les abonnements web sont vendus par Waffo en tant que marchand de référence.",
    "security": "Sécurité",
    "status": "État du service",
    "changelog": "Nouveautés",
    "cookieSettings": "Paramètres des cookies",
    "tools": "Outils d'échecs gratuits",
    "allTools": "Tous les outils gratuits",
    "pgnViewer": "Lecteur PGN",
    "boardEditor": "Éditeur d'échiquier et FEN",
    "pgnValidator": "Validateur PGN",
    "printableScoresheets": "Feuilles de partie à imprimer"
  },
  "about": {
    "kicker": "À propos de ScanChess",
    "title": "Un scanner de feuilles de partie fait par une petite équipe qui joue",
    "lead": "ScanChess transforme les photos de feuilles de partie manuscrites en PGN modifiable et vérifié selon les règles. Cette page dit qui le fait, pourquoi, comment la reconnaissance fonctionne et ce qu'elle ne fait pas.",
    "cta": "Numériser une feuille",
    "who": {
      "title": "Qui le développe",
      "body1": "ScanChess est fait par SudoAI, un petit studio logiciel. Il n'y a ni équipe commerciale ni service d'assistance : ceux qui écrivent le code lisent la boîte d'assistance et regardent chaque numérisation qu'un utilisateur signale comme fausse.",
      "body2": "Les guides du blog sont écrits par la même équipe et vérifiés au regard du manuel de la FIDE et des plateformes qu'ils décrivent."
    },
    "why": {
      "title": "Pourquoi il existe",
      "body": "Les parties sur échiquier finissent en pile de papier, et les saisir dans une base de données est si lent que la plupart ne sont jamais revues. Nous voulions que le passage de la photo d'une feuille à une partie rejouable prenne environ une minute, vérification comprise."
    },
    "how": {
      "title": "Comment fonctionne la reconnaissance",
      "steps": [
        "Un modèle de vision lit l'écriture sur chaque photo et propose un coup pour chaque case, avec un indice de confiance.",
        "Les coups proposés sont rejoués sur un échiquier avec chess.js. Un coup illégal dans sa position, ou sur lequel le modèle hésitait, est signalé. Rien n'est corrigé en silence.",
        "Vous comparez les coups signalés à votre feuille dans l'éditeur — retapez un coup, choisissez une des alternatives permises par les règles, insérez ou supprimez un coup — puis exportez le PGN ou enregistrez la partie."
      ],
      "note": "La qualité de la reconnaissance dépend de l'écriture, de la lumière et de la notation employée, nous ne donnons donc pas de chiffre de précision. Comptez vérifier quelques coups dans une partie ordinaire."
    },
    "not": {
      "title": "Ce qu'il ne fait pas",
      "items": [
        "Il ne garantit pas une transcription sans erreur. Un coup signalé est un coup à vérifier ; un coup non signalé peut malgré tout être faux si la mauvaise lecture était sûre d'elle.",
        "Il lit la notation algébrique standard (e4, Cf3). La notation descriptive (P-K4) et les lettres de pièces non latines ne sont pas converties.",
        "Il n'envoie pas vos parties sur Lichess ou Chess.com à votre place. Il vous donne un fichier .pgn standard, que ces sites et les logiciels de bureau importent.",
        "Numériser consomme des crédits et demande un compte. Le lecteur PGN, l'éditeur d'échiquier et le validateur PGN sont gratuits et fonctionnent sans connexion."
      ]
    },
    "links": {
      "title": "Ailleurs sur ce site",
      "security": "Sécurité — comment les envois et les comptes sont protégés, et comment signaler une faille",
      "status": "État du service — une vérification en direct du site et de l'API de numérisation",
      "changelog": "Nouveautés — ce qui a été livré et quand",
      "contact": "Contact — écrivez à l'équipe pour une mauvaise numérisation ou une question de facturation"
    }
  },
  "common": {
    "loading": "Chargement...",
    "error": "Erreur",
    "success": "Réussi",
    "cancel": "Annuler",
    "confirm": "Confirmer",
    "save": "Enregistrer",
    "delete": "Supprimer",
    "edit": "Modifier",
    "back": "Retour",
    "next": "Suivant",
    "prev": "Précédent",
    "language": "Langue",
    "optional": "facultatif",
    "closeMenu": "Fermer le menu",
    "copyFailed": "Échec de la copie",
    "pageNotFound": "Page introuvable",
    "returnHome": "Retour à l'accueil",
    "imgScoresheet": "Feuille de partie d'échecs",
    "imgBoard": "Échiquier",
    "imgDigitalBoard": "Échiquier numérique",
    "menu": "Menu",
    "versus": "contre",
    "sentenceEnd": "."
  },
  "notFound": {
    "description": "L'adresse est peut-être mal saisie, ou la page a été déplacée. Voici ce que la plupart des gens cherchent.",
    "tools": "Outils d'échecs gratuits"
  },
  "errors": {
    "INVALID_CREDENTIALS": "E-mail ou mot de passe incorrect.",
    "EMAIL_EXISTS": "Cette adresse est déjà enregistrée. Connectez-vous, ou utilisez le lien de réinitialisation si vous avez oublié le mot de passe.",
    "REAUTH_REQUIRED": "Ce mot de passe ou cette vérification de connexion ne correspond pas à ce compte.",
    "INVALID_RESET_TOKEN": "Ce lien de réinitialisation est invalide ou a expiré. Demandez-en un nouveau depuis la page de connexion.",
    "INVALID_VERIFICATION_TOKEN": "Ce lien de vérification est invalide ou a expiré. Connectez-vous pour en demander un autre.",
    "VERIFICATION_UNAVAILABLE": "Les e-mails de vérification ne peuvent pas être envoyés pour le moment. Veuillez réessayer plus tard.",
    "INVALID_GOOGLE_TOKEN": "Google n'a pas pu confirmer votre identité. Veuillez réessayer.",
    "GOOGLE_EMAIL_UNVERIFIED": "L'e-mail de votre compte Google n'est pas vérifié, il ne peut donc pas servir à se connecter.",
    "GOOGLE_LOGIN_DISABLED": "La connexion avec Google n'est pas disponible pour le moment.",
    "INVALID_INPUT": "Une partie des informations saisies n'est pas valide. Vérifiez-les et réessayez.",
    "NOT_FOUND": "Nous n'avons pas trouvé cet enregistrement.",
    "SESSION_EXPIRED": "Votre session a expiré. Veuillez vous reconnecter.",
    "EMAIL_NOT_VERIFIED": "Vérifiez votre adresse e-mail avant de dépenser des crédits.",
    "INSUFFICIENT_CREDITS": "Vous n'avez pas assez de crédits pour cette action.",
    "SUBSCRIPTION_ACTIVE": "Résiliez l'abonnement App Store actif avant de supprimer ce compte.",
    "CHECKOUT_FAILED": "Le paiement n'a pas pu être lancé. Veuillez réessayer dans un instant.",
    "CANCEL_FAILED": "L'abonnement n'a pas pu être résilié. Réessayez ou contactez l'assistance.",
    "server": "Quelque chose s'est mal passé de notre côté. Veuillez réessayer dans un instant.",
    "network": "ScanChess est injoignable. Vérifiez votre connexion et réessayez.",
    "generic": "Quelque chose s'est mal passé. Veuillez réessayer."
  },
  "resetPassword": {
    "title": "Réinitialiser le mot de passe",
    "checkingLink": "Vérification de votre lien…",
    "missingToken": "Il manque le jeton à ce lien. Demandez un nouvel e-mail de réinitialisation depuis la page de connexion ou l'application.",
    "goToSignIn": "Aller à la connexion",
    "done": "Mot de passe mis à jour. Connectez-vous avec le nouveau.",
    "confirmNew": "Confirmer le nouveau mot de passe",
    "submit": "Définir le nouveau mot de passe"
  },
  "boardRecognition": {
    "title": "Reconnaissance d'échiquier",
    "subtitle": "Envoyez l'image d'un échiquier, l'IA reconnaît la position et génère le FEN",
    "uploadTitle": "Envoyer l'image de l'échiquier",
    "uploadDesc": "Accepte les diagrammes, les photos d'échiquiers réels et les captures d'écran",
    "dragDrop": "Déposez ici l'image d'un échiquier",
    "orClick": "ou cliquez pour choisir",
    "tapUpload": "Touchez pour ajouter une photo d'échiquier",
    "uploadImageFirst": "Envoyez d'abord l'image d'un échiquier",
    "recognizing": "L'IA lit...",
    "recognize": "Reconnaître la position",
    "result": "Résultat de la reconnaissance",
    "confidence": "Confiance",
    "notes": "Remarques",
    "noResult": "Pas encore de résultat",
    "noResultDesc": "Envoyez l'image d'un échiquier pour lancer la reconnaissance",
    "recognitionSuccess": "Reconnaissance réussie",
    "recognitionSuccessDesc": "Position reconnue, coût {{credits}} crédit(s)",
    "recognitionFailed": "Échec de la reconnaissance",
    "insufficientCreditsDesc": "La reconnaissance coûte {{cost}} crédit(s), votre solde est de {{balance}}",
    "fenCopied": "FEN copié dans le presse-papiers",
    "copyFen": "Copier le FEN",
    "uncertainSquares": "Vérifiez les cases surlignées : {{squares}}",
    "invalidFen": "Format FEN invalide, une correction manuelle est peut-être nécessaire",
    "reset": "Réinitialiser l'échiquier",
    "feature1Title": "Plusieurs types d'images",
    "feature1Desc": "Accepte les diagrammes, les photos d'échiquiers réels et les captures numériques",
    "feature2Title": "Reconnaissance par IA",
    "feature2Desc": "Une IA avancée identifie précisément la position des pièces et génère un FEN standard",
    "feature3Title": "Copie en un clic",
    "feature3Desc": "Le résultat se copie directement pour être utilisé dans n'importe quel logiciel d'échecs",
    "flipBoard": "Retourner l'échiquier",
    "openInEditor": "Ouvrir dans l'éditeur d'échiquier",
    "analyseLichess": "Analyser sur Lichess"
  },
  "analysis": {
    "title": "Analyse du moteur",
    "depth": "Profondeur",
    "calculating": "Calcul en cours",
    "startAnalysis": "Lancer l'analyse",
    "stopAnalysis": "Arrêter l'analyse",
    "bestMove": "Meilleur coup",
    "evaluation": "Évaluation",
    "annotations": "Annotations",
    "comment": "Commentaire",
    "addComment": "Ajouter un commentaire...",
    "arrows": "Flèches",
    "arrowsHighlights": "Flèches et cases",
    "bookmark": "Signet",
    "symbols": "Symboles",
    "engineOff": "Moteur éteint",
    "engineLoading": "Chargement du moteur...",
    "engineReady": "Moteur prêt",
    "engineError": "Échec du moteur",
    "enable": "Allumer le moteur",
    "disable": "Éteindre le moteur",
    "unavailable": "Le moteur n'a pas pu se charger dans ce navigateur.",
    "lines": "Meilleures variantes",
    "noLegalMoves": "Aucun coup légal : la partie est terminée.",
    "reviewGame": "Analyser toute la partie",
    "reviewing": "Analyse de la position {{done}} sur {{total}}…",
    "stopReview": "Arrêter l'analyse",
    "accuracy": "Précision",
    "bestWas": "Le meilleur était {{san}}",
    "kind": {
      "book": "Théorie",
      "best": "Meilleur",
      "good": "Bon",
      "inaccuracy": "Imprécision",
      "mistake": "Erreur",
      "blunder": "Gaffe"
    },
    "poweredBy": "Stockfish 18 tourne dans votre navigateur ; rien n'est envoyé.",
    "licence": "Code source du moteur (GPL-3.0)",
    "linePreview": "Aperçu de la variante",
    "previewingLine": "Aperçu · coup {{current}} sur {{total}}",
    "exitPreview": "Quitter l'aperçu",
    "previewLineHint": "Jouer cette variante sur l'échiquier",
    "saveAsVariation": "Enregistrer comme variante"
  },
  "home": {
    "badge": "OCR de feuilles de partie par IA",
    "hero": {
      "titlePre": "Transformez vos feuilles manuscrites en",
      "titleMid": "",
      "titleEm": "PGN propre",
      "lead": "Photographiez votre feuille de partie. ScanChess transcrit chaque coup, le vérifie au regard des règles, signale ce dont il n'est pas sûr et vous rend un PGN modifiable qui fonctionne avec Lichess, Chess.com ou votre logiciel d'analyse.",
      "ctaPrimary": "Numériser votre feuille",
      "ctaSecondary": "Voir comment ça marche",
      "trust": "10 crédits gratuits pour les nouveaux comptes — sans carte.",
      "demoOriginal": "Manuscrite · l'original",
      "demoArrow": "L'IA lit et valide",
      "reviewBadge": "Vérifiée · modifiable"
    },
    "exportsLabel": "Compatible avec",
    "steps": {
      "kicker": "Comment ça marche",
      "title": "Du papier au PGN en trois étapes",
      "subtitle": "Pas de saisie, pas de recopie, pas d'apprentissage.",
      "s1title": "Photographiez la feuille",
      "s1desc": "Une photo nette, à plat et bien éclairée suffit — téléphone ou scanner, sans rien installer.",
      "s2title": "L'IA lit chaque coup",
      "s2desc": "ScanChess transcrit la notation et valide chaque coup sur l'échiquier au fur et à mesure.",
      "s3title": "Vérifiez et exportez",
      "s3desc": "Corrigez les coups signalés dans l'éditeur, puis téléchargez votre partie ou rejouez-la coup par coup."
    },
    "features": {
      "kicker": "Pourquoi ScanChess",
      "title": "Tout ce qu'il faut pour numériser vos parties",
      "f1title": "Lit votre écriture",
      "f1desc": "L'OCR par IA transforme la photo d'une feuille manuscrite en notation algébrique — même avec une écriture brouillonne, et tout ce qui reste douteux est signalé pour vérification.",
      "f2title": "Détecte les erreurs",
      "f2desc": "Chaque coup est vérifié au regard des règles et reste modifiable : les entrées illégales ou peu sûres sont signalées pour que vous les confirmiez avant d'exporter.",
      "f3title": "Exporte du PGN standard",
      "f3desc": "Téléchargez un fichier .pgn standard qui s'ouvre dans Lichess, Chess.com, ChessBase ou SCID.",
      "f4title": "Plus rapide que la saisie",
      "f4desc": "Une partie entière revient en général en bien moins d'une minute. Vérifier les quelques coups signalés prend bien moins de temps que de tout retaper."
    },
    "blog": {
      "kicker": "Du carnet",
      "title": "Guides sur la notation et le PGN",
      "all": "Tous les articles",
      "minRead": "min"
    },
    "cta": {
      "title": "Prêt à numériser vos feuilles de partie ?",
      "desc": "Envoyez votre première partie et obtenez en quelques secondes un PGN modifiable et vérifié.",
      "button": "Numériser votre feuille"
    }
  },
  "blog": {
    "pageTitle": "Blog ScanChess",
    "pageSubtitle": "Guides sur la notation aux échecs, les feuilles de partie, le PGN et la numérisation de vos parties.",
    "solutions": "Solutions",
    "allArticles": "Tous les articles",
    "searchLabel": "Rechercher des articles",
    "searchPlaceholder": "Rechercher des articles",
    "clearSearch": "Effacer la recherche",
    "resultCount_one": "{{count}} article",
    "resultCount_other": "{{count}} articles",
    "noResults": "Aucun article ne correspond. Essayez un autre mot ou retirez les filtres.",
    "minRead": "min de lecture",
    "keepReading": "Continuer la lecture",
    "diagramAlt": "Schéma du déroulement pour {{title}}",
    "sources": "Sources et notes de relecture",
    "reviewed": "Sources vérifiées le {{date}}",
    "ctaTitle": "Transformez votre feuille en PGN en quelques secondes",
    "ctaDesc": "Envoyez une photo et laissez ScanChess faire la transcription.",
    "ctaButton": "Scanner votre feuille de partie",
    "categories": {
      "Improvement": "Perfectionnement",
      "Guides": "Guides",
      "Notation": "Notation",
      "Comparison": "Comparatif",
      "Rules": "Règles",
      "Tools": "Outils",
      "Billing": "Facturation",
      "Statistics": "Statistiques"
    }
  },
  "blogTools": {
    "pgnTitle": "Essayez un PGN sur l’échiquier",
    "pgnLead": "L’exemple est chargé. Parcourez les coups, sélectionnez-en un ou copiez le FEN d’une position.",
    "fenTitle": "Décoder un FEN champ par champ",
    "fenLead": "Collez un FEN complet à six champs. L’échiquier et l’explication se mettent à jour localement.",
    "invalidFen": "Saisissez un FEN complet et valide à six champs.",
    "placement": "Placement des pièces",
    "placementHint": "Rangées 8 à 1 ; les lettres sont les pièces et les chiffres comptent les cases vides consécutives.",
    "sideToMove": "Trait",
    "sideToMoveHint": "w donne le trait aux Blancs ; b donne le trait aux Noirs.",
    "castling": "Droits de roque",
    "castlingHint": "K/Q sont les droits des Blancs, k/q ceux des Noirs ; un tiret signifie aucun.",
    "enPassant": "Case en passant",
    "enPassantHint": "La case franchie après un double pas de pion, pas la case occupée par le pion.",
    "halfmove": "Compteur de demi-coups",
    "halfmoveHint": "Demi-coups depuis le dernier mouvement de pion ou la dernière prise, pour la règle des cinquante coups.",
    "fullmove": "Numéro du coup",
    "fullmoveHint": "Commence à 1 et augmente après chaque coup des Noirs.",
    "white": "Blancs",
    "black": "Noirs",
    "none": "Aucun",
    "white-kingside": "Blancs, petit roque",
    "white-queenside": "Blancs, grand roque",
    "black-kingside": "Noirs, petit roque",
    "black-queenside": "Noirs, grand roque",
    "openEditor": "Ouvrir ce FEN dans l’éditeur",
    "sanTitle": "Lire la SAN sur un échiquier",
    "sanLead": "Sélectionnez chaque coup SAN pour voir comment il transforme la position.",
    "start": "Départ"
  },
  "solution": {
    "faqTitle": "Questions fréquentes",
    "alsoTitle": "Autres usages de ScanChess",
    "freeCredits": "10 crédits gratuits à l'inscription. Tarifs par volume :",
    "hubKicker": "Choisissez votre méthode",
    "hubTitle": "Solutions pour feuilles de partie et PGN",
    "hubIntro": "Partez du résultat dont vous avez besoin : saisir la notation, créer un PGN, archiver une collection ou accompagner un joueur.",
    "explore": "Voir la solution",
    "diagramAlt": "Déroulement ScanChess pour {{title}}",
    "clusters": {
      "capture": {
        "title": "Saisir une partie depuis le papier ou une photo",
        "description": "Transformez la notation manuscrite et les photos d'échiquier en données d'échecs structurées."
      },
      "convert": {
        "title": "Convertir en PGN standard",
        "description": "Créez un fichier de partie portable pour Lichess, Chess.com, ChessBase et SCID."
      },
      "archive": {
        "title": "Numériser et archiver des collections",
        "description": "Conservez les feuilles de tournoi et de club sous une forme numérique consultable."
      },
      "audiences": {
        "title": "Méthodes pour entraîneurs et familles",
        "description": "Gardez les parties sur échiquier d'un élève ou d'un enfant prêtes à être revues."
      }
    }
  },
  "howToUse": {
    "metaTitle": "Comment utiliser ScanChess - Guide de numérisation des feuilles de partie",
    "pageTitle": "Comment utiliser ScanChess",
    "pageSubtitle": "Numérisez votre feuille de partie en 5 étapes simples",
    "demoAlt": "Exemple de feuille de partie manuscrite",
    "demoCaption": "Une feuille de tournoi manuscrite typique, du genre que ScanChess lit",
    "shotAlts": [
      "Une feuille de tournoi manuscrite, photographiée à plat",
      "La zone d'envoi de la page de numérisation avec une image de feuille ajoutée et la ligne des limites",
      "La liste des coups après une numérisation : deux coups ambrés peu sûrs, un coup rouge illégal, un crayon à côté de chaque coup",
      "Modification du coup 4 sur place, avec les deux alternatives légales proposées par la reconnaissance",
      "Les boutons Enregistrer la partie, Exporter le PGN et Copier le PGN au-dessus de la carte de partage"
    ],
    "shotCaptions": [
      "Ce dont vous partez",
      "Étape 2 dans l'application",
      "Étapes 3 et 4 dans l'application",
      "Modifier un coup signalé",
      "Étape 5 dans l'application"
    ],
    "ctaTitle": "Prêt à commencer ?",
    "ctaSubtitle": "Envoyez votre première feuille dès maintenant",
    "ctaStart": "Commencer à numériser",
    "ctaFaq": "Voir la FAQ",
    "schemaName": "Numériser des feuilles de partie d'échecs avec ScanChess",
    "schemaDesc": "Convertir des feuilles de partie manuscrites en PGN grâce à l'IA",
    "steps": [
      {
        "title": "1. Prenez une photo",
        "description": "Photographiez votre feuille manuscrite avec votre téléphone ou un appareil photo. Veillez à un bon éclairage et à ce que les coups soient bien lisibles.",
        "tips": [
          "Gardez la photo à plat, sans inclinaison",
          "Vérifiez que tous les coups sont dans le cadre",
          "Les feuilles de plusieurs pages peuvent être photographiées séparément"
        ]
      },
      {
        "title": "2. Envoyez les images",
        "description": "Ajoutez des photos depuis votre téléphone ou votre ordinateur — touchez la zone d'envoi pour les choisir, ou faites glisser les fichiers dessus sur un ordinateur. JPG, PNG et WebP, jusqu'à 10 images par numérisation. Le HEIC (le format par défaut de l'iPhone) n'est pas encore pris en charge, convertissez-le d'abord.",
        "tips": [
          "Jusqu'à 15 Mo par image",
          "Les pages sont lues dans l'ordre affiché ; utilisez les flèches pour les réordonner avant de numériser",
          "Sur un téléphone, prenez la photo et envoyez-la directement"
        ]
      },
      {
        "title": "3. Reconnaissance par IA",
        "description": "Appuyez sur Numériser (le coût est indiqué, 2 crédits). Le modèle lit chaque case et rejoue les coups sur un échiquier au fur et à mesure. Une partie complète revient en général en bien moins d'une minute.",
        "tips": [
          "Le système vérifie la légalité de chaque coup",
          "Les coups peu sûrs sont signalés pour vérification",
          "Une numérisation coûte 2 crédits, quel que soit le nombre de pages envoyées"
        ]
      },
      {
        "title": "4. Vérifiez et modifiez",
        "description": "Prévisualisez les coups sur l'échiquier et utilisez le crayon à côté d'un coup pour le modifier. Les abréviations comme « dc » deviennent automatiquement « dxc5 ».",
        "tips": [
          "Les marques rouges indiquent des coups illégaux",
          "Les marques jaunes indiquent des coups peu sûrs — comparez-les à votre feuille",
          "Touchez un coup pour y aller ; sur un ordinateur, les flèches parcourent la partie"
        ]
      },
      {
        "title": "5. Exportez et enregistrez",
        "description": "Quand tout vous convient, exportez le fichier PGN ou copiez-le dans le presse-papiers. Il s'importe directement dans Chess.com, Lichess et d'autres.",
        "tips": [
          "Chaque numérisation réussie est enregistrée automatiquement dans votre historique",
          "Le PGN contient toutes les informations de la partie",
          "Partagez un lien vers la partie après l'avoir enregistrée"
        ]
      }
    ]
  },
  "seo": {
    "homeTitle": "ScanChess · Une position. Ou une partie entière.",
    "homeDesc": "OCR d’échecs pour les diagrammes et les feuilles de partie manuscrites : une photo devient une position à analyser ou une partie à rejouer. Vérifiez, puis jouez.",
    "scanTitle": "ScanChess · Numériser",
    "scanDesc": "Une image devient une position modifiable. Feuilles manuscrites vers PGN. Exemples préchargés : sans compte, sans requête OCR et sans crédit dépensé. Explorez et modifiez le résultat.",
    "aboutTitle": "À propos de ScanChess | Scanner de feuilles de partie par IA",
    "aboutDesc": "Découvrez comment ScanChess aide les joueurs, les arbitres et les clubs à numériser les feuilles de partie manuscrites en PGN.",
    "faqTitle": "FAQ ScanChess | OCR des feuilles de partie et conversion PGN",
    "faqDesc": "Réponses aux questions courantes sur ScanChess, l'OCR de la notation manuscrite, l'export PGN et les crédits de numérisation.",
    "blogTitle": "Guides sur les feuilles de partie et la notation | Blog ScanChess",
    "blogDesc": "Guides pour lire une feuille de partie, la notation algébrique (SAN), le PGN, les règles de la FIDE et la numérisation de vos parties avec ScanChess.",
    "privacyTitle": "Politique de confidentialité | ScanChess",
    "privacyDesc": "Comment ScanChess collecte, utilise, conserve et supprime vos données, y compris l'e-mail du compte, les images envoyées et les crédits.",
    "termsTitle": "Conditions d'utilisation | ScanChess",
    "termsDesc": "Les conditions régissant l'usage de ScanChess : comptes, crédits et achats, usage acceptable et suppression du compte.",
    "pricingTitle": "Tarifs | ScanChess Pro",
    "pricingDesc": "10 crédits gratuits pour commencer. Pro ajoute 100 crédits tous les 30 jours pour 4,99 $/mois ou 29,99 $/an ; Pro+ en ajoute 500 pour 19,99 $/mois ou 119,99 $/an.",
    "refundsTitle": "Politique de remboursement | ScanChess",
    "refundsDesc": "ScanChess ne rembourse pas : tous les paiements sont définitifs. Les exceptions, ce que sont les crédits et comment résilier à la place.",
    "contactTitle": "Contacter l'assistance ScanChess",
    "contactDesc": "Écrivez à support@scanchess.com pour la facturation, un remboursement, la suppression d'un compte ou une numérisation ratée.",
    "settingsTitle": "Paramètres du compte | ScanChess",
    "settingsDesc": "Crédits, abonnement, code de parrainage, langue, consentement analytique, export ou suppression de vos données.",
    "statusTitle": "État du service ScanChess",
    "statusDesc": "Vérifiez si le site ScanChess et l'API de numérisation répondent en ce moment.",
    "securityTitle": "Sécurité | ScanChess",
    "securityDesc": "Comment ScanChess protège vos données et comment signaler une faille.",
    "changelogTitle": "Nouveautés | ScanChess",
    "changelogDesc": "Ce qui a changé dans ScanChess, et quand.",
    "historyTitle": "Parties enregistrées | ScanChess",
    "historyDesc": "Vos parties enregistrées, synchronisées entre appareils — rechargez-en une sur l'échiquier ou exportez-la en PGN.",
    "howToUseTitle": "Comment utiliser ScanChess | ScanChess",
    "howToUseDesc": "Choisissez votre document et suivez les étapes d’importation, de vérification et d’exportation.",
    "toolsTitle": "Outils d'échecs gratuits en ligne – Lecteur PGN et plus",
    "toolsDesc": "Des outils d'échecs gratuits qui tournent dans le navigateur sans compte : lecteur PGN, éditeur d'échiquier et FEN, validateur PGN, feuilles à imprimer et plus encore.",
    "solutionsTitle": "Solutions pour feuilles de partie et PGN | ScanChess",
    "solutionsDesc": "Choisissez votre méthode : saisir la notation sur papier, la convertir en PGN standard, archiver une collection de club ou préparer les parties d'un élève.",
    "deleteAccountTitle": "Supprimer votre compte | ScanChess",
    "deleteAccountDesc": "Comment supprimer définitivement votre compte ScanChess, vos parties enregistrées et les images de feuilles que vous avez envoyées.",
    "authTitle": "Se connecter | ScanChess",
    "authDesc": "Connectez-vous à ScanChess pour enregistrer vos parties numérisées et gérer vos crédits de scan.",
    "resetTitle": "Réinitialiser le mot de passe | ScanChess",
    "resetDesc": "Définissez un nouveau mot de passe pour votre compte ScanChess.",
    "verifyEmailTitle": "Vérifier l'adresse e-mail | ScanChess",
    "verifyEmailDesc": "Vérifiez l'adresse e-mail de votre compte ScanChess.",
    "batchTitle": "Numérisation par lots des feuilles de partie | ScanChess",
    "batchDesc": "Numérisez une ronde entière d'un coup : importez toutes les feuilles, regroupez les pages et classez chaque partie dans votre bibliothèque."
  },
  "deleteAccount": {
    "title": "Supprimer votre compte",
    "intro": "Cela supprime votre compte ScanChess et tout ce qui y est stocké. Si vous voulez seulement vous déconnecter, utilisez le menu.",
    "warningTitle": "C'est irréversible",
    "warningGames": "Chaque partie enregistrée et chaque PGN de votre bibliothèque est supprimé.",
    "warningImages": "Chaque image de feuille que vous avez envoyée est supprimée.",
    "warningCredits": "Les crédits restants sont perdus et ne sont pas remboursables.",
    "warningSubscription": "Le renouvellement web est annulé avant la suppression. Un abonnement App Store actif doit d'abord être résilié auprès d'Apple, sinon la suppression est bloquée.",
    "manageSubscription": "Gérer l'abonnement",
    "warningIrreversible": "La suppression est immédiate et définitive — nous ne pouvons pas restaurer le compte ensuite.",
    "confirmPrompt": "Pour confirmer, saisissez votre adresse e-mail :",
    "passwordPrompt": "Saisissez votre mot de passe actuel",
    "providerPrompt": "Ou vérifiez-vous à nouveau auprès de votre fournisseur de connexion",
    "providerVerified": "Identité vérifiée pour la suppression du compte",
    "button": "Supprimer définitivement mon compte",
    "signInFirst": "Connectez-vous au compte que vous voulez supprimer, puis revenez sur cette page.",
    "noAccessNote": "Vous n'avez plus accès au compte ? Écrivez-nous et nous nous en occupons :",
    "doneTitle": "Compte supprimé",
    "doneDesc": "Votre compte et toutes les données associées ont été supprimés.",
    "failedTitle": "Le compte n'a pas pu être supprimé",
    "failedDesc": "Quelque chose s'est mal passé. Réessayez ou écrivez à support@scanchess.com.",
    "proofRequired": "Pour supprimer le compte, nous devons vérifier qu'il est bien le vôtre : votre mot de passe actuel ou une connexion Google récente.",
    "appleTitle": "Connecté avec Apple ?",
    "appleDesc": "La connexion avec Apple ne fonctionne que dans l'application iOS, cette page ne peut donc pas vérifier un compte uniquement Apple. Écrivez-nous depuis l'adresse du compte et nous le supprimerons pour vous.",
    "requestByEmail": "Demander la suppression par e-mail",
    "emailSubject": "Demande de suppression de compte ({{email}})",
    "emailBody": "Merci de supprimer mon compte ScanChess {{email}} et toutes les données qui y sont associées. Je comprends que c'est irréversible."
  },
  "cookies": {
    "title": "Choix concernant les cookies",
    "body": "Nous utilisons Google Analytics et Microsoft Clarity pour voir comment le site est utilisé. Clarity enregistre vos déplacements sur une page.",
    "accept": "Accepter",
    "decline": "Refuser",
    "learnMore": "Comment nous utilisons vos données",
    "currentlyOn": "L'analyse est actuellement activée.",
    "currentlyOff": "L'analyse est actuellement désactivée."
  },
  "pricing": {
    "checkoutSuccessTitle": "Paiement confirmé",
    "checkoutSuccessDesc": "Votre abonnement et votre solde de crédits sont à jour.",
    "title": "Des tarifs simples",
    "subtitle": "Des crédits de numérisation et toute votre bibliothèque de parties, sur chaque appareil.",
    "perMonth": "/mois",
    "perYear": "/an",
    "yearlyNote": "Moitié moins cher que le paiement mensuel",
    "bestValue": "Meilleur rapport",
    "billing": {
      "monthly": "Mensuel",
      "yearly": "Annuel",
      "yearlySave": "−50 %"
    },
    "tiers": {
      "pro": "Pro",
      "proplus": "Pro+"
    },
    "tierCredits": {
      "pro": "100 crédits tous les 30 jours — environ 50 feuilles",
      "proplus": "500 crédits tous les 30 jours — environ 250 feuilles"
    },
    "subscribe": "S'abonner",
    "signInToSubscribe": "Connectez-vous pour vous abonner",
    "included": "Ce que Pro ajoute",
    "smallPrint": "Facturé en USD et renouvelé automatiquement au même prix — les formules mensuelles chaque mois, les annuelles chaque année — jusqu'à résiliation. Résiliez quand vous voulez sur cette page : Pro reste actif jusqu'à la fin de la période payée et rien ne vous est prélevé ensuite. Tous les paiements sont définitifs et non remboursables sauf si la loi l'exige — voir notre politique de remboursement. Les taxes sont calculées au paiement par Waffo, notre marchand de référence, qui est le vendeur pour les achats web.",
    "manage": {
      "title": "Votre abonnement",
      "activeUntil": "Pro est actif jusqu'au {{date}}. Il se renouvelle automatiquement sauf résiliation.",
      "cancel": "Résilier l'abonnement",
      "cancelNote": "La résiliation arrête le prochain prélèvement. Vous gardez Pro — et les crédits déjà sur votre solde — jusqu'à la fin de la période payée.",
      "canceledTitle": "Abonnement résilié",
      "canceledDesc": "Rien ne vous sera prélevé. Pro reste actif jusqu'à la fin de la période payée.",
      "cancelFailedTitle": "La résiliation a échoué",
      "cancelFailedDesc": "Réessayez, ou écrivez à support@scanchess.com et nous résilierons pour vous.",
      "titleWithPlan": "Vous êtes en {{plan}}",
      "appStoreNote": "Cet abonnement a été acheté dans l'application iOS. Gérez-le ou résiliez-le dans les réglages d'abonnement de votre identifiant Apple.",
      "passTitle": "Vous détenez un {{plan}}",
      "passActiveUntil": "Pro est actif jusqu'au {{date}}. Rien ne se renouvelle ni n'est prélevé à la fin.",
      "passNote": "Pour le prolonger, achetez un autre pass ci-dessous — les jours restants sont reportés."
    },
    "failedTitle": "Le paiement n'a pas pu démarrer",
    "failedDesc": "Veuillez réessayer dans un instant.",
    "plans": {
      "pro_monthly": "Pro mensuel",
      "pro_yearly": "Pro annuel",
      "proplus_monthly": "Pro+ mensuel",
      "proplus_yearly": "Pro+ annuel",
      "pro_pass_365": "Pass Pro annuel"
    },
    "benefits": {
      "credits": "Des crédits tous les 30 jours — 100 en Pro, 500 en Pro+ — ajoutés à votre solde à la connexion",
      "history": "Toute votre bibliothèque de parties, synchronisée entre appareils",
      "export": "Export PGN et relecture interactive",
      "priority": "Les nouveautés en avant-première"
    },
    "free": {
      "name": "Gratuit",
      "price": "0 $",
      "period": "pour commencer",
      "note": "10 crédits à l'inscription — sans carte",
      "cta": "Numériser une feuille",
      "signUpCta": "Commencer gratuitement — s'inscrire",
      "includedNote": "Ce dont dispose tout compte, avant même Pro.",
      "priceCn": "0 ¥"
    },
    "credits": {
      "title": "Comment fonctionnent les crédits",
      "intro": "Les crédits sont la seule chose que vous dépensez sur ScanChess. Tout nouveau compte démarre avec 10 crédits gratuits, et les crédits n'expirent jamais.",
      "colAction": "Ce que vous faites",
      "colCost": "Coût",
      "rows": {
        "scoresheet": "Photo de feuille → PGN",
        "scoresheetCost": "2 crédits",
        "board": "Photo d'échiquier → FEN",
        "boardCost": "1 crédit",
        "other": "Édition, relecture, export PGN, historique des parties",
        "otherCost": "Gratuit"
      },
      "topUp": "Pro ajoute 100 crédits tous les 30 jours — environ 50 feuilles — et Pro+ en ajoute 500. Le versement arrive quand vous vous connectez une fois les 30 jours écoulés, et les crédits inutilisés restent sur votre solde.",
      "perScanMonthly": "Sur les formules mensuelles, cela revient à environ 0,05 $ par crédit en Pro et 0,04 $ en Pro+ — soit à peu près 0,10 $ la feuille en Pro et 0,08 $ en Pro+.",
      "perScanYearly": "Sur les formules annuelles, cela revient à environ 0,02 $ par crédit en Pro comme en Pro+ — soit à peu près 0,05 $ la feuille en Pro et 0,04 $ en Pro+, moitié moins qu'au tarif mensuel.",
      "perScanPass": "Le pass Pro annuel revient à environ 0,08 ¥ par crédit — soit à peu près 0,17 ¥ la feuille."
    },
    "support": {
      "title": "Des questions sur la facturation ?",
      "body": "Pour toute question sur un prélèvement, un remboursement ou votre solde de crédits, écrivez-nous à"
    },
    "help": {
      "credits": "Comment fonctionnent les crédits",
      "cancel": "Comment résilier",
      "compare": "Gratuit ou Pro",
      "refunds": "Politique de remboursement (aucun remboursement)"
    },
    "currentPlan": "Votre formule",
    "currentPlanButton": "Formule actuelle",
    "switchPlan": "Passer à cette formule",
    "switchNote": "Le changement ouvre le paiement de la nouvelle formule ; rien ne change tant que vous ne l'avez pas terminé. Ensuite, nous arrêtons le renouvellement de la formule précédente sur demande, et passer à une formule supérieure libère aussitôt le plus gros quota de crédits.",
    "appStoreSwitchDesc": "Cet abonnement a été acheté dans l'application iOS, c'est donc Apple qui doit le modifier. Ouvrez les réglages d'abonnement de votre identifiant Apple pour changer de formule.",
    "overlapTitle": "Vous avez déjà un accès Pro actif",
    "overlapDesc": "Résiliez l'abonnement en cours et attendez la fin de la période payée avant d'acheter une autre formule. Cela évite des prélèvements qui se chevauchent.",
    "checkout": {
      "processingTitle": "Confirmation de votre paiement",
      "processingDesc": "Waffo nous informe de votre paiement. Cela prend en général moins d'une minute ; vous pouvez laisser cette page ouverte.",
      "pendingTitle": "Toujours en cours",
      "pendingDesc": "Votre paiement met plus de temps que d'habitude à nous parvenir. Votre formule s'activera automatiquement dès qu'il arrivera — actualisez dans un instant pour vérifier, ou écrivez-nous s'il ne s'est rien passé après quelques minutes.",
      "refresh": "Vérifier à nouveau",
      "contactSupport": "Contacter l'assistance"
    },
    "subscriptionUnknownTitle": "Impossible de vérifier votre abonnement",
    "subscriptionUnknownDesc": "Nous n'avons pas pu charger les détails de votre abonnement. Réessayez avant de changer de formule.",
    "retry": "Réessayer",
    "switchDoneDesc": "Votre nouvelle formule est active. Votre formule précédente ({{previous}}) est toujours programmée pour se renouveler — voyez ci-dessous comment l'arrêter.",
    "switchDoneNote": "Votre formule précédente ({{previous}}) est toujours programmée pour se renouveler. Nous l'arrêtons pour vous — envoyez-nous la demande ci-dessous et ce sera fait le jour même, avant tout nouveau prélèvement.",
    "switchStopPrevious": "Nous demander d'arrêter la formule précédente",
    "switchEmailSubject": "Arrêter le renouvellement de ma formule précédente ({{previous}})",
    "switchEmailBody": "Je suis passé de {{previous}} à {{current}} sur ScanChess ({{email}}). Merci d'arrêter le renouvellement de la formule précédente.",
    "switchPreviousCanceledDesc": "Votre nouvelle formule est active. Votre formule précédente ({{previous}}) a été arrêtée et ne se renouvellera pas.",
    "switchPreviousNoneDesc": "Votre nouvelle formule est active. Votre formule précédente ({{previous}}) était déjà arrêtée — plus rien ne sera prélevé pour elle.",
    "switchPreviousCancelFailedTitle": "Nouvelle formule active, mais l'ancienne se renouvelle encore",
    "switchPreviousCancelFailedDesc": "Nous n'avons pas pu arrêter {{previous}} automatiquement. Utilisez la demande ci-dessous et nous l'arrêterons avant tout nouveau prélèvement.",
    "allAccountsNote": "Tout compte — gratuit ou payant — dispose de l'édition, de la relecture interactive, de l'export PGN et de l'historique des parties.",
    "market": {
      "label": "Boutique",
      "global": "International",
      "globalDetail": "USD · carte / Apple Pay / Google Pay",
      "cn": "Chine continentale",
      "cnDetail": "CNY · WeChat Pay",
      "showingGlobal": "Prix en USD, payés par carte, Apple Pay ou Google Pay.",
      "switchToCn": "En Chine continentale ? Afficher les prix en CNY avec WeChat Pay.",
      "showingCn": "Prix pour la Chine continentale en CNY, payés en une fois avec WeChat Pay.",
      "switchToGlobal": "Pas en Chine continentale ? Afficher les prix internationaux."
    },
    "pass": {
      "period": "/an, payé en une fois",
      "noRenew": "Ne se renouvelle pas",
      "buy": "Payer avec WeChat",
      "extend": "Ajouter une année",
      "signInToBuy": "Connectez-vous pour acheter",
      "note": "Un pass se paie une fois et dure 365 jours ; rien n'est prélevé à la fin. Pour le prolonger, achetez-en un autre — les jours restants sont reportés.",
      "holderSwitchDesc": "Votre pass est encore en cours. Abonnez-vous une fois qu'il sera terminé pour ne pas payer deux fois les mêmes jours.",
      "listPrice": "Prix affiché {{price}}"
    },
    "smallPrintCn": "La boutique Chine continentale est en CNY et se paie en une fois avec WeChat Pay. Vous achetez un pass Pro de 365 jours : il ne se renouvelle pas et il n'y a rien à résilier ; rachetez-en un pour le prolonger, les jours restants sont reportés. Tous les paiements sont définitifs et non remboursables sauf si la loi applicable l'exige — voir la politique de remboursement. La taxe est calculée au paiement par notre revendeur Waffo, marchand de référence pour les achats web."
  },
  "settings": {
    "title": "Paramètres",
    "subtitle": "Votre compte, votre formule et ce qu'il advient de vos données.",
    "account": "Compte",
    "memberSince": "Membre depuis",
    "password": "Mot de passe",
    "sendReset": "M'envoyer un lien de réinitialisation",
    "resetSent": "Lien envoyé",
    "resetSentDesc": "Consultez votre boîte de réception et suivez le lien pour définir un nouveau mot de passe.",
    "resetFailed": "L'e-mail de réinitialisation n'a pas pu être envoyé",
    "plan": "Formule et crédits",
    "currentPlan": "Formule actuelle",
    "upgrade": "Voir les formules",
    "refresh": "Actualiser",
    "referral": "Inviter des amis",
    "preferences": "Préférences",
    "analytics": "Cookies d'analyse",
    "analyticsAccepted": "Acceptés",
    "analyticsDeclined": "Refusés",
    "analyticsUnset": "Pas encore choisi",
    "analyticsOn": "Analyse activée",
    "analyticsOff": "Analyse désactivée",
    "analyticsNote": "Google Analytics et Microsoft Clarity ne tournent que tant que ceci est activé. Là où un consentement préalable est requis — EEE, Royaume-Uni, Suisse — ils restent éteints jusqu'à ce que vous acceptiez. Détails dans la",
    "yourData": "Vos données",
    "yourDataDesc": "Emportez vos parties, ou demandez-nous tout ce que nous conservons.",
    "exportGames": "Télécharger toutes les parties ({{count}})",
    "exportEmpty": "Aucune partie enregistrée à exporter pour l'instant",
    "exportDone": "{{count}} parties exportées",
    "exportFailed": "Vos parties n'ont pas pu être exportées. Veuillez réessayer.",
    "dangerZone": "Actions sur le compte",
    "displayName": "Nom affiché",
    "displayNamePlaceholder": "Votre nom",
    "nameSaved": "Nom mis à jour",
    "nameFailed": "Le nom n'a pas pu être enregistré",
    "passwordDesc": "Le changer demande votre mot de passe actuel. Connecté avec Apple ou Google ? Utilisez plutôt le lien de réinitialisation.",
    "currentPassword": "Mot de passe actuel",
    "newPassword": "Nouveau mot de passe",
    "changePassword": "Changer le mot de passe",
    "passwordChanged": "Mot de passe changé",
    "passwordChangedDesc": "Vous avez été déconnecté sur tous les appareils. Reconnectez-vous avec le nouveau mot de passe.",
    "passwordFailed": "Le mot de passe n'a pas pu être changé",
    "passwordMismatch": "Les nouveaux mots de passe ne correspondent pas",
    "passwordTooShort": "Le nouveau mot de passe doit comporter au moins 6 caractères",
    "billingHistory": "Historique de facturation",
    "billingHistoryDesc": "Ce que nous avons enregistré sur votre compte. Les reçus sont envoyés par Waffo.",
    "payment": {
      "paid": "Payé",
      "canceled": "Annulé",
      "refunded": "Remboursé"
    },
    "receiptNote": "Besoin d'un reçu ou d'une facture ? Répondez à l'e-mail de Waffo, ou écrivez à l'assistance avec le numéro de commande.",
    "analyticsDefaultOn": "Activée par défaut dans votre région",
    "analyticsDefaultOff": "Désactivée tant que vous n'acceptez pas",
    "passwordSignsOutNote": "Changer votre mot de passe vous déconnecte sur tous les appareils, y compris celui-ci.",
    "passwordConfirmTitle": "Changer le mot de passe et se déconnecter partout ?",
    "passwordConfirmDesc": "Tous les appareils connectés à ce compte, y compris celui-ci, seront déconnectés. Vous serez conduit à la page de connexion pour continuer avec le nouveau mot de passe.",
    "exportGamesAll": "Télécharger toutes les parties",
    "requestData": "Demander une copie de mes données",
    "dataRights": "Pour tout autre droit relatif aux données, écrivez à "
  },
  "status": {
    "title": "État du service",
    "subtitle": "Vérifié en direct depuis votre navigateur à l'ouverture de cette page — ce n'est pas un chiffre que nous avons saisi.",
    "checking": "Vérification",
    "up": "Joignable",
    "down": "Injoignable",
    "recheck": "Vérifier à nouveau",
    "checkedAt": "Dernière vérification {{time}}",
    "downTitle": "L'API ne répond pas depuis ici",
    "downBody": "La numérisation et la connexion échoueront jusqu'à son retour. Si cela dure plus de quelques minutes, dites-le-nous à",
    "honestTitle": "Ce qu'est cette page, honnêtement",
    "honestBody": "Nous ne publions pas de taux de disponibilité, parce que nous n'en mesurons aucun. Cette page pose à l'API la même question que votre navigateur quand vous numérisez, et affiche la réponse. Un échec ici peut aussi venir de votre réseau ou d'une requête bloquée.",
    "website": "Site web",
    "api": "API de scan et de compte",
    "footnote": "Le chiffre du site web correspond au temps de réponse du HTML de cette page ; le chiffre de l'API est une requête /api/health en direct.",
    "failingHint": "Un scan échoue ? Consultez la "
  },
  "changelog": {
    "title": "Nouveautés",
    "subtitle": "Ce qui a changé, et quand.",
    "feedback": "Quelque chose que vous aimeriez voir changer ?"
  },
  "savedGame": {
    "title": "Partie enregistrée",
    "body": "Vous regardez une partie de votre bibliothèque. L'édition et l'export sont gratuits — la renumériser ne ferait que dépenser des crédits pour une partie que vous avez déjà.",
    "newScan": "Numériser une nouvelle feuille",
    "backToLibrary": "Retour à mes parties"
  },
  "tools": {
    "common": {
      "home": "ScanChess",
      "load": "Charger",
      "clear": "Effacer",
      "copy": "Copier",
      "copied": "Copié dans le presse-papiers",
      "copyFailed": "Copie impossible — sélectionnez et copiez à la main",
      "download": "Télécharger",
      "share": "Lien de partage",
      "shareCopied": "Lien de partage copié",
      "embed": "Intégrer",
      "embedCopied": "Code d'intégration copié",
      "openInEditor": "Ouvrir dans l'éditeur d'échiquier",
      "openInViewer": "Ouvrir dans le lecteur PGN",
      "analyzeLichess": "Analyser sur Lichess",
      "flipBoard": "Retourner l'échiquier",
      "chooseFile": "Choisir un fichier",
      "dropHint": "ou déposez un fichier ici",
      "pasteHint": "ou collez les coups ci-dessus",
      "loadSample": "Charger un exemple",
      "navStart": "Première position",
      "navPrev": "Coup précédent",
      "navNext": "Coup suivant",
      "navEnd": "Dernière position",
      "featuresTitle": "Ce que fait cet outil",
      "faqTitle": "Questions fréquentes",
      "relatedTools": "Autres outils gratuits",
      "relatedGuides": "Guides pour cet outil",
      "allTools": "Tous les outils",
      "fen": "FEN",
      "privacyNote": "Fonctionne dans votre navigateur. Rien n'est envoyé.",
      "openTool": "Ouvrir l'outil",
      "white": "Blancs",
      "black": "Noirs",
      "scanStripBoard": "Une capture ou une photo de cette position ? Scannez-la et l'échiquier se place tout seul.",
      "scanStripScoresheet": "La partie est sur une feuille de notation papier ? Scannez-la en PGN au lieu de la retaper.",
      "scanStripAction": "Scanner une image",
      "scanStripSample": "Essayer l'exemple gratuit",
      "pasteFirst": "Collez d'abord un PGN ci-dessus, choisissez un fichier ou chargez l'exemple."
    },
    "viewer": {
      "placeholder": "Collez un PGN ici — par exemple :\n\n[Event \"Partie amicale\"]\n[White \"Anderssen\"]\n[Black \"Kieseritzky\"]\n\n1. e4 e5 2. f4 exf4 3. Fc4 Dh4+ ...",
      "gameSelect": "Partie",
      "gameCount": "{{count}} parties dans le fichier",
      "movesTitle": "Coups",
      "headersTitle": "Détails de la partie",
      "noMoves": "Aucun coup chargé pour l'instant. Collez un PGN ci-dessus et appuyez sur Charger.",
      "parseFailed": "Aucun coup n'a pu être lu dans ce texte.",
      "stoppedAt": "Arrêté à {{label}} {{token}} — ce coup n'est pas légal ici. Ouvrez le validateur pour les détails.",
      "downloadPgn": "Télécharger le PGN",
      "currentFen": "Position actuelle",
      "result": "Résultat",
      "openValidator": "Vérifier dans le validateur",
      "startPosition": "Position initiale"
    },
    "editor": {
      "startPosition": "Position initiale",
      "emptyBoard": "Échiquier vide",
      "fenInput": "Collez un FEN pour le charger",
      "fenLoad": "Charger le FEN",
      "fenInvalid": "Ce FEN n'est pas valide : {{reason}}",
      "turn": "Trait aux",
      "white": "Blancs",
      "black": "Noirs",
      "castling": "Droits de roque",
      "epSquare": "Case de prise en passant",
      "epNone": "Aucune",
      "downloadPng": "Télécharger le PNG",
      "swapColours": "Échanger les couleurs",
      "tray": "Pièces",
      "trayHint": "Faites glisser une pièce sur l'échiquier, ou sélectionnez-en une et touchez les cases. Faites glisser une pièce hors de l'échiquier pour la retirer.",
      "eraser": "Gomme",
      "playable": "La position est légale et jouable",
      "notPlayable": "La position n'est pas jouable",
      "status": {
        "checkmate": "Échec et mat : les {{side}} sont mats.",
        "stalemate": "Pat : les {{side}} n'ont aucun coup légal.",
        "check": "Trait aux {{side}}, en échec.",
        "normal": "Trait aux {{side}}."
      },
      "problems": {
        "pawn-back-rank": "Les pions ne peuvent pas se trouver sur la première ni la huitième rangée.",
        "white-king-count": "Les Blancs doivent avoir exactement un roi.",
        "black-king-count": "Les Noirs doivent avoir exactement un roi.",
        "opponent-in-check": "Le camp qui n'a pas le trait est en échec.",
        "unplayable": "Un moteur d'échecs ne peut pas charger cette position."
      },
      "selectedPiece": "Placement : {{piece}}",
      "pieceNames": {
        "wK": "roi blanc",
        "wQ": "dame blanche",
        "wR": "tour blanche",
        "wB": "fou blanc",
        "wN": "cavalier blanc",
        "wP": "pion blanc",
        "bK": "roi noir",
        "bQ": "dame noire",
        "bR": "tour noire",
        "bB": "fou noir",
        "bN": "cavalier noir",
        "bP": "pion noir"
      },
      "pngFailed": "L'image n'a pas pu être générée dans ce navigateur."
    },
    "validator": {
      "placeholder": "Collez un PGN ou une simple liste de coups, par ex.\n\n1. e4 e5 2. Cf3 Cc6 3. Fb5 a6 4. Fa4 Cf6 5. 0-0 Fe7 ...",
      "validate": "Valider",
      "okTitle": "Les {{count}} coups sont légaux",
      "okBody": "La partie se déroule sans accroc depuis la position initiale. Résultat : {{result}}.",
      "errorTitle": "Coup illégal à {{label}} {{token}}",
      "errorBody": "{{count}} coups étaient légaux avant celui-ci. Les coups légaux dans cette position sont listés ci-dessous.",
      "warningsTitle": "Notation corrigée automatiquement",
      "warningsBody": "{{count}} éléments ont été réécrits en SAN standard.",
      "legalMoves": "Coups légaux ici",
      "rewritten": "{{token}} → {{replacement}}",
      "trailing": "{{count}} coups après l'erreur n'ont pas été vérifiés.",
      "unknownToken": "Élément non reconnu « {{token}} » ignoré.",
      "cleanedTitle": "PGN nettoyé",
      "downloadPgn": "Télécharger le PGN",
      "empty": "Collez d'abord quelques coups.",
      "openViewer": "Rejouer dans le lecteur",
      "boardAtError": "Position au moment de l'arrêt",
      "movesPlayed": "Coups joués",
      "tokens": "Éléments lus"
    },
    "analysis": {
      "summaryTitle": "Résumé de l'analyse",
      "white": "Blancs",
      "black": "Noirs",
      "accuracy": "Précision"
    },
    "rating": {
      "currentRating": "Votre classement actuel",
      "kFactor": "Coefficient de développement",
      "kReasons": {
        "new-player": "30 premières parties",
        "junior": "junior sous 2300",
        "reached-2400": "a atteint 2400",
        "standard": "standard",
        "manual": "réglé à la main"
      },
      "newPlayer": "Je joue encore mes 30 premières parties classées",
      "junior": "Junior (jusqu'à la fin de l'année de mes 18 ans)",
      "reached2400": "Mon classement a atteint 2400",
      "budgetNote": "K passe de {{base}} à {{k}} car K multiplié par le nombre de parties ne peut pas dépasser 700.",
      "minimumNote": "La FIDE publie les classements à partir de {{minimum}} ; en dessous, un joueur est indiqué non classé.",
      "opponents": "Parties",
      "addGame": "Ajouter une partie",
      "round": "N°",
      "opponentRating": "Adversaire",
      "opponentRatingFor": "Classement de l'adversaire à la ronde {{round}}",
      "result": "Résultat",
      "expected": "Attendu (D)",
      "removeGame": "Retirer la ronde {{round}}",
      "results": {
        "win": "1",
        "draw": "½",
        "loss": "0"
      },
      "noGames": "Ajoutez une partie pour voir la variation de classement.",
      "newRating": "Nouveau classement",
      "scored": "Marqué",
      "expectedTotal": "Total attendu",
      "deltaSum": "Somme du score moins l'attendu",
      "rawChange": "Avant arrondi",
      "performance": "Performance",
      "howTitle": "Comment c'est calculé",
      "howBody": "Le score attendu de chaque partie vient de la table 8.1.2 de la FIDE, pas de la courbe logistique, pour que les chiffres correspondent à la liste publiée. Les écarts sont additionnés puis multipliés par K, et arrondis à l'entier, les demis s'écartant de zéro.",
      "capNote": "Un écart de classement supérieur à 400 points compte pour 400 chez les joueurs classés sous {{threshold}}. À partir de {{threshold}}, l'écart réel est utilisé, un changement entré en vigueur le 1er octobre 2025."
    },
    "diagram": {
      "previewAlt": "La position sous forme de diagramme",
      "startPosition": "Position initiale",
      "sizeLabel": "Taille de l'image",
      "themeLabel": "Couleurs de l'échiquier",
      "themes": {
        "classic": "Brun classique",
        "green": "Vert tournoi",
        "blue": "Bleu",
        "walnut": "Noyer",
        "slate": "Ardoise"
      },
      "coordinates": "Afficher les coordonnées",
      "downloadPng": "Télécharger le PNG",
      "downloadSvg": "Télécharger le SVG",
      "copySvg": "Copier le code SVG",
      "exportNote": "Le diagramme est dessiné dans votre navigateur à partir de pièces vectorielles. Sans filigrane, sans attribution requise."
    },
    "gif": {
      "idle": "Choisissez vos réglages et appuyez sur Créer pour générer l'animation.",
      "previewAlt": "La partie sous forme d'échiquier animé",
      "rendering": "Dessin de l'image {{done}} sur {{total}}",
      "fileSize": "{{size}} Ko",
      "moveCount": "{{count}} demi-coups dans cette partie",
      "fromMove": "Du demi-coup",
      "toMove": "Au demi-coup",
      "frameLimit": "Réduit à {{max}} images ; resserrez la plage pour animer une autre partie.",
      "sizeLabel": "Taille des images",
      "speedLabel": "Vitesse",
      "speeds": {
        "slow": "Lente",
        "normal": "Normale",
        "fast": "Rapide"
      },
      "highlight": "Colorer les cases touchées par chaque coup",
      "build": "Créer ({{count}} images)",
      "download": "Télécharger le GIF",
      "privacyNote": "Les images sont dessinées et le GIF encodé sur votre appareil. Rien n'est envoyé.",
      "failed": "Le GIF n'a pas pu être créé. Essayez une taille plus petite ou une plage plus courte."
    },
    "print": {
      "columnsLabel": "Colonnes",
      "columns": "{{count}} colonnes",
      "diagramsLabel": "Diagrammes",
      "diagramModes": {
        "none": "Aucun diagramme",
        "final": "Position finale seulement",
        "every10": "Tous les 10 coups",
        "every20": "Tous les 20 coups"
      },
      "paperLabel": "Papier",
      "letter": "US Letter",
      "showTags": "Inclure les balises PGN",
      "printButton": "Imprimer / Enregistrer en PDF",
      "saveHint": "Dans la boîte d'impression, choisissez « Enregistrer au format PDF » comme destination.",
      "afterMove": "Après {{move}} {{san}}"
    },
    "hub": {
      "badge": "Free Chess Tools · No Login · Runs in Browser",
      "title": "Free Online Chess Tools & Utilities",
      "subtitle": "A suite of fast, privacy-first tools for chess players, coaches, and arbiters. Review a game with the engine, replay and clean PGNs, work out a rating change, export diagrams and animations, and print tournament-standard scoresheets.",
      "trustFree": "100% Free Forever",
      "trustLocal": "Runs in Browser · Zero Upload",
      "trustNoAccount": "No Account Needed",
      "clientSide": "Free & Client-Side",
      "benefitsKicker": "Engineered for Chess Enthusiasts",
      "benefitsTitle": "Fast, Secure, and Built for Everyday Play",
      "benefitPrivacyTitle": "Zero Data Storage",
      "benefitPrivacyDesc": "Everything processes client-side using JavaScript. Your tournament prep and private moves remain 100% confidential.",
      "benefitSpeedTitle": "Lightning Fast & Clean",
      "benefitSpeedDesc": "No bloated ads, no paywalls, and no pop-ups. Optimized for distraction-free study and fast coaching workflows.",
      "benefitBridgeTitle": "Bridging Paper to Digital",
      "benefitBridgeDesc": "From printing blank score sheets to scanning finished games with AI, we complete the entire tournament workflow.",
      "ctaTitle": "Have a Handwritten Scoresheet to Digitize?",
      "ctaDesc": "Skip typing moves one by one. ScanChess uses vision AI to turn your paper scoresheets into replayable games in seconds.",
      "ctaButton": "Try the AI Scoresheet Scanner",
      "faq": {
        "q1": "Are these chess tools completely free with no sign-up required?",
        "a1": "Yes, 100% free with no account creation and no usage limits. Every tool runs directly in your browser.",
        "q2": "Does ScanChess upload my PGN files or custom board positions to a server?",
        "a2": "No. All PGN parsing, move validation, and diagram rendering happen entirely inside your web browser. Nothing leaves your device.",
        "q3": "How do I convert a physical, handwritten paper scoresheet into digital PGN?",
        "a3": "Use ScanChess AI scanner. Photograph your scoresheet with your smartphone, and the AI will read the handwriting, validate the moves, and produce an exportable digital PGN.",
        "q4": "Can I use these tools on my phone or tablet?",
        "a4": "Yes. All tools are touch-friendly and fully responsive on iOS, Android, tablets, and desktop computers."
      }
    },
    "badges": {
      "pgn-viewer": [
        "Keyboard Navigation",
        "Multi-game PGN",
        "FEN Export"
      ],
      "board-editor": [
        "Live FEN",
        "Legality Checks",
        "PNG Export"
      ],
      "pgn-validator": [
        "Pinpoint Errors",
        "Notation Cleaner",
        "SAN Standard"
      ],
      "printable-scoresheets": [
        "FIDE Standard",
        "4 Layouts",
        "Vector Print PDF"
      ],
      "game-analysis": [
        "Stockfish 18",
        "Whole-game Review",
        "Runs On Your Device"
      ],
      "rating-calculator": [
        "Official FIDE Table",
        "Every K-factor",
        "Performance Rating"
      ],
      "fen-to-image": [
        "PNG & SVG",
        "Up To 1600px",
        "Five Board Colours"
      ],
      "pgn-to-gif": [
        "Animated Replay",
        "Trim The Range",
        "Encoded In-browser"
      ],
      "pgn-to-pdf": [
        "Selectable Text",
        "Inline Diagrams",
        "A4 & Letter"
      ]
    },
    "printable": {
      "selectLayout": "1. Choisissez le modèle de feuille",
      "selectLayoutDesc": "Les modèles sont mis en page pour le A4 et le US Letter : imprimez-les ou utilisez « Enregistrer au format PDF ».",
      "printButton": "Imprimer la feuille (ou enregistrer en PDF)",
      "signInToPrint": "Se connecter pour imprimer la feuille",
      "clearAll": "Effacer tous les champs",
      "signInNotice": "Gratuit : imprimer et télécharger les feuilles de partie ne coûte rien, mais il faut un compte ScanChess. Connectez-vous ou créez un compte gratuit.",
      "signInRequiredTitle": "Connexion requise",
      "signInRequiredDesc": "Connectez-vous pour imprimer ou exporter des feuilles de partie.",
      "layouts": {
        "standard60Badge": "Standard FIDE",
        "standard60Title": "Standard, 60 coups",
        "standard60Desc": "2 colonnes, format de tournoi",
        "classical80Badge": "Classique",
        "classical80Title": "Classique, 80 coups",
        "classical80Desc": "Pour les parties longues",
        "junior40Badge": "Enfants et débutants",
        "junior40Title": "Jeunes, 40 coups",
        "junior40Desc": "Grandes lignes, plus faciles à remplir",
        "rapid2in1Badge": "Rapide 2 en 1",
        "rapid2in1Title": "Deux feuilles de 30 coups",
        "rapid2in1Desc": "2 parties sur 1 page avec ligne de découpe"
      },
      "prefillTitle": "2. Facultatif : pré-remplir les infos du tournoi (imprimées sur la feuille)",
      "prefillHint": "Laissez vide pour que les joueurs écrivent à la main",
      "club": "Club ou organisateur (facultatif)",
      "clubPlaceholder": "Imprimé sous le titre, par ex. Cercle d’échecs de la Rive",
      "paper": "Papier",
      "event": "Nom du tournoi (facultatif)",
      "eventPlaceholder": "par ex. Open du club",
      "date": "Date (facultatif)",
      "datePlaceholder": "par ex. 2026-09-08",
      "round": "Ronde (facultatif)",
      "table": "Table (facultatif)",
      "whitePlayer": "Joueur avec les Blancs (facultatif)",
      "blackPlayer": "Joueur avec les Noirs (facultatif)",
      "fieldOptional": "Facultatif",
      "printTip": "Astuce : dans la fenêtre d’impression du navigateur, choisissez « Enregistrer au format PDF » comme destination pour obtenir un fichier PDF. Laissez « Graphiques d’arrière-plan » coché.",
      "digitizeCta": "Une feuille déjà remplie ? Numérisez-la →",
      "sheet": {
        "title": "Feuille de partie officielle",
        "subtitle": "ScanChess.com · Feuille de notation standard FIDE",
        "badgeStandard": "60 coups · Partie",
        "badgeClassical": "80 coups · Cadence classique",
        "badgeJunior": "40 coups · Grille jeunes",
        "eventLabel": "Tournoi :",
        "roundLabel": "Ronde :",
        "tableLabel": "Table :",
        "dateLabel": "Date :",
        "whiteLabel": "Blancs :",
        "blackLabel": "Noirs :",
        "ratingLabel": "Elo :",
        "resultLabel": "Résultat :",
        "whiteSignLabel": "Signature Blancs :",
        "blackSignLabel": "Signature Noirs :",
        "signLabel": "Signature :",
        "signLine": "Blancs ________ Noirs ________",
        "white": "Blancs",
        "black": "Noirs",
        "game1": "Partie 1 · 30 coups",
        "game2": "Partie 2 · 30 coups",
        "cutHere": "✂ Découper ici",
        "digitize": "⚡ Numérisez cette feuille après la partie :",
        "digitizeBody": "Photographiez cette feuille avec votre téléphone. ScanChess convertit l’écriture manuscrite en PGN et FEN numériques pour Lichess et Chess.com.",
        "footerNote": "Modèle de feuille de partie gratuit",
        "signInToPrint": "Connectez-vous sur scanchess.com pour imprimer ou enregistrer des feuilles de partie officielles"
      },
      "previewCaption": "Aperçu avant impression. Les coups s'écrivent à la main sur la feuille imprimée ; les champs facultatifs ci-dessus y sont imprimés."
    },
    "fenImage": {
      "errors": {
        "noSideToMove": "Un FEN exige au minimum une position et le trait",
        "ranks": "La position doit comporter 8 rangées séparées par /",
        "character": "La position contient un caractère inattendu",
        "squares": "Une rangée ne totalise pas 8 cases",
        "sideToMove": "Le trait doit être w ou b"
      }
    }
  },
  "sharedGame": {
    "eyebrow": "Partie partagée",
    "scoresheet": "Feuille de partie",
    "scoresheetPage": "Page {{page}} de la feuille",
    "moveCount": "Coups",
    "noMoves": "Cette partie n'a aucun coup rejouable.",
    "ctaTitle": "Numérisez votre propre feuille de partie",
    "ctaBody": "ScanChess transforme la photo d'une feuille manuscrite en partie rejouable et en fichier PGN. Crédits gratuits à l'inscription.",
    "ctaButton": "Essayer gratuitement",
    "notFoundTitle": "Ce lien n'est plus disponible",
    "notFoundBody": "Le lien de partage a été révoqué, ou la partie a été supprimée.",
    "replayStops": "La relecture s'arrête au coup {{ply}} : {{san}} n'a pas pu être joué depuis la position précédente. La liste complète des coups est ci-dessous.",
    "playableCount": "Rejouables",
    "unplayableMove": "{{san}} n'a pas pu être joué",
    "pgnPartial": "Le PGN contient les {{playable}} coups jouables sur les {{total}} de la feuille.",
    "claimButton": "Enregistrer dans ma bibliothèque",
    "claimSaving": "Enregistrement…",
    "claimed": "Enregistrée dans votre bibliothèque",
    "claimedDesc": "Une copie de cette partie est maintenant dans votre historique. Les photos de l'expéditeur restent chez lui.",
    "claimedOpen": "Dans votre bibliothèque · ouvrir l'historique",
    "claimAlready": "Cette partie est déjà dans votre bibliothèque",
    "claimFailed": "La partie n'a pas pu être enregistrée",
    "metaTitle": "{{white}} contre {{black}} | ScanChess",
    "metaDesc": "Rejouez cette partie coup par coup : {{white}} contre {{black}}, {{count}} coups, numérisée depuis une feuille manuscrite avec ScanChess."
  },
  "apiErrors": {
    "RATE_LIMITED": "Trop de requêtes. Patientez quelques minutes et réessayez.",
    "RATE_LIMITED_RETRY_one": "Trop de requêtes. Réessayez dans 1 minute.",
    "RATE_LIMITED_RETRY_other": "Trop de requêtes. Réessayez dans {{count}} minutes.",
    "NOT_FOUND": "Cette partie n'existe plus. Elle a peut-être été supprimée.",
    "INVALID_INPUT": "La requête n'a pas été acceptée. Vérifiez les données et réessayez.",
    "PERMISSION_DENIED": "Vous n'avez pas accès à cette partie.",
    "EMAIL_NOT_VERIFIED": "Votre numérisation gratuite avant vérification a été utilisée. Vérifiez votre e-mail pour continuer.",
    "INSUFFICIENT_CREDITS": "Pas assez de crédits pour cette numérisation.",
    "SCAN_IN_PROGRESS": "Cette numérisation est encore en cours de traitement. Patientez un instant.",
    "UPLOAD_LIMIT_REACHED": "Votre espace d'images est plein. Supprimez des parties enregistrées pour libérer de la place.",
    "IMAGE_TOO_LARGE": "Une des images est trop grande. Utilisez une photo plus petite.",
    "PAYLOAD_TOO_LARGE": "La requête est trop volumineuse. Essayez avec moins d'images ou des images plus petites.",
    "AI_GATEWAY_ERROR": "Le service de reconnaissance n'a pas pu traiter l'image. Vos crédits ont été recrédités.",
    "AI_INVALID_RESPONSE": "Le service de reconnaissance a renvoyé un résultat inattendu. Vos crédits ont été recrédités.",
    "NO_SCORESHEET_FOUND": "Aucun coup n'a pu être lu sur la photo. Vérifiez que toute la feuille est dans le cadre, nette et bien éclairée. Vos crédits ont été recrédités.",
    "NO_BOARD_FOUND": "Aucun échiquier n'a pu être lu sur la photo. Vérifiez que tout l'échiquier et chaque pièce sont dans le cadre. Vos crédits ont été recrédités.",
    "server": "Le serveur a rencontré un problème. Réessayez sous peu.",
    "network": "Le serveur est injoignable. Vérifiez votre connexion et réessayez.",
    "unknown": "Quelque chose s'est mal passé. Veuillez réessayer."
  },
  "annotations": {
    "title": "Notes et variantes",
    "needMoves": "Numérisez ou chargez une partie pour l'annoter.",
    "beforeGame": "avant la partie",
    "afterMove": "après {{number}}{{ellipsis}} {{move}}",
    "commentOn": "Commentaire {{position}}",
    "commentPlaceholder": "Qu'y a-t-il à retenir de cette position ?",
    "commentHint": "Le commentaire suit ce coup dans le PGN exporté. Naviguez sur l'échiquier pour annoter une autre position.",
    "variations": "Variantes enregistrées",
    "insteadOfFirst": "à la place du premier coup",
    "variationFrom": "Ajouter une variante {{position}}",
    "variationPlaceholder": "par ex. Cf3 d5 exd5",
    "addVariation": "Ajouter",
    "variationHint": "Écrivez la variante en SAN, séparée par des espaces ; elle devient une alternative à la position sur l'échiquier.",
    "illegalLine": "{{move}} n'est pas un coup légal ici.",
    "variationRejected": "Cette variante ne peut pas être jouée depuis cette position.",
    "previewVariation": "Montrer cette variante sur l'échiquier",
    "deleteVariation": "Supprimer cette variante"
  },
  "batch": {
    "title": "Numériser une ronde entière d'un coup",
    "intro": "Pour les arbitres et les organisateurs de club : envoyez toutes les feuilles d'une ronde, regroupez les feuilles recto-verso ou à plusieurs pages en une partie chacune, et chaque partie est numérisée et classée séparément dans votre bibliothèque.",
    "signInRequired": "La numérisation par lot demande un compte — les crédits sont dépensés par partie.",
    "uploadTitle": "La pile de feuilles de partie",
    "dropTitle": "Déposez les photos ici",
    "limits": "Jusqu'à {{max}} photos par lot, {{size}} Mo chacune. Une partie peut comporter jusqu'à {{pages}} pages.",
    "fileRejectedCount": "{{name}} : ce lot est plein ({{max}} photos).",
    "groups": "Parties de ce lot",
    "gameLabel": "Partie {{number}}",
    "pageAlt": "Photo {{number}}",
    "removeImage": "Retirer la photo {{number}}",
    "joinShort": "Même feuille",
    "joined": "Rattachée",
    "joinPrevious": "Cette photo poursuit la partie précédente",
    "separateGame": "Commencer une nouvelle partie avec cette photo",
    "joinFull": "Cette partie a déjà toutes ses pages",
    "sharedMeta": "Informations communes",
    "sharedMetaHint": "Complétées quand une feuille ne le dit pas : le nom du tournoi, le lieu et la date sont attachés à chaque partie du lot.",
    "eventPlaceholder": "Championnat de printemps du club",
    "sitePlaceholder": "Local du club, ville",
    "runTitle": "Lancer le lot",
    "costSummary": "{{games}} parties × {{per}} crédits = {{cost}} crédits",
    "balance": "solde {{credits}}",
    "run": "Numériser {{count}} parties",
    "stop": "Arrêter après cette partie",
    "insufficient": "Ce lot coûte {{cost}} crédits et le solde est de {{balance}}. Les parties sont numérisées jusqu'à épuisement du solde.",
    "insufficientPro": "Les crédits Pro mensuels sont épuisés ; le prochain versement arrive le {{date}}.",
    "outOfCredits": "Plus de crédits pour cette partie.",
    "summary": "{{saved}} enregistrées, {{failed}} en échec.",
    "state": {
      "pending": "En attente",
      "scanning": "Numérisation…",
      "saved": "Enregistrée",
      "failed": "Échec",
      "blocked": "Crédits insuffisants"
    },
    "open": "Ouvrir",
    "retry": "Réessayer",
    "moveCount": "{{count}} coups",
    "signInCta": "Se connecter",
    "tournament": {
      "title": "Appariements",
      "hint": "Envoyez la liste des appariements de la ronde et chaque partie sera classée avec les bons joueurs, classements, ronde et échiquier. Les photos nommées comme R3B7.jpg sont regroupées et placées toutes seules.",
      "add": "Ajouter un fichier d'appariements",
      "clear": "Retirer",
      "formats": "Exports CSV ou séparés par tabulations avec une ligne d'en-tête, une liste PGN, ou un fichier d'appariements JSON.",
      "loaded": "{{count}} appariements lus depuis {{files}}",
      "matchSummary": "{{matched}} parties appariées sur {{total}}",
      "matched": "appariée avec {{white}} contre {{black}}",
      "unmatched": "Aucun appariement trouvé.",
      "placed": "Ronde {{round}}, échiquier {{board}}",
      "parseFailed": "{{name}} n'a pas pu être lu comme une liste d'appariements.",
      "exportHint": "Téléchargez la ronde entière en un seul PGN pour le site du tournoi, avec un relevé de ce qui demande encore un œil humain.",
      "exportPgn": "PGN de la ronde",
      "exportCsv": "CSV de contrôle"
    }
  },
  "extensionImport": {
    "title": "Depuis l’extension ScanChess",
    "loading": "Réception de la capture…",
    "error": "Réception ou importation impossible. Réessayez ici, ou ignorez et capturez à nouveau. Votre travail est conservé.",
    "imageHint": "Vérifiez cette image avant de l’importer. La reconnaissance par IA démarre uniquement à votre demande, avec votre compte et vos crédits du site.",
    "textHint": "Importez la notation dans cet outil pour la vérifier et la modifier.",
    "replaceHint": "L’importation remplace le travail actuel dans cette vue. Enregistrez d’abord ce que vous souhaitez conserver.",
    "board": "Position de l’échiquier → FEN",
    "scoresheet": "Feuille de partie → PGN",
    "imageAlt": "Image reçue de l’extension ScanChess",
    "accept": "Importer ce contenu",
    "discard": "Ignorer",
    "retry": "Réessayer",
    "cleanupPending": "Nettoyage du transfert temporaire…",
    "cleanupError": "Nettoyage non confirmé. Réessayer nettoie uniquement le transfert sans modifier votre partie."
  },
  "policy": {
    "effectiveDate": "Date d’entrée en vigueur",
    "updated": "Mis à jour le",
    "seeAlso": "Voir aussi :"
  },
  "contactPage": {
    "title": "Nous contacter",
    "subtitle": "Nous sommes une petite équipe, et une personne lit chaque message.",
    "emailHeading": "E-mail du support",
    "replyTime": "Nous répondons sous 2 jours ouvrés, et le jour même pour tout ce qui touche à la facturation.",
    "includeHeading": "Ce qu’il faut joindre",
    "include": [
      "L’adresse e-mail de votre compte.",
      "Pour la facturation : le numéro de commande figurant sur le reçu envoyé par Waffo.",
      "Pour un scan raté : la photo de la feuille de partie et le coup mal reconnu."
    ],
    "shortcutsHeading": "Vous n’avez peut-être pas besoin de nous",
    "shortcuts": {
      "pricing": "Tarifs, crédits et résiliation",
      "refunds": "Politique de remboursement (aucun remboursement)",
      "deleteAccount": "Supprimer votre compte et vos données",
      "faq": "Questions fréquentes"
    },
    "operatorHeading": "Qui exploite ScanChess",
    "operatorBody": "ScanChess est exploité par SudoAI. Les abonnements web sont vendus par Waffo en qualité de marchand de référence, et c’est ce nom qui apparaît sur votre relevé."
  },
  "securityPage": {
    "title": "Sécurité",
    "sections": [
      {
        "heading": "Signaler une vulnérabilité",
        "paragraphs": [
          "Écrivez à {{email}} en mettant « Security » en objet. Décrivez comment la reproduire et ce qu’elle permet de faire. Nous répondons sous 3 jours ouvrés et vous informons du résultat une fois la faille corrigée.",
          "Nous n’engagerons aucune action en justice contre une recherche de bonne foi, à condition que vous n’accédiez pas aux données d’autrui, ne les modifiiez pas et ne les exfiltriez pas, que vous ne meniez ni test de déni de service ni test de spam, et que vous nous laissiez le temps de corriger avant toute divulgation. Il n’y a pas de programme de primes rémunéré, mais nous vous créditerons nommément si vous le souhaitez."
        ]
      },
      {
        "heading": "Comment vos données sont protégées",
        "bullets": [
          "Tout transite en HTTPS ; le site et l’API sont derrière Cloudflare.",
          "Les mots de passe sont stockés sous forme d’empreintes bcrypt salées : nous ne pouvons pas lire le vôtre.",
          "Les sessions web utilisent des JWT signés dans des cookies HttpOnly ; changer de mot de passe révoque les sessions et les jetons de réinitialisation émis auparavant.",
          "Nous ne touchons jamais aux données de paiement : le paiement web est hébergé par Waffo, notre marchand de référence, et nous ne recevons qu’un numéro de commande et l’état de l’abonnement.",
          "Supprimer un compte le supprime vraiment : profil, parties et images envoyées disparaissent et ne peuvent pas être récupérés."
        ]
      },
      {
        "heading": "Les images que vous envoyez",
        "paragraphs": [
          "Les photos de feuilles de partie sont transmises au fournisseur externe de modèles d’IA que nous utilisons pour la reconnaissance ; la Politique de confidentialité précise exactement ce qui est partagé. Les images appartiennent à votre compte : supprimez une partie quand vous voulez, ou supprimez le compte pour toutes les effacer."
        ]
      },
      {
        "heading": "Ce que nous n’avons pas",
        "paragraphs": [
          "Clairement : pas de SOC 2, pas d’ISO 27001, pas d’audit externe et pas de programme de primes rémunéré. ScanChess est développé par une petite équipe. Si votre école, votre fédération ou votre employeur réclame des documents de conformité, écrivez-nous : nous vous dirons honnêtement ce que nous pouvons et ne pouvons pas fournir."
        ]
      }
    ]
  },
  "refundsPage": {
    "title": "Politique de remboursement",
    "intro": "ScanChess ne rembourse pas. Nous le disons tout en haut, et à côté du bouton d’achat, parce que vous devez le savoir avant de payer et non le découvrir après. Ci-dessous : pourquoi, les exceptions, et quoi faire à la place si vous ne voulez plus être débité.",
    "stopCharges": "Vous voulez arrêter les prélèvements ? Résiliez sur la <pricing>page des tarifs</pricing>, ou écrivez à <mail>{{email}}</mail>.",
    "sections": [
      {
        "heading": "Toutes les ventes sont définitives",
        "paragraphs": [
          "Les paiements d’abonnement ne sont pas remboursables. Cela vaut pour la partie non utilisée d’une période, pour un renouvellement que vous avez oublié de résilier et pour des crédits achetés mais non dépensés.",
          "C’est ce qui nous permet de fixer nos tarifs ainsi, et en échange l’offre gratuite en est une vraie : chaque nouveau compte reçoit 10 crédits gratuits — cinq feuilles de partie — sans carte bancaire et sans fonction bridée. Servez-vous-en pour vérifier que la reconnaissance s’accommode de votre écriture avant de vous abonner."
        ]
      },
      {
        "heading": "Exceptions",
        "paragraphs": [
          "Ce qui précède ne s’applique pas :"
        ],
        "bullets": [
          "À ce que la loi applicable nous oblige à rembourser. Cette politique ne réduit pas les droits que vous accorde le droit impératif de la consommation de votre pays ; les clients de l’UE et du Royaume-Uni conservent leur droit légal de rétractation lorsque ses conditions sont réunies.",
          "Aux achats effectués via l’App Store d’Apple ou Google Play. Ceux-là sont remboursés par la plateforme selon ses propres règles : faites-en la demande là-bas. Nous ne pouvons ni les accorder ni les bloquer.",
          "Aux erreurs techniques de notre côté ou de celui du prestataire de paiement, comme un double prélèvement ou un montant erroné. Ce n’est pas un remboursement, c’est une correction : écrivez-nous et nous rectifions."
        ]
      },
      {
        "heading": "Que faire à la place",
        "paragraphs": [
          "Résiliez plutôt que d’attendre le prélèvement pour en demander la restitution. La résiliation est en libre-service : connectez-vous, ouvrez la page des tarifs, appuyez sur Résilier l’abonnement. Deux clics, aucun e-mail à envoyer.",
          "Résilier arrête tous les prélèvements à venir. Vous gardez Pro jusqu’à la fin de la période déjà payée, et les crédits de votre solde restent les vôtres : ils n’expirent jamais. Pas à pas : « Comment résilier un abonnement ScanChess ».",
          "Résiliez avant la date de renouvellement. Pour une formule annuelle, s’en occuper dès la réception du rappel de renouvellement est l’habitude la plus sûre."
        ]
      },
      {
        "heading": "Ce que sont les crédits",
        "bullets": [
          "Les crédits sont l’unité interne d’utilisation du Service. Ce n’est pas de la monnaie stockée et ils n’ont aucune valeur en espèces.",
          "Ils ne peuvent être ni remboursés, ni versés, ni transférés vers un autre compte.",
          "Il en va de même des crédits offerts à l’inscription ou par parrainage.",
          "Résilier n’efface pas les crédits déjà présents sur votre solde."
        ]
      },
      {
        "heading": "Écrivez-nous quand même",
        "paragraphs": [
          "Si un scan revient inexploitable, si votre compte a été débité d’une manière qui semble erronée, ou si vous estimez que votre situation ne devrait pas être traitée par la règle ci-dessus, écrivez à {{email}} avec l’adresse de votre compte et le numéro de commande de votre reçu Waffo. Nous répondons sous 2 jours ouvrés et examinons chaque cas sur ses faits — une politique est une politique, et une personne est une personne."
        ]
      },
      {
        "heading": "À qui vous achetez",
        "paragraphs": [
          "Waffo est le marchand de référence des abonnements web et c’est ce nom qui figure sur votre relevé. Tout remboursement auquel la loi nous oblige est initié par nous et exécuté par Waffo.",
          "Le pass de 365 jours vendu sur la boutique de Chine continentale et réglé par WeChat Pay est lui aussi encaissé par Waffo et couvert par cette politique : payé une fois, non remboursable. Un pass ne se renouvelle jamais, il n’y a donc pas de renouvellement oublié à contester."
        ]
      }
    ]
  },
  "faqPage": {
    "title": "Questions fréquentes",
    "subtitle": "Les questions les plus courantes sur la numérisation de feuilles de partie avec ScanChess",
    "ctaTitle": "Encore une question ?",
    "ctaBody": "Essayez ScanChess et voyez la reconnaissance de feuilles de partie par IA",
    "ctaButton": "Commencer à numériser",
    "items": [
      {
        "question": "Qu’est-ce que ScanChess ?",
        "answer": "ScanChess est un lecteur de feuilles de partie d’échecs à base d’IA qui convertit des photos de notation manuscrite en PGN standard. Vous envoyez une photo, et l’IA reconnaît les coups automatiquement."
      },
      {
        "question": "Quels formats de notation sont pris en charge ?",
        "answer": "Nous prenons en charge la notation algébrique standard (SAN) dans différentes écritures. Les formes abrégées comme « dc » (prise de pion) sont converties automatiquement au format standard, « dxc5 »."
      },
      {
        "question": "Est-ce gratuit ?",
        "answer": "Chaque nouveau compte reçoit 10 crédits gratuits, sans carte bancaire. Numériser une feuille coûte 2 crédits, une photo d’échiquier en coûte 1 ; l’édition, la relecture, l’export PGN et votre historique ne coûtent rien. Vous pouvez aussi gagner des crédits en invitant des amis."
      },
      {
        "question": "Combien coûte Pro, et qu’est-ce que ça apporte ?",
        "answer": "Pro coûte {{proMonthly}}/mois ou {{proYearly}}/an et ajoute 100 crédits tous les 30 jours (environ 50 feuilles) ; Pro+ coûte {{proPlusMonthly}}/mois ou {{proPlusYearly}}/an et en ajoute 500. Les crédits non utilisés restent sur votre solde, et les nouveautés arrivent d’abord chez Pro. L’édition, la relecture, l’export PGN et l’historique dans le cloud sont gratuits sur tous les comptes ; ce que Pro achète, c’est du volume. Le comparatif complet est sur la page des tarifs, à l’adresse /pricing."
      },
      {
        "question": "Comment payer, et qu’apparaît-il sur mon relevé ?",
        "answer": "Connectez-vous, ouvrez la page des tarifs et appuyez sur S’abonner : une page de paiement hébergée par Waffo s’ouvre. Waffo est le marchand de référence pour les abonnements web : il encaisse, calcule la taxe et figure sur votre relevé à la place de ScanChess. Nous ne voyons ni ne conservons jamais vos données bancaires. En Chine continentale, basculez la page des tarifs sur la boutique locale pour acheter un pass Pro de 365 jours en CNY avec WeChat Pay — payé une fois, sans reconduction."
      },
      {
        "question": "Comment résilier ?",
        "answer": "Connectez-vous et ouvrez /pricing : un encadré « Votre abonnement » apparaît en haut, avec un bouton Résilier l’abonnement. Inutile d’écrire à qui que ce soit. La résiliation arrête le prochain prélèvement ; Pro et les crédits déjà sur votre solde restent jusqu’à la fin de la période payée. Les abonnements achetés dans l’app iOS se résilient plutôt dans Réglages → Abonnements de l’iPhone."
      },
      {
        "question": "Puis-je être remboursé ?",
        "answer": "Non. Tous les paiements sont définitifs et non remboursables, y compris la partie non utilisée d’une période et les crédits non dépensés, sauf lorsque la loi applicable en dispose autrement. C’est pour cela que l’offre gratuite en est une vraie : 10 crédits à l’inscription, sans carte, sans fonction bridée — servez-vous-en pour vérifier que la reconnaissance vous convient avant de vous abonner. Si vous ne voulez plus être débité, résiliez : c’est en libre-service et cela prend deux clics. Conditions complètes sur /refunds."
      },
      {
        "question": "Quelle est la précision de la reconnaissance ?",
        "answer": "La qualité dépend de l’écriture, de la lumière, de l’angle de prise de vue et du style de notation ; nous ne promettons donc pas de taux fixe. La validation par les règles des échecs signale les coups peu sûrs ou illégaux pour que vous les vérifiiez."
      },
      {
        "question": "Puis-je numériser plusieurs pages d’un coup ?",
        "answer": "Oui. Vous pouvez envoyer jusqu’à 10 images en une seule numérisation (JPG, PNG ou WebP ; HEIC n’est pas encore pris en charge). Les pages sont lues dans l’ordre affiché : une feuille recto-verso ou en plusieurs pages devient une seule partie, et ne coûte toujours qu’une numérisation."
      },
      {
        "question": "Comment exporter ma partie ?",
        "answer": "Après la numérisation, cliquez sur « Exporter le PGN » pour télécharger un fichier PGN standard. Vous pouvez aussi copier le PGN dans le presse-papiers et le coller directement dans Chess.com ou Lichess."
      },
      {
        "question": "Et si la reconnaissance se trompe ?",
        "answer": "Utilisez le bouton crayon à côté d’un coup pour le corriger. Le système valide les coups en temps réel. Vous pouvez saisir des formes abrégées (comme « dc »), elles seront converties automatiquement en notation complète."
      },
      {
        "question": "Mes parties sont-elles enregistrées ?",
        "answer": "Une numérisation réussie est automatiquement enregistrée dans l’historique cloud. Si vous modifiez ensuite des coups ou des informations de partie, « Enregistrer la partie » met à jour la même entrée au lieu d’en créer une seconde. La numérisation nécessite un compte."
      },
      {
        "question": "Combien de temps conservez-vous mes photos et mes parties, et comment les supprimer ?",
        "answer": "Les photos de feuilles sont conservées avec la partie reconnue dans votre compte jusqu’à ce que vous les supprimiez. Supprimer une partie de l’historique supprime ses photos avec elle ; supprimer votre compte dans les réglages efface toutes les parties, photos et l’historique de crédits. La suppression prend effet immédiatement dans la base active, et les sauvegardes de routine expirent sous 90 jours."
      }
    ]
  },
  "privacyPage": {
    "title": "Politique de confidentialité",
    "intro": "ScanChess (\"nous\") respecte et protège votre vie privée. Cette politique explique comment nous collectons, utilisons, stockons et partageons vos informations lorsque vous utilisez le site web, l’extension de navigateur et l’application mobile ScanChess (le \"Service\").",
    "sections": [
      {
        "heading": "Informations que nous collectons",
        "paragraphs": [
          "Pour fournir notre service de numérisation d’échecs, nous collectons les informations suivantes :"
        ],
        "bullets": [
          "Informations de compte : lorsque vous vous connectez avec Apple ou Google, nous recevons votre adresse e-mail et un identifiant de compte élémentaire pour créer et gérer votre compte.",
          "Contenus que vous envoyez : photos de feuilles de partie, d’échiquiers et images associées que vous prenez ou téléversez. Ces images sont transmises à un fournisseur externe de modèles d’IA pour être traitées et converties en notation d’échecs standard (PGN).",
          "Crédits et transactions : votre solde de crédits, vos achats et votre historique de consommation, utilisés pour la facturation et la prévention des abus.",
          "Informations d’usage et d’appareil : pour la sécurité et l’amélioration du produit, nous pouvons journaliser des données de base telles que le type d’appareil, la version de l’application et les rapports de plantage.",
          "Analyse du site : Google Analytics 4 et Microsoft Clarity peuvent recueillir les visites, les sources de trafic, une localisation approximative à l’échelle de la ville et les interactions, selon les règles et choix de cookies décrits ci-dessous."
        ]
      },
      {
      "id": "browser-extension",
      "heading": "Connexion et numérisation avec l’extension",
      "paragraphs": [
        "L’extension se connecte directement à l’API ScanChess avec l’adresse e-mail et le mot de passe saisis. Elle conserve le jeton de session et les informations de base du compte dans le stockage protégé de l’extension, inaccessible aux scripts de contenu. Le jeton est supprimé à la déconnexion ou à l’expiration de la session.",
        "L’extension ne capture la zone visible qu’après votre choix de numériser un échiquier ou une feuille de partie. La sélection et le recadrage restent locaux. Lorsque vous relâchez la sélection, seule cette zone est envoyée à api.scanchess.com et aux fournisseurs d’IA décrits ici ; le résultat s’affiche dans le panneau latéral sans passage par le site.",
        "La progression et les résultats actuels utilisent le stockage de session du navigateur et sont effacés à la fin de la session ou à la déconnexion. Une feuille reconnue est aussi enregistrée dans votre compte ScanChess lorsque cela est possible afin d’apparaître dans l’historique du site. L’extension ne collecte pas l’historique de navigation et ne contient pas de scripts d’analyse.",
        "L’ouverture d’un résultat sur le site est facultative et demande une action distincte. Ce transfert est lié à la destination et à l’onglet exacts et expire après 30 minutes. Nous utilisons les données de compte, d’image et de notation uniquement pour les fonctions annoncées de connexion, capture, reconnaissance, révision et enregistrement."
      ]
      },
      {
        "heading": "Comment nous utilisons les informations",
        "bullets": [
          "Pour fournir la fonction principale : reconnaître les images que vous envoyez et produire les résultats de numérisation.",
          "Pour gérer votre compte, votre solde de crédits et vos transactions.",
          "Pour maintenir la sécurité du Service et prévenir la fraude et les abus.",
          "Pour répondre à vos demandes d’assistance et améliorer le produit."
        ]
      },
      {
        "heading": "Services tiers",
        "paragraphs": [
          "Nous partageons le strict nécessaire avec les tiers suivants pour faire fonctionner le Service :"
        ],
        "bullets": [
          "Fournisseur de modèles d’IA : pour la reconnaissance, les images de feuilles de partie et d’échiquiers que vous envoyez sont transmises au fournisseur de modèles d’IA que nous utilisons.",
          "Connexion Apple et Google : utilisées pour l’authentification (Se connecter avec Apple / Google).",
          "Waffo (Waffo Pancake) : marchand de référence pour les abonnements web. Vos données de paiement sont collectées et traitées par Waffo — nous ne voyons ni ne conservons jamais vos données bancaires. Nous ne recevons que le numéro de commande, l’e-mail de facturation et l’état de l’abonnement, qui nous servent à activer Pro.",
          "Google Analytics 4 et Microsoft Clarity : Analyse du site soumise aux règles et choix de cookies décrits ci-dessous.",
          "Cloudflare : hébergement, CDN et routage d’e-mails pour le site et l’API, ce qui implique le traitement des journaux de connexion nécessaires.",
          "Nous ne vendons pas vos données personnelles et ne les utilisons pas à des fins publicitaires étrangères au Service."
        ]
      },
      {
        "heading": "Cookies et analyse",
        "paragraphs": [
          "Votre session web est conservée dans un cookie sécurisé accessible uniquement au serveur. Le stockage du navigateur contient les préférences d’interface et peut, après votre confirmation d’une importation, conserver des parties et des images pour restaurer votre travail. Ces brouillons utilisent d’abord le stockage de session, puis le stockage local si le stockage de session est indisponible. Le cookie de session nécessaire ne peut pas être désactivé, car il vous permet de rester connecté.",
          "Au-delà, nous utilisons deux services d’analyse, qui déposent tous deux des cookies. Là où la loi exige un consentement préalable — EEE, Royaume-Uni et Suisse — aucun ne se charge tant que vous n’avez pas appuyé sur « Accepter » dans le bandeau. Ailleurs, ils sont actifs par défaut et vous pouvez les désactiver à tout moment (voir ci-dessous) :"
        ],
        "bullets": [
          "Google Analytics 4 : nombre de visites, sources de provenance et performance des pages. Traité par Google et susceptible d’être transféré hors de votre pays, notamment aux États-Unis.",
          "Microsoft Clarity : enregistre les clics, le défilement et les mouvements de souris à l’intérieur d’une page (relecture de session) ainsi que des cartes de chaleur, afin que nous repérions les problèmes d’interface. Nous ne l’utilisons pas pour vous identifier personnellement."
        ],
        "paragraphsAfter": [
          "Vous pouvez changer d’avis à tout moment depuis « Paramètres des cookies » en pied de chaque page, ou depuis les réglages de votre compte. Analyse désactivée, aucun de ces scripts ne se charge. La désactivation n’arrête pas un script déjà en cours dans l’onglet ouvert : rechargez la page et il ne reviendra pas."
        ]
      },
      {
        "heading": "Durée de conservation",
        "paragraphs": [
          "Nous conservons vos informations de compte, votre historique de parties et vos images seulement le temps nécessaire à la fourniture du Service. Dès que les données ne sont plus nécessaires, ou lorsque vous en demandez la suppression, nous les effaçons."
        ]
      },
      {
        "heading": "Suppression des données et du compte",
        "paragraphs": [
          "Vous pouvez supprimer votre compte à tout moment — dans l’application mobile sous Réglages, ou sur le web à l’adresse https://scanchess.com/delete-account. Cela efface vos informations de compte ainsi que les images envoyées et les données de numérisation associées. Une fois supprimées, ces données sont irrécupérables.",
          "Si vous avez besoin d’aide pour supprimer vos données, écrivez-nous à {{email}}."
        ]
      },
      {
        "heading": "Sécurité des données",
        "paragraphs": [
          "Nous appliquons des mesures techniques et organisationnelles raisonnables pour protéger vos données en transit et au repos. Aucun mode de transmission sur Internet ni de stockage électronique n’est cependant totalement sûr."
        ]
      },
      {
        "heading": "Vos droits",
        "paragraphs": [
          "Où que vous viviez, vous pouvez exercer les droits suivants sur les données personnelles que nous détenons. Pour l’un quelconque d’entre eux, écrivez à {{email}} : nous répondrons sous 30 jours."
        ],
        "bullets": [
          "Accès : savoir quelles données nous détenons sur vous et en obtenir une copie.",
          "Rectification : nous demander de corriger des données inexactes.",
          "Effacement : supprimer votre compte vous-même à tout moment, ou nous demander de le faire.",
          "Limitation et opposition : vous opposer aux traitements fondés sur nos intérêts légitimes, comme l’analyse d’audience.",
          "Portabilité : recevoir vos données de parties dans un format courant — vous pouvez aussi exporter le PGN vous-même quand vous voulez.",
          "Retrait du consentement : désactiver les cookies d’analyse à tout moment, sans effet sur les traitements réalisés avant le retrait."
        ],
        "paragraphsAfter": [
          "Visiteurs de l’UE et du Royaume-Uni : nous traitons les données pour exécuter notre contrat avec vous (compte, numérisation, facturation), au titre de nos intérêts légitimes (sécurité et prévention des abus) et sur la base de votre consentement (cookies d’analyse). Vous avez le droit de saisir votre autorité de protection des données.",
          "Résidents de Californie : nous ne « vendons » ni ne « partageons » de données personnelles au sens du CCPA/CPRA, et nous ne vous traiterons pas différemment parce que vous exercez vos droits.",
          "Transferts internationaux : nos prestataires (le fournisseur de modèles d’IA, Cloudflare, Google, Microsoft et Waffo) peuvent traiter des données hors de votre pays, notamment aux États-Unis et dans l’UE."
        ]
      },
      {
        "heading": "Vie privée des enfants",
        "paragraphs": [
          "Le Service ne s’adresse pas aux enfants de moins de 13 ans. Nous ne collectons pas sciemment de données personnelles auprès d’enfants. Si vous pensez qu’un enfant nous a communiqué des données personnelles, écrivez à {{email}} et nous les supprimerons."
        ]
      },
      {
        "heading": "Modifications de cette politique",
        "paragraphs": [
          "Nous pouvons mettre à jour cette Politique de confidentialité de temps à autre. Les modifications importantes seront publiées sur cette page, avec une date d’entrée en vigueur actualisée en haut."
        ]
      },
      {
        "heading": "Nous contacter",
        "paragraphs": [
          "Pour toute question sur cette Politique de confidentialité, écrivez-nous à {{email}}."
        ]
      }
    ]
  },
  "termsPage": {
    "title": "Conditions d’utilisation",
    "intro": "Bienvenue sur ScanChess. Les présentes conditions (les « Conditions ») régissent votre accès au site web et à l’application mobile ScanChess (le « Service ») ainsi que leur utilisation. En utilisant le Service, vous acceptez ces Conditions.",
    "sections": [
      {
        "heading": "Description du Service",
        "paragraphs": [
          "ScanChess est un outil fondé sur l’IA qui reconnaît les photos de feuilles de partie manuscrites et d’échiquiers et les convertit en notation d’échecs standard (PGN). Les résultats de la reconnaissance par IA peuvent comporter des erreurs : vérifiez l’exactitude des coups avant de vous y fier."
        ]
      },
      {
        "heading": "Comptes et âge",
        "paragraphs": [
          "Certaines fonctions peuvent exiger une connexion avec Apple ou Google. Vous êtes responsable de la protection de votre compte et de toute activité qui s’y déroule.",
          "Le Service ne s’adresse pas aux enfants de moins de 13 ans. Si vous avez moins de 18 ans (ou moins que l’âge de la majorité dans votre pays), vous ne pouvez utiliser le Service qu’avec l’accord d’un parent ou tuteur, et tout achat doit être effectué par un adulte capable de contracter, ou avec son consentement explicite."
        ]
      },
      {
        "heading": "Abonnements, crédits et achats",
        "bullets": [
          "Le Service consomme des crédits pour la numérisation : une feuille de partie coûte 2 crédits, une photo d’échiquier 1 crédit, et chaque nouveau compte démarre avec 10 crédits gratuits. Les tarifs en vigueur et les règles des crédits figurent sur notre page des tarifs, à l’adresse scanchess.com/pricing.",
          "Pro est un abonnement. Il se reconduit automatiquement au même prix pour la période choisie — mensuelle ou annuelle — jusqu’à ce que vous résiliiez.",
          "Sur la boutique de Chine continentale, Pro est vendu sous forme de pass de 365 jours libellé en CNY et payé une seule fois par WeChat Pay. Un pass ne se reconduit pas et rien n’est prélevé à son terme ; en acheter un autre le prolonge, et les jours restants sont conservés.",
          "Vous pouvez résilier vous-même à tout moment sur scanchess.com/pricing. La résiliation arrête les prélèvements futurs ; Pro reste actif jusqu’à la fin de la période déjà payée.",
          "Waffo est le marchand de référence pour les abonnements web : c’est le vendeur, il figure sur votre relevé et il calcule la taxe au moment du paiement.",
          "Tous les paiements sont définitifs et non remboursables — y compris la part non utilisée d’une période et les crédits non dépensés — sauf lorsque la loi applicable en dispose autrement. Utilisez les crédits gratuits fournis avec votre compte pour vérifier que le Service vous convient avant de vous abonner. Les conditions complètes figurent dans notre Politique de remboursement, à l’adresse scanchess.com/refunds.",
          "Les achats effectués via l’App Store d’Apple ou Google Play sont également soumis aux conditions de ces plateformes, et leurs remboursements doivent y être demandés."
        ]
      },
      {
        "heading": "Utilisation acceptable",
        "paragraphs": [
          "En utilisant le Service, vous vous engagez à ne pas :"
        ],
        "bullets": [
          "Téléverser du contenu illicite, contrefaisant, ou que vous n’avez pas le droit de faire traiter.",
          "Tenter de perturber le Service ou ses systèmes sous-jacents, d’en faire de l’ingénierie inverse ou d’en abuser.",
          "Émettre des requêtes automatisées excessives ou contourner les mécanismes de crédits et de facturation."
        ]
      },
      {
        "heading": "Durée et résiliation",
        "paragraphs": [
          "Ces Conditions s’appliquent dès que vous commencez à utiliser le Service et jusqu’à ce que vous ou nous y mettions fin. En cas de manquement aux règles d’utilisation acceptable ci-dessus, nous pouvons prendre une ou plusieurs des mesures suivantes, selon la gravité et la répétition du manquement :"
        ],
        "bullets": [
          "Adresser un avertissement, ou retirer le contenu en cause ou en restreindre l’accès.",
          "Suspendre votre compte, ou limiter certaines fonctions comme la numérisation.",
          "Fermer votre compte immédiatement et sans préavis en cas de manquement grave — par exemple contenu illicite, attaque contre le Service, ou contournement des mécanismes de crédits et de facturation.",
          "Si votre compte est fermé pour manquement à ces Conditions, les crédits non utilisés sont perdus sans remboursement et tout abonnement actif cesse de se reconduire, sauf lorsqu’un remboursement est exigé par la loi applicable ou par la politique de la boutique concernée."
        ],
        "paragraphsAfter": [
          "Nous vous préviendrons à l’adresse e-mail de votre compte lorsque nous le suspendons ou le fermons, sauf si la loi nous l’interdit. Si vous estimez que nous avons commis une erreur, vous pouvez faire appel en écrivant à {{email}} dans les 30 jours suivant l’avis, et nous réexaminerons la décision.",
          "Vous pouvez aussi cesser d’utiliser le Service à tout moment et supprimer votre compte et ses données via la fonction « Supprimer le compte ». Les sections qui, par nature, doivent survivre à la résiliation — Exclusion de garantie, Limitation de responsabilité et Droit applicable — restent en vigueur."
        ]
      },
      {
        "heading": "Vos contenus",
        "paragraphs": [
          "Vous restez propriétaire des images que vous envoyez. Pour fournir la fonction de numérisation, vous nous accordez la licence limitée nécessaire à leur traitement, y compris leur transmission au fournisseur externe de modèles d’IA que nous utilisons pour la reconnaissance. Voir notre Politique de confidentialité pour le détail du traitement des images."
        ]
      },
      {
        "heading": "Suppression du compte",
        "paragraphs": [
          "Vous pouvez supprimer votre compte et les données associées à tout moment via la fonction « Supprimer le compte » de l’application. Une fois supprimées, ces données sont irrécupérables."
        ]
      },
      {
        "heading": "Exclusion de garantie",
        "paragraphs": [
          "Le Service est fourni « en l’état » et « selon disponibilité », sans garantie d’aucune sorte, expresse ou implicite. Nous ne garantissons ni l’exactitude complète des résultats de reconnaissance, ni un fonctionnement ininterrompu ou exempt d’erreurs."
        ]
      },
      {
        "heading": "Limitation de responsabilité",
        "paragraphs": [
          "Dans toute la mesure permise par la loi applicable, ScanChess ne saurait être tenu responsable des dommages indirects, accessoires ou consécutifs résultant de l’utilisation du Service ou de l’impossibilité de l’utiliser."
        ]
      },
      {
        "heading": "Propriété intellectuelle et réclamations",
        "paragraphs": [
          "Le logiciel, l’interface et la documentation de ScanChess nous appartiennent. Les images que vous envoyez et la notation que nous en tirons vous appartiennent ; nous ne les traitons que pour fournir le Service.",
          "Si vous estimez qu’un élément du Service porte atteinte à votre droit d’auteur ou à d’autres droits, écrivez à {{email}} en indiquant : comment vous joindre, de quel contenu il s’agit et où il apparaît, une déclaration de vos droits sur l’œuvre, et une déclaration selon laquelle vous croyez de bonne foi que l’usage n’est pas autorisé. Nous enquêtons rapidement, retirons le contenu lorsque cela se justifie, et pouvons fermer les comptes qui portent atteinte de façon répétée."
        ]
      },
      {
        "heading": "Modifications du Service",
        "paragraphs": [
          "Nous pouvons améliorer, modifier ou arrêter des parties du Service. Si un changement vous désavantage sensiblement — hausse de tarif, réduction du contenu de Pro, ou arrêt du Service — nous vous préviendrons au moins 30 jours à l’avance par e-mail à l’adresse de votre compte ou par un avis dans l’application, afin que les abonnés puissent résilier avant l’entrée en vigueur plutôt que de reconduire aux nouvelles conditions.",
          "Le Service peut être brièvement interrompu pour maintenance, correctifs, ou pour traiter un incident de sécurité. Nous gardons ces interruptions aussi courtes que possible."
        ]
      },
      {
        "heading": "Modifications de ces Conditions",
        "paragraphs": [
          "Nous pouvons mettre à jour ces Conditions de temps à autre. Les modifications importantes seront publiées sur cette page avec une date d’entrée en vigueur actualisée en haut, et les abonnés seront prévenus par e-mail ou par un avis dans l’application avant leur prise d’effet. Continuer à utiliser le Service vaut acceptation des Conditions mises à jour."
        ]
      },
      {
        "heading": "Litiges et droit applicable",
        "paragraphs": [
          "Si quelque chose ne va pas, écrivez d’abord à {{email}} — presque tout se règle ainsi en moins de 30 jours.",
          "Ces Conditions sont régies par le droit de Singapour, et les litiges qui en découlent relèvent des tribunaux de Singapour.",
          "Si vous êtes consommateur, le droit impératif de la consommation du pays où vous résidez habituellement s’applique à ces Conditions, et vous pouvez agir devant vos tribunaux locaux. Rien ici ne vous retire ces droits.",
          "Si une partie de ces Conditions est jugée invalide ou inapplicable, elle n’est ajustée ou supprimée que dans la mesure nécessaire, et le reste demeure en vigueur."
        ]
      },
      {
        "heading": "Nous contacter",
        "paragraphs": [
          "Pour toute question sur ces Conditions, écrivez-nous à {{email}}."
        ]
      }
    ]
  },
  "changelogEntries": {
    "2026-09-10": {
      "title": "Le site en huit langues, un œil plus sûr sur les coups douteux, et les appariements d’une ronde entière",
      "items": [
        "ScanChess se lit désormais en espagnol, allemand, français, portugais, italien et russe, en plus de l’anglais et du chinois — sur le site comme dans l’app iOS. Choisissez la vôtre depuis le globe de l’en-tête, ou depuis Langue dans les réglages.",
        "Un coup mal lu reste le plus souvent un coup légal : la légalité seule ne l’a jamais attrapé. Les numérisations vérifient maintenant aussi que le matériel ne se comporte pas comme dans aucune partie réelle — une pièce laissée en prise que personne ne prend — et les demi-coups concernés sont signalés pour relecture, avec la raison. Rien n’est réécrit.",
        "La notation que les joueurs écrivent vraiment est comprise au lieu d’être rejetée : un pion précédé d’un P, l’algébrique longue comme e2-e4, une prise qui nomme la pièce prise (FxC) et colonne prend colonne (cxd).",
        "Quand un coup est douteux, l’étape de relecture propose les coups légaux les plus proches du tracé plutôt qu’une question ouverte, et une réponse qui empêcherait de rejouer la partie est abandonnée au lieu d’être enregistrée.",
        "La numérisation par lots a appris le flux de travail de l’arbitre. Les photos nommées comme R3B7p2.jpg ou classées sous Ronde 3/Échiquier 7 sont regroupées et placées toutes seules, et une liste d’appariements — CSV, une liste PGN ou du JSON, depuis n’importe quel logiciel — classe chaque partie sous les bons joueurs, elos, ronde et échiquier. Téléchargez la ronde en un seul PGN, plus un CSV de ce qui demande encore un œil humain."
      ]
    },
    "2026-09-07": {
      "title": "Des variantes sur l’échiquier, des notes sur la partie, et un mode par lots pour des rondes entières",
      "items": [
        "Cliquez sur une ligne du moteur et elle se joue sur l’échiquier — parcourez-la coup par coup ; moteur allumé, l’échiquier affiche son meilleur coup sous forme de flèche pour la position affichée.",
        "Annotez votre partie : écrivez un commentaire sur n’importe quelle position et conservez des variantes — saisies à la main ou récupérées directement d’un aperçu du moteur. Commentaires et variantes sont enregistrés avec la partie, voyagent avec les liens partagés et s’exportent dans le PGN.",
        "Vous numérisez une ronde entière ? La nouvelle page par lots prend la pile de feuilles d’un coup, regroupe les feuilles de plusieurs pages en une partie chacune, et classe chaque partie séparément dans votre bibliothèque."
      ]
    },
    "2026-09-06": {
      "title": "Analyse par moteur, noms d’ouverture, et des parties qui appartiennent aux deux joueurs",
      "items": [
        "Stockfish tourne dans votre navigateur. Activez-le sous l’échiquier pour voir l’évaluation et les meilleures lignes, ou faites relire la partie entière : chaque imprécision, erreur et gaffe est marquée, avec un score de précision par camp. Rien n’est envoyé.",
        "Chaque partie nomme désormais son ouverture (code ECO et nom Lichess) dans l’atelier, sur la page partagée, dans la bibliothèque et dans l’en-tête du PGN.",
        "Les feuilles écrites avec des initiales de pièces allemandes, espagnoles, françaises, portugaises, néerlandaises, polonaises, tchèques, hongroises, russes ou chinoises, ainsi que la notation figurine, sont lues comme telles et traduites en SAN standard.",
        "Un clic envoie une partie sur Lichess et l’y ouvre. Sur un lien partagé, « Enregistrer dans ma bibliothèque » en classe une copie sous votre compte — sur le web et dans l’app iOS.",
        "La bibliothèque trie par date d’enregistrement, date de partie ou nom de joueur, et filtre par résultat."
      ]
    },
    "2026-09-04": {
      "title": "Les corrections de la revue de septembre",
      "items": [
        "Vous pouvez envoyer une feuille et lancer votre première numérisation avant de vérifier votre e-mail ; la vérification est demandée à partir de la deuxième.",
        "Une partie que vous êtes en train de corriger survit à un rechargement : les coups et les images reviennent là où vous les aviez laissés.",
        "Les coups peu sûrs sont de nouveau signalés, chacun avec les alternatives que les règles autorisent, et vous pouvez insérer ou supprimer un coup au lieu de seulement le retaper. Une partie peut être enregistrée alors que des corrections restent en attente.",
        "Les informations de partie (joueurs, tournoi, date, résultat) sont modifiables après une numérisation, et une partie enregistrée s’exporte en PGN directement depuis l’historique.",
        "Les liens partagés se désactivent de nouveau, et un lien révoqué cesse immédiatement de fonctionner.",
        "Corrigé : le menu mobile ne s’ouvrait pas ; les sessions expiraient en pleine visite au lieu de se renouveler discrètement ; la page des tarifs décrivait mal les formules.",
        "Des textes honnêtes : la page d’accueil ne laisse plus entendre un résultat sans erreur, la page À propos dit qui construit ScanChess et ce qu’il ne fait pas, les pages d’outils se chargent plus vite et n’affichent jamais un échiquier vide, et les articles en chinois indiquent un vrai temps de lecture."
      ]
    },
    "2026-08-23": {
      "title": "Un lien que votre adversaire peut ouvrir",
      "items": [
        "Chaque partie enregistrée peut avoir un lien public. Qui l’ouvre voit l’échiquier, les coups et le PGN sans compte.",
        "Les numérisations refusées à cause de l’origine de la requête vers l’IA sont automatiquement retentées par une route américaine, au lieu d’échouer et de recréditer."
      ]
    },
    "2026-08-19": {
      "title": "Fini les suppositions assurées",
      "items": [
        "Quand une partie numérisée n’a plus de sens, le coup qui la brise est marqué et le reste est laissé tel qu’écrit. La correction automatique est désactivée ; les modifications vous appartiennent.",
        "Les photos d’échiquier sont lues deux fois et recoupées avant qu’une position soit annoncée, et une image illisible est désormais déclarée illisible plutôt que transformée en position vraisemblable.",
        "Le mode échiquier montre une vraie démonstration photo → position, et les outils gratuits tiennent dans la partie visible de leurs pages."
      ]
    },
    "2026-08-17": {
      "title": "Des outils gratuits, et Pro+",
      "items": [
        "Trois outils sans compte : un lecteur de PGN, un éditeur d’échiquier qui produit du FEN, et un validateur de PGN qui trouve le coup qui casse une partie.",
        "Pro+ ($19.99/mois ou $119.99/an) ajoute 500 crédits tous les 30 jours pour les clubs et les entraîneurs qui numérisent beaucoup. Les abonnés web peuvent passer de Pro à Pro+ et inversement.",
        "Numériser deux fois la même photo ne facture plus deux fois : le résultat précédent est renvoyé gratuitement.",
        "L’e-mail de fin de numérisation est de retour, et l’API tourne maintenant sur Cloudflare, plus près de vous."
      ]
    },
    "2026-08-12": {
      "title": "Comptes, facturation et consentement",
      "items": [
        "Une page de réglages : votre formule et vos crédits, nom affiché, mot de passe, code de parrainage, langue, historique de facturation, et un bouton qui télécharge toutes les parties que vous avez enregistrées.",
        "Les abonnements se résilient sur la page des tarifs en deux clics. Résilier arrête le prochain prélèvement ; Pro et vos crédits durent jusqu’au bout de la période payée.",
        "L’analyse d’audience demande désormais d’abord. Google Analytics et Microsoft Clarity ne se chargent qu’après votre acceptation, et le choix se change à tout moment dans les réglages.",
        "Une page des tarifs qui montre ce que coûte réellement une numérisation, une politique de remboursement, une page de contact et une page de sécurité.",
        "Les premières traductions chinoises des guides, et un lien de langue sur chaque article qui en a une."
      ]
    },
    "2026-08-11": {
      "title": "Payer sur le web",
      "items": [
        "Pro s’achète maintenant sur le site, et plus seulement dans l’app iOS. Le paiement est pris en charge par Waffo, notre marchand de référence.",
        "Les feuilles qui reprennent un numéro — « 1.d4 » écrit avec le numéro de coup collé — ne cassent plus le reste de la numérisation."
      ]
    },
    "2026-08-10": {
      "title": "Supprimer votre compte vous-même",
      "items": [
        "La suppression de compte est sortie de l’e-mail pour rejoindre une page : /delete-account efface définitivement votre profil, vos parties et les images envoyées.",
        "Les e-mails de ScanChess passent maintenant par Cloudflare, ce qui a réglé les messages de vérification qui atterrissaient en indésirables."
      ]
    }
  },
  "toolCopy": {
    "pgn-viewer": {
      "name": "Lecteur de PGN",
      "seoTitle": "Lecteur PGN – Ouvrir et rejouer des fichiers PGN en ligne",
      "seoDescription": "Collez ou envoyez un fichier PGN et rejouez n’importe quelle partie coup par coup. Lecteur de PGN gratuit avec navigation au clavier, export FEN et liens de partage. Sans inscription.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Lecteur de PGN en ligne",
      "tagline": "Collez un PGN, rejouez la partie coup par coup, copiez n’importe quelle position en FEN.",
      "intro": "Collez un PGN ou ouvrez un fichier .pgn pour parcourir la partie sur un échiquier interactif. Chaque position peut être copiée en FEN, ouverte dans l’éditeur d’échiquier ou partagée par un lien. Tout tourne dans votre navigateur — rien n’est envoyé.",
      "features": [
        {
          "title": "Fichiers à plusieurs parties",
          "body": "Chargez un fichier de tournoi contenant des dizaines de parties et passez de l’une à l’autre depuis une liste."
        },
        {
          "title": "Navigation tactile ou clavier",
          "body": "Touchez un coup pour y sauter. Sur ordinateur, ← → parcourent la partie et Origine/Fin sautent au début ou à la position finale."
        },
        {
          "title": "Outils de position",
          "body": "Copiez le FEN de n’importe quelle position, ouvrez-la dans l’éditeur d’échiquier ou analysez-la sur Lichess en un clic."
        },
        {
          "title": "Analyseur tolérant",
          "body": "Commentaires, variantes, NAG et même les abréviations de feuille comme 0-0 ou dc sont compris. Les coups illégaux sont signalés, pas discrètement ignorés."
        }
      ],
      "howToTitle": "Comment utiliser le lecteur de PGN",
      "howTo": [
        "Collez le texte PGN dans le cadre, ou utilisez « Choisir un fichier » pour prendre un .pgn — sur ordinateur, vous pouvez aussi le déposer sur le cadre.",
        "Touchez Charger. L’échiquier affiche la position de départ, la liste des coups à côté sur grand écran et en dessous sur téléphone.",
        "Touchez un coup pour aller à cette position ; sur ordinateur, les flèches marchent aussi.",
        "Utilisez Copier le FEN, Ouvrir dans l’éditeur ou Partager pour emporter la position ailleurs."
      ],
      "faq": [
        {
          "question": "Qu’est-ce qu’un fichier PGN ?",
          "answer": "Le PGN (Portable Game Notation) est le format texte standard pour consigner une partie d’échecs. Il contient un en-tête avec des balises comme Event, White, Black et Result, suivi des coups en notation algébrique. Chess.com, Lichess et toutes les bases de données d’échecs savent importer et exporter du PGN."
        },
        {
          "question": "Mon PGN est-il envoyé sur un serveur ?",
          "answer": "Non. Le lecteur analyse et rejoue la partie entièrement dans votre navigateur. Rien de ce que vous collez ou ouvrez ici ne quitte votre appareil."
        },
        {
          "question": "Puis-je consulter un PGN contenant plusieurs parties ?",
          "answer": "Oui. Quand le fichier contient plus d’une partie, un sélecteur apparaît au-dessus de l’échiquier pour passer de l’une à l’autre."
        },
        {
          "question": "Et si le PGN contient un coup illégal ?",
          "answer": "Le lecteur rejoue tous les coups légaux jusqu’au problème et met en évidence le coup qu’il n’a pas pu jouer. Utilisez le validateur de PGN pour voir les alternatives légales et obtenir un fichier propre."
        },
        {
          "question": "Comment obtenir un PGN à partir d’une feuille papier ?",
          "answer": "Photographiez la feuille et passez-la dans ScanChess. L’IA lit l’écriture, valide les coups et vous donne un PGN téléchargeable que vous pouvez ouvrir dans ce lecteur."
        }
      ],
      "cta": {
        "title": "Vous avez plutôt une feuille manuscrite ?",
        "body": "ScanChess transforme la photo de votre feuille en PGN validé en quelques secondes. Les nouveaux comptes reçoivent des crédits gratuits — sans carte bancaire.",
        "button": "Numériser une feuille"
      }
    },
    "board-editor": {
      "name": "Éditeur d’échiquier et générateur de FEN",
      "seoTitle": "Éditeur d’échiquier et générateur de FEN – Gratuit en ligne",
      "seoDescription": "Éditeur d’échiquier gratuit en ligne. Touchez ou faites glisser les pièces pour composer une position, obtenez le FEN instantanément, téléchargez l’échiquier en PNG ou ouvrez-le en analyse. Sans connexion.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Éditeur d’échiquier et générateur de FEN",
      "tagline": "Placez les pièces sur l’échiquier — le FEN se met à jour au fur et à mesure.",
      "intro": "Composez n’importe quelle position en touchant une pièce puis une case, ou en faisant glisser les pièces sur l’échiquier. Le FEN se met à jour au fur et à mesure et peut être copié, partagé, exporté en image ou analysé sur Lichess. Collez un FEN existant pour le modifier.",
      "features": [
        {
          "title": "FEN en direct",
          "body": "La chaîne FEN change à chaque modification, et un champ de collage permet d’en charger une pour partir de là."
        },
        {
          "title": "Contrôles de position",
          "body": "Droits de roque, trait et prise en passant se règlent dans le panneau ; l’outil avertit lorsqu’une position n’est pas jouable."
        },
        {
          "title": "L’échiquier en image",
          "body": "Téléchargez le diagramme en PNG net pour un blog, une fiche ou une publication."
        },
        {
          "title": "Pensé pour le tactile",
          "body": "Touchez une pièce dans le tiroir, puis touchez des cases pour la poser. Touchez la gomme pour vider des cases."
        }
      ],
      "howToTitle": "Comment utiliser l’éditeur d’échiquier",
      "howTo": [
        "Partez de la position initiale, d’un échiquier vide, ou collez un FEN.",
        "Touchez une pièce dans le tiroir puis une case pour la poser — ou faites-la glisser sur ordinateur. Touchez la gomme, ou sortez la pièce de l’échiquier, pour l’enlever.",
        "Choisissez le trait et les droits de roque dans le panneau.",
        "Copiez le FEN, téléchargez le PNG, partagez le lien ou ouvrez la position en analyse."
      ],
      "faq": [
        {
          "question": "Qu’est-ce que le FEN ?",
          "answer": "Le FEN (notation Forsyth-Edwards) décrit une position d’échecs en une ligne : disposition des pièces rangée par rangée, trait, droits de roque, case de prise en passant, compteur de demi-coups et numéro de coup. Moteurs, bases de données et sites l’utilisent pour échanger des positions."
        },
        {
          "question": "Pourquoi l’outil dit-il que ma position n’est pas jouable ?",
          "answer": "Une position légale exige exactement un roi par camp, aucun pion sur la première ou la huitième rangée, et le camp qui n’a pas le trait ne doit pas être en échec. Vous pouvez tout de même copier le FEN, mais les moteurs et échiquiers d’analyse risquent de le refuser."
        },
        {
          "question": "Puis-je obtenir un FEN depuis la photo d’un vrai échiquier ?",
          "answer": "Oui — ScanChess intègre un lecteur de photos d’échiquier qui transforme l’image d’un échiquier physique ou à l’écran en FEN, que vous pouvez ensuite affiner ici."
        },
        {
          "question": "Comment transformer un FEN en image ?",
          "answer": "Collez le FEN dans l’éditeur et cliquez sur Télécharger le PNG. L’image est rendue localement en haute résolution avec les coordonnées."
        }
      ],
      "cta": {
        "title": "Photographiez plutôt un vrai échiquier",
        "body": "ScanChess lit la photo d’un échiquier physique et vous donne le FEN, prêt à retoucher ici ou à analyser. Crédits gratuits à l’inscription.",
        "button": "Reconnaître une photo d’échiquier"
      }
    },
    "pgn-validator": {
      "name": "Validateur et nettoyeur de PGN",
      "seoTitle": "Validateur PGN – Vérifier et corriger un PGN d’échecs",
      "seoDescription": "Collez de la notation d’échecs pour vérifier la légalité de chaque coup, repérer l’erreur exacte et télécharger un PGN propre et conforme au standard. Gratuit, instantané, sans connexion.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Validateur et nettoyeur de PGN",
      "tagline": "Trouvez le premier coup qui ne passe pas, récupérez un PGN propre à sept balises.",
      "intro": "Collez un PGN ou une simple liste de coups. Le validateur les rejoue sur un vrai échiquier, désigne le premier coup qui ne passe pas et liste les alternatives légales, puis réécrit la partie en un PGN propre à sept balises. Les abréviations comme 0-0, dc ou e8D sont normalisées automatiquement.",
      "features": [
        {
          "title": "Emplacement exact de l’erreur",
          "body": "Vous voyez le numéro de coup, le jeton qui a échoué, et tous les coups légaux dans cette position."
        },
        {
          "title": "Nettoyage de la notation",
          "body": "Roque avec des zéros, marques d’échec manquantes, pièces en minuscules et abréviations de promotion sont ramenés à la SAN standard."
        },
        {
          "title": "Sortie standard",
          "body": "Le résultat est un PGN au Seven Tag Roster, coupé à 80 colonnes, que Chess.com, Lichess et ChessBase acceptent."
        },
        {
          "title": "Rien ne quitte votre navigateur",
          "body": "La validation tourne localement avec chess.js. Collez des parties de tournoi sans souci de confidentialité."
        }
      ],
      "howToTitle": "Comment valider un PGN",
      "howTo": [
        "Collez le PGN, ou seulement les coups, dans le cadre.",
        "Cliquez sur Valider. Vert : tous les coups sont légaux ; rouge : le premier problème est désigné.",
        "Corrigez le coup dans votre source (ou dans le lecteur de PGN) et validez de nouveau.",
        "Copiez ou téléchargez le PGN nettoyé."
      ],
      "faq": [
        {
          "question": "Que vérifie le validateur ?",
          "answer": "Il lit les balises d’en-tête, retire commentaires et variantes, puis joue chaque coup sur un échiquier qui applique les règles. Tout coup illégal, ambigu ou mal formé est signalé avec son numéro et les coups légaux de la position."
        },
        {
          "question": "Corrige-t-il les erreurs automatiquement ?",
          "answer": "Il corrige les erreurs de notation — 0-0 pour O-O, dc pour dxc5, e8D pour e8=D, les + et # manquants. Il ne peut pas deviner ce qu’un coup vraiment illégal était censé être ; c’est pour cela qu’il affiche les alternatives légales, à vous de choisir."
        },
        {
          "question": "Puis-je coller des coups sans en-tête ?",
          "answer": "Oui. Une simple liste comme « 1. e4 e5 2. Cf3 Cc6 » suffit. La sortie nettoyée ajoute des en-têtes à compléter."
        },
        {
          "question": "Pourquoi les feuilles manuscrites donnent-elles des PGN invalides ?",
          "answer": "On saute un coup, on écrit la mauvaise colonne, on oublie de marquer une prise. Si vous saisissez une feuille, ScanChess peut lire la photo, appliquer la même validation et vous laisser corriger les coups sur l’échiquier."
        }
      ],
      "cta": {
        "title": "Vous saisissez des feuilles à la main ?",
        "body": "Évitez la saisie. ScanChess lit les feuilles manuscrites, valide chaque coup de la même façon et vous laisse corriger les erreurs sur l’échiquier. Crédits gratuits à l’inscription.",
        "button": "Numériser une feuille"
      }
    },
    "printable-scoresheets": {
      "name": "Générateur de feuilles de partie imprimables",
      "seoTitle": "Feuille de partie d’échecs à imprimer – PDF gratuit",
      "seoDescription": "Imprimez gratuitement des feuilles de partie et de notation d’échecs en PDF : feuille de tournoi 60 coups, feuille classique 80 coups, grille 40 coups à grandes lignes pour enfants et page rapide à deux parties.",
      "kicker": "PDF gratuit · A4 et US Letter",
      "h1": "Feuilles de partie d’échecs à imprimer",
      "tagline": "Choisissez un modèle, ajoutez les infos du tournoi, puis imprimez ou enregistrez un PDF.",
      "intro": "Une feuille de partie (aussi appelée feuille de notation, ou page de carnet de notation) est l’endroit où les deux joueurs écrivent chaque coup d’une partie de tournoi. Choisissez parmi quatre modèles : une feuille de 60 coups au format de tournoi en deux colonnes, une feuille de 80 coups pour les longues parties classiques, une feuille de 40 coups à grandes lignes pour les enfants et les débutants, et une page rapide qui accueille deux parties de 30 coups. Ajoutez le tournoi, la ronde et le club, vérifiez l’aperçu en direct, puis imprimez ou enregistrez en PDF. Une fois la partie terminée, une photo de la feuille remplie suffit à ScanChess pour en faire un PGN.",
      "features": [
        {
          "title": "Quatre modèles",
          "body": "60 coups pour les parties de club et de tournoi, 80 coups pour les cadences classiques, 40 grandes lignes pour les jeunes, et deux parties de 30 coups sur une page pour les tournois rapides."
        },
        {
          "title": "Infos du tournoi imprimées",
          "body": "Renseignez le tournoi, la date, la ronde, la table, les joueurs et le club avant d’imprimer, ou laissez n’importe quel champ vide pour que les joueurs l’écrivent à la main."
        },
        {
          "title": "Net en A4 comme en US Letter",
          "body": "Les feuilles sont tracées en vectoriel et en noir et blanc : les lignes et les numéros de coups restent nets sur n’importe quelle imprimante de bureau, avec peu d’encre."
        },
        {
          "title": "Prête à numériser ensuite",
          "body": "La grille sépare les coups des Blancs et des Noirs dans des colonnes numérotées, la mise en page qu’un scanner de feuilles de partie lit le plus fiablement."
        }
      ],
      "howToTitle": "Comment imprimer une feuille de partie d’échecs",
      "howTo": [
        "Choisissez un modèle : 60 coups, 80 coups, 40 coups pour enfants, ou deux parties rapides sur une page.",
        "Saisissez si vous le souhaitez le tournoi, la ronde, le club ou le nom des joueurs pour les imprimer sur chaque feuille.",
        "Cliquez sur « Imprimer la feuille » puis imprimez, ou choisissez « Enregistrer en PDF » dans la boîte d’impression pour garder un fichier.",
        "Après la partie, photographiez la feuille remplie et laissez ScanChess transformer l’écriture en PGN."
      ],
      "faq": [
        {
          "question": "Qu’est-ce qu’une feuille de notation aux échecs ?",
          "answer": "C’est la même chose qu’une feuille de partie : un formulaire à lignes numérotées où les deux joueurs notent chaque coup en notation algébrique, avec des cases pour le tournoi, la ronde, les joueurs et le résultat. Un carnet de notation n’est rien d’autre qu’un ensemble de ces feuilles reliées."
        },
        {
          "question": "Ces feuilles suivent-elles les conventions de la FIDE ?",
          "answer": "Les feuilles de 60 et 80 coups reprennent la mise en page habituelle des tournois : un en-tête pour les Blancs, les Noirs, le tournoi, la date, la ronde, la table et le résultat, des lignes de coups numérotées avec colonnes Blancs et Noirs, et des lignes de signature pour les deux joueurs. Un arbitre peut toutefois exiger la feuille officielle d’un tournoi donné."
        },
        {
          "question": "Comment remplir une feuille de partie d’échecs ?",
          "answer": "Écrivez le numéro du coup une fois par ligne, le coup des Blancs dans la colonne de gauche et celui des Noirs dans celle de droite, en notation algébrique comme Nf3 ou exd5. Selon les règles de la FIDE, on joue d’abord le coup sur l’échiquier, puis on l’écrit. Notre guide sur la façon de remplir une feuille de partie déroule un exemple complet."
        },
        {
          "question": "Comment enregistrer la feuille en PDF ?",
          "answer": "Cliquez sur « Imprimer la feuille » (ou appuyez sur Ctrl+P / Cmd+P) et choisissez « Enregistrer en PDF » comme destination d’impression au lieu d’une imprimante."
        },
        {
          "question": "Quel format de papier utiliser ?",
          "answer": "Choisissez A4 (210 × 297 mm) ou US Letter (8,5 × 11 pouces) dans le réglage du papier. Les deux s’impriment avec des marges standard."
        },
        {
          "question": "Comment transformer une feuille de partie remplie en PGN ?",
          "answer": "Prenez une photo nette et bien à plat de la feuille et envoyez-la à ScanChess. Il lit l’écriture, rejoue chaque coup sur un échiquier pour vérifier qu’il est légal, et vous laisse corriger ce qu’il faut avant de télécharger le PGN."
        }
      ],
      "cta": {
        "title": "Feuille de partie déjà remplie ?",
        "body": "Évitez la saisie. ScanChess lit les coups manuscrits, vérifie chacun selon les règles et vous donne un PGN à rejouer ou à importer dans Lichess.",
        "button": "Numériser une feuille de partie"
      }
    },
    "game-analysis": {
      "name": "Analyse de partie",
      "seoTitle": "Analyse de partie d’échecs – Stockfish dans votre navigateur",
      "seoDescription": "Collez un PGN et laissez Stockfish relire toute la partie : précision des deux camps, chaque imprécision, erreur et gaffe, et le coup qu’il aurait joué. Gratuit, sans inscription, rien n’est envoyé.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Analyse de partie d’échecs gratuite",
      "tagline": "Collez une partie, obtenez une relecture Stockfish de chaque coup sans vous connecter.",
      "intro": "Chargez un PGN : Stockfish tourne dans cet onglet, pas sur un serveur. Allumez le moteur, faites relire toute la partie, et la liste des coups se remplit du verdict de chacun : un chiffre de précision par camp, et une marque sur chaque imprécision, erreur et gaffe. Parcourez n’importe quelle position pour voir les lignes du moteur et le coup qu’il préférait.",
      "features": [
        {
          "title": "Le moteur tourne sur votre appareil",
          "body": "Stockfish 18 est téléchargé une fois et cherche dans votre navigateur. Vos parties ne partent nulle part, il n’y a ni file d’attente ni limite quotidienne."
        },
        {
          "title": "Un verdict sur chaque coup",
          "body": "La relecture complète parcourt chaque position et note le coup joué face à celui que voulait le moteur, en chances de gain plutôt qu’en centipions bruts."
        },
        {
          "title": "La précision des deux camps",
          "body": "Chaque camp reçoit un chiffre unique de précision, plus le décompte des imprécisions, erreurs et gaffes, pour qu’une analyse d’après-partie ait un point de départ."
        },
        {
          "title": "Des lignes où entrer",
          "body": "Toute variante proposée par le moteur peut être jouée sur l’échiquier et parcourue coup par coup, puis abandonnée pour revenir à la partie."
        }
      ],
      "howToTitle": "Comment analyser une partie",
      "howTo": [
        "Collez le PGN dans le cadre, ou ouvrez un fichier .pgn. La partie d’exemple se charge d’un seul appui si vous voulez juste voir comment ça marche.",
        "Appuyez sur Lancer l’analyse. Le moteur pèse environ sept mégaoctets et n’est récupéré qu’une fois : le premier lancement prend un instant.",
        "Appuyez sur Relire toute la partie. La progression avance le long de la liste des coups à mesure que chaque position est calculée.",
        "Touchez un coup pour voir son verdict, le coup préféré du moteur et les lignes issues de cette position."
      ],
      "faq": [
        {
          "question": "L’analyse est-elle vraiment gratuite, sans compte ?",
          "answer": "Oui. Le moteur tourne dans votre navigateur, il n’y a donc rien à décompter. Aucune inscription, aucun crédit, aucun plafond quotidien de parties relues."
        },
        {
          "question": "Quel moteur est-ce, et quelle est la force de l’analyse ?",
          "answer": "Stockfish 18, la version légère mono-thread en WebAssembly. La relecture complète calcule chaque position à une profondeur faible et fixe pour qu’une longue partie finisse en un temps raisonnable ; s’arrêter sur une position la creuse davantage. Pour une préparation d’ouverture sérieuse, un moteur de bureau disposant de minutes par coup verra toujours plus loin."
        },
        {
          "question": "Ma partie est-elle envoyée quelque part ?",
          "answer": "Non. Le PGN est analysé dans la page et le moteur calcule sur votre propre processeur. Rien de la partie ne quitte votre appareil."
        },
        {
          "question": "Que signifient les chiffres de précision ?",
          "answer": "Chaque coup est noté selon la part de chances de gain abandonnée par rapport au choix du moteur, et le chiffre de précision est la moyenne sur les coups d’un camp. C’est un résumé, pas un classement : une partie calme avec peu de décisions obtiendra un meilleur score qu’une partie tranchante jouée tout aussi bien."
        },
        {
          "question": "Pourquoi la première analyse est-elle lente ?",
          "answer": "Le moteur WebAssembly doit être téléchargé avant de pouvoir chercher. Ensuite il est mis en cache et les visites suivantes démarrent immédiatement."
        },
        {
          "question": "Comment analyser une partie jouée sur papier ?",
          "answer": "Photographiez la feuille et passez-la d’abord dans le scanner ScanChess. Il lit l’écriture, vérifie chaque coup selon les règles et vous donne un PGN à coller directement ici."
        }
      ],
      "cta": {
        "title": "La partie que vous voulez analyser est sur papier",
        "body": "ScanChess transforme une feuille photographiée en PGN validé, prêt à relire. Les nouveaux comptes démarrent avec des crédits gratuits.",
        "button": "Numériser une feuille"
      }
    },
    "rating-calculator": {
      "name": "Calculateur de classement FIDE",
      "seoTitle": "Calculateur de classement FIDE – Variation Elo, performance",
      "seoDescription": "Saisissez votre classement et celui de vos adversaires pour voir la variation que la FIDE publierait. Utilise la table officielle 8.1.2, les règles du coefficient K et l’amendement 2025 qui lève le plafond de 400 points au-dessus de 2650.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Calculateur de classement FIDE",
      "tagline": "Votre classement, vos adversaires, et la variation que la liste afficherait vraiment.",
      "intro": "Saisissez votre classement publié, ajoutez une ligne par partie avec le classement de l’adversaire et le résultat, et le calculateur applique le Règlement du classement FIDE tel qu’il est écrit : le score attendu de chaque partie vient de la table 8.1.2, le coefficient de développement suit les règles de l’article 8.3.3, et le total est arrondi comme l’indique l’article 8.3.4. La performance du tournoi est également donnée.",
      "features": [
        {
          "title": "La table officielle, pas la formule",
          "body": "La FIDE convertit un écart de classement en score attendu à l’aide d’une table dont les paliers sont arrondis à deux décimales. Les calculateurs qui utilisent la courbe logistique s’en écartent d’un point ou plus sur un long tournoi."
        },
        {
          "title": "La règle des 2650",
          "body": "Depuis le 1er octobre 2025, le plafond de 400 points sur l’écart de classement ne s’applique qu’en dessous de 2650. Au-dessus, l’écart réel est utilisé, ce qui change le coût d’une nulle contre un adversaire bien plus faible."
        },
        {
          "title": "Tous les cas du coefficient K",
          "body": "Quarante tant que vous complétez vos trente premières parties, quarante pour les jeunes en dessous de 2300, dix une fois 2400 atteint, vingt sinon, et le plafond qui maintient K multiplié par le nombre de parties à 700 au plus."
        },
        {
          "title": "La performance aussi",
          "body": "La moyenne des adversaires plus l’écart correspondant à votre score fractionnaire, d’après la table 8.1.1 — le chiffre que les rapports de tournoi impriment."
        }
      ],
      "howToTitle": "Comment calculer votre variation de classement",
      "howTo": [
        "Indiquez le classement auquel vous êtes publié. Si vous complétez encore vos trente premières parties classées, ou si vous êtes jeune, cochez la case correspondante.",
        "Ajoutez une ligne par partie : le classement de l’adversaire, et si vous avez gagné, annulé ou perdu.",
        "Lisez le score attendu à côté de chaque ligne ; le nombre entre parenthèses est l’écart de classement réellement utilisé après plafonnement.",
        "Le panneau affiche votre nouveau classement, la variation et la performance du tournoi."
      ],
      "faq": [
        {
          "question": "Comment la FIDE calcule-t-elle une variation de classement ?",
          "answer": "Pour chaque partie, elle prend l’écart de classement, lit le score attendu dans la table 8.1.2, et le soustrait de ce que vous avez réellement marqué. Ces différences sont additionnées sur le tournoi puis multipliées par votre coefficient de développement K. Le résultat est arrondi à l’entier, un demi étant arrondi en s’éloignant de zéro."
        },
        {
          "question": "Quel coefficient K s’applique à moi ?",
          "answer": "K vaut 40 tant que vous complétez des tournois totalisant vos 30 premières parties classées, et 40 pour un joueur jusqu’à la fin de l’année de ses 18 ans tant que son classement est sous 2300. Il vaut 10 dès qu’un classement publié a atteint 2400, et y reste même si le classement baisse ensuite. Sinon, il vaut 20."
        },
        {
          "question": "Pourquoi l’écart est-il plafonné à 400 points ?",
          "answer": "Pour éviter qu’un seul résultat contre un adversaire bien plus faible ou bien plus fort ne déplace trop un classement. Depuis le 1er octobre 2025, le plafond ne s’applique qu’aux joueurs classés sous 2650 ; à partir de 2650, l’écart réel est utilisé dans tous les cas."
        },
        {
          "question": "Cela vaut-il pour les classements rapide et blitz ?",
          "answer": "Oui. Les règlements rapide et blitz utilisent la même table de probabilité et les mêmes règles de K que la liste standard : l’arithmétique vaut pour les trois. Ce qui change, c’est quels tournois comptent pour quelle liste."
        },
        {
          "question": "Est-ce un outil officiel de la FIDE ?",
          "answer": "Non. Il applique le Règlement du classement publié par la FIDE, mais c’est la liste elle-même qui fait foi. Votre fédération peut aussi classer le même tournoi sur une liste nationale aux règles différentes."
        },
        {
          "question": "Où trouver le classement de mes adversaires ?",
          "answer": "Sur la feuille d’appariement ou la liste de départ publiée du tournoi ; ce sont ces classements qui servent au calcul, pas celui de l’adversaire au moment où la liste paraît."
        }
      ],
      "cta": {
        "title": "Les feuilles de ce tournoi sont encore dans votre sac",
        "body": "ScanChess transforme une feuille photographiée en PGN validé, pour que les parties derrière cette variation soient consultables plutôt qu’empilées dans un tiroir.",
        "button": "Numériser une feuille"
      }
    },
    "fen-to-image": {
      "name": "FEN en image",
      "seoTitle": "FEN en image – Créateur gratuit de diagrammes (PNG, SVG)",
      "seoDescription": "Transformez un FEN en image d’échiquier. Choisissez la taille, la couleur des cases et l’orientation, puis téléchargez un PNG ou un SVG vectoriel. Gratuit, sans inscription, rien n’est envoyé.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "FEN en image",
      "tagline": "Collez un FEN, obtenez un diagramme à télécharger en PNG ou en SVG.",
      "intro": "Collez un FEN et la position est dessinée en un échiquier téléchargeable. Choisissez une taille jusqu’à 1600 pixels, la couleur des cases, retournez l’échiquier ou retirez les coordonnées, puis emportez-le en PNG pour une publication ou en SVG qui reste net à toute taille. L’échiquier est dessiné à partir de pièces vectorielles présentes dans la page : le fichier ne contient aucune image externe et rien n’est envoyé pour le produire.",
      "features": [
        {
          "title": "PNG ou SVG vectoriel",
          "body": "PNG partout où une image est attendue ; SVG pour l’impression, les diapositives et tout ce qui sera redimensionné."
        },
        {
          "title": "Tailles jusqu’à 1600 pixels",
          "body": "Assez petit pour un message de forum, assez grand pour une page imprimée ou une fiche de cours."
        },
        {
          "title": "Cinq couleurs d’échiquier",
          "body": "Brun classique, vert tournoi, bleu, noyer et ardoise, avec des coordonnées désactivables."
        },
        {
          "title": "N’importe quelle position, pas seulement les légales",
          "body": "Un fragment d’étude sans rois, ou un problème avec des pièces sur la moitié de l’échiquier, se dessine de la même façon. Seul le champ de placement est nécessaire."
        }
      ],
      "howToTitle": "Comment transformer un FEN en image",
      "howTo": [
        "Collez le FEN dans le cadre. Seul le premier champ, le placement des pièces, sert à l’image.",
        "Choisissez une taille, une couleur d’échiquier et le camp qui se trouve en bas.",
        "Téléchargez le PNG, ou prenez le SVG si le diagramme sera imprimé ou redimensionné.",
        "Besoin de modifier la position d’abord ? Ouvrez-la dans l’éditeur d’échiquier, déplacez les pièces et revenez."
      ],
      "faq": [
        {
          "question": "Qu’est-ce qu’un FEN ?",
          "answer": "Le FEN (notation Forsyth-Edwards) est une seule ligne de texte qui décrit une position d’échecs : où sont les pièces, à qui le trait, les droits de roque, la case de prise en passant et les deux compteurs de coups. C’est ainsi qu’une position isolée voyage entre programmes, comme le PGN transporte une partie entière."
        },
        {
          "question": "Faut-il télécharger le PNG ou le SVG ?",
          "answer": "PNG si cela va dans une publication, une conversation ou un document qui veut une image. SVG si cela sera imprimé, projeté ou agrandi plus tard, car un vecteur reste net à toute taille."
        },
        {
          "question": "L’image est-elle envoyée ou filigranée ?",
          "answer": "Ni l’un ni l’autre. L’échiquier est dessiné dans votre navigateur et le fichier écrit sur votre appareil. Aucun filigrane, aucune obligation d’attribution."
        },
        {
          "question": "Puis-je utiliser ces diagrammes dans un livre ou un cours ?",
          "answer": "Oui. Les pièces proviennent de notre propre jeu vectoriel et les images ne portent aucune restriction : elles peuvent aller dans des leçons, des articles et des documents imprimés."
        },
        {
          "question": "Comment obtenir un FEN depuis la photo d’un échiquier ?",
          "answer": "Photographiez la position et laissez le lecteur d’échiquier ScanChess la déchiffrer. Il renvoie le FEN, que vous pouvez coller ici pour produire un diagramme propre."
        }
      ],
      "cta": {
        "title": "La position est sur un vrai échiquier devant vous",
        "body": "Photographiez-la et ScanChess la lit en un FEN. Reconnaître un échiquier coûte un seul crédit.",
        "button": "Numériser un échiquier"
      }
    },
    "pgn-to-gif": {
      "name": "Créateur de GIF d’échecs",
      "seoTitle": "PGN en GIF – Créateur gratuit de parties d’échecs animées",
      "seoDescription": "Collez un PGN et téléchargez la partie en GIF animé. Choisissez la taille, la vitesse, les couleurs de l’échiquier et les coups à inclure. Gratuit, sans inscription, encodé dans votre navigateur.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "Créateur de GIF d’échecs",
      "tagline": "Transformez un PGN en GIF animé que vous pouvez publier partout.",
      "intro": "Chargez une partie : l’outil dessine chaque position, les encode en GIF animé et vous remet le fichier. Choisissez la taille et la vitesse, les couleurs de l’échiquier, mettez en évidence les cases touchées par chaque coup, et coupez l’animation à la portion de partie qui mérite d’être vue. Les images sont dessinées et le GIF est encodé dans cette page : une partie ne quitte jamais votre appareil pour devenir une image.",
      "features": [
        {
          "title": "Encodé dans votre navigateur",
          "body": "Aucun envoi, aucune file d’attente, aucun filigrane. Le GIF est écrit sur votre appareil, de la première image à la dernière."
        },
        {
          "title": "Seulement les coups qui comptent",
          "body": "Fixez un premier et un dernier coup pour n’animer que la combinaison, plutôt que quatre-vingts demi-coups de manœuvres que personne ne regardera."
        },
        {
          "title": "Trois tailles et trois vitesses",
          "body": "240, 320 ou 480 pixels de côté, entre une demi-seconde et une seconde et demie par coup, avec une pause plus longue sur la première et la dernière image pour que la boucle se lise."
        },
        {
          "title": "Le coup se suit facilement",
          "body": "Les cases de départ et d’arrivée sont teintées : l’œil trouve chaque coup au lieu de chercher ce qui a changé."
        }
      ],
      "howToTitle": "Comment faire un GIF d’échecs",
      "howTo": [
        "Collez le PGN, ou ouvrez un fichier .pgn. La partie d’exemple se charge d’un seul appui.",
        "Coupez la plage si vous ne voulez qu’une partie du jeu, puis choisissez une taille, une vitesse et les couleurs de l’échiquier.",
        "Appuyez sur Générer. La barre de progression compte les images à mesure qu’elles sont dessinées.",
        "Vérifiez l’aperçu et appuyez sur Télécharger pour enregistrer le GIF."
      ],
      "faq": [
        {
          "question": "Quelle sera la taille du fichier ?",
          "answer": "Un extrait de vingt coups en 320 pixels fait généralement quelques centaines de kilo-octets ; une partie entière en 480 pixels peut atteindre plusieurs mégaoctets. Couper la plage et descendre d’une taille est le moyen le plus rapide d’obtenir un GIF publiable."
        },
        {
          "question": "Pourquoi y a-t-il une limite au nombre de coups ?",
          "answer": "Au-delà de deux cents images, un GIF cesse d’être partageable : il dépasse ce que la plupart des sites acceptent et personne ne le regarde jusqu’au bout. La plage est bornée plutôt que la partie refusée."
        },
        {
          "question": "Ma partie est-elle envoyée pour faire le GIF ?",
          "answer": "Non. L’échiquier est dessiné et le GIF encodé dans votre navigateur, ce qui explique aussi que le travail se fasse sur votre appareil et non instantanément."
        },
        {
          "question": "Puis-je utiliser le GIF à des fins commerciales ?",
          "answer": "Oui. Les pièces sont notre propre jeu vectoriel, il n’y a pas de filigrane et rien dans le résultat n’est restreint."
        },
        {
          "question": "Puis-je faire un GIF d’une partie jouée sur l’échiquier ?",
          "answer": "Numérisez d’abord la feuille avec ScanChess. Une fois la partie en PGN, collez-la ici et animez la portion que vous voulez montrer."
        }
      ],
      "cta": {
        "title": "La partie qui mérite d’être animée est sur une feuille",
        "body": "ScanChess transforme une feuille photographiée en PGN en quelques secondes, et le PGN est tout ce dont cet outil a besoin.",
        "button": "Numériser une feuille"
      }
    },
    "pgn-to-pdf": {
      "name": "PGN en PDF",
      "seoTitle": "PGN en PDF – Imprimer une partie d’échecs avec diagrammes",
      "seoDescription": "Collez un PGN et mettez la partie en page pour le papier : deux ou trois colonnes de coups, des diagrammes où vous voulez, A4 ou Letter. Enregistrez en PDF depuis la boîte d’impression. Gratuit, sans inscription.",
      "kicker": "Outil gratuit · Aucun compte requis",
      "h1": "PGN en PDF",
      "tagline": "Mettez une partie en page pour le papier, avec diagrammes, et enregistrez-la en PDF.",
      "intro": "Collez un PGN et la partie est composée comme une feuille imprimée : les joueurs et le tournoi en haut, les coups en colonnes, et des diagrammes aux endroits que vous choisissez. Imprimez-la, ou choisissez « Enregistrer en PDF » dans la boîte d’impression pour garder le fichier. Comme cela passe par l’imprimante du navigateur, les coups restent du texte sélectionnable et les diagrammes restent vectoriels : le PDF est net à tout zoom et assez léger pour être envoyé par courriel.",
      "features": [
        {
          "title": "Une feuille de partie, pas une capture d’écran",
          "body": "Les coups sont du texte et les diagrammes des dessins vectoriels : le fichier s’imprime proprement et se laisse chercher et copier."
        },
        {
          "title": "Des diagrammes où vous voulez",
          "body": "Position finale seulement, tous les dix coups, tous les vingt, ou aucun. Chaque diagramme teinte les cases touchées par le coup."
        },
        {
          "title": "A4 ou Letter",
          "body": "La page est calibrée pour les deux, avec des marges qui gardent les colonnes loin du bord sur une imprimante domestique."
        },
        {
          "title": "Deux ou trois colonnes",
          "body": "Deux colonnes pour une partie où ajouter des notes à la main, trois pour tenir une longue partie sur une seule feuille."
        }
      ],
      "howToTitle": "Comment enregistrer une partie en PDF",
      "howTo": [
        "Collez le PGN, ou ouvrez un fichier .pgn.",
        "Choisissez deux ou trois colonnes, l’emplacement des diagrammes et le format de papier.",
        "Appuyez sur Imprimer. Dans la boîte qui s’ouvre, réglez la destination sur « Enregistrer en PDF ».",
        "Tout sauf la page elle-même est exclu de l’impression : le fichier commence à la feuille de partie."
      ],
      "faq": [
        {
          "question": "Où est le bouton de téléchargement ?",
          "answer": "Il n’y a pas de téléchargement séparé : la boîte d’impression est le téléchargement. Choisissez « Enregistrer en PDF » comme destination et indiquez où va le fichier. Cela donne un fichier plus petit et plus net que si le PDF était fabriqué dans la page."
        },
        {
          "question": "Les coups seront-ils sélectionnables dans le PDF ?",
          "answer": "Oui. La feuille de partie est du vrai texte : on peut la chercher, la copier et la faire lire par un lecteur d’écran. Un PDF fait à partir d’une capture ne permet rien de tout cela."
        },
        {
          "question": "Puis-je imprimer plusieurs parties à la fois ?",
          "answer": "Une partie par feuille, et un PGN à plusieurs parties place un sélecteur au-dessus du cadre pour passer de l’une à l’autre. Imprimez-les chacune à son tour."
        },
        {
          "question": "Imprime-t-il les commentaires et variantes de mon PGN ?",
          "answer": "Non. La mise en page est la feuille de partie : les coups joués, avec les balises et le résultat. Commentaires, variantes et symboles d’annotation sont laissés de côté pour que la feuille reste lisible sur papier."
        },
        {
          "question": "Puis-je imprimer une feuille vierge à la place ?",
          "answer": "Oui, l’outil de feuilles imprimables propose des mises en page pour différentes cadences, avec de la place pour le tournoi, la ronde et les noms des joueurs."
        }
      ],
      "cta": {
        "title": "Dans l’autre sens, du papier au PGN",
        "body": "ScanChess transforme une feuille photographiée en PGN validé. Les nouveaux comptes reçoivent des crédits gratuits, sans carte bancaire.",
        "button": "Numériser une feuille"
      }
    }
  },
  "experience": {
    "startWithImage": "Commencez avec votre image",
    "heroTitle": "Donnez vie aux échecs de vos images.",
    "heroLead": "Transformez un diagramme en position à analyser, ou une feuille manuscrite en partie à rejouer. Vérifiez le résultat, puis poursuivez.",
    "boardTitle": "Une image devient une position modifiable",
    "boardLead": "Importez une image nette pour obtenir un FEN. Vérifiez les pièces et le trait. Les captures et diagrammes se lisent mieux ; les photos inclinées peuvent nécessiter des corrections.",
    "sheetTitle": "Feuilles manuscrites vers PGN",
    "sheetLead": "Importez dans l’ordre les pages d’une seule partie. Comparez les coups à l’original, puis exportez le PGN. Pour plusieurs parties, utilisez le traitement par lots.",
    "samples": "Pas d’image ? Essayez un exemple.",
    "sampleHint": "Exemples préchargés : sans compte, sans requête OCR et sans crédit dépensé. Explorez et modifiez le résultat.",
    "sample_board": "Photo d’échiquier → position modifiable",
    "sample_scoresheet": "Feuille de partie → 8 premiers coups complets",
    "sample_review": "Exercez-vous à vérifier un coup signalé",
    "sampleNotice": "Exemple préchargé ou exercice, sans reconnaissance en direct. La feuille ne montre que les 8 premiers coups complets. Le signalement est pédagogique, pas une mesure OCR.",
    "importNotice": "Notation importée directement, sans reconnaissance d’image. Vérifiez le contenu avant utilisation.",
    "checkPosition": "La légalité ne prouve pas la fidélité à l’original. Comparez le résultat à votre image et corrigez les différences.",
    "newTask": "Nouveau scan",
    "continueTask": "Reprendre votre tâche",
    "replaceTitle": "Conserver le travail actuel ?",
    "replaceHint": "Vos images ou votre résultat sont toujours présents. Continuez ou remplacez-les pour commencer une autre tâche. Exportez d’abord ce que vous souhaitez garder.",
    "replace": "Remplacer et commencer",
    "keep": "Continuer la tâche actuelle",
    "reviewTitle": "Vérifiez votre partie",
    "reviewNext": "Vérifier le coup suivant",
    "reviewRemaining": "{{count}} coups à vérifier",
    "sourceImage": "Image d’origine",
    "zoom": "Zoom",
    "extras": "Informations, notes et partage",
    "editPosition": "Corriger les pièces et la position",
    "applyPosition": "Utiliser cette position",
    "turnHint": "À qui le trait ? L’orientation ne le détermine pas. Le roque et les autres données historiques peuvent aussi nécessiter une correction dans l’éditeur.",
    "confirmPosition": "J’ai vérifié la position",
    "reviewed": "Vérifiée par vous",
    "unreviewed": "Pas encore vérifiée par vous. Vous pouvez copier ce FEN.",
    "outputTitle": "Une position. Ou une partie entière.",
    "boardCost": "Reconnaissance avec connexion : 1 crédit par échiquier. Les nouveaux comptes reçoivent 10 crédits gratuits.",
    "sheetCost": "Reconnaissance avec connexion : 2 crédits par scan, y compris les pages d’une seule partie.",
    "lowBalance": "Il reste {{balance}} crédits, soit {{count}} scans dans ce mode.",
    "boardWaiting": "Lecture des pièces et de l’orientation. Vous pourrez vérifier et corriger la position dès réception du résultat.",
    "freeAllowance": "10 crédits à l’inscription : jusqu’à 10 échiquiers ou 5 scans de feuilles. Sans carte bancaire.",
    "pricingUsage": "Utilisation mixte possible : 100 crédits couvrent 100 échiquiers ou 50 scans de feuilles. Édition, lecture, export PGN et historique restent gratuits.",
    "selectedPlan": "Formule choisie : {{plan}}. Vérifiez le prix ci-dessous pour continuer.",
    "group_read": "Lire et analyser",
    "group_create": "Préparer et exporter",
    "group_compete": "Préparer et organiser un tournoi",
    "toolsTitle": "Vous avez déjà un PGN ou FEN ?",
    "toolsLead": "Rejouez, vérifiez, analysez ou préparez vos documents à partager. Ces outils fonctionnent dans votre navigateur sans compte.",
    "tournamentTitle": "Les feuilles d’une ronde entière ?",
    "tournamentLead": "Regroupez les pages par partie, ajoutez les appariements et préparez la ronde pour vérification et export PGN. Chaque tâche dispose de son propre parcours.",
    "faqBoard": "Quelles images d’échiquier utiliser ?",
    "faqBoardComparison": "Quelle différence avec FENShot ou Chessify ?",
    "boardComparison": "Ces outils convertissent une image en FEN avec des choix différents. FENShot privilégie la reconnaissance locale et gratuite des captures, tandis que Chessify propose le scan d’échiquier dans son service. ScanChess accepte captures, diagrammes et photos nettes, avec correction près du résultat ; la reconnaissance demande une connexion et 1 crédit. Vérifiez toujours le résultat.",
    "faqSheet": "Puis-je importer plusieurs pages d’une partie ?",
    "faqCorrection": "Puis-je corriger le résultat ?",
    "faqExample": "Les exemples consomment-ils des crédits ?",
    "correctionHelp": "Ouvrez un coup signalé ou l’éditeur de positions pour corriger le résultat. La modification ne consomme pas de crédits.",
    "analysisHint": "Essayez des coups légaux en glissant les pièces, ou touchez une pièce puis sa destination. La position originale reste inchangée.",
    "resetAnalysis": "Revenir à la position originale",
    "partialTitle": "Certains coups restent à corriger",
    "partialHint": "La partie entière ne peut pas encore être rejouée. Exportez seulement le début valide, avec un résultat non terminé. Les coups originaux sont conservés.",
    "partialConfirm": "Exporter le début valide"
  },
  "refinement": {
    "preparing": "Préparation des images…",
    "boardInputHint": "Captures, diagrammes, photos",
    "sheetInputHint": "Une partie, une ou plusieurs pages",
    "fileGuide": "JPG, PNG, WebP · 15 Mo par image maximum",
    "playablePosition": "Position modifiable",
    "tryResult": "Essayez cette position",
    "sampleHint": "Exemples gratuits, sans compte ni crédits.",
    "useOwnImage": "Utiliser mon image",
    "portable": "Exportez le résultat vers vos outils d’échecs habituels.",
    "position": "Position",
    "correct": "Corriger",
    "needTurn": "Choisissez le trait avant l’analyse. Ce FEN indique actuellement : {{side}}.",
    "reviewHint": "Vérifiez les pièces ou les coups signalés. Les corrections sont gratuites.",
    "analyse": "Analyser la position",
    "notChecked": "Pas encore vérifiée par vous",
    "moreOptions": "Autres options",
    "stepImage": "Image",
    "stepReview": "Vérification",
    "stepUse": "Utilisation",
    "boardReview": "Vérifiez votre position",
    "sample": "Exemple",
    "imported": "Importé",
    "unsaved": "Modifications non enregistrées",
    "saved": "Enregistré",
    "reviewPending": "À vérifier",
    "boardSampleHint": "Essayez la modification et l’analyse.",
    "sheetSampleHint": "8 premiers coups complets ; le signalement fait partie de l’exercice.",
    "next": "Suivant",
    "save": "Enregistrer",
    "export": "Exporter",
    "guideLead": "Choisissez votre document et suivez les étapes d’importation, de vérification et d’exportation.",
    "exportHint": "Téléchargez ou copiez le PGN après vérification. Si un coup est invalide, vous pouvez choisir d’exporter seulement le début jouable."
  },
  "scanFlow": {
    "signInToScan_one": "Se connecter et numériser · {{cost}} crédit",
    "pagesReady_one": "1 page prête. Ajoutez des pages de cette partie ou lancez la numérisation.",
    "replaceImage": "Remplacer l’image",
    "addPages": "Ajouter des pages",
    "boardReady": "Image prête. Vérifiez-la, puis lancez la reconnaissance ci-dessous.",
    "pagesReady": "{{count}} pages prêtes. Classez-les dans l’ordre de la partie avant de les numériser.",
    "signInToScan": "Se connecter et numériser · {{cost}} crédits",
    "readyLead": "Vérifiez vos images, puis lancez la reconnaissance. Vous pouvez changer de type sans les importer à nouveau."
  }
}
