/* fiche-profil.css — la fiche du membre, visiteur et propriétaire (24/09/2026, maquette validée par btob).
   Téléphone d'abord (375 px = la référence), aucun cadre, aucune classe utilitaire : output.css est figé.
   Charte mesurée : bleu #0c376b, nuit #10131b, vert #8abf56 sur texte #10131b, vérifié #1f7a3a/#e7f6ea,
   absent #e8b93b/#fbefd8, traits #e3e9f1, muet #67748a, arrondis 12-14, cibles tactiles 44 px. */
:root{--fp-bleu:#0c376b;--fp-nuit:#10131b;--fp-vert:#8abf56;--fp-vert-f:#1f7a3a;--fp-vert-p:#e7f6ea;--fp-vert-t:#3d5c15;--fp-vert-pp:#eef6e3;--fp-ambre:#e8b93b;--fp-ambre-p:#fbefd8;--fp-ambre-t:#9a6512;--fp-muet:#67748a;--fp-trait:#e3e9f1;--fp-trait2:#d9e1ec;--fp-texte:#2b3442;--fp-bleu-p:#e8eef7;--fp-fond:#f5f7fa;--fp-rouge:#c0392b;--fp-rouge-p:#fdeceb}
body.fp-body{margin:0;background:#1d2a45;position:relative;z-index:0;color:var(--fp-nuit)}

/* 1. Fond continu : la couverture floutée et assombrie derrière toute la page (calque fixe, z-index négatif
   dans le contexte d'empilement du body : tout le reste, pied de page compris, passe devant). */
.fp-fond{position:fixed;inset:0;z-index:-1;overflow:hidden;background:#1d2a45}
.fp-fond img{position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;filter:blur(22px) saturate(1.3);transform:translateZ(0)}
.fp-fond::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,19,27,.22) 0%,rgba(16,19,27,.68) 42%,rgba(16,19,27,.9) 100%),repeating-linear-gradient(135deg,rgba(255,255,255,.04) 0 2px,transparent 2px 14px)}

