/* ---- Chat avec Syncat ---- */
.sy-bubble{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:70;width:60px;height:60px;border-radius:50%;border:0;cursor:pointer;
  background:linear-gradient(135deg,#22e0ff,#8a6bff 60%,#ff7ad9);box-shadow:0 10px 30px #000a,0 0 28px #22e0ff66;font-size:1.9rem;display:grid;place-items:center;transition:transform .2s}
.sy-bubble:hover{transform:scale(1.07)}
.sy-bubble .dot{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:50%;background:#ff5f7a;border:2px solid #080a1c;animation:pulse 1.4s infinite}
.sy-bubble.open .dot{display:none}
.sy-tip{position:fixed;right:88px;bottom:calc(30px + env(safe-area-inset-bottom));z-index:70;background:#fff;color:#0a0c22;font:600 .88rem "Space Grotesk",system-ui,sans-serif;padding:9px 14px;border-radius:14px 14px 4px 14px;box-shadow:0 10px 30px #0008;opacity:0;transform:translateY(8px);transition:.4s;pointer-events:none;max-width:60vw}
.sy-tip.on{opacity:1;transform:none}
.sy-panel{position:fixed;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:70;width:min(370px,calc(100vw - 24px));height:min(560px,calc(100dvh - 120px));display:flex;flex-direction:column;
  border-radius:22px;overflow:hidden;background:#0a0d2a;border:1px solid #ffffff22;box-shadow:0 30px 80px #000c,0 0 40px #8a6bff33;
  opacity:0;transform:translateY(16px) scale(.97);pointer-events:none;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s;font-family:"Space Grotesk",system-ui,sans-serif}
.sy-panel.open{opacity:1;transform:none;pointer-events:auto;visibility:visible}
.sy-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#151a55,#0d1038);border-bottom:1px solid #ffffff18}
.sy-av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:1.4rem;background:linear-gradient(135deg,#22e0ff,#8a6bff);flex:0 0 auto}
.sy-head b{display:block;color:#fff}.sy-head small{color:#3dff9a;font-size:.75rem}
.sy-head small::before{content:"● ";font-size:.6rem}
.sy-x{margin-left:auto;background:none;border:0;color:#aab2e6;font-size:1.2rem;cursor:pointer;padding:6px}
.sy-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth;overscroll-behavior:contain}
.sy-msg{max-width:86%;padding:10px 14px;border-radius:18px;font-size:.93rem;line-height:1.45;white-space:pre-wrap;word-wrap:break-word;animation:syin .3s ease-out}
@keyframes syin{from{opacity:0;transform:translateY(8px)}}
.sy-msg.bot{align-self:flex-start;background:#171b52;color:#e8ecff;border-bottom-left-radius:5px}
.sy-msg.me{align-self:flex-end;background:linear-gradient(135deg,#22e0ff,#7df3ff);color:#04121a;border-bottom-right-radius:5px;font-weight:500}
.sy-typing{align-self:flex-start;background:#171b52;border-radius:18px;padding:12px 16px;display:flex;gap:5px}
.sy-typing i{width:7px;height:7px;border-radius:50%;background:#8b93c4;animation:sybounce 1s infinite}
.sy-typing i:nth-child(2){animation-delay:.15s}.sy-typing i:nth-child(3){animation-delay:.3s}
@keyframes sybounce{40%{transform:translateY(-5px);background:#22e0ff}}
.sy-chips{display:flex;flex-wrap:wrap;gap:7px;align-self:flex-start;max-width:100%}
.sy-chips button{background:#22e0ff14;color:#22e0ff;border:1px solid #22e0ff44;border-radius:99px;padding:7px 12px;font:600 .82rem "Space Grotesk",system-ui,sans-serif;cursor:pointer;text-align:left;transition:background .2s}
.sy-chips button:hover{background:#22e0ff2b}
.sy-chips button.go{color:#ff7ad9;border-color:#ff7ad966;background:#ff7ad914}
.sy-form{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #ffffff18;background:#0d1038}
.sy-form input{flex:1;min-width:0;background:#0a0d2a;border:1px solid #ffffff22;border-radius:99px;padding:11px 16px;color:#fff;font:16px "Space Grotesk",system-ui,sans-serif;outline:none}
.sy-form input:focus{border-color:#22e0ff}
.sy-form button{width:42px;height:42px;border-radius:50%;border:0;background:linear-gradient(135deg,#22e0ff,#8a6bff);color:#04121a;font-size:1.1rem;cursor:pointer;flex:0 0 auto}
@media(max-width:520px){
  .sy-panel{right:8px;left:8px;width:auto;bottom:calc(84px + env(safe-area-inset-bottom));height:min(72dvh,560px)}
  .sy-bubble{right:12px;width:56px;height:56px}
  .sy-tip{right:80px}
}
@media(prefers-reduced-motion:reduce){.sy-bubble .dot,.sy-typing i{animation:none}}
