.syi-chat-fab,.syi-chat-fab:hover,.syi-chat-fab:focus{position:fixed;right:18px;bottom:18px;z-index:9998;display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border:0;border-radius:999px;background:#0071e3 !important;color:#fff !important;border:0 !important;font:600 .9rem/1 Inter,system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,113,227,.35);cursor:pointer}
.syi-chat-fab svg{width:20px;height:20px}
.syi-chat-fab:hover{background:#0062c3}
.syi-chat{position:fixed;right:18px;bottom:78px;z-index:9999;width:min(380px,calc(100vw - 24px));max-height:min(620px,calc(100vh - 100px));display:flex;flex-direction:column;background:#fff;border:1px solid #e2e2e6;border-radius:18px;box-shadow:0 24px 60px rgba(17,24,39,.18);overflow:hidden;font:15px/1.45 Inter,system-ui,sans-serif;color:#1d1d1f}
.syi-chat[hidden]{display:none}
.syi-chat.is-kb{bottom:auto !important}
.syi-chat__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f5f5f7;border-bottom:1px solid #e2e2e6;font-weight:700;font-size:.95rem}
.syi-chat__head button{border:0;background:transparent;font-size:20px;line-height:1;cursor:pointer;color:#6e6e73}
.syi-chat__ai{padding:6px 14px 7px;background:#f5f5f7;border-bottom:1px solid #e2e2e6;font-size:.72rem;line-height:1.35;color:#6e6e73}
.syi-chat__log{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.syi-chat__msg{max-width:88%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;word-wrap:break-word}
.syi-chat__msg--bot{align-self:flex-start;background:#f5f5f7;border-bottom-left-radius:4px}
.syi-chat__msg--user{align-self:flex-end;background:#0071e3;color:#fff;border-bottom-right-radius:4px}
.syi-chat__msg a{color:inherit;text-decoration:underline}
.syi-chat__img{display:block;width:100%;max-width:220px;height:auto;margin:10px auto 2px;border-radius:10px}
.syi-chat__src{font-size:.78rem;color:#6e6e73;margin-top:6px}
.syi-chat__sugg{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px 8px}
.syi-chat__sugg button{border:1px solid #d2d2d7 !important;background:#fff !important;color:#1d1d1f !important;border-radius:999px;padding:6px 10px;font:500 .8rem Inter,system-ui,sans-serif;color:#1d1d1f;cursor:pointer}
.syi-chat__sugg button:hover{border-color:#0071e3;color:#0071e3}
.syi-chat__form{display:flex;gap:8px;padding:10px;border-top:1px solid #e2e2e6}
.syi-chat__form input{flex:1;min-width:0;border:1px solid #d2d2d7;border-radius:10px;padding:10px 12px;font:inherit;font-size:16px}
.syi-chat__form button{border:0 !important;border-radius:10px;background:#0071e3 !important;color:#fff !important;padding:0 14px;font:600 .9rem Inter,system-ui,sans-serif;cursor:pointer}
.syi-chat__form button:disabled{opacity:.5}
.syi-chat__typing{display:inline-flex;gap:5px;align-items:center;padding:12px 14px}.syi-chat__typing i{width:7px;height:7px;border-radius:50%;background:#8e8e93;animation:syi-dot 1.2s infinite ease-in-out}.syi-chat__typing i:nth-child(2){animation-delay:.2s}.syi-chat__typing i:nth-child(3){animation-delay:.4s}@keyframes syi-dot{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}
@media (max-width:760px){.syi-chat-fab{bottom:14px;right:14px;padding:11px 14px}.syi-chat-fab span{display:none}.syi-chat{right:8px;left:8px;width:auto;bottom:70px}}
.syi-chat-top,.syi-chat-top:hover,.syi-chat-top:focus{display:inline-flex !important;align-items:center;justify-content:center;gap:5px;height:30px !important;min-height:0 !important;border:0 !important;background:#0071e3 !important;color:#fff !important;border-radius:999px;padding:0 10px 0 8px !important;margin:0 4px 0 auto !important;cursor:pointer;flex:0 0 auto;box-shadow:none !important;line-height:1;font:700 .72rem/1 Inter,system-ui,sans-serif !important;letter-spacing:.04em;text-transform:uppercase}
.syi-chat-top svg{width:17px;height:17px}
@media (max-width:430px){.syi-chat-top span{display:none}.syi-chat-top{padding:0 !important;width:32px !important;height:32px !important;border-radius:10px}}
.syi-chat-top svg{width:22px;height:22px}
.syi-chat-top:hover{background:#0062c3 !important}
.syi-chat--top{top:calc(var(--syi-header-h, 64px) + 8px);bottom:auto;max-height:calc(100vh - var(--syi-header-h, 64px) - 24px)}
@media (max-width:992px){.syi-chat--top{right:8px;left:8px;width:auto}}
.syi-chat-hint{position:fixed;z-index:9997;background:#0071e3;color:#fff;font:600 .8rem/1.2 Inter,system-ui,sans-serif;padding:8px 12px;border-radius:10px;box-shadow:0 8px 24px rgba(0,113,227,.3);opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s;cursor:pointer}
.syi-chat-hint.is-on{opacity:1;transform:none}
.syi-chat-hint::before{content:'';position:absolute;top:-6px;left:var(--arrow,50%);margin-left:-6px;border:6px solid transparent;border-top:0;border-bottom-color:#0071e3}
/* "I'm here" nudge (chat.js nudge()): typing dots + soft ring, 3 cycles */
.syi-chat-top{position:relative}
.syi-chat-dots circle{transform-box:fill-box;transform-origin:center}
.is-nudge .syi-chat-dots circle{animation:syi-typing 1.2s ease-in-out 3}
.is-nudge .syi-chat-dots circle:nth-child(2){animation-delay:.15s}
.is-nudge .syi-chat-dots circle:nth-child(3){animation-delay:.3s}
@keyframes syi-typing{0%,55%,100%{transform:translateY(0)}25%{transform:translateY(-2.5px)}}
.syi-chat-top::after,.syi-chat-fab::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0}
.is-nudge::after{animation:syi-ring 1.2s ease-out 3}
@keyframes syi-ring{0%{opacity:1;box-shadow:0 0 0 0 rgba(0,113,227,.5)}100%{opacity:1;box-shadow:0 0 0 9px rgba(0,113,227,0)}}
@media (prefers-reduced-motion:reduce){.is-nudge .syi-chat-dots circle,.is-nudge::after{animation:none}}
/* bubble of the nudge (chat.js nudge()): below the top-bar icon on phones, above the floating button on desktop */
button.syi-chat-hint,button.syi-chat-hint:hover,button.syi-chat-hint:focus{background:#0071e3 !important;color:#fff !important;border:0 !important;margin:0;padding:8px 12px !important;border-radius:10px !important;font:600 .8rem/1.2 Inter,system-ui,sans-serif !important;text-transform:none !important;letter-spacing:0 !important;box-shadow:0 8px 24px rgba(0,113,227,.3) !important;text-align:left;white-space:nowrap;max-width:calc(100vw - 16px)}
.syi-chat-hint--up::before{top:auto;bottom:-6px;border-bottom:0;border-top:6px solid #0071e3;border-bottom-color:transparent}
@media (prefers-reduced-motion:reduce){.syi-chat-hint{transition:none}}

