/* Les maquettes de l'app (public/site/app-fidele.js). Couleurs et polices : la charte de l'app
   (src/app/[locale]/globals.css, `:root:has([data-farm-app])`). L'écran est dessiné à la taille réelle de l'app puis réduit. */
.fa{width:100%;--fa-bg:#FBF8F1;--fa-fg:#2B1A0E;--fa-pri:#94450C;--fa-priin:#FFF9EC;--fa-soft:#F5E6D3;--fa-softfg:#7B3909;--fa-mut:#F6F0E3;--fa-mfg:#6F5D4C;--fa-sub:#9C8A78;--fa-bd:#E9E0CD;--fa-in:#D8CBB0}
.fa-lid{background:#2B1A0E;border-radius:14px 14px 4px 4px;padding:9px 9px 11px;box-shadow:0 30px 60px rgba(43,26,14,.25)}
.fa-view{position:relative;overflow:hidden;aspect-ratio:1200/750;border-radius:5px;background:var(--fa-bg)}
.fa-basis{height:12px;margin:0 -4%;background:linear-gradient(#D9C7AA,#B9A383);border-radius:0 0 18px 18px}
.fa-screen{position:absolute;left:0;top:0;width:1200px;height:750px;transform-origin:0 0;display:flex;background:var(--fa-bg);color:var(--fa-fg);font:400 14px/1.4 "DM Sans",system-ui,sans-serif;text-align:left;-webkit-font-smoothing:antialiased}
.fa-screen *{box-sizing:border-box}
.fa-screen h1,.fa-screen h2,.fa-screen b{font-family:"Poppins","DM Sans",system-ui,sans-serif}
.fa-screen h1,.fa-screen h2{margin:0;letter-spacing:0;text-transform:none;color:var(--fa-fg);font-weight:600}
.fa-screen p{margin:0;max-width:none}
.fa-i{flex:none;display:inline-block;vertical-align:-3px}
/* barre latérale */
.fa-side{width:262px;flex:none;background:var(--fa-mut);border-right:1px solid var(--fa-bd);padding:10px 8px;position:relative}
.fa-logo{height:44px;display:flex;align-items:center;gap:8px;padding:0 10px}
.fa-logo img{height:34px;width:auto}
.fa-wm{font:400 25px "Luckiest Guy",Impact,sans-serif;letter-spacing:.01em}
.fa-cta{margin:4px 0 8px;height:40px;border-radius:10px;background:var(--fa-pri);color:var(--fa-priin);display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:14.5px;box-shadow:0 2px 0 rgba(43,26,14,.18)}
.fa-it{display:flex;align-items:center;gap:12px;height:32px;padding:0 12px;border-radius:9px;color:var(--fa-mfg);font-size:14px;font-weight:500}
.fa-it.on{background:#fff;color:var(--fa-fg);font-weight:600;box-shadow:0 1px 2px rgba(43,26,14,.07)}
.fa-grp{display:flex;justify-content:space-between;align-items:center;padding:10px 12px 3px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fa-mfg)}
.fa-in{width:18px;height:18px;border-radius:4px;border:1.6px solid currentColor;font:700 10px/14px "Poppins",sans-serif;text-align:center;flex:none}
.fa-use{position:absolute;left:8px;right:8px;bottom:10px;background:#fff;border:1px solid var(--fa-bd);border-radius:12px;padding:8px 12px 10px;font-size:12.5px;color:var(--fa-mfg)}
.fa-urow{display:flex;justify-content:space-between;margin-top:5px}
.fa-urow b{font:600 12.5px "DM Sans",sans-serif;color:var(--fa-fg)}
.fa-ubar{height:5px;background:#EFE6D3;border-radius:9px;overflow:hidden;margin-top:3px}
.fa-ubar i{display:block;height:100%;background:var(--fa-pri)}
.fa-uplan{margin-top:7px;font-size:12px;color:var(--fa-pri)}
.fa-uplan b{font:600 12px "DM Sans",sans-serif}
/* corps */
.fa-main{flex:1;min-width:0;display:flex;flex-direction:column}
.fa-top{height:52px;flex:none;border-bottom:1px solid var(--fa-bd);display:flex;align-items:center;gap:9px;padding:0 20px;color:var(--fa-mfg);font-size:14px}
.fa-top .cur{color:var(--fa-fg);font-weight:600}
.fa-sep{width:1px;height:18px;background:var(--fa-bd);margin:0 5px}
.fa-page{flex:1;overflow:hidden;padding:24px 28px}
.fa-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}
.fa-head h1{font-size:27px;line-height:1.15}
.fa-head>div:first-child{min-width:0}
.fa-head .fa-btns .fa-btn{padding:0 12px;font-size:13px;height:36px}
.fa-head h1{max-width:430px}
.fa-sub{margin-top:5px;color:var(--fa-mfg);font-size:14.5px}
.fa-btns{display:flex;gap:10px;flex:none}
.fa-btns.l{margin:14px 0 8px}
.fa-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:1px solid var(--fa-in);border-radius:10px;background:#fff;font-weight:600;font-size:14px;color:var(--fa-fg);white-space:nowrap}
.fa-btn.pri{background:var(--fa-pri);border-color:var(--fa-pri);color:var(--fa-priin)}
.fa-btn.dim{opacity:.55}
.fa-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 11px;border-radius:999px;font-size:12.5px;font-weight:600;background:#EFE6D3;color:var(--fa-mfg);white-space:nowrap}
.fa-pill.soft{background:var(--fa-soft);color:var(--fa-softfg)}
.fa-pill.ok{background:#E4F2E9;color:#20613A}
.fa-pill.warn{background:#FBEFD7;color:#8A5410}
.fa-pill.dot::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.fa-pill.burning{background:#FDE3E3;color:#A12A2C}
.fa-pill.hot{background:#FBE6D6;color:#A5481A}
.fa-pill.warm{background:#FBF0CC;color:#7A5A00}
.fa-card{background:#fff;border:1px solid var(--fa-bd);border-radius:12px}
.fa-fade{opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .45s ease}
.fa-fade.is-on{opacity:1;transform:none}
.fa-screen [data-w]{transition:width 1s ease-out}
.fa-link,.lk{color:var(--fa-pri);font-weight:600}
@media (prefers-reduced-motion:reduce){.fa-fade{opacity:1;transform:none;transition:none}.fa-screen [data-w]{transition:none}}
/* lancer une campagne */
.fa-wrapcol{max-width:880px}
.fa-step{margin-bottom:12px}
.fa-stepn{color:var(--fa-mfg);font-size:14px}
.fa-step h2{font-size:24px;line-height:1.2;margin:3px 0 4px}
.fa-base{font-size:14.5px;margin-bottom:10px;color:var(--fa-fg)}
.fa-h3{font:600 16px "Poppins",sans-serif;margin:6px 0 10px}
.fa-pc{background:#fff;border:1px solid #D9C3A5;border-radius:14px;padding:15px 18px;margin-bottom:11px}
.fa-pcrow{display:flex;gap:14px;align-items:flex-start}
.fa-chk{width:22px;height:22px;border-radius:6px;background:var(--fa-pri);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none;margin-top:3px}
.fa-chk.off{background:#fff;border:2px solid var(--fa-in)}
.fa-pcmain{flex:1;min-width:0}
.fa-pcname{display:flex;align-items:center;gap:10px}
.fa-pcname b{font-size:17px;font-weight:600}
.fa-pcjob{color:var(--fa-mfg);font-size:14.5px;margin-top:1px}
.fa-pcwhy{color:var(--fa-sub);font-size:13.5px;margin-top:2px}
.fa-pcshow{color:var(--fa-pri);font-weight:600;font-size:14.5px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.fa-pcmsg{margin:12px 0 0 36px;display:flex;flex-direction:column;gap:8px}
.fa-post{background:var(--fa-mut);border-radius:10px;padding:10px 12px}
.fa-post b{display:block;font:600 11px "DM Sans",sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--fa-mfg)}
.fa-post p{margin:3px 0;font-size:14px}
.fa-lbl{font:600 11px "DM Sans",sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--fa-mfg)}
.fa-bubble{background:var(--fa-bg);border-radius:10px;padding:12px 14px;font-size:15px}
.fa-bubble .fa-soft{color:var(--fa-mfg);margin-top:6px}
.fa-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid var(--fa-bd);border-radius:12px;padding:10px 14px;margin-top:6px;font-weight:500}
.fa-src{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1.5px solid var(--fa-bd);border-radius:14px;padding:13px 16px;margin-bottom:10px}
.fa-src.on{background:#F7EEE2;border-color:var(--fa-pri)}
.fa-srcm{flex:1;min-width:0}
.fa-srcm b{font-size:17px;font-weight:500}
.fa-srcm p{color:var(--fa-mfg);font-size:14.5px;margin-top:3px;line-height:1.45}
.fa-srcc{text-align:right;font-size:14px;color:var(--fa-fg);max-width:250px;line-height:1.5}
/* résultats */
.fa-tabs{display:flex;gap:26px;border-bottom:1px solid var(--fa-bd);margin-bottom:12px}
.fa-tabs span{padding:6px 2px 9px;color:var(--fa-mfg);font-size:15px}
.fa-tabs .on{color:var(--fa-fg);font-weight:600;box-shadow:0 2px 0 var(--fa-pri)}
.fa-per{display:flex;gap:8px;margin-bottom:12px}
.fa-per span{padding:4px 14px;border:1px solid var(--fa-bd);border-radius:999px;font-size:14px;color:var(--fa-mfg);background:#fff}
.fa-per .on{background:var(--fa-pri);border-color:var(--fa-pri);color:var(--fa-priin)}
.fa-funnel{overflow:hidden}
.fa-fh{display:flex;align-items:baseline;gap:12px;padding:12px 16px}
.fa-fh b{font-size:17px;font-weight:600}
.fa-fh small{color:var(--fa-mfg);font-size:13px}
.fa-funs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:0 14px 14px}
.fa-fun{border:1px solid var(--fa-bd);border-radius:12px;padding:9px 10px;background:#fff}
.fa-fun.sel{border:2px solid var(--fa-pri);padding:8px 9px}
.fa-funh{display:flex;align-items:center;gap:7px;color:var(--fa-mfg);font-size:12.5px;font-weight:500}
.fa-funn{display:inline-block;font-size:26px;font-weight:600;line-height:1.2;margin:4px 0 0;border-bottom:2px solid var(--fa-fg)}
.fa-fun small{display:block;color:var(--fa-mfg);font-size:11.5px;line-height:1.3;margin-top:4px;min-height:30px}
.fa-fbar{height:5px;background:#EFE6D3;border-radius:9px;overflow:hidden}
.fa-fbar i{display:block;height:100%;background:#B98B64;border-radius:9px}
.fa-fsub{display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--fa-bd);background:#FCFAF4}
.fa-fsub b{font-size:16px;font-weight:600}
.fa-thead,.fa-trow{display:grid;grid-template-columns:1.25fr 1.5fr 1.35fr 1.6fr .95fr 1.05fr 22px;gap:10px;align-items:center;padding:9px 16px}
.fa-thead{background:var(--fa-mut);border-top:1px solid var(--fa-bd);font-size:12.5px;font-weight:600;color:var(--fa-mfg)}
.fa-trow{border-top:1px solid var(--fa-bd);font-size:13.5px}
.fa-trow b{font-weight:600;font-size:14px}
.fa-trow .m{color:var(--fa-mfg)}
/* campagnes */
.fa-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.fa-stats.s3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fa-stat{padding:11px 14px}
.fa-stat b{display:block;font-size:26px;font-weight:600;line-height:1.2;margin-top:2px}
.fa-stat small{color:var(--fa-mfg);font-size:12.5px}
.fa-stat.hl{border-color:#F0D36A;box-shadow:0 0 0 1px #F0D36A}
.fa-filters{display:flex;gap:9px;align-items:center;margin-bottom:12px}
.fa-search{display:inline-flex;align-items:center;gap:8px;width:245px;height:36px;padding:0 12px;border:1px solid var(--fa-bd);border-radius:10px;background:#fff;color:var(--fa-sub);font-size:14px}
.fa-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 13px;border:1px solid var(--fa-bd);border-radius:999px;background:#fff;font-size:14px;color:var(--fa-mfg)}
.fa-chip i{font-style:normal;font-size:12px;opacity:.7}
.fa-chip.on{background:var(--fa-fg);border-color:var(--fa-fg);color:#fff}
.fa-ctable{overflow:hidden}
.fa-chead,.fa-crow{display:grid;grid-template-columns:1.6fr .8fr 1.7fr .7fr .9fr 1fr 1.05fr 20px;gap:10px;align-items:center;padding:10px 16px}
.fa-chead{background:var(--fa-mut);font-size:12.5px;font-weight:600;color:var(--fa-mfg);border-bottom:1px solid var(--fa-bd)}
.fa-crow{border-top:1px solid var(--fa-bd);font-size:13.5px}
.fa-crow:first-of-type{border-top:0}
.fa-crow b{font-weight:600;font-size:14px}
.fa-crow small,.fa-prog small{display:block;color:var(--fa-mfg);font-size:12px;line-height:1.35}
.fa-crow .r,.fa-chead .r{text-align:right}
.fa-pbar{display:flex;height:5px;width:140px;background:#EFE6D3;border-radius:9px;overflow:hidden;margin-bottom:4px}
.fa-pbar i{display:block;height:100%;background:var(--fa-pri)}
.fa-pbar .g{background:#2E7D50}
/* une campagne */
.fa-seqcard{overflow:hidden}
.fa-seqbody{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:18px;padding:14px 16px 18px;align-items:start}
.fa-seq{display:flex;gap:12px;margin-bottom:9px}
.fa-no{flex:none;width:30px;height:30px;border-radius:8px;background:var(--fa-soft);color:var(--fa-softfg);font:600 14px "Poppins",sans-serif;display:inline-flex;align-items:center;justify-content:center}
.fa-no.f{background:var(--fa-mut);color:var(--fa-sub)}
.fa-seqm{flex:1;min-width:0}
.fa-seqc{display:flex;align-items:center;gap:10px;background:var(--fa-mut);border:1px solid var(--fa-bd);border-radius:10px;padding:8px 12px;min-height:38px}
.fa-seqc b{font-weight:600;font-size:14px;white-space:nowrap}
.fa-seqc .t{flex:1;min-width:0;color:var(--fa-mfg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px}
.fa-seqc small{color:var(--fa-mfg);font-size:12.5px;white-space:nowrap}
.fa-fsub2{display:flex;align-items:center;gap:8px;margin:5px 0 0 6px;color:var(--fa-mfg);font-size:12.5px}
.fa-fsub2 small{font-size:12.5px;color:var(--fa-mfg)}
.fa-replied{border:1.5px dashed var(--fa-in);border-radius:12px;padding:12px 14px;background:#FCFAF4;font-size:13px;color:var(--fa-mfg);display:flex;flex-direction:column;gap:7px}
.fa-replied>b{display:flex;gap:8px;align-items:center;color:var(--fa-fg);font-size:15px}
.fa-replied p b{color:var(--fa-fg);font-size:13px;font-family:"DM Sans",sans-serif}
.fa-lim{padding:14px 16px;margin-bottom:12px}
.fa-limh{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.fa-limh b{font-size:15px;font-weight:600}
.fa-limp{font-size:14.5px;margin-bottom:9px}
.fa-limp.mut{color:var(--fa-mfg);margin-top:9px}
.fa-meters{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fa-mrow{display:flex;justify-content:space-between;font-size:12.5px;color:var(--fa-mfg);margin-bottom:5px}
.fa-mrow b{font:600 12.5px "DM Sans",sans-serif;color:var(--fa-fg)}
.fa-mbar{height:7px;border-radius:9px;background:#EFE6D3;overflow:hidden}
.fa-mbar i{display:block;height:100%;border-radius:9px}
.fa-mbar .a{background:#B87414}.fa-mbar .b{background:var(--fa-pri)}
.fa-lims{font-size:14.5px}.fa-lims u{margin-right:14px}.fa-lims .m{color:var(--fa-mfg)}
/* réponses */
.fa-thread{padding:16px 18px;overflow:hidden}
.fa-th{display:flex;gap:14px;align-items:flex-start}
.fa-th b{font-size:19px;font-weight:600}
.fa-th .fa-sub{margin:2px 0 6px}
.fa-av{width:46px;height:46px;border-radius:50%;background:#EADFC8;color:var(--fa-mfg);display:inline-flex;align-items:center;justify-content:center;font:600 15px "DM Sans",sans-serif;flex:none}
.fa-av.s{width:34px;height:34px;font-size:12px;background:var(--fa-soft);color:var(--fa-softfg)}
.fa-tmeta{font-size:14px;color:var(--fa-mfg);padding-bottom:10px;border-bottom:1px solid var(--fa-bd)}
.fa-tl{padding:6px 0;display:flex;flex-direction:column}
.fa-sys{text-align:center;color:var(--fa-mfg);font-size:13px;margin:3px 0}
.fa-dt{text-align:center;margin:5px 0}
.fa-dt span{display:inline-block;padding:2px 14px;border-radius:999px;background:var(--fa-mut);color:var(--fa-mfg);font-size:13px}
.fa-you,.fa-her{max-width:76%;border-radius:14px;padding:9px 14px;font-size:14.5px;margin:6px 0}
.fa-you{align-self:flex-end;background:#F3EBE0}
.fa-her{align-self:flex-start;background:#fff;border:1px solid var(--fa-bd)}
.fa-who{font-size:12.5px;color:var(--fa-mfg);font-weight:500;margin-bottom:2px}
.fa-comp{display:flex;gap:12px;align-items:flex-end;border-top:1px solid var(--fa-bd);padding-top:12px}
.fa-ta{flex:1;min-height:60px;border:1px solid var(--fa-in);border-radius:10px;background:var(--fa-bg);padding:10px 12px;font-size:14.5px;position:relative}
.fa-ta .ph{color:var(--fa-sub)}
.fa-ta .fa-draft{display:block;position:absolute;left:12px;right:12px;top:10px;color:var(--fa-fg);background:var(--fa-bg)}
.fa-comph{display:flex;align-items:center;gap:14px;margin-top:9px}
.fa-comph small{color:var(--fa-mfg);font-size:12.5px}
/* profils surveillés */
.fa-stable{overflow:hidden}
.fa-srow{display:grid;grid-template-columns:34px 1.5fr 1fr 1.1fr .8fr .8fr 20px;gap:12px;align-items:center;padding:11px 16px;border-top:1px solid var(--fa-bd)}
.fa-srow:first-child{border-top:0}
.fa-srm b{display:block;font-weight:600;font-size:14.5px}
.fa-srm small{color:var(--fa-mfg);font-size:12.5px}
.fa-srow .sg{font-size:13.5px}
.fa-srow .r{text-align:right;color:var(--fa-mfg)}
/* dans la page du site */
.mx .fa{max-width:820px;margin-inline:auto}
