La charte OWAN,
relevée sur son funnel
Relevée le 26 septembre 2026 sur onboarding.owan.fr : les six étapes de l'inscription, la page annexe /paiements, la feuille de style owan.css, le logo et les images. Chaque valeur de cette page vient du funnel, avec sa source.
Ce que le funnel ne montre pas est marqué à définir. Rien n'a été inventé pour combler les trous.
- 1IdentitéNom, promesse et positionnement, tirés des textes.
- 2LogoLe seul fichier trouvé, son usage, ce qui manque.
- 3Palette72 valeurs de couleur, leurs rôles et leurs contrastes.
- 4TypographieRethink Sans : graisses, tailles, interlignages, titres.
- 5ComposantsBoutons, champs, cartes, étapes et messages, avec leurs états.
- 6EspacementsEspaces, rayons, ombres et grille.
- 7Ton de voixDix règles tirées des textes, et les 14 messages types.
- 8Iconographie et imagerieIcônes, emojis, halo et logos partenaires.
- 9Design tokens149 variables CSS et JSON à télécharger.
Identité
Le funnel ne contient ni manifeste ni signature. L'identité se lit dans ses textes : ce qu'OWAN promet, ce qu'il fait, et à qui il parle.
Le nom
Trois graphies cohabitent dans le funnel, et aucune règle n'est écrite. Cette page emploie OWAN, la forme la plus fréquente.
Règle d'écriture du nom : à définir
- OWAN, 11 fois
- Les 7 titres d'onglet (« OWAN — Inscription au service »…) et 4 phrases : « Voici tous les messages qu'OWAN enverra à vos clients », « OWAN vous prévient sur Telegram », « l'équipe OWAN », « votre assistant OWAN ».
- Owan, 9 fois
- Le titre de l'étape 1, « 6 étapes pour implémenter Owan dans votre activité », la phrase « Owan créera automatiquement vos cartes leads… » (étape 2) et le texte alternatif du logo sur les 7 pages.
- owan
- Le mot du logo, en minuscules.
La promesse
Le funnel promet une mise en place courte et guidée, puis des outils prêts à servir. En reliant ses phrases : OWAN s'installe en six étapes, puis travaille avec les outils que l'entreprise a déjà, Trello, sa boîte mail, ses réseaux et Telegram.
Signature ou phrase de marque : à définir. Aucune phrase n'accompagne le logo.
6 étapes pour implémenter Owan dans votre activitéTitre de l'étape 1, /form
Personnalisez-les comme vous voulez — ils sont déjà prêts à l'emploi.Intro de l'étape 5, /template
Tout est prêt — Samy vous recontacte très vite pour activer votre assistant OWAN.Fin de l'étape 6, /telegram
Le positionnement, tel qu'il ressort des textes
- Pour qui
- Une entreprise (premier champ : « Nom de l'entreprise ») qui fait des devis, suit des chantiers et relance ses clients. Les messages types parlent d'« entretien de votre jardin », de « crédit d'impôt services à la personne » et d'« Avance Immédiate URSSAF ».
- Partenaire
- L'étape 1 demande l'accès Unipro. Le logo Unipros porte la mention « Cooperative SAP », et la page /paiements parle de « Coopérative » et de « Crédit d'impôt avec avance immédiate ».
- Présentation
- Un assistant, avec une personne derrière : « Samy vous recontacte très vite pour activer votre assistant OWAN. »
Ce qu'OWAN fait, selon le funnel
- Étape 2
- « Owan créera automatiquement vos cartes leads et suivra vos chantiers dans votre tableau Trello. »
- Étape 5
- 11 emails et SMS aux clients : bienvenue, devis, date d'intervention, signature, paiement URSSAF, relances à J+7 et J+11. Et 3 posts (Facebook, Instagram, fiche Google), dont le modèle est « généré à partir de vos 2 photos avant/après ».
- Étape 6
- « OWAN vous prévient sur Telegram à chaque nouveau lead, devis ou relance. »
Énoncé de positionnement officiel : à définir. Le funnel ne nomme ni concurrent ni différence revendiquée.
Logo
Un seul fichier existe : Logo-Owan-colored.png, en couleur, pour fond clair. Le reste du système de logo est à définir.
La version trouvée
- Fichier
- /static/images/Logo-Owan-colored.png
- Format
- PNG, 720 × 271 px, fond transparent, 84 Ko.
- Composition
- À gauche, un symbole : un cube translucide en 3D aux reflets irisés, face blanche, deux yeux noirs brillants. À droite, le mot « owan » en minuscules.
- Couleur du mot
- #0E1322, l'encre du funnel (médiane des pixels du mot).
- Proportions
- Symbole d'environ 209 × 224 px, mot d'environ 386 × 95 px, 53 px d'écart entre les deux.
- Marges du fichier
- 22 px vides en haut et 40 px à droite. L'ombre douce du cube touche les bords gauche et bas.
Ce qui manque au système de logo
- Version blanche ou négativeà définir
Indispensable dès qu'un fond sombre apparaît (démonstration ci-dessus).
- Version monochromeà définir
- Symbole seul (le cube)à définir
Il n'existe qu'à l'intérieur du logo complet.
- Fichier vectorielà définir
Le seul fichier est une image PNG de 720 px de large.
- Favicon et icône d'applicationà définir
Le funnel n'en a pas : /favicon.ico renvoie une erreur 404.
- Zone de protectionà définir
- Taille minimaleà définir
La plus petite taille vue est 58 px de haut, sur mobile.
- Usages interditsà définir
Seul constat : la version couleur ne tient pas sur fond sombre.
Palette
La feuille de style déclare cinq couleurs de base et huit dérivés. Le reste est écrit en dur dans les règles : 72 valeurs distinctes au total, dégradés compris. Le vert et l'ambre ne sont jamais utilisés pleins, seulement en teintes.
Les cinq couleurs de base
Déclarées sous le commentaire « palette projet » de owan.css. Cliquez une valeur pour la copier.
- --darkEncre : tous les textes, le trait d'étape actif, le mot du logo. Déclarée deux fois, --dark et --ink.
- --accentPrimaire : bouton principal, focus, bouton secondaire, badge Email, variables.
- --successRéussite, en teintes seulement : badge sécurité, tuile d'icône, case verte.
- --warningAttention, en teintes seulement : badge SMS, case et pastilles ambre.
- --dangerErreur : bordure et halo des champs, fond et bord du message d'erreur.
Les dérivés déclarés
Les huit autres variables de :root. Les gris sont l'encre rendue transparente : leur rendu dépend du fond.
- --owan-inkRGB 14 19 34Texte principal.
:root --ink - --owan-mutedrendu #787B83 sur blancTexte secondaire : libellés, sous-titres.
:root --muted - --owan-muted-2rendu #9A9CA2 sur blancTexte tertiaire : notes, icônes, libellé flottant.
:root --muted-2 - --owan-linerendu #F1F1F2 sur blancBordure des champs au repos.
:root --line - --owan-focusrendu #CCC0FB sur blancBordure au focus (recherche pays).
:root --focus - --owan-focus-ringrendu #EAE6FE sur blancAnneau de focus des champs.
:root --focus-ring - --owan-cardRGB 255 255 255Fond des cartes.
:root --card - --owan-uniproRGB 245 247 251Fond de l'encart Unipro.
:root --unipro
Les couleurs écrites en dur
Présentes dans les règles de owan.css et des pages, sans variable. Fonds, dégradé du bouton, textes et icônes d'état, et une couleur tierce.
- --owan-bg-topRGB 239 242 248Haut du fond de page (dégradé vers blanc).
body - --owan-whiteRGB 255 255 255Blanc : bas du fond, champs, puces, listes.
body.field input.puce - --owan-ghost-hoverRGB 250 249 255Fond du bouton secondaire au survol.
.cta-ghost:hover - --owan-cta-topRGB 107 71 247Haut du dégradé du bouton principal.
.cta - --owan-cta-bottomRGB 74 39 220Bas du dégradé du bouton principal.
.cta - --owan-success-inkRGB 77 122 39Texte vert : badge sécurité, badge par défaut, case verte.
.secure.tpl-badge.t-vert - --owan-success-iconRGB 106 171 54Icône verte : bouclier, cercle de validation.
.secure svg.check-ring circle.t-vert - --owan-success-strongRGB 93 154 50Coche de validation, bouton « ✓ Enregistré ».
.check-trait.tpl-save.saved - --owan-danger-inkRGB 194 59 45Texte des messages d'erreur.
.erreur-box - --owan-warning-inkRGB 138 98 18Texte ambre : badge SMS, pastille ambre.
.tpl-badge.sms.t-ambre - --owan-warning-iconRGB 200 137 26Icône ambre (page /paiements).
.t-ambre --teinte - --owan-social-inkRGB 190 24 93Texte du badge « Réseaux ».
.tpl-badge.social - --owan-telegramRGB 34 158 217Avion Telegram de l'étape 6 (couleur de Telegram, pas d'OWAN).
Les teintes
Une couleur de base avec de la transparence, toujours posée sur blanc dans le funnel. C'est ainsi que vivent le vert, l'ambre et le rose.
- --owan-success-tile-fromrendu #E3F3D4 sur blancTuile d'icône, début du dégradé.
.icone - --owan-success-tile-torendu #F3FAED sur blancTuile d'icône, fin du dégradé.
.icone - --owan-success-tintrendu #EFF8E7 sur blancFond du badge sécurité et de la case verte.
.secure.t-vert --fond - --owan-success-badgerendu #EDF7E4 sur blancFond du badge de catégorie par défaut.
.tpl-badge - --owan-success-tile-borderrendu #DAEFC7 sur blancBordure de la tuile d'icône.
.icone - --owan-success-linerendu #D2ECBB sur blancBordure de la case verte.
.t-vert --trait - --owan-danger-tintrendu #FEEFEE sur blancFond d'erreur et halo du champ en erreur.
.erreur-box.field input.err - --owan-danger-linerendu #FDD0CB sur blancBordure du message d'erreur.
.erreur-box - --owan-warning-tintrendu #FFF4E2 sur blancFond du badge SMS et de la pastille ambre.
.tpl-badge.sms.t-ambre --fond - --owan-warning-linerendu #FFDCA7 sur blancBordure ambre.
.t-ambre --trait - --owan-accent-07rendu #F3F0FE sur blancFond de la case bleue et de la pastille cochée.
.t-bleu --fond.puce.on - --owan-accent-08rendu #F1EEFE sur blancSurlignage de liste, fond des variables.
.iti__highlight.banque-liste li:hover.tpl-vars code - --owan-accent-10rendu #EEEAFE sur blancFond du badge « Email ».
.tpl-badge.email - --owan-accent-22rendu #D9D1FC sur blancBordure du bouton secondaire.
.cta-ghost - --owan-accent-24rendu #D6CDFC sur blancBordure de pastille au survol.
.puce:hover - --owan-accent-28rendu #CFC4FC sur blancBordure de la case bleue.
.t-bleu --trait - --owan-social-tintrendu #FBE5EF sur blancFond du badge « Réseaux ».
.tpl-badge.social - --owan-ink-035rendu #F7F7F7 sur blancFond d'une case verrouillée sans teinte.
.verrou - --owan-ink-045rendu #F4F4F5 sur blancFond de la pastille « Étape 1 / 6 ».
.step-pill - --owan-ink-05rendu #F3F3F4 sur blancFond du bouton œil au survol.
.eye:hover - --owan-ink-18rendu #D4D5D7 sur blancTrait de progression inactif.
.bar - --owan-white-90rendu #FFFFFF sur blancReflet : liseré haut de carte, éclat du trait courant.
.card.bar.current::after
D'autres transparences servent seulement dans les ombres (encre 5 à 25 %, accent 40 à 62 %, noir 18 et 22 %, blanc 25 à 70 %). Elles sont listées au chapitre 6.
Les dégradés
Le mot en dégradé
owan
13 couleurs à 45°, « répliqué depuis Gradient-square.webp, sans grain ». L'angle tourne de 360° en 18 secondes, en boucle. Il colore un ou deux mots de chaque grand titre.
- #8978F9RGB 137 120 249
à 0 % - #8282FCRGB 130 130 252
à 8 % - #838AF9RGB 131 138 249
à 16 % - #8B93FARGB 139 147 250
à 25 % - #AE7EF9RGB 174 126 249
à 33 % - #CD69F5RGB 205 105 245
à 42 % - #D264F6RGB 210 100 246
à 50 % - #F87C42RGB 248 124 66
à 58 % - #F88B45RGB 248 139 69
à 66 % - #F99C4ERGB 249 156 78
à 75 % - #FBB05CRGB 251 176 92
à 83 % - #FCC16CRGB 252 193 108
à 92 % - #FFDDA4RGB 255 221 164
à 100 %
Bouton principal
180° : #6B47F7 à 0 %, #542DF3 à 52 %, #4A27DC à 100 %.
Fond de page
180° : #EFF2F8 à 0 %, blanc à 58 %. Attaché à la fenêtre : il ne défile pas.
Tuile d'icône
160° : vert #9AD567 à 28 % puis à 12 %.
Contrastes WCAG
Paires réellement rendues dans le funnel, transparences composées sur leur vrai fond. Le verdict tient compte de la taille réelle : sous 24 px, il faut 4,5:1 pour le niveau AA ; à partir de 24 px, 3:1 suffit. 14 paires sur 20 passent le niveau AA à leur taille réelle. Les 6 échecs : les gris --muted et --muted-2 aux tailles où ils servent, et le texte blanc du bouton « ✓ Enregistré ».
| Rendu | Texte | Fond | Ratio | Taille réelle | Verdict | Où |
|---|---|---|---|---|---|---|
| Aa | #0E1322 --ink | #FFFFFF | 18,5:1 | 15 px | AAA | Titres, saisie, texte courant sur carte |
| Aa | #0E1322 --ink | #EFF2F8 fond haut | 16,5:1 | 24 px | AAA | Titre d'accueil sur le haut du fond |
| Aa | --muted (encre 56 %) | #FFFFFF | 4,23:1 | 15 px | Échec | Libellés, sous-titres (.sous), descriptions |
| Aa | --muted (encre 56 %) | #EFF2F8 fond haut | 4,11:1 | 14,5 px | Échec | Intro de l'étape 5 posée sur le fond |
| Aa | --muted-2 (encre 42 %) | #FFFFFF | 2,74:1 | 12,5 px | Échec | Notes, libellé flottant, titres de section, variables |
| Aa | --muted-2 (encre 42 %) | encre 4,5 % sur blanc | 2,7:1 | 13 px | Échec | Pastille « Étape 1 / 6 » |
| Aa | --muted-2 (encre 42 %) | #F5F7FB --unipro | 2,72:1 | 12,9 px | Échec | Libellé flottant dans l'encart Unipro |
| Aa | #542DF3 --accent | #FFFFFF | 6,89:1 | 15 px | AA | Bouton secondaire, libellé au focus |
| Aa | #FFFFFF | #6B47F7 | 5,43:1 | 15 px | AA | Texte blanc du bouton principal (haut du bouton) |
| Aa | #FFFFFF | #542DF3 | 6,89:1 | 15 px | AA | Texte blanc du bouton principal (milieu du bouton, derrière le texte) |
| Aa | #FFFFFF | #4A27DC | 8,03:1 | 15 px | AAA | Texte blanc du bouton principal (bas du bouton) |
| Aa | #FFFFFF | #5D9A32 | 3,42:1 | 13,5 px | Échec | Bouton « ✓ Enregistré » |
| Aa | #4D7A27 | succès 16 % sur blanc | 4,66:1 | 13 px | AA | Badge « 100% sécurisées », case verrouillée verte |
| Aa | #4D7A27 | succès 18 % sur blanc | 4,61:1 | 10 px | AA | Badge de catégorie par défaut (10 px) |
| Aa | #C23B2D | danger 10 % sur blanc | 4,75:1 | 13,5 px | AA | Message d'erreur |
| Aa | #542DF3 --accent | accent 10 % sur blanc | 5,85:1 | 10 px | AA | Badge « Email » (10 px) |
| Aa | #542DF3 --accent | accent 8 % sur blanc | 6,04:1 | 11 px | AA | Variables [entreprise], survol de liste |
| Aa | #542DF3 --accent | accent 7 % sur blanc | 6,14:1 | 14 px | AA | Case verrouillée bleue, pastille cochée |
| Aa | #8A6212 | alerte 18 % sur blanc | 5,03:1 | 10 px | AA | Badge « SMS », pastille cochée ambre |
| Aa | #BE185D | rose 12 % sur blanc | 5,05:1 | 10 px | AA | Badge « Réseaux » (10 px) |
Le mot en dégradé sur blanc
Titres de 24 à 30 px, donc seuil de 3:1. 8 des 13 couleurs restent sous 3:1, dont toute la partie orange et crème : selon l'angle du moment, une partie du mot est peu lisible.
- 3,43:1AA
- 3,21:1AA
- 3,01:1AA
- 2,74:1Échec
- 2,94:1Échec
- 3,03:1AA
- 3,05:1AA
- 2,64:1Échec
- 2,39:1Échec
- 2,12:1Échec
- 1,83:1Échec
- 1,62:1Échec
- 1,3:1Échec
Éléments d'interface (seuil 3:1)
| Rendu | Élément | Ratio | Verdict |
|---|---|---|---|
| Bordure de champ au repos --line (encre 6 %) | 1,13:1 | Échec | |
| Anneau de focus des champs (2 px) --focus-ring (accent 12 %) | 1,22:1 | Échec | |
| Bordure focus de la recherche pays --focus (accent 30 %) | 1,68:1 | Échec | |
| Bordure d'un champ en erreur #F86251 --danger | 3,06:1 | OK | |
| Trait de progression inactif encre 18 % | 1,47:1 | Échec | |
| Trait de progression actif #0E1322 --ink | 18,5:1 | OK | |
| Bordure du bouton secondaire accent 22 % | 1,45:1 | Échec | |
| Icônes de champ, œil, chevron --muted-2 (encre 42 %) | 2,74:1 | Échec | |
| Cercle de validation dans sa tuile #6AAB36 | 2,53:1 | Échec | |
| Avion Telegram dans sa tuile #229ED9 | 2,72:1 | Échec |
Couleurs tierces
Ces couleurs apparaissent à l'écran sans appartenir à OWAN : le bleu de l'avion Telegram (#229ED9), le logo Unipros, et les réglages par défaut de la bibliothèque du champ téléphone (intl-tel-input 18.2.1) : #CCC, #555, #999, #888, #DBDBDB, noir à 5 et 20 %.
Mode sombre
Le funnel n'a qu'un thème clair. Mode sombre : à définir
Typographie
Une seule famille, Rethink Sans, pour tout. Les titres restent en graisse normale : le relief vient du mot en dégradé, jamais du gras.
Rethink Sans
Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz
0 1 2 3 4 5 6 7 8 9 é è ê à ç ô œ « » € % & ?
- Source
- Google Fonts, licence OFL. © 2022 The Rethink Sans Project Authors.
- Chargement
- Import en tête de owan.css : graisses 400, 500, 600, 700, 800 et italique 500, affichage « swap ». Google sert un seul fichier variable, graisse de 400 à 800.
- Police de repli
- system-ui, -apple-system, Segoe UI, sans-serif.
- Non utilisées
- La graisse 800 et l'italique 500 sont importées mais n'apparaissent sur aucune page.
Les graisses
- 400 RegularConnectez votre boîte e-mail
- 500 MediumValider et continuer
- 600 SemiBoldEmail de bienvenue
- 700 BoldÉtape 1 / 6
- 800 ExtraBold, importée, non utiliséeConnecter mon Telegram
400 : titres, libellés, nom d'étape. 500 : saisie, boutons, badges, messages. 600 : titre d'un message type, bouton Enregistrer, mot en gras d'un sous-titre. 700 : numéro d'étape, titres de section en capitales, badges de 10 px.
L'échelle des tailles
Douze tailles déclarées, de 10 à 30 px (la plus grande varie de 24 à 30 px selon l'écran), chacune liée à un élément précis. Aucune échelle n'est déclarée : c'est la liste de ce qui existe, avec un texte réel à la taille réelle.
| Taille | Interligne | Graisse | Exemple réel | Où |
|---|---|---|---|---|
| 24 à 30 px | 1,16 | 400 | Connectez votre CRM Trello | Titre de scène, étapes 2, 3, 4 et 6. clamp(24px, 6vw, 30px) |
| 24 px | 1,18 | 400 | 6 étapes pour implémenter Owan | Titre d'accueil, étape 1 et /paiements |
| 24 px | 1,2 | 400 | C'est enregistré 🎉 | Titre de remerciement, /paiements |
| 15 px | 1,6 | 400 | Connectez votre boîte e-mail grâce au bouton ci-dessous. | Sous-titre de scène |
| 15 px | normal | 500 | Valider et continuer | Boutons, saisie, libellés (400) |
| 14,5 px | normal | 400 | Vos informations | Nom de l'étape, intro de l'étape 5 (1,5) |
| 14 px | normal | 500 | Prélèvement bancaire | Case verrouillée, listes, champs des messages |
| 13,5 px | 1,5 | 500 | Merci de remplir tous les champs (emails valides). | Message d'erreur, pastilles, bouton Enregistrer (600) |
| 13 px | normal | 500 | Vos informations sont 100% sécurisées | Badge sécurité, pastille d'étape |
| 12,5 px | 1,55 | 400 | Connexion sécurisée via Google. | Notes, description d'un message (1,4) |
| 12 px | normal | 700 | Coopérative | Titre de section, capitales, +0,14 em. Libellé de champ (600) |
| 11,5 px | 1,5 | 400 | Variables remplies automatiquement : | Liste des variables |
| 11 px | normal | 400 | [entreprise] | Variable, dans la police à chasse fixe du navigateur |
| 10 px | normal | 700 | SMS | Badges Email, SMS, Réseaux |
« normal » : aucun interligne n'est fixé, le navigateur applique celui de la police.
La hiérarchie des titres
Le funnel n'emploie que deux niveaux de titre, toujours centrés, toujours en 400, avec une approche de −0,012 em. Un ou deux mots finaux passent en dégradé.
Titres h3 à h6 : à définir. Tailles au-delà de 30 px : à définir
Les grands titres de cette page sont une mise en page du document, pas une règle relevée.
- h1 d'accueil
- 24 px, 400, interligne 1,18, 360 px de large au plus. Étape 1 et /paiements.
- h1 de scène
- 24 à 30 px selon la largeur d'écran (6vw), 400, interligne 1,16. Étapes 2, 3, 4 et 6.
- h2 de remerciement
- 24 px, 400, interligne 1,2. Fin de /paiements.
- Titre de section
- Un paragraphe, pas une balise de titre : 12 px, 700, capitales, +0,14 em, couleur --muted-2.
Les mots en dégradé du funnel
- 6 étapes pour implémenter Owan
- Connectez votre CRM Trello
- Informations validées
- Boîte mail connectée !
- Recevez vos alertes sur Telegram
- Inscription terminée !
- Facturation de vos prestations
Chasse fixe
Aucune police à chasse fixe n'est déclarée. Les variables comme [entreprise] s'affichent dans la police par défaut du navigateur, qui change d'un appareil à l'autre. Police à chasse fixe : à définir
Composants
Chaque composant est reconstruit avec les valeurs exactes de owan.css, et chaque état montré existe dans le code du funnel. Les champs, l'œil, les pastilles et les messages types répondent comme dans le funnel.
Boutons
Bouton principal
.cta15 px, 500rayon 15 pxmarges 17 × 22 pxpleine largeurflèche 18 pxBouton secondaire
Toujours sous le bouton principal, 10 px plus bas. Avec ou sans flèche selon la page.
Bouton Enregistrer (étape 5)
Bouton œil
Champs
Champ à libellé flottant
.field15 px, 500rayon 10 pxbord 1,5 pxmarges 10 × 16 px13 px entre deux champsAvec icône, et encart Unipro
Icône de 20 px à 16 px du bord, texte décalé à 46 px. Dans l'encart, le libellé monté prend le fond #F5F7FB. L'onglet blanc du haut porte le logo du partenaire.
Téléphone et listes
- France+33
- Belgium (België)+32
- Switzerland (Schweiz)+41
- Aucun pays trouvé
- Crédit Agricole
- BNP Paribas
- Société Générale
- Aucune banque trouvée — saisissez son nom
Rendu simplifié : le vrai champ utilise la bibliothèque intl-tel-input 18.2.1, avec ses drapeaux en image. Pays proposés en tête : France, Belgique, Suisse, Luxembourg, Canada, avec leur nom anglais. Les deux listes : rayon 14 px, ligne survolée en violet 8 %.
Cartes et encarts
Carte de message type (étape 5)
Texte du SMS
Variables remplies automatiquement : [entreprise] [prénom] [téléphone] [lien_inscription]
Objet de l'email
Corps de l'email
Variables remplies automatiquement : [entreprise] [prénom] [téléphone] [lien_inscription]
Fermée puis ouverte : le chevron pivote de 180°, le contenu entre en 0,3 s. Rayon 16 px, bord encre 6 %. Ici l'en-tête est un vrai bouton ; dans le funnel, c'est un bloc cliquable à la souris seulement.
Badges de catégorie
10 px, 700, rayon 20 px, 64 px de large au moins. « Par défaut » : le style prévu pour une catégorie inconnue (texte d'exemple).
Cases verrouillées (/paiements)
Une valeur imposée, montrée sans être modifiable. Une teinte par ligne : la case et ses pastilles portent la même couleur, vert ou bleu. La teinte ambre n'habille que des pastilles.
Pastilles de choix multiple
Hors coopérative
Cliquez pour cocher. Cochée, la pastille prend la teinte de sa ligne (ambre, bleu) et une coche de 14 px. Dernière ligne : l'état d'erreur, bord #F86251.
Badge sécurité et tuiles d'icône
Tuile de 74 px (63 px sur mobile), rayon 22 px, dégradé vert. La même tuile verte porte la coche des étapes 2 à 4 et l'avion bleu de Telegram à l'étape 6.
Étapes du formulaire
Six étapes, une par page. En tête de chaque carte : la pastille « Étape n / 6 » et le nom de l'étape. Au-dessus : six traits, noirs pour les étapes faites, le trait courant traversé d'un éclat toutes les 5 secondes.
.bars 118 × 3 px5 px entre traitsà venir : encre 18 %.step-pill 13 px, rayon 8 px.step-name 14,5 px6 étapes pour implémenter Owan dans votre activité
Connectez votre CRM Trello
Owan créera automatiquement vos cartes leads et suivra vos chantiers dans votre tableau Trello.
Connecter mon Trello Je n'ai pas de CRM TrelloConnexion sécurisée via Trello.
Vous cliquez « Autoriser », c'est tout — rien à copier-coller.
Le parcours complet
| Étape | Adresse | Titre de l'onglet | Nom d'étape | Titre affiché | Actions |
|---|---|---|---|---|---|
| 1 / 6 | /form | OWAN — Inscription au service | Vos informations | 6 étapes pour implémenter Owan dans votre activité | Valider et continuer |
| 2 / 6 | /crm | OWAN — Connectez votre CRM | Votre CRM | Connectez votre CRM Trello | Connecter mon Trello ; Je n'ai pas de CRM Trello |
| 3 / 6 | OWAN — Connectez votre boîte mail | Votre boîte e-mail | Informations validées | Connecter ma boîte e-mail | |
| 4 / 6 | /platform | OWAN — Dernière étape | Vos réseaux sociaux | Boîte mail connectée ! | Connecter mes plateformes ; Continuer : personnaliser mes messages |
| 5 / 6 | /template | OWAN — Personnalisez vos messages | Vos messages | Aucun titre : un paragraphe d'intro | Enregistrer (par message) ; Dernière étape : connecter Telegram |
| 6 / 6 | /telegram | OWAN — Connecter Telegram | Vos notifications | Recevez vos alertes sur Telegram, puis Inscription terminée ! | Connecter mon Telegram |
| Annexe | /paiements | OWAN — Facturation de vos prestations | Aucune pastille d'étape | Facturation de vos prestations | Envoyer |
Les étapes 2, 3, 4 et 6 centrent leur carte à la verticale ; l'étape 1, l'étape 5 et /paiements partent du haut. L'onglet de l'étape 4 annonce « Dernière étape » alors que deux étapes suivent. /paiements n'est reliée à aucune des six étapes.
Messages d'erreur et de réussite
Erreur
- « La connexion n'a pas abouti. Réessayez. »
étapes 2 et 3 - « Il manque votre nom complet, votre banque. »
/paiementsListe construite selon les champs manquants. - « Une erreur est survenue, réessayez. (Erreur serveur) »
étape 1, /paiementsLe message technique brut s'affiche entre parenthèses. - « Impossible de charger les messages. Réessayez. »
étape 5
Fond #F86251 à 10 %, bord à 30 %, texte #C23B2D, 13,5 px, rayon 12 px. Placé au-dessus du bouton principal, caché tant qu'il n'y a pas d'erreur.
Attente et rassurance
- « Un instant… » sur le bouton principal pendant l'envoi.
- « Enregistrement… » sur le bouton Enregistrer.
- « ⏳ En attente de votre message sur Telegram… » en note, après le clic de l'étape 6.
- « Connexion sécurisée via Google. Nous ne voyons jamais votre mot de passe. » en note sous le bouton.
- « Aucun pays trouvé », « Aucune banque trouvée — saisissez son nom » dans les listes vides.
Message d'avertissement ou d'information : à définir. Seules l'erreur et la réussite existent.
Inscription terminée !
Merci 🌿 Votre Telegram est relié. Tout est prêt — Samy vous recontacte très vite pour activer votre assistant OWAN.
C'est enregistré 🎉
Merci, l'équipe OWAN a bien reçu vos moyens de paiement.
Mouvement
- Entrée
- Fondu montant de 14 px en 0,55 s, courbe cubic-bezier(.2, .7, .2, 1). Logo d'abord, puis titre (+0,06 s), carte (+0,12 s) et bouton (+0,2 s).
- Validation
- La tuile surgit avec un rebond (0,55 s, cubic-bezier(.3, 1.6, .4, 1), +0,15 s), puis la coche se trace en 0,5 s.
- En boucle
- Le dégradé du titre tourne en 18 s. Un éclat traverse le trait courant toutes les 5 s.
- Transitions
- 0,14 à 0,2 s sur les champs, boutons et pastilles. La flèche glisse de 3 px au survol, le chevron pivote de 180°.
- Défilement
- Défilement doux par la bibliothèque Lenis 1.1.14, sur toutes les pages.
- Réduire les animations
- Le funnel coupe toutes les animations… et la coche verte reste alors invisible, car elle n'existe qu'à la fin de son tracé. Ici, elle s'affiche d'emblée.
Boîte mail
connectée !
Espacements, rayons, ombres, grille
Le funnel n'a pas d'échelle d'espacement : chaque composant porte ses propres valeurs, de 1 à 72 px. Les rayons, eux, dessinent une vraie hiérarchie, de 30 px pour la carte à 4 px pour une variable.
Espacements
Toutes les valeurs écrites en marges, écarts et positions, à l'échelle 1:1, avec leur nombre d'emplois. Tous les entiers de 1 à 18 px y sont. Échelle d'espacement : à définir
- 1 px2 fois
- 2 px6 fois
- 3 px3 fois
- 4 px11 fois
- 5 px6 fois
- 6 px9 fois
- 7 px5 fois
- 8 px5 fois
- 9 px13 fois
- 10 px17 fois
- 11 px11 fois
- 12 px9 fois
- 13 px4 fois
- 14 px7 fois
- 15 px4 fois
- 16 px8 fois
- 17 px1 fois
- 18 px6 fois
- 20 px2 fois
- 22 px9 fois
- 24 px1 fois
- 26 px1 fois
- 29 px1 fois
- 42 px1 fois
- 46 px3 fois
- 48 px1 fois
- 72 px1 fois
- −5 px1 fois, marge négative
de l'onglet Unipro
Les espacements des composants
- --owan-wrap-max464 pxLargeur de colonne des étapes
.wrap - --owan-wrap-max-paiements600 pxColonne de /paiements
.wrap-paie - --owan-wrap-max-templates640 pxColonne de l'étape 5
.tpl-wrap - --owan-wrap-padding-top29 px
.wrap - --owan-wrap-padding-top-desktop46 px
.wrap à partir de 700 px - --owan-wrap-padding-x18 px
.wrap - --owan-wrap-padding-bottom72 px
.wrap - --owan-card-padding-y22 px
.card - --owan-card-padding-x20 px
.card - --owan-block-gap22 pxÉcart entre blocs : badge sécurité, encart Unipro, traits, sections
.secure.unipro.bars.sect - --owan-field-gap13 pxÉcart entre deux champs
.field - --owan-row-gap11 pxÉcart entre deux colonnes de champs
.row.ligne - --owan-input-padding-y10 px
.field input - --owan-input-padding-x16 px
.field input - --owan-input-icon-offset46 pxRetrait du texte quand le champ a une icône
.field-icon input - --owan-cta-padding-y17 px
.cta - --owan-cta-padding-x22 px
.cta - --owan-cta-gap9 pxTexte / flèche
.cta - --owan-cta-stack-gap10 pxBouton secondaire sous le principal
.cta-ghost - --owan-bars-width118 px
.bars - --owan-bars-gap5 px
.bars - --owan-bar-height3 px
.bar - --owan-tile-size74 px
.icone - --owan-tile-size-mobile63 px
.icone sous 700 px - --owan-logo-height64 px
.brand .logo - --owan-logo-height-mobile58 px
.brand .logo sous 700 px
Rayons
Plus l'objet est grand, plus son rayon l'est. Deux rayons sont déclarés en variables (--radius 10 px, --radius-lg 30 px), les autres sont écrits en dur.
- 4 pxVariable [entreprise]
.tpl-vars code - 5 pxFond du libellé flottant
.field label - 8 pxPastille d'étape
.step-pill - 9 pxBouton œil, recherche et lignes de liste
.eye.iti-search.iti__country - 10 pxChamps, bouton Enregistrer
:root --radius - 11 pxBadge sécurité
.secure - 12 pxMessage d'erreur
.erreur-box - 14 pxListes déroulantes
.iti__country-list.banque-liste - 15 pxBoutons principal et secondaire
.cta - 16 pxCarte de message type
.tpl-card - 18 pxEncart Unipro et son onglet
.unipro.unipro-badge - 20 pxBadge de catégorie
.tpl-badge - 22 pxTuile d'icône
.icone - 30 pxCarte principale
:root --radius-lg - 99 px, piluleTraits de progression, pastilles de choix
.bar.puce
Ombres
Des ombres longues et décalées vers le bas, teintées de l'encre ou du violet, jamais de noir pur à l'extérieur. Le bouton principal ajoute un relief intérieur.
- Carte
.card - Bouton principal
.cta - Bouton principal, survol
.cta:hover - Bouton principal, appuyé
.cta:active - Bouton secondaire
.cta-ghost - Bouton secondaire, survol
.cta-ghost:hover - Tuile d'icône
.icone - Liste déroulante
.iti__country-list.banque-liste - Carte de message type
.tpl-card - Anneau de focus
.field input:focus - Anneau d'erreur
.field input.err - Contour de pastille cochée
.puce.on
Grille
- Colonne
- Une seule, centrée : 464 px au plus pour les étapes, 640 px pour l'étape 5, 600 px pour /paiements.
- Marges de page
- 29 px en haut (46 px à partir de 700 px de large), 18 px sur les côtés, 72 px en bas.
- Deux colonnes
- Prénom et nom de famille côte à côte, 11 px d'écart. Sur /paiements, chaque ligne passe en deux colonnes à partir de 620 px.
- Points de rupture
- 420 px (libellé long rétréci), 620 px (deux colonnes sur /paiements), 700 px (mobile ou bureau).
- Bordures
- 1,5 px pour ce qu'on touche (champs, pastilles, cases, bouton secondaire), 1 px pour le reste (message d'erreur, tuile, carte de message, listes).
464 px au plus
marges de page : 18 px de chaque côté
Grille à plusieurs colonnes pour d'autres supports : à définir
Ton de voix
Le funnel vouvoie, parle court et dit toujours ce qui va se passer. Les dix règles ci-dessous sont tirées de ses textes. Chaque « À faire » est une citation exacte ; chaque « À ne pas faire » est un contre-exemple écrit pour l'illustration.
Vouvoyer, toujours
À faireConnectez votre boîte e-mail grâce au bouton ci-dessous.
Vos informations sont 100% sécurisées
À ne pas faireConnecte ta boîte mail.
Un bouton parle à la première personne : Connecter, puis mon, ma ou mes
À faireConnecter mon Trello
Connecter ma boîte e-mail
Connecter mes plateformes
Je n'ai pas de CRM Trello
À ne pas faireAutoriser l'accès OAuth
Cliquez ici
Le bouton annonce la suite
À faireContinuer : personnaliser mes messages
Dernière étape : connecter Telegram
Valider et continuer
À ne pas faireSuivant
Chaque écran confirme ce qui vient d'être fait
À faireInformations validées
Boîte mail connectée !
Inscription terminée !
Titres des étapes 3, 4 et 6, sous une coche verte.À ne pas faireÉtape 3 : e-mail
Rassurer au moment sensible, avec un fait concret
À faireConnexion sécurisée via Google. Nous ne voyons jamais votre mot de passe.
Vous cliquez « Autoriser », c'est tout — rien à copier-coller.
À ne pas faireVos données sont protégées conformément à la réglementation en vigueur.
Dire ce qu'OWAN fait, et pour quel résultat
À faireOwan créera automatiquement vos cartes leads et suivra vos chantiers dans votre tableau Trello.
OWAN vous prévient sur Telegram à chaque nouveau lead, devis ou relance.
À ne pas faireIntégration Trello disponible.
Une erreur dit quoi faire, en peu de mots
À faireLa connexion n'a pas abouti. Réessayez.
Il manque votre nom complet, votre banque.
À ne pas faireErreur 500
Une erreur inattendue s'est produite.
L'attente tient en un ou deux mots, suivis de points de suspension
À faireUn instant…
Enregistrement…
⏳ En attente de votre message sur Telegram…
À ne pas faireChargement en cours, veuillez patienter quelques instants
Un emoji, rarement, et la feuille 🌿 comme signe
À faireDernière étape 🌿
Merci 🌿 Votre Telegram est relié.
C'est enregistré 🎉
À ne pas faire🚀🔥 Bravo !!! 🎉🎉
Une personne derrière l'assistant
À faireSamy vous recontacte très vite pour activer votre assistant OWAN.
À ne pas faireUn conseiller prendra contact avec vous.
Le vocabulaire du funnel
Les mots que le funnel emploie pour parler de l'activité de l'utilisateur.
- activité
- entreprise
- étape
- connecter
- CRM
- cartes leads
- chantiers
- tableau Trello
- boîte e-mail
- réseaux sociaux
- fiche d'établissement Google
- messages
- alertes
- lead
- devis
- relance
- assistant
- prestations
- coopérative
- crédit d'impôt
- avance immédiate
- prélèvement bancaire
À trancher
Le funnel hésite sur plusieurs points d'écriture. Aucun n'est tranché dans ses textes.
- Le nomà définir
OWAN (11 fois), Owan (9 fois), owan (logo).
- E-mail, email ou mailà définir
« Votre boîte e-mail », « Boîte mail connectée ! », « Email de connexion Unipro », « emails & SMS ».
- Espace avant %à définir
« 100% sécurisées » et « 50% » dans le funnel, mais « 100 % gratuit » et « 50 % » dans l'email de bienvenue.
- Apostropheà définir
Apostrophe droite (') partout, alors que les guillemets sont typographiques (« »).
- Mots anglaisà définir
« lead », « CRM » et « Email » cohabitent avec « relance » et « devis ». La liste des pays du téléphone est en anglais.
- Variablesà définir
Crochets [entreprise] presque partout, accolades {date} et {heure} dans l'email de date d'intervention.
Les messages types
L'étape 5 montre les 14 messages qu'OWAN enverra au nom de l'entreprise. Leur voix n'est pas celle du funnel : c'est l'entreprise qui parle à ses clients, avec « nous » et une signature.
- Ouvre sur « Bonjour, ». Ferme sur « Bien cordialement, », « À très vite, » ou « À très bientôt, », puis [prénom] et [entreprise].
- SMS
- « [entreprise] : Bonjour, … 🌿 … Pour toute question : [téléphone]. [prénom] »
- Post
- 🌿 prestation et lieu, 💬 avis client, 💰 bon à savoir, ✨ devis gratuit. Rempli par l'IA depuis 2 photos avant/après et un vocal.
- Arguments répétés
- Devis gratuit, 50 % de crédit d'impôt avec avance immédiate, rapidité (« Notre planning se remplit rapidement »).
- Email de bienvenueEmailEnvoyé au prospect dès qu'un nouveau lead arrive.
- Email d'envoi du devisEmailCorps du mail qui accompagne le PDF du devis.
- SMS — devis envoyéSMSSMS au client juste après l'envoi du devis.
- Email date d'intervention + URSSAFEmailDate d'intervention + lien d'inscription à l'avance immédiate.
- SMS — lien de signatureSMSSMS au client quand le devis est prêt à signer.
- Email lien de paiement URSSAFEmailEmail au client quand l'URSSAF envoie le lien de paiement des 50%.
- SMS — paiement URSSAFSMSSMS au client pour le lien de paiement des 50%.
- Relance email J+7EmailRelance automatique 7 jours après l'envoi du devis sans réponse.
- Relance SMS J+7SMSSMS de relance 7 jours après le devis.
- Relance email J+11EmailDernière relance automatique 11 jours après le devis.
- Relance SMS J+11SMSDernier SMS de relance 11 jours après le devis.
- Post FacebookModèle du post Facebook généré à partir de vos 2 photos avant/après.
- Post InstagramModèle du post Instagram (identique à Facebook + hashtags locaux).
- Post Google (fiche établissement)Modèle du post Google Business, optimisé pour le référencement local.
Iconographie et imagerie
Des icônes au trait fin et arrondi, dessinées sur 24 px, et presque aucune image : le logo, un halo coloré, un carré dégradé qui n'est jamais affiché, et deux éléments de tiers.
Icônes
Trait seul, sans remplissage, bouts et angles arrondis, couleur héritée du texte. Sept tracés sont identiques à ceux de la bibliothèque Heroicons (version 2, style « outline »), le chevron est celui de Lucide, l'avion et le cercle de validation sont dessinés à part.
Grille 24 × 24, épaisseurs de 1,7 à 2,6 selon la taille d'affichage. Bibliothèque d'icônes officielle : à définir
Emojis
- 🌿Signature : fin de phrase à l'étape 6, dans presque tous les messages types
- 🎉Réussite : « C'est enregistré 🎉 », email de bienvenue
- ⏳Attente Telegram
- ✓« ✓ Enregistré »
- ⚠️« ⚠️ Réessayer »
- ✅ 👉 💬 💰 ✨ 😊Messages types seulement : listes, lien, avis, argent, devis, relance
Images
Éléments de tiers
Le logo Unipros (logo-unipros.png, 480 × 114 px) dans l'onglet de l'encart, à 18 px de haut. Les drapeaux de la bibliothèque du téléphone (ici, rendu simplifié).
Ce qui n'existe pas
Photographie : à définir. Illustrations au-delà du cube : à définir
Les posts des réseaux partent des photos avant/après envoyées par l'entreprise : ce sont ses images, pas celles d'OWAN.
Design tokens
149 tokens tirés de ce relevé, en deux formats au contenu identique : des variables CSS préfixées --owan-, et un fichier JSON au format W3C Design Tokens. Chaque token garde sa source dans owan.css.
Les deux fichiers sont à côté de cette page. Les couleurs transparentes passent en hexadécimal à 8 chiffres dans le JSON (#0E13228F pour l'encre à 56 %), la valeur CSS d'origine reste dans $extensions.
Contenu
- Couleurs
- 5 de base, 8 dérivés, 13 écrites en dur, 22 teintes.
- Dégradés
- Mot en dégradé, bouton, fond de page, tuile.
- Typographie
- Famille, 5 graisses, 12 tailles, 7 interlignages, 2 approches.
- Formes
- 15 rayons, 26 espacements de composants, 2 bordures, 12 ombres.
- Mouvement
- 10 durées, 2 courbes, 3 points de rupture.
À savoir avant d'utiliser
- Mot en dégradé
- Pour faire tourner le dégradé, déclarez-le sur l'élément lui-même avec @property, comme le funnel : une variable héritée de :root garde l'angle de 45°.
- Points de rupture
- Donnés pour mémoire : une variable CSS ne fonctionne pas dans @media.
- Noms d'origine
- --owan-dark, --owan-accent… reprennent les noms de owan.css ; --radius et --radius-lg deviennent --owan-radius-10 et --owan-radius-30.
tokens.css
/* OWAN — design tokens relevés sur https://onboarding.owan.fr (26/09/2026).
Source : /static/owan.css + styles et SVG en ligne des pages. Rien d'inventé ;
ce qui n'existe pas dans le funnel est marqué « à définir » dans le brandbook.
Police chargée par le funnel :
@import url('https://fonts.googleapis.com/css2?family=Rethink+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,500&display=swap'); */
:root{
/* ── Couleurs de base, déclarées dans :root de owan.css (« palette projet ») ── */
--owan-dark: #0E1322; /* Encre. :root --dark (identique à --ink). */
--owan-accent: #542DF3; /* Primaire : bouton, focus, liens d'action. :root --accent. */
--owan-success: #9AD567; /* Succès. Jamais utilisé plein : seulement en teintes (rgba). :root --success. */
--owan-warning: #FFC05F; /* Alerte. Jamais utilisé plein : seulement en teintes (rgba). :root --warning. */
--owan-danger: #F86251; /* Erreur : bordure des champs en erreur. :root --danger. */
/* ── Dérivés déclarés dans :root de owan.css ── */
--owan-ink: #0E1322; /* Texte principal. :root --ink. */
--owan-muted: rgba(14,19,34,.56); /* Texte secondaire : libellés, sous-titres. Rendu #787B83 sur blanc. :root --muted. */
--owan-muted-2: rgba(14,19,34,.42); /* Texte tertiaire : notes, icônes, libellé flottant. Rendu #9A9CA2 sur blanc. :root --muted-2. */
--owan-line: rgba(14,19,34,.06); /* Bordure des champs au repos. :root --line. */
--owan-focus: rgba(84,45,243,.30); /* Bordure au focus (recherche pays). :root --focus. */
--owan-focus-ring: rgba(84,45,243,.12); /* Anneau de focus des champs. :root --focus-ring. */
--owan-card: #FFFFFF; /* Fond des cartes. :root --card. */
--owan-unipro: #F5F7FB; /* Fond de l'encart Unipro. :root --unipro. */
/* ── Fonds écrits en dur dans les règles ── */
--owan-bg-top: #EFF2F8; /* Haut du fond de page (dégradé vers blanc). body. */
--owan-white: #FFFFFF; /* Blanc : bas du fond, champs, puces, listes. body, .field input, .puce. */
--owan-ghost-hover: #FAF9FF; /* Fond du bouton secondaire au survol. .cta-ghost:hover. */
/* ── Bouton principal ── */
--owan-cta-top: #6B47F7; /* Haut du dégradé du bouton principal. .cta. */
--owan-cta-bottom: #4A27DC; /* Bas du dégradé du bouton principal. .cta. */
/* ── Couleurs d'état écrites en dur ── */
--owan-success-ink: #4D7A27; /* Texte vert : badge sécurité, badge par défaut, case verte. .secure, .tpl-badge, .t-vert. */
--owan-success-icon: #6AAB36; /* Icône verte : bouclier, cercle de validation. .secure svg, .check-ring circle, .t-vert. */
--owan-success-strong: #5D9A32; /* Coche de validation, bouton « ✓ Enregistré ». .check-trait, .tpl-save.saved. */
--owan-danger-ink: #C23B2D; /* Texte des messages d'erreur. .erreur-box. */
--owan-warning-ink: #8A6212; /* Texte ambre : badge SMS, pastille ambre. .tpl-badge.sms, .t-ambre. */
--owan-warning-icon: #C8891A; /* Icône ambre (page /paiements). .t-ambre --teinte. */
--owan-social-ink: #BE185D; /* Texte du badge « Réseaux ». .tpl-badge.social. */
/* ── Couleur tierce ── */
--owan-telegram: #229ED9; /* Avion Telegram de l'étape 6 (couleur de Telegram, pas d'OWAN). */
/* ── Teintes (couleur de base + transparence) ── */
--owan-success-tile-from: rgba(154,213,103,.28); /* Tuile d'icône, début du dégradé. .icone. */
--owan-success-tile-to: rgba(154,213,103,.12); /* Tuile d'icône, fin du dégradé. .icone. */
--owan-success-tint: rgba(154,213,103,.16); /* Fond du badge sécurité et de la case verte. .secure, .t-vert --fond. */
--owan-success-badge: rgba(154,213,103,.18); /* Fond du badge de catégorie par défaut. .tpl-badge. */
--owan-success-tile-border: rgba(154,213,103,.37); /* Bordure de la tuile d'icône. .icone. */
--owan-success-line: rgba(154,213,103,.45); /* Bordure de la case verte. .t-vert --trait. */
--owan-danger-tint: rgba(248,98,81,.10); /* Fond d'erreur et halo du champ en erreur. .erreur-box, .field input.err. */
--owan-danger-line: rgba(248,98,81,.30); /* Bordure du message d'erreur. .erreur-box. */
--owan-warning-tint: rgba(255,192,95,.18); /* Fond du badge SMS et de la pastille ambre. .tpl-badge.sms, .t-ambre --fond. */
--owan-warning-line: rgba(255,192,95,.55); /* Bordure ambre. .t-ambre --trait. */
--owan-accent-07: rgba(84,45,243,.07); /* Fond de la case bleue et de la pastille cochée. .t-bleu --fond, .puce.on. */
--owan-accent-08: rgba(84,45,243,.08); /* Surlignage de liste, fond des variables. .iti__highlight, .banque-liste li:hover, .tpl-vars code. */
--owan-accent-10: rgba(84,45,243,.1); /* Fond du badge « Email ». .tpl-badge.email. */
--owan-accent-22: rgba(84,45,243,.22); /* Bordure du bouton secondaire. .cta-ghost. */
--owan-accent-24: rgba(84,45,243,.24); /* Bordure de pastille au survol. .puce:hover. */
--owan-accent-28: rgba(84,45,243,.28); /* Bordure de la case bleue. .t-bleu --trait. */
--owan-social-tint: rgba(219,39,119,.12); /* Fond du badge « Réseaux ». .tpl-badge.social. */
--owan-ink-035: rgba(14,19,34,.035); /* Fond d'une case verrouillée sans teinte. .verrou. */
--owan-ink-045: rgba(14,19,34,.045); /* Fond de la pastille « Étape 1 / 6 ». .step-pill. */
--owan-ink-05: rgba(14,19,34,.05); /* Fond du bouton œil au survol. .eye:hover. */
--owan-ink-18: rgba(14,19,34,.18); /* Trait de progression inactif. .bar. */
--owan-white-90: rgba(255,255,255,.9); /* Reflet : liseré haut de carte, éclat du trait courant. .card, .bar.current::after. */
/* ── Dégradés ── */
--owan-grad-signature: linear-gradient(var(--owan-grad-angle, 45deg), #8978F9 0%, #8282FC 8%, #838AF9 16%, #8B93FA 25%, #AE7EF9 33%, #CD69F5 42%, #D264F6 50%, #F87C42 58%, #F88B45 66%, #F99C4E 75%, #FBB05C 83%, #FCC16C 92%, #FFDDA4 100%); /* Mot en dégradé des titres (.grad), « répliqué depuis Gradient-square.webp, sans grain ». Angle 45deg qui tourne de 360° en 18 s. */
--owan-grad-cta: linear-gradient(180deg, #6B47F7 0%, #542DF3 52%, #4A27DC 100%); /* Bouton principal. .cta. */
--owan-grad-page: linear-gradient(180deg, #EFF2F8 0%, #FFFFFF 58%); /* Fond de page, attaché à la fenêtre. body. */
--owan-grad-tile: linear-gradient(160deg, rgba(154,213,103,.28), rgba(154,213,103,.12)); /* Tuile d'icône verte. .icone. */
/* ── Typographie ── */
--owan-font: 'Rethink Sans', system-ui, -apple-system, Segoe UI, sans-serif; /* Google Fonts, variable 400 à 800 + italique 500. :root --font. */
--owan-font-weight-regular: 400; /* Titres, libellés, nom d'étape. */
--owan-font-weight-medium: 500; /* Saisie, boutons, badges, messages. */
--owan-font-weight-semibold: 600; /* Titre d'un message type, bouton Enregistrer, mot en gras du sous-titre. */
--owan-font-weight-bold: 700; /* Numéro d'étape, titres de section en capitales, badges 10 px. */
--owan-font-weight-extrabold: 800; /* Importée par la feuille de style, utilisée nulle part. */
--owan-font-size-24: 24px; /* Titre d'accueil, titre de remerciement. .hero h1, .merci h2. */
--owan-font-size-15: 15px; /* Saisie, libellés, boutons, sous-titres. .field input, .cta, .scene .sous. */
--owan-font-size-14-5: 14.5px; /* Nom de l'étape, intro des messages. .step-name, .tpl-intro. */
--owan-font-size-14: 14px; /* Listes déroulantes, case verrouillée, champs des messages. .iti__country-list, .verrou, .tpl-body input. */
--owan-font-size-13-5: 13.5px; /* Message d'erreur, pastilles, bouton Enregistrer. .erreur-box, .puce, .tpl-save. */
--owan-font-size-13: 13px; /* Pastille d'étape, badge sécurité. .step-pill, .secure. */
--owan-font-size-12-5: 12.5px; /* Notes, description d'un message type. .scene .note, .tpl-head .d. */
--owan-font-size-12: 12px; /* Titres de section en capitales, libellés de champ. .sect-titre, .tpl-cat, .tpl-label. */
--owan-font-size-11-5: 11.5px; /* Liste des variables. .tpl-vars. */
--owan-font-size-11: 11px; /* Variable [entreprise]. .tpl-vars code. */
--owan-font-size-10: 10px; /* Badge Email / SMS / Réseaux. .tpl-badge. */
--owan-font-size-title: clamp(24px, 6vw, 30px); /* Titre de scène fluide, de 24 à 30 px. .scene h1. */
--owan-line-height-title-scene: 1.16; /* .scene h1 */
--owan-line-height-title-hero: 1.18; /* .hero h1 */
--owan-line-height-title-merci: 1.2; /* .merci h2 */
--owan-line-height-tight: 1.4; /* .tpl-head .d */
--owan-line-height-base: 1.5; /* .erreur-box, .tpl-intro, textarea, .tpl-vars */
--owan-line-height-note: 1.55; /* .scene .note */
--owan-line-height-body: 1.6; /* .scene .sous, .merci p */
--owan-tracking-title: -0.012em; /* Titres. .hero h1, .scene h1. */
--owan-tracking-caps: 0.14em; /* Titres de section en capitales. .sect-titre, .tpl-cat. */
/* ── Rayons (du plus petit au plus grand) ── */
--owan-radius-4: 4px; /* Variable [entreprise]. .tpl-vars code */
--owan-radius-5: 5px; /* Fond du libellé flottant. .field label */
--owan-radius-8: 8px; /* Pastille d'étape. .step-pill */
--owan-radius-9: 9px; /* Bouton œil, recherche et lignes de liste. .eye, .iti-search, .iti__country */
--owan-radius-10: 10px; /* Champs, bouton Enregistrer. :root --radius */
--owan-radius-11: 11px; /* Badge sécurité. .secure */
--owan-radius-12: 12px; /* Message d'erreur. .erreur-box */
--owan-radius-14: 14px; /* Listes déroulantes. .iti__country-list, .banque-liste */
--owan-radius-15: 15px; /* Boutons principal et secondaire. .cta */
--owan-radius-16: 16px; /* Carte de message type. .tpl-card */
--owan-radius-18: 18px; /* Encart Unipro et son onglet. .unipro, .unipro-badge */
--owan-radius-20: 20px; /* Badge de catégorie. .tpl-badge */
--owan-radius-22: 22px; /* Tuile d'icône. .icone */
--owan-radius-30: 30px; /* Carte principale. :root --radius-lg */
--owan-radius-pill: 99px; /* Traits de progression, pastilles de choix. .bar, .puce */
/* ── Espacements et gabarit (aucune échelle déclarée dans le funnel : valeurs des composants) ── */
--owan-wrap-max: 464px; /* Largeur de colonne des étapes. .wrap */
--owan-wrap-max-paiements: 600px; /* Colonne de /paiements. .wrap-paie */
--owan-wrap-max-templates: 640px; /* Colonne de l'étape 5. .tpl-wrap */
--owan-wrap-padding-top: 29px; /* .wrap */
--owan-wrap-padding-top-desktop: 46px; /* .wrap à partir de 700 px */
--owan-wrap-padding-x: 18px; /* .wrap */
--owan-wrap-padding-bottom: 72px; /* .wrap */
--owan-card-padding-y: 22px; /* .card */
--owan-card-padding-x: 20px; /* .card */
--owan-block-gap: 22px; /* Écart entre blocs : badge sécurité, encart Unipro, traits, sections. .secure, .unipro, .bars, .sect */
--owan-field-gap: 13px; /* Écart entre deux champs. .field */
--owan-row-gap: 11px; /* Écart entre deux colonnes de champs. .row, .ligne */
--owan-input-padding-y: 10px; /* .field input */
--owan-input-padding-x: 16px; /* .field input */
--owan-input-icon-offset: 46px; /* Retrait du texte quand le champ a une icône. .field-icon input */
--owan-cta-padding-y: 17px; /* .cta */
--owan-cta-padding-x: 22px; /* .cta */
--owan-cta-gap: 9px; /* Texte / flèche. .cta */
--owan-cta-stack-gap: 10px; /* Bouton secondaire sous le principal. .cta-ghost */
--owan-bars-width: 118px; /* .bars */
--owan-bars-gap: 5px; /* .bars */
--owan-bar-height: 3px; /* .bar */
--owan-tile-size: 74px; /* .icone */
--owan-tile-size-mobile: 63px; /* .icone sous 700 px */
--owan-logo-height: 64px; /* .brand .logo */
--owan-logo-height-mobile: 58px; /* .brand .logo sous 700 px */
/* ── Épaisseurs de bordure ── */
--owan-border-control: 1.5px; /* Champs, pastilles, cases, bouton secondaire. */
--owan-border-hairline: 1px; /* Message d'erreur, tuile, carte de message, listes. */
/* ── Ombres et anneaux ── */
--owan-shadow-card: inset 0 1px 0 rgba(255,255,255,.9), 0 30px 60px -28px rgba(14,19,34,.16), 0 8px 24px -16px rgba(14,19,34,.05); /* .card */
--owan-shadow-cta: inset 0 1px 0 rgba(255,255,255,.38), inset 0 -2px 6px rgba(0,0,0,.18), 0 10px 22px -8px rgba(84,45,243,.55), 0 3px 8px -4px rgba(84,45,243,.5); /* .cta */
--owan-shadow-cta-hover: inset 0 1px 0 rgba(255,255,255,.42), inset 0 -2px 6px rgba(0,0,0,.18), 0 14px 30px -8px rgba(84,45,243,.62), 0 3px 8px -4px rgba(84,45,243,.5); /* .cta:hover */
--owan-shadow-cta-active: inset 0 1px 0 rgba(255,255,255,.25), inset 0 -1px 3px rgba(0,0,0,.22), 0 6px 14px -8px rgba(84,45,243,.5); /* .cta:active */
--owan-shadow-ghost: 0 4px 14px -8px rgba(84,45,243,.4); /* .cta-ghost */
--owan-shadow-ghost-hover: 0 6px 18px -8px rgba(84,45,243,.5); /* .cta-ghost:hover */
--owan-shadow-tile: 0 12px 26px -14px rgba(154,213,103,.7), inset 0 1px 0 rgba(255,255,255,.7); /* .icone */
--owan-shadow-dropdown: 0 16px 40px -10px rgba(14,19,34,.25); /* .iti__country-list, .banque-liste */
--owan-shadow-message-card: 0 18px 40px -30px rgba(14,19,34,.18); /* .tpl-card */
--owan-shadow-ring-focus: 0 0 0 2px rgba(84,45,243,.12); /* Champ au focus. .field input:focus */
--owan-shadow-ring-error: 0 0 0 4px rgba(248,98,81,.10); /* Champ en erreur. .field input.err */
--owan-shadow-ring-chip: 0 0 0 1.5px rgba(84,45,243,.30); /* Pastille cochée, teinte par défaut. .puce.on */
/* ── Mouvement ── */
--owan-duration-enter: 550ms; /* Entrée du logo, du titre, de la carte, du bouton ; pop de la coche. rise, pop */
--owan-duration-draw: 500ms; /* Tracé de la coche. draw */
--owan-duration-open: 300ms; /* Ouverture d'un message type. .tpl-card.open .tpl-body */
--owan-duration-hover: 200ms; /* Ombre du bouton, flèche, chevron. .cta, .tpl-chevron */
--owan-duration-field: 180ms; /* Bordure et anneau des champs. .field input */
--owan-duration-label: 160ms; /* Montée du libellé flottant. .field label */
--owan-duration-quick: 150ms; /* Œil, pastilles, bouton Enregistrer. .eye, .puce, .tpl-save */
--owan-duration-press: 140ms; /* Enfoncement du bouton. .cta:active */
--owan-duration-shine: 5000ms; /* Éclat qui traverse le trait de l'étape courante. barShine */
--owan-duration-grad-spin: 18000ms; /* Rotation du dégradé du mot mis en valeur. gradSpin */
--owan-ease-rise: cubic-bezier(.2,.7,.2,1); /* Entrées (rise). */
--owan-ease-pop: cubic-bezier(.3,1.6,.4,1); /* Rebond de la tuile de validation (pop). */
/* ── Points de rupture (pour mémoire : une variable CSS ne marche pas dans @media) ── */
--owan-breakpoint-sm: 420px; /* (max-width:420px) : libellé long de /paiements rétréci */
--owan-breakpoint-md: 620px; /* (min-width:620px) : /paiements passe sur deux colonnes */
--owan-breakpoint-lg: 700px; /* (max-width:700px) / (min-width:700px) : mobile / bureau */
}
tokens.json, extrait
{
"color": {
"base": {
"accent": {
"$value": "#542DF3",
"$type": "color",
"$description": "Primaire : bouton, focus, liens d'action. :root --accent.",
"$extensions": {
"fr.owan": {
"css": "--owan-accent",
"value": "#542DF3"
}
}
}
},
"derived": {
"muted": {
"$value": "#0E13228F",
"$type": "color",
"$description": "Texte secondaire : libellés, sous-titres. Rendu #787B83 sur blanc. :root --muted.",
"$extensions": {
"fr.owan": {
"css": "--owan-muted",
"value": "rgba(14,19,34,.56)"
}
}
}
}
},
"shadow": {
"card": {
"$value": [
{
"color": "#FFFFFFE6",
"offsetX": "0px",
"offsetY": "1px",
"blur": "0px",
"spread": "0px",
"inset": true
},
{
"color": "#0E132229",
"offsetX": "0px",
"offsetY": "30px",
"blur": "60px",
"spread": "-28px",
"inset": false
},
{
"color": "#0E13220D",
"offsetX": "0px",
"offsetY": "8px",
"blur": "24px",
"spread": "-16px",
"inset": false
}
],
"$type": "shadow",
"$description": ".card",
"$extensions": {
"fr.owan": {
"css": "--owan-shadow-card",
"value": "inset 0 1px 0 rgba(255,255,255,.9), 0 30px 60px -28px rgba(14,19,34,.16), 0 8px 24px -16px rgba(14,19,34,.05)"
}
}
}
}
}