PageSourceSearch

https://hou.la/

html hou.la collected 2026-10-02 15:58:01 UTC 832,134 bytes, 90 lines download raw bytes

1<!DOCTYPE html><html lang="fr-FR" data-beasties-container><head>
2        <meta charset="utf-8">
3        <title>Hou.la · Vidéo. Live. Shopping.</title>
4        <base href="/">
5        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5.0">
6
7        <!-- SEO Meta Tags -->
8        <!--
9            Ces valeurs sont le REPLI de tout le site : elles s'affichent partout
10            où une page n'écrase pas ses métas (SeoService). Elles doivent donc
11            porter le positionnement produit, pas une fonctionnalité annexe.
12            Restées sur « générateur de liens courts » du 2026-01-30 (5c157f36)
13            au 2026-08-15 : les guides, /apps/* et /a/* se partageaient sous
14            l'ancienne identité sur Discord et Facebook. Texte aligné sur la home
15            (app.routes.ts, route ''). Re-vérifier après tout changement :
16            curl -sA Discordbot https://hou.la/guides/live-events | grep 'og:'
17        -->
18        <meta name="description" content="Hou.la est le réseau social vidéo, live et shopping. Crée du contenu, passe en live, vends tes produits : tout en un.">
19        <meta name="keywords" content="réseau social, vidéo, live, live shopping, social commerce, créateur de contenu, streaming, marketplace, boutique en ligne, link in bio, qr code, lien court">
20        <meta name="author" content="Hou.la">
21        
22        <!--
23            AUCUNE balise canonical statique ici, et ne PAS en réintroduire.
24            (Ne pas écrire de balise link canonical littérale dans ce commentaire
25            non plus : le post-traitement HTML du build l'extrait et la réinjecte
26            réellement dans le head.)
27
28            Un canonical statique vers `/` est hérité par TOUTE page qui ne
29            l'écrase pas. `app.routes.ts` compte 245 routes pour 49 `canonical:` :
30            les ~196 autres (profils `/@x`, lives, stories, 404…) se déclaraient
31            donc doublons de l'accueil et s'auto-désindexaient. Mesuré le
32            2026-08-15 sur un profil réel, le canonical servi était `https://hou.la/`
33            au lieu de l'URL du profil :
34              curl -sA Googlebot https://hou.la/@lacasadeljose | grep canonical
35
36            Un canonical ABSENT est inoffensif (Google s'auto-canonicalise) ; un
37            canonical FAUX est destructeur. C'est désormais `SeoService` qui pose
38            un self-canonical de repli sur `NavigationEnd`, et il s'efface devant
39            le `data.canonical` de la route quand elle en déclare un.
40        -->
41
42        <!-- Favicons -->
43        <link rel="icon" type="image/x-icon" href="favicon.ico">
44        <link rel="apple-touch-icon" sizes="180x180" href="/assets/images/favicons/apple-touch-icon.png">
45        <link rel="icon" type="image/png" sizes="32x32" href="/assets/images/favicons/favicon-32x32.png">
46        <link rel="icon" type="image/png" sizes="16x16" href="/assets/images/favicons/favicon-16x16.png">
47        <link rel="manifest" href="/assets/images/favicons/site.webmanifest">
48        <link rel="mask-icon" href="/assets/images/favicons/safari-pinned-tab.svg" color="#2f8eef">
49        <meta name="msapplication-TileColor" content="#ffffff">
50        <meta name="theme-color" content="#ffffff">
51
52        <!-- Open Graph / Facebook -->
53        <meta property="og:type" content="website">
54        <meta property="og:url" content="https://hou.la/">
55        <meta property="og:title" content="Hou.la · Vidéo. Live. Shopping.">
56        <meta property="og:description" content="Hou.la est le réseau social vidéo, live et shopping. Crée du contenu, passe en live, vends tes produits : tout en un.">
57        <meta property="og:image" content="https://hou.la/api/og-image/default.png">
58        <meta property="og:image:width" content="1200">
59        <meta property="og:image:height" content="630">
60        <meta property="og:image:type" content="image/png">
61        <meta property="og:locale" content="fr_FR">
62        <meta property="og:site_name" content="Hou.la">
63
64        <!-- Twitter Card -->
65        <meta name="twitter:card" content="summary_large_image">
66        <meta name="twitter:site" content="@app_houla">
67        <meta name="twitter:title" content="Hou.la · Vidéo. Live. Shopping.">
68        <meta name="twitter:description" content="Hou.la est le réseau social vidéo, live et shopping. Crée du contenu, passe en live, vends tes produits : tout en un.">
69        <meta name="twitter:image" content="https://hou.la/api/og-image/default.png">
70
71        <!-- Preconnect -->
72        <link rel="preconnect" href="https://hou.la">
73        <link rel="preconnect" href="https://fonts.googleapis.com">
74        <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
75        <link rel="preconnect" href="https://placehold.co">
76        <link rel="dns-prefetch" href="https://hou.la">
77
78        <!-- Preload critical fonts -->
79        <link rel="preload" href="assets/fonts/primeicons.woff2" as="font" type="font/woff2" crossorigin>
80    <style>@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.p-toast{z-index:2147483647!important;max-width:380px;width:380px;opacity:1}@media (max-width: 480px){.p-toast{max-width:calc(100vw - 2rem)!important;width:calc(100vw - 2rem)!important;left:1rem!important;right:1rem!important}}:root{--p-toggleswitch-width: 3rem;--p-toggleswitch-height: 1.75rem;--p-toggleswitch-border-radius: 30px;--p-toggleswitch-gap: .25rem;--p-toggleswitch-border-width: 0;--p-toggleswitch-border-color: transparent;--p-toggleswitch-background: #d1d5db;--p-toggleswitch-hover-background: #9ca3af;--p-toggleswitch-checked-background: #3B82F6;--p-toggleswitch-checked-hover-background: #2563eb;--p-toggleswitch-handle-size: 1.25rem;--p-toggleswitch-handle-background: #ffffff;--p-toggleswitch-handle-hover-background: #ffffff;--p-toggleswitch-handle-checked-background: #ffffff;--p-toggleswitch-handle-checked-hover-background: #ffffff;--p-toggleswitch-handle-border-radius: 50%;--p-toggleswitch-transition-duration: .2s;--p-toggleswitch-slide-duration: .2s;--p-toggleswitch-shadow: 0 0 0 0 transparent}@-webkit-keyframes ring{0%{-webkit-transform:rotateZ(0)}1%{-webkit-transform:rotateZ(30deg)}3%{-webkit-transform:rotateZ(-28deg)}5%{-webkit-transform:rotateZ(34deg)}7%{-webkit-transform:rotateZ(-32deg)}9%{-webkit-transform:rotateZ(30deg)}11%{-webkit-transform:rotateZ(-28deg)}13%{-webkit-transform:rotateZ(26deg)}15%{-webkit-transform:rotateZ(-24deg)}17%{-webkit-transform:rotateZ(22deg)}19%{-webkit-transform:rotateZ(-20deg)}21%{-webkit-transform:rotateZ(18deg)}23%{-webkit-transform:rotateZ(-16deg)}25%{-webkit-transform:rotateZ(14deg)}27%{-webkit-transform:rotateZ(-12deg)}29%{-webkit-transform:rotateZ(10deg)}31%{-webkit-transform:rotateZ(-8deg)}33%{-webkit-transform:rotateZ(6deg)}35%{-webkit-transform:rotateZ(-4deg)}37%{-webkit-transform:rotateZ(2deg)}39%{-webkit-transform:rotateZ(-1deg)}41%{-webkit-transform:rotateZ(1deg)}43%{-webkit-transform:rotateZ(0)}to{-webkit-transform:rotateZ(0)}}.fp{position:relative;display:inline-block;background-size:auto 100%;background-position:center;background-repeat:no-repeat}.fp:before{content:"\a0"}.fp{line-height:1em;width:1.3333333333em}.fp.fp-rounded{border-radius:.1666666667em}.fp-br{background-image:url(/assets/images/flags/4x3/br.svg)}.fp-es{background-image:url(/assets/images/flags/4x3/es.svg)}.fp-fr{background-image:url(/assets/images/flags/4x3/fr.svg)}.fp-gb{background-image:url(/assets/images/flags/4x3/gb.svg)}.fp-it{background-image:url(/assets/images/flags/4x3/it.svg)}:root{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #2f8eef;--bs-secondary: #6c757d;--bs-warning: #fb6a00;--bs-dark: #514c4c;--bs-muted: #acaaaa;--bs-light: rgb(191, 191, 191);--bs-success: #18c451;--bs-danger: #dc3545;--bs-info: #0dcaf0;--bs-white: #ffffff;--bs-gray-10: rgb(236, 236, 236);--bs-gray-50: rgb(136, 136, 136);--bs-gray: rgb(80, 80, 80);--bs-primary-rgb: 47, 142, 239;--bs-secondary-rgb: 108, 117, 125;--bs-warning-rgb: 251, 106, 0;--bs-dark-rgb: 81, 76, 76;--bs-muted-rgb: 172, 170, 170;--bs-light-rgb: 191, 191, 191;--bs-success-rgb: 24, 196, 81;--bs-danger-rgb: 220, 53, 69;--bs-info-rgb: 13, 202, 240;--bs-gray-10-rgb: 236, 236, 236;--bs-gray-50-rgb: 136, 136, 136;--bs-gray-rgb: 80, 80, 80;
80--bs-primary-text-emphasis: rgb(5.2, 44, 101.2);--bs-secondary-text-emphasis: rgb(43.2, 46.8, 50);--bs-success-text-emphasis: rgb(10, 54, 33.6);--bs-info-text-emphasis: rgb(5.2, 80.8, 96);--bs-warning-text-emphasis: rgb(102, 77.2, 2.8);--bs-danger-text-emphasis: rgb(88, 21.2, 27.6);--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: rgb(206.6, 226, 254.6);--bs-secondary-bg-subtle: rgb(225.6, 227.4, 229);--bs-success-bg-subtle: rgb(209, 231, 220.8);--bs-info-bg-subtle: rgb(206.6, 244.4, 252);--bs-warning-bg-subtle: rgb(255, 242.6, 205.4);--bs-danger-bg-subtle: rgb(248, 214.6, 217.8);--bs-light-bg-subtle: rgb(251.5, 252, 252.5);--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: rgb(158.2, 197, 254.2);--bs-secondary-border-subtle: rgb(196.2, 199.8, 203);--bs-success-border-subtle: rgb(163, 207, 186.6);--bs-info-border-subtle: rgb(158.2, 233.8, 249);--bs-warning-border-subtle: rgb(255, 230.2, 155.8);--bs-danger-border-subtle: rgb(241, 174.2, 180.6);--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, .15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size: 1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-color-rgb: 33, 37, 41;--bs-body-bg: #fff;--bs-body-bg-rgb: 255, 255, 255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: rgba(33, 37, 41, .75);--bs-secondary-color-rgb: 33, 37, 41;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233, 236, 239;--bs-tertiary-color: rgba(33, 37, 41, .5);--bs-tertiary-color-rgb: 33, 37, 41;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248, 249, 250;--bs-heading-color: inherit;--bs-link-color: #0d6efd;--bs-link-color-rgb: 13, 110, 253;--bs-link-decoration: underline;--bs-link-hover-color: rgb(10.4, 88, 202.4);--bs-link-hover-color-rgb: 10, 88, 202;--bs-code-color: #d63384;--bs-highlight-color: #212529;--bs-highlight-bg: rgb(255, 242.6, 205.4);--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #dee2e6;--bs-border-color-translucent: rgba(0, 0, 0, .175);--bs-border-radius: .375rem;--bs-border-radius-sm: .25rem;--bs-border-radius-lg: .5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm: 0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width: .25rem;--bs-focus-ring-opacity: .25;--bs-focus-ring-color: rgba(13, 110, 253, .25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}*,*:before,*:after{box-sizing:border-box}@media (prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}h3,h2,h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width: 1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width: 1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width: 1200px){h3{font-size:1.75rem}}p{margin-top:0;margin-bottom:1rem}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}b,strong{font-weight:bolder}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity, 1));text-decoration:underline}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}figure{margin:0 0 1rem}img,svg{vertical-align:middle}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button{text-transform:none}[role=button]{cursor:pointer}button,[type=button]{-webkit-appearance:button}
80button:not(:disabled),[type=button]:not(:disabled){cursor:pointer}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px}.btn{--bs-btn-padding-x: .75rem;--bs-btn-padding-y: .375rem;--bs-btn-font-family: ;--bs-btn-font-size: 1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);--bs-btn-disabled-opacity: .65;--bs-btn-focus-box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn:first-child:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn:first-child:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.nav{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: .5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.badge{--bs-badge-padding-x: .65em;--bs-badge-padding-y: .35em;--bs-badge-font-size: .75em;--bs-badge-font-weight: 700;--bs-badge-color: #fff;--bs-badge-border-radius: var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}body{min-height:100vh;padding:0;margin:0;overflow-x:hidden}body{background-color:#f1f1f1!important}h1{font-family:inherit}
81</style><link rel="stylesheet" href="styles-MNVNH67W.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-MNVNH67W.css"></noscript>
vendor: 63 bytes, line 81
81<script async src="https://www.googletagmanager.com/gtag/js?id=
81G-GG2NQ1XZX4
vendor: 11 bytes, line 81
81"></script>
81<style ng-app-id="ng">[_nghost-ng-c1785608445]{min-height:100vh;display:block}</style><meta property="og:locale:alternate" content="en_US"><meta property="og:locale:alternate" content="it_IT"><meta property="og:locale:alternate" content="es_ES"><meta property="og:locale:alternate" content="pt_BR"><style ng-app-id="ng">.install-overlay[_ngcontent-ng-c2305169274]{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1rem;background:#05050c9e;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:_ngcontent-ng-c2305169274_installFade .2s ease}@media (max-width: 575.98px){.install-overlay[_ngcontent-ng-c2305169274]{align-items:flex-end;padding:0}}@keyframes _ngcontent-ng-c2305169274_installFade{0%{opacity:0}to{opacity:1}}.install-modal[_ngcontent-ng-c2305169274]{position:relative;width:100%;max-width:380px;text-align:center;background:#12121ef5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1.25rem;box-shadow:0 4px 6px -1px #0006,0 24px 48px -12px #0009;padding:2rem 1.75rem 1.5rem;animation:_ngcontent-ng-c2305169274_installPop .28s cubic-bezier(.16,1,.3,1)}@media (max-width: 575.98px){.install-modal[_ngcontent-ng-c2305169274]{max-width:100%;border-radius:1.25rem 1.25rem 0 0;border-bottom:none;padding-bottom:2rem;animation:_ngcontent-ng-c2305169274_installSlideUp .32s cubic-bezier(.16,1,.3,1)}}@keyframes _ngcontent-ng-c2305169274_installPop{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes _ngcontent-ng-c2305169274_installSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.install-close[_ngcontent-ng-c2305169274]{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#ffffff0f;color:#fff9;cursor:pointer;transition:background .2s ease,color .2s ease}.install-close[_ngcontent-ng-c2305169274]:hover{background:#ffffff1f;color:#fff}.install-logo[_ngcontent-ng-c2305169274]{height:34px;width:auto;margin-bottom:1rem}.install-title[_ngcontent-ng-c2305169274]{font-size:1.2rem;font-weight:700;color:#fff;margin:0 0 .4rem;letter-spacing:-.01em}.install-sub[_ngcontent-ng-c2305169274]{font-size:.9rem;line-height:1.5;color:#ffffffa8;margin:0 0 1.4rem}.install-stores[_ngcontent-ng-c2305169274]{display:flex;flex-direction:column;gap:.625rem}.install-store[_ngcontent-ng-c2305169274]{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.7rem 1rem;border-radius:.75rem;background:linear-gradient(135deg,#2f8eef,#1e6fd0);color:#fff;text-decoration:none;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}.install-store[_ngcontent-ng-c2305169274]   .pi[_ngcontent-ng-c2305169274]{font-size:1.4rem}.install-store[_ngcontent-ng-c2305169274]   span[_ngcontent-ng-c2305169274]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1;font-size:.95rem}.install-store[_ngcontent-ng-c2305169274]   span[_ngcontent-ng-c2305169274]   small[_ngcontent-ng-c2305169274]{font-size:.65rem;font-weight:500;opacity:.85;text-transform:uppercase;letter-spacing:.03em}.install-store[_ngcontent-ng-c2305169274]:hover{transform:translateY(-1px);box-shadow:0 6px 18px #2f8eef66;color:#fff}.install-web[_ngcontent-ng-c2305169274]{margin-top:1.1rem;background:none;border:none;color:#ffffff80;font-size:.85rem;font-weight:500;cursor:pointer;transition:color .2s ease}.install-web[_ngcontent-ng-c2305169274]:hover{color:#fffc;text-decoration:underline}</style><style ng-app-id="ng">[_nghost-ng-c3608190751]{--paper: #0a0a14;--surface: #12121e;--surface-2: #1a1a2e;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .66);--ink-muted: rgba(255, 255, 255, .45);--accent: #2f8eef;--accent-bright: #54a6f6;--live: #ff3b30;--error: #ef4444;--border: rgba(255, 255, 255, .1);--border-soft: rgba(255, 255, 255, .06);--topbar: 64px;--story-ring-a: #ffc83a;--story-ring-b: #ff7a1a;--story-ring-seen: rgba(255, 255, 255, .22)}.auth-modal[_ngcontent-ng-c3608190751]{position:fixed;inset:0;z-index:1000;background:#05050cb8;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px}.auth-close[_ngcontent-ng-c3608190751]{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:50%;border:none;background:var(--surface-2);color:var(--ink-soft);display:flex;align-items:center;justify-content:center}.auth-close[_ngcontent-ng-c3608190751]:hover{color:var(--ink)}.auth-logo[_ngcontent-ng-c3608190751]{height:26px;margin-bottom:16px}.auth-title[_ngcontent-ng-c3608190751]{font-size:22px;font-weight:800;margin:0 0 6px;color:var(--ink)}.auth-sub[_ngcontent-ng-c3608190751]{font-size:14px;color:var(--ink-muted);margin:0 0 8px}.auth-card[_ngcontent-ng-c3608190751]{position:relative;width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:34px 30px 26px;box-shadow:0 40px 80px #0009;text-align:center}.auth-or[_ngcontent-ng-c3608190751]{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-muted);font-size:12px}.auth-or[_ngcontent-ng-c3608190751]:before, .auth-or[_ngcontent-ng-c3608190751]:after{content:"";flex:1;height:1px;background:var(--border)}.auth-field[_ngcontent-ng-c3608190751]{display:block;text-align:left;margin-bottom:14px}.auth-field[_ngcontent-ng-c3608190751]   span[_ngcontent-ng-c3608190751]{display:block;font-size:12px;color:var(--ink-soft);margin-bottom:6px}.auth-field[_ngcontent-ng-c3608190751]   input[_ngcontent-ng-c3608190751]{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:12px 14px;color:var(--ink);font-size:14px;outline:none;transition:border-color .18s}.auth-field[_ngcontent-ng-c3608190751]   input[_ngcontent-ng-c3608190751]:focus{border-color:var(--accent)}.auth-error[_ngcontent-ng-c3608190751]{color:var(--error);font-size:13px;margin:0 0 12px;text-align:left}.auth-submit[_ngcontent-ng-c3608190751]{width:100%;background:var(--accent);color:#fff;border:none;border-radius:12px;padding:13px;font-weight:700;font-size:15px;margin-top:4px;transition:background .18s}.auth-submit[_ngcontent-ng-c3608190751]:hover{background:var(--accent-bright)}.auth-submit[_ngcontent-ng-c3608190751]:disabled{opacity:.6;cursor:default}.auth-links[_ngcontent-ng-c3608190751]{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:18px;font-size:13px;color:var(--ink-muted)}.auth-links[_ngcontent-ng-c3608190751]   a[_ngcontent-ng-c3608190751]{color:var(--accent-bright);cursor:pointer}.auth-links[_ngcontent-ng-c3608190751]   a[_ngcontent-ng-c3608190751]:hover{text-decoration:underline}</style><style ng-app-id="ng">[_nghost-ng-c2367422573]{--paper: #0a0a14;--surface: #12121e;--surface-2: #1a1a2e;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .66);--ink-muted: rgba(255, 255, 255, .45);--accent: #2f8eef;--accent-bright: #54a6f6;--live: #ff3b30;--error: #ef4444;--border: rgba(255, 255, 255, .1);--border-soft: rgba(255, 255, 255, .06);--topbar: 64px;--story-ring-a: #ffc83a;--story-ring-b: #ff7a1a;--story-ring-seen: rgba(255, 255, 255, .22);--gold: #ffc83a;--bonus: #4caf50;font-family:Inter,system-ui,sans-serif;color:var(--ink)}*[_ngcontent-ng-c2367422573]{box-sizing:border-box}button[_ngcontent-ng-c2367422573]{font-family:inherit;cursor:pointer}[_ngcontent-ng-c2367422573]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.cp[_ngcontent-ng-c2367422573]{position:fixed;inset:0;z-index:1050;background:#05050cb8;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}.cp__card[_ngcontent-ng-c2367422573]{position:relative;width:100%;max-width:560px;max-height:min(92vh,860px);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:0 40px 80px #0009;overflow:hidden}.cp__close[_ngcontent-ng-c2367422573]{position:absolute;top:14px;right:14px;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink-soft);display:grid;place-items:center}.cp__close[_ngcontent-ng-c2367422573]:hover{color:var(--ink)}.coin[_ngcontent-ng-c2367422573]{display:block;flex:0 0 auto;width:18px;height:18px}.coin--sm[_ngcontent-ng-c2367422573]{width:14px;
81height:14px}.coin--lg[_ngcontent-ng-c2367422573]{width:24px;height:24px}.coin--xl[_ngcontent-ng-c2367422573]{width:38px;height:38px}.coin--hero[_ngcontent-ng-c2367422573]{width:52px;height:52px}.cp__head[_ngcontent-ng-c2367422573]{display:flex;align-items:center;gap:8px;padding:18px 60px 12px 18px;border-bottom:1px solid var(--border-soft)}.cp__back[_ngcontent-ng-c2367422573]{width:30px;height:30px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink-soft);display:grid;place-items:center}.cp__title[_ngcontent-ng-c2367422573]{margin:0;font-size:18px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cp__balance[_ngcontent-ng-c2367422573]{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;background:#1e1e32;color:var(--gold);font-size:13px;font-weight:600}.cp__test[_ngcontent-ng-c2367422573]{margin:0;padding:6px 14px;display:flex;align-items:center;gap:6px;background:#ffc83a1f;color:var(--gold);font-size:11px}.cp__error[_ngcontent-ng-c2367422573]{margin:8px 14px 0;padding:8px 12px;display:flex;align-items:center;gap:8px;border-radius:8px;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ff8a8a;font-size:12px}.cp__error[_ngcontent-ng-c2367422573]   span[_ngcontent-ng-c2367422573]{flex:1}.cp__error[_ngcontent-ng-c2367422573]   button[_ngcontent-ng-c2367422573]{border:0;background:none;color:inherit}.cp__body[_ngcontent-ng-c2367422573]{flex:1;min-height:0;overflow-y:auto;padding:14px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.16) transparent}.cp__center[_ngcontent-ng-c2367422573]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:36px 12px}.cp__spin[_ngcontent-ng-c2367422573]{font-size:28px;color:var(--gold)}.cp__icon[_ngcontent-ng-c2367422573]{font-size:40px;color:var(--ink-soft)}.cp__muted[_ngcontent-ng-c2367422573]{margin:0;font-size:14px;color:var(--ink-soft);max-width:380px;line-height:1.45}.cp__big[_ngcontent-ng-c2367422573]{margin:0;font-size:18px;font-weight:700}.cp__link[_ngcontent-ng-c2367422573]{border:0;background:none;color:var(--accent-bright);font-weight:600;display:inline-flex;align-items:center;gap:6px}.cp__sr[_ngcontent-ng-c2367422573]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.cp__packs[_ngcontent-ng-c2367422573]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pack[_ngcontent-ng-c2367422573]{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:2px;padding:18px 12px 12px;border:0;border-radius:14px;background:#1e1e32;color:var(--ink)}.pack[_ngcontent-ng-c2367422573]:hover:not(:disabled){background:#26263f}.pack[_ngcontent-ng-c2367422573]:disabled{cursor:default}.pack[_ngcontent-ng-c2367422573]:disabled:not(.is-busy){opacity:.6}.pack__corner[_ngcontent-ng-c2367422573]{position:absolute;top:0;right:0;padding:4px 7px;border-radius:0 14px 0 10px;color:#fff;font-weight:700}.pack__corner--bonus[_ngcontent-ng-c2367422573]{background:var(--bonus);font-size:9px}.pack__corner--badge[_ngcontent-ng-c2367422573]{background:var(--accent);font-size:8px;letter-spacing:.03em}.pack__coins[_ngcontent-ng-c2367422573]{margin-top:8px;font-size:26px;font-weight:800;line-height:1;color:var(--gold)}.pack__unit[_ngcontent-ng-c2367422573]{font-size:11px;color:#ffffff8c}.pack__free[_ngcontent-ng-c2367422573]{padding-top:2px;font-size:11px;font-weight:700;color:var(--bonus)}.pack__name[_ngcontent-ng-c2367422573]{margin-top:6px;font-size:13px;font-weight:600}.pack__price[_ngcontent-ng-c2367422573]{margin-top:10px;width:100%;min-height:36px;padding:9px 0;border-radius:20px;background:var(--gold);color:#000;font-size:14px;font-weight:700;text-align:center}.pack[_ngcontent-ng-c2367422573]:disabled:not(.is-busy)   .pack__price[_ngcontent-ng-c2367422573]{background:#2a2a3e;color:#fff9}.cp__summary[_ngcontent-ng-c2367422573]{margin:0 0 10px;font-size:14px;font-weight:600;color:var(--ink-soft)}.cp__stripe[_ngcontent-ng-c2367422573]{border-radius:14px;overflow:hidden;min-height:1px}
81.cp__burst[_ngcontent-ng-c2367422573]{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:#ffc83a1a;border:2px solid rgba(255,200,58,.32);animation:_ngcontent-ng-c2367422573_cp-pop .6s cubic-bezier(.34,1.56,.64,1)}@keyframes _ngcontent-ng-c2367422573_cp-pop{0%{transform:scale(.2)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.cp__burst[_ngcontent-ng-c2367422573]{animation:none}}.cp__added[_ngcontent-ng-c2367422573]{margin:10px 0 0;font-size:38px;font-weight:800;line-height:1;color:var(--gold)}.cp__newbal[_ngcontent-ng-c2367422573]{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:20px;background:#1e1e32;font-size:13px;font-weight:600;margin-bottom:14px}.cp__btn[_ngcontent-ng-c2367422573]{width:100%;max-width:360px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:700}.cp__btn--gold[_ngcontent-ng-c2367422573]{border:0;background:var(--gold);color:#000;font-size:16px}.cp__btn--outline[_ngcontent-ng-c2367422573]{border:1px solid var(--gold);background:none;color:var(--gold)}.cp__btn--text[_ngcontent-ng-c2367422573]{border:0;background:none;color:var(--ink-muted);font-weight:500}@media (min-width: 720px){.cp__card[_ngcontent-ng-c2367422573]{max-width:720px}.cp__packs[_ngcontent-ng-c2367422573]{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 520px){.cp[_ngcontent-ng-c2367422573]{align-items:flex-end;padding:0}.cp__card[_ngcontent-ng-c2367422573]{max-height:94vh;border-radius:22px 22px 0 0}}</style><style type="text/css" data-primeng-style-id="primitive-variables">:root{--p-border-radius-none:0;--p-border-radius-xs:2px;--p-border-radius-sm:4px;--p-border-radius-md:6px;--p-border-radius-lg:8px;--p-border-radius-xl:12px;--p-emerald-50:#ecfdf5;--p-emerald-100:#d1fae5;--p-emerald-200:#a7f3d0;--p-emerald-300:#6ee7b7;--p-emerald-400:#34d399;--p-emerald-500:#10b981;--p-emerald-600:#059669;--p-emerald-700:#047857;--p-emerald-800:#065f46;--p-emerald-900:#064e3b;--p-emerald-950:#022c22;--p-green-50:#f0fdf4;--p-green-100:#dcfce7;--p-green-200:#bbf7d0;--p-green-300:#86efac;--p-green-400:#4ade80;--p-green-500:#22c55e;--p-green-600:#16a34a;--p-green-700:#15803d;--p-green-800:#166534;--p-green-900:#14532d;--p-green-950:#052e16;--p-lime-50:#f7fee7;--p-lime-100:#ecfccb;--p-lime-200:#d9f99d;--p-lime-300:#bef264;--p-lime-400:#a3e635;--p-lime-500:#84cc16;--p-lime-600:#65a30d;--p-lime-700:#4d7c0f;--p-lime-800:#3f6212;--p-lime-900:#365314;--p-lime-950:#1a2e05;--p-red-50:#fef2f2;--p-red-100:#fee2e2;--p-red-200:#fecaca;--p-red-300:#fca5a5;--p-red-400:#f87171;--p-red-500:#ef4444;--p-red-600:#dc2626;--p-red-700:#b91c1c;--p-red-800:#991b1b;--p-red-900:#7f1d1d;--p-red-950:#450a0a;--p-orange-50:#fff7ed;--p-orange-100:#ffedd5;--p-orange-200:#fed7aa;--p-orange-300:#fdba74;--p-orange-400:#fb923c;--p-orange-500:#f97316;--p-orange-600:#ea580c;--p-orange-700:#c2410c;--p-orange-800:#9a3412;--p-orange-900:#7c2d12;--p-orange-950:#431407;--p-amber-50:#fffbeb;--p-amber-100:#fef3c7;--p-amber-200:#fde68a;--p-amber-300:#fcd34d;--p-amber-400:#fbbf24;--p-amber-500:#f59e0b;--p-amber-600:#d97706;--p-amber-700:#b45309;--p-amber-800:#92400e;--p-amber-900:#78350f;--p-amber-950:#451a03;--p-yellow-50:#fefce8;--p-yellow-100:#fef9c3;--p-yellow-200:#fef08a;--p-yellow-300:#fde047;--p-yellow-400:#facc15;--p-yellow-500:#eab308;--p-yellow-600:#ca8a04;--p-yellow-700:#a16207;--p-yellow-800:#854d0e;--p-yellow-900:#713f12;--p-yellow-950:#422006;--p-teal-50:#f0fdfa;--p-teal-100:#ccfbf1;--p-teal-200:#99f6e4;--p-teal-300:#5eead4;--p-teal-400:#2dd4bf;--p-teal-500:#14b8a6;--p-teal-600:#0d9488;--p-teal-700:#0f766e;--p-teal-800:#115e59;--p-teal-900:#134e4a;--p-teal-950:#042f2e;--p-cyan-50:#ecfeff;--p-cyan-100:#cffafe;--p-cyan-200:#a5f3fc;--p-cyan-300:#67e8f9;--p-cyan-400:#22d3ee;--p-cyan-500:#06b6d4;--p-cyan-600:#0891b2;--p-cyan-700:#0e7490;--p-cyan-800:#155e75;--p-cyan-900:#164e63;--p-cyan-950:#083344;--p-sky-50:#f0f9ff;--p-sky-100:#e0f2fe;--p-sky-200:#bae6fd;--p-sky-300:#7dd3fc;--p-sky-400:#38bdf8;--p-sky-500:#0ea5e9;--p-sky-600:#0284c7;--p-sky-700:#0369a1;--p-sky-800:#075985;--p-sky-900:#0c4a6e;--p-sky-950:#082f49;--p-blue-50:#eff6ff;--p-blue-100:#dbeafe;--p-blue-200:#bfdbfe;--p-blue-300:#93c5fd;--p-blue-400:#60a5fa;--p-blue-500:#3b82f6;--p-blue-600:#2563eb;--p-blue-700:#1d4ed8;--p-blue-800:#1e40af;--p-blue-900:#1e3a8a;--p-blue-950:#172554;--p-indigo-50:#eef2ff;--p-indigo-100:#e0e7ff;--p-indigo-200:#c7d2fe;--p-indigo-300:#a5b4fc;--p-indigo-400:#818cf8;--p-indigo-500:#6366f1;--p-indigo-600:#4f46e5;--p-indigo-700:#4338ca;--p-indigo-800:#3730a3;--p-indigo-900:#312e81;--p-indigo-950:#1e1b4b;--p-violet-50:#f5f3ff;--p-violet-100:#ede9fe;--p-violet-200:#ddd6fe;--p-violet-300:#c4b5fd;
81--p-violet-400:#a78bfa;--p-violet-500:#8b5cf6;--p-violet-600:#7c3aed;--p-violet-700:#6d28d9;--p-violet-800:#5b21b6;--p-violet-900:#4c1d95;--p-violet-950:#2e1065;--p-purple-50:#faf5ff;--p-purple-100:#f3e8ff;--p-purple-200:#e9d5ff;--p-purple-300:#d8b4fe;--p-purple-400:#c084fc;--p-purple-500:#a855f7;--p-purple-600:#9333ea;--p-purple-700:#7e22ce;--p-purple-800:#6b21a8;--p-purple-900:#581c87;--p-purple-950:#3b0764;--p-fuchsia-50:#fdf4ff;--p-fuchsia-100:#fae8ff;--p-fuchsia-200:#f5d0fe;--p-fuchsia-300:#f0abfc;--p-fuchsia-400:#e879f9;--p-fuchsia-500:#d946ef;--p-fuchsia-600:#c026d3;--p-fuchsia-700:#a21caf;--p-fuchsia-800:#86198f;--p-fuchsia-900:#701a75;--p-fuchsia-950:#4a044e;--p-pink-50:#fdf2f8;--p-pink-100:#fce7f3;--p-pink-200:#fbcfe8;--p-pink-300:#f9a8d4;--p-pink-400:#f472b6;--p-pink-500:#ec4899;--p-pink-600:#db2777;--p-pink-700:#be185d;--p-pink-800:#9d174d;--p-pink-900:#831843;--p-pink-950:#500724;--p-rose-50:#fff1f2;--p-rose-100:#ffe4e6;--p-rose-200:#fecdd3;--p-rose-300:#fda4af;--p-rose-400:#fb7185;--p-rose-500:#f43f5e;--p-rose-600:#e11d48;--p-rose-700:#be123c;--p-rose-800:#9f1239;--p-rose-900:#881337;--p-rose-950:#4c0519;--p-slate-50:#f8fafc;--p-slate-100:#f1f5f9;--p-slate-200:#e2e8f0;--p-slate-300:#cbd5e1;--p-slate-400:#94a3b8;--p-slate-500:#64748b;--p-slate-600:#475569;--p-slate-700:#334155;--p-slate-800:#1e293b;--p-slate-900:#0f172a;--p-slate-950:#020617;--p-gray-50:#f9fafb;--p-gray-100:#f3f4f6;--p-gray-200:#e5e7eb;--p-gray-300:#d1d5db;--p-gray-400:#9ca3af;--p-gray-500:#6b7280;--p-gray-600:#4b5563;--p-gray-700:#374151;--p-gray-800:#1f2937;--p-gray-900:#111827;--p-gray-950:#030712;--p-zinc-50:#fafafa;--p-zinc-100:#f4f4f5;--p-zinc-200:#e4e4e7;--p-zinc-300:#d4d4d8;--p-zinc-400:#a1a1aa;--p-zinc-500:#71717a;--p-zinc-600:#52525b;--p-zinc-700:#3f3f46;--p-zinc-800:#27272a;--p-zinc-900:#18181b;--p-zinc-950:#09090b;--p-neutral-50:#fafafa;--p-neutral-100:#f5f5f5;--p-neutral-200:#e5e5e5;--p-neutral-300:#d4d4d4;--p-neutral-400:#a3a3a3;--p-neutral-500:#737373;--p-neutral-600:#525252;--p-neutral-700:#404040;--p-neutral-800:#262626;--p-neutral-900:#171717;--p-neutral-950:#0a0a0a;--p-stone-50:#fafaf9;--p-stone-100:#f5f5f4;--p-stone-200:#e7e5e4;--p-stone-300:#d6d3d1;--p-stone-400:#a8a29e;--p-stone-500:#78716c;--p-stone-600:#57534e;--p-stone-700:#44403c;--p-stone-800:#292524;--p-stone-900:#1c1917;--p-stone-950:#0c0a09;}</style><style type="text/css" data-primeng-style-id="semantic-variables">:root{--p-transition-duration:0.2s;--p-focus-ring-width:1px;--p-focus-ring-style:solid;--p-focus-ring-color:var(--p-primary-color);--p-focus-ring-offset:2px;--p-focus-ring-shadow:none;--p-disabled-opacity:0.6;--p-icon-size:1rem;--p-anchor-gutter:2px;--p-primary-50:var(--p-emerald-50);--p-primary-100:var(--p-emerald-100);--p-primary-200:var(--p-emerald-200);--p-primary-300:var(--p-emerald-300);--p-primary-400:var(--p-emerald-400);--p-primary-500:var(--p-emerald-500);--p-primary-600:var(--p-emerald-600);--p-primary-700:var(--p-emerald-700);--p-primary-800:var(--p-emerald-800);--p-primary-900:var(--p-emerald-900);--p-primary-950:var(--p-emerald-950);--p-form-field-padding-x:0.75rem;--p-form-field-padding-y:0.5rem;--p-form-field-sm-font-size:0.875rem;--p-form-field-sm-padding-x:0.625rem;--p-form-field-sm-padding-y:0.375rem;--p-form-field-lg-font-size:1.125rem;--p-form-field-lg-padding-x:0.875rem;--p-form-field-lg-padding-y:0.625rem;--p-form-field-border-radius:var(--p-border-radius-md);--p-form-field-focus-ring-width:0;--p-form-field-focus-ring-style:none;--p-form-field-focus-ring-color:transparent;--p-form-field-focus-ring-offset:0;--p-form-field-focus-ring-shadow:none;--p-form-field-transition-duration:var(--p-transition-duration);--p-list-padding:0.25rem 0.25rem;--p-list-gap:2px;--p-list-header-padding:0.5rem 1rem 0.25rem 1rem;--p-list-option-padding:0.5rem 0.75rem;--p-list-option-border-radius:var(--p-border-radius-sm);--p-list-option-group-padding:0.5rem 0.75rem;--p-list-option-group-font-weight:600;--p-content-border-radius:var(--p-border-radius-md);--p-mask-transition-duration:0.3s;--p-navigation-list-padding:0.25rem 0.25rem;--p-navigation-list-gap:2px;--p-navigation-item-padding:0.5rem 0.75rem;--p-navigation-item-border-radius:var(--p-border-radius-sm);--p-navigation-item-gap:0.5rem;--p-navigation-submenu-label-padding:0.5rem 0.75rem;
81--p-navigation-submenu-label-font-weight:600;--p-navigation-submenu-icon-size:0.875rem;--p-overlay-select-border-radius:var(--p-border-radius-md);--p-overlay-select-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--p-overlay-popover-border-radius:var(--p-border-radius-md);--p-overlay-popover-padding:0.75rem;--p-overlay-popover-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--p-overlay-modal-border-radius:var(--p-border-radius-xl);--p-overlay-modal-padding:1.25rem;--p-overlay-modal-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 8px 10px -6px rgba(0,0,0,0.1);--p-overlay-navigation-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -2px rgba(0,0,0,0.1);--p-surface-0:#ffffff;--p-surface-50:var(--p-slate-50);--p-surface-100:var(--p-slate-100);--p-surface-200:var(--p-slate-200);--p-surface-300:var(--p-slate-300);--p-surface-400:var(--p-slate-400);--p-surface-500:var(--p-slate-500);--p-surface-600:var(--p-slate-600);--p-surface-700:var(--p-slate-700);--p-surface-800:var(--p-slate-800);--p-surface-900:var(--p-slate-900);--p-surface-950:var(--p-slate-950);--p-primary-color:var(--p-primary-500);--p-primary-contrast-color:#ffffff;--p-primary-hover-color:var(--p-primary-600);--p-primary-active-color:var(--p-primary-700);--p-highlight-background:var(--p-primary-50);--p-highlight-focus-background:var(--p-primary-100);--p-highlight-color:var(--p-primary-700);--p-highlight-focus-color:var(--p-primary-800);--p-mask-background:rgba(0,0,0,0.4);--p-mask-color:var(--p-surface-200);--p-form-field-background:var(--p-surface-0);--p-form-field-disabled-background:var(--p-surface-200);--p-form-field-filled-background:var(--p-surface-50);--p-form-field-filled-hover-background:var(--p-surface-50);--p-form-field-filled-focus-background:var(--p-surface-50);--p-form-field-border-color:var(--p-surface-300);--p-form-field-hover-border-color:var(--p-surface-400);--p-form-field-focus-border-color:var(--p-primary-color);--p-form-field-invalid-border-color:var(--p-red-400);--p-form-field-color:var(--p-surface-700);--p-form-field-disabled-color:var(--p-surface-500);--p-form-field-placeholder-color:var(--p-surface-500);--p-form-field-invalid-placeholder-color:var(--p-red-600);--p-form-field-float-label-color:var(--p-surface-500);--p-form-field-float-label-focus-color:var(--p-primary-600);--p-form-field-float-label-active-color:var(--p-surface-500);--p-form-field-float-label-invalid-color:var(--p-form-field-invalid-placeholder-color);--p-form-field-icon-color:var(--p-surface-400);--p-form-field-shadow:0 0 #0000,0 0 #0000,0 1px 2px 0 rgba(18,18,23,0.05);--p-text-color:var(--p-surface-700);--p-text-hover-color:var(--p-surface-800);--p-text-muted-color:var(--p-surface-500);--p-text-hover-muted-color:var(--p-surface-600);--p-content-background:var(--p-surface-0);--p-content-hover-background:var(--p-surface-100);--p-content-border-color:var(--p-surface-200);--p-content-color:var(--p-text-color);--p-content-hover-color:var(--p-text-hover-color);--p-overlay-select-background:var(--p-surface-0);--p-overlay-select-border-color:var(--p-surface-200);--p-overlay-select-color:var(--p-text-color);--p-overlay-popover-background:var(--p-surface-0);--p-overlay-popover-border-color:var(--p-surface-200);--p-overlay-popover-color:var(--p-text-color);--p-overlay-modal-background:var(--p-surface-0);--p-overlay-modal-border-color:var(--p-surface-200);--p-overlay-modal-color:var(--p-text-color);--p-list-option-focus-background:var(--p-surface-100);--p-list-option-selected-background:var(--p-highlight-background);--p-list-option-selected-focus-background:var(--p-highlight-focus-background);--p-list-option-color:var(--p-text-color);--p-list-option-focus-color:var(--p-text-hover-color);--p-list-option-selected-color:var(--p-highlight-color);--p-list-option-selected-focus-color:var(--p-highlight-focus-color);--p-list-option-icon-color:var(--p-surface-400);--p-list-option-icon-focus-color:var(--p-surface-500);--p-list-option-group-background:transparent;--p-list-option-group-color:var(--p-text-muted-color);--p-navigation-item-focus-background:var(--p-surface-100);--p-navigation-item-active-background:var(--p-surface-100);--p-navigation-item-color:var(--p-text-color);--p-navigation-item-focus-color:var(--p-text-hover-color);--p-navigation-item-active-color:var(--p-text-hover-color);--p-navigation-item-icon-color:var(--p-surface-400);--p-navigation-item-icon-focus-color:var(--p-surface-500);--p-navigation-item-icon-active-color:var(--p-surface-500);--p-navigation-submenu-label-background:transparent;--p-navigation-submenu-label-color:var(--p-text-muted-color);--p-navigation-submenu-icon-color:var(--p-surface-400);--p-navigation-submenu-icon-focus-color:var(--p-surface-500);--p-navigation-submenu-icon-active-color:var(--p-surface-500);}.dark-mode{--p-surface-0:#ffffff;--p-surface-50:var(--p-zinc-50);--p-surface-100:var(--p-zinc-100);--p-surface-200:var(--p-zinc-200);--p-surface-300:var(--p-zinc-300);--p-surface-400:var(--p-zinc-400);--p-surface-500:var(--p-zinc-500);--p-surface-600:var(--p-zinc-600);--p-surface-700:var(--p-zinc-700);--p-surface-800:var(--p-zinc-800);--p-surface-900:var(--p-zinc-900);--p-surface-950:var(--p-zinc-950);--p-primary-color:var(--p-primary-400);--p-primary-contrast-color:var(--p-surface-900);--p-primary-hover-color:var(--p-primary-300);--p-primary-active-color:var(--p-primary-200);--p-highlight-background:color-mix(in srgb,var(--p-primary-400),transparent 84%);--p-highlight-focus-background:color-mix(in srgb,var(--p-primary-400),transparent 76%);--p-highlight-color:rgba(255,255,255,.87);--p-highlight-focus-color:rgba(255,255,255,.87);--p-mask-background:rgba(0,0,0,0.6);--p-mask-color:var(--p-surface-200);--p-form-field-background:var(--p-surface-950);--p-form-field-disabled-background:var(--p-surface-700);--p-form-field-filled-background:var(--p-surface-800);--p-form-field-filled-hover-background:var(--p-surface-800);--p-form-field-filled-focus-background:var(--p-surface-800);--p-form-field-border-color:var(--p-surface-600);--p-form-field-hover-border-color:var(--p-surface-500);--p-form-field-focus-border-color:var(--p-primary-color);--p-form-field-invalid-border-color:var(--p-red-300);--p-form-field-color:var(--p-surface-0);--p-form-field-disabled-color:var(--p-surface-400);--p-form-field-placeholder-color:var(--p-surface-400);--p-form-field-invalid-placeholder-color:var(--p-red-400);--p-form-field-float-label-color:var(--p-surface-400);--p-form-field-float-label-focus-color:var(--p-primary-color);--p-form-field-float-label-active-color:var(--p-surface-400);--p-form-field-float-label-invalid-color:var(--p-form-field-invalid-placeholder-color);--p-form-field-icon-color:var(--p-surface-400);--p-form-field-shadow:0 0 #0000,0 0 #0000,0 1px 2px 0 rgba(18,18,23,0.05);--p-text-color:var(--p-surface-0);--p-text-hover-color:var(--p-surface-0);--p-text-muted-color:var(--p-surface-400);--p-text-hover-muted-color:var(--p-surface-300);--p-content-background:var(--p-surface-900);--p-content-hover-background:var(--p-surface-800);--p-content-border-color:var(--p-surface-700);--p-content-color:var(--p-text-color);--p-content-hover-color:var(--p-text-hover-color);--p-overlay-select-background:var(--p-surface-900);--p-overlay-select-border-color:var(--p-surface-700);--p-overlay-select-color:var(--p-text-color);--p-overlay-popover-background:var(--p-surface-900);--p-overlay-popover-border-color:var(--p-surface-700);--p-overlay-popover-color:var(--p-text-color);--p-overlay-modal-background:var(--p-surface-900);--p-overlay-modal-border-color:var(--p-surface-700);--p-overlay-modal-color:var(--p-text-color);--p-list-option-focus-background:var(--p-surface-800);
81--p-list-option-selected-background:var(--p-highlight-background);--p-list-option-selected-focus-background:var(--p-highlight-focus-background);--p-list-option-color:var(--p-text-color);--p-list-option-focus-color:var(--p-text-hover-color);--p-list-option-selected-color:var(--p-highlight-color);--p-list-option-selected-focus-color:var(--p-highlight-focus-color);--p-list-option-icon-color:var(--p-surface-500);--p-list-option-icon-focus-color:var(--p-surface-400);--p-list-option-group-background:transparent;--p-list-option-group-color:var(--p-text-muted-color);--p-navigation-item-focus-background:var(--p-surface-800);--p-navigation-item-active-background:var(--p-surface-800);--p-navigation-item-color:var(--p-text-color);--p-navigation-item-focus-color:var(--p-text-hover-color);--p-navigation-item-active-color:var(--p-text-hover-color);--p-navigation-item-icon-color:var(--p-surface-500);--p-navigation-item-icon-focus-color:var(--p-surface-400);--p-navigation-item-icon-active-color:var(--p-surface-400);--p-navigation-submenu-label-background:transparent;--p-navigation-submenu-label-color:var(--p-text-muted-color);--p-navigation-submenu-icon-color:var(--p-surface-500);--p-navigation-submenu-icon-focus-color:var(--p-surface-400);--p-navigation-submenu-icon-active-color:var(--p-surface-400);}</style><style type="text/css" data-primeng-style-id="global-variables">:root{color-scheme:light}.dark-mode{color-scheme:dark}</style><style type="text/css" data-primeng-style-id="global-style">*,::before,::after{box-sizing:border-box;}.p-connected-overlay{opacity:0;transform:scaleY(0.8);transition:transform 0.12s cubic-bezier(0,0,0.2,1),opacity 0.12s cubic-bezier(0,0,0.2,1);}.p-connected-overlay-visible{opacity:1;transform:scaleY(1);}.p-connected-overlay-hidden{opacity:0;transform:scaleY(1);transition:opacity 0.1s linear;}.p-connected-overlay-enter-from{opacity:0;transform:scaleY(0.8);}.p-connected-overlay-leave-to{opacity:0;}.p-connected-overlay-enter-active{transition:transform 0.12s cubic-bezier(0,0,0.2,1),opacity 0.12s cubic-bezier(0,0,0.2,1);}.p-connected-overlay-leave-active{transition:opacity 0.1s linear;}.p-toggleable-content-enter-from,.p-toggleable-content-leave-to{max-height:0;}.p-toggleable-content-enter-to,.p-toggleable-content-leave-from{max-height:1000px;}.p-toggleable-content-leave-active{overflow:hidden;transition:max-height 0.45s cubic-bezier(0,1,0,1);}.p-toggleable-content-enter-active{overflow:hidden;transition:max-height 1s ease-in-out;}.p-disabled,.p-disabled *{cursor:default;pointer-events:none;user-select:none;}.p-disabled,.p-component:disabled{opacity:var(--p-disabled-opacity);}.pi{font-size:var(--p-icon-size);}.p-icon{width:var(--p-icon-size);height:var(--p-icon-size);}.p-unselectable-text{user-select:none;}.p-overlay-mask{background:var(--p-mask-background);color:var(--p-mask-color);position:fixed;top:0;left:0;width:100%;height:100%;}.p-overlay-mask-enter{animation:p-overlay-mask-enter-animation var(--p-mask-transition-duration) forwards;}.p-overlay-mask-leave{animation:p-overlay-mask-leave-animation var(--p-mask-transition-duration) forwards;}.p-iconwrapper{display:inline-flex;justify-content:center;align-items:center;}</style><style type="text/css" data-primeng-style-id="base">.p-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;}.p-hidden-accessible input,.p-hidden-accessible select{transform:scale(0);}.p-overflow-hidden{overflow:hidden;padding-right:var(--p-scrollbar-width);}.p-icon{display:inline-block;vertical-align:baseline;}.p-icon-spin{-webkit-animation:p-icon-spin 2s infinite linear;animation:p-icon-spin 2s infinite linear;}@-webkit-keyframes p-icon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg);}}@keyframes p-icon-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg);}}</style><style type="text/css" data-primeng-style-id="toast-variables">:root{--p-toast-width:25rem;--p-toast-border-radius:var(--p-content-border-radius);--p-toast-border-width:1px;--p-toast-transition-duration:var(--p-transition-duration);--p-toast-icon-size:1.125rem;--p-toast-content-padding:var(--p-overlay-popover-padding);--p-toast-content-gap:0.5rem;--p-toast-text-gap:0.5rem;--p-toast-summary-font-weight:500;--p-toast-summary-font-size:1rem;
81--p-toast-detail-font-weight:500;--p-toast-detail-font-size:0.875rem;--p-toast-close-button-width:1.75rem;--p-toast-close-button-height:1.75rem;--p-toast-close-button-border-radius:50%;--p-toast-close-button-focus-ring-width:var(--p-focus-ring-width);--p-toast-close-button-focus-ring-style:var(--p-focus-ring-style);--p-toast-close-button-focus-ring-offset:var(--p-focus-ring-offset);--p-toast-close-icon-size:1rem;--p-toast-blur:1.5px;--p-toast-info-background:color-mix(in srgb,var(--p-blue-50),transparent 5%);--p-toast-info-border-color:var(--p-blue-200);--p-toast-info-color:var(--p-blue-600);--p-toast-info-detail-color:var(--p-surface-700);--p-toast-info-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-blue-500),transparent 96%);--p-toast-info-close-button-hover-background:var(--p-blue-100);--p-toast-info-close-button-focus-ring-color:var(--p-blue-600);--p-toast-info-close-button-focus-ring-shadow:none;--p-toast-success-background:color-mix(in srgb,var(--p-green-50),transparent 5%);--p-toast-success-border-color:var(--p-green-200);--p-toast-success-color:var(--p-green-600);--p-toast-success-detail-color:var(--p-surface-700);--p-toast-success-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-green-500),transparent 96%);--p-toast-success-close-button-hover-background:var(--p-green-100);--p-toast-success-close-button-focus-ring-color:var(--p-green-600);--p-toast-success-close-button-focus-ring-shadow:none;--p-toast-warn-background:color-mix(in srgb,var(--p-yellow-50),transparent 5%);--p-toast-warn-border-color:var(--p-yellow-200);--p-toast-warn-color:var(--p-yellow-600);--p-toast-warn-detail-color:var(--p-surface-700);--p-toast-warn-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-yellow-500),transparent 96%);--p-toast-warn-close-button-hover-background:var(--p-yellow-100);--p-toast-warn-close-button-focus-ring-color:var(--p-yellow-600);--p-toast-warn-close-button-focus-ring-shadow:none;--p-toast-error-background:color-mix(in srgb,var(--p-red-50),transparent 5%);--p-toast-error-border-color:var(--p-red-200);--p-toast-error-color:var(--p-red-600);--p-toast-error-detail-color:var(--p-surface-700);--p-toast-error-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-red-500),transparent 96%);--p-toast-error-close-button-hover-background:var(--p-red-100);--p-toast-error-close-button-focus-ring-color:var(--p-red-600);--p-toast-error-close-button-focus-ring-shadow:none;--p-toast-secondary-background:var(--p-surface-100);--p-toast-secondary-border-color:var(--p-surface-200);--p-toast-secondary-color:var(--p-surface-600);--p-toast-secondary-detail-color:var(--p-surface-700);--p-toast-secondary-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-surface-500),transparent 96%);--p-toast-secondary-close-button-hover-background:var(--p-surface-200);--p-toast-secondary-close-button-focus-ring-color:var(--p-surface-600);--p-toast-secondary-close-button-focus-ring-shadow:none;--p-toast-contrast-background:var(--p-surface-900);--p-toast-contrast-border-color:var(--p-surface-950);--p-toast-contrast-color:var(--p-surface-50);--p-toast-contrast-detail-color:var(--p-surface-0);--p-toast-contrast-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-surface-950),transparent 96%);--p-toast-contrast-close-button-hover-background:var(--p-surface-800);--p-toast-contrast-close-button-focus-ring-color:var(--p-surface-50);--p-toast-contrast-close-button-focus-ring-shadow:none;}.dark-mode{--p-toast-blur:10px;--p-toast-info-background:color-mix(in srgb,var(--p-blue-500),transparent 84%);--p-toast-info-border-color:color-mix(in srgb,var(--p-blue-700),transparent 64%);--p-toast-info-color:var(--p-blue-500);--p-toast-info-detail-color:var(--p-surface-0);--p-toast-info-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-blue-500),transparent 96%);--p-toast-info-close-button-hover-background:rgba(255,255,255,0.05);--p-toast-info-close-button-focus-ring-color:var(--p-blue-500);--p-toast-info-close-button-focus-ring-shadow:none;--p-toast-success-background:color-mix(in srgb,var(--p-green-500),transparent 84%);--p-toast-success-border-color:color-mix(in srgb,var(--p-green-700),transparent 64%);--p-toast-success-color:var(--p-green-500);--p-toast-success-detail-color:var(--p-surface-0);--p-toast-success-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-green-500),transparent 96%);--p-toast-success-close-button-hover-background:rgba(255,255,255,0.05);--p-toast-success-close-button-focus-ring-color:var(--p-green-500);--p-toast-success-close-button-focus-ring-shadow:none;--p-toast-warn-background:color-mix(in srgb,var(--p-yellow-500),transparent 84%);--p-toast-warn-border-color:color-mix(in srgb,var(--p-yellow-700),transparent 64%);--p-toast-warn-color:var(--p-yellow-500);--p-toast-warn-detail-color:var(--p-surface-0);
81--p-toast-warn-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-yellow-500),transparent 96%);--p-toast-warn-close-button-hover-background:rgba(255,255,255,0.05);--p-toast-warn-close-button-focus-ring-color:var(--p-yellow-500);--p-toast-warn-close-button-focus-ring-shadow:none;--p-toast-error-background:color-mix(in srgb,var(--p-red-500),transparent 84%);--p-toast-error-border-color:color-mix(in srgb,var(--p-red-700),transparent 64%);--p-toast-error-color:var(--p-red-500);--p-toast-error-detail-color:var(--p-surface-0);--p-toast-error-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-red-500),transparent 96%);--p-toast-error-close-button-hover-background:rgba(255,255,255,0.05);--p-toast-error-close-button-focus-ring-color:var(--p-red-500);--p-toast-error-close-button-focus-ring-shadow:none;--p-toast-secondary-background:var(--p-surface-800);--p-toast-secondary-border-color:var(--p-surface-700);--p-toast-secondary-color:var(--p-surface-300);--p-toast-secondary-detail-color:var(--p-surface-0);--p-toast-secondary-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-surface-500),transparent 96%);--p-toast-secondary-close-button-hover-background:var(--p-surface-700);--p-toast-secondary-close-button-focus-ring-color:var(--p-surface-300);--p-toast-secondary-close-button-focus-ring-shadow:none;--p-toast-contrast-background:var(--p-surface-0);--p-toast-contrast-border-color:var(--p-surface-100);--p-toast-contrast-color:var(--p-surface-950);--p-toast-contrast-detail-color:var(--p-surface-950);--p-toast-contrast-shadow:0px 4px 8px 0px color-mix(in srgb,var(--p-surface-950),transparent 96%);--p-toast-contrast-close-button-hover-background:var(--p-surface-100);--p-toast-contrast-close-button-focus-ring-color:var(--p-surface-950);--p-toast-contrast-close-button-focus-ring-shadow:none;}</style><style type="text/css" data-primeng-style-id="toast-style">.p-toast{width:var(--p-toast-width);white-space:pre-line;word-break:break-word;}.p-toast-message{margin:0 0 1rem 0;}.p-toast-message-icon{flex-shrink:0;font-size:var(--p-toast-icon-size);width:var(--p-toast-icon-size);height:var(--p-toast-icon-size);}.p-toast-message-content{display:flex;align-items:flex-start;padding:var(--p-toast-content-padding);gap:var(--p-toast-content-gap);}.p-toast-message-text{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--p-toast-text-gap);}.p-toast-summary{font-weight:var(--p-toast-summary-font-weight);font-size:var(--p-toast-summary-font-size);}.p-toast-detail{font-weight:var(--p-toast-detail-font-weight);font-size:var(--p-toast-detail-font-size);}.p-toast-close-button{display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;cursor:pointer;background:transparent;transition:background var(--p-toast-transition-duration),color var(--p-toast-transition-duration),outline-color var(--p-toast-transition-duration),box-shadow var(--p-toast-transition-duration);outline-color:transparent;color:inherit;width:var(--p-toast-close-button-width);height:var(--p-toast-close-button-height);border-radius:var(--p-toast-close-button-border-radius);margin:-25% 0 0 0;right:-25%;padding:0;border:none;user-select:none;}.p-toast-close-button:dir(rtl){margin:-25% 0 0 auto;left:-25%;right:auto;}.p-toast-message-info,.p-toast-message-success,.p-toast-message-warn,.p-toast-message-error,.p-toast-message-secondary,.p-toast-message-contrast{border-width:var(--p-toast-border-width);border-style:solid;backdrop-filter:blur(var(--p-toast-blur));border-radius:var(--p-toast-border-radius);}.p-toast-close-icon{font-size:var(--p-toast-close-icon-size);width:var(--p-toast-close-icon-size);height:var(--p-toast-close-icon-size);}.p-toast-close-button:focus-visible{outline-width:var(--p-focus-ring-width);outline-style:var(--p-focus-ring-style);outline-offset:var(--p-focus-ring-offset);}.p-toast-message-info{background:var(--p-toast-info-background);border-color:var(--p-toast-info-border-color);color:var(--p-toast-info-color);box-shadow:var(--p-toast-info-shadow);}.p-toast-message-info .p-toast-detail{color:var(--p-toast-info-detail-color);}.p-toast-message-info .p-toast-close-button:focus-visible{outline-color:var(--p-toast-info-close-button-focus-ring-color);box-shadow:var(--p-toast-info-close-button-focus-ring-shadow);}.p-toast-message-info .p-toast-close-button:hover{background:var(--p-toast-info-close-button-hover-background);}.p-toast-message-success{background:var(--p-toast-success-background);border-color:var(--p-toast-success-border-color);color:var(--p-toast-success-color);box-shadow:var(--p-toast-success-shadow);}.p-toast-message-success .p-toast-detail{color:var(--p-toast-success-detail-color);}.p-toast-message-success .p-toast-close-button:focus-visible{outline-color:var(--p-toast-success-close-button-focus-ring-color);box-shadow:var(--p-toast-success-close-button-focus-ring-shadow);}.p-toast-message-success .p-toast-close-button:hover{background:var(--p-toast-success-close-button-hover-background);}.p-toast-message-warn{background:var(--p-toast-warn-background);border-color:var(--p-toast-warn-border-color);color:var(--p-toast-warn-color);
81box-shadow:var(--p-toast-warn-shadow);}.p-toast-message-warn .p-toast-detail{color:var(--p-toast-warn-detail-color);}.p-toast-message-warn .p-toast-close-button:focus-visible{outline-color:var(--p-toast-warn-close-button-focus-ring-color);box-shadow:var(--p-toast-warn-close-button-focus-ring-shadow);}.p-toast-message-warn .p-toast-close-button:hover{background:var(--p-toast-warn-close-button-hover-background);}.p-toast-message-error{background:var(--p-toast-error-background);border-color:var(--p-toast-error-border-color);color:var(--p-toast-error-color);box-shadow:var(--p-toast-error-shadow);}.p-toast-message-error .p-toast-detail{color:var(--p-toast-error-detail-color);}.p-toast-message-error .p-toast-close-button:focus-visible{outline-color:var(--p-toast-error-close-button-focus-ring-color);box-shadow:var(--p-toast-error-close-button-focus-ring-shadow);}.p-toast-message-error .p-toast-close-button:hover{background:var(--p-toast-error-close-button-hover-background);}.p-toast-message-secondary{background:var(--p-toast-secondary-background);border-color:var(--p-toast-secondary-border-color);color:var(--p-toast-secondary-color);box-shadow:var(--p-toast-secondary-shadow);}.p-toast-message-secondary .p-toast-detail{color:var(--p-toast-secondary-detail-color);}.p-toast-message-secondary .p-toast-close-button:focus-visible{outline-color:var(--p-toast-secondary-close-button-focus-ring-color);box-shadow:var(--p-toast-secondary-close-button-focus-ring-shadow);}.p-toast-message-secondary .p-toast-close-button:hover{background:var(--p-toast-secondary-close-button-hover-background);}.p-toast-message-contrast{background:var(--p-toast-contrast-background);border-color:var(--p-toast-contrast-border-color);color:var(--p-toast-contrast-color);box-shadow:var(--p-toast-contrast-shadow);}.p-toast-message-contrast .p-toast-detail{color:var(--p-toast-contrast-detail-color);}.p-toast-message-contrast .p-toast-close-button:focus-visible{outline-color:var(--p-toast-contrast-close-button-focus-ring-color);box-shadow:var(--p-toast-contrast-close-button-focus-ring-shadow);}.p-toast-message-contrast .p-toast-close-button:hover{background:var(--p-toast-contrast-close-button-hover-background);}.p-toast-top-center{transform:translateX(-50%);}.p-toast-bottom-center{transform:translateX(-50%);}.p-toast-center{min-width:20vw;transform:translate(-50%,-50%);}.p-toast-message-enter-from{opacity:0;transform:translateY(50%);}.p-toast-message-leave-from{max-height:1000px;}.p-toast .p-toast-message.p-toast-message-leave-to{max-height:0;opacity:0;margin-bottom:0;overflow:hidden;}.p-toast-message-enter-active{transition:transform 0.3s,opacity 0.3s;}.p-toast-message-leave-active{transition:max-height 0.45s cubic-bezier(0,1,0,1),opacity 0.3s,margin-bottom 0.3s;}</style><style ng-app-id="ng">@charset "UTF-8";@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;
81src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;
81src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;
81src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE58RWq7.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE98RWq7.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYEF8RQ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFqaHjyV.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;
81src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFuaHjyV.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFWaHg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}[_nghost-ng-c874076103]{--cols: 12;--bl: 8px;--lh: 24px;--gutter: 24px;--margin: 64px;--pad: 96px;--maxw: 1296px;--paper: #0a0a14;--surface: #12121e;--surface-2: #1a1a2e;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .66);--ink-muted: rgba(255, 255, 255, .45);--accent: #2f8eef;--accent-bright: #54a6f6;--live: #ff3b30;--border: rgba(255, 255, 255, .1);--border-soft: rgba(255, 255, 255, .07);--g-col: rgba(47, 142, 239, .08);--g-edge: rgba(47, 142, 239, .5);--g-base: rgba(255, 255, 255, .22);--g-base-min: rgba(255, 255, 255, .07);display:block;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:var(--lh);-webkit-font-smoothing:antialiased;overflow-x:hidden}@media (max-width: 991px){[_nghost-ng-c874076103]{--margin: 40px;--pad: 64px}}@media (max-width: 768px){[_nghost-ng-c874076103]{--margin: 20px;--pad: 48px}}*[_ngcontent-ng-c874076103]{box-sizing:border-box}.glow[_ngcontent-ng-c874076103]{position:absolute;border-radius:50%;filter:blur(110px);pointer-events:none;z-index:0;opacity:.55}.glow--hero[_ngcontent-ng-c874076103]{width:620px;height:620px;background:radial-gradient(circle,rgba(47,142,239,.55),transparent 70%);top:-120px;right:-60px;animation:_ngcontent-ng-c874076103_float 16s ease-in-out infinite}.glow--blue[_ngcontent-ng-c874076103]{width:460px;height:460px;background:radial-gradient(circle,rgba(47,142,239,.4),transparent 70%);animation:_ngcontent-ng-c874076103_float 22s ease-in-out infinite reverse}.glow--live[_ngcontent-ng-c874076103]{width:380px;height:380px;background:radial-gradient(circle,rgba(255,59,48,.28),transparent 70%)}.wrap[_ngcontent-ng-c874076103] > .grid[_ngcontent-ng-c874076103]{position:relative;z-index:1}.reveal[_ngcontent-ng-c874076103]{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.landing-test.anim-ready[_ngcontent-ng-c874076103]   .reveal[_ngcontent-ng-c874076103]{opacity:0;transform:translateY(26px);will-change:opacity,transform}.landing-test.anim-ready[_ngcontent-ng-c874076103]   .reveal.in[_ngcontent-ng-c874076103]{opacity:1;transform:none}@keyframes _ngcontent-ng-c874076103_float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-26px,22px) scale(1.06)}}@keyframes _ngcontent-ng-c874076103_pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.85)}}@keyframes _ngcontent-ng-c874076103_riseFade{0%{opacity:0;transform:translateY(0) scale(.6)}15%{opacity:1}to{opacity:0;transform:translateY(-180px) scale(1.1)}}.spread[_ngcontent-ng-c874076103]{position:relative;width:100%}.wrap[_ngcontent-ng-c874076103]{position:relative;max-width:var(--maxw);margin:0 auto;padding:var(--pad) var(--margin)}.grid[_ngcontent-ng-c874076103]{display:grid;grid-template-columns:repeat(var(--cols),1fr);column-gap:var(--gutter);row-gap:var(--lh)}.band[_ngcontent-ng-c874076103]{grid-column:1/-1;display:grid;grid-template-columns:subgrid;column-gap:var(--gutter);row-gap:var(--lh);align-items:start}@supports not (grid-template-columns: subgrid){.band[_ngcontent-ng-c874076103]{grid-template-columns:repeat(var(--cols),1fr)}}@media (max-width: 768px){.band[_ngcontent-ng-c874076103] > *[_ngcontent-ng-c874076103]{grid-column:1/-1!important}}.kicker[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;line-height:var(--lh);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-bright);margin:0 0 8px}.kicker--muted[_ngcontent-ng-c874076103]{color:var(--ink-muted)}.shead[_ngcontent-ng-c874076103]{font-size:40px;line-height:48px;font-weight:800;letter-spacing:-.01em;margin:0}@media (max-width: 768px){.shead[_ngcontent-ng-c874076103]{font-size:30px;line-height:40px}}.lede[_ngcontent-ng-c874076103]{font-size:18px;line-height:32px;color:var(--ink-soft);margin:0;max-width:38ch}.body[_ngcontent-ng-c874076103]{font-size:16px;line-height:var(--lh);color:var(--ink-soft);margin:0}
81.accent[_ngcontent-ng-c874076103]{color:var(--accent)}.rule[_ngcontent-ng-c874076103]{grid-column:1/-1;height:2px;background:var(--ink);margin:0}.rule--accent[_ngcontent-ng-c874076103]{background:var(--accent)}.rule--soft[_ngcontent-ng-c874076103]{height:1px;background:var(--border)}.nav[_ngcontent-ng-c874076103]{position:fixed;top:0;left:0;right:0;z-index:100;background:#0a0a1499;backdrop-filter:blur(20px);border-bottom:1px solid var(--border-soft)}.nav__wrap[_ngcontent-ng-c874076103]{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin:0 auto;padding:16px var(--margin);display:flex;align-items:center;justify-content:space-between;gap:24px}.nav__left[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:32px}.nav__right[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:12px}.nav__brand[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;flex-shrink:0}.nav__logo[_ngcontent-ng-c874076103]{height:26px;display:block}.nav__links[_ngcontent-ng-c874076103]{display:flex;gap:20px;font-family:Space Mono,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase}@media (max-width: 860px){.nav__links[_ngcontent-ng-c874076103]{display:none}}.nav__link[_ngcontent-ng-c874076103]{color:var(--ink-soft);text-decoration:none}.nav__link[_ngcontent-ng-c874076103]:hover{color:var(--ink)}.hero[_ngcontent-ng-c874076103]{padding-top:56px;overflow:hidden}.hero__col[_ngcontent-ng-c874076103]{grid-column:1/7;align-self:center}@media (max-width: 860px){.hero__col[_ngcontent-ng-c874076103]{grid-column:1/-1}}.hero__head[_ngcontent-ng-c874076103]{font-weight:900;letter-spacing:-.02em;font-size:92px;line-height:96px;margin:0}@media (max-width: 1200px){.hero__head[_ngcontent-ng-c874076103]{font-size:76px;line-height:80px}}@media (max-width: 768px){.hero__head[_ngcontent-ng-c874076103]{font-size:52px;line-height:56px}}@media (max-width: 480px){.hero__head[_ngcontent-ng-c874076103]{font-size:40px;line-height:48px}}.hero__head[_ngcontent-ng-c874076103]   .line[_ngcontent-ng-c874076103]{display:block}.hero__head[_ngcontent-ng-c874076103]   .line.accent[_ngcontent-ng-c874076103]{position:relative;text-shadow:0 0 40px rgba(47,142,239,.5)}.hero__tagline[_ngcontent-ng-c874076103]{font-size:20px;line-height:32px;font-weight:700;margin:16px 0 0}.hero__lede[_ngcontent-ng-c874076103]{margin-top:16px;max-width:42ch}.hero__cta[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}.hero__note[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;color:var(--ink-muted);margin:16px 0 0}.hero__visual[_ngcontent-ng-c874076103]{grid-column:7/13;position:relative;align-self:center;min-height:480px;display:flex;align-items:center;justify-content:center}@media (max-width: 860px){.hero__visual[_ngcontent-ng-c874076103]{grid-column:1/-1;min-height:360px;margin-top:24px}}.hero__img[_ngcontent-ng-c874076103]{position:relative;z-index:1;width:auto;max-width:100%;height:auto;max-height:620px;object-fit:contain;filter:drop-shadow(0 40px 80px rgba(0,0,0,.6));animation:_ngcontent-ng-c874076103_heroFloat 7s ease-in-out infinite}@media (max-width: 480px){.hero__img[_ngcontent-ng-c874076103]{max-height:440px}}@keyframes _ngcontent-ng-c874076103_heroFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.reactions[_ngcontent-ng-c874076103]{position:absolute;inset:0;z-index:2;pointer-events:none}.reactions[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{position:absolute;width:34px;height:34px;opacity:0;animation:_ngcontent-ng-c874076103_riseFade 4.5s ease-in infinite;filter:drop-shadow(0 4px 10px rgba(0,0,0,.4))}.reactions[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]:nth-child(1){left:8%;bottom:18%;animation-delay:0s}.reactions[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]:nth-child(2){left:26%;bottom:8%;animation-delay:1.4s}.reactions[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]:nth-child(3){left:60%;bottom:12%;animation-delay:2.6s}.reactions[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]:nth-child(4){left:44%;bottom:22%;animation-delay:3.6s}.badge[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;transition:transform .18s}.badge[_ngcontent-ng-c874076103]:hover{transform:translateY(-2px)}.badge[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{display:block;border-radius:8px}.badge--play[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{height:48px}.badge--ios[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{height:40px}.btn[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;border-radius:0;transition:all .18s;cursor:pointer}.btn--primary[_ngcontent-ng-c874076103]{background:var(--accent);color:#fff;border:2px solid var(--accent)}.btn--primary[_ngcontent-ng-c874076103]:hover{background:var(--accent-bright);border-color:var(--accent-bright)}.btn--ghost[_ngcontent-ng-c874076103]{background:transparent;color:var(--ink);border:2px solid var(--border)}.btn--ghost[_ngcontent-ng-c874076103]:hover{border-color:var(--ink)}.data[_ngcontent-ng-c874076103]{border-top:2px solid var(--ink);padding-top:16px}.data__item[_ngcontent-ng-c874076103]{grid-column:span 3}@media (max-width: 768px){.data__item[_ngcontent-ng-c874076103]{grid-column:span 6}}.numeral[_ngcontent-ng-c874076103]{font-size:64px;line-height:64px;font-weight:800;letter-spacing:-.02em;color:var(--accent);margin:0}@media (max-width: 768px){.numeral[_ngcontent-ng-c874076103]{font-size:48px;line-height:48px}}.data__label[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;line-height:var(--lh);letter-spacing:.06em;color:var(--ink-soft);margin:8px 0 0;text-transform:uppercase}.sec__head[_ngcontent-ng-c874076103]{grid-column:1/8}@media (max-width: 768px){.sec__head[_ngcontent-ng-c874076103]{grid-column:1/-1}}.sec__lede[_ngcontent-ng-c874076103]{grid-column:8/13;align-self:end}@media (max-width: 768px){.sec__lede[_ngcontent-ng-c874076103]{grid-column:1/-1;margin-top:16px}}.feat[_ngcontent-ng-c874076103]{grid-column:span 4}@media (max-width: 768px){.feat[_ngcontent-ng-c874076103]{grid-column:1/-1}}.feat__n[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;color:var(--accent-bright);margin:0 0 8px}.feat__t[_ngcontent-ng-c874076103]{font-size:20px;line-height:var(--lh);font-weight:700;margin:0 0 8px}.live[_ngcontent-ng-c874076103]{background:linear-gradient(180deg,rgba(47,142,239,.05) 0%,transparent 60%)}.live__left[_ngcontent-ng-c874076103]{grid-column:1/6}@media (max-width: 768px){.live__left[_ngcontent-ng-c874076103]{grid-column:1/-1}}.live__right[_ngcontent-ng-c874076103]{grid-column:6/13;position:relative}@media (max-width: 768px){.live__right[_ngcontent-ng-c874076103]{grid-column:1/-1;margin-top:24px}}.live__media[_ngcontent-ng-c874076103]{position:relative}.live__img[_ngcontent-ng-c874076103]{width:100%;height:auto;display:block;border:1px solid var(--border);filter:drop-shadow(0 30px 60px rgba(0,0,0,.5))}.live__card[_ngcontent-ng-c874076103]{position:absolute;
81left:16px;right:16px;bottom:16px;background:#06060cd1;backdrop-filter:blur(12px);border:1px solid rgba(47,142,239,.35);box-shadow:0 20px 50px #00000080}@media (max-width: 480px){.live__card[_ngcontent-ng-c874076103]{position:static;margin-top:16px}}.live__numeral[_ngcontent-ng-c874076103]{margin-top:24px}.mode[_ngcontent-ng-c874076103]{border-top:1px solid var(--border);padding-top:16px;margin-top:24px}.mode__tag[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-bright);margin:0 0 8px}.mode__t[_ngcontent-ng-c874076103]{font-size:20px;line-height:var(--lh);font-weight:700;margin:0 0 8px}.softs[_ngcontent-ng-c874076103]{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.soft[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.04em;color:var(--ink-soft);border:1px solid var(--border);padding:6px 10px}.terminal[_ngcontent-ng-c874076103]{background:#06060c;border:1px solid var(--border);margin-top:24px;font-family:Space Mono,monospace;font-size:13px;line-height:var(--lh)}.terminal__bar[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--border);color:var(--ink-muted);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.terminal__bar[_ngcontent-ng-c874076103]   .led[_ngcontent-ng-c874076103]{width:8px;height:8px;border-radius:50%;background:var(--live);box-shadow:0 0 8px var(--live)}.terminal__body[_ngcontent-ng-c874076103]{padding:16px}.terminal__row[_ngcontent-ng-c874076103]{display:block;white-space:nowrap;overflow-x:auto}.terminal__k[_ngcontent-ng-c874076103]{color:var(--ink-muted)}.terminal__v[_ngcontent-ng-c874076103]{color:var(--accent-bright)}.terminal__live[_ngcontent-ng-c874076103]{color:var(--live)}.streams[_ngcontent-ng-c874076103]{grid-column:1/-1;border-top:1px solid var(--border);padding-top:24px;margin-top:24px}.streams__head[_ngcontent-ng-c874076103]{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.streams__lede[_ngcontent-ng-c874076103]{color:var(--ink-soft);max-width:52ch;margin:8px 0 0}.streams__cta[_ngcontent-ng-c874076103]{white-space:nowrap;flex:none}.marquee[_ngcontent-ng-c874076103]{margin-top:24px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee__track[_ngcontent-ng-c874076103]{display:flex;width:max-content;gap:8px;animation:_ngcontent-ng-c874076103_marquee-scroll 40s linear infinite}.marquee[_ngcontent-ng-c874076103]:hover   .marquee__track[_ngcontent-ng-c874076103]{animation-play-state:paused}.soft--tool[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;flex:none}.soft__logo[_ngcontent-ng-c874076103]{height:18px;width:auto;display:block;opacity:.85}@keyframes _ngcontent-ng-c874076103_marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.marquee__track[_ngcontent-ng-c874076103]{animation:none;flex-wrap:wrap;width:100%}}.uni[_ngcontent-ng-c874076103]{grid-column:span 3;border-top:1px solid var(--border);padding-top:12px}@media (max-width: 768px){.uni[_ngcontent-ng-c874076103]{grid-column:span 6}}@media (max-width: 480px){.uni[_ngcontent-ng-c874076103]{grid-column:1/-1}}.uni__t[_ngcontent-ng-c874076103]{font-size:18px;line-height:var(--lh);font-weight:700;margin:0 0 4px}.uni__d[_ngcontent-ng-c874076103]{font-size:14px;line-height:var(--lh);color:var(--ink-muted);margin:0}.diff[_ngcontent-ng-c874076103]{grid-column:span 6;border-top:1px solid var(--border);padding-top:12px;display:flex;gap:16px}@media (max-width: 768px){.diff[_ngcontent-ng-c874076103]{grid-column:1/-1}}.diff__no[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;color:var(--accent-bright);flex-shrink:0;width:28px}.diff__t[_ngcontent-ng-c874076103]{font-size:17px;line-height:var(--lh);font-weight:700;margin:0 0 2px}.diff__d[_ngcontent-ng-c874076103]{font-size:14px;line-height:var(--lh);color:var(--ink-soft);margin:0}.cta[_ngcontent-ng-c874076103]{border-top:2px solid var(--accent)}.cta__head[_ngcontent-ng-c874076103]{grid-column:1/9;font-size:56px;line-height:64px;font-weight:900;letter-spacing:-.02em;margin:0}@media (max-width: 768px){.cta__head[_ngcontent-ng-c874076103]{grid-column:1/-1;font-size:36px;line-height:40px}}.cta__lede[_ngcontent-ng-c874076103]{grid-column:1/8}@media (max-width: 768px){.cta__lede[_ngcontent-ng-c874076103]{grid-column:1/-1}}.cta__actions[_ngcontent-ng-c874076103]{grid-column:1/-1;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.feat[_ngcontent-ng-c874076103], .uni[_ngcontent-ng-c874076103], .diff[_ngcontent-ng-c874076103]{transition:border-color .25s,transform .25s}.feat[_ngcontent-ng-c874076103]:hover   .feat__t[_ngcontent-ng-c874076103], .uni[_ngcontent-ng-c874076103]:hover   .uni__t[_ngcontent-ng-c874076103]{color:var(--accent-bright)}.uni[_ngcontent-ng-c874076103]{transition:border-color .25s,transform .25s,background .25s;padding:12px 12px 16px;margin:0 -12px}.uni[_ngcontent-ng-c874076103]:hover{border-color:var(--accent);background:#2f8eef0d;transform:translateY(-3px)}.diff[_ngcontent-ng-c874076103]:hover{border-color:var(--accent)}.soft[_ngcontent-ng-c874076103]{transition:border-color .2s,color .2s,box-shadow .2s;cursor:default}.soft[_ngcontent-ng-c874076103]:hover{color:var(--ink);border-color:var(--accent);box-shadow:0 0 16px #2f8eef4d}.terminal__bar[_ngcontent-ng-c874076103]   .led[_ngcontent-ng-c874076103]{animation:_ngcontent-ng-c874076103_pulse 1.4s ease-in-out infinite}.kicker[_ngcontent-ng-c874076103]:before{content:"";display:inline-block;width:18px;height:2px;background:var(--accent);vertical-align:middle;margin-right:10px;transform:translateY(-2px)}.nav__dl[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;background:var(--accent);color:#fff;text-decoration:none;font-size:13px;font-weight:600;transition:background .18s}.nav__dl[_ngcontent-ng-c874076103]:hover{background:var(--accent-bright)}@media (max-width: 860px){.nav__dl[_ngcontent-ng-c874076103]{display:none}}@media (max-width: 860px){.nav__lang[_ngcontent-ng-c874076103]{display:none}}@media (max-width: 860px){.nav__login[_ngcontent-ng-c874076103]{display:none}}.nav__burger[_ngcontent-ng-c874076103]{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:0 9px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;
81cursor:pointer}.nav__burger[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]{display:block;height:2px;width:100%;background:#fff;transition:transform .25s,opacity .2s}@media (max-width: 860px){.nav__burger[_ngcontent-ng-c874076103]{display:inline-flex}}.nav--open[_ngcontent-ng-c874076103]   .nav__burger[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav--open[_ngcontent-ng-c874076103]   .nav__burger[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(2){opacity:0}.nav--open[_ngcontent-ng-c874076103]   .nav__burger[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav__mobile[_ngcontent-ng-c874076103]{display:none;position:fixed;inset:0;z-index:95;flex-direction:column;padding:84px var(--margin) 40px;background:var(--paper);overflow-y:auto;opacity:0;transform:translateY(-8px);transition:opacity .22s ease,transform .22s ease}.nav__mobile.is-open[_ngcontent-ng-c874076103]{display:flex;opacity:1;transform:none}.nav__mlink[_ngcontent-ng-c874076103]{display:flex;align-items:center;justify-content:space-between;color:var(--ink);text-decoration:none;font-family:Space Mono,monospace;font-size:18px;letter-spacing:.04em;text-transform:uppercase;padding:20px 4px;border-bottom:1px solid var(--border-soft);transition:color .18s,padding-left .18s}.nav__mlink[_ngcontent-ng-c874076103]:after{content:"\2192";color:var(--ink-muted);font-size:16px}.nav__mlink[_ngcontent-ng-c874076103]:active, .nav__mlink[_ngcontent-ng-c874076103]:hover{color:var(--accent-bright);padding-left:10px}.nav__mactions[_ngcontent-ng-c874076103]{display:flex;flex-direction:column;gap:12px;margin-top:28px}.nav__mactions[_ngcontent-ng-c874076103]   .btn[_ngcontent-ng-c874076103]{width:100%;height:52px;justify-content:center;font-size:16px}.nav__mactions[_ngcontent-ng-c874076103]   app-widget-language-switcher[_ngcontent-ng-c874076103]{align-self:center;margin-top:8px;transform:scale(1.3)}.phone[_ngcontent-ng-c874076103]{position:relative;z-index:1;width:300px;max-width:78vw;aspect-ratio:9/19.5;background:#000;border:10px solid #15151f;border-radius:40px;overflow:hidden;box-shadow:0 40px 90px #000000a6,0 0 0 1px #ffffff0a,0 0 60px #2f8eef40;animation:_ngcontent-ng-c874076103_heroFloat 7s ease-in-out infinite}@media (max-width: 480px){.phone[_ngcontent-ng-c874076103]{width:260px}}.phone__notch[_ngcontent-ng-c874076103]{position:absolute;top:0;left:50%;transform:translate(-50%);width:120px;height:22px;background:#15151f;border-radius:0 0 14px 14px;z-index:3}.phone__video[_ngcontent-ng-c874076103]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0a0a14}.phone__ui[_ngcontent-ng-c874076103]{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.35) 0%,transparent 22%,transparent 62%,rgba(0,0,0,.55) 100%)}.phone__top[_ngcontent-ng-c874076103]{position:absolute;top:18px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;font-family:Space Mono,monospace;font-size:10px;color:#ffffffe6}.phone__live[_ngcontent-ng-c874076103]{color:#fff;background:var(--live);font-weight:700;padding:3px 7px;letter-spacing:.04em}.phone__tabs[_ngcontent-ng-c874076103]{color:#ffffffd9}.phone__side[_ngcontent-ng-c874076103]{position:absolute;right:12px;bottom:96px;display:flex;flex-direction:column;gap:14px;align-items:center;color:#fff;font-size:16px}.phone__ic[_ngcontent-ng-c874076103]{display:flex;flex-direction:column;align-items:center;gap:2px}.phone__ic[_ngcontent-ng-c874076103]   i[_ngcontent-ng-c874076103]{font-style:normal;font-family:Space Mono,monospace;font-size:9px;color:#ffffffd9}.phone__product[_ngcontent-ng-c874076103]{position:absolute;left:12px;right:12px;bottom:18px;display:flex;align-items:center;gap:8px;background:#0a0a14c7;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);padding:8px 10px;font-size:11px;color:#fff}.phone__product-dot[_ngcontent-ng-c874076103]{width:26px;height:26px;flex-shrink:0;background:linear-gradient(135deg,var(--accent),#1f6fd0)}.phone__buy[_ngcontent-ng-c874076103]{margin-left:auto;background:var(--accent);color:#fff;font-weight:700;font-size:10px;padding:4px 8px}.why[_ngcontent-ng-c874076103]{background:linear-gradient(180deg,rgba(47,142,239,.04) 0%,transparent 50%)}.compare__col[_ngcontent-ng-c874076103]{grid-column:span 6;border-top:2px solid var(--border);padding-top:16px}@media (max-width: 768px){.compare__col[_ngcontent-ng-c874076103]{grid-column:1/-1}}.compare__col--good[_ngcontent-ng-c874076103]{border-top-color:var(--accent)}.compare__head[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px;color:var(--ink-muted)}.compare__col--good[_ngcontent-ng-c874076103]   .compare__head[_ngcontent-ng-c874076103]{color:var(--accent-bright)}.compare__item[_ngcontent-ng-c874076103]{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-soft)}.compare__item[_ngcontent-ng-c874076103]   p[_ngcontent-ng-c874076103]{margin:0;font-size:15px;line-height:var(--lh);color:var(--ink-soft)}.compare__item[_ngcontent-ng-c874076103]   strong[_ngcontent-ng-c874076103]{color:var(--ink);font-weight:700}.compare__ic[_ngcontent-ng-c874076103]{flex-shrink:0;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:1px solid currentColor;color:var(--ink-muted)}.compare__col--good[_ngcontent-ng-c874076103]   .compare__ic[_ngcontent-ng-c874076103]{color:var(--accent)}.conns[_ngcontent-ng-c874076103]{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:var(--gutter)}@media (max-width: 768px){.conns[_ngcontent-ng-c874076103]{grid-template-columns:1fr;gap:32px}}.conns__txt[_ngcontent-ng-c874076103]{border-top:1px solid var(--accent);padding-top:16px}.conns__logos[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}.conns__logos[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{height:26px;width:auto;filter:grayscale(1) brightness(1.6);opacity:.9;transition:filter .2s,opacity .2s}.conns__logos[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]:hover{filter:none;opacity:1}.auth[_ngcontent-ng-c874076103]{background:radial-gradient(ellipse at 30% 0%,rgba(47,142,239,.06),transparent 60%)}.auth__block[_ngcontent-ng-c874076103]{grid-column:1/10}@media (max-width: 768px){.auth__block[_ngcontent-ng-c874076103]{grid-column:1/-1}}.modal[_ngcontent-ng-c874076103]{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px;background:#04040ab8;backdrop-filter:blur(8px);animation:_ngcontent-ng-c874076103_modalIn .2s ease}.modal__dialog[_ngcontent-ng-c874076103]{position:relative;width:100%;max-width:460px;background:var(--surface);border:1px solid rgba(47,142,239,.4);box-shadow:0 30px 90px #000000b3,0 0 60px #2f8eef2e;padding:32px}.modal__close[_ngcontent-ng-c874076103]{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--ink-muted);font-size:16px;cursor:pointer}.modal__close[_ngcontent-ng-c874076103]:hover{color:var(--ink)}.modal__title[_ngcontent-ng-c874076103]{font-size:26px;line-height:32px;font-weight:800;margin:8px 0 12px;letter-spacing:-.01em}.modal__text[_ngcontent-ng-c874076103]{margin:0 0 24px}.modal__actions[_ngcontent-ng-c874076103]{display:flex;flex-direction:column;gap:12px}.modal__actions[_ngcontent-ng-c874076103]   .btn[_ngcontent-ng-c874076103]{width:100%;justify-content:center}.modal__dismiss[_ngcontent-ng-c874076103]{display:block;width:100%;margin-top:12px;background:none;border:none;color:var(--ink-muted);font-size:13px;
81cursor:pointer}.modal__dismiss[_ngcontent-ng-c874076103]:hover{color:var(--ink-soft)}@keyframes _ngcontent-ng-c874076103_modalIn{0%{opacity:0}to{opacity:1}}.live__right[_ngcontent-ng-c874076103]{display:flex;align-items:center;justify-content:center}.lphone[_ngcontent-ng-c874076103]{position:relative;width:300px;max-width:80%;aspect-ratio:1200/2539;margin:0 auto;animation:_ngcontent-ng-c874076103_heroFloat 7s ease-in-out infinite}@media (max-width: 480px){.lphone[_ngcontent-ng-c874076103]{width:250px}}.lphone__frame[_ngcontent-ng-c874076103]{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;filter:drop-shadow(0 40px 80px rgba(0,0,0,.6))}.lphone__screen[_ngcontent-ng-c874076103]{position:absolute;top:1.103%;left:2.167%;width:95.667%;height:97.952%;overflow:hidden;border-radius:8%/7%;background:#000;z-index:1}.lphone__video[_ngcontent-ng-c874076103]{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0a0a14;border-radius:inherit}.lphone__ui[_ngcontent-ng-c874076103]{position:absolute;top:0;left:0;width:128.2%;height:128.2%;z-index:2;pointer-events:none;transform:scale(.78);transform-origin:top left;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,transparent 20%,transparent 55%,rgba(0,0,0,.62) 100%)}.lphone__hd[_ngcontent-ng-c874076103]{position:absolute;top:24px;left:10px;right:10px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.lphone__cpill[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:6px;background:#0000006b;backdrop-filter:blur(4px);border-radius:999px;padding:3px 4px}.lphone__cav[_ngcontent-ng-c874076103]{width:26px;height:26px;border-radius:50%;flex-shrink:0;overflow:hidden;background:linear-gradient(135deg,#3aa36a,#1f6fd0);border:1px solid rgba(255,255,255,.5)}.lphone__cav[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{width:100%;height:100%;object-fit:cover;display:block}.lphone__cinfo[_ngcontent-ng-c874076103]{display:flex;flex-direction:column;line-height:1.1;color:#fff}.lphone__cinfo[_ngcontent-ng-c874076103]   b[_ngcontent-ng-c874076103]{font-size:10px;font-weight:700;white-space:nowrap}.lphone__cinfo[_ngcontent-ng-c874076103]   i[_ngcontent-ng-c874076103]{font-size:9px;font-style:normal;color:#ff6b81}.lphone__follow[_ngcontent-ng-c874076103]{background:#21c06b;color:#fff;font-size:9px;font-weight:700;padding:4px 8px;border-radius:999px;white-space:nowrap}.lphone__ctrls[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:5px;flex-shrink:0}.lphone__ctrl[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;gap:3px;background:#0000006b;color:#fff;font-size:9px;font-family:Space Mono,monospace;padding:4px 7px;border-radius:999px}.lphone__ctrl--ic[_ngcontent-ng-c874076103]{width:24px;height:24px;padding:0;justify-content:center;border-radius:50%;font-size:12px}.lphone__gift[_ngcontent-ng-c874076103]{position:absolute;top:64px;left:10px;z-index:3;text-align:center}.lphone__gift[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#0000006b;font-size:16px}.lphone__gift[_ngcontent-ng-c874076103]   i[_ngcontent-ng-c874076103]{display:block;margin:3px auto 0;width:fit-content;font-style:normal;font-size:8px;font-weight:700;color:#fff;background:#ff2d55;padding:1px 5px;border-radius:999px}.lphone__chat[_ngcontent-ng-c874076103]{position:absolute;left:10px;right:60px;bottom:132px;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;max-height:140px;overflow:hidden}.is-auction[_ngcontent-ng-c874076103]   .lphone__chat[_ngcontent-ng-c874076103]{bottom:182px}.lcomment[_ngcontent-ng-c874076103]{display:flex;align-items:flex-start;gap:6px;animation:_ngcontent-ng-c874076103_commentEnter .35s ease}.lcomment__av[_ngcontent-ng-c874076103]{width:18px;height:18px;border-radius:50%;flex-shrink:0;margin-top:1px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;background:linear-gradient(135deg,#5a5a6e,#23232f)}.lcomment__bubble[_ngcontent-ng-c874076103]{background:#00000057;backdrop-filter:blur(2px);border-radius:10px;padding:4px 8px;font-size:10px;line-height:1.35;color:#fff}.lcomment__bubble[_ngcontent-ng-c874076103]   b[_ngcontent-ng-c874076103]{color:#ffffffb8;font-weight:600;margin-right:3px}.lcomment__tag[_ngcontent-ng-c874076103]{display:inline-block;font-size:7.5px;font-weight:800;color:#fff;padding:1px 4px;border-radius:4px;margin-right:4px;vertical-align:middle;letter-spacing:.03em}.lcomment__tag--host[_ngcontent-ng-c874076103]{background:#ff2d55}.lcomment__tag--mod[_ngcontent-ng-c874076103]{background:#2f8eef}@keyframes _ngcontent-ng-c874076103_commentEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.lphone__pin[_ngcontent-ng-c874076103]{position:absolute;
81left:10px;right:10px;bottom:54px;z-index:4;display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:12px;padding:8px;box-shadow:0 8px 24px #00000059;animation:_ngcontent-ng-c874076103_pinBob 5s ease-in-out infinite}.lphone__pin-row[_ngcontent-ng-c874076103]{display:flex;align-items:center;gap:8px;width:100%}.lphone__pin--auction[_ngcontent-ng-c874076103]   .lphone__pin-row[_ngcontent-ng-c874076103]{align-items:flex-start}.lphone__pin-img[_ngcontent-ng-c874076103]{width:36px;height:36px;flex-shrink:0;border-radius:7px;background:linear-gradient(135deg,#9aa3b2,#556070)}.lphone__pin-txt[_ngcontent-ng-c874076103]{display:flex;flex-direction:column;line-height:1.25;flex:1;min-width:0}.lphone__pin-txt[_ngcontent-ng-c874076103]   b[_ngcontent-ng-c874076103]{font-size:11px;color:#111;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lphone__pin-txt[_ngcontent-ng-c874076103]   i[_ngcontent-ng-c874076103]{font-style:normal;font-size:13px;color:#111;font-weight:800}.lphone__pin-buy[_ngcontent-ng-c874076103]{flex-shrink:0;align-self:center;background:#ff2d55;color:#fff;font-weight:700;font-size:11px;padding:6px 16px;border-radius:999px}.lphone__pin-timer[_ngcontent-ng-c874076103]{flex-shrink:0;display:inline-flex;align-items:center;gap:3px;background:#eef1f5;color:#1c2330;font-family:Space Mono,monospace;font-size:9px;font-weight:700;padding:4px 8px;border-radius:999px}.lphone__pin-bid[_ngcontent-ng-c874076103]{width:100%;text-align:center;background:#2f8eef;color:#fff;font-weight:700;font-size:12px;padding:8px 10px;border-radius:999px}.lphone__pin-bid[_ngcontent-ng-c874076103]   em[_ngcontent-ng-c874076103]{font-style:normal;opacity:.85;font-weight:600}@keyframes _ngcontent-ng-c874076103_pinBob{0%,to{transform:translateY(0)}8%{transform:translateY(-6px) scale(1.02)}16%{transform:translateY(0)}}.lphone__msgbar[_ngcontent-ng-c874076103]{position:absolute;left:8px;right:8px;bottom:10px;z-index:4;display:flex;align-items:center;gap:7px}.lphone__mgift[_ngcontent-ng-c874076103]{position:relative;width:28px;height:28px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;font-size:14px}.lphone__mgift[_ngcontent-ng-c874076103]   svg[_ngcontent-ng-c874076103]{display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.lphone__mgift[_ngcontent-ng-c874076103]   em[_ngcontent-ng-c874076103]{position:absolute;top:-3px;right:-3px;font-style:normal;font-size:8px;font-weight:700;color:#fff;background:#ff2d55;border-radius:999px;padding:0 4px}.lphone__minput[_ngcontent-ng-c874076103]{flex:1;background:#ffffff24;border-radius:999px;padding:7px 12px;font-size:10px;color:#ffffffb3}.lphone__mic[_ngcontent-ng-c874076103]{color:#fff;font-size:15px;flex-shrink:0}.lphone__mheart[_ngcontent-ng-c874076103]{width:30px;height:30px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:#ff2d55;color:#fff;border-radius:50%;font-size:15px}.lphone__fountain[_ngcontent-ng-c874076103]{position:absolute;right:12px;bottom:42px;width:30px;height:50px;z-index:6;pointer-events:none}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]{position:absolute;bottom:0;left:50%;color:#ff2d55;opacity:0;animation:_ngcontent-ng-c874076103_heartPop 3.8s ease-in infinite;text-shadow:0 2px 6px rgba(0,0,0,.35)}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(1){--dx: 30px;--dy: -165px;font-size:24px;animation-delay:0s;animation-duration:4.1s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(2){--dx: 72px;--dy: -120px;font-size:32px;animation-delay:.5s;animation-duration:3.4s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(3){--dx: 108px;--dy: -95px;font-size:20px;animation-delay:.9s;animation-duration:4.6s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(4){--dx: 14px;--dy: -205px;font-size:27px;animation-delay:1.4s;animation-duration:3.1s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(5){--dx: 86px;--dy: -150px;font-size:30px;animation-delay:1.7s;animation-duration:4.3s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(6){--dx: 128px;--dy: -75px;font-size:18px;animation-delay:2.2s;animation-duration:3.7s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(7){--dx: 44px;--dy: -190px;font-size:34px;animation-delay:2.5s;animation-duration:5s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(8){--dx: 98px;--dy: -115px;font-size:22px;animation-delay:3s;animation-duration:3.3s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(9){--dx: 8px;--dy: -175px;font-size:26px;animation-delay:3.3s;animation-duration:4.4s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(10){--dx: 76px;--dy: -105px;font-size:31px;animation-delay:3.8s;animation-duration:3.6s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(11){--dx: 138px;--dy: -64px;font-size:19px;animation-delay:4.2s;animation-duration:4.8s}.lphone__fountain[_ngcontent-ng-c874076103]   span[_ngcontent-ng-c874076103]:nth-child(12){--dx: 54px;--dy: -200px;font-size:28px;animation-delay:4.6s;animation-duration:3.2s}@keyframes _ngcontent-ng-c874076103_heartPop{0%{opacity:0;transform:translate(-50%) scale(.4) rotate(-6deg)}12%{opacity:1}70%{opacity:.85}to{opacity:0;transform:translate(calc(-50% + var(--dx, 40px)),var(--dy, -160px)) scale(1.25) rotate(10deg)}}.flow[_ngcontent-ng-c874076103]{grid-column:1/-1}.flow__illu[_ngcontent-ng-c874076103]{position:relative;max-width:1000px;margin:24px auto 0;animation:_ngcontent-ng-c874076103_heroFloat 8s ease-in-out infinite}.flow__illu[_ngcontent-ng-c874076103]:before{content:"";position:absolute;inset:6% 18%;background:radial-gradient(ellipse at center,rgba(47,142,239,.28),transparent 70%);
81filter:blur(50px);z-index:0}.flow__illu[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{position:relative;z-index:1;display:block;width:100%;height:auto;border-radius:20px;filter:grayscale(1) brightness(1.05) sepia(1) hue-rotate(168deg) saturate(3.2)}.flow__svg[_ngcontent-ng-c874076103]{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.flow__diagram[_ngcontent-ng-c874076103]{display:flex;align-items:stretch;gap:0;margin-top:24px}@media (max-width: 768px){.flow__diagram[_ngcontent-ng-c874076103]{flex-direction:column;align-items:center;gap:0}}.flow__node[_ngcontent-ng-c874076103]{flex:0 0 auto;width:190px;background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--border);border-radius:18px;padding:22px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;transition:border-color .25s,transform .25s,box-shadow .25s}.flow__node[_ngcontent-ng-c874076103]:hover{transform:translateY(-3px);border-color:#2f8eef66;box-shadow:0 12px 30px #00000059}@media (max-width: 768px){.flow__node[_ngcontent-ng-c874076103]{width:100%;max-width:300px}}.flow__node--hub[_ngcontent-ng-c874076103]{position:relative;border-color:#2f8eef99;box-shadow:0 0 40px #2f8eef4d;background:linear-gradient(180deg,rgba(47,142,239,.14),var(--surface))}.flow__rings[_ngcontent-ng-c874076103]:before, .flow__rings[_ngcontent-ng-c874076103]:after{content:"";position:absolute;top:50%;left:50%;width:56px;height:56px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(47,142,239,.5);animation:_ngcontent-ng-c874076103_ring 2.8s ease-out infinite}.flow__rings[_ngcontent-ng-c874076103]:after{animation-delay:1.4s}@keyframes _ngcontent-ng-c874076103_ring{0%{width:50px;height:50px;opacity:.55}to{width:170px;height:170px;opacity:0}}.flow__hub-img[_ngcontent-ng-c874076103]{height:42px;width:auto;position:relative;z-index:1;filter:drop-shadow(0 0 10px rgba(47,142,239,.6))}.flow__logos[_ngcontent-ng-c874076103]{display:flex;gap:14px;align-items:center}.flow__logos[_ngcontent-ng-c874076103]   img[_ngcontent-ng-c874076103]{height:22px;width:auto;filter:brightness(0) invert(1);opacity:.92}.flow__label[_ngcontent-ng-c874076103]{font-size:12px;line-height:1.35;color:var(--ink-soft);font-weight:600}.flow__chip[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:11px;color:var(--ink);border:1px solid var(--border);border-radius:999px;padding:4px 11px}.flow__node--out[_ngcontent-ng-c874076103]   .flow__chip[_ngcontent-ng-c874076103]{animation:_ngcontent-ng-c874076103_chipPulse 2.8s ease-in-out infinite}.flow__node--out[_ngcontent-ng-c874076103]   .flow__chip[_ngcontent-ng-c874076103]:nth-child(2){animation-delay:.5s}@keyframes _ngcontent-ng-c874076103_chipPulse{0%,to{border-color:var(--border);box-shadow:none}50%{border-color:var(--accent);color:#fff;box-shadow:0 0 14px #2f8eef73}}.flow__node--out[_ngcontent-ng-c874076103]   .flow__label[_ngcontent-ng-c874076103]{margin-top:4px}.flow__link[_ngcontent-ng-c874076103]{flex:1;min-width:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:0 6px}@media (max-width: 768px){.flow__link[_ngcontent-ng-c874076103]{flex:0 0 auto;padding:12px 0}}.flow__cap[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-bright);white-space:nowrap}.flow__track[_ngcontent-ng-c874076103]{position:relative;width:100%;height:2px;background:#ffffff1a;border-radius:2px}@media (max-width: 768px){.flow__track[_ngcontent-ng-c874076103]{width:2px;height:40px}}.flow__beam[_ngcontent-ng-c874076103]{position:absolute;top:0;left:-40%;height:100%;width:40%;border-radius:2px;background:linear-gradient(90deg,transparent,var(--accent-bright),transparent);animation:_ngcontent-ng-c874076103_beam 2.8s linear infinite}@media (max-width: 768px){.flow__beam[_ngcontent-ng-c874076103]{display:none}}.flow__beam--rev[_ngcontent-ng-c874076103]{animation-direction:reverse;animation-delay:1.4s;background:linear-gradient(90deg,transparent,#7bc0ff,transparent)}@keyframes _ngcontent-ng-c874076103_beam{0%{left:-40%;opacity:0}
8115%{opacity:1}85%{opacity:1}to{left:100%;opacity:0}}.flow__dot[_ngcontent-ng-c874076103]{position:absolute;top:50%;left:0;width:9px;height:9px;margin-top:-4.5px;margin-left:-4.5px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent),-10px 0 10px -3px #2f8eef99;animation:_ngcontent-ng-c874076103_flowDot 2.8s linear infinite}@media (max-width: 768px){.flow__dot[_ngcontent-ng-c874076103]{left:50%;top:0;margin:0 0 0 -4.5px;box-shadow:0 0 12px var(--accent);animation:_ngcontent-ng-c874076103_flowDotV 2.8s linear infinite}}.flow__dot--2[_ngcontent-ng-c874076103]{animation-delay:1.4s}.flow__dot--rev[_ngcontent-ng-c874076103]{animation-direction:reverse;animation-delay:1.4s;background:#7bc0ff;box-shadow:0 0 12px #7bc0ff,10px 0 10px -3px #7bc0ff99}.flow__arrow[_ngcontent-ng-c874076103]{position:absolute;top:50%;transform:translateY(-50%);width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent}@media (max-width: 768px){.flow__arrow[_ngcontent-ng-c874076103]{display:none}}.flow__arrow--r[_ngcontent-ng-c874076103]{right:-2px;border-left:8px solid var(--accent)}.flow__arrow--l[_ngcontent-ng-c874076103]{left:-2px;border-right:8px solid var(--accent-bright)}@keyframes _ngcontent-ng-c874076103_flowDot{0%{left:0;opacity:0}
8115%{opacity:1}85%{opacity:1}to{left:100%;opacity:0}}@keyframes _ngcontent-ng-c874076103_flowDotV{0%{top:0;opacity:0}15%{opacity:1}85%{opacity:1}to{top:100%;opacity:0}}.discord__card[_ngcontent-ng-c874076103]{grid-column:1/-1;max-width:860px;margin:0 auto;position:relative;overflow:hidden;text-align:center;padding:56px 40px;border:1px solid rgba(88,101,242,.4);border-radius:24px;background:linear-gradient(180deg,rgba(88,101,242,.12),var(--surface))}@media (max-width: 768px){.discord__card[_ngcontent-ng-c874076103]{padding:40px 22px}}.discord__glow[_ngcontent-ng-c874076103]{position:absolute;top:-40%;left:50%;width:460px;height:460px;transform:translate(-50%);background:radial-gradient(circle,rgba(88,101,242,.45),transparent 70%);filter:blur(60px);pointer-events:none;z-index:0}.discord__logo[_ngcontent-ng-c874076103]{position:absolute;right:-30px;bottom:-40px;width:220px;height:220px;color:#5865f21a;pointer-events:none;z-index:0}.discord__card[_ngcontent-ng-c874076103] > .kicker[_ngcontent-ng-c874076103], .discord__title[_ngcontent-ng-c874076103], .discord__text[_ngcontent-ng-c874076103], .discord__btn[_ngcontent-ng-c874076103], .discord__note[_ngcontent-ng-c874076103]{position:relative;z-index:1}.discord__card[_ngcontent-ng-c874076103] > .kicker[_ngcontent-ng-c874076103]{color:#aab0ff}.discord__title[_ngcontent-ng-c874076103]{font-size:40px;line-height:48px;font-weight:800;letter-spacing:-.01em;text-align:center;margin:0 auto;max-width:24ch;text-wrap:balance}@media (max-width: 768px){.discord__title[_ngcontent-ng-c874076103]{font-size:30px;line-height:40px}}.discord__text[_ngcontent-ng-c874076103]{text-align:center;margin:16px auto 0;max-width:60ch}.discord__btn[_ngcontent-ng-c874076103]{display:inline-flex;align-items:center;gap:10px;margin-top:28px;height:54px;padding:0 28px;border-radius:999px;background:#5865f2;color:#fff;font-size:16px;font-weight:700;text-decoration:none;box-shadow:0 10px 30px #5865f266;transition:transform .18s,background .18s,box-shadow .18s}.discord__btn[_ngcontent-ng-c874076103]   svg[_ngcontent-ng-c874076103]{width:24px;height:24px}.discord__btn[_ngcontent-ng-c874076103]:hover{background:#6b76f5;transform:translateY(-2px);box-shadow:0 14px 36px #5865f28c;color:#fff}.discord__note[_ngcontent-ng-c874076103]{margin:14px 0 0;font-family:Space Mono,monospace;font-size:12px;color:var(--ink-muted)}.appcard[_ngcontent-ng-c874076103]{grid-column:span 6;display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;color:inherit;border:1px solid var(--border);border-radius:16px;padding:28px;background:var(--surface, rgba(255, 255, 255, .02));transition:border-color .25s,transform .25s,background .25s}.appcard[_ngcontent-ng-c874076103]:hover{border-color:var(--accent);background:#2f8eef0d;transform:translateY(-3px)}@media (max-width: 768px){.appcard[_ngcontent-ng-c874076103]{grid-column:1/-1}}.appcard__os[_ngcontent-ng-c874076103]{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-bright);margin:0 0 12px}.appcard__t[_ngcontent-ng-c874076103]{font-size:22px;line-height:var(--lh);font-weight:800;letter-spacing:-.01em;margin:0 0 8px}.appcard__d[_ngcontent-ng-c874076103]{font-size:15px;line-height:var(--lh);color:var(--ink-muted);margin:0 0 20px;flex:1 1 auto}.appcard__cta[_ngcontent-ng-c874076103]{font-weight:700;font-size:15px;color:var(--accent-bright);transition:color .2s}.appcard[_ngcontent-ng-c874076103]:hover   .appcard__t[_ngcontent-ng-c874076103]{color:var(--accent-bright)}</style><style ng-app-id="ng">.lang-switcher[_ngcontent-ng-c2841048764]{position:relative;display:inline-flex;align-items:center;cursor:pointer;padding:4px;border-radius:50%;-webkit-user-select:none;user-select:none;transition:background-color .2s}.lang-switcher[_ngcontent-ng-c2841048764]:hover{background-color:#0000000f}.lang-dropdown[_ngcontent-ng-c2841048764]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #0000001a;min-width:140px;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .2s}.lang-dropdown.open[_ngcontent-ng-c2841048764]{opacity:1;visibility:visible;transform:translateY(0)}.lang-option[_ngcontent-ng-c2841048764]{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:none;cursor:pointer;font-size:.85rem;transition:background-color .15s}.lang-option[_ngcontent-ng-c2841048764]:first-child{border-radius:8px 8px 0 0}.lang-option[_ngcontent-ng-c2841048764]:last-child{border-radius:0 0 8px 8px}.lang-option[_ngcontent-ng-c2841048764]:hover{background-color:#f5f5f5}.lang-option.active[_ngcontent-ng-c2841048764]{background-color:#e8f4fd;font-weight:600}</style><style ng-app-id="ng">[_nghost-ng-c2512522239]{--paper: #0a0a14;--surface: #12121e;--surface-2: #1a1a2e;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .66);--ink-muted: rgba(255, 255, 255, .55);--accent: #2f8eef;--accent-bouton: #2173cf;--accent-bouton-survol: #1a66c7;--accent-bright: #54a6f6;--live: #ff3b30;--border: rgba(255, 255, 255, .1);--border-soft: rgba(255, 255, 255, .06);--site-maxw: 1296px;--site-marge: 64px;display:block;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6;background:transparent;line-height:1.55;--lbc-pad: 56px}@media (max-width: 991px){[_nghost-ng-c2512522239]{--site-marge: 40px}}@media (max-width: 768px){[_nghost-ng-c2512522239]{--site-marge: 20px}}.lbc[_ngcontent-ng-c2512522239]{position:relative;isolation:isolate;overflow:hidden;padding:var(--lbc-pad) var(--lbc-pad) 0;border:1px solid var(--border);border-radius:24px;background:radial-gradient(70% 80% at 88% 18%,rgba(47,142,239,.2),transparent 62%),radial-gradient(50% 60% at 0% 100%,rgba(47,142,239,.08),transparent 70%),var(--surface)}.lbc__fond[_ngcontent-ng-c2512522239]{position:absolute;inset:-60px 0;z-index:-1;background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.07) 1px,transparent 1.6px) 0 0/26px 26px;mask-image:linear-gradient(180deg,#000 35%,transparent 80%);pointer-events:none}.lbc__grille[_ngcontent-ng-c2512522239]{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);
81grid-template-areas:"tete tete" "lede scene" "actions scene";grid-template-rows:auto auto 1fr;column-gap:56px;row-gap:24px;align-items:start}.lbc__tete[_ngcontent-ng-c2512522239]{grid-area:tete}.lbc__lede[_ngcontent-ng-c2512522239]{grid-area:lede}.lbc__scene[_ngcontent-ng-c2512522239]{grid-area:scene}.lbc__actions[_ngcontent-ng-c2512522239]{grid-area:actions}.lbc__kicker[_ngcontent-ng-c2512522239]{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-family:Space Mono,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-bright)}.lbc__kicker[_ngcontent-ng-c2512522239]:before{content:"";width:18px;height:2px;background:var(--accent)}.lbc__titre[_ngcontent-ng-c2512522239]{margin:0;font-size:clamp(34px,4.1vw,58px);line-height:1.04;font-weight:900;letter-spacing:-.035em;text-wrap:balance}.lbc__l2[_ngcontent-ng-c2512522239]{color:var(--accent-bright)}.lbc__lede[_ngcontent-ng-c2512522239]{margin:4px 0 0;font-size:18px;line-height:1.6;color:var(--ink-soft);max-width:44ch}.lbc__boutons[_ngcontent-ng-c2512522239]{display:flex;flex-wrap:wrap;gap:12px}.lbc-btn[_ngcontent-ng-c2512522239]{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 26px;border-radius:999px;border:1px solid transparent;font:inherit;font-size:16px;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .15s ease,border-color .15s ease}.lbc-btn[_ngcontent-ng-c2512522239]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px}.lbc-btn--primaire[_ngcontent-ng-c2512522239]{background:var(--accent-bouton);color:#fff;box-shadow:0 16px 36px -16px #2f8eeff2}.lbc-btn--primaire[_ngcontent-ng-c2512522239]:hover{background:var(--accent-bouton-survol)}.lbc-btn--secondaire[_ngcontent-ng-c2512522239]{background:var(--surface-2);color:var(--ink);border-color:var(--border)}.lbc-btn--secondaire[_ngcontent-ng-c2512522239]:hover{border-color:var(--accent-bright)}.lbc-btn__fleche[_ngcontent-ng-c2512522239], .lbc-btn__dl[_ngcontent-ng-c2512522239]{flex:0 0 auto}.lbc-btn__fleche[_ngcontent-ng-c2512522239]   path[_ngcontent-ng-c2512522239], .lbc-btn__dl[_ngcontent-ng-c2512522239]   path[_ngcontent-ng-c2512522239]{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media (hover: none) and (pointer: coarse){.lbc__dl[_ngcontent-ng-c2512522239]{display:none}}.lbc__faits[_ngcontent-ng-c2512522239]{margin:14px 0 0;font-size:14px;color:var(--ink-soft)}.lbc__plateformes[_ngcontent-ng-c2512522239]{display:grid;gap:10px;margin-top:24px}.lbc__plat-l[_ngcontent-ng-c2512522239]{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.lbc__scene[_ngcontent-ng-c2512522239]{margin:0;min-width:0}.lbc__plateau[_ngcontent-ng-c2512522239]{position:relative;padding:5% 0 21%}.lbc__fenetre[_ngcontent-ng-c2512522239]{position:relative;z-index:1;width:86%;margin-left:7%}.lbc__fenetre[_ngcontent-ng-c2512522239]   img[_ngcontent-ng-c2512522239]{display:block;width:100%;height:auto;border-radius:12px;border:1px solid var(--border);background:var(--surface-2);box-shadow:0 50px 90px -40px #000000f2,0 0 0 1px #54a6f614}.lbc__ov[_ngcontent-ng-c2512522239]{position:absolute;z-index:2;height:auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.lbc__ov--vedette[_ngcontent-ng-c2512522239]{left:0;top:13%;width:20%;rotate:-4deg}
81.lbc__ov--objectif[_ngcontent-ng-c2512522239]{left:12%;bottom:4%;width:36%}.lbc__bocal[_ngcontent-ng-c2512522239]{position:absolute;z-index:3;right:0;bottom:0;width:30%;filter:drop-shadow(0 24px 40px rgba(0,0,0,.6))}.lbc__cap[_ngcontent-ng-c2512522239]{margin-top:12px;font-size:13px;line-height:1.5;color:var(--ink-muted);max-width:62ch}.lbc__ticker[_ngcontent-ng-c2512522239]{display:block;margin:48px calc(var(--lbc-pad) * -1) 0}.lbc__store[_ngcontent-ng-c2512522239]{margin-top:44px}.lbc__store-tete[_ngcontent-ng-c2512522239]{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 40px;margin-bottom:20px}.lbc__store-t[_ngcontent-ng-c2512522239]{margin:0;font-size:22px;line-height:1.3;font-weight:800;letter-spacing:-.01em}.lbc__chiffres[_ngcontent-ng-c2512522239]{display:flex;flex-wrap:wrap;gap:8px 28px;margin:0}.lbc__chiffre[_ngcontent-ng-c2512522239]{display:flex;flex-direction:row-reverse;align-items:baseline;gap:8px}.lbc__chiffre[_ngcontent-ng-c2512522239]   dd[_ngcontent-ng-c2512522239]{margin:0;font-size:28px;line-height:1.1;font-weight:800;letter-spacing:-.02em}.lbc__chiffre[_ngcontent-ng-c2512522239]   dt[_ngcontent-ng-c2512522239]{font-size:14px;color:var(--ink-soft)}.lbc__packs[_ngcontent-ng-c2512522239]{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.lbc-pack[_ngcontent-ng-c2512522239]{display:grid;gap:4px;color:inherit;text-decoration:none;border-radius:12px}.lbc-pack[_ngcontent-ng-c2512522239]   img[_ngcontent-ng-c2512522239]{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;border:1px solid var(--border);background:linear-gradient(135deg,var(--surface-2),var(--paper));transition:transform .2s ease,border-color .2s ease}.lbc-pack[_ngcontent-ng-c2512522239]:hover   img[_ngcontent-ng-c2512522239]{border-color:var(--accent-bright)}.lbc-pack[_ngcontent-ng-c2512522239]:hover   .lbc-pack__t[_ngcontent-ng-c2512522239]{text-decoration:underline;text-underline-offset:3px}.lbc-pack[_ngcontent-ng-c2512522239]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:4px}.lbc-pack__t[_ngcontent-ng-c2512522239]{margin-top:8px;font-weight:700;font-size:15px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lbc-pack__m[_ngcontent-ng-c2512522239]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft)}.lbc-pack__nouveau[_ngcontent-ng-c2512522239]{padding:0 8px;border:1px solid currentColor;border-radius:999px;font-size:11px;font-weight:700;line-height:18px;color:var(--ink)}.lbc__store-bas[_ngcontent-ng-c2512522239]{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 20px;margin:18px 0 0}.lbc__store-bas[_ngcontent-ng-c2512522239]   a[_ngcontent-ng-c2512522239]{font-weight:700;color:var(--accent-bright);text-decoration:none}.lbc__store-bas[_ngcontent-ng-c2512522239]   a[_ngcontent-ng-c2512522239]:hover{text-decoration:underline;text-underline-offset:3px}.lbc__store-bas[_ngcontent-ng-c2512522239]   a[_ngcontent-ng-c2512522239]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px;border-radius:4px}.lbc__note[_ngcontent-ng-c2512522239]{font-size:13px;color:var(--ink-muted)}.lbc__agences[_ngcontent-ng-c2512522239]{margin:36px calc(var(--lbc-pad) * -1) 0;padding:18px var(--lbc-pad);border-top:1px solid var(--border);font-size:14px}.lbc__agences[_ngcontent-ng-c2512522239]   a[_ngcontent-ng-c2512522239]{color:var(--accent-bright);text-decoration:underline;text-underline-offset:4px}.lbc__agences[_ngcontent-ng-c2512522239]   a[_ngcontent-ng-c2512522239]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px;border-radius:4px}@media (prefers-reduced-motion: no-preference){.lbc-btn__fleche[_ngcontent-ng-c2512522239]{transition:transform .2s ease}.lbc-btn--primaire[_ngcontent-ng-c2512522239]:hover   .lbc-btn__fleche[_ngcontent-ng-c2512522239]{transform:translate(4px)}.lbc-pack[_ngcontent-ng-c2512522239]:hover   img[_ngcontent-ng-c2512522239]{transform:translateY(-4px)}
81@supports (animation-timeline: view()){.lbc__fenetre[_ngcontent-ng-c2512522239]   img[_ngcontent-ng-c2512522239]{transform-origin:70% 50%;animation:_ngcontent-ng-c2512522239_lbc-redresse linear both;animation-timeline:view();animation-range:entry 0% cover 45%}.lbc__ov--vedette[_ngcontent-ng-c2512522239], .lbc__ov--objectif[_ngcontent-ng-c2512522239]{animation:lbc-flotte linear both;animation-timeline:view();animation-range:cover 0% cover 100%}.lbc__ov--vedette[_ngcontent-ng-c2512522239]{--lbc-d: 40px}.lbc__ov--objectif[_ngcontent-ng-c2512522239]{--lbc-d: -34px}.lbc__fond[_ngcontent-ng-c2512522239]{animation:lbc-fond linear both;animation-timeline:view();animation-range:cover 0% cover 100%}}}@keyframes _ngcontent-ng-c2512522239_lbc-redresse{0%{transform:perspective(1400px) rotateY(-12deg) rotateX(5deg) scale(.94)}to{transform:none}}@keyframes _ngcontent-ng-c2512522239_lbc-flotte{0%{transform:translateY(var(--lbc-d, 40px))}to{transform:translateY(calc(var(--lbc-d, 40px) * -1))}}@keyframes _ngcontent-ng-c2512522239_lbc-fond{0%{transform:translateY(-40px)}to{transform:translateY(40px)}}@media (max-width: 999px){[_nghost-ng-c2512522239]{--lbc-pad: 32px}.lbc__grille[_ngcontent-ng-c2512522239]{grid-template-columns:minmax(0,1fr);grid-template-areas:"tete" "lede" "scene" "actions";grid-template-rows:auto;row-gap:20px}.lbc__lede[_ngcontent-ng-c2512522239]{max-width:60ch}}@media (max-width: 760px){[_nghost-ng-c2512522239]{--lbc-pad: 16px}.lbc[_ngcontent-ng-c2512522239]{padding-top:32px;border-radius:18px}.lbc__lede[_ngcontent-ng-c2512522239]{font-size:17px}.lbc__plateau[_ngcontent-ng-c2512522239]{padding:0 0 27%}.lbc__fenetre[_ngcontent-ng-c2512522239]{width:94%;margin-left:0}.lbc__ov--vedette[_ngcontent-ng-c2512522239]{display:none}
81.lbc__ov--objectif[_ngcontent-ng-c2512522239]{left:2%;bottom:2%;width:50%}.lbc__bocal[_ngcontent-ng-c2512522239]{width:36%}.lbc-btn[_ngcontent-ng-c2512522239]{width:100%}.lbc__ticker[_ngcontent-ng-c2512522239]{margin-top:36px}.lbc__packs[_ngcontent-ng-c2512522239]{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:74%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:6px}.lbc__packs[_ngcontent-ng-c2512522239]   li[_ngcontent-ng-c2512522239]{scroll-snap-align:start}.lbc__agences[_ngcontent-ng-c2512522239]{margin-top:28px;padding:16px var(--lbc-pad)}}</style><style ng-app-id="ng">[_nghost-ng-c756749664]{--paper: #0a0a14;--ink: #ffffff;--ink-soft: rgba(255, 255, 255, .66);--ink-muted: rgba(255, 255, 255, .5);--border: rgba(255, 255, 255, .1);--margin: 64px;--maxw: 1296px;--lh: 24px;display:block;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif}@media (max-width: 991px){[_nghost-ng-c756749664]{--margin: 40px}}@media (max-width: 768px){[_nghost-ng-c756749664]{--margin: 20px}}*[_ngcontent-ng-c756749664]{box-sizing:border-box}.foot[_ngcontent-ng-c756749664]{border-top:1px solid var(--border)}.foot__wrap[_ngcontent-ng-c756749664]{width:100%;max-width:var(--maxw);margin:0 auto;padding:48px var(--margin)}.foot__grid[_ngcontent-ng-c756749664]{display:grid;grid-template-columns:repeat(5,1fr);gap:24px 20px}@media (max-width: 1100px){.foot__grid[_ngcontent-ng-c756749664]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.foot__grid[_ngcontent-ng-c756749664]{grid-template-columns:repeat(2,1fr)}}.foot__h[_ngcontent-ng-c756749664]{font-family:Space Mono,monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 12px}.foot__col[_ngcontent-ng-c756749664]   a[_ngcontent-ng-c756749664]{display:block;color:var(--ink-soft);text-decoration:none;font-size:14px;line-height:var(--lh)}.foot__col[_ngcontent-ng-c756749664]   a[_ngcontent-ng-c756749664]:hover{color:var(--ink)}.foot__more[_ngcontent-ng-c756749664]{--accent: #54a6f6;color:var(--accent)!important;font-weight:600}.foot__more[_ngcontent-ng-c756749664]:hover{opacity:.85}.foot__base[_ngcontent-ng-c756749664]{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--border);padding-top:16px;margin-top:32px;color:var(--ink-muted);font-family:Space Mono,monospace;font-size:12px;flex-wrap:wrap}.foot__social[_ngcontent-ng-c756749664]{display:flex;align-items:center;gap:10px}.foot__social[_ngcontent-ng-c756749664]   a[_ngcontent-ng-c756749664]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:999px;color:var(--ink-soft);transition:color .15s ease,border-color .15s ease,background .15s ease}.foot__social[_ngcontent-ng-c756749664]   a[_ngcontent-ng-c756749664]   svg[_ngcontent-ng-c756749664]{width:16px;height:16px}.foot__social[_ngcontent-ng-c756749664]   a[_ngcontent-ng-c756749664]:hover{color:var(--ink);border-color:#ffffff47;background:#ffffff0a}</style><style ng-app-id="ng">@charset "UTF-8";[_nghost-ng-c1893670306]{display:block}.hbv__video[_ngcontent-ng-c1893670306]{display:block;width:100%;height:auto;border-radius:14px;background:#12121e}.hbv__btn[_ngcontent-ng-c1893670306]{display:flex;align-items:center;justify-content:center;gap:6px;max-width:100%;margin:10px auto 0;min-height:36px;padding:6px 14px;border-radius:18px;border:1px solid var(--border, rgba(255, 255, 255, .1));background:var(--surface-2, #1a1a2e);color:var(--ink, #fff);font:inherit;font-size:13px;line-height:1.3;text-align:center;cursor:pointer}.hbv__btn[_ngcontent-ng-c1893670306]:hover{border-color:var(--accent-bright, #54a6f6)}.hbv__btn[_ngcontent-ng-c1893670306]:focus-visible{outline:2px solid var(--accent-bright, #54a6f6);outline-offset:3px}</style><style ng-app-id="ng">[_nghost-ng-c2471051920]{display:block}.hps[_ngcontent-ng-c2471051920]{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.hps__p[_ngcontent-ng-c2471051920]{display:inline-flex;align-items:baseline;gap:8px;padding:10px 16px;border-radius:999px;background:var(--surface, #12121e);border:1px solid var(--border, rgba(255, 255, 255, .1))}.hps--compact[_ngcontent-ng-c2471051920]   .hps__p[_ngcontent-ng-c2471051920]{padding:6px 12px;font-size:14px}.hps__nom[_ngcontent-ng-c2471051920]{font-weight:700;color:var(--ink, #fff)}.hps__etat[_ngcontent-ng-c2471051920]{font-size:13px;color:var(--ink-soft, rgba(255, 255, 255, .66))}.hps__p--bientot[_ngcontent-ng-c2471051920]{border-style:dashed;border-color:#ffffff4d}.hps__p--toujours[_ngcontent-ng-c2471051920]{border-color:var(--accent-bright, #54a6f6)}</style><style ng-app-id="ng">@charset "UTF-8";[_nghost-ng-c3686818010]{display:block}.hct[_ngcontent-ng-c3686818010]{position:relative;display:flex;align-items:center;border-top:1px solid var(--border, rgba(255, 255, 255, .1));border-bottom:1px solid var(--border, rgba(255, 255, 255, .1));background:#12121eb8}
81.hct__fenetre[_ngcontent-ng-c3686818010]{flex:1 1 auto;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.hct__piste[_ngcontent-ng-c3686818010]{display:flex;width:max-content}.hct__liste[_ngcontent-ng-c3686818010]{list-style:none;margin:0;padding:0;display:flex;flex:0 0 auto}.hct__p[_ngcontent-ng-c3686818010]{display:inline-flex;align-items:center;gap:10px;padding:16px 28px;white-space:nowrap;font-size:15px;border-right:1px dashed rgba(255,255,255,.14)}.hct__q[_ngcontent-ng-c3686818010]{color:var(--ink-soft, rgba(255, 255, 255, .66))}.hct__a[_ngcontent-ng-c3686818010]{color:var(--ink, #fff);font-weight:600}.hct__fil[_ngcontent-ng-c3686818010]   path[_ngcontent-ng-c3686818010]{fill:none;stroke:var(--accent-bright, #54a6f6);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hct__fil[_ngcontent-ng-c3686818010]   path[_ngcontent-ng-c3686818010]:first-child{stroke-dasharray:3 4}.hct__btn[_ngcontent-ng-c3686818010]{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;margin:0 12px;min-height:36px;padding:6px 12px;border-radius:999px;border:1px solid var(--border, rgba(255, 255, 255, .1));background:var(--surface-2, #1a1a2e);color:var(--ink, #fff);font:inherit;font-size:13px;cursor:pointer}.hct__btn[_ngcontent-ng-c3686818010]:hover{border-color:var(--accent-bright, #54a6f6)}.hct__btn[_ngcontent-ng-c3686818010]:focus-visible{outline:2px solid var(--accent-bright, #54a6f6);outline-offset:3px}.sr-only[_ngcontent-ng-c3686818010]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (prefers-reduced-motion: no-preference){.hct__piste[_ngcontent-ng-c3686818010]{animation:hct-defile 70s linear infinite}.hct--pause[_ngcontent-ng-c3686818010]   .hct__piste[_ngcontent-ng-c3686818010], .hct__fenetre[_ngcontent-ng-c3686818010]:hover   .hct__piste[_ngcontent-ng-c3686818010]{animation-play-state:paused}}@keyframes _ngcontent-ng-c3686818010_hct-defile{to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.hct__fenetre[_ngcontent-ng-c3686818010]{mask-image:none}.hct__piste[_ngcontent-ng-c3686818010]{display:block;width:auto}.hct__liste[_ngcontent-ng-c3686818010]{flex-wrap:wrap}.hct__liste[aria-hidden=true][_ngcontent-ng-c3686818010], .hct__btn[_ngcontent-ng-c3686818010]{display:none}.hct__p[_ngcontent-ng-c3686818010]{white-space:normal}}@media (max-width: 600px){.hct__p[_ngcontent-ng-c3686818010]{padding:12px 18px;font-size:14px}.hct__btn[_ngcontent-ng-c3686818010]{margin:0 8px}}</style><style ng-app-id="ng">@charset "UTF-8";[_nghost-ng-c3323499619]{display:contents}.hcd[_ngcontent-ng-c3323499619]{width:min(560px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;background:transparent;color:var(--ink, #fff);font-family:Inter,system-ui,sans-serif;line-height:1.55;overflow:auto}.hcd[_ngcontent-ng-c3323499619]::backdrop{background:#05050cb8;backdrop-filter:blur(6px)}.hcd__carte[_ngcontent-ng-c3323499619]{position:relative;padding:32px 28px 24px;border-radius:22px;background:var(--surface, #12121e);border:1px solid var(--border, rgba(255, 255, 255, .1));box-shadow:0 40px 90px -30px #000000e6}.hcd__x[_ngcontent-ng-c3323499619]{position:absolute;top:14px;right:14px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--border, rgba(255, 255, 255, .1));background:var(--surface-2, #1a1a2e);color:var(--ink, #fff);font-size:15px;cursor:pointer}.hcd__x[_ngcontent-ng-c3323499619]:hover{border-color:var(--accent-bright, #54a6f6)}.hcd__etat[_ngcontent-ng-c3323499619]{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;padding:3px 12px;border:1px solid var(--accent-bright, #54a6f6);border-radius:999px;font:700 12px/1.5 Space Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.hcd__titre[_ngcontent-ng-c3323499619]{margin:0 48px 10px 0;font-size:26px;line-height:1.2;font-weight:800;letter-spacing:-.01em}.hcd__texte[_ngcontent-ng-c3323499619]{margin:0 0 20px;color:var(--ink-soft, rgba(255, 255, 255, .66))}.hcd__etapes[_ngcontent-ng-c3323499619]{list-style:none;margin:0;padding:0;display:grid;gap:10px}.hcd__etapes[_ngcontent-ng-c3323499619]   li[_ngcontent-ng-c3323499619]{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:14px;border:1px solid var(--border, rgba(255, 255, 255, .1));background:var(--surface-2, #1a1a2e)}.hcd__n[_ngcontent-ng-c3323499619]{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--accent-bright, #54a6f6);font-weight:800;font-size:14px}.hcd__etapes[_ngcontent-ng-c3323499619]   b[_ngcontent-ng-c3323499619]{display:block}.hcd__d[_ngcontent-ng-c3323499619]{display:block;color:var(--ink-soft, rgba(255, 255, 255, .66));font-size:15px}.hcd__relance[_ngcontent-ng-c3323499619]{margin:18px 0 0;font-size:14px;color:var(--ink-soft, rgba(255, 255, 255, .66))}.hcd__relance[_ngcontent-ng-c3323499619]   a[_ngcontent-ng-c3323499619]{color:var(--accent-bright, #54a6f6);text-decoration:underline;text-underline-offset:3px;font-weight:600}.hcd__bas[_ngcontent-ng-c3323499619]{display:flex;justify-content:flex-end;margin-top:20px}.hcd__fermer[_ngcontent-ng-c3323499619]{min-height:44px;padding:10px 24px;border:0;border-radius:999px;background:var(--accent-bouton, #2173cf);color:#fff;font:inherit;font-weight:600;cursor:pointer}.hcd__fermer[_ngcontent-ng-c3323499619]:hover{background:var(--accent-bouton-survol, #1a66c7)}.hcd__x[_ngcontent-ng-c3323499619]:focus-visible, .hcd__fermer[_ngcontent-ng-c3323499619]:focus-visible, .hcd__relance[_ngcontent-ng-c3323499619]   a[_ngcontent-ng-c3323499619]:focus-visible{outline:2px solid var(--accent-bright, #54a6f6);outline-offset:3px}@media (prefers-reduced-motion: no-preference){.hcd[open][_ngcontent-ng-c3323499619]{animation:hcd-entre .22s ease-out}}@keyframes _ngcontent-ng-c3323499619_hcd-entre{0%{opacity:0;transform:translateY(16px) scale(.98)}}
81@media (max-width: 480px){.hcd__carte[_ngcontent-ng-c3323499619]{padding:24px 18px 18px}.hcd__titre[_ngcontent-ng-c3323499619]{font-size:22px}}</style><link rel="canonical" href="https://hou.la/"><link rel="alternate" hreflang="fr" href="https://hou.la?lang=fr"><link rel="alternate" hreflang="en" href="https://hou.la?lang=en"><link rel="alternate" hreflang="it" href="https://hou.la?lang=it"><link rel="alternate" hreflang="es" href="https://hou.la?lang=es"><link rel="alternate" hreflang="pt" href="https://hou.la?lang=pt"><link rel="alternate" hreflang="x-default" href="https://hou.la"><style ng-app-id="ng">[_nghost-ng-c1730215562]{display:inline-block}.hcc[_ngcontent-ng-c1730215562]{display:inline-block;font-variant-numeric:tabular-nums;text-align:inherit}.sr-only[_ngcontent-ng-c1730215562]{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}</style></head>
82    <body><!--nghm-->
83        <app-root ng-version="19.2.18" _nghost-ng-c1785608445 class="ng-tns-c1785608445-0" ngh="14" ng-server-context="ssg"><app-widget-toast _ngcontent-ng-c1785608445 ngh="1"><p-toast position="top-right" key="app" pc1 class="ng-tns-c757183554-1" ngh="0"><div class="p-toast p-component p-toast-top-right" style="position: fixed; top: 20px; right: 20px; bottom: false;"><!----></div></p-toast></app-widget-toast><app-widget-new-build-advertising _ngcontent-ng-c1785608445 style="position: absolute; z-index: 300;" ngh="2"><!----></app-widget-new-build-advertising><app-widget-session-expiry-warning _ngcontent-ng-c1785608445 style="position: absolute; z-index: 299;" ngh="3"><!----></app-widget-session-expiry-warning><app-widget-install-modal _ngcontent-ng-c1785608445 _nghost-ng-c2305169274 ngh="4"><!----></app-widget-install-modal><app-widget-auth-modal _ngcontent-ng-c1785608445 _nghost-ng-c3608190751 ngh="5"><!----></app-widget-auth-modal><app-widget-coin-purchase _ngcontent-ng-c1785608445 _nghost-ng-c2367422573 ngh="6"><!----></app-widget-coin-purchase><div _ngcontent-ng-c1785608445 class="ng-trigger ng-trigger-routeAnimations"><router-outlet _ngcontent-ng-c1785608445></router-outlet><app-view-landing _nghost-ng-c874076103 ngh="13"><div _ngcontent-ng-c874076103 class="landing-test"><nav _ngcontent-ng-c874076103 class="nav"><div _ngcontent-ng-c874076103 class="nav__wrap"><div _ngcontent-ng-c874076103 class="nav__left"><a _ngcontent-ng-c874076103 routerlink="/" class="nav__brand" href="/"><img _ngcontent-ng-c874076103 src="assets/images/hou.la-logo-light.svg" alt="Hou.la" class="nav__logo"></a><div _ngcontent-ng-c874076103 class="nav__links"><a _ngcontent-ng-c874076103 href="#why" class="nav__link">Pourquoi</a><a _ngcontent-ng-c874076103 href="#feed" class="nav__link">Vidéos</a><a _ngcontent-ng-c874076103 href="#live" class="nav__link">Live</a><a _ngcontent-ng-c874076103 href="#market" class="nav__link">Vendre</a><a _ngcontent-ng-c874076103 href="#univers" class="nav__link">Univers</a><a _ngcontent-ng-c874076103 href="#interactive" class="nav__link">Streamers</a></div></div><div _ngcontent-ng-c874076103 class="nav__right"><app-widget-language-switcher _ngcontent-ng-c874076103 class="nav__lang" _nghost-ng-c2841048764 ngh="7"><div _ngcontent-ng-c2841048764 role="button" tabindex="0" class="lang-switcher" aria-label="Changer de langue"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-fr"></span><div _ngcontent-ng-c2841048764 class="lang-dropdown"><button _ngcontent-ng-c2841048764 class="lang-option active"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-fr"></span><span _ngcontent-ng-c2841048764>Français</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-gb"></span><span _ngcontent-ng-c2841048764>English</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-it"></span><span _ngcontent-ng-c2841048764>Italiano</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-es"></span><span _ngcontent-ng-c2841048764>Español</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-br"></span><span _ngcontent-ng-c2841048764>Português</span></button><!----></div></div></app-widget-language-switcher>
83<a _ngcontent-ng-c874076103 href="https://hou.la/app" target="_blank" rel="noopener" class="nav__dl">Télécharger l'app</a><a _ngcontent-ng-c874076103 routerlink="/login" class="btn btn--ghost nav__login" href="/login">Connexion</a><button _ngcontent-ng-c874076103 type="button" aria-label="Menu" class="nav__burger" aria-expanded="false"><span _ngcontent-ng-c874076103></span><span _ngcontent-ng-c874076103></span><span _ngcontent-ng-c874076103></span></button></div></div></nav><div _ngcontent-ng-c874076103 class="nav__mobile"><a _ngcontent-ng-c874076103 href="#why" class="nav__mlink">Pourquoi</a><a _ngcontent-ng-c874076103 href="#feed" class="nav__mlink">Vidéos</a><a _ngcontent-ng-c874076103 href="#live" class="nav__mlink">Live</a><a _ngcontent-ng-c874076103 href="#market" class="nav__mlink">Vendre</a><a _ngcontent-ng-c874076103 href="#univers" class="nav__mlink">Univers</a><a _ngcontent-ng-c874076103 href="#interactive" class="nav__mlink">Streamers</a><div _ngcontent-ng-c874076103 class="nav__mactions"><a _ngcontent-ng-c874076103 href="https://hou.la/app" target="_blank" rel="noopener" class="btn btn--primary">Télécharger l'app</a><a _ngcontent-ng-c874076103 routerlink="/login" class="btn btn--ghost" href="/login">Connexion</a><app-widget-language-switcher _ngcontent-ng-c874076103 _nghost-ng-c2841048764 ngh="7"><div _ngcontent-ng-c2841048764 role="button" tabindex="0" class="lang-switcher" aria-label="Changer de langue"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-fr"></span><div _ngcontent-ng-c2841048764 class="lang-dropdown"><button _ngcontent-ng-c2841048764 class="lang-option active"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-fr"></span><span _ngcontent-ng-c2841048764>Français</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-gb"></span><span _ngcontent-ng-c2841048764>English</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-it"></span><span _ngcontent-ng-c2841048764>Italiano</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-es"></span><span _ngcontent-ng-c2841048764>Español</span></button><button _ngcontent-ng-c2841048764 class="lang-option"><span _ngcontent-ng-c2841048764 class="fp fp-rounded fp-br"></span><span _ngcontent-ng-c2841048764>Português</span></button><!----></div></div></app-widget-language-switcher></div></div><section _ngcontent-ng-c874076103 class="spread hero"><div _ngcontent-ng-c874076103 class="glow glow--hero"></div><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="hero__col"><p _ngcontent-ng-c874076103 class="kicker reveal"> Réseau social · Vidéo · Live · Shopping </p><h1 _ngcontent-ng-c874076103 class="masthead hero__head reveal"><span _ngcontent-ng-c874076103 class="line">Vidéo.</span><span _ngcontent-ng-c874076103 class="line accent">Live.</span><span _ngcontent-ng-c874076103 class="line">Shopping.</span></h1><p _ngcontent-ng-c874076103 class="hero__tagline reveal"> Pas besoin d'être connu pour être vu. </p><p _ngcontent-ng-c874076103 class="lede hero__lede reveal"> Crée, passe en live, vends : sans pub, sans shadowban, sans payer pour être vu. Un algorithme qui récompense la qualité du contenu, pas la taille du compte. </p><div _ngcontent-ng-c874076103 class="hero__cta reveal"><a _ngcontent-ng-c874076103 href="https://hou.la/play-store" target="_blank" rel="noopener" aria-label="Google Play" class="badge badge--play"><img _ngcontent-ng-c874076103 src="assets/images/google-play-badge-fr.png" alt="Google Play" height="48"></a><a _ngcontent-ng-c874076103 href="https://hou.la/app-store" target="_blank" rel="noopener" aria-label="App Store" class="badge badge--ios"><img _ngcontent-ng-c874076103 src="assets/images/app-store-badge-fr.svg" alt="App Store" height="40"></a></div><p _ngcontent-ng-c874076103 class="hero__note reveal"> Disponible maintenant sur iOS &amp; Android · télécharge l'app </p></div><div _ngcontent-ng-c874076103 class="hero__visual reveal"><img _ngcontent-ng-c874076103 src="assets/images/hero-banner-live.png" alt="Hou.la" loading="eager" class="hero__img"><div _ngcontent-ng-c874076103 aria-hidden="true" class="reactions"><img _ngcontent-ng-c874076103 src="assets/images/emoji/heart.png" alt><img _ngcontent-ng-c874076103 src="assets/images/emoji/fire.png" alt><img _ngcontent-ng-c874076103 src="assets/images/emoji/tada.png" alt><img _ngcontent-ng-c874076103 src="assets/images/emoji/rocket.png" alt></div></div></div></div></div></section><section _ngcontent-ng-c874076103 id="interactive" aria-labelledby="ix-title" data-testid="lp-streamers" class="spread ix"><div _ngcontent-ng-c874076103 class="wrap"><lp-bloc-connect _ngcontent-ng-c874076103 _nghost-ng-c2512522239 ngh="12"><div _ngcontent-ng-c2512522239 class="lbc"><div _ngcontent-ng-c2512522239 aria-hidden="true" class="lbc__fond"></div><div _ngcontent-ng-c2512522239 class="lbc__grille"><header _ngcontent-ng-c2512522239 class="lbc__tete"><p _ngcontent-ng-c2512522239 class="lbc__kicker">Hou.la Connect · Pour les streamers</p><h2 _ngcontent-ng-c2512522239 id="ix-title" data-testid="lp-streamers-title" class="lbc__titre"><span _ngcontent-ng-c2512522239 class="lbc__l1">Un cadeau arrive.</span>   <span _ngcontent-ng-c2512522239 class="lbc__l2">Ton live réagit.</span></h2></header><p _ngcontent-ng-c2512522239 class="lbc__lede">Les cadeaux, messages et follows de ton public déclenchent ton jeu, tes overlays, OBS, tes sons et tes lumières. Ton public ne regarde plus ton live : il joue avec toi.</p><figure _ngcontent-ng-c2512522239 data-testid="lp-streamers-scene" class="lbc__scene"><div _ngcontent-ng-c2512522239 class="lbc__plateau"><div _ngcontent-ng-c2512522239 class="lbc__fenetre"><img _ngcontent-ng-c2512522239 sizes="(max-width: 999px) 92vw, 640px" width="1440" height="900" loading="lazy" decoding="async" src="assets/apps/houla-connect/v2/vue-live.webp" alt="Capture de la Vue Live pendant le live «&nbsp;Soirée Minecraft&nbsp;: Chaos&nbsp;»&nbsp;: les commentaires, dont un message prioritaire, le retour vidéo, les cadeaux reçus, les événements du live et le classement des donateurs." srcset="assets/apps/houla-connect/v2/vue-live-720.webp 720w, assets/apps/houla-connect/v2/vue-live.webp 1440w"></div><img _ngcontent-ng-c2512522239 width="480" height="508" loading="lazy" decoding="async" class="lbc__ov lbc__ov--vedette" src="assets/apps/houla-connect/v2/ov-vedette.webp" alt="Overlay Plus gros cadeau&nbsp;: Alice, 5 000 pièces, cadeau Licorne (chiffres d’exemple)."><img _ngcontent-ng-c2512522239 width="600" height="286" loading="lazy" decoding="async" class="lbc__ov lbc__ov--objectif" src="assets/apps/houla-connect/v2/ov-objectif.webp" alt="Overlay Objectif likes&nbsp;: 3 100 sur 5 000, 62&nbsp;%, en cours (chiffres d’exemple)."><div _ngcontent-ng-c2512522239 class="lbc__bocal"><hc-bocal-video _ngcontent-ng-c2512522239 _nghost-ng-c1893670306 ngh="8"><video _ngcontent-ng-c1893670306 width="320" height="484" muted loop playsinline preload="none" data-testid="hc-overlays-jar" class="hbv__video" poster="assets/apps/houla-connect/v2/bocal-poster.webp" aria-label="Vidéo du bocal à cadeaux dans l’aperçu de Connect&nbsp;: le bocal se vide, puis les cadeaux y tombent un à un avec une vraie physique, et la jauge monte vers 1 000 pièces (chiffres d’exemple)."><source _ngcontent-ng-c1893670306 type="video/mp4" src="assets/apps/houla-connect/v2/bocal.mp4"></video><button _ngcontent-ng-c1893670306 type="button" data-testid="hc-overlays-jar-toggle" class="hbv__btn" aria-pressed="true"><!----><span _ngcontent-ng-c1893670306 aria-hidden="true">▶</span> Voir le bocal se remplir <!----></button></hc-bocal-video></div></div><figcaption _ngcontent-ng-c2512522239 class="lbc__cap"> Le bocal à cadeaux, filmé dans Connect : chaque cadeau de ton public y tombe. Autour, de vrais overlays de l'app, avec ses chiffres d'exemple. </figcaption></figure><div _ngcontent-ng-c2512522239 class="lbc__actions"><div _ngcontent-ng-c2512522239 class="lbc__boutons"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" data-testid="lp-streamers-connect" class="lbc-btn lbc-btn--primaire" href="/apps/houla-connect"> Découvrir Hou.la Connect <svg _ngcontent-ng-c2512522239="" viewBox="0 0 22 12" width="22" height="12" aria-hidden="true" focusable="false" class="lbc-btn__fleche"><path _ngcontent-ng-c2512522239="" d="M1 6 H19"/><path _ngcontent-ng-c2512522239="" d="M14 1 L20 6 L14 11"/></svg></a><a _ngcontent-ng-c2512522239 rel="noopener" data-testid="lp-streamers-download" class="lbc-btn lbc-btn--secondaire lbc__dl" href="https://hou.la/api/download/connect/win"><svg _ngcontent-ng-c2512522239="" viewBox="0 0 16 16" width="16" height="16" aria-hidden="true" focusable="false" class="lbc-btn__dl"><path _ngcontent-ng-c2512522239="" d="M8 1.5 V10.5"/><path _ngcontent-ng-c2512522239="" d="M4 7 L8 11 L12 7"/><path _ngcontent-ng-c2512522239="" d="M2 14.5 H14"/></svg> Télécharger pour Windows </a></div><p _ngcontent-ng-c2512522239 class="lbc__faits">Gratuit · Sans abonnement · Windows, macOS, Linux</p><div _ngcontent-ng-c2512522239 class="lbc__plateformes"><span _ngcontent-ng-c2512522239 class="lbc__plat-l">Tes chaînes, écoutées en même temps</span><hc-platform-strip _ngcontent-ng-c2512522239 _nghost-ng-c2471051920 ngh="9"><ul _ngcontent-ng-c2471051920 data-testid="hc-platforms" class="hps hps--compact"><li _ngcontent-ng-c2471051920 class="hps__p hps__p--toujours" data-platform="Hou.la"><b _ngcontent-ng-c2471051920 class="hps__nom">Hou.la</b><span _ngcontent-ng-c2471051920 class="hps__etat"><span _ngcontent-ng-c2471051920 aria-hidden="true">✓</span> toujours active </span><!----></li><li _ngcontent-ng-c2471051920 class="hps__p hps__p--ok" data-platform="TikTok"><b _ngcontent-ng-c2471051920 class="hps__nom">TikTok</b><!----></li><li _ngcontent-ng-c2471051920 class="hps__p hps__p--ok" data-platform="YouTube"><b _ngcontent-ng-c2471051920 class="hps__nom">YouTube</b><!----></li><li _ngcontent-ng-c2471051920 class="hps__p hps__p--ok" data-platform="Kick"><b _ngcontent-ng-c2471051920 class="hps__nom">Kick</b><!----></li><li _ngcontent-ng-c2471051920 class="hps__p hps__p--bientot" data-platform="Twitch"><b _ngcontent-ng-c2471051920 class="hps__nom">Twitch</b><span _ngcontent-ng-c2471051920 class="hps__etat"><span _ngcontent-ng-c2471051920 aria-hidden="true">⏳</span> bientôt </span><!----></li><!----></ul></hc-platform-strip></div></div></div><hc-ticker _ngcontent-ng-c2512522239 class="lbc__ticker" _nghost-ng-c3686818010 ngh="10"><section _ngcontent-ng-c3686818010 data-testid="hc-ticker" class="hct" aria-label="Exemples d’interactions"><div _ngcontent-ng-c3686818010 class="hct__fenetre"><div _ngcontent-ng-c3686818010 class="hct__piste"><ul _ngcontent-ng-c3686818010 class="hct__liste"><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Rose sur TikTok</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">
83déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un creeper apparaît dans Minecraft</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Super Chat sur YouTube</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">OBS passe sur ta scène «&nbsp;Chaos&nbsp;»</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Follow sur Kick</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton overlay dit merci</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Cadeau sur Hou.la</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ta Key Light s’allume à 100&nbsp;%</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">100 likes</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un son de la bibliothèque</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">!planning dans le chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">le chatbot répond</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un gros cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">Bill Balle dans Mario Kart 8 Deluxe</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ta voix change pendant 30 s</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Objectif atteint</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">
83déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un message part sur ton Discord</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Cadeau sur Hou.la</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">il tombe dans ton bocal</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">/top dans le chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton top donateurs s’affiche</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un message du chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">lu à voix haute</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">OBS garde un replay</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton avatar VRChat change</span></li><!----></ul><ul _ngcontent-ng-c3686818010 class="hct__liste" aria-hidden="true"><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Rose sur TikTok</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un creeper apparaît dans Minecraft</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Super Chat sur YouTube</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">OBS passe sur ta scène «&nbsp;Chaos&nbsp;»</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Follow sur Kick</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">
83déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton overlay dit merci</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Cadeau sur Hou.la</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ta Key Light s’allume à 100&nbsp;%</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">100 likes</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un son de la bibliothèque</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">!planning dans le chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">le chatbot répond</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un gros cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">Bill Balle dans Mario Kart 8 Deluxe</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ta voix change pendant 30 s</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Objectif atteint</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">un message part sur ton Discord</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Cadeau sur Hou.la</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">il tombe dans ton bocal</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">/top dans le chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">
83déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton top donateurs s’affiche</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un message du chat</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">lu à voix haute</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">OBS garde un replay</span></li><li _ngcontent-ng-c3686818010 class="hct__p"><span _ngcontent-ng-c3686818010 class="hct__q">Un cadeau</span><svg _ngcontent-ng-c3686818010="" viewBox="0 0 44 12" width="44" height="12" aria-hidden="true" focusable="false" class="hct__fil"><path _ngcontent-ng-c3686818010="" d="M1 6 H36"/><path _ngcontent-ng-c3686818010="" d="M34 1 L42 6 L34 11" class="hct__pointe"/></svg><span _ngcontent-ng-c3686818010 class="sr-only">déclenche</span><span _ngcontent-ng-c3686818010 class="hct__a">ton avatar VRChat change</span></li><!----></ul><!----></div></div><button _ngcontent-ng-c3686818010 type="button" data-testid="hc-ticker-pause" class="hct__btn" aria-pressed="false"><!----><span _ngcontent-ng-c3686818010 aria-hidden="true">❚❚</span> Pause <!----></button></section></hc-ticker><section _ngcontent-ng-c2512522239 aria-labelledby="lbc-store-t" data-testid="lp-streamers-store" class="lbc__store ng-star-inserted"><div _ngcontent-ng-c2512522239 class="lbc__store-tete"><h3 _ngcontent-ng-c2512522239 id="lbc-store-t" class="lbc__store-t"> En ce moment dans le Store </h3><dl _ngcontent-ng-c2512522239 class="lbc__chiffres"><div _ngcontent-ng-c2512522239 class="lbc__chiffre"><dt _ngcontent-ng-c2512522239> packs publiés </dt><dd _ngcontent-ng-c2512522239 data-testid="lp-streamers-packs-count"><hc-compteur _ngcontent-ng-c2512522239 _nghost-ng-c1730215562 ngh="11"><span _ngcontent-ng-c1730215562 aria-hidden="true" class="hcc" style="min-width: 2ch;">22</span><span _ngcontent-ng-c1730215562 class="sr-only">22</span></hc-compteur></dd></div><div _ngcontent-ng-c2512522239 class="lbc__chiffre"><dt _ngcontent-ng-c2512522239> créateurs </dt><dd _ngcontent-ng-c2512522239 data-testid="lp-streamers-creators-count"><hc-compteur _ngcontent-ng-c2512522239 _nghost-ng-c1730215562 ngh="11"><span _ngcontent-ng-c1730215562 aria-hidden="true" class="hcc" style="min-width: 1ch;">3</span><span _ngcontent-ng-c1730215562 class="sr-only">3</span></hc-compteur></dd></div><div _ngcontent-ng-c2512522239 class="lbc__chiffre"><dt _ngcontent-ng-c2512522239>pour installer un pack</dt><dd _ngcontent-ng-c2512522239>0 €</dd></div></dl></div><ul _ngcontent-ng-c2512522239 data-testid="lp-streamers-packs" class="lbc__packs"><li _ngcontent-ng-c2512522239 class="ng-star-inserted"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" fragment="store" class="lbc-pack" data-slug="tomb-raider-remastered-director" href="/apps/houla-connect#store"><img _ngcontent-ng-c2512522239 width="1600" height="900" alt loading="lazy" decoding="async" fetchpriority="low"><span _ngcontent-ng-c2512522239 class="lbc-pack__t">Tomb Raider Remastered Director</span><span _ngcontent-ng-c2512522239 class="lbc-pack__m"><span _ngcontent-ng-c2512522239 class="lbc-pack__nouveau ng-star-inserted">Nouveau</span><!----> par Flicky Fantasy </span></a></li><li _ngcontent-ng-c2512522239 class="ng-star-inserted"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" fragment="store" class="lbc-pack" data-slug="pratfall" href="/apps/houla-connect#store"><img _ngcontent-ng-c2512522239 width="1600" height="900" alt loading="lazy" decoding="async" fetchpriority="low"><span _ngcontent-ng-c2512522239 class="lbc-pack__t">Prat Fall</span><span _ngcontent-ng-c2512522239 class="lbc-pack__m"><span _ngcontent-ng-c2512522239 class="lbc-pack__nouveau ng-star-inserted">Nouveau</span><!----> par FroGame </span></a></li><li _ngcontent-ng-c2512522239 class="ng-star-inserted"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" fragment="store" class="lbc-pack" data-slug="minecraft-survie" href="/apps/houla-connect#store"><img _ngcontent-ng-c2512522239 width="1600" height="900" alt loading="lazy" decoding="async" fetchpriority="low"><span _ngcontent-ng-c2512522239 class="lbc-pack__t">Minecraft Survie</span><span _ngcontent-ng-c2512522239 class="lbc-pack__m"><!----> par FroGame </span></a></li><li _ngcontent-ng-c2512522239 class="ng-star-inserted"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" fragment="store" class="lbc-pack" data-slug="mk8dx-6a85262f21b90364-1" href="/apps/houla-connect#store"><img _ngcontent-ng-c2512522239 width="1600" height="900" alt loading="lazy" decoding="async" fetchpriority="low"><span _ngcontent-ng-c2512522239 class="lbc-pack__t">
83Pack pour Mario Kart 8 Deluxe version 3.0.3</span><span _ngcontent-ng-c2512522239 class="lbc-pack__m"><!----> par Flicky Fantasy </span></a></li><!----></ul><p _ngcontent-ng-c2512522239 class="lbc__store-bas"><a _ngcontent-ng-c2512522239 routerlink="/apps/houla-connect" fragment="store" data-testid="lp-streamers-all-packs" href="/apps/houla-connect#store">Voir les 22 packs du Store<span _ngcontent-ng-c2512522239 aria-hidden="true"> →</span></a><span _ngcontent-ng-c2512522239 class="lbc__note">Lu en direct sur le Store de Hou.la Connect.</span></p></section><!----><p _ngcontent-ng-c2512522239 class="lbc__agences"><a _ngcontent-ng-c2512522239 routerlink="/agences" data-testid="lp-streamers-agencies" href="/agences">Tu gères une agence de créateurs ? Découvre le programme agences</a></p></div><hc-telechargement _ngcontent-ng-c2512522239 _nghost-ng-c3323499619 ngh="11"><dialog _ngcontent-ng-c3323499619 aria-labelledby="hcd-titre" aria-describedby="hcd-texte" data-testid="hc-dl-modal" class="hcd"><div _ngcontent-ng-c3323499619 class="hcd__carte"><button _ngcontent-ng-c3323499619 type="button" data-testid="hc-dl-x" class="hcd__x" aria-label="Fermer"><span _ngcontent-ng-c3323499619 aria-hidden="true">✕</span></button><p _ngcontent-ng-c3323499619 class="hcd__etat"><span _ngcontent-ng-c3323499619 aria-hidden="true">✓</span> Téléchargement lancé </p><h2 _ngcontent-ng-c3323499619 id="hcd-titre" class="hcd__titre"> Tu es prêt à rendre tes lives interactifs </h2><p _ngcontent-ng-c3323499619 id="hcd-texte" data-testid="hc-dl-text" class="hcd__texte"> Le téléchargement de Hou.la Connect pour Windows a commencé. Installe-le dès qu'il est terminé. </p><ol _ngcontent-ng-c3323499619 data-testid="hc-dl-steps" class="hcd__etapes"><li _ngcontent-ng-c3323499619><span _ngcontent-ng-c3323499619 aria-hidden="true" class="hcd__n">1</span><span _ngcontent-ng-c3323499619><b _ngcontent-ng-c3323499619>Installe Hou.la Connect</b><span _ngcontent-ng-c3323499619 class="hcd__d">Ouvre le fichier .exe téléchargé et suis l'installation.</span></span></li><li _ngcontent-ng-c3323499619><span _ngcontent-ng-c3323499619 aria-hidden="true" class="hcd__n">2</span><span _ngcontent-ng-c3323499619><b _ngcontent-ng-c3323499619>Connecte-toi</b><span _ngcontent-ng-c3323499619 class="hcd__d">Ouvre l'app et connecte-toi avec ton compte Hou.la.</span></span></li><li _ngcontent-ng-c3323499619><span _ngcontent-ng-c3323499619 aria-hidden="true" class="hcd__n">3</span><span _ngcontent-ng-c3323499619><b _ngcontent-ng-c3323499619>Lance ton live</b><span _ngcontent-ng-c3323499619 class="hcd__d">Installe un pack depuis le Store, puis lance ton live.</span></span></li></ol><p _ngcontent-ng-c3323499619 class="hcd__relance"> Le téléchargement n'a pas démarré ? <a _ngcontent-ng-c3323499619 rel="noopener" data-testid="hc-dl-retry" href="https://hou.la/api/download/connect/win">Relancer</a></p><div _ngcontent-ng-c3323499619 class="hcd__bas"><button _ngcontent-ng-c3323499619 type="button" autofocus data-testid="hc-dl-close" class="hcd__fermer"> Fermer </button></div></div></dialog></hc-telechargement></lp-bloc-connect></div></section><section _ngcontent-ng-c874076103 id="why" class="spread why"><div _ngcontent-ng-c874076103 class="glow glow--blue" style="top: 8%; right: -100px;"></div><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">Pourquoi Hou.la</p><h2 _ngcontent-ng-c874076103 class="shead">Le réseau social tel qu'il aurait toujours dû être.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> Juste les créateurs et leur communauté : ouvert aux nouveaux, sans pub imposée, sans te faire payer pour être vu. On récompense la qualité de tes contenus, pas la taille de ton compte. </p></div><div _ngcontent-ng-c874076103 class="band compare" style="margin-top: 16px;"><div _ngcontent-ng-c874076103 class="compare__col compare__col--bad reveal"><p _ngcontent-ng-c874076103 class="compare__head"> Ailleurs </p><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✕</span><p _ngcontent-ng-c874076103>Shadowbans et sanctions automatisées injustifiées, et des contestations refusées d'office.</p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✕</span><p _ngcontent-ng-c874076103>Tu es enfermé dans une bulle de contenu, toujours la même thématique.</p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✕</span><p _ngcontent-ng-c874076103>Réseau saturé : l'algo privilégie les gros comptes. Sans réputation, presque aucune chance de percer.</p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✕</span><p _ngcontent-ng-c874076103>La seule façon d'être vu quand on débute : payer de la pub.</p></div></div><div _ngcontent-ng-c874076103 class="compare__col compare__col--good reveal"><p _ngcontent-ng-c874076103 class="compare__head"> Sur Hou.la </p><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✓</span><p _ngcontent-ng-c874076103>Pas de shadowban. Tu respectes les règles, tu es diffusé, et chaque décision de modération est c
83ontestable et tranchée équitablement.</p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✓</span><p _ngcontent-ng-c874076103>Un algorithme qui prône la diversité : on te fait découvrir, on ne t'enferme pas.</p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✓</span><p _ngcontent-ng-c874076103>L'algo évalue la <strong>qualité du contenu</strong> et les interactions, pas la réputation du compte. <strong>Chaque vidéo peut devenir virale.</strong></p></div><div _ngcontent-ng-c874076103 class="compare__item"><span _ngcontent-ng-c874076103 class="compare__ic">✓</span><p _ngcontent-ng-c874076103>Zéro pub pour être vu. Plus tu fédères ta communauté, plus tu portes, mais tout le monde part avec sa chance.</p></div></div></div></div></div></section><section _ngcontent-ng-c874076103 id="feed" class="spread"><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">01 · Réseau social vidéo</p><h2 _ngcontent-ng-c874076103 class="shead">Un feed créé pour toi.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> Du contenu court, un algorithme qui apprend tes goûts sans t'enfermer dans une bulle, et une communauté que tu construis vraiment. </p></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;"><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">A.</p><h3 _ngcontent-ng-c874076103 class="feat__t"> Feed basé sur le contenu </h3><p _ngcontent-ng-c874076103 class="body">On évalue la qualité de la vidéo et les interactions, pas la réputation. Tout le monde peut percer, dès la première publication.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">B.</p><h3 _ngcontent-ng-c874076103 class="feat__t"> Éditeur vidéo intégré </h3><p _ngcontent-ng-c874076103 class="body">Enregistre en multi-séquences, monte, ajoute des pistes musicales depuis une bibliothèque de centaines de milliers de titres.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">C.</p><h3 _ngcontent-ng-c874076103 class="feat__t"> Interactions </h3><p _ngcontent-ng-c874076103 class="body">Like, commente, partage, envoie cadeaux et messages privés, et touche une meilleure rémunération sur tes cadeaux.</p></div></div></div></div></section><section _ngcontent-ng-c874076103 id="live" class="spread live"><div _ngcontent-ng-c874076103 class="glow glow--live" style="top: 10%; left: -120px;"></div><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">02 · Live streaming</p><h2 _ngcontent-ng-c874076103 class="shead">Ton live, tes règles.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> Gaming, IRL, musique, danse, papote, shopping. En un tap depuis l'app, ou depuis ton studio pro. </p></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 16px;"><div _ngcontent-ng-c874076103 class="live__left"><div _ngcontent-ng-c874076103 class="mode reveal"><p _ngcontent-ng-c874076103 class="mode__tag"> Mode 1 · Mobile </p><h3 _ngcontent-ng-c874076103 class="mode__t"> En un tap depuis l'app </h3><p _ngcontent-ng-c874076103 class="body">Passe en live face caméra, épingle tes produits, reçois cadeaux et commentaires en temps réel.</p></div><div _ngcontent-ng-c874076103 class="mode reveal"><p _ngcontent-ng-c874076103 class="mode__tag"> Mode 2 · Studio pro · RTMP </p><h3 _ngcontent-ng-c874076103 class="mode__t"> Depuis OBS, Streamlabs, vMix… </h3><p _ngcontent-ng-c874076103 class="body">Connecte ton logiciel de stream avec une simple clé RTMP. Scènes, overlays, multi-caméra, capture de jeu, alertes : ton setup broadcast complet, idéal pour les gamers et les pros du live.</p><div _ngcontent-ng-c874076103 class="softs"><span _ngcontent-ng-c874076103 class="soft">OBS Studio</span><span _ngcontent-ng-c874076103 class="soft">Streamlabs</span><span _ngcontent-ng-c874076103 class="soft">vMix</span><span _ngcontent-ng-c874076103 class="soft">Twitch Studio</span><span _ngcontent-ng-c874076103 class="soft">XSplit</span><span _ngcontent-ng-c874076103 class="soft">Prism</span></div><div _ngcontent-ng-c874076103 class="terminal"><div _ngcontent-ng-c874076103 class="terminal__bar"><span _ngcontent-ng-c874076103 class="led"></span><span _ngcontent-ng-c874076103>Hou.la Stream · RTMP ingest</span></div><div _ngcontent-ng-c874076103 class="terminal__body"><span _ngcontent-ng-c874076103 class="terminal__row"><span _ngcontent-ng-c874076103 class="terminal__k">serveur&nbsp;&nbsp;</span><span _ngcontent-ng-c874076103 class="terminal__v">rtmp://live.hou.la/app</span></span><span _ngcontent-ng-c874076103 class="terminal__row"><span _ngcontent-ng-c874076103 class="terminal__k">clé&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span _ngcontent-ng-c874076103 class="terminal__v">live_xxxx-xxxx-xxxx-xxxx</span></span><span _ngcontent-ng-c874076103 class="terminal__row"><span _ngcontent-ng-c874076103 class="terminal__k">statut&nbsp;&nbsp;&nbsp;</span><span _ngcontent-ng-c874076103 class="terminal__live">● ON AIR · &lt;300 ms</span></span></div></div></div></div><div _ngcontent-ng-c874076103 class="live__right reveal"><div _ngcontent-ng-c874076103 class="lphone"><div _ngcontent-ng-c874076103 class="lphone__screen"><video _ngcontent-ng-c874076103 autoplay muted playsinline preload="auto" disablepictureinpicture class="lphone__video" src="assets/videos/login-bg.mp4" poster="assets/videos/login-bg.jpg" loop></video><div _ngcontent-ng-c874076103 class="lphone__ui"><div _ngcontent-ng-c874076103 class="lphone__hd"><div _ngcontent-ng-c874076103 class="lphone__cpill"><span _ngcontent-ng-c874076103 class="lphone__cav"><img _ngcontent-ng-c874076103 src="assets/images/tmp/thispersondoesnotexist.jpg" alt></span><span _ngcontent-ng-c874076103 class="lphone__cinfo"><b _ngcontent-ng-c874076103>Lumi</b><i _ngcontent-ng-c874076103>♥ 180</i></span><span _ngcontent-ng-c874076103 class="lphone__follow">✓ Abonné</span></div><div _ngcontent-ng-c874076103 class="lphone__ctrls"><span _ngcontent-ng-c874076103 class="lphone__ctrl">👁 1,247</span><span _ngcontent-ng-c874076103 class="lphone__ctrl lphone__ctrl--ic">⋯</span><span _ngcontent-ng-c874076103 class="lphone__ctrl lphone__ctrl--ic">✕</span></div></div><div _ngcontent-ng-c874076103 class="lphone__gift"><span _ngcontent-ng-c874076103>🎁</span><i _ngcontent-ng-c874076103>0/4</i></div><div _ngcontent-ng-c874076103 class="lphone__chat"><div _ngcontent-ng-c874076103 class="lcomment"><span _ngcontent-ng-c874076103 class="lcomment__av" style="background: linear-gradient(135deg,#f5a623,#d77f00);">M</span><span _ngcontent-ng-c874076103 class="lcomment__bubble"><!----><!----><b _ngcontent-ng-c874076103>Missvoyage</b> Stylé ! 🔥 </span></div><div _ngcontent-ng-c874076103 class="lcomment"><span _ngcontent-ng-c874076103 class="lcomment__av" style="background: linear-gradient(135deg,#a55eea,#6d28d9);">G</span><span _ngcontent-ng-c874076103 class="lcomment__bubble"><!----><span _ngcontent-ng-c874076103 class="lcomment__tag lcomment__tag--mod">MOD</span><!----><b _ngcontent-ng-c874076103>Grandsoleil</b> On reste respectueux svp ✨ </span></div><div _ngcontent-ng-c874076103 class="lcomment"><span _ngcontent-ng-c874076103 class="lcomment__av" style="background: linear-gradient(135deg,#26c6da,#00838f);">L</span><span _ngcontent-ng-c874076103 class="lcomment__bubble"><span _ngcontent-ng-c874076103 class="lcomment__tag lcomment__tag--host">HÔTE</span><!----><!----><b _ngcontent-ng-c874076103>Lumi</b> Merci pour le soutien 🙏 </span></div><!----></div><div _ngcontent-ng-c874076103 class="lphone__pin"><div _ngcontent-ng-c874076103 class="lphone__pin-row"><span _ngcontent-ng-c874076103 class="lphone__pin-img"></span><span _ngcontent-ng-c874076103 class="lphone__pin-txt"><b _ngcontent-ng-c874076103>Diffuseur Huiles Essentielles</b><i _ngcontent-ng-c874076103>39,90 €</i></span><span _ngcontent-ng-c874076103 class="lphone__pin-buy">Acheter</span><!----><!----></div><!----></div><div _ngcontent-ng-c874076103 class="lphone__msgbar"><span _ngcontent-ng-c874076103 class="lphone__mgift"><svg _ngcontent-ng-c874076103="" viewBox="0 0 24 24" width="15" height="15" aria-hidden="true"><path _ngcontent-ng-c874076103="" fill="#fff" d="M7 7V6a5 5 0 0 1 10 0v1h3a1 1 0 0 1 1 1l-1.2 11a2 2 0 0 1-2 1.8H6.2a2 2 0 0 1-2-1.8L3 8a1 1 0 0 1 1-1h3Zm2 0h6V6a3 3 0 0 0-6 0v1Z"/></svg><em _ngcontent-ng-c874076103>3</em></span><span _ngcontent-ng-c874076103 class="lphone__minput">Écrire un message…</span><span _ngcontent-ng-c874076103 class="lphone__mic">✨</span><span _ngcontent-ng-c874076103 class="lphone__mic">➤</span><span _ngcontent-ng-c874076103 class="lphone__mheart">♥</span></div></div></div><img _ngcontent-ng-c874076103 src="assets/images/smartphone-mockup.png" alt aria-hidden="true" class="lphone__frame"><div _ngcontent-ng-c874076103 aria-hidden="true" class="lphone__fountain"><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span><span _ngcontent-ng-c874076103>♥</span></div></div></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 8px;"><div _ngcontent-ng-c874076103 class="streams reveal"><div _ngcontent-ng-c874076103 class="streams__head"><div _ngcontent-ng-c874076103><p _ngcontent-ng-c874076103 class="kicker"> Compatible </p><h3 _ngcontent-ng-c874076103 class="mode__t"> Compatible avec ton outil de stream préféré </h3><p _ngcontent-ng-c874076103 class="body streams__lede"> Tu utilises déjà OBS, Streamlabs ou Restream? Diffuse vers Hou.la sans rien changer à ton setup, une simple clé RTMPS ou WHIP suffit. </p></div>
83<a _ngcontent-ng-c874076103 routerlink="/help/restream" class="btn btn--ghost streams__cta" href="/help/restream"> Voir le guide → </a></div><div _ngcontent-ng-c874076103 aria-hidden="true" class="marquee"><div _ngcontent-ng-c874076103 class="marquee__track"><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->OBS Studio<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Streamlabs<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Restream<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->vMix<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->StreamYard<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Twitch Studio<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->XSplit<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Prism Live<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Castr<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Ecamm Live<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Wirecast<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->OneStream<!----><!----></span><!----><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->OBS Studio<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Streamlabs<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Restream<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->vMix<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->StreamYard<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Twitch Studio<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->XSplit<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Prism Live<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Castr<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Ecamm Live<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->Wirecast<!----><!----></span><span _ngcontent-ng-c874076103 class="soft soft--tool"><!---->OneStream<!----><!----></span><!----></div></div></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 8px;"><div _ngcontent-ng-c874076103 class="sec__head reveal" style="grid-column: 1 / -1;"><p _ngcontent-ng-c874076103 class="kicker">Outils broadcasteurs</p><h3 _ngcontent-ng-c874076103 class="mode__t">Pilote ton live sur grand écran, pas le nez sur ton téléphone.</h3></div></div><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▣</p><h3 _ngcontent-ng-c874076103 class="feat__t">Écran d'engagement déporté</h3><p _ngcontent-ng-c874076103 class="body">Commentaires lisibles de loin, cadeaux et animations en temps réel, nombre de spectateurs connectés, sur un second écran.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▣</p><h3 _ngcontent-ng-c874076103 class="feat__t">Écran KPI de ventes</h3><p _ngcontent-ng-c874076103 class="body">Chiffre d'affaires généré en direct, commandes, meilleures ventes et suivi des KPIs de ton live shopping, en un coup d'œil.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▣</p><h3 _ngcontent-ng-c874076103 class="feat__t">Latence quasi nulle</h3><p _ngcontent-ng-c874076103 class="body">WebRTC ultra-rapide : tes viewers te voient en temps réel, pas avec plusieurs secondes de décalage.</p></div></div></div></div></section><section _ngcontent-ng-c874076103 id="market" class="spread market"><div _ngcontent-ng-c874076103 class="glow glow--blue" style="top: 0; left: -120px;"></div><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">03 · Vendre sur Hou.la</p><h2 _ngcontent-ng-c874076103 class="shead">
83Pas de boutique ? On gère tout, de A à Z.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> Lance-toi dans le commerce sans rien d'autre que notre plateforme : catalogue, commandes, transporteurs, suivis, litiges. Tout le nécessaire pour vendre est inclus. </p></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;"><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">A.</p><h3 _ngcontent-ng-c874076103 class="feat__t">Vends sans boutique e-commerce</h3><p _ngcontent-ng-c874076103 class="body">Aucune boutique externe requise. Crée ton catalogue dans l'app et commence à vendre, même en partant de zéro.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">B.</p><h3 _ngcontent-ng-c874076103 class="feat__t">Live shopping &amp; replays shoppables</h3><p _ngcontent-ng-c874076103 class="body">Tes clients achètent pendant le live, sur un replay ou depuis ta boutique, en un tap, sans quitter l'app.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">C.</p><h3 _ngcontent-ng-c874076103 class="feat__t">Vends partout, à n'importe qui</h3><p _ngcontent-ng-c874076103 class="body">Aucune restriction géographique. Là où d'autres plateformes bloquent la vente en Belgique, dans les DOM-TOM ou au Canada, toi tu vends dans n'importe quel pays. Paiement immédiat sur ton compte Stripe, zéro rétention.</p></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 32px;"><div _ngcontent-ng-c874076103 class="flow reveal"><p _ngcontent-ng-c874076103 class="kicker" style="grid-column: 1 / -1; text-align: center;"> Écosystème connecté </p><div _ngcontent-ng-c874076103 class="flow__illu"><img _ngcontent-ng-c874076103 src="assets/images/e-commerce-connector.webp" loading="lazy" decoding="async" alt="Tout synchronisé, automatiquement."><svg _ngcontent-ng-c874076103="" viewBox="0 0 1000 611" preserveAspectRatio="none" aria-hidden="true" class="flow__svg"><defs _ngcontent-ng-c874076103=""><filter _ngcontent-ng-c874076103="" id="pglow" x="-60%" y="-60%" width="220%" height="220%"><feGaussianBlur _ngcontent-ng-c874076103="" stdDeviation="2.4" result="b"/><feMerge _ngcontent-ng-c874076103=""><feMergeNode _ngcontent-ng-c874076103="" in="b"/><feMergeNode _ngcontent-ng-c874076103="" in="SourceGraphic"/></feMerge></filter><path _ngcontent-ng-c874076103="" id="fp1" fill="none" d="M250,205 C360,215 385,255 465,292"/><path _ngcontent-ng-c874076103="" id="fp2" fill="none" d="M250,305 C350,305 385,305 455,305"/><path _ngcontent-ng-c874076103="" id="fp3" fill="none" d="M250,405 C360,395 385,358 465,318"/><path _ngcontent-ng-c874076103="" id="fp4" fill="none" d="M535,292 C620,255 645,215 750,205"/><path _ngcontent-ng-c874076103="" id="fp5" fill="none" d="M545,305 C650,305 685,305 760,305"/><path _ngcontent-ng-c874076103="" id="fp6" fill="none" d="M535,318 C620,358 645,395 750,405"/></defs><circle _ngcontent-ng-c874076103="" cx="500" cy="305" r="8" fill="none" stroke="#54a6f6" stroke-width="1.5"><animate _ngcontent-ng-c874076103="" attributeName="r" dur="3s" begin="0s" repeatCount="indefinite" values="8;46"/><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3s" begin="0s" repeatCount="indefinite" values="0.55;0"/></circle><circle _ngcontent-ng-c874076103="" cx="500" cy="305" r="8" fill="none" stroke="#7fd0ff" stroke-width="1.5"><animate _ngcontent-ng-c874076103="" attributeName="r" dur="3s" begin="1.5s" repeatCount="indefinite" values="8;46"/><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3s" begin="1.5s" repeatCount="indefinite" values="0.5;0"/></circle><circle _ngcontent-ng-c874076103="" cx="500" cy="305" r="4" fill="#cfe8ff" filter="url(#pglow)"><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="2.2s" repeatCount="indefinite" values="0.5;1;0.5"/></circle><g _ngcontent-ng-c874076103="" fill="#bfe0ff" filter="url(#pglow)"><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3.4s" begin="0s" repeatCount="indef
83inite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp1"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.4s" begin="0s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="3.9s" begin="1.7s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp1"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.9s" begin="1.7s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3s" begin="0.5s" repeatCount="indefinite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp2"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3s" begin="0.5s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="3.6s" begin="2.1s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp2"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.6s" begin="2.1s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3.5s" begin="1s" repeatCount="indefinite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp3"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.5s" begin="1s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="4s" begin="2.6s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp3"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="4s" begin="2.6s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3.3s" begin="0.3s" repeatCount="indefinite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp4"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.3s" begin="0.3s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="3.8s" begin="2s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp4"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.8s" begin="2s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3.1s" begin="0.8s" repeatCount="indefinite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp5"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.1s" begin="0.8s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="3.7s" begin="2.4s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp5"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.7s" begin="2.4s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="3.2"><animateMotion _ngcontent-ng-c874076103="" dur="3.6s" begin="1.3s" repeatCount="indef
83inite" keyPoints="0;1" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp6"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="3.6s" begin="1.3s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle><circle _ngcontent-ng-c874076103="" r="2.5" fill="#7fd0ff"><animateMotion _ngcontent-ng-c874076103="" dur="4.1s" begin="2.9s" repeatCount="indefinite" keyPoints="1;0" keyTimes="0;1" calcMode="linear"><mpath _ngcontent-ng-c874076103="" xlink:href="#fp6"/></animateMotion><animate _ngcontent-ng-c874076103="" attributeName="opacity" dur="4.1s" begin="2.9s" repeatCount="indefinite" values="0;1;1;0" keyTimes="0;0.12;0.88;1"/></circle></g></svg></div></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;"><div _ngcontent-ng-c874076103 class="conns reveal"><div _ngcontent-ng-c874076103 class="conns__txt"><p _ngcontent-ng-c874076103 class="mode__tag"> Déjà une boutique ? </p><h3 _ngcontent-ng-c874076103 class="mode__t"> Connecteurs Shopify &amp; WooCommerce </h3><p _ngcontent-ng-c874076103 class="body">Synchronise automatiquement tes <strong>produits et tes commandes</strong> entre ta boutique et Hou.la, en temps réel, dans les deux sens. Jamais de survente, aucune double saisie.</p><div _ngcontent-ng-c874076103 class="conns__logos"><img _ngcontent-ng-c874076103 src="assets/images/svg-brand/shopify.svg" alt="Shopify" height="26"><img _ngcontent-ng-c874076103 src="assets/images/svg-brand/woocommerce.svg" alt="WooCommerce" height="26"></div></div><div _ngcontent-ng-c874076103 class="conns__txt"><p _ngcontent-ng-c874076103 class="mode__tag"> Visibilité maximale </p><h3 _ngcontent-ng-c874076103 class="mode__t"> Tes produits aussi sur Google Shopping </h3><p _ngcontent-ng-c874076103 class="body">Chaque produit publié sur notre marketplace est <strong>automatiquement poussé sur Google Shopping</strong>. Tu captes des acheteurs partout sur le web, pas seulement sur l'app.</p><div _ngcontent-ng-c874076103 class="conns__logos"><span _ngcontent-ng-c874076103 class="soft">Marketplace Hou.la</span><span _ngcontent-ng-c874076103 class="soft">Google Shopping</span></div></div></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;"><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▸</p><h3 _ngcontent-ng-c874076103 class="feat__t">Frais de port négociés</h3><p _ngcontent-ng-c874076103 class="body">Profite des tarifs transporteurs négociés grâce au volume de la marketplace : des prix privilégiés pour tous les vendeurs, du débutant au pro.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▸</p><h3 _ngcontent-ng-c874076103 class="feat__t">Étiquettes imprimées à la volée</h3><p _ngcontent-ng-c874076103 class="body">Notre logiciel de bureau imprime automatiquement facture et étiquette transporteur dès qu'une commande est prête. Plus une étiquette produit à chaque vente en live. Zéro saisie, zéro erreur d'attribution.</p></div><div _ngcontent-ng-c874076103 class="feat reveal"><p _ngcontent-ng-c874076103 class="feat__n">▸</p><h3 _ngcontent-ng-c874076103 class="feat__t">Gestion complète incluse</h3><p _ngcontent-ng-c874076103 class="body">Catalogue, stocks, commandes, suivis d'expédition et litiges tranchés équitablement : on s'occupe de la technique, tu te concentres sur tes ventes.</p></div></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 8px;"><p _ngcontent-ng-c874076103 class="body reveal" style="grid-column: 1 / -1; color: var(--ink-muted);"> Commission unique 5 % · sans abonnement · frais Stripe au coût réel. </p></div></div></div></section><section _ngcontent-ng-c874076103 class="spread auth"><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="auth__block reveal"><p _ngcontent-ng-c874076103 class="kicker">
8304 · Notre parti pris</p><h2 _ngcontent-ng-c874076103 class="shead"> Aucun filtre par défaut. <span _ngcontent-ng-c874076103 class="accent">Ton choix.</span></h2><p _ngcontent-ng-c874076103 class="lede" style="max-width: 60ch; margin-top: 16px;"> On n'embellit personne sans le lui demander. Aucun filtre n'est appliqué par défaut, jamais: ni à ton visage, ni à celui de tes invités. Si tu as envie de maquillage ou d'un teint plus doux, les outils sont là: tu les actives, tu les règles, tu les coupes d'un geste. Ce qui te rend unique n'a pas besoin d'être retouché, c'est à toi de décider si tu veux jouer avec. </p></div></div></div></div></section><section _ngcontent-ng-c874076103 id="univers" class="spread"><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">05 · Pour chaque univers</p><h2 _ngcontent-ng-c874076103 class="shead">Quelle que soit ta thématique.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> On ne t'enferme pas dans une case. Chaque communauté a sa place et ses outils. </p></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;"><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">Gaming</h3><p _ngcontent-ng-c874076103 class="uni__d">Capture de jeu via OBS, latence ultra-faible, overlays et alertes. Du casual à l'esport.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">ASMR</h3><p _ngcontent-ng-c874076103 class="uni__d">Audio haute fidélité et live stable pour les formats les plus sensibles au son.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">Musique &amp; Danse</h3><p _ngcontent-ng-c874076103 class="uni__d">Bibliothèque musicale, référencement par titre et hashtag, lives interactifs.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">IRL &amp; Papote</h3><p _ngcontent-ng-c874076103 class="uni__d">Sondages, cadeaux, promos flash : garde ta communauté engagée en direct.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">Cuisine &amp; Lifestyle</h3><p _ngcontent-ng-c874076103 class="uni__d">Montre, explique, vends : du contenu au panier sans quitter le live.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">Mode &amp; Beauté</h3><p _ngcontent-ng-c874076103 class="uni__d">Replays shoppables, fiches produits et essayages en direct, au naturel.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">Vendeurs &amp; Marques</h3><p _ngcontent-ng-c874076103 class="uni__d">Connecteurs, écrans déportés, logistique automatisée et Google Shopping inclus.</p></div><div _ngcontent-ng-c874076103 class="uni reveal"><h3 _ngcontent-ng-c874076103 class="uni__t">… et le reste</h3><p _ngcontent-ng-c874076103 class="uni__d">Si tu as quelque chose à montrer, il y a un public pour toi sur Hou.la.</p></div></div></div></div></section><section _ngcontent-ng-c874076103 id="apps" class="spread apps"><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="sec__head reveal"><p _ngcontent-ng-c874076103 class="kicker">Outils</p><h2 _ngcontent-ng-c874076103 class="shead">Prolonge Hou.la sur ton bureau et ton site.</h2></div><p _ngcontent-ng-c874076103 class="lede sec__lede reveal"> Des outils gratuits pour aller plus loin : fais jouer ton public avec Hou.la Connect, imprime tes commandes, relie ta boutique WordPress ou Shopify. </p></div><div _ngcontent-ng-c874076103 class="band" style="margin-top: 24px;">
83<a _ngcontent-ng-c874076103 routerlink="/apps/houla-connect" class="appcard reveal" href="/apps/houla-connect"><span _ngcontent-ng-c874076103 class="appcard__os">Windows · macOS · Linux</span><h3 _ngcontent-ng-c874076103 class="appcard__t"> Hou.la Connect </h3><p _ngcontent-ng-c874076103 class="appcard__d"> L'app de bureau qui transforme les cadeaux, messages et follows de ton live en actions : jeu, OBS, overlays, lumières. Gratuite. </p><span _ngcontent-ng-c874076103 class="appcard__cta">Découvrir Hou.la Connect →</span></a><a _ngcontent-ng-c874076103 routerlink="/apps/houla-print" class="appcard reveal" href="/apps/houla-print"><span _ngcontent-ng-c874076103 class="appcard__os">Windows · macOS</span><h3 _ngcontent-ng-c874076103 class="appcard__t"> Hou.la Print </h3><p _ngcontent-ng-c874076103 class="appcard__d"> L'appli de bureau qui imprime automatiquement bons de livraison, factures et une étiquette par article à chaque commande. </p><span _ngcontent-ng-c874076103 class="appcard__cta">Découvrir Hou.la Print →</span></a><a _ngcontent-ng-c874076103 routerlink="/apps/wp-houla" class="appcard reveal" href="/apps/wp-houla"><span _ngcontent-ng-c874076103 class="appcard__os">WordPress</span><h3 _ngcontent-ng-c874076103 class="appcard__t"> Extension WordPress </h3><p _ngcontent-ng-c874076103 class="appcard__d"> Synchronise tes produits et tes commandes WooCommerce dans les deux sens avec la marketplace et le live shopping Hou.la. </p><span _ngcontent-ng-c874076103 class="appcard__cta">Découvrir l'extension →</span></a><a _ngcontent-ng-c874076103 routerlink="/apps/shopify" class="appcard reveal" href="/apps/shopify"><span _ngcontent-ng-c874076103 class="appcard__os">Shopify</span><h3 _ngcontent-ng-c874076103 class="appcard__t"> Connecteur Shopify </h3><p _ngcontent-ng-c874076103 class="appcard__d"> Synchronise tes produits Shopify avec la marketplace et le live shopping Hou.la ; les commandes Hou.la reviennent dans Shopify. </p><span _ngcontent-ng-c874076103 class="appcard__cta">Découvrir le connecteur →</span></a></div></div></div></section><section _ngcontent-ng-c874076103 class="spread discord"><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="discord__card reveal"><div _ngcontent-ng-c874076103 aria-hidden="true" class="discord__glow"></div><svg _ngcontent-ng-c874076103="" viewBox="0 0 24 24" aria-hidden="true" class="discord__logo"><path _ngcontent-ng-c874076103="" fill="currentColor" d="M20.317 4.3698a19.7913 19.7913 0 0 0-4.8851-1.5152.0741.0741 0 0 0-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 0 0-.0785-.037 19.7363 19.7363 0 0 0-4.8852 1.515.0699.0699 0 0 0-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 0 0 .0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 0 0 .0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 0 0-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 0 1-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 0 1 .0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 0 1 .0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 0 1-.0066.1276 12.2986 12.2986 0 0 1-1.873.8914.0766.0766 0 0 0-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 0 0 .0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 0 0 .0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 0 0-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg><p _ngcontent-ng-c874076103 class="kicker"> Communauté </p><h2 _ngcontent-ng-c874076103 class="discord__title"> On fait grandir Hou.la avec toi, sur Discord. </h2><p _ngcontent-ng-c874076103 class="lede discord__text"> Créateurs, vendeurs, joueurs, curieux : on échange chaque jour sur notre Discord. Pose tes questions, partage tes astuces, propose tes idées et parle en direct avec l'équipe. C'est aussi là qu'on dévoile les nouveautés et les accès anticipés en avant-première. </p><a _ngcontent-ng-c874076103 href="https://hou.la/discord" target="_blank" rel="noopener" class="discord__btn"><svg _ngcontent-ng-c874076103="" viewBox="0 0 24 24" aria-hidden="true"><path _ngcontent-ng-c874076103="" fill="currentColor" d="M20.317 4.3698a19.7913 19.7913 0 0 0-4.8851-1.5152.0741.0741 0 0 0-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 0 0-.0785-.037 19.7363 19.7363 
830 0 0-4.8852 1.515.0699.0699 0 0 0-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 0 0 .0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 0 0 .0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 0 0-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 0 1-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 0 1 .0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 0 1 .0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 0 1-.0066.1276 12.2986 12.2986 0 0 1-1.873.8914.0766.0766 0 0 0-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 0 0 .0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 0 0 .0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 0 0-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg> Rejoindre le Discord </a><p _ngcontent-ng-c874076103 class="discord__note"> Gratuit · ouvert à tous </p></div></div></div></div></section><section _ngcontent-ng-c874076103 class="spread cta"><div _ngcontent-ng-c874076103 class="glow glow--blue" style="bottom: -120px; right: 5%;"></div><div _ngcontent-ng-c874076103 class="wrap"><div _ngcontent-ng-c874076103 class="grid"><div _ngcontent-ng-c874076103 class="band"><h2 _ngcontent-ng-c874076103 class="masthead cta__head reveal"> Prêt à rejoindre l'aventure ? </h2></div><div _ngcontent-ng-c874076103 class="band"><p _ngcontent-ng-c874076103 class="lede cta__lede reveal" style="max-width: none;"> Un réseau social sans pub, sans shadowban et sans commission opaque. Créateurs, vendeurs, spectateurs : il y a de la place pour tout le monde. </p></div><div _ngcontent-ng-c874076103 class="band"><div _ngcontent-ng-c874076103 class="cta__actions reveal"><a _ngcontent-ng-c874076103 href="https://hou.la/play-store" target="_blank" rel="noopener" class="badge badge--play"><img _ngcontent-ng-c874076103 src="assets/images/google-play-badge-fr.png" alt="Google Play" height="48"></a><a _ngcontent-ng-c874076103 href="https://hou.la/app-store" target="_blank" rel="noopener" class="badge badge--ios"><img _ngcontent-ng-c874076103 src="assets/images/app-store-badge-fr.svg" alt="App Store" height="40"></a><a _ngcontent-ng-c874076103 routerlink="/studio" class="btn btn--ghost" href="/studio">Accéder au Studio →</a></div></div></div></div></section><app-widget-landing-footer _ngcontent-ng-c874076103 _nghost-ng-c756749664 ngh="11"><footer _ngcontent-ng-c756749664 class="foot"><div _ngcontent-ng-c756749664 class="foot__wrap"><div _ngcontent-ng-c756749664 class="foot__grid"><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">App mobile</p><a _ngcontent-ng-c756749664 routerlink="/" fragment="why" href="/#why">Pourquoi Hou.la</a><a _ngcontent-ng-c756749664 routerlink="/" fragment="feed" href="/#feed">Vidéos</a><a _ngcontent-ng-c756749664 routerlink="/" fragment="live" href="/#live">Live</a><a _ngcontent-ng-c756749664 routerlink="/" fragment="market" href="/#market">Vendre</a><a _ngcontent-ng-c756749664 routerlink="/" fragment="univers" href="/#univers">Univers</a></div><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">Marketing Tools</p><a _ngcontent-ng-c756749664 routerlink="/short-links" href="/short-links">Liens courts</a><a _ngcontent-ng-c756749664 routerlink="/qr-codes" href="/qr-codes">QR Codes</a><a _ngcontent-ng-c756749664 routerlink="/link-in-bio" href="/link-in-bio">Link in Bio</a><a _ngcontent-ng-c756749664 routerlink="/smart-routing" href="/smart-routing">Smart Routing</a><a _ngcontent-ng-c756749664 routerlink="/ab-testing" href="/ab-testing">A/B Testing</a><a _ngcontent-ng-c756749664 routerlink="/marketing" class="foot__more" href="/marketing">Tous les outils →</a></div><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">Écosystème</p><a _ngcontent-ng-c756749664 routerlink="/apps/wp-houla" href="/apps/wp-houla">WooCommerce</a><a _ngcontent-ng-c756749664 routerlink="/apps/shopify" href="/apps/shopify">Shopify</a><a _ngcontent-ng-c756749664 routerlink="/guides/shopify-headless" href="/guides/shopify-headless">Guide Shopify</a><a _ngcontent-ng-c756749664 routerlink="/apps/houla-print" href="/apps/houla-print">Hou.la Print</a><a _ngcontent-ng-c756749664 routerlink="/apps/houla-connect" href="/apps/houla-connect">Hou.la Connect</a><a _ngcontent-ng-c756749664 routerlink="/guides/social-stream" href="/guides/social-stream">Social Stream Ninja</a><a _ngcontent-ng-c756749664 routerlink="/api-documentation" href="/api-documentation">API &amp; Développeurs</a><a _ngcontent-ng-c756749664 routerlink="/oauth-api" href="/oauth-api">Se connecter avec Hou.la</a></div><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">Créateurs &amp; Devs</p><a _ngcontent-ng-c756749664 routerlink="/apps/houla-connect" href="/apps/houla-connect">Lives interactifs</a><a _ngcontent-ng-c756749664 href="https://github.com/Hou-la/houla-live-connector/releases" target="_blank" rel="noopener">Connecteur (GitHub)</a><a _ngcontent-ng-c756749664 routerlink="/apps/houla-connect/developpeurs" href="/apps/houla-connect/developpeurs">Créer un pack</a><a _ngcontent-ng-c756749664 href="https://www.npmjs.com/package/@houla/live-connector" target="_blank" rel="noopener">SDK</a><a _ngcontent-ng-c756749664 routerlink="/agences" href="/agences">Agences</a></div><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">Hou.la</p><a _ngcontent-ng-c756749664 routerlink="/about" href="/about">À propos</a><a _ngcontent-ng-c756749664 routerlink="/recrutement" href="/recrutement">Recrutement</a><a _ngcontent-ng-c756749664 routerlink="/faq" href="/faq">FAQ</a><a _ngcontent-ng-c756749664 routerlink="/support" href="/support">Support</a><a _ngcontent-ng-c756749664 routerlink="/brand" href="/brand">Brand kit</a></div><div _ngcontent-ng-c756749664 class="foot__col"><p _ngcontent-ng-c756749664 class="foot__h">Légal</p><a _ngcontent-ng-c756749664 routerlink="/legal-notice" href="/legal-notice">Mentions légales</a><a _ngcontent-ng-c756749664 routerlink="/privacy" href="/privacy">Confidentialité</a><a _ngcontent-ng-c756749664 routerlink="/terms-of-use" href="/terms-of-use">CGU</a><a _ngcontent-ng-c756749664 routerlink="/terms-of-sale" href="/terms-of-sale">CGV</a><a _ngcontent-ng-c756749664 routerlink="/cookies" href="/cookies">Cookies</a></div></div><div _ngcontent-ng-c756749664 class="foot__base"><span _ngcontent-ng-c756749664>© 2026 Hou.la · Vidéo. Live. Shopping.</span><div _ngcontent-ng-c756749664 class="foot__social">
83<a _ngcontent-ng-c756749664 href="https://www.linkedin.com/company/hou-la" target="_blank" rel="noopener" aria-label="LinkedIn" title="LinkedIn"><svg _ngcontent-ng-c756749664="" viewBox="0 0 24 24" aria-hidden="true" fill="currentColor"><path _ngcontent-ng-c756749664="" d="M20.45 20.45h-3.56v-5.57c0-1.33-.03-3.04-1.85-3.04-1.85 0-2.14 1.45-2.14 2.94v5.67H9.35V9h3.41v1.56h.05c.48-.9 1.63-1.85 3.36-1.85 3.6 0 4.27 2.37 4.27 5.45v6.29zM5.34 7.43a2.07 2.07 0 1 1 0-4.14 2.07 2.07 0 0 1 0 4.14zM7.12 20.45H3.56V9h3.56v11.45zM22.22 0H1.77C.79 0 0 .77 0 1.72v20.56C0 23.23.79 24 1.77 24h20.45c.98 0 1.78-.77 1.78-1.72V1.72C24 .77 23.2 0 22.22 0z"/></svg></a><a _ngcontent-ng-c756749664 routerlink="/discord" aria-label="Discord" title="Discord" href="/discord"><svg _ngcontent-ng-c756749664="" viewBox="0 0 24 24" aria-hidden="true" fill="currentColor"><path _ngcontent-ng-c756749664="" d="M20.32 4.37A19.79 19.79 0 0 0 15.45 2.9a.07.07 0 0 0-.08.04c-.21.38-.44.87-.6 1.25a18.27 18.27 0 0 0-5.5 0c-.16-.39-.4-.87-.62-1.25a.08.08 0 0 0-.08-.04c-1.7.29-3.32.8-4.87 1.47a.07.07 0 0 0-.03.03C.53 9.05-.32 13.58.1 18.06a.08.08 0 0 0 .03.05 19.9 19.9 0 0 0 5.99 3.03.08.08 0 0 0 .08-.03c.46-.63.87-1.29 1.22-1.99a.08.08 0 0 0-.04-.11c-.65-.25-1.27-.55-1.87-.89a.08.08 0 0 1-.01-.13c.13-.09.25-.19.37-.29a.07.07 0 0 1 .08-.01c3.93 1.79 8.18 1.79 12.06 0a.07.07 0 0 1 .08.01c.12.1.24.2.37.29a.08.08 0 0 1-.01.13c-.6.35-1.22.64-1.87.89a.08.08 0 0 0-.04.11c.36.7.77 1.36 1.22 1.99a.08.08 0 0 0 .08.03 19.84 19.84 0 0 0 6-3.03.08.08 0 0 0 .03-.05c.5-5.18-.84-9.67-3.55-13.66a.06.06 0 0 0-.03-.03zM8.02 15.33c-1.18 0-2.16-1.08-2.16-2.42 0-1.33.95-2.42 2.16-2.42 1.21 0 2.18 1.1 2.16 2.42 0 1.34-.95 2.42-2.16 2.42zm7.97 0c-1.18 0-2.16-1.08-2.16-2.42 0-1.33.96-2.42 2.16-2.42 1.22 0 2.18 1.1 2.16 2.42 0 1.34-.94 2.42-2.16 2.42z"/></svg></a></div></div></div></footer></app-widget-landing-footer></div></app-view-landing><!----></div></app-root>
84    <link rel="modulepreload" href="chunk-WSNBWVQT.js"><link rel="modulepreload" href="chunk-2PXMVGFY.js"><link rel="modulepreload" href="chunk-MUUVZFYQ.js"><link rel="modulepreload" href="chunk-EIK7DVHS.js"><link rel="modulepreload" href="chunk-NWGSPYFI.js"><link rel="modulepreload" href="chunk-2NO5AS5G.js"><link rel="modulepreload" href="chunk-LSBWT47P.js"><link rel="modulepreload" href="chunk-56MAI5IH.js"><link rel="modulepreload" href="chunk-JUAHV2TC.js"><link rel="modulepreload" href="chunk-RMFEZUNF.js">
84<script src="polyfills-B6TNHZQ6.js" type="module"></script>
84<script src="main-VPAGC4WO.js" type="module"></script>
84
85<link rel="modulepreload" href="chunk-ULZYF4JK.js">
86<link rel="modulepreload" href="chunk-NUHB5YIJ.js">
87
88
89<script id="ng-state" type="application/json">{"i18n-fr":{"HOME":{"HERO_TITLE_HOULA":"Houla !","HERO_TITLE_PART1":"Vos outils","HERO_TITLE_PART2":"marketing,","HERO_TITLE_PART3":"gratuits","HERO_SUBTITLE_1":"En complément de l'app, générez vos","HERO_SUBTITLE_URLS":"liens courts, QR codes et Link in Bio","HERO_SUBTITLE_2":"avec un suivi des statistiques en temps réel.","ENGAGEMENT_QUESTION":"Est-ce que mes liens et QR Codes génèrent de l'engagement ?","ENGAGEMENT_ANSWER_1":"En créant votre compte","ENGAGEMENT_ANSWER_FREE":"gratuitement","ENGAGEMENT_ANSWER_2":"vous pourrez le découvrir grâce au","ENGAGEMENT_ANSWER_REALTIME":"suivi en temps réel","LINKINBIO_BADGE":"Nouveau","LINKINBIO_TITLE":"Link in Bio","LINKINBIO_SUBTITLE":"Une seule page pour tous vos liens","LINKINBIO_DESC":"Regroupez votre portfolio, réseaux sociaux, liens affiliés et contenus sponsorisés sur une page personnalisée. Idéal pour les créateurs de contenu, influenceurs, entrepreneurs et vous !","LINKINBIO_BENEFIT_URL":"URL personnalisée","LINKINBIO_BENEFIT_URL_EXAMPLE":"hou.la/@pseudo/bio","LINKINBIO_BENEFIT_THEMES":"Thèmes personnalisables","LINKINBIO_BENEFIT_STATS":"Statistiques de clics par lien","LINBIO_BENEFIT_SPONSORED":"Parfait pour les liens sponsorisés","LINKINBIO_CTA":"Créer ma page Link in Bio","LINKINBIO_LEARN_MORE":"Découvrir la fonctionnalité","LINKINBIO_MOCK_NAME":"Marie Dupont","LINKINBIO_MOCK_BIO":"Créatrice de contenu","LINKINBIO_MOCK_LINK_1":"Mon Portfolio","LINKINBIO_MOCK_LINK_2":"Réserver un appel","LINKINBIO_MOCK_LINK_3":"Ma newsletter","SHOP_BADGE":"Exclusivité Hou.la","SHOP_TITLE":"Shop in Bio","SHOP_SUBTITLE":"Votre boutique intégrée à votre page","SHOP_DESC":"Transformez votre page Link in Bio en véritable boutique en ligne. Vendez vos produits physiques, numériques ou services directement depuis votre profil. Paiement Stripe intégré, gestion des commandes, livraison et avis clients: tout en un seul endroit.","SHOP_BENEFIT_PRODUCTS":"Produits physiques, numériques et services","SHOP_BENEFIT_PAYMENT":"Paiement Stripe sécurisé intégré","SHOP_BENEFIT_SHIPPING":"Livraison automatisée par zones et poids","SHOP_BENEFIT_REVIEWS":"Avis clients vérifiés et gestion des retours","SHOP_BENEFIT_PROMO":"Codes promo, réductions et livraison offerte","SHOP_BENEFIT_ANALYTICS":"Analytics temps réel : vues, paniers, conversions","SHOP_BENEFIT_OPEN_CART":"Panier ouvert: ajoutez des articles après paiement","SHOP_BENEFIT_COLLECTIONS":"Collections et produits à la une","SHOP_BENEFIT_DISPUTES":"Protection acheteur et gestion des litiges","SHOP_BENEFIT_SYNC":"Sync WooCommerce, Shopify, PrestaShop","SHOP_BENEFIT_INVOICING":"Facturation automatique","SHOP_CTA":"Ouvrir ma boutique gratuitement","SHOP_LEARN_MORE":"Découvrir Shop in Bio","SHOP_MOCK_PRODUCT_1":"T-shirt édition limitée","SHOP_MOCK_PRODUCT_2":"Preset photo","SHOP_MOCK_PRODUCT_3":"Coaching 1h","SHOP_MOCK_PRICE_1":"29,90 €","SHOP_MOCK_PRICE_2":"14,90 €","SHOP_MOCK_PRICE_3":"79,00 €","SHOP_MOCK_PRODUCT_4":"Casquette brodée","SHOP_MOCK_PRICE_4":"19,90 €","SHOP_MOCK_ORIGINAL_PRICE_1":"39,90 €","SHOP_MOCK_STORE_NAME":"Marie's Look","SHOP_MOCK_HANDLE":"@marieslook","SHOP_MOCK_TAB_CONTENT":"Liens","SHOP_MOCK_TAB_SHOP":"Boutique","SHOP_MOCK_COLL_ALL":"Tout","SHOP_MOCK_COLL_1":"Vêtements","SHOP_MOCK_COLL_2":"Accessoires","SHOP_MOCK_CART_TEXT":"Panier","SHOP_USECASE_TITLE":"Pensé pour votre façon de vendre","SHOP_USECASE_LEAD":"Mode, food, coaching, billetterie, digital, artisanat, beauté, art, événementiel... Shop in Bio s'adapte à votre façon de vendre.","SHOP_USECASE_TAG_1":"Mode","SHOP_USECASE_TAG_2":"Food","SHOP_USECASE_TAG_3":"Coaching","SHOP_USECASE_TAG_4":"Billetterie","SHOP_USECASE_TAG_5":"Digital","SHOP_USECASE_TAG_6":"Artisanat","SHOP_USECASE_TAG_7":"Beauté","SHOP_USECASE_TAG_8":"Art","SHOP_USECASE_TAG_9":"Événementiel","SHOP_USECASE_TAG_10":"Créateurs","SHOP_USECASE_TAG_11":"Services","SHOP_USECASE_TAG_12":"Produits physiques","SECURITY_BADGE":"Sécurité","SECURITY_TITLE":"Protection intelligente de vos liens","SECURITY_DESC":"Notre système analyse automatiquement chaque lien pour détecter les sites frauduleux, le phishing et les pages inaccessibles. Protégez vos visiteurs et votre réputation.","SECURITY_FEATURE_ANALYSIS_TITLE":"Analyse automatique","SECURITY_FEATURE_ANALYSIS_DESC":"Vérification instantanée de chaque URL","SECURITY_FEATURE_ANTI_SCAM_TITLE":"Anti-arnaque","SECURITY_FEATURE_ANTI_SCAM_DESC":"Blocage des sites de phishing et scams","SECURITY_FEATURE_DEAD_LINKS_TITLE":"Détection liens morts","SECURITY_FEATURE_DEAD_LINKS_DESC":"Alerte si votre destination devient inaccessible","SECURITY_FEATURE_TRUST_TITLE":"Confiance garantie","SECURITY_FEATURE_TRUST_DESC":"Vos liens inspirent confiance","BETA_BADGE":"PROGRAMME BÊTA","BETA_TITLE":"Devenez bêta-testeur et testez Hou.la en avant-première","BETA_DESC":"Aidez-nous à améliorer Hou.la en testant les nouvelles fonctionnalités en avant-première. En échange, un badge exclusif et un accès anticipé aux nouveautés.","BETA_PERK_1":"Accès anticipé à toutes les n
89ouvelles fonctionnalités","BETA_PERK_2":"Badge bêta-testeur exclusif sur votre profil","BETA_PERK_3":"Votre avis compte : influencez directement le produit","BETA_CTA":"Rejoindre le programme bêta","BETA_SUB":"Places limitées · Inscription gratuite","PROGRAMS_BADGE":"NOS PROGRAMMES","PROGRAMS_TITLE":"Rejoignez l'aventure Hou.la","PROGRAMS_SUBTITLE":"Que vous soyez testeur, créateur de contenu ou développeur, il y a une place pour vous dans notre communauté.","PROGRAMS_BETA_TAG":"BÊTA-TESTEUR","PROGRAMS_BETA_TITLE":"Testez en avant-première","PROGRAMS_BETA_DESC":"Accédez aux nouvelles fonctionnalités avant tout le monde et aidez-nous à façonner le produit.","PROGRAMS_BETA_HIGHLIGHT":"Badge bêta-testeur + accès anticipé","PROGRAMS_BETA_CTA":"Devenir bêta-testeur","PROGRAMS_AMBASSADOR_TAG":"AMBASSADEUR","PROGRAMS_AMBASSADOR_TITLE":"Parlez de nous","PROGRAMS_AMBASSADOR_DESC":"Créez du contenu sur Hou.la et devenez Ambassadeur officiel : badge vérifié et mise en avant.","PROGRAMS_AMBASSADOR_HIGHLIGHT":"Badge Ambassadeur + mise en avant","PROGRAMS_AMBASSADOR_CTA":"Devenir ambassadeur","PROGRAMS_RECRUIT_TAG":"RECRUTEMENT","PROGRAMS_RECRUIT_TITLE":"Construisez avec nous","PROGRAMS_RECRUIT_DESC":"Nous recherchons des talents passionnés pour faire grandir la plateforme.","PROGRAMS_RECRUIT_POS_1":"Développeur Fullstack","PROGRAMS_RECRUIT_POS_2":"Développeur Mobile","PROGRAMS_RECRUIT_POS_3":"+ 5 autres postes","PROGRAMS_RECRUIT_CTA":"Voir les postes","BANNER_TEXT":"Lancement - Toutes les fonctionnalites Pro sont GRATUITES pendant la periode de lancement !","BANNER_CTA":"En profiter","BANNER_BADGE":"OFFRE","SOCIAL_PROOF_TITLE":"Ils ont déjà leur page Link in Bio","SOCIAL_PROOF_SUBTITLE":"Découvrez les profils créés par notre communauté de créateurs, marques et entrepreneurs.","SOCIAL_PROOF_CTA":"Explorer tous les profils","BETA_PLAN_PRO":"Pro","BETA_PLAN_PERIOD_YEAR":"/an","BETA_PLAN_OFFER":"Offre de lancement","BETA_PLAN_FEATURE_1":"Liens et QR codes illimités","BETA_PLAN_FEATURE_2":"Page link-in-bio personnalisable","BETA_PLAN_FEATURE_3":"Boutique et paiements intégrés","BETA_PLAN_FEATURE_4":"Statistiques avancées","BETA_PLAN_FEATURE_5":"Lives et cadeaux","BETA_PLAN_FEATURE_6":"Support prioritaire","LINKINBIO_MOCK_BRAND":"@ta.marque","SHOP_MOCK_AVATAR":"Boutique","SHOP_MOCK_NEW_BADGE":"Nouveau","SHOP_MOCK_BRAND":"Ta boutique"},"FOMO":{"ACTION_LINK":"vient de créer un lien court","ACTION_BIO":"vient de créer sa page Link in Bio","ACTION_QRCODE":"vient de générer un QR Code","ACTION_SIGNUP":"vient de rejoindre Hou.la"},"HEADER":{"NAV_FEATURES":"Fonctionnalités","NAV_LINKINBIO":"Link in Bio","NAV_SECURITY":"Sécurité","NAV_ECO":"Éco-responsable","NAV_PRICING":"Tarifs","LOGIN_TOOLTIP":"Se connecter","MOBILE_NAV_EPHEMERAL":"Liens éphémères","NAV_SHOP_IN_BIO":"Shop in Bio"},"FOOTER":{"TAGLINE":"L'outil préféré des créateurs de contenus","STAT_CLICKS_LABEL":"Clics par jour","STAT_LINKS_LABEL":"Liens créés","STAT_USERS_LABEL":"Utilisateurs","HEADING_FEATURES":"Fonctionnalités","HEADING_ESSENTIALS":"Essentiels","HEADING_MARKETING":"Marketing","HEADING_CONTROL":"Sécurité & Contrôle","DESCRIPTION":"Raccourcisseur d'URL gratuit avec statistiques, QR codes, Smart Routing et bien plus.","FEATURE_SHORT_LINKS":"Liens courts","FEATURE_EPHEMERAL":"Liens éphémères","FEATURE_UTM":"Campagnes UTM","FEATURE_QRCODES":"QR Codes","FEATURE_STATS":"Statistiques","FEATURE_LINKINBIO":"Link in Bio","FEATURE_SMART_ROUTING":"Smart Routing","FEATURE_AB_TESTING":"A/B Testing","FEATURE_PROTECTED_LINKS":"Liens protégés","FEATURE_WEBHOOKS":"Webhooks","HEADING_DEFINITIONS":"Définitions","DEF_SHORT_LINKS":"Les liens courts","DEF_EPHEMERAL":"Les liens éphémères","DEF_UTM":"Les variables UTM","DEF_QRCODES":"Les QR Codes","DEF_LINKINBIO":"Le Link in Bio","DEF_SMART_ROUTING":"Le Smart Routing","DEF_SECURE_LINKS":"Les liens sécurisés","DEF_AB_TESTING":"L'A/B Testing","DEF_WEBHOOKS":"Les Webhooks","HEADING_HOULA":"Hou.la","LINK_ABOUT":"À propos","LINK_PRICING":"Tarifs","LINK_FAQ":"FAQ","LINK_CHANGELOG":"Changelog","LINK_SUPPORT":"Support","LINK_ASSOCIATIONS":"Associations","LINK_API":"API","LINK_CHROME_EXT":"Extension Chrome","LINK_EXPLORER":"Explorer les profils","LINK_CAREERS":"Recrutement","LINK_BETA_TESTER":"Devenir bêta-testeur","LINK_AMBASSADOR":"Devenir ambassadeur","HEADING_DEVELOPERS":"Développeurs","LINK_API_DOC":"Documentation API","LINK_SDK":"SDK TypeScript","LINK_OAUTH":"OAuth API","HEADING_COMPARE":"Comparer","HEADING_LEGAL":"Légal","LINK_LEGAL_NOTICES":"Mentions légales","LINK_PRIVACY":"Vie privée","LINK_TOS":"CGU","LINK_CGV":"CGV","COPYRIGHT":"©hou.la","FEATURE_RETARGETING":"Pixels de retargeting","FEATURE_LINK_EXPIRATION":"Expiration programmée","FEATURE_ANTIMALWARE":"Anti-malware","FEATURE_DEAD_LINKS":"Détection liens morts","FEATURE_OG_PREVIEW":"OG Social Previews","DEF_RETARGETING":"Pixels de retargeting","DEF_LINK_EXPIRATION":"Expiration programmée","DEF_ANTIMALWARE":"Protection anti-malware","DEF_DEAD_LINKS":"Les liens morts","DEF_OG_PREVIEW":"Les OG Previews","FEATURE_CLICK_LIMIT":"Limite de clics","DEF_CLICK_LIMIT":"Limite de clics","FEATURE_TAGS":"Tags & Organisation","DEF_TAGS":"Organiser ses liens","FEATURE_CLOAKING":"Link Cloaking","DEF_CLOAKING":"Le Link Cloaking","FEATURE_DEEP_LINKS":"Deep Links Mobile","DEF_DEEP_LINKS":"Les Deep Links Mobile","FEATURE_WORKSPACES":"Workspaces & Équipes","DEF_WORKSPACES":"Les Workspaces collaboratifs","FEATURE_OAUTH":"OAuth & Authentification","DEF_OAUTH":"OAuth 2.0 & PKCE","FEATURE_PAY_LINKS":"Pay Links","FEATURE_SHOP_IN_BIO":"Shop in Bio","FEATURE_AUTO_PRINT":"Impression automatique","FEATURE_LIVE":"Houla Live","DEF_PAY_LINKS":"Les Pay Links","DEF_SHOP_IN_BIO":"Le Shop in Bio","DEF_AUTO_PRINT":"L'impression automatique","FEATURE_IMPORT_BITLY":"Import Bitly"},"AUTH":{"LOGIN":{"TITLE":"Connexion","SUBTITLE":"Accédez à votre espace de gestion","
89LABEL_EMAIL":"Email","LABEL_PASSWORD":"Mot de passe","ERROR_EMAIL_REQUIRED":"Votre email est requis","ERROR_EMAIL_INVALID":"Veuillez vérifier votre email","ERROR_PASSWORD_REQUIRED":"Votre mot de passe est requis","ERROR_CREDENTIALS":"Veuillez vérifier vos identifiants.","ERROR_NO_ACCOUNT_HINT":"Vous n'avez pas encore de compte ?","ERROR_CREATE_ACCOUNT":"Créer un compte avec ces identifiants","SUBMIT":"Se connecter","DIVIDER_OR":"ou","GOOGLE_SIGNIN":"Se connecter avec Google","FORGOT_PASSWORD":"Mot de passe oublié ?","NO_ACCOUNT":"Pas encore de compte ?","CREATE_ACCOUNT":"Créer compte gratuitement","TWO_FACTOR_TITLE":"Vérification en deux étapes","TWO_FACTOR_SUBTITLE":"Entrez le code généré par votre application d'authentification","TWO_FACTOR_LABEL":"Code de vérification","TWO_FACTOR_BACKUP_HINT":"Vous pouvez aussi utiliser un code de secours au format XXXX-XXXX","TWO_FACTOR_SUBMIT":"Vérifier","TWO_FACTOR_BACK":"Retour à la connexion","TWO_FACTOR_USE_BACKUP":"Utiliser un code de secours","TWO_FACTOR_USE_APP":"Utiliser l'application d'authentification","TWO_FACTOR_BACKUP_LABEL":"Code de secours"},"REGISTER":{"TITLE":"Créer un compte","SUBTITLE":"Commencez gratuitement en quelques secondes","LABEL_EMAIL":"Email","LABEL_PASSWORD":"Mot de passe","ERROR_EMAIL_REQUIRED":"Votre email est requis","ERROR_EMAIL_INVALID":"Veuillez vérifier votre email","ERROR_PASSWORD_REQUIRED":"Votre mot de passe est requis","SUBMIT":"Créer mon compte","DIVIDER_OR":"ou","GOOGLE_SIGNUP":"S'inscrire avec Google","ALREADY_ACCOUNT":"Déjà un compte ?","LOGIN":"Se connecter"},"REGISTER_CHECK":{"TITLE":"Vérification","SUBTITLE":"Confirmez votre adresse email","DESCRIPTION_1":"Vous allez recevoir un code par email.","DESCRIPTION_2":"Veuillez saisir le code de vérification :","ERROR_CODE_REQUIRED":"Le code est requis","ERROR_CODE_LENGTH":"Le code doit être de 6 chiffres","ERROR_CODE_PATTERN":"Veuillez vérifier le code","SUBMIT":"Activer mon compte","NO_EMAIL":"Vous n'avez pas reçu le code ?","RESEND":"Renvoyer le code","RESEND_WAIT":"Renvoyer dans","RESEND_SUCCESS":"Un nouveau code a été envoyé à votre adresse email.","RESEND_ERROR":"Impossible d'envoyer le code. Veuillez réessayer.","ALREADY_ACCOUNT":"Déjà un compte ?","LOGIN":"Se connecter","SPAM_HINT":"Pense à regarder dans tes spams et ton onglet Promotions."},"FORGOT_PASSWORD":{"TITLE":"Mot de passe oublié","SUBTITLE":"Réinitialisez votre mot de passe","LABEL_EMAIL":"Email","LABEL_PASSWORD":"Nouveau mot de passe","ERROR_EMAIL_REQUIRED":"Votre email est requis","ERROR_EMAIL_INVALID":"Veuillez vérifier votre email","ERROR_PASSWORD_REQUIRED":"Votre mot de passe est requis","SUBMIT":"Modifier mon mot de passe","CANCEL":"Annuler ?","LOGIN":"Se connecter"},"FORGOT_PASSWORD_CHECK":{"TITLE":"Confirmation","SUBTITLE":"Vérifiez votre identité","DESCRIPTION_1":"Pour confirmer le changement de mot de passe,","DESCRIPTION_2":"vous allez recevoir un code par email.","DESCRIPTION_3":"Veuillez saisir le code de vérification :","ERROR_CODE_REQUIRED":"Le code est requis","ERROR_CODE_LENGTH":"Le code doit être de 6 chiffres","ERROR_CODE_PATTERN":"Veuillez vérifier le code","SUBMIT":"Confirmer le changement","ALREADY_ACCOUNT":"Déjà un compte ?","LOGIN":"Se connecter"},"CALLBACK":{"LOADING":"Connexion en cours...","BACK_TO_LOGIN":"Retour à la connexion"},"REFERRAL":{"TITLE":"Code de parrainage","SUBTITLE":"Tu as un code parrain ? Saisis-le pour être parrainé.","CODE_LABEL":"Code parrain","CODE_PLACEHOLDER":"Ex : AB12CD34","SUBMIT":"Appliquer le code","SKIP":"Passer cette étape","SUCCESS":"Code parrain appliqué avec succès !","REDIRECTING":"Redirection en cours...","ERROR":"Code parrain invalide. Vérifie-le et réessaie.","ACCOUNT_MANAGER_BLOCKED":"Le parrainage n’est pas ouvert aux account managers de Hou.la : ton accompagnement des créateurs est rémunéré par ta prime.","ERRORS":{"REFERRAL_SELF_NOT_ALLOWED":"Tu ne peux pas utiliser ton propre code parrain.","REFERRAL_PERSONAL_WORKSPACE_ONLY":"Le parrainage n’est possible que sur ton espace personnel.","REFERRAL_ALREADY_APPLIED":"Un code parrain a déjà été appliqué à ce compte.","REFERRAL_ALREADY_APPLIED_ON_ACCOUNT":"Tu as déjà utilisé un code parrain sur un autre de tes espaces.","REFERRAL_WINDOW_EXPIRED":"Le délai pour saisir un code parrain après l’inscription est dépassé.","REFERRAL_SUSPICIOUS_NETWORK":"Ce parrainage n’a pas pu être validé.","REFERRAL_FORBIDDEN_ACCOUNT_MANAGER":"Ce code appartient à un membre de l’équipe Hou.la et ne peut pas servir de code parrain.","UNKNOWN":"Le co
89de n’a pas pu être appliqué pour le moment. Réessaie dans un instant."}},"VERIFY_LINK":{"TITLE":"Validation en cours","IN_PROGRESS":"On confirme ton adresse email, un instant...","SUCCESS_TITLE":"Compte activé","SUCCESS_TEXT":"Ton adresse email est confirmée. Bienvenue sur hou.la !","FAILED_TITLE":"Ce lien n’est plus valable","FAILED_TEXT":"Le lien a expiré ou un code plus récent a été envoyé depuis. Saisis le code reçu par email pour activer ton compte.","ENTER_CODE":"Saisir mon code"},"ADD_ACCOUNT":"Ajouter un compte","MANAGE_ACCOUNTS":"Gérer les comptes","ACCOUNT_LIMIT_REACHED":"3 comptes maximum dans ce navigateur","ADD_ACCOUNT_TITLE":"Ajouter un compte","ADD_ACCOUNT_SUBTITLE":"Reste connecté ici et ajoute un autre compte","SWITCH_FAILED":"Impossible de changer de compte. Reconnecte-toi.","ACCOUNTS":"Comptes","SWITCH_FAILED_RECONNECT":"Impossible de changer de compte : la session de {{email}} a expiré sur cet appareil. Ton compte et ses espaces sont conservés. Se reconnecter maintenant ?","ACCOUNT_NEEDS_REAUTH":"à reconnecter"},"LINK_GENERATOR":{"LABEL_URL_CREATE":"Lien à réduire","LABEL_URL_CREATE_SMART":"URL de destination par défaut","LABEL_URL_EDIT":"Destination","LABEL_URL_EDIT_SMART":"URL de destination par défaut","PLACEHOLDER_URL":"https://cette-url-beaucoup.trop/longue-que-je?souhaite=reduire&grace-a=hou.la","ERROR_URL_REQUIRED":"Le lien ne peut être vide","ERROR_URL_MIN_LENGTH":"Le lien ne peut être aussi court","ERROR_URL_INVALID":"Le lien semble mal formaté","TOGGLE_EPHEMERAL":"Lien éphémère","TOOLTIP_EPHEMERAL":"Un lien éphémère expire automatiquement après la durée choisie. La clé sera recyclée pour réutilisation.","LEARN_MORE":"En savoir +","EPHEMERAL_LABEL":"Expire dans","EPHEMERAL_1H":"1 heure","EPHEMERAL_6H":"6 heures","EPHEMERAL_12H":"12 heures","EPHEMERAL_24H":"24 heures","EPHEMERAL_48H":"48 heures","EXPIRATION_MODE_DURATION":"Durée prédéfinie","EXPIRATION_MODE_CUSTOM":"Date personnalisée","EXPIRATION_CUSTOM_LABEL":"Expire le","EXPIRATION_CUSTOM_PLACEHOLDER":"Choisir une date et heure","TOGGLE_UTM":"Paramètres UTM","TOOLTIP_UTM":"Ajoutez des paramètres de tracking (source, medium, campaign) pour suivre l'origine du trafic dans Google Analytics.","UTM_ID":"ID","UTM_SOURCE":"Source","UTM_MEDIUM":"Medium","UTM_CAMPAIGN":"Campagne","UTM_TERM":"Terme","UTM_CONTENT":"Contenu","TOGGLE_SMART_ROUTING":"Routage intelligent","TOOLTIP_SMART_ROUTING":"Redirigez les visiteurs vers différentes destinations selon leur pays, appareil, langue ou comportement.","TOGGLE_PASSWORD":"Protéger par mot de passe","TOOLTIP_PASSWORD":"Les visiteurs devront saisir un mot de passe avant d'être redirigés vers la destination.","PASSWORD_PLACEHOLDER":"Saisissez un mot de passe","ERROR_PASSWORD_REQUIRED":"Le mot de passe est requis quand la protection est activée","TOGGLE_CLICK_LIMIT":"Limite de clics","TOOLTIP_CLICK_LIMIT":"Définissez un nombre maximum de clics autorisés. Une fois la limite atteinte, le lien expire automatiquement.","CLICK_LIMIT_PLACEHOLDER":"Nombre de clics max","ERROR_CLICK_LIMIT_REQUIRED":"La limite de clics est requise quand l'option est activée","TOGGLE_CLOAKING":"Link Cloaking","TOOLTIP_CLOAKING":"Masque l'URL de destination dans la barre d'adresse. Le visiteur voit l'URL courte pendant toute sa navigation.","CLOAKING_TEST_BTN":"Tester la compatibilité","CLOAKING_COMPATIBLE":"Ce site est compatible avec le Link Cloaking.","CLOAKING_INCOMPATIBLE":"Ce site bloque l'affichage en iframe. Le cloaking ne fonctionnera pas pour ","CLOAKING_REASON":"Raison :","TOGGLE_DEEP_LINK":"Deep Links Mobile","TOOLTIP_DEEP_LINK":"Ouvrez automatiquement l'application mobile du visiteur (Instagram, YouTube, Spotify…) au lieu de la page web. Si l'app n'est pas installée, le visiteur est redirigé vers le store ou l'URL web.","TOOLTIP_DEEP_LINK_AUTO":"Les deep links sont détectés automatiquement. Quand votre URL de destination pointe vers Instagram, YouTube, Spotify ou 30+ autres plateformes, l'application mobile s'ouvre directement sur le téléphone du visiteur.","DEEP_LINK_AUTO_BADGE":"Auto","DEEP_LINK_AUTO_DESC":"Détection automatique de 30+ plateformes (Instagram, YouTube, Spotify, TikTok, etc.). L'application mobile s'ouvre directement.","DEEP_LINK_IOS":"Lien iOS (URI scheme ou Universal Link)","DEEP_LINK_IOS_PLACEHOLDER":"instagram://user?username=houla ou https://apps.apple.com/app/id389801252","DEEP_LINK_ANDROID":"Lien Android (URI scheme ou Intent URL)","DEEP_LINK_ANDROID_PLACEHOLDER":"intent://user?username=houla#Intent;scheme=instagram;package=com.instagram.android;end","DEEP_LINK_FALLBACK":"URL de fallback (App Store / Play Store)","DEEP_LINK_FALLBACK_PLACEHOLDER":"https://apps.apple.com/app/id389801252","DEEP_LINK_HELP":"💡 Sur mobile, le lien tentera d'ouvrir l'application native. Si elle n'est pas installée, le visiteur est redirigé vers le store ou la page web.","LABEL_TAGS":"Tags","TOGGLE_PIXELS":"Pixels de retargeting","TOOLTIP_PIXELS":"Ajoutez vos pixels Facebook, Google ou TikTok pour constituer des audiences de reciblage publicitaire lorsque quelqu'un clique votre lien.","PIXELS_DESCRIPTION":"Les pixels se déclenchent quand un visiteur clique votre lien. Ajoutez vos IDs pour constituer des audiences de reciblage.","LABEL_FB_PIXEL":"Facebook Pixel ID","PLACEHOLDER_FB_PIXEL":"123456789012345","LABEL_GOOGLE_TAG":"Google Tag ID","PLACEHOLDER_GOOGLE_TAG":"G-AB1CDE2FGH","LABEL_TIKTOK_PIXEL":"TikTok Pixel ID","PLACEHOLDER_TIKTOK_PIXEL":"CABCDEF1234567890","LABEL_TITLE_CREATE":"Titre","LABEL_TITLE_OPTIONAL":"(optionnel)","
89LABEL_TITLE_EDIT":"Titre","PLACEHOLDER_TITLE":"Exemple: Les promotions en cours","ERROR_TITLE_MIN_LENGTH":"Le titre ne peut être aussi court","ERROR_TITLE_MAX_LENGTH":"Le titre ne peut être aussi long","LABEL_CUSTOM_KEY":"Clé personnalisée","LABEL_CUSTOM_KEY_OPTIONAL":"(optionnelle)","ERROR_KEY_REQUIRED":"La clé ne peut être vide","ERROR_KEY_MIN_LENGTH":"La clé doit être composée de 3 caractères minimum","ERROR_KEY_NOT_AVAILABLE":"Cette clé n'est pas disponible","CONFIRM_TITLE":"Lien créé avec succès","COPIED":"Copié","COPY":"Copier","BADGE_EXPIRES":"Expire le","BADGE_PASSWORD_PROTECTED":"Protégé par mot de passe","QR_CUSTOMIZE":"Personnaliser","QR_ERROR":"Une erreur est survenue. Veuillez réessayer.","CTA_TRACK_TITLE":"Suivez les performances","CTA_TRACK_DESC":"Statistiques, QR Codes, Smart Routing et plus encore, gratuitement!","CTA_CREATE_ACCOUNT":"Créer mon compte gratuit","CREATE_ANOTHER":"Créer un autre lien","SUBMIT_CREATE":"C'est parti !","SUBMIT_EDIT":"Modifier","LABEL_PIXEL_PRESET":"Preset de pixels","PLACEHOLDER_PIXEL_PRESET":"Sélectionner un preset...","ADVANCED_OPTIONS":"Options avancées","QR_AUTO_HINT":"Un QR Code sera généré automatiquement","TOGGLE_OG_PREVIEW":"Personnaliser l'aperçu OG","TOOLTIP_OG_PREVIEW":"Définissez le titre, la description et l'image affichés lorsque votre lien est partagé sur les réseaux sociaux (Facebook, Twitter, LinkedIn…)","OG_DESCRIPTION":"Ces métadonnées Open Graph contrôlent l'apparence de votre lien lorsqu'il est partagé sur les réseaux sociaux.","OG_CRAWL_BTN":"Récupérer depuis l'URL","LABEL_OG_TITLE":"Titre OG","PLACEHOLDER_OG_TITLE":"Titre affiché sur les réseaux sociaux","LABEL_OG_DESCRIPTION":"Description OG","PLACEHOLDER_OG_DESCRIPTION":"Description affichée sur les réseaux sociaux","LABEL_OG_IMAGE":"Image OG (URL)","PLACEHOLDER_OG_IMAGE":"https://example.com/image.jpg","OG_RESET_BTN":"Réinitialiser","OG_PREVIEW_LABEL":"Aperçu","OG_IMAGE_MODE_URL":"URL externe","OG_IMAGE_MODE_UPLOAD":"Uploader une image","OG_UPLOAD_AFTER_CREATE":"L'upload d'image sera disponible après la création du lien.","OG_UPLOADING":"Upload en cours…","OG_UPLOAD_HINT":"Glissez-déposez ou cliquez pour uploader (JPG, PNG, WebP: max 8 Mo)","OG_PENDING_UPLOAD":"L'image sera uploadée à la création du lien","OG_REMOVE_FILE":"Retirer","OG_CHANGE_IMAGE":"Changer","OG_CROP_CANCEL":"Annuler","OG_CROP_VALIDATE":"Valider le cadrage","OG_AI_BTN":"Générer avec l'IA"},"FEATURES_GRID":{"SECTION_TITLE":"Tout ce dont vous avez besoin","SECTION_SUBTITLE":"Des outils puissants pour optimiser votre présence en ligne","COMING_SOON_TITLE":"Bientôt disponible","BADGE_COMING_SOON":"Bientôt","BADGE_NEW":"Nouveau","FEAT_SHORT_LINKS_TITLE":"Liens courts","FEAT_SHORT_LINKS_DESC":"Transformez vos URLs longues en liens mémorisables","FEAT_QRCODES_TITLE":"QR Codes","FEAT_QRCODES_DESC":"Générez des QR Codes personnalisés instantanément","FEAT_EPHEMERAL_TITLE":"Liens éphémères","FEAT_EPHEMERAL_DESC":"Créez des liens temporaires qui expirent automatiquement","FEAT_PROTECTED_TITLE":"Liens protégés","FEAT_PROTECTED_DESC":"Sécurisez vos liens avec un mot de passe","FEAT_UTM_TITLE":"Campagnes UTM","FEAT_UTM_DESC":"Trackez vos campagnes marketing avec précision","FEAT_STATS_TITLE":"Statistiques","FEAT_STATS_DESC":"Analysez vos performances en temps réel","FEAT_LINKINBIO_TITLE":"Link in Bio","FEAT_LINKINBIO_DESC":"Une page unique pour tous vos liens importants","FEAT_SMART_ROUTING_TITLE":"Smart Routing","FEAT_SMART_ROUTING_DESC":"Redirigez selon le pays, l'appareil ou la langue","FEAT_AB_TESTING_TITLE":"A/B Testing","FEAT_AB_TESTING_DESC":"Testez et optimisez vos pages de destination","FEAT_WEBHOOKS_TITLE":"Webhooks","FEAT_WEBHOOKS_DESC":"Recevez vos événements en temps réel sur votre serveur","FEAT_RETARGETING_TITLE":"Pixels de retargeting","FEAT_RETARGETING_DESC":"Ajoutez vos pixels Facebook, Google et TikTok à vos liens","FEAT_ANTIMALWARE_TITLE":"Anti-malware","FEAT_ANTIMALWARE_DESC":"Chaque URL est analysée avant la redirection","FEAT_DEAD_LINKS_TITLE":"Liens morts","FEAT_DEAD_LINKS_DESC":"Alerte automatique si une destination devient inaccessible","COMING_DEEP_LINKS_TITLE":"Deep Links","COMING_DEEP_LINKS_DESC":"Redirigez directement vers les apps mobiles","COMING_WORKSPACES_TITLE":"Workspaces","COMING_WORKSPACES_DESC":"Collaborez en équipe sur vos liens","SEE_ALSO_TITLE":"Fonctionnalités","FEAT_L
89INK_EXPIRATION_TITLE":"Expiration programmée","FEAT_LINK_EXPIRATION_DESC":"Programmez une date d'expiration pour vos liens. Idéal pour promotions, événements et contenus temporaires.","FEAT_OG_PREVIEW_TITLE":"OG Previews","FEAT_OG_PREVIEW_DESC":"Personnalisez l'aperçu de vos liens sur les réseaux sociaux","FEAT_CLICK_LIMIT_TITLE":"Limite de clics","FEAT_CLICK_LIMIT_DESC":"Définissez un nombre maximum de clics autorisés sur vos liens. Expiration automatique à la limite.","FEAT_TAGS_TITLE":"Tags & Organisation","FEAT_TAGS_DESC":"Classez vos liens avec des tags colorés pour une organisation et un filtrage rapides.","FEAT_CLOAKING_TITLE":"Link Cloaking","FEAT_CLOAKING_DESC":"Masquez l'URL de destination pour protéger vos liens affiliés et empêcher le contournement.","FEAT_DEEP_LINKS_TITLE":"Deep Links Mobile","FEAT_DEEP_LINKS_DESC":"Ouvrez automatiquement les applications mobiles (Instagram, YouTube, Spotify...) depuis vos liens courts.","FEAT_WORKSPACES_TITLE":"Workspaces & Équipes","FEAT_WORKSPACES_DESC":"Collaborez en équipe sur vos liens avec des rôles, invitations et statistiques partagées.","FEAT_OAUTH_TITLE":"OAuth & Authentification","FEAT_OAUTH_DESC":"Connectez vos applications tierces via OAuth 2.0 PKCE. Authentification sécurisée, scopes granulaires et gestion des accès.","FEAT_PAY_L
89INKS_TITLE":"Pay Links","FEAT_PAY_LINKS_DESC":"Vendez vos produits et services via un lien de paiement Stripe. Commission, suivi des commandes et page de checkout integree.","FEAT_SHOP_IN_BIO_TITLE":"Shop in Bio","FEAT_SHOP_IN_BIO_DESC":"Transformez votre Link in Bio en boutique complète. Produits, paiement Stripe, livraison, avis clients et analytics intégrés.","FEAT_AUTO_PRINT_TITLE":"Impression automatique","FEAT_AUTO_PRINT_DESC":"Imprimez étiquettes et factures automatiquement dès la commande. Support Zebra ZPL, ESC/POS, multi-imprimantes.","FEAT_IMPORT_BITLY_TITLE":"Import Bitly","FEAT_IMPORT_BITLY_DESC":"Importez tous vos liens Bitly en un clic. Conservation des tags, slugs personnalisés et suivi en temps réel."},"CTA_SECTION":{"TITLE":"Prêt à booster votre engagement ?","SUBTITLE":"Créez votre compte gratuitement et accédez à toutes les fonctionnalités","BUTTON_CREATE_ACCOUNT":"Créer mon compte gratuit"},"COMMON":{"LOADING":"Chargement...","ERROR":"Une erreur est survenue","SAVE":"Enregistrer","CANCEL":"Annuler","DELETE":"Supprimer","LOAD_MORE":"Voir plus","EDIT":"Modifier","CLOSE":"Fermer","YES":"Oui","NO":"Non","BACK":"Retour","NEXT":"Suivant","SEARCH":"Rechercher","NO_RESULTS":"Aucun résultat","CONFIRM":"Confirmer","RETRY":"Réessayer","ADD":"Ajouter","CLEAR":"Effacer","NOT_AUTHENTICATED":"Vous devez être connecté pour accéder à cette page.","VIEW":"Voir","CREATE":"Créer","RESET_FILTERS":"Réinitialiser","RATE_LIMIT_TITLE":"Limite atteinte","RATE_LIMIT":"Vous effectuez trop de requêtes. Veuillez patienter quelques instants avant de réessayer.","INACTIVE":"Inactif","CANCEL_ACTION":"Annuler"},"WIDGET":{"CHANGELOG":{"HEADER_WHATS_NEW_PREFIX":"Quoi de","HEADER_WHATS_NEW_SUFFIX":"sur","BADGE_COMING_SOON":"Bientôt","BADGE_ANNOUNCEMENT":"Annonce","QUOTE_P1":"En jetant un coup d'œil à notre journal des modifications (changelog), vous pourrez suivre nos dernières victoires, les problèmes que nous avons réussi à dompter, et bien sûr, toutes les annonces folles qui accompagnent notre développement.","QUOTE_P2":"C'est comme feuilleter le journal du matin, mais avec plus de technologie et moins de météo !"},"FEATURES_SEE_ALSO":{"TITLE":"Voir aussi","SHORT_LINKS":"Liens courts","EPHEMERAL":"Éphémères","QRCODES":"QR Codes","UTM":"UTM Builder","STATS":"Statistiques","NEW":"Nouveau","SECURE_LINKS":"Liens sécurisés","LINK_IN_BIO":"Link in Bio","SMART_ROUTING":"Smart Routing","AB_TESTING":"A/B Testing","WEBHOOKS":"Webhooks","RETARGETING":"Retargeting","LINK_EXPIRATION":"Expiration","ANTIMALWARE":"Anti-malware","DEAD_LINKS":"Liens morts","OG_PREVIEW":"OG Previews","CLICK_LIMIT":"Limite de clics","TAGS":"Tags","CLOAKING":"Link Cloaking","DEEP_LINKS":"Deep Links","WORKSPACES":"Espaces de travail","OAUTH":"OAuth / API","PAY_LINKS":"Liens de paiement","DEFINITIONS_TITLE":"Guides et définitions"},"LOADING":{"RETRY":"Réessayer"},"HEADER":{"SEARCH_PLACEHOLDER":"Rechercher ou coller un lien long...","CONNECTED_AS":"Connecté en tant que","WORKSPACES":"Espaces de travail","HAS_SHOP":"Boutique activée","MY_ACCOUNT":"Mon compte","MY_PURCHASES":"Mes achats","LOGOUT":"Se déconnecter"},"NEW_BUILD":{"TITLE":"Une nouvelle version est disponible !","REFRESH_IN":"Rafraîchissement dans","SECOND":"seconde","SECONDS":"secondes","OR":"ou","CLICK_HERE":"cliquez ici","TO_NOT_WAIT":"pour ne pas attendre"},"SESSION_EXPIRY":{"TITLE":"Votre session va expirer","EXPIRES_IN":"Expiration dans","MINUTES":"min","SECOND":"seconde","SECONDS":"secondes","EXTEND":"Rester connecte"},"NOTIFICATION":{"TOOLTIP":"Notifications","TITLE":"Notifications","MARK_ALL_READ":"Tout marquer comme lu","EMPTY":"Aucune notification","VIEW_ALL":"Voir toutes les notifications"},"PROFILE_PREVIEW":{"YOUR_NAME":"Votre nom","PREV_THEME":"Thème précédent","NEXT_THEME":"Thème suivant"},"QR_DIALOG":{"EPHEMERAL_LABEL":"éphémère","COPIED":"Copié !","COPY_LINK":"Copier le lien","DOWNLOAD_QRCODE":"Télécharger le QR Code","DOWNLOAD_PNG":"Télécharger PNG","DOWNLOAD_SVG":"Télécharger SVG"},"QR_EDITOR":{"TEMPLATE_NAME":"Nom du template","TEMPLATE_NAME_PLACEHOLDER":"Mon template personnalisé","SET_AS_DEFAULT":"Définir comme template par défaut","CENTRAL_LOGO":"Logo central","CHOOSE_LOGO":"Choisir un logo","DOTS":"Points","CORNERS_SQUARE":"Coins (carré)","CORNERS_DOT":"Coins (point)","BACKGROUND":"Fond","BACKGROUND_COLOR":"Couleur de fond","SAVED":"Enregistré !","SAVING":"Enregistrement...","SAVE":"Enregistrer","MY_TEMPLATES":"Mes templates","DEFAULT_BADGE":"Par défaut","AVAILABLE_STYLES":"Styles disponibles","BASE_STYLE":"Style de base","TAB_CUSTOMIZE":"Personnaliser","TAB_SAVE":"Sauvegarder","TEMPLATE_IN_USE_PREFIX":"Ce template est utilisé par","TEMPLATE_IN_USE_SUFFIX":"QR code(s)","SAVE_CUSTOM_HINT":"Enregistrez votre personnalisation pour la réutiliser plus tard","DEFAULT_STYLE_HINT":"Style par défaut (non personnalisé)","SAVE_TEMPLATE":"Enregistrer le template"},"SMART_ROUTING":{"CONDITIONAL":"Conditionnel","AB_TESTING":"A/B Testing","ORIGINAL_URL":"URL originale","DEFAULT_URL":"URL par défaut","AB_DEFAULT_HINT":"Utilisée quand aucune variante n'est sélectionnée","COND_DEFAULT_HINT":"Utilisée quand aucune condition ne correspond","WEIGHT_TOTAL_PREFIX":"Total :","WEIGHT_EXCEEDS":"Le total dépasse 100%","WEIGHT_IDEAL":"Total idéal : 100%","DELETE_VARIA
89NT":"Supprimer la variante","REDIRECT_TO":"Rediriger vers...","INVALID_URL":"URL invalide","ADD_VARIANT":"Ajouter une variante","MOVE_UP":"Monter","MOVE_DOWN":"Descendre","DELETE_RULE":"Supprimer la règle","AND_ALL":"ET (toutes les conditions)","OR_ANY":"OU (au moins une condition)","OR_CONDITION":"OU","AND_CONDITION":"ET","ADD_RULE":"Ajouter une règle","STORE_PRESET":"📱 Rediriger vers les stores (iOS / Android)","STORE_PRESET_HINT":"Crée deux règles : iOS → App Store, Android → Google Play. L'URL par défaut sert de fallback quand l'OS n'est pas détecté (desktop, OS inconnu…).","MAX_RULES":"Maximum 10 règles atteint","SAVE_AB":"Enregistrer l'A/B Testing","SAVE_RULES":"Enregistrer les règles","OR":"OU","AND":"ET","IF":"SI","CHOOSE_CRITERIA":"Choisir un critère...","CHOOSE":"Choisir...","SELECTED":"sélectionné(s)","DELETE_CONDITION":"Supprimer la condition"},"USER_INFO":{"LOADING":"Chargement des informations...","LINKS":"Liens","CLICKS":"Clics","API_KEYS":"Clés API","WORKSPACES":"Workspaces","UNVERIFIED":"Non vérifié","REGISTRATION":"Inscription","LAST_ACTIVITY":"Dernière activité","NAME":"Nom","PREFIX":"Préfixe","STATUS":"Statut","LAST_USED":"Dernier usage","ACTIVE":"Active","REVOKED":"Révoquée","NEVER":"Jamais","RECENT_LINKS":"Liens récents","KEY":"Clé","TITLE":"Titre","TYPE":"Type","NO_DATA":"Aucune donnée"}},"NOT_FOUND":{"TITLE":"404","MESSAGE":"Page introuvable","SUBTITLE":"La page que vous cherchez n'existe pas ou a été déplacée.","CTA_HOME":"Retour à l'accueil","CTA_SHORTEN":"Raccourcir un lien","CTA_SIGNUP":"Créer un compte gratuit","PROMO_TITLE":"Découvrez Hou.la","PROMO_SUBTITLE":"Le réseau social où tu crées, passes en live et vends: sans pub, sans algorithme imposé.","FEAT_VIDEO":"Vidéos & Lives","FEAT_SHOP":"Boutique","FEAT_BIO":"Link in Bio","FEAT_TOOLS":"Liens & QR"},"PROFILE_PAGE":{"LOADING":"Chargement...","BACK_HOME":"Retour à l'accueil","NO_LINKS":"Aucun lien pour le moment","EXPLORE":"Explorer","REPORT":"Signaler","COOKIES":"Cookies","PRIVACY":"Confidentialité","TERMS":"CGU","SCAN_TO":"Scannez pour","OPEN_MOBILE":"ouvrir sur mobile","SHARE_TITLE":"Partager ce profil","COPIED":"Copié !","COPY":"Copier","OR_SCAN_QR":"ou scannez le QR Code","TOOLTIP_CREATE":"Créer votre page","TOOLTIP_SHARE":"Partager","VERIFIED":"Profil vérifié","EMAIL_PLACEHOLDER":"Email","SUBSCRIBE":"S'inscrire","SUBSCRIBED_SUCCESS":"Inscription confirmée !","SECRET_CODE":"Code secret","UNLOCK":"Déverrouiller","BUY":"Acheter","GET":"Obtenir","VIEW_PRODUCT":"Voir le produit","VIEW_ON_ETSY":"Voir sur Etsy","VIEW_ON_AMAZON":"Voir sur Amazon","PRE_SAVE":"Pre-save","OTHER":"Autre","DAYS":"Jours","HOURS":"Heures","MINUTES":"Min","SECONDS":"Sec","RSVP":"RSVP","BUY_NOW":"Acheter maintenant","ADD_TO_CART":"Ajouter au panier","VIEW_COLLECTION":"Voir la collection","FEATURED_PRODUCTS":"Produits vedettes","CAROUSEL_PRODUCTS":"Produits de la collection (carrousel)","GRID_HERO_PRODUCTS":"Produits de la collection (grille hero)","LIST_PRODUCTS":"Produits de la collection (liste)","SALE_PRODUCTS":"Aucun produit en promotion pour le moment","TRENDING_PRODUCTS":"Aucun produit tendance pour le moment","NEW_BADGE":"Nouveau","NEW_PRODUCTS":"Aucune nouveaute pour le moment","STOCK_LEFT":"Plus que {{count}} en stock","STOCK_LIMIT_PRODUCTS":"Aucun produit en stock limite pour le moment","COPY_CODE":"Copier","PROMO_CODE_TITLE":"Code promo","PROMO_CODE_PLACEHOLDER":"Entrez votre code promo","PROMO_CODE_APPLY":"Appliquer","PROMO_CODE_APPLIED":"Applique","CREATE_YOUR_PAGE":"Créez votre page Hou.la","PROMO_BADGE":"Promo","PROMO_TITLE":"Créez votre propre page","PROMO_HIGHLIGHT":"Link in Bio","PROMO_DESCRIPTION":"Regroupez tous vos liens importants sur une seule page personnalisée","PROMO_READY_2MIN":"Prêt en 2 minutes","PROMO_READY_2MIN_DESC":"Inscription gratuite, configuration rapide","PROMO_CUSTOMIZABLE":"100% personnalisable","PROMO_CUSTOMIZABLE_DESC":"Thèmes, couleurs, mise en page à votre image","PROMO_STATS":"Statistiques détaillées","PROMO_STATS_DESC":"Suivez vos clics et votre audience en temps réel","PROMO_CTA":"C'est parti","PROMO_CLAIM_LABEL":"Choisissez le nom de votre page","PROMO_CLAIM_PLACEHOLDER":"votrenom","PROMO_LEARN_MORE":"En savoir plus","PROMO_TRUST":"utilisateurs nous font déjà c
89onfiance","FOOTER_CTA":"Créez votre page gratuitement","COOKIE_TITLE":"Gérer les cookies","COOKIE_INTRO":"Nous utilisons des cookies pour améliorer votre expérience. Vous pouvez personnaliser vos préférences ci-dessous.","COOKIE_NECESSARY":"Cookies nécessaires","COOKIE_ALWAYS_ON":"Toujours actifs","COOKIE_NECESSARY_DESC":"Essentiels au fonctionnement du site. Ils ne peuvent pas être désactivés.","COOKIE_PERFORMANCE":"Cookies de performance","COOKIE_PERFORMANCE_DESC":"Nous aident à comprendre comment vous utilisez le site pour l'améliorer.","COOKIE_FUNCTIONAL":"Cookies fonctionnels","COOKIE_FUNCTIONAL_DESC":"Permettent des fonctionnalités avancées et la personnalisation.","COOKIE_ADVERTISING":"Cookies publicitaires","COOKIE_ADVERTISING_DESC":"Utilisés pour afficher des publicités pertinentes.","COOKIE_SAVE":"Sauvegarder mes préférences","COOKIE_ACCEPT_ALL":"Tout accepter","SUBSCRIBE_ERROR":"Une erreur est survenue. Veuillez réessayer.","SUBSCRIBE_PRIVACY":"En vous abonnant, vous acceptez de recevoir des emails de mise à jour. Vous pouvez vous désabonner à tout moment.","SUBSCRIBE_TO":"S'abonner à","SUBSCRIBE_DONE":"Fermer","SUBSCRIBE_EMAIL_INVALID":"Veuillez entrer une adresse email valide.","SUBSCRIBE_SUCCESS_TITLE":"Abonnement confirmé !","SUBSCRIBE_DESC":"Recevez les mises à jour de cette page directement dans votre boîte mail.","TOOLTIP_SUBSCRIBE":"S'abonner","SUBSCRIBE_EMAIL_PLACEHOLDER":"Votre adresse email","SUBSCRIBE_SUCCESS_DESC":"Vous recevrez les mises à jour de cette page par email.","SUBSCRIBE_SUBMIT":"S'abonner","ERROR_SUBTITLE":"Cette page n'est pas accessible pour le moment.","ERROR_CREATE_LINK":"Raccourcir un lien","ERROR_PROMO_TITLE":"Découvrez Hou.la","ERROR_PROMO_SUBTITLE":"La plateforme tout-en-un pour gérer vos liens","ERROR_FEAT_LINKS":"Liens courts","ERROR_FEAT_QR":"QR Codes","ERROR_FEAT_BIO":"Link in Bio","ERROR_FEAT_STATS":"Statistiques","ERROR_CTA_SIGNUP":"Créer un compte gratuit","TAB_CONTENT":"Contenu","TAB_SHOP":"Boutique","SHOP":{"TAB_SHOP":"Boutique","TAB_LIVE":"Live","LIVE_NOTICE_TITLE":"Articles vendus en direct","LIVE_NOTICE_BODY":"Ces articles ont été présentés pendant un live : leur description est volontairement succincte. N'achetez ici que ce que vous avez vu et réservé pendant le direct.","ALL":"Tout","EMPTY":"Aucun produit disponible pour le moment","LOAD_MORE":"Voir plus de produits","OUT_OF_STOCK":"Épuisé","LOW_STOCK":"Stock limité","DELIVERY_ESTIMATE":"Livraison estimée sous {{min}} à {{max}} jours ouvrés","DELIVERY_ESTIMATE_IN_CART":"Le délai de livraison estimé vous sera confirmé dans le panier. Préparation vendeur : {{processingDays}} jour(s) ouvré(s).","PRICE_FROM":"À partir de","SELECT_VARIANT_FIRST":"Veuillez sélectionner une variation avant d'ajouter au panier.","CHOOSE_OPTIONS":"Choisir les options","READ_MORE":"En savoir plus","READ_LESS":"Voir moins","NEW_BADGE":"Nouveau","REVIEWS_LABEL":"avis","VERIFIED_PURCHASE":"Achat vérifié","SELLER_REPLY":"Réponse du vendeur","HELPFUL":"Utile","NO_REVIEWS":"Aucun avis pour le moment","LOAD_MORE_REVIEWS":"Voir plus d'avis","PRODUCTS":"produits"},"COLLECTION_PRODUCTS":"Aucun produit dans cette collection","CATALOG_PRODUCTS":"Produits"},"SHOP":{"CART":{"TITLE":"Panier","EMPTY":"Votre panier est vide","SUBTOTAL":"Sous-total","TOTAL":"Total","DISCOUNT":"Reduction","SHIPPING_AT_CHECKOUT":"Calcul au paiement","CHECKOUT":"Commander","CLEAR":"Vider le panier","CLEAR_CONFIRM":"Confirmer ?","PROMO_PLACEHOLDER":"Code promo","PROMO_APPLY":"Appliquer","PROMO_APPLIED":"Code promo applique","ORDER_CONFIRMED":"Commande confirmee","ORDER_CONFIRMED_MESSAGE":"Votre commande a bien ete enregistree. Vous recevrez un email de confirmation sous peu.","OPEN_CART_TITLE":"Ajoutez des articles sans repayer la livraison","OPEN_CART_DESC":"Vos achats sont regroupes automatiquement. Vous ne payez que la difference si le poids total change de tranche, et souvent rien du tout. Quand vous avez termine, cloturez votre panier pour lancer l'expedition.","OPEN_CART_UNTIL":"Cloture automatique le","CLOSE_CART_NOW":"J'ai termine, expedier ma commande","CART_CLOSED_SUCCESS":"Panier cloture ! Le vendeur va preparer votre commande.","CONTINUE_SHOPPING":"Continuer mes achats","VIEW_MY_ORDERS":"Voir mes commandes","CHECKOUT_ERROR":"Une erreur est survenue. Veuillez reessayer.","PAYMENT_METHOD_TITLE":"Mode de paiement","PAYMENT_METHOD_DESC":"Choisissez votre mode de paiement pour finaliser votre commande.","PAY_WITH_CARD":"Payer par carte bancaire","DELIVERY_METHOD":"Mode de livraison","DELIVERY_SHIPPING":"Livraison","DELIVERY_PICKUP":"Retrait sur place","FREE_SHIPPING":"Livraison gratuite","FREE_SHIPPING_FROM":"Livraison gratuite des {{amount}}","DELIVERY_ESTIMATE_RANGE":"Livraison estimée entre le {{min}} et le {{max}}","DELIVERY_ESTIMATE_OPEN_CART":"Cette estimation tient compte de la clôture automatique du panier prévue le {{date}}.","DELIVERY_ESTIMATE_VACATION":"La boutique est actuellement en vacances jusqu'au {{date}}. Le délai a été ajusté en conséquence.","OTHER_COUNTRY":"Autre pays","COUNTRY_NOT_SUPPORTED":"Cette boutique ne livre pas dans le pays selectionne. Selectionnez un pays de livraison compatible.","COUNTRY_NOT_SUPPORTED_DETECTED":"Vous etes actuellement localise en {{country}}. Cette boutique ne livre pas dans votre pays. Selectionnez un pays de livraison compatible.","PENDING_BANNER":"Vous avez une commande en attente de paiement ({{amount}} {{currency}}
89).","PENDING_BANNER_CTA":"Finaliser le paiement","PENDING_BANNER_DISMISS":"Ignorer","MERGE_INFO":"Commande recente ? Vos articles seront ajoutes sans frais de port supplementaires.","OPEN_CART_BANNER_TITLE":"Panier ouvert","OPEN_CART_BANNER_DESC":"Cette boutique vous permet de continuer vos achats et de les regrouper en une seule commande, sans frais de port supplémentaires.","OPEN_CART_BANNER_DESC_WITH_DATE":"Ajoutez des articles jusqu'au {{date}} : ils seront regroupés en une seule commande, sans frais de port supplémentaires.","MERGE_LEARN_MORE":"En savoir plus","MERGE_DIALOG_TITLE":"Regroupement de commandes","MERGE_DIALOG_INTRO":"Si vous avez deja une commande en cours chez ce vendeur, vos nouveaux articles y seront ajoutes automatiquement. Vous evitez ainsi de payer des frais de port en double !","MERGE_DIALOG_SELLER_ENABLED":"Ce vendeur accepte le regroupement de commandes","MERGE_DIALOG_FEAT1_TITLE":"Ajout automatique","MERGE_DIALOG_FEAT1_DESC":"Vos nouveaux articles sont ajoutes a votre commande en cours. Pas besoin de tout recommander depuis le debut.","MERGE_DIALOG_FEAT2_TITLE":"Pas de frais de port en double","MERGE_DIALOG_FEAT2_DESC":"Vous ne payez un supplement de livraison que si le poids total change de tranche. Dans la plupart des cas, c'est 0 EUR de frais supplementaires.","MERGE_DIALOG_FEAT3_TITLE":"Vous gardez le controle","MERGE_DIALOG_FEAT3_DESC":"Quand vous avez termine vos achats, cloturez votre panier pour demander l'expedition. Tant qu'il est ouvert, vous pouvez continuer a ajouter des articles.","SHIPPING_COST":"Livraison","SHIPPING_FROM_PREFIX":"à partir de","SENDCLOUD_POSTAL_CODE":"Code postal de livraison","SENDCLOUD_DAYS":"jours","SENDCLOUD_NO_RATES":"Aucun transporteur disponible pour cette destination.","SENDCLOUD_CHANGE_POINT":"Changer","SENDCLOUD_SELECT_POINT":"Choisir un point relais","SENDCLOUD_SERVICE_POINTS_TITLE":"Points relais disponibles","SENDCLOUD_NO_SERVICE_POINTS":"Aucun point relais disponible pour cette adresse.","DIGITAL_ONLY_MESSAGE":"Produit numérique: téléchargement disponible après paiement"},"CHECKOUT":{"TOTAL":"Total","PAY":"Payer","SECURE":"Paiement sécurisé par Stripe","ERR_INIT":"Le paiement n'a pas pu s'initialiser. Réessaie.","ERR_PAY":"Le paiement n'a pas abouti. Réessaie.","EMAIL":"Ton e-mail","EMAIL_HINT":"Pour recevoir ta confirmation de commande.","TITLE":"Paiement","SELLER_UNAVAILABLE":"Ce vendeur ne peut pas encore encaisser de paiement.","PAID_TITLE":"Commande confirmée","PAID_MESSAGE":"Merci ! Tu vas recevoir un e-mail de confirmation.","BACK_TO_LIVE":"Revenir au live"}},"REPORT_DIALOG":{"TITLE":"Signaler cette page","INTRO":"Si vous pensez que cette page enfreint nos conditions d'utilisation ou contient du contenu inapproprie, veuillez remplir ce formulaire. Nous examinerons votre signalement dans les plus brefs delais.","EMAIL_LABEL":"Votre adresse email","EMAIL_PLACEHOLDER":"[email protected]","REASON_LABEL":"Motif du signalement","REASON_PLACEHOLDER":"Selectionnez un motif","REASON_INAPPROPRIATE":"Contenu inapproprie","REASON_SPAM":"Spam","REASON_IMPERSONATION":"Usurpation d'identite","REASON_PHISHING":"Phishing / Arnaque","REASON_CLAIM":"Revendication de propriete","REASON_OTHER":"Autre","MESSAGE_LABEL":"Description","MESSAGE_PLACEHOLDER":"Decrivez le probleme en detail...","ERROR_EMAIL_REQUIRED":"L'adresse email est requise","ERROR_EMAIL_INVALID":"L'adresse email n'est pas valide","ERROR_REASON_REQUIRED":"Veuillez selectionner un motif","ERROR_MESSAGE_REQUIRED":"La description est requise","ERROR_MESSAGE_MIN":"La description doit contenir au moins 10 caracteres","CANCEL":"Annuler","SUBMIT":"Envoyer le signalement","CLOSE":"Fermer","SUCCESS_TITLE":"Signalement envoye","SUCCESS_MESSAGE":"Merci pour votre signalement. Notre equipe va examiner cette page et prendre les mesures necessaires.","TICKET_NUMBER":"Numero de suivi :","SUCCESS_HINT":"Vous recevrez un email de confirmation avec un lien pour suivre l'avancement de votre signalement."},"LANG":{"FR":"Français","EN":"English","ES":"Español","DE":"Deutsch","SWITCH_LABEL":"Changer de langue"},"PIXEL_PRESETS":{"TITLE":"Pixels de retargeting","SUBTITLE":"Gérez vos presets de pixels pour pré-remplir automatiquement vos liens.","BTN_CREATE":"Créer un preset","BTN_CREATE_FIRST"
89:"Créer votre premier preset","EMPTY_TITLE":"Aucun preset de pixels","EMPTY_DESC":"Créez des presets pour pré-remplir rapidement vos pixels lors de la création de liens.","ONBOARDING_TITLE":"Retargetez votre audience","ONBOARDING_DESC":"Créez des presets de pixels Facebook, Google et TikTok pour les appliquer automatiquement à chaque nouveau lien. Suivez vos conversions sans effort.","FEATURE_FB":"Facebook Pixel","FEATURE_FB_DESC":"Suivez les conversions et créez des audiences personnalisées","FEATURE_GOOGLE":"Google Tag","FEATURE_GOOGLE_DESC":"Mesurez vos campagnes Google Ads et Analytics","FEATURE_TIKTOK":"TikTok Pixel","FEATURE_TIKTOK_DESC":"Optimisez vos publicités TikTok avec le suivi des événements","FEATURE_DEFAULT":"Preset par défaut","FEATURE_DEFAULT_DESC":"Appliqué automatiquement à chaque nouveau lien","TAG_DEFAULT":"Par défaut","NO_PIXELS":"Aucun pixel configuré","BTN_SET_DEFAULT":"Définir par défaut","BTN_EDIT":"Modifier","BTN_DELETE":"Supprimer","BTN_CANCEL":"Annuler","BTN_SAVE":"Enregistrer","DIALOG_CREATE_TITLE":"Créer un preset de pixels","DIALOG_EDIT_TITLE":"Modifier le preset","LABEL_NAME":"Nom du preset","PLACEHOLDER_NAME":"Ex: Mon site e-commerce","LABEL_DEFAULT":"Utiliser par défaut lors de la création de liens","LABEL_FB":"Facebook Pixel ID","PLACEHOLDER_FB":"123456789012345","LABEL_GOOGLE":"Google Tag ID","PLACEHOLDER_GOOGLE":"G-AB1CDE2FGH","LABEL_TIKTOK":"TikTok Pixel ID","PLACEHOLDER_TIKTOK":"CABCDEF1234567890","TOAST_CREATED":"Preset créé avec succès","TOAST_UPDATED":"Preset mis à jour","TOAST_DELETED":"Preset supprimé","TOAST_ERROR":"Une erreur est survenue","TOAST_LOAD_ERROR":"Impossible de charger vos presets","COUNT_SINGULAR":"preset","COUNT_PLURAL":"presets","LABEL_PLATFORM_FB":"Facebook","LABEL_PLATFORM_GOOGLE":"Google","LABEL_PLATFORM_TIKTOK":"TikTok","TOOLTIP_FB":"Facebook Pixel : ","TOOLTIP_GOOGLE":"Google Tag : ","TOOLTIP_TIKTOK":"TikTok Pixel : ","ERROR_NAME_REQUIRED":"Le nom du preset est obligatoire.","ERROR_NAME_MAX":"Le nom ne doit pas dépasser 100 caractères.","ERROR_FB_FORMAT":"Format invalide. L'ID Facebook Pixel doit contenir 10 à 20 chiffres.","ERROR_GOOGLE_FORMAT":"Format invalide. L'ID Google Tag doit commencer par G-, AW-, DC- ou UA-.","ERROR_TIKTOK_FORMAT":"Format invalide. L'ID TikTok Pixel doit commencer par C (11-31 caractères)."},"AGENCY_SPECIALTIES":{"GAMING":"Jeu vidéo","IRL":"IRL","MUSIC":"Musique","CREATIVE":"Création","SPORT":"Sport","EDUCATION":"Éducation","BEAUTY":"Beauté","HUMOR":"Humour","TALK":"Discussion","SHOPPING":"Vente en live"},"SEO":{"AGENCIES":{"DESC":"Agences de créateurs live : tes créateurs gardent leurs plateformes et diffusent aussi sur Hou.la, en même temps. Ton agence touche une part de leurs étoiles, payée par Hou.la. Simulateur, niveaux, FAQ."},"AGENCIES_DIRECTORY":{"DESC":"Les agences de créateurs admises par Hou.la : langues, spécialités, créateurs sur Hou.la et heures de live du mois."},"HOULA_CONNECT":{"DESC":"Chaque cadeau, message ou follow de ton live Hou.la, TikTok, YouTube ou Kick déclenche une action : jeu, OBS, overlays, lumières. Lab visuel sans code. Gratuit, Windows, macOS, Linux."},"LANDING":{"DESC":"Hou.la est le réseau social vidéo, live et shopping. Crée du contenu, passe en live, vends tes produits : tout en un."},"AGENCY_CONTRACT":{"DESC":"Le contrat des agences de créateurs sur Hou.la : part des étoiles payée par Hou.la, certification, droits des créateurs, données, fraude, résiliation. À accepter en cochant une case."},"HOME":{"TITLE":"Hou.la: Réseau social vidéo, live & shopping","DESC":"Bien plus qu'un simple raccourcisseur de liens : générez vos QR Codes, créez votre Link in Bio et suivez en temps réel l'engagement de votre audience. Entièrement gratuit."},"ME_LANDING":{"TITLE":"Link in Bio: Hou.la","DESC":"Créez dès maintenant votre page \"Link in bio\" pour partager vos liens, vos réseaux sociaux et bien plus encore !"},"CGU":{"TITLE":"Conditions d'utilisation: Hou.la","DESC":"Code de conduite et conditions d'utilisation pour profiter des services de hou.la"},"CGV":{"TITLE":"Conditions générales de vente: Hou.la","DESC":"Conditions générales de vente des abonnements Hou.la : tarifs, paiement, résiliation, droit de rétractation et garanties."},"LEGALES":{"TITLE":"Mentions légales: Hou.la","DESC":"Hou.la est hébergé exclusivement sur des serveurs en France. Consultez nos mentions légales pour obtenir des informations juridiques concernant notre application."},"VIE_PRIVEE":{"TITLE":"Vie privée: Hou.la","DESC":"Nous ne revendons pas vos données. Découvrez comment nous protégeons et gérons vos données privées."},"COOKIES":{"TITLE":"Politique de cookies: Hou.la","DESC":"Découvrez comment nous utilisons les cookies sur notre application, quels types de cookies nous utilisons."},"CHANGELOG":{"TITLE":"Changelog: Hou.la","DESC":"En jetant un coup d'œil à notre journal des modifications (changelog), vous pourrez suivre nos dernières victoires, les problèmes que nous avons réussi à dompter."},"SUPPORT":{"TITLE":"Support: Hou.la","DESC":"Obtenez une assistance complète pour notre application de réduction de liens et de génération de QR Code."},"ASSOCIATIONS":{"TITLE":"Associations: Hou.la","DESC":"Hou.la soutient les associations et organisations à but non lucratif. Découvrez notre programme d'accès gratuit."},"API_DOC":{"TITLE":"Documentation API: Hou.la","DESC":"Documentation complète de l'API Hou.la. Apprenez à créer des liens courts, gérer vos URLs et suivre vos statistiques via notre API REST."},"TARIFS":{"TITLE":"Tarifs: Hou.la","DESC":"Liens courts illimités, QR Codes, Link in Bio, Analytics et API inclus gratuitement."},"FAQ":{"TITLE":"FAQ: Hou.la","DESC":"Trouvez les réponses à vos questions sur Hou.la : liens courts, QR Codes, Link in Bio, API, sécurité et confidentialité."},"A_PROPOS":{"TITLE":"À propos: Hou.la","DESC":"Découvrez Hou.la, le réseau social vidéo, live et shopping créé en France, gratuit et souverain."},"CAREERS":{"TITLE":"Recrutement: Hou.la","DESC":"Rejoignez Hou.la ! Découvrez nos postes ouverts (Q1 2027, à Chessy / Marne-la-Vallée) : développeurs, sys admin, IA engineer, account manager, directeur financier. Programme bêta-testeur et ambassadeur inclus."},"DEF_SHORT_URL":{"TITLE":"Qu'est-ce qu'un lien court?: Hou.la","DESC":"Découvrez l'utilité des liens courts dans la simplification des URLs, le partage sur les réseaux sociaux, la gestion des campagnes marketing."},"DEF_EPHEMERAL":{"TITLE":"Liens éphémères et éco-responsabilité: Hou.la","DESC":"Découvrez nos engagements éco-responsables : liens éphémères qui s'auto-détruisent et redirections permanentes pour réutiliser vos supp
89orts imprimés."},"DEF_LINK_IN_BIO":{"TITLE":"Qu'est-ce qu'un Link in Bio?: Hou.la","DESC":"Découvrez ce qu'est un Link in Bio, pourquoi c'est devenu indispensable pour les créateurs de contenu."},"DEF_SMART_ROUTING":{"TITLE":"Smart Routing: la redirection conditionnelle, Hou.la","DESC":"Découvrez le Smart Routing : la redirection conditionnelle qui adapte automatiquement la destination d'un lien selon le pays, l'appareil, la langue."},"DEF_QRCODE":{"TITLE":"Qu'est-ce qu'un QR Code?: Hou.la","DESC":"Découvrez comment les QR Codes simplifient la transmission d'informations, le suivi de l'engagement, l'accès aux sites web."},"DEF_UTM":{"TITLE":"Qu'est-ce qu'un paramètre UTM?: Hou.la","DESC":"Découvrez l'importance des variables UTM dans les URLs pour le suivi, l'analyse et l'optimisation du trafic web."},"DEF_PASSWORD":{"TITLE":"Liens protégés par mot de passe: Hou.la","DESC":"Découvrez le fonctionnement des liens sécurisés par mot de passe : hashage bcrypt, page de vérification, cas d'usage professionnels."},"DEF_AB_TESTING":{"TITLE":"A/B Testing sur les liens courts: Hou.la","DESC":"Découvrez l'A/B Testing sur les liens courts : comparez plusieurs destinations, pondération du trafic, statistiques détaillées."},"DEF_WEBHOOKS":{"TITLE":"Webhooks: notifications HTTP en temps réel, Hou.la","DESC":"Découvrez les webhooks : notifications HTTP en temps réel, fonctionnement, sécurité HMAC-SHA256, cas d'usage et implémentation."},"FEAT_SHORT_LINK":{"TITLE":"Réseau social vidéo, live & shopping: Hou.la","DESC":"Nous transformons vos URLS longues en liens courts pour la simplification des URLs, le partage sur les réseaux sociaux."},"FEAT_EPHEMERAL":{"TITLE":"Liens éphémères: Hou.la","DESC":"Créez des liens courts temporaires qui s'auto-détruisent après 1h, 6h, 12h, 24h ou 48h. Recyclage de clés et suppression automatique."},"FEAT_QRCODE":{"TITLE":"Générateur de QR Code: Hou.la","DESC":"Nous générons pour vous des QR Codes simplifiants la transmission d'informations, le suivi de l'engagement."},"FEAT_UTM":{"TITLE":"Campagnes UTM: Hou.la","DESC":"Vous pouvez customiser vos variables UTM dans les URLs pour le suivi, l'analyse et l'optimisation du trafic web."},"FEAT_STATS":{"TITLE":"Statistiques en temps réel: Hou.la","DESC":"Suivez en temps réel les performances de vos liens courts et QR Codes."},"FEAT_LINK_IN_BIO":{"TITLE":"Link in Bio: Hou.la","DESC":"Créez une page personnalisée pour regrouper tous vos liens. Idéal pour Instagram, TikTok et tous vos réseaux sociaux."},"FEAT_SMART_ROUTING":{"TITLE":"Smart Routing: Hou.la","DESC":"Redirigez automatiquement vos visiteurs selon leur pays, appareil, langue ou navigateur. Un seul lien, plusieurs destinations."},"FEAT_PASSWORD":{"TITLE":"Liens protégés par mot de passe: Hou.la","DESC":"Protégez vos liens courts par mot de passe. Seuls les visiteurs autorisés accèdent au contenu. Gratuit et sécurisé avec hashage bcrypt."},"FEAT_AB_TESTING":{"TITLE":"A/B Testing: Hou.la","DESC":"Testez et optimisez vos pages de destination avec l'A/B Testing gratuit de Hou.la."},"FEAT_WEBHOOKS":{"TITLE":"Webhooks: Hou.la","DESC":"Recevez vos événements en temps réel avec les webhooks Hou.la. 10 types d'événements, conformité RGPD."},"LOGIN":{"TITLE":"Connexion: Hou.la","DESC":"Connectez-vous à hou.la en toute sécurité. Accédez à votre compte et profitez de toutes les fonctionnalités."},"SIGNUP":{"TITLE":"Inscription: Hou.la","DESC":"Inscrivez-vous gratuitement pour accéder à tous les services de hou.la."},"FORGOT_PASSWORD":{"TITLE":"Mot de passe oublié: Hou.la","DESC":"Récupérez votre mot de passe oublié en quelques étapes simples."},"PROFILE":{"DESCRIPTION_FALLBACK":"Retrouvez tous les liens de {{name}}","SOCIAL_FALLBACK":"Découvre les vidéos, les lives et la boutique de {{name}} ({{handle}}) sur Hou.la."},"STRUCTURED":{"ORG_DESCRIPTION":"Réseau social vidéo et live avec marketplace intégrée, plus des outils marketing : liens courts, QR codes et pages Link in Bio","APP_DESCRIPTION":"Réseau social pour créer et regarder des vidéos, passer en live et vendre via une marketplace intégrée: avec des out
89ils marketing (liens courts, QR codes, Link in Bio, statistiques).","FEAT_VIDEO":"Vidéos courtes","FEAT_LIVE":"Live shopping","FEAT_SHOP":"Marketplace & boutiques","FEAT_URL_SHORTENER":"Raccourcisseur d'URL","FEAT_QR_CODES":"Générateur de QR codes personnalisés","FEAT_LINK_IN_BIO":"Pages Link in Bio personnalisables","FEAT_ANALYTICS":"Suivi statistique en temps réel","FEAT_UTM":"Campagnes UTM","FEAT_API":"API REST"},"TITLES":{"STUDIO_AGENCY":"Espace agence","STUDIO_AGENCY_DECLARE":"Déclarer mon agence","STUDIO_MY_AGENCY":"Mon agence","AGENCY_INVITATION":"Invitation d'une agence","AGENCIES":"Hou.la Agences : ils restent où ils sont, Hou.la s'ajoute | Hou.la","AGENCIES_DIRECTORY":"Annuaire des agences de créateurs live | Hou.la","HOULA_CONNECT":"Hou.la Connect : live interactif gratuit, ton public joue | Hou.la","LANDING":"Hou.la · Vidéo. Live. Shopping.","AGENCY_CONTRACT":"Conditions du programme Hou.la Agences | Hou.la","HOME":"Hou.la - Le générateur de liens courts","ME_LANDING":"Votre page \"Link in Bio\" Hou.la","MANAGER":"Studio","MANAGER_LINKS":"Studio - Liens","MANAGER_LINK_DETAILS":"Détails du lien","MANAGER_API_KEYS":"Studio - Clés API","MANAGER_PROFILE":"Studio - Mon profil Link in Bio","MANAGER_ACCOUNT":"Studio - Mon compte","MANAGER_REFERRAL":"Studio - Parrainage","REFERRAL":"Parrainage","MANAGER_NOTIFICATIONS":"Studio - Notifications","MANAGER_CHANGELOG":"Studio - Changelog","MANAGER_QRCODE_TEMPLATES":"Studio - Templates QR Code","MANAGER_WEBHOOKS":"Studio - Webhooks","MANAGER_EVENT_KEYS":"Studio - Clés d'événements","MANAGER_PIXEL_PRESETS":"Studio - Pixel Presets","MANAGER_PRINT":"Studio - Impression","MANAGER_WEBHOOK_DETAILS":"Détails du webhook","MANAGER_WORKSPACE":"Studio - Espace de travail","MANAGER_WORKSPACE_MEMBERS":"Studio - Membres de l'espace","MANAGER_TICKETS":"Studio - Tickets de support","MANAGER_MESSAGES":"Studio - Messagerie","MANAGER_PAY_LINKS":"Studio - Pay Links","MANAGER_PAY_LINK_ORDERS":"Studio - Commandes Pay Links","MANAGER_SHOP":"Studio - Boutique","MANAGER_SHOP_LIVE":"Live Dashboard - Boutique","MANAGER_LIVE_STUDIO":"Live Studio","MANAGER_LIVE_COMMENTS":"Live - Commentaires & Cadeaux","MANAGER_DISPUTES":"Studio - Litiges","MANAGER_CONNECTED_APPS":"Studio - Applications connectées","MANAGER_PURCHASES":"Studio - Mes achats","INVITE":"Invitation - hou.la","AM_OPTOUT":"Désinscription de l’accompagnement - hou.la","ADMIN":"Admin","ADMIN_DASHBOARD":"Admin - Dashboard","ADMIN_USERS":"Admin - Utilisateurs","ADMIN_ACCOUNT_MANAGERS":"Admin - Account managers","ADMIN_AGENCIES":"Admin - Agences","ADMIN_AGENCIES_FRAUD":"Admin - Fraudes des agences","ADMIN_LINKS":"Admin - Liens","ADMIN_CHANGELOG":"Admin - Changelog","ADMIN_DESIGN":"Admin - Design Presets","ADMIN_LINK_IN_BIO":"Admin - Link in Bio","ADMIN_QRCODE_PRESETS":"Admin - QR Code Presets","ADMIN_DEEP_LINKS":"Admin - Deep Links","ADMIN_TICKETS":"Admin - Tickets de support","ADMIN_SHOP":"Admin - Gestion Boutique","ADMIN_BETA_TESTERS":"Admin - Bêta-testeurs","ADMIN_CAREERS":"Admin - Candidatures","ADMIN_AVATAR_DECOS":"Admin - Studio des décorations","CGU":"Conditions générales d'utilisation","CGV":"Conditions générales de vente","LEGALES":"Mentions légales","VIE_PRIVEE":"Vie privée","COOKIES":"Cookies","CHANGELOG":"Changelog","SUPPORT":"Support","ASSOCIATIONS":"Associations: Hou.la","API_DOC":"Documentation API - Hou.la","TARIFS":"Tarifs Hou.la: Gratuit, sans abonnement","FAQ":"FAQ Hou.la - Questions fréquentes sur le réseau social vidéo, live & shopping","A_PROPOS":"À propos de Hou.la - Réseau social vidéo, live & shopping","CAREERS":"Recrutement Hou.la: Rejoignez-nous | Bêta-testeur Pro gratuit","EXPLORER":"Explorer les pages Link in Bio: Hou.la","DEF_SHORT_URL":"Comprendre l'utilité des liens courts","DEF_EPHEMERAL":"Liens éphémères : le guide complet | Hou.la","DEF_LINK_IN_BIO":"Qu'est-ce qu'un Link in Bio ?","DEF_SMART_ROUTING":"Qu'est-ce que le Smart Routing ?","DEF_QRCODE":"Comprendre l'utilité des QR Codes","DEF_UTM":"Comprendre l'utilité des variables UTM","DEF_PASSWORD":"Qu'est-ce qu'un lien sécurisé par mot de passe ?","DEF_AB_TESTING":"Qu'est-ce que l'A/B Testing sur les liens courts ?","DEF_WEBHOOKS":"Qu'est-ce qu'un Webhook ? Définition et guide complet","DEF_RETARGETING":"Qu'est-ce qu'un pixel de retargeting ? Définition et guide","FEAT_SHORT_LINK":"Fonctionnalité : Liens courts","FEAT_EPHEMERAL":"Fonctionnalité : Liens éphémères","FEAT_QRCODE":"Fonctionnalité : QR Codes","FEAT_UTM":"Fonctionnalité : Campagnes UTM","FEAT_STATS":"Fonctionnalité : Statistiques","FEAT_L
89INK_IN_BIO":"Fonctionnalité : Link in Bio","FEAT_SMART_ROUTING":"Fonctionnalité : Smart Routing","FEAT_PASSWORD":"Fonctionnalité : Liens protégés par mot de passe","FEAT_AB_TESTING":"Fonctionnalité : A/B Testing","FEAT_WEBHOOKS":"Fonctionnalité : Webhooks","FEAT_RETARGETING":"Fonctionnalité : Pixels de retargeting","LOGIN":"Se connecter","LOGOUT":"Se déconnecter","SIGNUP":"Création de compte","CONFIRM_ACCOUNT":"Activation du compte","FORGOT_PASSWORD":"Mot de passe oublié","CONFIRM_PASSWORD":"Confirmation de mot de passe","AUTH_CALLBACK":"Connexion en cours...","OAUTH_AUTHORIZE":"Autorisation - Hou.la","CONNECT_CHANNEL_RETURN":"Connexion de ta chaîne - Hou.la","NOT_FOUND":"Page introuvable","FEAT_LINK_EXPIRATION":"Expiration programmée des liens | Hou.la","DEF_LINK_EXPIRATION":"Expiration programmée : planifiez la fin de vie de vos liens | Hou.la","FEAT_ANTIMALWARE":"Protection anti-malware automatique | Hou.la","DEF_ANTIMALWARE":"Qu'est-ce que la protection anti-malware ? | Hou.la","FEAT_DEAD_LINKS":"Détection de liens morts automatique | Hou.la","DEF_DEAD_LINKS":"Qu'est-ce qu'un lien mort ? Définition et détection | Hou.la","FEAT_OG_PREVIEW":"OG Social Previews pour vos liens courts | Hou.la","DEF_OG_PREVIEW":"Qu'est-ce qu'un OG Preview ? Définition et guide | Hou.la","FEAT_CLICK_LIMIT":"Limite de clics sur les liens courts | Hou.la","DEF_CLICK_LIMIT":"Limite de clics : contrôlez la diffusion de vos liens | Hou.la","FEAT_TAGS":"Tags & Organisation de vos liens courts | Hou.la","DEF_TAGS":"Organiser ses liens : tags et catégories pour vos URLs | Hou.la","FEAT_CLOAKING":"Link Cloaking - Masquez l'URL de destination | Hou.la","DEF_CLOAKING":"Le Link Cloaking : masquer l'URL de destination d'un lien court | Hou.la","FEAT_DEEP_LINKS":"Deep Links Mobile - Ouvrez les applications depuis vos liens | Hou.la","DEF_DEEP_LINKS":"Deep Links Mobile : ouvrir les apps depuis un lien court | Hou.la","FEAT_WORKSPACES":"Workspaces & Équipes - Collaborez sur vos liens | Hou.la","DEF_WORKSPACES":"Workspaces collaboratifs : gérer ses liens en équipe | Hou.la","FEAT_OAUTH":"OAuth & Authentification - Connectez vos applications | Hou.la","DEF_OAUTH":"OAuth 2.0 & PKCE : authentification sécurisée pour vos apps | Hou.la","SDK":"SDK TypeScript @houla/sdk: Documentation et guide","CHROME_EXT":"Extension Chrome Hou.la: Raccourcir vos liens depuis le navigateur","FEAT_PAY_L
89INKS":"Pay Links - Liens de paiement Stripe integres | Hou.la","DEF_PAY_LINKS":"Pay Links : vendre via un lien de paiement | Hou.la","FEAT_SHOP_IN_BIO":"Shop in Bio: Votre boutique intégrée à votre Link in Bio | Hou.la","DEF_SHOP_IN_BIO":"Shop in Bio : créer sa boutique en ligne depuis sa bio | Hou.la","FEAT_AUTO_PRINT":"Impression automatique: Étiquettes et factures dès la commande | Hou.la","DEF_AUTO_PRINT":"Impression automatique : imprimer étiquettes et factures automatiquement | Hou.la","AGENCY_CREATOR_TERMS":"Conditions créateur du programme Hou.la Agences | Hou.la","CONNECT_DEV":"Hou.la Connect, documentation développeur : plugins de jeu, packs, protocole | Hou.la"},"DEF_RETARGETING":{"DESC":"Découvrez les pixels de retargeting : Facebook Pixel, Google Tag, TikTok Pixel. Suivez vos visiteurs et optimisez vos campagnes publicitaires avec Hou.la, gratuitement."},"FEAT_RETARGETING":{"DESC":"Ajoutez vos pixels Facebook, Google Tag et TikTok à vos liens courts. Suivez vos visiteurs et créez des audiences de retargeting. Gratuit avec Hou.la."},"FEAT_LINK_EXPIRATION":{"DESC":"Programmez une date d'expiration pour vos liens courts. Idéal pour les promotions, événements et contenus temporaires. Gratuit avec Hou.la."},"DEF_LINK_EXPIRATION":{"DESC":"Découvrez l'expiration programmée des liens : planifiez une date de fin pour vos URLs, gérez les promotions temporaires et sécurisez vos contenus sensibles. Gratuit avec Hou.la."},"FEAT_ANTIMALWARE":{"DESC":"Protégez vos visiteurs avec la détection anti-malware automatique. Chaque URL est analysée via Google Safe Browsing avant la redirection. Gratuit avec Hou.la."},"DEF_ANTIMALWARE":{"DESC":"Qu'est-ce que la protection anti-malware sur les liens courts ? Découvrez comment Hou.la analyse chaque URL via Google Safe Browsing pour protéger vos visiteurs. Gratuit."},"FEAT_DEAD_LINKS":{"DESC":"Détectez automatiquement les liens morts et recevez des alertes par email. Monitoring continu avec score de fiabilité. Gratuit avec Hou.la."},"DEF_DEAD_LINKS":{"DESC":"Qu'est-ce qu'un lien mort ? Découvrez comment Hou.la détecte automatiquement les liens cassés et vous alerte par email. Monitoring continu et score de fiabilité. Gratuit."},"FEAT_OG_PREVIEW":{"TITLE":"OG Social Previews | Hou.la","DESC":"Personnalisez l'aperçu de vos liens courts sur les réseaux sociaux : titre, description et image OG. Auto-détection ou upload d'image. Gratuit avec Hou.la."},"DEF_OG_PREVIEW":{"DESC":"Découvrez les OG Social Previews : personnalisez le titre, la description et l'image de vos liens courts quand ils sont partagés sur les réseaux sociaux. Gratuit avec Hou.la."},"FEAT_CLICK_LIMIT":{"DESC":"Limitez le nombre de clics sur vos liens courts. Le lien expire automatiquement une fois la limite atteinte. Idéal pour les offres exclusives, les événements et les campagnes contrôlées. Gratuit avec Hou.la."},"DEF_CLICK_LIMIT":{"DESC":"Découvrez la limite de clics sur les liens courts : définissez un nombre maximum de redirections, contrôlez la diffusion de vos contenus et automatisez l'expiration. Gratuit avec Hou.la."},"FEAT_TAGS":{"DESC":"Organisez vos liens courts avec des tags colorés. Créez, filtrez et gérez vos liens facilement grâce aux catégories personnalisées. Gratuit avec Hou.la."},"DEF_TAGS":{"DESC":"Découvrez comment organiser vos liens courts avec des tags et catégories : créez des étiquettes colorées, filtrez vos campagnes et retrouvez vos liens en un clic. Gratuit avec Hou.la."},"FEAT_CLOAKING":{"DESC":"Masquez l'URL de destination de vos liens courts avec le Link Cloaking. Protégez vos liens affiliés et empêchez le contournement. Gratuit avec Hou.la."},"DEF_CLOAKING":{"DESC":"Découvrez le Link Cloaking : technique pour masquer l'URL de destination d'un lien court dans la barre d'adresse du navigateur. Protégez vos liens affiliés gratuitement avec Hou.la."},"FEAT_WORKSPACES":{"DESC":"Collaborez en équipe sur vos liens courts avec les Workspaces. Rôles (owner, member, viewer), invitations par email, statistiques partagées et gestion centralisée. Gratuit avec Hou.la."},"DEF_WORKSPACES":{"DESC":"Découvrez les workspaces collaboratifs pour la gestion de liens courts : travaillez en équipe avec des rôles, des permissions et des statistiques partagées. Gratuit avec Hou.la."},"SDK":{"DESC":"SDK TypeScript officiel pour Hou.la. Intégrez la création de liens courts, QR Codes et analytics dans vos applications Node.js et TypeScript. Zero dependency, léger et typé."},"CHROME_EXT":{"DESC":"Extension Chrome officielle Hou.la : raccourcissez vos URLs en un clic, générez des QR Codes et suivez vos statistiques directement depuis votre navigateur. Gratuit."}
89,"FEAT_PAY_LINKS":{"DESC":"Vendez vos produits, services et formations via un lien de paiement Stripe. Commission personnalisable, suivi des commandes en temps reel et integration Link in Bio."},"DEF_PAY_LINKS":{"DESC":"Qu'est-ce qu'un Pay Link ? Decouvrez les liens de paiement Stripe Connect. Vendez directement depuis un lien court avec Hou.la, gratuitement."},"AGENCY_CREATOR_TERMS":{"DESC":"Ce que tu acceptes en rejoignant une agence sur Hou.la : rien à payer, tu choisis ce que tu partages, tu pars quand tu veux, jamais tes identifiants."},"CONNECT_DEV":{"DESC":"Documentation développeur de Hou.la Connect : démarrage rapide, plugins de jeu (mod, RCON, WebSocket, HTTP), format des packs, protocole du pont, sécurité et kit d'exemples vérifiés."}},"COMPARISON":{"FEATURE":"Fonctionnalité","LIMITED":"Limité","FREE":"Gratuit","DISCLAIMER":"Prix relevés en février 2026. Sous réserve de modifications par les éditeurs."},"ERRORS":{"UNEXPECTED":"Une erreur inattendue est survenue.","PASSWORD_TOO_SHORT":"Le mot de passe doit contenir au moins 7 caractères.","PASSWORD_TOO_LONG":"Le mot de passe doit contenir au maximum 50 caractères.","EMAIL_UNAVAILABLE":"Cette adresse email est déjà utilisée.","CODE_INVALID":"Le code est invalide.","ACCOUNT_BLOCKED":"Ce compte a été bloqué. Contacte le support pour le récupérer.","DOMAIN_NOT_SUPPORTED":"Vous ne pouvez pas créer un lien court avec ce domaine.","KEY_UNAVAILABLE":"La clé n'est pas disponible. Veuillez en saisir une autre.","NO_KEY_AVAILABLE":"Veuillez saisir une clé personnalisée.","URL_UNSAFE":"Cette URL a été signalée comme dangereuse (phishing, malware) par Google Safe Browsing.","LINK_NOT_FOUND":"Lien introuvable.","USERNAME_TAKEN":"Ce nom d'utilisateur est déjà pris.","SOCIAL_ALREADY_CONFIGURED":"Ce réseau social est déjà configuré."},"OAUTH":{"SELECT_WORKSPACE":"Se connecter en tant que","LOADING":"Verification en cours...","TITLE":"Autoriser l'application","WANTS_ACCESS":"souhaite acceder a votre compte Hou.la","PERMISSIONS_LABEL":"Cette application demande les permissions suivantes :","WARNING":"En autorisant cette application, vous lui permettez d'acceder aux donnees listees ci-dessus. Vous pourrez revoquer cet acces a tout moment.","AUTHORIZE":"Autoriser","DENY":"Refuser","FOOTER_INFO":"Vous serez redirige vers l'application apres votre choix.","ERROR_TITLE":"Erreur d'autorisation","ERROR_MISSING_PARAMS":"Parametres OAuth manquants ou invalides.","BACK_HOME":"Retour a l'accueil","SUCCESS_TITLE":"Connexion réussie !","SUCCESS_DESCRIPTION":"L'autorisation a été accordée. Vous pouvez fermer cette fenêtre et retourner dans l'application.","SUCCESS_OPEN_APP":"L'application ne s'est pas ouverte ? Clique ici.","CHANNEL_RETURN":{"TITLE_OK":"Chaîne {{plateforme}} connectée !","TITLE_FAILED":"Chaîne {{plateforme}} non connectée","DESCRIPTION_OK":"L'autorisation a été accordée. Tu peux fermer cette fenêtre et retourner dans Hou.la Connect.","INVALID_TITLE":"Lien incomplet","INVALID_DESCRIPTION":"Ce lien ne vient pas de Hou.la Connect, ou il en manque une partie. Ouvre Hou.la Connect, puis « Mes chaînes ».","NOTES":{"EVENEMENTS_PARTIELS":"{{plateforme}} a refusé une partie des événements de ta chaîne : Hou.la réessaiera au début de ton prochain live."},"REASONS":{"FERMEE":"La connexion par ton compte {{plateforme}} n'est pas encore ouverte sur Hou.la. Réessaie plus tard.","LIEN_INVALIDE":"Ce lien d'autorisation n'est pas valide. Recommence depuis Hou.la Connect.","VERIFICATION":"Hou.la n'a pas pu vérifier ce lien. Recommence depuis Hou.la Connect.","DEJA_SERVI":"Ce lien d'autorisation a dé
89jà servi. Recommence depuis Hou.la Connect.","EXPIRE":"Ce lien d'autorisation a expiré. Recommence depuis Hou.la Connect.","REFUSE":"Tu as refusé l'autorisation sur {{plateforme}} : rien n'a été relié.","SANS_CODE":"{{plateforme}} n'a pas rendu de code d'autorisation. Recommence depuis Hou.la Connect.","PAS_PROPRIETAIRE":"{{plateforme}} n'a pas confirmé que cette chaîne est la tienne : rien n'a été relié.","SANS_IDENTIFIANT":"{{plateforme}} n'a pas donné ton @identifiant : rien n'a été relié. Recommence et accepte toutes les autorisations demandées.","SANS_CHAINE":"Ce compte Google n'a pas de chaîne YouTube : rien n'a été relié. Recommence en choisissant le compte qui porte ta chaîne.","AUTORISATION_DECOCHEE":"Tu n'as pas autorisé Hou.la à voir ta chaîne {{plateforme}} : rien n'a été relié. Recommence et laisse la case {{plateforme}} cochée.","REFUS_PLATEFORME":"{{plateforme}} a refusé la connexion de Hou.la. Réessaie dans quelques minutes depuis Hou.la Connect ; si ça recommence, écris au support de Hou.la.","PLATEFORME_INJOIGNABLE":"{{plateforme}} ne répond pas pour le moment. Réessaie dans quelques minutes depuis Hou.la Connect.","INATTENDUE":"Un problème imprévu a empêché la connexion. Réessaie depuis Hou.la Connect."}},"SCOPES":{"LINKS_READ":"Lire vos liens courts et leurs statistiques","LINKS_WRITE":"Creer et modifier vos liens courts","ECOMMERCE_WRITE":"Gerer les donnees e-commerce","PRODUCTS_SYNC":"Synchroniser les produits","ORDERS_CREATE":"Creer des commandes","ORDERS_UPDATE":"Modifier le statut des commandes","WORKSPACES":"Accéder à vos espaces de travail","PRINT":"Imprimer vos QR codes et supports","API_KEYS":"Gérer vos clés API"}},"HOULA_BTN":{"PREVIEW":"Aperçu","THEME":"Thème","THEME_BLUE":"Bleu","THEME_LIGHT":"Clair","THEME_DARK":"Sombre","SIZE":"Taille","SIZE_SM":"Petit","SIZE_MD":"Moyen","SIZE_LG":"Grand","SHAPE":"Forme","SHAPE_RECT":"Rectangle","SHAPE_PILL":"Pilule","TEXT":"Texte","TEXT_SIGNIN":"Se connecter","TEXT_CONTINUE":"Continuer","TEXT_SIGNUP":"S'inscrire","ICON_ONLY":"Icône seule","ON":"Oui","OFF":"Non","TEXT_LOCKED":"sans effet en mode icône"},"SHARE_MODAL":{"SHARE":"Partager","COPY_LINK":"Copier le lien","COPIED":"Copié !","OR_SCAN_QR":"Ou scannez ce QR code","PROMO_TEXT":"Vous aussi, créez votre page gratuitement","PROMO_CTA":"Créer ma page"},"AGENCY_CREATOR_TERMS":{"KICKER":"Hou.la Agences","SUMMARY_TITLE":"L'essentiel des conditions créateur","POINT_FREE":"Rien à payer : c'est Hou.la qui rémunère l'agence, et tu gardes toutes tes étoiles.","POINT_SHARE":"Tu choisis ce que tu partages, et tu le changes quand tu veux.","POINT_LOGIN":"L'agence ne te demande jamais tes identifiants et ne se connecte jamais à ton compte.","POINT_LEAVE":"Tu pars quand tu veux, depuis « Mon agence ».","ACCEPT_BEFORE":"J'ai lu et j'accepte les","LINK":"Conditions créateur du programme Hou.la Agences","VERSION":"(version {{version}})","LOAD_ERROR":"Les conditions créateur n'ont pas pu être chargées.","RETRY":"Réessayer","LOADING":"Chargement des conditions…","NOT_YET_IN_FORCE":"Cette version entre en vigueur le {{date}}.","AGENCY_SIDE":"Les agences, elles, acceptent les conditions du programme, qui les obligent à respecter ces droits.","READ_CONTRACT":"Lire les conditions des agences","FIND":"Envie de rejoindre une agence ? Chacune présente son offre et ses critères.","FIND_LINK":"Voir l'annuaire des agences","NOT_FOUND":"Cette version des conditions n'existe pas","READ_CURRENT":"Lire la version en vigueur"},"AGENCY_OFFER":{"EMPTY":"Cette agence n'a pas encore détaillé son offre.","SERVICES_TITLE":"Prestations","FREE_NOTE":"Gratuit pour toi : l'agence est rémunérée par Hou.la, jamais par ses créateurs.","MODERATION_NOTE":"La modération de ton chat ne se fait qu'avec ton accord, que tu retires quand tu veux.","ACCOMPANIMENT_TITLE":"Notre accompagnement","CRITERIA_TITLE":"Critères d'admission","CRIT_LANGUAGES":"Langues de l'agence :","CRIT_SPECIALTIES":"Spécialités :","CRIT_AGE":"Avoir au moins {{age}} ans (règle du programme)","CRIT_ONE":"Ne faire partie d'aucune autre agence Hou.la","OPEN":"Candidatures ouvertes","CLOSED":"Candidatures fermées pour le moment"},"APPS_HOULA_PRINT":{"KICKER":"Application bureau · Impression","HERO_TITLE":"Hou.la Print — imprime tes commandes automatiquement","HERO_LEDE":"L'application de bureau qui imprime automatiquement, à chaque commande, tes \u003Cb>bons de livraison\u003C/b>, tes \u003Cb>factures\u003C/b> et une \u003Cb>étiquette par article vendu\u003C/b>. Tu colles l'étiquette sur le produit et tu sais immédiatement \u003Cb>à qui il appartient et à quel prix\u003C/b> — fini les erreurs d'attribution, même en plein live. Tu laisses l'app tournée en fond, chaque commande part sur la bonne imprimante toute seule.","DL_OS_PREFIX":"Télécharger pour","DL_WIN_NAME":"Windows","DL_MAC_NAME":"macOS","FINEPRINT":"Gratuit · Windows 10/11 · macOS 12+ · toujours la dernière version.","FINEPRINT_ALL":"Voir toutes les versions","WHAT_TITLE":"Ce que fait Hou.la Print","CARD_DOCS_T":"Bons, factures & étiquettes","CARD_DOCS_D":"À chaque commande, les bons de livraison, factures et une étiquette par article partent tout seuls sur l'imprimante. Plus de copier-coller, plus d'oubli.","CARD_PRINTERS_T":"Plusieurs imprimantes","CARD_PRINTERS_D":"Étiquettes thermiques (Zebra), tickets (ESC/POS) ou PDF A4 : chaque type de document part sur la bonne imprimante.","CARD_SHOPS_T":"Plusieurs boutiques","CARD_SHOPS_D":"Surveille plusieurs espaces Hou.la en même temps depuis un seul poste, sans jongler entre les comptes.","CARD_RESILIENT_T":"Résistant aux coupures","CARD_RESILIENT_D":"Si l'app est fermée ou hors ligne, les commandes sont gardées côté serveur et s'impriment dès la reconnexion. Rien n'est perdu.","HOW_TITLE":"Comment ça marche","HOW_LI1":"\u003Cb>Télécharge et installe\u003C/b> l'application sur ton ordinateur (Windows ou Mac).","HOW_LI2":"\u003Cb>Connecte-toi\u003C/b> à ton compte Hou.la&nbsp;: l'app se lie à ta ou tes boutiques en un clic.","HOW_LI3":"\u003Cb>Choisis tes imprimantes\u003C/b> pour les étiquettes, les tickets et les bons de commande.","HOW_LI4":"\u003Cb>Laisse tourner.\u003C/b> L'app reste dans la barre système et imprime chaque commande en temps réel.","CTA_TITLE":"Prêt à imprimer ?","CTA_BODY":"Installe Hou.la Print et oublie l'impression manuelle des commandes."},"APPS_HOULA_CONNECT":{"KICKER":"Hou.la Connect · Application de bureau gratuite","HERO_TITLE":"Ton public ne regarde plus. \u003Cb>Il joue.\u003C/b>","HERO_LEDE":"Chaque cadeau, message, follow ou like de ton live déclenche une action : dans ton jeu, dans OBS ou Streamlabs, sur tes overlays, dans tes enceintes, jusqu'aux lumières de ta pièce. Sur Hou.la, TikTok, YouTube et Kick en même temps.","START":"Commencer gratuitement","START_FOR_WIN":"Télécharger pour Windows","START_FOR_MAC":"Télécharger pour macOS","START_FOR_LINUX":"Télécharger pour Linux","SEE_ALL":"Voir tout ce que ça pilote","HERO_PLATFORMS":"Tes chaînes","TRUST":"Gratuit · Sans abonnement · Windows, macOS, Linux · Packs relus et signés","ALSO_FOR":"Télécharger pour :","ALL_VERSIONS":"toutes les versions","OS_WARN":"Sur macOS et Linux, tout fonctionne sauf le pilotage direct d'un jeu (clavier bas niveau, manette virtuelle, « Lier mon jeu ») : il est réservé à Windows.","OS_WARN_LINK":"Le détail","SUBNAV_LABEL":"Sections de la page","SUBNAV_PLATFORMS":"Plateformes","SUBNAV_LAB":"Lab","SUBNAV_PILOT":"Ça pilote tout","SUBNAV_USES":"Idées","SUBNAV_STORE":"Store","SUBNAV_OVERLAYS":"Overlays","SUBNAV_SOUNDS":"Sons","SUBNAV_CREATE":"Créer","SUBNAV_SAFETY":"Sécurité","SUBNAV_FAQ":"FAQ","HOW_TITLE":"Du cadeau à l'action, en trois étapes","HOW_1_T":"Relie tes chaînes","HOW_1_D":"Ton compte Hou.la est déjà là. Ajoute TikTok, YouTube ou Kick dans « Mes chaînes ».","HOW_2_T":"Installe un pack, ou dessine le tien","HOW_2_D":"Un clic dans le Store, ou quelques blocs et quelques fils dans le Lab.","HOW_3_T":"Lance ton live","HOW_3_D":"Tes packs démarrent avec ton live Hou.la. Ton public n'a plus qu'à jouer.","PLAT_KICKER":"Multiplateforme","PLAT_TITLE":"Tous tes chats, \u003Cb>un seul pack\u003C/b>.","PLAT_LEDE":"Une même interaction peut écouter un cadeau TikTok, un Super Chat YouTube, des KICKs et un cadeau Hou.la. Tu la dessines une fois, elle joue partout.","PLAT_EV_HOULA":"Cadeaux, follows, likes, partages, arrivées, chat et commandes, sondages, objectifs, roue, messages prioritaires, boutique.","PLAT_EV_TIKTOK":"Cadeaux (au cadeau près), likes, follows, partages, abonnements, arrivées, chat.","PLAT_EV_YOUTUBE":"Super Chat, Super Sticker, nouveaux membres, abonnements offerts, chat.","PLAT_EV_KICK":"Follows, abonnements, abonnements offerts, KICKs, récompenses, host, chat.","PLAT_EV_TWITCH":"La connexion arrive bientôt. Bits, abonnements, raids, follows et chat sont déjà prévus dans le Lab.","PLAT_N1":"plateformes écoutées en même temps","PLAT_N2":"packs qui tournent ensemble","PLAT_NOTE":"Tes autres chaînes sont écoutées pendant ton live Hou.la : c'est lui qui les active.","LAB_KICKER":"Le Lab","LAB_TITLE":"Tu dessines, \u003Cb>ça joue\u003C/b>.","LAB_LEDE":"Glisse un bloc, tire un fil : c'est branché. Un événement d'un côté, des actions de l'autre, et entre les deux toute la logique qu'il te faut. Sans une ligne de code.","LAB_BLOCKS":"Les blocs du Lab","BLOC_WHEN":"Quand","BLOC_IF":"Si… sinon","BLOC_RANDOM":"Au hasard","BLOC_PARALLEL":"En même temps","BLOC_WAIT":"Attendre","BLOC_REPEAT":"Répéter","BLOC_COUNTER":"Compteur","BLOC_VARIABLE":"Variable","BLOC_THEN":"Alors","LAB_1_T":"Glisse, relie, c'est branché","LAB_1_D":"Chaque interaction se lit comme un plan : l'événement, les fils, les actions. Plusieurs plateformes peuvent lancer les mêmes actions.","LAB_2_T":"Si, sinon, au hasard, en même temps","LAB_2_D":"Une condition et son « sinon », un tirage entre 2 et 10 sorties avec tes pourcentages, plusieurs actions à la fois, une attente, une répétition, un compteur, une variable.","LAB_3_T":"Teste pour de vrai, hors live","LAB_3_D":"Le bouton ▶ joue l’interaction tout de suite : ton jeu, OBS ou ta lampe réagissent vraiment. Seul le message de chat est simulé.","LAB_4_T":"Rien ne se perd","LAB_4_D":"Ton travail est gardé en brouillon, Ctrl+Z annule, et le plan se parcourt aussi au clavier.","LAB_SHOTS_T":"Le Lab, dans l'app","PIL_KICKER":"Ce que ça pilote","PIL_TITLE":"Un cadeau. \u003Cb>N'importe quelle action.\u003C/b>","PIL_LEDE":"Le jeu reste le terrain préféré. Mais Connect parle au
89ssi à ton logiciel de stream, à ton studio, à ta maison, à ton chat, et à tout ce qui a une adresse.","PIL_GAMES_T":"Tes jeux","PIL_GAMES_D":"Des plugins intégrés, par RCON, par mod ou par HTTP, pour les jeux ci-dessous. Sous Windows, tout jeu qui se joue au clavier ou à la manette se pilote aussi, avec une manette virtuelle jusqu’à 8 joueurs. Et le Store ajoute les packs des créateurs pour bien d’autres jeux.","PIL_GAMES_Q":"Rose sur TikTok","PIL_GAMES_A":"un creeper apparaît dans Minecraft","PIL_OBS_T":"OBS Studio","PIL_OBS_D":"Change de scène, montre ou cache une source, active un filtre, coupe un micro, lance l’enregistrement, garde un replay, allume la caméra virtuelle.","PIL_OBS_Q":"Super Chat","PIL_OBS_A":"scène « Caméra 2 »","PIL_STREAMLABS_T":"Streamlabs Desktop","PIL_STREAMLABS_D":"Scènes, sources, son, enregistrement et replay : tes cadeaux prennent aussi la main sur ta régie Streamlabs.","PIL_STREAMLABS_Q":"Gros cadeau","PIL_STREAMLABS_A":"Streamlabs garde le replay","PIL_LIGHTS_T":"Tes lumières et ta maison","PIL_LIGHTS_D":"Home Assistant (lampes et luminosité, prises, volets, scènes…), les Elgato Key Light, et tout ce qui parle MQTT, comme Zigbee2MQTT ou Tasmota.","PIL_LIGHTS_Q":"100 likes","PIL_LIGHTS_A":"Key Light à 100 %","PIL_STREAMDECK_T":"Stream Deck","PIL_STREAMDECK_D":"Une touche envoie ton raccourci clavier, et ton pack lance l’interaction. Rien à installer.","PIL_STREAMDECK_Q":"Ta touche","PIL_STREAMDECK_A":"ta célébration à l’écran","PIL_SOUNDS_T":"La bibliothèque de sons","PIL_SOUNDS_D":"Mèmes, jeux, cinéma, ambiance : un son sur chaque cadeau, jusqu’à 4 en même temps, au volume que tu choisis.","PIL_SOUNDS_Q":"Nouveau follow","PIL_SOUNDS_A":"« yeah boyyy »","PIL_VOICE_T":"Voix et Voicemod","PIL_VOICE_D":"Un message lu à voix haute par les voix de ton ordinateur. Avec Voicemod : ta voix change quelques secondes, ta soundboard joue, un bip censure.","PIL_VOICE_Q":"Un cadeau","PIL_VOICE_A":"ta voix change 30 s","PIL_OVERLAYS_T":"16 overlays","PIL_OVERLAYS_D":"Bocal, top donateurs, match, objectif, roue, chrono, célébration : une adresse à coller dans OBS.","PIL_OVERLAYS_Q":"Cadeau Hou.la","PIL_OVERLAYS_A":"il tombe dans le bocal","PIL_CHAT_T":"Chat, commandes, chatbot","PIL_CHAT_D":"Ton chatbot répond aux mots-clés, accueille les nouveaux et remercie chaque cadeau dans ton chat Hou.la. /rank et /top s’affichent à l’écran. Discord et Telegram reçoivent tes annonces.","PIL_CHAT_Q":"!planning","PIL_CHAT_A":"le chatbot répond","PIL_MAKERS_T":"Pour les bricoleurs","PIL_MAKERS_D":"HTTP, WebSocket, OSC (VRChat, TouchDesigner, Resolume), MQTT, RCON, webhooks : si ça a une adresse, Connect peut lui parler.","PIL_MAKERS_Q":"Un cadeau","PIL_MAKERS_A":"ton avatar VRChat change","PIL_GAMES_LIST":"Jeux avec un plugin intégré","PIL_GAMES_STORE":"Dans le Store en ce moment","SD_KEY_TRIGGER":"Touche « Déclencher une interaction » du plugin Hou.la Connect pour Stream Deck","SD_KEY_PACKS":"Touche « Lancer ou arrêter mes packs » du plugin","SD_KEY_PANIC":"Touche « Arrêt d’urgence » du plugin","SD_PLUGIN_SOON":"Plugin Hou.la Connect : bientôt","SOUNDS_MORE_THAN":"Plus de {{n}} sons","LIVE_T":"Pendant le live, tu vois tout","LIVE_D":"La Vue Live s’ouvre avec ton live Hou.la : ton retour vidéo, ton chat, les cadeaux, tes donateurs et le pack en cours, sur un seul écran.","LIVE_P1":"Tes packs démarrent tout seuls avec ton live, et s’arrêtent avec lui.","LIVE_P2":"Les demandes payées passent devant ; une file d’attente garde les autres.","LIVE_P3":"À la fin, un bilan : tes chiffres, tes moments forts, tes meilleurs donateurs.","USE_KICKER":"Idées de lives","USE_TITLE":"Ce que tu peux en faire \u003Cb>dès ce soir\u003C/b>.","USE_LEDE":"Des recettes concrètes, faisables aujourd’hui avec l’app, pour chaque façon de streamer.","USE_GAMER_T":"Gamer","USE_GAMER_1_Q":"Une Rose","USE_GAMER_1_A":"un creeper apparaît dans ta partie Minecraft","USE_GAMER_2_Q":"Un gros cadeau","USE_GAMER_2_A":"Bill Balle dans Mario Kart 8 Deluxe","USE_GAMER_3_Q":"Un spectateur choisit « joueur 2 »","USE_GAMER_3_A":"l’action vise la bonne manette","USE_IRL_T":"IRL et studio","USE_IRL_1_Q":"Un cadeau","USE_IRL_1_A":"ta Key Light s’allume à 100 %","USE_IRL_2_Q":"Un Super Chat","USE_IRL_2_A":"OBS passe sur ta deuxième caméra","USE_IRL_3_Q":"500 likes","USE_IRL_3_A":"la lampe du salon 
89s’allume par Home Assistant","USE_MUSIC_T":"Musicien","USE_MUSIC_1_Q":"Un message prioritaire payé","USE_MUSIC_1_A":"ta demande de morceau ressort dans ta Vue Live","USE_MUSIC_2_Q":"Un cadeau","USE_MUSIC_2_A":"les visuels de ton set changent dans Resolume (OSC)","USE_MUSIC_3_Q":"Un follow","USE_MUSIC_3_A":"des applaudissements de la bibliothèque","USE_CREATIVE_T":"Créatif","USE_CREATIVE_1_Q":"Un cadeau","USE_CREATIVE_1_A":"un nouveau filtre sur ta webcam (pack Snap Camera)","USE_CREATIVE_2_Q":"Un Super Chat","USE_CREATIVE_2_A":"OBS montre la caméra sur tes mains","USE_CREATIVE_3_Q":"Chaque cadeau","USE_CREATIVE_3_A":"une minute de plus au chrono de ton défi","USE_COMMUNITY_T":"Animateur de communauté","USE_COMMUNITY_1_Q":"Chaque cadeau Hou.la","USE_COMMUNITY_1_A":"tombe dans le bocal, ton meilleur donateur en dessous","USE_COMMUNITY_2_Q":"« /top » dans le chat","USE_COMMUNITY_2_A":"ton top donateurs s’affiche","USE_COMMUNITY_3_Q":"Objectif atteint","USE_COMMUNITY_3_A":"l’annonce part sur ton Discord","USE_MULTI_T":"Multi-plateformes","USE_MULTI_1_Q":"Rose TikTok, Super Chat ou KICKs","USE_MULTI_1_A":"la même action, un seul pack","USE_MULTI_2_Q":"Des cadeaux TikTok","USE_MULTI_2_A":"ils comptent dans tes tops et ton bocal","USE_MULTI_3_Q":"« /rank » sur TikTok, YouTube ou Kick","USE_MULTI_3_A":"le rang s’affiche à l’écran","USE_MAKER_T":"Créateur de packs","USE_MAKER_1_Q":"Tu publies ton pack","USE_MAKER_1_A":"relu et signé, il entre dans le Store","USE_MAKER_2_Q":"Tu choisis ta part, de 0 à 15 %","USE_MAKER_2_A":"tu gagnes à chaque cadeau interactif","USE_MAKER_3_Q":"Ton jeu n’a pas de plugin","USE_MAKER_3_A":"tu le crées sans code, par RCON, WebSocket ou HTTP","USE_AGENCY_T":"Agence","USE_AGENCY_1_Q":"Tu partages un pack avec ton écurie","USE_AGENCY_1_A":"après relecture, eux seuls le voient","USE_AGENCY_2_Q":"Tes créateurs ouvrent « Mon agence »","USE_AGENCY_2_A":"ils l’installent d’un clic","USE_AGENCY_3_Q":"Un créateur t’y autorise","USE_AGENCY_3_A":"tu suis son live et modères son chat","STORE_KICKER":"Store","STORE_TITLE":"Des packs pour tes jeux. \u003Cb>Et pour tout le reste.\u003C/b>","STORE_LEDE":"Jeux, scènes, chat, voix, lumières : chaque pack est publié par un créateur, relu, puis signé. L’installer est gratuit. Voici le Store tel qu’il est en ce moment.","STORE_APP_T":"Le Store et la fiche d’un pack, dans l’app","STORE_OPEN":"Tout le monde peut publier le sien : voir comment","OV_KICKER":"Overlays","OV_TITLE":"Des overlays qui font \u003Cb>bouger ton live\u003C/b>.","OV_LEDE":"Un bocal où tombent les cadeaux, un top donateurs, un match de cadeaux, un objectif de likes, une roue… Tu les règles dans Connect, tu colles leur adresse dans OBS, et Hou.la les héberge.","OV_TYPES_T":"Seize types d’overlays","OVT_BOCAL":"Bocal","OVT_CLASSEMENT":"Classement","OVT_MATCH":"Match","OVT_VEDETTE":"Vedette","OVT_OBJECTIF":"Objectif","OVT_ROUE":"Roue","OVT_SCORE":"Score du spectateur","OVT_MULTIPLICATEUR":"Multiplicateur","OVT_TIMER":"Chrono","OVT_COMPTEUR":"Compteur","OVT_CELEBRATION":"Célébration","OVT_ALERTE":"Alerte texte","OVT_MEDIA":"Média","OVT_JUMPSCARE":"Jumpscare","OVT_SCREEN":"Effet plein écran","OVT_CARROUSEL":"Carrousel","OV_1_T":"Une adresse, même Connect fermé","OV_1_D":"Tops, bocal, match, objectif, roue ou chrono se mettent à jour sur la page hébergée par Hou.la, même Connect fermé, même sur un second PC de diffusion.","OV_2_T":"/rank et /top à l’écran","OV_2_D":"Tes spectateurs tapent /rank ou /top sur Hou.la, TikTok, YouTube ou Kick : la réponse s’affiche sur ton overlay Score ou Classement.","OV_3_T":"Une scène, une adresse","OV_3_D":"Compose une scène entière d’overlays et colle une seule adresse dans OBS. La scène automatique suit le pack que tu lances.","SND_KICKER":"Sons et voix","SND_MORE":"Plus de","SND_TITLE":"sons, prêts à jouer sur ton live.","SND_LEDE":"Mèmes, jeux, cinéma, musique, ambiance : la bibliothèque partagée se fouille par mot et par catégorie, et chaque son se branche sur un cadeau en un clic. Ajoute aussi les tiens, privés ou publics.","SND_1_T":"Des messages lus à voix haute","SND_1_D":"Les voix de ton ordinateur lisent un message ou un merci, en français, anglais, espagnol, italien ou portugais.","SND_2_T":"Voicemod","SND_2_D":"Un cadeau change ta voix pendant 1 seconde à 10 minutes, joue un son de ta soundboard ou lance un bip de censure. Sous Windows.","SND_3_T":"Tes sons à toi","SND_3_D":"Dépose tes fichiers, garde-les privés ou partage-les, et règle le volume de chaque son dans tes packs.","OPEN_KICKER":"Ouvert à tous","OPEN_TITLE":"Crée ton pack. \u003Cb>Gagne à chaque cadeau.\u003C/b>","OPEN_LEDE":"Connect n’est pas un catalogue fermé : n’importe qui peut créer un pack dans le Lab et le publier dans le Store.","OPEN_1_T":"Dessine","OPEN_1_D":"Ton pack dans le Lab : ses interactions, ses sons, ses overlays, ses commandes.","OPEN_2_T":"Publie","OPEN_2_D":"Une IA le relit, puis un humain le valide. L’IA peut refuser ; seul un humain approuve.","OPEN_3_T":"Signé","OPEN_3_D":"Le pack approuvé est signé. Connect vérifie son empreinte et sa signature avant de le lancer.","OPEN_4_T":"Gagne","OPEN_4_D":"Choisis ta part, de 0 à 15 %, sur chaque cadeau interactif de ton pack.","EARN_TITLE":"Calcule ta part","EARN_TEXT":"Publie ton pack dans le Store et choisis ta part, de \u003Cb>0 à 15 %\u003C/b>. Elle est prise sur les étoiles du streamer qui l'utilise, à chaque cadeau interactif de ton pack : ses spectateurs paient le même prix.","EARN_NOTE":"Le calcul se fait cadeau par cadeau, arrondi à l'étoile inférieure, et rien n'est prélevé sur tes propres lives. Dans Connect : « Mes packs », puis « Créer un pack ». Un pack public est relu avant d'entrer dans le Store.","OPEN_PLUGIN_T":"Ton jeu n’est pas là ? Crée son plugin","OPEN_PLUGIN_D":"Sans code par RCON, WebSocket ou HTTP : le jeu, la liaison, les actions, et c’est prêt. Pour aller plus loin, un mod avec nos kits Godot, Unity ou Lua. Un plugin public est relu par un humain.","OPEN_PLUGIN_DEV":"Toute la documentation : créer le plugin de ton jeu","CTA_DEV_PAGE":"la page développeurs","AG_T":"Agences : des packs pour ta seule écurie","AG_D":"Une agence partage un pack avec ses créateurs, et avec eux seuls, toujours après relecture. Ils le trouvent dans « Mon agence » et l’installent d’un clic.","AG_LINK":"Découvrir le programme agences","SAFE_KICKER":"Sécurité","SAFE_TITLE":"Un pack ne fait \u003Cb>que ce que tu autorises\u003C/b>.","SAFE_LEDE":"Un logiciel qui appuie sur tes touches doit mériter ta confiance. Voici ses garde-fous.","SAFE_1_T":"Des données, jamais du code","SAFE_1_D":"Un pack décrit des règles : tel événement, telle action. Il n'embarque aucun programme de son auteur.","SAFE_2_T":"Relus, puis signés","SAFE_2_D":"Chaque pack public passe une relecture par IA puis une validation humaine, et il est signé. Connect vérifie son empreinte et sa signature avant de le lancer.","SAFE_3_T":"Tes interrupteurs","SAFE_3_D":"Le clavier, la manette virtuelle et le pilote de jeu sont coupés par défaut. C'est toi qui les allumes, sur ton PC.","SAFE_4_T":"Le bouton PANIC","SAFE_4_D":"Un clic sur PANIC, Ctrl+Alt+Échap depuis ton jeu, ou l’icône de la barre système : tout s’arrête d’un coup.","SAFE_5_T":"Ton chat ne choisit jamais la cible","SAFE_5_D":"Un spectateur peut donner une valeur, un nombre ou un mot, jamais l’appareil, la scène ou la commande visés. Ce que ton pack pilote, c’est toi qui le décides.","SAFE_6_T":"Le payant d’abord","SAFE_6_D":"Une demande payée passe devant et n’est jamais jetée. Les demandes gratuites attendent leur tour, dans une file que tu vides d’un clic.","FAQ_KICKER":"FAQ","FAQ_TITLE":"Tes questions","FAQ_Q_FREE":"Hou.la Connect est-il gratuit ?","FAQ_A_FREE":"Oui. L'app est gratuite, sans abonnement, et aucune fonction n'est bloquée. Installer un pack du Store est gratuit aussi. Ce sont tes spectateurs qui offrent des cadeaux, en coins, pendant ton live Hou.la.","FAQ_Q_HOULA":"Faut-il streamer sur Hou.la ?","FAQ_A_HOULA":"Oui. Tes chaînes TikTok, YouTube et Kick sont écoutées pendant ton live Hou.la : c'est lui qui les active. Tu gardes tes autres plateformes, et un même pack réagit à toutes.","FAQ_Q_GAMES":"Quels jeux ?","FAQ_A_GAMES":"Tous ceux que tes packs savent piloter. Minecraft, Rust, ARK, Counter-Strike 2, Project Zomboid et d’autres ont un plugin intégré. Sous Windows, tout jeu qui se joue au clavier ou à la manette se pilote aussi, et le Store a déjà des packs de créateurs pour bien d’autres jeux. Si le tien manque, n’importe qui peut créer son plugin ou son pack.","FAQ_Q_CODE":"Faut-il savoir coder ?","FAQ_A_CODE":"Non. Un pack se dessine dans le Lab, avec des blocs et des fils. Un plugin de jeu se crée sans code par RCON, WebSocket ou HTTP ; seul un mod demande d’écrire du code, avec nos kits Godot, Unity ou Lua.","FAQ_Q_LIGHTS":"Et mes lumières ?","FAQ_A_L
89IGHTS":"Connect les pilote par Home Assistant (allumer, éteindre, régler la luminosité), par les Elgato Key Light, et par MQTT, par exemple avec Zigbee2MQTT ou Tasmota. Tout appareil qui accepte des requêtes HTTP, OSC ou WebSocket se branche aussi.","FAQ_Q_MAC":"Et sur Mac ou Linux ?","FAQ_A_MAC":"Connect s'installe et tourne sur macOS et Linux : overlays, OBS, sons, jeux par RCON comme Minecraft, appels réseau (HTTP, MQTT, OSC, WebSocket). Le pilotage direct d'un jeu, lui, est réservé à Windows : clavier bas niveau, manette virtuelle et « Lier mon jeu ».","FAQ_Q_DATA":"Et mes mots de passe ?","FAQ_A_DATA":"Tes secrets (mots de passe, jetons de tes connexions) restent sur ton ordinateur, chiffrés par ton système. Un pack ne les lit pas : il nomme une connexion, et c'est Connect qui s'en sert.","CTA_TITLE":"Ton public est prêt. \u003Cb>À toi de jouer.\u003C/b>","CTA_TEXT":"Gratuit. Sans abonnement. Sans fonction bloquée.","CTA_DISCORD":"Rejoindre le Discord","CTA_AGENCIES":"Tu accompagnes des créateurs ? Découvre le programme agences","CTA_DEV":"Tu développes ? Reçois les événements de ton live avec le SDK :","CTA_DEV_GUIDE":"le guide","LD_DESC":"Application de bureau gratuite pour les streamers : chaque cadeau, message ou follow de ton live Hou.la, TikTok, YouTube ou Kick déclenche une action dans ton jeu, OBS, tes overlays ou tes lumières.","LD_F1":"Lab visuel : des blocs et des fils, sans code","LD_F2":"Hou.la, TikTok, YouTube et Kick dans un même pack","
89LD_F3":"Store de packs relus et signés","LD_F4":"Jeux, OBS, overlays, sons, domotique","LD_F5":"Store ouvert : chacun publie ses packs, avec une part de 0 à 15 % pour son créateur","SHOT_CHAINES_ALT":"Capture de Hou.la Connect, vue « Mes chaînes » : Hou.la toujours active, Kick, YouTube et TikTok reliés, en attente du live Hou.la, Twitch marqué « Bientôt ».","SHOT_CHAINES_CAP":"« Mes chaînes » : Hou.la toujours active, Kick, YouTube et TikTok reliés, Twitch bientôt.","SHOT_STORE_ALT":"Capture du Store de Hou.la Connect avec ses vrais packs, classés par popularité : Minecraft Survie, Mario Kart 8 Deluxe, Filtres Snap Camera, Minecraft Chaos (installé), Prat Fall, OBS Change de scène, GTA V Chaos Interactif, Meccha Chameleon.","SHOT_STORE_CAP":"Le Store dans l’app, avec les packs publiés le 29 septembre 2026.","SHOT_LIVE_ALT":"Capture de la Vue Live pendant le live « Soirée Minecraft : Chaos » : les commentaires, dont un message prioritaire, le retour vidéo, les cadeaux reçus, les événements du live et le classement des donateurs.","SHOT_LIVE_CAP":"La Vue Live pendant un live : commentaires, retour vidéo, cadeaux, événements et donateurs.","SHOT_LAB_ALT":"Capture du Lab de Hou.la Connect, pack « Minecraft : Chaos » : un cadeau Lion passe par « Au hasard » (60 % et 40 %), un cadeau Rose par « Si… sinon » qui change la météo, un nouveau follow fait apparaître une créature puis écrit merci dans le chat.","SHOT_LAB_CAP":"Le plan du pack : chaque événement, ses fils, ses actions.","SHOT_LAB2_ALT":"Capture du Lab : une action sélectionnée, ses réglages ouverts (jeu Minecraft, changer la météo, orage) et le bouton ▶ pour la tester.","SHOT_LAB2_CAP":"Une action choisie : tu la règles, et ▶ la teste.","SHOT_LAB3_ALT":"Capture du Lab : le bloc « Au hasard » sélectionné, ses deux sorties réglées à 60 % et 40 %, total 100 %.","SHOT_LAB3_CAP":"« Au hasard » : tu règles les chances de chaque sortie.","SHOT_FICHE_ALT":"Capture de la fiche du pack pour Mario Kart 8 Deluxe : sa bannière, le bouton Installer, 3 installations, 7 événements suivis, une part de 5 % pour son créateur, et ce qu’il pilote : une manette virtuelle.","SHOT_FICHE_CAP":"La fiche d’un pack, avant l’installation : ce qu’il pilote et la part de son créateur.","SHOT_PLUGINS_ALT":"Capture de la vue « Mes plugins » : Clavier, Manette virtuelle et Pilotage bas niveau coupés par défaut ; Sons et voix, Appels internet des packs, RCON et OBS allumés.","SHOT_PLUGINS_CAP":"Tes interrupteurs, dans « Mes plugins ».","SHOT_SONS_ALT":"Capture de la bibliothèque de sons : 18 781 sons partagés, la recherche, les catégories et le tri, et une grille de sons comme « woo wee », « yeah boyyy » ou « Minecraft WaterBucket », chacun avec son auteur et sa catégorie.","SHOT_SONS_CAP":"La bibliothèque de sons, dans l’app.","SHOT_EDITEUR_ALT":"Capture du réglage d’un overlay Bocal : nom, titre, capacité de 1 000 pièces, position, taille et couleurs à gauche ; à droite, l’aperçu en direct du bocal rempli de cadeaux et le bouton « Jouer dans l’aperçu ».","SHOT_EDITEUR_CAP":"Chaque overlay se règle avec son aperçu en direct."},"HC_DEMO":{"G_declencheur":"Quand","G_logique":"Logique","G_action":"Alors","B_ROSE":"Cadeau Rose","B_FOLLOW":"Nouveau follow","B_SUPERCHAT":"Super Chat","B_GIFT":"Cadeau du pack","B_CREEPER":"Un creeper apparaît","B_SCENE":"Scène « Chaos »","B_THANKS":"« Merci Nora ! »","B_LIGHTS":"Tes lumières clignotent","B_IF":"Si","S_IF_SUB":"coins ≥ 100","B_RANDOM":"Au hasard","S_RANDOM_SUB":"1 sortie sur 3","B_ZOMBIE":"Un zombie apparaît","B_NIGHT":"La nuit tombe","W_YES":"oui","W_ELSE":"sinon","DONE":"exécuté","RECEIVED":"reçu","NEXT":"Événement suivant","PAUSE":"Pause","PLAY":"Lecture","A11Y":"Démonstration du Lab : à gauche, des événements de tes chaînes ; à droite, les actions qu'ils déclenchent, reliées par des fils. La phrase suivante raconte l'événement en cours.","L_ROSE":"Nora envoie une Rose sur TikTok : un creeper apparaît dans Minecraft, et ton overlay la remercie.","L_FOLLOW":"Nora te suit sur Kick : ton overlay lui dit merci.","L_SUPERCHAT":"Un Super Chat sur YouTube : OBS passe sur ta scène « Chaos ».","L_GIFT":"Un cadeau de ton pack sur Hou.la : tes lumières clignotent et un creeper apparaît.","L_LAB_BIG":"Un cadeau Hou.la de 500 coins : « Si » passe par « oui », OBS change de scène et ton overlay remercie.","L_LAB_ROSE":"Une Rose sur TikTok : « Au hasard » tire une sortie, et un zombie apparaît.","L_LAB_SMALL":"Un cadeau Hou.la de 10 coins : « Si » passe par « sinon », et « Au hasard » fait tomber la nuit.","L_LAB_FOLLOW":"Un follow sur Kick : ton overlay dit merci, sans passer par la logique."},"HC_PLATFORMS":{"ALWAYS":"toujours active","READY":"prêt","SOON":"bientôt"},"HC_COMMISSION":{"PCT_LABEL":"Ta part","GIFT_LABEL":"Prix du cadeau joué avec ton pack","COINS":"{{n}} coins","YOU_GET":"Tu gagnes","STARS":"{{n}} étoiles","DETAIL":"sur un cadeau de {{coins}} coins. Le streamer garde {{streamer}} étoiles, et le spectateur paie le même prix."},"HC_TICKER":{"LABEL":"Exemples d’interactions","THEN":"déclenche","P1_Q":"Rose sur TikTok","P1_A":"un creeper apparaît dans Minecraft","P2_Q":"Super Chat sur YouTube","P2_A":"OBS passe sur ta scène « Chaos »","P3_Q":"Follow sur Kick","P3_A":"ton overlay dit merci","P4_Q":"Cadeau sur Hou.la","P4_A":"ta Key Light s’allume à 100 %","P5_Q":"100 likes","P5_A":"un son de la bibliothèque","P6_Q":"!planning dans le chat","P6_A":"le chatbot répond","P7_Q":"Un gros cadeau","P7_A":"Bill Balle dans Mario Kart 8 Deluxe","P8_Q":"Un cadeau","P8_A":"ta voix change pendant 30 s","P9_Q":"Objectif atteint","P9_A":"un message part sur ton Discord","P10_Q":"Cadeau sur Hou.la","P10_A":"il tombe dans ton bocal","P11_Q":"/top dans le chat","P11_A":"ton top donateurs s’affiche","P12_Q":"Un message du chat","P12_A":"lu à voix haute","P13_Q":"Un cadeau","P13_A":"OBS garde un replay","P14_Q":"Un cadeau","P14_A":"ton avatar VRChat change"},"HC_STORE":{"PACKS":"packs publiés","PACK_ONE":"pack publié","CREATORS":"créateurs","CREATOR_ONE":"créateur","INSTALL_ONE":"1 installation","LIST_ONE":"Voir le pack du Store","FREE":"pour installer un pack","FREE_VALUE":"0 €","NEW":"Nouveau","LIST":"Voir les {{n}} packs du Store","BY":"par {{name}}","INSTALLS":"{{n}} installations","LIVE_NOTE":"Lu en direct sur le Store de Hou.la Connect.","FALLBACK":"Le Store n’a pas répondu à l’instant. Voici à quoi il ressemble dans l’app :","LOADING":"Chargement du Store…"},"HC_OVERLAYS":{"ALT_CLASSEMENT":"Overlay Top donateurs : un podium, Alice première avec 1 240 pièces, puis Kenji_77 et Zoé, Marek et Lina en dessous (chiffres d’exemple).","ALT_VEDETTE":"Overlay Plus gros cadeau : Alice, 5 000 pièces, cadeau Licorne (chiffres d’exemple).","ALT_MATCH":"Overlay Match de cadeaux : 42 secondes restantes, Alice en tête avec 940 pièces devant Kenji_77, Zoé et Marek (chiffres d’exemple).","ALT_OBJECTIF":"Overlay Objectif likes : 3 100 sur 5 000, 62 %, en cours (chiffres d’exemple).","ALT_CARROUSEL":"Overlay Carrousel : un bandeau « Merci à tous » qui défile.","ALT_BOCAL":"Vidéo du bocal à cadeaux dans l’aperçu de Connect : le bocal se vide, puis les cadeaux y tombent un à un avec une vraie physique, et la jauge monte vers 1 000 pièces (chiffres d’exemple).","PLAY_JAR":"Voir le bocal se remplir","CAPTION":"Les vrais overlays de Connect, rendus par l’app avec ses chiffres d’exemple. Le bocal est filmé dans l’aperçu : « Jouer dans l’aperçu » le vide, puis les cadeaux y tombent."},"HC_DL":{"STARTED":"Téléchargement lancé","TITLE":"Tu es prêt à rendre tes lives interactifs","TEXT":"Le téléchargement de Hou.la Connect pour {{os}} a commencé. Installe-le dès qu'il est terminé.","S1_T":"Installe Hou.la Connect","S1_WIN":"Ouvre le fichier {{fichier}} téléchargé et suis l'installation.","S1_MAC":"Ouvre le fichier {{fichier}} téléchargé et glisse Hou.la Connect dans Applications.","S1_LINUX":"Rends le fichier {{fichier}} exécutable, puis ouvre-le.","S2_T":"Connecte-toi","S2_D":"Ouvre l'app et connecte-toi avec ton compte Hou.la.","S3_T":"Lance ton live","S3_D":"Installe un pack depuis le Store, puis lance ton live.","RETRY_Q":"Le téléchargement n'a pas démarré ?","RETRY":"Relancer","CLOSE":"Fermer"},"GUIDE_OPEN_CART":{"LABEL_INFO":"Bon a savoir","LABEL_WARN":"A retenir","LABEL_RETURN":"Colis qui revient","HERO_KICKER":"Guide · Boutique & livraison","HERO_TITLE":"Le panier ouvert : plusieurs achats, un seul colis","HERO_LEDE":"Ta cliente t'achète un article, puis un autre une heure plus tard, puis encore un le lendemain&nbsp;? Avec le \u003Cb>panier ouvert\u003C/b>, elle ne repaie pas la livraison à chaque fois&nbsp;: tout part dans \u003Cb>un seul colis\u003C/b> et les frais de port sont \u003Cb>mutualisés\u003C/b>
89. Voici comment ça marche, ce que tu règles, et ce que ta cliente voit.","WHATIS_STEP":"Le principe","WHATIS_TITLE":"Un panier qui reste ouvert après le premier achat","WHATIS_BODY":"Quand une cliente achète chez toi, son panier ne se referme pas tout de suite. Il reste \u003Cb>ouvert\u003C/b> pendant une durée que tu choisis. Tant qu'il est ouvert, elle peut revenir ajouter d'autres articles \u003Cb>sans repayer la livraison\u003C/b>, et tu n'as qu'\u003Cb>un seul colis\u003C/b> à préparer.","CARD_ONEBOX_TITLE":"Un seul colis","CARD_ONEBOX_DESC":"Tous les achats de la période partent ensemble, dans le même envoi.","CARD_DEADLINE_TITLE":"Une échéance fixe","CARD_DEADLINE_DESC":"L'heure de fermeture est fixée au premier achat. Les suivants ne la repoussent pas.","CARD_REMINDER_TITLE":"Un rappel automatique","CARD_REMINDER_DESC":"Ta cliente est prévenue 24 h avant la fermeture de son panier.","WHATIS_NOTE":"Le panier ouvert regroupe les achats faits chez \u003Cb>la même vendeuse\u003C/b>. C'est ce qui permet de tout mettre dans un seul colis et de ne facturer la livraison qu'une fois.","STEP1_STEP":"Étape 1","STEP1_TITLE":"Combien de temps le panier reste ouvert","STEP1_BODY":"La durée est \u003Cb>réglée par toi\u003C/b>, dans les réglages de ta boutique. Par défaut elle est de \u003Cb>72 heures\u003C/b>, et tu peux la fixer entre \u003Cb>1 heure et 168 heures\u003C/b> (7 jours).","STEP1_LI1":"Ta cliente passe sa première commande&nbsp;: son panier s'ouvre, et \u003Cb>l'heure de fermeture est fixée à cet instant\u003C/b>.","STEP1_LI2":"Elle peut revenir acheter autant de fois qu'elle veut jusqu'à cette heure-là. \u003Cb>Aucun de ces achats ne repousse l'échéance.\u003C/b>","STEP1_LI3":"\u003Cb>24 heures avant la fermeture\u003C/b>, elle reçoit un rappel automatique&nbsp;: c'est sa dernière occasion d'ajouter quelque chose.","STEP1_WARN":"L'échéance est fixée \u003Cb>au premier achat\u003C/b> et ne bouge plus. Si ta cliente recommande la veille de la fermeture, il ne lui reste que quelques heures&nbsp;: le panier ne repart pas pour un tour.","STEP1_CASES_TITLE":"À l'échéance, il n'y a que deux cas","CASE_LIVE_TITLE":"Elle regarde ton direct","CASE_LIVE_BODY":"Si ta cliente est en train de regarder ton direct au moment où le panier devait fermer, la fermeture est \u003Cb>repoussée de 30 minutes\u003C/b>, autant de fois qu'il le faut, \u003Cb>jusqu'à la fin du direct\u003C/b>.","CASE_CLOSE_TITLE":"Sinon","CASE_CLOSE_BODY":"Le panier \u003Cb>se ferme\u003C/b>.","STEP1_AFTER":"Une fois fermé, le panier devient une commande au statut \u003Cb>«&nbsp;À expédier&nbsp;»\u003C/b>. Tu peux aussi le \u003Cb>fermer à la main\u003C/b>, avant l'échéance, depuis le détail de la commande.","STEP1_CTA":"Régler la durée de mon panier ouvert →","STEP2_STEP":"Étape 2","STEP2_TITLE":"Les frais de port mutualisés","STEP2_BODY":"Les frais de livraison ne dépendent pas du nombre d'articles, mais du \u003Cb>poids total du colis\u003C/b>, découpé en \u003Cb>tranches\u003C/b>. À chaque nouvel achat, le port est recalculé sur le poids total, et ta cliente ne paie que ce qui manque.","FIELD_SAME_K":"L'ajout reste dans la même tranche","FIELD_SAME_V":"0 € de plus","FIELD_UP_K":"L'ajout fait changer de tranche","FIELD_UP_V":"seulement la différence","FIELD_LOCK_K":"Transporteur","FIELD_LOCK_V":"verrouillé au 1er achat","STEP2_ALREADY":"Quand l'ajout ne coûte rien de plus, ta cliente voit la ligne \u003Cb>«&nbsp;Livraison (déjà réglée)&nbsp;»\u003C/b> dans son récapitulatif&nbsp;: elle comprend tout de suite qu'elle ne repaie pas le port.","STEP2_WARN":"Si le recalcul donne un montant \u003Cb>inférieur\u003C/b> à ce qui a déjà été payé, la différence \u003Cb>n'est pas remboursée\u003C/b>&nbsp;: ta cliente ne paie simplement rien de plus. Et le \u003Cb>transporteur est verrouillé au premier achat\u003C/b>, puisque tout part ensemble.","STEP2_NOTE":"Chaque ajustement de port est \u003Cb>tracé dans l'historique de la commande\u003C/b>, \u003Cb>y compris quand il vaut 0 €\u003C/b>. C'est cette ligne à 0 € qui prouve qu'on est resté dans la même tranche de poids&nbsp;: si une cliente te demande pourquoi elle n'a rien payé de plus, la réponse est là.","STEP3_STEP":"Étape 3","STEP3_TITLE":"Le retrait sur place (Click & 
89Collect)","STEP3_BODY":"Tu peux proposer à tes clientes de venir chercher leur commande. L'option est \u003Cb>désactivée par défaut\u003C/b>&nbsp;: tu l'actives dans les réglages de ta boutique et tu renseignes ton \u003Cb>adresse de retrait\u003C/b>.","STEP3_LI1":"C'est \u003Cb>gratuit\u003C/b> pour ta cliente&nbsp;: \u003Cb>0 € de frais de port\u003C/b>.","STEP3_LI2":"Tu choisis le \u003Cb>rayon\u003C/b> dans lequel l'option est proposée. Si tu ne règles rien, c'est \u003Cb>20 km\u003C/b>.","STEP3_LI3":"Si la \u003Cb>position de ta cliente est inconnue\u003C/b>, l'option lui est \u003Cb>quand même proposée\u003C/b>&nbsp;: personne n'est écarté parce qu'on n'a pas su la localiser.","STEP3_NOTE":"Pas de colis, donc \u003Cb>pas d'étiquette\u003C/b> et \u003Cb>pas d'éco-participation\u003C/b>. Tu remets la commande en main propre, c'est tout.","STEP3_CTA":"Activer le retrait sur place →","STEP4_STEP":"Étape 4","STEP4_TITLE":"Les trois modes d'expédition","STEP4_BODY":"Quand le panier est fermé et la commande prête à partir, tu as \u003Cb>trois façons\u003C/b> d'envoyer le colis. Tu choisis celle qui colle à ton organisation.","MODE_MANUAL_TITLE":"Expédition manuelle","MODE_MANUAL_BODY":"Tu expédies avec \u003Cb>tes propres outils\u003C/b>, puis tu saisis le \u003Cb>transporteur\u003C/b> et le \u003Cb>numéro de suivi\u003C/b> dans la commande.","MODE_SENDCLOUD_TITLE":"Ton propre compte Sendcloud","MODE_SENDCLOUD_BODY":"Tu génères tes \u003Cb>étiquettes depuis Hou.la\u003C/b>, mais elles sont \u003Cb>facturées sur ton contrat\u003C/b> Sendcloud. Le \u003Cb>suivi est automatique\u003C/b>.","MODE_HOULA_TITLE":"Hou.la Shipping","MODE_HOULA_BODY":"\u003Cb>Aucun contrat à souscrire.\u003C/b> Le port est \u003Cb>encaissé par la plateforme\u003C/b>, ton \u003Cb>étiquette se génère en un clic\u003C/b> et le \u003Cb>suivi est automatique\u003C/b>.","STEP4_WARN":"Dans \u003Cb>les trois cas\u003C/b>, le statut \u003Cb>«&nbsp;Expédiée&nbsp;»\u003C/b> exige \u003Cb>le transporteur ET le numéro de suivi\u003C/b>. S'il en manque un seul, la commande \u003Cb>reste «&nbsp;À expédier&nbsp;»\u003C/b>.","STEP4_RETURN":"Un colis \u003Cb>refusé\u003C/b> ou \u003Cb>non retiré\u003C/b> qui te revient passe au statut \u003Cb>«&nbsp;Retournée&nbsp;»\u003C/b>. Ton acheteuse est prévenue que \u003Cb>son colis est revenu\u003C/b>, jamais qu'il a été livré.","FAQ_STEP":"Questions fréquentes","FAQ_TITLE":"Ce qu'on nous demande le plus","FAQ_Q1":"Ma cliente peut-elle acheter plusieurs fois sans repayer la livraison&nbsp;?","FAQ_A1":"Oui, c'est exactement le principe. Tant que son panier est ouvert, tous ses achats chez toi partent dans le même colis, et le port n'est facturé qu'une fois, sur le \u003Cb>poids total\u003C/b>.","FAQ_Q2":"Chaque nouvel achat repousse-t-il la fermeture&nbsp;?","FAQ_A2":"Non. L'échéance est fixée \u003Cb>au premier achat\u003C/b> et ne bouge plus. La seule chose qui la décale, c'est ta cliente en train de \u003Cb>regarder ton direct\u003C/b> à l'heure de fermeture&nbsp;: la fermeture est alors repoussée de 30 minutes à la fois, jusqu'à la fin du direct.","FAQ_Q3":"Et si le nouveau calcul du port est plus bas&nbsp;?","FAQ_A3":"La différence \u003Cb>n'est pas remboursée\u003C/b>. Ta cliente ne paie simplement rien de plus.","FAQ_Q4":"Puis-je fermer le panier avant l'heure&nbsp;?","FAQ_A4":"Oui. Depuis le \u003Cb>détail de la commande\u003C/b>, tu peux le fermer à la main&nbsp;: il devient aussitôt une commande \u003Cb>«&nbsp;À expédier&nbsp;»\u003C/b>.","FAQ_Q5":"Pourquoi l'historique montre un ajustement de port à 0 €&nbsp;?","FAQ_A5":"Parce que l'ajout de ta cliente est \u003Cb>resté dans la même tranche de poids\u003C/b>. La ligne est écrite même quand elle vaut 0 €&nbsp;: c'est la preuve que le calcul a bien eu lieu.","CTA_TITLE":"Prête à ouvrir tes paniers&nbsp;?","CTA_BODY":"Durée du panier ouvert, retrait sur place et mode d'expédition se règlent tous au même endroit, dans les réglages de ta boutique.","CTA_BUTTON":"Ouvrir les réglages de ma boutique","CTA_LINKS":"Une commande à traiter tout de suite&nbsp;? ","CTA_LINK_ORDERS":"Voir mes commandes →"},"GUIDE_LIVE_EVENTS":{"HERO_KICKER":"Guide · Live & événements","HERO_TITLE":"Tes cadeaux de live déclenchent de vraies actions","HERO_LEDE":"Quelqu'un t'envoie un cadeau pendant ton live&nbsp;? Fais-en un \u003Cb>événement dans le monde réel\u003C/b>&nbsp;: une explosion de TNT dans \u003Cb>Minecraft\u003C/b>, une \u003Cb>alerte animée sur ton overlay OBS\u003C/b>, tes \u003Cb>lumières\u003C/b> qui clignotent, ton \u003Cb>bot\u003C/b> qui parle. Pas besoin d'être développeur&nbsp;: tu crées une clé, tu copies un petit bout de code, et c'est parti. On te montre étape par étape.","HERO_NOCODE":"\u003Cb>Pas envie de coder&nbsp;?\u003C/b> Utilise l'app \u003Ca href=\"/apps/houla-connect\">Hou.la Connect\u003C/a>&nbsp;: installe un pack, aucune ligne de code. Ce guide, lui, est la voie \u003Cb>développeur\u003C/b>.","WHATIS_STEP":"C'est quoi&nbsp;?","WHATIS_TITLE":"Un pont entre ton live et ce que tu veux","WHATIS_BODY":"Hou.la t'envoie \u003Cb>en temps réel\u003C/b> tout ce qui se passe sur tes lives (cadeaux, cœurs, chat…). Un petit programme écoute ces événements sur ton PC et fait \u003Cb>ce que TU décides\u003C/b>. Quelques idées&nbsp;:","CARD_GAME_TITLE":"Dans le jeu","CARD_GAME_DESC":"Un cadeau = un mob qui apparaît, un boss, une pluie de TNT dans Minecraft.","CARD_OBS_TITLE":"Sur ton overlay OBS","CARD_OBS_DESC":"Une alerte animée avec le pseudo de la personne et le cadeau qu'elle vient d'offrir.","CARD_ROOM_TITLE":"Dans ta pièce","CARD_ROOM_DESC":"Tes lumières connectées passent en rouge, ton bot lance un son ou un message.","WHATIS_NOTE":"Si tu as déjà utilisé \u003Ccode>tiktok-live-connector\u003C/code>, tu es en terrain connu&nbsp;: tu ouvres une connexion, tu écoutes des événements, c'est tout.","STEP1_STEP":"Étape 1","STEP1_TITLE":"Crée ta clé d'événement","STEP1_BODY":"Le programme se connecte avec une \u003Cb>clé\u003C/b>, pas avec ton mot de passe. Cette clé est \u003Cb>en lecture seule\u003C/b>&nbsp;: elle peut \u003Cb>recevoir\u003C/b> tes événements, rien d'autre. Elle ne peut ni poster, ni dépenser, ni modifier quoi que ce soit sur ton compte.","STEP1_LI1":"Ouvre ton \u003Cb>Studio\u003C/b> Hou.la, puis \u003Cb>« Clés d'événements&nbsp;»\u003C/b>.","STEP1_LI2":"Clique sur \u003Cb>« Nouvelle clé&nbsp;»\u003C/b>, donne-lui un nom et coche les événements que tu veux (commence par \u003Cb>Cadeaux\u003C/b>).","STEP1_LI3":"\u003Cb>Copie la clé tout de suite\u003C/b>&nbsp;: elle s'affiche \u003Cb>une seule fois\u003C/b>. Elle ressemble à \u003Ccode>hle_••••••••••••\u003C/code>.","STEP1_WARN":"\u003Cb>Garde ta clé pour toi.\u003C/b> Si elle fuite, ouvre à nouveau tes clés d'événements et clique sur \u003Cb>« Régénérer&nbsp;»\u003C/b>&nbsp;: l'ancienne cesse aussitôt de fonctionner.","STEP1_CTA":"Ouvrir mes clés d'événements →","STEP2_STEP":"Étape 2","STEP2_TITLE":"Installe le connecteur","STEP2_NOCODE_TITLE":"Le plus simple : sans une ligne de code","STEP2_NOCODE_BODY":"Télécharge l'appli connecteur (Windows, Mac ou Linux), double-clique, colle ta clé d'événement. C'est tout. Elle tourne en fond et déclenche tes effets, dans ton jeu, sur tes lumières, ton ASMR ou ton overlay. \u003Cb>
89À savoir\u003C/b> : le pilotage direct d'un jeu (manette virtuelle, clavier bas niveau) n'existe que dans la version Windows ; Minecraft, OBS, la domotique et les webhooks marchent sur les trois systèmes.","STEP2_NOCODE_CTA":"Télécharger le connecteur →","STEP2_NOCODE_PACKS":"Et avec un pack prêt à l'emploi (comme le pack Minecraft), les cadeaux sont déjà reliés à des effets: rien à configurer. Parcours les packs sur","STEP2_BODY_A":"Il te faut \u003Cb>Node.js 18 ou plus récent\u003C/b> installé sur ton PC (","STEP2_BODY_B":"). Ensuite, dans un terminal&nbsp;:","STEP2_SKELETON":"Le squelette minimal ressemble à ça :","STEP2_NOTE":"Le connecteur ouvre une \u003Cb>WebSocket\u003C/b> vers Hou.la et te pousse les événements dès qu'ils arrivent. Rien à exposer sur ton réseau&nbsp;: ça marche depuis un PC derrière ta box, sans config.","STEP3_STEP":"Étape 3","STEP3_TITLE":"Choisis ta recette","STEP3_OBS_TITLE":"✨ Alerte sur ton overlay OBS","STEP3_OBS_BODY":"Le plus simple pour commencer&nbsp;: à chaque cadeau, tu fabriques une \u003Cb>alerte\u003C/b> (pseudo + cadeau + quantité) que tu affiches dans une \u003Cb>Source navigateur\u003C/b> OBS.","STEP3_OBS_FILE_A":"Le fichier","STEP3_OBS_FILE_B":"est le point de départ&nbsp;: il affiche chaque cadeau reçu.","STEP3_MC_TITLE":"🎮 Une action dans Minecraft (RCON)","STEP3_MC_BODY":"La recette culte&nbsp;: un viewer envoie un cadeau, et \u003Cb>le jeu réagit\u003C/b>. On envoie une commande à ton serveur Minecraft via \u003Cb>RCON\u003C/b> (à activer dans \u003Ccode>server.properties\u003C/code>). À toi d'associer chaque cadeau à la commande de ton choix&nbsp;:","STEP3_MC_FILE_A":"L'exemple complet, prêt à lancer, est dans","STEP3_MC_FILE_B":".","STEP3_NOTE_A":"Toutes les recettes vivent dans le dossier","STEP3_NOTE_B":"du dépôt. Copie celle qui t'intéresse et adapte-la.","STEP4_STEP":"Étape 4","STEP4_TITLE":"Associe tes cadeaux","STEP4_BODY":"Pour brancher un cadeau à une action, tu as besoin de son \u003Cb>slug\u003C/b> (son identifiant stable). La liste complète et toujours à jour des cadeaux est \u003Cb>publique\u003C/b>, aucune clé requise&nbsp;:","STEP4_EXAMPLES_INTRO":"Ouvre cette URL dans ton navigateur pour voir tous les cadeaux actifs. Trois exemples réels&nbsp;:","STEP4_FIELD_SMALL":"Petit cadeau","STEP4_FIELD_MEDIUM":"Cadeau moyen","STEP4_FIELD_BIG":"Gros cadeau","STEP4_NOTE":"\u003Cb>Associe sur le \u003Ccode>slug\u003C/code>, pas sur le nom.\u003C/b> Le nom affiché peut changer ou être traduit&nbsp;; le slug, lui, ne bouge pas. Le champ \u003Ccode>coinCost\u003C/code> te donne la valeur en coins&nbsp;: parfait pour une logique \u003Cb>«&nbsp;plus le cadeau est gros, plus la réaction est folle&nbsp;»\u003C/b>. Récupère la liste au démarrage plutôt que de l'écrire en dur&nbsp;: les nouveaux cadeaux y apparaissent tout seuls.","STEP5_STEP":"Étape 5","STEP5_TITLE":"Passe en live et teste","STEP5_LI1":"Lance ton programme&nbsp;: \u003Ccode>node mon-script.js\u003C/code>. Tu devrais voir \u003Cb>«&nbsp;Listening for gifts…&nbsp;»\u003C/b>.","STEP5_LI2":"Démarre ton live sur Hou.la.","STEP5_LI3":"Envoie-toi un petit cadeau (ou demande à un abonné)&nbsp;: ton action se déclenche dans la foulée. 🎉","STEP5_TEST":"Astuce&nbsp;: pour tester tout de suite, sans live ni coins, déclenche un cadeau factice en local&nbsp;:","FAQ_Q1":"Rien ne se passe.","FAQ_A1":"Vérifie que la clé est bien collée (sans espace en trop) et qu'elle n'a pas été régénérée. Le message \u003Ccode>connected\u003C/code> confirme que la clé est acceptée.","FAQ_Q2":"Le même cadeau se déclenche deux fois.","FAQ_A2":"C'est possible juste après une reconnexion. Dé-doublonne sur \u003Ccode>gift.transactionId\u003C/code> (voir le snippet Minecraft).","FAQ_Q3":"Je veux d'autres événements (cœurs, chat…).","FAQ_A3":"Coche-les sur ta clé&nbsp;: ils arriveront sur le même canal \u003Ccode>event\u003C/code>, sans rien changer à ton code.","CTA_TITLE":"Prêt à faire réagir ton live&nbsp;?","CTA_BODY":"Crée ta clé d'événement, installe le connecteur et branche ta première recette.","CTA_BUTTON":"Créer ma clé d'événement","CTA_LINKS":"Le co
89de, les exemples et la doc technique&nbsp;:"},"PAGES":{"BRAND":{"EYEBROW":"Brand Kit","TITLE":"La marque Hou.la","SUB":"Logos, couleurs, typographie et règles d'usage. Merci de respecter ces guidelines quand vous parlez de Hou.la ou utilisez nos assets.","DOWNLOAD_KIT":"Télécharger le kit (.zip)","DOWNLOAD_ALL":"Télécharger tout le kit (.zip)","VIEW_ASSETS":"Voir les assets","LOGO_H":"Logo","LOGO_P":"Le logo Hou.la existe en version claire (fond sombre) et sombre (fond clair). Toujours en SVG dès que possible.","LOGO_LIGHT":"Logo: clair (fond sombre)","LOGO_DARK":"Logo: sombre (fond clair)","PILL_H":"Pastille (pill): icône de l'app","PILL_P":"La pastille est l'icône de l'application Hou.la. À utiliser aussi pour les avatars, badges et réseaux sociaux. Choisissez la variante selon le fond.","PILL_BLUE":"Pill: bleu","PILL_WHITE_BLUE":"Pill: blanc / bleu","PILL_WHITE":"Pill: blanc / noir","PILL_BLACK":"Pill: noir / blanc","ICON_H":"Icône","ICON_P":"Le symbole seul: pour les avatars, favicons et petites tailles. Quatre variantes selon le fond.","ICON_WHITE":"Icône: blanche","ICON_BLUE":"Icône: bleue","ICON_BLACK":"Icône: noire","ICON_DARK":"Icône: sombre","COLORS_H":"Couleurs","COLORS_P":"Thème sombre, un seul accent : le bleu Hou.la. Cliquez sur une couleur pour copier son code hexadécimal.","COPIED":"Copié !","COPY":"Copier","R_ACCENT":"Bleu Hou.la: accent unique","R_ACCENT_BRIGHT":"Hover / états actifs","R_PAPER":"Fond principal","R_SURFACE":"Cartes / panneaux","R_SURFACE2":"Éléments surélevés","R_INK":"Texte principal","R_LIVE":"Signal live: usage réservé","R_DISCORD":"Communauté","TYPE_H":"Typographie","TYPE_P":"\u003Cstrong>Inter\u003C/strong> pour les titres et le corps, \u003Cstrong>Space Mono\u003C/strong> pour les labels et kickers.","USAGE_H":"Usage","USAGE_P":"Quelques règles pour garder la marque cohérente.","DO":"À faire","DONT":"À éviter","DO_1":"Utiliser le logo tel quel, sans le modifier.","DO_2":"Laisser une zone de protection au moins égale à la hauteur de l'icône.","DO_3":"Poser le logo clair sur fond sombre, le logo sombre sur fond clair.","DO_4":"Utiliser le bleu #2F8EEF comme accent unique.","DONT_1":"Ne pas déformer, étirer ni faire pivoter le logo.","DONT_2":"Ne pas recolorer le logo ni l'icône.","DONT_3":"Ne pas ajouter d'ombre, de contour ou d'effet.","DONT_4":"Ne pas placer le logo sur un fond qui nuit à sa lisibilité.","PRESS_H":"Presse","PRESS_P":"Description prête à l'emploi + contact.","PRESS_CONTACT":"Contact presse :"},"TOOLS_OG":{"EYEBROW":"OUTIL · APERÇU SOCIAL","TITLE":"Debugger OG","SUB":"Colle une URL et vois exactement comment elle apparaîtra en aperçu sur Facebook, X (Twitter) et LinkedIn : image, titre, description, plus une analyse des balises Open Graph / Twitter et de l'image de partage.","ANALYSE":"Analyser","ERR_PRIVATE":"Cible interdite : cette adresse pointe vers un réseau privé ou interne.","ERR_RATE":"Trop de requêtes. Réessaie dans une minute.","ERR_GENERIC":"Impossible d'analyser cette URL. Vérifie qu'elle est valide et accessible publiquement.","ERRORS":"erreurs","WARNINGS":"avertissements","PASSED":"OK","PREVIEWS_H":"Aperçus des cartes","PREVIEWS_P":"Rendu simulé sur chaque plateforme (le rendu réel peut varier légèrement).","NO_TITLE":"(aucun titre)","CHECKS_H":"Diagnostic","IMAGE_H":"Image de partage","IMG_DIMS":"Dimensions réelles","IMG_WEIGHT":"Poids","IMG_TYPE":"Type","IMG_URL":"URL","NO_IMAGE_FOUND":"Aucune image de partage détectée (og:image / twitter:image).","META_H":"Balises détectées","OFFICIAL_H":"Forcer un nouveau scrape","OFFICIAL_P":"Les plateformes gardent leur propre cache. Ouvre leur debugger officiel pour forcer un nouveau scrape après un changement.","OFFICIAL_NOTE":"X (Twitter) n'a plus de validateur : il re-scrape automatiquement (~7 jours).","COPY_URL":"Copier l'URL","COPIED":"Copié !","HOULA_CARD":"Hou.la","RESCRAPE_HOULA":"Forcer le re-scrape sur Hou.la","RESCRAPE_DONE":"Cache Hou.la rafraîchi: la carte est à jour.","RESCRAPE_ERROR":"Échec du re-scrape. Vérifie l'URL et réessaie.","CHECK":{"FETCH_FAILED":"Échec de la récupération de la page ({{error}}
89).","NO_TITLE":"Aucun titre : ni og:title ni balise \u003Ctitle>.","NO_OG_TITLE":"og:title manquant (repli sur \u003Ctitle>).","TITLE_LONG":"Titre long ({{len}} car.) : risque de troncature.","TITLE_OK":"Titre présent.","NO_DESCRIPTION":"Description manquante (og:description).","DESCRIPTION_LONG":"Description longue ({{len}} car.) : sera tronquée.","DESCRIPTION_OK":"Description présente.","NO_IMAGE":"Aucune image de partage (og:image) : la carte sera dégradée.","IMAGE_UNREACHABLE":"Image inaccessible ({{error}}).","IMAGE_NOT_IMAGE":"og:image n'est pas une image ({{type}}).","IMAGE_TOO_SMALL":"Image trop petite ({{w}}×{{h}}) : minimum 200×200.","IMAGE_LOWRES":"Image basse résolution ({{w}}×{{h}}) : vise ≥ 600 de large.","IMAGE_SIZE_OK":"Image {{w}}×{{h}}.","IMAGE_RATIO":"Ratio {{ratio}} : recommandé ~1.91:1 (sinon rognage).","IMAGE_DECLARED_MISMATCH":"og:image:width/height ne correspond pas aux dimensions réelles.","IMAGE_TOO_HEAVY":"Image trop lourde ({{mb}} Mo) : maximum 8 Mo.","IMAGE_HEAVY":"Image lourde ({{mb}} Mo) : allège pour un chargement rapide.","NO_TWITTER_CARD":"twitter:card manquant (repli sur summary, petite carte).","IMAGE_RECO":"Recommandé : {{w}}×{{h}} pour un grand aperçu."}},"ABOUT":{"TITLE":"À propos de","SUBTITLE":"Le réseau social des créateurs: des lives, des vidéos, une communauté: et une marketplace intégrée pour vendre et acheter en direct.","DESCRIPTION":"Hou.la est un projet français indépendant. Nous construisons un réseau social où créateurs et marques diffusent en live, publient des vidéos et vendent leurs produits, dans le respect de vos données.","MISSION_BADGE":"Qui sommes-nous","MISSION_TITLE":"Un réseau social français, indépendant et pensé pour les créateurs","MISSION_P1":"Hou.la réunit en une seule app ce qui était éclaté entre dix autres: un feed de vidéos courtes, des lives interactifs, des profils, la messagerie et une marketplace où l'on achète directement au créateur: pendant le live ou depuis son profil.","MISSION_P2":"Hébergé en France et conforme au RGPD, sans revente de données personnelles. Les contenus et les produits sont modérés en continu par une intelligence artificielle multimodale. Tout est gratuit : Hou.la se rémunère uniquement via une commission unique de 5% sur les ventes réalisées sur la marketplace.","VALUE_1_TITLE":"Créateur d'abord","VALUE_1_DESC":"Publier, diffuser en live, vendre et être payé : tout est gratuit, sans abonnement ni paywall.","VALUE_2_TITLE":"Sécurité & modération","VALUE_2_DESC":"Modération IA des vidéos, lives, photos et produits. Données hébergées en France, RGPD, aucune revente.","VALUE_3_TITLE":"Transparence","VALUE_3_DESC":"Un seul modèle : gratuit, avec 5% de commission sur les ventes. Pas de frais cachés.","VALUE_4_TITLE":"Performance","VALUE_4_DESC":"Lecture vidéo instantanée, lives basse latence, infrastructure optimisée pour le direct.","EXCLUSIVE_TITLE":"Ce qui nous distingue","EXCLUSIVE_SUBTITLE":"Un réseau social et une marketplace réunis, pensés pour les créateurs et leurs communautés","EXCLUSIVE_BADGE_WORLD":"EXCLUSIVITÉ","EXCLUSIVE_BADGE_BEST":"LE PLUS COMPLET","EXCLUSIVE_BADGE_FREE":"GRATUIT","EXCLUSIVE_BADGE_INCLUDED":"INCLUS","EXCLUSIVE_1_TITLE":"Live shopping en direct","EXCLUSIVE_1_DESC":"Diffusez en live et vendez vos produits en temps réel : vos spectateurs achètent sans jamais quitter le direct.","EXCLUSIVE_2_TITLE":"Feed de découverte « Pour toi »","EXCLUSIVE_2_DESC":"Un algorithme met en avant vos vidéos et vos lives auprès des bonnes communautés, même sans audience de départ.","EXCLUSIVE_3_TITLE":"Cadeaux virtuels & monétisation","EXCLUSIVE_3_DESC":"Votre communauté vous soutient avec des cadeaux pendant vos lives ; convertissez-les en revenus reversés sur votre compte.","EXCLUSIVE_4_TITLE":"Marketplace intégrée","EXCLUSIVE_4_DESC":"Produits physiques, numériques et services, vendus depuis votre profil ou vos lives. Commission unique de 5%, zéro abonnement.","EXCLUSIVE_5_TITLE":"Profil créateur complet","EXCLUSIVE_5_DESC":"Vidéos, lives, photos, stories, sons, messagerie, page Link-in-bio et boutique: réunis sur un seul profil hou.la/@vous.","EXCLUSIVE_6_TIT
89LE":"Outils de partage & liens","EXCLUSIVE_6_DESC":"Raccourcisseur de liens, QR codes et pages Link-in-bio inclus pour diffuser vos contenus et votre boutique partout.","PRICING_TITLE":"Gratuit, monétisé à la réussite","PRICING_DESC":"Toutes les fonctionnalités sont gratuites: lives, vidéos, profil, messagerie, marketplace et outils de partage: sans carte bancaire ni abonnement. Hou.la se rémunère uniquement via une commission unique de 5% sur les ventes réalisées sur la marketplace.","CTA_SIGNUP":"Créer un compte gratuit","CTA_PLANS":"Découvrir l'app","NO_CC":"Sans carte bancaire · 100% gratuit, 5% de commission uniquement sur les ventes","FAQ_TITLE":"Questions fréquentes","FAQ_SUBTITLE":"Tout ce que vous voulez savoir sur Hou.la","FAQ_1_Q":"Qu'est-ce que Hou.la ?","FAQ_1_A":"Hou.la est un réseau social français où les créateurs diffusent des lives, publient des vidéos et vendent leurs produits via une marketplace intégrée. Regardez, discutez, soutenez vos créateurs et achetez en direct, le tout dans une seule app.","FAQ_2_Q":"Hou.la est-il gratuit ?","FAQ_2_A":"Oui, totalement. Créer un compte, publier des vidéos, diffuser en live, ouvrir une boutique et utiliser tous les outils est \u003Cstrong>gratuit\u003C/strong>. Hou.la se rémunère uniquement via une commission unique de 5% sur les ventes réalisées sur la marketplace.","FAQ_3_Q":"Comment gagner de l'argent sur Hou.la ?","FAQ_3_A":"De deux façons : en vendant des produits, services ou contenus via votre boutique (Hou.la prélève 5%), et en recevant des cadeaux virtuels de votre communauté pendant vos lives, que vous pouvez convertir en revenus reversés sur votre compte bancaire via notre prestataire de paiement.","FAQ_4_Q":"Comment fonctionne le live shopping ?","FAQ_4_A":"Lancez un live depuis l'app, épinglez vos produits, et vos spectateurs achètent en un geste sans quitter le direct. Le paiement est sécurisé par Stripe et la commande gérée depuis votre espace vendeur.","FAQ_5_Q":"Qu'est-ce que les cadeaux et les coins ?","FAQ_5_A":"Les spectateurs achètent des « coins » (monnaie virtuelle) via l'App Store ou Google Play pour envoyer des cadeaux à leurs créateurs pendant les lives. Les créateurs accumulent ces soutiens et peuvent en demander le reversement en euros, après vérification d'identité.","FAQ_6_Q":"Que puis-je vendre sur la marketplace ?","FAQ_6_A":"Des produits physiques, des produits numériques et des services, tant qu'ils respectent la loi et notre politique de produits autorisés. Chaque produit est modéré automatiquement par IA. Les catégories interdites (armes, contrefaçons, etc.) sont détaillées dans nos CGU.","FAQ_7_Q":"Où sont hébergées les données ?","FAQ_7_A":"Toutes les données sont hébergées en \u003Cstrong>France\u003C/strong>, conformément au RGPD. Aucune donnée personnelle n'est revendue. Les contenus et les produits sont modérés en continu pour protéger la communauté.","FAQ_8_Q":"Faut-il l'application mobile ?","FAQ_8_A":"Hou.la est avant tout une app mobile (iOS et Android) pour vivre les lives, le feed et la messagerie. Le web permet de découvrir les profils, les boutiques et de partager vos liens. Les outils historiques (liens courts, QR codes, Link-in-bio) restent disponibles.","CTA_CAREERS":"Nous rejoindre"},"EXPLORER":{"TITLE":"Explorez les meilleures pages Link in Bio","SUBTITLE":"Découvrez des profils inspirants créés avec Hou.la dans le sport, la tech, la musique, le gaming et bien d'autres domaines.","ALL":"Tous","NO_RESULTS":"Aucun profil trouvé dans cette catégorie.","CTA_TITLE":"Créez votre propre page Link in Bio","CTA_SUBTITLE":"Rejoignez des milliers de créateurs et partagez tous vos liens en une seule page.","CTA_BUTTON":"Créer ma page gratuitement","CAT":{"DIVERTISSEMENT":"Divertissement","TECH":"Tech","SPORT":"Sport","MODE":"Mode","EDUCATION":"Éducation","GAMING":"Gaming","BUSINESS":"Business","MUSIQUE":"Musique","MEDIA":"Média","CUISINE":"Cuisine","INFLUENCEUR":"Influenceur","SANTE":"Santé","VOYAGE":"Voyage","ART":"Art"}},"FAQ":{"TITLE_1":"Questions","TITLE_2":"fréquentes","SUBTITLE_1":"Vidéos, lives, marketplace et outils de partage : tout savoir sur Hou.la,","SUBTITLE_HIGHLIGHT":"gratuit et souverain"},"PRICING":{"BADGE_FREE":"PLAN GRATUIT DISPONIBLE","TITLE_1":"Tarifs","SUBTITLE_1":"Des plans adaptés à vos besoins,","SUBTITLE_HIGHLIGHT":"toutes les fonctionnalités de création incluses","DESCRIPTION":"Liens illimités, QR Codes, UTM, Link in Bio, Analytics et API pour tous les plans. Montez en gamme pour plus de domaines, membres d'équipe et options avancées.","TOGGLE_MONTHLY":"Mensuel","TOGGLE_YEARLY":"Annuel","YEARLY_DISCOUNT":"Économisez jusqu'à 17%","MONTH":"mois","YEAR":"an","PLAN_FREE_TITLE":"Free","PLAN_FREE_SUBTITLE":"Pour commencer","PLAN_FREE_PRICE":"0","PLAN_FREE_CTA":"Commencer gratuitement","PLAN_PRO_TITLE":"Pro","PLAN_PRO_SUBTITLE":"Pour les professionnels","PLAN_PRO_CTA":"S'abonner au Pro","PLAN_PRO_POPULAR":"POPULAIRE","PLAN_BIZ_TITLE":"Business","PLAN_BIZ_SUBTITLE":"Pour les équipes","PLAN_BIZ_CTA":"S'abonner au Business","PLAN_ASSO_TITLE":"Association","PLAN_ASSO_SUBTITLE":"Plan Pro offert aux associations","PLAN_ASSO_CTA":"Faire une demande","PLAN_ASSO_BADGE":"GRATUIT","FEAT_L
89INKS":"Liens raccourcis","FEAT_QR":"QR Codes personnalisables","FEAT_UTM":"Variables UTM","FEAT_BIO":"Link in Bio","FEAT_ANALYTICS":"Analytics complets","FEAT_API":"API REST + SDK","FEAT_PASSWORD":"Protection par mot de passe","FEAT_EXPIRY":"Liens éphémères","FEAT_SMART":"Smart Routing","FEAT_AB":"A/B Testing","FEAT_WEBHOOKS":"Webhooks","FEAT_PIXELS":"Retargeting Pixels","FEAT_SAFE":"Anti-malware","FEAT_FR":"Hébergement en France (RGPD)","FEAT_LINK_RATE":"Création de liens","FEAT_DOMAINS":"Domaines personnalisés","FEAT_MEMBERS":"Membres d'équipe","FEAT_BIO_PAGES":"Pages Bio","FEAT_TAGS":"Tags","FEAT_API_KEYS":"Clés API","FEAT_STATS_RETENTION":"Rétention statistiques","FEAT_API_RATE":"Débit API","FEAT_DOMAIN_FINDER":"Domain Finder IA","FEAT_CSV":"Export CSV","FEAT_BRANDING":"Sans badge Hou.la","FEAT_SHOP":"Marketplace & Boutique en ligne","LIMIT_UNLIMITED":"Illimité","LIMIT_PER_DAY":"/jour","LIMIT_PER_MIN":"/min","LIMIT_PER_MONTH":"/mois","LIMIT_DAYS":"jours","LIMIT_YEAR":"1 an","COMPARE_TITLE":"Comparatif détaillé","COMPARE_SUBTITLE":"Toutes les fonctionnalités plan par plan","TABLE_FEATURE":"Fonctionnalité","TABLE_FREE":"Free","TABLE_PRO":"Pro","TABLE_BIZ":"Business","CATEGORY_CREATION":"Création de liens","CATEGORY_LIMITS":"Limites et quotas","CATEGORY_DATA":"Données et export","CATEGORY_SHOP":"Marketplace & Boutique","FEAT_SHOP_COMMISSION":"Commission sur ventes (taux unique)","FAQ_TITLE":"Questions sur les tarifs","FAQ_Q1":"Les fonctionnalités de création de liens sont-elles vraiment toutes gratuites ?","FAQ_A1":"Oui. Tous les plans incluent liens illimités, QR Codes, UTM, Link in Bio, Smart Routing, A/B Testing, protection par mot de passe, liens éphémères, webhooks, retargeting pixels et bien plus. Aucune fonctionnalité de création n'est payante.","FAQ_Q2":"Qu'est-ce qui change avec Pro ou Business ?","FAQ_A2":"Les plans payants augmentent vos quotas (domaines personnalisés, membres d'équipe, pages bio), allongent la rétention de statistiques, débloquent l'export CSV, et retirent le badge Hou.la de vos QR Codes et pages Bio.","FAQ_Q3":"Le plan Association est-il vraiment gratuit ?","FAQ_A3":"Oui. Les associations loi 1901 (ou équivalent) bénéficient du plan Pro sans frais. Envoyez votre justificatif via le formulaire de demande et votre workspace sera converti sous 48h.","FAQ_Q4":"Puis-je changer de plan à tout moment ?","FAQ_A4":"Absolument. Vous pouvez passer au Pro ou au Business à tout moment. Si vous réduisez votre plan, le changement prend effet à la fin de la période de facturation en cours.","FAQ_Q5":"Quels moyens de paiement acceptez-vous ?","FAQ_A5":"Nous acceptons les cartes bancaires (Visa, Mastercard, Amex) via Stripe. Le paiement est sécurisé et conforme PCI DSS.","FAQ_Q6":"Quelle est la commission sur les ventes en boutique ?","FAQ_A6":"Hou.la prélève une commission unique de 5% sur chaque vente réalisée via votre boutique en ligne, sans abonnement ni frais fixe. Ces frais couvrent le traitement des paiements, l'hébergement et la protection anti-fraude.","SAVINGS_TITLE":"Économisez avec Hou.la","SAVINGS_SUBTITLE":"Comparez ce que vous payeriez ailleurs","SAVE":"Économisez","CTA_SIGNUP":"Créer un compte gratuit","NO_CC":"Pas de carte bancaire requise"},"SUPPORT":{"TITLE":"Bienvenue sur le Support de","INTRO":"Que vous utilisiez Hou.la depuis un certain temps ou que vous veniez de le découvrir, nous sommes ravis de vous accompagner pour tirer le meilleur de votre réseau social vidéo, live et shopping, ainsi que de nos outils de partage.","HOW_HELP":"Comment pouvons-nous vous aider ?","S1_TITLE":"1. Découverte de l'application :","S1_DESC":"Si vous êtes nouveau sur Hou.la, commencez par explorer nos guides et tutoriels pour une prise en main en douceur de vos contenus, de votre profil et de la communauté.","S2_TITLE":"2. Lives et vidéos :","S2_DESC":"Apprenez à publier vos vidéos, à passer en live et à interagir avec votre communauté en direct.","S3_TITLE":"3. Marketplace et ventes :","S3_DESC":"Découvrez comment ouvrir votre boutique, vendre pendant vos lives ou depuis votre profil, et suivre vos commandes.","S4_TITLE":"4. Profil et outils de partage :","S4_DESC":"Personnalisez votre profil et votre page Link-in-bio, et générez des liens courts et QR Codes pour diffuser vos contenus et votre boutique partout.","S5_TIT
89LE":"5. Suivi des statistiques :","S5_DESC":"Apprenez à suivre en temps réel les performances de vos contenus, de vos lives et de vos liens, et à utiliser ces données pour progresser.","S6_TITLE":"6. Dépannage :","S6_DESC":"En cas de problème ou de question, notre section de dépannage vous guidera pour résoudre rapidement tout problème que vous pourriez rencontrer.","COMMITMENT_TITLE":"Notre Engagement envers Vous","COMMITMENT_DESC":"Chez Hou.la, nous sommes déterminés à vous fournir un support de qualité. Notre équipe d'assistance est là pour répondre à vos questions, résoudre vos problèmes et vous aider à exploiter pleinement les fonctionnalités de notre application.","CONTACT_TITLE":"Contactez-nous","CONTACT_DESC":"Si vous ne trouvez pas la réponse à votre question dans nos ressources de support, n'hésitez pas à nous contacter. Nous sommes disponibles par e-mail à","UPDATES_TITLE":"Restez à Jour","UPDATES_DESC_1":"Assurez-vous de consulter régulièrement notre page de","UPDATES_DESC_2":"pour les dernières mises à jour, les astuces et les nouveautés concernant Hou.la.","THANKS":"Nous vous remercions de faire partie de la communauté Hou.la et nous sommes impatients de vous accompagner sur votre réseau social vidéo, live et shopping.","FORM_DESC":"Remplissez le formulaire ci-dessous et nous vous recontacterons dans les meilleurs delais.","FORM_NAME":"Votre nom","FORM_NAME_PH":"Jean Dupont","FORM_NAME_ERR":"Le nom est requis (2 caracteres minimum).","FORM_EMAIL":"Votre email","FORM_EMAIL_PH":"[email protected]","FORM_EMAIL_ERR":"Veuillez saisir un email valide.","FORM_CATEGORY":"Categorie","FORM_SUBJECT":"Objet","FORM_SUBJECT_PH":"Decrivez brievement votre demande","FORM_SUBJECT_ERR":"L'objet est requis (5 caracteres minimum).","FORM_MESSAGE":"Message","FORM_MESSAGE_PH":"Detaillez votre demande ou le probleme rencontre...","FORM_MESSAGE_ERR":"Le message est requis (20 caracteres minimum).","FORM_SUBMIT":"Envoyer ma demande","FORM_SUCCESS_TITLE":"Demande envoyee","FORM_SUCCESS_DESC":"Votre demande a bien ete enregistree. Notre equipe vous repondra dans les meilleurs delais.","FORM_SUCCESS_TICKET":"Numero de ticket :","FORM_SUCCESS_EMAIL":"Un email de confirmation vous a ete envoye.","FORM_NEW_TICKET":"Nouvelle demande","CAT_GENERAL":"Question generale","CAT_BUG":"Signaler un bug","CAT_FEATURE":"Suggestion de fonctionnalite","CAT_ACCOUNT":"Mon compte","CAT_OTHER":"Autre","CAT_ASSOCIATION":"Demande de plan association"},"CGU":{"TITLE":"Conditions Générales d'Utilisation de Hou.la","LAST_UPDATE":"Dernière mise à jour : Le 11 août 2026","INTRO":"Bienvenue sur Hou.la (ci-après « l'Application » ou « la Plateforme »). Hou.la est un réseau social et une marketplace : vous y publiez des vidéos, diffusez des lives, échangez avec une communauté et pouvez acheter ou vendre des produits et services. Veuillez lire attentivement les présentes Conditions Générales d'Utilisation (« CGU ») avant d'utiliser le service. En créant un compte ou en utilisant l'Application, vous acceptez de vous y conformer. Les ventes, achats de biens virtuels et reversements aux créateurs sont en outre régis par nos Conditions Générales de Vente (CGV).","S1_TITLE":"1. Description du service","S1_P1":"1.1 Hou.la est un réseau social qui permet notamment de :","S1_L1":"Publier des vidéos courtes, des photos, des stories et des sons, et consulter un fil de découverte personnalisé.","S1_L2":"Diffuser et regarder des directs (« lives »), interagir en temps réel (chat, likes, cadeaux virtuels).","S1_L3":"Créer un profil public de créateur, suivre d'autres comptes, aimer, commenter, partager et republier des contenus.","S1_L4":"Échanger via la messagerie privée (messages texte et vocaux).","S1_L5":"Acheter et vendre des produits physiques, numériques ou des services via une marketplace intégrée, y compris pendant les lives (live shopping).","S1_L6":"Créer des liens courts, des pages « Link-in-bio » et des QR codes pour diffuser vos contenus et votre boutique.","S1_P2":"1.2 L'accès aux fonctionnalités est gratuit. Hou.la se rémunère uniquement via une commission sur les ventes réalisées sur la marketplace et via la vente de biens virtuels (voir CGV). Il n'existe aucun abonnement payant.","S2_TITLE":"2. Inscription, compte et âge minimum","S2_P1":"2.1 La création d'un compte requiert des informations exactes et à jour. Vous êtes responsable de la confidentialité de vos identifiants et de toute activité réalisée depuis votre compte.","S2_P2":"2.2 Âge minimum. Hou.la est un réseau social interdit aux enfants. Vous devez avoir au moins 13 ans, et l'âge minimum légal applicable dans votre pays de résidence lorsqu'il est plus élevé (par exemple 15 ans en France, 16 ans en Allemagne, conformément à l'article 8 du RGPD). Nous vérifions votre date de naissance à l'inscription et bloquons les comptes en deçà de ce seuil.","S2_P3":"2.3 Un utilisateur peut gérer un ou plusieurs espaces (« workspaces »), chacun dis
89posant de sa propre identité publique. Vous garantissez disposer des droits nécessaires sur les noms, marques et visuels que vous y utilisez.","S2_P4":"2.4 Vous vous engagez à ne pas usurper l'identité d'un tiers, ni à créer de comptes de manière automatisée ou frauduleuse.","S3_TITLE":"3. Règles de la communauté et contenus interdits","S3_P1":"3.1 Vous êtes seul responsable des contenus que vous publiez (vidéos, lives, photos, stories, sons, commentaires, messages, liens, fiches produits). Vous vous engagez à un usage responsable et légal du service.","S3_P2":"3.2 Sont notamment interdits sur l'ensemble de la Plateforme (contenus publics comme privés) :","S3_L1":"Les contenus impliquant des mineurs à caractère sexuel ou d'exploitation, sous quelque forme que ce soit.","S3_L2":"Le contenu pornographique ou sexuellement explicite non autorisé, le revenge porn et les deepfakes sexuels.","S3_L3":"Le harcèlement, les menaces, l'intimidation et l'incitation au suicide ou aux automutilations.","S3_L4":"Les contenus haineux ou discriminatoires (racisme, antisémitisme, homophobie, sexisme, etc.) et l'apologie de la haine.","S3_L5":"L'apologie du terrorisme, de la violence, et les contenus violents ou choquants gratuits.","S3_L6":"Les contenus illégaux, diffamatoires, trompeurs, la désinformation grave et les arnaques (phishing, fraude).","S3_L7":"La violation des droits de tiers (droit d'auteur, marques, vie privée, droit à l'image).","S3_L8":"Les logiciels malveillants, le spam, la manipulation de l'engagement (faux comptes, bots, achat d'abonnés).","S3_P3":"3.3 Hou.la peut retirer tout contenu, restreindre sa visibilité ou suspendre un compte en cas de manquement, sans préjudice des voies de recours prévues à l'article 6.","S4_TITLE":"4. Lives et diffusion en direct","S4_P1":"4.1 En diffusant un live, vous êtes responsable en temps réel de son contenu, de vos propos et de ceux de vos invités. Les règles de la communauté (article 3) s'appliquent intégralement au direct.","S4_P2":"4.2 Les lives peuvent faire l'objet d'une modération automatisée et humaine, être interrompus, et faire l'objet de restrictions d'accès (âge, visibilité). Vous ne devez pas y diffuser de contenu réservé aux adultes ni exposer des mineurs à des contenus inappropriés.","S4_P3":"4.3 Vous ne pouvez diffuser des personnes tierces qu'avec leur consentement et dans le respect de leur vie privée et de leur droit à l'image.","S5_TITLE":"5. Contenu généré par l'utilisateur et licence","S5_P1":"5.1 Vous conservez la propriété de vos contenus. Vous garantissez disposer de tous les droits nécessaires (y compris sur la musique et les sons que vous importez ou utilisez) et que vos contenus ne violent pas les droits de tiers.","S5_P2":"5.2 Vous accordez à Hou.la une licence non exclusive, mondiale, gratuite et pour la durée de mise en ligne, permettant d'héberger, reproduire, adapter techniquement, diffuser et promouvoir vos contenus dans le seul but d'exploiter et de faire connaître le service (y compris aperçus de partage et recommandations).","S5_P3":"5.3 Cette licence prend fin lorsque vous supprimez un contenu, sous réserve des copies techniques temporaires et des obligations légales de conservation.","S6_TITLE":"6. Modération, signalement et contenus illicites (DSA)","S6_P1":"6.1 Conformément au Règlement (UE) 2022/2065 (Digital Services Act), tout utilisateur peut signaler un contenu qu'il estime illicite depuis l'Application ou en écrivant à notre point de contact. Les contenus, comptes et produits font l'objet d'une modération assistée par une intelligence artificielle multimodale, complétée le cas échéant par une vérification humaine.","S6_P2":"6.2 Lorsqu'un contenu est retiré ou qu'un compte est restreint, l'utilisateur concerné en est informé et peut contester la décision en nous contactant. Nous traitons les signalements et les recours avec diligence.","S6_P3":"6.3 Hou.la coopère avec les autorités compétentes et peut leur signaler tout contenu manifestement illicite.","S7_TITLE":"7. Marketplace et boutiques","S7_P1":"7.1 Hou.la permet de créer une boutique pour proposer des produits physiques, numériques ou des services, y compris pendant les lives. En tant que vendeur, vous êtes seul responsable de vos offres, de leur conformité aux lois applicables, de la véracité des descriptions, des prix et de la disponibilité.","S7_P2":"7.2 Hou.la agit en qualité d'intermédiaire technique et n'est pas partie au contrat de vente conclu entre le vendeur et l'acheteur. Les conditions de vente, de paiement et de reversement sont détaillées dans les CGV.","S7_P3":"7.3 Tout produit fait l'objet d'une modération automatique assistée par intelligence artificielle. Hou.la peut retirer sans préavis tout produit non conforme aux présentes CGU ou à la politique de produits interdits.","S7_P4":"7.4 Les catégories de produits et contenus suivants sont strictement interdits sur la marketplace Hou.la :","S7_L1":"Armes et munitions : armes à feu, armes blanches, munitions, explosifs, pièces détachées d'armes.","S7_L2":"Explosifs et matières dangereuses : produits pyrotechniques, substances chimiques dangereuses, matériaux radioactifs.","S7_L3":"Drogues et stupéfiants : substances illicites, drogues de synthèse, matériel de consommation (hors CBD légal \u003C 0,3% THC).","S7_L4":"Médicaments et produits de santé réglementés : médicaments sur ordonnance, produits pharmaceutiques non autorisés, stéroïdes anabolisants.","S7_L5":"Contrefaçons : produits contrefaits, répl
89iques présentées comme authentiques, usage frauduleux de marques.","S7_L6":"Produits volés ou détournés : biens dont l'origine légale ne peut être justifiée.","S7_L7":"Animaux vivants et espèces protégées : vente d'animaux, produits issus d'espèces menacées (ivoire, fourrures protégées).","S7_L8":"Corps humain et organes : organes, tissus, sang, fluides corporels.","S7_L9":"Données personnelles : bases de données, identifiants de connexion, données bancaires.","S7_L10":"Outils de fraude numérique : logiciels malveillants, outils de piratage, faux documents, accès piratés à des services.","S7_L11":"Contenus d'exploitation de mineurs : tout contenu impliquant des mineurs.","S7_L12":"Contenu pornographique non autorisé : contenu sans vérification d'âge, revenge porn, deepfakes sexuels.","S7_L13":"Contenus haineux et discriminatoires : apologie de la haine raciale, religieuse, homophobe, sexiste, symboles haineux.","S7_L14":"Incitation à la violence et au terrorisme : apologie du terrorisme, manuels d'armes/explosifs.","S7_L15":"Tabac et produits du tabac : cigarettes, e-liquides nicotinés, puffs (sauf revendeurs agréés
89).","S7_L16":"Jeux d'argent non autorisés : paris non agréés, machines à sous non régulées, schémas de Ponzi.","S7_L17":"Arnaques financières : crypto-monnaies fictives, schémas pyramidaux, fausses formations au trading, dropshipping trompeur.","S7_L18":"Traite d'êtres humains : toute forme de traite, d'exploitation humaine ou de travail forcé.","S7_L19":"Biens sous embargo ou sanctions : produits faisant l'objet de sanctions internationales.","S7_P5":"7.5 La violation de cette politique entraîne le retrait immédiat du produit, la suspension de la boutique, et peut conduire à la résiliation du compte. Hou.la se réserve le droit de signaler toute infraction aux autorités compétentes.","S7_REP_TITLE":"7.6 Éco-participation emballages (REP)","S7_REP_P1":"En application de l'article L541-10-9 du code de l'environnement, Hou.la est tenue de pourvoir à la responsabilité élargie du producteur (REP) pour les emballages des produits vendus par ses vendeurs tiers, sauf lorsque le vendeur lui a communiqué un identifiant unique (IDU) délivré par l'ADEME, lequel vaut conformité.","S7_REP_P2":"Le vendeur qui dispose d'un IDU le renseigne dans les paramètres de sa boutique. Hou.la vérifie sa validité auprès du registre public de l'ADEME lors de la saisie, puis périodiquement. Aucun frais n'est alors prélevé au titre des emballages. Si l'identifiant cesse de figurer au registre, le vendeur en est informé et bascule automatiquement dans le régime décrit ci-après.","S7_REP_P3":"À compter du 1er septembre 2026, à défaut d'identifiant valide, Hou.la s'acquitte de l'obligation de REP à la place du vendeur : adhésion à un éco-organisme agréé, déclaration et versement de l'éco-contribution. En contrepartie, des frais de gestion forfaitaires sont dus par le vendeur pour chaque colis expédié à compter de cette date, selon un barème fonction du poids du colis, consultable à tout moment dans les paramètres de la boutique. Ces frais sont déduits des versements et récapitulés sur une facture mensuelle. Aucun frais n'est dû au titre des colis expédiés avant le 1er septembre 2026.","S7_REP_P4":"Les commandes remises en main propre ou retirées sur place, ainsi que les commandes exclusivement composées de produits numériques, ne donnent lieu à aucun colis et ne sont donc soumises à aucun frais à ce titre. Le barème est susceptible d'évoluer pour suivre les tarifs de l'éco-organisme ; toute modification est portée à la connaissance des vendeurs au moins trente jours avant son entrée en vigueur.","S8_TITLE":"8. Monnaie virtuelle, cadeaux et monétisation des créateurs","S8_P1":"8.1 Hou.la propose une monnaie virtuelle (« coins ») que les utilisateurs peuvent acheter via les magasins d'applications Apple App Store et Google Play. Les coins servent uniquement à envoyer des « cadeaux » virtuels aux créateurs, notamment pendant les lives.","S8_P2":"8.2 Les coins n'ont aucune valeur monétaire, ne sont ni transférables ni remboursables (sauf droit impératif applicable), et ne constituent pas un moyen de paiement ni un dépôt. Ils font l'objet d'une licence d'utilisation limitée et peuvent expirer ou être révoqués en cas de fraude ou d'abus.","S8_P3":"8.3 Les cadeaux reçus par un créateur peuvent être convertis en revenus et reversés en euros, sous réserve d'une vérification d'identité (KYC), de l'activation d'un compte de paiement (Stripe Connect) et d'une validation par Hou.la. Les conditions de reversement, seuils et délais sont précisés dans les CGV.","S8_P4":"8.4 Toute tentative de manipulation (achat frauduleux de coins, blanchiment, cadeaux entre comptes contrôlés par la même personne) entraîne l'annulation des soutiens concernés et peut conduire à la suspension du compte.","S9_TITLE":"9. Liens courts, Link-in-bio et QR codes","S9_P1":"9.1 Hou.la fournit des outils de partage : raccourcisseur de liens, pages Link-in-bio et QR codes. Vous êtes seul responsable des destinations vers lesquelles pointent vos liens et du contenu de vos pages.","S9_P2":"9.2 En créant une page Link-in-bio, vous acceptez que votre nom d'utilisateur, votre nom d'affichage, votre photo, votre biographie et les liens que vous affichez soient publiquement accessibles.","S9_P3":"9.3 Il est interdit de créer des liens ou des QR codes pointant vers des contenus illégaux, des logiciels malveillants, des arnaques ou du phishing. Les liens sont susceptibles d'être analysés (notamment via Google Safe Browsing) et désactivés en cas de risque.","S10_TITLE":"10. Messagerie et interactions","S10_P1":"10.1 La messagerie privée doit être utilisée dans le respect d'autrui. Le spam, le harcèlement, les sollicitations non désirées, les arnaques et la diffusion de contenus illicites y sont interdits.","S10_P2":"10.2 Vous pouvez bloquer et signaler tout utilisateur. Hou.la peut restreindre les fonctionnalités d'interaction en cas d'abus.","S11_TITLE":"11. Respect de la législation applicable","S11_P1":"11.1 Vous vous engagez à respecter l'ensemble des lois et réglementations applicables, notamment :","S11_L1":"Le Règlement Général sur la Protection des Données (RGPD).","S11_L2":"Les lois 
89sur le droit d'auteur et la propriété intellectuelle.","S11_L3":"Les lois sur la diffamation, le harcèlement et l'atteinte à la vie privée.","S11_L4":"Les lois applicables dans votre pays de résidence.","S12_TITLE":"12. Propriété intellectuelle de Hou.la","S12_P1":"12.1 Le nom « Hou.la », le logo et l'ensemble des éléments graphiques, textuels et logiciels de l'Application sont la propriété exclusive de Hou.la et sont protégés par les lois sur la propriété intellectuelle.","S12_P2":"12.2 Vous n'êtes pas autorisé à reproduire, modifier, distribuer ou exploiter commercialement ces éléments sans autorisation écrite préalable.","S13_TITLE":"13. Suspension ou résiliation de l'accès","S13_P1":"13.1 Hou.la se réserve le droit de suspendre ou de résilier votre accès en cas de violation des présentes CGU, de fraude, ou pour protéger les utilisateurs et la Plateforme.","S13_P2":"13.2 Vous pouvez à tout moment supprimer votre compte. En cas de résiliation, vos données personnelles sont traitées conformément à notre Politique de Confidentialité, et vos ventes ou reversements en cours restent régis par les CGV.","S14_TITLE":"14. Limitation de responsabilité","S14_P1":"14.1 L'Application est fournie « en l'état ». Nous ne garantissons pas qu'elle sera ininterrompue, sécurisée ou exempte d'erreurs.","S14_P2":"14.2 Hou.la ne peut être tenue responsable des dommages directs ou indirects résultant de l'utilisation ou de l'impossibilité d'utiliser le service, ni des contenus publiés par les utilisateurs ou des sites tiers vers lesquels pointent les liens.","S14_P3":"14.3 Hou.la n'est pas le vendeur des produits proposés sur la marketplace et n'est pas responsable de leur conformité, de leur qualité ou de leur livraison (voir CGV).","S15_TITLE":"15. Confidentialité","S15_P1":"15.1 Nous recueillons et utilisons vos données conformément à notre","S15_LINK":"Politique de Confidentialité","S15_P2":"En utilisant l'Application, vous consentez à la collecte et à l'utilisation de vos données conformément à cette politique.","S16_TITLE":"16. Modification des CGU","S16_P1":"16.1 Nous nous réservons le droit de modifier les présentes CGU. Les modifications importantes vous seront notifiées dans l'Application. Votre utilisation continue après leur entrée en vigueur vaut acceptation des CGU modifiées.","S17_TITLE":"17. Droit applicable et juridiction","S17_P1":"17.1 Les présentes CGU sont régies par le droit français.","S17_P2":"17.2 En cas de litige, les tribunaux français seront seuls compétents, sous réserve des dispositions légales impératives accordant compétence à un autre tribunal (notamment en faveur des consommateurs).","S18_TITLE":"18. Contact","S18_P1":"18.1 Pour toute question relative aux présentes CGU, ou pour signaler un contenu illicite, vous pouvez nous contacter :","S18_L1":"Email :","S18_L2":"Signalement d'abus :","THANKS":"Merci de faire vivre Hou.la dans le respect des autres et de la loi. Bonne création, et bonne découverte."},"CGV":{"TITLE":"Conditions Générales de Vente de Hou.la","LAST_UPDATE":"Dernière mise à jour : Le 17 juillet 2026","INTRO":"Les présentes Conditions Générales de Vente (« CGV ») régissent les ventes réalisées sur la marketplace Hou.la (entre vendeurs et acheteurs), l'achat de biens virtuels (« coins » et cadeaux) et la monétisation des créateurs. L'accès à Hou.la est gratuit et il n'existe aucun abonnement payant. Les CGV complètent les Conditions Générales d'Utilisation (CGU) accessibles à la page /cgu.","S1_TITLE":"1. Objet","S1_P1":"1.1 Les présentes CGV définissent les conditions dans lesquelles (i) les vendeurs proposent et vendent des produits ou services via la marketplace Hou.la, (ii) les acheteurs passent commande, et (iii) les utilisateurs achètent des biens virtuels et les créateurs perçoivent des revenus.","S1_P2":"1.2 Hou.la est un réseau social et une marketplace. L'accès et l'ensemble des fonctionnalités sont gratuits ; Hou.la se rémunère uniquement via une commission sur les ventes et via la vente de biens virtuels. Il n'existe aucune formule d'abonnement.","S2_TITLE":"2. Rôle de Hou.la","S2_P1":"2.1 Hou.la agit en qualité d'intermédiaire technique et d'hébergeur. Hou.la n'est pas le vendeur des produits proposés sur les boutiques et n'est pas partie au contrat de vente conclu entre le vendeur et l'acheteur.","S2_P2":"2.2 Hou.la met à disposition l'infrastru
89cture de la marketplace, l'encaissement des paiements via son prestataire Stripe, et les outils de gestion des commandes et des reversements.","S2_P3":"2.3 Hou.la ne garantit ni les produits vendus, ni leur conformité, ni leur livraison, qui relèvent de la seule responsabilité du vendeur.","S3_TITLE":"3. Vendeurs: éligibilité et obligations","S3_P1":"3.1 Tout utilisateur peut ouvrir une boutique gratuitement et proposer des produits physiques, numériques ou des services, y compris pendant ses lives (live shopping).","S3_P2":"3.2 Pour percevoir le produit de ses ventes, le vendeur doit activer un compte de paiement Stripe Connect et se soumettre aux vérifications d'identité (KYC) et aux informations fiscales requises.","S3_P3":"3.3 Le vendeur est seul responsable de la conformité de ses produits aux réglementations applicables (sécurité des produits, étiquetage, normes CE, droit de la consommation, obligations fiscales et sociales), de la véracité des descriptions, des prix (exprimés en euros, toutes taxes comprises) et de la disponibilité des stocks.","S3_P4":"3.4 Le vendeur garantit disposer de tous les droits nécessaires sur les produits, descriptions, images et marques qu'il utilise, et s'engage à respecter la politique de produits interdits (article 7 des CGU).","S3_P5":"3.5 Conformément au Digital Services Act, les vendeurs professionnels s'engagent à fournir des informations d'identification exactes (traçabilité des professionnels).","S3_P6":"3.6 Lorsqu'un vendeur propose un produit de marque, il garantit qu'il s'agit d'un article authentique et qu'il est autorisé à le commercialiser. La vente de contrefaçons et l'usage non autorisé de marques, de logos ou de designs déposés sont strictement interdits et engagent la seule responsabilité du vendeur, y compris à l'égard des tiers titulaires de droits.","S4_TITLE":"4. Commission Hou.la","S4_P1":"4.1 Hou.la perçoit une commission unique de 5% sur le montant de chaque vente réalisée via la marketplace. Aucune autre commission ni aucun abonnement n'est appliqué.","S4_P2":"4.2 Les frais du prestataire de paiement (Stripe) peuvent s'ajouter et être déduits du reversement. Le détail des montants (prix, commission, frais, montant net) est indiqué au vendeur dans son espace vendeur.","S5_TITLE":"5. Reversements aux vendeurs","S5_P1":"5.1 Le produit des ventes, déduction faite de la commission Hou.la et des frais Stripe, est reversé au vendeur sur son compte Stripe Connect, selon les modalités et délais indiqués dans son espace vendeur.","S5_P2":"5.2 Les reversements peuvent être suspendus ou retenus en cas de suspicion de fraude, de litige, de demande de remboursement, ou tant que les vérifications d'identité ne sont pas complétées.","S5_P3":"5.3 Le vendeur est seul responsable de la déclaration et du paiement des taxes et impôts afférents à son activité.","S6_TITLE":"6. Acheteurs: commande et paiement","S6_P1":"6.1 En passant commande sur une boutique Hou.la, l'acheteur conclut un contrat de vente directement avec le vendeur concerné et accepte, le cas échéant, les conditions propres à ce vendeur.","S6_P2":"6.2 Le paiement est effectué par carte bancaire via le prestataire sécurisé Stripe. Hou.la ne stocke aucune donnée bancaire. Le paiement est débité au moment de la validation de la commande.","S6_P3":"6.3 La confirmation de commande précise le produit, le prix total et, le cas échéant, les frais de livraison.","S7_TITLE":"7. Livraison et exécution","S7_P1":"7.1 Le vendeur est seul responsable de l'expédition, de la livraison et de l'exécution des produits et services vendus, dans les délais annoncés.","S7_P2":"7.2 Les risques liés au transport et à la livraison relèvent de la relation entre l'acheteur et le vendeur, dans les conditions prévues par la loi applicable.","S8_TITLE":"8. Droit de rétractation","S8_P1":"8.1 Conformément à l'article L. 221-18 du Code de la consommation, l'acheteur particulier dispose d'un délai de 14 jours à compter de la réception du produit pour exercer son droit de rétractation auprès du vendeur.","S8_P2":"8.2 Des exceptions légales s'appliquent, notamment : produits personnalisés, produits numériques téléchargés ou dont l'exécution a commencé avec l'accord de l'acheteur, produits périssables ou descellés pour raisons d'hygiène, et services entièrement exécutés.","S9_TITLE":"9. Réclamations, litiges et médiation","S9_P1":"9.1 Toute réclamation relative à un produit (non-conformité, défaut, non-livraison) doit être adressée directement au vendeur via la messagerie de la boutique ou les coordonnées indiquées sur sa page.","S9_P2":"9.2 En cas de litige non résolu, l'acheteur peut saisir le médiateur de la consommation dont relève le vendeur, ou signaler un comportement abusif à Hou.la à l'adresse [email protected].","S10_TITLE":"10. Remboursements","S10_P1":"10.1 Les remboursements sont effectués par le vendeur selon ses propres conditions de vente et la loi applicable. La commission Hou.la afférente à la vente remboursée est restituée en conséquence.","S10_P2":"10.2 En cas de manquement grave du vendeur (fraude, non-livraison syst
89ématique), Hou.la pourra, à sa discrétion, intervenir pour faciliter le remboursement via Stripe et retenir les reversements correspondants.","S11_TITLE":"11. Biens virtuels (« coins ») et cadeaux","S11_P1":"11.1 Hou.la propose une monnaie virtuelle (« coins ») achetable via l'App Store d'Apple et Google Play. Les prix des coins sont ceux affichés dans ces magasins d'applications au moment de l'achat.","S11_P2":"11.2 Les coins servent uniquement à envoyer des cadeaux virtuels aux créateurs. Ils n'ont aucune valeur monétaire, ne sont ni transférables ni remboursables (sauf droit impératif applicable) et ne constituent pas un moyen de paiement.","S11_P3":"11.3 Les achats de coins sont traités par Apple ou Google et régis par les conditions de ces plateformes ; toute demande de remboursement d'un achat de coins relève de leur politique respective.","S11_P4":"11.4 Hou.la peut ajuster le contenu ou le prix des packs de coins, et révoquer des coins obtenus frauduleusement.","S12_TITLE":"12. Monétisation des créateurs","S12_P1":"12.1 Les cadeaux reçus par un créateur sont comptabilisés et peuvent être convertis en revenus reversés en euros, selon un barème de conversion indiqué dans l'Application.","S12_P2":"12.2 Le reversement requiert un compte Stripe Connect actif, une vérification d'identité (KYC) et la fourniture des informations fiscales. Hou.la peut soumettre chaque demande de reversement à une validation, appliquer des seuils minimaux, un délai de maturation et des plafonds afin de prévenir la fraude et le blanchiment.","S12_P3":"12.3 Hou.la peut refuser ou suspendre un reversement en cas de soupçon de fraude, de manipulation (par exemple cadeaux financés par des coins obtenus frauduleusement) ou de violation des CGU. Le créateur est seul responsable de la déclaration et du paiement des taxes et impôts sur les revenus perçus.","S13_TITLE":"13. Produits interdits","S13_P1":"13.1 La vente de produits ou services interdits est prohibée. La liste des catégories interdites (armes, drogues, contrefaçons, contenus impliquant des mineurs, etc.) figure à l'article 7 des CGU. Toute infraction entraîne le retrait du produit, la suspension de la boutique et, le cas échéant, le signalement aux autorités.","S14_TITLE":"14. Données personnelles de l'acheteur","S14_P1":"14.1 Les données de l'acheteur (nom, adresse de livraison, e-mail) sont transmises au vendeur aux seules fins d'exécution de la commande. Le vendeur s'engage à ne pas les utiliser à d'autres fins et à respecter le RGPD. Le traitement des données par Hou.la est détaillé dans notre","S14_LINK":"Politique de Confidentialité","S15_TITLE":"15. Responsabilité","S15_P1":"15.1 Hou.la fournit la plateforme avec diligence, dans le cadre d'une obligation de moyens. Hou.la n'étant pas partie au contrat de vente, sa responsabilité ne saurait être engagée au titre des produits vendus, de leur conformité ou de leur livraison.","S15_P2":"15.2 La responsabilité de Hou.la, lorsqu'elle est engagée, est limitée au montant des commissions perçues au titre de la transaction concernée.","S15_P3":"15.3 Hou.la met en œuvre des outils de détection automatisés, notamment de contrefaçon, pour limiter la mise en ligne de produits illicites, sans pouvoir garantir l'identification de l'ensemble des produits contrefaisants ou non conformes. Hou.la n'est pas responsable de l'authenticité ni de la licéité des produits mis en vente par les vendeurs et retire les produits signalés ou détectés comme illicites dès qu'elle en a connaissance.","S16_TITLE":"16. Disponibilité du service","S16_P1":"16.1 Hou.la s'efforce d'assurer la disponibilité du service, hors périodes de maintenance programmée et cas de force majeure, sans garantie d'absence d'interruption.","S17_TITLE":"17. Modification des CGV","S17_P1":"17.1 Hou.la se réserve le droit de modifier les présentes CGV. Les modifications importantes seront notifiées aux utilisateurs concernés. L'utilisation continue du service après leur entrée en vigueur vaut acceptation des nouvelles CG
89V.","S18_TITLE":"18. Droit applicable et juridiction","S18_P1":"18.1 Les présentes CGV sont régies par le droit français.","S18_P2":"18.2 En cas de litige, les parties s'efforceront de trouver une solution amiable. À défaut, les tribunaux compétents seront ceux prévus par la loi, les dispositions protectrices des consommateurs demeurant réservées.","S19_TITLE":"19. Contact","S19_P1":"19.1 Pour toute question relative aux présentes CGV, à une commande ou à un reversement, contactez-nous :","S19_L1":"Email :","S19_L2":"Signalement marketplace :","THANKS":"Merci de votre confiance. Nous mettons tout en œuvre pour une marketplace sûre, équitable et transparente."},"LEGALES":{"TITLE":"Mentions Légales","EDITOR_TITLE":"1. Éditeur de l'application","EDITOR_DESC":"Cette application est éditée par Hou.la.","EDITOR_ADDRESS":"Siège social : 110 rue de Fontenay CS 20010, 94303 Vincennes Cedex, France","EDITOR_REG":"SIRET : 51147849700031","EDITOR_VAT":"TVA intracommunautaire: FR69511478497 (non assujetti, franchise en base de TVA, art. 293 B du CGI)","EDITOR_EMAIL":"Adresse e-mail : [email protected]","HOSTING_TITLE":"2. Hébergement","HOSTING_DESC":"Cette application est hébergée par Hetzner Online GmbH, dont le siège social est situé Industriestr. 25, 91710 Gunzenhausen, Allemagne.","HOSTING_FRANCE":"Nos serveurs sont hébergés au sein de l'Union européenne, en Allemagne.","IP_TITLE":"3. Propriété Intellectuelle","IP_DESC":"Tous les contenus présents sur cette application, y compris, mais sans s'y limiter, les textes, les images, les graphiques, les logos, les vidéos, les musiques, les marques et les éléments de design, sont protégés par les lois sur la propriété intellectuelle et sont la propriété exclusive de Hou.la ou de ses concédants de licence. Toute reproduction, distribution, modification ou utilisation non autorisée de ces contenus est strictement interdite.","DATA_TITLE":"4. Collecte de Données Personnelles","DATA_DESC_1":"La collecte et le traitement des données personnelles des utilisateurs de cette application sont régis par notre Politique de Confidentialité","DATA_LINK":"Vie privée","COOKIES_TITLE":"5. Cookies","COOKIES_DESC_1":"Cette application utilise des cookies pour améliorer l'expérience de l'utilisateur. Pour en savoir plus sur l'utilisation des cookies et les options de gestion des cookies, veuillez consulter notre Politique de Cookies, disponible à l'adresse","LIABILITY_TITLE":"6. Responsabilité","LIABILITY_DESC":"Hou.la décline toute responsabilité quant à l'utilisation du contenu de cette application. Les informations fournies sont fournies à titre informatif et ne constituent pas un conseil juridique, financier ou professionnel.","CONTACT_TITLE":"7. Contact","CONTACT_DESC":"Pour toute question ou réclamation concernant cette application, veuillez nous contacter à l'adresse e-mail suivante : [email protected]."},"PRIVACY":{"TITLE":"Politique de Confidentialité de Hou.la","LAST_UPDATE":"Dernière mise à jour : Le 28 septembre 2026","INTRO":"Bienvenue sur Hou.la (ci-après dénommée \"l'Application\").","NOT_PRODUCT":"Chez Hou.la, nous croyons que la vie privée n'est pas un luxe. Vos données vous appartiennent.","COMMITMENT":"La confidentialité de vos données est importante pour nous, et nous nous engageons à les protéger. Cette Politique de Confidentialité vise à vous informer sur la manière dont nous collectons, utilisons et protégeons vos données personnelles lorsque vous utilisez notre application, y compris le service de pages personnelles \"Link-in-bio\".","S1_TITLE":"1. Collecte de Données","S1_P1":"Nous ne collectons que les données strictement nécessaires à l'exploitation de l'Application et à l'amélioration de votre expérience utilisateur. Les données que nous collectons peuvent inclure, mais ne se limitent pas à :","S1_L1":"Les informations que vous fournissez volontairement, telles que votre adresse e-mail lorsque vous créez votre compte.","S1_L2":"Les informations de profil public (nom d'affichage, biographie, avatar) que vous choisissez de partager sur votre page Link-in-bio.","S1_
89L3":"Les liens et contenus que vous ajoutez à votre page personnelle.","S1_L4":"Les informations de connexion, telles que votre adresse IP, votre type de navigateur et votre système d'exploitation, collectées de manière automatique pour des raisons de sécurité et d'analyse.","S2_TITLE":"2. Données collectées sur les pages Link-in-bio","S2_P1":"Lorsque des visiteurs consultent une page Link-in-bio publique, nous collectons de manière anonyme :","S2_L1_LABEL":"Statistiques de visite :","S2_L1_DESC":"Nombre de vues, clics sur les liens, pages de provenance (referrer).","S2_L2_LABEL":"Données techniques :","S2_L2_DESC":"Type d'appareil (mobile/desktop), navigateur, système d'exploitation.","S2_L3_LABEL":"Géolocalisation approximative :","S2_L3_DESC":"Pays et ville (basés sur l'adresse IP, sans stockage de l'IP exacte).","S2_P2":"Ces données sont utilisées pour fournir aux créateurs de pages des statistiques agrégées et anonymisées sur leur audience.","S3_TITLE":"3. Utilisation des Données","S3_P1":"Nous utilisons vos données personnelles uniquement dans le but de vous fournir les services de l'Application et de les améliorer. Nous ne vendons pas, ne louons pas, ni ne partageons vos données personnelles à des tiers à des fins commerciales ou de revente. Les principales utilisations de vos données incluent :","S3_L1":"Fournir et gérer les fonctionnalités de l'Application, y compris l'hébergement de votre page Link-in-bio.","S3_L2":"Afficher votre profil public aux visiteurs de votre page.","S3_L3":"Vous fournir des statistiques sur les performances de vos liens.","S3_L4":"Répondre à vos demandes de support et de service client.","S3_L5":"Analyser l'utilisation de l'Application pour améliorer son fonctionnement et son efficacité.","CH_TITLE":"4. Connexion de vos chaînes (YouTube, Twitch, Kick, TikTok)","CH_P1":"Depuis Hou.la Connect, vous pouvez relier vos chaînes YouTube, Twitch, Kick et TikTok à votre compte Hou.la, pour que vos interactions (packs, overlays, commandes) réagissent aussi à ce qui se passe sur ces plateformes pendant vos lives. Cette connexion est facultative et se fait uniquement à votre demande, depuis la page d’autorisation de la plateforme.","CH_P2":"Avec votre autorisation, Hou.la lit uniquement :","CH_L1":"l’identité publique de la chaîne : son identifiant, son nom affiché et son image de profil ;","CH_L2":"le nombre d’abonnés de la chaîne, relevé une fois par jour pour vos statistiques ;","CH_L3":"les événements de vos lives en cours, selon la plateforme : messages du chat, nouveaux abonnés et abonnements, dons, cadeaux, points de chaîne, raids.","CH_P3":"Ces données servent uniquement à faire fonctionner Hou.la Connect pour vous. Elles ne sont ni vendues, ni utilisées à des fins publicitaires, ni transmises à des tiers. Les jetons d’accès fournis par les plateformes sont chiffrés sur nos serveurs. Hou.la n’écrit dans le chat d’une plateforme que les messages que vous avez vous-même configurés, et seulement là où la plateforme l’autorise.","CH_P4":"Vous pouvez déconnecter une chaîne à tout moment dans Hou.la Connect (« Mes chaînes », « Déconnecter ») : ses jetons d’accès sont alors supprimés de nos serveurs. Vous pouvez aussi retirer l’accès de Hou.la depuis les réglages de sécurité de la plateforme concernée. Les relevés quotidiens du nombre d’abonnés suivent les durées de la section « Conservation des données ».","CH_VW_TITLE":"Les spectateurs de vos chaînes reliées","CH_VW_P1":"Quand un spectateur vous envoie un cadeau sur une plateforme reliée (TikTok, Twitch, Kick, YouTube) pendant un live Hou.la, Hou.la enregistre, pour vos classements et vos overlays : son pseudo public, son image de profil publique, son identifiant public sur la plateforme, le cadeau reçu (nom, image, valeur convertie en points) et sa date.","CH_VW_P2":"Ces informations sont celles que la plateforme montre à tous les spectateurs du live. Elles ne servent qu’à votre classement, ne sont visibles que dans vos overlays et votre registre, ne sont jamais partagées avec un autre créateur, ni vendues, ni utilisées à des fins publicitaires. Elles ne donnent au spectateur ni pièces, ni étoiles, ni argent.","CH_VW_P3":"Elles sont conservées avec les points de classement qu’elles accompagnent, aussi longtemps que ces points existent. Vous pouvez masquer un spectateur de vos classements publics ou l’effacer à tout moment, points compris. Un spectateur peut demander l’effacement de ses données en écrivant au créateur ou à Hou.la (adresse de contact ci-dessous).","CH_YT_TITLE":"Données YouTube","CH_YT_P1":"Hou.la utilise les services d’API YouTube pour lire les données de la chaîne YouTube que vous reliez (droit « YouTube, lecture seule »).","CH_YT_L1":"En reliant votre chaîne YouTube, vous acceptez les Conditions d’utilisation de YouTube :","CH_YT_L2":"Les données obtenues de YouTube sont aussi soumises aux Règles de confidentialité de Google :","CH_YT_L3":"Vous pouvez retirer à tout moment l’accè
89s de Hou.la à votre compte Google depuis la page des autorisations de votre compte Google :","CH_YT_L4":"L’utilisation par Hou.la des informations reçues des API Google respecte le Règlement sur les données utilisateur des services d’API Google, y compris les exigences d’utilisation limitée :","S4_TITLE":"5. Cookies et technologies similaires","S4_P1":"Nous utilisons différentes catégories de cookies :","S4_L1_LABEL":"Cookies strictement nécessaires :","S4_L1_DESC":"Essentiels au fonctionnement du site (authentification, sécurité). Toujours activés.","S4_L2_LABEL":"Cookies de performance :","S4_L2_DESC":"Nous aident à comprendre comment vous utilisez le site (analytics). Optionnels.","S4_L3_LABEL":"Cookies fonctionnels :","S4_L3_DESC":"Permettent des fonctionnalités avancées (préférences, personnalisation). Optionnels.","S4_L4_LABEL":"Cookies publicitaires :","S4_L4_DESC":"Utilisés pour afficher des publicités pertinentes. Optionnels.","S4_P2":"Vous pouvez gérer vos préférences de cookies à tout moment via le bouton \"Cookies\" présent en bas de chaque page Link-in-bio ou via les paramètres de votre navigateur.","S5_TITLE":"6. Sécurité des Données","S5_P1":"Nous prenons des mesures de sécurité appropriées pour protéger vos données contre tout accès non autorisé, toute divulgation, toute altération ou toute destruction. Cela comprend :","S5_L1":"Chiffrement des données en transit (HTTPS/TLS).","S5_L2":"Stockage sécurisé des mots de passe (hachage bcrypt).","S5_L3":"Accès restreint aux données personnelles.","S5_L4":"Sauvegardes régulières et sécurisées.","S6_TITLE":"7. Vos droits (RGPD)","S6_P1":"Conformément au Règlement Général sur la Protection des Données (RGPD), vous disposez des droits suivants :","S6_L1_LABEL":"Droit d'accès :","S6_L1_DESC":"Vous pouvez demander une copie de vos données personnelles.","S6_L2_LABEL":"Droit de rectification :","S6_L2_DESC":"Vous pouvez corriger vos données inexactes ou incomplètes.","S6_L3_LABEL":"Droit à l'effacement :","S6_L3_DESC":"Vous pouvez demander la suppression de vos données (\"droit à l'oubli\").","S6_L4_LABEL":"Droit à la portabilité :","S6_L4_DESC":"Vous pouvez recevoir vos données dans un format structuré et lisible.","S6_L5_LABEL":"Droit d'opposition :","S6_L5_DESC":"Vous pouvez vous opposer au traitement de vos données.","S6_L6_
89LABEL":"Droit de retirer votre consentement :","S6_L6_DESC":"À tout moment, sans affecter la licéité du traitement effectué avant le retrait.","S6_P2":"Pour exercer ces droits, contactez-nous à","S7_TITLE":"8. Conservation des données","S7_P1":"Nous conservons vos données personnelles aussi longtemps que votre compte est actif ou que nécessaire pour vous fournir nos services. Après suppression de votre compte :","S7_L1":"Vos données de profil et liens sont supprimés immédiatement.","S7_L2":"Les statistiques anonymisées peuvent être conservées à des fins d'analyse.","S7_L3":"Les données nécessaires au respect de nos obligations légales sont conservées pendant la durée requise par la loi.","S8_TITLE":"9. Transferts internationaux","S8_P1":"Vos données sont hébergées sur des serveurs situés dans l'Union Européenne. En cas de transfert vers des pays tiers, nous nous assurons que des garanties appropriées sont en place (clauses contractuelles types, décision d'adéquation).","S9_TITLE":"10. Consentement","S9_P1":"En utilisant l'Application, vous consentez à la collecte et à l'utilisation de vos données personnelles conformément à cette Politique de Confidentialité.","S10_TITLE":"11. Modifications de la Politique de Confidentialité","S10_P1":"Nous nous réservons le droit de mettre à jour cette Politique de Confidentialité à tout moment pour refléter les changements dans nos pratiques de collecte et d'utilisation des données. Les modifications seront publiées sur cette page, et la date de la dernière mise à jour sera révisée. Il vous incombe de consulter régulièrement cette Politique de Confidentialité pour prendre connaissance des éventuelles modifications.","S11_TITLE":"12. Contact","S11_P1":"Si vous avez des questions ou des préoccupations concernant notre Politique de Confidentialité, veuillez nous contacter :","S11_L1":"Email :","S11_L2":"Email DPO :","THANKS":"Nous vous remercions d'utiliser Hou.la en toute confiance, en sachant que nous respectons votre vie privée et que nous nous engageons à protéger vos données personnelles."},"COOKIES":{"TITLE":"Utilisation des Cookies","INTRO":"Cette application utilise des cookies pour améliorer votre expérience en ligne. En utilisant cette application, vous consentez à l'utilisation de cookies conformément à cette politique.","WHAT_TITLE":"Qu'est-ce qu'un cookie ?","WHAT_DESC":"Un cookie est un petit fichier texte qui est stocké sur votre ordinateur ou votre appareil mobile lorsque vous visitez un site web. Il permet au site de se souvenir de vos actions et de vos préférences (telles que la langue choisie, la taille de la police de caractères et d'autres préférences d'affichage) sur une période de temps, de sorte que vous n'ayez pas à les réindiquer à chaque fois que vous revenez sur le site ou que vous naviguez de page en page.","HOW_TITLE":"2. Comment utilisons-nous les cookies ?","HOW_DESC":"Nous utilisons des cookies pour diverses raisons, notamment :","HOW_1":"Pour améliorer la fonctionnalité et la convivialité de notre application.","HOW_2":"Pour comprendre comment les visiteurs interagissent avec notre application et pour analyser les tendances de navigation.","HOW_3":"Pour personnaliser votre expérience en mémorisant vos préférences.","TYPES_TITLE":"3. Types de cookies que nous utilisons","TYPE_ESSENTIAL":"Cookies Essentiels : Ces cookies sont nécessaires au bon fonctionnement de l'application et ne peuvent pas être désactivés dans nos systèmes. Ils sont généralement définis en réponse à des actions que vous avez effectuées et qui équivalent à une demande de services, telles que la connexion, la sauvegarde de vos préférences en matière de confidentialité ou le remplissage de formulaires. Vous pouvez configurer votre navigateur pour bloquer ces cookies, mais certaines parties de l'application risquent de ne pas fonctionner correctement.","TYPE_PERFORMANCE":"Cookies de Performance : Ces cookies nous permettent de compter les visites et les sources de trafic afin de mesurer et d'améliorer les performances de notre application. Ils nous aident à comprendre quelles pages sont les plus et les moins populaires, et 
89comment les visiteurs naviguent sur le site. Toutes les informations collectées par ces cookies sont agrégées et donc anonymes.","TYPE_FUNCTIONALITY":"Cookies de Fonctionnalité : Ces cookies permettent à l'application de fournir des fonctionnalités améliorées et de personnalisation. Ils peuvent être définis par nous ou par des fournisseurs tiers dont nous avons ajouté les services à nos pages. Si vous n'autorisez pas ces cookies, certains ou tous ces services peuvent ne pas fonctionner correctement.","CONTROL_TITLE":"4. Comment contrôler les cookies ?","CONTROL_DESC":"Vous pouvez contrôler et gérer les cookies dans les paramètres de votre navigateur. La plupart des navigateurs vous permettent de refuser ou d'accepter les cookies, de les supprimer individuellement ou de les supprimer tous à la fin de votre session de navigation. Pour en savoir plus sur la gestion des cookies, consultez la documentation de votre navigateur.","CONSENT_TITLE":"5. Consentement","CONSENT_DESC":"En continuant à utiliser notre application, vous consentez à l'utilisation des cookies telle que décrite dans cette politique.","CONTACT_TITLE":"6. Contact","CONTACT_DESC":"Si vous avez des questions ou des préoccupations concernant notre politique de cookies, veuillez nous contacter à l'adresse [email protected]."},"API_DOC":{"TITLE":"Documentation API","INTRO":"L'API Hou.la vous permet d'intégrer la création et la gestion de liens courts directement dans vos applications, scripts ou services.","NAV":"Navigation","NAV_AUTH":"1. Authentification","NAV_CREATE":"2. Créer un lien","NAV_AVAILABILITY":"3. Disponibilité","NAV_RETRIEVE":"4. Récupérer un lien","NAV_LIST":"6. Lister les liens","NAV_UPDATE":"7. Modifier","NAV_DELETE":"8. Supprimer","NAV_ERRORS":"15. Codes d’erreur","NAV_BEST_PRACTICES":"16. Bonnes pratiques","AUTH_TITLE":"1. Authentification","AUTH_P1":"Toutes les requêtes à l'API doivent être authentifiées en utilisant une clé API.","AUTH_P2":"Vous pouvez créer et gérer vos clés API depuis votre","AUTH_MANAGER":"espace Studio","AUTH_P3":"Incluez votre clé API dans l'en-tête X-API-Key de chaque requête :","AUTH_WARNING":"Ne partagez jamais votre clé API. Elle donne accès à votre compte et à toutes vos données.","IMPORTANT":"Important","OAUTH_TITLE":"OAuth 2.0 (Authorization Code + PKCE)","OAUTH_INTRO":"En plus de l'authentification par clé API, Hou.la supporte \u003Cstrong>OAuth 2.0\u003C/strong> avec le flux \u003Cstrong>Authorization Code + PKCE (S256)\u003C/strong>. Ce mécanisme est idéal pour les applications tierces (plugins WordPress, extensions Chrome, SaaS) qui ont besoin d'agir au nom d'un utilisateur.","OAUTH_NOTE_TITLE":"Note :","OAUTH_NOTE_DESC":"OAuth est recommandé pour les intégrations tierces. Pour les scripts serveur personnels, préférez l'authentification par clé API (X-API-Key).","OAUTH_FLOW_TITLE":"Flux d'autorisation","OAUTH_TH_STEP":"Étape","OAUTH_TH_ENDPOINT":"Endpoint","OAUTH_TH_DESC":"Description","OAUTH_STEP1_DESC":"Valider les paramètres et afficher la page de consentement (frontend)","OAUTH_STEP2_DESC":"L'utilisateur accepte ou refuse les permissions demandées","OAUTH_STEP3_DESC":"Échanger le code d'autorisation contre un access_token et un refresh_token","OAUTH_PKCE_TITLE":"PKCE (Proof Key for Code Exchange)","OAUTH_PKCE_DESC":"PKCE S256 est obligatoire pour toutes les requêtes OAuth sur Hou.la. Voici comment générer le challenge :","OAUTH_PKCE_STEP1":"Générer un code_verifier aléatoire","OAUTH_PKCE_STEP2":"Dériver le code_challenge (SHA-256 + base64url)","OAUTH_PKCE_STEP3":"Construire l'URL d'autorisation","OAUTH_TOKEN_TITLE":"Échange du code (Token Request)","OAUTH_TOKEN_DESC":"Une fois le code d'autorisation reçu, échangez-le contre des tokens :","OAUTH_TOKEN_RESPONSE_TITLE":"Réponse du token","OAUTH_REFRESH_TITLE":"Rafraîchir un token","OAUTH_REFRESH_DESC":"Lorsque l'access_token expire, utilisez le refresh_token pour en obtenir un nouveau :","OAUTH_SCOPES_TITLE":"Scopes disponibles","OAUTH_TH_SCOPE":"Scope","OAUTH_TH_PERMISSION":"Permission","OAUTH_SCOPE_READ":"Lecture des liens, tags et statistiques","OAUTH_SCOPE_WRITE":"Création, modification et suppression de liens","OAUTH_SCOPE_ECOMMERCE":"Gestion des liens e-commerce et tracking de conversions","OAUTH_SCOPE_PRODUCTS":"Synchronisation du catalogue produits","OAUTH_SCOPE_ORDERS_CREATE":"Création de commandes e-commerce","OAUTH_SCOPE_ORDERS_UPDATE":"Modification du statut des commandes","OAUTH_APPS_TITLE":"Gestion des applications connectées","OAUTH_APPS_DESC":"Les utilisateurs authentifiés (via Bearer token) peuvent lister et révoquer les applications connectées à leur compte :","OAUTH_APPS_LIST"
89:"Lister les applications connectées","OAUTH_APPS_REVOKE":"Révoquer une application","NAV_WORKSPACES":"Workspaces","WORKSPACE_TITLE":"Workspaces (multi-comptes)","WORKSPACE_P1":"Toutes les ressources (liens, tags, webhooks, domaines, etc.) sont rattachées à un workspace et non directement à un compte utilisateur. Chaque utilisateur dispose d'un workspace personnel créé automatiquement à l'inscription.","WORKSPACE_P2":"Pour cibler un workspace spécifique, ajoutez l'en-tête X-Workspace-Id à vos requêtes :","WORKSPACE_P3":"Si cet en-tête est omis, le workspace personnel par défaut de l'utilisateur est utilisé automatiquement.","WORKSPACE_NOTE_TITLE":"Bon à savoir :","WORKSPACE_NOTE_DESC":"Les clés API sont liées à un workspace. Les requêtes effectuées avec une clé API ciblent automatiquement le workspace associé, sans besoin de l'en-tête X-Workspace-Id.","WORKSPACE_EXAMPLE_TITLE":"Exemple avec workspace","CREATE_TITLE":"2. Créer un lien court","PARAMETERS":"Paramètres","TH_PARAM":"Paramètre","TH_TYPE":"Type","TH_REQUIRED":"Requis","TH_DESCRIPTION":"Description","YES":"Oui","NO":"Non","CREATE_URL_DESC":"L'URL longue à raccourcir","CREATE_TITLE_DESC":"Un titre pour identifier le lien","CREATE_KEY_DESC":"Une clé personnalisée (ex: \"mon-lien\")","CREATE_AUTH_NOTE_TITLE":"Authentification requise :","CREATE_AUTH_NOTE_DESC":"Cet endpoint nécessite une clé API ou un token JWT. Consultez la section Authentification ci-dessus.","AVAILABILITY_TITLE":"3. Vérifier la disponibilité d'une clé","PUBLIC_ENDPOINT":"Endpoint public","NO_AUTH_REQUIRED":"Aucune authentification requise.","RETRIEVE_TITLE":"4. Récupérer un lien","RETRIEVE_DESC":"Récupère les détails complets d'un lien par son UUID, incluant les statistiques des 90 derniers jours et les tags.","QRCODE_TITLE":"5. Récupérer le QR code d'un lien","LIST_TITLE":"6. Lister vos liens","UPDATE_TITLE":"7. Modifier un lien","DELETE_TITLE":"8. Supprimer un lien","DELETE_DESC":"Supprime un lien (suppression logique). La clé peut être libérée pour réutilisation.","DELETE_NO_BODY_NOTE":"Cette requête ne nécessite pas de corps (body). Seul l'UUID dans l'URL est requis.","DELETE_MANAGER_TITLE":"Alternative :","DELETE_MANAGER_DESC":"Vous pouvez également supprimer vos liens depuis le \u003Ca href='/studio/links' class='alert-link'>tableau de bord\u003C/a>.","SMART_ROUTING_TITLE":"10. Smart Routing (règles de redirection)","ERRORS_TITLE":"14. Codes d’erreur","BEST_PRACTICES_TITLE":"16. Bonnes pratiques","BEST_PRACTICES_DESC":"Pour une utilisation optimale de l'API, nous recommandons de :","BP_1":"Conserver votre clé API en sécurité et ne jamais la partager publiquement","BP_2":"Utiliser des variables d'environnement pour stocker vos clés","BP_3":"Éviter de créer des requêtes en boucle trop rapides","BP_4":"Gérer les erreurs et implémenter une logique de retry avec backoff","RATE_LIMITING_TITLE":"15. Limites de requêtes (Rate Limiting)","RATE_LIMITING_DESC":"L'API applique des limites de requêtes selon le type d'authentification utilisé :","WEBHOOKS_DESC":"Les webhooks vous permettent de recevoir des notifications HTTP en temps réel lorsque des événements se produisent sur vos liens ou pages Link-in-Bio. Au lieu de poll l'API régulièrement, configurez un webhook et recevez les données directement sur votre serveur.","SDK_TITLE":"17. SDK officiel (NPM)","SDK_DESC":"Le SDK houla-sdk vous permet d'intégrer rapidement l'API Hou.la dans vos projets Node.js/TypeScript.","SUPPORT_DESC":"Pour toute question concernant l'API, contactez-nous à :","SUPPORT_LINK":"Vous pouvez également consulter notre","SUPPORT_PAGE":"page de support","SUPPORT_MORE":"pour plus d'informations.","SUPPORT_TITLE":"20. Support","NAV_QRCODE":"5. QR Code","NAV_SMART_ROUTING":"10. Smart Routing","NAV_RATE_LIMITING":"15. Rate Limiting","NAV_WEBHOOKS":"11. Webhooks","NAV_SDK":"17. SDK","NAV_OAUTH":"OAuth 2.0","NAV_PRINT":"19. Impression","NAV_SUPPORT":"20. Support","PRINT_TITLE":"19. Impression automatique (Desktop App)","PRINT_DESC":"L'API Print permet au client desktop Hou.la Print de recevoir et gérer les jobs d'impression en temps réel. Les endpoints de la section /api/print utilisent l'authentification par clé API (header X-API-Key).","PRINT_AUTH_NOTE":"Ces endpoints sont destinés au client desktop Hou.la Print. Ils sont authentifiés par clé API (X-API-Key), pas par JWT.","PRINT_CONFIG_TITLE":"Configuration d'impression","PRINT_CONFIG_GET_DESC":"Récupère la configuration d'impression du workspace courant.","PRINT_CONFIG_PATCH_DESC":"Met à jour la configuration d'impression (endpoint manager, authentification JWT).","PRINT_PARAM_ENABLED":"Activer/désactiver l'impression automatique","PRINT_PARAM_AUTO_PRODUCT_LABELS":"Impression automatique des étiquettes produits","PRINT_PARAM_AUTO_ORDER_SUMMARY":"Impression automatique du récapitulatif commande","PRINT_PARAM_AUTO_INVOICE":"Impression automatique des factures","PRINT_PARAM_INVOICE_TRIGGER":"Déclencheur de la facture : 'paid' (paiement reçu) ou 'processing' (commande en cours)","PRINT_PARAM_AUTO_SHIPPING":"Impression automatique des étiquettes d'expédition","PRINT_PARAM_AUTO_PACKING":"Impression automatique des bordereaux de livraison","PRINT_PARAM_TEMPLATE":"Style du template d'étiquette : standard, minimal ou detailed","PRINT_PARAM_BRAND":"Nom de marque affiché sur les étiquettes (max 100 caractères)","PRINT_JOBS_TITLE":"Jobs d'impression","PRINT_JOBS_LIST_DESC":"Liste les jobs d'impression du workspace, filtrables par statut et type.","PRINT_JOBS_QUERY_PARAMS":"Paramètres de requête","PRINT_QUERY_STATUS":"Filtrer par statut : pending, sent, printed, failed, cancelled","PRINT_QUERY_TYPE":"Filtrer par type : product_label, order_summary, invoice, shipping_label, packing_slip","PRINT_QUERY_LIMIT":"Nombre maximum de résultats (1-100, défaut : 50)","PRINT_QUERY_OFFSET":"Offset pour la pagination (défaut : 0)","PRINT_ACK_TITLE":"Acquitter un job","PRINT_ACK_DESC":"Confirme qu'un job a été imprimé avec succès ou a échoué.","PRINT_ACK_STATUS_DESC":"Statut final du job : 'printed' (succès) ou 'failed' (échec)","PRINT_ACK_ERROR_DESC":"Message d'erreur (si status=failed, max 1000 caractères)","PRINT_LABEL_TITLE":"Télécharger le contenu d'une étiquette","PRINT_LABEL_DESC":"Retourne le contenu de l'étiquette (ZPL, ESC/POS inline) ou l'
89URL de téléchargement (PDF, PNG).","BASE_URL_LABEL":"Base URL :","CREATE_UTM_SOURCE_DESC":"Source de la campagne (ex: \"google\", \"newsletter\", \"facebook\")","CREATE_UTM_MEDIUM_DESC":"Support marketing (ex: \"cpc\", \"email\", \"social\")","CREATE_UTM_CAMPAIGN_DESC":"Nom de la campagne (ex: \"soldes-ete-2026\")","CREATE_UTM_TERM_DESC":"Mots-clés payés (pour les campagnes publicitaires)","CREATE_UTM_CONTENT_DESC":"Contenu spécifique (ex: \"bouton-header\", \"lien-footer\")","CREATE_UTM_ID_DESC":"Identifiant de campagne pour le suivi avancé","CREATE_EPHEMERAL_DURATION_DESC":"Durée de vie du lien éphémère. Valeurs : \u003Ccode class=\"code-inline\">1h\u003C/code>, \u003Ccode class=\"code-inline\">6h\u003C/code>, \u003Ccode class=\"code-inline\">12h\u003C/code>, \u003Ccode class=\"code-inline\">24h\u003C/code>, \u003Ccode class=\"code-inline\">48h\u003C/code>","CREATE_CUSTOM_EXPIRES_DESC":"Date d'expiration personnalisée (ISO 8601, ex: \u003Ccode class=\"code-inline\">2026-06-15T23:59:59.000Z\u003C/code>). Mutuellement exclusif avec \u003Ccode class=\"code-inline\">ephemeralDuration\u003C/code>. La clé n'est pas recyclée.","CREATE_PASSWORD_DESC":"Mot de passe pour protéger l'accès au lien (1-100 caractères). Hashé avec bcrypt. Sécurité renforcée.","CREATE_FB_PIXEL_DESC":"Facebook Pixel ID (10-20 chiffres, ex: \u003Ccode class=\"code-inline\">123456789012345\u003C/code>). Le pixel se déclenche lors du clic pour constituer une audience de retargeting.","CREATE_GOOGLE_TAG_DESC":"Google Tag ID (format \u003Ccode class=\"code-inline\">G-XXX\u003C/code>, \u003Ccode class=\"code-inline\">AW-XXX\u003C/code>, \u003Ccode class=\"code-inline\">DC-XXX\u003C/code> ou \u003Ccode class=\"code-inline\">UA-XXX\u003C/code>). Supporte gtag.js.","CREATE_TIKTOK_PIXEL_DESC":"TikTok Pixel ID (format \u003Ccode class=\"code-inline\">CXXX...\u003C/code>, ex: \u003Ccode class=\"code-inline\">CABCDEF1234567890\u003C/code>). Le pixel se déclenche lors du clic pour le suivi TikTok Ads.","CREATE_OG_TITLE_DESC":"Titre Open Graph personnalisé affiché lors du partage sur les réseaux sociaux (max 200 caractères)","CREATE_OG_DESCRIPTION_DESC":"Description Open Graph personnalisée affichée lors du partage (max 500 caractères)","CREATE_OG_IMAGE_DESC":"URL de l'image Open Graph (doit être une URL valide commençant par http:// ou https://)","ALERT_UTM_TITLE":"Variables UTM :","ALERT_UTM_DESC":"Ces paramètres sont automatiquement ajoutés à l'URL de destination pour le suivi dans Google Analytics et autres outils d'analyse.","ALERT_EPHEMERAL_TITLE":"Liens éphémères :","ALERT_EPHEMERAL_DESC":"Si vous spécifiez \u003Ccode class=\"code-inline\">ephemeralDuration\u003C/code>, le lien expirera automatiquement après la durée indiquée. La clé sera alors recyclée et pourra être réutilisée.","ALERT_CUSTOM_EXPIRES_TITLE":"Expiration personnalisée :","ALERT_CUSTOM_EXPIRES_DESC":"Si vous spécifiez \u003Ccode class=\"code-inline\">customExpiresAt\u003C/code> (ISO 8601), le lien expirera à cette date précise. La clé n'est \u003Cstrong>pas\u003C/strong> recyclée. Mutuellement exclusif avec \u003Ccode class=\"code-inline\">ephemeralDuration\u003C/code>.","ALERT_PASSWORD_TITLE":"Liens protégés :","ALERT_PASSWORD_DESC":"Si vous spécifiez \u003Ccode class=\"code-inline\">password\u003C/code>, le visiteur devra saisir le mot de passe avant d'être redirigé. Le mot de passe est hashé avec bcrypt (jamais stocké en clair). Sécurité renforcée.","ALERT_RETARGETING_TITLE":"Retargeting Pixels :","ALERT_RETARGETING_DESC":"Ajoutez vos pixels Facebook, Google ou TikTok pour constituer des audiences de reciblage. Les pixels se déclenchent sur une page intermédiaire lors du clic (invisible pour les bots/crawlers, qui reçoivent un 301 direct).","REQUEST_EXAMPLE":"Exemple de requête","RESPONSE":"Réponse","QUERY_PARAMS":"Paramètres de requête","TH_DEFAULT":"Défaut","CREATE_EXAMPLE_EPHEMERAL":"Exemple avec lien éphémère","CREATE_EXAMPLE_CUSTOM_EXPIRES":"Exemple avec expiration personnalisée","CREATE_EXAMPLE_PASSWORD":"Exemple avec lien protégé par mot de passe","CREATE_RESPONSE_EPHEMERAL":"Réponse (lien éphémère)","CREATE_RESPONSE_CUSTOM_EXPIRES":"Réponse (expiration personnalisée)","CREATE_RESPONSE_PASSWORD":"Réponse (lien protégé)","ALERT_QRCODE_TITLE":"QR Code :","ALERT_QRCODE_DESC":"Pour générer un QR code, utilisez l'endpoint dédié \u003Ccode class=\"code-inline\">GET /api/link/{id}/qrcode\u003C/code> (voir section 5).","QRCODE_WIDTH_DESC":"Largeur en pixels (50-1000)","QRCODE_MARGIN_DESC":"Marge autour du QR code (0-10)","QRCODE_DARK_COLOR_DESC":"Couleur des modules (hex)","QRCODE_LIGHT_COLOR_DESC":"Couleur de fond (hex)","QRCODE_ERROR_LEVEL_DESC":"Niveau de correction : L, M, Q, H","QRCODE_FORMAT_DESC":"Format de sortie : png ou svg","QRCODE_RESPONSE_PNG":"Réponse (PNG)","QRCODE_RESPONSE_SVG":"Réponse (SVG)","LIST_PAGE_DESC":"Numéro de la page","LIST_LIMIT_DESC":"Nombre de résultats par page (max: 100)","LIST_SORT_TITLE":"Tri :","LIST_SORT_DESC":"Utilisez le paramètre \u003Ccode class='code-inline'>sort\u003C/code> au format \u003Ccode class='code-inline'>champ,direction\u003C/code> (ex: \u003Ccode class='code-inline'>createdAt,DESC\u003C/code>). Champs disponibles : createdAt, hitsCount, title.","LIST_SEARCH_DESC":"Rechercher par titre ou URL","UPDATE_URL_DESC":"La nouvelle URL de destination","UPDATE_TITLE_DESC":"Le nouveau titre du lien","UPDATE_PASSWORD_DESC":"Nouveau mot de passe (1-100 caractères), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer la protection","UPDATE_IS_EPHEMERAL_DESC":"Activer/désactiver le mode éphémère","UPDATE_EPHEMERAL_DURATION_DESC":"Durée éphémère : \u003Ccode class=\"code-inline\">1h\u003C/code>, \u003Ccode class=\"code-inline\">6h\u003C/code>, \u003Ccode class=\"code-inline\">12h\u003C/code>, \u003Ccode class=\"code-inline\">24h\u003C/code>, \u003Ccode class=\"code-inline\">48h\u003C/code>","UPDATE_CUSTOM_EXPIRES_DESC":"Date d'expiration personnalisée (ISO 8601), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer l'expiration","UPDATE_FB_PIXEL_DESC":"Facebook Pixel ID (10-20 chiffres), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer le pixel","UPDATE_GOOGLE_TAG_DESC":"Google Tag ID (\u003Ccode class=\"code-inline\">G-XXX\u003C/code>, \u003Ccode class=\"code-inline\">AW-XXX\u003C/code>, \u003Ccode class=\"code-inline\">DC-XXX\u003C/code>, \u003Ccode class=\"code-inline\">UA-XXX\u003C/code>), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer","UPDATE_TIKTOK_PIXEL_DESC":"TikTok Pixel ID (\u003Ccode class=\"code-inline\">CXXX...\u003C/code>), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer","UPDATE_OG_TITLE_DESC":"Nouveau titre Open Graph, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer","UPDATE_OG_DESCRIPTION_DESC":"Nouvelle description Open Graph, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer","UPDATE_OG_IMAGE_DESC":"Nouvelle URL d'image Open Graph, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer","CREATE_TAG_IDS_DESC":"Liste d'identifiants de tags à associer au lien (UUID). Les tags doivent exister au préalable.","UPDATE_TAG_IDS_DESC":"Liste d'identifiants de tags (UUID) à associer au lien, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer tous les tags","CREATE_MAX_HITS_DESC":"Nombre maximum de clics autorisés sur le lien (entre 1 et 1 000 000). Une fois atteint, le lien expire automatiquement.","UPDATE_MAX_HITS_DESC":"Nombre maximum de clics autorisés (1 à 1 000 000), ou \u003Ccode class=\"code-inline\">null\u003C/code> pour retirer la limite","CREATE_IS_CLOAKED_DESC":"Activer le Link Cloaking (\u003Ccode class=\"code-inline\">true\u003C/code>/\u003Ccode class=\"code-inline\">false\u003C/code>). Masque l'URL de destination dans la barre d'adresse du visiteur.","UPDATE_IS_CLOAKED_DESC":"Activer ou désactiver le Link Cloaking (\u003Ccode class=\"code-inline\">true\u003C/code>/\u003Ccode class=\"code-inline\">false\u003C/code>)","CREATE_DEEP_LINK_IOS_DESC":"Schéma URI iOS pour ouvrir l'app native (ex: \u003Ccode class=\"code-inline\">instagram://user?username=monprofil\u003C/code>). Mobile uniquement.","UPDATE_DEEP_LINK_IOS_DESC":"Schéma URI iOS, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour supprimer","CREATE_DEEP_LINK_ANDROID_DESC":"Intent URL Android pour ouvrir l'app native (ex: \u003Ccode class=\"code-inline\">intent://user?username=monprofil#Intent;scheme=instagram;package=com.instagram.android;end\u003C/code>). Mobile uniquement.","UPDATE_DEEP_LINK_ANDROID_DESC":"Intent URL Android, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour supprimer","CREATE_DEEP_LINK_FALLBACK_DESC":"URL de repli si l'app n'est pas installée (ex: lien App Store, Play Store ou page web). Si non renseigné, la redirection standard s'applique.","UPDATE_DEEP_LINK_FALLBACK_DESC":"URL de repli, ou \u003Ccode class=\"code-inline\">null\u003C/code> pour supprimer","OG_IMAGE_UPLOAD_TITLE":"9. Upload d’image OG","OG_IMAGE_UPLOAD_DESC":"Uploadez une image personnalisée qui sera optimisée (1200×630, WebP) et stockée sur notre CDN. L'image remplace automatiquement le champ ogImageUrl du lien.","OG_IMAGE_UPLOAD_ENDPOINT":"Uploader une image","OG_IMAGE_UPLOAD_BODY_DESC":"Le body doit être de type \u003Ccode class=\"code-inline\">multipart/form-data\u003C/code> avec un champ \u003Ccode class=\"code-inline\">file\u003C/code> (JPG, PNG ou WebP, max 8 Mo).","OG_IMAGE_DELETE_ENDPOINT":"Supprimer l'image uploadée","DELETE_PARAMS_TITLE":"Paramètres (body, optionnels)","DELETE_REASON_DESC":"Raison de la suppression (max 500 caractères)","DELETE_RELEASE_KEY_DESC":"Libérer la clé courte pour réutilisation","SMART_ROUTING_DESC":"Le Smart Routing permet de définir des règles de redirection conditionnelle sur vos liens. Chaque règle contient un libellé, une URL de destination, des conditions (pays, appareil, langue, navigateur, OS, première visite) et un poids optionnel pour l'A/B testing.","SMART_ROUTING_LIST_RULES":"Lister les règles d'un lien","SMART_ROUTING_CREATE_RULE":"Créer une règle","SMART_ROUTING_LABEL_DESC":"Libellé de la règle (max 100 caractères)","SMART_ROUTING_DEST_URL_DESC":"URL de destination si la règle correspond","SMART_ROUTING_MATCH_TYPE_DESC":"\u003Ccode class=\"code-inline\">all\u003C/code> (défaut) = toutes les conditions, \u003Ccode class=\"code-inline\">any\u003C/code> = au moins une","SMART_ROUTING_WEIGHT_DESC":"Poids pour l'A/B testing (0-100). Si des règles ont des poids, le trafic est réparti proportionnellement.","SMART_ROUTING_IS_ACTIVE_DESC":"Activer/désactiver la règle (défaut: true)","SMART_ROUTING_CONDITIONS_DESC":"Liste de conditions (voir ci-dessous)","SMART_ROUTING_CONDITION_STRUCTURE":"Structure d'une condition","TH_POSSIBLE_VALUES":"Valeurs possibles","SMART_ROUTING_CONDITION_VALUE_DESC":"Valeur à comparer (ex: \u003Ccode class=\"code-inline\">FR\u003C/code>, \u003Ccode class=\"code-inline\">mobile\u003C/code>, \u003Ccode class=\"code-inline\">true\u003C/code>)","SMART_ROUTING_AB_TESTING":"A/B Testing avec poids","SMART_ROUTING_AB_TESTING_DESC":"Pour répartir le trafic entre plusieurs destinations, créez des règles sans conditions mais avec des poids. Le trafic sera distribué proportionnellement aux poids définis.","SMART_ROUTING_UPDATE_RULE":"Modifier une règle","SMART_ROUTING_UPDATE_RULE_DESC":"Mêmes paramètres que la création. Seuls les champs envoyés sont modifiés.","SMART_ROUTING_DELETE_RULE":"Supprimer une règle","SMART_ROUTING_REORDER_RULES":"Réordonner les règles","ERROR_400":"Requête invalide - Vérifiez les paramètres envoyés","ERROR_401":"Non autorisé - Clé API manquante ou invalide","ERROR_403":"Interdit - Clé API révoquée ou accès refusé","ERROR_404":"Non trouvé - La ressource demandée n'existe pas","ERROR_429":"Trop de requêtes - Limite de débit atteinte ou protection de sécurité activée","ERROR_500":"Erreur serveur - Contactez le support","RATE_TH_USER_TYPE":"Type d'utilisateur","RATE_TH_LIMIT":"Limite","RATE_ANONYMOUS":"Anonyme","RATE_JWT":"JWT authentifié","RATE_API_KEY":"Clé API","RATE_LOGIN":"Login / Auth","RATE_GET_SKIP":"Les requêtes GET de lecture (récupération, liste) ne sont pas soumises au rate limiting.","RATE_HEADERS_TITLE":"En-têtes de rate limit :","RATE_HEADERS_DESC":"Chaque réponse inclut les en-têtes \u003Ccode class='code-inline'>X-RateLimit-Limit\u003C/code>, \u003Ccode class='code-inline'>X-RateLimit-Remaining\u003C/code> et \u003Ccode class='code-inline'>X-RateLimit-Reset\u003C/code> pour vous permettre de gérer vos quotas.","RATE_429_TITLE":"429 Too Many Requests :","RATE_429_DESC":"Si vous dépassez ces limites, l'API retournera une erreur 429. Attendez la fin du TTL avant de réessayer.","RATE_SECURITY_TITLE":"Sécurité renforcée :","RATE_SECURITY_DESC":"Les liens protégés par mot de passe bénéficient d'une protection supplémentaire. Cette protection est indépendante du rate limiting général.","WEBHOOKS_TITLE":"11. Webhooks","WEBHOOKS_EXCLUSIVITY_TITLE":"Exclusivité hou.la :","WEBHOOKS_EXCLUSIVITY_DESC":"Nous sommes les seuls à proposer les événements \u003Ccode class=\"code-inline\">profile.visited\u003C/code> et \u003Ccode class=\"code-inline\">profile.link_clicked\u003C/code> pour les pages Link-in-Bio.","WEBHOOKS_EVENTS_TITLE":"Événements disponibles","WEBHOOKS_TH_EVENT":"Événement","WEBHOOKS_EVENT_LINK_CLICKED":"Un lien a été cliqué","WEBHOOKS_EVENT_LINK_CREATED":"Un lien a été cr
89éé","WEBHOOKS_EVENT_LINK_UPDATED":"Un lien a été modifié","WEBHOOKS_EVENT_LINK_DELETED":"Un lien a été supprimé","WEBHOOKS_EVENT_HEALTH_CHANGED":"L'état de santé d'un lien a changé (ex: URL cassée)","WEBHOOKS_EVENT_SAFETY_CHANGED":"Le statut de sécurité d'un lien a changé","WEBHOOKS_EVENT_EXPIRED":"Un lien éphémère a expiré","WEBHOOKS_EVENT_PASSWORD_ATTEMPT":"Tentative d'accès à un lien protégé par mot de passe","WEBHOOKS_EVENT_PROFILE_VISITED":"Une page Link-in-Bio a été visitée","WEBHOOKS_EVENT_PROFILE_LINK_CLICKED":"Un lien a été cliqué sur une page Link-in-Bio","WEBHOOKS_CREATE":"Créer un webhook","WEBHOOKS_NAME_DESC":"Nom descriptif (max 100 caractères)","WEBHOOKS_URL_DESC":"URL de destination (HTTPS requis en production, max 2048 caractères)","WEBHOOKS_EVENTS_DESC":"Liste des événements à écouter (au moins 1)","WEBHOOKS_LINK_ID_DESC":"UUID du lien spécifique à surveiller","WEBHOOKS_TAG_ID_DESC":"UUID du tag pour filtrer les événements","WEBHOOKS_BATCH_SIZE_DESC":"Taille du batch (1-100, défaut: 1 = pas de batching)","WEBHOOKS_BATCH_DELAY_DESC":"Délai max avant envoi du batch en ms (0-60000, défaut: 0)","WEBHOOKS_SAMPLING_RATE_DESC":"Pourcentage d'événements à envoyer (1-100, défaut: 100)","WEBHOOKS_ANONYMIZE_IP_DESC":"Anonymiser l'IP dans les payloads (RGPD)","WEBHOOKS_EXCLUDE_GEO_DESC":"Exclure la ville des données de géolocalisation (RGPD)","WEBHOOKS_SECRET_WARNING":"Le \u003Ccode class=\"code-inline\">secret\u003C/code> n'est affiché qu'à la création. Conservez-le en lieu sûr pour vérifier les signatures.","WEBHOOKS_LIST":"Lister les webhooks","WEBHOOKS_GET":"Récupérer un webhook","WEBHOOKS_UPDATE":"Modifier un webhook","WEBHOOKS_UPDATE_DESC":"Tous les champs de création sont acceptés en paramètre (sauf \u003Ccode class=\"code-inline\">secret\u003C/code>).","WEBHOOKS_DELETE":"Supprimer un webhook","WEBHOOKS_ENABLE_DISABLE":"Activer / Désactiver","WEBHOOKS_TEST":"Tester un webhook","WEBHOOKS_TEST_DESC":"Envoie un événement de test à l'URL du webhook pour vérifier que votre serveur répond correctement.","WEBHOOKS_LOGS":"Consulter les logs","WEBHOOKS_LOGS_PARAMS":"Paramètres query","WEBHOOKS_LOGS_PAGE_DESC":"Numéro de page (défaut: 1)","WEBHOOKS_LOGS_LIMIT_DESC":"Résultats par page (défaut: 20, max: 100)","WEBHOOKS_LOGS_SUCCESS_DESC":"Filtrer par succès (\u003Ccode class=\"code-inline\">true\u003C/code>) ou échec (\u003Ccode class=\"code-inline\">false\u003C/code>)","WEBHOOKS_REGENERATE":"Régénérer le secret","WEBHOOKS_REGENERATE_DESC":"Génère un n
89ouveau secret de signature. L'ancien secret sera invalidé immédiatement.","WEBHOOKS_AUTH_TITLE":"Authentification des webhooks :","WEBHOOKS_AUTH_DESC":"Vérifiez toujours la signature HMAC-SHA256 des requêtes entrantes pour vous assurer qu'elles proviennent bien de Hou.la. Ne traitez jamais un webhook sans vérification.","WEBHOOKS_VERIFY_SIGNATURE":"Vérification de signature","WEBHOOKS_VERIFY_DESC":"Chaque requête webhook inclut un en-tête \u003Ccode class=\"code-inline\">X-Houla-Signature\u003C/code> contenant une signature HMAC-SHA256. Vérifiez cette signature pour vous assurer que la requête provient bien de hou.la.","WEBHOOKS_HEADERS_TITLE":"En-têtes envoyés","WEBHOOKS_TH_HEADER":"En-tête","WEBHOOKS_HEADER_SIGNATURE_DESC":"Signature HMAC-SHA256 du body","WEBHOOKS_HEADER_EVENT_DESC":"Type d'événement (ex: \u003Ccode class=\"code-inline\">link.clicked\u003C/code>)","WEBHOOKS_HEADER_DELIVERY_DESC":"UUID unique de la livraison","WEBHOOKS_HEADER_TIMESTAMP_DESC":"Timestamp ISO 8601 de l'envoi","WEBHOOKS_VERIFY_EXAMPLE":"Exemple de vérification (Node.js)","WEBHOOKS_BEST_PRACTICES_TITLE":"Bonnes pratiques :","WEBHOOKS_BEST_PRACTICES_DESC":"Vérifiez toujours la signature, répondez en moins de 5 secondes (traitez en arrière-plan si nécessaire), et retournez un code 2xx pour confirmer la réception. En cas d'échec, hou.la réessaie automatiquement avec un backoff exponentiel.","SDK_INSTALL":"Installation","SDK_USAGE":"Utilisation","SDK_DOC_TITLE":"Documentation :","SDK_DOC_DESC":"Consultez le \u003Ca href=\"https://www.npmjs.com/package/houla-sdk\" target=\"_blank\" rel=\"noopener\" class=\"text-decoration-none\">README du SDK\u003C/a> pour la liste complète des méthodes disponibles.","PIXEL_PRESETS_TITLE":"12. Pixel Presets","PIXEL_PRESETS_DESC":"Gérez des presets de pixels de retargeting pour pré-remplir automatiquement vos liens lors de la création.","PIXEL_PRESETS_LIST":"Lister les presets","PIXEL_PRESETS_CREATE":"Créer un preset","PIXEL_PRESETS_UPDATE":"Modifier un preset","PIXEL_PRESETS_DELETE":"Supprimer un preset","PIXEL_PRESETS_PARAM_NAME":"Nom du preset (1-100 caractères)","PIXEL_PRESETS_PARAM_DEFAULT":"Définir comme preset par défaut pour les nouveaux liens","PIXEL_PRESETS_PARAM_FB":"Facebook Pixel ID (10-20 chiffres)","PIXEL_PRESETS_PARAM_GOOGLE":"Google Tag ID (G-XXX, AW-XXX, DC-XXX ou UA-XXX)","PIXEL_PRESETS_PARAM_TIKTOK":"TikTok Pixel ID (commence par C, 11-31 caractères)","NAV_OG_IMAGE_UPLOAD":"9. Upload image OG","NAV_PIXEL_PRESETS":"12. Pixel Presets","OG_CRAWL_TITLE":"Crawler les meta OG","OG_CRAWL_DESC":"Re-crawle les meta Open Graph depuis l’URL de destination du lien. Utile pour mettre à jour les données OG après modification de la page cible.","OG_CRAWL_URL_TITLE":"Prévisualiser les meta OG d’une URL","OG_CRAWL_URL_DESC":"Crawle une URL sans créer de lien, pour prévisualiser les meta OG qui seront extraites.","OG_CRAWL_URL_PARAM":"URL à crawler (ex : https://example.com)","OG_PREVIEW_TITLE":"Récupérer les données OG d’un lien","OG_PREVIEW_DESC":"Retourne les meta OG stockées pour un lien (titre, description, image, statut du crawl).","OG_AUTODETECT_TITLE":"Auto-détection :","OG_AUTODETECT_DESC":"Si aucun champ OG n’est fourni à la création, le système crawle automatiquement l’URL de destination pour extraire les meta OG existantes (og:title, og:description, og:image avec fallbacks sur twitter:title, meta description, etc.).","OG_BOTS_TITLE":"Bots sociaux :","OG_BOTS_DESC":"Lorsqu’un bot social (facebookexternalhit, Twitterbot, LinkedInBot, WhatsApp, Telegram, Discord, etc.) accède au lien court, il reçoit une page HTML avec les meta OG au lieu d’une redirection 301. Les visiteurs humains sont toujours redirigés normalement.","NAV_PAY_LINKS":"14. Pay Links","NAV_IMPORT":"15. Import Bitly","PAY_LINKS_TITLE":"14. Pay Links (vente de produits)","PAY_LINKS_DESC":"Vendez des produits physiques, digitaux, services ou acceptez des dons directement depuis vos pages Link in Bio. Les paiements sont traités via Stripe Connect.","PAY_LINKS_STRIPE_REQUIRED":"Un compte Stripe Connect actif est requis pour créer des Pay Links. Lancez l’onboarding depuis le dashboard studio.","PAY_LINKS_ONBOARD_TITLE":"Onboarding Stripe Connect","PAY_LINKS_ONBOARD_DESC":"Lance le processus d’onboarding Stripe Connect Express. Retourne une URL de redirection vers le formulaire Stripe.","PAY_LINKS_STATUS_TITLE":"Statut Stripe Connect","PAY_LINKS_STATUS_DESC":"Retourne le statut actuel du compte Stripe Connect du vendeur.","PAY_LINKS_LIST_TITLE":"Lister les Pay Links","PAY_LINKS_LIST_DESC":"Retourne tous les Pay Links d’une page Bio, triés par ordre d’affichage.","PAY_LINKS_CREATE_TITLE":"Créer un Pay Link","PAY_LINKS_CREATE_DESC":"Crée un n
89ouveau Pay Link sur une page Bio. Le vendeur doit avoir un compte Stripe Connect actif.","PAY_LINKS_PARAM_TITLE":"Titre du produit (max 120 caractères)","PAY_LINKS_PARAM_PRICE":"Prix en centimes (ex : 1999 = 19,99 €)","PAY_LINKS_PARAM_DESCRIPTION":"Description du produit","PAY_LINKS_PARAM_IMAGE":"URL de l’image du produit","PAY_LINKS_PARAM_PRODUCT_TYPE":"Type de produit : physical, digital, service, donation (défaut : physical)","PAY_LINKS_PARAM_CURRENCY":"Devise : EUR, USD, GBP, CAD, CHF (défaut : EUR)","PAY_LINKS_PARAM_COMPARE_AT":"Prix barré en centimes (prix avant promo)","PAY_LINKS_PARAM_QUANTITY":"Stock disponible (null = illimité)","PAY_LINKS_PARAM_MAX_PER_ORDER":"Quantité maximum par commande (1-100, défaut : 1)","PAY_LINKS_PARAM_SHIPPING":"Frais de livraison en centimes","PAY_LINKS_PARAM_COUNTRIES":"Codes ISO pays de livraison (ex : [\"FR\", \"BE\", \"CH\"])","PAY_LINKS_PARAM_FILE_URL":"URL du fichier à télécharger (produits digitaux)","PAY_LINKS_PARAM_FILE_NAME":"Nom du fichier affiché à l’acheteur","PAY_LINKS_PARAM_CTA_STYLE":"Style du CTA : default, featured, minimal","PAY_LINKS_PARAM_CTA_TEXT":"Texte du bouton d’achat (max 40 caractères)","PAY_LINKS_UPDATE_TITLE":"Modifier un Pay Link","PAY_LINKS_UPDATE_DESC":"Modifie un Pay Link existant. Seuls les champs envoyés sont mis à jour.","PAY_LINKS_UPDATE_FIELDS":"Accepte les mêmes paramètres que la création, plus le champ status (active, paused, sold_out, archived).","PAY_LINKS_SHIPPING_ESTIMATE_TITLE":"Estimer la livraison d'un panier","PAY_LINKS_SHIPPING_ESTIMATE_DESC":"Calcule les frais de livraison d'un panier et retourne une fenêtre de livraison estimée tenant compte du délai de préparation vendeur, des vacances vendeur, du pays d'expédition et d'un éventuel panier ouvert déjà fusionné.","PAY_LINKS_SHIPPING_ESTIMATE_PARAM_ITEMS":"Lignes du panier. Chaque entrée contient au minimum productId et quantity.","PAY_LINKS_SHIPPING_ESTIMATE_PARAM_COUNTRY":"Code ISO du pays acheteur. Si omis, l'API tente une détection GeoIP puis retombe sur FR.","PAY_LINKS_SHIPPING_ESTIMATE_PARAM_EMAIL":"Email acheteur pour détecter un panier ouvert existant et recalculer uniquement le complément de livraison.","PAY_LINKS_SHIPPING_ESTIMATE_RESPONSE":"La réponse inclut les frais de livraison recalculés, l'état du retrait sur place, et un objet deliveryEstimate avec la fenêtre estimée, le transporteur générique appliqué et l'impact éventuel des vacances vendeur.","PAY_LINKS_DELETE_TITLE":"Supprimer un Pay Link","PAY_LINKS_DELETE_DESC":"Supprime un Pay Link (soft delete). Les commandes existantes sont conservées.","PAY_LINKS_ORDERS_TITLE":"Lister les commandes","PAY_LINKS_ORDERS_DESC":"Retourne les commandes du vendeur avec pagination et filtres.","PAY_LINKS_ORDERS_PARAM_PAGE":"Numéro de page (défaut : 1)","PAY_LINKS_ORDERS_PARAM_LIMIT":"Nombre de résultats par page (max 100, défaut : 20)","PAY_LINKS_ORDERS_PARAM_STATUS":"Filtrer par statut : pending, paid, processing, fulfilled, failed, refunded, partially_refunded","PAY_LINKS_ORDERS_PARAM_PAY_LINK":"Filtrer par PayLink ID","PAY_LINKS_ORDERS_PARAM_DATE_FROM":"Date de début (ISO 8601)","PAY_LINKS_ORDERS_PARAM_DATE_TO":"Date de fin (ISO 8601)","PAY_LINKS_STATS_TITLE":"Statistiques des ventes","PAY_LINKS_STATS_DESC":"Retourne un résumé des ventes : chiffre d’affaires total, nombre de commandes, remboursements, et données du mois en cours.","PAY_LINKS_REFUND_TITLE":"Rembourser une commande","PAY_LINKS_REFUND_DESC":"Rembourse une commande via Stripe. Par défaut, remboursement total. Spécifiez amountCents pour un remboursement partiel.","PAY_LINKS_REFUND_PARAM_AMOUNT":"Montant à rembourser en centimes (omis = remboursement total)","PAY_LINKS_REFUND_PARAM_REASON":"Motif du remboursement","IMPORT_TITLE":"15. Import de liens (Bitly)","IMPORT_DESC":"Importez vos liens depuis Bitly vers Hou.la. L'import est asynchrone : vous lancez un job et suivez sa progression via SSE ou polling.","IMPORT_PLAN_NOTICE":"L'import de liens est gratuit et accessible à tous les comptes.","IMPORT_START_TITLE":"Lancer un import","IMPORT_START_DESC":"Démarre un job d'import asynchrone depuis la source spécifiée. Retourne un objet ImportJob avec un identifiant pour suivre la progression.","IMPORT_PARAM_SOURCE":"Source de l'import (actuellement : \"bitly\")","IMPORT_PARAM_TOKEN":"Token d'accès API de la source (Bitly Generic Access Token)","IMPORT_PARAM_SKIP":"Ignorer les liens déjà importés (défaut : true)","IMPORT_PARAM_TAGS":"Conserver les tags Bitly en tant que tags Hou.la (défaut : false)","IMPORT_PARAM_SLUGS":"Tenter de conserver les slugs personnalisés Bitly (défaut : false)","IMPORT_LIMITS_TITLE":"Limites par plan","IMPORT_TH_PLAN":"Plan","IMPORT_TH_MAX_LINKS":"Liens max par import","IMPORT_LIMIT_FREE":"Non disponible","IMPORT_EXAMPLE_TITLE":"Exemple","IMPORT_LIST_TITLE":"Lister les imports","IMPORT_LIST_DESC":"Retourne la liste de tous les jobs d'import de l'utilisateur, triés du plus récent au plus ancien.","IMPORT_GET_TITLE":"Détail d'un import","IMPORT_GET_DESC":"Retourne les détails d'un job d'import spécifique, incluant le statut, la progression et les éventuelles erreurs.","IMPORT_CANCEL_TITLE":"Annuler un import","IMPORT_CANCEL_DESC":"Annule un job d'import en cours. Seuls les imports au statut \"pen
89ding\" ou \"running\" peuvent être annulés.","IMPORT_PROGRESS_TITLE":"Suivre la progression (SSE)","IMPORT_PROGRESS_DESC":"Flux Server-Sent Events (SSE) pour suivre la progression de l'import en temps réel. Émet des événements progress, completed ou failed.","NAV_SECTION_GETTING_STARTED":"Démarrage","NAV_SECTION_LINKS":"Liens","NAV_SECTION_TAGS":"Tags","NAV_SECTION_STATS":"Statistiques","NAV_SECTION_ROUTING":"Routage","NAV_SECTION_INTEGRATIONS":"Intégrations","NAV_SECTION_COMMERCE":"Commerce","NAV_SECTION_REFERENCE":"Référence","NAV_TAGS":"Tags","NAV_STATS":"Statistiques","TAGS_TITLE":"Tags","TAGS_DESC":"Organisez vos liens avec des tags personnalisés. Chaque tag a un nom et une couleur optionnelle. Associez ensuite des tags à vos liens via les champs tagIds lors de la création ou la mise à jour.","TAGS_AUTH_NOTE_TITLE":"Authentification :","TAGS_AUTH_NOTE_DESC":"Les endpoints tags requièrent l'en-tête X-Workspace-Id en plus de X-API-Key.","TAGS_LIST":"Lister les tags","TAGS_GET":"Récupérer un tag","TAGS_CREATE":"Créer un tag","TAGS_UPDATE":"Modifier un tag","TAGS_UPDATE_DESC":"Mêmes paramètres que la création. Seuls les champs envoyés sont modifiés.","TAGS_DELETE":"Supprimer un tag","TAGS_PARAM_NAME":"Nom du tag (1-50 caractères)","TAGS_PARAM_COLOR":"Couleur hexadécimale (#RRGGBB). Optionnel.","STATS_TITLE":"Statistiques","STATS_DESC":"Accédez aux statistiques détaillées de vos liens : export CSV/JSON, données horaires et répartition par pays, navigateur, appareil, etc.","STATS_AUTH_NOTE_TITLE":"Authentification :","STATS_AUTH_NOTE_DESC":"Les endpoints statistiques requièrent uniquement l'en-tête X-API-Key. Le lien doit appartenir au workspace associé à la clé.","STATS_EXPORT_TITLE":"Exporter les clics","STATS_EXPORT_DESC":"Exporte la liste complète des clics d'un lien au format JSON ou CSV.","STATS_EXPORT_FORMAT_DESC":"Format de sortie : json ou csv (défaut : json)","STATS_EXPORT_FROM_DESC":"Date de début (YYYY-MM-DD)","STATS_EXPORT_TO_DESC":"Date de fin (YYYY-MM-DD)","STATS_EXPORT_TYPE_DESC":"Filtrer par type de clic","STATS_HOURLY_TITLE":"Clics par heure","STATS_HOURLY_DESC":"Retourne le nombre de clics agrégés par heure sur une période donnée.","STATS_HOURLY_PERIOD_DESC":"Période : \u003Ccode class=\"code-inline\">24h\u003C/code>, \u003Ccode class=\"code-inline\">7d\u003C/code>, \u003Ccode class=\"code-inline\">30d\u003C/code>, \u003Ccode class=\"code-inline\">90d\u003C/code>, \u003Ccode class=\"code-inline\">custom\u003C/code>","STATS_HOURLY_FROM_DESC":"Date de début si period=custom (ISO 8601)","STATS_HOURLY_TO_DESC":"Date de fin si period=custom (ISO 8601)","STATS_DETAILED_TITLE":"Statistiques détaillées","STATS_DETAILED_DESC":"Retourne les statistiques agrégées : total des clics, répartition par pays, navigateur, OS, appareil et référent.","STATS_DETAILED_DAYS_DESC":"Nombre de jours à analyser (défaut : 30)","TH_PARAMETER":"Paramètre"},"ASSOCIATIONS":{"TITLE":"Hou.la soutient les associations","INTRO":"Parce que les associations font un travail remarquable au quotidien, Hou.la s'engage à leurs côtés en leur offrant un accès gratuit à nos outils de raccourcissement de liens, QR codes et statistiques.","WHY_TITLE":"Pourquoi cet engagement ?","WHY_P1":"Les associations, ONG et organisations à but non lucratif jouent un rôle essentiel dans notre société. Elles mobilisent des bénévoles, organisent des événements, communiquent auprès du public et collectent des fonds: souvent avec des budgets très limités.","WHY_P2":"Chez Hou.la, nous croyons que la technologie doit être accessible à tous. C'est pourquoi nous avons décidé d'offrir gratuitement nos outils aux associations qui en ont besoin pour amplifier leur impact.","OFFER_TITLE":"Ce que nous offrons","OFFER_LINKS_TITLE":"Liens courts illimités","OFFER_LINKS_DESC":"Créez autant de liens courts que nécessaire pour vos campagnes de communication, newsletters, réseaux sociaux et supports imprimés.","OFFER_QR_TITLE":"QR Codes personnalisés","OFFER_QR_DESC":"Générez des QR Codes aux couleurs de votre association pour vos flyers, affiches, tracts et cartes de visite.","OFFER_STATS_TITLE":"Statistiques détaillées","OFFER_STATS_DESC":"Suivez les performances de vos liens en temps réel : nombre de clics, provenance géographique, appareils utilisés et bien plus.","ELIGIBLE_TITLE":"Qui peut en bénéficier ?","ELIGIBLE_1":"Associations loi 1901 (France) ou équivalent dans votre pays","ELIGIBLE_2":"Organisations non gouvernementales (ONG)","ELIGIBLE_3":"Fondations reconnues d'utilité publique","ELIGIBLE_4":"Organismes à but non lucratif avec un objet social, éducatif, humanitaire ou environnemental","HOW_TITLE":"Comment en bénéficier ?","STEP1_TITLE":"Créez un compte gratuit","STEP1_DESC":"Inscrivez-vous sur Hou.la avec l'email de votre association. C'est rapide et ne nécessite aucune carte bancaire.","STEP2_TITLE":"Faites votre demande","STEP2_DESC":"Depuis votre espace Studio, ouvrez un ticket de support avec la catégorie « Demande de plan association » et joignez un justificatif (statuts, récépissé de déclaration, etc.).","STEP3_TITLE":"Profitez de votre plan offert","STEP3_DESC":"Notre équipe examinera votre demande sous 48h. Une fois validée, votre plan Pro sera activé gratuitement.","CTA_TITLE":"Vous êtes une association ?","CTA_DESC":"Contactez-nous dès maintenant pour bénéficier de notre programme de soutien aux associations. Notre équipe se fera un plaisir de vous accompagner.","CTA_BUTTON":"Nous contacter"},"CHROME":{"BADGE":"Extension officielle","TITLE":"Raccourcissez vos liens depuis Chrome","SUBTITLE":"L'extension Chrome officielle de Hou.la vous permet de \u003Cstrong>créer des liens courts\u003C/strong> et des \u003Cstrong>QR Codes\u003C/strong> en un clic, directement depuis votre navigateur.","CTA_INSTALL":"Installer gratuitement","META_FREE":"Gratuit • Aucune publicité • Open source","HOW_TITLE":"Comment ça marche ?","STEP1_TITLE":"Installez l'extension","STEP1_DESC":"Ajoutez l'extension depuis le Chrome Web Store en un clic.","STEP2_TITLE":"Connectez-vous","STEP2_DESC":"Connectez-vous avec votre compte Google pour synchroniser vos liens.","STEP3_TITLE":"Raccourcissez !","STEP3_DESC":"Cliquez sur l'icône Hou.la pour raccourcir la page en cours.","FEATURES_TITLE":"Fonctionnalités","FEAT1_TITLE":"Liens courts en 1 clic","FEAT1_DESC":"Raccourcissez l'URL de la page en cours instantanément.","FEAT2_TITLE":"Génération de QR Codes","FEAT2_DESC":"Générez un QR Code pour chaque lien créé directement dans l'extension.","FEAT3_TITLE":"Statistiques","FEAT3_DESC":"Suivez les clics et performances de vos liens en temps réel.","FEAT4_TITLE":"Liens éphémères","FEAT4_DESC":"Créez des liens avec une date d'expiration depuis le popup.","FEAT5_TITLE":"Tags & UTM","FEAT5_DESC":"Ajoutez des tags et paramètres UTM à vos liens en un clic.","FEAT6_TITLE":"Connexion Google","FEAT6_DESC":"Authentification rapide avec votre compte Google existant.","BENEFITS_TITLE":"Pourquoi utiliser l'extension ?","BENEFIT1_TITLE":"Gain de temps","BENEFIT1_DESC":"Plus besoin d'ouvrir hou.la à chaque fois. Raccourcissez directement depuis n'importe quelle page.","BENEFIT2_TITLE":"Synchronisation","BENEFIT2_DESC":"Tous vos liens sont synchronisés avec votre compte Hou.la. Retrouvez-les dans votre tableau de bord.","BENEFIT3_TITLE":"100% gratuit","BENEFIT3_DESC":"L'extension est entièrement gratuite, sans publicité et sans limite d'utilisation.","BENEFIT4_TITLE":"Workspaces","BENEFIT4_DESC":"Travaillez en équipe : les liens créés via l'extension sont automatiquement ajoutés à votre workspace actif.","CTA_TITLE":"Prêt à gagner du temps ?","CTA_DESC":"Installez l'extension Chrome Hou.la gratuitement et raccourcissez vos liens en un clic.","CTA_SIGNUP":"Créer un compte gratuit"},"SDK":{"BADGE":"SDK officiel","TITLE":"SDK Hou.la pour développeurs","SUBTITLE":"Intègre la création et la gestion de liens dans tes applications en quelques lignes.","CTA_NPM":"Installer via npm","CTA_GITHUB":"Voir sur GitHub","INSTALL_TITLE":"Installation","QUICKSTART_TITLE":"Démarrage rapide","QUICKSTART_DESC":"Initialise le client avec ta clé API et commence à créer des liens.","CODE_COMMENT_CREATE":"Crée un lien court","FEATURES_TITLE":"Fonctionnalités","FEAT1_TITLE":"TypeScript natif","FEAT1_DESC":"Typage complet et autocomplétion dans ton IDE.","FEAT2_TITLE":"Léger et rapide","FEAT2_DESC":"Aucune dépendance lourde, prêt pour Node et le navigateur.","FEAT3_TITLE":"Liens & QR codes","FEAT3_DESC":"Crée des liens courts et génère des QR codes à la volée.","FEAT4_TITLE":"Statistiques","FEAT4_DESC":"Récupère les clics et l’engagement de chaque lien.","FEAT5_TITLE":"Gestion en masse","FEAT5_DESC":"Crée, mets à jour et supprime tes liens par lots.","FEAT6_TITLE":"Sécurisé","FEAT6_DESC":"Authentification par clé API et accès limité par périmètre.","METHODS_TITLE":"Méthodes disponibles","METHOD_CREATE":"Créer un lien","METHOD_UPDATE":"Mettre à jour un lien","METHOD_FIND_ONE":"Récupérer un lien","METHOD_FIND_ALL":"Lister les liens","METHOD_DELETE":"Supprimer un lien","METHOD_STATS":"Obtenir les statistiques","CTA_TITLE":"Prêt à intégrer Hou.la ?","CTA_DESC":"Crée ton compte et récupère ta clé API en quelques secondes.","CTA_API_DOC":"Documentation API","CTA_SIGNUP":"Créer un compte"}},"DEF":{"SHORT_URL":{"HERO_TITLE":"Liens courts : le guide complet","HERO_SUBTITLE":"Simplifiez vos URLs, augmentez vos clics et suivez vos performances en temps réel grâce aux liens courts.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce qu'un lien court ?","WHAT_P1":"Un lien court est une URL raccourcie qui redirige vers une adresse web plus longue. Au lieu de partager une URL complexe contenant des dizaines de paramètres, vous utilisez une adresse concise et mémorisable (ex : hou.la/abc) qui redirige automatiquement vers la destination originale.","WHAT_P2":"Les raccourcisseurs d'URL comme Hou.la génèrent ces liens en associant une clé unique à votre URL de destination. Chaque clic est enregistré, offrant des statistiques détaillées sur votre audience : provenance géographique, appareil utilisé, navigateur, heure du clic et bien plus.","STAT1_VALUE":"67%","STAT1_LABEL":"Taux de clic supérieur aux URLs longues","STAT2_VALUE":"600M+","STAT2_LABEL":"Clics sur des liens courts chaque mois dans le monde","STAT3_VALUE":"100%","STAT3_LABEL":"Compatible tous appareils et plateformes","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Collez votre URL","STEP1_P":"Copiez l'adresse web longue que vous souhaitez raccourcir et collez-la dans le générateur Hou.la.","STEP2_TITLE":"Personnalisez votre alias","STEP2_P":"Choisissez un alias personnalisé pour votre lien ou laissez le système en générer un automatiquement.","STEP3_TITLE":"Partagez votre lien","STEP3_P":"Copiez votre lien court et diffusez-le sur vos réseaux sociaux, emails, SMS ou supports imprimés.","STEP4_TITLE":"Suivez les analytics","STEP4_P":"Consultez les statistiques de clics en temps réel : nombre de visites, pays, appareils, navigateurs et heures de pointe.","BENEFITS_TITLE":"Les avantages des liens courts","BENEFIT1_TITLE":"Lisibilité et confiance","BENEFIT1_P":"Un lien court et propre inspire davantage confiance qu'une URL à rallonge truffée de paramètres. Vos destinataires identifient la source et cliquent plus facilement.","BENEFIT2_TITLE":"Analytics détaillées","BENEFIT2_P":"Chaque clic est tracké : géolocalisation, appareil, navigateur, système d'exploitation, heure. Prenez des décisions éclairées grâce à des données concrètes.","BENEFIT3_TITLE":"Image de marque","BENEFIT3_P":"Associez vos liens courts à votre propre domaine pour renforcer votre identité visuelle à chaque partage. Un lien branded augmente la reconnaissance et la mémorisation.","BENEFIT4_TITLE":"Anti-liens brisés","BENEFIT4_P":"Si l'URL de destination change, modifiez simplement la redirection de votre lien court. Vos supports imprimés, QR codes et anciens partages continuent de fonctionner.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Réseaux sociaux - Partagez des liens propres sur Twitter, LinkedIn et Instagram sans gaspiller de caractères","USECASE2":"Email marketing - Intégrez des liens trackables dans vos newsletters pour mesurer l'engagement","USECASE3":"Supports imprimés et QR codes - Transformez vos liens courts en QR codes pour vos flyers, affiches et cartes de visite","USECASE4":"SMS et messageries - Respectez les limites de caractères avec des URLs ultra-courtes","USECASE5":"Communication interne - Simplifiez le partage de ressources entre équipes avec des liens mémorisables","USECASE6":"Affiliation et partenariats - Trackez les performances de chaque partenaire avec des liens dédiés","CTA_TITLE":"Créez votre premier lien court","CTA_P":"Inscription gratuite, sans engagement. Raccourcissez, personnalisez et trackez vos liens en quelques secondes.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"EPHEMERAL":{"HERO_TITLE":"Liens éphémères : le guide complet","HERO_SUBTITLE":"Découvrez les liens éphémères, les redirections permanentes et les engagements éco-responsables de Hou.la pour un internet plus propre.","NAV_EPHEMERAL":"Liens éphémères","NAV_REDIRECT"
89:"Redirection permanente","WHAT_TITLE":"Qu'est-ce qu'un lien éphémère ?","WHAT_P1":"Un lien éphémère est un lien court qui possède une durée de vie limitée. Contrairement aux liens traditionnels qui restent actifs indéfiniment, les liens éphémères expirent automatiquement après une durée définie : 1 heure, 6 heures, 12 heures, 24 heures ou 48 heures.","WHAT_P2":"Une fois expiré, le lien devient inaccessible et sa clé est recyclée pour être réutilisée par d'autres utilisateurs. C'est une approche innovante qui combine praticité et responsabilité environnementale.","ECO_TITLE":"Notre engagement écologique","ECO_P1":"Chez Hou.la, nous avons fait le choix d'innover pour un web plus responsable. Les liens éphémères s'inscrivent dans notre démarche de réduction de l'empreinte numérique.","STAT1_LABEL":"de données stockées inutilement","STAT2_VALUE":"Économie","STAT2_LABEL":"d'énergie sur nos serveurs","STAT3_VALUE":"Recyclage","STAT3_LABEL":"des clés pour réutilisation","ECO_P2":"Chaque lien stocké en base de données consomme de l'espace disque et nécessite de l'énergie pour être maintenu accessible. Les liens abandonnés ou utilisés une seule fois représentent une pollution numérique silencieuse mais réelle.","ECO_P3":"En proposant des liens éphémères, nous permettons aux utilisateurs de créer des liens temporaires par nature, évitant ainsi l'accumulation de données obsolètes et contribuant à un internet plus propre.","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre lien","STEP1_P":"Collez votre URL longue dans notre générateur de liens courts.","STEP2_TITLE":"Activez l'option éphémère","STEP2_P":"Cochez \"Lien éphémère\" et choisissez la durée de validité souhaitée.","STEP3_TITLE":"Partagez votre lien","STEP3_P":"Utilisez votre lien court pendant sa durée de validité.","STEP4_TITLE":"Expiration automatique","STEP4_P":"À l'échéance, le lien expire et la clé est recyclée automatiquement.","BENEFITS_TITLE":"Les avantages des liens éphémères","BENEFIT1_TITLE":"Éco-responsable","BENEFIT1_P":"Réduisez votre empreinte numérique en évitant le stockage de données inutiles.","BENEFIT2_TITLE":"Sécurité renforcée","BENEFIT2_P":"Les liens sensibles disparaissent automatiquement après utilisation.","BENEFIT3_TITLE":"Gestion simplifiée","BENEFIT3_P":"Plus besoin de supprimer manuellement vos liens temporaires.","BENEFIT4_TITLE":"Recyclage des clés","BENEFIT4_P":"Les clés courtes sont recyclées, optimisant les ressources disponibles.","USECASES_TITLE":"Cas d'utilisation idéaux","USECASE1":"Promotions limitées: Partagez une offre valable 24h seulement","USECASE2":"Invitations événements: Lien d'inscription qui expire après l'événement","USECASE3":"Partage de documents: Accès temporaire à un fichier sensible","USECASE4":"Codes promo: Offres flash avec durée de validité contrôlée","USECASE5":"Stories et contenus éphémères: Cohérence avec les contenus qui disparaissent","USECASE6":"Tests et démos: Liens de test qui ne polluent pas votre espace","CALLOUT":"Le numérique représente aujourd'hui environ 4% des émissions mondiales de gaz à effet de serre. En choisissant les liens éphémères quand c'est pertinent, vous participez à un mouvement collectif pour un internet plus responsable.","REDIRECT_TITLE":"Redirection Permanente : un atout Hou.la","REDIRECT_LEAD":"Modifiez l'URL de destination de vos liens à tout moment, même après leur création.","REDIRECT_P1":"Avec la plupart des raccourcisseurs d'URL, une fois votre lien créé, l'URL de destination est figée. Si vous avez imprimé un QR code sur des flyers, affiches ou cartes de visite, et que votre page web change d'adresse... vous n'avez plus qu'à tout jeter et réimprimer.","REDIRECT_HIGHLIGHT_TITLE":"Avec Hou.la, changez la destination à tout moment","REDIRECT_HIGHLIGHT_P":"Modifiez l'URL de redirection de vos liens courts et QR codes quand vous voulez, sans perdre vos supports imprimés ni vos statistiques. Votre lien hou.la/abc peut pointer vers une page aujourd'hui, une autre demain.","ECO_BADGE":"Impact écologique","REDI
89RECT_ECO_P":"C'est aussi un geste éco-responsable : plutôt que de jeter vos supports marketing et d'en réimprimer de nouveaux, réutilisez-les simplement en changeant la destination. Moins de gaspillage, moins de papier, moins d'encre, moins d'émissions carbone.","REDIRECT_BENEFIT1":"Imprimez une fois, redirigez à l'infini","REDIRECT_BENEFIT2":"Gardez vos statistiques et historique","REDIRECT_BENEFIT3":"Réduisez vos coûts d'impression","REDIRECT_BENEFIT4":"Contribuez à un marketing plus durable","CTA_TITLE":"Adoptez les gestes éco-responsables","CTA_P":"Liens éphémères ou redirections modifiables : disponible gratuitement et bon pour la planète !","CTA_BTN":"Créer un lien","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"UTM":{"HERO_TITLE":"Variables UTM : le guide complet","HERO_SUBTITLE":"Identifiez précisément la provenance de votre trafic et mesurez la performance de chaque campagne grâce aux paramètres UTM.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce qu'une variable UTM ?","WHAT_P1":"Les variables UTM (Urchin Tracking Module) sont des paramètres ajoutés à la fin d'une URL pour identifier la source, le support, la campagne, le terme et le contenu d'un lien. Elles sont lues nativement par Google Analytics, Matomo et la plupart des outils d'analyse web.","WHAT_P2":"Les cinq paramètres standard sont : utm_source (la provenance), utm_medium (le canal), utm_campaign (le nom de la campagne), utm_term (le mot-clé payant) et utm_content (la variante du contenu). Combinés, ils fournissent une vision granulaire de vos performances marketing.","STAT1_VALUE":"5","STAT1_LABEL":"Paramètres UTM standard reconnus","STAT2_VALUE":"100%","STAT2_LABEL":"Compatible Google Analytics et Matomo","STAT3_VALUE":"∞","STAT3_LABEL":"Combinaisons de paramètres possibles","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Définissez vos paramètres","STEP1_P":"Renseignez la source (facebook, newsletter...), le medium (social, email...) et le nom de campagne dans le générateur UTM de Hou.la.","STEP2_TITLE":"Ajoutez les UTM à votre URL","STEP2_P":"Les paramètres sont automatiquement ajoutés à votre URL de destination. Vous pouvez visualiser et ajuster le résultat avant de valider.","STEP3_TITLE":"Partagez votre lien","STEP3_P":"Diffusez votre lien court contenant les UTM sur le canal prévu : réseau social, newsletter, publicité display ou autre.","STEP4_TITLE":"Analysez dans GA4","STEP4_P":"Retrouvez vos données UTM dans Google Analytics 4 sous Acquisition > Campagnes. Comparez les performances par source, medium et campagne.","BENEFITS_TITLE":"Les avantages des variables UTM","BENEFIT1_TITLE":"Traçabilité précise","BENEFIT1_P":"Identifiez exactement quel post, quel email ou quelle publicité génère du trafic. Arrêtez de deviner et commencez à mesurer.","BENEFIT2_TITLE":"Comparaison de campagnes","BENEFIT2_P":"Comparez les performances de vos canaux marketing côte à côte pour comprendre lesquels convert
89issent réellement.","BENEFIT3_TITLE":"Mesure du ROI","BENEFIT3_P":"En reliant le coût de chaque campagne à ses résultats trackés par UTM, calculez le retour sur investissement de chaque euro dépensé.","BENEFIT4_TITLE":"Décisions basées sur les données","BENEFIT4_P":"Allouez votre budget marketing vers les canaux qui performent et coupez ceux qui sous-performent, preuves à l'appui.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Publicités réseaux sociaux - Différenciez le trafic Facebook, Instagram, LinkedIn et TikTok Ads","USECASE2":"Newsletters email - Mesurez le taux de clic de chaque envoi et chaque lien individuellement","USECASE3":"Liens partenaires - Trackez le trafic apporté par chaque affilié ou partenaire commercial","USECASE4":"Publicités display - Identifiez quelles bannières et quels emplacements génèrent le plus de conversions","USECASE5":"Campagnes QR codes - Mesurez l'efficacité de vos supports physiques grâce aux UTM intégrés aux liens courts","USECASE6":"Marketing d'influence - Attribuez chaque visite au bon influenceur avec des UTM dédiés","CTA_TITLE":"Créez vos liens UTM en quelques clics","CTA_P":"Le générateur UTM intégré à Hou.la vous permet de construire, raccourcir et tracker vos URLs de campagne depuis une seule interface.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"QRCODE":{"HERO_TITLE":"QR Codes : le guide complet","HERO_SUBTITLE":"Créez un pont entre le monde physique et le digital grâce aux QR codes personnalisables et traçables.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce qu'un QR code ?","WHAT_P1":"Un QR code (Quick Response code) est un code-barres bidimensionnel lisible par les smartphones. Il encode une URL ou un texte que l'utilisateur peut scanner instantanément avec l'appareil photo de son téléphone, sans taper d'adresse ni naviguer manuellement.","WHAT_P2":"Avec Hou.la, chaque lien court peut être transformé en QR code personnalisable : couleurs, logo, format de téléchargement. Les scans sont trackés de la même manière que les clics, offrant une visibilité complète sur l'engagement de vos supports physiques.","STAT1_VALUE":"43%","STAT1_LABEL":"Croissance annuelle de l'utilisation des QR codes","STAT2_VALUE":"10Mds+","STAT2_LABEL":"Scans de QR codes par an dans le monde","STAT3_VALUE":"100%","STAT3_LABEL":"Personnalisables en couleurs et avec logo","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre lien court","STEP1_P":"Collez votre URL de destination dans Hou.la et générez un lien court avec toutes les options souhaitées (UTM, expiration, mot de passe...).","STEP2_TITLE":"Générez le QR code","STEP2_P":"Ouvrez l'éditeur QR code depuis votre tableau de bord. Le code est généré automatiquement à partir de votre lien court.","STEP3_TITLE":"Personnalisez le design","STEP3_P":"Adaptez les couleurs, ajoutez votre logo et choisissez le style de points pour un QR code aligné avec votre identité visuelle.","STEP4_TITLE":"Téléchargez et imprimez","STEP4_P":"Exportez votre QR code en PNG ou SVG haute résolution pour l'intégrer sur vos supports : affiches, cartes, emballages, écrans.","BENEFITS_TITLE":"Les avantages des QR codes","BENEFIT1_TITLE":"Accès instantané depuis le physique","BENEFIT1_P":"Un scan de 2 secondes suffit pour diriger un passant, un client ou un participant vers votre contenu digital. Aucune saisie manuelle requise.","BENEFIT2_TITLE":"Design personnalisable","BENEFIT2_P":"Couleurs de marque, logo intégré, style de points : vos QR codes s'intègrent naturellement dans vos designs sans ressembler à un code générique.","BENEFIT3_TITLE":"Traçabilité complète","BENEFIT3_P":"Chaque scan est enregistré avec la même précision qu'un clic : pays, appareil, navigateur, heure. Mesurez l'efficacité de chaque support physique.","BENEFIT4_TITLE":"Polyvalence d'utilisation","BENEFIT4_P":"Du restaurant à l'événement, du packaging au flyer, les QR codes s'adaptent à tous les contextes et tous les formats de communication.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Cartes de visite - Partagez votre profil, portfolio ou LinkedIn en un scan","USECASE2":"Menus de restaurant - Affichez la carte du jour sur les tables sans réimprimer","USECASE3":"Emballages produits - Redirigez vers les fiches techniques, tutoriels ou garanties","USECASE4":"Événements et salons - Facilitez l'inscription, le check-in ou le téléchargement de supports","USECASE5":"Affiches et flyers - Transformez vos campagnes print en points d'entrée digitaux mesurables","USECASE6":"Vitrines et points de vente - Orientez les passants vers vos promotions en cours ou votre catalogue en ligne","CTA_TITLE":"Créez vos QR codes personnalisés","CTA_P":"Générez des QR codes traçables et aux couleurs de votre marque en quelques secondes. Disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"}
89,"LINKINBIO":{"TITLE":"Qu'est-ce qu'un Link in Bio ?","SUBTITLE":"Tout comprendre sur cette tendance devenue incontournable pour les créateurs de contenu.","DEF_TITLE":"Définition du Link in Bio","DEF_P1":"Le Link in Bio (littéralement \"lien dans la bio\") est une page web qui regroupe tous vos liens importants en un seul endroit. C'est la solution au problème majeur d'Instagram et TikTok : vous ne pouvez mettre qu'un seul lien cliquable dans votre bio.","DEF_P2":"Au lieu de devoir choisir un seul lien (votre site ? votre boutique ? votre dernière vidéo ?), vous mettez un lien vers votre page Link in Bio qui, elle, contient tous vos liens.","ORIGIN_TITLE":"L'origine du concept","ORIGIN_P":"Le Link in Bio est né de la frustration des créateurs Instagram en 2016. La plateforme n'autorisant qu'un seul lien cliquable, les influenceurs devaient constamment le modifier au gré de leurs publications. Des services comme Linktree ont popularisé le concept, et c'est devenu un standard du web social.","WHY_TITLE":"Pourquoi le Link in Bio est devenu indispensable ?","BENEFIT1_TITLE":"Multi-plateformes","BENEFIT1_P":"Un seul lien à partager sur Instagram, TikTok, Twitter, YouTube et toutes vos plateformes.","BENEFIT2_TITLE":"Toujours à jour","BENEFIT2_P":"Modifiez vos liens à volonté sans changer le lien dans votre bio.","BENEFIT3_TITLE":"Image de marque","BENEFIT3_P":"Personnalisez l'apparence pour refléter votre identité visuelle.","BENEFIT4_TITLE":"Statistiques","BENEFIT4_P":"Analysez quels liens intéressent le plus votre audience.","WHO_TITLE":"Qui utilise le Link in Bio ?","WHO1":"Influenceurs et créateurs: Pour partager leurs collaborations, contenus et liens affiliés","WHO2":"Artistes et musiciens: Pour centraliser Spotify, Apple Music, billetterie concerts","WHO3":"E-commerçants: Pour mettre en avant leurs produits et promotions","WHO4":"Freelances et entrepreneurs: Pour présenter leur portfolio et moyens de contact","WHO5":"Podcasteurs et YouTubeurs: Pour lister toutes leurs plateformes d'écoute","WHO6":"Marques et entreprises: Pour guider vers leur site, app, support client","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre page","STEP1_P":"Choisissez un nom d'utilisateur unique qui deviendra votre URL personnalisée.","STEP2_TITLE":"Ajoutez vos liens","STEP2_P":"Sites web, réseaux sociaux, boutiques, contenus... Ajoutez tout ce qui compte.","STEP3_TITLE":"Personnalisez le design","STEP3_P":"Couleurs, avatar, description... Créez une page qui vous ressemble.","STEP4_TITLE":"Partagez votre lien","STEP4_P":"Copiez votre URL et collez-la dans la bio de tous vos réseaux sociaux.","CTA_TITLE":"Prêt à créer votre Link in Bio ?","CTA_P":"Avec Hou.la, créez votre page gratuitement avec une URL ultra-courte : hou.la/@votrenom","CTA_BTN":"Créer ma page","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"SMART_ROUTING":{"HERO_TITLE":"Smart Routing : le guide complet","HERO_SUBTITLE":"Redirigez intelligemment vos visiteurs vers la bonne destination selon leur pays, appareil, langue ou navigateur, depuis un seul lien.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce que le Smart Routing ?","WHAT_P1":"Le Smart Routing (ou redirection conditionnelle) est un mécanisme qui permet à un seul lien court de rediriger automatiquement chaque visiteur vers une destination différente en fonction de critères prédéfinis : pays, type d'appareil, langue du navigateur, système d'exploitation, navigateur ou première visite.","WHAT_P2":"Concrètement, vous créez un seul lien et définissez des règles de routage. Quand un visiteur clique, le serveur analyse ses caractéristiques en quelques millisecondes et le redirige vers l'URL correspondant à son profil. Si aucune règle ne correspond, il arrive sur l'URL par défaut.","STAT1_VALUE":"13+","STAT1_LABEL":"Critères de routage disponibles","STAT2_VALUE":"\u003C50ms","STAT2_LABEL":"Temps de décision par le serveur","STAT3_VALUE":"∞","STAT3_LABEL":"Règles combinables par lien","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre lien court","STEP1_P":"Générez un lien court classique avec votre URL de destination par défaut dans Hou.la.","STEP2_TITLE":"Ajoutez des règles de routage","STEP2_P":"Définissez vos conditions : si le visiteur est en France, le rediriger vers le site FR ; si sur mobile, vers l'app store ; si anglophone, vers la page EN.","STEP3_TITLE":"Ordonnez les priorités","STEP3_P":"Classez vos règles par ordre de priorité via glisser
89-déposer. La première règle qui correspond au profil du visiteur est appliquée.","STEP4_TITLE":"Partagez un seul lien","STEP4_P":"Diffusez votre lien unique partout. Chaque visiteur est redirigé automatiquement vers la destination la plus pertinente pour lui.","BENEFITS_TITLE":"Les avantages du Smart Routing","BENEFIT1_TITLE":"Expérience personnalisée","BENEFIT1_P":"Chaque visiteur arrive sur la page la plus pertinente pour son contexte. Un client japonais voit le site japonais, un utilisateur mobile accède directement à l'application.","BENEFIT2_TITLE":"Taux de conversion amélioré","BENEFIT2_P":"En supprimant les frictions (mauvaise langue, mauvais store, mauvaise devise), vous augmentez significativement le taux de conversion de vos campagnes.","BENEFIT3_TITLE":"Un lien pour tout","BENEFIT3_P":"Plus besoin de créer et gérer plusieurs liens par campagne. Un seul lien couvre tous vos segments d'audience, simplifiant votre communication.","BENEFIT4_TITLE":"Aucun code requis","BENEFIT4_P":"Configurez vos règles de routage via une interface visuelle intuitive. Pas besoin de toucher à la configuration serveur ni d'écrire du code.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Campagnes internationales - Redirigez chaque pays vers sa landing page locale avec la bonne devise","USECASE2":"Redirect App Store - Envoyez les utilisateurs iOS vers l'App Store et Android vers le Play Store automatiquement","USECASE3":"Contenu multilingue - Affichez la bonne version linguistique du site selon la langue du navigateur","USECASE4":"Pricing régional - Proposez des tarifs adaptés à chaque marché géographique","USECASE5":"A/B par segment - Testez des pages différentes selon l'appareil ou le navigateur du visiteur","USECASE6":"Support client - Orientez les demandes vers l'équipe support de la bonne région ou la bonne langue","CTA_TITLE":"Activez le Smart Routing sur vos liens","CTA_P":"Configurez des règles de redirection intelligente en quelques clics. Disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"PASSWORD_LINK":{"HERO_TITLE":"Liens protégés par mot de passe : le guide complet","HERO_SUBTITLE":"Sécurisez l'accès à vos liens courts en exigeant un mot de passe avant la redirection, sans compte utilisateur côté visiteur.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce qu'un lien protégé par mot de passe ?","WHAT_P1":"Un lien protégé par mot de passe est un lien court qui ne redirige pas immédiatement vers sa destination. Le visiteur doit d'abord saisir un mot de passe sur une page de vérification. Si le mot de passe est correct, la redirection s'effectue ; sinon, l'accès est refusé.","WHAT_P2":"Le mot de passe n'est jamais stocké en clair. Hou.la utilise l'algorithme bcrypt avec sel aléatoire pour hasher chaque mot de passe avant de le stocker en base de données. Personne, pas même les administrateurs du service, ne peut lire votre mot de passe.","STAT1_VALUE":"bcrypt","STAT1_LABEL":"Hachage sécurisé avec sel aléatoire","STAT2_VALUE":"0","STAT2_LABEL":"Mot de passe stocké en clair dans nos systèmes","STAT3_VALUE":"∞","STAT3_LABEL":"Nombre de liens protégeables sans limite","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre lien court","STEP1_P":"Générez un lien court vers votre URL de destination dans le générateur Hou.la.","STEP2_TITLE":"Définissez un mot de passe","STEP2_P":"Activez la protection par mot de passe et saisissez le mot de passe souhaité. Il sera hashé avec bcrypt avant stockage.","STEP3_TITLE":"Partagez lien et mot de passe","STEP3_P":"Envoyez le lien par un canal et le mot de passe par un autre (ex : lien par email, mot de passe par SMS) pour une sécurité optimale.","STEP4_TITLE":"Le visiteur s'authentifie","STEP4_P":"En cliquant sur le lien, le visiteur voit une page de saisie. Il entre le mot de passe, et en cas de succès, il est redirigé vers la destination.","BENEFITS_TITLE":"Les avantages des liens protégés","BENEFIT1_TITLE":"Confidentialité garantie","BENEFIT1_P":"Seules les personnes disposant du mot de passe accèdent au contenu. Même si le lien fuite ou est intercepté, la destination reste inaccessible sans le mot de passe.","BENEFIT2_TITLE":"Simplicité d'usage","BENEFIT2_P":"Aucun compte utilisateur requis côté visiteur. Un simple mot de passe partagé suffit comme contrôle d'accès, idéal pour les échanges ponctuels.","BENEFIT3_TITLE":"Sécurité bcrypt","BENEFIT3_P":"Le hashage bcrypt avec sel aléatoire rend toute tentative de force brute ou de rainbow table inefficace. La sécurité est du même niveau que les systèmes bancaires.","BENEFIT4_TITLE":"Combinable avec d'autres fonctionnalités","BENEFIT4_P":"Associez la protection par mot de passe à un lien éphémère, une expiration programmée ou des UTM pour un contrôle total sur qui accède à quoi et quand.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Documents confidentiels - Partagez rapports financiers, contrats et présentations stratég
89iques en toute sécurité","USECASE2":"Environnements de staging - Protégez vos environnements de test des moteurs de recherche et des accès non autorisés","USECASE3":"Offres VIP - Réservez l'accès à vos ventes privées et codes promo exclusifs aux clients ciblés","USECASE4":"Communication interne - Partagez des ressources internes sans les exposer publiquement sur le web","USECASE5":"Supports de formation - Distribuez des cours et exercices uniquement aux participants inscrits","USECASE6":"Contenu pré-lancement - Donnez un accès anticipé à des produits ou annonces avant leur publication officielle","CTA_TITLE":"Protégez vos liens par mot de passe","CTA_P":"Sécurisez l'accès à n'importe quel lien court en quelques secondes. Chiffrement bcrypt inclus, disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"AB_TESTING":{"HERO_TITLE":"A/B Testing : le guide complet","HERO_SUBTITLE":"Testez plusieurs destinations depuis un seul lien et identifiez la variante la plus performante grâce au split testing pondéré.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce que l'A/B Testing sur les liens ?","WHAT_P1":"L'A/B Testing appliqué aux liens courts consiste à associer plusieurs URLs de destination à un seul lien. Chaque visiteur est redirigé aléatoirement vers l'une des destinations selon un système de pondération configurable : 50/50, 70/30, ou toute autre répartition.","WHAT_P2":"Sur Hou.la, vous pouvez tester autant de variantes que nécessaire (A/B/C/D...). Chaque destination reçoit un poids (weight) qui détermine le pourcentage de trafic alloué. Les clics sont trackés par variante, permettant de comparer objectivement les performances de chaque destination.","STAT1_VALUE":"A/B/C/D","STAT1_LABEL":"Tests multi-variantes sans limite","STAT2_VALUE":"%","STAT2_LABEL":"Répartition pondérée configurable","STAT3_VALUE":"∞","STAT3_LABEL":"Variantes testables par lien","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Créez votre lien","STEP1_P":"Générez un lien court classique dans Hou.la avec votre URL de destination principale.","STEP2_TITLE":"Ajoutez des destinations pondérées","STEP2_P":"Ajoutez plusieurs URLs de destination avec un poids pour chacune. Ex : page A (poids 50), page B (poids 30), page C (poids 20).","STEP3_TITLE":"Partagez un seul lien","STEP3_P":"Diffusez votre lien unique. Chaque visiteur est redirigé aléatoirement vers une destination selon les poids définis.","STEP4_TITLE":"Analysez les résultats","STEP4_P":"Comparez les statistiques de clics par variante pour identifier la destination la plus performante et optimiser vos campagnes.","BENEFITS_TITLE":"Les avantages de l'A/B Testing","BENEFIT1_TITLE":"Décisions basées sur les données","BENEFIT1_P":"Remplacez l'intuition par des preuves. Mesurez objectivement quelle page, offre ou design convertit le mieux auprès de votre audience.","BENEFIT2_TITLE":"Mise en place sans développeur","BENEFIT2_P":"Pas besoin de modifier votre site ni d'installer de code. Configurez vos tests directement depuis l'interface Hou.la en quelques clics.","BENEFIT3_TITLE":"Multi-variantes","BENEFIT3_P":"Testez deux, trois, quatre variantes ou plus simultanément. Expérimentez à grande échelle pour trouver la meilleure option plus rapidement.","BENEFIT4_TITLE":"Combinable avec les UTM","BENEFIT4_P":"Ajoutez des paramètres UTM à chaque variante pour un tracking granulaire dans Google Analytics. Croisez les données A/B avec vos rapports de campagne.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Landing pages - Testez deux versions d'une page d'atterrissage pour optimiser le taux de conversion","USECASE2":"Tests de pricing - Comparez l'attractivité de différentes grilles tarifaires ou offres promotionnelles","USECASE3":"Optimisation de CTA - Validez quel bouton d'appel à l'action génère le plus d'engagement","USECASE4":"Canary releases - Envoyez 10% du trafic vers une nouvelle version de votre site avant déploiement complet","USECASE5":"Split marketplace - Répartissez le trafic entre plusieurs boutiques ou plateformes de vente","USECASE6":"Tests de design - Déterminez quel visuel ou quelle mise en page suscite le plus de clics","CTA_TITLE":"Lancez votre premier A/B test","CTA_P":"Créez un lien avec plusieurs destinations pondérées et laissez les données guider vos décisions. Disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"WEBHOOKS":{"HERO_TITLE":"Webhooks : le guide complet","HERO_SUBTITLE":"Recevez des notifications HTTP en temps réel à chaque événement sur vos liens courts, directement sur votre serveur.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce qu'un webhook ?","WHAT_P1":"Un webhook est un mécanisme de communication HTTP en mode push. Au lieu d'interroger régulièrement une API (polling), votre serveur reçoit automatiquement une requête POST contenant les données de l'événement dès qu'il se produit : clic sur un lien, création, modification, expiration ou alerte de sécurité.","WHAT_P2":"Avec Hou.la, vous configurez une URL de destination et sélectionnez les événements qui vous intéressent. Chaque notification est signée avec HMAC-SHA256 pour garantir son authenticité. Le système gère les retries avec backoff exponentiel en cas d'échec de livraison.","STAT1_VALUE":"10+","STAT1_LABEL":"Types d'événements déclencheurs","STAT2_VALUE":"PO
89ST","STAT2_LABEL":"Requête HTTP signée HMAC-SHA256","STAT3_VALUE":"\u003C1s","STAT3_LABEL":"Délai de notification en temps réel","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Configurez votre endpoint","STEP1_P":"Renseignez l'URL de votre serveur qui recevra les notifications webhook dans votre espace de gestion Hou.la.","STEP2_TITLE":"Choisissez vos événements","STEP2_P":"Sélectionnez les types d'événements qui vous intéressent : clics, création de liens, expirations, alertes de sécurité, visites de profils Link in Bio...","STEP3_TITLE":"Sécurisez avec un secret HMAC","STEP3_P":"Définissez un secret partagé pour signer chaque requête. Vérifiez la signature côté serveur pour garantir que les données proviennent bien de Hou.la.","STEP4_TITLE":"Recevez les notifications","STEP4_P":"Votre serveur reçoit les événements en temps réel au format JSON. Traitez les données pour alimenter vos dashboards, déclencher des alertes ou synchroniser vos systèmes.","BENEFITS_TITLE":"Les avantages des webhooks","BENEFIT1_TITLE":"Données en temps réel","BENEFIT1_P":"Recevez chaque événement instantanément, sans délai de polling. Vos dashboards, alertes et automatisations réagissent en temps réel.","BENEFIT2_TITLE":"Réduction du polling","BENEFIT2_P":"Arrêtez de bombarder l'API avec des requêtes répétées. Les webhooks envoient les données uniquement quand un événement se produit, réduisant la charge réseau.","BENEFIT3_TITLE":"Conformité RGPD intégrée","BENEFIT3_P":"Activez l'anonymisation des IP et l'exclusion de la géolocalisation fine directement dans la configuration du webhook pour respecter le RGPD.","BENEFIT4_TITLE":"Sécurité enterprise","BENEFIT4_P":"Signature HMAC-SHA256, HTTPS obligatoire, rotation des secrets et mécanisme de retry avec backoff exponentiel. Un niveau de sécurité digne des plus grandes plateformes.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Dashboards temps réel - Alimentez vos tableaux de bord avec les clics et conversions dès qu'ils se produisent","USECASE2":"Alertes Slack et email - Recevez une notification quand un lien expire, devient inaccessible ou atteint un seuil de clics","USECASE3":"Synchronisation CRM - Mettez à jour automatiquement vos contacts HubSpot ou Salesforce à chaque interaction","USECASE4":"Automatisation Zapier/Make - Connectez Hou.la à vos workflows d'automatisation marketing sans écrire de code","USECASE5":"Audit de conformité - Conservez un journal temps réel de tous les événements pour répondre aux exigences réglementaires","USECASE6":"Monitoring et alerting - Surveillez la santé de vos liens et recevez des alertes en cas d'anomalie ou de lien mort","CTA_TITLE":"Activez les webhooks sur votre compte","CTA_P":"Configurez vos webhooks en quelques clics et recevez des notifications en temps réel. Inclus gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question ou assistance, n'hésitez pas à nous contacter à"},"PIXELS":{"HERO_TITLE":"Pixels de retargeting : le guide complet","HERO_SUBTITLE":"Construisez des audiences publicitaires qualifiées depuis vos liens courts","NAV_RETARGETING":"Retargeting","NAV_PLATFORMS":"Plateformes","NAV_HOW":"Fonctionnement","WHAT_TITLE":"Qu'est-ce qu'un pixel de retargeting ?","WHAT_P1":"Un pixel de retargeting est un petit extrait de code JavaScript fourni par les plateformes publicitaires (Facebook, Google, TikTok). Lorsqu'un visiteur charge une page contenant ce pixel, son navigateur envoie un signal à la plateforme publicitaire, qui l'ajoute à une audience ciblée.","WHAT_P2":"Avec Hou.la, vous pouvez intégrer ces pixels directement dans vos liens courts. Ainsi, chaque clic sur votre lien construit automatiquement vos audie
89nces de retargeting: sans avoir besoin d'installer quoi que ce soit sur votre site web.","BENEFITS_TITLE":"Pourquoi le retargeting est-il si efficace ?","BENEFITS_INTRO":"Le retargeting est considéré comme l'une des stratégies publicitaires les plus rentables du marketing digital. Voici pourquoi :","STAT1_LABEL":"des visiteurs quittent un site sans convertir","STAT2_LABEL":"ROI supérieur aux campagnes classiques","STAT3_VALUE":"3-5x","STAT3_LABEL":"taux de clic supérieur aux annonces standard","PLATFORMS_TITLE":"Les plateformes supportées par Hou.la","PLATFORM_FB_TITLE":"Facebook / Meta Pixel","PLATFORM_FB_DESC":"Le Meta Pixel (anciennement Facebook Pixel) est utilisé pour le suivi des conversions sur Facebook et Instagram. Il permet de créer des audiences similaires (lookalike) et de mesurer le ROAS de vos campagnes.","PLATFORM_GOOGLE_TITLE":"Google Tag (gtag.js)","PLATFORM_GOOGLE_DESC":"Google Tag permet le suivi des conversions Google Ads, le remarketing sur le réseau Display de Google et l'alimentation de Google Analytics 4 avec vos données de trafic.","PLATFORM_TIKTOK_TITLE":"TikTok Pixel","PLATFORM_TIKTOK_DESC":"Le TikTok Pixel est le code de suivi de TikTok Ads. Il permet de mesurer les performances de vos campagnes TikTok et de créer des audiences pour le retargeting.","PRIVACY_TITLE":"Respect de la vie privée","PRIVACY_DESC":"Les pixels ne sont jamais chargés pour les bots et crawlers. Les previews sociaux (Open Graph) et le SEO sont préservés. Seuls les vrais visiteurs humains déclenchent les pixels.","HOW_TITLE":"Comment fonctionne le retargeting avec Hou.la ?","STEP1_TITLE":"Créez votre lien court","STEP1_P":"Collez votre URL longue dans Hou.la et générez un lien court en quelques secondes.","STEP2_TITLE":"Ajoutez vos pixels","STEP2_P":"Activez la section 'Pixels de retargeting' et collez vos identifiants Facebook Pixel, Google Tag ou TikTok Pixel.","STEP3_TITLE":"Partagez le lien","STEP3_P":"Partagez votre lien court sur les réseaux sociaux, par email, SMS ou dans vos campagnes marketing.","STEP4_TITLE":"Les audiences se construisent","STEP4_P":"Chaque visiteur humain est automatiquement ajouté à vos audiences publicitaires avant d'être redirigé vers la destination.","USECASES_TITLE":"Cas d'usage du retargeting via liens courts","USECASE1":"Campagnes d'influence : tracker les clics des posts sponsorisés","USECASE2":"Email marketing : recibler les lecteurs qui cliquent sur vos newsletters","USECASE3":"SMS marketing : construire des audiences depuis les liens dans vos SMS","USECASE4":"QR Codes : capturer les scanners de vos supports imprimés","USECASE5":"Réseaux sociaux : recibler les visiteurs de votre profil bio","USECASE6":"Affiliation : mesurer les conversions de vos partenaires","CALLOUT":"Le retargeting via liens courts est particulièrement efficace pour les marketeurs qui n'ont pas accès au code source du site de destination. Un seul lien Hou.la remplace l'installation d'un pixel sur un site tiers.","CTA_TITLE":"Prêt à construire vos audiences ?","CTA_P":"Ajoutez vos pixels de retargeting à vos liens courts dès maintenant. Inscription gratuite, sans engagement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Pour toute question, contactez-nous à"},"LINK_EXPIRATION":{"HERO_TITLE":"L'expiration programmée des liens","HERO_SUBTITLE":"Contrôlez précisément la durée de vie de vos liens courts en programmant une date et heure d'expiration automatique.","NAV_DEFINITION":"Qu'est-ce que c'est ?","NAV_BENEFITS":"Avantages","NAV_HOW":"Comment ça marche","WHAT_TITLE":"Qu'est-ce que l'expiration programmée ?","WHAT_P1":"L'expiration programmée est une fonctionnalité qui permet de définir une date et heure précises à laquelle un lien court cessera de fonctionner. Une fois la date atteinte, le lien n'effectue plus de redirection et affiche une page dédiée informant le visiteur que le contenu n'est plus disponible.","WHAT_P2":"Contrairement aux liens éphémères qui expirent après une durée relative (1h, 6h, 24h...), l'expiration programmée vous donne un contrôle absolu : vous choisissez la date exacte, que ce soit dans quelques heures ou dans plusieurs mois. 
89Cette précision est essentielle pour les campagnes marketing, les événements et la gestion de contenus temporaires.","BENEFITS_TITLE":"Les avantages de l'expiration programmée","BENEFITS_INTRO":"Programmer l'expiration de vos liens offre de nombreux avantages pour votre stratégie digitale et la sécurité de vos contenus.","STAT1_LABEL":"Contrôle de vos contenus","STAT2_LABEL":"Expiration automatique","STAT3_LABEL":"Flexibilité de planification","ADVANTAGES_TITLE":"Pourquoi programmer l'expiration de vos liens ?","ADV1_TITLE":"Sécurité renforcée","ADV1_DESC":"Limitez l'accès à vos contenus sensibles en définissant une fenêtre de disponibilité précise. Le lien se désactive automatiquement, sans intervention manuelle.","ADV2_TITLE":"Promotions maîtrisées","ADV2_DESC":"Vos offres promotionnelles expirent exactement quand prévu. Aucun risque qu'un client accède à une promotion terminée via un ancien lien.","ADV3_TITLE":"Gestion événementielle","ADV3_DESC":"Pages d'inscription, liens de webinaire, invitations... tout expire automatiquement après l'événement. Gardez votre écosystème de liens propre et à jour.","ADV4_TITLE":"Conformité réglementaire","ADV4_DESC":"Respectez les politiques de rétention de données et les exigences RGPD en programmant la fin de vie de vos liens conformément à vos obligations légales.","HOW_TITLE":"Comment fonctionne l'expiration programmée ?","STEP1_TITLE":"Créez votre lien court","STEP1_P":"Utilisez le générateur de liens Hou.la pour créer un lien raccourci vers votre URL de destination. L'inscription est gratuite et ne nécessite aucune carte bancaire.","STEP2_TITLE":"Définissez la date d'expiration","STEP2_P":"Dans les paramètres avancés, utilisez le sélecteur de date pour choisir précisément quand votre lien doit expirer. Vous pouvez sélectionner n'importe quelle date et heure futures.","STEP3_TITLE":"Partagez votre lien","STEP3_P":"Distribuez votre lien sur tous vos canaux : réseaux sociaux, emails, SMS, QR codes... Il fonctionne normalement jusqu'à la date programmée.","STEP4_TITLE":"Expiration automatique","STEP4_P":"À la date et heure prévues, le lien cesse automatiquement de rediriger. Les visiteurs voient une page informative. Vous n'avez rien à faire: tout est automatisé.","DIFFERENCE_TITLE":"Expiration programmée vs liens éphémères","DIFFERENCE_DESC":"L'expiration programmée et les liens éphémères sont deux approches complémentaires. Les liens éphémères expirent après une durée relative (1h, 6h, 12h, 24h, 48h) à partir de leur création et libèrent la clé URL pour un futur usage. L'expiration programmée permet de fixer une date absolue (ex : le 31 décembre 2025 à 23h59). Vous pouvez combiner les deux selon vos besoins : un lien éphémère pour un partage urgent, une expiration programmée pour une campagne planifiée.","USECASES_TITLE":"Cas d'usage de l'expiration programmée","USECASE1":"Promotions et ventes flash avec date de fin précise","USECASE2":"Liens d'inscription à des événements ou webinaires","USECASE3":"Partage temporaire de documents confidentiels","USECASE4":"Offres d'emploi avec date de clôture automatique","USECASE5":"Liens de téléchargement à durée limitée","USECASE6":"Campagnes marketing saisonnières (soldes, Noël, Black Friday...)","CTA_TITLE":"Programmez l'expiration de vos liens","CTA_P":"Créez votre compte et commencez à utiliser l'expiration programmée en quelques secondes. Disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à"},"ANTIMALWARE":{"HERO_TITLE":"Protection anti-malware pour vos liens courts","HERO_SUBTITLE":"Chaque URL est automatiquement analysée via Google Safe Browsing pour protéger vos visiteurs contre les menaces en ligne.","NAV_PROTECTION":"Protection","NAV_HOW":"Fonctionnement","WHAT_TITLE":"Qu'est-ce que la protection anti-malware ?","WHAT_P1":"La protection anti-malware est un système de sécurité automatique qui analyse chaque URL de destination avant de rediriger vos visiteurs. Hou.la utilise l'API Google Safe Browsing v4, la même technologie qui protège les utilisateurs de Chrome, pour détecter les sites malveillants.","WHAT_P2":"Contrairement aux raccourcisseurs de liens classiques qui redirigent aveuglément, Hou.la vérifie en continu la sécurité de chaque destination. Si une URL est identifiée comme dangereuse, vos visiteurs sont immédiatement alertés.","THREATS_TIT
89LE":"Les menaces détectées","THREATS_P1":"Notre système identifie 7 types de menaces différentes grâce à Google Safe Browsing, couvrant l'ensemble du spectre des dangers en ligne.","STAT1_LABEL":"Types de menaces détectées","STAT2_LABEL":"Fréquence de scan","STAT3_LABEL":"Liens analysés par batch","HOW_TITLE":"Comment fonctionne la protection ?","STEP1_TITLE":"Analyse initiale","STEP1_P":"Dès qu'un lien est créé sur Hou.la, l'URL de destination est soumise à l'API Google Safe Browsing pour une analyse immédiate.","STEP2_TITLE":"Scan continu","STEP2_P":"Un job automatique vérifie tous les liens actifs toutes les 6 heures par lots de 500, garantissant une protection permanente même si un site devient malveillant après la création du lien.","STEP3_TITLE":"Classification des menaces","STEP3_P":"Chaque URL reçoit un statut de sécurité : safe, malware, social_engineering, unwanted_software ou potentially_harmful. Ce statut est visible dans votre tableau de bord.","STEP4_TITLE":"Protection des visiteurs","STEP4_P":"Si une URL est détectée comme dangereuse, une page d'avertissement est affichée au visiteur avant toute redirection, lui permettant de choisir de continuer ou non.","BENEFITS_TITLE":"Pourquoi c'est important ?","BENEFIT1_TITLE":"Protection automatique","BENEFIT1_P":"Aucune action requise de votre part: la vérification est entièrement automatisée pour tous vos liens.","BENEFIT2_TITLE":"Monitoring continu","BENEFIT2_P":"Les sites peuvent devenir malveillants après la création de votre lien. Notre scan continu toutes les 6h vous protège contre ces changements.","BENEFIT3_TITLE":"Transparence totale","BENEFIT3_P":"Le statut de sécurité de chaque lien est visible dans votre tableau de bord avec la date du dernier scan.","BENEFIT4_TITLE":"Confiance renforcée","BENEFIT4_P":"Vos destinataires peuvent cliquer sur vos liens en toute confiance, sachant qu'ils sont vérifiés par Google Safe Browsing.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Campagnes email: protégez vos abonnés contre les liens compromis","USECASE2":"Réseaux sociaux: partagez des liens vérifiés avec votre audience","USECASE3":"Support client: garantissez la sécurité des liens envoyés en support","USECASE4":"Entreprises: respectez les politiques de sécurité informatique","USECASE5":"UGC (contenu utilisateur): filtrez automatiquement les liens soumis par vos utilisateurs","CTA_TITLE":"Protégez vos visiteurs automatiquement","CTA_P":"Créez un compte et bénéficiez automatiquement de la protection anti-malware sur tous vos liens.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à"},"DEAD_LINKS":{"HERO_TITLE":"Détection automatique des liens morts","HERO_SUBTITLE":"Monitoring continu de vos URLs de destination avec alertes email et score de fiabilité.","NAV_DETECTION":"Détection","NAV_ALERTS":"Alertes","WHAT_TITLE":"Qu'est-ce qu'un lien mort ?","WHAT_P1":"Un lien mort (ou broken link) est une URL qui ne mène plus vers une page fonctionnelle. Cela peut être dû à un site supprimé, une page déplacée, un serveur en panne ou une erreur de configuration.","WHAT_P2":"Hou.la surveille automatiquement l'état de santé de toutes vos URLs de destination. Si une page devient inaccessible, vous êtes immédiatement alerté par email pour pouvoir corriger le lien.","IMPACT_TITLE":"L'impact des liens morts","IMPACT_P1":"Un lien qui redirige vers une page d'erreur 404 nuit à votre crédibilité, fait perdre des visiteurs et dégrade votre référencement. Avec Hou.la, ces problèmes sont détectés avant qu'ils n'impactent votre audience.","STAT1_LABEL":"Fréquence de vérification","STAT2_LABEL":"Liens vérifiés par batch","STAT3_VALUE":"Email","STAT3_LABEL":"Notification immédiate","HOW_TITLE":"Comment fonctionne la détection ?","STEP1_TITLE":"Requête HEAD puis GET","STEP1_P":"Notre système envoie d'abord une requête HEAD à l'URL de destination. Si celle-ci échoue, une requête GET complète est envoyée en fallback pour confirmer le statut.","STEP2_TITLE":"Machine à états intelligente","STEP2_P":"Un lien passe de 'unknown' à 'warning' après un premier échec, puis à 'dead' après 3 échecs sur des jours différents. La récupération nécessite 2 succès consécutifs.","STEP3_TITLE":"Score de fiabilité","STEP3_P":"Chaque lien reçoit un score de fiabilité basé sur l'historique de ses vérifications, permettant d'identifier les liens instables avant qu'ils ne deviennent morts.","STEP4_TITLE":"Alerte email automatique","STEP4_P":"Dès qu'un lien passe en statut 'dead', un email détaillé est envoyé au propriétaire du lien avec l'URL concernée et les détails de l'erreur.","BENEFITS_TITLE":"Pourquoi surveiller vos liens ?","BENEFIT1_TITLE":"Alertes proactives","BENEFIT1_P":"Recevez un email dès qu'un de vos liens de destination devient inaccessible. Agissez avant que vos visiteurs ne soient impactés.","BENEFIT2_TITLE":"Score de fiabilité","BENEFIT2_P":"Suivez la santé de vos liens dans le temps avec un score basé sur l'historique des vérifications.","BENEFIT3_TITLE":"Détection anti-soft-404","BENEFIT3_P":"Notre système détecte les pages qui répondent 200 mais affichent en réalité une page d'erreur (soft 404).","BENEFIT4_TITLE":"Récupération automatique","BENEFIT4_P":"Si un site revient en ligne, le lien repasse automatiquement en statut 'healthy' après 2 vérifications consécutives réussies.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Marketing: surveillez les liens de vos campagnes pour garantir un taux de conversion optimal","USECASE2":"SEO: identifiez et corrigez rapidement les liens brisés dans votre contenu","USECASE3":"E-commerce: détectez les liens produits devenus indisponibles","USECASE4":"Documentation: garder vos liens de documentation toujours fonctionnels","USECASE5":"Agences: surveillez les liens de vos clients et réagissez en premier","CTA_TITLE":"Surveillez vos liens automatiquement","CTA_P":"Créez un compte et activez la surveillance automatique de tous vos liens courts.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à"},"OG_PREVIEW":{"HERO_TITLE":"OG Social Previews : le guide complet","HERO_SUBTITLE":"Personnalisez le titre, la description et l'image de vos liens courts quand ils sont partagés sur les réseaux sociaux.","NAV_DEF":"Définition","NAV_BENEFITS":"Avantages","NAV_UPLOAD":"Upload d'image","WHAT_TITLE":"Qu'est-ce qu'un OG Preview ?","WHAT_P1":"Les balises Open Graph (OG) sont des métadonnées intégrées dans le code HTML d'une page web. Elles définissent comment un lien apparaît quand il est partagé sur Facebook, Twitter, LinkedIn, Slack, WhatsApp et d'autres plateformes : titre, description et image miniature.","WHAT_P2":"Avec Hou.la, vous pouvez personnaliser 
89ces informations pour chaque lien court. L'auto-détection récupère automatiquement les données OG de l'URL de destination, ou vous pouvez définir manuellement un titre, une description et uploader votre propre image.","STAT1_VALUE":"+40%","STAT1_LABEL":"Taux de clic supérieur avec un aperçu visuellement riche","STAT2_VALUE":"2x","STAT2_LABEL":"Plus d'engagement sur les réseaux sociaux","STAT3_VALUE":"100%","STAT3_LABEL":"Compatible toutes plateformes sociales","HOW_TITLE":"Comment ça fonctionne ?","STEP1_TITLE":"Collez votre URL","STEP1_P":"Entrez l'URL que vous souhaitez raccourcir dans le générateur Hou.la.","STEP2_TITLE":"Activez l'aperçu OG","STEP2_P":"Activez le toggle 'Aperçu social (OG)' dans les options avancées du formulaire.","STEP3_TITLE":"Auto-détection ou personnalisation","STEP3_P":"Cliquez sur 'Détecter' pour récupérer automatiquement les métadonnées OG, ou renseignez manuellement le titre, la description et l'image.","STEP4_TITLE":"Uploadez une image (optionnel)","STEP4_P":"Passez en mode 'Upload' pour télécharger votre propre image OG. Elle sera automatiquement redimensionnée en 1200x630 et convertie en WebP.","BENEFITS_TITLE":"Les avantages des OG Previews","BENEFIT1_TITLE":"Taux de clic amélioré","BENEFIT1_P":"Un aperçu riche avec image, titre et description attire l'attention et génère plus de clics qu'un lien brut.","BENEFIT2_TITLE":"Image de marque cohérente","BENEFIT2_P":"Contrôlez exactement comment votre lien apparaît sur chaque plateforme pour un branding uniforme.","BENEFIT3_TITLE":"Confiance renforcée","BENEFIT3_P":"Les aperçus riches inspirent davantage confiance que les liens nus, réduisant la méfiance des utilisateurs.","BENEFIT4_TITLE":"Gain de temps","BENEFIT4_P":"L'auto-détection récupère les métadonnées en un clic. Pas besoin de configurer manuellement chaque champ.","USECASES_TITLE":"Cas d'utilisation","USECASE1":"Réseaux sociaux: Contrôlez l'aperçu de vos liens sur Facebook, Twitter et LinkedIn","USECASE2":"Messaging: Affichez un aperçu riche sur WhatsApp, Slack et Telegram","USECASE3":"Marketing: Créez des aperçus attractifs pour vos campagnes avec des images sur mesure","USECASE4":"E-commerce: Affichez le produit, le prix et une image attractive lors du partage","USECASE5":"Blog: Personnalisez l'aperçu de chaque article pour maximiser les clics","USECASE6":"Événements: Partagez une image d'aperçu avec la date et le lieu de votre événement","UPLOAD_TITLE":"Upload d'image OG","UPLOAD_LEAD":"Téléchargez votre propre image pour un contrôle total de l'aperçu social.","UPLOAD_P1":"En plus de l'auto-détection, Hou.la vous permet d'uploader une image personnalisée qui sera automatiquement optimisée pour les réseaux sociaux.","UPLOAD_SPECS_TITLE":"Spécifications techniques","UPLOAD_SPECS_P":"Images automatiquement redimensionnées en 1200x630 pixels et converties en format WebP (qualité 85%) pour un affichage optimal sur toutes les plateformes.","UPLOAD_BENEFIT1":"Formats acceptés : JPG, PNG, WebP, GIF","UPLOAD_BENEFIT2":"Taille maximale : 8 Mo","UPLOAD_BENEFIT3":"Recadrage automatique au ratio 1200x630","UPLOAD_BENEFIT4":"Stockage haute disponibilité sur Cloudflare R2","CTA_TITLE":"Personnalisez vos aperçus sociaux","CTA_P":"Créez votre compte et commencez à personnaliser l'aperçu de vos liens sur les réseaux sociaux. Disponible gratuitement.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à"},"CLICK_LIMIT":{"TITLE":"Limite de clics : nombre maximum de clics sur un lien","INTRO":"La \u003Cstrong>limite de clics\u003C/strong> est une fonctionnalité avancée de gestion de liens qui permet de définir un \u003Cstrong>nombre maximum de clics\u003C/strong> sur une URL raccourcie. Une fois le quota atteint, le lien cesse automatiquement de rediriger les visiteurs.","HERO_TITLE":"Limite de clics : définition et avantages","HERO_SUBTITLE":"Contrôlez automatiquement la portée de vos liens courts en définissant un nombre maximum de clics.","HERO_CTA":"Essayer gratuitement","HERO_STAT1_VALUE":"1 000 000","HERO_STAT1_LABEL":"Clics max par lien","HERO_STAT2_VALUE":"100%","HERO_STAT2_LABEL":"Fonctionnalité gratuite","HERO_STAT3_VALUE":"Instantané","HERO_STAT3_LABEL":"Désactivation automatique","NAV_DEFINITION":"Définition","NAV_BENEFITS":"Avantages","NAV_USECASES":"Cas d'usage","DEFINITION_TIT
89LE":"Qu'est-ce qu'une limite de clics ?","DEFINITION_P1":"Une \u003Cstrong>limite de clics\u003C/strong> est une fonctionnalité qui permet de définir un nombre maximum de redirections autorisées sur un lien court. Lorsque le compteur de clics atteint le seuil défini, le lien expire automatiquement et les visiteurs voient une page d'expiration informative.","DEFINITION_P2":"Contrairement à l'\u003Cstrong>expiration programmée\u003C/strong> (basée sur une date) ou aux \u003Cstrong>liens éphémères\u003C/strong> (basés sur une durée relative), la limite de clics repose sur le \u003Cstrong>nombre de visites réelles\u003C/strong>. Cela permet un contrôle quantitatif précis de la portée de votre lien.","DEFINITION_P3":"Sur \u003Cstrong>Hou.la\u003C/strong>, vous pouvez définir une limite de clics de 1 à 1 000 000 lors de la création ou de la modification d'un lien court. Cette fonctionnalité est disponible gratuitement.","STAT1_VALUE":"1 à 1M","STAT1_LABEL":"Plage configurable","STAT2_VALUE":"Temps réel","STAT2_LABEL":"Comptage des clics","STAT3_VALUE":"Automatique","STAT3_LABEL":"Désactivation","HOW_TITLE":"Comment fonctionne la limite de clics ?","HOW_STEP1_TITLE":"Configuration","HOW_STEP1_DESC":"Lors de la création ou modification de votre lien, activez l'option Limite de clics et définissez le nombre maximum de clics autorisés.","HOW_STEP2_TITLE":"Comptage en temps réel","HOW_STEP2_DESC":"Chaque clic sur le lien est compté en temps réel. Le compteur est visible dans les statistiques de votre dashboard.","HOW_STEP3_TITLE":"Redirection automatique","HOW_STEP3_DESC":"Tant que le compteur de clics ne dépasse pas la limite, les visiteurs sont redirigés normalement vers l'URL de destination.","HOW_STEP4_TITLE":"Expiration automatique","HOW_STEP4_DESC":"Une fois le maximum atteint, le lien cesse de rediriger et affiche une page d'expiration. Aucune intervention manuelle nécessaire.","BENEFITS_TITLE":"Avantages de la limite de clics","BENEFIT1_TITLE":"Contrôle quantitatif","BENEFIT1_DESC":"Définissez précisément combien de personnes peuvent accéder à votre contenu via le lien.","BENEFIT2_TITLE":"Automatisation complète","BENEFIT2_DESC":"Pas besoin de surveiller ou désactiver manuellement le lien. Tout se fait automatiquement au seuil défini.","BENEFIT3_TITLE":"Combinable","BENEFIT3_DESC":"La limite de clics peut être combinée avec l'expiration programmée pour une double protection : quantité ET temps.","BENEFIT4_TITLE":"Incluse gratuitement","BENEFIT4_DESC":"Disponible gratuitement, sans restriction sur le nombre de liens.","USECASES_TITLE":"Cas d'usage de la limite de clics","USECASE1_TITLE":"Offres exclusives","USECASE1_DESC":"Réservez vos promotions aux N premiers visiteurs. Idéal pour les ventes flash, codes promo ou échantillons gratuits.","USECASE2_TITLE":"Événements à places limitées","USECASE2_DESC":"Limitez les inscriptions pour un webinaire, atelier ou événement en plafonnant le lien d'inscription.","USECASE3_TITLE":"Tests contrôlés","USECASE3_DESC":"Testez une landing page ou une campagne avec un échantillon limité avant un déploiement à grande échelle.","USECASE4_TITLE":"Téléchargements protégés","USECASE4_DESC":"Limitez le nombre de téléchargements d'un fichier ou document en contrôlant l'accès via le lien.","USECASE5_TITLE":"Échantillonnage contrôlé","USECASE5_DESC":"Distribuez un nombre limité d'accès gratuits à un essai ou des invitations bêta.","USECASE6_TITLE":"Marketing à quota","USECASE6_DESC":"Créez un sentiment d'urgence en communiquant un nombre limité de places disponibles, piloté naturellement par le quota du lien.","CTA_TITLE":"Définissez une limite de clics sur vos liens","CTA_DESC":"Créez un compte Hou.la gratuit et utilisez la limite de clics dès maintenant.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à","FAQ1_Q":"Qu'est-ce qu'une limite de clics sur un lien court ?","FAQ1_A":"Une limite de clics permet de définir un nombre maximum de clics autorisés sur une URL raccourcie. Une fois la limite atteinte, le lien cesse automatiquement de rediriger les visiteurs.","FAQ2_Q":"Comment définir une limite de clics sur Hou.la ?","FAQ2_A":"Lors de la création ou modification d'un lien, activez l'option Limite de clics dans les paramètres avancés et saisissez le nombre maximum souhaité (de 1 à 1 000 000).","FAQ3_Q":"Que se passe-t-il quand la limite de clics est atteinte ?","FAQ3_A":"Le lien cesse automatiquement de rediriger. Les visiteurs voient une page informative indiquant que le lien a expiré.","FAQ4_Q":"Peut-on combiner limite de clics et expiration programmée ?","FAQ4_A":"Oui, vous pouvez définir à la fois une limite de clics et une date d'expiration sur le même lien. Le lien expirera dès que l'une des deux conditions est remplie.","FAQ5_Q":"La fonctionnalité de limite de clics est-elle gratuite ?","FAQ5_A":"Oui, la limite de clics est disponible gratuitement sur Hou.la."},"TAGS":{"TITLE":"Tags et catégories : organisez vos liens courts","INTRO":"Les \u003Cstrong>tags\u003C/strong> sont un système d'étiquetage qui permet d'organiser, classer et retrouver facilement vos liens raccourcis. Ajoutez des tags colorés à vos liens pour une gestion visuelle et efficace.","HERO_TITLE":"Tags : définition et avantages pour vos liens","HERO_SUBTITLE":"Organisez vos liens courts avec des tags colorés pour une gestion optimale de vos campagnes.","HERO_CTA":"Essayer gratuitement","HERO_STAT1_VALUE":"10 à ∞","HERO_STAT1_LABEL":"Tags inclus","HERO_STAT2_VALUE":"100%","HERO_STAT2_LABEL":"Fonctionnalité gratuite","HERO_STAT3_VALUE":"Instantané","HERO_STAT3_LABEL":"Filtrage et recherche","NAV_DEFINITION":"Définition","NAV_BENEFITS":"Avantages","NAV_USECASES":"Cas d'usage","DEFINITION_TIT
89LE":"Qu'est-ce qu'un tag de lien ?","DEFINITION_P1":"Un \u003Cstrong>tag\u003C/strong> est une étiquette personnalisée que vous pouvez attacher à vos liens courts pour les classer par thème, campagne, client ou tout autre critère. Les tags vous permettent de filtrer et retrouver vos liens en un instant.","DEFINITION_P2":"Contrairement aux dossiers classiques qui imposent une hiérarchie unique, les tags offrent un \u003Cstrong>système d'organisation flexible\u003C/strong> : un même lien peut avoir plusieurs tags simultanément, ce qui permet des classements multidimensionnels.","DEFINITION_P3":"Sur \u003Cstrong>Hou.la\u003C/strong>, chaque tag peut avoir un nom et une couleur personnalisée pour un repérage visuel immédiat dans votre dashboard.","STAT1_VALUE":"10 à ∞","STAT1_LABEL":"Inclus","STAT2_VALUE":"Multi-tags","STAT2_LABEL":"Par lien","STAT3_VALUE":"Couleurs","STAT3_LABEL":"Personnalisables","HOW_TITLE":"Comment fonctionnent les tags ?","HOW_STEP1_TITLE":"Création de tags","HOW_STEP1_DESC":"Créez des tags avec un nom descriptif et une couleur personnalisée depuis votre dashboard ou directement lors de la création d'un lien.","HOW_STEP2_TITLE":"Attribution aux liens","HOW_STEP2_DESC":"Assignez un ou plusieurs tags à chaque lien pour le classer selon vos critères : campagne, client, canal, thème...","HOW_STEP3_TITLE":"Filtrage instantané","HOW_STEP3_DESC":"Utilisez les tags pour filtrer vos liens dans le dashboard. Retrouvez tous les liens d'une campagne ou d'un client en un clic.","HOW_STEP4_TITLE":"Gestion flexible","HOW_STEP4_DESC":"Ajoutez, modifiez ou supprimez des tags à tout moment. Les tags sont partagés au sein de votre espace de travail.","BENEFITS_TITLE":"Avantages des tags","BENEFIT1_TITLE":"Organisation visuelle","BENEFIT1_DESC":"Les couleurs personnalisées permettent de distinguer visuellement les catégories de liens en un coup d'œil dans votre dashboard.","BENEFIT2_TITLE":"Flexibilité totale","BENEFIT2_DESC":"Un lien peut avoir plusieurs tags, permettant des classements par campagne, client, canal et thème simultanément.","BENEFIT3_TITLE":"Recherche instantanée","BENEFIT3_DESC":"Filtrez vos liens par tag pour retrouver instantanément tous les liens associés à un projet ou une campagne spécifique.","BENEFIT4_TITLE":"Collaboration","BENEFIT4_DESC":"Les tags sont partagés au sein de l'espace de travail pour une organisation cohérente en équipe.","USECASES_TITLE":"Cas d'usage des tags","USECASE1_TITLE":"Campagnes marketing","USECASE1_DESC":"Créez un tag par campagne (Black Friday, Noël, Été 2025...) pour regrouper tous les liens associés et mesurer les performances.","USECASE2_TITLE":"Gestion multi-clients","USECASE2_DESC":"Agences et freelances : taguez vos liens par client pour une gestion claire et un reporting facilité.","USECASE3_TITLE":"Canaux de diffusion","USECASE3_DESC":"Étiquetez vos liens par canal (email, réseaux sociaux, SMS, print) pour analyser les performances par source de trafic.","USECASE4_TITLE":"Classification thématique","USECASE4_DESC":"Triez vos liens par thème, produit ou catégorie pour une navigation intuitive dans votre bibliothèque de liens.","USECASE5_TITLE":"Suivi de projets","USECASE5_DESC":"Associez des tags de projet à vos liens pour suivre l'avancement et regrouper les ressources associées.","USECASE6_TITLE":"Tests A/B","USECASE6_DESC":"Taguez vos variantes de test pour comparer facilement les performances de différentes versions.","CTA_TITLE":"Organisez vos liens avec des tags","CTA_DESC":"Créez votre compte Hou.la gratuit et commencez à organiser vos liens avec des tags colorés.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à","FAQ1_Q":"Qu'est-ce qu'un tag sur Hou.la ?","FAQ1_A":"Un tag est une étiquette personnalisée avec un nom et une couleur que vous pouvez attacher à vos liens courts pour les organiser et les retrouver facilement.","FAQ2_Q":"Combien de tags puis-je créer ?","FAQ2_A":"Les tags sont disponibles gratuitement pour organiser vos liens.","FAQ3_Q":"Puis-je mettre plusieurs tags sur un même lien ?","FAQ3_A":"Oui, chaque lien peut avoir plusieurs tags simultanément, ce qui permet un classement multidimensionnel.","FAQ4_Q":"Les tags sont-ils partagés en équipe ?","FAQ4_A":"Oui, les tags sont partagés au sein de votre espace de travail. Tous les membres de l'équipe peuvent les utiliser.","FAQ5_Q":"La fonctionnalité de tags est-elle gratuite ?","FAQ5_A":"Oui, les tags sont disponibles gratuitement sur Hou.la."},"CLOAKING":{"TITLE":"Le Link Cloaking : masquer l'URL de destination","INTRO":"Le \u003Cstrong>Link Cloaking\u003C/strong> est une technique qui permet de masquer l'URL de destination d'un lien court dans la barre d'adresse du navigateur. Le visiteur voit l'URL courte (ex: \u003Ccode>hou.la/abc\u003C/code>) pendant toute sa navigation, sans jamais voir l'adresse réelle de la page.","HERO_TITLE":"Link Cloaking : définition et avantages","HERO_SUBTITLE":"Masquez l'URL de destination de vos liens courts pour protéger vos liens affiliés et contrôler l'expérience utilisateur.","HERO_CTA":"Essayer gratuitement","HERO_STAT1_VALUE":"Invisible","HERO_STAT1_LABEL":"URL masquée","HERO_STAT2_VALUE":"100%","HERO_STAT2_LABEL":"Fonctionnalité gratuite","HERO_STAT3_VALUE":"1 clic","HERO_STAT3_LABEL":"Activation instantanée","NAV_DEFINITION":"Définition","NAV_BENEFITS":"Avantages","NAV_USECASES":"Cas d'usage","DEFINITION_TIT
89LE":"Qu'est-ce que le Link Cloaking ?","DEFINITION_P1":"Le \u003Cstrong>Link Cloaking\u003C/strong> (ou dissimulation de lien) consiste à charger le site de destination dans une \u003Cstrong>iframe plein écran\u003C/strong> plutôt que de rediriger le navigateur avec un code 301/302. L'URL affichée reste celle du lien court.","DEFINITION_P2":"Concrètement, quand un visiteur clique sur un lien cloak : il voit le contenu de la page de destination, mais la barre d'adresse de son navigateur affiche toujours l'URL courte (ex: \u003Ccode>hou.la/abc\u003C/code>). C'est comme une \u003Cstrong>fenêtre intégrée\u003C/strong>.","DEFINITION_P3":"Sur \u003Cstrong>Hou.la\u003C/strong>, le Link Cloaking s'active en un clic lors de la création ou la modification d'un lien. Il est disponible gratuitement et compatible avec toutes les autres fonctionnalités (analytics, pixels, mot de passe, limite de clics).","STAT1_VALUE":"iframe","STAT1_LABEL":"Technologie utilisée","STAT2_VALUE":"Masquée","STAT2_LABEL":"URL de destination","STAT3_VALUE":"Inclus","STAT3_LABEL":"Gratuit","HOW_TITLE":"Comment fonctionne le Link Cloaking ?","HOW_STEP1_TITLE":"Requête du visiteur","HOW_STEP1_DESC":"Le visiteur clique sur le lien court (ex: hou.la/abc). La requête arrive sur les serveurs Hou.la.","HOW_STEP2_TITLE":"Détection du cloaking","HOW_STEP2_DESC":"Le serveur détecte que le cloaking est activé pour ce lien. Au lieu de renvoyer une redirection 301, il génère une page HTML.","HOW_STEP3_TITLE":"Iframe plein écran","HOW_STEP3_DESC":"La page HTML contient une iframe invisible qui charge le site de destination en plein écran. Le visiteur voit le contenu, mais l'URL reste celle du lien court.","HOW_STEP4_TITLE":"Analytics normaux","HOW_STEP4_DESC":"Le clic est comptabilisé normalement dans vos statistiques. Tous les pixels de retargeting sont également déclenchés.","BENEFITS_TITLE":"Avantages du Link Cloaking","BENEFIT1_TITLE":"Protection des liens affiliés","BENEFIT1_DESC":"Vos visiteurs ne voient jamais l'URL de destination avec le tag d'affiliation. Impossible de contourner votre lien pour acheter directement.","BENEFIT2_TITLE":"Branding cohérent","BENEFIT2_DESC":"La barre d'adresse affiche votre domaine pendant toute la navigation. Renforcez votre image de marque.","BENEFIT3_TITLE":"Anti-contournement","BENEFIT3_DESC":"Combiné avec la limite de clics, le cloaking empêche les utilisateurs de copier l'URL réelle pour la partager sans passer par votre lien.","BENEFIT4_TITLE":"Expérience transparente","BENEFIT4_DESC":"Le visiteur accède normalement au contenu. L'iframe plein écran est invisible, la navigation est fluide.","USECASES_TITLE":"Cas d'usage du Link Cloaking","USECASE1_TITLE":"Affiliation et partenariats","USECASE1_DESC":"Masquez les tags d'affiliation Amazon, commission Junction, Awin... pour protéger vos commissions.","USECASE2_TITLE":"Contenus sponsorisés","USECASE2_DESC":"Les influenceurs et créateurs de contenu masquent les URLs des sponsors pour garder une URL propre et professionnelle.","USECASE3_TITLE":"Liens temporaires protégés","USECASE3_DESC":"Combinez cloaking + limite de clics : le lien expire après N clics et personne ne peut copier l'URL directe.","USECASE4_TITLE":"Distribution contrôlée","USECASE4_DESC":"Partagez des ressources privées tout en gardant le contrôle sur l'URL réelle du fichier ou de la page.","USECASE5_TITLE":"Campagnes marketing","USECASE5_DESC":"Gardez votre branding cohérent en affichant votre domaine hou.la dans la barre d'adresse pendant toute la visite.","USECASE6_TITLE":"Pages de vente","USECASE6_DESC":"Masquez les URLs longues et complexes de vos pages de vente pour une présentation professionnelle.","CTA_TITLE":"Protégez vos liens avec le Link Cloaking","CTA_DESC":"Créez votre compte Hou.la gratuit et activez le Link Cloaking sur vos liens en un clic.","CTA_BTN":"Commencer gratuitement","CONTACT":"Besoin d'aide ? Écrivez-nous à","FAQ1_Q":"Qu'est-ce que le Link Cloaking ?","FAQ1_A":"Le Link Cloaking masque l'URL de destination dans la barre d'adresse du navigateur. Le visiteur voit le contenu mais l'URL reste celle du lien court.","FAQ2_Q":"Le Link Cloaking affecte-t-il le SEO ?","FAQ2_A":"Non, car Hou.la détecte les bots de moteur
89s de recherche et leur envoie une redirection 301 classique. Seuls les visiteurs humains voient l'iframe.","FAQ3_Q":"Le cloaking fonctionne-t-il avec tous les sites ?","FAQ3_A":"La plupart des sites fonctionnent. Certains sites avec des protections anti-iframe (X-Frame-Options ou CSP) ne pourront pas être affichés en iframe.","FAQ4_Q":"Le Link Cloaking est-il gratuit ?","FAQ4_A":"Oui, le Link Cloaking est disponible gratuitement sur Hou.la.","FAQ5_Q":"Puis-je combiner le cloaking avec d'autres fonctionnalités ?","FAQ5_A":"Oui, le cloaking est compatible avec toutes les fonctionnalités : analytics, pixels de retargeting, mot de passe, limite de clics, liens éphémères."},"DEEP_LINKS":{"HERO_TITLE":"Deep Links Mobile : définition et fonctionnement","HERO_SUBTITLE":"Ouvrez automatiquement les applications mobiles depuis vos liens courts. Gratuit avec Hou.la.","NAV_DEFINITION":"Définition","NAV_BENEFITS":"Avantages","NAV_USECASES":"Cas d'usage","DEFINITION_TITLE":"Qu'est-ce qu'un deep link mobile ?","DEFINITION_P1":"Un \u003Cstrong>deep link mobile\u003C/strong> est un lien hypertexte qui ouvre directement une \u003Cstrong>application mobile\u003C/strong> (Instagram, YouTube, Spotify, TikTok…) au lieu de rediriger vers la version web du service. Le visiteur atterrit sur le bon contenu, dans la bonne app, en un seul clic.","DEFINITION_P2":"Contrairement à un lien classique qui ouvre toujours le navigateur, un deep link utilise des \u003Cstrong>URI schemes\u003C/strong> (iOS) ou des \u003Cstrong>Intent URLs\u003C/strong> (Android) pour communiquer directement avec l'application installée sur le téléphone.","DEFINITION_P3":"Sur \u003Cstrong>Hou.la\u003C/strong>, les deep links mobile sont \u003Cstrong>activés automatiquement\u003C/strong> lors de la création d'un lien. Notre système détecte la plateforme de destination (Instagram, YouTube, Spotify…) et configure les deep links sans aucune action de votre part. Si l'app n'est pas installée, le visiteur est redirigé vers le store ou le site web. Disponible gratuitement, sans engagement.","STAT1_VALUE":"3x","STAT1_LABEL":"Taux de conversion vs web","STAT2_VALUE":"+66%","STAT2_LABEL":"Temps passé dans l'app","STAT3_VALUE":"0 €","STAT3_LABEL":"Inclus gratuitement, sans limite","HOW_TITLE":"Comment fonctionne un deep link ?","HOW_STEP1_TITLE":"Clic sur le lien court","HOW_STEP1_DESC":"Le visiteur clique sur votre lien hou.la depuis n'importe quel canal : SMS, email, réseaux sociaux, QR code…","HOW_STEP2_TITLE":"Détection de l'appareil","HOW_STEP2_DESC":"Le SDK JavaScript de Hou.la détecte l'OS (iOS / Android) et le type de navigateur (standard, in-app Facebook/Instagram, etc.).","HOW_STEP3_TITLE":"Tentative d'ouverture de l'app","HOW_STEP3_DESC":"Le SDK tente d'ouvrir l'application via le URI scheme ou Intent URL configuré. Un timer de 1,5 seconde surveille si l'app a pris le focus.","HOW_STEP4_TITLE":"Fallback intelligent","HOW_STEP4_DESC":"Si l'app ne s'ouvre pas (non installée), le visiteur est automatiquement redirigé vers l'App Store, le Play Store ou la page web configurée.","BENEFITS_TITLE":"Avantages des deep links mobile","BENEFIT1_TITLE":"Meilleure expérience utilisateur","BENEFIT1_DESC":"L'utilisateur atterrit directement dans l'app avec le bon contenu. Pas de page web intermédiaire, pas de connexion à refaire.","BENEFIT2_TITLE":"Taux de conversion supérieur","BENEFIT2_DESC":"Les apps natives convertissent jusqu'à 3x mieux que les sites web mobiles grâce à une navigation plus fluide et des fonctions avancées.","BENEFIT3_TITLE":"Détection des navigateurs in-app","BENEFIT3_DESC":"Hou.la détecte les navigateurs intégrés (Facebook, Instagram, Twitter) et guide le visiteur pour ouvrir dans le navigateur système.","BENEFIT4_TITLE":"Disponible gratuitement","BENEFIT4_DESC":"Les deep links Hou.la sont inclus gratuitement, sans limite.","USECASES_TITLE":"Cas d'usage des deep links","USECASE1_TITLE":"Instagram & TikTok","USECASE1_DESC":"Redirigez les visiteurs vers votre profil ou vidéo directement dans l'app, pas la version web.","USECASE2_TITLE":"YouTube & Spotify","USECASE2_DESC":"Ouvrez une vidéo ou playlist directement dans l'app pour une lecture immédiate et sans friction.","USECASE3_TITLE":"WhatsApp & Telegram","USECASE3_DESC":"Démarrez une conversation dans l'app de messagerie sans passer par le navigateur.","USECASE4_TITLE":"E-commerce","USECASE4_DESC":"Ouvrez directement la fiche produit dans l'app mobile du marchand pour un achat en un clic.","USECASE5_TITLE":"Campagnes email & SMS","USECASE5_DESC":"Les destinataires arrivent directement dans l'app plutôt que sur un site web mobile moins performant.","USECASE6_TITLE":"QR codes physiques","USECASE6_DESC":"Combinez QR code + deep link : le scan ouvre directement l'app sur le contenu voulu.","CTA_TITLE":"Ouvrez les apps depuis vos liens","CTA_DESC":"Créez votre compte gratuit. Les deep links mobile sont activés automatiquement sur tous vos liens.","CTA_BTN":"Créer un compte","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"WORKSPACES":{"HERO_TITLE":"Workspaces collaboratifs : gérer ses liens en équipe","HERO_SUBTITLE":"Centralisez la gestion de vos liens courts en équipe. Rôles, permissions et statistiques partagées. Gratuit avec Hou.la.","NAV_DEFINITION":"Définition","NAV_BENEFITS":"Avantages","NAV_USECASES":"Cas d'usage","DEFINITION_TIT
89LE":"Qu'est-ce qu'un workspace collaboratif ?","DEFINITION_P1":"Un \u003Cstrong>workspace\u003C/strong> (espace de travail) est un environnement partagé qui permet à une \u003Cstrong>équipe\u003C/strong> de gérer ensemble un ensemble de liens courts, tags, statistiques et domaines personnalisés. Chaque workspace est isolé des autres : les liens d'un workspace ne sont pas visibles depuis un autre.","DEFINITION_P2":"Sur \u003Cstrong>Hou.la\u003C/strong>, chaque utilisateur possède automatiquement un \u003Cstrong>workspace personnel\u003C/strong>. Il peut ensuite créer ou rejoindre des \u003Cstrong>workspaces d'équipe\u003C/strong> pour collaborer avec ses collègues, avec des rôles et permissions différenciés.","DEFINITION_P3":"Les workspaces sont disponibles gratuitement\u003C/strong> et permettent de séparer les projets, les clients ou les départements. Chaque membre accède aux liens et statistiques selon son rôle (propriétaire, membre ou lecteur).","STAT1_VALUE":"3","STAT1_LABEL":"Rôles disponibles (Owner, Member, Viewer)","STAT2_VALUE":"1 à 20","STAT2_LABEL":"Membres d'équipe","STAT3_VALUE":"0 €","STAT3_LABEL":"Disponible gratuitement","HOW_TITLE":"Comment fonctionnent les workspaces ?","STEP1_TITLE":"Créez votre workspace","STEP1_DESC":"Depuis votre tableau de bord, créez un nouveau workspace d'équipe en un clic. Donnez-lui un nom et un slug.","STEP2_TITLE":"Invitez vos collaborateurs","STEP2_DESC":"Envoyez des invitations par email. Chaque invité reçoit un lien pour rejoindre le workspace avec le rôle que vous avez défini.","STEP3_TITLE":"Gérez les rôles","STEP3_DESC":"Attribuez à chaque membre un rôle : Owner (tous les droits), Member (créer et gérer les liens) ou Viewer (consultation seulement).","STEP4_TITLE":"Collaborez sur vos liens","STEP4_DESC":"Les liens, tags, domaines et statistiques sont partagés entre tous les membres du workspace. Basculez entre vos workspaces depuis le header.","BENEFITS_TITLE":"Les avantages des workspaces collaboratifs","BENEFIT1_TITLE":"Collaboration en temps réel","BENEFIT1_DESC":"Tous les membres de l'équipe peuvent créer, modifier et suivre les liens du workspace simultanément.","BENEFIT2_TITLE":"Contrôle d'accès granulaire","BENEFIT2_DESC":"Trois niveaux de rôles (Owner, Member, Viewer) permettent de contrôler précisément qui peut créer, éditer ou simplement consulter.","BENEFIT3_TITLE":"Statistiques centralisées","BENEFIT3_DESC":"Suivez les performances de tous vos liens d'équipe au même endroit : clics, géolocalisation, devices, referrers.","BENEFIT4_TITLE":"Séparation des contextes","BENEFIT4_DESC":"Séparez vos projets, clients ou départements dans des workspaces distincts. Chaque contexte a ses propres liens et stats.","ROLES_TITLE":"Les rôles dans un workspace","ROLE_OWNER_TITLE":"Owner (Propriétaire)","ROLE_OWNER_DESC":"Accès complet : gestion des membres, des liens, des paramètres et de la facturation du workspace.","ROLE_MEMBER_TITLE":"Member (Membre)","ROLE_MEMBER_DESC":"Peut créer, modifier et supprimer des liens. N'a pas accès à la gestion des membres ou des paramètres.","ROLE_VIEWER_TITLE":"Viewer (Lecteur)","ROLE_VIEWER_DESC":"Consultation seulement : peut voir les liens et les statistiques mais ne peut rien modifier.","USECASES_TITLE":"Cas d'usage des workspaces","USECASE1":"Agence marketing : un workspace par client pour isoler les campagnes et les statistiques.","USECASE2":"Startup : un workspace partagé entre l'équipe growth et le product management.","USECASE3":"E-commerce : séparation des liens par marque ou par région géographique.","USECASE4":"Freelance : un workspace personnel + des workspaces pour chaque client avec accès Viewer.","USECASE5":"Entreprise : départements marketing, commercial et support avec des workspaces dédiés.","COMPARE_TITLE":"Comparaison avec les concurrents","COMPARE_DESC":"Sur \u003Cstrong>Hou.la\u003C/strong>, les workspaces sont \u003Cstrong>gratuits\u003C/strong> avec des rôles, des invitations et des statistiques partagées.","CTA_TITLE":"Prêt à collaborer en équipe ?","CTA_P":"Créez votre workspace et inv
89itez vos collaborateurs en quelques secondes. Gratuit, sans carte bancaire.","CTA_BTN":"Créer un workspace","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"OAUTH":{"HERO_TITLE":"OAuth 2.0 & PKCE : authentification sécurisée pour vos applications","HERO_SUBTITLE":"Découvrez le protocole OAuth 2.0 avec PKCE, le standard de sécurité pour connecter des applications tierces à vos services. Hou.la supporte OAuth nativement.","NAV_DEFINITION":"Définition","NAV_PKCE":"PKCE","NAV_HOULA":"Hou.la Auth","WHAT_TITLE":"Qu'est-ce que OAuth 2.0 ?","WHAT_P1":"OAuth 2.0 est un protocole d'autorisation standard qui permet à une application tierce d'accéder aux ressources d'un utilisateur sur un autre service, sans jamais partager le mot de passe. C'est le mécanisme utilisé par Google, Facebook, GitHub et des milliers d'autres services.","WHAT_P2":"Au lieu de transmettre des identifiants, OAuth utilise un système de jetons (tokens) avec des permissions (scopes) limitées. L'utilisateur donne son consentement explicite, et l'application reçoit un jeton d'accès temporaire.","STAT1_VALUE":"OAuth 2.0","STAT1_LABEL":"Standard mondial d'autorisation","STAT2_VALUE":"PKCE S256","STAT2_LABEL":"Protection contre l'interception de code","STAT3_VALUE":"5 scopes","STAT3_LABEL":"Permissions granulaires","HOW_TITLE":"Comment fonctionne le flux OAuth ?","STEP1_TITLE":"Demande d'autorisation","STEP1_P":"L'application tierce redirige l'utilisateur vers la page de consentement du fournisseur (ex: Hou.la) avec un code_challenge PKCE.","STEP2_TITLE":"Consentement utilisateur","STEP2_P":"L'utilisateur voit les permissions demandées et accepte ou refuse l'accès à ses données.","STEP3_TITLE":"Code d'autorisation","STEP3_P":"Le fournisseur redirige l'utilisateur vers l'application avec un code d'autorisation temporaire.","STEP4_TITLE":"Échange du code","STEP4_P":"L'application échange le code d'autorisation contre un jeton d'accès (access_token) et un jeton de rafraîchissement (refresh_token) en présentant le code_verifier PKCE.","PKCE_TITLE":"PKCE : la couche de sécurité supplémentaire","PKCE_P1":"PKCE (Proof Key for Code Exchange) est une extension de sécurité d'OAuth 2.0 conçue pour protéger le flux d'autorisation contre les attaques par interception. Le client génère un code_verifier aléatoire, en dérive un code_challenge (via SHA-256), et prouve sa légitimité lors de l'échange du code.","PKCE_P2":"PKCE est obligatoire pour les applications publiques (mobiles, SPA, extensions) et fortement recommandé pour tous les clients OAuth. Hou.la impose PKCE S256 pour garantir la sécurité maximale.","PKCE_BENEFIT1_TITLE":"Protection contre l'interception","PKCE_BENEFIT1_P":"Même si un attaquant intercepte le code d'autorisation, il ne peut pas l'échanger sans le code_verifier original.","PKCE_BENEFIT2_TITLE":"Pas de secret client requis","PKCE_BENEFIT2_P":"PKCE élimine le besoin d'un client_secret côté client, ce qui le rend idéal pour les applications mobiles et les extensions.","PKCE_BENEFIT3_TITLE":"Compatible mobile & extension","PKCE_BENEFIT3_P":"Conçu spécifiquement pour les clients publics : applications mobiles, extensions navigateur, applications SPA.","PKCE_BENEFIT4_TITLE":"Standard RFC 7636","PKCE_BENEFIT4_P":"PKCE est une spécification officielle de l'IETF (RFC 7636), adoptée par les plus grands fournisseurs : Google, Microsoft, Apple.","HOULA_TITLE":"Hou.la Auth : OAuth pour vos applications","HOULA_P1":"Hou.la implémente OAuth 2.0 avec PKCE S256 pour permettre à vos applications et plugins de se connecter de manière sécurisée. Comme Google Auth ou GitHub Auth, vous pouvez utiliser Hou.la comme fournisseur d'authentification pour vos intégrations.","HOULA_P2":"Que vous développiez un plugin WordPress, une extension Chrome ou une application SaaS, l'authentification via Hou.la permet à vos utilisateurs de connecter leurs comptes en toute sécurité sans partager leurs identifiants.","USECASE1_TITLE":"Plugins CMS (WordPress, Shopify)","USECASE1_P":"Connectez votre plugin à Hou.la pour créer des liens courts automatiquement depuis votre CMS. Les utilisateurs autorisent l'accès en un clic.","USECASE2_TITLE":"Applications SaaS & Intégrations","USECASE2_P":"Intégrez la création de liens courts et le suivi de clics directement dans votre application métier via l'API OAuth.","USECASE3_TITLE":"E-commerce & WooCommerce","USECASE3_P":"Générez automatiquement des liens courts pour vos produits, suivez les conversions et synchronisez votre catalogue via les scopes dédiés.","CTA_TITLE":"Prêt à intégrer Hou.la dans votre application ?","CTA_DESC":"Consultez la documentation OAuth pour commencer l'intégration en quelques minutes.","CTA_BTN_DOCS":"Documentation API","CTA_BTN_FEATURE":"En savoir plus"},"PAY_LINKS":{"HERO_TITLE":"Pay Links : vendre via un lien de paiement","HERO_SUBTITLE":"Les Pay Links transforment un simple lien court en point de vente. Connectez votre compte Stripe et encaissez directement depuis un lien partageable.","NAV_DEFINITION":"Definition","NAV_STRIPE":"Stripe Connect","NAV_HOULA":"Hou.la Pay Links","WHAT_TITLE":"Qu'est-ce qu'un Pay Link ?","WHAT_P1":"Un Pay Link est un lien de paiement qui redirige vers une page de checkout hebergee. L'acheteur remplit ses informations de paiement et le vendeur recoit les fonds directement sur son compte Stripe.","WHAT_P2":"Contrairement aux solutions e-commerce traditionnelles, un Pay Link ne necessite aucun site web. Il suffit de creer le lien, definir un prix et le partager par email, SMS, reseaux sociaux ou via votre Link in Bio.","STAT1_VALUE":"46 pays","STAT1_LABEL":"Str
89ipe Connect disponible","STAT2_VALUE":"\u003C 2 min","STAT2_LABEL":"Pour creer un Pay Link","STAT3_VALUE":"135+","STAT3_LABEL":"Devises supportees","HOW_TITLE":"Comment fonctionne un Pay Link ?","STEP1_TITLE":"Le vendeur cree un Pay Link","STEP1_P":"Il definit le nom du produit, le prix, la devise et optionnellement une image et une description.","STEP2_TITLE":"Le lien est partage","STEP2_P":"Le vendeur copie le lien court et le diffuse sur ses canaux : reseaux sociaux, email, SMS, QR code ou Link in Bio.","STEP3_TITLE":"L'acheteur paie","STEP3_P":"En cliquant sur le lien, l'acheteur arrive sur une page de checkout Stripe securisee. Il paie par carte bancaire.","STEP4_TITLE":"Le vendeur recoit les fonds","STEP4_P":"Le paiement arrive directement sur le compte Stripe du vendeur, moins la commission de la plateforme.","STRIPE_TITLE":"Stripe Connect : le moteur des Pay Links","STRIPE_P1":"Stripe Connect est le protocole de paiement qui permet a Hou.la de traiter les transactions pour le compte des vendeurs. Chaque vendeur connecte son propre compte Stripe via OAuth.","STRIPE_P2":"Hou.la ne stocke jamais les donnees bancaires. Stripe gere l'ensemble du flux de paiement, la conformite PCI-DSS et la protection contre la fraude.","STRIPE_BENEFIT1_TITLE":"Paiements securises","STRIPE_BENEFIT1_P":"Stripe est certifie PCI-DSS niveau 1. Les donnees bancaires ne transitent jamais par les serveurs de Hou.la.","STRIPE_BENEFIT2_TITLE":"Couverture internationale","STRIPE_BENEFIT2_P":"Acceptez les paiements dans plus de 135 devises, depuis 46 pays. Cartes bancaires, Apple Pay, Google Pay.","STRIPE_BENEFIT3_TITLE":"Virements automatiques","STRIPE_BENEFIT3_P":"Les fonds sont verses automatiquement sur le compte bancaire du vendeur selon le calendrier Stripe (J+2 a J+7).","STRIPE_BENEFIT4_TITLE":"Tableau de bord complet","STRIPE_BENEFIT4_P":"Suivez vos ventes, remboursements et commissions en temps reel depuis le tableau de bord Hou.la.","HOULA_TITLE":"Les Pay Links sur Hou.la","HOULA_P1":"Hou.la integre Stripe Connect Express pour permettre a chaque utilisateur de vendre directement depuis ses liens courts. La connexion Stripe se fait en quelques clics.","HOULA_P2":"Les Pay Links peuvent etre ajoutes a votre Link in Bio, integres dans un QR code ou partages comme n'importe quel lien court Hou.la.","USECASE1_TITLE":"Createurs et freelances","USECASE1_P":"Vendez vos formations, ebooks, presets ou consultations via un simple lien. Pas besoin de site e-commerce.","USECASE2_TITLE":"Petits commercants","USECASE2_P":"Proposez le paiement a distance pour vos produits. Partagez le lien par SMS ou WhatsApp apres une commande telephonique.","USECASE3_TITLE":"Organisateurs d'evenements","USECASE3_P":"Vendez vos billets ou inscriptions via un Pay Link. Integrez-le dans vos campagnes email ou sur vos reseaux sociaux.","CTA_TITLE":"Commencez a vendre avec Hou.la","CTA_DESC":"Creez votre compte, connectez Str
89ipe et publiez votre premier Pay Link en moins de 2 minutes.","CTA_BTN_SIGNUP":"Creer mon compte gratuit","CTA_BTN_FEATURE":"Voir la fonctionnalite"},"SHOP_IN_BIO":{"HERO_TITLE":"Shop in Bio : créez votre boutique en ligne depuis votre bio","HERO_SUBTITLE":"Le Shop in Bio transforme votre page Link in Bio en marketplace complète. Vendez vos produits, gérez vos commandes et encaissez vos paiements: directement depuis votre profil.","NAV_DEFINITION":"Définition","NAV_FEATURES":"Fonctionnalités","NAV_HOULA":"Hou.la Shop in Bio","WHAT_TITLE":"Qu'est-ce que le Shop in Bio ?","WHAT_P1":"Le Shop in Bio est un concept qui combine une page de liens (Link in Bio) avec une boutique en ligne intégrée. Au lieu de simplement lister des liens vers des réseaux sociaux, vous proposez un catalogue de produits achetables directement depuis votre page.","WHAT_P2":"C'est la solution idéale pour les créateurs de contenu, artisans, freelances et petits commerçants qui veulent vendre sans créer de site e-commerce complexe. Votre boutique est accessible via une URL simple comme hou.la/@pseudo.","STAT1_VALUE":"0 €","STAT1_LABEL":"pour démarrer votre boutique","STAT2_VALUE":"5 %","STAT2_LABEL":"de commission par vente","STAT3_VALUE":"3 types","STAT3_LABEL":"de produits supportés","FEATURES_TITLE":"Fonctionnalités du Shop in Bio","FEAT1_TITLE":"Catalogue multi-produits","FEAT1_P":"Créez des produits physiques, numériques ou des services. Ajoutez des variantes (taille, couleur), gérez les stocks et organisez par collections.","FEAT2_TITLE":"Paiement Stripe intégré","FEAT2_P":"Les acheteurs paient par carte bancaire via Stripe Checkout. Vos revenus arrivent directement sur votre compte bancaire.","FEAT3_TITLE":"Livraison automatisée","FEAT3_P":"Configurez vos zones de livraison (nationale, continentale, internationale) avec des tarifs par paliers de poids. Le pays de l'acheteur est détecté automatiquement.","FEAT4_TITLE":"Avis clients vérifiés","FEAT4_P":"Après livraison, vos acheteurs reçoivent un e-mail pour laisser un avis vérifié. Connectez Trustpilot et Google Business pour agréger vos avis externes.","FEAT5_TITLE":"Codes promo et réductions","FEAT5_P":"Créez des codes promo pourcentage, montant fixe ou livraison offerte. Définissez des conditions : montant minimum, nombre d'utilisations, dates de validité.","FEAT6_TITLE":"Analytics e-commerce","FEAT6_P":"Suivez en temps réel les vues produits, ajouts au panier, paniers abandonnés, conversions et revenus. Identifiez vos produits stars.","HOULA_TITLE":"Le Shop in Bio sur Hou.la","HOULA_P1":"Hou.la est la première plateforme à intégrer nativement une boutique complète dans un Link in Bio, et gère tout : catalogue, checkout, expédition, facturation et avis.","HOULA_P2":"Avec une commission unique de 5 % par vente (contre 10-15 % sur Etsy), Hou.la est la solution la plus rentable pour les créateurs et petits commerçants.","USECASE1_TITLE":"Créateurs et influenceurs","USECASE1_P":"Vendez vos merch, presets, ebooks et formations directement depuis votre bio Instagram ou TikTok. Votre audience achète sans quitter votre univers.","USECASE2_TITLE":"Artisans et petits commerçants","USECASE2_P":"Proposez votre catalogue produits avec photos, variantes et livraison automatisée. Pas besoin de site e-commerce ni de compétences techniques.","USECASE3_TITLE":"Freelances et consultants","USECASE3_P":"Vendez vos services de coaching, consulting ou formation en ligne. Gérez vos réservations et paiements depuis un seul endroit.","VS_TITLE":"Shop in Bio vs alternatives","VS_P1":"Contrairement à Etsy (15 % de commission + frais d'inscription), Shopify (29 $/mois minimum) ou Gumroad (10 %), Hou.la propose une boutique complète intégrée à votre bio avec une commission unique et transparente de 5 %.","VS_P2":"Votre boutique Hou.la gère nativement la livraison, les remboursements, la facturation et les avis clients vérifiés.","CTA_TITLE":"Lancez votre Shop in Bio avec Hou.la","CTA_DESC":"Créez votre boutique gratuitement. Ajoutez vos produits, connectez Str
89ipe et commencez à vendre en quelques minutes.","CTA_BTN_SIGNUP":"Ouvrir ma boutique","CTA_BTN_FEATURE":"Voir la fonctionnalité"},"AUTO_PRINT":{"HERO_TITLE":"Impression automatique : vos étiquettes et factures imprimées en temps réel","HERO_SUBTITLE":"Dès qu'une commande est passée sur votre Shop in Bio, vos étiquettes d'expédition et factures s'impriment automatiquement sur vos imprimantes connectées.","NAV_WHAT":"Qu'est-ce que c'est ?","NAV_HOW":"Comment ça marche","NAV_BENEFITS":"Avantages","WHAT_TITLE":"Qu'est-ce que l'impression automatique ?","WHAT_P1":"L'impression automatique est une fonctionnalité de Hou.la qui connecte votre boutique Shop in Bio à vos imprimantes physiques. Chaque nouvelle commande déclenche instantanément l'impression des étiquettes d'expédition (format Zebra ZPL ou ESC/POS) et des factures, sans aucune intervention manuelle.","WHAT_P2":"Grâce à l'application desktop Houla Print, vos imprimantes thermiques (Zebra, Dymo, Brother…) ou à reçus reçoivent les jobs d'impression en temps réel via WebSocket, directement depuis le serveur Hou.la.","STAT1_LABEL":"Temps d'impression moyen","STAT2_LABEL":"Formats supportés","STAT3_VALUE":"Multi-postes","STAT3_LABEL":"Imprimantes simultanées","HOW_TITLE":"Comment ça marche ?","STEP1_TITLE":"Installez Houla Print","STEP1_P":"Téléchargez l'application desktop Houla Print sur votre poste de travail. Connectez-vous avec votre compte Hou.la via OAuth.","STEP2_TITLE":"Configurez vos imprimantes","STEP2_P":"Sélectionnez vos imprimantes dans le tableau de bord Hou.la : assignez une imprimante par type de document (étiquette, facture) et par workspace.","STEP3_TITLE":"Recevez des commandes","STEP3_P":"Quand un client commande sur votre Shop in Bio, le serveur crée automatiquement un job d'impression et l'envoie à Houla Print via WebSocket.","STEP4_TITLE":"Impression instantanée","STEP4_P":"Houla Print récupère le job, génère le contenu (ZPL ou ESC/POS) et l'envoie à l'imprimante sélectionnée. Le statut est mis à jour en temps réel dans votre tableau de bord.","BENEFITS_TITLE":"Les avantages de l'impression automatique","BENEFIT1_TITLE":"Gain de temps considérable","BENEFIT1_P":"Plus besoin de copier-coller des adresses ou d'ouvrir un logiciel tiers. Chaque commande est traitée en quelques secondes.","BENEFIT2_TITLE":"Zéro erreur humaine","BENEFIT2_P":"Les données d'expédition sont extraites directement de la commande. Plus de risque de faute de frappe sur l'adresse ou le numéro de suivi.","BENEFIT3_TITLE":"Multi-workspaces et multi-imprimantes","BENEFIT3_P":"Gérez plusieurs boutiques depuis un seul poste avec des imprimantes dédiées par workspace.","BENEFIT4_TITLE":"Sécurisé de bout en bout","BENEFIT4_P":"Connexion OAuth sécurisée, communication WebSocket chiffrée, aucune donnée client stockée localement.","USECASES_TITLE":"Cas d'usage courants","USECASE1":"E-commerçants traitant plus de 10 commandes par jour","USECASE2":"Boutiques physiques avec imprimante thermique Zebra","USECASE3":"Créateurs indépendants vendant sur leur Link in Bio","USECASE4":"Équipes multi-postes avec plusieurs imprimantes","CTA_TITLE":"Automatisez vos impressions avec Hou.la","CTA_DESC":"Installez Houla Print, connectez vos imprimantes et imprimez automatiquement. Gratuit avec votre compte Hou.la.","CTA_BTN_SIGNUP":"Créer mon compte","CTA_BTN_FEATURE":"Voir la fonctionnalité"}},"FEAT":{"SMART_ROUTING":{"GA_TITLE":"Fonctionnalité : Smart Routing","HOWTO_NAME":"Comment configurer le Smart Routing sur Hou.la","HOWTO_DESC":"Guide étape par étape pour rediriger automatiquement vos visiteurs vers des destinations différentes selon des critères précis.","STEP1_NAME":"Créer un lien court","STEP1_TEXT":"Connectez-vous à votre compte Hou.la et créez un lien court ou ouvrez un lien existant.","STEP2_NAME":"Activer le Smart Routing","STEP2_TEXT":"Dans le formulaire de création ou d'édition du lien, activez l'option Smart Routing.","STEP3_NAME":"Ajouter une règle","STEP3_TEXT":"Cliquez sur \"Ajouter une règle\" et définissez l'URL de destination alternative.","STEP4_NAME":"Définir les conditions","STEP4_TEXT":"Ajoutez une ou plusieurs conditions : pays, appareil, langue, navigateur, système d'exploitation, première visite…","STEP5_NAME":"Enregistrer et tester","STEP5_TEXT":"Enregistrez votre lien. Les visiteurs seront automatiquement redirigés selon vos règles, par ordre de priorité.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Smart Routing","TITLE_HIGHLIGHT":"Smart Routing","TITLE_SUFFIX":"Redirigez intelligemment selon vos règles","INTRO":"Redirigez automatiquement vos visiteurs vers des \u003Cstrong>destinations différentes\u003C/strong> selon leur pays, appareil, langue, navigateur et \u003Cstrong>9 autres critères\u003C/strong>. \u003Cstrong>
89Un seul lien, plusieurs destinations.\u003C/strong>","EXCLUSIVE_BADGE":"🔒 Inclus gratuitement","EXCLUSIVE_DESC":"Le Smart Routing avec \u003Cstrong>13 types de conditions\u003C/strong> et la combinaison de règles illimitée est inclus gratuitement sur Hou.la.","WHAT_TITLE":"Qu'est-ce que le Smart Routing ?","WHAT_DESC":"Le Smart Routing permet de \u003Cstrong>rediriger dynamiquement\u003C/strong> les visiteurs d'un même lien court vers des URLs différentes en fonction de règles que vous définissez. Par exemple : les visiteurs français vers votre site en français, et les autres vers la version anglaise.","WHY_TITLE":"Pourquoi utiliser le Smart Routing ?","WHY1_TITLE":"Ciblage géographique","WHY1_DESC":"Redirigez les visiteurs vers la \u003Cstrong>version locale\u003C/strong> de votre site ou boutique selon leur pays ou continent.","WHY2_TITLE":"Optimisation mobile","WHY2_DESC":"Envoyez les utilisateurs mobiles vers votre \u003Cstrong>app store\u003C/strong> (iOS ou Android) et les desktop vers votre site web.","WHY3_TITLE":"Campagnes multilingues","WHY3_DESC":"Un seul lien pour toutes vos audiences : chaque visiteur est redirigé vers la \u003Cstrong>version dans sa langue\u003C/strong>.","WHY4_TITLE":"Marketing contextuel","WHY4_DESC":"Adaptez la destination selon l'heure, le jour de la semaine ou la période pour des campagnes temporelles.","WHY5_TITLE":"Attribution avancée","WHY5_DESC":"Redirigez différemment les visiteurs venant des réseaux sociaux, des moteurs de recherche ou d'un accès direct.","WHY6_TITLE":"A/B Testing intégré","WHY6_DESC":"Combinez le Smart Routing avec le mode \u003Cstrong>A/B Testing\u003C/strong> pour tester des variantes de pages avec répartition du trafic pondérée.","CASES_TITLE":"Cas d'usage","CASE1_TITLE":"Internationalisation","CASE1_DESC":"Un QR Code unique sur votre packaging qui redirige automatiquement vers le site dans la langue du pays de l'acheteur.","CASE2_TITLE":"App mobile","CASE2_DESC":"Un seul lien « Télécharger l'app » qui détecte automatiquement iOS/Android et redirige vers le bon store.","CASE3_TITLE":"Campagnes contextuelles","CASE3_DESC":"Affichez une landing page différente le week-end vs la semaine, ou selon l'heure de la journée.","CASE4_TITLE":"Audiences spécifiques","CASE4_DESC":"Redirigez les visiteurs venant d'un réseau social vers une page spéciale « followers » avec une offre dédiée.","HOW_TITLE":"Comment configurer le Smart Routing ?","STEP1_TITLE":"1. Créez un lien court","STEP1_DESC":"Connectez-vous à \u003Ca href='https://hou.la'>hou.la\u003C/a> et créez un lien court ou ouvrez un lien existant.","STEP2_TITLE":"2. Activez le Smart Routing","STEP2_DESC":"Dans les options avancées, activez le \u003Cstrong>Smart Routing\u003C/strong> pour afficher l'éditeur de règles.","STEP3_TITLE":"3. Ajoutez des règles","STEP3_INTRO":"Cliquez sur « Ajouter une règle » et configurez :","STEP3_LI1":"\u003Cstrong>URL de destination\u003C/strong>: L'URL vers laquelle rediriger quand la règle est satisfaite.","STEP3_LI2":"\u003Cstrong>Conditions\u003C/strong>: Un ou plusieurs critères (pays, appareil, langue, etc.).","STEP3_LI3":"\u003Cstrong>Priorité\u003C/strong>: L'ordre dans lequel les règles sont évaluées.","STEP4_TITLE":"4. Définissez les conditions","STEP4_DESC":"Ajoutez une ou plusieurs \u003Cstrong>conditions logiques\u003C/strong> pour chaque règle. Les conditions d'une même règle fonctionnent en ET logique.","STEP5_TITLE":"5. Testez et enregistrez","STEP5_DESC":"Enregistrez vos règles. Les visiteurs seront automatiquement redirigés selon vos conditions, par ordre de priorité.","AB_SECTION_TITLE":"A/B Testing intégré","AB_SECTION_DESC":"Le Smart Routing intègre un \u003Cstrong>mode A/B Testing\u003C/strong> qui vous permet de répartir le trafic entre plusieurs variantes de pages. ","AB_SECTION_LINK":"En savoir plus sur l'A/B Testing","AB_CARD1_TITLE":"Statistiques par variante","AB_CARD1_DESC":"Suivez les performances de chaque variante (clics, taux) directement depuis votre tableau de bord.","AB_CARD2_TITLE":"Poids personnalisés","AB_CARD2_DESC":"Répartissez le trafic comme vous le souhaitez : 50/50, 70/30, ou toute autre combinaison.","CONDITIONS_TITLE":"Les 13 types de conditions disponibles","TBL_HEADER_CONDITION":"Condition","TBL_HEADER_DESCRIPTION":"Description","TBL_HEADER_EXAMPLE":"Exemple","COND_COUNTRY":"Pays","COND_COUNTRY_DESC":"Redirige selon le pays du visiteur (code ISO).","COND_COUNTRY_EX":"FR → site français, US → site anglais","COND_DEVICE":"Appareil","COND_DEVICE_DESC":"Détecte mobile, desktop ou tablette.","COND_DEVICE_EX":"Mobile → app store, Desktop → site web","COND_LANG":"Langue","COND_LANG_DESC":"Langue préférée du navigateur.","COND_LANG_EX":"fr → page FR, en → page EN","COND_BROWSER":"Navigateur","COND_BROWSER_DESC":"Chrome, Firefox, Safari, Edge...","COND_BROWSER_EX":"Safari → page optimisée iOS","COND_OS":"Système d'exploitation","COND_OS_DESC":"Windows, macOS, iOS, Android, Linux...","COND_OS_EX":"iOS → App Store, Android → Play Store","COND_FIRST_VISIT":"Première visite","COND_FIRST_VISIT_DESC":"Détecte si c'est la première visite ou un retour.","COND_FIRST_VISIT_EX":"1ère visite → page d'accueil, retour → dashboard","COND_CONTINENT":"Continent","COND_CONTINENT_DESC":"Redirige selon le continent (Europe, Amérique, Asie...).","COND_CONTINENT_EX":"EU → serveur Europe, US → serveur Amérique","COND_SOCIAL":"Réseau social","COND_SOCIAL_DESC":"Détecte le réseau social d'origine (referer).","COND_SOCIAL_EX":"Instagram → landing followers","COND_REFERRER":"Referrer","COND_REFERRER_DESC":"URL ou domaine source du visiteur.","COND_REFERRER_EX":"google.com → page SEO, direct → page classique","COND_DAY":"Jour de la semaine","COND_DAY_DESC":"Redirige selon le jour (lundi à dimanche).","COND_DAY_EX":"Weekend → offre spéciale","COND_HOUR":"Heure de la journée","COND_HOUR_DESC":"Redirige selon la tranche horaire.","COND_HOUR_EX":"12h-14h → offre déjeuner","COND_DATE_RANGE":"Plage de dates","COND_DATE_RANGE_DESC":"Active la règle sur une période donnée.","COND_DATE_RANGE_EX":"Black Friday → page promo 3 jours","COND_BOT":"Bot / Crawler","COND_BOT_DESC":"Détecte les robots (Googlebot, Bingbot...).","COND_BOT_EX":"Bot → page SEO-friendly","COMPARE_TITLE":"Comparatif : Hou.la vs la concurrence","CMP_HEADER_FEATURE":"Fonctionnalité","CMP_SMART_ROUTING":"Smart Routing","CMP_GEO":"Redirection géo","CMP_DEVICE":"Redirection a
89ppareil","CMP_LANG":"Redirection langue","CMP_FIRST_VISIT":"Première visite","CMP_MULTI_CONDITIONS":"Multi-conditions","CMP_AB_TESTING":"A/B Testing intégré","CMP_FREE":"Gratuit","CMP_LIMITED":"Limité","FREE_TITLE":"Disponible gratuitement","FREE_DESC":"Le Smart Routing est disponible gratuitement sur Hou.la, avec toutes les conditions.","CTA_BUTTON":"Créer un lien Smart Routing","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"AB_TESTING":{"GA_TITLE":"Fonctionnalité : A/B Testing","HOWTO_NAME":"Comment créer un A/B test avec Hou.la","HOWTO_DESC":"Guide étape par étape pour configurer un A/B test avec Hou.la.","STEP1_NAME":"Créer un lien court","STEP1_TEXT":"Rendez-vous sur Hou.la et créez un lien court classique.","STEP2_NAME":"Activer le Smart Routing","STEP2_TEXT":"Activez le routage intelligent dans les options du lien.","STEP3_NAME":"Sélectionner le mode A/B Testing","STEP3_TEXT":"Cliquez sur \"A/B Testing\" dans le sélecteur de mode.","STEP4_NAME":"Ajouter vos variantes","STEP4_TEXT":"Ajoutez 2 ou plusieurs variantes avec leurs URLs de destination et répartissez les poids (%).","STEP5_NAME":"Enregistrer et analyser","STEP5_TEXT":"Enregistrez les variantes et suivez les résultats dans les statistiques.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"A/B Testing","TITLE_HIGHLIGHT":"A/B Testing","TITLE_SUFFIX":"Testez et optimisez vos pages de destination","INTRO":"Répartissez le trafic de votre lien court entre \u003Cstrong>plusieurs variantes\u003C/strong> de pages avec des poids personnalisés. Analysez les résultats en temps réel. \u
89003Cstrong>Disponible gratuitement.\u003C/strong>","FREE_BADGE":"✅ Inclus gratuitement","FREE_DESC":"L'A/B Testing avec \u003Cstrong>poids personnalisés et jusqu'à 5 variantes\u003C/strong> est disponible gratuitement sur Hou.la.","HOW_TITLE":"Comment fonctionne l'A/B Testing ?","HOW_DESC":"L'A/B Testing de Hou.la est intégré au \u003Cstrong>Smart Routing\u003C/strong>. Il répartit aléatoirement les visiteurs entre vos variantes :","HOW_LI1":"\u003Cstrong>Créez vos variantes\u003C/strong>: Ajoutez 2 à 5 URLs de destination différentes.","HOW_LI2":"\u003Cstrong>Définissez les poids\u003C/strong>: Répartissez le trafic (ex: 50/50, 70/30, etc.).","HOW_LI3":"\u003Cstrong>Distribution aléatoire\u003C/strong>, Chaque visiteur est redirigé aléatoirement selon les poids définis.","HOW_LI4":"\u003Cstrong>Statistiques par variante\u003C/strong>, Suivez les clics sur chaque variante depuis votre dashboard.","WHY_TITLE":"Pourquoi faire de l'A/B Testing ?","WHY1_TITLE":"Optimiser les conversions","WHY1_DESC":"Testez différentes landing pages pour identifier celle qui convertit le mieux. Laissez les données guider vos décisions.","WHY2_TITLE":"Réduire les risques","WHY2_DESC":"Au lieu de tout changer d'un coup, testez progressivement avec une portion du trafic avant de déployer à 100%.","WHY3_TITLE":"Comprendre votre audience","WHY3_DESC":"Apprenez ce qui fonctionne le mieux pour vos visiteurs : design, message, offre, call-to-action...","WHY4_TITLE":"Itérer rapidement","WHY4_DESC":"Pas besoin d'outils complexes ou payants. Créez un test en quelques clics depuis votre studio Hou.la.","CASES_TITLE":"Cas d'usage","CASE1_TITLE":"Landing pages e-commerce","CASE1_DESC":"Testez deux versions d'une page produit pour voir laquelle génère le plus de ventes.","CASE2_TITLE":"Campagnes publicitaires","CASE2_DESC":"Comparez différentes pages de destination pour vos ads Google ou Facebook et optimisez votre coût par conversion.","CASE3_TITLE":"Inscription / Onboarding","CASE3_DESC":"Testez différents formulaires d'inscription pour maximiser le taux de conversion.","CASE4_TITLE":"Emailing","CASE4_DESC":"Utilisez un lien A/B dans vos newsletters pour tester différentes offres ou messages.","TECH_TITLE":"Détails techniques","TECH_HEADER_ASPECT":"Aspect technique","TECH_HEADER_DETAIL":"Détail","TECH_ALGO":"Algorithme de répartition","TECH_ALGO_DESC":"Distribution aléatoire pondérée (weighted random) basée sur les poids définis par l'utilisateur.","TECH_WEIGHTS":"Poids personnalisés","TECH_WEIGHTS_DESC":"Chaque variante a un poids en pourcentage. Le total doit faire 100%.","TECH_MAX_VARIANTS":"Nombre max de variantes","TECH_MAX_VARIANTS_DESC":"Jusqu'à 5 variantes par test A/B.","TECH_STATS":"Statistiques","TECH_STATS_DESC":"Clics par variante en temps réel, accessibles depuis le dashboard et l'API.","TECH_COMBO":"Compatibilité","TECH_COMBO_DESC":"Compatible avec les variables UTM, QR Codes, et tous les autres paramètres de lien.","TECH_API":"API REST","TECH_API_DESC":"Gestion complète des tests A/B via l'API : création, modification, consultation des résultats.","COMPARE_TITLE":"Comparatif : Hou.la vs la concurrence","CMP_HEADER_FEATURE":"Fonctionnalité","CMP_AB_TESTING":"A/B Testing","CMP_AB_FREE":"Gratuit","CMP_AB_ENTERPRISE":"Entreprise","CMP_AB_NO":"Non","CMP_AB_PAID":"Payant","CMP_VARIANTS":"Jusqu'à 5 variantes","CMP_CUSTOM_WEIGHTS":"Poids personnalisés","CMP_YES":"Oui","CMP_5050_ONLY":"50/50 uniquement","CMP_REALTIME_STATS":"Stats temps réel","CMP_API_INCLUDED":"API incluse","API_TITLE":"Intégration API","API_DESC":"L'A/B Testing est entièrement pilotable via l'\u003Cstrong>API REST Hou.la\u003C/strong>. Créez vos tests programmatiquement, récupérez les statistiques par variante, et automatisez vos workflows. \u003Ca href='/documentation-api'>Consulter la documentation API\u003C/a>.","CTA_BUTTON":"Créer un test A/B gratuit"},"PASSWORD":{"GA_TITLE":"Fonctionnalité : Liens protégés par mot de passe","HOWTO_NAME":"Comment créer un lien protégé par mot de passe avec Hou.la","HOWTO_DESC":"Guide étape par étape pour créer un lien court sécurisé par mot de passe avec Hou.la.","STEP1_NAME":"Accéder à Hou.la","STEP1_TEXT":"Rendez-vous sur la page d'accueil de Hou.la à l'adresse https://hou.la","STEP2_NAME":"Coller votre URL","STEP2_TEXT":"Collez l'URL que vous souhaitez protéger dans le champ de texte prévu à cet effet.","STEP3_NAME":"Activer la protection par mot de passe","STEP3_TEXT":"Activez l'option \"Lien protégé par mot de passe\" dans le formulaire de création.","STEP4_NAME":"Définir un mot de passe","STEP4_TEXT":"Saisissez le mot de passe que les visiteurs devront entrer pour accéder au contenu.","STEP5_NAME":"Générer le lien","STEP5_TEXT":"Cliquez sur \"Générer\" pour créer votre lien protégé. Seuls les visiteurs connaissant le mot de passe pourront y accéder.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Liens protégés"},"EPHEMERAL":{"GA_TITLE":"Fonctionnalité : Liens éphémères","HOWTO_NAME":"Comment créer un lien éphémère avec Hou.la","HOWTO_DESC":"Guide étape par étape pour créer un lien court temporaire qui s'auto-détruit après expiration.","STEP1_NAME":"Accéder à Hou.la","STEP1_TEXT":"Rendez-vous sur la page d'accueil de Hou.la à l'adresse https://hou.la","STEP2_NAME":"Coller votre URL","STEP2_TEXT":"Collez l'URL que vous souhaitez partager temporairement dans le champ de texte.","STEP3_NAME":"Activer le mode éphémère","STEP3_TEXT":"Activez l'option \"Lien éphémère\" et choisissez une durée : 1h, 6h, 12h, 24h ou 48h.","STEP4_NAME":"Générer le lien","STEP4_TEXT":"Cliquez sur \"Générer\" pour créer votre lien éphémère. Il expirera automatiquement à la fin de la durée choisie.","STEP5_NAME":"Partager","STEP5_TEXT":"Partagez votre lien. Une fois expiré, la clé sera recyclée et le lien cessera de fonctionner.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Liens éphémères","TITLE_HIGHLIGHT":"Liens éphémères","TITLE_SUFFIX":"Liens courts auto-destructibles","INTRO":"Créez des \u003Cstrong>liens courts temporaires\u003C/strong> qui s'auto-détruisent automatiquement après expiration. Choisissez une durée de \u003Cstrong>1h, 6h, 12h, 24h ou 48h\u003C/strong>. Les clés sont recyclées pour rester ultra-courtes.","EXCLUSIVE_BADGE":"🔒 Inclus gratuitement","EXCLUSIVE_DESC":"Les liens éphémères avec \u003Cstrong>recyclage de clés\u003C/strong> et suppression automatique des données sont inclus gratuitement sur Hou.la.","WHAT_TITLE":"Qu'est-ce qu'un lien éphémère ?","WHAT_DESC":"Un lien éphémère est un \u003Cstrong>lien court temporaire\u003C/strong> qui cesse de fonctionner automatiquement après une durée définie. Contrairement à un lien classique :","WHAT_LI1":"\u003Cstrong>Auto-destruction\u003C/strong>: Le lien expire et cesse de rediriger après la durée choisie.","WHAT_LI2":"\u003Cstrong>Recyclage de clés\u003C/strong>: La clé courte est libérée et pourra être réutilisée, ce qui permet de garder des clés ultra-courtes (3-4 c
89aractères).","WHAT_LI3":"\u003Cstrong>Suppression complète\u003C/strong>: Toutes les données associées (statistiques, métadonnées) sont supprimées après expiration.","WHAT_MORE":"C'est la solution idéale pour partager du contenu \u003Cstrong>à durée limitée\u003C/strong> en toute sécurité.","DURATIONS_TITLE":"5 durées disponibles","DURATION_1H":"Flash – 1 heure","DURATION_6H":"Court – 6 heures","DURATION_12H":"Demi-journée – 12h","DURATION_24H":"Journée – 24 heures","DURATION_48H":"Étendu – 48 heures","WHY_TITLE":"Pourquoi utiliser des liens éphémères ?","WHY1_TITLE":"Confidentialité renforcée","WHY1_DESC":"Partagez des informations sensibles (mots de passe temporaires, accès privés) avec la certitude que le lien disparaîtra automatiquement après \u003Cstrong>expiration\u003C/strong>.","WHY2_TITLE":"Promotions à durée limitée","WHY2_DESC":"Créez des offres flash dont le lien expire en même temps que la promotion. Plus de risque qu'un client tombe sur une offre périmée.","WHY3_TITLE":"Événements et inscriptions","WHY3_DESC":"Partagez un lien d'inscription ou d'accès qui ne sera plus valide une fois l'événement passé.","WHY4_TITLE":"Clés ultra-courtes","WHY4_DESC":"Grâce au \u003Cstrong>recyclage des clés expirées\u003C/strong>, Hou.la maintient un pool de clés courtes (3-4 caractères) constamment disponibles. Plus le système est utilisé, plus les clés restent courtes.","WHY5_TITLE":"Conformité RGPD","WHY5_DESC":"La suppression automatique des données après expiration garantit le respect du principe de minimisation des données imposé par le RGPD.","CASES_TITLE":"Cas d'usage","CASE1_TITLE":"Ventes flash","CASE1_DESC":"Lien promotionnel qui expire automatiquement à la fin de l'offre. Aucune maintenance nécessaire.","CASE2_TITLE":"Partage sécurisé","CASE2_DESC":"Envoyez un lien vers un fichier confidentiel. Il disparaîtra après consultation dans le délai choisi.","CASE3_TITLE":"Invitations événementielles","CASE3_DESC":"Lien d'inscription qui se désactive automatiquement après l'événement, sans intervention manuelle.","CASE4_TITLE":"Réseaux sociaux","CASE4_DESC":"Partagez du contenu exclusif dont l'accès est limité dans le temps pour créer un sentiment d'urgence.","HOW_TITLE":"Comment créer un lien éphémère ?","STEP1_TITLE":"1. Collez votre URL","STEP1_DESC":"Rendez-vous sur \u003Ca href='https://hou.la'>hou.la\u003C/a> et collez l'URL de destination dans le champ prévu.","STEP2_TITLE":"2. Activez le mode éphémère","STEP2_DESC":"Activez l'option \u003Cstrong>« Lien éphémère »\u003C/strong> dans les paramètres avancés du formulaire de création.","STEP3_TITLE":"3. Choisissez la durée","STEP3_DESC":"Sélectionnez la durée d'expiration parmi les \u003Cstrong>5 options disponibles\u003C/strong> : 1h, 6h, 12h, 24h ou 48h.","STEP4_TITLE":"4. Générez et partagez","STEP4_DESC":"Cliquez sur \u003Cstrong>« Générer »\u003C/strong>. Votre lien éphémère est prêt. Il expirera automatiquement à la fin de la durée choisie.","RECYCLE_TITLE":"Le recyclage de clés : comment ça marche ?","RECYCLE_DESC":"Le \u003Cstrong>recyclage de clés\u003C/strong> est un mécanisme unique à Hou.la qui permet de réutiliser les clés courtes des liens expirés :","RECYCLE_LI1":"\u003Cstrong>Expiration\u003C/strong>: Le lien éphémère expire et cesse de rediriger.","RECYCLE_LI2":"\u003Cstrong>Purge\u003C/strong>: Après un délai de sécurité, toutes les données sont supprimées (stats, métadonnées).","RECYCLE_LI3":"\u003Cstrong>Recyclage\u003C/strong>: La clé courte (ex: \u003Ccode>hou.la/abc\u003C/code>) redevient disponible pour un futur lien.","COMPARE_TITLE":"Comparatif : Hou.la vs la concurrence","CMP_HEADER_FEATURE":"Fonctionnalité","CMP_EPHEMERAL_LINKS":"Liens éphémères","CMP_KEY_RECYCLING":"Recyclage de clés","CMP_DURATION_CHOICE":"Choix de la durée","CMP_5_DURATIONS":"5 durées","CMP_AUTO_DELETE":"Suppression automatique","CMP_SHORT_KEYS":"Clés ultra-courtes","CMP_FREE":"Gratuit","CMP_LIMITED":"Limité","FREE_TITLE":"Disponible gratuitement","FREE_DESC":"Les liens éphémères sont disponibles gratuitement sur Hou.la, sans limite de création.","CTA_BUTTON":"Créer un lien éphémère","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>
89Contactez-nous\u003C/a>"},"WEBHOOKS":{"GA_TITLE":"Fonctionnalité - Webhooks","HOWTO_NAME":"Configurer un webhook hou.la","HOWTO_DESC":"Guide étape par étape pour configurer un webhook sur hou.la et recevoir des notifications en temps réel.","SETUP_STEP1_TITLE":"Accéder au Studio","SETUP_STEP1_DESC":"Connectez-vous à votre compte hou.la et rendez-vous dans la section \"Webhooks\" du Studio.","SETUP_STEP2_TITLE":"Créer un webhook","SETUP_STEP2_DESC":"Cliquez sur \"Nouveau webhook\", donnez-lui un nom descriptif et entrez l'URL HTTPS de votre endpoint.","SETUP_STEP3_TITLE":"Choisir les événements","SETUP_STEP3_DESC":"Sélectionnez les événements qui vous intéressent parmi les 10 types disponibles.","SETUP_STEP4_TITLE":"Configurer la sécurité","SETUP_STEP4_DESC":"Copiez le secret HMAC-SHA256 généré automatiquement et configurez-le sur votre serveur pour vérifier les signatures.","SETUP_STEP5_TITLE":"Tester et activer","SETUP_STEP5_DESC":"Utilisez le bouton \"Tester\" pour envoyer un événement de test et vérifier que votre serveur répond correctement.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Webhooks","TITLE_HIGHLIGHT":"Webhooks","TITLE_SUFFIX":"Recevez vos événements en temps réel","EXCLUSIVE_BADGE":"🔒 Inclus gratuitement","EXCLUSIVE_DESC":"Les webhooks avec 10 types d'événements, sécurité HMAC-SHA256 et options de conformité RGPD sont inclus gratuitement sur Hou.la.","INTRO":"Recevez des notifications HTTP en temps réel quand un événement se produit sur vos liens : clic, création, mise à jour, expiration et bien plus. Conformité RGPD incluse.","EVENTS_TITLE":"10 types d'événements","EVT_CLICKED":"Un visiteur a cliqué sur votre lien court.","EVT_CREATED":"Un nouveau lien a été créé dans votre compte.","EVT_UPDATED":"Un lien existant a été modifié.","EVT_DELETED":"Un lien a été supprimé.","EVT_HEALTH":"Le statut de santé d'un lien a changé (healthy, dead, warning).","EVT_EXPIRED":"Un lien éphémère a expiré.","EVT_PASSWORD":"Une tentative de saisie de mot de passe a été effectuée.","EVT_SAFETY":"Le statut de sécurité d'un lien a changé (safe, unsafe).","EVT_PROFILE_VISITED":"Votre page Link in Bio a été visitée.","EVT_PROFILE_CLICKED":"Un lien de votre page Link in Bio a été cliqué.","PAYLOAD_TITLE":"Payload riche","PAYLOAD_DESC":"Chaque webhook contient des données détaillées sur l'événement, incluant les informations du visiteur :","PAYLOAD1_TITLE":"Géolocalisation","PAYLOAD1_DESC":"Pays, continent et coordonnées approximatives du visiteur.","PAYLOAD2_TITLE":"Appareil et navigateur","PAYLOAD2_DESC":"Type d'appareil (mobile/desktop), navigateur, système d'exploitation et user-agent.","PAYLOAD3_TITLE":"Informations du lien","PAYLOAD3_DESC":"URL courte, URL de destination, clé, tags et métadonnées du lien concerné.","SECURITY_TITLE":"Sécurité","SEC_ROW1_LABEL":"Signature HMAC-SHA256","SEC_ROW1_DESC":"Chaque requête est signée avec un secret HMAC-SHA256 unique. Vérifiez l'en-tête \u003Ccode>X-Houla-Signature\u003C/code> pour authentifier l'origine.","SEC_ROW2_LABEL":"HTTPS obligatoire","SEC_ROW2_DESC":"Les webhooks ne sont envoyés qu'à des endpoints HTTPS pour garantir le chiffrement des données en transit.","SEC_ROW3_LABEL":"Retry automatique","SEC_ROW3_DESC":"En cas d'échec de livraison, Hou.la réessaie automatiquement jusqu'à 5 fois avec un backoff exponentiel.","SEC_ROW4_LABEL":"Timeout configurable","SEC_ROW4_DESC":"La connexion expire après 10 secondes. Votre endpoint doit répondre avec un code 2xx.","SEC_ROW5_LABEL":"Désactivation automatique","SEC_ROW5_DESC":"Après 10 échecs consécutifs, le webhook est automatiquement désactivé pour éviter les requêtes inutiles.","GDPR_TITLE":"Conformité RGPD","GDPR_BADGE":"RGPD","GDPR_DESC":"Hou.la vous donne le contrôle total sur les données transmises via webhooks :","GDPR_LI1":"\u003Cstrong>Anonymisation IP\u003C/strong>: Optez pour l'anonymisation des adresses IP dans les payloads.","GDPR_LI2":"\u003Cstrong>Exclusion de géo\u003C/strong>: Désactivez la géolocalisation dans les données transmises.","GDPR_LI3":"\u003Cstrong>Exclusion du user-agent\u003C/strong>, Supprimez le user-agent des payloads pour limiter le tracking.","ADVANCED_TITLE":"Options avancées","ADV1_TITLE":"Batching intelligent","ADV1_DESC":"Regroupez les événements par lots pour réduire le nombre de requêtes HTTP et optimiser la charge serveur.","ADV2_TITLE":"Sampling","ADV2_DESC":"Activez l'échantillonnage pour ne recevoir qu'un pourcentage des événements sur les liens à fort trafic.","ADV3_TITLE":"Filtrage par lien","ADV3_DESC":"Limitez les notifications aux liens spécifiques qui vous intéressent au lieu de recevoir tous les événements.","ADV4_TITLE":"Filtrage par tag","ADV4_DESC":"Filtrez les webhooks par tag pour ne recevoir que les événements des liens d'une campagne spécifique.","COMPARE_TITLE":"Comparatif : Hou.la vs la concurrence","CMP_HEADER":"Fonctionnalité","CMP_ROW1":"Webhooks disponibles","CMP_ROW2":"Types d'événements","CMP_ROW3":"HMAC-SHA256","CMP_BATCHING":"Batching intelligent","CMP_ROW5":"Conformité RGPD","CMP_ROW6":"Filtrage par tag","CMP_HMAC":"Signature HMAC","SETUP_TITLE":"Comment configurer un webhook ?","CTA_BOLD":"Prêt à intégrer les webhooks ?","CTA_LINK":"Connectez-vous à votre compte","CTA_SUFFIX":" et cr
89éez votre premier webhook en quelques clics."},"SHORT_LINK":{"TITLE_HIGHLIGHT":"Raccourcisseur d'URL","TITLE_SUFFIX":"Créez des liens courts en un clic","INTRO":"Transformez vos \u003Cstrong>URLs longues\u003C/strong> en \u003Cstrong>liens courts\u003C/strong> personnalisables. Idéal pour le partage sur les réseaux sociaux, le marketing et le suivi de vos campagnes. \u003Cstrong>Entièrement gratuit.\u003C/strong>","BADGE_TITLE":"Gratuit & illimité","BADGE_DESC":"Créez autant de liens courts que vous voulez, sans inscription, sans limite, sans publicité.","WHY_TITLE":"Pourquoi raccourcir vos URLs ?","WHY_INTRO":"Un lien court est bien plus qu'une adresse plus courte. C'est un outil marketing puissant qui améliore le partage, le suivi et la confiance.","WHY1_TITLE":"Simplification du partage","WHY1_DESC":"Un lien court est plus facile à partager par SMS, email, sur les réseaux sociaux ou imprimé sur un support physique. Fini les URLs interminables qui cassent la mise en forme.","WHY2_TITLE":"Suivi des performances","WHY2_DESC":"Chaque lien court Hou.la est accompagné de statistiques détaillées : nombre de clics, pays d'origine, appareils utilisés, navigateurs et bien plus encore.","WHY3_TITLE":"Personnalisation de la clé","WHY3_DESC":"Choisissez une clé personnalisée pour rendre vos liens mémorables et professionnels. Par exemple : hou.la/mon-offre au lieu d'une suite de caractères aléatoires.","WHY4_TITLE":"Campagnes marketing","WHY4_DESC":"Intégrez vos variables UTM directement dans le raccourcisseur pour mesurer précisément l'impact de vos campagnes Google Ads, Facebook Ads ou emailing.","HOW_TITLE":"Comment raccourcir un lien avec Hou.la ?","STEP1_TITLE":"1. Collez votre URL","STEP1_LINK":"Rendez-vous sur Hou.la","STEP1_SUFFIX":" et collez l'URL longue que vous souhaitez raccourcir dans le champ prévu.","STEP2_TITLE":"2. Personnalisez votre lien (optionnel)","STEP2_DESC":"Choisissez une clé personnalisée, ajoutez des variables UTM ou activez des options avancées comme la protection par mot de passe ou le lien éphémère.","STEP3_TITLE":"3. Générez votre lien court","STEP3_DESC":"Cliquez sur « Générer » pour obtenir instantanément votre lien court. Il est prêt à être partagé !","STEP4_TITLE":"4. Partagez et suivez","STEP4_DESC":"Partagez votre lien sur vos canaux préférés et suivez les performances en temps réel depuis votre tableau de bord.","STEP5_TITLE":"5. Gérez vos liens","STEP5_DESC":"Retrouvez tous vos liens dans votre studio : modifiez l'URL de destination, consultez les statistiques de clics, ou supprimez un lien à tout moment.","SECURITY_TITLE":"Sécurité et fiabilité","SECURITY_DESC":"Tous les liens Hou.la sont vérifiés automatiquement via Google Safe Browsing pour protéger vos visiteurs des sites malveillants. Vos données sont hébergées en France, conformément au RGPD.","CTA_TITLE":"Prêt à raccourcir vos URLs ?","CTA_DESC1":"Créez votre premier lien court gratuitement, sans inscription obligatoire.","CTA_DESC2":"Inscrivez-vous pour débloquer les statistiques avancées, les clés personnalisées et bien d'autres fonctionnalités.","CTA_BUTTON":"Raccourcir un lien maintenant","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"QRCODE":{"TITLE_HIGHLIGHT":"Générateur de QR Codes","TITLE_SUFFIX":"Créez des QR Codes personnalisés","INTRO":"Générez des \u003Cstrong>QR Codes\u003C/strong> pour vos liens courts Hou.la. Personnalisez les couleurs, ajoutez votre logo et téléchargez en \u003Cstrong>PNG ou SVG\u003C/strong>
89. Disponible gratuitement.","BADGE_TITLE":"QR Codes inclus avec chaque lien","BADGE_DESC":"Chaque lien court Hou.la génère automatiquement un QR Code téléchargeable et personnalisable.","WHY_TITLE":"Pourquoi utiliser des QR Codes ?","WHY1_TITLE":"Pont entre physique et numérique","WHY1_DESC":"Un QR Code permet de diriger les utilisateurs vers une page web simplement en scannant avec leur smartphone. Idéal pour les supports imprimés.","WHY2_TITLE":"Suivi des performances","WHY2_DESC":"Chaque scan est comptabilisé comme un clic sur votre lien court. Suivez les statistiques en temps réel depuis votre tableau de bord.","WHY3_TITLE":"Personnalisation avancée","WHY3_DESC":"Personnalisez les couleurs, la forme des modules, le style des yeux et ajoutez votre logo au centre pour un QR Code à votre image.","WHY4_TITLE":"Templates réutilisables","WHY4_DESC":"Sauvegardez vos designs de QR Codes en templates pour les réutiliser sur tous vos liens. Gain de temps garanti.","WHY5_TITLE":"Export haute qualité","WHY5_DESC":"Téléchargez vos QR Codes en PNG (pour le web) ou SVG (pour l'impression) en haute résolution, prêts à être intégrés partout.","WHY6_TITLE":"URL toujours modifiable","WHY6_DESC":"Puisque le QR Code pointe vers votre lien court Hou.la, vous pouvez modifier la destination à tout moment sans réimprimer le QR Code.","HOW_TITLE":"Comment créer un QR Code avec Hou.la ?","STEP1_TITLE":"1. Créez un lien court","STEP1_LINK":"Rendez-vous sur Hou.la","STEP1_SUFFIX":" et créez un lien court pour l'URL que vous souhaitez convertir en QR Code.","STEP2_TITLE":"2. Ouvrez le générateur de QR Code","STEP2_DESC":"Depuis votre studio, cliquez sur l'icône QR Code à côté de votre lien pour ouvrir l'éditeur de QR Code.","STEP3_TITLE":"3. Personnalisez le design","STEP3_DESC":"Modifiez les couleurs, la forme des modules, le style des yeux et ajoutez éventuellement votre logo au centre.","STEP4_TITLE":"4. Sauvegardez un template (optionnel)","STEP4_DESC":"Enregistrez votre design comme template pour le réutiliser facilement sur vos futurs liens.","STEP5_TITLE":"5. Téléchargez votre QR Code","STEP5_DESC":"Exportez votre QR Code en PNG ou SVG et intégrez-le dans vos supports marketing imprimés ou numériques.","STEP6_TITLE":"6. Suivez les performances","STEP6_DESC":"Chaque scan du QR Code est comptabilisé. Consultez les statistiques détaillées depuis votre tableau de bord Hou.la.","SECURITY_TITLE":"Sécurité et fiabilité","SECURITY_DESC":"Vos QR Codes pointent vers des liens vérifiés par Google Safe Browsing. Vos données sont hébergées en France, conformément au RGPD.","CTA_TITLE":"Prêt à créer vos QR Codes ?","CTA_DESC1":"Générez des QR Codes personnalisés gratuitement.","CTA_DESC2":"Inscrivez-vous pour sauvegarder vos templates et accéder aux statistiques détaillées.","CTA_DESC3":"Tous les QR Codes générés sont associés à vos liens courts et entièrement traçables.","CTA_BUTTON":"Créer un QR Code gratuit","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"UTM":{"TITLE_HIGHLIGHT":"Campagnes UTM","TITLE_SUFFIX":"Suivez vos campagnes marketing avec précision","INTRO":"Ajoutez automatiquement des \u003Cstrong>variables UTM\u003C/strong> à vos liens courts pour mesurer l'efficacité de vos campagnes \u003Cstrong>Google Ads, Facebook Ads, emailing\u003C/strong>
89 et réseaux sociaux. Disponible gratuitement.","BADGE_TITLE":"Générateur UTM intégré","BADGE_DESC":"Hou.la intègre un générateur de paramètres UTM directement dans le formulaire de création de liens.","WHY_TITLE":"Pourquoi utiliser les variables UTM ?","WHY_INTRO":"Les paramètres UTM permettent d'identifier précisément la source, le support et la campagne de chaque visite dans Google Analytics.","WHY1_TITLE":"Mesure précise du ROI","WHY1_DESC":"Identifiez exactement quelles campagnes génèrent du trafic et des conversions. Fini les approximations, chaque clic est traçable.","WHY2_TITLE":"Optimisation des budgets","WHY2_DESC":"En sachant quels canaux performent le mieux, vous pouvez réallouer vos budgets publicitaires vers les sources les plus rentables.","WHY3_TITLE":"Comparaison multicanal","WHY3_DESC":"Comparez les performances de vos différents canaux marketing (email, social, ads) depuis une seule interface dans Google Analytics.","WHY4_TITLE":"Intégration Google Analytics","WHY4_DESC":"Les variables UTM sont automatiquement reconnues par Google Analytics 4. Retrouvez vos campagnes dans les rapports d'acquisition.","HOW_TITLE":"Comment ajouter des UTM à vos liens ?","STEP1_TITLE":"1. Collez votre URL de destination","STEP1_LINK":"Rendez-vous sur Hou.la","STEP1_SUFFIX":" et collez l'URL vers laquelle vous souhaitez rediriger vos visiteurs.","STEP2_TITLE":"2. Remplissez les champs UTM","STEP2_DESC":"Complétez les paramètres UTM : source (utm_source), support (utm_medium), campagne (utm_campaign), et optionnellement le terme et le contenu.","STEP3_TITLE":"3. Générez votre lien court","STEP3_DESC":"Hou.la ajoutera automatiquement les variables UTM à l'URL de destination et générera un lien court propre.","STEP4_TITLE":"4. Partagez votre lien","STEP4_DESC":"Utilisez votre lien court UTM dans vos campagnes : newsletter, réseaux sociaux, publicités, QR Codes, etc.","STEP5_TITLE":"5. Analysez les résultats","STEP5_DESC":"Retrouvez vos données de campagne dans Google Analytics et dans les statistiques Hou.la pour une vision complète des performances.","SECURITY_TITLE":"Sécurité et conformité","SECURITY_DESC":"Les variables UTM sont ajoutées côté serveur lors de la redirection, elles n'apparaissent pas dans le lien court partagé. Toutes les données sont hébergées en France, conformément au RGPD.","CTA_TITLE":"Prêt à suivre vos campagnes ?","CTA_DESC1":"Créez des liens courts avec UTM intégrés gratuitement.","CTA_DESC2":"Inscrivez-vous pour retrouver l'historique de toutes vos campagnes dans votre tableau de bord.","CTA_BUTTON":"Créer un lien UTM maintenant","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"STATISTICS":{"TITLE_HIGHLIGHT":"Statistiques et analytics","TITLE_SUFFIX":"Suivez vos liens en temps réel","INTRO":"Suivez en temps réel les performances de vos liens courts et QR Codes : clics, pays, appareils, navigateurs, et bien plus. Disponible gratuitement.","BADGE_TIT
89LE":"Statistiques en temps réel","BADGE_DESC":"Suivez les performances de vos liens avec des tableaux de bord détaillés, actualisés en temps réel.","WHY_TITLE":"Pourquoi suivre vos statistiques ?","WHY_INTRO":"Les analytics Hou.la vous donnent une vision complète de l'engagement sur vos liens, pour optimiser vos campagnes marketing.","WHY1_TITLE":"Clics en temps réel","WHY1_DESC":"Visualisez le nombre de clics sur vos liens en temps réel, heure par heure, avec des graphiques interactifs.","WHY2_TITLE":"Géolocalisation","WHY2_DESC":"Identifiez les pays et régions d'où proviennent vos visiteurs pour adapter votre contenu et vos campagnes.","WHY3_TITLE":"Analyse des appareils","WHY3_DESC":"Détaillez la répartition entre desktop, mobile et tablette pour optimiser l'expérience utilisateur.","WHY4_TITLE":"Navigateurs et OS","WHY4_DESC":"Identifiez les navigateurs et systèmes d'exploitation utilisés par vos visiteurs pour garantir la compatibilité.","WHY5_TITLE":"Referrers et sources","WHY5_DESC":"Découvrez d'où viennent vos visiteurs : réseaux sociaux, moteurs de recherche, sites référents ou accès directs.","HOW_TITLE":"Comment consulter vos statistiques ?","STEP1_TITLE":"1. Créez un lien court","STEP1_LINK":"Rendez-vous sur Hou.la","STEP1_SUFFIX":" et créez un lien court. Les statistiques sont activées automatiquement.","STEP2_TITLE":"2. Partagez votre lien","STEP2_DESC":"Utilisez votre lien court dans vos communications : réseaux sociaux, emails, SMS, impressions, etc.","STEP3_TITLE":"3. Accédez au tableau de bord","STEP3_DESC":"Connectez-vous à votre compte et accédez au studio pour retrouver tous vos liens et leurs statistiques.","STEP4_TITLE":"4. Consultez les analytics","STEP4_DESC":"Cliquez sur un lien pour accéder à son détail : graphiques de clics, répartition géographique, appareils et navigateurs.","STEP5_TITLE":"5. Filtrez par période","STEP5_DESC":"Filtrez les statistiques par période (7 jours, 30 jours, 90 jours) pour analyser les tendances et comparer les performances.","STEP6_TITLE":"6. Exportez vos données","STEP6_DESC":"Utilisez l'API REST Hou.la pour récupérer vos données de clics et les intégrer dans vos outils d'analyse.","SECURITY_TITLE":"Confidentialité et RGPD","SECURITY_DESC":"Les statistiques Hou.la ne collectent aucune donnée personnelle identifiable. Les adresses IP sont anonymisées. Toutes les données sont hébergées en France.","CTA_TITLE":"Prêt à suivre vos performances ?","CTA_DESC1":"Créez un lien court et accédez instantanément aux statistiques détaillées.","CTA_DESC2":"Inscrivez-vous pour conserver l'historique complet de vos analytics.","CTA_BUTTON":"Créer un lien avec analytics","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"LINKINBIO":{"HERO_BADGE":"✨ Nouveau","TITLE_HIGHLIGHT":"Link in Bio","TITLE_SUFFIX":"Votre page de liens personnalisée","HERO_SUBTITLE":"Regroupez tous vos liens sur une seule page élégante et partagez-la partout. 21 thèmes, personnalisation complète, analytics détaillés. Disponible gratuitement.","WHAT_TITLE":"Qu'est-ce que le Link in Bio ?","WHAT_DESC1":"Le \u003Cstrong>Link in Bio\u003C/strong> est une page web personnalisée qui regroupe tous vos liens importants en un seul endroit. Partagez une seule URL (ex: \u003Ccode>hou.la/@votrenom\u003C/code>) dans votre bio Instagram, TikTok ou X.","WHAT_DESC2":"Avec Hou.la, créez votre page \u003Cstrong>gratuitement\u003C/strong> avec \u003Cstrong>21 thèmes\u003C/strong>, des effets spéciaux (neon, glass, gradient...), et des analytics détaillés pour chaque lien.","USECASES_TITLE":"Pour qui ?","UC1_TITLE":"Créateurs de contenu","UC1_DESC":"Centralisez vos liens YouTube, Twitch, Patreon et réseaux sociaux pour votre audience.","UC2_TITLE":"Entrepreneurs","UC2_DESC":"Présentez votre site, portfolio, boutique et liens de contact en une seule page professionnelle.","UC3_TITLE":"E-commerce","UC3_DESC":"Mettez en avant vos produits, promotions en cours et liens boutique depuis votre bio Instagram.","UC4_TITLE":"Organisateurs d'événements","UC4_DESC":"Partagez les liens d'inscription, le programme, la billetterie et les informations pratiques.","UC5_TITLE":"Artistes et musiciens","UC5_DESC":"Regroupez vos liens Spotify, Apple Music, YouTube et boutique de merchandising.","UC6_TITLE":"Entreprises","UC6_DESC":"Une page de présentation rapide avec liens vers le site, les offres d'emploi et les réseaux sociaux.","FEATURES_TITLE":"Fonctionnalités incluses","FEAT1_TITLE":"URL personnalisée","FEAT1_DESC":"Choisissez votre identifiant unique pour une URL mémorable et professionnelle.","FEAT2_TITLE":"21 thèmes","FEAT2_DESC":"Choisissez parmi 21 thèmes conçus par des designers pour un rendu professionnel immédiat.","FEAT3_TITLE":"Effets spéciaux","FEAT3_DESC":"Ajoutez des effets neon, glass, gradient, shadow ou blur pour un look unique et moderne.","FEAT4_TITLE":"Couleurs personnalisées","FEAT4_DESC":"Personnalisez les couleurs de fond, de texte et des boutons pour coller à votre identité visuelle.","FEAT5_TITLE":"Analytics par lien","FEAT5_DESC":"Suivez les clics sur chaque lien individuel pour savoir ce qui intéresse votre audience.","FEAT6_TITLE":"Liens illimités","FEAT6_DESC":"Ajoutez autant de liens que nécessaire. Aucune limite sur le nombre de liens par page.","FEAT7_TITLE":"Image de profil","FEAT7_DESC":"Ajoutez votre photo de profil et une description personnalisée en haut de votre page.","FEAT8_TITLE":"Icônes de réseaux sociaux","FEAT8_DESC":"Affichez les icônes de vos réseaux sociaux avec des liens directs vers vos profils.","HOW_TITLE":"Comment créer votre Link in Bio ?","STEP1_TITLE":"1. Créez votre compte","STEP1_DESC":"Inscrivez-vous gratuitement sur \u003Ca href='https://hou.la'>hou.la\u003C/a> si ce n'est pas déjà fait.","STEP2_TITLE":"2. Créez votre profil","STEP2_DESC":"Depuis le studio, accédez à \u003Cstrong>« Link in Bio »\u003C/strong> et créez votre profil avec votre identifiant unique.","STEP3_TITLE":"3. Personnalisez votre page","STEP3_DESC":"Choisissez un thème, personnalisez les couleurs, ajoutez votre photo de profil et votre description.","STEP4_TITLE":"4. Ajoutez vos liens","STEP4_DESC":"Ajoutez tous vos liens importants avec un titre et une URL. Réorganisez-les par glisser-déposer.","STEP5_TITLE":"5. Partagez votre page","STEP5_DESC":"Copiez votre URL (hou.la/@votrenom) et ajoutez-la dans la bio de vos réseaux sociaux.","CTA_TITLE":"Créez votre Link in Bio","CTA_DESC":"21 thèmes, personnalisation complète, analytics détaillés. Disponible gratuitement, sans pub, sans watermark.","CTA_BUTTON":"Créer ma page Link in Bio","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>
89Contactez-nous\u003C/a>"},"PASSWORD_LINK":{"TITLE_HIGHLIGHT":"Liens protégés","TITLE_SUFFIX":"Sécurisez vos URL par mot de passe","INTRO":"Protégez l'accès à vos \u003Cstrong>liens courts\u003C/strong> avec un mot de passe. Seuls les visiteurs autorisés peuvent accéder au contenu. Hashage \u003Cstrong>bcrypt\u003C/strong>, Disponible gratuitement.","NEW_BADGE":"🆕 Nouveau","NEW_DESC":"La protection par mot de passe avec \u003Cstrong>hashage bcrypt\u003C/strong> est une fonctionnalité récente de Hou.la, disponible gratuitement.","HOW_TITLE":"Comment ça fonctionne ?","HOW_DESC":"Quand un visiteur clique sur un lien protégé, il est redirigé vers une \u003Cstrong>page de vérification\u003C/strong> qui lui demande le mot de passe :","HOW_LI1":"\u003Cstrong>Saisie du mot de passe\u003C/strong>, Le visiteur entre le mot de passe sur une page sécurisée.","HOW_LI2":"\u003Cstrong>Vérification bcrypt\u003C/strong>: Le mot de passe est vérifié côté serveur avec un hashage bcrypt (le mot de passe en clair n'est jamais stocké).","HOW_LI3":"\u003Cstrong>Redirection\u003C/strong>: Si le mot de passe est correct, le visiteur est redirigé vers l'URL de destination.","HOW_LI4":"\u003Cstrong>Tentatives limitées\u003C/strong>: Après plusieurs tentatives échouées, l'accès est temporairement bloqué.","WHY_TITLE":"Pourquoi protéger vos liens ?","WHY1_TITLE":"Documents confidentiels","WHY1_DESC":"Partagez des fichiers sensibles (contrats, factures, rapports) en limitant l'accès aux seules personnes ayant le mot de passe.","WHY2_TITLE":"Contenu exclusif","WHY2_DESC":"Réservez l'accès à du contenu premium, des avant-premières ou des offres VIP à un groupe restreint.","WHY3_TITLE":"Liens temporaires sécurisés","WHY3_DESC":"Combinez protection par mot de passe et lien éphémère pour un partage doublement sécurisé.","WHY4_TITLE":"Contrôle d'accès simple","WHY4_DESC":"Pas besoin de système d'authentification complexe. Un simple mot de passe suffit pour contrôler l'accès.","WHY5_TITLE":"Conformité et audit","WHY5_DESC":"Le webhook password_attempt vous permet de tracer chaque tentative d'accès pour vos besoins d'audit.","CASES_TITLE":"Cas d'usage","CASE1_TITLE":"Partage de documents","CASE1_DESC":"Envoyez un lien protégé vers un dossier Google Drive ou Dropbox. Le mot de passe est communiqué séparément.","CASE2_TITLE":"Offres exclusives","CASE2_DESC":"Créez un lien protégé vers une page de promotion réservée à vos clients fidèles ou abonnés.","CASE3_TITLE":"Accès développeur","CASE3_DESC":"Protégez un lien vers une API de test ou un environnement de staging avec un mot de passe temporaire.","CASE4_TITLE":"Événements privés","CASE4_DESC":"Partagez le lien d'un webinaire ou d'une réunion en limitant l'accès aux invités.","STEPS_TIT
89LE":"Comment créer un lien protégé ?","STEP1_TITLE":"1. Accédez à Hou.la","STEP1_DESC":"Rendez-vous sur \u003Ca href='https://hou.la'>hou.la\u003C/a> et ouvrez le formulaire de création de lien.","STEP2_TITLE":"2. Activez la protection","STEP2_DESC":"Activez l'option \u003Cstrong>« Protéger par mot de passe »\u003C/strong> dans les paramètres avancés.","STEP3_TITLE":"3. Définissez le mot de passe","STEP3_DESC":"Saisissez le mot de passe que vos visiteurs devront entrer. Il sera hashé en \u003Cstrong>bcrypt\u003C/strong> côté serveur.","STEP4_TITLE":"4. Partagez le lien et le mot de passe","STEP4_DESC":"Partagez le lien court par un canal et le mot de passe par un \u003Cstrong>canal séparé\u003C/strong> pour une sécurité optimale.","SECURITY_TITLE":"Sécurité technique","SECURITY_DESC":"La protection par mot de passe de Hou.la est conçue avec les standards de sécurité les plus élevés :","SECURITY_LI1":"\u003Cstrong>Hashage bcrypt\u003C/strong>: Le mot de passe est hashé avec bcrypt (coût 10). Le mot de passe en clair n'est jamais stocké.","SECURITY_LI2":"\u003Cstrong>Vérification côté serveur\u003C/strong>, La comparaison se fait exclusivement côté serveur, jamais côté client.","SECURITY_LI3":"\u003Cstrong>Rate limiting\u003C/strong>: Les tentatives sont limitées pour prévenir les attaques par force brute.","SECURITY_LI4":"\u003Cstrong>Webhook d'audit\u003C/strong>: L'événement \u003Ccode>link.password_attempt\u003C/code> vous notifie de chaque tentative d'accès.","SECURITY_LI5":"\u003Cstrong>HTTPS obligatoire\u003C/strong>: Toutes les communications sont chiffrées de bout en bout.","COMBOS_TITLE":"Combinaisons possibles","COMBOS_DESC":"La protection par mot de passe se combine avec les autres fonctionnalités Hou.la :","COMBO1_TITLE":"Mot de passe + Éphémère","COMBO1_DESC":"Un lien protégé qui s'auto-détruit. Idéal pour partager un accès temporaire et sécurisé.","COMBO2_TITLE":"Mot de passe + Analytics","COMBO2_DESC":"Suivez les tentatives d'accès et les redirections réussies dans vos statistiques.","COMBO3_TITLE":"Mot de passe + QR Code","COMBO3_DESC":"Imprimez un QR Code protégé par mot de passe sur vos supports physiques.","COMPARE_TITLE":"Comparatif : Hou.la vs la concurrence","CMP_HEADER_FEATURE":"Fonctionnalité","CMP_PASSWORD_PROTECTION":"Protection par mot de passe","CMP_BCRYPT":"Hashage bcrypt","CMP_ENHANCED":"Sécurité renforcée","CMP_COMBO_EPHEMERAL":"Combo éphémère + mot de passe","CMP_FREE":"Gratuit","CMP_ENTERPRISE":"Entreprise","CMP_PAID_OPTION":"Option payante","FREE_TITLE":"Disponible gratuitement","FREE_DESC":"La protection par mot de passe est disponible gratuitement sur Hou.la. Sécurité maximale pour tous.","CTA_BUTTON":"Créer un lien protégé","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"PIXELS":{"TITLE_HIGHLIGHT":"Retargeting Pixels","TITLE_SUFFIX":"Facebook, Google Tag et TikTok intégrés","INTRO":"Ajoutez vos \u003Cstrong>pixels de retargeting\u003C/strong> (Facebook Pixel, Google Tag, TikTok Pixel) à vos liens courts. Suivez vos visiteurs et créez des \u003Cstrong>audiences de remarketing\u003C/strong>
89. Disponible gratuitement.","BADGE_TITLE":"3 plateformes supportées","BADGE_DESC":"Intégrez vos pixels Facebook, Google et TikTok directement dans vos liens courts.","WHY_TITLE":"Pourquoi utiliser les pixels de retargeting ?","WHY_INTRO":"Les pixels de retargeting vous permettent de suivre les visiteurs de vos liens courts et de créer des audiences ciblées pour vos campagnes publicitaires.","WHY1_TITLE":"Créer des audiences","WHY1_DESC":"Chaque visiteur qui clique sur votre lien est ajouté à votre audience de retargeting. Vous pouvez ensuite les cibler avec des publicités personnalisées.","WHY2_TITLE":"Optimiser les conversions","WHY2_DESC":"Suivez le parcours de vos visiteurs et mesurez les conversions pour optimiser vos campagnes publicitaires.","WHY3_TITLE":"Multi-plateformes","WHY3_DESC":"Ajoutez simultanément un pixel Facebook, un tag Google et un pixel TikTok sur le même lien court.","WHY4_TITLE":"Presets réutilisables","WHY4_DESC":"Configurez vos pixels une seule fois dans un preset et appliquez-les en un clic à tous vos futurs liens.","HOW_TITLE":"Comment ajouter des pixels à vos liens ?","STEP1_TITLE":"1. Créez un preset","STEP1_LINK":"Rendez-vous dans le studio","STEP1_SUFFIX":" et créez un preset de pixels avec vos identifiants Facebook, Google et/ou TikTok.","STEP2_TITLE":"2. Créez un lien court","STEP2_DESC":"Créez ou modifiez un lien court et sélectionnez votre preset de pixels dans les options avancées.","STEP3_TITLE":"3. Les pixels sont injectés","STEP3_DESC":"Quand un visiteur clique sur votre lien, les pixels sont automatiquement chargés sur une page d'interstitiel avant la redirection.","STEP4_TITLE":"4. Analysez vos audiences","STEP4_DESC":"Retrouvez vos audiences de retargeting dans Facebook Ads Manager, Google Ads et TikTok Ads Manager.","PLATFORMS_TITLE":"Plateformes supportées","PLATFORM_FB_TITLE":"Facebook Pixel","PLATFORM_FB_DESC":"Ajoutez votre ID de pixel Facebook pour créer des audiences de remarketing sur Facebook et Instagram Ads.","PLATFORM_GOOGLE_TITLE":"Google Tag (gtag.js)","PLATFORM_GOOGLE_DESC":"Intégrez votre Google Tag (G-, AW-, DC-, UA-) pour le suivi Google Ads, Analytics et Display.","PLATFORM_TIKTOK_TITLE":"TikTok Pixel","PLATFORM_TIKTOK_DESC":"Ajoutez votre pixel TikTok pour créer des audiences de retargeting sur TikTok Ads.","SECURITY_TITLE":"Confidentialité et sécurité","SECURITY_DESC":"Les pixels sont chargés sur une page d'interstitiel Hou.la, pas sur le site de destination. Vous gardez le contrôle total sur les données collectées. Les options RGPD sont disponibles pour chaque preset.","CTA_TITLE":"Prêt à configurer vos pixels ?","CTA_DESC1":"Créez votre premier preset de pixels et commencez à constituer vos audiences de retargeting.","CTA_DESC2":"Inscrivez-vous pour accéder à la gestion des presets de pixels.","CTA_BUTTON":"Configurer mes pixels","CONTACT":"Une question ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"},"LINK_EXPIRATION":{"TITLE_HIGHLIGHT":"Expiration programmée","TITLE_SUFFIX":"Contrôlez la durée de vie de vos liens","INTRO":"\u003Cstrong>Hou.la\u003C/strong> vous permet de programmer une \u003Cstrong>date d'expiration\u003C/strong> pour chacun de vos liens courts. Définissez précisément quand un lien doit cesser de fonctionner : à la minute près, au jour près, ou à la date de votre choix. Une fois la date atteinte, vos visiteurs sont redirigés vers une page d'expiration.","BADGE_TIT
89LE":"Expiration flexible","BADGE_DESC":"Choisissez une date d'expiration précise ou une durée de vie éphémère pour un contrôle total.","WHY_TITLE":"Pourquoi utiliser l'expiration programmée ?","WHY_INTRO":"L'expiration programmée est une fonctionnalité essentielle pour contrôler la durée de vie de vos liens et garantir que vos contenus restent pertinents.","WHY1_TITLE":"Contrôle total sur vos campagnes","WHY1_DESC":"Lancez des promotions avec une date de fin précise. Vos liens expirent automatiquement quand l'offre se termine, sans intervention manuelle. Plus besoin de supprimer manuellement vos liens obsolètes.","WHY2_TITLE":"Sécurité renforcée","WHY2_DESC":"Partagez des documents confidentiels ou des accès temporaires en toute sérénité. Le lien s'auto-désactive à la date prévue, empêchant tout accès ultérieur non autorisé.","WHY3_TITLE":"Gestion événementielle simplifiée","WHY3_DESC":"Créez des liens pour vos webinaires, conférences ou lancements de produits. Le lien redirige vers votre page tant que l'événement est d'actualité, puis expire automatiquement.","WHY4_TITLE":"Conformité et gouvernance","WHY4_DESC":"Respectez les politiques de rétention de données de votre organisation. Les liens expirent conformément à vos règles internes, garantissant une gestion propre de vos URLs.","HOW_TITLE":"Comment programmer l'expiration d'un lien ?","STEP1_TITLE":"Étape 1 : Créez votre lien","STEP1_LINK":"Créez un compte gratuit","STEP1_SUFFIX":"ou connectez-vous pour accéder au générateur de liens.","STEP2_TITLE":"Étape 2 : Définissez la date d'expiration","STEP2_DESC":"Dans les paramètres avancés du lien, sélectionnez la date et l'heure d'expiration souhaitées via le sélecteur de date. Vous pouvez choisir n'importe quelle date future, de quelques minutes à plusieurs années.","STEP3_TITLE":"Étape 3 : Partagez et laissez faire","STEP3_DESC":"Partagez votre lien normalement. À la date programmée, le lien cessera automatiquement de rediriger vers la destination et affichera une page d'expiration. Aucune action de votre part n'est nécessaire.","USECASES_TITLE":"Cas d'usage courants","USECASE1_TITLE":"Promotions limitées","USECASE1_DESC":"Offres flash, codes promo, ventes privées... programmez la fin de votre promotion directement dans le lien. Vos clients ne verront jamais une offre expirée.","USECASE2_TITLE":"Événements temporaires","USECASE2_DESC":"Webinaires, conférences, inscriptions... le lien d'accès expire après la date de l'événement. Idéal pour les invitations et les pages d'inscription.","USECASE3_TITLE":"Contenus sensibles","USECASE3_DESC":"Documents confidentiels, fichiers partagés, accès temporaires... limitez la fenêtre d'accès à vos contenus les plus sensibles pour une sécurité maximale.","DIFFERENCE_TITLE":"Quelle différence avec les liens éphémères ?","DIFFERENCE_DESC":"Les liens éphémères s'autodétruisent après une durée prédéfinie (1h, 6h, 12h, 24h, 48h) à partir de leur création et libèrent la clé pour réutilisation. L'expiration programmée vous permet de choisir une date et heure précises dans le futur. Les deux fonctionnalités sont complémentaires et peuvent être combinées selon vos besoins.","CTA_TITLE":"Prêt à programmer l'expiration de vos liens ?","CTA_DESC1":"Créez gratuitement votre compte Hou.la et commencez à utiliser l'expiration programmée dès maintenant. Aucune carte bancaire requise.","CTA_DESC2":"L'expiration programmée est disponible gratuitement. Vous pouvez programmer une date d'expiration sur chacun de vos liens, sans limite.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"ANTIMALWARE":{"TITLE_HIGHLIGHT":"Protection anti-malware","TITLE_SUFFIX":"Sécurisez automatiquement vos liens","INTRO":"Hou.la analyse automatiquement chaque URL de destination via \u003Cstrong>Google Safe Browsing\u003C/strong> pour protéger vos visiteurs contre les sites malveillants, le phishing et les logiciels indésirables. Cette protection est \u003Cstrong>gratuite et automatique\u003C/strong>
89 pour tous vos liens.","BADGE_TITLE":"Protection automatique","BADGE_DESC":"Chaque lien est vérifié automatiquement via Google Safe Browsing pour protéger vos visiteurs.","WHY_TITLE":"Pourquoi la protection anti-malware est essentielle ?","WHY_INTRO":"Les raccourcisseurs de liens sont souvent utilisés pour masquer des URLs malveillantes. Hou.la lutte activement contre ce problème en analysant chaque destination.","WHY1_TITLE":"Protection de votre réputation","WHY1_DESC":"Un lien qui redirige vers un site malveillant détruit la confiance de votre audience. Notre scan automatique protège votre image de marque.","WHY2_TITLE":"Détection de 7 types de menaces","WHY2_DESC":"Malware, phishing (social engineering), logiciels indésirables, applications potentiellement dangereuses: notre système couvre l'ensemble du spectre des menaces.","WHY3_TITLE":"Scan continu toutes les 6 heures","WHY3_DESC":"Un site peut devenir malveillant après la création de votre lien. Notre job automatique re-vérifie tous vos liens actifs toutes les 6 heures.","WHY4_TITLE":"Page d'avertissement pour les visiteurs","WHY4_DESC":"Si une menace est détectée, une page d'avertissement claire est affichée aux visiteurs avant toute redirection, leur permettant de faire un choix éclairé.","HOW_TITLE":"Comment fonctionne la protection ?","STEP1_TITLE":"Étape 1 : Analyse à la création","STEP1_DESC":"Dès qu'un lien est créé, l'URL de destination est envoyée à l'API Google Safe Browsing v4 pour une analyse immédiate.","STEP2_TITLE":"Étape 2 : Scan automatique continu","STEP2_DESC":"Un job CRON vérifie automatiquement tous les liens actifs toutes les 6 heures par lots de 500, garantissant une protection permanente.","STEP3_TITLE":"Étape 3 : Classification des menaces","STEP3_DESC":"Chaque URL reçoit un statut : safe, malware, social_engineering, unwanted_software ou potentially_harmful. Le statut est visible dans votre dashboard.","STEP4_TITLE":"Étape 4 : Alerte et protection","STEP4_DESC":"Les URLs dangereuses sont signalées dans votre tableau de bord et une page d'avertissement est affichée aux visiteurs qui cliquent sur ces liens.","THREATS_TITLE":"Les types de menaces détectées","THREAT_MALWARE_TITLE":"Malware","THREAT_MALWARE_DESC":"Logiciels malveillants conçus pour endommager, perturber ou obtenir un accès non autorisé à des systèmes informatiques.","THREAT_PHISHING_TITLE":"Phishing","THREAT_PHISHING_DESC":"Sites d'ingénierie sociale qui imitent des sites légitimes pour voler vos informations personnelles ou bancaires.","THREAT_UNWANTED_TITLE":"Logiciels indésirables","THREAT_UNWANTED_DESC":"Applications potentiellement dangereuses ou logiciels indésirables qui affectent les performances ou la vie privée.","CTA_TITLE":"Prêt à protéger vos visiteurs ?","CTA_DESC1":"La protection anti-malware est incluse gratuitement sur Hou.la.","CTA_DESC2":"Créez votre compte et bénéficiez immédiatement de la protection Google Safe Browsing sur tous vos liens.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"DEAD_LINKS":{"TITLE_HIGHLIGHT":"Détection de liens morts","TITLE_SUFFIX":"Surveillez vos liens en continu","INTRO":"Hou.la surveille automatiquement l'état de santé de toutes vos URLs de destination. Si une page devient \u003Cstrong>inaccessible\u003C/strong>, vous êtes alerté par email avec les détails de l'erreur. Surveillance continue avec \u003Cstrong>score de fiabilité\u003C/strong>
89.","BADGE_TITLE":"Surveillance 24/7","BADGE_DESC":"Hou.la vérifie automatiquement la santé de vos destinations et vous alerte si un lien devient inaccessible.","WHY_TITLE":"Pourquoi détecter les liens morts ?","WHY_INTRO":"Un lien qui redirige vers une page d'erreur 404 nuit à votre crédibilité et fait perdre des visiteurs. Hou.la vous alerte avant que vos utilisateurs ne soient impactés.","WHY1_TITLE":"Préserver l'expérience utilisateur","WHY1_DESC":"Rien n'est plus frustrant qu'un clic qui mène nulle part. La détection de liens morts garantit que chaque clic atteint sa destination.","WHY2_TITLE":"Protéger votre référencement SEO","WHY2_DESC":"Les liens brisés nuisent à votre positionnement dans les moteurs de recherche. Corrigez-les rapidement grâce à nos alertes.","WHY3_TITLE":"Score de fiabilité intelligent","WHY3_DESC":"Chaque lien reçoit un score basé sur l'historique de ses vérifications, permettant d'identifier les liens instables avant qu'ils ne cassent.","WHY4_TITLE":"Alertes email automatiques","WHY4_DESC":"Dès qu'un lien passe en statut 'dead', un email détaillé est envoyé avec l'URL concernée, le code d'erreur et la date de dernière vérification.","HOW_TITLE":"Comment fonctionne la détection ?","STEP1_TITLE":"Étape 1 : Double vérification HEAD/GET","STEP1_DESC":"Notre système envoie d'abord une requête HEAD rapide. En cas d'échec, une requête GET complète est envoyée pour confirmer le statut exact.","STEP2_TITLE":"Étape 2 : Machine à états","STEP2_DESC":"Un lien passe de 'unknown' à 'warning' après un 1er échec, puis à 'dead' après 3 échecs sur des jours différents. Pas de faux positifs.","STEP3_TITLE":"Étape 3 : Détection des soft-404","STEP3_DESC":"Notre algorithme détecte les pages qui répondent HTTP 200 mais affichent en réalité un message d'erreur (soft 404).","STEP4_TITLE":"Étape 4 : Récupération automatique","STEP4_DESC":"Si un site revient en ligne, le lien repasse en 'healthy' après 2 vérifications consécutives réussies. La guérison est automatique.","STATUSES_TITLE":"Les statuts de santé","STATUS_HEALTHY_TITLE":"Healthy","STATUS_HEALTHY_DESC":"L'URL de destination répond correctement et la page est accessible.","STATUS_WARNING_TITLE":"Warning","STATUS_WARNING_DESC":"Un premier échec a été détecté. Le lien est surveillé de près.","STATUS_DEAD_TITLE":"Dead","STATUS_DEAD_DESC":"3 échecs confirmés sur des jours différents. Le lien est considéré comme mort.","STATUS_UNKNOWN_TITLE":"Unknown","STATUS_UNKNOWN_DESC":"Le lien n'a pas encore été vérifié ou aucune donnée n'est disponible.","CTA_TITLE":"Prêt à surveiller vos liens ?","CTA_DESC1":"La détection de liens morts est incluse gratuitement sur Hou.la.","CTA_DESC2":"Créez votre compte et activez la surveillance automatique avec alertes email.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"OG_PREVIEW":{"GA_TITLE":"Fonctionnalité : OG Social Previews","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"OG Previews","TITLE_HIGHLIGHT":"OG Social Previews","TITLE_SUFFIX":"Contrôlez l'aperçu de vos liens","INTRO":"Personnalisez le \u003Cstrong>titre\u003C/strong>, la \u003Cstrong>description\u003C/strong> et l'\u003Cstrong>image\u003C/strong> qui s'affichent quand vos liens courts sont partagés sur Facebook, Twitter, LinkedIn, WhatsApp et toutes les plateformes sociales.","BADGE_TIT
89LE":"Inclus gratuitement","BADGE_DESC":"Les OG Social Previews avec auto-détection et upload d'image sont inclus gratuitement sur Hou.la.","WHY_TITLE":"Pourquoi personnaliser vos OG Previews ?","WHY1_TITLE":"Visibilité maximale","WHY1_DESC":"Un aperçu avec \u003Cstrong>image, titre et description\u003C/strong> attire l'œil et se démarque dans un fil d'actualité.","WHY2_TITLE":"Taux de clic amélioré","WHY2_DESC":"Les liens avec aperçu riche génèrent jusqu'à \u003Cstrong>40% de clics en plus\u003C/strong> comparé aux liens nus.","WHY3_TITLE":"Branding cohérent","WHY3_DESC":"Gardez le \u003Cstrong>contrôle total\u003C/strong> sur l'image de votre marque à chaque partage, sur chaque plateforme.","WHY4_TITLE":"Partage optimisé","WHY4_DESC":"Facebook, Twitter, LinkedIn, WhatsApp, Slack, Telegram: l'aperçu s'affiche correctement \u003Cstrong>partout\u003C/strong>.","HOW_TITLE":"Comment configurer les OG Previews ?","STEP1_TITLE":"Créez votre lien","STEP1_LINK":"Rendez-vous sur Hou.la","STEP1_SUFFIX":"et collez l'URL que vous souhaitez raccourcir.","STEP2_TITLE":"Activez l'aperçu OG","STEP2_DESC":"Dans les options avancées, activez le toggle Aperçu social (OG). Les champs titre, description et image apparaissent.","STEP3_TITLE":"Auto-détection ou personnalisation","STEP3_DESC":"Cliquez sur \u003Cstrong>Détecter\u003C/strong> pour récupérer automatiquement les métadonnées OG de la page de destination, ou renseignez-les manuellement.","STEP4_TITLE":"Uploadez une image (optionnel)","STEP4_DESC":"Passez en mode Upload pour télécharger votre propre image OG. Elle sera recadrée en 1200x630 et optimisée en WebP.","STEP5_TITLE":"Partagez votre lien","STEP5_DESC":"Copiez votre lien court et partagez-le. L'aperçu personnalisé s'affichera automatiquement sur toutes les plateformes.","UPLOAD_TITLE":"Upload d'image personnalisée","UPLOAD_DESC":"En plus de l'auto-détection, vous pouvez uploader votre propre image OG. Elle sera automatiquement recadrée au format 1200x630 et optimisée en WebP pour un affichage parfait.","CTA_TITLE":"Personnalisez vos aperçus maintenant","CTA_DESC1":"Les OG Social Previews sont disponibles dès la création de votre compte.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"CLICK_LIMIT":{"TITLE":"Limite de clics sur vos liens","TITLE_HIGHLIGHT":"Limite de clics","TITLE_SUFFIX":"contrôlez la diffusion de vos liens","INTRO":"\u003Cstrong>Hou.la\u003C/strong> vous permet de définir une \u003Cstrong>limite de clics\u003C/strong> sur chacun de vos liens courts. Définissez un nombre maximum de redirections : une fois la limite atteinte, le lien expire automatiquement.","WHY_TITLE":"Pourquoi utiliser la limite de clics ?","WHY1_TITLE":"Offres exclusives","WHY1_DESC":"Réservez vos offres aux N premiers visiteurs. Le lien se désactive automatiquement une fois le quota atteint, sans intervention manuelle.","WHY2_TITLE":"Protection de contenu","WHY2_DESC":"Limitez l'accès à vos fichiers ou documents sensibles en contrôlant le nombre de téléchargements possibles via le lien.","WHY3_TITLE":"Gestion de capacité","WHY3_DESC":"Limitez les inscriptions à un événement, webinaire ou formation en coupant le lien après un certain nombre de clics.","WHY4_TITLE":"Campagnes contrôlées","WHY4_DESC":"Testez vos campagnes marketing à petite échelle en limitant la portée initiale avant un déploiement complet.","HOW_TITLE":"Comment définir une limite de clics ?","STEP1_TITLE":"Étape 1 : Créez votre lien","STEP1_LINK":"Créez un compte gratuit","STEP1_SUFFIX":"ou connectez-vous pour accéder au générateur de liens.","STEP2_TITLE":"Étape 2 : Activez la limite de clics","STEP2_DESC":"Dans les paramètres avancés du lien, activez l'option Limite de clics et saisissez le nombre maximum de redirections (de 1 à 1 000 000).","STEP3_TITLE":"Étape 3 : Partagez et laissez faire","STEP3_DESC":"Partagez votre lien normalement. Une fois le nombre de clics atteint, le lien cessera automatiquement de rediriger et affichera une page d'expiration.","USECASES_TITLE":"Cas d'usage courants","USECASE1_TITLE":"Offres flash limitées","USECASE1_DESC":"Codes promo, ventes privées, échantillons gratuits... limitez le nombre de bénéficiaires sans avoir à surveiller le lien en continu.","USECASE2_TITLE":"Événements à places limitées","USECASE2_DESC":"Inscriptions, webinaires, ateliers... le lien d'inscription expire automatiquement après le nombre de places défini.","USECASE3_TITLE":"Tests et validation","USECASE3_DESC":"Testez une landing page avec un échantillon contrôlé avant de lancer une campagne à grande échelle.","DIFFERENCE_TITLE":"Quelle différence avec l'expiration programmée ?","DIFFERENCE_DESC":"L'expiration programmée désactive un lien à une \u003Cstrong>date précise\u003C/strong>. La limite de clics désactive un lien après un \u003Cstrong>nombre de visites défini\u003C/strong>. Les deux fonctionnalités sont combinables.","CTA_TITLE":"Prêt à limiter vos clics ?","CTA_DESC1":"Créez votre compte Hou.la gratuit et commencez à utiliser la limite de clics dès maintenant. Sans carte bancaire.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>
89.","BADGE_TITLE":"Inclus gratuitement","BADGE_DESC":"La limite de clics est disponible gratuitement. Définissez un quota de 1 à 1 000 000 clics."},"TAGS":{"GA_TITLE":"Fonctionnalité : Tags & Organisation","HOWTO_NAME":"Comment organiser ses liens avec des tags sur Hou.la","HOWTO_DESC":"Créez des tags colorés et assignez-les à vos liens courts pour une gestion organisée et un filtrage rapide.","STEP1_NAME":"Création du tag","STEP1_TEXT":"Depuis votre dashboard, créez un tag avec un nom et une couleur personnalisée.","STEP2_NAME":"Attribution du tag","STEP2_TEXT":"Lors de la création ou modification d'un lien, sélectionnez un ou plusieurs tags à associer.","STEP3_NAME":"Filtrage","STEP3_TEXT":"Utilisez le filtre par tags dans le studio pour retrouver instantanément vos liens.","STEP4_NAME":"Gestion des tags","STEP4_TEXT":"Modifiez ou supprimez vos tags à tout moment depuis le studio.","STEP5_NAME":"Organisation optimale","STEP5_TEXT":"Combinez plusieurs tags par lien pour un classement multidimensionnel.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Tags & Organisation","TITLE":"Tags & Organisation de vos liens","TITLE_HIGHLIGHT":"Tags colorés","TITLE_SUFFIX":"organisez et retrouvez vos liens en un clic","INTRO":"\u003Cstrong>Hou.la\u003C/strong> vous permet d'organiser vos liens courts avec des \u003Cstrong>tags colorés\u003C/strong>. Créez des catégories personnalisées, assignez-les à vos liens et filtrez votre bibliothèque instantanément.","WHY_TITLE":"Pourquoi utiliser les tags ?","WHY1_TITLE":"Organisation visuelle","WHY1_DESC":"Les tags colorés permettent de distinguer visuellement les catégories de liens dans votre dashboard pour un repérage immédiat.","WHY2_TITLE":"Filtrage rapide","WHY2_DESC":"Retrouvez tous les liens d'une campagne, d'un client ou d'un canal en un seul clic grâce au filtrage par tags.","WHY3_TITLE":"Classement flexible","WHY3_DESC":"Un même lien peut avoir plusieurs tags, permettant des classements par campagne, client et canal simultanément.","WHY4_TITLE":"Collaboration en équipe","WHY4_DESC":"Les tags sont partagés au sein de votre espace de travail : toute l'équipe utilise la même organisation.","HOW_TITLE":"Comment organiser vos liens avec des tags ?","STEP1_TITLE":"Étape 1 : Créez vos tags","STEP1_LINK":"Créez un compte gratuit","STEP1_SUFFIX":"et accédez au gestionnaire de tags depuis votre dashboard.","STEP2_TITLE":"Étape 2 : Personnalisez","STEP2_DESC":"Nommez chaque tag (ex: Campagne Noël, Client X, Email) et choisissez une couleur distincte pour un repérage visuel rapide.","STEP3_TITLE":"Étape 3 : Assignez et filtrez","STEP3_DESC":"Assignez des tags lors de la création ou modification de vos liens. Filtrez ensuite vos liens par tag dans le studio.","USECASES_TITLE":"Cas d'usage courants","USECASE1_TITLE":"Campagnes marketing","USECASE1_DESC":"Créez un tag par campagne (Black Friday, Soldes, Lancement) pour regrouper et analyser tous les liens associés.","USECASE2_TITLE":"Gestion multi-clients","USECASE2_DESC":"Agences et freelances : un tag par client pour une organisation claire et un reporting par client facilité.","USECASE3_TITLE":"Canaux de diffusion","USECASE3_DESC":"Taguez par canal (email, réseaux sociaux, SMS) pour comparer les performances par source de trafic.","DIFFERENCE_TITLE":"Tags vs Dossiers : quelle différence ?","DIFFERENCE_DESC":"Les dossiers imposent une \u003Cstrong>hiérarchie unique\u003C/strong> : un fichier ne peut être que dans un seul dossier. Les tags permettent un \u003Cstrong>classement multidimensionnel\u003C/strong> : un même lien peut avoir plusieurs tags.","CTA_TITLE":"Prêt à organiser vos liens ?","CTA_DESC1":"Créez votre compte Hou.la gratuit et commencez à utiliser les tags dès maintenant. Sans carte bancaire.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>
89.","BADGE_TITLE":"Inclus gratuitement","BADGE_DESC":"Les tags sont disponibles gratuitement pour organiser vos liens."},"CLOAKING":{"GA_TITLE":"Fonctionnalité : Link Cloaking","HOWTO_NAME":"Comment activer le Link Cloaking sur Hou.la","HOWTO_DESC":"Masquez l'URL de destination de vos liens courts pour protéger vos liens affiliés et votre branding.","STEP1_NAME":"Créer ou modifier un lien","STEP1_TEXT":"Créez un nouveau lien court ou modifiez un lien existant depuis votre dashboard.","STEP2_NAME":"Activer le cloaking","STEP2_TEXT":"Dans les options avancées, activez le toggle Link Cloaking.","STEP3_NAME":"Partager le lien","STEP3_TEXT":"Partagez votre lien normalement. Les visiteurs verront le contenu sans voir l'URL réelle.","STEP4_NAME":"Analytics","STEP4_TEXT":"Tous les clics sont comptabilisés normalement dans vos statistiques.","STEP5_NAME":"Combiner avec d'autres options","STEP5_TEXT":"Combinez le cloaking avec la limite de clics, le mot de passe ou les pixels de retargeting.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Link Cloaking","TITLE":"Link Cloaking: Masquez l'URL de destination","TITLE_HIGHLIGHT":"Link Cloaking","TITLE_SUFFIX":"protégez vos liens et votre branding","INTRO":"\u003Cstrong>Hou.la\u003C/strong> vous permet de masquer l'\u003Cstrong>URL de destination\u003C/strong> de vos liens courts. Le visiteur voit votre contenu, mais la barre d'adresse affiche toujours l'URL courte.","WHY_TITLE":"Pourquoi utiliser le Link Cloaking ?","WHY1_TITLE":"Protection des commissions","WHY1_DESC":"Les visiteurs ne voient jamais le tag d'affiliation dans l'URL. Impossible de contourner votre lien pour acheter directement.","WHY2_TITLE":"Branding professionnel","WHY2_DESC":"Votre domaine reste visible dans la barre d'adresse pendant toute la navigation du visiteur, renforçant votre image de marque.","WHY3_TITLE":"Anti-copie d'URL","WHY3_DESC":"Combiné avec la limite de clics, le cloaking empêche les utilisateurs de copier l'URL réelle pour la partager sans contrôle.","WHY4_TITLE":"Expérience fluide","WHY4_DESC":"L'iframe plein écran est invisible pour le visiteur. La navigation reste fluide et naturelle.","HOW_TITLE":"Comment activer le Link Cloaking ?","STEP1_TITLE":"Étape 1 : Créez votre lien","STEP1_LINK":"Créez un compte gratuit","STEP1_SUFFIX":"ou connectez-vous pour accéder au générateur de liens.","STEP2_TITLE":"Étape 2 : Activez le cloaking","STEP2_DESC":"Dans les paramètres avancés du lien, activez l'option Link Cloaking. L'URL de destination sera masquée dans la barre d'adresse.","STEP3_TITLE":"Étape 3 : Partagez normalement","STEP3_DESC":"Partagez votre lien comme d'habitude. Les visiteurs accèdent au contenu de destination tandis que l'URL courte reste affichée.","USECASES_TITLE":"Cas d'usage courants","USECASE1_TITLE":"Liens d'affiliation","USECASE1_DESC":"Amazon Associates, Awin, CJ Affiliate... masquez vos tags d'affiliation pour protéger vos commissions.","USECASE2_TITLE":"Contenus sponsorisés","USECASE2_DESC":"Influenceurs et créateurs : gardez une URL propre et professionnelle sans exposer l'URL du sponsors.","USECASE3_TITLE":"Distribution contrôlée","USECASE3_DESC":"Combinez cloaking + limite de clics : personne ne peut copier l'URL directe ni partager un accès non autorisé.","DIFFERENCE_TITLE":"Cloaking vs Redirection : quelle différence ?","DIFFERENCE_DESC":"La redirection 301 envoie le navigateur vers l'URL réelle (visible dans la barre d'adresse). Le cloaking charge le site dans une \u003Cstrong>iframe invisible\u003C/strong> : l'URL courte reste affichée.","CTA_TITLE":"Prêt à masquer vos URLs ?","CTA_DESC1":"Créez votre compte Hou.la gratuit et activez le Link Cloaking sur vos liens en un clic. Sans carte bancaire.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>
89.","BADGE_TITLE":"Inclus gratuitement","BADGE_DESC":"Le Link Cloaking est disponible gratuitement. Masquez l'URL de destination de tous vos liens."},"DEEP_LINKS":{"TITLE_HIGHLIGHT":"Deep Links Mobile","TITLE_SUFFIX":"ouvrez directement les applications mobiles","INTRO":"\u003Cstrong>Hou.la\u003C/strong> détecte automatiquement l'appareil mobile du visiteur et ouvre l'\u003Cstrong>application native\u003C/strong> (Instagram, YouTube, Spotify, TikTok…) au lieu de la page web. Si l'app n'est pas installée, le visiteur est redirigé vers le store ou le site web.","BADGE_TITLE":"Inclus gratuitement, sans limite","BADGE_DESC":"Les deep links mobile sont inclus gratuitement sur Hou.la, sans limite ni frais.","WHY_TITLE":"Pourquoi utiliser les Deep Links Mobile ?","WHY1_TITLE":"Expérience utilisateur optimale","WHY1_DESC":"L'utilisateur atterrit directement dans l'app avec le bon contenu, sans passer par le navigateur. \u003Cstrong>Taux de conversion jusqu'à 3x supérieur.\u003C/strong>","WHY2_TITLE":"Engagement multiplié","WHY2_DESC":"Les utilisateurs passent \u003Cstrong>2x plus de temps\u003C/strong> dans les apps natives que sur les versions web. Maximisez l'engagement de votre audience.","WHY3_TITLE":"Fallback intelligent","WHY3_DESC":"Si l'app n'est pas installée, le visiteur est redirigé automatiquement vers l'\u003Cstrong>App Store, Play Store ou la page web\u003C/strong>. Aucun utilisateur perdu.","WHY4_TITLE":"Détection in-app browser","WHY4_DESC":"Hou.la détecte les navigateurs intégrés (Facebook, Instagram, Twitter…) et guide le visiteur pour ouvrir le lien dans le \u003Cstrong>navigateur système\u003C/strong>.","HOW_TITLE":"Comment fonctionnent les Deep Links Mobile ?","STEP1_TITLE":"Étape 1 : Créez votre lien","STEP1_LINK":"Créez un compte gratuit","STEP1_SUFFIX":"ou connectez-vous pour accéder au générateur de liens.","STEP2_TITLE":"Étape 2 : Détection automatique","STEP2_DESC":"Hou.la détecte automatiquement la plateforme de destination (Instagram, YouTube, Spotify…) et configure le URI scheme iOS et/ou l'Intent URL Android. Aucune action de votre part.","STEP3_TITLE":"Étape 3 : Partagez votre lien","STEP3_DESC":"Sur mobile, le lien ouvre directement l'app native. Sur desktop, la redirection classique s'applique normalement.","USECASES_TITLE":"Cas d'usage courants","USECASE1_TITLE":"Campagnes Instagram / TikTok","USECASE1_DESC":"Redirigez les clics de vos bio/stories directement vers votre profil ou vidéo dans l'app, pas la version web limitée.","USECASE2_TITLE":"Playlists Spotify / YouTube","USECASE2_DESC":"Partagez une playlist qui s'ouvre directement dans Spotify ou YouTube Music, pour une lecture immédiate.","USECASE3_TITLE":"Messages WhatsApp / Telegram","USECASE3_DESC":"Créez des liens qui ouvrent directement une conversation dans l'app de messagerie, sans passer par le navigateur.","DIFFERENCE_TITLE":"Deep Link vs Redirection simple","DIFFERENCE_DESC":"Une redirection 301 envoie toujours vers la page web. Un deep link tente d'abord d'ouvrir l'\u003Cstrong>application native\u003C/strong>, puis redirige vers le store ou le web en cas d'échec. Résultat : une expérience plus fluide et un meilleur taux de conversion.","CTA_TITLE":"Prêt à ouvrir les apps depuis vos liens ?","CTA_DESC1":"Créez votre compte Hou.la gratuit. Les Deep Links Mobile sont activés automatiquement sur tous vos liens. Sans carte bancaire.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"WORKSPACES":{"TITLE_HIGHLIGHT":"Workspaces & Équipes","TITLE_SUFFIX":"collaborez sur vos liens courts","INTRO":"\u003Cstrong>Hou.la\u003C/strong> vous permet de créer des \u003Cstrong>workspaces d'équipe\u003C/strong> pour gérer vos liens courts à plusieurs. Invitez vos collaborateurs, attribuez des rôles et partagez vos statistiques. \u003Cstrong>Disponible gratuitement.\u003C/strong>","BADGE_TITLE":"Inclus gratuitement","BADGE_DESC":"Les workspaces collaboratifs sont inclus gratuitement sur Hou.la.","WHY_TITLE":"Pourquoi utiliser les Workspaces ?","WHY1_TITLE":"Travail d'équipe simplifié","WHY1_DESC":"Créez, modifiez et suivez vos liens courts \u003Cstrong>à plusieurs\u003C/strong>. Chaque membre de l'équipe a accès au même tableau de bord.","WHY2_TITLE":"Contrôle d'accès par rôle","WHY2_DESC":"Attribuez des rôles \u003Cstrong>Owner\u003C/strong>, \u003Cstrong>Member\u003C/strong>
89 ou \u003Cstrong>Viewer\u003C/strong> pour contrôler qui peut créer, modifier ou simplement consulter les liens.","WHY3_TITLE":"Statistiques partagées","WHY3_DESC":"Toute l'équipe accède aux \u003Cstrong>mêmes statistiques\u003C/strong> en temps réel : clics, géolocalisation, devices, referrers et campagnes UTM.","WHY4_TITLE":"Séparation des projets","WHY4_DESC":"Créez un workspace par \u003Cstrong>client, projet ou département\u003C/strong>. Les liens et données sont isolés entre chaque workspace.","HOW_TITLE":"Comment configurer un workspace d'équipe ?","STEP1_TITLE":"Étape 1 : Créez un compte","STEP1_LINK":"Créez votre compte gratuit","STEP1_SUFFIX":"ou connectez-vous à votre espace.","STEP2_TITLE":"Étape 2 : Créez un workspace","STEP2_DESC":"Depuis le sélecteur de workspace dans le header, cliquez sur « Créer un workspace » et donnez-lui un nom.","STEP3_TITLE":"Étape 3 : Invitez vos collaborateurs","STEP3_DESC":"Sur la page Membres, invitez vos collaborateurs par email. Choisissez leur rôle (Member ou Viewer).","STEP4_TITLE":"Étape 4 : Basculez entre workspaces","STEP4_DESC":"Utilisez le sélecteur de workspace dans le header pour passer d'un espace personnel à un espace d'équipe en un clic.","STEP5_TITLE":"Étape 5 : Collaborez","STEP5_DESC":"Les liens, tags, domaines et statistiques sont automatiquement partagés entre tous les membres du workspace.","USECASES_TITLE":"Cas d'usage","USECASE1_TITLE":"Agences marketing","USECASE1_DESC":"Un workspace par client pour isoler les campagnes, les liens et les rapports de performance.","USECASE2_TITLE":"Équipes produit","USECASE2_DESC":"Centralisez les liens de votre équipe growth, product et engineering dans un même espace.","USECASE3_TITLE":"Entreprises multi-départements","USECASE3_DESC":"Marketing, commercial, support : chaque département a son propre workspace avec ses propres liens.","SECURITY_TITLE":"Sécurité et isolation","SECURITY_DESC":"Chaque workspace est totalement isolé. Les liens, tags et statistiques d'un workspace ne sont jamais visibles depuis un autre. Les invitations expirent après 7 jours.","CTA_TITLE":"Prêt à collaborer en équipe ?","CTA_DESC1":"Créez votre workspace et invitez vos collaborateurs en quelques secondes. Sans carte bancaire, sans engagement.","CTA_BUTTON":"Créer un compte gratuit","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"OAUTH":{"GA_TITLE":"Fonctionnalité : OAuth & Authentification","TITLE_HIGHLIGHT":"OAuth & Authentification","TITLE_SUFFIX":"connectez vos applications en toute sécurité","INTRO":"\u003Cstrong>Hou.la\u003C/strong> implémente \u003Cstrong>OAuth 2.0 avec PKCE S256\u003C/strong> pour permettre à vos applications tierces de se connecter de manière sécurisée. Comme Google Auth ou GitHub Auth, utilisez Hou.la comme fournisseur d'authentification. \u003Cstrong>Disponible pour tous les développeurs.\u003C/strong>","BADGE_TITLE":"Standard OAuth 2.0 + PKCE S256: Sécurité maximale","BADGE_DESC":"Hou.la impose PKCE S256, la couche de sécurité recommandée par l'IETF (RFC 7636) pour protéger le flux d'autorisation.","WHY_TITLE":"Pourquoi intégrer Hou.la Auth ?","WHY1_TITLE":"Sécurité renforcée","WHY1_DESC":"PKCE S256 protège contre les attaques par \u003Cstrong>interception de code\u003C/strong>. Aucun secret client à stocker côté application.","WHY2_TITLE":"Intégration rapide","WHY2_DESC":"Le flux Authorization Code + PKCE est \u003Cstrong>standard\u003C/strong>. Intégrez en quelques minutes avec n'importe quel langage ou framework.","WHY3_TITLE":"Scopes granulaires","WHY3_DESC":"Demandez uniquement les \u003Cstrong>permissions nécessaires\u003C/strong> : lecture de liens, écriture, e-commerce, sync produits.","WHY4_TITLE":"Gestion des accès","WHY4_DESC":"Les utilisateurs peuvent voir et \u003Cstrong>révoquer\u003C/strong> les applications connectées à tout moment depuis leur espace.","HOW_TITLE":"Comment intégrer OAuth Hou.la ?","STEP1_TITLE":"Crée ton app dans le studio","STEP1_DESC":"Crée ton app en quelques secondes depuis le studio Hou.la. Tu obtiens aussit
89ôt ton client_id (et un client_secret pour les clients confidentiels) et tu déclares ton redirect_uri. Pas de liste d'attente, pas d'e-mail.","STEP2_TITLE":"Générez le PKCE","STEP2_DESC":"Créez un code_verifier aléatoire et dérivez le code_challenge avec SHA-256 (méthode S256).","STEP3_TITLE":"Redirigez vers le consentement","STEP3_DESC":"Envoyez l'utilisateur vers /oauth/authorize avec votre client_id, scope, redirect_uri et code_challenge.","STEP4_TITLE":"Récupérez le code","STEP4_DESC":"Après consentement, l'utilisateur est redirigé vers votre redirect_uri avec un code d'autorisation.","STEP5_TITLE":"Échangez le code","STEP5_DESC":"Appelez POST /api/oauth/token avec le code, le code_verifier et votre client_id pour obtenir les tokens.","SECURITY_TITLE":"Sécurité & conformité","SECURITY_DESC":"Tokens JWT signés, refresh tokens rotatifs, scopes vérifiés à chaque requête, révocation instantanée. Conforme aux standards IETF RFC 6749 et RFC 7636.","SCOPES_TITLE":"Scopes disponibles","SCOPE_IDENTITY_DESC":"Authentifie l'utilisateur et lis son identité d'affichage : nom du workspace, @slug, avatar et (avec le scope email) son e-mail.","SCOPE_READ_DESC":"Lire les liens courts, tags et statistiques de l'utilisateur.","SCOPE_WRITE_DESC":"Créer, modifier et supprimer des liens courts.","SCOPE_ECOMMERCE_DESC":"Gérer les liens e-commerce et le tracking de conversions.","SCOPE_PRODUCTS_DESC":"Synchroniser le catalogue produits depuis une boutique en ligne.","CTA_TITLE":"Prêt à intégrer Hou.la ?","CTA_DESC":"Consultez la documentation OAuth complète et commencez votre intégration.","CTA_BUTTON":"Voir la documentation API","QUICKSTART_TITLE":"Quickstart : le code à coller","QUICKSTART_DESC":"Un seul script et un bouton : houla-login.js gère le bouton, le PKCE, la redirection et l'échange des tokens. Idéal pour un site ou une SPA (client public).","QUICKSTART_PREVIEW":"Aperçu","BUTTON_LABEL":"Se connecter avec Hou.la","QUICKSTART_CALLBACK":"Page de callback","QUICKSTART_COPY":"Copier","QUICKSTART_COPIED":"Copié !","QUICKSTART_NOTE_TITLE":"Il te faut un client_id","QUICKSTART_NOTE_DESC":"Crée ton app dans le studio en quelques secondes pour obtenir ton \u003Ccode>client_id\u003C/code>, puis remplace \u003Ccode>YOUR_CLIENT_ID\u003C/code> et ton URL de redirection dans le code ci-dessus.","TESTER_LIVE_TITLE":"Teste le flux en direct","TESTER_NO_CLIENT_NOTE":"Renseigne le client_id d'une app dont le redirect_uri autorise cette page, puis clique sur le bouton.","TESTER_RESCAN":"Rafraîchir l'aperçu","TESTER_RESULT_TITLE":"Connecté: identité renvoyée par /userinfo","SUPPORT_LEAD":"Des questions ?","SUPPORT_LINK":"Contacter le support","BRAND_KIT_LINK":"Bouton custom ? Récupère l'icône et les couleurs (kit de marque)","TEST_APP":"Tester mon application","CTA_BUTTON_STUDIO":"Créer mon app","DISCOVERY_TITLE":"Découverte automatique (OpenID Connect)","DISCOVERY_DESC":"Hou.la expose un document de découverte OIDC standard. La plupart des librairies configurent automatiquement les endpoints, les scopes et la méthode PKCE depuis une seule URL.","DISCOVERY_LINK":"Voir le document de découverte","CONTACT":"Des questions ? Contactez-nous à \u003Ca href='mailto:[email protected]' class='text-primary text-decoration-none'>[email protected]\u003C/a>."},"PAY_LINKS":{"TITLE_HIGHLIGHT":"Pay Links","TITLE_SUFFIX":"liens de paiement Stripe integres","INTRO":"Vendez vos produits, services et formations directement depuis un \u003Cstrong>lien court Hou.la\u003C/strong>. Connectez votre compte Stripe, definissez un prix et partagez votre lien de paiement partout.","BADGE_TIT
89LE":"Stripe Connect integre","BADGE_DESC":"Les paiements sont traites par Stripe. Vos fonds arrivent directement sur votre compte bancaire.","WHY_TITLE":"Pourquoi utiliser les Pay Links ?","WHY1_TITLE":"Paiement en un clic","WHY1_DESC":"Vos clients paient directement depuis un lien court. Pas de site e-commerce, pas de panier, pas de friction. Un lien, un paiement.","WHY2_TITLE":"Vendez n'importe quoi","WHY2_DESC":"Formations, ebooks, consulting, produits physiques, billets d'evenement... Les Pay Links s'adaptent a tous les cas d'usage.","WHY3_TITLE":"Suivi en temps reel","WHY3_DESC":"Consultez vos commandes, revenus et commissions depuis le tableau de bord Hou.la. Chaque transaction est tracee.","WHY4_TITLE":"Integration Link in Bio","WHY4_DESC":"Ajoutez vos Pay Links a votre \u003Ca href='/features/link-in-bio'>Link in Bio\u003C/a> pour creer une vitrine de vente complete.","HOW_TITLE":"Comment creer un Pay Link ?","STEP1_TITLE":"Connectez votre compte Stripe","STEP1_DESC":"Depuis le tableau de bord, lancez l'onboarding Stripe Connect Express. La connexion prend moins d'une minute.","STEP2_TITLE":"Creez votre Pay Link","STEP2_DESC":"Definissez le nom du produit, le prix, la devise, une image optionnelle et votre taux de commission.","STEP3_TITLE":"Personnalisez la page de checkout","STEP3_DESC":"Ajoutez une description, choisissez les champs a collecter (email, adresse) et activez ou desactivez la collecte d'informations.","STEP4_LINK":"Ajoutez-le a votre Link in Bio","STEP4_SUFFIX":"ou partagez le lien court directement sur vos reseaux sociaux, par email ou par SMS.","STEP5_TITLE":"Suivez vos commandes","STEP5_DESC":"Consultez chaque commande en temps reel : statut du paiement, montant, commission et details client.","SECURITY_TITLE":"Paiements securises par Stripe","SECURITY_DESC":"Hou.la ne stocke aucune donnee bancaire. Tous les paiements transitent par Stripe, certifie PCI-DSS niveau 1.","CTA_TITLE":"Pret a vendre depuis un lien ?","CTA_DESC1":"Creez votre compte gratuitement, connectez Str
89ipe et publiez votre premier Pay Link en quelques minutes.","CTA_BUTTON":"Creer mon compte gratuit","CONTACT":"Une question ? Ecrivez-nous a \u003Ca href='mailto:[email protected]'>hello&#64;hou.la\u003C/a>","STEP4_TITLE":"Reçois tes paiements"},"SHOP_IN_BIO":{"TITLE_HIGHLIGHT":"Shop in Bio","TITLE_SUFFIX":"votre boutique intégrée à votre Link in Bio","INTRO":"Transformez votre page \u003Cstrong>Link in Bio Hou.la\u003C/strong> en une véritable boutique en ligne. Vendez produits physiques, digitaux, services et formations: avec paiement Stripe, gestion des commandes, expédition et avis clients intégrés.","BADGE_TITLE":"Marketplace intégrée","BADGE_DESC":"Créez votre boutique en quelques minutes. Aucune compétence technique requise, aucun frais d'hébergement.","WHY_TITLE":"Pourquoi ouvrir votre Shop in Bio ?","WHY1_TITLE":"Tout-en-un, zéro friction","WHY1_DESC":"Votre boutique est \u003Cstrong>directement intégrée\u003C/strong> à votre page Link in Bio. Vos visiteurs découvrent, achètent et paient sans quitter votre page. Pas besoin de Shopify, WooCommerce ou Etsy.","WHY2_TITLE":"Produits physiques, digitaux et services","WHY2_DESC":"Vendez des \u003Cstrong>t-shirts, ebooks, formations, coaching, presets photo\u003C/strong>: tout ce que vous créez. Chaque type de produit a ses propres options: variantes (taille, couleur), fichiers téléchargeables, limites de stock.","WHY3_TITLE":"Paiement Stripe sécurisé","WHY3_DESC":"Les paiements transitent par \u003Cstrong>Stripe Connect\u003C/strong>. Vos revenus arrivent directement sur votre compte bancaire. Hou.la ne stocke aucune donnée bancaire.","WHY4_TITLE":"Livraison intelligente","WHY4_DESC":"Configurez vos \u003Cstrong>zones de livraison\u003C/strong> (nationale, continentale, internationale) avec des tarifs par paliers de poids. La zone de l'acheteur est détectée automatiquement.","WHY5_TITLE":"Avis clients vérifiés","WHY5_DESC":"Vos acheteurs reçoivent un e-mail après livraison pour laisser un \u003Cstrong>avis vérifié\u003C/strong>. Connectez Trustpilot et Google Business pour agréger vos avis externes.","WHY6_TITLE":"Analytics e-commerce","WHY6_DESC":"Suivez en temps réel les \u003Cstrong>vues, ajouts au panier, conversions et revenus\u003C/strong>. Identifiez vos produits stars et optimisez votre catalogue.","HOW_TITLE":"Comment ouvrir votre Shop in Bio ?","STEP1_TITLE":"Créez votre page Link in Bio","STEP1_DESC":"Si ce n'est pas déjà fait, créez votre page hou.la/@pseudo gratuitement en quelques secondes.","STEP2_TITLE":"Connectez Str
89ipe","STEP2_DESC":"Lancez l'onboarding Stripe Connect Express depuis votre tableau de bord. La connexion prend moins d'une minute.","STEP3_TITLE":"Ajoutez vos produits","STEP3_DESC":"Créez vos fiches produits avec photos, prix, variantes et stock. Organisez-les par collections.","STEP4_TITLE":"Configurez la livraison","STEP4_DESC":"Définissez vos zones de livraison et tarifs par paliers de poids. Activez le retrait en point de vente si nécessaire.","STEP5_TITLE":"Vendez et suivez vos commandes","STEP5_DESC":"Partagez votre page et suivez chaque commande en temps réel : paiement, expédition, livraison et avis.","FEATURES_TITLE":"Tout ce dont vous avez besoin pour vendre","FEAT1_TITLE":"Catalogue produits illimité","FEAT1_DESC":"Ajoutez autant de produits que vous le souhaitez avec images, variantes et descriptions détaillées.","FEAT2_TITLE":"Codes promo et réductions","FEAT2_DESC":"Créez des codes promo pourcentage, montant fixe ou livraison offerte avec conditions d'utilisation.","FEAT3_TITLE":"Facturation automatique","FEAT3_DESC":"Chaque commande génère automatiquement une facture conforme avec TVA et numérotation séquentielle.","FEAT4_TITLE":"Gestion des remboursements","FEAT4_DESC":"Vos clients peuvent demander un remboursement. Validez ou refusez depuis votre tableau de bord.","FEAT5_TITLE":"Modération IA","FEAT5_DESC":"Vos produits sont analysés automatiquement par intelligence artificielle pour garantir la conformité.","FEAT6_TITLE":"Commissions transparentes","FEAT6_DESC":"Commission unique de 5 % par vente. Aucun frais caché, aucun abonnement supplémentaire.","SECURITY_TITLE":"Paiements sécurisés par Stripe","SECURITY_DESC":"Hou.la ne stocke aucune donnée bancaire. Tous les paiements transitent par Stripe, certifié PCI-DSS niveau 1.","CTA_TITLE":"Prêt à ouvrir votre boutique ?","CTA_DESC1":"Créez votre compte gratuitement mais ne tardez pas, bientôt des fonctionnalités aussi complètes ne seront plus gratuites.","CTA_BUTTON":"Ouvrir ma boutique gratuitement","CONTACT":"Une question ? Écrivez-nous à \u003Ca href='mailto:[email protected]'>hello&#64;hou.la\u003C/a>","GA_TITLE":"Fonctionnalité : Shop in Bio","HOWTO_NAME":"Comment ouvrir votre Shop in Bio sur Hou.la","HOWTO_DESC":"Guide étape par étape pour créer votre boutique en ligne intégrée à votre Link in Bio.","STEP1_NAME":"Créer votre profil","STEP1_TEXT":"Inscrivez-vous gratuitement sur Hou.la et activez votre Link in Bio.","STEP2_NAME":"Connecter Stripe","STEP2_TEXT":"Liez votre compte Stripe via Stripe Connect pour recevoir les paiements.","STEP3_NAME":"Ajouter vos produits","STEP3_TEXT":"Créez vos produits avec photos, description, prix et options de livraison.","STEP4_NAME":"Configurer la livraison","STEP4_TEXT":"Définissez vos zones de livraison, tarifs et seuils de livraison gratuite.","STEP5_NAME":"Commencer à vendre","STEP5_TEXT":"Partagez votre lien et recevez vos premières commandes.","BREADCRUMB_HOME":"Accueil","BREADCRUMB_FEATURES":"Fonctionnalités","BREADCRUMB_SELF":"Shop in Bio","CMP_TITLE":"Shop in Bio vs alternatives","CMP_HEADER_FEATURE":"Fonctionnalité","CMP_BOUTIQUE_BIO":"Boutique intégrée au Link in Bio","CMP_STRIPE_CONNECT":"Paiement Stripe Connect","CMP_SHIPPING":"Gestion livraison intégrée","CMP_REVIEWS":"Avis clients vérifiés","CMP_PROMO_CODES":"Codes promo","CMP_INVOICING":"Facturation automatique","CMP_ANALYTICS":"Analytics e-commerce","CMP_FREE":"Gratuit","CMP_LIMITED":"Limité","CMP_PAID":"Payant","FREE_TITLE":"Gratuit pour commencer","FREE_DESC":"Le Shop in Bio est \u003Cstrong>inclus gratuitement sur Hou.la\u003C/strong>. Commission unique de 5 % par vente: aucun abonnement supplémentaire.","EXCLUSIVE_BADGE":"Exclusivité Hou.la","EXCLUSIVE_DESC":"Le seul Link in Bio avec une vraie boutique e-commerce complète","OPEN_CART_TITLE":"La Killer Feature : le Panier Ouvert","OPEN_CART_DESC":"Vos clients peuvent \u003Cstrong>ajouter des articles à une commande déjà payée\u003C/strong>. Ils ne repaient que la différence de frais de port si le poids total change de tranche. \u003Cstrong>Aucune autre plateforme ne propose cette fonctionnalité.\u003C/strong>","OPEN_CART_HOW_TITLE":"Comment ça marche ?","OPEN_CART_HOW_1":"Un client passe commande et paie normalement","OPEN_CART_HOW_2":"Pendant une fenêtre configurable (1h à 7 jours), il peut revenir et ajouter des articles","OPEN_CART_HOW_3":"Les articles sont fusionnés à la commande existante","OPEN_CART_HOW_4":"Seule la différence de frais de port est facturée (si changement de tranche)","OPEN_CART_POLICIES_TITLE":"3 politiques de frais de port au choix","OPEN_CART_POLICY_1_TITLE":"Pas de frais supplémentaires","OPEN_CART_POLICY_1_DESC":"Vous absorbez les frais additionnels: 
89idéal pour fidéliser vos clients","OPEN_CART_POLICY_2_TITLE":"Delta de tranche","OPEN_CART_POLICY_2_DESC":"Le client ne paie que si la commande change de tranche de poids","OPEN_CART_POLICY_3_TITLE":"Frais complets","OPEN_CART_POLICY_3_DESC":"Les frais de port sont recalculés intégralement pour les ajouts","BIZ_TITLE":"Pensé pour votre façon de vendre","BIZ_LEAD":"Mode, food, coaching, billetterie, digital, artisanat, beauté, art, événementiel... Shop in Bio s'adapte à votre façon de vendre.","BIZ_TAG_1":"Mode","BIZ_TAG_2":"Food","BIZ_TAG_3":"Coaching","BIZ_TAG_4":"Billetterie","BIZ_TAG_5":"Digital","BIZ_TAG_6":"Artisanat","BIZ_TAG_7":"Beauté","BIZ_TAG_8":"Art","BIZ_TAG_9":"Événementiel","BIZ_TAG_10":"Créateurs","BIZ_TAG_11":"Services","BIZ_TAG_12":"Produits physiques","CAT_TITLE":"Un catalogue produits complet","CAT_TYPES_TITLE":"4 types de produits","CAT_TYPE_PHYSICAL":"Produits physiques","CAT_TYPE_PHYSICAL_DESC":"T-shirts, accessoires, art... Avec gestion de stock, poids et livraison automatisée.","CAT_TYPE_DIGITAL":"Produits numériques","CAT_TYPE_DIGITAL_DESC":"E-books, presets photo, templates... Téléchargement immédiat après paiement.","CAT_TYPE_SERVICE":"Services","CAT_TYPE_SERVICE_DESC":"Coaching, consulting, formations... Sans contrainte de stock ni de livraison.","CAT_TYPE_LIVE":"Live Selling","CAT_TYPE_LIVE_DESC":"Vendez en direct pendant vos lives. Idéal pour les créateurs de contenu.","CAT_VARIANTS_TITLE":"Variantes illimitées","CAT_VARIANTS_DESC":"Chaque produit peut avoir des \u003Cstrong>variantes illimitées\u003C/strong> : taille, couleur, matière, format... Chaque variante peut avoir son propre prix, stock et poids.","CAT_COLLECTIONS_TITLE":"Collections & produits à la une","CAT_COLLECTIONS_DESC":"Organisez vos produits en \u003Cstrong>collections manuelles ou automatiques\u003C/strong> (par tags). Mettez des produits \u003Cstrong>à la une\u003C/strong> pour les faire apparaître en priorité. Personnalisez l'ordre d'affichage par glisser-déposer.","CAT_STOCK_TITLE":"Gestion de stock intelligente","CAT_STOCK_DESC":"Stock limité ou illimité, maximum par commande, alertes de stock bas, archivage automatique des produits épuisés. Synchronisation du stock avec vos plateformes e-commerce connectées.","CAT_CATEGORIES_TITLE":"5 400+ catégories Google","CAT_CATEGORIES_DESC":"Chaque produit est classé dans la \u003Cstrong>taxonomie Google Product\u003C/strong> (3 niveaux) pour une meilleure visibilité et un référencement optimal. Sélection guidée par recherche.","PAY_TITLE":"Paiement sécurisé Stripe Connect","PAY_DESC":"Les paiements sont gérés par \u003Cstrong>Stripe Connect\u003C/strong>, la référence mondiale du paiement en ligne. Vos clients paient en toute sécurité, et vous recevez vos fonds directement sur votre compte Stripe.","PAY_FEAT_1":"Carte bancaire, Apple Pay, Google Pay","PAY_FEAT_2":"3D Secure automatique","PAY_FEAT_3":"Panier multi-produits avec récapitulatif détaillé","PAY_FEAT_4":"Collecte automatique des adresses de livraison et facturation","PAY_FEAT_5":"Récupération de paniers abandonnés","PAY_FEAT_6":"Calcul automatique des commissions et transferts","SHIP_TITLE":"Livraison intelligente et flexible","SHIP_ZONES_TITLE":"Zones et tarifs au poids","SHIP_ZONES_DESC":"Configurez vos \u003Cstrong>zones de livraison\u003C/strong> (France, Europe, monde) avec des \u003Cstrong>tranches de poids\u003C/strong> personnalisées. Chaque zone a ses propres tarifs et délais estimés.","SHIP_FREE_TITLE":"Seuils de livraison gratuite","SHIP_FREE_DESC":"Définissez un montant minimum de commande pour offrir la livraison. Un levier puissant pour augmenter le panier moyen de vos clients.","SHIP_CARRIERS_TITLE":"12+ transporteurs intégrés","SHIP_CARRIERS_DESC":"Colissimo, Chronopost, Mondial Relay, GLS, DPD, UPS, DHL, La Poste, FedEx... Avec \u003Cstrong>URL de suivi automatique\u003C/strong> pour chaque transporteur.","SHIP_PICKUP_TITLE":"Retrait sur place","SHIP_PICKUP_DESC":"Proposez le retrait en boutique ou à une adresse personnalisée. Idéal pour les créateurs et artisans locaux.","PROMO_TITLE":"Codes promo & réductions","PROMO_DESC":"Créez des codes promo pour booster vos ventes et fidéliser vos clients.","PROMO_TYPE_1":"Pourcentage","PROMO_TYPE_1_DESC":"Ex : -15% sur tout le panier","PROMO_TYPE_2":"Montant fixe","PROMO_TYPE_2_DESC":"Ex : -5€ sur la commande","PROMO_TYPE_3":"Livraison gratuite","PROMO_TYPE_3_DESC":"Offrez les frais de port avec un code","PROMO_OPTIONS":"Options avancées : montant minimum de commande, plafond de réduction, nombre d'utilisations (total et par client), dates de validité, ciblage par produit ou collection.","REV_TITLE":"Avis clients & confiance","REV_VERIFIED_TIT
89LE":"Avis vérifiés","REV_VERIFIED_DESC":"Seuls les acheteurs ayant reçu leur commande peuvent laisser un avis. Notes de 1 à 5 étoiles, commentaire texte et jusqu'à \u003Cstrong>5 photos par avis\u003C/strong>.","REV_EXTERNAL_TITLE":"Import d'avis externes","REV_EXTERNAL_DESC":"Importez vos avis depuis \u003Cstrong>Trustpilot\u003C/strong>, \u003Cstrong>Google Business\u003C/strong> ou \u003Cstrong>Avis Vérifiés\u003C/strong>. Vos avis existants s'affichent directement dans votre boutique.","REV_REPLY_TITLE":"Réponses du vendeur","REV_REPLY_DESC":"Répondez publiquement aux avis de vos clients pour montrer votre engagement et professionnalisme.","REV_MODERATION":"Chaque avis passe par un processus de modération (en attente → approuvé / rejeté) pour garantir la qualité.","ORD_TITLE":"Gestion des commandes complète","ORD_DESC":"Suivez chaque commande depuis le paiement jusqu'à la livraison. Interface intuitive avec filtrage par statut, tri et pagination.","ORD_STATUSES":"9 statuts : en attente, payée, en préparation, expédiée, livrée, annulée, abandonnée, remboursée, partiellement remboursée.","ORD_FEATURES":"Pour chaque commande : coordonnées client, adresse de livraison (copie en un clic), historique d'achats, suivi transporteur avec numéro, notes du vendeur, reçu Stripe et facture téléchargeable.","INV_TITLE":"Facturation automatique","INV_DESC":"Une facture est \u003Cstrong>générée automatiquement\u003C/strong> à chaque expédition avec un numéro séquentiel unique. Vous pouvez aussi uploader une facture personnalisée en PDF. Téléchargement en un clic pour vous et vos clients.","DIS_TITLE":"Protection acheteur: Gestion des litiges","DIS_DESC":"Un système de résolution des litiges en 3 étapes protège acheteurs et vendeurs.","DIS_STEP_1_TITLE":"Signalement","DIS_STEP_1_DESC":"L'acheteur signale un problème : produit non reçu, non conforme, défectueux, contrefaçon...","DIS_STEP_2_TITLE":"Discussion","DIS_STEP_2_DESC":"Échange direct acheteur ↔ vendeur pour trouver une solution amiable","DIS_STEP_3_TITLE":"Arbitrage","DIS_STEP_3_DESC":"Si aucun accord, escalade vers l'équipe Hou.la pour arbitrage impartial","DIS_AUTO":"Si le vendeur ne répond pas sous 5 jours, le litige est \u003Cstrong>automatiquement résolu en faveur de l'acheteur\u003C/strong>.","DIS_EXCLUSIVE":"Exclusivité Hou.la","MSG_TITLE":"Messagerie acheteur: vendeur","MSG_DESC":"Communiquez directement avec vos clients depuis l'interface de gestion des commandes. Échangez des messages, partagez des fichiers et résolvez les questions rapidement: sans quitter votre tableau de bord.","REF_TITLE":"Remboursements flexibles","REF_DESC":"Remboursez tout ou partie d'une commande en quelques clics.","REF_FULL":"Remboursement total: remboursez l'intégralité de la commande","REF_PARTIAL":"Remboursement partiel: sélectionnez les articles et montants à rembourser individuellement","REF_RESTOCK":"Option de remise en stock automatique par article remboursé","REF_SHIPPING":"Possibilité de rembourser les frais de port séparément","SYNC_TITLE":"Synchronisation e-commerce","SYNC_DESC":"Connectez votre boutique existante et synchronisez automatiquement vos produits, stocks et commandes.","SYNC_WOO_TITLE":"WooCommerce","SYNC_WOO_DESC":"Plugin WordPress officiel wp-houla. Sync produits, stocks, commandes et remboursements en temps réel via webhooks.","SYNC_SHOPIFY_TITLE":"Shopify","SYNC_SHOPIFY_DESC":"Intégration via l'API GraphQL Admin. Sync produits, variantes, collections et inventaire automatiquement.","SYNC_PRESTA_TITLE":"PrestaShop","SYNC_PRESTA_DESC":"Sync produits et inventaire via l'API REST PrestaShop.","SYNC_FEATURES":"Mapping automatique des catégories, webhooks temps réel, déclenchement manuel à la demande, historique de synchronisation.","MOD_TITLE":"Modération IA automatique","MOD_DESC":"Chaque produit publié est automatiquement vérifié par notre \u003Cstrong>intelligence artificielle\u003C/strong> (GPT-4 Vision + Cloudflare AI).","MOD_CHECKS":"Vérifications : qualité des images, cohérence titre/description avec la catégorie, détection de contenu interdit (armes, contrefaçons, produits illégaux), anomalies de prix.","MOD_FLOW":"Processus : soumission → analyse IA → approbation ou rejet avec motif détaillé. Jusqu'à 3 tentatives de re-soumission avec modifications.","ANA_TITLE":"Analytics e-commerce complets","ANA_DESC":"Suivez chaque étape du parcours d'achat de vos clients avec des métriques précises.","ANA_EVENTS":"Événements suivis : vue de la boutique, vue produit, ouverture fiche produit, ajout au panier, retrait du panier, début de checkout, achat complété, panier abandonné, code promo appliqué.","ANA_KPI":"Tableau de bord : revenus, nombre de commandes, taux de conversion, produits les plus vendus, tendances quotidiennes et mensuelles.","SET_TITLE":"Paramétrage complet de votre boutique","SET_DESC":"Personnalisez chaque aspect de votre boutique pour qu'elle reflète votre marque.","SET_OPTIONS":"Activez/désactivez la boutique, personnalisez les libellés des onglets (Contenu/Boutique), choisissez la vue par défaut, configurez vos CGV, renseignez vos informations légales (SIRET, adresse, TVA), uploadez votre logo et configurez la fenêtre de panier ouvert.","CMP_OPEN_CART":"Panier ouvert (ajout post-paiement)","CMP_VARIANTS":"Variantes produits illimitées","CMP_COLLECTIONS":"Collections & produits à la une","CMP_DISPUTE":"Système de litiges intégré","CMP_MODERATION_AI":"Modération IA des produits","CMP_SYNC":"Sync WooCommerce / Shopify / PrestaShop","CMP_EXT_REVIEWS":"Import avis externes","CMP_MESSAGING":"Messagerie acheteur / vendeur","CMP_EXCLUSIVE":"Exclusif","CMP_VIA_APP":"Via app","CMP_BASIC":"Basique","CMP_NA":"N/A","FAQ_TITLE":"Questions fréquentes","FAQ_Q1":"Combien coûte Shop in Bio ?","FAQ_A1":"Shop in Bio est \u003Cstrong>inclus gratuitement\u003C/strong> sur Hou.la. Une commission unique de 5 % par vente est prélevée. Aucun abonnement supplémentaire.","FAQ_Q2":"Quels types de produits puis-je vendre ?","FAQ_A2":"4 types : produits physiques (vêtements, accessoires, art...), produits numériques (e-books, presets, templates...), services (coaching, consulting, formations...) et live selling (vente en direct).","FAQ_Q3":"Comment sont gérés les paiements ?","FAQ_A3":"Via \u003Cstrong>Stripe Connect\u003C/strong>. Vos clients paient par carte bancaire, Apple Pay ou Google Pay avec 3D Secure. Vous recevez les fonds directement sur votre compte Stripe après déduction de la commission.","FAQ_Q4":"Comment fonctionne la livraison ?","FAQ_A4":"Vous configurez vos zones de livraison (France, Europe, monde) avec des tarifs au poids. Vous pouvez définir un seuil de livraison gratuite, choisir parmi 12+ transporteurs et proposer le retrait sur place.","FAQ_Q5":"Puis-je synchroniser avec ma boutique existante ?","FAQ_A5":"Oui ! Connectez WooCommerce (plugin WordPress officiel), Shopify (API GraphQL) ou PrestaShop (API REST). Vos produits, stocks et commandes se synchronisent automatiquement.","FAQ_Q6":"Comment fonctionne le panier ouvert ?","FAQ_A6":"Après un achat, votre client peut ajouter des articles pendant une fenêtre configurable (1h à 7 jours). Les articles sont fusionnés à la commande existante et seul le delta de frais de port est facturé si le poids change de tranche.","FAQ_Q7":"Mes produits sont-ils modérés ?","FAQ_A7":"Oui, chaque produit est vérifié automatiquement par notre IA (qualité des images, cohérence du contenu, détection d'articles interdits). Les produits conformes sont publiés immédiatement. Vous pouvez re-soumettre jusqu'à 3 fois en cas de rejet.","FAQ_Q8":"Que se passe-t-il en cas de litige avec un client ?","FAQ_A8":"Un syst
89ème en 3 étapes : signalement du problème par l'acheteur, discussion directe vendeur/acheteur, puis arbitrage Hou.la si aucun accord. Si vous ne répondez pas sous 5 jours, le litige est résolu en faveur de l'acheteur.","FAQ_Q9":"Puis-je proposer des codes promo ?","FAQ_A9":"Oui, 3 types : pourcentage de réduction, montant fixe et livraison gratuite. Avec options avancées : montant minimum, plafond, nombre d'utilisations, dates de validité, ciblage par produit ou collection.","FAQ_Q10":"Comment fonctionnent les avis clients ?","FAQ_A10":"Seuls les acheteurs vérifiés (commande livrée) peuvent laisser un avis avec note, texte et photos. Vous pouvez aussi importer vos avis depuis Trustpilot, Google Business ou Avis Vérifiés.","FAQ_Q11":"La facturation est-elle automatique ?","FAQ_A11":"Oui, une facture avec numéro séquentiel est générée automatiquement à chaque expédition. Vous pouvez aussi uploader une facture personnalisée en PDF.","FAQ_Q12":"Puis-je personnaliser l'apparence de ma boutique ?","FAQ_A12":"Oui : logo, libellés des onglets, vue par défaut (contenu ou boutique), collections personnalisées, produits à la une, ordre d'affichage. Votre boutique s'intègre directement à votre page Link in Bio."},"AUTO_PRINT":{"GA_TITLE":"Fonctionnalité : Impression automatique","HOWTO_NAME":"Comment configurer l'impression automatique sur Hou.la","HOWTO_DESC":"Guide étape par étape pour imprimer automatiquement vos étiquettes et factures dès la réception d'une commande.","STEP1_NAME":"Installer Houla Print","STEP1_TEXT":"Téléchargez et installez l'application desktop Houla Print sur votre poste de travail.","STEP2_NAME":"Se connecter via OAuth","STEP2_TEXT":"Authentifiez-vous avec votre compte Hou.la de manière sécurisée via OAuth 2.0 PKCE.","STEP3_NAME":"Configurer les imprimantes","STEP3_TEXT":"Assignez vos imprimantes physiques (Zebra, Dymo, etc.) par type de document et par workspace dans le tableau de bord.","STEP4_NAME":"Impression automatique activée","STEP4_TEXT":"Chaque nouvelle commande déclenche automatiquement l'impression des étiquettes et factures sur l'imprimante configurée.","TITLE_HIGHLIGHT":"Impression automatique","TITLE_SUFFIX":"vos étiquettes et factures imprimées instantanément","INTRO":"Connectez vos imprimantes \u003Cstrong>Zebra\u003C/strong>, \u003Cstrong>Dymo\u003C/strong> ou \u003Cstrong>ESC/POS\u003C/strong> et imprimez automatiquement étiquettes d'expédition et factures dès qu'une commande est passée sur votre \u003Cstrong>Shop in Bio\u003C/strong>
89.","BADGE_TITLE":"Intégration native","BADGE_DESC":"Hou.la imprime directement depuis le serveur vers vos imprimantes connectées, sans logiciel tiers.","WHY_TITLE":"Pourquoi automatiser l'impression ?","WHY1_TITLE":"Gain de temps","WHY1_DESC":"Plus besoin de copier-coller des adresses manuellement. Chaque commande génère son étiquette \u003Cstrong>en moins de 2 secondes\u003C/strong>.","WHY2_TITLE":"Multi-imprimantes","WHY2_DESC":"Assignez une imprimante par workspace et par type de document. Gérez \u003Cstrong>plusieurs postes d'impression\u003C/strong> simultanément.","WHY3_TITLE":"Formats professionnels","WHY3_DESC":"Support natif des formats \u003Cstrong>Zebra ZPL\u003C/strong> (57×32 mm) et \u003Cstrong>ESC/POS\u003C/strong> pour imprimantes thermiques et à reçus.","WHY4_TITLE":"Fiabilité totale","WHY4_DESC":"Chaque job d'impression est suivi en temps réel : \u003Cstrong>en attente, imprimé, échoué\u003C/strong>. Retry automatique en cas d'erreur.","HOW_TITLE":"Comment configurer l'impression automatique ?","STEP1_TITLE":"Installez Houla Print","STEP1_DESC":"Téléchargez l'application desktop sur votre poste Windows, Mac ou Linux. Connectez-vous via OAuth.","STEP2_TITLE":"Sélectionnez vos imprimantes","STEP2_DESC":"Dans le tableau de bord Hou.la, assignez une imprimante à chaque type de document et workspace.","STEP3_TITLE":"Activez l'auto-impression","STEP3_DESC":"Activez l'impression automatique dans vos paramètres workspace. Choisissez les types de documents à imprimer.","STEP4_TITLE":"Imprimez en temps réel","STEP4_DESC":"Chaque commande déclenche instantanément l'impression. Suivez les statuts depuis votre tableau de bord.","SECURITY_TITLE":"Sécurisé de bout en bout","SECURITY_DESC":"Connexion OAuth 2.0 PKCE, communication WebSocket chiffrée, aucune donnée client stockée localement sur le poste d'impression.","CTA_TITLE":"Automatisez vos impressions dès maintenant","CTA_DESC":"Créez votre compte, installez Houla Print et commencez à imprimer automatiquement.","CTA_BUTTON":"Créer mon compte gratuit","CONTACT":"Des questions ? \u003Ca href='mailto:[email protected]'>Contactez-nous\u003C/a>"}},"AM_OPTOUT":{"KICKER":"Accompagnement Hou.la","TITLE":"Ne plus recevoir les messages de votre account manager","DESC":"Votre account manager Hou.la vous écrit pour vous aider à développer le compte {{name}}. Si vous ne souhaitez plus recevoir ces messages, confirmez ci-dessous.","DESC_NO_NAME":"Votre account manager Hou.la vous écrit pour vous aider à développer votre compte. Si vous ne souhaitez plus recevoir ces messages, confirmez ci-dessous.","BTN_CONFIRM":"Ne plus être contacté","DONE_TITLE":"C’est noté","DONE_DESC":"Vous ne recevrez plus de messages de votre account manager Hou.la. Les autres e-mails (commandes, sécurité) ne changent pas.","ALREADY_TITLE":"Déjà pris en compte","ALREADY_DESC":"Vous avez déjà demandé à ne plus être contacté par votre account manager.","UNDO_HINT":"Changé d’avis ? Réactivez « Accompagnement par l’équipe Hou.la » dans Studio, Mon compte, Préférences e-mail.","INVALID_TITLE":"Lien invalide","INVALID_DESC":"Ce lien de désinscription est incomplet ou n’est plus valable. Vous pouvez gérer vos préférences e-mail depuis Studio, Mon compte.","ERROR_TITLE":"Erreur","ERROR_DESC":"La désinscription n’a pas pu être enregistrée. Réessayez dans un instant.","BTN_RETRY":"Réessayer","BTN_HOME":"Retour à l’accueil"},"INVITE":{"TITLE":"Vous êtes invité(e) !","DESC":"Un collaborateur vous invite à rejoindre son espace de travail sur hou.la.","LABEL_EMAIL":"Email","LABEL_ROLE":"Rôle","LABEL_EXPIRES":"Expiration","BTN_ACCEPT":"Accepter l'invitation","BTN_LOGIN":"Se connecter pour accepter","BTN_HOME":"Retour à l'accueil","BTN_GO_MANAGER":"Accéder à mon espace","LOGIN_REQUIRED":"Connectez-vous ou créez un compte pour accepter cette invitation.","ACCEPTED_TITLE":"Invitation acceptée !","ACCEPTED_DESC":"Vous avez rejoint l'espace de travail. Vous pouvez maintenant accéder à toutes les ressources partagées.","EXPIRED_TITLE":"Invitation expirée","EXPIRED_DESC":"Cette invitation a expiré. Demandez au propriétaire de l'espace de vous envoyer une nouvelle invitation.","NOT_FOUND_TIT
89LE":"Invitation introuvable","NOT_FOUND_DESC":"Cette invitation n'existe pas ou a déjà été utilisée.","ERROR_TITLE":"Erreur","ERROR_DESC":"Impossible de charger les détails de l'invitation.","TOAST_ACCEPTED":"Vous avez rejoint l'espace de travail !","TOAST_ERROR":"Impossible d'accepter l'invitation","LABEL_WORKSPACE":"Espace de travail","ROLE_OWNER":"Propriétaire","ROLE_MEMBER":"Membre","ROLE_VIEWER":"Lecteur"},"SDK":{"BADGE":"Open Source","TITLE":"SDK TypeScript officiel pour Hou.la","SUBTITLE":"Intégrez la puissance de Hou.la dans vos applications \u003Cstrong>Node.js\u003C/strong> et \u003Cstrong>TypeScript\u003C/strong>. Zéro dépendance, léger et entièrement typé.","CTA_NPM":"Voir sur npm","CTA_GITHUB":"Code source","INSTALL_TITLE":"Installation","QUICKSTART_TITLE":"Démarrage rapide","QUICKSTART_DESC":"Quelques lignes suffisent pour créer votre premier lien court :","CODE_COMMENT_CREATE":"Créer un lien court","FEATURES_TITLE":"Ce que le SDK vous offre","FEAT1_TITLE":"Zéro dépendance","FEAT1_DESC":"Aucune dépendance externe. Le SDK utilise uniquement les API natives de Node.js pour un bundle minimal.","FEAT2_TITLE":"100% typé","FEAT2_DESC":"Types TypeScript complets pour chaque méthode, paramètre et réponse. Autocomplete et vérification en temps réel.","FEAT3_TITLE":"Léger","FEAT3_DESC":"Moins de 10 Ko compressé. N'alourdit pas votre application.","FEAT4_TITLE":"Sécurisé","FEAT4_DESC":"Authentification par clé API. Toutes les requêtes sont chiffrées via HTTPS.","FEAT5_TITLE":"API complète","FEAT5_DESC":"Création, mise à jour, suppression, statistiques et liste de tous vos liens courts.","FEAT6_TITLE":"Analytics intégrés","FEAT6_DESC":"Accédez aux statistiques de clics, pays, appareils et navigateurs pour chaque lien.","METHODS_TITLE":"Méthodes disponibles","METHOD_CREATE":"Créer un nouveau lien court avec toutes les options (UTM, expiration, mot de passe, etc.).","METHOD_UPDATE":"Mettre à jour un lien existant (URL de destination, slug, options).","METHOD_FIND_ONE":"Récupérer les détails d'un lien par son identifiant.","METHOD_FIND_ALL":"Lister tous vos liens avec pagination et filtres.","METHOD_DELETE":"Supprimer définitivement un lien court.","METHOD_STATS":"Récupérer les statistiques détaillées d'un lien.","CTA_TITLE":"Prêt à intégrer Hou.la ?","CTA_DESC":"Créez votre clé API gratuitement et commencez à intégrer Hou.la dans vos projets.","CTA_API_DOC":"Documentation API","CTA_SIGNUP":"Créer un compte gratuit"},"REVIEW":{"TITLE":"Donnez votre avis","SUBTITLE":"{{buyerName}}, partagez votre expérience d'achat chez {{sellerName}}","SELLER_RATING_TITLE":"Notez le vendeur {{sellerName}}","COMMENT_PLACEHOLDER":"Votre commentaire (facultatif)","SUBMIT":"Envoyer mes avis","SUCCESS_TITLE":"Merci pour vos avis !","SUCCESS_DESC":"Vos avis ont bien été enregistrés et aideront d'autres acheteurs.","ALREADY_REVIEWED_TITLE":"Avis déjà envoyés","ALREADY_REVIEWED_DESC":"Vous avez déjà laissé un avis pour cette commande.","ERROR_NO_TOKEN":"Lien d'avis invalide. Vérifiez le lien reçu par e-mail.","ERROR_INVALID_TOKEN":"Ce lien d'avis est invalide ou a expiré.","ERROR_SUBMIT":"Erreur lors de l'envoi. Veuillez réessayer."},"EARLY_ACCESS":{"BADGE":"Accès VIP: sur invitation","TITLE":"Soyez parmi les premiers à tester Hou.la","SUBTITLE":"Vous faites partie des créateurs et vendeurs sélectionnés pour découvrir l'application Hou.la en avant-première, avant son ouverture au public.","PERK_1":"Accès anticipé exclusif à l'app mobile","PERK_2":"Un lien de téléchargement privé rien que pour vous","PERK_3":"Votre avis façonne directement le produit","VISUAL_ALT":"Aperçu de l'application Hou.la","FORM_TITLE":"Demandez votre accès","FORM_HINT":"Renseignez l'adresse e-mail de votre compte Google Play Store pour recevoir l'accès au test fermé.","ROLE_LABEL":"Vous êtes…","ROLE_CREATOR":"Créateur","ROLE_SELLER":"Vendeur","FIRSTNAME_LABEL":"Prénom","FIRSTNAME_PLACEHOLDER":"Jean","LASTNAME_LABEL":"Nom","LASTNAME_PLACEHOLDER":"Dupont","EMAIL_LABEL":"E-mail du compte Google Play Store","EMAIL_PLACEHOLDER":"[email protected]","EMAIL_HELP":"C'est l'adresse liée à votre compte Google Play : elle nous sert à vous ajouter au test fermé.","CONTENT_LABEL":"Type de contenu (optionnel)","CONTENT_PLACEHOLDER":"Mode, Beauté, Gaming, High-tech…","SUBMIT":"Demander mon accès VIP","LEGAL":"En soumettant ce formulaire, vous acceptez d'être contacté au sujet de l'accès anticipé à Hou.la.","ERROR_ROLE":"Veuillez sélectionner votre profil.","ERROR_FIRSTNAME":"Veuillez renseigner votre prénom.","ERROR_LASTNAME":"Veuillez renseigner votre nom.","ERROR_EMAIL":"Veuillez renseigner une adresse e-mail valide.","
89ERROR_FORM":"Veuillez vérifier vos informations avant de continuer.","ERROR_GENERIC":"Une erreur est survenue. Veuillez réessayer.","CONFIRM_TITLE":"Demande bien reçue !","CONFIRM_TEXT":"Merci ! Votre e-mail a bien été enregistré. Vous recevrez très bientôt un lien privé pour télécharger l'application et la tester en avant-première.","CONFIRM_CLOSE":"Parfait, j'ai hâte !"},"CAREERS":{"BADGE":"Rejoignez l'aventure","HERO_TITLE_1":"Construisez le futur du","HERO_TITLE_HIGHLIGHT":"réseau social","HERO_TITLE_2":"avec nous","HERO_SUBTITLE":"Hou.la est un projet français indépendant : un réseau social nouvelle génération, vidéo, live et shopping. Rejoignez-nous ou devenez bêta-testeur.","HERO_CTA_JOBS":"Voir les postes","HERO_CTA_BETA":"Devenir bêta-testeur","HERO_CTA_AMBASSADOR":"Devenir ambassadeur","DEPARTMENT_SUPPORT":"Support","DEPARTMENT_ENGINEERING":"Ingénierie","DEPARTMENT_DATA":"Data","DEPARTMENT_SALES":"Commercial","DEPARTMENT_FINANCE":"Finance","VALUES_TITLE":"Nos valeurs","VALUES_SUBTITLE":"Ce qui nous anime au quotidien et guide chacune de nos décisions.","VALUE_INNOVATION_TITLE":"Innovation","VALUE_INNOVATION_DESC":"Nous repoussons les limites du possible avec des technologies de pointe : IA, analytics temps réel, automatisations intelligentes.","VALUE_TRANSPARENCY_TITLE":"Transparence","VALUE_TRANSPARENCY_DESC":"Open-roadmap, tarifs clairs, RGPD natif. Pas de données revendues, pas de dark patterns.","VALUE_IMPACT_TITLE":"Impact","VALUE_IMPACT_DESC":"Chaque fonctionnalité est pensée pour avoir un impact mesurable sur le marketing de nos utilisateurs.","VALUE_REMOTE_TITLE":"Bureaux à Marne-la-Vallée","VALUE_REMOTE_DESC":"Nos bureaux sont à Chessy (Marne-la-Vallée), aux portes de Paris. Une équipe soudée, sur place, pour avancer vite ensemble.","JOBS_TITLE":"Postes à pourvoir","JOBS_SUBTITLE":"Nous ouvrons ces postes au premier trimestre 2027, à Chessy (Marne-la-Vallée). Envoyez votre candidature spontanée dès maintenant pour être contacté·e en priorité.","BADGE_Q3_2026":"Q1 2027","REMOTE":"Chessy · Marne-la-Vallée","FULL_TIME":"CDI / Temps plein","JOB_FULLSTACK_TITLE":"Développeur·se Fullstack Senior","JOB_FULLSTACK_DESC":"Construisez le cœur de Hou.la, du back au front : API temps réel, feed, lives et marketplace, avec de la vidéo et du streaming à grande échelle.","JOB_FULLSTACK_TAGS":"TypeScript, Go, Python, SQL, Angular, WebSocket, Streaming","JOB_MOBILE_TITLE":"Développeur·se Mobile Senior","JOB_MOBILE_DESC":"Développez l'app Hou.la iOS et Android en Flutter : feed vidéo, lives, shopping et notifications, avec une expérience fluide et native.","JOB_MOBILE_TAGS":"Flutter, iOS, Android, Dart, WebRTC","JOB_SYSADMIN_TITLE":"Administrateur·rice Système / SRE","JOB_SYSADMIN_DESC":"Opérez et automatisez notre infrastru
89cture : serveurs de streaming, conteneurs, déploiements et supervision, pour une plateforme fiable à grande échelle.","JOB_SYSADMIN_TAGS":"Docker, Ansible, Terraform, Grafana, Prometheus","JOB_AI_TITLE":"IA Engineer","JOB_AI_DESC":"Intégrez des modèles IA dans nos produits : modération, recommandations du feed, recherche et outils créateurs, de l'idée à la production.","JOB_AI_TAGS":"Python, LLM, Modération, Recommandation","JOB_OPS_TITLE":"Ops / Support","JOB_OPS_DESC":"Pilotez le support et les opérations : accompagnement des utilisateurs, résolution des tickets, qualité de service et coordination interne.","JOB_OPS_TAGS":"Support, Opérations, Relation client, Process","JOB_ACCOUNT_TITLE":"Account Manager","JOB_ACCOUNT_DESC":"Accompagnez nos vendeurs et nos créateurs : onboarding, suivi et montée en puissance de leurs ventes et de leur audience sur Hou.la.","JOB_ACCOUNT_TAGS":"Créateurs, Vendeurs, Onboarding, Relation","JOB_FINANCE_TITLE":"Directeur·rice Financier·ère","JOB_FINANCE_DESC":"Structurez la finance de Hou.la : pilotage budgétaire, comptabilité, flux de la marketplace et paiements créateurs, reporting et conformité.","JOB_FINANCE_TAGS":"Finance, Comptabilité, Contrôle de gestion, Reporting","APPLY_TITLE":"Candidature spontanée","APPLY_SUBTITLE":"Les postes ouvrent au premier trimestre 2027, à Chessy (Marne-la-Vallée). Envoyez votre candidature maintenant pour être contacté·e en priorité.","APPLY_SUCCESS":"Votre candidature a bien été envoyée ! Nous vous contacterons dès que le poste sera ouvert.","FORM_NAME":"Nom complet","FORM_EMAIL":"Adresse e-mail","FORM_POSITION":"Poste visé","FORM_POSITION_PLACEHOLDER":"Sélectionnez un poste","FORM_MESSAGE":"Message (facultatif)","FORM_SUBMIT":"Envoyer ma candidature","BETA_BADGE":"Programme bêta-testeur","BETA_TITLE":"Devenez bêta-testeur et testez Hou.la en avant-première","BETA_DESC":"Testez nos nouvelles fonctionnalités avant tout le monde, partagez vos retours structurés et pesez sur le produit. En remerciement, un badge bêta-testeur exclusif sur votre profil et un accès anticipé aux nouveautés. Votre feedback est évalué par IA pour garantir sa qualité.","BETA_ADV_1":"Badge bêta-testeur exclusif sur votre profil","BETA_ADV_2":"Accès en avant-première aux nouvelles fonctionnalités","BETA_ADV_3":"Contact direct avec l'équipe produit","BETA_ADV_4":"Votre voix compte dans les décisions produit","BETA_STEP_1":"Inscrivez-vous","BETA_STEP_2":"Créez votre compte Hou.la","BETA_STEP_3":"Envoyez votre feedback","BETA_STEP_4":"Recevez votre badge et l'accès anticipé","BETA_CTA":"Devenir bêta-testeur","BETA_SUCCESS":"Votre inscription a bien été enregistrée ! Vous recevrez un e-mail avec les prochaines étapes.","FORM_MOTIVATION":"Motivation (facultatif)","FORM_MOTIVATION_PLACEHOLDER":"Dites-nous pourquoi vous souhaitez devenir bêta-testeur...","AMBASSADOR_BADGE":"Programme Ambassadeur","AMBASSADOR_TITLE":"Devenez Ambassadeur Hou.la","AMBASSADOR_DESC":"Parlez de Hou.la dans un article, une vidéo ou un post sur les réseaux sociaux et devenez Ambassadeur officiel : badge vérifié et mise en avant.","AMBASSADOR_REWARD_TITLE":"Badge Ambassadeur + mise en avant","AMBASSADOR_REWARD_DESC":"Publiez un contenu de qualité mentionnant Hou.la (article de blog, vidéo YouTube, post LinkedIn/X...) et recevez un badge Ambassadeur vérifié, une mise en avant éditoriale et un accès anticipé aux nouveautés.","AMBASSADOR_STEP_1":"Inscrivez-vous via le formulaire","AMBASSADOR_STEP_2":"Créez votre contenu","AMBASSADOR_STEP_3":"Partagez-le publiquement","AMBASSADOR_STEP_4":"Recevez votre badge Ambassadeur","AMBASSADOR_FORM_TITLE":"Rejoindre le programme Ambassadeur","AMBASSADOR_FORM_URL":"URL de votre blog / chaîne / profil (facultatif)","AMBASSADOR_FORM_URL_PLACEHOLDER":"https://votre-blog.com","AMBASSADOR_FORM_MESSAGE":"Message (facultatif)","AMBASSADOR_FORM_MESSAGE_PLACEHOLDER":"Décrivez le type de contenu que vous souhaitez créer...","AMBASSADOR_CTA":"Devenir ambassadeur","AMBASSADOR_SUCCESS":"Votre candidature ambassadeur a été enregistrée ! Nous vous contacterons sous 48h.","ERROR_GENERIC":"Une erreur est survenue. Veuillez réessayer.","
89ERROR_NAME_REQUIRED":"Le nom est obligatoire.","ERROR_EMAIL_REQUIRED":"L'adresse e-mail est obligatoire.","ERROR_EMAIL_INVALID":"Veuillez saisir une adresse e-mail valide.","ERROR_POSITION_REQUIRED":"Veuillez sélectionner un poste.","FORM_CV":"CV (facultatif)","FORM_CV_CHOOSE":"Joindre un CV","FORM_CV_HINT":"Format PDF uniquement, 5 Mo max."},"BILLING":{"PLAN_CURRENT":"Plan actuel","SUBSCRIBE_CTA":"S'abonner","UPGRADE_TO":"Passer au {{plan}}","DOWNGRADE_TO":"Passer au {{plan}}"},"LIVE":{"HERO_BADGE":"HOULA LIVE: EN DIRECT","HERO_TITLE":"Vendez en live sur vos propres termes","HERO_SUBTITLE":"Lancez vos lives shoppables, épinglez vos produits, encaissez instantanément. Sans dépendre de TikTok, Instagram ou Amazon Live.","HERO_CTA_PRIMARY":"Démarrer gratuitement","HERO_CTA_SECONDARY":"Voir les tarifs","HERO_STAT1_VALUE":"3%","HERO_STAT1_LABEL":"commission min.","HERO_STAT2_VALUE":"0 €","HERO_STAT2_LABEL":"abonnement min.","HERO_STAT3_VALUE":"100%","HERO_STAT3_LABEL":"votre audience","PAIN_TITLE":"Vous êtes créateur ou vendeur ?","PAIN_1":"Banni de TikTok Shop sans raison, vos 300k abonnés inutilisables du jour au lendemain.","PAIN_2":"Commission Meta à 10%, frais cachés, conditions qui changent à chaque mise à jour.","PAIN_3":"Votre audience appartient à la plateforme. Impossible de l'exporter, de la contacter directement.","PAIN_SOLUTION":"Avec Houla Live, vous êtes chez vous. Vos abonnés, vos règles, vos revenus.","FEATURES_BADGE":"FONCTIONNALITÉS","FEATURES_TITLE":"Tout pour vendre en direct","FEATURES_SUBTITLE":"Des outils pensés pour les créateurs qui veulent vendre sans barrières.","FEAT1_TITLE":"Live Shopping","FEAT1_DESC":"Diffusez en direct face caméra depuis votre smartphone. Qualité HD, faible latence, connexion stable.","FEAT2_TITLE":"Épingler des produits","FEAT2_DESC":"Épinglez vos articles en temps réel pendant le live. Vos spectateurs achètent en un tap sans quitter le stream.","FEAT3_TITLE":"Replay shoppable","FEAT3_DESC":"Après le live, le replay reste disponible avec les produits épinglés. Le panier reste ouvert: vos ventes continuent.","FEAT4_TITLE":"Houla Pay","FEAT4_DESC":"Encaissement natif via Houla Pay. Vos clients paient en direct, vous recevez vos fonds sans intermédiaire.","FEAT5_TITLE":"Chat & Modération","FEAT5_DESC":"Chat en temps réel avec messages épinglés, modérateurs désignés et filtres anti-spam automatiques.","FEAT6_TITLE":"Notifications push","FEAT6_DESC":"Vos abonnés reçoivent une notification dès que vous lancez un live. Remplissez votre stream en quelques secondes.","FEAT7_TITLE":"Analytics détaillés","FEAT7_DESC":"Spectateurs uniques, taux de conversion, revenus par produit épinglé, durée de visionnage. Tout en temps réel.","FEAT8_TITLE":"Gestion des commandes","FEAT8_DESC":"Gérez vos commandes, expéditions, retours et litiges directement depuis l'app. Synchronisé avec votre boutique hou.la.","FEAT9_TITLE":"Votre audience vous appartient","FEAT9_DESC":"Export complet de vos abonnés, zéro banissement arbitraire. Vous gardez le contrôle total de votre communauté.","EXCLUSIVE_BADGE":"EXCLUSIF","HOW_BADGE":"COMMENT ÇA MARCHE","HOW_TITLE":"Lancez votre premier live en 4 étapes","HOW_STEP1_TITLE":"Créez votre compte","HOW_STEP1_DESC":"Inscrivez-vous sur hou.la et activez votre boutique. Connectez Houla Pay pour encaisser.","HOW_STEP2_TITLE":"Téléchargez l'app","HOW_STEP2_DESC":"Installez Houla Live sur iOS ou Android. Connectez-vous avec votre compte hou.la.","HOW_STEP3_TITLE":"Lancez le live","HOW_STEP3_DESC":"Appuyez sur Démarrer, épinglez vos produits et vendez face caméra. Simple comme un appel vidéo.","HOW_STEP4_TITLE":"Encaissez","HOW_STEP4_DESC":"Les commandes arrivent en temps réel dans votre tableau de bord. Les fonds sont virés sous 48h.","PRICING_BADGE":"TARIFS","PRICING_TITLE":"Commission transparente, zéro surprise","PRICING_SUBTITLE":"Payez uniquement quand vous vendez. Aucun abonnement minimal obligatoire.","PLAN_FREE_LABEL":"Gratuit","PLAN_FREE_PERIOD":"/ mois","PLAN_PRO_LABEL":"Pro","PLAN_PRO_PERIOD":"/ mois","PLAN_BUSINESS_LABEL":"Business","PLAN_BUSINESS_PERIOD":"/ mois","PLAN_COMMISSION_LABEL":"de commission par vente","PLAN_POPULAR":"LE PLUS POPULAIRE","PLAN_FREE_F1":"Lives illimités","PLAN_FREE_F2":"Produits illimités","PLAN_FREE_F3":"Houla Pay inclus","PLAN_PRO_F1":"Tout du Gratuit","PLAN_PRO_F2":"Replay shoppable 30 jours","PLAN_PRO_F3":"Notifications push abonnés","PLAN_PRO_F4":"Analytics avancés","PLAN_BUSINESS_F1":"Tout du Pro","PLAN_BUSINESS_F2":"Codes promo lives exclusifs","PLAN_BUSINESS_F3":"Export audience & emails","PLAN_BUSINESS_F4":"Priorité support","PLAN_CTA_FREE":"Créer un compte gratuit","PLAN_CTA_PRO":"Démarrer en Pro","PLAN_CTA_BUSINESS":"Passer en Business","PRICING_NOTE":"La commission inclut les frais de traitement Houla Pay. Pas de frais cachés.","ECOSYSTEM_TITLE":"Connecté à tout l'écosystème hou.la","ECOSYSTEM_DESC":"Houla Live se connecte directement à votre boutique, votre page Link in Bio et vos analytics. Un seul outil pour votre présence en ligne complète.","ECOSYSTEM_LINK1":"Page Link in Bio","ECOSYSTEM_LINK2":"Shop in Bio","ECOSYSTEM_LINK3":"Analytics","FAQ_TITLE":"Questions fréquentes","FAQ_Q1":"Qu'est-ce que Houla Live ?","FAQ_A1":"Houla Live est une application mobile de live shopping connectée à votre boutique hou.la. Vendez en direct face caméra, épinglez vos produits pendant le live et encaissez via Houla Pay.","FAQ_Q2":"Quelle commission prend Houla Live ?","FAQ_A2":"La commission est unique : 5 % sur chaque vente. Aucun abonnement minimum, aucun frais fixe.","FAQ_Q3":"Puis-je vendre sur Houla Live sans boutique hou.la ?","FAQ_A3":"Houla Live est conçu pour fonctionner avec votre boutique hou.la. La connexion entre les deux permet de synchroniser vos produits et commandes automatiquement.","FAQ_Q4":"Mes clients peuvent-ils acheter après le live ?","FAQ_A4":"Oui. Chaque live génère un replay shoppable : les produits épinglés restent accessibles et le panier reste ouvert après la diffusion.","FAQ_Q5":"Suis-je propriétaire de mon audie
89nce sur Houla Live ?","FAQ_A5":"Oui. Contrairement à TikTok ou Instagram, vous exportez vos données abonnés à tout moment. Votre audience vous appartient.","FAQ_Q6":"Houla Live est-il disponible sur iOS et Android ?","FAQ_A6":"Houla Live est disponible sur iOS et Android. Le diffuseur utilise l'app mobile, les spectateurs regardent directement depuis votre profil hou.la.","CTA_FINAL_TITLE":"Prêt à vendre en live ?","CTA_FINAL_DESC":"Rejoignez les créateurs qui ont choisi de vendre sans dépendre de TikTok ou Meta.","CTA_FINAL_BTN":"Créer mon compte gratuit","CTA_FINAL_BTN2":"Découvrir Shop in Bio"},"NEW_HOME":{"HERO_TITLE_1":"Vidéo.","HERO_TITLE_2":"Live.","HERO_TITLE_3":"Shopping.","HERO_SUBTITLE":"Diffuse tes contenus, fédère ta communauté et éclate-toi en live.","HERO_TAGLINE":"Le réseau social tel qu'il aurait toujours dû être !","HERO_CTA_APPSTORE":"Disponible maintenant sur iOS & Android.","HERO_CTA_EARLY_ACCESS":"Demander l'accès anticipé","HERO_STAT_CREATORS":"Créateurs","HERO_STAT_VIDEOS":"Vidéos","HERO_STAT_LIVE_VIEWS":"Vues lives","HERO_STAT_RATING":"Note Play Store","NAV_VIDEOS":"Vidéos","NAV_LIVES":"Lives","NAV_MARKETPLACE":"Marketplace","NAV_MARKETING":"Marketing Tools","NAV_DOWNLOAD":"Télécharger l'app","NAV_LOGIN":"Connexion","FEED_BADGE":"Réseau social vidéo","FEED_TITLE":"Un feed créé pour toi","FEED_SUBTITLE":"Découvre du contenu court, swipe, like, commente, partage. Suis tes créateurs préférés et construis ta communauté.","FEED_F1_TITLE":"Feed For You","FEED_F1_DESC":"Un algorithme intelligent qui apprend tes goûts et te propose du contenu qui te plaît vraiment, sans t'enfermer dans une bulle.","FEED_F2_TITLE":"Créer des vidéos","FEED_F2_DESC":"Enregistre, édite et publie tes vidéos avec des filtres, effets et un éditeur intégré.","FEED_F3_TITLE":"Interagir","FEED_F3_DESC":"Like, commente, partage, envoie des cadeaux et des messages privés à tes créateurs favoris.","LIVE_BADGE":"Live streaming","LIVE_TITLE":"Ton live, tes règles","LIVE_SUBTITLE":"Gaming, musique, danse, papote, shopping: tes lives, tes règles. Interagis avec ta communauté en temps réel avec une latence quasi nulle.","LIVE_F1_TITLE":"Tous les formats de live","LIVE_F1_DESC":"Gaming, IRL, shopping, musique, cuisine, danse, discussion: passe en live sur la thématique de ton choix.","LIVE_F2_TITLE":"Live shopping intégré","LIVE_F2_DESC":"Épingle tes produits pendant le live. Tes viewers achètent en un tap sans quitter le stream.","LIVE_F3_TITLE":"Tchat, cadeaux et interactions","LIVE_F3_DESC":"Chat en temps réel, reçois des cadeaux (coins & stars), lance des sondages, des promos flash et des enchères live.","LIVE_LATENCY":"Latence \u003C 300ms","LIVE_LATENCY_DESC":"WebRTC ultra-rapide. Tes viewers te voient en temps réel, pas avec 5 secondes de délai comme sur les autres plateformes.","MARKETPLACE_BADGE":"Marketplace","MARKETPLACE_PRETITLE":"Vends ce que tu veux, à qui tu veux","MARKETPLACE_TITLE":"Une marketplace intégrée au réseau social.","MARKETPLACE_SUBTITLE":"Vends tes produits depuis ton profil, pendant tes lives ou directement sur ta boutique. Paiement sécurisé, gestion des commandes, expédition: tout est intégré.","MARKETPLACE_COMMISSION":"Commission unique 5%. Sans abonnement. Frais Stripe au coût réel.","MARKETPLACE_F1_TITLE":"Achats pendant et hors live","MARKETPLACE_F1_DESC":"Tes clients peuvent acheter pendant un live, sur un replay shoppable ou directement depuis ta boutique.","MARKETPLACE_F2_TITLE":"Vente internationale","MARKETPLACE_F2_DESC":"Vends à qui tu veux, où tu veux. Aucune restriction géographique: DOM-TOM, Europe, monde entier.","MARKETPLACE_F3_TITLE":"Paiement immédiat","MARKETPLACE_F3_DESC":"Dès qu'un client paye, l'argent est envoyé directement sur ton compte Stripe. Aucune rétention.","MARKETPLACE_CTA_BUY":"Acheter","DIFF_BADGE":"Ce qui nous rend différent","DIFF_TITLE":"Un réseau social pensé autrement","DIFF_SUBTITLE":"On ne contrôle pas ton audience, on ne te shadowban pas, on ne vend pas tes données et on ne te force à rien. Voici ce qui change avec Hou.la.","DIFF_CAT1_TITLE":"Pour les créateurs","DIFF_C1_F1_TITLE":"Pas de shadowban","DIFF_C1_F1_DESC":"Si tu respectes les lois, tu n'es ni sanctionné ni isolé. On ne te punit pas pour un algorithme opaque.","DIFF_C1_F2_TITLE":"Algorithme basé sur le contenu","DIFF_C1_F2_DESC":"On évalue la qualité du contenu, pas la réputation du créateur. Tout le monde peut percer, quel que soit le nombre d'abonnés.","DIFF_C1_F3_TITLE":"Anti-bulle intégré","DIFF_C1_F3_DESC":"Notre algorithme inclut toujours une part de découverte. Tu ne restes pas enfermé dans une seule thématique.","DIFF_C1_F4_TITLE":"Meilleure rémunération des cadeaux","DIFF_C1_F4_DESC":"Quand tu reçois des cadeaux sur tes vidéos ou tes lives, tu touches plus que sur n'importe quelle autre plateforme.","DIFF_C1_F5_TITLE":"Éditeur vidéo avancé","DIFF_C1_F5_DESC":"Enregistre en multi-séquences, monte tes vidéos, ajoute des pistes musicales: un studio de montage complet directement dans l'app.","DIFF_C1_F6_TITLE":"Bibliothèque musicale","DIFF_C1_F6_DESC":"Accède à des centaines de milliers de titres pour tes vidéos. Suis une trend ou crée du contenu viral, ton contenu sera aussi référencé par musique et hashtags.","DIFF_C1_F7_TITLE":"Multi-compte créateur","DIFF_C1_F7_DESC":"Crée plusieurs profils (perso, entreprise, thématique) et switche d'un compte à l'autre en un tap grâce au système de Workspaces.","DIFF_CAT2_TITLE":"Pour les vendeurs","DIFF_C2_F1_TITLE":"5% de commission fixe et transparente","DIFF_C2_F1_DESC":"Pas de frais cachés, pas de commissions variables. Un taux unique, clair dès le premier jour.","DIFF_C2_F2_TITLE":"Vente sans frontières","DIFF_C2_F2_DESC":"Contrairement aux autres plateformes, on ne t'interdit pas de vendre en Belgique, dans les DOM-TOM ou ailleurs.","DIFF_C2_F3_TITLE":"Paiement immédiat, zéro rétention","DIFF_C2_F3_DESC":"Quand ton client paye, l'argent arrive sur ton compte Stripe immédiatement. Pas de délai de 15 j
89ours.","DIFF_C2_F4_TITLE":"Pas de promos ou frais de port imposés","DIFF_C2_F4_DESC":"Toi seul décides de tes prix, de tes promotions et de ta politique de livraison.","DIFF_C2_F5_TITLE":"Outils vendeur complets","DIFF_C2_F5_DESC":"Pilote ta boutique en live, visualise les commentaires sur écran déporté, gère commandes et expéditions facilement.","DIFF_C2_F6_TITLE":"Tarifs d'expédition partenaires","DIFF_C2_F6_DESC":"Bénéficie de nos partenariats transporteurs pour offrir à tes clients les meilleurs tarifs de livraison.","DIFF_CAT3_TITLE":"Pour tout le monde","DIFF_C3_F1_TITLE":"Zéro publicité","DIFF_C3_F1_DESC":"Pas de pubs entre les vidéos, pas de sponsoring intrusif. Un feed propre, du vrai contenu.","DIFF_C3_F2_TITLE":"Safe place","DIFF_C3_F2_DESC":"Des outils de modération avancés pour éviter tout comportement toxique ou préjudiciable sur la plateforme.","DIFF_C3_F3_TITLE":"Protection juste des litiges","DIFF_C3_F3_DESC":"Notre modération évalue chaque litige avec les éléments en main. Le client n'a pas automatiquement raison, on tranche de façon juste.","DIFF_C3_F4_TITLE":"Multi-workspace","DIFF_C3_F4_DESC":"Un compte utilisateur, plusieurs profils. Gère ton compte perso, ta marque et ton agence depuis le même login.","DIFF_C3_F5_TITLE":"Tes données ne sont pas à vendre","DIFF_C3_F5_DESC":"Contrairement aux autres plateformes, on ne vend pas tes données personnelles. Notre modèle économique repose sur la marketplace, pas sur la pub ciblée.","DIFF_C3_F6_TITLE":"Protection des plus jeunes","DIFF_C3_F6_DESC":"Les contenus sont évalués selon un système de classification type PEGI. L'algorithme adapte automatiquement ce qui est montré en fonction de l'âge de l'utilisateur, dès 13 ans.","TOOLS_BADGE":"Marketing Tools","TOOLS_TITLE":"Tes outils marketing, toujours là","TOOLS_SUBTITLE":"Liens courts, QR codes, Link-in-Bio, analytics avancées: les outils que tu connais déjà, intégrés dans l'écosystème Hou.la.","TOOLS_SHORTLINKS":"Short Links","TOOLS_SHORTLINKS_DESC":"Short links","TOOLS_QRCODES":"QR codes","TOOLS_QRCODES_DESC":"QR codes","TOOLS_LINKINBIO":"Link-in-bio","TOOLS_LINKINBIO_DESC":"Un link-in-bio","TOOLS_ANALYTICS":"Analytics","TOOLS_ANALYTICS_DESC":"Analytics","TOOLS_CTA":"Découvrir Marketing Tools →","NAV_SELLERS":"Vendeurs","ECO_GRAPH_ARIA":"Schéma animé de l'écosystème Hou.la : les clients, l'application, les connecteurs WooCommerce et Shopify, et Google Merchant.","ECO_GRAPH_CLIENTS":"Vos clients","ECO_GRAPH_APP":"La plateforme","ECO_GRAPH_GMC":"Google Merchant","SELLERS_BADGE":"Pour les vendeurs","SELLERS_TITLE":"Concentrez-vous sur vos ventes. On gère la technique.","SELLERS_SUBTITLE":"Catalogue, commandes, stocks, expéditions, visibilité : notre écosystème connecté automatise tout pour vous, du débutant au pro.","SELLERS_P1_TITLE":"Tout est synchronisé","SELLERS_P1_DESC":"Votre boutique, vos stocks et vos commandes restent à jour en temps réel, sans double saisie.","SELLERS_P2_TITLE":"Zéro tâche technique","SELLERS_P2_DESC":"Connecteurs, impression, visibilité : on s'occupe de l'infrastructure pendant que vous vendez.","SELLERS_P3_TITLE":"Plus de temps pour vos clients","SELLERS_P3_DESC":"Libérez-vous des tâches répétitives et investissez votre énergie là où ça compte : la relation client.","CONNECTORS_BADGE":"Écosystème connecté","CONNECTORS_TITLE":"Vos boutiques, synchronisées en temps réel","CONNECTORS_SUBTITLE":"Branchez votre boutique existante en quelques minutes grâce à nos connecteurs officiels. Catalogue et commandes restent parfaitement synchronisés.","CONNECTORS_WOO_TITLE":"Connecteur WooCommerce","CONNECTORS_WOO_DESC":"Synchronisez votre boutique WordPress / WooCommerce avec Hou.la en installant notre plugin officiel.","CONNECTORS_WOO_B1":"Import automatique du catalogue produits","CONNECTORS_WOO_B2":"Stocks mis à jour en temps réel","CONNECTORS_WOO_B3":"Commandes remontées dans WooCommerce","CONNECTORS_SHOPIFY_TITLE":"Connecteur Shopify","CONNECTORS_SHOPIFY_DESC":"Reliez votre boutique Shopify à Hou.la via notre application dédiée et vendez en live sans effort.","CONNECTORS_SHOPIFY_B1":"Synchronisation du catalogue et des variantes","CONNECTORS_SHOPIFY_B2":"Gestion unifiée des stocks","CONNECTORS_SHOPIFY_B3":"Commandes créées automatiquement dans Shopify","CONNECTORS_SHOPIFY_GUIDE":"Connecter ma boutique dès maintenant : voir le guide pas à pas","CONNECTORS_SYNC_TITLE":"Synchronisation bidirectionnelle en temps réel","CONNECTORS_SYNC_DESC":"Une vente sur Hou.la met à jour votre stock côté boutique, et inversement. Toujours cohérent, jamais de survente.","CONNECTORS_VISIBILITY_BADGE":"Visibilité maximisée","CONNECTORS_VISIBILITY_TITLE":"Vos produits vus bien au-delà de notre plateforme","CONNECTORS_VISIBILITY_DESC":"Vos articles apparaissent sur la Marketplace de notre réseau social et sont automatiquement poussés sur Google Merchant pour capter du trafic d'acheteurs partout sur le web.","CONNECTORS_CHANNEL_MARKETPLACE":"Marketplace Hou.la","CONNECTORS_CHANNEL_GOOGLE":"Google Shopping","LOGISTICS_BADGE":"Logistique automatisée","LOGISTICS_TITLE":"L'expédition, sans la corvée","LOGISTICS_SUBTITLE":"De l'impression des étiquettes au choix du transporteur, on simplifie toute votre logistique.","LOGISTICS_PRINT_OVERLINE":"Logiciel de bureau natif","LOGISTICS_PRINT_TITLE":"houla-print : l'impression automatique de vos commandes","LOGISTICS_PRINT_DESC":"Notre logiciel de bureau, compatible Windows et macOS, imprime automatiquement la facture et l'étiquette transporteur dès qu'une commande est prête. Plus de saisie manuelle, plus d'erreurs.","LOGISTICS_PRINT_B1":"Impression déclenchée automatiquement, sans manipulation","LOGISTICS_PRINT_B2":"Facture client + étiquette transporteur générées d'un coup","LOGISTICS_PRINT_B3":"Compatible avec vos imprimantes thermiques et bureautiques","LOGISTICS_FLOW_ORDER":"Vente en direct","LOGISTICS_FLOW_PRODUCT":"Étiquette produit","LOGISTICS_FLOW_NOTE":"Facture","LOGISTICS_FLOW_LABEL":"Étiquette transporteur","LOGISTICS_PRODUCT_BADGE":"L'atout du live shopping","LOGISTICS_PRODUCT_TITLE":"Une étiquette produit imprimée à chaque vente en direct","LOGISTICS_PRODUCT_DESC":"À chaque achat pendant votre live, houla-print imprime instantanément une petite étiquette produit. Vous la collez directement sur l'article : vous savez immédiatement à qui il appartient et à quel prix il a été vendu. Fini les confusions et les erreurs d'attribution au milieu d'un live à 100 à l'heure.","LOGISTICS_PRODUCT_B1":"Acheteur et prix de vente identifiés en un coup d'œil","LOGISTICS_PRODUCT_B2":"Zéro erreur d'attribution, même pendant les pics de ventes","LOGISTICS_GROUPED_TITLE":"Commandes groupées : un seul colis, des frais de port payés une seule fois","LOGISTICS_GROUPED_DESC":"Vos clients peuvent acheter plusieurs fois pendant le live et ne régler qu'une seule fois les frais de port (sauf changement de tranche de poids). Tout est regroupé dans une commande unique : moins de frais pour eux, plus de paniers moyens pour vous.","LOGISTICS_FREEDOM_TITLE":"Liberté totale de transporteur","LOGISTICS_FREEDOM_DESC":"Continuez à utiliser vos transporteurs habituels et vos contrats existants. Aucune contrainte, vous gardez la main.","LOGISTICS_RATES_TITLE":"Ou profitez de nos tarifs partenaires","LOGISTICS_RATES_DESC":"Bénéficiez de nos tarifs négociés, très avantageux pour les débutants comme pour les pros, et expédiez moins cher.","LOGISTICS_RATES_BADGE":"Avantage plateforme","STUDIO_BADGE":"Live Studio","STUDIO_TITLE":"Vos écrans de contrôle pendant le live","STUDIO_SUBTITLE":"Pilotez vos lives shopping sur grand écran, sans avoir le nez collé à votre téléphone. Deux vues déportées pensées pour les vendeurs.","STUDIO_V1_TITLE":"Écran d'engagement","STUDIO_V1_DESC":"Une vue déportée sur grand écran pour suivre les commentaires, les cadeaux reçus et l'audience en direct.","STUDIO_V1_COMMENT_1":"Trop beau ! C'est dispo en M ?","STUDIO_V1_COMMENT_2":"Je prends les deux 🔥","STUDIO_V1_COMMENT_3":"Tu livres en comb
89ien de temps ?","STUDIO_V1_GIFT":"Cadeau reçu","STUDIO_V1_F1":"Commentaires en direct, lisibles de loin","STUDIO_V1_F2":"Cadeaux et animations en temps réel","STUDIO_V1_F3":"Nombre de spectateurs connectés","STUDIO_V2_TITLE":"Écran de contrôle & KPIs","STUDIO_V2_DESC":"Un tableau de bord déporté qui affiche en temps réel les statistiques de votre live shopping.","STUDIO_V2_KPI_REVENUE":"Chiffre d'affaires","STUDIO_V2_KPI_ORDERS":"Commandes","STUDIO_V2_BESTSELLER":"Meilleure vente en cours","STUDIO_V2_F1":"Chiffre d'affaires généré en direct","STUDIO_V2_F2":"Actions des clients à l'instant T","STUDIO_V2_F3":"Meilleures ventes et suivi des KPIs","COMMUNITY_BADGE":"Communauté","COMMUNITY_TITLE":"Rejoignez la communauté des vendeurs","COMMUNITY_DESC":"Échangez avec d'autres vendeurs et créateurs, posez vos questions, partagez vos astuces et faites-nous remonter vos idées. Vous n'êtes jamais seul : on construit Hou.la avec vous.","COMMUNITY_CTA":"Rejoindre la communauté","CTA_TITLE":"Prêt à rejoindre l'aventure ?","CTA_SUBTITLE":"Rejoins un réseau social sans pub, sans shadowban et sans commission opaque. Créateurs, vendeurs, spectateurs: il y a de la place pour tout le monde.","CTA_DOWNLOAD":"Télécharger sur Google Play","CTA_DOWNLOAD_IOS":"Télécharger sur l'App Store","CTA_MANAGER":"Accéder au Studio →","BETA_MODAL_TITLE":"L'app arrive très bientôt !","BETA_MODAL_TEXT":"Hou.la est actuellement en phase de test privé. Nous peaufinons les derniers détails pour t'offrir la meilleure expérience possible.","BETA_MODAL_HIGHLIGHT":"Crée ton compte dès maintenant pour être parmi les premiers informés dès l'ouverture publique.","BETA_MODAL_CTA":"Créer mon compte","BETA_MODAL_DISMISS":"Je reviendrai plus tard","FOOTER_APP_MOBILE":"App mobile","FOOTER_MARKETING":"Marketing Tools","FOOTER_HOULA":"Hou.la","FOOTER_LEGAL":"Légal"},"LP":{"NAV_WHY":"Pourquoi","NAV_VIDEOS":"Vidéos","NAV_LIVE":"Live","NAV_SELL":"Vendre","NAV_UNIVERSE":"Univers","NAV_INTERACTIVE":"Streamers","IX_KICKER":"Hou.la Connect · Pour les streamers","IX_TITLE_1":"Un cadeau arrive.","IX_TITLE_2":"Ton live réagit.","IX_LEDE":"Les cadeaux, messages et follows de ton public déclenchent ton jeu, tes overlays, OBS, tes sons et tes lumières. Ton public ne regarde plus ton live : il joue avec toi.","IX_PLATFORMS":"Tes chaînes, écoutées en même temps","IX_CTA_DISCOVER":"Découvrir Hou.la Connect","IX_FACTS":"Gratuit · Sans abonnement · Windows, macOS, Linux","IX_SCENE_CAP":"Le bocal à cadeaux, filmé dans Connect : chaque cadeau de ton public y tombe. Autour, de vrais overlays de l'app, avec ses chiffres d'exemple.","IX_STORE_T":"En ce moment dans le Store","IX_AGENCIES":"Tu gères une agence de créateurs ? Découvre le programme agences","NAV_DOWNLOAD":"Télécharger l'app","NAV_LOGIN":"Connexion","HERO_KICKER":"Réseau social · Vidéo · Live · Shopping","HERO_T1":"Vidéo.","HERO_T2":"Live.","HERO_T3":"Shopping.","HERO_TAGLINE":"Pas besoin d'être connu pour être vu.","HERO_LEDE":"Crée, passe en live, vends : sans pub, sans shadowban, sans payer pour être vu. Un algorithme qui récompense la qualité du contenu, pas la taille du compte.","HERO_CTA_VIP":"Demander l'accès anticipé","HERO_NOTE":"Disponible maintenant sur iOS & Android · télécharge l'app","WHY_KICKER":"Pourquoi Hou.la","WHY_TITLE":"Le réseau social tel qu'il aurait toujours dû être.","WHY_LEDE":"Juste les créateurs et leur communauté : ouvert aux nouveaux, sans pub imposée, sans te faire payer pour être vu. On récompense la qualité de tes contenus, pas la taille de ton compte.","CMP_BAD_HEAD":"Ailleurs","CMP_GOOD_HEAD":"Sur Hou.la","CMP_BAD_1":"Shadowbans et sanctions automatisées injustifiées, et des contestations refusées d'office.","CMP_BAD_2":"Tu es enfermé dans une bulle de contenu, toujours la même thématique.","CMP_BAD_3":"Réseau saturé : l'algo privilégie les gros comptes. Sans réputation, presque aucune chance de percer.","CMP_BAD_4":"La seule façon d'être vu quand on débute : payer de la pub.","CMP_GOOD_1":"Pas de shadowban. Tu respectes les règles, tu es diffusé, et chaque décision de modération est c
89ontestable et tranchée équitablement.","CMP_GOOD_2":"Un algorithme qui prône la diversité : on te fait découvrir, on ne t'enferme pas.","CMP_GOOD_3":"L'algo évalue la \u003Cstrong>qualité du contenu\u003C/strong> et les interactions, pas la réputation du compte. \u003Cstrong>Chaque vidéo peut devenir virale.\u003C/strong>","CMP_GOOD_4":"Zéro pub pour être vu. Plus tu fédères ta communauté, plus tu portes, mais tout le monde part avec sa chance.","FEED_KICKER":"01 · Réseau social vidéo","FEED_TITLE":"Un feed créé pour toi.","FEED_LEDE":"Du contenu court, un algorithme qui apprend tes goûts sans t'enfermer dans une bulle, et une communauté que tu construis vraiment.","FEED_F1_T":"Feed basé sur le contenu","FEED_F1_D":"On évalue la qualité de la vidéo et les interactions, pas la réputation. Tout le monde peut percer, dès la première publication.","FEED_F2_T":"Éditeur vidéo intégré","FEED_F2_D":"Enregistre en multi-séquences, monte, ajoute des pistes musicales depuis une bibliothèque de centaines de milliers de titres.","FEED_F3_T":"Interactions","FEED_F3_D":"Like, commente, partage, envoie cadeaux et messages privés, et touche une meilleure rémunération sur tes cadeaux.","LIVE_KICKER":"02 · Live streaming","LIVE_TITLE":"Ton live, tes règles.","LIVE_LEDE":"Gaming, IRL, musique, danse, papote, shopping. En un tap depuis l'app, ou depuis ton studio pro.","LIVE_M1_TAG":"Mode 1 · Mobile","LIVE_M1_T":"En un tap depuis l'app","LIVE_M1_D":"Passe en live face caméra, épingle tes produits, reçois cadeaux et commentaires en temps réel.","LIVE_M2_TAG":"Mode 2 · Studio pro · RTMP","LIVE_M2_T":"Depuis OBS, Streamlabs, vMix…","LIVE_M2_D":"Connecte ton logiciel de stream avec une simple clé RTMP. Scènes, overlays, multi-caméra, capture de jeu, alertes : ton setup broadcast complet, idéal pour les gamers et les pros du live.","STREAMS_KICKER":"Compatible","STREAMS_TITLE":"Compatible avec ton outil de stream préféré","STREAMS_LEDE":"Tu utilises déjà OBS, Streamlabs ou Restream? Diffuse vers Hou.la sans rien changer à ton setup, une simple clé RTMPS ou WHIP suffit.","STREAMS_CTA":"Voir le guide","BC_KICKER":"Outils broadcasteurs","BC_TITLE":"Pilote ton live sur grand écran, pas le nez sur ton téléphone.","BC_F1_T":"Écran d'engagement déporté","BC_F1_D":"Commentaires lisibles de loin, cadeaux et animations en temps réel, nombre de spectateurs connectés, sur un second écran.","BC_F2_T":"Écran KPI de ventes","BC_F2_D":"Chiffre d'affaires généré en direct, commandes, meilleures ventes et suivi des KPIs de ton live shopping, en un coup d'œil.","BC_F3_T":"Latence quasi nulle","BC_F3_D":"WebRTC ultra-rapide : tes viewers te voient en temps réel, pas avec plusieurs secondes de décalage.","MK_KICKER":"03 · Vendre sur Hou.la","MK_TITLE":"Pas de boutique ? On gère tout, de A à Z.","MK_LEDE":"Lance-toi dans le commerce sans rien d'autre que notre plateforme : catalogue, commandes, transporteurs, suivis, litiges. Tout le nécessaire pour vendre est inclus.","MK_F1_T":"Vends sans boutique e-commerce","MK_F1_D":"Aucune boutique externe requise. Crée ton catalogue dans l'app et commence à vendre, même en partant de zéro.","MK_F2_T":"Live shopping & replays shoppables","MK_F2_D":"Tes clients achètent pendant le live, sur un replay ou depuis ta boutique, en un tap, sans quitter l'app.","MK_F3_T":"Vends partout, à n'importe qui","MK_F3_D":"Aucune restriction géographique. Là où d'autres plateformes bloquent la vente en Belgique, dans les DOM-TOM ou au Canada, toi tu vends dans n'importe quel pays. Paiement immédiat sur ton compte Stripe, zéro rétention.","CONN_SHOP_TAG":"Déjà une boutique ?","CONN_SHOP_T":"Connecteurs Shopify & WooCommerce","CONN_SHOP_D":"Synchronise automatiquement tes \u003Cstrong>produits et tes commandes\u003C/strong> entre ta boutique et Hou.la, en temps réel, dans les deux sens. Jamais de survente, aucune double saisie.","CONN_GOOG_TAG":"Visibilité maximale","CONN_GOOG_T":"Tes produits aussi sur Google Shopping","CONN_GOOG_D":"Chaque produit publié sur notre marketplace est \u003Cstrong>automatiquement poussé sur Google Shopping\u003C/strong>. Tu captes des acheteurs partout sur le web, pas seulement sur l'app.","CONN_CH1":"Marketplace Hou.la","CONN_CH2":"Google Shopping","LOG_F1_T":"Frais de port négociés","LOG_F1_D":"Profite des tarifs transporteurs négociés grâce au volume de la marketplace : des prix privilégiés pour tous les vendeurs, du débutant au pro.","LOG_F2_T":"Étiquettes imprimées à la volée","LOG_F2_D":"Notre logiciel de bureau imprime automatiquement facture et étiquette transporteur dès qu'une commande est prête. Plus une étiquette produit à chaque vente en live. Zéro saisie, zéro erreur d'attribution.","LOG_F3_T":"Gestion complète incluse","LOG_F3_D":"Catalogue, stocks, commandes, suivis d'expédition et litiges tranchés équitablement : on s'occupe de la technique, tu te concentres sur tes ventes.","MK_COMM
89ISSION":"Commission unique 5 % · sans abonnement · frais Stripe au coût réel.","AUTH_KICKER":"04 · Notre parti pris","AUTH_TITLE":"Aucun filtre par défaut.","AUTH_TITLE_ACCENT":"Ton choix.","AUTH_BODY":"On n'embellit personne sans le lui demander. Aucun filtre n'est appliqué par défaut, jamais: ni à ton visage, ni à celui de tes invités. Si tu as envie de maquillage ou d'un teint plus doux, les outils sont là: tu les actives, tu les règles, tu les coupes d'un geste. Ce qui te rend unique n'a pas besoin d'être retouché, c'est à toi de décider si tu veux jouer avec.","UNIV_KICKER":"05 · Pour chaque univers","UNIV_TITLE":"Quelle que soit ta thématique.","UNIV_LEDE":"On ne t'enferme pas dans une case. Chaque communauté a sa place et ses outils.","UNI_1_T":"Gaming","UNI_1_D":"Capture de jeu via OBS, latence ultra-faible, overlays et alertes. Du casual à l'esport.","UNI_2_T":"ASMR","UNI_2_D":"Audio haute fidélité et live stable pour les formats les plus sensibles au son.","UNI_3_T":"Musique & Danse","UNI_3_D":"Bibliothèque musicale, référencement par titre et hashtag, lives interactifs.","UNI_4_T":"IRL & Papote","UNI_4_D":"Sondages, c
89adeaux, promos flash : garde ta communauté engagée en direct.","UNI_5_T":"Cuisine & Lifestyle","UNI_5_D":"Montre, explique, vends : du contenu au panier sans quitter le live.","UNI_6_T":"Mode & Beauté","UNI_6_D":"Replays shoppables, fiches produits et essayages en direct, au naturel.","UNI_7_T":"Vendeurs & Marques","UNI_7_D":"Connecteurs, écrans déportés, logistique automatisée et Google Shopping inclus.","UNI_8_T":"… et le reste","UNI_8_D":"Si tu as quelque chose à montrer, il y a un public pour toi sur Hou.la.","CTA_TITLE":"Prêt à rejoindre l'aventure ?","CTA_LEDE":"Un réseau social sans pub, sans shadowban et sans commission opaque. Créateurs, vendeurs, spectateurs : il y a de la place pour tout le monde.","CTA_MANAGER":"Accéder au Studio →","FT_APP_H":"App mobile","FT_APP_1":"Pourquoi Hou.la","FT_MKT_H":"Marketing Tools","FT_DEV_H":"Créateurs & Devs","FT_DEV_IX":"Lives interactifs","FT_DEV_CONN":"Connecteur (GitHub)","FT_DEV_PACK":"Créer un pack","FT_DEV_SDK":"SDK","FT_DEV_AGENCIES":"Agences","FT_HOULA_H":"Hou.la","FT_ABOUT":"À propos","FT_FAQ":"FAQ","FT_SUPPORT":"Support","FT_LEGAL_H":"Légal","FT_LEGAL_1":"Mentions légales","FT_LEGAL_2":"Confidentialité","FT_LEGAL_3":"CGU","FT_LEGAL_4":"CGV","FT_LEGAL_5":"Cookies","FT_ECO_H":"Écosystème","FT_ECO_API":"API & Développeurs","FT_ECO_OAUTH":"Se connecter avec Hou.la","FT_TOOLS_ALL":"Tous les outils →","FT_RECRUIT":"Recrutement","FT_CHANGELOG":"Changelog","FT_BRAND":"Brand kit","FT_SOCIAL_H":"Suivez-nous","FT_COPY":"© 2026 Hou.la · Vidéo. Live. Shopping.","FT_TEST":"Surface de test · /landing-test","MODAL_KICKER":"✦ L'app arrive très bientôt","MODAL_TITLE":"Rejoins la bêta privée.","MODAL_TEXT":"Hou.la est en phase de test privé, on peaufine les derniers détails. Crée ton compte maintenant pour être parmi les premiers informés à l'ouverture publique (iOS & Android).","MODAL_CTA":"Créer mon compte","MODAL_VIP":"Demander l'accès anticipé","MODAL_DISMISS":"Je reviendrai plus tard","FLOW_KICKER":"Écosystème connecté","FLOW_TITLE":"Tout synchronisé, automatiquement.","FLOW_SHOP":"Ta boutique","FLOW_HUB":"Hou.la","FLOW_SYNC":"sync temps réel","FLOW_PUSH":"publication auto","FLOW_BUYERS":"Acheteurs partout sur le web","APPS_KICKER":"Outils","APPS_TITLE":"Prolonge Hou.la sur ton bureau et ton site.","APPS_LEDE":"Des outils gratuits pour aller plus loin : fais jouer ton public avec Hou.la Connect, imprime tes commandes, relie ta boutique WordPress ou Shopify.","APPS_PRINT_T":"Hou.la Print","APPS_PRINT_D":"L'appli de bureau qui imprime automatiquement bons de livraison, factures et une étiquette par article à chaque commande.","APPS_PRINT_CTA":"Découvrir Hou.la Print","APPS_CONNECT_T":"Hou.la Connect","APPS_CONNECT_D":"L'app de bureau qui transforme les cadeaux, messages et follows de ton live en actions : jeu, OBS, overlays, lumières. Gratuite.","APPS_CONNECT_CTA":"Découvrir Hou.la Connect","APPS_WP_T":"Extension WordPress","APPS_WP_D":"Synchronise tes produits et tes commandes WooCommerce dans les deux sens avec la marketplace et le live shopping Hou.la.","APPS_WP_CTA":"Découvrir l'extension","APPS_SHOPIFY_T":"Connecteur Shopify","APPS_SHOPIFY_D":"Synchronise tes produits Shopify avec la marketplace et le live shopping Hou.la ; les commandes Hou.la reviennent dans Shopify.","APPS_SHOPIFY_CTA":"Découvrir le connecteur","DISCORD_KICKER":"Communauté","DISCORD_TITLE":"On fait grandir Hou.la avec toi, sur Discord.","DISCORD_TEXT":"Créateurs, vendeurs, joueurs, curieux : on échange chaque jour sur notre Discord. Pose tes questions, partage tes astuces, propose tes idées et parle en direct avec l'équipe. C'est aussi là qu'on dévoile les nouveautés et les accès anticipés en avant-première.","DISCORD_CTA":"Rejoindre le Discord","DISCORD_NOTE":"Gratuit · ouvert à tous"},"APP":{"STORY":{"CLOSE":"Fermer","NEXT":"Story suivante","PREV":"Story précédente","SWIPE_HINT":"Glisse vers le haut pour le créateur suivant","VIEW_PROFILE":"Voir le profil","VIEW_PHOTO":"Voir la photo de profil","VIEW_STORY":"Voir la story"},"NAV":{"FORYOU":"Pour toi","LIVE":"Live","EXPLORE":"Explorer","FOLLOWING":"Abonnements","SHOP":"Boutique","MESSAGES":"Messages","PROFILE":"Profil"},"MARKET":{"SEARCH_PLACEHOLDER":"Rechercher un produit, une boutique…","CLEAR_SEARCH":"Effacer la recherche","CATEGORIES":"Catégories","FEATURED":"En vedette","BESTSELLERS":"Meilleures ventes","PROMOTIONS":"Promotions","NEW":"Nouveautés","LOW_STOCK":"Derniers exemplaires","RECOMMENDED":"Recommandés pour toi","SEE_MORE":"Voir plus","PREV":"Précédents","NEXT":"Suivants","PRODUCTS_COUNT_ZERO":"Aucun produit","PRODUCTS_COUNT_ONE":"1 produit","PRODUCTS_COUNT_OTHER":"{{count}} produits","REFRESH":"Actualiser","TAB_SHOPS":"Boutiques","NO_PRODUCTS_FOUND":"Aucun produit trouvé","NO_SHOPS_FOUND":"Aucune boutique trouvée","SORT_BY":"Trier par","SORT_POPULAR":"Populaire","SORT_PRICE_ASC":"Prix croissant","SORT_PRICE_DESC":"Prix décroissant","SORT_RESET":"Retirer le tri","FRIEND":"Ami","VERIFIED":"Compte vérifié","LIVE_BADGE":"LIVE","BADGE_BESTSELLER":"Meilleure vente","BADGE_NEW":"Nouveauté","LOW_STOCK_BADGE":"Stock faible","OUT_OF_STOCK":"Rupture de stock","DISCOUNT":"-{{percent}}%","BANNERS":"Offres du moment","BANNER_GO":"Afficher la bannière {{n}}","SECTION_NOT_FOUND":"Cette section n'existe pas.","SEO_TITLE":"Boutique Hou.la : les produits des créateurs","SEO_DESC":"Découvre les produits des créateurs Hou.la : meilleures ventes, promotions, nouveautés et derniers exemplaires.","SECTION_SEO_TITLE":"{{section}} · Boutique Hou.la","SECTION_SEO_DESC":"{{section}} : tous les produits des créateurs Hou.la."},"SHOP_PAGE":{"CLOSE_SEARCH":"Fermer la recherche","SEARCH_PLACEHOLDER":"Rechercher des produits…","LINK_COPIED":"Lien copié","TAB_ALL":"Tous","TAB_COLLECTIONS":"Collections","TAB_PROMO":"Promo","AVERAGE_RATING":"Note moyenne","REVIEWS":"Avis","REVIEWS_COUNT_ZERO":"Aucun avis","REVIEWS_COUNT_ONE":"1 avis","REVIEWS_COUNT_OTHER":"{{count}} avis","SELLER_DASHBOARD":"Tableau de bord vendeur","NO_COLLECTIONS_TITLE":"Aucune collection disponible","NO_COLLECTIONS_DESC":"Ce vendeur n'a pas encore ajouté de collection.","NO_RESULTS_DESC":"Essaie avec d'autres termes de recherche.","NO_PRODUCTS_TITLE":"Aucun produit disponible","NO_PRODUCTS_DESC":"Ce vendeur n'a pas encore ajouté de produits.","CUSTOMER_REVIEWS":"Avis clients","RATING_STARS":"{{n}} étoiles sur 5","NOT_FOUND":"Cette boutique n'est pas disponible.","COLLECTION_FILTER":"Collection : {{name}}","CLEAR_COLLECTION":"Voir tous les produits","OPEN_LIVE":"Voir le live de {{name}}","OPEN_PROFILE":"Voir le profil de {{name}}
89","OPEN_SHOP":"Voir la boutique de {{name}}","SEO_TITLE":"{{name}} : la boutique sur Hou.la","SEO_DESC":"Découvre les {{count}} produits de la boutique {{name}} sur Hou.la."},"COINS":{"TITLE":"Acheter des Coins","UNIT":"coins","BALANCE_LABEL":"Solde : {{count}} coins","TEST_MODE":"Mode test : paiement simulé (serveur)","ERROR":"Erreur lors de l'achat","UNAVAILABLE":"Le paiement par carte n'est pas encore configuré.","START_ERROR":"Le paiement n'a pas pu démarrer, réessaie.","TIER_STARTER":"Starter","TIER_FAN":"Fan","TIER_SUPPORTER":"Supporter","TIER_CHAMPION":"Champion","TIER_VIP":"VIP","TIER_LEGEND":"Legend","TIER_ELITE":"Elite","TIER_DIAMOND":"Diamant","BADGE_POPULAR":"POPULAIRE","BADGE_BEST_OFFER":"MEILLEURE OFFRE","BADGE_ULTRA_PREMIUM":"ULTRA PREMIUM","BONUS_FREE":"+{{count}} offerts","CHANGE_PACK":"Changer de pack","PAY_SUMMARY":"{{name}} : {{coins}} coins pour {{price}}","CONFIRMING":"Paiement confirmé. Crédit de tes coins en cours…","PENDING_TITLE":"Paiement reçu","PENDING_TEXT":"Le crédit de tes coins est en cours. Ils apparaîtront dans ton solde d'ici quelques instants.","CHECK_AGAIN":"Vérifier à nouveau","FAILED":"Le paiement n'a pas abouti.","ADDED":"+{{count}} coins","ADDED_TO_WALLET":"ajoutés à ton portefeuille","SEND_GIFT":"Envoyer un cadeau","RECHARGE_AGAIN":"Recharger encore","LATER":"Plus tard"},"ORDERS":{"TITLE":"Mes commandes","FILTERS":"Filtrer par statut","FILTER_ALL":"Tous","FILTER_IN_PROGRESS":"En cours","FILTER_ABANDONED":"Abandonnées","STATUS_PENDING":"En attente","STATUS_OPEN_CART":"Panier ouvert","STATUS_PAID":"Payée","STATUS_PROCESSING":"En préparation","STATUS_SHIPPED":"Expédiée","STATUS_DELIVERED":"Livrée","STATUS_RETURN_IN_TRANSIT":"En cours de retour (non livré)","STATUS_RETURNED":"Retourné (non livré)","STATUS_CANCELLED":"Annulée","STATUS_REFUNDED":"Remboursée","STATUS_PARTIALLY_REFUNDED":"Partiellement remboursée","STATUS_ABANDONED":"Abandonnée","ORDER_NUMBER":"Commande n°{{id}}","ITEMS_ONE":"1 article","ITEMS_OTHER":"{{count}} articles","EMPTY_TITLE":"Aucune commande","EMPTY_DESC":"Tes commandes apparaîtront ici une fois passées.","DISCOVER":"Découvrir","DETAIL_TITLE":"Détail de la commande","SOLD_BY":"Vendu par","VIEW_SHOP":"Voir la boutique","CONTACT_SELLER":"Contacter le vendeur","SHIPPING_INFO":"Informations de livraison","SHIPPING_METHOD":"Mode de livraison","SHIPPED_ON":"Expédié le","ESTIMATED_DELIVERY":"Livraison estimée","PICKUP_POINT":"Point relais","DELIVERY_ADDRESS":"Adresse de livraison","TRACKING_NUMBER":"N° de suivi","TRACK_ORDER":"Suivre la commande","LOCAL_PICKUP":"Retrait sur place","SHIPPING_METHOD_MISSING":"Mode de livraison non renseigné","RELAY_POINT":"Point relais","HOME_DELIVERY":"Livraison à domicile","TIMELINE":"Historique","PLACED_ON":"Passée le","TIMELINE_RETURN_IN_TRANSIT":"Colis reparti vers le vendeur","TIMELINE_RETURNED":"Colis revenu chez le vendeur","CANCEL_EXPIRED":"Expiration du délai de paiement","CANCEL_BUYER":"Annulée par l'acheteur","CANCEL_SELLER":"Annulée par le vendeur","REFUND_AMOUNT":"Montant remboursé : {{amount}}","ITEMS_TITLE":"Articles","SUBTOTAL":"Sous-total","SHIPPING":"Livraison","DISCOUNT":"Réduction","TOTAL":"Total","SELLER_NOTE":"Note du vendeur","GACHAPON_PRIZE":"Lot remporté :","PAYMENT_INFO":"Informations de paiement","PAY_BY_CARD":"Payer par carte","DOWNLOAD_INVOICE":"Télécharger la facture","INVOICE_NOT_READY_TITLE":"Facture non disponible","INVOICE_NOT_READY_TEXT":"La facture sera disponible une fois la commande expédiée. Reviens plus tard.","INVOICE_UNAVAILABLE":"Facture non disponible","REFUND_HISTORY":"Historique des remboursements","REFUND_MODE_MONEY":"Remboursement","REFUND_MODE_STORE_CREDIT":"Avoir boutique","REFUND_MODE_MIXED":"Mixte","REFUND_TYPE_FULL":"Intégral","REFUND_TYPE_PARTIAL":"Partiel","OPEN_CART_TITLE":"Commande groupée active","OPEN_CART_TEXT":"Ta commande reste ouverte. Continue tes achats chez ce vendeur pour bénéficier de frais de port réduits ou offerts !","OPEN_CART_TEXT_DATE":"Ta commande reste ouverte jusqu'au {{date}}. Continue tes achats chez ce vendeur pour bénéficier de frais de port réduits ou offerts !","OPEN_CART_AT":"à","OPEN_CART_REQUEST":"Demander l'expédition immédiate","OPEN_CART_CONFIRMED":"Expédition demandée ! Ta commande sera traitée rapidement.","OPEN_CART_ERROR":"Impossible de clôturer la commande, réessaie.","LOGIN_REQUIRED":"Connecte-toi pour voir tes commandes.","NOT_FOUND":"Cette c
89ommande est introuvable.","CONTACT_ERROR":"Impossible d'ouvrir la conversation, réessaie."},"SEARCH":"Rechercher des vidéos, lives, boutiques…","SOON":"Bientôt disponible","LOADING":"Chargement du feed…","VIEWS":"vues","LIKES":"j’aime","FOLLOW":"Suivre","COMMENTS":"commentaires","NOCOMMENT":"Sois le premier à commenter.","ADDCOMMENT":"Ajoute un commentaire…","SEND":"Envoyer","REPLY":"Répondre","REPLYINGTO":"Réponse à","CANCEL":"Annuler","SHOWREPLIES":"Voir les réponses","HIDEREPLIES":"Masquer les réponses","CMTDELETE":"Supprimer","CMTHIDE":"Masquer","CMTUNHIDE":"Ré-afficher","CMTREPORT":"Signaler","CMTBLOCK":"Bloquer","CMTCOPY":"Copier","CMTMASKED":"Masqué","CMTREPORTTITLE":"Signaler ce commentaire","RSNHARASS":"Harcèlement","RSNSPAM":"Spam / arnaque","RSNHATE":"Discours haineux","RSNBULLY":"Intimidation","RSNMISINFO":"Désinformation","RSNOTHER":"Autre","SOUND":"Activer le son","PLAY":"Lire","SAVE":"Enreg.","GIFT":"Offrir","MUSIC":"Son","INSTALL":"Installer","INSTALL_TITLE":"Installe l’app Hou.la","INSTALL_SUB":"L’expérience complète : live, ca
89deaux, notifications.","INSTALL_ON":"Télécharger sur","INSTALL_WEB":"Continuer sur le web","NOCONTENT":"Aucun contenu pour le moment.","CLOSE":"Fermer","SHARE":"Partager","LIVE":{"BADGE":"LIVE","CONNECTING":"Connexion au live…","UNAVAILABLE":"Ce live n’est pas disponible.","PAUSED":"Le live est en pause","VIEWERS":"spectateurs","VOTE":"vote","VOTES":"votes","POLL_CLOSED":"Terminé","CHAT_EMPTY":"Sois le premier à écrire dans le chat.","SAY_SOMETHING":"Dis quelque chose…","EMOJI":"Smileys","LOGIN_TO_CHAT":"Connecte-toi pour participer au chat","GIFT":"Offrir un cadeau","LIKE":"J’aime","TOGGLE_CHAT":"Afficher ou masquer le chat","SENT_GIFT":"a offert","TOAST_JOINED":"a rejoint le live","TOAST_LIKED":"a aimé le live","TOAST_GIFT":"a offert un cadeau","ENDED_TITLE":"Live terminé","SEE_PROFILE":"Voir le profil","PANEL_HINT":"Le chat, les cadeaux et les sondages sont dans le live.","ERR_SEND":"Message non envoyé, réessaie.","ERR_TOO_FAST":"Tu écris trop vite, patiente un instant.","ERR_REJECTED":"Message refusé par les règles de la communauté.","MIC_OFF":"Micro coupé","VIEWERS_TITLE":"Spectateurs","VIEWERS_EMPTY":"Personne pour le moment.","ROLE_HOST":"Hôte","ROLE_MODERATOR":"Modérateur","ROLE_VIEWER":"Spectateur","NONE_TITLE":"Aucun live en cours","NONE_DESC":"Les créateurs en direct apparaîtront ici dès qu’ils seront en ligne.","NONE_CTA":"Découvrir les vidéos","ENDED_NEXT":"Autres lives suggérés","NOTIF":{"JOIN":"a rejoint le live","JOIN_P":"ont rejoint le live","HEARTS":"a aimé le live","HEARTS_P":"ont aimé le live","SHARED":"a partagé le live","SHARED_P":"ont partagé le live","SHOPVIEW":"consulte la boutique","SHOPVIEW_P":"consultent la boutique","CARTADD":"a ajouté au panier","CARTADD_P":"ont ajouté au panier","PINNED":"a épinglé un message","AND":"et","OTHER":"autre","OTHERS":"autres"},"GIFT_SENT_SHORT":"a envoyé","FOLLOWING":"Abonné","PIN_BUY":"Acheter","PIN_BOOK":"Réserver","COND_LIKE_NEW":"Comme neuf","COND_VERY_GOOD":"Très bon état","COND_GOOD":"Bon état","COND_ACCEPTABLE":"État acceptable","COND_POOR":"Mauvais état","PIN_SOLDOUT":"Épuisé","DENIED_TITLE":"Accès refusé","DENIED_BANNED":"Tu as été banni de ce live par le créateur.","DENIED_BLOCKED":"Tu ne peux pas accéder à ce live.","DENIED_PRIVATE":"Ce live est privé.","DENIED_FOLLOWERS":"Ce live est réservé aux abonnés du créateur.","DENIED_FRIENDS":"Ce live est réservé aux amis (abonnement mutuel).","DENIED_AGE":"Ce live est réservé aux {{n}} ans et plus.","DENIED_BIRTHDATE":"Complète ta date de naissance pour accéder à ce live.","WS_SWITCH":"Changer de compte","WS_STUDIO":"Ouvrir le studio","CHAT_LATEST":"Nouveaux messages","CMD_TITLE":"Commandes du live","CMD_PRIVATE":"Visible par toi seul","CMD_NONE":"Aucune commande ne correspond.","CMD_FREE":"Gratuit","CMD_PRICE":"{{count}} coins","CMD_UNAVAILABLE":"Cette commande n’est plus disponible.","CMD_RESULT_UNAVAILABLE":"Indisponible pour l’instant.","CMD_ON_SCREEN":"Ta commande est affichée à l’écran du live.","CMD_ON_SCREEN_QUEUED":"Ton rang s’affichera à l’écran du live dans quelques secondes.","TOP_ALREADY_ON_SCREEN":"Le classement est déjà à l’écran du live.","CMD_ON_SCREEN_BUSY":"Beaucoup de demandes en même temps : réessaie dans un instant.","CMD_NOT_AVAILABLE_HERE":"Cette commande n’est pas disponible sur ce live.","CMD_COOLDOWN_WAIT":"Tu peux relancer /{{command}} dans {{duree}}.","PRIORITY_BADGE":"Prioritaire","BOT_BADGE":"bot","MESSAGE_SUPPRIME_MODERATION":"Message supprimé par la modération","PAY_TITLE":"Envoyer {{command}} pour {{count}} coins ?","PAY_CONFIRM":"Payer {{count}} coins","PAY_PRICE_CHANGED":"Le prix a changé : c’est maintenant {{count}} coins. Rien n’a été débité.","PAY_BALANCE":"Ton solde : {{count}} coins","PAY_TOPUP":"Acheter des coins","FILTER_PRIORITY":"Prioritaires"},"AUTH":{"TITLE":"Connecte-toi à Hou.la","SUB":"Like, commente, suis tes créateurs et achète en live.","GOOGLE":"Continuer avec Google","OR":"ou","EMAIL":"E-mail","PASSWORD":"Mot de passe","LOGIN":"Se connecter","FORGOT":"Mot de passe oublié ?","CREATE":"Créer un compte","ERR_REQUIRED":"Renseigne ton e-mail et ton mot de passe.","ERR_INVALID":"E-mail ou mot de passe incorrect."},"PREV":"Photo précédente","NEXT":"Photo suivante","GETAPP":"Obtenir l'app","LOGIN_TO_COMMENT":"Connecte-toi pour commenter","FOOT":{"TERMS":"Conditions d'utilisation","PRIVACY":"Confidentialité","COPY":"Hou.la"}
89,"STUDIO":"Studio","PRODUCT":{"NOT_FOUND_TITLE":"Produit introuvable","NOT_FOUND_TEXT":"Ce produit n'est plus disponible sur la marketplace Hou.la.","DISCOVER":"Découvrir la marketplace","GALLERY_OPEN":"Agrandir la photo","GALLERY_PREV":"Photo précédente","GALLERY_NEXT":"Photo suivante","GALLERY_CLOSE":"Fermer","ZOOM":"Zoomer sur la photo","SHARE":"Partager","LINK_COPIED":"Lien copié","DISCOUNT":"-{{percent}}%","REVIEWS_ONE":"1 avis","REVIEWS_OTHER":"{{count}} avis","HELD_TITLE":"Produit réservé","HELD_MESSAGE":"Ce produit est temporairement réservé par un autre acheteur.","HELD_CTA":"Réservé par un autre acheteur","OUT_OF_STOCK":"Rupture de stock","STOCK_LEFT":"Plus que {{count}} en stock","IN_STOCK":"En stock","PROMO":"Promo","QUANTITY":"Quantité","QTY_DEC":"Diminuer la quantité","QTY_INC":"Augmenter la quantité","ADDING":"Ajout…","ADD_TO_CART":"Ajouter au panier","ALL_IN_CART":"Tout le stock est déjà dans ton panier","UNAVAILABLE":"Indisponible","DESCRIPTION":"Description","READ_MORE":"Lire plus","READ_LESS":"Lire moins","SELLER_SHOP":"Boutique du vendeur","LIVE_NOW":"En direct","BRAND":"Marque","SKU":"Référence","RELATED":"Produits similaires","ERR_STOCK":"Il n'en reste pas assez en stock pour cette quantité.","ERR_LIVE_LIMIT":"Tu as atteint la limite d'articles réservables pendant ce live. Paie ton panier pour continuer.","ERR_NOT_FOUND":"Ce produit n'est plus disponible.","ERR_NETWORK":"Connexion impossible. Vérifie ta connexion et réessaie.","ERR_RATE":"Trop de tentatives. Patiente une minute puis réessaie.","ERR_GENERIC":"Impossible d'ajouter cet article pour le moment. Réessaie."},"CART":{"TITLE":"Panier","CLOSE":"Fermer","OPEN":"Ouvrir le panier","OPEN_WITH_COUNT":"Ouvrir le panier ({{count}} articles)","ITEM_ONE":"1 article","ITEM_OTHER":"{{count}} articles","EMPTY":"Ton panier est vide","EMPTY_DESC":"Ajoute des produits depuis un live ou une boutique.","DISCOVER":"Découvrir la marketplace","SELLER_SHOP":"Voir la boutique","DECREASE":"Retirer un exemplaire","INCREASE":"Ajouter un exemplaire","REMOVE":"Retirer du panier","PROMO_REMOVE":"Retirer le code promo","PROMO_FREE_SHIPPING":"Livraison gratuite","SUBTOTAL":"Sous-total","SHIPPING":"Livraison","SHIPPING_AT_CHECKOUT":"Calculé au paiement","DISCOUNT":"Réduction","TOTAL":"Total","SELLER_MISSING":"Cette boutique n'est plus disponible. Tu peux retirer ses articles.","PROMO_PLACEHOLDER":"Code promo","PROMO_APPLY":"Appliquer","PROMO_APPLIED":"Code promo appliqué !","PROMO_INVALID":"Code promo invalide","CHECKOUT":"Passer la commande"},"CHECKOUT":{"TITLE":"Paiement","EDIT_CART":"Modifier le panier","ORDER_AT":"Commande chez {{name}}","CONTINUE":"Continuer mes achats","LOGIN_TITLE":"Connecte-toi pour payer","LOGIN_TEXT":"Ton panier est gardé. L'inscription est gratuite et se fait ici, sur le web, sans télécharger l'app.","LOGIN_BTN":"Se connecter","SIGNUP_BTN":"Créer un compte gratuit","ITEMS_SUMMARY":"Résumé des articles","OPEN_CART_TITLE":"Commande groupée","OPEN_CART_TEXT":"Cet article sera ajouté à ta commande en cours. Ton mode de livraison et ton adresse sont conservés.","OPEN_CART_TEXT_DATE":"Chez cette boutique, tu bénéficies des commandes groupées ! Ta commande reste ouverte jusqu'au {{date}}. Ta prochaine commande profitera de frais de port réduits ou offerts.","OPEN_CART_CLOSE":"Clôturer ma commande précédente","OPEN_CART_CLOSE_ERROR":"Impossible de clôturer la commande. Réessaie.","ADDRESS_TITLE":"Adresse de livraison","SAVED_ADDRESSES":"Adresses enregistrées","FULL_NAME":"Nom complet","PHONE":"Téléphone","DIAL_CODE":"Indicatif","LINE1":"Adresse","LINE2":"Complément d'adresse (optionnel)","CITY":"Ville","POSTAL":"Code postal","COUNTRY":"Pays","COUNTRY_FR":"France","COUNTRY_BE":"Belgique","COUNTRY_CH":"Suisse","COUNTRY_LU":"Luxembourg","COUNTRY_CA":"Canada","COUNTRY_US":"États-Unis","COUNTRY_GB":"Royaume-Uni","COUNTRY_DE":"Allemagne","COUNTRY_ES":"Espagne","COUNTRY_IT":"Italie","REQUIRED":"Obligatoire","VALIDATE_ADDRESS":"Valider l'adresse et voir les livraisons","ERR_SHIPPING_LOAD":"Impossible de charger les options de livraison. Réessaie.","SEARCHING":"Recherche de la meilleure offre de livraison…","LOCKED":"Mode de livraison conservé de ta commande précédente","HOME":"Livraison à domicile","EXPRESS":"Livraison express","RELAY":"Point relais","PICKUP":"Retrait sur place","FREE":"Gratuit","DELTA":"supplément","LOCKED_FREE":"Livraison offerte : déjà c
89ouverte par ta commande précédente","LOCKED_REDUCED":"Frais de port réduits : {{amount}} déjà payés","SHIPPING_METHOD":"Mode de livraison","FREE_SHIPPING":"Livraison gratuite","CHOOSE_RELAY":"Choisir un point relais","RATE_NEEDS_POSTAL":"Renseigne ton code postal pour afficher le tarif","RATE_CARRIER_DOWN":"Tarifs de livraison momentanément indisponibles, réessaie dans un instant","FROM":"à partir de","SHOW_INSTRUCTIONS":"Voir les instructions de retrait","PICKUP_INSTRUCTIONS":"Instructions de retrait","NO_OPTIONS":"Aucune option de livraison disponible pour ce vendeur. Contacte-le pour en savoir plus.","CHANGE_RELAY":"Changer de point relais","SECURE":"Paiement sécurisé","CARD_BRANDS":"Visa · Mastercard · CB · Apple Pay · Google Pay","PAY":"Payer {{amount}}","PROCESSING":"Traitement du paiement…","NO_SHIPPING_BTN":"Aucune option de livraison","SELECT_SHIPPING_BTN":"Sélection de la livraison","SELECT_RELAY":"Sélectionner un point relais","RELAY_LOADING":"Recherche des points relais…","RELAY_NONE":"Aucun point relais trouvé autour de ce code postal.","RELAY_POINTS":"{{count}} points relais","RELAY_LOCKER":"Locker","RELAY_SHOP":"Point relais","RELAY_CHEAPEST":"Le moins cher","PAYMENT_TITLE":"Paiement par carte","CANCEL":"Annuler le paiement","ERR_PRODUCT_UNAVAILABLE":"Ce produit n'est plus disponible. Contacte le vendeur.","ERR_STOCK":"Un article n'est plus disponible en quantité suffisante. Modifie ton panier puis réessaie.","ERR_SELLER":"Ce vendeur ne peut pas encore encaisser de paiement.","ERR_SHIPPING_REQUIRED":"Choisis un mode de livraison pour continuer.","ERR_TOTAL":"Le montant de la commande n'est pas valide.","ERR_EMAIL":"Ton compte n'a pas d'adresse e-mail. Ajoute-la dans ton profil puis réessaie.","ERR_RATE":"Trop de tentatives. Patiente une minute puis réessaie.","ERR_NETWORK":"Connexion impossible. Vérifie ta connexion et réessaie.","ERR_GENERIC":"Le paiement n'a pas pu démarrer. Réessaie.","ERR_ADDRESS":"Complète les champs obligatoires de l'adresse.","PAY_INIT":"Le module de paiement n'a pas pu se charger. Réessaie.","PAY_FAILED_GENERIC":"Le paiement n'a pas abouti. Réessaie ou utilise une autre carte.","STRIPE_CARD_DECLINED":"Ta carte a été refusée. Essaie une autre carte.","STRIPE_INSUFFICIENT_FUNDS":"Fonds insuffisants sur cette carte. Essaie une autre carte.","STRIPE_EXPIRED_CARD":"Cette carte a expiré.","STRIPE_INCORRECT_CVC":"Le code de sécurité de la carte est incorrect.","STRIPE_INCORRECT_NUMBER":"Le numéro de carte est incorrect.","STRIPE_PROCESSING_ERROR":"Une erreur est survenue pendant le traitement de la carte. Réessaie.","STRIPE_AUTH_FAILED":"La vérification de ta banque n'a pas abouti. Réessaie.","STRIPE_CARD_INVALID":"Vérifie les informations de ta carte.","ORDER_MULTI":"Commande chez {{count}} boutiques, en un seul paiement","SELLERS_COUNT":"{{count}} vendeurs","SHIPPING_FROM":"Livraison : {{name}}","RELAY_VIEW_LIST":"Liste","RELAY_VIEW_MAP":"Carte","CONFIRM_RELAY":"Confirmer ce point relais","MAP_CONTRIBUTORS":"contributeurs d'OpenStreetMap","MAP_ERROR":"La carte n'a pas pu se charger. Utilise la liste.","ERR_SHIPPING_UNAVAILABLE":"Ce mode de livraison n'est plus proposé. Choisis-en un autre ci-dessus.","ERR_AUCTION":"Un lot remporté aux enchères se paie à part, depuis la boutique du vendeur. Retire-le du panier pour payer le reste."},"ORDER_CONFIRM":{"PAGE_TITLE":"Confirmation de commande","CHECKING":"Vérification du paiement…","TITLE_OK":"Commande confirmée !","MSG_OK":"Ta commande a bien été passée !","THANKS":"Merci pour ton achat !","TITLE_PROCESSING":"Paiement en cours de traitement","MSG_PROCESSING":"Ta banque est en train de valider le paiement. Tu recevras un e-mail dès qu'il sera confirmé.","TITLE_FAILED":"Le paiement n'a pas abouti","MSG_FAILED":"Aucun montant n'a été prélevé. Ton panier est conservé, tu peux réessayer.","OPEN_CART_SHIPPED":"Expédition demandée ! Ta commande sera traitée rapidement.","OPEN_CART_TITLE":"Commande groupée active","OPEN_CART_MSG":"Ta commande reste ouverte. Continue tes achats chez ce vendeur pour bénéficier de frais de port réduits ou offerts !","OPEN_CART_MSG_DATE":"Ta commande reste ouverte jusqu'au {{date}}. Continue tes achats chez ce vendeur pour bénéficier de frais de port réduits ou offerts !","OPEN_CART_SHIP":"Demander l'expédition immédiate","OPEN_CART_ERROR":"Impossible de clôturer la commande. Réessaie.","RETRY":"Réessayer le paiement","BACK_TO_CART":"Retour au panier","CONTINUE":"Continuer mes achats","ORDERS":"Voir mes commandes","ORDERS_COUNT":"{{count}} commandes, une par boutique","ORDER_NUMBER":"Commande n° {{code}}"},"LEGAL_LINKS":{"TITLE":"Achète en confiance","RETURNS_NOTE":"Tu disposes de 14 jours après réception pour te rétracter auprès du vendeur (hors exceptions légales).","CGV":"Conditions générales de vente","RETURNS":"Droit de rétractation et retours","CONTACT":"Aide et contact","LEGAL":"Mentions légales"}},"SEARCH":{"CREATORS":"Créateurs","VIDEOS":"Vidéos","AUDIOS":"Sons","HASHTAGS":"Hashtags","LOCATIONS":"Lieux","HINT":"Tape au moins 2 caractères pour rechercher.","EMPTY":"Aucun résultat.","FOLLOWERS":"abonnés","USES":"vidéos","VIDEOSCOUNT":"vidéos"},"GIFT":{"INTERACTIVE":"Interactif","CLASSIC":"Classiques","TITLE":"Envoyer un cadeau","LOGIN_NOTICE":"Connecte-toi pour offrir un cadeau.","SENT":"Cadeau envoyé :","RECHARGE":"Recharger","TARGET_TITLE":"À qui ?","TARGET_EVERYONE":"Tout le monde","TARGET_OFFLINE":"hors ligne","GROUP_ALL":"Tous"},"AUDIO":{"USES":"vidéos utilisent ce son","ORIGINAL":"Son original","USETHIS":"Utiliser 
89ce son","BACK":"Retour"},"PROFILE":{"FOLLOWING":"Abonnements","FOLLOWERS":"Abonnés","LIKES":"J’aime","MESSAGE":"Message","FOLLOW":"Suivre","FOLLOWING_BTN":"Suivi","BIO":"Bio","PRIVATE_TITLE":"Ce compte est privé","PRIVATE_DESC":"Suis ce compte pour voir ses vidéos et son contenu.","TAB_VIDEOS":"Vidéos","TAB_REPOSTS":"Reposts","TAB_LIKED":"J’aime","TAB_SHOP":"Boutique","FROM":"dès","EVENT_LIVE_NOW":"En direct","EVENT_REMIND":"Me notifier","EVENT_UNSUBSCRIBE":"Ne plus me notifier","EVENT_SUBSCRIBED_TOAST":"Tu seras averti au démarrage","EVENT_UNSUBSCRIBED_TOAST":"Notification désactivée","VIEW_STATS":"Voir les statistiques","OPEN_IN_APP":"Ouvrir dans l’app"},"MESSAGES_DM":{"TITLE":"Messages","TAB_MESSAGES":"Messages","TAB_INVITATIONS":"Invitations","PENDING":"En attente","EMPTY_MESSAGES":"Aucune conversation pour le moment.","EMPTY_INVITATIONS":"Aucune invitation en attente.","ACCEPT":"Accepter","DECLINE":"Refuser","NOT_FOUND":"Conversation introuvable.","INVITE_PROMPT":"Cette personne souhaite t’envoyer un message. Accepte pour discuter."},"GUIDE_SOCIAL_STREAM":{"HERO_KICKER":"Guide · Social Stream Ninja","HERO_TITLE":"Tes commentaires Hou.la dans Social Stream Ninja","HERO_LEDE":"Tu diffuses sur plusieurs plateformes à la fois? Récupère le chat de ton live Hou.la dans \u003Cb>Social Stream Ninja\u003C/b>, à côté de celui de tes autres chaînes: sans coder, en deux copier-coller.","WHATIS_STEP":"En bref","WHATIS_TITLE":"Un seul chat pour toutes tes plateformes","WHATIS_BODY_A":"Social Stream Ninja (","WHATIS_BODY_B":", gratuit et open source) fusionne les chats de Twitch, YouTube, TikTok et compagnie dans une seule fenêtre. Une fois Hou.la branché, tes commentaires arrivent dans le même flux : pseudo, avatar et message.","CARD_CHAT_TITLE":"Chat unifié","CARD_CHAT_DESC":"Tous tes chats dans une seule fenêtre, plus besoin de jongler entre les onglets pendant le live.","CARD_OBS_TITLE":"Overlay OBS","CARD_OBS_DESC":"Affiche les messages à l’écran avec les habillages tout faits de Social Stream.","CARD_TTS_TITLE":"Lecture vocale","CARD_TTS_DESC":"Fais lire les commentaires à voix haute, épingle-en un, déclenche des alertes.","WHATIS_NOTE":"Hou.la n’est pas encore dans la liste des sources de Social Stream, on passe donc par une page de connexion hébergée chez nous. Deux façons de la brancher : avec l’application de bureau (le plus simple) ou sans elle.","STEP1_STEP":"Étape 1","STEP1_TITLE":"Crée ta clé d’événements","STEP1_BODY":"C’est elle qui autorise Social Stream à recevoir le chat de \u003Cb>tes\u003C/b> lives, et rien d’autre. Elle est en lecture seule : elle ne peut ni publier, ni dépenser, ni modifier quoi que ce soit.","STEP1_LI1":"Ouvre ton \u003Cb>Studio\u003C/b> Hou.la, rubrique \u003Cb>« Connecteur live »\u003C/b>.","STEP1_LI2":"Crée une clé et coche \u003Cb>Commentaires\u003C/b>. Ajoute \u003Cb>Cadeaux\u003C/b> et \u003Cb>Nouveaux abonnés\u003C/b> si tu veux les voir aussi.","STEP1_LI3":"Copie la clé : elle commence par \u003Ccode>hle_\u003C/code>.","STEP1_WARN":"La clé ne s’affiche en entier qu’une seule fois. Garde-la pour toi : elle donne accès au chat de tes lives.","STEP1_CTA":"Créer ma clé d’événements","APP_STEP":"Étape 2 · le plus simple","APP_TITLE":"Avec l’application Social Stream","APP_BODY":"Si tu utilises l’application de bureau, c’est la voie la plus courte : pas d’identifiant de session, pas de paramètre à ajouter. L’application distribue elle-même les commentaires vers tous tes overlays.","APP_LI1":"Dans \u003Cb>Add source\u003C/b>, descends tout en bas de la colonne de gauche et clique \u003Cb>Other\u003C/b>.","APP_LI2":"Colle cette adresse :","APP_LI3":"Il demande quel script utiliser : laisse \u003Ccode>shared/vendor/socket.io.min\u003C/code>, celui qui est déjà proposé, et valide.","APP_LI4":"Clique \u003Cb>Activate source\u003C/b>, puis \u003Cb>Reveal capture page\u003C/b> pour faire apparaître la page.","APP_LI5":"Colle ta clé \u003Ccode>hle_\u003C/code> et clique \u003Cb>Connect\u003C/b> : le statut passe au vert.","APP_NAME_NOTE":"Dans ta liste, la source s’appellera \u003Cb>socket.io.min\u003C/b>. C’est normal : l’application nomme une source d’après le script qu’elle injecte, pas d’après l’adresse. Ça n’a aucune conséquence sur le fonctionnement.","APP_NOTE":"Active \u003Cb>Auto-activate\u003C/b> si tu veux que la source se rebranche toute seule au lancement de l’application.","WEB_STEP":"Étape 2 · variante","WEB_TITLE":"Sans l’application (navigateur, OBS, extension)","WEB_BODY":"Avec l’extension Chrome, ou si tu préfères un simple onglet, ça marche aussi. Il faut juste dire à Social Stream où envoyer les messages, avec ton identifiant de session.","WEB_LI1":"Récupère ton \u003Cb>session ID\u003C/b> : il est dans le lien de ton dock, juste après \u003Ccode>?session=\u003C/code>.","WEB_LI2":"Ouvre la page de connexion Hou.la et laisse l’onglet ouvert pendant tout le live.","WEB_LI3":"Colle ta clé \u003Ccode>hle_\u003C/code> et ton session ID, puis clique \u003Cb>Connect\u003C/b>.","WEB_LI4":"Ouvre ton dock en ajoutant \u003Ccode>&amp;server\u003C/code> et \u003Ccode>&amp;branded\u003C/code> à la fin de son adresse :","WEB_CTA":"Ouvrir la page de connexion","WEB_NOTE":"Ces deux paramètres ne sont pas décoratifs : sans \u003Ccode>&amp;server\u003C/code> le dock n’écoute pas les messages venus de l’extérieur et rien ne s’affiche ; sans \u003Ccode>&amp;branded\u003C/code> l’icône Hou.la reste invisible.","RESULT_STEP":"Résultat","RESULT_TITLE":"Ce qui arrive dans Social Stream","RESULT_BODY":"Selon ce que tu as coché sur ta clé :","FIELD_COMMENT_K":"Commentaire","FIELD_COMMENT_V":"Pseudo, avatar et message, dès qu’il est validé par la modération","FIELD_GIFT_K":"Cadeau","FIELD_GIFT_V":"Le nom du cadeau, son image et le montant en coins, présenté comme un don","FIELD_FOLLOW_K":"Nouvel abonné","FIELD_FOLLOW_V":"Un événement « follow », déjà dédoublonné côté Hou.la","RESULT_NOTE":"Les cœurs et les sondages ne sont pas transmis : ce sont des compteurs, ils n’ont pas de sens dans un fil de chat.","FAQ_Q1":"Quelqu’un peut-il écrire dans mon chat avec cette clé ?","FAQ_A1":"Non. La clé est en \u003Cb>lecture seule\u003C/b> et ne concerne que tes propres lives. Elle ne permet ni de publier un commentaire, ni de dépenser des coins, ni de modifier ton compte. Tu peux la révoquer à tout moment depuis ton Studio.","FAQ_Q2":"Je peux répondre depuis Social Stream ?","FAQ_A2":"Pas encore. Social Stream affiche tes commentaires Hou.la mais ne peut pas y répondre : pour ça, passe par l’application Hou.la.","FAQ_Q3":"Faut-il laisser quelque chose ouvert pendant le live ?","FAQ_A3":"Oui, la page de connexion doit tourner pendant tout le live. Avec l’application, sa fenêtre source s’en charge et tu n’as rien à faire ; sans elle, garde l’onglet ouvert. Si ça s’arrête, les commentaires cessent d’arriver et il suffit de relancer.","FAQ_Q4":"Pourquoi Hou.la n’est pas dans la liste des sources ?","FAQ_A4":"Parce que l’intégration native doit être ajoutée par l’équipe de Social Stream. On la prépare de notre côté ; en attendant, la page de connexion fait exactement le même travail.","CTA_TITLE":"Prêt à brancher ton chat ?","CTA_BODY":"Crée ta clé, branche la page, et tes commentaires Hou.la rejoignent le reste de ton chat.","CTA_BUTTON":"Créer ma clé d’événements","CTA_LINKS":"Tu veux aussi transformer tes cadeaux en vraies actions ? Va voir ","CTA_LINK_EVENTS":"le guide des événements de live","COPY":"Copier","COPIED":"Copié","WEB_LI4_NOTE":"Pas besoin de remplacer \u003Ccode>TON_ID\u003C/code> à la main : une fois ton session ID saisi, la page de connexion affiche l’adresse déjà c
89omplétée, avec un bouton pour la copier."},"AGENCIES":{"CERTIFIED":"Certifiée","PARTNER":"Partenaire","LIVE_NOW":"En direct","STUDIO":"Studio","PROFILE_MEMBER_OF":"Membre de {{name}}","BREADCRUMB_HOME":"Hou.la","BREADCRUMB_AGENCIES":"Agences","BREADCRUMB_DIRECTORY":"Annuaire","KICKER":"Hou.la Agences","HERO_TITLE":"Ils restent où ils sont. \u003Cb>Hou.la s'ajoute.\u003C/b>","HERO_LEDE":"Tes créateurs gardent leurs plateformes et leur public. Hou.la s'utilise en plus, en même temps : leur communauté y a plus de pouvoir sur le live, et ton agence est payée sur ce qu'ils y reçoivent, sans rien retirer à personne.","CTA_DECLARE":"Déclarer mon agence","CTA_DIRECTORY":"Voir l'annuaire des agences","THESIS_KICKER":"Le principe","THESIS_TITLE":"Un pas sans risque, pas un déménagement","THESIS_1_TITLE":"Tes créateurs gardent leurs plateformes","THESIS_1_TEXT":"Avec Hou.la Connect, un live Hou.la écoute aussi TikTok, Kick et YouTube (Twitch bientôt). Les cadeaux reçus ailleurs continuent d'agir sur le live. Personne ne quitte rien.","THESIS_2_TITLE":"Sur Hou.la, le public a plus de pouvoir","THESIS_2_TEXT":"Cadeaux interactifs, commandes, roue, classements : la communauté a de bonnes raisons de rejoindre le live Hou.la, et elle y vient d'elle-même.","THESIS_3_TITLE":"Ton agence est payée sur cette activité","THESIS_3_TEXT":"Tu touches une part des étoiles que tes créateurs reçoivent sur Hou.la. C'est Hou.la qui paie cette part : tes créateurs gardent toutes leurs étoiles.","CONNECT_LINE":"Pendant leur live Hou.la, tes créateurs font jouer leur public avec Hou.la Connect, cadeaux TikTok, YouTube et Kick compris.","CONNECT_LINK":"Découvrir Hou.la Connect","LEVELS_KICKER":"Deux niveaux","LEVELS_TITLE":"Partenaire, puis Certifiée","LEVEL_PARTNER_WHO":"Pour toute agence vérifiée : société immatriculée, contrat accepté en ligne, compte de paiement vérifié.","LEVEL_CERTIFIED_WHO":"Pour l'agence Partenaire qui tient les critères de certification {{months}} mois de suite.","LEVEL_SHARE":"{{rate}} % des étoiles reçues par chacun de tes créateurs, pendant {{months}} mois","LEVEL_SPACE":"Un espace agence : ton écurie, tes invitations, tes gains","LEVEL_OBS_PARTNER":"Le live depuis OBS ouvert tout de suite pour {{count}} de tes créateurs, sans attendre les conditions habituelles","LEVEL_OBS_CERTIFIED":"Le live depuis OBS ouvert pour tous tes créateurs","LEVEL_DIRECTORY_PARTNER":"Une fiche dans l'annuaire des agences","LEVEL_DIRECTORY_CERTIFIED":"Le badge « Certifiée » et la première place dans l'annuaire","SIM_KICKER":"Simulateur","SIM_TITLE":"Combien ton agence peut toucher","SIM_LEDE":"Décris ton écurie. Le calcul suit les règles réelles du programme.","SIM_CREATORS":"Créateurs sur Hou.la","SIM_HOURS":"Heures de live par créateur et par mois","SIM_STARS":"Cadeaux reçus par heure de live, en étoiles","SIM_STARS_HINT":"1 coin offert par un spectateur = 1 étoile pour le créateur.","SIM_LEVEL":"Niveau de ton agence","SIM_RESULT_MONTH":"Ta part chaque mois","SIM_RESULT_STARS":"{{stars}} étoiles, soit {{rate}} % des {{total}} étoiles reçues par ton écurie","SIM_RESULT_TOTAL":"Sur {{months}} mois","SIM_TEAM_HOURS":"Ton écurie ferait {{hours}} h de live par mois. La certification en demande {{target}}.","SIM_NOTE_ACTIVATION":"La part démarre quand un créateur est activé : {{hours}} h de live sur Hou.la et {{donors}} spectateurs différents qui lui offrent des cadeaux, en {{days}} jours.","SIM_NOTE_PAID":"C'est Hou.la qui paie cette part. Tes créateurs gardent toutes leurs étoiles.","SIM_NOTE_ESTIMATE":"Estimation indicative, pas une promesse de revenus.","SIM_UNAVAILABLE":"Le simulateur est momentanément indisponible. Réessaie dans un instant.","CRIT_KICKER":"Certification","CRIT_TITLE":"Les critères, mois après mois","CRIT_LEDE":"Ton agence devient Certifiée en tenant ces critères {{months}} mois de suite. La certification ne tombe pas d'un coup : un mois sous les seuils te place sous surveillance, et tu es prévenu.","CRIT_ACTIVE":"Au moins {{count}} créateurs actifs, chacun avec {{lives}} lives et {{hours}} h de live sur Hou.la dans le mois","CRIT_TEAM_HOURS":"{{hours}} h de live sur Hou.la pour l'ensemble de ton écurie","CRIT_DONORS":"{{count}} spectateurs différents qui offrent des cadeaux, hors ton agence et tes créateurs","CRIT_CLEAN":"Aucune sanction grave, aucune fraude, aucun frais facturé à tes créateurs","CRIT_VIEWERS":"Un live compte à partir de {{viewers}} spectateurs en même temps","DECLARE_TITLE":"Prêt à commencer ?","DECLARE_TEXT":"Déclare ton agence depuis ton compte Hou.la. Nous étudions ta candidature, puis ton agence apparaît dans l'annuaire dès qu'elle est admise.","DECLARE_LOGIN_HINT":"Tu vas te c
89onnecter ou créer ton compte, puis tu reviendras ici.","FAQ_KICKER":"FAQ","FAQ_TITLE":"Questions fréquentes","FAQ_Q_CONTRACT":"Faut-il signer un contrat ?","FAQ_A_CONTRACT":"Oui, le contrat agence, que tu acceptes en ligne quand tu déclares ton agence. Il fixe ta part, sa durée et les règles de conduite envers tes créateurs. S'il change, on te demande de l'accepter à nouveau.","FAQ_Q_DATA":"Quelles données de mes créateurs vais-je voir ?","FAQ_A_DATA":"Seulement ce que chaque créateur accepte de partager, choix par choix. Le minimum est son activité de live sur Hou.la (heures et nombre de lives), nécessaire pour calculer ta part. Ses gains, son audience et ses chaînes ne te sont montrés que s'il le décide.","FAQ_Q_PAY":"Qui paie ma rémunération ?","FAQ_A_PAY":"Hou.la. Ta part s'ajoute à ce que gagne le créateur : il garde toutes ses étoiles, rien n'est retiré de ses gains. Tu la reçois en étoiles, que tu retires en euros comme un créateur.","FAQ_Q_LEAVE":"Un créateur peut-il partir ?","FAQ_A_LEAVE":"Oui, quand il veut, depuis son compte. Un préavis de {{days}} jours s'applique, puis le rattachement prend fin. Tu peux toi aussi y mettre fin, avec le même préavis.","FAQ_Q_ONE":"Un créateur peut-il faire partie de plusieurs agences ?","FAQ_A_ONE":"Non : un créateur fait partie d'une seule agence à la fois, et il doit avoir au moins {{age}} ans.","FAQ_Q_COST":"Combien ça coûte ?","FAQ_A_COST":"Rien. Déclarer ton agence et utiliser Hou.la est gratuit, pour toi comme pour tes créateurs.","DIR_KICKER":"Annuaire","DIR_TITLE":"Trouve l'agence qui t'accompagne","DIR_LEDE":"Des agences admises par Hou.la, qui accompagnent des créateurs en live : conseils, objectifs, outils. Les agences certifiées apparaissent en premier.","DIR_FILTER_LANG":"Langue","DIR_FILTER_SPECIALTY":"Spécialité","DIR_FILTER_ALL":"Toutes","DIR_EMPTY":"Aucune agence ne correspond à ces filtres pour le moment.","DIR_EMPTY_ALL":"Les premières agences arrivent. Tu en diriges une ? Déclare-la.","DIR_CREATORS":"{{count}} créateurs","DIR_ACTIVE":"{{count}} en live ce mois-ci","DIR_HOURS":"{{hours}} h de live ce mois-ci","DIR_PREV":"Page précédente","DIR_NEXT":"Page suivante","DIR_PAGE":"Page {{page}} sur {{pages}}","DIR_ERROR":"L'annuaire est momentanément indisponible. Réessaie dans un instant.","DIR_SEE":"Voir l'agence","DIR_JOIN_TITLE":"Tu diriges une agence ?","AG_BACK":"Toutes les agences","AG_ROSTER_TITLE":"L'écurie","AG_ROSTER_NOTE":"Seuls les créateurs qui ont choisi de s'afficher apparaissent ici.","AG_ROSTER_EMPTY":"Les créateurs de cette agence n'ont pas encore choisi de s'afficher ici.","AG_LIVE_COUNT":"{{count}} en direct maintenant","AG_PACKS_TITLE":"Ses packs Hou.la Connect","AG_PACKS_TEXT":"Des packs publiés au Store par cette agence : les spectateurs pilotent le live avec leurs cadeaux.","AG_PACK_INSTALLS":"{{count}} installations","AG_PACKS_LINK":"Découvrir Hou.la Connect","AG_STUDIO_HINT":"Cette agence publie des packs au Store","AG_APPLY_TITLE":"Tu es créateur ?","AG_APPLY_TEXT":"Candidate auprès de {{name}}. L'agence étudie ta candidature et te répond sur Hou.la.","AG_APPLY_BTN":"Candidater auprès de cette agence","AG_APPLY_LOGIN":"Se connecter pour candidater","AG_NOT_FOUND_TITLE":"Agence introuvable","AG_NOT_FOUND_TEXT":"Cette agence n'existe pas ou n'est plus visible.","AG_SEO_TITLE":"{{name}}, agence de créateurs | Hou.la","AG_SEO_DESC":"{{name}}, agence vérifiée par Hou.la. Découvre son écurie de créateurs en live et candidate en ligne.","AG_SEO_DESC_PARTNER":"{{name}}, agence partenaire de Hou.la. Découvre son écurie de créateurs en live et candidate en ligne.","AG_COUNTRY":"Pays","AG_LANGUAGES":"Langues","AG_SPECIALTIES":"Spécialités","APPLY_TITLE":"Candidater auprès de {{name}}","APPLY_CONSENT":"Si l'agence accepte, tu rejoins son écurie tout de suite. Tu gardes toutes tes étoiles et tu peux partir quand tu veux, avec un préavis de {{days}} jours.","APPLY_MESSAGE_LABEL":"Un mot pour l'agence (facultatif)","APPLY_MESSAGE_PLACEHOLDER":"Présente-toi : ton jeu, tes horaires de live…","APPLY_COUNT":"{{n}} / 500","APPLY_SEND":"Envoyer ma candidature","APPLY_SENDING":"Envoi…","APPLY_CANCEL":"Annuler","APPLY_CLOSE":"Fermer","APPLY_DONE":"Candidature envoyée. L'agence va l'étudier, et tu recevras sa réponse dans tes notifications.","ERR_AGENCY_APPLICATION_AGENCY_UNAVAILABLE":"Cette agence ne reçoit pas de candidatures pour le moment.","ERR_AGENCY_APPLICATION_SELF":"Tu ne peux pas candidater auprès de ta propre agence.","ERR_AGENCY_APPLICATION_ALREADY_LINKED":"Tu fais dé
89jà partie d'une agence. Pour en changer, détache-toi d'abord depuis ton compte.","ERR_AGENCY_APPLICATION_ALREADY_PENDING":"Ta candidature auprès de cette agence est déjà en attente.","ERR_AGENCY_APPLICATION_BIRTHDATE_REQUIRED":"Renseigne ta date de naissance dans ton profil pour rejoindre une agence.","ERR_AGENCY_APPLICATION_MINIMUM_AGE":"Il faut avoir au moins {{age}} ans pour rejoindre une agence.","ERR_OWNER":"Seul le propriétaire du compte peut candidater.","ERR_GENERIC":"La candidature n'a pas pu être envoyée. Réessaie dans un instant.","CONTRACT_LINK":"Lire les Conditions du programme Hou.la Agences","FAQ_Q_PLATFORMS":"Mes créateurs doivent-ils quitter leurs plateformes ?","FAQ_A_PLATFORMS":"Non, jamais. Ils continuent de streamer là où est leur public. Hou.la s'utilise en plus, en même temps.","AG_PROFILE_LINK":"Voir le profil Hou.la de {{name}}","VERIFIED":"Vérifiée","AG_OFFER_TITLE":"L'offre de l'agence","AG_TERMS_LINK":"Ce que tu acceptes en candidatant","AG_APPLY_CLOSED":"{{name}} a fermé ses candidatures pour le moment.","AG_APPLY_OTHERS":"Voir d'autres agences","APPLY_TERMS_HINT":"Coche les conditions créateur pour envoyer ta candidature.","ERR_AGENCY_APPLICATIONS_CLOSED":"Cette agence a fermé ses candidatures pour le moment. D'autres agences t'attendent dans l'annuaire.","ERR_AGENCY_CREATOR_TERMS_REQUIRED":"Coche les conditions créateur pour continuer.","ERR_AGENCY_CREATOR_TERMS_OUTDATED":"Les conditions créateur viennent de changer : relis-les, coche-les, puis renvoie ta candidature.","ERR_AGENCY_SCOPE_LIVES_REQUIRED":"Partager tes lives est nécessaire pour rejoindre une agence.","DIR_APPLY":"Candidater","DIR_APPLY_ARIA":"Candidater auprès de {{name}}","DIR_SERVICES_MORE":"+ {{n}} autres","DIR_CREATOR_HINT":"Tu es créateur ? Chaque agence présente son offre et ses critères. En candidatant, tu acceptes les conditions créateur du programme.","DIR_CREATOR_TERMS":"Les lire","CREATOR_TERMS_LINK":"Lire les conditions que les créateurs acceptent","PROFILE_AGENCY_PARTNER":"Agence partenaire","PROFILE_AGENCY_CERTIFIED":"Agence certifiée","PROFILE_AGENCY_SEE":"Voir la vitrine de l'agence","PROFILE_AGENCY_APPLY":"Candidater","DIR_HERO_COUNT":"{{count}} agences admises","DIR_HERO_COUNT_ONE":"1 agence admise","DIR_HOW":"Comment fonctionne le programme","DIR_RESULTS":"{{count}} agences","DIR_RESULTS_ONE":"1 agence","DIR_RESET":"Retirer les filtres","DIR_NEW":"Nouvelle agence","DIR_STAT_CREATORS":"créateurs","DIR_STAT_ACTIVE":"en live ce mois","DIR_STAT_HOURS":"h de live ce mois","DIR_JOIN_TEXT":"Déclare ton agence. L'équipe Hou.la l'examine, puis elle rejoint l'annuaire avec sa vitrine.","DIR_PREVIEW":"Aperçu réservé à l'équipe : cette page est masquée au public. Elle s'ouvrira d'elle-même à {{threshold}} agences admises ({{count}} aujourd'hui).","DIR_FILTERS_ARIA":"Filtrer les agences","DIR_SERVICES_MORE_ONE":"+ 1 autre"},"AGENCY_CONTRACT":{"KICKER":"Hou.la Agences","LOADING":"Chargement du contrat…","ERROR":"Le contrat n'a pas pu être chargé.","RETRY":"Réessayer","NOT_FOUND":"Cette version du contrat n'existe pas.","UPCOMING":"Une nouvelle version ({{version}}) entrera en vigueur le {{date}}.","READ_UPCOMING":"Lire la nouvelle version","READ_CURRENT":"Lire la version en vigueur","NOT_YET_IN_FORCE":"Cette version n'est pas encore en vigueur : elle s'appliquera le {{date}}."},"CONNECT_DEV":{"KICKER":"Hou.la Connect · Documentation développeur","HERO_TITLE":"Documentation développeur de \u003Cb>Hou.la Connect\u003C/b>","HERO_LEDE":"Hou.la Connect joue, sur le PC du streamer, les réactions aux événements d'un live. Cette documentation décrit comment y brancher un jeu, un programme ou un appareil, et comment écrire les packs qui les pilotent.","HERO_START":"Démarrage rapide","HERO_VERSIONS":"Format de pack : schéma 3 · Protocole du pont : versions 1 et 2 · Exemples vérifiés par le validateur de Hou.la","DL_KIT":"Télécharger le kit ({{ko}} Ko)","DL_GUIDE":"Référence pour une IA (guide-ia.md)","DL_FILE":"Télécharger ce fichier","DL_VIEW":"Voir le fichier","BACK_CONNECT":"Présentation de Hou.la Connect","BREADCRUMB":"Documentation développeur","TOC_LABEL":"Sur cette page","TOC_OVERVIEW":"Vue d'ensemble","TOC_QUICKSTART":"Démarrage rapide","TOC_CONCEPTS":"Concepts","TOC_GUIDES":"Guides","TOC_REFERENCE":"Référence","TOC_LIMITS":"Limites et sécurité","TOC_PUBLISH":"Publication","TOC_KIT":"Kit et téléchargements","TOC_FAQ":"FAQ","TH_KEY":"Clé","TH_RULE":"Règle","TH_FAMILY":"Famille","TH_WHAT":"Description","TH_FIELDS":"Champs principaux","TH_MEANING":"Signification","TH_CODE":"Code","TH_GAME":"Jeu","TH_MODE":"Mode","TH_ACTIONS":"Actions","N_ACTIONS":"{{n}} actions","VE_KICKER":"Bases","VE_TITLE":"Vue d'ensemble","VE_LEDE":"Connect reçoit les événements d'un live (cadeaux, likes, messages, commandes) depuis Hou.la et d'autres plateformes, puis joue des actions sur le PC du streamer. Trois objets décrivent ce comportement. Ce sont des fichiers JSON validés à la publication : aucun ne contient de code exécuté par Connect.","VE_PACK_T":"Pack","VE_PACK_D":"Associe des déclencheurs (\u003Cb>quand\u003C/b>) à des chaînes d'actions (\u003Cb>alors\u003C/b>). Un pack s'écrit dans le Lab de Connect, à la main ou avec une IA, et se partage dans le Store.","VE_PLUGIN_T":"Plugin de jeu","VE_PLUGIN_D":"Décrit un jeu ou un programme : ses actions, leurs réglages et son mode de liaison (\u003Ccode>mod\u003C/code>, \u003Ccode>rcon\u003C/code>, \u003Ccode>ws\u003C/code> ou \u003Ccode>http\u003C/code>). Un plugin par jeu, utilisable par tous les packs.","VE_CNX_T":"Connexion","VE_CNX_D":"Les paramètres d'accès propres à un streamer : adresse, port, mot de passe, jeton. Saisie dans « Mes plugins », elle reste sur son PC. Un pack ne contient aucun identifiant : il désigne une connexion par son rôle.","SCH1_EV":"Un spectateur","SCH1_EV_S":"cadeau, like, commande","SCH1_CO_S":"le pack choisit l'action","SC
89H1_PL":"Le plugin du jeu","SCH1_JEU":"Le jeu","SCH1_JEU_S":"l'action est jouée","SCH1_A1":"événement","SCH1_A2":"action + réglages","SCH1_A3":"commande, message, requête","SCH1_BAS":"Tout s'exécute sur le PC du streamer. Les réglages sont validés à la publication, puis de nouveau avant chaque envoi.","SCH1_ALT":"Schéma en quatre étapes : un spectateur envoie un événement à Hou.la Connect ; le pack choisit une action et ses réglages ; le plugin du jeu la traduit en commande, message ou requête ; le jeu joue l'action.","SCH1_CAP":"Le trajet d'une action, de l'événement au jeu.","VE_BUILD_T":"Ce que tu peux construire","VE_BUILD_1":"\u003Cb>Un plugin de jeu\u003C/b> : rendre un jeu pilotable par les packs, au moyen d'un mod, de RCON, d'un WebSocket ou d'une API HTTP.","VE_BUILD_2":"\u003Cb>Une intégration avec un programme ou un appareil\u003C/b> : un outil local, un logiciel de stream, un objet connecté, par HTTP, WebSocket, MQTT ou OSC.","VE_BUILD_3":"\u003Cb>Un pack\u003C/b> : des interactions prêtes à installer, à partager dans le Store.","QS_KICKER":"Tutoriel","QS_TITLE":"Démarrage rapide : un plugin HTTP","QS_LEDE":"Ce tutoriel relie un serveur HTTP local à Connect par un plugin de jeu en mode \u003Ccode>http\u003C/code>, puis joue une de ses actions depuis un pack, sans être en live.","QS_PRE":"\u003Cb>Prérequis\u003C/b> : Hou.la Connect installé et connecté à ton compte, et Node.js pour le serveur d'exemple. Tout langage capable de servir du HTTP convient pour ton propre programme.","QS_S1_T":"Lance un serveur HTTP local","QS_S1_D":"Enregistre ce code dans \u003Ccode>server.js\u003C/code>, puis lance \u003Ccode>node server.js\u003C/code>. Le serveur écoute sur \u003Ccode>127.0.0.1:7777\u003C/code>, expose une route \u003Ccode>POST\u003C/code> par action et répond \u003Ccode>204\u003C/code> quand l'action a réussi. Si la variable \u003Ccode>TOKEN\u003C/code> est définie, il exige l'en-tête \u003Ccode>Authorization: Bearer &lt;TOKEN&gt;\u003C/code>.","QS_S2_T":"Vérifie-le","QS_S2_D":"Dans un autre terminal, envoie la requête que Connect enverra pour l'action \u003Ccode>soin\u003C/code> :","QS_S2_OK":"Résultat attendu : \u003Ccode>HTTP/1.1 204 No Content\u003C/code>, et le serveur affiche \u003Ccode>POST /actions/soin\u003C/code>. Une route inconnue rend \u003Ccode>404\u003C/code>.","QS_S3_T":"Importe le plugin","QS_S3_D":"Le fichier ci-dessous déclare deux actions : \u003Ccode>soin\u003C/code> (\u003Ccode>POST /actions/soin\u003C/code>) et \u003Ccode>ennemi\u003C/code> (\u003Ccode>POST /actions/ennemi\u003C/code>, avec un corps JSON). Dans Connect : « Mes plugins », « + Créer un plugin », « Un jeu », onglet « JSON », « Importer ». Termine avec « Ajouter mon jeu » : il s'installe sur ce PC, sans relecture.","QS_S4_T":"Crée la connexion","QS_S4_D":"Dans « Mes plugins », carte « HTTP / API », « Configurer » : ajoute une connexion dont l'« URL de base » est \u003Ccode>http://127.0.0.1:7777\u003C/code>. Le jeton est facultatif ; s'il est rempli, Connect l'envoie dans l'en-tête \u003Ccode>Authorization: Bearer …\u003C/code>, ou dans l'en-tête nommé par la connexion. Quand un pack utilise ton plugin, Connect lui lie une connexion HTTP existante, ou ouvre ce formulaire s'il n'en trouve aucune.","QS_S5_T":"Joue une action depuis un pack","QS_S5_D":"Dans le Lab, crée un pack et un écouteur (un cadeau, par exemple). Ajoute à sa chaîne un bloc « Dans le jeu », choisis « Mon outil compagnon », puis l'action « Soins : trousse ». Clique « Tester » : l'écouteur est joué tout de suite, sans live.","QS_S5_OK":"Résultat attendu : le serveur affiche \u003Ccode>POST /actions/soin\u003C/code>, et la notification du test indique l'action comme jouée. En cas d'échec, elle donne la cause : aucune réponse en 5 secondes, statut HTTP hors 2xx, ou aucune connexion liée au pack.","QS_NEXT":"\u003Cb>Étapes suivantes\u003C/b> : ajoute des réglages à tes actions (Référence, « Format d'un plugin de jeu »), puis publie le plugin pour tous les streamers (Publication).","CO_KICKER":"Concepts","CO_TITLE":"Concepts","CO_LEDE":"Les notions employées dans le reste de cette documentation.","CO_TRIG_T":"Déclencheurs","CO_TRIG_D":"Un déclencheur est l'événement qui lance une interaction : cadeau Hou.la (dont les cadeaux personnalisés), follow, message ou commande du chat, likes et partages, spectateurs, sondage, roue, raccourci du streamer, événements d'overlay ou de boutique, et événements de TikTok, YouTube et Kick (\u003Ccode>\"type\": \"platform\"\u003C/code>). Une interaction accepte jusqu'à 8 déclencheurs : n'importe lequel lance la chaîne. Chaque déclencheur remplit ses propres variables, comme \u003Ccode>{sender.name}\u003C/code> ou \u003Ccode>{gift.quantity}\u003C/code>.","CO_ACT_T":"Actions et chaînes","CO_ACT_D":"Une action est ce que Connect joue : un son, une requête OBS, un message de chat, une action de jeu… Connect connaît quinze types d'actions (\u003Ccode>effect.type\u003C/code>), listés dans la référence. Un pack choisit dans cette liste ; un type inconnu fait refuser le pack.","CO_CHAIN_D":"Une interaction (\u003Ccode>rules[i]\u003C/code>) relie ses déclencheurs à une \u003Cb>chaîne\u003C/b> de blocs (\u003Ccode>do\u003C/code>) jouée dans l'ordre : actions, attentes, conditions, tirages au sort, répétitions, compteurs, variables. La durée d'une chaîne est calculée avant de la jouer : {{budget}} secondes au plus.","CO_CNX_T":"Connexions et rôles","CO_CNX_D":"Une action qui joint un service (RCON, OBS, HTTP, WebSocket, MQTT…) passe par une connexion du streamer. Le pack la désigne par un \u003Cb>rôle\u003C/b> : par défaut le type de l'action (\u003Ccode>rcon\u003C/code>, \u003Ccode>http\u003C/code>…), ou \u003Ccode>connector\u003C/code> pour en nommer un autre ; un plugin de jeu utilise le rôle \u003Ccode>jeu:&lt;id&gt;\u003C/code>. À l'installation d'un pack, Connect lie chaque rôle à une connexion existante du bon type, ou demande d'en créer une.","CO_MODES_T":"Modes de liaison d'un plugin de jeu","CO_MODES_D":"Le mode dit comment Connect joint le jeu. Il fixe les champs de la connexion que le streamer remplit, et la forme de chaque action.","MODE_mod_T":"Un mod dans le jeu","MODE_mod_D":"Pour un jeu sans serveur ni API, que tu peux moder. Le mod se connecte au pont local de Connect. Hou.la héberge l'archive du mod ; Connect l'installe dans le dossier du jeu, trouvé par Steam.","MODE_rcon_T":"Le serveur du jeu, par RCON","MODE_rcon_D":"Pour un jeu à serveur qui accepte des commandes RCON. Chaque action envoie 1 à 5 commandes, dans l'ordre. Connexion : hôte, port, mot de passe et pseudo en jeu.","MODE_ws_T":"Un WebSocket local","MODE_ws_D":"Pour un jeu ou un programme qui écoute un WebSocket. Chaque action envoie un message texte de 2 000 caractères au plus. Connexion : l'adresse du WebSocket.","MODE_http_T":"Une API HTTP locale","MODE_http_D":"Pour un jeu ou un programme qui expose une API HTTP. Chaque action est une requête \u003Ccode>GET\u003C/code>, \u003Ccode>POST\u003C/code> ou \u003Ccode>PUT\u003C/code> sur un chemin, avec un corps JSON facultatif. Connexion : l'URL de base et, si besoin, un jeton.","MODE_OFFICIELS":"Plugins officiels dans ce mode : {{n}}","CO_LIFE_T":"Cycle de vie : privé, en relecture, public","CO_LIFE_D":"Un plugin et un pack passent par ces états.","CO_LIFE_1_T":"Privé","CO_LIFE_1_D":"Ajouté avec « Ajouter mon jeu » : installé sur ton PC, utilisable dans tes packs, invisible des autres.","CO_LIFE_2_T":"En relecture","CO_LIFE_2_D":"Envoyé avec le premier pack publié dans le Store qui l'utilise : relu par Hou.la avant d'entrer dans le Store, en même temps que le pack. Le motif d'un refus de plugin s'affiche dans Connect.","CO_LIFE_3_T":"Public","CO_LIFE_3_D":"Visible dans le Store et installable par tous les streamers. Toute modification repasse en relecture.","GU_KICKER":"Guides","GU_TITLE":"Guides","GU_LEDE":"Des procédures pas à pas, classées par objectif.","GU_PL_T":"Créer un plugin de jeu","GU_PL_D":"Ce guide part du cas courant : écrire un pack pour un jeu que Connect ne connaît pas encore. Le plugin du jeu se trouve ou se crée depuis le pack, sans quitter le Lab. Un plugin de jeu est une fiche JSON : l'assistant de Connect l'écrit et la valide, et son onglet « JSON » importe et exporte le fichier.","GU_PL_S1_T":"Ouvre la liste des jeux depuis ton pack","GU_PL_S1_D":"Dans le Lab, onglet « Informations », ouvre le champ « Jeu » de la fiche du pack (le bloc « Dans le jeu » propose la même liste). Si ton jeu n'y figure pas, choisis « Mon jeu n'est pas dans la liste », puis « Ajouter mon jeu » : l'assistant s'ouvre sans quitter le pack.","GU_PL_S2_T":"Installe un plugin existant, s'il y en a un","GU_PL_S2_D":"Connect propose les plugins de la communauté pour les jeux qui ne sont pas encore installés sur ce PC. Un clic installe le plugin, mod compris, et le jeu est choisi dans le pack : passe à l'étape 8.","GU_PL_S3_T":"Sinon, ouvre l'assistant","GU_PL_S3_D":"« Ajouter mon jeu » ouvre l'assistant sans quitter le pack (il s'ouvre aussi depuis « Mes plugins », « + Créer un plugin », « Un jeu »). Ses étapes : « Le jeu », « La liaison », « Les actions », « Le mod » (mode \u003Ccode>mod\u003C/code>
89 seulement), « Terminer ». Si ton mod est déjà connecté au pont, le jeu est proposé « en développement » et l'assistant reprend les actions qu'il annonce.","GU_PL_S4_T":"Le jeu","GU_PL_S4_D":"Nom, identifiant (minuscules, chiffres et tirets, 2 à 40 caractères ; le même que dans le mod), numéro Steam et description. Le numéro Steam est facultatif, mais Connect en a besoin pour trouver le dossier où installer un mod. Dans la description, indique ce que le streamer doit installer ou lancer.","GU_PL_S5_T":"La liaison","GU_PL_S5_D":"Choisis le mode selon ce que le jeu offre. Un serveur qui accepte RCON : \u003Ccode>rcon\u003C/code>. Une API HTTP ou un WebSocket, du jeu ou d'un programme compagnon : \u003Ccode>http\u003C/code> ou \u003Ccode>ws\u003C/code>. Aucun des deux, mais un jeu modable : \u003Ccode>mod\u003C/code>. Les champs de la connexion découlent du mode : le plugin ne les déclare pas.","GU_PL_S6_T":"Les actions","GU_PL_S6_D":"Pour chacune : un nom (en français, et en anglais si tu le souhaites), une description, un effet (\u003Ccode>aide\u003C/code>, \u003Ccode>gene\u003C/code> ou \u003Ccode>neutre\u003C/code>) et jusqu'à 8 réglages (un entier borné, ou un choix dans une liste). 60 actions au plus. En \u003Ccode>rcon\u003C/code>, \u003Ccode>ws\u003C/code> et \u003Ccode>http\u003C/code>, écris le modèle de la commande, du message ou de la requête (Référence, « Format d'un plugin de jeu »).","GU_PL_S7_T":"Le mod (mode mod)","GU_PL_S7_D":"Moteur, dossier d'installation relatif au dossier du jeu (3 niveaux au plus, sans \u003Ccode>..\u003C/code>), version (\u003Ccode>1.0.0\u003C/code>), prérequis, puis l'archive \u003Ccode>.zip\u003C/code> (100 Mo au plus). Hou.la l'héberge et en calcule l'empreinte. Le code du mod suit le guide « Écrire un mod qui parle au pont local ».","GU_PL_S8_T":"Ajoute ton jeu, puis teste","GU_PL_S8_D":"Termine avec « Ajouter mon jeu » : le plugin s'installe sur ce PC, sans relecture. De retour dans le pack, le jeu est déjà choisi, et chaque bloc « Dans le jeu » ajouté le reprend : choisis une action et ses réglages, puis « Tester » joue l'écouteur tout de suite, sans live. Vérifie ainsi chaque action.","GU_PL_S9_T":"Publie ton pack, le plugin suit","GU_PL_S9_D":"Publie le pack « dans le Store (public) » : le plugin part en relecture avec lui, sans autre geste. Le pack entre dans le Store une fois le plugin validé ; d'ici là, Connect affiche « Attend son jeu » (voir Publication).","GU_PL_RULE_T":"Règle de la plateforme : le streamer installe le pack, rien d'autre","GU_PL_RULE_D":"Installer un pack installe automatiquement les plugins de jeu qu'il utilise et, en mode \u003Ccode>mod\u003C/code>, dépose leur mod dans le dossier du jeu trouvé par Steam. Si une connexion manque (\u003Ccode>rcon\u003C/code>, \u003Ccode>ws\u003C/code>, \u003Ccode>http\u003C/code>), Connect la demande à l'installation. Un jeu absent de ce PC n'empêche pas l'installation : Connect le signale et réessaie à la première action du pack. Seul le programme externe d'un plugin \u003Ccode>http\u003C/code> ou \u003Ccode>ws\u003C/code> s'installe à part, par le streamer.","GU_PL_EX_T":"Un exemple par mode","GU_PL_EX_D":"Chaque fichier passe le validateur de Hou.la. Importe-le dans l'assistant (onglet « JSON ») comme point de départ.","GU_PL_EX_mod":"Les actions ne portent pas de modèle : le mod reçoit l'identifiant de l'action et ses réglages.","GU_PL_EX_rcon":"\u003Ccode>{param.valeur}\u003C/code> est remplacé par le réglage choisi dans le pack ; \u003Ccode>{sender.name}\u003C/code> et \u003Ccode>{gift.name}\u003C/code> par les données de l'événement.","GU_PL_EX_ws":"Le message est du texte, ici du JSON. Pour un réglage à choix, la \u003Ccode>valeur\u003C/code> (\u003Ccode>goblin\u003C/code>) remplace l'identifiant du choix.","GU_PL_EX_http":"Un chemin par action, un corps JSON facultatif. C'est le plugin du démarrage rapide.","GU_MOD_T":"Écrire un mod qui parle au pont local","GU_MOD_D":"En mode \u003Ccode>mod\u003C/code>, le mod est le client et Connect le serveur : le jeu n'ouvre aucun port, et le mod se reconnecte quand Connect redémarre. Les messages sont du JSON texte sur un WebSocket local. Le détail de chaque message est dans la référence (« Protocole du pont »).","GU_MOD_S1_T":"Lis le fichier d'appairage","GU_MOD_S1_D":"Au démarrage, Connect écrit \u003Ccode>~/.houla/pont-jeu.json\u003C/code> : \u003Ccode>{ \"v\": 1, \"port\": 30212, \"jeton\": \"&lt;48 caractères hexadécimaux&gt;\" }\u003C/code>. Le jeton change à chaque démarrage de Connect et le fichier est effacé à sa fermeture : relis-le avant chaque tentative de connexion.","GU_MOD_S2_T":"Connecte-toi","GU_MOD_S2_D":"Ouvre \u003Ccode>ws://127.0.0.1:&lt;port&gt;/pont/v1\u003C/code> avec l'en-tête \u003Ccode>X-Houla-Pont: &lt;jeton&gt;\u003C/code>, sans en-tête \u003Ccode>Origin\u003C/code>.","GU_MOD_S3_T":"Envoie bonjour dans les 5 secondes","GU_MOD_S3_D":"Envoie \u003Ccode>bonjour\u003C/code>
89 avec l'identifiant du jeu, la version du mod et ses actions. En version 2, chaque action est décrite (identifiant, libellé, réglages) et l'assistant s'en sert pour préremplir le plugin. Connect répond \u003Ccode>bienvenue\u003C/code>.","GU_MOD_S4_T":"Reçois les actions","GU_MOD_S4_D":"Chaque message \u003Ccode>action\u003C/code> porte un \u003Ccode>id\u003C/code>, l'identifiant de l'action, ses réglages et l'auteur (\u003Ccode>de\u003C/code> : pseudo, quantité, nom du cadeau). Joue l'action dans le jeu.","GU_MOD_S5_T":"Réponds dans les 5 secondes","GU_MOD_S5_D":"Renvoie \u003Ccode>fait\u003C/code> avec le même \u003Ccode>id\u003C/code> : \u003Ccode>\"ok\": true\u003C/code>, ou \u003Ccode>\"ok\": false\u003C/code> avec une \u003Ccode>raison\u003C/code> (codes de refus dans la référence) et un \u003Ccode>detail\u003C/code> facultatif. Sans réponse en 5 secondes, l'action échoue.","GU_MOD_S6_T":"Teste avant d'avoir un plugin","GU_MOD_S6_D":"Un identifiant de jeu valide sans plugin est accepté et affiché « en développement » dans « Mes plugins » : crée ensuite le plugin depuis ce jeu. Une seconde connexion du même jeu remplace la première (code de fermeture \u003Ccode>4004\u003C/code>).","GU_MOD_KITS":"Aucun kit de mod n'est proposé en téléchargement public, et il n'existe pas de kit pour Unreal Engine. Le protocole s'implémente dans tout langage qui dispose d'un client WebSocket.","GU_EXT_T":"Piloter un programme externe ou un objet connecté","GU_EXT_D":"Connect ne lance aucun programme. Un programme externe (outil compagnon d'un jeu, logiciel de ton choix) tourne à côté de Connect et expose une API locale ; un plugin de jeu en mode \u003Ccode>http\u003C/code> ou \u003Ccode>ws\u003C/code> lui envoie les actions.","GU_EXT_PROG_T":"Un programme local avec une API","SCH2_PC":"Le PC du streamer","SCH2_CO_S1":"plugin en mode http","SCH2_CO_S2":"connexion : URL de base","SCH2_OUTIL":"Ton programme","SCH2_OUTIL_S1":"lancé par le streamer","SCH2_JEU_S":"piloté par ton programme","SCH2_REP":"réponse, 5 s","SCH2_CODE":"ton code","SCH2_HOULA":"Hou.la Connect et ton plugin","SCH2_TOI":"Ton programme, distribué par toi","SCH2_EDITEUR":"Le jeu ou l'appareil","SCH2_ALT":"Schéma : sur le PC du streamer, Hou.la Connect envoie une requête POST à ton programme, à l'adresse http://127.0.0.1:PORT saisie dans la connexion ; le programme répond dans les 5 secondes, puis pilote le jeu ou l'appareil avec son propre code.","SCH2_CAP":"Connect envoie les actions à ton programme ; ton programme agit sur le jeu ou l'appareil.","GU_EXT_S1_T":"Expose une API locale","GU_EXT_S1_D":"Ton programme ouvre une API HTTP (ou un WebSocket) sur \u003Ccode>127.0.0.1\u003C/code>, à un port fixe. Une route par action : \u003Ccode>POST /actions/soin\u003C/code>, \u003Ccode>POST /actions/ennemi\u003C/code>… Réponds par un statut 2xx quand l'action a réussi. Délai maximal : 5 secondes en HTTP, 4 en WebSocket ; tout autre statut est affiché comme un échec dans le journal du live.","GU_EXT_S2_T":"Publie un plugin en mode http","GU_EXT_S2_D":"Une action par route, avec ses réglages. Dans la description du plugin, indique où télécharger ton programme et quelle adresse saisir dans la connexion.","GU_EXT_S3_T":"Le streamer installe ton programme","GU_EXT_S3_D":"Il le télécharge depuis ton site, le lance, puis saisit dans Connect l'« URL de base » (par exemple \u003Ccode>http://127.0.0.1:7777\u003C/code>) et un jeton si ton programme en exige un.","GU_EXT_S4_T":"Les packs utilisent tes actions","GU_EXT_S4_D":"Dans le Lab, le bloc « Dans le jeu » propose ton plugin et ses actions. Une adresse locale passe obligatoirement par une connexion : un pack ne peut pas écrire \u003Ccode>http://127.0.0.1\u003C/code> lui-même.","GU_EXT_OBJ_T":"Un logiciel ou un objet connecté courant","GU_EXT_OBJ_D":"Les plugins officiels génériques couvrent les protocoles courants : \u003Cb>HTTP / API\u003C/b>, \u003Cb>WebSocket\u003C/b>, \u003Cb>MQTT\u003C/b> (Zigbee2MQTT, Tasmota…), \u003Cb>OSC\u003C/b> (VRChat, TouchDesigner, Resolume), \u003Cb>RCON\u003C/b>, \u003Cb>OBS\u003C/b> et \u003Cb>Streamlabs\u003C/b>. D'autres sont prêts à l'emploi : Home Assistant, Elgato Key Light, Discord, Telegram, webhook. Un pack les utilise directement avec les actions \u003Ccode>http\u003C/code>, \u003Ccode>ws\u003C/code>, \u003Ccode>mqtt\u003C/code> ou \u003Ccode>osc\u003C/code>, par une connexion du streamer.","GU_PK_T":"Écrire un pack","GU_PK_D":"Le Lab écrit le JSON d'un pack à ta place ; les recettes ci-dessous montrent les constructions courantes. Chaque fichier passe le validateur de Hou.la et s'importe dans le Lab : onglet « Écouteurs », « JSON », « Importer un fichier… », puis « Vérifier mon pack ».","EX_MULTI_T":"Plusieurs plateformes, une seule action","EX_MULTI_D":"Une interaction à cinq déclencheurs : un cadeau personnalisé Hou.la à 100 pièces, un cadeau TikTok d'au moins 99 diamants, un Super Chat YouTube, 100 KICKs ou 100 bits Twitch. Chacun joue la même action de jeu (plugin Minecraft). Les événements Twitch sont acceptés par le format ; leur réception n'est pas encore disponible dans Connect.","EX_PALIERS_T":"Paliers, switch et repeat","EX_PALIERS_D":"Les likes de Hou.la et de TikTok passent par la même chaîne ; un \u003Ccode>switch\u003C/code> sur \u003Ccode>hearts.palier\u003C/code> choisit la réaction (trois fanfares à 10 000, avec \u003Ccode>repeat\u003C/code>). Les partages lisent leur total. Un cadeau quelconque est routé selon \u003Ccode>coins\u003C/code>, et \u003Ccode>repeat\u003C/code> joue cinq klaxons quand la quantité atteint 5.","EX_COMMANDES_T":"Commandes de chat","EX_COMMANDES_D":"\u003Ccode>/klaxon\u003C/code> est gratuite, limitée à une fois toutes les 30 secondes par spectateur, et tire un son au hasard (70 / 30). \u003Ccode>/dis\u003C/code> coûte 10 pièces et lit le texte du spectateur à voix haute. « !gg » est écouté sur les chats de Hou.la, TikTok, YouTube et Kick.","EX_CADEAUX_T":"Cadeaux personnalisés","EX_CADEAUX_D":"Quatre cadeaux personnalisés (\u003Ccode>ix_slot_01\u003C/code> à \u003Ccode>04\u003C/code>), chacun avec son nom, son prix dans l'échelle fermée et son rayon, reliés aux actions d'un plugin de jeu (Pratfall). L'icône d'un cadeau se règle ensuite dans le Lab.","EX_HTTP_T":"Un programme local en HTTP","EX_HTTP_D":"Deux cadeaux qui pilotent un plugin officiel en mode \u003Ccode>http\u003C/code> (Tomb Raider I-III Remastered) ; l'action de soin répond aussi à un cadeau TikTok précis (\u003Ccode>giftId\u003C/code> 5655, la Rose).","GU_IA_T":"Générer un pack avec une IA","GU_IA_1":"Donne à l'IA le fichier \u003Ccode>guide-ia.md\u003C/code> du kit et l'adresse de cette page, puis décris le pack : ce que les spectateurs déclenchent, et ce qui se passe.","GU_IA_2":"Si le pack joue des sons, ajoute la liste des sons : dans Connect, « Sons », « Exporter la liste… » (ou « Liste des sons… » dans le Lab).","GU_IA_3":"L'IA rend un fichier JSON. Dans le Lab : onglet « Écouteurs », « JSON », « Importer un fichier… », puis « Vérifier mon pack ».","GU_IA_4":"Règle ensuite dans le Lab ce qu'une IA ne peut pas connaître : l'icône d'un cadeau personnalisé, les overlays du streamer, les connexions.","RF_KICKER":"Référence","RF_TITLE":"Référence","RF_LEDE":"Formats et protocoles, champ par champ. Les validateurs sont fermés : une clé inconnue fait refuser le fichier entier. La liste exhaustive des déclencheurs, de leurs variables et de l'échelle des prix est dans \u003Ccode>guide-ia.md\u003C/code>, généré depuis Connect.","RF_PL_T":"Format d'un plugin de jeu","RF_PL_D":"Un libellé est une chaîne, ou un objet \u003Ccode>{ \"fr\": \"…\", \"en\": \"…\" }\u003C/code>.","F_ID":"Identifiant du plugin : \u003Ccode>^[a-z0-9][a-z0-9-]{1,39}$\u003C/code>. Unique dans le Store, et identique à celui que le mod annonce.","F_NOM":"Nom du jeu, 60 caractères au plus.","F_PROTO":"Toujours \u003Ccode>\"jeu\"\u003C/code>.","F_DESC":"Facultative, 400 caractères au plus. Indique ce qu'il faut installer ou lancer.","F_JEU":"Facultatif : le numéro de la page Steam du jeu (\u003Ccode>store.steampowered.com/app/4244510/…\u003C/code> donne 4244510). Sans lui, Connect ne peut pas installer de mod.","F_MODE":"\u003Ccode>mod\u003C/code>, \u003Ccode>rcon\u003C/code>, \u003Ccode>ws\u003C/code> ou \u003Ccode>http\u003C/code>.","F_MOD":"Mode \u003Ccode>mod\u003C/code> seulement : \u003Ccode>moteur\u003C/code> (\u003Ccode>godot\u003C/code>, \u003Ccode>unity\u003C/code>, \u003Ccode>lua\u003C/code>, \u003Ccode>autre\u003C/code>), \u003Ccode>dossier\u003C/code>, \u003Ccode>version\u003C/code>, \u003Ccode>prerequis\u003C/code>. Le bloc \u003Ccode>fichier\u003C/code> (adresse, empreinte, taille) est rempli par Hou.la à l'envoi de l'archive.","A_ID":"Identifiant de l'action : \u003Ccode>a-z\u003C/code>, \u003Ccode>0-9\u003C/code>, \u003Ccode>_\u003C/code> et \u003Ccode>-\u003C/code>, 40 caractères au plus.","A_LIB":"Nom de l'action, 80 caractères au plus.","A_DESC":"Facultative, 300 caractères au plus.","A_EFFET"
89:"\u003Ccode>aide\u003C/code>, \u003Ccode>gene\u003C/code> ou \u003Ccode>neutre\u003C/code> (par défaut). Le Lab l'affiche à côté de l'action.","A_PARAMS":"8 au plus. \u003Ccode>entier\u003C/code> : \u003Ccode>min\u003C/code>, \u003Ccode>max\u003C/code>, \u003Ccode>defaut\u003C/code>. \u003Ccode>choix\u003C/code> : \u003Ccode>valeurs\u003C/code> (60 au plus) et \u003Ccode>defaut\u003C/code> ; une valeur peut porter une \u003Ccode>valeur\u003C/code>, substituée dans le modèle à la place de son identifiant (sauf en mode \u003Ccode>mod\u003C/code>, où le mod reçoit l'identifiant).","A_CMD":"Mode \u003Ccode>rcon\u003C/code> : 1 à 5 commandes, une ligne chacune, 500 caractères au plus.","A_MSG":"Mode \u003Ccode>ws\u003C/code> : le message, 2 000 caractères au plus.","A_HTTP":"Mode \u003Ccode>http\u003C/code> : \u003Ccode>method\u003C/code> (\u003Ccode>GET\u003C/code>, \u003Ccode>POST\u003C/code>, \u003Ccode>PUT\u003C/code>), \u003Ccode>path\u003C/code> ajouté à l'URL de base de la connexion (commence par \u003Ccode>/\u003C/code>, sans \u003Ccode>..\u003C/code>), \u003Ccode>json\u003C/code> facultatif (un objet, 2 000 caractères au plus).","RF_VARS_T":"Variables d'un modèle","RF_VARS_D":"\u003Ccode>{param.&lt;réglage&gt;}\u003C/code> : la valeur d'un réglage de l'action. \u003Ccode>{player}\u003C/code> et les autres champs \u003Cb>non secrets\u003C/b> de la connexion ; un mot de passe ou un jeton n'est jamais inséré dans un modèle. Les données de l'événement : \u003Ccode>{sender.name}\u003C/code> (le pseudo du spectateur), \u003Ccode>{gift.name}\u003C/code>, \u003Ccode>{gift.quantity}\u003C/code>… Chaque valeur est échappée selon sa destination (adresse, JSON, texte).","RF_PK_T":"Format d'un pack (schéma 3)","RF_PK_D":"Un pack est un objet JSON. Squelette minimal :","RF_PK_KEYS_T":"Clés du pack","PK_K_SCHEMA":"Toujours \u003Ccode>3\u003C/code>.","PK_K_RULES":"Les interactions, 300 au plus.","PK_K_OPT":"Facultatives : réponses automatiques du chat, configurations clavier ou manette, nombre de joueurs simultanés d'un pack manette.","PK_K_SLUG":"Facultatif : le Lab y met l'identifiant du pack.","RF_RULE_T":"Clés d'une interaction (rules[i])","RG_K_ID":"Identifiant unique dans le pack, 60 caractères au plus. Garde-le stable d'une version à l'autre : les réglages des streamers y sont attachés.","RG_K_LABEL":"Nom de l'interaction, 120 caractères au plus. Pour un cadeau personnalisé, c'est aussi le nom affiché sur sa tuile.","RG_K_ON":"Un déclencheur, ou une liste de 8 au plus : n'importe lequel lance la chaîne.","RG_K_DO":"La chaîne de blocs, jouée dans l'ordre.","RG_K_ONLY":"\u003Ccode>true\u003C/code> : réservée aux abonnés, ou aux modérateurs.","RG_K_ENCH":"Si l'interaction se déclenche pendant qu'elle tourne : \u003Ccode>suite\u003C/code> (par défaut, les demandes attendent leur tour), \u003Ccode>ensemble\u003C/code> ou \u003Ccode>ignorer\u003C/code>.","RG_K_PROFILE":"L'identifiant d'une configuration de \u003Ccode>profiles\u003C/code> (clavier, manette). Absent : toutes.","RF_TRIG_T":"Déclencheurs (on)","RF_TRIG_D":"Chaque déclencheur a un \u003Ccode>type\u003C/code> et ses propres réglages (seuil, palier, cadeau précis…). Les variables qu'il remplit et ses réglages exacts sont listés dans \u003Ccode>guide-ia.md\u003C/code>.","TR_GIFTS_N":"Cadeaux et commandes","TR_GIFTS_D":"Un cadeau Hou.la (du catalogue, ou personnalisé \u003Ccode>ix_slot_01\u003C/code>, \u003Ccode>ix_slot_02\u003C/code>… avec son prix et son rayon), une commande de chat déclarée par le pack (gratuite ou payante), un message prioritaire payé.","TR_AUDIENCE_N":"Audience","TR_AUDIENCE_D":"Follow, arrivée d'un spectateur, tous les N spectateurs, likes et partages (un palier, une liste de paliers, ou tous les N).","TR_CHAT_N":"Chat","TR_CHAT_D":"Un message : début (\u003Ccode>startsWith\u003C/code>), mot contenu (\u003Ccode>contains\u003C/code>) ou tous les N messages, sur les chats choisis (Hou.la, TikTok, YouTube, Kick).","TR_LIVE_N":"Live","TR_LIVE_D":"Sondage, objectif de cadeaux, roue du streamer, raccourci clavier du streamer.","TR_OVERLAYS_N":"Overlays","TR_OVERLAYS_D":"Fin d'un chrono, fin d'un match, objectif atteint, sur un overlay du streamer.","TR_SHOP_N":"Boutique","TR_SHOP_D":"Produit épinglé, fin d'enchère, achat payé, code promo ajouté au live.","TR_PLATFORM_N":"Autres plateformes","TR_PLATFORM_D":"Un événement de TikTok, YouTube ou Kick : \u003Ccode>platform\u003C/code>, \u003Ccode>event\u003C/code>, et selon l'événement \u003Ccode>min\u003C/code>, \u003Ccode>giftId\u003C/code> ou des paliers. Les événements Twitch sont acceptés par le format, sans être reçus pour l'instant.","RF_BLOCKS_T":"Blocs d'une chaîne (do)","RF_BLOCKS_D":"Chaque bloc a un \u003Ccode>kind\u003C/code> et un \u003Ccode>id\u003C/code> unique dans son interaction (lettres, chiffres, \u003Ccode>-\u003C/code>, \u003Ccode>_\u003C/code>, 24 caractères au plus).","BK_action":"Joue une action (\u003Ccode>effect\u003C/code>). \u003Ccode>holdMs\u003C/code> : temps d'attente après l'action, {{attente}} s au plus.","BK_delay":"Attend \u003Ccode>ms\u003C/code> millisecondes, {{attente}} s au plus.","BK_if":"Si la condition \u003Ccode>when\u003C/code> est vraie, joue \u003Ccode>do\u003C/code>, sinon \u003Ccode>else\u003C/code>.","BK_switch":"1 à {{switch}} conditions, une branche par condition : seule la première condition vraie part. \u003Ccode>else\u003C/code> est obligatoire.","BK_random":"2 à {{hasard}} branches, une seule tirée au sort. \u003Ccode>weights\u003C/code> : un poids de 1 à 1000 par branche.","BK_parallel":"2 à {{parallele}} branches, jouées en même temps. Pas de \u003Ccode>parallel\u003C/code> dans un \u003Ccode>parallel\u003C/code>.","BK_repeat":"Répète une branche \u003Ccode>times\u003C/code> fois ({{repeter}} au plus), avec une pause \u003Ccode>gapMs\u003C/code>. \u003Ccode>cases\u003C/code> choisit le nombre de tours selon une condition. Pas de \u003Ccode>repeat\u003C/code> dans un \u003Ccode>repeat\u003C/code>.","BK_counter":"Un compteur de la session : \u003Ccode>inc\u003C/code>, \u003Ccode>dec\u003C/code> ou \u003Ccode>set\u003C/code>. Se lit dans une condition : \u003Ccode>counter:&lt;nom&gt;\u003C/code>. {{compteurs}} compteurs par pack.","BK_var":"Pose \u003Ccode>{var.&lt;nom&gt;}\u003C/code> pour la suite de la chaîne. Se lit dans une condition : \u003Ccode>var:&lt;nom&gt;\u003C/code>. {{variables}} par interaction.","RF_COND_T":"Conditions","RF_COND_D":"\u003Ccode>{ \"all\": [ … ] }\u003C/code> (toutes vraies) ou \u003Ccode>{ \"any\": [ … ] }\u003C/code> (une suffit), {{clauses}} clauses au plus. Une clause compare \u003Ccode>left\u003C/code> à une valeur écrite (\u003Ccode>right\u003C/code>, jamais une variable) avec \u003Ccode>==\u003C/code>, \u003Ccode>!=\u003C/code>, \u003Ccode>&lt;\u003C/code>, \u003Ccode>&lt;=\u003C/code>, \u003Ccode>&gt;
89\u003C/code>, \u003Ccode>&gt;=\u003C/code> ou \u003Ccode>contains\u003C/code>. \u003Ccode>left\u003C/code> : le montant (\u003Ccode>coins\u003C/code>), la quantité, le message, le palier de likes (\u003Ccode>hearts.palier\u003C/code>), le montant d'une autre plateforme (\u003Ccode>platform.amount\u003C/code>), un tirage de 0 à 99 (\u003Ccode>random\u003C/code>), un compteur, une variable…","RF_VARP_T":"Variables dans les textes","RF_VARP_D":"Dans un texte (\u003Ccode>chat.text\u003C/code>, \u003Ccode>tts.text\u003C/code>, \u003Ccode>rcon.command\u003C/code>…), \u003Ccode>{sender.name}\u003C/code>, \u003Ccode>{gift.name}\u003C/code>, \u003Ccode>{hearts.palier}\u003C/code>, \u003Ccode>{commande.texte}\u003C/code>… sont remplacées au moment de jouer. Seules les variables remplies par un déclencheur de l'interaction ont une valeur ; une variable inconnue fait refuser le pack. Une variable n'est jamais admise dans un identifiant (son, overlay, réglage de jeu, scène).","RF_LIM_T":"Bornes","RF_LIM_D":"{{blocs}} blocs par interaction et {{blocsPack}} par pack, {{profondeur}} niveaux d'imbrication, {{budget}} s de durée calculée par chaîne, {{repeter}} tours pour un repeat, {{attente}} s par attente.","RF_PT_T":"Protocole du pont (mode mod)","RF_PT_D":"Un WebSocket local, des messages JSON texte. Versions acceptées : \u003Ccode>1\u003C/code> et \u003Ccode>2\u003C/code>.","RF_PT_CNX_T":"Connexion au pont","RF_PT_C1_N":"Appairage","RF_PT_C1_D":"\u003Ccode>~/.houla/pont-jeu.json\u003C/code> : \u003Ccode>v\u003C/code>, \u003Ccode>port\u003C/code> (30212), \u003Ccode>jeton\u003C/code> (48 caractères hexadécimaux, nouveau à chaque démarrage de Connect). Fichier effacé à la fermeture de Connect.","RF_PT_C2_N":"Adresse","RF_PT_C2_D":"\u003Ccode>ws://127.0.0.1:&lt;port&gt;/pont/v1\u003C/code>","RF_PT_C3_N":"En-têtes","RF_PT_C3_D":"\u003Ccode>X-Houla-Pont: &lt;jeton&gt;\u003C/code> obligatoire. Aucun en-tête \u003Ccode>Origin\u003C/code>. \u003Ccode>Host\u003C/code> : \u003Ccode>127.0.0.1\u003C/code> ou \u003Ccode>localhost\u003C/code>.","RF_PT_C4_N":"Délais","RF_PT_C4_D":"\u003Ccode>bonjour\u003C/code> dans les 5 s après la connexion ; \u003Ccode>fait\u003C/code> dans les 5 s après une \u003Ccode>action\u003C/code>. Connect envoie un ping WebSocket toutes les 15 s : un client qui ne répond pas est déconnecté.","RF_PT_MSG_T":"Messages","MSG_bonjour":"Premier message du mod. \u003Ccode>jeu\u003C/code> : l'identifiant du plugin (\u003Ccode>^[a-z0-9][a-z0-9-]{1,39}$\u003C/code>). \u003Ccode>actions\u003C/code> : en version 1, une liste d'identifiants ; en version 2, des objets (identifiant, libellé, réglages) que l'assistant reprend pour préremplir le plugin. Au-delà de 32 Ko, ces descriptions sont ignorées.","MSG_bienvenue":"Réponse de Connect, avec la version retenue.","MSG_action":"Une action à jouer. \u003Ccode>id\u003C/code> : à renvoyer dans \u003Ccode>fait\u003C/code>. \u003Ccode>params\u003C/code> : les réglages validés. \u003Ccode>de\u003C/code> : le pseudo du spectateur, la quantité, le nom du cadeau.","MSG_fait":"Le résultat. \u003Ccode>\"ok\": false\u003C/code> s'accompagne d'une \u003Ccode>raison\u003C/code> (40 caractères au plus) et d'un \u003Ccode>detail\u003C/code> facultatif (200 caractères au plus).","MSG_evenement":"Facultatif. Un événement du jeu : \u003Ccode>nom\u003C/code> et clés en \u003Ccode>a-z0-9_\u003C/code>, 20 valeurs simples au plus. Accepté et filtré ; aucun déclencheur ne le lit pour l'instant.","RF_PT_REFUS_T":"Codes de refus (raison)","REF_pas_en_partie":"Aucune partie en cours (menu, chargement).","REF_mode_interdit":"Le mode de jeu en cours refuse les actions des spectateurs.","REF_pas_maintenant":"L'action n'a pas pu être jouée à ce moment.","REF_sans_effet":"Rien à faire (vie déjà pleine, personne à ranimer).","REF_action_inconnue":"Le mod installé ne connaît pas cette action (version trop ancienne).","REF_params":"Réglages refusés par le mod.","REF_erreur":"Erreur dans le jeu, précisée dans detail.","REF_pas_hote":"Seul l'hôte de la partie peut recevoir les actions.","REF_delai":"Posé par Connect : aucune réponse fait en 5 secondes.","REF_deconnecte":"Posé par Connect : le mod s'est déconnecté avant de répondre.","RF_PT_CLOSE_T":"Codes de fermeture","CLOSE_4001":"Aucun bonjour reçu dans les 5 secondes.","CLOSE_4002":"Version de protocole non prise en charge.","CLOSE_4003":"Identifiant de jeu invalide.","CLOSE_4004":"Remplacée par une nouvelle connexion du même jeu.","CLOSE_1001":"Connect se ferme.","RF_PT_GAR_T":"Garanties du serveur","RF_PT_G1":"Il n'écoute que sur \u003Ccode>127.0.0.1\u003C/code>.","RF_PT_G2":"Le jeton est exigé et comparé en temps constant ; absent ou faux, la connexion est refusée (401).","RF_PT_G3":"Tout en-tête \u003Ccode>Origin\u003C/code> est refusé (403) : une page web ouverte sur le PC ne peut pas se faire passer pour un jeu.","RF_PT_G4":"L'en-tête \u003Ccode>Host\u003C/code> doit nommer \u003Ccode>127.0.0.1\u003C/code> ou \u003Ccode>localhost\u003C/code>, ce qui bloque le DNS rebinding.","RF_PT_G5":"Un message fait 64 Ko au plus. Une action ne part que si un plugin la déclare, avec des réglages validés.","RF_AC_T":"Types d'actions (effect)","RF_AC_D":"Le champ \u003Ccode>type\u003C/code> d'un \u003Ccode>effect\u003C/code> choisit l'exécuteur. Les champs exacts et leurs valeurs admises sont dans \u003Ccode>guide-ia.md\u003C/code>.","AC_JEU_N":"Action de jeu","AC_JEU_D":"Une action d'un plugin de jeu, avec ses réglages écrits en clair (jamais une variable).","AC_SOUND_N":"Son","AC_SOUND_D":"Un son de la bibliothèque Hou.la (\u003Ccode>soundId\u003C/code>), ou un fichier du PC désigné par un \u003Cb>rôle\u003C/b> que le streamer relie (\u003Ccode>localFile\u003C/code>, jamais un chemin). Volume, coupure du son précédent, durée maximale.","AC_CHAT_N":"Chat","AC_CHAT_D":"Écrit dans le chat Hou.la du live, 300 caractères au plus, avec au moins 2 secondes entre deux messages (\u003Ccode>cooldownMs\u003C/code>).","AC_TTS_N":"Synthèse vocale","AC_TTS_D":"Lit un texte à voix haute avec une voix du système, 300 caractères au plus.","AC_OVERLAY_N":"Overlay","AC_OVERLAY_D":"Pilote un overlay de la bibliothèque du streamer : \u003Ccode>afficher\u003C/code>, \u003Ccode>masquer\u003C/code>, \u003Ccode>ajouter\u003C/code>, \u003Ccode>retirer\u003C/code>, \u003Ccode>fixer\u003C/code>, \u003Ccode>demarrer\u003C/code>, \u003Ccode>arreter\u003C/code>.","AC_KEYBOARD_N":"Clavier","AC_KEYBOARD_D":"Touches, combinaisons (\u003Ccode>shift+c\u003C/code>), suites (\u003Ccode>up,up,down\u003C/code>), maintien (\u003Ccode>space:400\u003C/code>). Le jeu doit être au premier plan. Désactivé par défaut.","AC_GAMEPAD_N":"Manette virtuelle","AC_GAMEPAD_D":"Une manette Xbox virtuelle : boutons, sticks, gâchettes, séquences. Windows seulement (pilote ViGEmBus). Désactivée par défaut.","AC_OBS_N":"OBS Studio","AC_OBS_D":"Une requête OBS WebSocket v5 prise dans une liste fermée : scène, sources, filtres, micro, médias, transitions, enregistrement, replay, caméra virtuelle. Démarrer ou couper le stream est exclu.","AC_STREAMLABS_N":"Streamlabs Desktop","AC_STREAMLABS_D":"Une commande d'une liste fermée : scènes, sources, son, enregistrement, replay. Démarrer le stream est exclu.","AC_VOICEMOD_N":"Voicemod","AC_VOICEMOD_D":"Change de voix, joue un son de la soundboard. Voicemod doit être lancé (Windows). Aucune variable.","AC_RCON_N":"RCON","AC_RCON_D":"Une commande à un serveur de jeu (Minecraft, Rust, ARK…). Les verbes destructeurs (\u003Ccode>stop\u003C/code>, \u003Ccode>ban\u003C/code>, \u003Ccode>op\u003C/code>, \u003Ccode>whitelist\u003C/code>…) sont refusés.","AC_HTTP_N":"HTTP","AC_HTTP_D":"Une requête \u003Ccode>GET\u003C/code>, \u003Ccode>POST\u003C/code> ou \u003Ccode>PUT\u003C/code>, 5 secondes au plus. \u003Cb>Par une connexion\u003C/b> : son adresse, même locale, son jeton, et la réponse est lue (\u003Ccode>{reponse.…}\u003C/code>). \u003Cb>Par une adresse écrite dans le pack\u003C/b> : jamais ce PC ni le réseau local, ni jeton, ni redirection, et la réponse n'est pas lue.","AC_WS_N":"WebSocket","AC_WS_D":"Un message texte, par une connexion ou par une adresse écrite dans le pack (mêmes règles que HTTP pour ce PC et le réseau local).","AC_MQTT_N":"MQTT","AC_MQTT_D":"Un message sur un topic, vers le courtier de la connexion du streamer.","AC_OSC_N":"OSC","AC_OSC_D":"Un message OSC en UDP, par défaut vers \u003Ccode>127.0.0.1:9000\u003C/code>. UDP ne confirme pas la réception : réussi signifie envoyé.","RF_OFF_T":"Plugins de jeu officiels","RF_OFF_D":"Livrés avec Connect, au même format que les plugins de la communauté. Utilise-les dans tes packs, ou lis-les comme exemples.","RF_OFF_EX_T":"Extraits","RF_OFF_EX_D":"Un plugin officiel par mode représenté : l'en-tête et les deux premières actions, tels que Connect les charge.","LI_KICKER":"Sécurité","LI_TITLE":"Limites et sécurité","LI_LEDE":"Règles appliquées à tout pack, plugin et mod. Hou.la les contrôle à la publication, puis Connect avant chaque action.","LI_SEC_T":"Interdit à un pack, un plugin ou un mod","SEC_1":"\u003Cb>Lancer un exécutable ou un script.\u003C/b> Aucun pack, plugin ou mod ne peut lancer un programme : aucun champ ne désigne un fichier à exécuter. Pour piloter un programme externe, utilise le mode \u003Ccode>http\u003C/code> ou \u003Ccode>ws\u003C/code> vers une API locale exposée par ce programme.","SEC_2":"Viser ce PC ou le réseau local par une adresse écrite dans le pack (\u003Ccode>127.0.0.1\u003C/code>, \u003Ccode>192.168.…\u003C/code>, \u003Ccode>localhost\u003C/code>, ou un nom qui y mène). Seule une connexion saisie par le streamer, ou un hôte qu'il a approuvé, y accède.","SEC_3":"Envoyer un jeton ou un mot de passe ailleurs que vers la connexion du streamer, ou suivre une redirection depuis une adresse écrite dans le pack.","SEC_4":"Insérer un champ secret d'une connexion (mot de passe, jeton, webhook) dans une commande ou une requête.","SEC_5":"Jouer une commande RCON destructrice : \u003Ccode>stop\u003C/code>, \u003Ccode>restart\u003C/code>, \u003Ccode>op\u003C/code>, \u003Ccode>ban\u003C/code>, \u003Ccode>kick\u003C/code>, \u003Ccode>whitelist\u003C/code>, \u003Ccode>save-off\u003C/code>, \u003Ccode>gamemode\u003C/code>…","SEC_6":"Utiliser le clavier, la manette ou le pilote bas niveau sans que le streamer les ait activés : ils sont désactivés par défaut.","SEC_7":"Démarrer ou couper le stream depuis OBS ou Streamlabs.","SEC_8":"Envoyer à un jeu une action ou un réglage que son plugin ne déclare pas, ou mettre une variable venue du chat dans un réglage.","SEC_9":"Porter une clé inconnue : chaque objet est reconstruit depuis une liste fermée, et une clé en trop fait refuser le fichier.","SEC_10":"Faire exécuter un mod par Connect. Connect vérifie l'empreinte de l'archive, contrôle son contenu (aucun chemin hors du dossier, aucun lien symbolique) et l'extrait dans le dossier du jeu ; c'est le jeu qui charge le mod.","LI_NOW_T":"Limites actuelles","LIM_1":"Les événements Twitch sont acceptés par le format de pack, mais Connect ne les reçoit pas encore.","LIM_2":"Un plugin de type « logiciel ou objet connecté » publié depuis l'assistant s'installe depuis le Store, mais ne se configure pas encore dans Connect. Pour piloter un programme, utilise un plugin de jeu en mode \u003Ccode>http\u003C/code> ou \u003Ccode>ws\u003C/code>.","LIM_3":"Les chaînes autres que Hou.la ne sont écoutées que pendant un live Hou.la.","LIM_4":"Aucun kit de mod n'est en téléchargement public, et il n'existe pas de kit pour Unreal Engine.","LIM_5":"Une action OSC ne confirme pas la réception (UDP).","PUB_KICKER":"Publication","PUB_TITLE":"Publication","PUB_LEDE":"Tout compte Hou.la peut publier un plugin ou un pack. La publication pour tous passe par une relecture.","PUB_1":"\u003Cb>Plugin ajouté avec « Ajouter mon jeu »\u003C/b> : utilisable tout de suite sur ton PC, dans tes packs, invisible des autres. \u003Cb>Rendu public avec le premier pack public qui l'utilise\u003C/b> : relu par Hou.la avant d'entrer dans le Store ; chaque modification repasse en relecture. Un plugin avec un mod est toujours relu par une personne.","PUB_2":"\u003Cb>Un pack public attend ses plugins\u003C/b> : publier dans le Store un pack qui utilise un plugin de jeu privé envoie ce plugin en relecture. Le pack est relu de son côté, et n'est proposé dans le Store qu'une fois tous ses plugins approuvés. Un plugin refusé ou un mod sans archive bloque l'envoi (\u003Ccode>PLUGIN_JEU_A_CORRIGER\u003C/code>), avec le motif.","PUB_3":"\u003Cb>Un pack public\u003C/b> est relu : l'analyse automatique peut seulement refuser, une personne approuve. Un pack approuvé est signé, et Connect vérifie sa signature.","PUB_4":"\u003Cb>Installer un pack installe ses plugins\u003C/b> : la liste se calcule depuis ses actions de jeu, sans rien à déclarer. Le mod d'un plugin s'installe avec lui.","PUB_5":"\u003Cb>Commission\u003C/b> : le créateur d'un pack peut fixer la sienne, de 0 à 15 %.","KIT_KICKER":"Ressources","KIT_TITLE":"Kit et téléchargements","KIT_LEDE":"Les fichiers de cette documentation. Les exemples sont générés depuis Connect et vérifiés par le validateur de Hou.la.","KIT_GUIDE":"la référence complète du format de pack : variables de chaque déclencheur, échelle des prix, bornes, et actions de chaque plugin de jeu officiel. Le même fichier que le bouton « Guide pour une IA… » du Lab.","KIT_PACKS":"les cinq packs d'exemple des guides.","KIT_PLUGINS":"un plugin de jeu par mode.","KIT_VISUELS":"le gabarit de la bannière d'un pack (1600 x 900) et le prompt associé, pour une IA d'images. Icônes de cadeaux : 512 x 512, PNG transparent.","KIT_GABARIT_ALT":"Gabarit de bannière : à gauche le titre, le sous-titre et l'image du jeu ; à droite, un panneau avec le solde de pièces et une grille de cadeaux (icône, nom, prix) dont la dernière rangée est coupée.","KIT_GABARIT_CAP":"Le gabarit de la bannière d'un pack.","FAQ_KICKER":"FAQ","FAQ_TITLE":"Questions fréquentes","FAQ_1_Q":"Dans quel langage écrire un plugin ?","FAQ_1_A":"Un plugin est un fichier JSON, sans code. Le seul code est celui de ton mod (mode \u003Ccode>mod\u003C/code>) ou de ton programme (modes \u003Ccode>http\u003C/code> et \u003Ccode>ws\u003C/code>), dans le langage de ton choix.","FAQ_2_Q":"Comment tester sans être en live ?","FAQ_2_A":"Dans le Lab, « Tester » joue un écouteur tout de suite, comme en direct. La notification du test indique ce qu'a fait chaque action : jouée, sautée ou en échec, avec la cause.","FAQ_3_Q":"Un pack peut-il appeler une adresse locale, comme 127.0.0.1 ?","FAQ_3_A":"Seulement par une connexion saisie par le streamer. Une adresse locale écrite dans le pack est refusée.","FAQ_4_Q":"Comment mon programme authentifie-t-il les requêtes de Connect ?","FAQ_4_A":"Par le jeton de la connexion : Connect l'envoie dans \u003Ccode>Authorization: Bearer &lt;jeton&gt;\u003C/code>, ou dans l'en-tête nommé par la connexion (par exemple \u003Ccode>X-API-Key\u003C/code>). Le jeton reste sur le PC du streamer et n'apparaît jamais dans le pack.","FAQ_5_Q":"Le numéro Steam est-il obligatoire ?","FAQ_5_A":"Seulement en mode \u003Ccode>mod\u003C/code> : sans lui, Connect ne peut pas installer de mod. Il est facultatif dans les autres modes.","FAQ_6_Q":"Que se passe-t-il si le jeu n'est pas lancé 
89(mode mod) ?","FAQ_6_A":"L'action échoue et le journal le dit. Si le mod manque, Connect l'installe à la première action qui vise le jeu, puis demande de relancer le jeu.","FAQ_7_Q":"Puis-je modifier un plugin ou un pack publié ?","FAQ_7_A":"Oui. La nouvelle version repasse en relecture avant d'être proposée dans le Store.","FAQ_8_Q":"Quelle est la différence entre un plugin de jeu en mode http et une action http dans un pack ?","FAQ_8_A":"Le plugin déclare des actions nommées et bornées, réutilisables par tous les packs, avec une connexion par jeu. Une action \u003Ccode>http\u003C/code> dans un pack est une requête libre, écrite dans le pack, soumise aux règles d'adresse décrites dans « Limites et sécurité ».","CTA_TITLE":"Support développeur","CTA_TEXT":"Pose tes questions techniques sur le Discord de Hou.la.","CTA_DISCORD":"Rejoindre le Discord","CTA_CONNECT":"Présentation de Hou.la Connect"}},"hc-vitrine":{"packs":[{"slug":"tomb-raider-remastered-director","titre":"Tomb Raider Remastered Director","titres":{},"createur":"Flicky Fantasy","installations":2,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/49a4c49a-0281-4183-bce7-941a082636e6/2bf51612-c992-4646-b423-bddae9c8b110.webp","nouveau":true,"categorie":"jeu","jeu":"tomb-raider-remastered"},{"slug":"pratfall","titre":"Prat Fall","titres":{},"createur":"FroGame","installations":2,"vignette":"https://m1.hou.la/bundle-banners/8335cd06-0de0-408d-adce-88ea8eb6d278/90e0ce17-00d2-4d7b-aca0-c04e41e04377/deb7aaf4-76dc-42af-93cf-5fcea9583771.webp","nouveau":true,"categorie":"autre","jeu":"pratfall"},{"slug":"minecraft-survie","titre":"Minecraft Survie","titres":{},"createur":"FroGame","installations":4,"vignette":"https://m1.hou.la/bundle-banners/6a89a9ce-0c05-11f1-9663-ed7fb6133cf4/08e31b2b-d2b6-4f8e-a1de-97d0a11a950f/5fe88cc5-d24a-4693-974f-7c83d82fc94e.webp","nouveau":false,"categorie":"jeu","jeu":"minecraft"},{"slug":"mk8dx-6a85262f21b90364-1","titre":"Pack pour Mario Kart 8 Deluxe version 3.0.3","titres":{},"createur":"Flicky Fantasy","installations":3,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/208f19b4-74fe-43d0-aa82-cc622268af10/4a179377-b7ff-47f9-ba67-8f2dad14ea2b.webp","nouveau":false,"categorie":"jeu","jeu":"mario-kart-8-deluxe"},{"slug":"snap-camera-v1210","titre":"Filtres Snap Camera","titres":{},"createur":"Flicky Fantasy","installations":2,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/0437ece8-e69e-43e0-8263-d53f3c3a73e7/ffb3fd3d-4014-4f20-bc9e-cc741df407a8.webp","nouveau":false,"categorie":null,"jeu":"filtres-snap-camera"},{"slug":"minecraft-chaos","titre":"Minecraft · Chaos","titres":{},"createur":"FroGame","installations":2,"vignette":"https://m1.hou.la/bundle-banners/6a89a9ce-0c05-11f1-9663-ed7fb6133cf4/af059e46-c19f-43bf-b547-f1e2b6eeefcf/a7f31922-6d2d-4f0a-a6ff-8028aea012c6.webp","nouveau":true,"categorie":"jeu","jeu":"minecraft"},{"slug":"obs-scenes","titre":"OBS · Change de scène","titres":{},"createur":"FroGame","installations":3,"vignette":"https://m1.hou.la/bundle-banners/60e48ad7-262e-4c2d-9e69-9b1bc0cc8cf8/33aa8526-539d-4e8c-ba33-a5db29d32b4b/e7f2e106-fc4d-43a4-b373-17b2a08ae5ef.webp","nouveau":false,"categorie":null,"jeu":null},{"slug":"gta-v-chaos-interactif","titre":"GTA V - Chaos Interactif","titres":{},"createur":"Flicky Fantasy","installations":2,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/eac331d2-987a-4ce8-b4ce-28f65e9506be/d882f3a9-e98a-4073-a3a2-cf07a41ed764.webp","nouveau":false,"categorie":"jeu","jeu":"gta-v"},{"slug":"meccha-chameleon","titre":"Meccha Chameleon","titres":{},"createur":"FroGame","installations":2,"vignette":"https://m1.hou.la/bundle-banners/60e48ad7-262e-4c2d-9e69-9b1bc0cc8cf8/05598c81-74b0-41b2-a9f6-12c97f8e9894/5fcd58e9-f0d4-49af-af31-c036ebc37a24.webp","nouveau":false,"categorie":"jeu","jeu":"meccha"},{"slug":"websocket-overlay","titre":"WebSocket · Overlay FX","titres":{},"createur":"FroGame","installations":2,"vignette":"https://m1.hou.la/bundle-banners/60e48ad7-262e-4c2d-9e69-9b1bc0cc8cf8/2886f9a0-1e19-49a9-b100-507d91b29810/92f35f7c-901d-4466-8fa3-61921a311905.webp","nouveau":false,"categorie":null,"jeu":null},{"slug":"left-4-dead-2-horde","titre":"Left 4 dead 2 horde","titres":{},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/8335cd06-0de0-408d-adce-88ea8eb6d278/61b81ee5-0dec-4d2a-9838-1f6f14ba92a6/338f9a1c-5f28-46ab-b59b-f8bb951ce937.webp","nouveau":true,"categorie":"jeu","jeu":"left-4-dead-2-horde"},{"slug":"counter-strike-chaos","titre":"Counter Stripe Choas","titres":{},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/8335cd06-0de0-408d-adce-88ea8eb6d278/7de484d6-a5fb-4ea1-af30-3722c715af04/055cf224-ea7c-4bb1-a849-64e0bac7f4ac.webp","nouveau":true,"categorie":"jeu","jeu":"counter-strike-2"},{"slug":"chatbot-essentiel","titre":"Chatbot essentials","titres":{"fr":"Chatbot : les réponses essentielles"},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/8335cd06-0de0-408d-adce-88ea8eb6d278/2bde04c0-e5aa-4e85-b2cb-3b61ee2e6
89d2b/4c6f8233-c058-4bad-87ac-5b10d33e0f06.webp","nouveau":true,"categorie":"chat","jeu":null},{"slug":"ark-survival","titre":"ARK Survival","titres":{},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/8335cd06-0de0-408d-adce-88ea8eb6d278/2b016f4f-bf34-4931-b83e-304e907e6af0/3d3d1230-1100-4fc2-ba62-b6097b5b0c4a.webp","nouveau":true,"categorie":"jeu","jeu":"ark-survival"},{"slug":"gta5-mont-chiliad","titre":"GTA 5 MONT CHILIAD - ACTION INTERACTIVE","titres":{},"createur":"Vizytw","installations":1,"vignette":null,"nouveau":true,"categorie":null,"jeu":null},{"slug":"minecraft-ferme","titre":"Minecraft · Ferme","titres":{},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/6a89a9ce-0c05-11f1-9663-ed7fb6133cf4/645f0064-42ab-4cad-9f60-1d3fa84aef50/ae696bd4-a257-4264-8d26-59f7b83ba7df.webp","nouveau":true,"categorie":"jeu","jeu":"minecraft"},{"slug":"minecraft-equipement","titre":"Minecraft · Équipement","titres":{},"createur":"FroGame","installations":1,"vignette":"https://m1.hou.la/bundle-banners/6a89a9ce-0c05-11f1-9663-ed7fb6133cf4/0814cbd7-cb12-4ef1-b69d-7a0ff8264fea/d6b4cbbc-73fc-4e32-9ddd-2a7d023e3be5.webp","nouveau":true,"categorie":"jeu","jeu":"minecraft"},{"slug":"gta-v-chasseur-chaos-train","titre":"GTA V - Chasseur Chaos Train - Webhooks","titres":{},"createur":"Flicky Fantasy","installations":1,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/71f858cf-4985-41b9-9582-889eebc314af/141bdedf-813b-4e09-bad9-eaf4a0da5528.webp","nouveau":true,"categorie":"jeu","jeu":"gta-v"},{"slug":"gta-v-chasseur-chaos-rampe","titre":"GTA V - Chasseur Chaos Rampe - Webhooks","titres":{},"createur":"Flicky Fantasy","installations":1,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/686b75a6-c143-49d2-bbd5-9041b28d2534/78320667-6fb0-48ff-bc21-c6aad4c6ea82.webp","nouveau":true,"categorie":"jeu","jeu":"gta-v"},{"slug":"gta-v-chasseur-chaos-ascension2","titre":"GTA V - Chasseur Chaos Ascension - Webhooks","titres":{},"createur":"Flicky Fantasy","installations":1,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/e4768d59-b21c-424c-ae81-e5fdcde6dd3c/0a869737-d7c0-4bc9-8e7e-0a55eeead07e.webp","nouveau":true,"categorie":"jeu","jeu":"gta-v"},{"slug":"gta-v-chasseur-chaos-ascension","titre":"GTA V - Chasseur Chaos Général - Webhooks","titres":{},"createur":"Flicky Fantasy","installations":1,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/125e0575-e75e-4618-9587-3028566cc514/98500f06-ebe8-4cb8-9cde-35997739f469.webp","nouveau":true,"categorie":"jeu","jeu":"gta-v"},{"slug":"project-zomboid-multijoueur-serveur","titre":"Project Zomboid Multijoueur/Serveur","titres":{},"createur":"Flicky Fantasy","installations":1,"vignette":"https://m1.hou.la/bundle-banners/2f2cb90f-72f5-466a-886d-b86d14191292/f7a4f740-3451-4c92-b1fa-7ae3ed0b2e6e/1f5c4559-4f06-470b-8ef0-2c13164fe2e3.webp","nouveau":false,"categorie":"jeu","jeu":null}],"sons":18781,"lu":1790925214906},"__nghData__":[{"t":{"2":"t0"},"c":{"2":[]}},{"d":[1]},{"t":{"0":"t1"},"c":{"0":[]}},{"t":{"0":"t2"},"c":{"0":[]}},{"t":{"0":"t3"},"c":{"0":[]}},{"t":{"0":"t4"},"c":{"0":[]}},{"t":{"0":"t5"},"c":{"0":[]}},{"t":{"5":"t6"},"c":{"5":[{"i":"t6","r":1,"x":5}]}},{"t":{"5":"t7","6":"t8"},"c":{"5":[],"6":[{"i":"t8","r":2}]}},{"t":{"2":"t9"},"c":{"2":[{"i":"t9","r":1,"t":{"3":"t10"},"c":{"3":[{"i":"t10","r":1}]}},{"i":"t9","r":1,"t":{"3":"t10"},"c":{"3":[]},"x":3},{"i":"t9","r":1,"t":{"3":"t10"},"c":{"3":[{"i":"t10","r":1}]}}]}},{"t":{"5":"t11","7":"t13","8":"t14"},"c":{"5":[{"i":"t11","r":1,"t":{"2":"t12"},"c":{"2":[{"i":"t12","r":1,"x":14}]},"x":2}],"7":[],"8":[{"i":"t14","r":2}]}},{},{"t":{"56":"t15"},"c":{"56":[{"i":"t15","r":1,"t":{"28":"t16"},"c":{"28":[{"i":"t16","r":1,"t":{"6":"t17"},"c":{"6":[{"i":"t17","r":1}]},"x":2},{"i":"t16","r":1,"t":{"6":"t17"},"c":{"6":[]},"x":2}]}}]}},{"t":{"322":"t18","331":"t21","332":"t22","333":"t23","392":"t24","393":"t27"},"c":{"322":[{"i":"t18","r":1,"t":{"4":"t19","5":"t20"},"c":{"4":[],"5":[]}},{"i":"t18","r":1,"t":{"4":"t19","5":"t20"},"c":{"4":[],"5":[{"i":"t20","r":1}]}},{"i":"t18","r":1,"t":{"4":"t19","5":"t20"},"c":{"4":[{"i":"t19","r":1}],"5":[]}}],"331":[{"i":"t21","r":1}],"332":[],"333":[],"392":[{"i":"t24","r":1,"t":{"1":"t25","2":"t26"},"c":{"1":[],"2":[{"i":"t26","r":2,"e":{"0":1}}]},"x":12}],"393":[{"i":"t27","r":1,"t":{"1":"t28","2":"t29"},"c":{"1":[],"2":[{"i":"t29","r":2,"e":{"0":1}}]},"x":12}]}},{"c":{"7":[{"i":"c874076103","r":1}]}}]}</script>
89<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"bde32c47f9414a8ca9d055d5b917fa4c","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 89
89
90<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a444e7d56b48e337',t:'MTc5MDk1NjY3NQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
90</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.