.lfBot{--ink:#f5f0ff;--muted:#b3a9c9;--line:#2a2540;--surface:#14141f;--surface2:#1f1b33;--brand:#ff2f92;--grad:linear-gradient(135deg,#6a4be0 0%,#c50d5f 60%,#ff2f92 100%);--shadow:0 18px 40px -16px #000;position:fixed;left:16px;bottom:16px;z-index:300;color:var(--ink);font-family:var(--font-body,Poppins,sans-serif);font-size:15px;line-height:1.45;text-align:left}
.lfBot *,.lfBot *::before,.lfBot *::after{box-sizing:border-box}
.lfBot button{font:inherit;cursor:pointer}
.lfBot :is(a,button):focus-visible{outline:3px solid var(--brand);outline-offset:2px}
.lfBot-bulle{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;border:0;border-radius:50%;padding:0;background:var(--grad);color:#fff;box-shadow:var(--shadow);transition:transform .15s ease}
.lfBot-bulle:hover{transform:scale(1.06)}
.lfBot-bulle svg{width:28px;height:28px}
.lfBot-point{position:absolute;width:14px;height:14px;border-radius:50%;background:#22c55e;border:2px solid #fff}
.lfBot-bulle .lfBot-point{top:2px;right:2px}
.lfBot.ouvert .lfBot-bulle{display:none}
.lfBot-panneau{display:none;flex-direction:column;width:min(380px,calc(100vw - 32px));height:min(640px,calc(100vh - 32px));height:min(640px,calc(100dvh - 32px));background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}
.lfBot.ouvert .lfBot-panneau{display:flex}
.lfBot-tete{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--grad);color:#fff}
.lfBot-avatar{position:relative;flex:none;width:40px;height:40px;border-radius:50%;background:#0d0d17}
.lfBot-avatar img{width:40px;height:40px;border-radius:50%;display:block}
.lfBot-avatar .lfBot-point{width:12px;height:12px;right:-1px;bottom:-1px}
.lfBot-titres{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.lfBot-titres strong{font-size:15px}
.lfBot-titres small{font-size:12px;opacity:.92}
.lfBot-fermer{display:flex;border:0;background:transparent;color:#fff;padding:4px;border-radius:8px}
.lfBot-fermer svg{width:22px;height:22px}
.lfBot-fil{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
.lfBot-msg{max-width:88%;padding:9px 12px;border-radius:14px;overflow-wrap:anywhere}
.lfBot-msg.elle{align-self:flex-end;background:var(--brand);color:#fff;border-bottom-right-radius:4px}
.lfBot-msg.nous{align-self:flex-start;background:var(--surface2);border-bottom-left-radius:4px}
.lfBot-msg.attente{color:var(--muted);font-style:italic}
.lfBot-livres{display:grid;gap:8px;margin-top:8px}
.lfBot-livre{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px}
.lfBot-livre:hover{border-color:var(--brand)}
.lfBot-livre img,.lfBot-livre i{width:44px;height:66px;object-fit:cover;border-radius:4px;flex:none;background:var(--line)}
.lfBot-livre span{font-weight:600;font-size:14px;line-height:1.3}
.lfBot-livre small{display:block;font-weight:400;color:var(--muted);font-size:12px}
.lfBot-liens{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.lfBot-liens a{display:inline-block;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 11px;font-size:13px;text-decoration:none}
.lfBot-liens a:hover{border-color:var(--brand)}
.lfBot-saisie{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line);background:var(--surface)}
.lfBot-saisie textarea{flex:1;min-width:0;height:44px;min-height:44px;max-height:44px;resize:none;overflow:hidden;line-height:22px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#0f0f1a;color:var(--ink);font:inherit;font-size:16px;box-shadow:none;transition:border-color .15s ease}
.lfBot .lfBot-saisie textarea:focus,.lfBot .lfBot-saisie textarea:focus-visible{outline:none;border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}
.lfBot-saisie button{border:0;border-radius:10px;padding:0 14px;background:var(--brand);color:#fff;font-weight:700}
.lfBot-saisie button:disabled{opacity:.6;cursor:default}
.lfBot-compteur{margin:0;padding:0 16px 4px;font-size:12px;font-weight:600;color:var(--color-accent-pink-light,#ff6fb4);background:var(--surface)}
.lfBot-compteur[hidden]{display:none}
.lfBot-legal{margin:0;padding:0 16px 10px;font-size:11px;line-height:1.35;color:var(--muted);background:var(--surface)}
@media (max-width:480px){.lfBot.ouvert{right:16px}.lfBot-panneau{width:100%;height:calc(100dvh - 32px)}.lfBot-bulle{width:56px;height:56px}}
@media (prefers-reduced-motion:no-preference){.lfBot.ouvert .lfBot-panneau{animation:lfBot-entree .18s ease-out}@keyframes lfBot-entree{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}
@media print{.lfBot{display:none}}
.mobile-bottom-nav .lf-tchat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;padding:0 2px 6px;border:0;background:none;font:inherit;font-size:10.5px;font-weight:600;color:var(--color-text-muted-2);cursor:pointer}
.mobile-bottom-nav .lf-tchat .b{position:relative;display:grid;place-items:center;width:50px;height:50px;margin-top:-22px;border-radius:50%;background:linear-gradient(135deg,#6a4be0 0%,#c50d5f 60%,#ff2f92 100%);color:#fff;border:4px solid var(--color-bg-card)}
.mobile-bottom-nav .lf-tchat .b svg{width:22px;height:22px}
.mobile-bottom-nav .lf-tchat .lfBot-point{top:0;right:0;width:12px;height:12px}
.mobile-bottom-nav .lf-tchat[aria-expanded=true]{color:var(--color-accent-pink-light)}
.mobile-bottom-nav .lf-tchat:focus-visible{outline:3px solid var(--color-accent-pink-light);outline-offset:2px;border-radius:8px}
@media (max-width:1279px){body.has-bottom-nav .lfBot .lfBot-bulle{display:none}body.has-bottom-nav .lfBot{bottom:calc(72px + env(safe-area-inset-bottom,0px))}body.has-bottom-nav .lfBot.ouvert .lfBot-panneau{height:min(640px,calc(100dvh - 104px - env(safe-area-inset-bottom,0px)))}}
