:root{--bg:#eaf0fd;--card:#fff;--ink:#101b3b;--mute:#5b6685;--blue:#2653d9;--yellow:#f6d455;--field:#f4f6fc;--line:#e3e8f5;--shadow:0 2px 10px rgba(16,27,59,.1);box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
:root{color-scheme:light}
*{box-sizing:border-box}html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Plus Jakarta Sans",system-ui,-apple-system,sans-serif;font-size:16px;min-height:100vh;min-height:100dvh}
button,input,textarea{font:inherit;color:inherit}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--card);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 18px;gap:8px}
.wel{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}
.wel-top{background:var(--yellow);border-radius:0 0 44px 44px;padding:18px 22px 0;display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden}
.wel-top::before,.wel-top::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.3)}
.wel-top::before{width:230px;height:230px;top:-70px;right:-70px}.wel-top::after{width:150px;height:150px;left:-60px;bottom:50px;background:rgba(255,255,255,.22)}
.wel-top .logo{align-self:flex-start;color:#101b3b;position:relative;z-index:1}
.wel-bot{position:relative;z-index:1;width:min(236px,58vw);height:auto;margin:10px 0 -6px;animation:float 4.5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){.wel-bot{animation:none}}
.wel-body{max-width:520px;width:100%;margin:0 auto;padding:30px 22px calc(28px + env(safe-area-inset-bottom,0px));text-align:center;flex:1;display:flex;flex-direction:column;align-items:center}
.wel-body h1{font-size:34px;line-height:1.12}
.eyebrow{font-weight:700;font-size:14px;color:var(--blue);background:#e4ecff;border-radius:999px;padding:6px 14px;margin-bottom:14px}
.wel-body p{color:var(--mute);font-size:17px;line-height:1.5;margin:12px 0 24px}
.wel-list{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:10px;width:100%;text-align:left}
.wel-list li{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:24px;padding:14px 18px;box-shadow:var(--shadow);font-weight:700}
.wel-list small{display:block;font-weight:400;color:var(--mute);font-size:14px;margin-top:2px}
.wel-list .i{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;flex:none;background:#fff3c9;color:#101b3b}.wel-list li:nth-child(2) .i{background:#e4ecff;color:var(--blue)}
.wel-act{position:sticky;bottom:0;width:calc(100% + 44px);margin:auto -22px 0;padding:18px 22px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(to bottom,rgba(232,238,252,0),var(--bg) 28%);display:flex;flex-direction:column;align-items:center;z-index:3}.wel-act .btn.ghost{margin-top:4px}
.wel-body .cta{width:100%;max-width:340px;justify-content:center}.wel-body .btn.ghost{margin-top:10px}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;white-space:nowrap}
.av img.ph,.chip.em img.ph{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.av img.ic,.chip.em img.ic{width:62%;height:62%;object-fit:contain;display:block}.chip.em{overflow:hidden}label.chip.em.up{display:inline-flex;margin:0;color:var(--blue);border-style:dashed;font-weight:500}.av{overflow:hidden}
.av svg,.chip.em svg{width:60%;height:60%;display:block}
.dot{width:36px;height:36px;border-radius:50%;background:var(--blue);display:grid;place-items:center}.dot i{width:12px;height:12px;border-radius:50%;background:var(--yellow)}
.wrap{max-width:640px;margin:0 auto;padding:24px 18px 60px}
h1{font-size:34px;font-weight:800;margin:0;line-height:1.1}.sub{color:var(--mute);margin:6px 0 0;font-size:18px}
.head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:24px}
.btn{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:999px;padding:11px 18px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.btn.y{background:var(--yellow);border-color:var(--yellow);color:#101b3b}.btn.b{background:var(--blue);border-color:var(--blue);color:#fff}.btn.ghost{box-shadow:none;border-color:transparent;background:none}
.btn:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.card{background:var(--card);border-radius:34px;box-shadow:var(--shadow);padding:24px;margin-bottom:18px}
.row{display:flex;align-items:center;gap:14px}.av{width:56px;height:56px;border-radius:50%;background:#fff6d6;display:grid;place-items:center;font-size:28px;flex:none}
.name{font-weight:800;font-size:20px}.mute{color:var(--mute)}
.pill{margin-left:auto;border-radius:999px;padding:6px 14px;font-weight:600;font-size:14px;background:var(--yellow);color:#101b3b}.pill.off{background:var(--field);color:var(--mute)}
.acts{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.empty{text-align:center;color:var(--mute);padding:30px 10px;line-height:1.5}
.pill{white-space:nowrap;flex:none}
.steps{display:grid;gap:12px;margin-bottom:30px}
.step{display:flex;gap:14px;align-items:flex-start;background:var(--card);border-radius:28px;padding:18px 20px;box-shadow:var(--shadow)}
.step .n{width:36px;height:36px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;flex:none;font-weight:800}
.step strong{font-size:17px}.step p{margin:3px 0 0;color:var(--mute);line-height:1.45;font-size:15px}
.tpls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:30px}
.tpl{border:1px solid var(--line);background:var(--card);border-radius:26px;padding:18px 12px;cursor:pointer;box-shadow:var(--shadow);font-weight:600;display:flex;flex-direction:column;gap:6px;align-items:center}.tpl span{font-size:32px}.tpl small{font-weight:400;color:var(--mute);font-size:13px}
.faq details{background:var(--card);border-radius:24px;box-shadow:var(--shadow);margin-bottom:10px;padding:0 20px}
.faq summary{cursor:pointer;font-weight:600;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:24px;line-height:1;color:var(--blue);flex:none;width:24px;height:24px;display:grid;place-items:center;padding-bottom:3px;box-sizing:border-box;transition:transform .2s}.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 0 18px;color:var(--mute);line-height:1.55}
.tpl:focus-visible,.faq summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:24px}
.tpl{transition:transform .15s;padding:18px 12px 16px}.tpl:active{transform:scale(.97)}
.tpl .ill{width:76px;height:76px;border-radius:26px;display:grid;place-items:center;margin-bottom:4px}.tpl .ill svg{width:52px;height:52px}
.tpl b{font-weight:800;font-size:16px}.tpl small{text-align:center;line-height:1.35}.tpl em{font-style:normal;color:var(--blue);font-weight:600;font-size:13px;margin-top:2px}
.cta,.fab{background:#101b3b;color:#fff;border:0;border-radius:999px;font-weight:800;font-size:17px;padding:8px 24px 8px 8px;display:inline-flex;align-items:center;gap:12px;cursor:pointer;box-shadow:0 8px 20px rgba(16,27,59,.35)}
.cta b,.fab b{width:42px;height:42px;border-radius:50%;background:var(--yellow);color:#101b3b;display:grid;place-items:center;font-size:28px;line-height:1;font-weight:800}
.hero .cta{background:#101b3b;color:#fff;animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 8px 20px rgba(16,27,59,.35),0 0 0 0 rgba(16,27,59,.4)}70%,100%{box-shadow:0 8px 20px rgba(16,27,59,.35),0 0 0 16px rgba(16,27,59,0)}}
@media (prefers-reduced-motion:reduce){.hero .cta{animation:none}}
.fab{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:6}
.cta:focus-visible,.fab:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.wrap{padding-bottom:110px}
.cta b svg,.fab b svg{display:block}
.hero{background:var(--yellow);color:#101b3b;border-radius:34px;padding:26px 24px;margin-bottom:28px;position:relative}
.hero h1{font-size:24px;padding-right:92px;line-height:1.15}.hero p{margin:10px 0 20px;font-size:17px;line-height:1.5;padding-right:96px;min-height:56px}.hero .big{position:absolute;right:14px;top:12px;width:108px;height:auto}
.hero .btn{background:#101b3b;color:#fff;border-color:#101b3b}
.sec{font-weight:800;font-size:20px;margin:0 6px 14px}
.row .grow{flex:1;min-width:0}.name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.desc{margin:16px 0 0;color:var(--mute);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.acts{flex-wrap:nowrap;align-items:center}.acts.pubacts{flex-wrap:wrap}.pubacts .btn{flex:1 1 auto;justify-content:center;padding:11px 14px;font-size:15px}.acts .b{flex:1;justify-content:center}.ic{width:46px;height:46px;padding:0;justify-content:center;flex:none;font-size:18px}
h2{font-size:22px;font-weight:800;margin:0 0 16px}
label{display:block;font-weight:600;font-size:15px;margin:16px 0 4px}label small{display:block;color:var(--mute);font-weight:400;font-size:13px}
input[type=text],input[type=tel],input[type=email],input[type=password],textarea{font:inherit;color:inherit;width:100%;border:1px solid var(--line);background:var(--card);border-radius:22px;padding:12px 16px;box-shadow:var(--shadow);resize:vertical}
textarea{min-height:90px;border-radius:24px}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-weight:500}
.chip[aria-pressed=true]{border:2px solid var(--blue);padding:7px 13px}.chip .sw{width:18px;height:18px;border-radius:50%}
.chip.em{font-size:22px;width:46px;height:46px;padding:0;justify-content:center}.chip.em[aria-pressed=true]{padding:0}
.tog{display:flex;justify-content:space-between;align-items:center;background:var(--field);border-radius:24px;padding:16px 20px;margin-top:16px;gap:10px}
.sw2{width:52px;height:30px;border-radius:999px;background:var(--line);border:0;position:relative;cursor:pointer;flex:none}.sw2::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:.2s}.sw2[aria-checked=true]{background:var(--blue)}.sw2[aria-checked=true]::after{left:25px}
.url{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:6px 6px 6px 16px;margin-top:12px;box-shadow:var(--shadow)}.url span{flex:1;color:var(--blue);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
.seg{display:flex;background:var(--card);border-radius:999px;padding:4px;box-shadow:var(--shadow);margin-bottom:18px}.seg button{flex:1;border:0;background:none;border-radius:999px;padding:10px;font-weight:600;cursor:pointer;color:var(--mute)}.seg button[aria-selected=true]{background:var(--blue);color:#fff}
.chat{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:var(--card);display:flex;flex-direction:column;height:460px}
.chat.full{height:calc(100vh - 40px);height:calc(100dvh - 40px);border-radius:0;box-shadow:none}
.ch{padding:14px 20px;display:flex;gap:12px;align-items:center;color:#101b3b}.ch .av{width:44px;height:44px;font-size:22px;background:#fff}.ch.dk{color:#fff}
.msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}
.m{max-width:80%;padding:11px 16px;border-radius:22px;background:#fff;color:#101b3b;box-shadow:0 1px 3px rgba(0,0,0,.08);overflow-wrap:anywhere}.m.u{align-self:flex-end;color:#fff;box-shadow:none}
.cin{display:flex;gap:8px;padding:12px;background:var(--card);border-top:1px solid var(--line)}.cin input{flex:1;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:11px 16px}
.send{width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;flex:none}
.save{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;margin-top:8px}
.tag{font-size:13px;color:var(--mute)}.cnt{float:right;font-weight:400;color:var(--mute);font-size:12px}
#app.out{opacity:0;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease}
#app.in{animation:none}
@keyframes pgin{from{opacity:0}}
@media (prefers-reduced-motion:reduce){#app.out{transition:none}#app.in{animation:none}}
.auth label:first-child{margin-top:0}
.pw{position:relative}.pw input{padding-right:54px}.eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;background:transparent;border-radius:50%;color:var(--mute);display:grid;place-items:center;cursor:pointer}.eye[aria-pressed=true]{color:var(--blue)}
.vf{text-align:center;padding:30px 22px 24px;margin-top:6px}.vf h1{font-size:24px;margin:16px 0 6px}
.vf-ic{width:72px;height:72px;margin:0 auto;border-radius:50%;background:#eaf0ff;color:var(--blue);display:grid;place-items:center;box-shadow:0 0 0 8px #f3f6ff}
.vf-to{margin:0 0 20px;color:var(--mute);line-height:1.5;overflow-wrap:anywhere}.vf-to b{color:#101b3b}
.vf-st{list-style:none;margin:0 0 22px;padding:0;text-align:left;display:grid;gap:10px}
.vf-st li{display:flex;gap:12px;align-items:center;background:#f6f8fe;border:1px solid var(--line);border-radius:18px;padding:12px 14px;line-height:1.35}
.vf-st li span{flex:none;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:#101b3b;font-weight:800;display:grid;place-items:center;font-size:14px}
.vf-hint{margin:16px 0 4px;color:var(--mute);font-size:14px;line-height:1.5}
.vf-rs{border:0;background:transparent;color:var(--blue);font-weight:700;font-size:15px;padding:10px 14px;cursor:pointer;border-radius:12px}.vf-rs:disabled{color:var(--mute);cursor:default}
.vf-ok{min-height:20px;font-size:14px;font-weight:600;color:#1a7f4b}
.err{color:#c0392b;font-weight:600;font-size:14px;min-height:20px;margin-top:12px}
.auth-sw{text-align:center;color:var(--mute);margin:18px 0 0;font-size:15px}.auth-sw a{color:var(--blue);font-weight:700;text-decoration:none}
.faq details.closing summary::after{transform:none}
.hb{display:flex;gap:6px;align-items:center}.ib{width:40px;height:40px;border-radius:14px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);display:grid;place-items:center;padding:0;cursor:pointer;flex:none}.ib img{width:26px;height:26px;display:block}.ib:active{transform:scale(.94)}.ib:focus-visible{outline:3px solid var(--blue);outline-offset:2px}

.ib{position:relative}.ib .nb{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:9px;background:#c62828;color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;padding:0 4px;border:2px solid #fff;box-sizing:content-box;line-height:1}
.seg button{padding:10px 4px;font-size:15px}
.bdg{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:10px;background:#c62828;color:#fff;font-size:12px;padding:0 5px;margin-left:6px;vertical-align:1px}
.seg button[aria-selected=true] .bdg{background:#fff;color:#c62828}
.qbtn{margin-top:12px;border:0;background:#fdecea;color:#b3261e;border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px;cursor:pointer}
.kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.kpi{background:var(--field);border-radius:22px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}.kpi b{font-size:28px;line-height:1.1}.kpi span{color:var(--mute);font-size:14px}.kpi.warn{background:#fdecea}.kpi.warn b{color:#b3261e}
.qa{border-top:1px solid var(--line);padding:14px 0}.qa:first-of-type{border:0}.qq{font-weight:700;line-height:1.35;margin-bottom:4px}.qacts{display:flex;gap:8px;margin-top:12px}.qacts .btn{flex:1;justify-content:center}.qform{margin-top:6px}.qform[hidden]{display:none}.qform textarea{min-height:90px}.qform .btn{width:100%;justify-content:center;margin-top:10px}
.btn.out{background:var(--bg);border-color:#c9d5f5;box-shadow:none;color:var(--ink);padding:9px 16px}.btn.out:active{background:#dbe5fb}
.dng{width:100%;justify-content:center;color:#c62828;border-color:#c62828;font-size:16px}
.ov{position:fixed;inset:0;background:rgba(16,27,59,.45);display:flex;align-items:flex-end;justify-content:center;padding:18px calc(18px + env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px));z-index:30;animation:ovin .2s ease}
.dlg{background:var(--card);border-radius:28px;padding:24px;max-width:420px;width:100%;display:flex;flex-direction:column;gap:10px;box-shadow:0 20px 50px rgba(16,27,59,.3);animation:dlgin .32s cubic-bezier(.2,.8,.2,1)}
.dlg h3{margin:0;font-size:20px;line-height:1.25}.dlg p{margin:0 0 8px;color:var(--mute);line-height:1.5}.dlg .btn{width:100%;justify-content:center;font-size:16px}.dlg .btn.ghost{margin-top:0}
@keyframes ovin{from{opacity:0}}@keyframes dlgin{from{opacity:0;transform:translateY(24px) scale(.98)}}
@media (prefers-reduced-motion:reduce){.ov,.dlg{animation:none}}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:999px;font-weight:600;z-index:20;box-shadow:var(--shadow)}
.conv{border-top:1px solid var(--line);padding:12px 0}.conv:first-of-type{border:0}
.note{background:var(--field);border-radius:20px;padding:12px 16px;color:var(--mute);font-size:14px;margin-top:12px}

/* ===== Raffinements : ombres, carte assistant, infobulles, fluidité ===== */
:root{--shadow:0 1px 2px rgba(16,27,59,.04),0 2px 8px rgba(16,27,59,.05);--shadow-sm:0 1px 2px rgba(16,27,59,.05)}
html{-webkit-tap-highlight-color:transparent}
button,.chip,.tpl,summary,label.chip{touch-action:manipulation}
.btn,input[type=text],input[type=tel],input[type=email],input[type=password],textarea,.url,.ib,.seg{box-shadow:var(--shadow-sm)}
.cta,.fab{box-shadow:0 4px 12px rgba(16,27,59,.22)}
.hero .cta{animation:none;position:relative;isolation:isolate}
.hero .cta::after{content:"";position:absolute;inset:0;border-radius:999px;background:rgba(16,27,59,.25);z-index:-1;animation:pulse2 2.4s ease-out infinite;pointer-events:none}
@keyframes pulse2{0%{transform:scale(1);opacity:.45}70%,100%{transform:scale(1.14,1.4);opacity:0}}
.dlg{box-shadow:0 12px 32px rgba(16,27,59,.2)}
.m{box-shadow:0 1px 2px rgba(0,0,0,.06)}.m.u{box-shadow:none}
.toast{box-shadow:0 4px 14px rgba(16,27,59,.18)}

/* Carte assistant : plus compacte */
.card.ag{padding:16px 18px;margin-bottom:12px}
.card.ag .av{width:48px;height:48px}
.card.ag .name{font-size:18px}
.card.ag .pill{padding:4px 11px;font-size:13px}
.card.ag .desc{margin:10px 0 0;font-size:15px;line-height:1.45}
.card.ag .qbtn{margin-top:10px;padding:6px 12px;font-size:13px}
.card.ag .acts{margin-top:12px;gap:6px;flex-wrap:nowrap}
.card.ag .acts .btn.b{padding:10px 18px}
.btn.ic.sm{width:40px;height:40px;background:var(--field);border-color:transparent;box-shadow:none;color:var(--mute)}
.btn.ic.sm.dl{color:#b3261e}
@media (hover:hover){.btn.ic.sm:hover{background:#e6ecfb;color:var(--ink)}.btn.ic.sm.dl:hover{background:#fdecea;color:#b3261e}.btn:hover{border-color:#cfd8f1}.chip:hover{border-color:#c9d5f5}}

/* Infobulles */
[data-tip]{position:relative}
[data-tip]::after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 8px);background:var(--ink);color:#fff;font-weight:600;font-size:13px;line-height:1.2;white-space:nowrap;padding:7px 11px;border-radius:10px;opacity:0;transform:translateY(3px);pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:40}
.ib[data-tip]::after{bottom:auto;top:calc(100% + 8px);transform:translateY(-3px)}
@media (hover:hover){[data-tip]:hover::after{opacity:1;transform:none;transition-delay:.3s}}
[data-tip]:focus-visible::after{opacity:1;transform:none}

/* Réactivité des interactions */
.btn,.chip,.cta,.fab,.ib,.send,.eye{transition:transform .12s ease,background-color .15s ease,border-color .15s ease,color .15s ease}
.btn:active,.chip:active,.cta:active,.fab:active,.send:active{transform:scale(.96)}
.sw2{transition:background-color .18s ease}
.sw2::after{left:3px;transition:transform .18s cubic-bezier(.3,.7,.3,1)}
.sw2[aria-checked=true]::after{left:3px;transform:translateX(22px)}
#app.in{animation:pgin .2s cubic-bezier(.2,.7,.2,1) backwards}
@keyframes pgin{from{opacity:0}}
#body.tabin{animation:tabin .16s ease-out}
@keyframes tabin{from{opacity:0}}
.m.new{animation:mi .18s cubic-bezier(.2,.8,.2,1)}
@keyframes mi{from{opacity:0;transform:translateY(6px) scale(.98)}}
.m.ty{display:flex;gap:4px;align-items:center;width:max-content;padding:14px 16px}
.m.ty i{width:6px;height:6px;border-radius:50%;background:var(--mute);opacity:.5;animation:ty 1s infinite ease-in-out}
.m.ty i:nth-child(2){animation-delay:.15s}.m.ty i:nth-child(3){animation-delay:.3s}
@keyframes ty{40%{transform:translateY(-3px);opacity:1}}
.toast{display:flex;align-items:center;gap:14px;animation:tin .2s cubic-bezier(.2,.8,.2,1)}
@keyframes tin{from{opacity:0;transform:translate(-50%,8px)}}
.toast.bye{opacity:0;transition:opacity .18s ease}
.tact{border:0;background:none;color:var(--yellow);font-weight:800;cursor:pointer;padding:4px 0 4px 4px}
@media (prefers-reduced-motion:reduce){.m.new,.toast,#body.tabin,#app.in,.hero .cta::after,.m.ty i{animation:none}.btn,.chip,.cta,.fab,.ib,.send,.eye,.sw2,.sw2::after,[data-tip]::after{transition:none}}

/* ===== Page Premium ===== */
.plans{display:grid;gap:14px;margin:22px 0 14px}
.plan{background:var(--card);border-radius:28px;box-shadow:var(--shadow);padding:20px 20px 18px;border:1px solid var(--line);position:relative}
.plan .pbadge{display:inline-block;border-radius:999px;padding:4px 12px;font-weight:700;font-size:13px;background:var(--field);color:var(--mute)}
.plan.p-essentiel .pbadge{background:#e4ecff;color:var(--blue)}
.plan.p-business .pbadge{background:#ece4ff;color:#5b3fb8}
.plan h2{margin:10px 0 0;font-size:22px}
.plan .price{margin:4px 0 0;font-weight:800;font-size:34px;line-height:1.1}
.plan .price small{font-size:15px;font-weight:600;color:var(--mute)}
.plan .pd{margin:6px 0 14px;color:var(--mute);line-height:1.45;font-size:15px}
.plan ul{list-style:none;margin:0 0 16px;padding:14px 0 0;border-top:1px solid var(--line);display:grid;gap:9px}
.plan li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.35}
.plan li svg{flex:none;margin-top:1px;color:var(--blue)}
.plan .btn{width:100%;justify-content:center}
.plan .btn[disabled]{opacity:.6;cursor:default}
.plan.hot{background:var(--blue);border-color:var(--blue);color:#fff}
.plan.hot .pbadge{background:var(--yellow);color:#101b3b}
.plan.hot .price small,.plan.hot .pd{color:rgba(255,255,255,.8)}
.plan.hot ul{border-color:rgba(255,255,255,.25)}
.plan.hot li svg{color:var(--yellow)}

/* ===== Chat : saisie, suggestions, pièces jointes, historique ===== */
[hidden]{display:none!important}
.m.ty{gap:10px;padding:10px 14px;font-size:14px;color:var(--mute)}
.m.ty .dots{display:flex;gap:4px;align-items:center}
.cin{align-items:center}
.cin .clip{width:42px;height:42px;border:0;background:var(--field);border-radius:50%;display:grid;place-items:center;color:var(--mute);cursor:pointer;flex:none;padding:0}
.cin .ti{min-width:0}
.pend{padding:8px 12px 0;background:var(--card);border-top:1px solid var(--line)}.pend+.cin{border-top:0}
.pc{display:inline-flex;align-items:center;gap:8px;background:var(--field);border-radius:999px;padding:5px 5px 5px 12px;font-size:14px;max-width:100%;font-weight:600}
.pc .pn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc button{width:24px;height:24px;border:0;border-radius:50%;background:var(--line);display:grid;place-items:center;cursor:pointer;padding:0;flex:none}
.sg{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.sgb{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:999px;padding:8px 14px;font-weight:600;font-size:14px;cursor:pointer;text-align:left;transition:transform .12s ease}.sgb:active{transform:scale(.97)}.sgb:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.att{display:flex;gap:10px;align-items:center;background:rgba(0,0,0,.08);border-radius:14px;padding:6px 10px 6px 6px;margin-bottom:6px}.att:last-child{margin-bottom:0}
.att img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none}
.att .ai{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.3);flex:none}
.att .an{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere;font-weight:600;font-size:14px}.att small{font-weight:400;opacity:.8}
.chb{margin-left:auto;display:flex;gap:6px}
.chb button{width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.28);color:inherit;display:grid;place-items:center;cursor:pointer;padding:0}
.chb [data-tip]::after{bottom:auto;top:calc(100% + 8px);transform:translateY(-3px)}
.dlg.hist{max-height:82vh;overflow:auto}
.hrow{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:10px 14px;cursor:pointer}
.hrow[aria-current=true]{border:2px solid var(--blue);padding:9px 13px}.hrow b{font-size:14px}
.hrow span{color:var(--mute);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.pbadge2{display:inline-block;margin-left:6px;background:var(--yellow);color:#101b3b;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700;vertical-align:1px}
.crown{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--yellow);color:#101b3b;vertical-align:-4px;margin-left:6px}.sw2.lock{opacity:.55}

/* ===== Diffusion de l'agent ===== */
.seg{overflow-x:auto;scrollbar-width:none}.seg::-webkit-scrollbar{display:none}.seg button{flex:1 0 auto;padding:10px 14px;white-space:nowrap}
.dp{display:flex;gap:14px;align-items:flex-start;margin-bottom:6px}
.dp .ico{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;flex:none;background:#fff3c9;color:#101b3b}
.dp.b2 .ico{background:#e4ecff;color:var(--blue)}.dp.b3 .ico{background:#e3f1f7;color:#1b6b8f}
.dp h2{margin:0 0 4px;font-size:19px}.dp p{margin:0;color:var(--mute);line-height:1.45;font-size:15px}
.code{background:#101b3b;color:#e8eefc;border-radius:20px;padding:14px 16px;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto;white-space:pre;margin:14px 0 0}
.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.sgrid .btn{justify-content:center;padding:11px 10px;font-size:15px}
.qrbox{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:16px;background:var(--field);border-radius:26px;padding:18px}
.qrbox #dp-qr svg{width:176px;height:176px;border-radius:12px;background:#fff;display:block}.qrbox .acts{margin:0;width:100%}.qrbox .acts .btn{flex:1;justify-content:center}
.bp{display:flex;align-items:center;gap:12px;background:var(--field);border-radius:24px;padding:14px 16px;margin-top:12px}
.bp b{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;flex:none}.bp span{color:var(--mute);font-size:14px}
.bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:12px}.bar i{display:block;height:100%;background:var(--blue);border-radius:99px;transition:width .3s}.bar.warn i{background:#c62828}
.sub2{font-weight:700;font-size:15px;margin:18px 0 0}
.un{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 22px}.un .av{width:72px;height:72px;margin-bottom:6px}.un b{font-size:20px}
.foot{text-align:center;padding:8px}
body.embed{background:#fff}body.embed .chat.full{height:calc(100vh - 34px);height:calc(100dvh - 34px)}
body.embed .un{min-height:calc(100vh - 40px);min-height:calc(100dvh - 40px)}
.cp-in{width:100%;font-size:16px}
/* ===== v2 : en-tête épuré, bouton Publier, panneau de diffusion ===== */
.hb{gap:8px}
.ib{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);color:#0b0d14}
.ib svg{width:18px;height:18px;stroke-width:1.9}
.ib .nb{top:-6px;right:-6px;min-width:20px;height:20px;border-radius:999px;background:#e5342b;color:#fff;font-size:11px;font-weight:800;padding:0 5px;border:2px solid #fff;box-sizing:border-box;display:grid;place-items:center;line-height:1}
.pubbtn{padding:9px 16px 9px 14px;gap:8px;font-size:15px}
.pubbtn svg{width:17px;height:17px}
.pubbtn .pdot{width:7px;height:7px;border-radius:50%;background:var(--yellow);margin-left:-1px}
.ov.sheet{padding:0}
.dlg.ps{max-width:560px;border-radius:28px 28px 0 0;padding:10px 18px calc(22px + env(safe-area-inset-bottom,0px));max-height:92vh;max-height:92dvh;overflow-y:auto;gap:0;overscroll-behavior:contain;animation:sheetin .34s cubic-bezier(.2,.8,.2,1)}
@keyframes sheetin{from{transform:translateY(48px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.dlg.ps{animation:none}}
.ps-grab{width:40px;height:4px;border-radius:4px;background:var(--line);margin:4px auto 14px;flex:none}
.ps-h{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.ps-h h3{margin:0;font-size:19px}.ps-h p{margin:2px 0 0;font-size:14px}
.ps-ok{width:40px;height:40px;border-radius:50%;background:#e4f5ea;color:#17803f;display:grid;place-items:center;flex:none}
.ps .btn{width:auto;font-size:15px}.ps .btn.ic{width:46px}
.dv{display:flex;flex-direction:column;gap:10px}
.dv-st{display:flex;align-items:center;gap:12px;background:var(--field);border-radius:22px;padding:12px 16px}
.dv-st b{display:block;font-size:15px}.dv-st .s{color:var(--mute);font-size:13px;line-height:1.35}
.dv-dot{width:10px;height:10px;border-radius:50%;background:#1fa65a;box-shadow:0 0 0 4px rgba(31,166,90,.16);flex:none}.dv-dot.off{background:#b6bdd0;box-shadow:none}
.dv-card{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:18px}
.dv-card .dp{margin-bottom:0}.dv-card .dp .ico{width:44px;height:44px;border-radius:50%}.dv-card .dp h2{font-size:18px}.dv-card .dp p{font-size:14px}
.dv-card .url{padding:12px 16px;box-shadow:none;background:var(--field);border-color:transparent}
.dv-card .acts{margin-top:12px}
.acc{background:var(--card);border:1px solid var(--line);border-radius:22px;overflow:hidden}
.acc>summary{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;list-style:none}
.acc>summary::-webkit-details-marker{display:none}
.acc>summary:focus-visible{outline:3px solid var(--blue);outline-offset:-3px;border-radius:22px}
.acc>summary .ico{width:38px;height:38px;border-radius:50%;background:var(--field);color:var(--ink);display:grid;place-items:center;flex:none}
.acc>summary b{display:block;font-size:15.5px;line-height:1.25}
.acc>summary small{display:block;color:var(--mute);font-size:13px;line-height:1.3;margin-top:1px}
.acc>summary .chev{color:var(--mute);flex:none;display:grid;transition:transform .25s}
.acc[open]:not(.closing)>summary .chev{transform:rotate(180deg)}
.acc-b{padding:2px 16px 18px}
.acc .faq details{background:#fff;box-shadow:none;border:1px solid var(--line);border-radius:18px;padding:0 16px;margin-bottom:8px}
.acc .faq details p{font-size:14px;line-height:1.7}
.acc .apb{padding-bottom:16px}.acc .apb label{display:block;font-weight:600;margin:14px 0 8px}.acc .apb label small{display:block;font-weight:400;color:var(--mute);margin-top:2px}.acc .apb input[type=text],.acc .apb textarea{width:100%;box-sizing:border-box}
.acc .kpis{margin-top:4px}
.sgrid .full{grid-column:1/-1}
@media (hover:hover){.acc>summary:hover .chev{color:var(--ink)}}
.acc>summary .grow,.dv-st .grow,.ps-h .grow{flex:1;min-width:0}
.dv-card .dp .ico{background:var(--field)}

.toast{z-index:60}
.btn.okc{background:#17803f;border-color:#17803f;color:#fff}
.acc>summary .ico.c1{background:#e3f1f7;color:#1b6b8f}.acc>summary .ico.c2{background:#fff3c9;color:#101b3b}.acc>summary .ico.c3{background:#ece7ff;color:#5b3fd1}
.dv-us{background:var(--field);border-radius:22px;padding:14px 16px}
.dv-us-h{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.dv-us-h .ico{width:34px;height:34px;border-radius:50%;background:#fff;display:grid;place-items:center;flex:none}
.dv-us-h b{display:block;font-size:15px}.dv-us-h small{color:var(--mute);font-size:13px}.dv-us-h strong{font-size:20px;white-space:nowrap}
.dv-us .bar{margin:0}
.dv-us.near{background:#fff4dc}.dv-us.warn{background:#fdecea}.dv-us.warn strong{color:#b3261e}
.dv-up{display:block;margin-top:10px;font-size:13.5px;font-weight:700;color:var(--blue);text-decoration:none}

.btn.bk{padding:9px 16px;font-size:15px;margin-right:2px}
.dlg .btn.ghost{background:var(--field);border-color:transparent;box-shadow:none;margin-top:6px}
.dlg{padding-bottom:28px}
.gcr{display:inline-grid;color:#f2b705;filter:drop-shadow(0 1px 0 rgba(120,80,0,.25))}.gcr svg{fill:#f7c531;fill-opacity:.35}
.toast{width:max-content;max-width:calc(100vw - 32px)}
.dv-up{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13.5px;font-weight:700;color:#a86f00;text-decoration:none;background:linear-gradient(135deg,#fff6d6,#ffe8a3);border-radius:14px;padding:10px 12px}
.dv-up u{text-underline-offset:2px}
.st-pl{display:flex;align-items:center;gap:10px;margin-bottom:4px}.st-pl b{font-size:20px}

.hlp{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--card);border:0;border-radius:22px;box-shadow:var(--shadow);padding:12px 14px;margin:18px 0 6px;cursor:pointer;font:inherit;color:inherit}
.hlp .ico{width:38px;height:38px;border-radius:50%;background:var(--field);display:grid;place-items:center;flex:none}
.hlp b{display:block;font-size:15.5px}.hlp small{display:block;color:var(--mute);font-size:13px;margin-top:1px}
.hlp .chev{color:var(--mute);display:grid;transform:rotate(-90deg)}
.hlp:active{transform:scale(.99)}.hlp:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.hlp.flat{box-shadow:none;border-radius:16px;margin:0;padding:12px 0;background:none;border-bottom:1px solid var(--line);border-radius:0}.hlp.flat:last-child{border:0}
.ctc-r{display:flex;gap:16px;margin-top:20px}
.ctc-b{flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:14.5px;color:var(--ink);padding:18px 10px;border-radius:24px;background:var(--field)}
.ctc-b span{width:60px;height:60px;border-radius:50%;display:grid;place-items:center}
.ctc-b.wa span{background:#e4f5ea;color:#17803f}.ctc-b.ml span{background:#e4ecff;color:var(--blue)}
.ctc-b:active{transform:scale(.97)}.ctc-b:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.auth-lg{text-align:center;margin:14px 0 0;line-height:1.5}.auth-lg a{color:var(--blue);font-weight:600}
.hlp .grow{flex:1;min-width:0}
/* Stabilité mobile */
html{scrollbar-gutter:stable}
html,body{overflow-x:clip;max-width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{touch-action:manipulation}
input,textarea,select,.cp-in{font-size:16px}
img,video{max-width:100%}
.msgs{overscroll-behavior:contain}
/* Page de bienvenue compacte : tout tient sur un écran */
.wel{height:100vh;height:100dvh;min-height:0;overflow:hidden}
.wel-top{padding:12px 20px 0;border-radius:0 0 36px 36px;flex:none}
.wel-bot{width:auto;max-width:56vw;height:clamp(104px,24dvh,210px);margin:0 0 -4px}
.wel-body{padding:14px 20px calc(12px + env(safe-area-inset-bottom,0px));min-height:0}
.eyebrow{font-size:13px;padding:5px 12px;margin-bottom:8px}
.wel-body h1{font-size:clamp(24px,4.2dvh,30px);line-height:1.12;margin:0}
.wel-body p{font-size:15px;line-height:1.4;margin:6px 0 12px}
.wel-list{gap:8px;margin:0 0 12px}
.wel-list li{gap:12px;padding:9px 14px;border-radius:20px}
.wel-list .i{width:36px;height:36px;border-radius:12px}
.wel-list small{font-size:13px;margin-top:1px}
.wel-act{position:static;width:100%;margin:auto 0 0;padding:0;background:none}
.wel-body .cta{padding-top:6px;padding-bottom:6px}
.wel-body .btn.ghost{margin-top:4px;padding:8px 14px}
@media (max-height:660px){.eyebrow{display:none}}
@media (max-height:680px){.wel-list small{display:none}.wel-list li{padding:8px 14px}.wel-body p{margin-bottom:8px}}
@media (max-height:560px){.wel-bot{height:84px}.wel-body p{display:none}}
/* Bienvenue : en-tête plus doux, pastilles contrastées */
.wel-top{background:linear-gradient(180deg,#fbe9a0 0%,#fdf3cf 52%,var(--bg) 100%);border-radius:0}
.wel-top::before{background:rgba(246,212,85,.6);width:200px;height:200px;top:-70px;right:-60px}
.wel-top::after{background:rgba(255,255,255,.5);width:150px;height:150px;left:-60px;bottom:30px}
.wel-bot{margin:0 0 -12px}
.wel-body{padding-top:4px}
.eyebrow{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#101b3b;border:1px solid #f0d46a;box-shadow:0 1px 4px rgba(16,27,59,.08)}
.eyebrow svg{color:var(--blue)}
.wel-list li:nth-child(n) .i{color:#101b3b;background:var(--yellow)}
.wel-list li:nth-child(2) .i{background:var(--blue);color:#fff}
.wel-list li:nth-child(3) .i{background:#101b3b;color:var(--yellow)}
/* Tage : assistant IA intégré */
.tg-b{position:fixed;left:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:25;width:60px;height:60px;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 4px 8px rgba(16,27,59,.3))}
.tg-b img{width:100%;height:100%;display:block}
.tg-b[hidden],.tg-p[hidden]{display:none}
.tg-p{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:35;max-width:420px;height:min(560px,calc(100vh - 24px));height:min(560px,calc(100dvh - 24px));display:flex;flex-direction:column;background:#fff;border-radius:26px;box-shadow:0 20px 50px rgba(16,27,59,.3);overflow:hidden}
.tg-h{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--yellow);color:var(--ink)}
.tg-h b{display:block;font-size:17px}.tg-h small{display:block;font-size:13px;opacity:.8}
.tg-av{width:44px;height:44px;flex:none;display:block}
.tg-x{margin-left:auto;border:0;background:rgba(16,27,59,.1);color:var(--ink);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;cursor:pointer;flex:none}
.tg-l{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:14px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}
.tg-e{margin:auto;text-align:center;color:var(--mute);font-size:15px;line-height:1.45;max-width:240px}
.tg-e{max-width:none;width:100%}.tg-e p{margin:0 auto 14px;max-width:260px}
.tg-s{display:flex;flex-direction:column;gap:8px}
.tg-q{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:16px;padding:11px 14px;font:700 14.5px "Plus Jakarta Sans",system-ui,sans-serif;cursor:pointer;text-align:left;line-height:1.35}
.tg-q:active{background:var(--bg)}
.hero .hb2{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 -10px}
.hero .cta{font-size:14px;padding:4px 10px 4px 4px;gap:6px;white-space:nowrap}
.hero .cta b{width:30px;height:30px}
.hero .cta b svg{width:16px;height:16px}
.hero .cta.ai{background:#fff;color:#101b3b;animation:none;box-shadow:0 4px 12px rgba(16,27,59,.18);padding:0 11px;height:38px}
.hero .cta.ai::after{display:none}
.hero .cta.ai b{width:auto;height:auto;background:none;color:#101b3b;display:inline-flex}
.tg-bk{margin-left:auto;border:0;background:rgba(16,27,59,.1);color:var(--ink);border-radius:999px;padding:8px 12px;font:700 13px "Plus Jakarta Sans",system-ui,sans-serif;cursor:pointer;flex:none}
.tg-bk[hidden]{display:none}.tg-bk+.tg-x{margin-left:8px}.tg-bk[hidden]+.tg-x{margin-left:auto}
.tg-bd{position:fixed;inset:0;z-index:34;background:rgba(16,27,59,.4);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s}
.tg-p:not([hidden])~.tg-bd{opacity:1;visibility:visible}
body.nobot .tg-bd{display:none}
.tg-e{margin:0 0 auto;text-align:left;color:var(--ink);display:flex;flex-direction:column;gap:12px}
.tg-e .tg-m{max-width:92%}
.tg-s{align-items:flex-start}
.tg-q{border-radius:999px;padding:10px 16px}
.tg-h{touch-action:none}
@media (prefers-reduced-motion:reduce){.tg-bd{transition:none}}

.tg-m{max-width:88%;padding:10px 14px;border-radius:18px;font-size:15px;line-height:1.45;overflow-wrap:anywhere}
.tg-m.t{background:#fff;align-self:flex-start;border-bottom-left-radius:6px;color:var(--ink)}
.tg-m.u{background:var(--ink);color:#fff;align-self:flex-end;border-bottom-right-radius:6px}
.tg-r{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tg-a{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:999px;padding:8px 14px;font:700 14px "Plus Jakarta Sans",system-ui,sans-serif;cursor:pointer;text-align:left}
.tg-a.p{background:var(--blue);color:#fff;border-color:var(--blue)}
.tg-f{display:flex;gap:8px;padding:10px 12px;background:var(--bg);align-items:center}
.tg-f input{flex:1;min-width:0;border:1px solid var(--line);border-radius:999px;padding:11px 16px;font-size:16px;background:#fff}
.tg-sd{width:46px;height:46px;border-radius:50%;border:0;background:var(--blue);color:#fff;display:grid;place-items:center;cursor:pointer;flex:none}
.tg-ty i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mute);margin:0 2px;opacity:.5;animation:ty 1s infinite ease-in-out}.tg-ty i:nth-child(2){animation-delay:.15s}.tg-ty i:nth-child(3){animation-delay:.3s}
@media (min-width:600px){.tg-p{right:auto;width:400px}}
.st-h{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin:26px 8px 8px}
.st-me{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:var(--card);border:0;border-radius:28px;box-shadow:var(--shadow);padding:16px 18px;font:inherit;color:inherit}
.st-av{width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;font-size:24px;flex:none}
.st-me b{display:block;font-size:19px}.st-me small{display:block;color:var(--mute);font-size:14.5px;margin-top:2px}
.st-g{padding:4px 18px}.hlp .grow{flex:1;min-width:0}
.hlp.st-dng b,.hlp.st-dng .ico{color:#b3261e}
/* réglages : typographie plus compacte */
.pg-st h1{font-size:26px}
.pg-st .st-h{font-size:12px;margin:22px 8px 8px}
.pg-st .st-me{padding:14px 16px;border-radius:24px}.pg-st .st-av{width:46px;height:46px;font-size:20px}
.pg-st .st-me b{font-size:16.5px}.pg-st .st-me small{font-size:13px}
.pg-st .hlp b{font-size:14.5px}.pg-st .hlp small{font-size:12.5px}
.pg-st .card{padding:20px;border-radius:28px}.pg-st .card.st-g{padding:2px 16px}
.pg-st .ctc h2{font-size:18px;margin:0 0 6px}.pg-st .ctc p{font-size:14.5px}
.pg-st .ctc-b{font-size:13.5px;padding:14px 10px}.pg-st .ctc-b span{width:50px;height:50px}
.pg-st .faq details{padding:0 18px;border-radius:22px}
.pg-st .faq summary{font-size:15px;padding:14px 0}.pg-st .faq details p{font-size:14.5px;padding-bottom:14px}
.pg-st .lg h2{font-size:16px}.pg-st .lg p,.pg-st .lg li{font-size:14.5px;line-height:1.55}
.pg-st .sub{font-size:15px}
/* carte d'abonnement */
.st-sub{padding:16px 18px!important;border-radius:26px!important}
.st-sub .st-pl{margin-bottom:6px}.st-sub .st-pl b{font-size:17px}
.st-sub .pill{font-size:12px;padding:4px 11px}
.qt{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--line)}
.qt-i{flex:1;min-width:0}.qt-i b{display:block;font-size:14px}
.qt-i small{display:block;color:var(--mute);font-size:12.5px;line-height:1.35;margin-top:1px}
.qt strong{font-size:17px;white-space:nowrap;flex:none}.qt strong.warn{color:#b3261e}
.st-sub .bar{margin-top:2px}
.st-sub .btn{padding-top:9px;padding-bottom:9px;font-size:14.5px}.st-sub{padding:14px 18px 16px!important}

input[readonly]{color:var(--mute)}
/* transitions entre pages */
#app{overflow-x:clip}
#app.in{animation:none}
#app.leave .wrap{opacity:0;transform:translateY(6px);transition:opacity .13s ease,transform .13s ease}
@keyframes wfwd{from{opacity:0;transform:translateX(20px)}}
@keyframes wback{from{opacity:0;transform:translateX(-20px)}}
@keyframes wup{from{opacity:0;transform:translateY(10px)}}
.wrap.pg-fwd{animation:wfwd .34s cubic-bezier(.22,.8,.24,1) both}
.wrap.pg-back{animation:wback .34s cubic-bezier(.22,.8,.24,1) both}
.wrap.pg-up{animation:wup .34s cubic-bezier(.22,.8,.24,1) both}
@media (prefers-reduced-motion:reduce){.wrap.pg-fwd,.wrap.pg-back,.wrap.pg-up{animation:none}#app.leave .wrap{transition:none}}
/* accueil : cartes plus compactes */
.hero{padding:20px;margin-bottom:20px}
.hero p{font-size:15px;margin:8px 0 14px;min-height:0;padding-right:92px}
.hero .big{width:88px;right:12px;top:10px}
.hero.cmp{padding:14px 16px;margin-bottom:16px}
.hero.cmp h1{font-size:21px;margin:0 0 10px;padding-right:76px}
.hero.cmp .big{width:64px;top:8px;right:12px}
.hero .cta{font-size:13.5px}
.hero .cta b{width:26px;height:26px}
.hero .cta b svg{width:14px;height:14px}
.hero .cta.ai{height:34px}
.hero .tip{margin-top:12px;padding:9px 12px;border-radius:16px;gap:8px}
.hero .tip-ic{width:24px;height:24px}
.hero .tip-t{font-size:13.5px;min-height:54px}
.sec{font-size:17px;margin:0 6px 10px}
.card.ag{padding:12px 14px;margin-bottom:10px}
.card.ag .av{width:42px;height:42px}
.card.ag .name{font-size:16.5px}
.card.ag .desc{font-size:13.5px;margin-top:8px;line-height:1.4}
.card.ag .acts{margin-top:10px}
.card.ag .acts .btn.b{padding:8px 16px;font-size:14px}
.card.ag .ic{width:38px;height:38px}
.steps{gap:10px}
.step{padding:13px 16px;border-radius:22px;gap:12px}
.step .n{width:30px;height:30px;font-size:14px}
.step strong{font-size:15px}.step p{font-size:13.5px}
#hp{padding:10px 12px;margin:12px 0 6px}
#hp b{font-size:14.5px}#hp small{font-size:12.5px}#hp .ico{width:34px;height:34px}
/* assistant : à droite, halo blanc */
.tg-b{left:auto;right:12px;border-radius:50%;filter:none;box-shadow:0 0 0 4px #fff,0 0 0 5px rgba(16,27,59,.1),0 0 10px 5px rgba(255,255,255,.95),0 6px 14px rgba(16,27,59,.25)}
.tg-b img{border-radius:50%}
@media (min-width:600px){.tg-p{left:auto;right:12px}}

/* page des plans : typographie plus compacte */
.pg-pl h1{font-size:26px}
.pg-pl .sub{font-size:15px;margin-top:4px}
.pg-pl .plans{gap:12px;margin:16px 0 12px}
.pg-pl .plan{padding:16px 18px 16px;border-radius:26px}
.pg-pl .plan .pbadge{font-size:12px;padding:3px 10px}
.pg-pl .plan h2{font-size:18px;margin-top:8px}
.pg-pl .plan .price{font-size:26px;margin-top:2px}
.pg-pl .plan .price small{font-size:13px}
.pg-pl .plan .pd{font-size:13.5px;margin:4px 0 12px;line-height:1.4}
.pg-pl .plan ul{padding-top:12px;gap:8px;margin-bottom:14px}
.pg-pl .plan li{font-size:14px;gap:9px;line-height:1.3}
.pg-pl .plan li svg{margin-top:2px}
.pg-pl .plan li .lt{display:block;font-weight:700;font-size:14px}
.pg-pl .plan li .lh{display:block;font-size:12.5px;line-height:1.35;color:var(--mute);margin-top:1px}
.pg-pl .plan.hot li .lh{color:rgba(255,255,255,.75)}
.pg-pl .plan .btn{padding-top:10px;padding-bottom:10px;font-size:14.5px}
.pg-pl .note{font-size:13px}

@media (prefers-reduced-motion:reduce){.tg-ty i{animation:none}}
.auth label.ck{display:flex;align-items:flex-start;gap:12px;margin-top:18px;font-weight:500;font-size:14.5px;line-height:1.5;cursor:pointer}
.auth label.ck input{width:24px;height:24px;flex:none;margin:0;accent-color:var(--blue);cursor:pointer}
.auth label.ck a{color:var(--blue);font-weight:700}
.lg h2{font-size:18px;margin:26px 0 8px}.lg h2:first-child{margin-top:4px}.lg p,.lg li{line-height:1.6;font-size:15.5px}.lg p{margin:0 0 10px}.lg ul{padding-left:20px;margin:0 0 10px}.lg li{margin-bottom:6px}.lg a{color:var(--blue);font-weight:600;overflow-wrap:anywhere}
#app{overflow-x:clip}
@keyframes pgfwd{from{opacity:1}}
@keyframes pgback{from{opacity:1}}
@keyframes tabin{from{opacity:0;transform:translateY(8px)}}
#body.tabin{animation:tabin .26s cubic-bezier(.22,.8,.24,1)}
.tg-p:not([hidden]){animation:dlgin .3s cubic-bezier(.22,.8,.24,1)}
.tg-b,.tg-hi,.tg-p{transition-property:opacity,visibility;transition-duration:.25s}
body.nobot .tg-b,body.nobot .tg-hi,body.nobot .tg-p{opacity:0!important;visibility:hidden;pointer-events:none}
@media (prefers-reduced-motion:reduce){.wrap.pg-fwd,.wrap.pg-back,#body.tabin,.tg-p:not([hidden]){animation:none}}
.wz-prog{display:flex;gap:6px;margin:4px 0 14px}.wz-prog i{flex:1;height:6px;border-radius:99px;background:var(--line);transition:background-color .25s ease}.wz-prog i.on{background:var(--blue)}
.wz-st{font-weight:700;font-size:14px;color:var(--blue);margin-bottom:6px}
#wz-h:focus{outline:none}
.wz-ph{display:flex;gap:8px}.wz-ph select{flex:0 0 46%;min-width:0}.wz-ph input{flex:1;min-width:0;width:auto}
select{font:inherit;color:inherit;border:1px solid var(--line);background:var(--card);border-radius:22px;padding:12px 14px;box-shadow:var(--shadow-sm);max-width:100%}
select:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.wz-err{color:#b3261e;font-size:13px;font-weight:600;margin-top:6px;padding-left:6px}
input[aria-invalid=true],textarea[aria-invalid=true]{border-color:#b3261e}
.wz-nav{display:flex;gap:10px;margin-top:4px}.wz-nav .btn{flex:1;justify-content:center;padding:14px 18px}
.wz-done{text-align:center;display:flex;flex-direction:column;align-items:center;padding:32px 22px}.wz-done .av{width:92px;height:92px;margin-bottom:14px}.wz-done h1{font-size:28px}.wz-done .sub{font-size:16px;line-height:1.5}.wz-done .wz-nav{width:100%}

/* ===== Chat v3 : barre flottante, point vert, bouton Installer ===== */
.chat{position:relative}
.msgs{padding-bottom:104px}
.dock{position:absolute;left:0;right:0;bottom:0;z-index:4;padding:0 12px calc(12px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;pointer-events:none}
.dock>*{pointer-events:auto}
.dock .cin{background:transparent;border:0;padding:0;gap:10px}
.dock .cin input.ti{border:0;background:#fff;box-shadow:0 8px 24px rgba(16,27,59,.18),0 1px 3px rgba(16,27,59,.08);padding:15px 20px}
.dock .send{width:52px;height:52px;box-shadow:0 8px 24px rgba(16,27,59,.25)}
.dock .clip{background:#fff;box-shadow:0 8px 24px rgba(16,27,59,.15)}
.dock .pend{background:transparent;border:0;padding:0 4px 8px}
.dock .pc{background:#fff;box-shadow:0 4px 14px rgba(16,27,59,.15)}
.avw{position:relative;flex:none}
.avw .dot-on{position:absolute;right:-1px;bottom:-1px;width:15px;height:15px;border-radius:50%;background:#9aa3b8;border:2.5px solid #fff;box-sizing:border-box}
.avw .dot-on.on{background:#22c55e;animation:vvping 2.2s infinite}
@keyframes vvping{0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}70%,100%{box-shadow:0 0 0 7px rgba(34,197,94,0)}}
@media (prefers-reduced-motion:reduce){.avw .dot-on.on{animation:none}}
.chb .inst{width:auto;height:38px;border-radius:999px;padding:0 14px;gap:6px;display:inline-flex;align-items:center;font-weight:700;font-size:13.5px;white-space:nowrap;background:rgba(255,255,255,.28);color:inherit;border:0;cursor:pointer}
.chb .inst:active{transform:scale(.96)}
.ch>div:nth-child(2){flex:1}
.ch .name{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}
.ch .cs{line-height:1.25}
.chb{flex:none}
.send{display:grid;place-items:center;padding:0}
.foot a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:2px}
/* Bande d'en-tête v4 */
.chat .ch{position:relative;z-index:5;border-radius:0 0 26px 26px;padding-bottom:18px;background-image:linear-gradient(180deg,rgba(255,255,255,.08),rgba(0,0,0,.16))!important;box-shadow:0 8px 20px rgba(16,27,59,.2)}
.ch .avw .av{box-shadow:0 0 0 3px rgba(255,255,255,.4)}
.chb .inst{background:#fff;color:var(--blue);box-shadow:0 2px 8px rgba(16,27,59,.18)}
.tg-b.mv{opacity:.28}
.hero.cmp{padding:18px 20px;margin-bottom:22px}
.hero.cmp h1{font-size:23px;padding-right:80px;margin:0 0 12px}
.hero.cmp p{display:none}
.hero.cmp .big{width:72px;top:10px;right:14px}
/* astuce accueil */
.hero .tip{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:12px 14px;background:rgba(255,255,255,.55);border-radius:20px}
.hero .tip-ic{flex:none;width:28px;height:28px;border-radius:50%;background:#101b3b;color:#f5d453;display:inline-flex;align-items:center;justify-content:center}
.hero .tip-b{flex:1;min-width:0}
.hero .tip-t{margin:0;padding:0;min-height:60px;font-size:14.5px;line-height:1.4;font-weight:600;color:#101b3b;display:block;transition:opacity .45s ease,transform .45s ease}
.hero .tip-t.out{opacity:0;transform:translateY(6px)}
.hero .tip-d{display:flex;gap:5px;margin-top:6px}
.hero .tip-d i{width:6px;height:6px;border-radius:99px;background:rgba(16,27,59,.25);transition:width .35s ease,background .35s ease}
.hero .tip-d i.on{width:18px;background:#101b3b}
@media (prefers-reduced-motion:reduce){.hero .tip-t,.hero .tip-d i{transition:none}}
.hero.cmp .tip-t{display:block}

.chat .msgs{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='240'%20height='240'%20viewBox='0%200%20240%20240'%3E%3Cg%20fill='none'%20stroke='rgba(16%2C27%2C59%2C.075)'%20stroke-width='1.7'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cg%20transform='translate(22%2026)%20rotate(-10)'%3E%3Cpath%20d='M0%208h22l-2%2020H2z'/%3E%3Cpath%20d='M6%208V5a5%205%200%200%201%2010%200v3'/%3E%3C/g%3E%3Cg%20transform='translate(150%2020)%20rotate(8)'%3E%3Cpath%20d='M4%200h22a4%204%200%200%201%204%204v14a4%204%200%200%201-4%204H12l-7%206v-6H4a4%204%200%200%201-4-4V4a4%204%200%200%201%204-4z'/%3E%3Cpath%20d='M7%209h16M7%2014h10'/%3E%3C/g%3E%3Cg%20transform='translate(92%2072)%20rotate(14)'%3E%3Cpath%20d='M10%200l3%207%207%20.8-5.3%204.8%201.6%207.4L10%2016.4%203.7%2020l1.6-7.4L0%207.8%207%207z'/%3E%3C/g%3E%3Cg%20transform='translate(186%2098)%20rotate(-8)'%3E%3Cpath%20d='M0%204h18v10a6%206%200%200%201-6%206H6a6%206%200%200%201-6-6z'/%3E%3Cpath%20d='M18%207h3a3%203%200%200%201%200%208h-3'/%3E%3Cpath%20d='M5%200v1M10%200v1'/%3E%3C/g%3E%3Cg%20transform='translate(24%20108)%20rotate(10)'%3E%3Cpath%20d='M12%2020S0%2012%200%205.500A6%206%200%200%201%2012%204a6%206%200%200%201%2012%201.500C24%2012%2012%2020%2012%2020z'/%3E%3C/g%3E%3Cg%20transform='translate(104%20144)%20rotate(-16)'%3E%3Cpath%20d='M2%202h10l10%2010-10%2010L2%2012z'/%3E%3Ccircle%20cx='7'%20cy='7'%20r='1.6'/%3E%3C/g%3E%3Cg%20transform='translate(26%20184)'%3E%3Ccircle%20cx='11'%20cy='11'%20r='11'/%3E%3Cpath%20d='M11%205v6l4%203'/%3E%3C/g%3E%3Cg%20transform='translate(168%20172)%20rotate(12)'%3E%3Cpath%20d='M10%200l2%208%208%202-8%202-2%208-2-8-8-2%208-2z'/%3E%3C/g%3E%3Cg%20transform='translate(206%20206)'%3E%3Ccircle%20cx='3'%20cy='3'%20r='2.2'/%3E%3C/g%3E%3Cg%20transform='translate(78%2020)'%3E%3Ccircle%20cx='3'%20cy='3'%20r='2.2'/%3E%3C/g%3E%3Cg%20transform='translate(70%20214)'%3E%3Ccircle%20cx='3'%20cy='3'%20r='2.2'/%3E%3C/g%3E%3Cg%20transform='translate(216%2052)'%3E%3Ccircle%20cx='3'%20cy='3'%20r='2.2'/%3E%3C/g%3E%3Cg%20transform='translate(130%20108)'%3E%3Ccircle%20cx='3'%20cy='3'%20r='2.2'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")!important}
