{
  "a11y": {
    "bold": "Gras",
    "decrement": "Diminuer",
    "embeddedVideo": "Vidéo intégrée",
    "findMyLocation": "Trouver ma position",
    "home": "Accueil",
    "increment": "Augmenter",
    "italic": "Italique",
    "link": "Lien",
    "maxPrice": "Prix maximum",
    "minPrice": "Prix minimum",
    "openPicker": "Ouvrir le sélecteur",
    "remove": "Retirer",
    "underline": "Souligné",
    "uploadPreview": "Fichier importé {index}",
    "zoomIn": "Zoom avant",
    "zoomOut": "Zoom arrière"
  },
  "account": {
    "changeEmail": "Changer d’e-mail",
    "changePassword": "Changer le mot de passe",
    "emailChangeConfirmed": "Votre e-mail a été mis à jour.",
    "emailChangeInvalid": "Ce lien de confirmation est invalide ou a expiré.",
    "emailChangeSent": "Confirmez le changement via le lien envoyé à votre nouvelle adresse.",
    "emailTaken": "Cet e-mail est déjà utilisé.",
    "newEmail": "Nouvel e-mail",
    "noEmail": "Non défini",
    "passwordHint": "Envoyer un lien de réinitialisation à votre e-mail",
    "passwordResetSent": "Nous avons envoyé un lien de réinitialisation du mot de passe à votre e-mail.",
    "telegram": {
      "hint": "Recevez des notifications et répondez aux voyageurs depuis Telegram",
      "link": "Lier Telegram",
      "linked": "Lié",
      "title": "Telegram"
    }
  },
  "activity": {
    "activityType": {
      "Culture": "Culture",
      "Education": "Éducation",
      "Entertainment": "Divertissement",
      "Food": "Gastronomie",
      "Nature": "Nature",
      "Sports": "Sports",
      "Wellness": "Bien-être"
    },
    "create": "Créer une activité",
    "cutoffHint": "Le départ n’est plus réservable ce nombre de minutes avant son début.",
    "cutoffMinutes": "Clôture des réservations, minutes",
    "duration": "Durée (minutes)",
    "label": "{count, plural, =1 {Activité} other {Activités}}",
    "perPerson": "par personne",
    "person": "personne",
    "schedule": {
      "addTime": "Ajouter une heure",
      "booked": "{count, plural, =1 {# réservée} other {# réservées}}",
      "capacity": "Places par départ",
      "created": "{count, plural, =0 {Rien de nouveau : ces départs existent déjà} =1 {# départ créé} other {# départs créés}}",
      "deleteBlocked": "Ce départ a des réservations et ne peut pas être supprimé.",
      "disableInstead": "Le désactiver",
      "empty": "Aucun départ ce mois-ci pour le moment.",
      "generate": "Créer les départs",
      "label": "Horaires",
      "rule": "Ajouter des départs",
      "seatsLeft": "{count, plural, =1 {# place restante} other {# places restantes}}",
      "times": "Heure",
      "weekdays": "Jours de la semaine"
    },
    "validation": {
      "createError": "Impossible de créer l’activité. Veuillez réessayer.",
      "updateError": "Impossible de mettre à jour l’activité. Veuillez réessayer."
    }
  },
  "admin": {
    "createConfirm": "Une clé de test est émise tout de suite et ne s’affiche qu’une fois : préparez-vous à la copier.",
    "createConfirmTitle": "Créer le marchand « {name} » ?",
    "createMerchant": "Créer un marchand",
    "created": "Créé",
    "merchantList": "Marchands",
    "merchantName": "Nom du marchand",
    "regenerate": "Régénérer la clé",
    "regenerateConfirm": "L’ancienne clé cesse de fonctionner immédiatement — toutes les intégrations qui l’utilisent devront être mises à jour. La nouvelle clé n’est affichée qu’une fois.",
    "regenerateConfirmTitle": "Régénérer la clé « {mode} » ?",
    "walletLabel": "Libellé (optionnel)",
    "walletLabelPlaceholder": "Mon portefeuille"
  },
  "agent": {
    "bucket": {
      "earlier": "Plus ancien",
      "today": "Aujourd’hui",
      "week": "7 derniers jours",
      "yesterday": "Hier"
    },
    "collection": {
      "count": "{count, plural, =1 {# résultat} other {# résultats}}",
      "empty": "Aucun résultat — essayez d’affiner la requête",
      "error": "Impossible de charger la sélection",
      "openAll": "Voir tous les résultats",
      "title": "Résultats pour : {query}",
      "titleNoQuery": "Une sélection pour vous"
    },
    "command": {
      "ambiguous": "Plusieurs entrées s’appellent « {key} » — choisissez-en une : {options}",
      "arg": {
        "key": "clé"
      },
      "compact": "Condenser l’historique de la conversation",
      "compactUnavailable": "Rien à condenser dans une nouvelle conversation pour l’instant",
      "escape": "Commencez un message par // pour envoyer un texte qui commence par /",
      "forget": "Oublier quelque chose que l’agent retient",
      "forgetAll": "Tout oublier",
      "forgetAllMessage": "L’agent oubliera tout ce qu’il retient de vous. Cette action est irréversible.",
      "forgetAllTitle": "Tout oublier ?",
      "forgetButton": "Oublier",
      "forgotten": "« {key} » oublié",
      "forgottenAll": "Mémoire effacée",
      "help": "Afficher les commandes disponibles",
      "helpTitle": "Commandes",
      "limit": "Limite de tours atteinte — réessayez plus tard",
      "memory": "Afficher ce que l’agent retient",
      "memoryEmpty": "L’agent ne retient encore rien",
      "memoryTitle": "Ce que l’agent retient",
      "new": "Démarrer une nouvelle conversation",
      "notFound": "Rien n’est retenu sous « {key} »",
      "nothingToCompact": "Rien à condenser",
      "unknown": "Commande inconnue : /{name}"
    },
    "compaction": {
      "done": "Historique condensé",
      "running": "Condensation de l’historique…"
    },
    "deleteConfirm": "Cette conversation sera supprimée définitivement.",
    "deleteThread": "Supprimer la conversation",
    "error": {
      "generic": "Une erreur est survenue",
      "threadGone": "Cette conversation n’existe plus"
    },
    "hint": "Décrivez ce que vous cherchez en langage courant.",
    "inputPlaceholder": "Posez une question…",
    "newThread": "Nouveau fil",
    "quickSearch": "Recherche rapide",
    "searchThreads": "Rechercher les conversations",
    "summary": "Plus tôt dans cette conversation",
    "title": "Demander à l’IA",
    "tool": {
      "createCheckoutLink": "Préparation du paiement",
      "deleteUserPreference": "Oubli d’une préférence",
      "failed": "{name} — échec",
      "getActivity": "Consultation de l’activité",
      "getActivityOffers": "Vérification des départs",
      "getUnit": "Consultation du logement",
      "getUnitAvailability": "Vérification de la disponibilité",
      "getUnitOffers": "Vérification des tarifs",
      "getUserBookings": "Vérification de vos réservations",
      "getUserMemory": "Récupération des préférences",
      "saveUserPreference": "Enregistrement de la préférence"
    },
    "untitled": "Sans titre"
  },
  "auth": {
    "errorThrottle": "Trop de tentatives. Réessayez plus tard.",
    "sessionExpired": "Votre session a expiré. Veuillez vous reconnecter."
  },
  "booking": {
    "addChild": "Ajouter un enfant",
    "adults": "Adultes",
    "all": "Toutes",
    "approve": "Approuver",
    "board": {
      "AllInclusive": "Tout compris",
      "BedAndBreakfast": "Petit-déjeuner inclus",
      "FullBoard": "Pension complète",
      "HalfBoard": "Demi-pension",
      "RoomOnly": "Sans repas"
    },
    "book": "Réserver",
    "cancel": "Annuler la réservation",
    "cancelConfirm": "Êtes-vous sûr de vouloir annuler cette réservation ?",
    "childUnderOne": "Moins d’un an",
    "childYears": "{count, plural, one {# an} other {# ans}}",
    "datesUnavailable": "Les dates sélectionnées ne sont pas disponibles",
    "escrowNote": "Vous ne serez pas encore débité — les fonds sont en séquestre jusqu’à l’approbation de l’hôte.",
    "guest": {
      "checkingIn": "Arrivée",
      "title": "Qui séjourne"
    },
    "hostSince": "Hôte depuis {year}",
    "infants": "Bébés",
    "minStay": "{count, plural, =1 {Séjour minimum : # nuit} other {Séjour minimum : # nuits}}",
    "night": "{count, plural, =1 {nuit} other {nuits}}",
    "notFound": "Réservation introuvable",
    "openChat": "Ouvrir le chat",
    "options": {
      "board": "Repas",
      "cancellation": "Annulation",
      "chooseDeparture": "Choisissez un départ",
      "chooseRoom": "Choisir une chambre",
      "feesAtProperty": "+{amount} de taxes et frais sur place",
      "feesBelow": "taxes et frais ci-dessous",
      "nonRefundable": "Non remboursable",
      "otherBoard": "Autre formule",
      "picked": "sélectionné",
      "priceChanged": "Le prix ou les conditions ont changé. Veuillez choisir à nouveau.",
      "rateCount": "{count, plural, =1 {# tarif} other {# tarifs}}",
      "refundable": "Annulation gratuite",
      "slotGone": "Ce départ n’est plus disponible. Veuillez en choisir un autre.",
      "stayUnit": "/ {count, plural, =1 {nuit} other {# nuits}}",
      "taxesIncluded": "Taxes incluses",
      "unavailable": "Ces dates viennent de devenir indisponibles. Essayez d’autres dates.",
      "unavailableCell": "indisponible",
      "viewPhotos": "Voir les photos"
    },
    "pay": {
      "bookAgain": "Réserver à nouveau",
      "bridging": "Le paiement est en cours de transfert vers Solana — cela peut prendre quelques minutes et reprend automatiquement.",
      "expired": "La fenêtre de paiement est fermée. Ce qui a déjà été envoyé est renvoyé vers votre portefeuille.",
      "info": {
        "cctp": "L’USDC passe de votre portefeuille EVM au séquestre Solana via Circle CCTP. Tout remboursement est versé en USDC sur votre portefeuille Solana — pas sur le portefeuille EVM utilisé pour payer.",
        "cctpLink": "Comment fonctionne CCTP",
        "solana": "Votre paiement est conservé sous séquestre on-chain et versé à l’hôte après l’arrivée. En cas d’annulation, le montant intégral revient au portefeuille utilisé pour payer."
      },
      "method": "Méthode de paiement",
      "now": "Payer",
      "processing": "Paiement accepté — confirmation on-chain, cela peut prendre jusqu’à une minute.",
      "qrHint": "Scannez pour payer",
      "submitted": "Paiement envoyé",
      "window": "Le paiement est attendu dans un délai limité.",
      "windowClosed": "La fenêtre de paiement se ferme.",
      "windowLeft": "Temps restant pour payer : {time}."
    },
    "payout": {
      "held": "Sous séquestre · versement automatique à l’hôte après {date}",
      "label": "Versement",
      "paid": "Versé {amount} → {address}",
      "processing": "Versement en cours…",
      "refunded": "Remboursé",
      "resolved": "Litige résolu"
    },
    "pets": "Animaux",
    "phase": {
      "approved": "Confirmée",
      "cancelled": "Annulée",
      "completed": "Terminée",
      "declined": "Refusée",
      "dispute": "En litige",
      "disputeFavorGuest": "Tranché en faveur du voyageur",
      "disputeFavorHost": "Tranché en faveur de l’hôte",
      "disputeResolving": "Litige en règlement",
      "expired": "Expirée",
      "paid": "Sous séquestre",
      "pending": "En attente de paiement",
      "refunding": "Remboursement en cours",
      "requested": "Demandée"
    },
    "refund": "Remboursement",
    "refundConfirm": "Confirmer le remboursement",
    "refundPreview": "Vous récupérerez {amount} {currency}",
    "refundProcessing": "Remboursement accepté — règlement on-chain, cela peut prendre jusqu’à une minute.",
    "refundRequest": "Demander un remboursement",
    "request": "Demande de réservation",
    "search": "Rechercher par ID de réservation ou de logement…",
    "settled": "Payé sous séquestre",
    "statusApproved": "Approuvée",
    "statusPending": "En attente",
    "stays": "Séjours",
    "supply": {
      "approved": "Confirmé auprès de l’hôtel",
      "cancelDisputeOpen": "L’annulation n’est pas disponible tant qu’un litige est ouvert.",
      "cancelledBySupplier": "Nous n’avons pas pu confirmer ce séjour auprès de l’hôtel.",
      "confirming": "Confirmation de votre séjour auprès de l’hôtel…",
      "note": "Paiement par carte. L’hôtel confirme votre séjour après le paiement.",
      "payTitle": "Finaliser le paiement",
      "reference": "Référence : {reference}",
      "refundNote": "Tout remboursement suit la politique d’annulation de l’hôtel.",
      "sessionInvalid": "Cette session de paiement n’est plus valide. Annulez la réservation et réservez à nouveau."
    },
    "toSettle": "À payer sous séquestre",
    "tripDetails": "Détails du voyage"
  },
  "cancellation": {
    "addTier": "Ajouter un palier",
    "beforeDate": "Avant le {date}",
    "beforeHours": "{count, plural, one {# heure avant l’arrivée} other {# heures avant l’arrivée}}",
    "error": {
      "increasing": "Le remboursement ne peut pas augmenter à l’approche de l’arrivée.",
      "range": "Le remboursement doit être entre 0 et 100 %.",
      "zeroTier": "Ajoutez exactement un palier à 0 heure (remboursement final)."
    },
    "label": "Politique d’annulation",
    "leadHours": "Heures avant l’arrivée",
    "preset": {
      "flexible": "Flexible",
      "moderate": "Modérée",
      "strict": "Stricte"
    },
    "refund": "{percent, number, ::percent .##} remboursé",
    "refundPercent": "Remboursement %",
    "tier": "Palier {index}"
  },
  "chat": {
    "accept": "Accepter",
    "bookingTitle": "Réservation n° {id}",
    "copy": "Copier",
    "deleteChat": "Supprimer le chat",
    "edited": "(modifié)",
    "emptyMessage": "Le message ne peut pas être vide",
    "filterAll": "Tous",
    "forward": "Transférer",
    "forwardTitle": "Transférer à…",
    "forwarded": "Transféré",
    "forwardedFrom": "Transféré de {username}",
    "group": {
      "addMembers": "Ajouter des membres",
      "created": "Groupe créé",
      "demoteAdmin": "Rétrograder en membre",
      "infoTitle": "Infos du groupe",
      "makeAdmin": "Promouvoir admin",
      "memberAdded": "Membre ajouté",
      "memberRemoved": "Membre retiré",
      "name": "Nom du groupe",
      "online": "{count} en ligne",
      "permissions": {
        "changeInfo": "Modifier l’info du groupe",
        "changeInfoHint": "Modifier le nom et l’avatar du groupe.",
        "deleteMessages": "Supprimer des messages",
        "deleteMessagesHint": "Supprimer n’importe quel message du chat.",
        "inviteUsers": "Inviter des utilisateurs",
        "inviteUsersHint": "Ajouter de nouveaux membres au groupe.",
        "manageAdmins": "Gérer les admins",
        "manageAdminsHint": "Promouvoir ou rétrograder d’autres membres.",
        "pinMessages": "Épingler des messages",
        "pinMessagesHint": "Épingler et détacher des messages.",
        "removeUsers": "Retirer des utilisateurs",
        "removeUsersHint": "Retirer des membres du groupe.",
        "saved": "Permissions mises à jour",
        "title": "Permissions"
      },
      "removeMember": "Retirer",
      "removeMemberConfirm": "Retirer {username} ?",
      "removeMemberHint": "Cette personne perdra l’accès à l’historique du chat.",
      "roleAdmin": "Admin",
      "roleOwner": "Propriétaire",
      "updated": "Groupe mis à jour",
      "uploadAvatar": "Télécharger un avatar"
    },
    "invitePending": "{username} vous invite à un chat",
    "lastSeen": {
      "long": "hors ligne depuis longtemps",
      "recent": "récemment en ligne",
      "today": "Vu pour la dernière fois à {time}",
      "yesterday": "Vu hier à {time}"
    },
    "members": "{count, plural, one {# membre} other {# membres}}",
    "messageDeleted": "Message supprimé",
    "messagePlaceholder": "Écrire un message…",
    "new": {
      "ai": "Nouveau chat IA",
      "aiDesc": "Planifier un voyage avec Pinns AI",
      "group": "Nouveau groupe",
      "groupDesc": "Sélectionnez jusqu’à 50 personnes",
      "invite": "Inviter sur Pinns",
      "inviteCopied": "Lien d’invitation copié",
      "inviteDesc": "Partagez un lien — fonctionne sur tous les appareils",
      "message": "Nouveau message",
      "messageDesc": "Rechercher par nom d’utilisateur ou @handle",
      "search": "Rechercher par nom ou @handle…",
      "title": "Démarrer une conversation",
      "users": "Utilisateurs"
    },
    "newChat": "Nouveau chat",
    "noChatSelected": "Sélectionnez un chat pour discuter",
    "online": "En ligne",
    "reply": "Répondre",
    "replyingTo": "En réponse à {username}",
    "searchChats": "Rechercher des chats…",
    "sectionBookings": "Réservations",
    "sectionDirect": "Direct",
    "sectionGroups": "Groupes",
    "sortName": "Par nom",
    "sortRecent": "Plus récents",
    "sortUnread": "Non lus d’abord",
    "system": {
      "DisputeOpened": "Litige ouvert",
      "DisputeResolvedFavorGuest": "Litige résolu en faveur du voyageur",
      "DisputeResolvedFavorHost": "Litige résolu en faveur de l’hôte",
      "SupportJoined": "Le support a rejoint le chat"
    },
    "typing": "{user} est en train d’écrire…",
    "typingMultiple": "{count, plural, one {# personne écrit…} other {# personnes écrivent…}}",
    "viewListing": "Voir l’annonce",
    "voice": {
      "denied": "Autorisez l’accès au micro dans le navigateur pour enregistrer des messages vocaux",
      "hint": "Maintenez pour enregistrer un message vocal",
      "recording": "Enregistrement d’un message vocal",
      "unavailable": "Micro indisponible"
    }
  },
  "comment": {
    "empty": "Aucun commentaire pour le moment",
    "hideReplies": "Masquer les réponses",
    "placeholder": "Ajouter un commentaire…",
    "reply": "Répondre",
    "replyPlaceholder": "Écrire une réponse…",
    "viewReplies": "Voir les réponses ({count})"
  },
  "common": {
    "activities": "Activités",
    "activityType": "Type d’activité",
    "add": "Ajouter",
    "address": "Adresse",
    "anyTime": "à toute heure",
    "area": "Zone",
    "attach": "Joindre un média",
    "back": "Retour",
    "balance": "Solde",
    "booking": "Réservation",
    "bookings": "Réservations",
    "cancel": "Annuler",
    "chats": "Chats",
    "checkEmail": "Vérifiez votre e-mail",
    "checkIn": "Arrivée",
    "checkOut": "Départ",
    "close": "Fermer",
    "collapse": "Réduire",
    "completed": "Terminé",
    "confirm": "Confirmer",
    "contentLanguage": "Rédigé en {language}",
    "copied": "Copié",
    "copy": "Copier",
    "country": "Pays",
    "create": "Créer",
    "currency": "Devise",
    "decline": "Refuser",
    "defaultPlace": "Bangkok",
    "delete": "Supprimer",
    "deleteConfirm": "Voulez-vous vraiment supprimer ceci ?",
    "details": "Détails",
    "disputes": "Litiges",
    "edit": "Modifier",
    "email": "E-mail",
    "error": "Une erreur s’est produite. Veuillez réessayer.",
    "favorites": "Favoris",
    "firstName": "Prénom",
    "firstNamePlaceholder": "Jean",
    "guestsCount": "{count, plural, one {# voyageur} other {# voyageurs}}",
    "hourShort": "h",
    "howItWorks": "Comment ça marche",
    "language": "Langue",
    "lastName": "Nom",
    "lastNamePlaceholder": "Dupont",
    "login": "Connexion",
    "mapArea": "Zone de la carte",
    "minuteShort": "min",
    "next": "Suivant",
    "ok": "OK",
    "openDetail": "Ouvrir la fiche",
    "or": "ou",
    "password": "Mot de passe",
    "pause": "Pause",
    "payments": "Paiements",
    "peopleCount": "{count, plural, one {1 personne} other {# personnes}}",
    "phone": "Téléphone",
    "play": "Lire",
    "previous": "Précédent",
    "price": "Prix",
    "profile": "Profil",
    "reason": "Raison",
    "retry": "Réessayer",
    "save": "Enregistrer",
    "search": "Rechercher",
    "send": "Envoyer",
    "settings": "Paramètres",
    "showOnMap": "Voir sur la carte",
    "showOriginal": "Afficher l’original",
    "showTranslation": "Afficher la traduction",
    "signup": "S’inscrire",
    "statistics": "Statistiques",
    "status": "Statut",
    "theme": {
      "dark": "Sombre",
      "light": "Clair"
    },
    "thisArea": "cette zone",
    "today": "Aujourd’hui",
    "total": "Total",
    "translatedFrom": "Traduit · langue d’origine : {language}",
    "username": "Nom d’utilisateur",
    "wallet": "Portefeuille",
    "yesterday": "Hier"
  },
  "confirmEmail": {
    "backToSettings": "Retour aux paramètres",
    "errorText": "Ce lien est invalide ou a expiré.",
    "errorTitle": "Échec de la confirmation",
    "successText": "Votre adresse e-mail a été modifiée.",
    "successTitle": "E-mail mis à jour",
    "title": "Changement d’e-mail",
    "verifying": "Confirmation de votre nouvel e-mail…"
  },
  "consent": {
    "accept": "Accepter",
    "text": "Nous utilisons des cookies pour voir comment Pinns est utilisé et l’améliorer.",
    "title": "Cookies"
  },
  "create": {
    "activity": {
      "desc": "Visite, cours, dégustation, expérience — réservable par personne ou par groupe.",
      "title": "Une activité"
    },
    "heading": "Que voulez-vous proposer ?",
    "start": "Commencer",
    "step1": {
      "desc": "Photos, prix, règles. Mise en ligne immédiate — gratuite.",
      "title": "Décrivez et publiez"
    },
    "step2": {
      "desc": "Les voyageurs réservent et paient sous séquestre. Organisez les détails par chat.",
      "title": "Recevez des réservations"
    },
    "step3": {
      "desc": "KYC + infos fiscales avant votre premier versement (obligation légale).",
      "title": "Vérifiez-vous pour recevoir vos versements"
    },
    "subtitle": "La publication est gratuite et prend quelques minutes. Vous pourrez vérifier votre identité et ajouter vos informations de versement plus tard — elles ne sont requises qu’avant le premier versement.",
    "unit": {
      "desc": "Appartement, gîte, chambre, B&B — tout ce que les voyageurs peuvent réserver à la nuit.",
      "title": "Un logement"
    }
  },
  "dateRange": {
    "selectDates": "Sélectionner les dates"
  },
  "destination": {
    "activities": "{count, plural, =1 {# activité} other {# activités}}",
    "allActivities": "Toutes les activités à {city}",
    "allCountries": "Tous les pays",
    "allStays": "Tous les logements à {city}",
    "empty": "Aucune destination pour l’instant",
    "heading": "Où loger à {city}",
    "intro": "Les villes où les hôtes acceptent des réservations en ce moment.",
    "monthly": "environ {price} par mois",
    "nearby": "Villes voisines",
    "popular": "Destinations populaires",
    "reviews": "{count, plural, =1 {# avis} other {# avis}}",
    "search": "Rechercher une ville",
    "showAll": "Voir {count, plural, =1 {# ville} other {toutes les # villes}}",
    "stays": "{count, plural, =1 {# logement} other {# logements}}",
    "title": "Destinations",
    "topActivities": "Que faire",
    "topStays": "Meilleurs logements"
  },
  "dispute": {
    "all": "Tous",
    "date": "Date",
    "favorGuest": "En faveur du voyageur",
    "favorGuestResult": "Résolu en votre faveur",
    "favorHost": "En faveur de l’hôte",
    "favorHostResult": "Résolu en faveur de l’hôte",
    "filterOpen": "Ouverts",
    "filterResolved": "Résolus",
    "goToDispute": "Aller au litige",
    "noResolution": "Aucune décision fournie",
    "notFound": "Litige introuvable",
    "open": "Ouvrir un litige",
    "outcome": "Résultat",
    "reasonPlaceholder": "Décrivez le problème…",
    "resolution": "Résolution",
    "resolutionPlaceholder": "Décrivez la résolution…",
    "resolve": "Résoudre",
    "resolveConfirm": "Êtes-vous sûr de vouloir résoudre ce litige ?",
    "resolving": "Verdict accepté — l’arbitre le règle sur la blockchain.",
    "statusOpen": "Ouvert",
    "statusResolved": "Résolu",
    "windowClosed": "Délai de litige expiré",
    "windowNotStarted": "La fenêtre de litige s’ouvre après l’arrivée",
    "windowRemaining": "Il reste {hours} h {minutes} min pour ouvrir un litige"
  },
  "empty": {
    "activities": "Pas encore d’activités",
    "bookings": "Pas encore de réservations",
    "chats": "Pas encore de chats",
    "conversations": "Pas encore de chats",
    "devices": "Pas d’autres appareils",
    "disputes": "Pas encore de litiges",
    "favorites": "Pas encore de favoris",
    "likes": "Pas encore de publications aimées",
    "listings": "Pas encore d’annonces",
    "merchants": "Pas encore de marchands",
    "messages": "Pas encore de messages",
    "options": "Aucun résultat",
    "posts": "Pas encore de publications",
    "reviews": "Pas encore d’avis",
    "units": "Pas encore de logements",
    "users": "Aucun utilisateur trouvé",
    "wallets": "Aucun portefeuille configuré"
  },
  "error": {
    "loginFailed": "Échec de la connexion",
    "signupFailed": "Échec de l’inscription"
  },
  "escrow": {
    "disputeTextA": "Un arbitre partage le montant entre vous et l’hôte.",
    "disputeTextB": "Notre commission reste celle fixée à la réservation.",
    "disputeTitle": "Litige",
    "lead": "Les hôtes vérifient leur identité avant de publier une annonce, chaque accord reste dans votre chat, et les annulations suivent les conditions affichées avant la réservation. En cas de problème, un arbitre tranche le litige, et les paiements en crypto restent sous séquestre jusqu’à l’arrivée.",
    "refundTextA": "L’argent revient sur votre portefeuille —",
    "refundTextB": "en tout ou en partie, selon les conditions d’annulation.",
    "refundTitle": "Annulation",
    "releaseTextA": "Après l’arrivée, déduction faite de notre commission.",
    "releaseTextB": "N’importe qui peut le déclencher — nous ne pouvons pas le retenir.",
    "releaseTitle": "Versement à l’hôte",
    "title": "Votre paiement est à l’abri."
  },
  "favorites": {
    "savedPlaces": "{count, plural, one {# lieu sauvegardé} other {# lieux sauvegardés}}"
  },
  "feed": {
    "empty": "Votre fil est vide. Suivez des personnes pour voir leurs publications.",
    "scope": {
      "following": "Abonnements",
      "nearby": "À proximité",
      "trending": "Tendances"
    },
    "title": "Fil"
  },
  "filter": {
    "active": "Actif",
    "apply": "Appliquer",
    "availability": "Disponibilité",
    "clear": "Effacer",
    "duration": "Durée",
    "durationMax": "Minutes max",
    "durationMin": "Minutes min",
    "options": "Options",
    "priceRange": "Fourchette de prix",
    "rating": "Note",
    "sortBest": "Meilleur",
    "stars": "Étoiles de l’hôtel",
    "title": "Filtres"
  },
  "footer": {
    "allRights": "Tous droits réservés.",
    "contactLine": "Des questions ? Écrivez-nous à <a>{email}</a>",
    "cookies": "Cookies",
    "privacy": "Confidentialité",
    "terms": "Conditions d’utilisation"
  },
  "forgot": {
    "backToLogin": "Retour à la connexion",
    "sentText": "Si {email} est enregistré, un lien de réinitialisation est en route.",
    "submit": "Envoyer le lien",
    "subtitle": "Saisissez votre e-mail et nous vous enverrons un lien de réinitialisation.",
    "title": "Réinitialiser le mot de passe"
  },
  "gallery": {
    "showAll": "Voir toutes les photos"
  },
  "home": {
    "agentCta": "Essayer la recherche IA",
    "agentText": "Décrivez en langage naturel ce que vous cherchez — une villa tranquille au bord de la mer, un appartement acceptant les animaux pour une semaine — et l’assistant trouvera des correspondances et vérifiera la disponibilité.",
    "agentTitle": "Recherchez plus intelligemment avec l’IA",
    "aiSearch": {
      "fusion": {
        "badge": "Hybride",
        "caption": "Les résultats par mots-clés et par sens sont fusionnés en une seule liste grâce à la Reciprocal Rank Fusion. Les lieux trouvés des deux façons remontent en tête.",
        "text": "Résultats par mots-clés et par sens, réunis en une seule liste.",
        "title": "Classement hybride"
      },
      "label": "Recherche IA de Pinns",
      "mapCta": "Ouvrir la carte",
      "meaning": {
        "badge": "Embeddings",
        "caption": "Votre demande et chaque lieu sont convertis en embeddings. Les plus proches par le sens arrivent en tête, même sans aucun mot en commun avec ce que vous avez tapé.",
        "text": "Décrivez votre voyage avec vos mots, l’IA trouve ce qui vous convient.",
        "title": "Recherche intuitive"
      },
      "rag": {
        "badge": "RAG",
        "caption": "Génération augmentée par récupération : les meilleurs résultats deviennent le contexte de l’assistant, qui vérifie disponibilités et tarifs avec ses outils ; chaque affirmation de la réponse renvoie à un lieu.",
        "text": "Dites ce que vous cherchez : de vrais lieux, la réservation prête.",
        "title": "Posez votre question"
      },
      "scene": {
        "absent": "aucun ne mentionne {words}",
        "absentCalm": "« calme » ou « travailler »",
        "absentPets": "« chien » ou « enfants »",
        "answer": "Le studio sur jardin [1] est idéal : tarif au mois, bureau côté fenêtre, libre du 1er au 14 déc., $41/nuit. La cabane bord de mer [3] : baie paisible, $68. Le bungalow jungle [2], le plus calme, est pris dès le 10.",
        "capAnswer": "réponse · lieux réels",
        "capByKeywords": "par mots-clés",
        "capByMeaning": "par sens · embeddings",
        "capClosest": "plus proches · cosinus",
        "capContext": "contexte pour l’IA",
        "capEmbedding": "requête → embedding",
        "capFused": "fusionnés · top 5",
        "capInventory": "logements et activités",
        "capKeywords": "mots-clés",
        "capMeaning": "sens",
        "capRetrieved": "top 4 par cosinus",
        "capRrf": "fusion des classements",
        "capTools": "outils",
        "matched": "↳ trouvé par le sens :",
        "queryCalm": "un endroit calme pour travailler un mois",
        "queryFusion": "coin calme au bord de la mer",
        "queryPets": "au bord de l’eau avec chien et 2 enfants",
        "queryRag": "bord de mer calme, 15 jours en déc., max $70",
        "rankKeywords": "mots-clés #{rank}",
        "rankMeaning": "sens #{rank}",
        "rrf": "Σ 1 / ({k} + rang)",
        "statusFusion": "deux recherches → une liste",
        "statusMeaningBusy": "comparaison des embeddings",
        "statusMeaningDone": "{count, plural, one {# lieu proche par le sens} other {# lieux proches par le sens}}",
        "statusRagReady": "réponse prête",
        "statusRagRetrieve": "recherche par le sens",
        "statusRagTools": "vérification via les outils"
      }
    },
    "communityCta": "Ouvrir le fil",
    "communityEyebrow": "Communauté",
    "communityText": "Des moments réels d’hôtes et de voyageurs — trouvailles de boulangerie, randonnées au lever du soleil, offres de dernière minute.",
    "communityTitle": "Des voyageurs que vous suivez",
    "communityTitleTrending": "Tendances dans la communauté",
    "demo": {
      "areas": {
        "banTai": "Ban Tai",
        "chaloklum": "Chaloklum",
        "haadRin": "Haad Rin",
        "haadSalad": "Haad Salad",
        "haadYuan": "Haad Yuan",
        "srithanu": "Srithanu",
        "thongNaiPan": "Thong Nai Pan",
        "thongSala": "Thong Sala"
      },
      "cities": {
        "bali": "Bali",
        "kohPhangan": "Koh Phangan"
      },
      "kinds": {
        "apartment": "appart",
        "bungalow": "bungalow",
        "cabin": "cabane",
        "class": "cours",
        "hostel": "auberge",
        "house": "maison",
        "loft": "loft",
        "rental": "location",
        "retreat": "retraite",
        "spa": "spa",
        "studio": "studio",
        "tour": "excursion",
        "villa": "villa"
      },
      "places": {
        "bambooBungalow": {
          "name": "Bungalow en bambou"
        },
        "beachApartment": {
          "hit": "le sable dès le portail, une aire de jeux à côté",
          "name": "Appartement plage",
          "text": "Rez-de-chaussée, le sable dès le portail, une aire de jeux à côté."
        },
        "beachBarLoft": {
          "name": "Loft du bar de plage",
          "text": "Au-dessus du bar le plus animé de la plage, musique chaque nuit."
        },
        "beachHostel": {
          "name": "Auberge de plage"
        },
        "boatAngThong": {
          "name": "Excursion Ang Thong",
          "text": "Journée sur l’eau, kayak, déjeuner sur un banc de sable."
        },
        "cityLoft": {
          "name": "Loft en ville",
          "text": "12e étage à Denpasar, salle de sport et coin coworking."
        },
        "cliffVilla": {
          "name": "Villa sur la falaise"
        },
        "cookingClass": {
          "name": "Cours de cuisine",
          "text": "Cuisinez quatre plats thaïs chez l’habitant, recettes offertes."
        },
        "familyVilla": {
          "hit": "Jardin clos, animaux admis, piscine peu profonde",
          "name": "Villa familiale",
          "text": "Jardin clos, animaux admis, piscine peu profonde où les petits ont pied."
        },
        "gardenStudio": {
          "hit": "Tarif au mois, bureau côté fenêtre",
          "name": "Studio sur jardin",
          "text": "Tarif au mois, bureau côté fenêtre, plus aucune voiture après 20 h."
        },
        "jungleBungalow": {
          "hit": "Le matin, rien que les oiseaux et le ruisseau",
          "name": "Bungalow jungle",
          "text": "Le matin, rien que les oiseaux et le ruisseau ; l’hôte offre une remise sur 30 jours."
        },
        "nightMarketTour": {
          "name": "Marché de nuit guidé",
          "text": "Deux heures de street food avec un guide local, 12 dégustations."
        },
        "partyBarBySea": {
          "name": "Bar festif vue mer"
        },
        "partyHostel": {
          "name": "Auberge festive",
          "text": "Lits superposés, bar au rez-de-chaussée et la Full Moon Party à cinq minutes."
        },
        "poolHouse": {
          "name": "Maison avec piscine"
        },
        "quietCabin": {
          "hit": "Pas de voisins, wifi rapide",
          "name": "Cabane tranquille"
        },
        "quietCoveHouse": {
          "name": "Maison de la crique"
        },
        "riceFieldHouse": {
          "hit": "cour murée, idéale pour un chiot",
          "name": "Maison des rizières",
          "text": "Deux chambres, lits superposés ; cour murée, idéale pour un chiot."
        },
        "scooterRental": {
          "name": "Location de scooters",
          "text": "Scooters automatiques avec deux casques, livrés sur place."
        },
        "seaBreezeStudio": {
          "name": "Studio brise de mer"
        },
        "seaViewVilla": {
          "hit": "une grande table en terrasse et la fibre",
          "name": "Villa vue mer",
          "text": "Trois chambres sur la baie, une grande table en terrasse et la fibre qui tient une visio."
        },
        "seafrontCabin": {
          "hit": "À dix pas d’une baie paisible",
          "name": "Cabane bord de mer"
        },
        "seashellBungalow": {
          "name": "Bungalow Mer Bleue"
        },
        "snorkelTrip": {
          "name": "Sortie snorkeling",
          "text": "Bateau vers le récif, masques fournis, tortues le matin."
        },
        "spaDay": {
          "name": "Journée spa",
          "text": "Massage, bain de fleurs, thé sous un pavillon."
        },
        "surfHostel": {
          "name": "Auberge des surfeurs",
          "text": "Dortoirs pour surfeurs, local à planches, petit-déj dès 5 h."
        },
        "volcanoSunrise": {
          "name": "Aube sur le volcan",
          "text": "Départ à 2 h, deux heures d’ascension, petit-déj au cratère."
        },
        "yogaRetreat": {
          "name": "Retraite de yoga",
          "text": "Matins en silence, entre adultes, une semaine dans les collines."
        }
      }
    },
    "destinationsAll": "Toutes les destinations",
    "destinationsTitle": "Destinations populaires",
    "explore": "Explorer",
    "heroSubtitle": "Tout le voyage au même endroit : trouvez sur la carte, organisez-vous dans le chat, partagez vos souvenirs avec vos amis",
    "heroTitle": "Voyagez comme un local",
    "linkBook": "Réserver",
    "prices": {
      "axisHint": "prix comparé au plus bas",
      "badge": "Prix à la nuit",
      "booked": "réservée",
      "cheapest": "la moins chère",
      "closed": "fermée par l’hôte",
      "december": "Décembre",
      "from": "Dès",
      "hint": "Survolez une nuit pour voir son prix",
      "january": "Janvier",
      "newYear": "Nouvel An",
      "nights": "{count, plural, one {# nuit} other {# nuits}}",
      "nightsIn": "{count, plural, one {# nuit} other {# nuits}} · {city}",
      "open": "Libres",
      "openLabel": "Nuits encore libres",
      "openNote": "sur {total} nuits · {window}",
      "peakLabel": "Pic vs prix le plus bas",
      "peakNote": "plus demandée vs moins chère",
      "place": "Logement",
      "ratioMore": "{ratio} et plus",
      "save": "Mettre en favori",
      "savedLabel": "Minimum dans vos favoris",
      "tableLabel": "Prix par nuit",
      "text": "Les prix changent chaque nuit. Ici, vous voyez où ils baissent : ajoutez un logement à vos favoris et réservez quand c’est moins cher.",
      "tipCheapest": "{price} · la nuit la moins chère",
      "tipRatio": "{price} · {ratio} le prix le plus bas",
      "title": "Repérez la nuit la moins chère"
    },
    "trending": "Tendances"
  },
  "host": {
    "booking": {
      "answerBy": "répondez avant le {date}, sinon la demande sera refusée",
      "chat": "Discuter avec le voyageur",
      "declineConfirm": "Refuser cette demande de réservation ? Cette action est irréversible."
    },
    "calendar": {
      "pick": "Choisissez une annonce"
    },
    "dispute": {
      "answerArbitration": "Répondre à l’arbitrage"
    },
    "kpi": {
      "awaiting": "En attente de réponse",
      "bookings": "Réservations",
      "disputes": "Litiges ouverts",
      "products": "Annonces",
      "reviewable": "En attente de votre avis"
    },
    "kyc": {
      "ready": "Vérifié — vous pouvez publier des annonces"
    },
    "moderation": {
      "approve": "Approuver",
      "declineReason": "Motif du refus",
      "empty": "Rien en attente de modération"
    },
    "nav": {
      "account": "Compte",
      "main": "Général",
      "money": "Finances",
      "products": "Annonces"
    },
    "product": {
      "blocked": {
        "kyc": "Vérifiez votre identité pour publier des annonces",
        "payout": "Ajoutez une adresse Solana de versement pour publier des annonces"
      },
      "createAndPublish": "Créer et publier",
      "declinedReason": "Motif : {reason}",
      "deleteBlocked": "Cette annonce a des réservations en cours — retirez-la plutôt",
      "deleteConfirm": "Supprimer définitivement cette annonce ?",
      "earned": "Gagné",
      "empty": "Aucune annonce pour l’instant",
      "notFound": "Annonce introuvable",
      "publish": "Publier",
      "tab": {
        "bookings": "Réservations",
        "calendar": "Calendrier",
        "reviews": "Avis",
        "stats": "Statistiques"
      },
      "unlist": "Retirer"
    },
    "queue": {
      "answer": "Répondre",
      "bookingTitle": "Demande de réservation n° {id}",
      "count": "{count, plural, one {# tâche} other {# tâches}}",
      "disputeMeta": "Réservation n° {id}",
      "disputeTitle": "Litige n° {id}",
      "empty": "Rien à faire — toutes les réservations et tous les avis sont traités",
      "fix": "Corriger",
      "review": "Laisser un avis",
      "reviewMeta": "Départ {date}",
      "title": "Nécessite votre action"
    },
    "review": {
      "empty": "Rien à évaluer pour le moment",
      "outgoing": "Visible seulement par vous — publié dans {count, plural, one {# jour} other {# jours}}",
      "stay": "Séjour n° {id}"
    },
    "schedule": {
      "pick": "Choisissez une activité"
    },
    "section": {
      "balance": "Solde et versements",
      "bookings": "Réservations",
      "calendar": "Calendrier et tarifs",
      "disputes": "Litiges",
      "kyc": "Vérification et versements",
      "moderation": "Modération",
      "overview": "Aperçu",
      "products": "Toutes les annonces",
      "reviews": "Avis",
      "schedule": "Horaires des activités",
      "stats": "Statistiques"
    },
    "title": "Espace hôte"
  },
  "invoice": {
    "completed": "Paiement effectué avec succès !",
    "expired": "La facture a expiré",
    "failed": "Paiement échoué",
    "payWithWallet": "Payer avec le portefeuille",
    "processing": "Traitement du paiement…",
    "refund": "Remboursement requis",
    "statusTitle": "Statut de la facture",
    "title": "Facture",
    "transactionFailed": "La transaction a échoué",
    "transactionNotConfirmed": "Transaction non confirmée",
    "waitingForPayment": "En attente de paiement…"
  },
  "kyc": {
    "Pending": "En attente",
    "Rejected": "Rejeté",
    "Unverified": "Non vérifié",
    "Verified": "Vérifié",
    "approve": "Approuver",
    "approveToast": "Vérification approuvée",
    "dateOfBirth": "Date de naissance",
    "decision": "Décision",
    "docType": {
      "DriverLicense": "Permis de conduire",
      "IdCard": "Carte d’identité",
      "Passport": "Passeport"
    },
    "document": "Document {n}",
    "documentType": "Type de document",
    "documents": "Documents",
    "goVerify": "Aller à la vérification",
    "label": "Vérification",
    "legalName": "Nom légal",
    "noAccess": "Vérification indisponible",
    "pendingNote": "Remplissez le formulaire pour lancer la vérification. Formats acceptés : images et PDF.",
    "reject": "Rejeter",
    "rejectReason": "Motif du rejet",
    "rejectReasonPlaceholder": "Motif affiché au demandeur",
    "rejectToast": "Vérification rejetée",
    "rejectedNote": "Votre demande a été rejetée.",
    "resubmit": "Renvoyer",
    "reviewedAt": "Examiné",
    "submit": "Soumettre pour examen",
    "submitToast": "Soumis pour examen",
    "title": "Vérification d’identité",
    "underReview": "Vos documents sont en cours d’examen.",
    "validation": {
      "required": "Remplissez tous les champs et téléchargez vos documents"
    },
    "verifiedNote": "Votre identité est vérifiée."
  },
  "ledger": {
    "empty": "Aucune transaction",
    "history": "Historique des transactions",
    "status": {
      "Encumbered": "Bloqué",
      "Pending": "En cours",
      "Settled": "Réglé",
      "Voided": "Annulé"
    },
    "txType": {
      "Adjustment": "Ajustement",
      "Bonus": "Bonus",
      "DirectPay": "Paiement",
      "DisputeResolve": "Règlement du litige",
      "EscrowDeposit": "Dépôt en séquestre",
      "EscrowRefund": "Remboursement",
      "EscrowRelease": "Versement",
      "EscrowResolve": "Règlement du litige",
      "Refund": "Remboursement",
      "SupplyEarned": "Revenus inventaire",
      "SupplyReversed": "Annulation inventaire",
      "Withdrawal": "Retrait"
    }
  },
  "legal": {
    "cookies": "Politique de cookies",
    "imprint": "Mentions légales",
    "privacy": "Politique de confidentialité",
    "terms": "Conditions d’utilisation",
    "updated": "Mis à jour le {date}"
  },
  "listing": {
    "basicsLabel": "Bases",
    "completeness": "Complétude",
    "descriptionLabel": "Description",
    "livePreview": "Aperçu",
    "location": "Emplacement",
    "maxGuests": "{count, plural, =1 {# Voyageur} other {# Voyageurs}}",
    "maxGuestsLabel": "Voyageurs max.",
    "media": "Photos et vidéos",
    "options": {
      "add": "Ajouter une option",
      "hint": "Une option est une variante de la même activité — en groupe ou en privé, avec ou sans transfert — chacune avec son prix et ses photos. Laissez vide pour vendre à un prix unique.",
      "item": "Option {index}",
      "label": "Options",
      "priceLocked": "Le prix est calculé à partir de vos options.",
      "remove": "Supprimer l’option",
      "title": "Nom de l’option"
    },
    "placeCount": "{count, plural, =1 {lieu} other {lieux}}",
    "requiredFields": "Veuillez remplir tous les champs obligatoires",
    "tags": "Tags",
    "tagsPlaceholder": "Rechercher des tags…",
    "title": "Titre"
  },
  "location": {
    "coordinates": "Coordonnées",
    "outOfService": "Ce point est hors de notre zone de service. Choisissez un lieu sur terre, dans un pays.",
    "searchPlaceholder": "Rechercher une adresse…"
  },
  "login": {
    "continueWith": "Continuer avec {provider}",
    "forgotPassword": "Mot de passe oublié ?",
    "heading": "Bienvenue",
    "noAccount": "Pas de compte ?",
    "orContinueWith": "ou continuer avec",
    "passwordInput": "Entrez le mot de passe",
    "signupLink": "Inscrivez-vous ici",
    "subtitle": "Connectez-vous pour continuer votre voyage",
    "title": "Connexion",
    "usernameInput": "Entrez le nom d’utilisateur",
    "welcome": "Heureux de vous revoir, {name}"
  },
  "logout": {
    "allDevices": "Se déconnecter de tous les appareils",
    "message": "Êtes-vous sûr de vouloir vous déconnecter ?",
    "title": "Déconnexion"
  },
  "map": {
    "unavailable": "La carte est indisponible pour le moment. Réessayez plus tard.",
    "unsupported": "Votre navigateur ne peut pas afficher la carte."
  },
  "media": {
    "aspect": "Format",
    "zoom": "Zoom"
  },
  "merchant": {
    "address": {
      "add": "Ajouter une adresse",
      "addressPlaceholder": "Adresse du portefeuille Solana",
      "cooldown": "Disponible {date}",
      "cooldownInfo": "Une nouvelle adresse peut être utilisée pour les retraits 24 heures après son ajout.",
      "empty": "Aucune adresse pour le moment",
      "ready": "Prête",
      "remove": "Supprimer l’adresse",
      "removeConfirm": "Supprimer cette adresse de retrait ?",
      "title": "Adresses de retrait"
    },
    "balance": {
      "available": "Disponible",
      "empty": "Aucun fonds pour l’instant — les revenus des ventes apparaîtront ici."
    },
    "closeConfirm": "Fermer ce marchand ? Il reste actif jusqu’à ce que le solde soit retiré et tous les séquestres réglés.",
    "closeConfirmTitle": "Fermer le marchand",
    "fee": {
      "label": "Commission",
      "max": "Entre 0 et {max} % — le contrat n’accepte pas plus",
      "note": "Ne s’applique qu’aux nouvelles réservations : les opérations déjà ouvertes gardent le taux avec lequel elles ont été créées.",
      "saved": "Commission enregistrée — elle vaut pour les nouvelles réservations"
    },
    "keyModal": {
      "copy": "Copier la clé",
      "title": "Clé secrète de {name}",
      "warning": "Copiez-la maintenant — elle n’est affichée qu’une seule fois et ne peut pas être récupérée."
    },
    "live": {
      "activate": "Activer le réel",
      "activated": "Le mode réel est actif. Son portefeuille est vide : approvisionnez-le avant les vrais paiements.",
      "completed": "Le mode réel était déjà ouvert : le portefeuille manquant a été recréé. Votre clé réelle actuelle reste valable.",
      "confirm": "L’activation ouvre les comptes en argent réel de ce marchand et délivre sa clé réelle, affichée une seule fois. Le portefeuille réel est créé vide et doit être approvisionné.",
      "confirmTitle": "Activer le mode réel",
      "info": "Le mode réel fonctionne à côté du test : clé, portefeuille et soldes propres."
    },
    "mode": {
      "Live": "Réel",
      "LiveHint": "Argent réel",
      "Test": "Test",
      "TestHint": "Données de test"
    },
    "provision": {
      "action": "Réappliquer les réglages",
      "confirm": "Le backend compare sa vision du marchand à ce qui est inscrit sur la chaîne et corrige l’écart. Relancer est sans risque : si les deux concordent déjà, rien ne se passe.",
      "confirmTitle": "Réappliquer les réglages « {mode} » ?",
      "requested": "Réapplication demandée"
    },
    "provisioning": "Création du portefeuille de garde et de la configuration on-chain — cela prend généralement quelques secondes.",
    "provisioningFailed": "La configuration prend plus de temps que d’habitude. Appuyez sur « Réappliquer les réglages » pour terminer le démarrage.",
    "status": {
      "Active": "Actif",
      "Pending": "Configuration…",
      "Terminated": "Fermé",
      "Terminating": "Fermeture…"
    },
    "terminating": "Fermeture de ce marchand — retrait du solde et règlement des séquestres ouverts.",
    "withdraw": "Retirer",
    "withdrawal": {
      "amount": "Montant",
      "approve": "Approuver",
      "count": "{count} enregistrements",
      "date": "Date",
      "empty": "Aucun retrait pour l’instant",
      "handled": "Cette demande a déjà été traitée.",
      "history": "Historique des retraits",
      "net": "Le destinataire reçoit {amount}",
      "noAddresses": "Ajoutez une adresse de retrait et attendez le délai de 24 heures avant de pouvoir retirer.",
      "receiver": "Adresse du destinataire",
      "receiverSelect": "Sélectionnez l’adresse de destination",
      "reject": "Rejeter",
      "status": {
        "Approved": "Approuvé",
        "Completed": "Terminé",
        "Failed": "Échoué",
        "Manual": "Manuel",
        "Pending": "En attente",
        "Rejected": "Rejeté",
        "Sending": "Envoi",
        "Submitted": "Soumis"
      },
      "title": "Retirer {currency}"
    }
  },
  "navbar": {
    "menu": {
      "feed": "Fil",
      "map": "Carte"
    },
    "search": {
      "activities": "Activités",
      "activitiesNone": "Aucune activité de ce nom",
      "agent": "Demander à l’assistant",
      "agentRequest": "Demande à l’assistant",
      "askAgent": "Demander à l’assistant « {query} »",
      "askAgentEmptyHint": "ex. : « villa avec piscine, 80 $ max »",
      "askAgentHint": "Trouve des options d’après votre description",
      "cancel": "Annuler",
      "clear": "Effacer",
      "clearRecent": "Effacer",
      "close": "Fermer la recherche",
      "hotels": "Hôtels",
      "hotelsNone": "Aucun hôtel de ce nom",
      "label": "Recherche",
      "nearby": "Autour de moi",
      "nearbyHint": "Logements autour de vous sur la carte",
      "nothingText": "Cela ressemble à une description de voyage : l’assistant trouvera des options selon le sens.",
      "nothingTitle": "Aucun lieu ni hôtel de ce nom",
      "placeType": {
        "address": "Adresse",
        "city": "Ville",
        "country": "Pays",
        "district": "Quartier",
        "region": "Région"
      },
      "placeholder": "Ville, quartier ou hôtel, ou décrivez ce que vous cherchez",
      "placeholderShort": "Ville, quartier ou hôtel",
      "places": "Lieux",
      "placesNone": "Aucun lieu de ce nom",
      "popular": "Destinations populaires",
      "quickStart": "Démarrage rapide",
      "recent": "Récentes",
      "suggestions": "Suggestions"
    }
  },
  "notification": {
    "chatUnread": "{name} · {count, plural, =1 {# nouveau message} other {# nouveaux messages}}",
    "comment": "{name} {others, plural, =0 {a commenté votre publication} other {et # autres ont commenté votre publication}}",
    "empty": "Aucune notification pour l’instant",
    "likeComment": "{name} {others, plural, =0 {a aimé votre commentaire} other {et # autres ont aimé votre commentaire}}",
    "likePost": "{name} {others, plural, =0 {a aimé votre publication} other {et # autres ont aimé votre publication}}",
    "post": "{name} a publié une nouvelle publication",
    "referralRewarded": "Bonus de parrainage crédité sur votre solde",
    "reply": "{name} {others, plural, =0 {a répondu à votre commentaire} other {et # autres ont répondu à votre commentaire}}",
    "reviewReplied": "{name} {others, plural, =0 {a répondu à votre avis} other {et # autres ont répondu à votre avis}}",
    "title": "Notifications"
  },
  "oauth": {
    "allow": "Autoriser l’accès",
    "checking": "Vérification de l’application…",
    "deny": "Annuler",
    "invalidText": "Des paramètres obligatoires manquent dans le lien. Retournez à l’application et réessayez.",
    "invalidTitle": "Requête invalide",
    "requestText": "Ne continuez que si vous reconnaissez cette application.",
    "requestTitle": "{client} demande l’accès à votre compte",
    "scope": {
      "bookingsRead": "Voir vos réservations",
      "memory": "Mémoriser vos préférences",
      "none": "Recherche et liens de paiement uniquement"
    },
    "title": "Accès de l’application",
    "unknownClient": "Cette application ou son adresse de retour n’est pas enregistrée chez Pinns. Retournez à l’application et recommencez."
  },
  "page": {
    "activityDetail": {
      "description": "{title} à {city}, {country}. {price} par personne.",
      "title": "{title}, {city} : à partir de {price} par personne — Pinns"
    },
    "activitySearch": {
      "description": "Visites, excursions et expériences près de vous. Posez vos questions dans le chat, réservez en deux minutes et partagez dans le fil.",
      "title": "Activités, visites et excursions — Pinns"
    },
    "cookies": {
      "description": "Quels cookies et stockage local Pinns utilise pour la connexion, la langue et les statistiques, pourquoi, et comment changer d’avis à tout moment.",
      "title": "Politique de cookies — Pinns"
    },
    "destination": {
      "title": "{city}, {country} : hôtels, logements et activités — Pinns",
      "titlePrice": "{city}, {country} : hôtels et logements dès {price}, activités — Pinns"
    },
    "destinations": {
      "description": "Des villes avec des logements et des activités, réservés directement auprès des hôtes et des guides. Des grandes capitales aux petites villes du bord de mer.",
      "title": "Destinations — où voyager avec Pinns"
    },
    "error": {
      "message": "Une erreur est survenue de notre côté. Veuillez réessayer.",
      "retry": "Réessayer",
      "title": "Une erreur est survenue — Pinns"
    },
    "imprint": {
      "description": "Qui exploite Pinns, les informations sur la société derrière la plateforme et comment nous joindre pour une réservation, une annonce ou une demande presse.",
      "title": "Mentions légales — Pinns"
    },
    "index": {
      "description": "Décrivez le voyage avec vos mots : l’IA trouve logements, hôtels et activités. Réservez en deux clics, payez par carte ou en crypto.",
      "title": "Logements, hôtels et activités pour votre voyage — Pinns"
    },
    "login": {
      "description": "Vos réservations, vos chats avec les hôtes, vos lieux enregistrés et les voyages de vos amis. Connexion par e-mail, Google ou GitHub.",
      "title": "Connexion à Pinns — réservations, chats et favoris"
    },
    "notFound": {
      "backHome": "Retour à l’accueil",
      "message": "La page que vous recherchez n’existe pas",
      "title": "Page introuvable — Pinns"
    },
    "place": {
      "description": "Réservez {product, select, Activity {vos visites et activités} other {votre hôtel ou logement}} à {city} en ligne à prix avantageux. Choisissez parmi {count, plural, one {# offre} other {# offres}} avec de vraies photos et des avis.",
      "title": "{product, select, Activity {Visites et activités} other {Hôtels et logements}} à {city} — Pinns",
      "titlePrice": "Hôtels et logements à {city} dès {price} la nuit — Pinns"
    },
    "privacy": {
      "description": "Quelles données Pinns collecte quand vous réservez, hébergez ou discutez, qui les reçoit, combien de temps, et comment y accéder, les corriger ou supprimer.",
      "title": "Politique de confidentialité — Pinns"
    },
    "profile": {
      "description": "Profil de {name} sur Pinns : ses annonces, ses activités et ses publications, les avis des voyageurs et un moyen de le contacter directement.",
      "title": "{name} — profil sur Pinns"
    },
    "signup": {
      "description": "Réservez logements et activités, partagez vos voyages dans le fil. Publiez vos annonces et soyez payé en crypto via le séquestre on-chain.",
      "title": "Inscription à Pinns — logements, hôtels et activités"
    },
    "terms": {
      "description": "Réserver un logement ou une activité sur Pinns, mettre en ligne votre annonce, payer par séquestre crypto : les règles, les annulations et les remboursements.",
      "title": "Conditions d’utilisation — Pinns"
    },
    "unitDetail": {
      "description": "{title} ({type}) à {city}, {country}. À partir de {price} par nuit{guests, plural, =0 {} one {, jusqu’à # voyageur} other {, jusqu’à # voyageurs}}.",
      "title": "{title}, {city} : à partir de {price} la nuit — Pinns"
    },
    "unitSearch": {
      "description": "Appartements, maisons et hôtels, chez des particuliers comme chez nos partenaires hôteliers. Avis réels, paiement par carte ou crypto.",
      "title": "Logements et hôtels : appartements, maisons, chambres — Pinns"
    }
  },
  "payment": {
    "card": "Carte",
    "crypto": "Crypto",
    "label": "Paiement"
  },
  "post": {
    "comment": "Commenter",
    "composer": "Nouvelle publication",
    "like": "J’aime",
    "linkCopied": "Lien de la publication copié",
    "notFound": "Publication introuvable",
    "placeholder": "Partagez quelque chose…",
    "publish": "Publier",
    "share": "Partager",
    "title": "Publication"
  },
  "product": {
    "from": "à partir de {price}",
    "nearby": "À proximité",
    "related": "Vous aimerez aussi",
    "relatedEmpty": "Rien à afficher pour l’instant",
    "relatedUnavailable": "Rien de libre à proximité à ces dates",
    "similar": "Similaires",
    "status": {
      "Active": "Publiée",
      "Declined": "Refusée",
      "Deleted": "Supprimée",
      "Draft": "Brouillon",
      "Pending": "En vérification",
      "Unlisted": "Retirée"
    }
  },
  "profile": {
    "bio": "Bio",
    "bioPlaceholder": "Parlez de vous…",
    "birthday": "Date de naissance",
    "changeCover": "Modifier la couverture",
    "city": "Ville",
    "displayName": "Nom affiché",
    "displayNamePlaceholder": "Comment votre nom apparaît",
    "follow": "Suivre",
    "followers": "Abonnés",
    "following": "Abonnements",
    "interests": "Centres d’intérêt",
    "joined": "Membre depuis {date}",
    "languages": "Langues",
    "languagesPlaceholder": "Ajouter des langues…",
    "linkCopied": "Lien du profil copié",
    "message": "Message",
    "noFollows": "Personne pour l’instant",
    "notFound": "Utilisateur non trouvé",
    "notifyOff": "Désactiver les notifications de nouvelles publications",
    "notifyOn": "Être notifié des nouvelles publications",
    "phoneCountry": "Indicatif",
    "phonePlaceholder": "Entrez votre téléphone",
    "region": "Région",
    "saveInterests": "Enregistrer les intérêts",
    "saveTravels": "Enregistrer les voyages",
    "share": "Partager",
    "social": {
      "add": "Ajouter un lien",
      "instagram": "Instagram",
      "selectType": "Choisir un réseau…",
      "telegram": "Telegram",
      "website": "Site web",
      "x": "X"
    },
    "socialLinks": "Réseaux sociaux",
    "solanaAddress": "Adresse de versement Solana",
    "solanaAddressInvalid": "Adresse Solana non valide",
    "solanaAddressNote": "Seule une adresse de portefeuille Solana est acceptée — les versements des réservations y sont envoyés directement.",
    "solanaAddressPlaceholder": "Votre adresse de portefeuille Solana",
    "speaks": "Parle {languages}",
    "tabs": {
      "likes": "J’aime",
      "listings": "Annonces",
      "posts": "Publications",
      "reviews": "Avis"
    },
    "unfollow": "Ne plus suivre",
    "updateSuccess": "Profil mis à jour avec succès",
    "visited": "{count, plural, =0 {Pays visités} one {Pays visités · #} other {Pays visités · #}}"
  },
  "referral": {
    "admin": {
      "currency": "Devise du bonus",
      "daysUnit": "jours",
      "defaultRate": "Taux par défaut",
      "deleteConfirm": "Supprimer ce taux personnel ? L’utilisateur revient au taux par défaut.",
      "maxAmount": "Bonus max. par réservation",
      "maxBookings": "Réservations avec bonus",
      "newRate": "Nouveau taux personnel",
      "percent": "Pourcentage par réservation",
      "saved": "Taux enregistré",
      "title": "Taux de parrainage",
      "updated": "Mis à jour {date}",
      "userId": "ID utilisateur",
      "userRate": "Taux personnel · utilisateur {id}",
      "windowDays": "Validité après l’inscription"
    },
    "copied": "Lien d’invitation copié",
    "copy": "Copier le lien d’invitation",
    "limitAmount": "jusqu’à {amount} par séjour",
    "limitBookings": "{count, plural, =1 {sa première réservation} other {ses # premières réservations}}",
    "limitWindow": "{count, plural, =1 {dans les # jour suivant l’inscription} other {dans les # jours suivant l’inscription}}",
    "payout": "Crédité en bonus sur votre solde après le départ de votre ami.",
    "terms": "Gagnez {percent} % sur chaque réservation aboutie de vos amis",
    "title": "Inviter un ami"
  },
  "region": {
    "action": {
      "import": "Mettre à jour les lieux",
      "rebuild": "Régénérer",
      "remove": "Retirer le fournisseur",
      "reset": "Réinitialiser le curseur",
      "sync": "Lancer la synchronisation",
      "terminate": "Supprimer le pays"
    },
    "add": "Ajouter un pays",
    "addSupplier": "Ajouter {supplier}",
    "basemap": {
      "Detail": "Fond de carte : nos pays",
      "World": "Fond de carte : monde",
      "built": "Généré le {date} · {size}",
      "failed": "Échec de la génération {date} : {error}",
      "notBuilt": "Pas encore généré",
      "rebuildStarted": "Régénération du fond de carte lancée"
    },
    "catalogSync": "Synchronisation du catalogue",
    "clearHistory": "Vider l’historique",
    "confirm": {
      "clearHistory": "Supprimer de l’historique toutes les tâches terminées ?",
      "deleteJob": "Supprimer cette tâche de l’historique ?",
      "remove": "Retirer {supplier} de {country} ? Ses annonces sont dépubliées.",
      "reset": "Réinitialiser le curseur de {supplier} ? La prochaine synchronisation reprendra le catalogue depuis le début ; les logements importés restent.",
      "terminate": "Supprimer {country} ? Les annonces des fournisseurs sont dépubliées et les données importées supprimées."
    },
    "importStarted": "Mise à jour des lieux lancée",
    "jobStatus": {
      "Completed": "Terminée",
      "Failed": "Échec",
      "Running": "En cours"
    },
    "jobType": {
      "Backfill": "Reprise complète",
      "Incremental": "Incrémentale",
      "Retire": "Dépublication"
    },
    "jobs": "Historique des tâches",
    "jobsEmpty": "Aucune tâche",
    "lastPage": "Parcouru jusqu’à la page {page}",
    "metric": {
      "created": "Créées",
      "deleted": "Supprimées",
      "failed": "Échecs",
      "pages": "Pages",
      "probed": "Vérifiées",
      "skipped": "Ignorés",
      "unchanged": "Inchangés",
      "unparsed": "Non analysées",
      "updated": "Mises à jour"
    },
    "neverSynced": "Pas encore parcouru",
    "pausedByRegion": "En pause avec le pays",
    "places": "Lieux",
    "placesFailed": "Échec de l'import {date} : {error}",
    "placesImported": "Lieux : {count, number}, importés {date}",
    "placesNotImported": "Lieux pas encore importés",
    "regions": "Pays",
    "regionsEmpty": "Aucun pays pour l’instant",
    "status": {
      "Active": "Actif",
      "Paused": "En pause",
      "Terminated": "Supprimé",
      "Terminating": "Suppression en cours"
    },
    "syncOff": "Synchronisation non activée",
    "syncedUntil": "Synchronisé jusqu’au {date}",
    "title": "Régions",
    "world": "Reste du monde : pays et villes"
  },
  "reset": {
    "errorInvalid": "Ce lien de réinitialisation est invalide ou a expiré.",
    "invalidText": "Ce lien de réinitialisation est manquant ou incorrect. Demandez-en un nouveau.",
    "invalidTitle": "Lien invalide",
    "requestNew": "Demander un nouveau lien",
    "submit": "Mettre à jour le mot de passe",
    "subtitle": "Choisissez un nouveau mot de passe fort pour votre compte.",
    "success": "Mot de passe mis à jour. Veuillez vous connecter.",
    "title": "Définir un nouveau mot de passe"
  },
  "review": {
    "content": "Votre avis",
    "contentPlaceholder": "Partagez votre expérience…",
    "create": "Écrire un avis",
    "hidden": "Visible seulement par vous jusqu’à l’avis de l’autre partie ou la fin du délai",
    "hint": {
      "1": "Horrible",
      "2": "Mauvais",
      "3": "Moyen",
      "4": "Bien",
      "5": "Excellent"
    },
    "reply": "Réponse",
    "replyPlaceholder": "Écrire une réponse…",
    "replySend": "Envoyer la réponse",
    "stars": "Note",
    "title": "Avis",
    "windowClosed": "Le délai pour laisser un avis est écoulé"
  },
  "security": {
    "devices": {
      "current": "Cet appareil",
      "error": "Impossible de charger les appareils",
      "lastSeen": {
        "long": "Inactif depuis un moment",
        "recent": "Actif à l’instant",
        "today": "Actif à {time}",
        "yesterday": "Actif hier à {time}"
      },
      "refresh": "Actualiser",
      "revoke": "Révoquer",
      "revokeConfirm": "Révoquer {label} ?",
      "revokeHint": "L’appareil sera déconnecté immédiatement.",
      "revokedToast": "Appareil révoqué",
      "title": "Appareils actifs",
      "unknownDevice": "Appareil inconnu",
      "unknownDeviceWithDate": "Appareil ajouté le {date}"
    },
    "push": {
      "denied": "Autorisation bloquée. Ouvrez les paramètres du navigateur pour autoriser les notifications.",
      "label": "Notifications push",
      "unsupported": "Les notifications push ne sont pas prises en charge dans ce navigateur."
    }
  },
  "selector": {
    "searchPlaceholder": "Rechercher…"
  },
  "settings": {
    "account": "Compte"
  },
  "signup": {
    "alreadyHaveAccount": "Déjà un compte ?",
    "checkEmailText": "Nous avons envoyé un lien de vérification à {email}. Ouvrez-le pour activer votre compte.",
    "confirmPassword": "Confirmer le mot de passe",
    "confirmPasswordInput": "Confirmez le mot de passe",
    "errorTaken": "Cet e-mail ou ce nom d’utilisateur est déjà utilisé.",
    "heading": "Créer un compte",
    "loginLink": "Connectez-vous ici",
    "resend": "Renvoyer l’e-mail",
    "resent": "E-mail de vérification renvoyé.",
    "strength": {
      "fair": "Moyen",
      "good": "Bon",
      "strong": "Fort",
      "weak": "Faible"
    },
    "subtitle": "Commencez à explorer en 30 secondes",
    "title": "Inscription",
    "validation": {
      "confirmPasswordError": "Les mots de passe ne correspondent pas",
      "confirmPasswordSuccess": "✓ Les mots de passe correspondent",
      "emailError": "Veuillez entrer un e-mail valide",
      "emailSuccess": "✓ E-mail valide",
      "passwordError": "Mot de passe : 8-32 caractères, majuscule, minuscule, chiffre, spécial (#$^+=!*()@%&)",
      "passwordSubmit": "Le mot de passe doit contenir 8-32 caractères avec majuscule, minuscule, chiffre et caractère spécial",
      "passwordSuccess": "✓ Mot de passe fort",
      "usernameError": "Nom d’utilisateur : 4-24 caractères, alphanumérique, pas de _ ou . au début",
      "usernameSubmit": "Le nom d’utilisateur doit contenir 4-24 caractères, alphanumérique uniquement, ne peut pas commencer par _ ou .",
      "usernameSuccess": "✓ Nom d’utilisateur valide"
    }
  },
  "stats": {
    "allCurrencies": "Toutes",
    "approved": "Approuvées",
    "balance": "Solde",
    "bookingCount": "{count, plural, =1 {# réservation} other {# réservations}}",
    "byCurrency": "Par devise",
    "byProduct": "Par produit",
    "currencies": "Devises",
    "earnings": "Revenus",
    "export": "Télécharger le relevé",
    "flow": "Flux (entrée/sortie)",
    "gmv": "GMV",
    "in": "Entrée",
    "invoices": "Factures",
    "noData": "Aucune donnée disponible",
    "noMerchant": "Aucun marchand sélectionné",
    "out": "Sortie",
    "paidOut": "Versé",
    "peakCurrency": "Top : {currency}",
    "peakStatus": "Top : {status}",
    "pending": "Versement en attente",
    "range": {
      "1y": "1a",
      "30d": "30j",
      "7d": "7j",
      "90d": "90j",
      "all": "Tout",
      "ytd": "CdA"
    },
    "refunds": "Remboursements",
    "statusDistribution": "Répartition par statut",
    "tab": {
      "bookings": "Réservations",
      "earnings": "Revenus",
      "overview": "Vue d’ensemble",
      "revenue": "Revenus de la plateforme"
    },
    "takeRate": "Taux de commission",
    "totalBookings": "Total des réservations",
    "totalCount": "{count} au total",
    "transactions": "Transactions",
    "txCount": "{count, plural, =1 {# transaction} other {# transactions}}",
    "walletCount": "{count, plural, =1 {# portefeuille} other {# portefeuilles}}",
    "walletsTitle": "Portefeuilles de paiement"
  },
  "toast": {
    "attachment": {
      "failed": "Échec de la pièce jointe : {reason}"
    },
    "booking": {
      "Approved": "Réservation n° {id} approuvée",
      "Cancelled": "Réservation n° {id} annulée",
      "Completed": "Réservation n° {id} terminée",
      "Declined": "Réservation n° {id} refusée",
      "Expired": "Réservation n° {id} expirée",
      "Pending": "La réservation n° {id} attend le paiement",
      "Refunding": "Le remboursement de la réservation n° {id} est en cours",
      "Requested": "Nouvelle demande de réservation n° {id}"
    },
    "chatInvite": "Nouvelle invitation de chat",
    "chatMemberAddedSelf": "Vous avez été ajouté à un chat",
    "chatMemberRemovedSelf": "Vous avez été retiré d’un chat",
    "deviceRevokedSelf": "Cet appareil a été déconnecté",
    "dispute": {
      "Open": "Litige ouvert pour la réservation n° {bookingId}",
      "Resolved": "Litige de la réservation n° {bookingId} résolu",
      "Resolving": "Le litige de la réservation n° {bookingId} est en cours de règlement"
    },
    "geo": {
      "permissionDenied": "Accès à la localisation refusé. Activez-le dans Réglages → Confidentialité → Service de localisation.",
      "timeout": "Impossible d’obtenir votre position à temps. Réessayez.",
      "unavailable": "Localisation indisponible sur cet appareil."
    },
    "invoice": {
      "Cancelled": "Facture n° {id} annulée",
      "Completed": "Facture n° {id} réglée",
      "Expired": "Facture n° {id} expirée",
      "Failed": "Paiement de la facture n° {id} échoué",
      "Pending": "Facture n° {id} en attente",
      "Refund": "Remboursement de la facture n° {id}"
    },
    "merchant": {
      "active": "Votre marchand est prêt à accepter les paiements",
      "terminated": "Le marchand est fermé",
      "walletCreated": "Le portefeuille de garde est prêt"
    },
    "product": {
      "approved": "Annonce n° {productId} en ligne",
      "declined": "Annonce n° {productId} refusée"
    }
  },
  "unit": {
    "amenities": "Équipements",
    "amenityType": {
      "AirConditioning": "Climatisation",
      "AirportShuttle": "Navette aéroport",
      "Balcony": "Balcon",
      "Bar": "Bar",
      "Breakfast": "Petit-déjeuner",
      "Dryer": "Sèche-linge",
      "Elevator": "Ascenseur",
      "EvCharger": "Borne de recharge",
      "Fireplace": "Cheminée",
      "Fitness": "Salle de sport",
      "Heating": "Chauffage",
      "HotTub": "Jacuzzi",
      "Kitchen": "Cuisine",
      "LuggageStorage": "Consigne à bagages",
      "Parking": "Parking",
      "Pool": "Piscine",
      "Restaurant": "Restaurant",
      "RoomService": "Service en chambre",
      "Sauna": "Sauna",
      "Spa": "Spa",
      "Stove": "Cuisinière",
      "Tv": "Télévision",
      "Washer": "Lave-linge",
      "WheelchairAccessible": "Accessible en fauteuil roulant",
      "WiFi": "Wi-Fi",
      "Workspace": "Espace de travail"
    },
    "area": "{size} m²",
    "areaLabel": "Surface",
    "bathrooms": "{count, plural, =1 {# Salle de bain} other {# Salles de bain}}",
    "bathroomsLabel": "Salles de bain",
    "bedrooms": "{count, plural, =1 {# Chambre} other {# Chambres}}",
    "bedroomsLabel": "Chambres",
    "calendar": {
      "closed": "Fermé",
      "label": "Calendrier",
      "legendClosed": "Fermé",
      "legendImported": "Depuis un calendrier externe",
      "legendOverride": "Exception",
      "maxNights": "Nuits max.",
      "mergeHint": "Un champ vide reste inchangé. Utilisez « Effacer les exceptions » pour revenir à la valeur de base.",
      "minNights": "Nuits min.",
      "pickRange": "Choisissez une date ou une période",
      "quantity": "Chambres disponibles",
      "reset": "Effacer les exceptions",
      "resetConfirm": "Effacer toutes les exceptions sur les dates sélectionnées et revenir aux valeurs de base ?",
      "saved": "Calendrier mis à jour",
      "scope": "S’applique à",
      "scopeUnit": "Tout le logement",
      "selection": "{from} — {to}",
      "sync": {
        "add": "Ajouter un calendrier",
        "added": "Calendrier connecté",
        "broken": "Le lien ne fonctionne plus. Dernière synchronisation réussie : {date}. Les dates déjà bloquées restent jusqu’à la réparation.",
        "copied": "Lien copié",
        "copy": "Copier le lien du calendrier",
        "deleteConfirm": "Déconnecter ce calendrier ? Les dates qu’il bloque seront libérées.",
        "empty": "Aucun calendrier externe pour l’instant",
        "exportHint": "Collez ce lien dans Airbnb → Importer un calendrier pour que vos réservations Pinns y bloquent aussi les dates. Airbnb l’actualise toutes les quelques heures.",
        "exportTitle": "Exporter vers d’autres sites",
        "importHint": "Dans Airbnb : Annonce → Disponibilité → Synchroniser les calendriers → Exporter. Booking et VRBO utilisent le même format. Nous actualisons toutes les heures.",
        "name": "Nom",
        "neverSynced": "Pas encore synchronisé",
        "syncedAt": "Synchronisé {date} · {count, plural, =0 {aucune période bloquée} one {# période bloquée} other {# périodes bloquées}}",
        "title": "Calendriers externes",
        "url": "Lien iCal"
      }
    },
    "checkInTime": "Heure d’arrivée",
    "checkOutTime": "Heure de départ",
    "city": "Ville",
    "create": "Créer un logement",
    "instant": "Réservation instantanée",
    "label": "{count, plural, =1 {Logement} other {Logements}}",
    "locationHeading": "Emplacement",
    "maxNightsLabel": "Nuits max.",
    "minNights": "{count, plural, =1 {min # nuit} other {min # nuits}}",
    "minNightsLabel": "Nuits min.",
    "notFound": "Logement introuvable",
    "petsAllowed": "Animaux acceptés",
    "prepaid": "Prépayé",
    "property": "Type de propriété",
    "rates": {
      "add": "Ajouter un tarif",
      "enabled": "Réservable",
      "feesAtProperty": "Frais sur place",
      "hint": "Un tarif combine le prix, les repas et les conditions d’annulation : par exemple « petit-déjeuner inclus, non remboursable ». Les tarifs ajoutés ici vendent le logement entier ; pour vendre les chambres séparément, définissez leurs prix dans chaque chambre.",
      "item": "Tarif {index}",
      "label": "Tarifs",
      "remove": "Supprimer le tarif"
    },
    "reviewCount": "{count, plural, =1 {# avis} other {# avis}}",
    "rooms": {
      "add": "Ajouter une chambre",
      "hint": "Une chambre est une catégorie avec ses propres photos et prix. Laissez vide si le logement est loué en entier.",
      "item": "Chambre {index}",
      "label": "Chambres",
      "quantity": "Chambres de ce type",
      "remove": "Supprimer la chambre",
      "sizeSqm": "Surface, m²",
      "title": "Nom de la chambre"
    },
    "sleepsLabel": "Couchages",
    "starRating": "{count, plural, one {# étoile} other {# étoiles}}",
    "tagsMaxReached": "Maximum {max} tags autorisés",
    "unitType": {
      "Apartment": "Appartement",
      "Campsite": "Camping",
      "Chalet": "Chalet",
      "Cottage": "Gîte",
      "Hostel": "Auberge de jeunesse",
      "Hotel": "Hôtel",
      "House": "Maison",
      "Loft": "Loft",
      "Resort": "Complexe hôtelier",
      "Studio": "Studio",
      "Villa": "Villa"
    },
    "validation": {
      "createError": "Échec de la création du logement. Veuillez réessayer.",
      "updateError": "Échec de la mise à jour du logement. Veuillez réessayer."
    },
    "verifiedHost": "Hôte vérifié"
  },
  "upload": {
    "dropOrClick": "Déposez les fichiers ici ou cliquez pour télécharger",
    "maxReached": "Maximum {max} fichiers atteint",
    "uploading": "Attendez la fin du téléchargement"
  },
  "user": {
    "balance": {
      "available": "Disponible au retrait",
      "empty": "Votre solde est vide — les fonds des réservations terminées (versements sous séquestre) apparaîtront ici.",
      "inDispute": "En litige",
      "inEscrow": "Sous séquestre"
    },
    "logout": "Déconnexion"
  },
  "verify": {
    "errorExpired": "Ce lien de vérification a expiré. Veuillez vous réinscrire.",
    "errorTaken": "Ce compte est déjà vérifié. Veuillez vous connecter.",
    "errorText": "Ce lien est invalide ou a expiré. Réinscrivez-vous.",
    "errorTitle": "Échec de la vérification",
    "signupAgain": "Se réinscrire",
    "title": "Vérification de l’e-mail",
    "verifying": "Vérification de votre e-mail…"
  },
  "wallet": {
    "add": "Ajouter un portefeuille",
    "cctp": {
      "chain": {
        "arbitrum": "Arbitrum",
        "avalanche": "Avalanche",
        "base": "Base",
        "ethereum": "Ethereum",
        "optimism": "Optimism",
        "polygon": "Polygon"
      },
      "noSolana": "Connectez d’abord un portefeuille Solana — les remboursements y sont envoyés",
      "step": {
        "approving": "Autorisez l’USDC dans votre portefeuille…",
        "building": "Préparation de la transaction…",
        "burning": "Confirmez le transfert…",
        "relaying": "Transfert vers Solana…"
      }
    },
    "connect": "Connecter un autre",
    "disconnect": "Déconnecter",
    "method": {
      "cctp": "EVM (CCTP)",
      "solana": "Solana"
    },
    "notConnected": "Portefeuille non connecté",
    "step": {
      "awaiting-signature": "Confirmez dans votre portefeuille…",
      "building": "Préparation de la transaction…"
    },
    "viewAddress": "Voir l’adresse sur l’explorateur",
    "viewTx": "Voir la transaction"
  }
}