.fp-page{max-width:1180px;margin:0 auto;padding:12px 12px 40px;font-family:"Gantari",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:600;font-size:14px;line-height:1.35;color:var(--fp-nuit);min-width:0}
.fp-page *,.fp-page *::before,.fp-page *::after{box-sizing:border-box}
.fp-page a{color:inherit;text-decoration:none}
.fp-page img{max-width:100%}
.fp-page p{margin:0}
.fp-ic{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.fp-ic.s{width:13px;height:13px}
.fp-ic.l{width:20px;height:20px}
.fp-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Boutons : 44 px, arrondi 8, vert plein = action principale, contour = secondaire, gris = neutre. */
.fp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border-radius:8px;font:inherit;font-size:13.5px;font-weight:700;border:1px solid transparent;padding:0 12px;white-space:nowrap;min-width:0;cursor:pointer;line-height:1.2;text-decoration:none}
.fp-btn.v{background:var(--fp-vert);color:var(--fp-nuit)}
.fp-btn.v:hover{background:#7cb047}
.fp-btn.s{background:#fff;color:var(--fp-bleu);border-color:#c9d6e8}
.fp-btn.s:hover{background:var(--fp-bleu-p)}
/* 24/09 (btob : « Prendre rendez-vous, il faudrait le mettre de couleur : blanc sur blanc, on ne voit pas bien ») : pour le visiteur,
   les actions secondaires de la carte et de la barre du bas sont pleines, en bleu de la charte ; « Envoyer un message » reste vert */
.fp-actions:not(.fp-proprio):not(.fp-apercu) .fp-btn.s,.fp-barre .fp-btn.s{background:var(--fp-bleu);color:#fff;border-color:var(--fp-bleu)}
.fp-actions:not(.fp-proprio):not(.fp-apercu) .fp-btn.s:hover,.fp-barre .fp-btn.s:hover{background:#0a2d58}
.fp-btn.g{background:#fff;color:var(--fp-texte);border-color:var(--fp-trait)}
.fp-btn.g:hover{background:var(--fp-fond)}
/* 24/09/2026 (lot H) : bleu plein (« Laisser un avis ») et contour bleu (« Voir les N avis », « Voir les N réalisations », carte de visite) */
.fp-btn.b{background:var(--fp-bleu);color:#fff;border-color:var(--fp-bleu)}
.fp-btn.b:hover{background:#0a2d58}
.fp-btn.o{background:#fff;color:var(--fp-bleu);border-color:var(--fp-bleu)}
.fp-btn.o:hover{background:var(--fp-bleu-p)}
/* 24/09 (lot F, btob : « ces boutons, faudrait les mettre de couleur pour que je puisse comprendre ») : une couleur par action */
.fp-actions.fp-proprio .fp-btn.vv{background:var(--fp-bleu);color:#fff;border-color:var(--fp-bleu)}
.fp-actions.fp-proprio .fp-btn.vv:hover{background:#0a2d58}
.fp-actions.fp-proprio .fp-btn.cv{background:var(--fp-vert);color:var(--fp-nuit);border-color:var(--fp-vert)}
.fp-actions.fp-proprio .fp-btn.cv:hover{background:#7cb047}
.fp-actions.fp-proprio .fp-btn.mi{background:var(--fp-ambre);color:var(--fp-nuit);border-color:var(--fp-ambre)}
.fp-actions.fp-proprio .fp-btn.mi:hover{background:#dcab2a}
.fp-btn.ico{width:44px;padding:0;flex:none}
.fp-btn span{overflow:hidden;text-overflow:ellipsis}
.fp-lien{color:var(--fp-bleu);font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:5px;min-height:44px;text-decoration:none}
.fp-lien:hover{text-decoration:underline}

/* 2. Bande du propriétaire */
.fp-bande{background:rgba(16,19,27,.6);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:14px;padding:12px 14px;margin:0 0 12px;min-width:0}
.fp-bande .t{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}
.fp-bande .t b{font-size:14px}
.fp-bande .jauge{height:8px;border-radius:999px;background:rgba(255,255,255,.15);margin:8px 0 10px;overflow:hidden}
.fp-bande .jauge i{display:block;height:100%;background:var(--fp-vert);border-radius:999px}
.fp-bande .fp-siege{margin:0 0 10px;font-size:13px}
.fp-bande .fp-siege .fp-btn{display:flex;width:max-content;max-width:100%;margin-top:8px}
.fp-bande .fp-siege .fp-lien{color:#8a2b22;text-decoration:underline;min-height:0}
.fp-bande .taches{display:flex;flex-wrap:wrap;gap:6px}
.fp-bande .taches a{font-size:12px;font-weight:700;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;padding:0 10px;min-height:32px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.fp-bande .taches a:hover{background:rgba(255,255,255,.2)}
.fp-bande .taches a .fp-ic{width:12px;height:12px}
.fp-bande .complet{font-size:12.5px;color:#c9d2de}
.fp-bande .pied{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:#c9d2de;font-weight:600}
.fp-bande .pied b{color:#fff}
.fp-bande .pied a{color:#fff;font-weight:700;min-height:32px;display:inline-flex;align-items:center;gap:4px}

/* 3. En-tête : couverture en bande courte (150 px au téléphone, 210 au bureau), voile dégradé permanent sur sa
   moitié basse, aucun agrandissement (pas de visionneuse, image sans appui long) : une carte de visite ou un numéro
   posé en couverture n'y est plus lisible. La carte d'identité blanche la chevauche. */
.fp-entete{min-width:0}
.fp-couv{position:relative;height:150px;border-radius:14px;overflow:hidden;background:#2b3a55;box-shadow:0 12px 28px -10px rgba(0,0,0,.55)}
.fp-couv img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;filter:blur(1.5px) saturate(1.1);transform:scale(1.04)} /* 24/09 (btob) : une carte de visite ou un numéro posés en couverture ne doivent pas se lire — léger flou, bande courte, voile */
.fp-couv::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(16,19,27,.22) 0%,rgba(16,19,27,.42) 50%,rgba(16,19,27,.76) 100%)}
/* 24/09/2026 (lot H, btob) : « Suivre ce professionnel » (« Suivre ce Jober ») et « Partager » écrits, en pastilles de 44 px ; au
   téléphone « Suivre » et « Partager » ; « Suivi » une fois abonné (aria-pressed). La caméra du propriétaire reste ronde. */
.fp-coin{position:absolute;right:10px;top:10px;display:flex;gap:8px;z-index:2;max-width:calc(100% - 20px)}
.fp-coin > *,.fp-coin .btb-suivre{height:44px;min-width:44px;border-radius:999px;background:rgba(255,255,255,.95);color:var(--fp-nuit);display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;box-shadow:0 2px 10px rgba(0,0,0,.3);border:0;cursor:pointer;font:inherit;font-size:13px;font-weight:800;line-height:1;white-space:nowrap;position:relative;text-decoration:none}
.fp-coin > a.fp-proprio{width:44px;padding:0}
.fp-coin .fp-partager:hover{background:#fff}
.fp-coin .btb-suivre{background:var(--fp-vert);color:var(--fp-nuit)}
.fp-coin .btb-suivre:hover{background:#7cb047}
.fp-coin .btb-suivre .ic{font-size:18px;line-height:1;font-weight:800}
.fp-coin .btb-suivre .wl{display:none}
.fp-coin .btb-suivre.on{background:#fff;color:var(--fp-vert-f)}
@media (min-width:480px){.fp-coin .btb-suivre.long .w{display:none}.fp-coin .btb-suivre.long .wl{display:inline}}
.fp-carte-id{position:relative;z-index:1;margin:-28px 12px 0;background:#fff;border-radius:16px;padding:0 14px 14px;box-shadow:0 14px 32px -16px rgba(16,19,27,.5);min-width:0}
.fp-ident{display:flex;align-items:flex-end;gap:12px;margin-top:-34px}
.fp-avatar{width:76px;height:76px;border-radius:999px;background:#fff;border:3px solid #fff;box-shadow:0 3px 10px rgba(16,19,27,.2);flex:none;position:relative}
.fp-avatar img{width:100%;height:100%;border-radius:999px;object-fit:cover;display:block;background:var(--fp-bleu-p)}
.fp-avatar .cam{position:absolute;right:-6px;bottom:-6px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--fp-nuit)}
.fp-avatar .cam i{width:28px;height:28px;border-radius:999px;background:#fff;border:1px solid var(--fp-trait2);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.fp-avatar .point{position:absolute;right:2px;top:2px;width:14px;height:14px;border-radius:999px;border:2px solid #fff;background:#9ca3af}
.fp-avatar .point.active{background:var(--fp-vert)}
.fp-avatar .point.away{background:var(--fp-ambre)}
.fp-nomz{min-width:0;flex:1;padding-bottom:2px}
.fp-nomz h1{margin:0;font-size:22px;font-weight:800;line-height:1.05;color:var(--fp-nuit);letter-spacing:-.01em;overflow-wrap:anywhere}
.fp-slogan{font-size:13px;color:var(--fp-texte);font-weight:600;margin-top:4px;overflow-wrap:anywhere}
.fp-sousnom{padding-top:6px;font-size:13px;color:var(--fp-texte);overflow-wrap:anywhere}
.fp-sousnom b{color:var(--fp-bleu);font-weight:700}
.fp-sousnom .sep{color:#c5ccd6;margin:0 5px}
.fp-pastilles{padding-top:8px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.fp-pil{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;padding:4px 9px;border-radius:999px;line-height:1.2;white-space:nowrap;max-width:100%}
.fp-pil.type{background:var(--fp-bleu);color:#fff} /* 26/09/2026 : Particulier, Jober, Professionnel… */
.fp-pil.verif{background:var(--fp-vert-p);color:var(--fp-vert-f)}
.fp-pil.ferme,.fp-pil.faux{background:var(--fp-rouge-p);color:#a13226}
.fp-pil.declare{background:#e8f0fb;color:#1f4f8f}
.fp-pil.absent{background:#f1f3f6;color:#5a6473}
.fp-pil.noncontrole{background:#fdf3e0;color:#8a5a12}
.fp-pil.note{background:#fff;border:1px solid var(--fp-trait2);color:var(--fp-nuit)}
.fp-pil.note .fp-ic{stroke:var(--fp-ambre);fill:var(--fp-ambre);width:12px;height:12px}
.fp-pil.note{position:relative} /* 24/09/2026 (lot H) : la pastille mène aux avis ; zone tactile de 44 px sous la pastille de 24 */
.fp-pil.note::after{content:"";position:absolute;left:0;right:0;top:-11px;bottom:-11px} /* 25/09 : 11 px, la zone part de l'intérieur de la bordure (43,25 px mesurés avec 10) */
.fp-pil.note:hover{border-color:var(--fp-bleu);color:var(--fp-bleu)}
.fp-pastilles .btb-dispo{font-family:inherit}
.fp-statut-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #c9d6e8;border-radius:999px;padding:0 10px 0 4px;min-height:32px;font:inherit;font-weight:700;color:var(--fp-nuit);cursor:pointer;position:relative}
.fp-statut-btn::after{content:"";position:absolute;left:0;right:0;top:-6px;bottom:-6px} /* zone tactile de 44 px sous une pastille de 32 */
.fp-statut-btn .fp-ic{width:12px;height:12px;color:var(--fp-muet)}
.fp-liens{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px}
.fp-liens a{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--fp-bleu);background:#fff;border:1px solid var(--fp-trait2);border-radius:999px;padding:0 12px;min-height:32px;max-width:100%}
.fp-liens a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 4. Actions : deux par rangée, trois quand il y en a trois */
.fp-actions{padding-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fp-actions.un{grid-template-columns:minmax(0,1fr)}
.fp-actions.trois{grid-template-columns:repeat(3,minmax(0,1fr))}
.fp-actions.trois .fp-btn{padding:0 6px;font-size:12.5px}
.fp-actions .fp-btn{width:100%;white-space:normal;text-align:center;padding:0 8px;line-height:1.15}
.fp-actions .fp-btn span{overflow:visible;text-overflow:clip}
.fp-actions .fp-carte-btn{grid-column:1 / -1} /* 24/09/2026 (lot H) : « Télécharger sa carte de visite / flyer », sous les deux autres */

/* 5. Onglets-sommaire collants, translucides, actif vert */
.fp-onglets{position:sticky;top:var(--btb-h-entete-mobile,52px);z-index:40;display:flex;gap:6px;padding:8px 12px;margin:8px -12px 0;overflow-x:auto;scrollbar-width:none;background:rgba(16,19,27,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.12)}
.fp-onglets::-webkit-scrollbar{display:none}
.fp-onglets a{flex:none;font-size:12.5px;font-weight:700;padding:0 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff;text-decoration:none}
.fp-onglets a.on{background:var(--fp-vert);color:var(--fp-nuit);border-color:var(--fp-vert)}
.fp-onglets a[hidden]{display:none}
/* 24/09/2026 (btob, 23:4x : « le bandeau descend et traverse les cartes ») : au téléphone, l'en-tête du site se cache quand on
   descend (assets/js/navbar-ui.js retire body.mth-visible) ; la barre d'onglets restait collée à 52 px et laissait une bande
   vide où défilaient les cartes. Elle monte avec l'en-tête, au même rythme, et redescend avec lui. */
@media (max-width:1023px){.fp-onglets{transition:top .3s ease-in-out}body:not(.mth-visible) .fp-onglets{top:0}}

/* 6. Blocs : panneaux blancs posés sur le fond */
.fp-colonnes{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0}
.fp-droite{display:contents}
.fp-bloc{margin:14px 0 0;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.75);border-radius:14px;padding:14px;box-shadow:0 18px 40px -22px rgba(0,0,0,.7);position:relative;min-width:0;scroll-margin-top:calc(var(--btb-h-entete-mobile,52px) + 64px)}
.fp-bloc h2{margin:0 0 8px;font-size:15.5px;font-weight:800;color:var(--fp-nuit);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;letter-spacing:0;line-height:1.2;position:relative} /* 24/09 : le titre ne se casse plus sur deux lignes, la date (.cnt) passe dessous ; le crayon, en absolu, reste en haut à droite */
.fp-bloc h2 .cnt{font-size:11.5px;font-weight:700;color:var(--fp-muet);margin-left:auto;white-space:nowrap}
.fp-bloc h2 .titre{display:inline-flex;align-items:center;gap:8px;min-width:0}
.fp-crayon{width:44px;height:44px;margin:-6px -6px -6px 0;display:inline-flex;align-items:center;justify-content:center;background:none;border:0;padding:0;cursor:pointer;color:var(--fp-bleu);flex:none}
.fp-bloc h2 .fp-crayon{position:absolute;top:-6px;right:-6px;margin:0} /* 24/09 : hors du flux du titre, il ne tombe jamais à la ligne */
body:not(.fp-vue-visiteur) #fp-page[data-proprietaire] .fp-bloc h2{padding-right:40px;min-height:32px} /* la place du crayon (hauteur d'avant : 44 px moins ses marges), pour tous les blocs du propriétaire hors « vue visiteur » : compteurs alignés, rien ne passe sous le crayon */
.fp-crayon i{width:32px;height:32px;border-radius:999px;background:var(--fp-fond);border:1px solid var(--fp-trait);display:inline-flex;align-items:center;justify-content:center}
.fp-crayon:hover i{background:var(--fp-bleu-p)}
.fp-bloc .texte{font-size:13.5px;font-weight:500;color:var(--fp-texte);line-height:1.45;overflow-wrap:anywhere}
.fp-bloc .texte+.texte{margin-top:6px}
.fp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.fp-chip{font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:var(--fp-bleu-p);color:var(--fp-bleu);border:0;font-family:inherit;cursor:default;max-width:100%;overflow-wrap:anywhere}
.fp-chip.mut{background:var(--fp-fond);color:var(--fp-muet);font-weight:600;cursor:pointer}
/* 24/09/2026 (lot H) : l'activité principale en bleu plein ; « Activités » en sous-titre sous une présentation écrite */
.fp-chip.prin{background:var(--fp-bleu);color:#fff}
.fp-chip.mut{position:relative}
.fp-chip.mut::after{content:"";position:absolute;left:0;right:0;top:-9px;bottom:-9px} /* zone tactile de 44 px */
.fp-bloc .fp-soustitre{margin:14px 0 0;font-size:13px;font-weight:800;color:var(--fp-nuit)} /* .fp-bloc : .fp-page p{margin:0} l'emportait */
.fp-bloc .fp-soustitre + .fp-chips{margin-top:7px}
.fp-vide{background:var(--fp-fond);border-radius:10px;padding:12px;display:flex;gap:10px;align-items:flex-start;margin-top:6px}
.fp-vide .ico{width:34px;height:34px;border-radius:999px;background:#fff;border:1px solid var(--fp-trait);display:flex;align-items:center;justify-content:center;color:var(--fp-muet);flex:none}
.fp-vide p{font-size:13px;font-weight:500;color:var(--fp-texte)}
.fp-rang{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #eef2f7;font-size:13.5px;min-width:0}
.fp-rang:first-of-type{border-top:0;padding-top:4px}
.fp-rang .ico{width:34px;height:34px;border-radius:10px;background:var(--fp-fond);display:flex;align-items:center;justify-content:center;color:var(--fp-bleu);flex:none}
.fp-rang .t{flex:1;min-width:0;overflow-wrap:anywhere}
.fp-rang .t small{display:block;font-size:11.5px;color:var(--fp-muet);font-weight:600}
.fp-rang .d{color:var(--fp-muet);font-weight:600;font-size:12.5px;white-space:nowrap;flex:none}
.fp-rang .d.ok{color:var(--fp-vert-f);font-weight:700}
.fp-rang .d.afaire{color:var(--fp-ambre-t);font-weight:700}
/* 24/09 (lot F) : déposer un document depuis la fiche ; le bloc atteint par un onglet est brièvement surligné */
.fp-doc-envoi{margin:0;flex:none}
.fp-doc-btn{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--fp-bleu);background:var(--fp-bleu);color:#fff;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.fp-doc-btn.ok{background:#fff;color:var(--fp-bleu);border-color:var(--fp-trait2)}
.fp-doc-btn input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.fp-doc-btn:focus-within{outline:2px solid var(--fp-vert);outline-offset:2px}
.fp-doc-btn.envoi{opacity:.6;pointer-events:none}
.fp-bloc.fp-eclaire{animation:fp-eclaire 1.6s ease-out}
@keyframes fp-eclaire{0%,45%{box-shadow:0 0 0 3px var(--fp-vert)}100%{box-shadow:0 0 0 3px rgba(138,191,86,0)}}
@media (prefers-reduced-motion:reduce){.fp-bloc.fp-eclaire{animation:none;box-shadow:0 0 0 3px var(--fp-vert)}}
.fp-rang a.d{min-height:44px;display:inline-flex;align-items:center;color:var(--fp-bleu);font-weight:700}
.fp-detail{margin-top:6px}
.fp-detail summary{cursor:pointer;color:var(--fp-bleu);font-weight:700;font-size:12.5px;min-height:32px;display:flex;align-items:center;list-style:none}
.fp-detail summary::-webkit-details-marker{display:none}
.fp-detail summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-left:8px;margin-top:-4px}
.fp-detail[open] summary::after{transform:rotate(-135deg);margin-top:4px}
.fp-horaires{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13px;margin:4px 0 0 44px}
.fp-horaires span{color:var(--fp-muet)}
.fp-horaires b{font-weight:700;font-variant-numeric:tabular-nums}
.fp-horaires b.ferme{color:var(--fp-muet);font-weight:600}
.fp-zone-carte{margin-top:10px}
#map.fp-carte{height:160px;border-radius:10px;background:var(--fp-bleu-p)}
.fp-zone-pied{display:flex;justify-content:flex-end;margin-top:6px}
.fp-zone-pied button{background:#fff;border:1px solid var(--fp-trait2);border-radius:999px;padding:0 12px;min-height:36px;font:inherit;font-size:12.5px;font-weight:700;color:var(--fp-bleu);cursor:pointer}
/* Demandez-lui : cartes des thématiques (image ou dégradé de repli) */
.fp-themes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
.fp-theme{position:relative;display:flex;align-items:flex-end;aspect-ratio:16/10;border-radius:12px;overflow:hidden;padding:8px 9px;color:#fff;font-size:12.5px;font-weight:700;line-height:1.2;text-shadow:0 1px 3px rgba(0,0,0,.45);background:linear-gradient(135deg,#8fa9c9,#5f7ea6);text-decoration:none;min-width:0}
.fp-theme img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fp-theme .lien{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-end;padding:8px 9px;color:#fff;text-decoration:none} /* le lien couvre la carte ; la croix reste à côté du <a>, pas dedans */
.fp-theme::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(16,19,27,0) 30%,rgba(16,19,27,.68) 100%)}
.fp-theme span{position:relative;padding-right:24px;overflow-wrap:anywhere}
.fp-theme i{position:absolute;right:8px;top:8px;width:28px;height:28px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--fp-bleu);display:flex;align-items:center;justify-content:center;font-style:normal;z-index:1}
.fp-theme.t2{background:linear-gradient(135deg,#c9b79a,#8c7a5c)}
.fp-theme.t3{background:linear-gradient(135deg,#a9c4a1,#5f8a63)}
.fp-theme.t4{background:linear-gradient(135deg,#c5b4c9,#7d6a8c)}
.fp-theme.t5{background:linear-gradient(135deg,#d3b7a2,#9a6f57)}
.fp-theme.t6{background:linear-gradient(135deg,#9fc3cf,#5c8a99)}
.fp-theme.plus{background:var(--fp-bleu-p);color:var(--fp-bleu);text-shadow:none;align-items:center;justify-content:center;font-size:13px;border:0;font-family:inherit;cursor:pointer}
.fp-theme.plus::before{display:none}
/* 24/09 (lot F) : carte d'une activité sans thématique (sans photo) : le libellé, lisible sur le dégradé */
.fp-theme.act span{font-size:13px}
.fp-theme .x{position:absolute;right:2px;top:2px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:0;padding:0;cursor:pointer;color:#fff;z-index:3}
.fp-theme .x i{position:static;width:26px;height:26px;background:rgba(16,19,27,.65);color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;border-radius:999px}
/* Entreprise vérifiée : la carte INSEE existante, rangée dans le bloc */
.fp-insee{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;font-size:13.5px;margin-top:6px} /* 24/09 : le libellé garde sa largeur, la valeur prend le reste (plus de « Forme » écrasé sous la SAS) */
.fp-insee span{color:var(--fp-muet);font-weight:600;white-space:nowrap}
.fp-insee b{color:var(--fp-nuit);font-weight:700;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.fp-insee-ape{margin-top:8px;font-size:12px;color:var(--fp-muet)}
.fp-insee-ape code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;background:var(--fp-fond);padding:1px 5px;border-radius:5px}
.fp-verrou{display:flex;align-items:center;gap:8px;background:var(--fp-fond);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--fp-texte);margin-top:8px}
.fp-verrou .fp-ic{color:var(--fp-bleu)}
.fp-verrou b{color:var(--fp-bleu)}
.fp-docs{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.fp-docs button{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:700;color:var(--fp-bleu);background:#fff;border:1px solid var(--fp-trait2);border-radius:999px;padding:0 12px;min-height:44px;cursor:pointer}
.fp-alerte{margin-top:8px;border-radius:10px;padding:9px 11px;font-size:12.5px;line-height:1.45}
.fp-alerte.rouge{background:var(--fp-rouge-p);color:#8a2b22}
.fp-alerte.ambre{background:#fdf3e0;color:#7a4f0f}
/* Avis */
.fp-note-grand{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}
.fp-note-grand .n{font-size:34px;font-weight:800;line-height:1}
.fp-etoiles{display:inline-flex;gap:2px}
.fp-etoiles .fp-ic{width:13px;height:13px;stroke:var(--fp-ambre);fill:var(--fp-ambre)}
.fp-etoiles .fp-ic.vide{fill:none}
.fp-distrib{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:4px 8px;align-items:center;font-size:12px;color:var(--fp-muet);margin-top:8px}
.fp-distrib i{display:block;height:6px;border-radius:999px;background:#eef2f7;position:relative;overflow:hidden}
.fp-distrib i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w,0);background:var(--fp-vert);border-radius:999px}
.fp-avis{border-top:1px solid #eef2f7;padding-top:10px;margin-top:10px}
.fp-avis .qui{display:flex;align-items:center;gap:8px;font-size:12.5px;min-width:0}
.fp-avis .qui a{font-weight:700;color:var(--fp-nuit);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:44px} /* 24/09/2026 (lot H) : cible de 44 px */
.fp-avis .qui .fp-etoiles{margin-left:auto}
.fp-avis .texte{margin-top:6px}
/* 24/09/2026 (lot H, btob : « Laisser un avis bien plus visible, en bleu ») : « Laisser un avis » bleu plein, toujours ; « Voir les N avis »
   en contour à côté, l'un sous l'autre au téléphone */
.fp-avis-btns{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:12px}
.fp-avis-btns .fp-btn{width:100%}
@media (min-width:560px){.fp-avis-btns{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-avis-btns.un{grid-template-columns:minmax(0,320px)}}
#bloc-avis .fp-vide .ico{color:var(--fp-ambre)}
/* Réalisations (24/09/2026, lot H, btob : « un portfolio ») : vignettes carrées de même taille, trois par rangée à toutes les largeurs,
   « +N » sur la sixième ; la case « + Ajouter » du propriétaire complète la dernière rangée (s1, s2, s3 = colonnes prises). */
.fp-reals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px}
.fp-real{position:relative;display:block;aspect-ratio:1;width:100%;border:0;padding:0;border-radius:10px;overflow:hidden;background:var(--fp-bleu-p);cursor:zoom-in;min-width:0;font:inherit}
.fp-real img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.fp-real:hover img{transform:scale(1.04)}
.fp-real:focus-visible{outline:3px solid var(--fp-vert);outline-offset:2px}
.fp-real .plus{position:absolute;inset:0;background:rgba(12,55,107,.72);color:#fff;font-weight:800;font-size:20px;display:flex;align-items:center;justify-content:center}
.fp-reals .fp-real-ajout{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:10px;background:var(--fp-bleu-p);color:var(--fp-bleu);text-align:center;min-height:64px;padding:6px;text-decoration:none;min-width:0}
.fp-reals .fp-real-ajout:hover{background:#dce6f3}
.fp-real-ajout b{display:inline-flex;align-items:center;gap:5px;font-size:13.5px;font-weight:800}
.fp-real-ajout small{font-size:11.5px;font-weight:700;color:var(--fp-texte)}
.fp-real-ajout.s1{aspect-ratio:1}
.fp-real-ajout.s2{grid-column:span 2}
.fp-real-ajout.s3{grid-column:1 / -1}
.fp-reals-tout{display:flex;width:100%;margin-top:10px}
@media (prefers-reduced-motion:reduce){.fp-real img{transition:none}}
/* Activité : la carte compacte du fil (.pp-post), que l'ancienne fiche portait dans son <style> en ligne et que la
   refonte avait perdue (24/09 : une publication s'affichait avec son image à taille naturelle). Portée ici, à la
   charte : en-tête (avatar 36 px, nom, « il y a … »), texte 14 px sur quatre lignes, médias BORNÉS (240 px de haut au
   téléphone, 320 au bureau, object-fit: cover), grille n1/n2/n3, « +N » en surimpression, pied d'actions de 44 px. */
#bloc-activite.hidden{display:none}
#bloc-activite #posts-container{max-width:640px}
.pp-post{background:#fff;border:1px solid var(--fp-trait);border-radius:12px;overflow:hidden;margin-top:10px;box-shadow:none;min-width:0}
.pp-post > a{display:block;color:inherit;text-decoration:none}
.pp-head{display:flex;align-items:center;gap:9px;padding:10px 12px 6px;min-width:0}
.pp-head img{width:36px;height:36px;border-radius:999px;object-fit:cover;background:var(--fp-trait);flex:none}
.pp-head .who{min-width:0;flex:1}
.pp-head b{display:block;font-size:14px;font-weight:700;color:var(--fp-nuit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp-head span{display:block;font-size:12px;font-weight:600;color:var(--fp-muet)}
.pp-txt{padding:0 12px 8px;font-size:14px;font-weight:500;line-height:1.45;color:var(--fp-nuit);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.pp-media{display:grid;gap:2px;background:var(--fp-trait);max-height:240px;overflow:hidden;min-width:0}
.pp-media.n1{grid-template-columns:minmax(0,1fr)}
.pp-media.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pp-media.n3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;height:240px}
.pp-media.n3 > :first-child{grid-row:span 2}
.pp-media img,.pp-media video{width:100%;height:100%;object-fit:cover;display:block;background:var(--fp-nuit);min-width:0}
.pp-media.n1 img,.pp-media.n1 video{height:auto;aspect-ratio:16/10;max-height:240px}
.pp-media.n2 img,.pp-media.n2 video{height:180px}
.pp-media.n3 img,.pp-media.n3 video{height:100%}
.pp-plus{position:relative;min-width:0;min-height:0}
.pp-plus::after{content:attr(data-plus);position:absolute;inset:0;background:rgba(12,55,107,.62);color:#fff;font-weight:800;font-size:18px;display:grid;place-items:center}
.pp-foot{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:0 6px;min-height:44px;border-top:1px solid #eef2f7;color:var(--fp-muet)}
.pp-foot button,.pp-foot .act,.pp-foot .txt{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12.5px;font-weight:700;color:var(--fp-muet);background:none;border:0;cursor:pointer;padding:0 10px;min-height:44px;border-radius:8px}
.pp-foot button:hover,.pp-foot .act:hover{background:var(--fp-fond);color:var(--fp-bleu)}
.pp-foot .sep{flex:1}
.pp-foot .txt{font-style:italic;font-weight:500;cursor:default}
.pp-foot .action-icon{min-width:44px;justify-content:center}
.pp-foot .btb-react{min-height:44px}
.pp-foot .btb-react-picker button{min-height:0;gap:0;padding:9px;border-radius:50%} /* taille de police héritée de reactions.css ; 9 px de marge = cible de 42-44 px */
.pp-foot .postShareMobile{display:inline-flex}
.pp-foot .postShareDesktop{display:none}
@media (min-width:640px){.pp-foot .postShareMobile{display:none}.pp-foot .postShareDesktop{display:inline-flex}}
.fp-activite-liens{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px} /* 24/09 : de vrais boutons sous la dernière publication */
.fp-activite-liens .fp-btn{width:auto;min-width:0;padding:0 14px}
.fp-activite-fin{margin:4px 0 0;font-size:13px;color:var(--fp-texte);width:100%} /* --fp-muet donne 4,4:1 sur le bloc : sous AA pour 13 px */
/* La nature de la publication, comme sur le fil général (24/09) */
.fp-kinds{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.fp-kinds .kind{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--fp-trait2);background:#fff;color:var(--fp-nuit);font-family:inherit;font-size:13px;font-weight:700;line-height:1.2;cursor:pointer}
.fp-kinds .kind.on{background:var(--fp-bleu);color:#fff;border-color:var(--fp-bleu)}
.pp-type{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--fp-vert-p);color:var(--fp-vert-f);font-size:11px;font-weight:700;font-style:normal}
.pp-type.besoin{background:var(--fp-bleu-p);color:var(--fp-bleu)}
.fp-signaler{text-align:center;margin:18px 0 0;font-size:12px;color:rgba(255,255,255,.72)}
.fp-signaler button{background:none;border:0;font:inherit;font-size:12.5px;color:inherit;cursor:pointer;min-height:44px;padding:0 10px}
.fp-signaler button:hover{text-decoration:underline}
.fp-qr{display:flex;flex-direction:column;align-items:center;gap:6px;margin:-8px 0 14px}
.fp-qr #btb-qr-code{width:132px;height:132px;padding:6px;background:#fff;border:1px solid var(--fp-trait2);border-radius:12px;display:grid;place-items:center}
.fp-qr #btb-qr-code img,.fp-qr #btb-qr-code canvas{width:120px;height:120px}
.fp-qr span{font-size:12px;color:var(--fp-muet)}

/* 7. Barre collante du bas (visiteur, ≤ 640 px) : n'apparaît que quand la rangée d'actions est sortie de
   l'écran, calée sur la hauteur réelle de la barre de navigation (--btb-h-barre-basse, navbar-ui.js). */
.fp-barre{display:none}
.fp-barre .btb-suivre .wl{display:none} /* 24/09/2026 (lot H) : « Suivre », le libellé court */
@media (max-width:640px){
  .fp-barre{display:flex;gap:8px;align-items:center;position:fixed;left:0;right:0;bottom:var(--btb-h-barre-basse,77px);z-index:9998;background:rgba(255,255,255,.97);border-top:1px solid var(--fp-trait);padding:10px 12px;transform:translateY(120%);transition:transform .25s ease,bottom .3s ease-in-out;box-shadow:0 -6px 20px -12px rgba(0,0,0,.35)}
  .fp-barre.on{transform:none}
  .fp-barre .fp-btn{flex:1;font-size:13px;padding:0 8px}
  .fp-barre .fp-btn.ico{flex:0 0 44px}
  .fp-barre .btb-suivre{flex:1;min-height:44px;border-radius:8px;justify-content:center;font-size:13px;border-color:var(--fp-trait);color:var(--fp-texte)}
  .fp-barre .btb-suivre.on{background:var(--fp-vert-p);color:var(--fp-vert-f);border-color:#bfe3c9}
  body.btb-navbas-cachee .fp-barre{bottom:0}
  body.fp-a-barre .fp-page{padding-bottom:110px}
}

/* 8. Feuilles de modification (propriétaire) : voile, panneau qui monte du bas, toujours au-dessus de la
   barre du bas ; champs de la charte (bord 2 px #e3e9f1, arrondi 12, focus marine + anneau vert). */
.fp-voile{position:fixed;inset:0;background:rgba(16,19,27,.5);z-index:10000}
.fp-feuille{position:fixed;left:0;right:0;bottom:var(--btb-h-barre-basse,77px);z-index:10001;background:#fff;border-radius:18px 18px 0 0;padding:10px 16px 0;box-shadow:0 -10px 30px rgba(16,19,27,.25);max-height:calc(100vh - var(--btb-h-entete-mobile,52px) - var(--btb-h-barre-basse,77px) - 8px);display:flex;flex-direction:column;font-family:"Gantari",ui-sans-serif,system-ui,sans-serif;color:var(--fp-nuit);font-size:14px;line-height:1.35;font-weight:600;transition:bottom .3s ease-in-out}
body.btb-navbas-cachee .fp-feuille{bottom:0;max-height:calc(100vh - var(--btb-h-entete-mobile,52px) - 8px)}
.fp-feuille *,.fp-feuille *::before,.fp-feuille *::after{box-sizing:border-box}
.fp-feuille .poignee{width:40px;height:4px;border-radius:999px;background:var(--fp-trait2);margin:0 auto 10px;flex:none}
.fp-feuille form{display:flex;flex-direction:column;min-height:0;flex:1} /* le corps défile, la rangée Annuler · Enregistrer reste visible */
.fp-feuille h3{margin:0 0 2px;font-size:16px;font-weight:800;color:var(--fp-nuit)}
.fp-feuille .aide{font-size:12.5px;color:var(--fp-muet);font-weight:600;margin-bottom:6px}
.fp-feuille-corps{overflow:auto;flex:1;min-height:0;padding-bottom:8px;-webkit-overflow-scrolling:touch}
.fp-champ{margin-top:10px}
.fp-champ label,.fp-champ .lbl{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;font-weight:700;color:var(--fp-nuit);margin-bottom:5px}
.fp-champ label small,.fp-champ .lbl small{color:var(--fp-muet);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.fp-champ input[type=text],.fp-champ input[type=tel],.fp-champ input[type=url],.fp-champ input[type=number],.fp-champ input[type=date],.fp-champ input[type=time],.fp-champ textarea,.fp-champ select{width:100%;border:2px solid var(--fp-trait);border-radius:12px;padding:10px 12px;font:inherit;font-size:15px;font-weight:500;color:var(--fp-nuit);background:#fff;min-height:44px;outline:0;-webkit-appearance:none;appearance:none}
.fp-champ input[type=time],.fp-champ input[type=date]{padding:8px 10px;font-size:14px}
.fp-champ textarea{min-height:96px;line-height:1.4;resize:vertical}
.fp-champ input:focus,.fp-champ textarea:focus,.fp-champ select:focus{border-color:var(--fp-bleu);box-shadow:0 0 0 3px rgba(138,191,86,.35)}
.fp-champ.err input,.fp-champ.err textarea,.fp-champ.err select{border-color:var(--fp-rouge)}
.fp-champ .aide2{font-size:11.5px;color:var(--fp-muet);font-weight:600;margin-top:5px}
.fp-champ .lecture{border:2px solid var(--fp-trait);border-radius:12px;padding:10px 12px;font-size:14px;font-weight:500;color:var(--fp-muet);background:var(--fp-fond);min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.fp-champ .lecture a{color:var(--fp-bleu);font-weight:700;min-height:32px;display:inline-flex;align-items:center}
.fp-erreur{display:none;color:var(--fp-rouge);font-size:12.5px;font-weight:700;margin-top:5px}
/* 24/09 (lot F) : texte trop long — compteur rouge, champ bordé de rouge, encadré sous le champ */
.fp-champ label small.trop,.fp-champ .lbl small.trop{color:var(--fp-rouge);font-weight:800}
.fp-champ.trop input,.fp-champ.trop textarea{border-color:var(--fp-rouge)}
.fp-trop{margin-top:6px;padding:8px 10px;border-radius:10px;background:var(--fp-rouge-p);color:#8a2b22;font-size:12.5px;font-weight:700;line-height:1.35}
.fp-trop[hidden]{display:none}
.fp-erreur.on{display:block}
.fp-feuille .sauver{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid #eef2f7;background:#fff;flex:none}
.fp-feuille .sauver .fp-btn{min-height:46px;width:100%}
.fp-feuille .sauver .fp-btn[disabled]{opacity:.6;cursor:wait}
.fp-radio{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-top:1px solid #eef2f7;cursor:pointer;min-height:44px}
.fp-radio:first-of-type{border-top:0}
.fp-radio input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:var(--fp-bleu)}
.fp-radio .t{flex:1;min-width:0;overflow-wrap:anywhere}
.fp-feuille-corps{overflow-x:hidden}
.fp-radio .t b{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--fp-nuit)}
.fp-radio .t small{display:block;font-size:12px;color:var(--fp-muet);font-weight:600;margin-top:2px;line-height:1.35;white-space:normal} /* 24/09 : au téléphone, la règle « label small » (nowrap) coupait les descriptions */
.fp-case{display:flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;border-top:1px solid #eef2f7;font-size:13.5px;cursor:pointer}
.fp-case:first-of-type{border-top:0}
.fp-case input{width:20px;height:20px;flex:none;accent-color:var(--fp-bleu)}
.fp-case span{flex:1;min-width:0;overflow-wrap:anywhere}
.fp-case input[disabled]+span{color:var(--fp-muet)}
.fp-jour{display:grid;grid-template-columns:24px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:6px;align-items:center;padding:6px 0;border-top:1px solid #eef2f7;font-size:13px}
.fp-jour:first-of-type{border-top:0}
.fp-jour input[type=checkbox]{width:20px;height:20px;accent-color:var(--fp-bleu);margin:0}
.fp-jour .nom{font-weight:700;min-width:0}
.fp-jour input[type=time]{width:100%;border:2px solid var(--fp-trait);border-radius:10px;padding:6px 6px;font:inherit;font-size:13px;min-height:40px;color:var(--fp-nuit);background:#fff;outline:0}
.fp-jour input[type=time]:focus{border-color:var(--fp-bleu);box-shadow:0 0 0 3px rgba(138,191,86,.35)}
.fp-jour.ferme input[type=time]{opacity:.45}
.fp-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.fp-toast{position:fixed;left:50%;bottom:calc(var(--btb-h-barre-basse,77px) + 16px);transform:translateX(-50%);background:var(--fp-vert-p);color:var(--fp-vert-f);border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;z-index:10002;box-shadow:0 8px 20px rgba(0,0,0,.2);font-family:"Gantari",sans-serif}

/* Le propriétaire en « Vue visiteur » : la bande, les crayons, les coordonnées et les états vides disparaissent. */
body.fp-vue-visiteur .fp-proprio{display:none !important}
body:not(.fp-vue-visiteur) .fp-apercu{display:none !important}
body.fp-vue-visiteur .fp-vide-visiteur{display:none !important}

/* Tablette : l'en-tête respire */
@media (min-width:640px){
  .fp-page{padding-left:16px;padding-right:16px}
  .fp-onglets{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}
  .fp-carte-id{margin-left:16px;margin-right:16px}
  .fp-avatar{width:96px;height:96px}
  .fp-nomz h1{font-size:26px}
  .fp-themes{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* 9. Ordinateur : deux colonnes, la droite (300 px) porte Infos pratiques, Entreprise vérifiée et Documents ; depuis le 24/09/2026 (lot H,
   btob) elle n'est plus collée : elle défile avec la page, comme la colonne de gauche */
@media (min-width:1024px){
  .fp-page{padding-top:18px;padding-left:24px;padding-right:24px} /* le corps est déjà décalé de la barre fixe par navbar.css */
  .fp-bande{margin-bottom:14px}
  .fp-couv{height:210px}
  /* 24/09 (retour de btob : « de l'espace blanc » à droite de la carte) : deux colonnes, les actions empilées à droite et
     alignées en bas ; seule la dernière ligne (1fr) absorbe leur hauteur, les lignes de gauche gardent leur rythme */
  .fp-carte-id{margin:-56px 20px 0;padding:0 24px 16px;border-radius:18px;display:grid;grid-template-columns:minmax(0,1fr) 240px;grid-template-rows:repeat(5,auto) 1fr;column-gap:24px}
  .fp-carte-id > *{grid-column:1;min-width:0}
  .fp-carte-id > .fp-actions{grid-column:2;grid-row:1 / -1;align-self:end;display:flex;flex-direction:column;gap:8px;padding-top:0}
  .fp-ident{gap:16px;margin-top:0} /* dans la grille les marges ne fusionnent plus : la marge négative de la carte suffit, l'avatar part du haut de la carte comme avant */
  .fp-avatar{width:112px;height:112px;border-width:4px}
  .fp-nomz h1{font-size:30px}
  .fp-sousnom,.fp-slogan{font-size:14px}
  .fp-actions .fp-btn{width:100%;min-width:0}
  .fp-actions.trois .fp-btn{font-size:13.5px;padding:0 14px}
  .fp-onglets{top:var(--btb-hauteur-navbar,94px);margin-left:-24px;margin-right:-24px;padding-left:24px;padding-right:24px;border-radius:0}
  .fp-onglets a{font-size:14px;min-height:40px;padding:0 16px}
  .fp-colonnes{grid-template-columns:minmax(0,1fr) 300px;column-gap:18px;align-items:start}
  .fp-colonnes > .fp-bloc,.fp-colonnes > .fp-signaler{grid-column:1}
  .fp-droite{display:block;grid-column:2;grid-row:1 / span 40;align-self:start;min-width:0}
  .fp-bloc{padding:16px 18px;scroll-margin-top:calc(var(--btb-hauteur-navbar,94px) + 70px)}
  .fp-themes{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fp-droite .fp-themes{grid-template-columns:repeat(2,minmax(0,1fr))}
  #map.fp-carte{height:150px}
  .pp-media{max-height:320px}
  .pp-media.n1 img,.pp-media.n1 video{max-height:320px}
  .pp-media.n2 img,.pp-media.n2 video{height:220px}
  .pp-media.n3{height:320px}
  .fp-feuille{left:50%;right:auto;bottom:auto;top:50%;transform:translate(-50%,-50%);width:540px;max-width:calc(100vw - 32px);border-radius:18px;max-height:min(86vh,760px);padding:14px 22px 0}
  body.btb-navbas-cachee .fp-feuille{bottom:auto;max-height:min(86vh,760px)}
  .fp-feuille .poignee{display:none}
  .fp-toast{bottom:24px}
}
@media (prefers-reduced-motion: reduce){.fp-page *,.fp-barre,.fp-feuille{transition:none !important}}

/* ── Portés de l'ancien « Mon profil » (24/09/2026) : présence, rappel Jober, partage d'un avis, composeur ── */
.fp-presence:empty{display:none}
.fp-presence > span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-weight:600;font-size:12px;padding:3px 10px;background:#e7f6ea;color:#1f7a3a;white-space:nowrap}
.fp-presence > span.text-xs{background:none;color:#67748a;font-weight:500;padding:3px 0}
.fp-presence span.bg-green-500{display:inline-block;width:7px;height:7px;border-radius:50%;background:#8abf56}
.fp-rappel{margin-top:12px;padding:12px 14px;border-radius:12px;background:#eef6ff;border:1px solid #bcd7f5;color:#1e3a5f;font-size:13.5px;line-height:1.5}
.fp-rappel b{display:block;margin-bottom:4px;color:#0c376b}
.fp-rappel a{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;padding:0 16px;border-radius:10px;background:#0c376b;color:#fff;font-weight:700;text-decoration:none}
.fp-avis-partage{display:flex;justify-content:flex-end;margin-top:8px}
.btb-partager-avis{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #0c376b;border-radius:999px;background:#fff;color:#10131b;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background-color .15s,color .15s}
.btb-partager-avis:hover,.btb-partager-avis:focus-visible{background:#0c376b;color:#fff}
.btb-cp.fp-proprio{margin-bottom:14px}
.btb-cp-progression{margin-top:10px}
.btb-cp-progression .barre{width:100%;background:#e3e9f1;border-radius:999px;overflow:hidden}
.btb-cp-progression .barre > div{background:#0c376b;color:#fff;font-size:11px;line-height:1;padding:4px 0;text-align:center;min-width:2em}
.btb-cp-progression .etat{font-size:12px;color:#67748a;margin-top:4px}
/* 24/09 (lot F) : boutons du propriétaire au téléphone, l'icône au-dessus (« Carte de visite / Flyers » garde toute la largeur).
   En fin de feuille : la règle .fp-actions.trois .fp-btn, plus bas avant, l'annulait. */
@media (max-width:640px){.fp-actions.fp-proprio .fp-btn,.fp-actions.fp-proprio.trois .fp-btn{flex-direction:column;gap:3px;padding:6px 4px;min-height:56px;font-size:12px}}
