/* Kairos Chat WhatsApp */
.kwc{--kwc-wa:#25D366;--kwc-wa-d:#128C7E;--kwc-nuit:#0B1F3A;--kwc-abysse:#06142A;--kwc-or:#C9A24B;--kwc-or-p:#E9D6A0;--kwc-txt:#111B21;--kwc-mute:#667781;
	position:fixed;bottom:22px;z-index:9990;font-family:inherit;font-size:15px;line-height:1.45;color:var(--kwc-txt);-webkit-font-smoothing:antialiased}
.kwc.is-right{right:22px}
.kwc.is-left{left:22px}
.kwc *,.kwc *::before,.kwc *::after{box-sizing:border-box}
.kwc button{font:inherit;cursor:pointer}
.kwc .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* Bouton */
.kwc-launch{position:relative;width:64px;height:64px;border:0;border-radius:50%;background:var(--kwc-wa);color:#fff;display:grid;place-items:center;box-shadow:0 16px 36px -10px rgba(37,211,102,.75),0 2px 6px rgba(0,0,0,.12);transition:transform .45s cubic-bezier(.16,1,.3,1),background .3s;margin-left:auto}
.kwc.is-left .kwc-launch{margin-left:0}
.kwc-launch:hover{transform:scale(1.07)}
.kwc-launch:active{transform:scale(.95)}
.kwc-launch:focus-visible{outline:3px solid var(--kwc-or);outline-offset:3px}
.kwc-launch::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--kwc-wa);animation:kwc-ripple 2.8s ease-out infinite}
.kwc.is-active .kwc-launch::before{animation:none;opacity:0}
.kwc-launch svg{width:32px;height:32px}
.kwc-ic-wa,.kwc-ic-x{position:absolute;display:grid;place-items:center;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .3s}
.kwc-ic-x{opacity:0;transform:rotate(-90deg) scale(.6)}
.kwc-ic-x svg{width:26px;height:26px}
.kwc.is-active .kwc-launch{background:var(--kwc-nuit)}
.kwc.is-active .kwc-ic-wa{opacity:0;transform:rotate(90deg) scale(.6)}
.kwc.is-active .kwc-ic-x{opacity:1;transform:none}
.kwc-badge{position:absolute;top:-2px;right:-2px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#FF3B30;color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;border:2px solid #fff;transform:scale(0);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.kwc.has-badge .kwc-badge{transform:scale(1)}

/* Invitation */
.kwc-teaser{position:absolute;bottom:80px;width:250px;background:#fff;border-radius:16px 16px 4px 16px;padding:14px 34px 14px 16px;box-shadow:0 18px 40px -12px rgba(6,20,42,.35),0 0 0 1px rgba(6,20,42,.06);opacity:0;transform:translateY(10px) scale(.96);transition:opacity .45s,transform .55s cubic-bezier(.16,1,.3,1)}
.kwc.is-right .kwc-teaser{right:4px;transform-origin:bottom right}
.kwc.is-left .kwc-teaser{left:4px;border-radius:16px 16px 16px 4px;transform-origin:bottom left}
.kwc-teaser{visibility:hidden;pointer-events:none}
.kwc-teaser.is-in{opacity:1;transform:none;visibility:visible;pointer-events:auto}
.kwc.is-active .kwc-teaser{opacity:0;visibility:hidden}
.kwc-teaser p{margin:0;font-weight:500;color:var(--kwc-nuit)}
.kwc-teaser-x{position:absolute;top:6px;right:8px;width:24px;height:24px;border:0;border-radius:50%;background:transparent;color:var(--kwc-mute);font-size:18px;line-height:1}
.kwc-teaser-x:hover{background:#F0F2F5}

/* Fenêtre */
.kwc-panel{position:absolute;bottom:82px;width:370px;max-height:min(600px,calc(100vh - 130px));display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:#EFEAE2;box-shadow:0 30px 70px -20px rgba(6,20,42,.55),0 0 0 1px rgba(6,20,42,.08);opacity:0;transform:translateY(16px) scale(.96);transition:opacity .35s,transform .55s cubic-bezier(.16,1,.3,1),visibility 0s .55s;pointer-events:none;visibility:hidden}
.kwc.is-right .kwc-panel{right:0;transform-origin:bottom right}
.kwc.is-left .kwc-panel{left:0;transform-origin:bottom left}
.kwc.is-active .kwc-panel{opacity:1;transform:none;pointer-events:auto;visibility:visible;transition:opacity .35s,transform .55s cubic-bezier(.16,1,.3,1),visibility 0s}
.kwc-head{display:flex;align-items:center;gap:12px;padding:16px 14px 16px 16px;background:radial-gradient(120% 140% at 100% 0%,#173a66 0%,var(--kwc-nuit) 55%,var(--kwc-abysse) 100%);color:#fff}
.kwc-avatar{position:relative;flex:0 0 auto;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--kwc-or),var(--kwc-or-p));display:grid;place-items:center;box-shadow:0 0 0 2px rgba(233,214,160,.35)}
.kwc-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.kwc-avatar b{font-weight:750;font-size:19px;color:var(--kwc-nuit)}
.kwc-dot{position:absolute;right:0;bottom:1px;width:12px;height:12px;border-radius:50%;background:#9AA5B1;border:2px solid var(--kwc-nuit)}
.kwc-dot.is-on{background:var(--kwc-wa)}
.kwc-dot.is-on::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--kwc-wa);animation:kwc-ripple 2.4s ease-out infinite}
.kwc-who{flex:1;min-width:0;display:flex;flex-direction:column}
.kwc-who strong{font-size:16px;font-weight:650;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kwc-who small{font-size:13px;color:#B9C4D6}
.kwc-close{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;transition:background .3s}
.kwc-close:hover{background:rgba(255,255,255,.16)}
.kwc-close svg{width:18px;height:18px}
.kwc-body{position:relative;flex:1;overflow-y:auto;padding:16px 14px 10px;display:flex;flex-direction:column;gap:10px;min-height:250px;background-color:#EFEAE2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28'%3E%3Cg fill='none' stroke='%23C9A24B' stroke-opacity='.18' stroke-width='1'%3E%3Cpath d='M0 7h11M17 7h11M0 21h4M10 21h18'/%3E%3Cpath d='M7 0v4M7 10v18M21 0v11M21 17v11'/%3E%3C/g%3E%3C/svg%3E")}
.kwc-day{align-self:center;font-size:12px;font-weight:600;color:#54656F;background:rgba(255,255,255,.9);padding:4px 10px;border-radius:8px;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.kwc-msg{position:relative;max-width:85%;padding:9px 12px 20px;border-radius:12px;box-shadow:0 1px .5px rgba(11,20,26,.13);animation:kwc-pop .45s cubic-bezier(.16,1,.3,1)}
.kwc-msg p{margin:0;white-space:normal;word-wrap:break-word}
.kwc-msg p+p{margin-top:8px}
.kwc-msg time{position:absolute;right:10px;bottom:5px;font-size:11px;color:var(--kwc-mute)}
.kwc-in{align-self:flex-start;background:#fff;border-top-left-radius:2px}
.kwc-in::before{content:"";position:absolute;left:-7px;top:0;border-top:8px solid #fff;border-left:8px solid transparent}
.kwc-out{align-self:flex-end;background:#D9FDD3;border-top-right-radius:2px}
.kwc-out::before{content:"";position:absolute;right:-7px;top:0;border-top:8px solid #D9FDD3;border-right:8px solid transparent}
.kwc-out time::after{content:" ✓✓";color:#53BDEB;letter-spacing:-2px}
.kwc-offline{color:#8A6A25;font-size:14px}
.kwc-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 14px;background:#fff;border-radius:12px;border-top-left-radius:2px;box-shadow:0 1px .5px rgba(11,20,26,.13)}
.kwc-typing i{width:7px;height:7px;border-radius:50%;background:#A0AAB2;animation:kwc-dots 1.2s infinite}
.kwc-typing i:nth-child(2){animation-delay:.15s}.kwc-typing i:nth-child(3){animation-delay:.3s}
.kwc-typing[hidden]{display:none}
.kwc-quick{display:flex;flex-direction:column;align-items:flex-end;gap:6px;margin-top:2px}
.kwc-quick button{max-width:88%;text-align:right;border:1.5px solid var(--kwc-wa);background:#fff;color:var(--kwc-wa-d);font-weight:600;font-size:14px;padding:8px 14px;border-radius:18px;opacity:0;transform:translateY(8px);animation:kwc-rise .5s cubic-bezier(.16,1,.3,1) forwards;transition:background .25s,color .25s}
.kwc-quick button:hover,.kwc-quick button:focus-visible{background:var(--kwc-wa);color:#fff;outline:none}
.kwc-quick button:nth-child(2){animation-delay:.08s}.kwc-quick button:nth-child(3){animation-delay:.16s}.kwc-quick button:nth-child(4){animation-delay:.24s}.kwc-quick button:nth-child(5){animation-delay:.32s}.kwc-quick button:nth-child(6){animation-delay:.4s}
.kwc-quick[hidden],.kwc-msg[hidden]{display:none}
.kwc-admin{font-size:13px;background:#FFF4D6;color:#5C4813;border-radius:10px;padding:10px 12px}
.kwc-admin a{color:inherit;font-weight:600}
.kwc-note{align-self:center;font-size:12.5px;color:#54656F;background:rgba(255,255,255,.9);padding:5px 10px;border-radius:8px}

/* Saisie */
.kwc-form{display:flex;align-items:flex-end;gap:8px;padding:10px;background:#F0F2F5}
.kwc-form textarea{flex:1;resize:none;max-height:110px;min-height:44px;border:0;border-radius:22px;padding:11px 16px;font:inherit;font-size:15px;color:var(--kwc-txt);background:#fff;outline:none;box-shadow:0 0 0 1px rgba(11,20,26,.06)}
.kwc-form textarea:focus{box-shadow:0 0 0 2px var(--kwc-wa)}
.kwc-send{flex:0 0 auto;width:44px;height:44px;border:0;border-radius:50%;background:var(--kwc-wa);color:#fff;display:grid;place-items:center;transition:transform .3s cubic-bezier(.16,1,.3,1),background .3s}
.kwc-send:hover{transform:scale(1.06);background:#1FBF5B}
.kwc-send:disabled{background:#9DDCB5;cursor:default;transform:none}
.kwc-send svg{width:20px;height:20px;margin-left:2px}
.kwc-foot{margin:0;padding:6px 10px 10px;background:#F0F2F5;text-align:center;font-size:12px;color:var(--kwc-mute);display:flex;align-items:center;justify-content:center;gap:6px}
.kwc-foot svg{width:14px;height:14px;color:var(--kwc-wa)}

@keyframes kwc-ripple{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.7);opacity:0}}
@keyframes kwc-dots{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
@keyframes kwc-pop{from{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}
@keyframes kwc-rise{to{opacity:1;transform:none}}

/* Téléphone : fenêtre en plein bas d'écran */
@media (max-width:520px){
	.kwc{bottom:16px}
	.kwc.is-right{right:16px}.kwc.is-left{left:16px}
	.kwc-launch{width:58px;height:58px}
	.kwc-panel{position:fixed;left:8px!important;right:8px!important;bottom:86px;width:auto;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px)}
	.kwc-teaser{width:220px}
}
@media (prefers-reduced-motion:reduce){
	.kwc *,.kwc *::before,.kwc *::after{animation:none!important;transition-duration:.01ms!important}
	.kwc-quick button{opacity:1;transform:none}
}

/* Choix du conseiller */
.kwc-agents{display:flex;flex-direction:column;gap:8px;animation:kwc-pop .45s cubic-bezier(.16,1,.3,1)}
.kwc-agents[hidden]{display:none}
.kwc-agents-t{align-self:flex-start;background:#fff;border-radius:12px;border-top-left-radius:2px;padding:9px 12px;box-shadow:0 1px .5px rgba(11,20,26,.13);margin-bottom:4px}
.kwc-agent{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;background:#fff;border-radius:14px;padding:10px 12px;box-shadow:0 1px .5px rgba(11,20,26,.13);transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s}
.kwc-agent:hover,.kwc-agent:focus-visible{transform:translateX(3px);box-shadow:0 0 0 2px var(--kwc-wa);outline:none}
.kwc-agent .kwc-avatar{width:40px;height:40px}
.kwc-agent .kwc-avatar b{font-size:16px}
.kwc-agent span.kwc-a-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.kwc-agent strong{font-size:15px;color:var(--kwc-txt)}
.kwc-agent small{font-size:13px;color:var(--kwc-mute)}
.kwc-agent .kwc-go{color:var(--kwc-wa-d);font-size:20px;line-height:1}
.kwc-back{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;margin-right:-4px}
.kwc-back[hidden]{display:none}
.kwc-back svg{width:18px;height:18px}

/* Variante « vert WhatsApp classique » */
.kwc.kwc-theme-wa .kwc-head{background:#075E54}
.kwc.kwc-theme-wa .kwc-avatar{background:#DFF5EA;box-shadow:none}
.kwc.kwc-theme-wa .kwc-avatar b{color:#075E54}
.kwc.kwc-theme-wa .kwc-dot{border-color:#075E54}
.kwc.kwc-theme-wa .kwc-who small{color:#D1F4E5}
.kwc.kwc-theme-wa .kwc-body{background-image:none}
.kwc.kwc-theme-wa.is-active .kwc-launch{background:#075E54}
.kwc-hide-mobile{display:block}
@media (max-width:520px){.kwc.kwc-no-mobile{display:none}}

/* Info-bulle au survol du bouton */
.kwc-tip{position:absolute;bottom:14px;white-space:nowrap;background:var(--kwc-nuit);color:#fff;font-size:14px;font-weight:500;padding:9px 14px;border-radius:12px;box-shadow:0 12px 28px -10px rgba(6,20,42,.5);opacity:0;pointer-events:none;transition:opacity .3s,transform .4s cubic-bezier(.16,1,.3,1)}
.kwc.is-right .kwc-tip{right:78px;transform:translateX(8px)}
.kwc.is-left .kwc-tip{left:78px;transform:translateX(-8px)}
.kwc.is-right .kwc-tip::after,.kwc.is-left .kwc-tip::after{content:"";position:absolute;top:50%;margin-top:-6px;border:6px solid transparent}
.kwc.is-right .kwc-tip::after{right:-11px;border-left-color:var(--kwc-nuit)}
.kwc.is-left .kwc-tip::after{left:-11px;border-right-color:var(--kwc-nuit)}
@media (hover:hover){.kwc-launch:hover~.kwc-tip,.kwc-launch:focus-visible~.kwc-tip{opacity:1;transform:none}}
.kwc.is-active .kwc-tip,.kwc .kwc-teaser.is-in~.kwc-tip{display:none}

/* 1.0.2 : la bulle d'invitation apparaît par le CSS seul (même si un outil d'optimisation retarde le JavaScript) */
@keyframes kwc-pop{from{opacity:0;visibility:hidden;transform:translateY(10px) scale(.96)}to{opacity:1;visibility:visible;transform:none;pointer-events:auto}}
@keyframes kwc-badge-in{from{transform:scale(0)}to{transform:scale(1)}}
.kwc-teaser.kwc-auto{animation:kwc-pop .55s cubic-bezier(.16,1,.3,1) var(--kwc-delay,6s) both;pointer-events:auto}
.kwc.kwc-auto-on .kwc-badge{animation:kwc-badge-in .4s cubic-bezier(.34,1.56,.64,1) var(--kwc-delay,6s) both}
.kwc-teaser.is-off,.kwc.is-active .kwc-teaser{display:none!important}
.kwc.is-seen .kwc-badge{display:none}
.kwc{z-index:2147483000!important}
@media (prefers-reduced-motion:reduce){.kwc-teaser.kwc-auto{opacity:1;visibility:visible;transform:none}.kwc.kwc-auto-on .kwc-badge{transform:scale(1)}}
