/* Assistant support Kooma — widget flottant (accueil + console).
   AUTONOME : palette embarquée (mêmes valeurs que landing3.css) pour un rendu identique partout,
   y compris sur des pages qui ne définissent pas les variables de la landing. */
#kswidget{
  --ks-bg:#0e1118; --ks-line:rgba(235,238,244,.07); --ks-line2:rgba(235,238,244,.14);
  --ks-txt:#eceef2; --ks-mut:#6b7484; --ks-acc:#2bc98a;
  --ks-bot:rgba(235,238,244,.08); --ks-in:rgba(235,238,244,.05);
  --ks-user:#d0ebdd; --ks-user-txt:#17241c;
  position:fixed;right:1.1rem;bottom:1.1rem;z-index:2147483000;
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
:root[data-theme="light"] #kswidget{
  --ks-bg:#ffffff; --ks-line:rgba(18,22,28,.08); --ks-line2:rgba(18,22,28,.16);
  --ks-txt:#14181e; --ks-mut:#8b93a1; --ks-acc:#0e9463;
  --ks-bot:rgba(18,22,28,.06); --ks-in:rgba(18,22,28,.04)}
#ksbtn{width:54px;height:54px;border-radius:50%;border:none;cursor:pointer;
  background:var(--ks-acc);color:#fff;box-shadow:0 10px 28px -8px rgba(0,0,0,.5);
  transition:transform .18s ease}
#ksbtn:hover{transform:translateY(-2px) scale(1.05)}
#ksbtn svg{width:25px;height:25px;display:block;margin:auto}
.ks-head svg{width:18px;height:18px;color:var(--ks-acc)}
.ks-form button svg{width:17px;height:17px;display:block;margin:auto}
#kspanel{position:absolute;right:0;bottom:64px;width:min(92vw,370px);height:min(70vh,520px);
  display:flex;flex-direction:column;background:var(--ks-bg);border:1px solid var(--ks-line2);
  border-radius:16px;overflow:hidden;box-shadow:0 24px 60px -18px rgba(0,0,0,.55)}
#kspanel[hidden]{display:none}
/* halo doré translucide quand on arrive via un lien Aide (même esprit que la box démo) */
#kspanel.ks-glow{animation:ksglow 1.2s ease-in-out 3;border-color:rgba(240,192,96,.75)}
@keyframes ksglow{
  0%,100%{box-shadow:0 24px 60px -18px rgba(0,0,0,.55),0 0 0 0 rgba(240,192,96,0)}
  50%{box-shadow:0 24px 60px -18px rgba(0,0,0,.55),0 0 26px 4px rgba(240,192,96,.55)}
}
.ks-head{display:flex;align-items:center;gap:.55rem;padding:.8rem 1rem;border-bottom:1px solid var(--ks-line);
  color:var(--ks-txt);font-weight:650}
#ksclose{margin-left:auto;background:none;border:none;color:var(--ks-mut);font-size:1.3rem;cursor:pointer;line-height:1}
#ksclose:hover{color:var(--ks-txt)}
.ks-msgs{flex:1;overflow-y:auto;padding:.9rem;display:flex;flex-direction:column;gap:.55rem}
.ks-m{max-width:86%;padding:.55rem .8rem;border-radius:12px;font-size:.92rem;line-height:1.45;
  white-space:pre-wrap;word-break:break-word}
.ks-bot{align-self:flex-start;background:var(--ks-bot);color:var(--ks-txt);border-bottom-left-radius:4px}
.ks-user{align-self:flex-end;background:var(--ks-user);color:var(--ks-user-txt);border-bottom-right-radius:4px}
.ks-wait{opacity:.55;animation:kspulse 1.1s ease-in-out infinite}
@keyframes kspulse{50%{opacity:.25}}
.ks-m strong{font-weight:700}
.ks-bot strong{color:var(--ks-acc)}   /* mises en évidence au vert du logo */
.ks-m code{background:rgba(127,127,127,.18);border-radius:4px;padding:0 .25em;font-size:.88em}
.ks-bot a{color:var(--ks-acc);text-decoration:underline;text-underline-offset:2px}
.ks-extra{margin-top:.45rem}
.ks-extra a{color:var(--ks-acc);font-weight:600;text-decoration:none}
.ks-extra a:hover{text-decoration:underline}
.ks-form{display:flex;gap:.5rem;padding:.7rem;border-top:1px solid var(--ks-line)}
#ksin{flex:1;background:var(--ks-in);border:1px solid var(--ks-line2);
  border-radius:10px;padding:.55rem .75rem;color:var(--ks-txt);font-size:.92rem;outline:none}
#ksin:focus{border-color:var(--ks-acc)}
.ks-form button{width:42px;border:none;border-radius:10px;background:var(--ks-acc);color:#fff;cursor:pointer}
.ks-form button:hover{filter:brightness(1.08)}
[dir="rtl"] #kswidget{right:auto;left:1.1rem}
[dir="rtl"] #kspanel{right:auto;left:0}
@media (max-width:520px){#kspanel{bottom:70px;height:min(75vh,560px)}}

.ks-ticket{padding:0;background:transparent}
.ks-ticket-form{display:flex;gap:.4rem}
.ks-ticket-form input{flex:1;background:var(--ks-in);border:1px solid var(--ks-line2);
  border-radius:8px;padding:.45rem .65rem;color:var(--ks-txt);font-size:.85rem;outline:none}
.ks-ticket-form input:focus{border-color:var(--ks-acc)}
.ks-ticket-form button{border:none;border-radius:8px;background:var(--ks-acc);color:#fff;
  font-size:.85rem;font-weight:600;padding:.45rem .8rem;cursor:pointer}
.ks-ticket-form button:hover{filter:brightness(1.08)}
.ks-ticket-form button:disabled{opacity:.6;cursor:default}
.ks-ticket-msg{margin-top:.4rem;font-size:.85rem;color:var(--ks-acc)}
