.quick-chat { position: fixed; right: 22px; bottom: 22px; z-index: 18; font-size: 14px; }
.quick-chat-launcher { position: relative; display: grid; place-items: center; width: 58px; height: 58px; margin-left: auto; border: 0; border-radius: 21px; background: #191f28; color: #fff; box-shadow: 0 10px 28px #0004; cursor: pointer; font-size: 24px; transition: transform .18s, background .18s; }
.quick-chat-launcher:hover { transform: translateY(-2px); background: var(--blue); }
.quick-chat-launcher i { position: absolute; right: -2px; top: -2px; width: 12px; height: 12px; border: 2px solid #fff; border-radius: 50%; background: #20c56d; }
.chat-launch-close { display: none; font-size: 30px; font-weight: 300; }
.quick-chat.open .chat-launch-icon { display: none; }
.quick-chat.open .chat-launch-close { display: block; }
.quick-chat-panel { position: absolute; right: 0; bottom: 72px; display: flex; flex-direction: column; width: min(370px, calc(100vw - 32px)); max-height: min(620px, calc(100vh - 110px)); overflow: hidden; border: 1px solid #e5e8eb; border-radius: 24px; background: #fff; box-shadow: 0 18px 55px #0003; opacity: 0; visibility: hidden; transform: translateY(14px) scale(.97); transform-origin: right bottom; transition: opacity .18s, visibility .18s, transform .18s; }
.quick-chat.open .quick-chat-panel { opacity: 1; visibility: visible; transform: none; }
.quick-chat-header { display: grid; grid-template-columns: 42px 1fr 32px; align-items: center; gap: 10px; padding: 18px; background: #191f28; color: #fff; }
.chat-avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 14px; background: var(--blue); font-weight: 800; }
.quick-chat-header strong, .quick-chat-header span { display: block; }
.quick-chat-header span { margin-top: 2px; color: #ffffffa8; font-size: 12px; }
.quick-chat-header span i { display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; background: #20c56d; }
.quick-chat-header button { border: 0; background: none; color: #fff; cursor: pointer; font-size: 26px; }
.quick-chat-messages { min-height: 118px; max-height: 210px; overflow-y: auto; padding: 16px; background: #f7f8fa; }
.chat-bubble { width: fit-content; max-width: 88%; margin-bottom: 8px; padding: 10px 12px; border-radius: 14px; line-height: 1.5; }
.chat-bubble.bot { border-top-left-radius: 5px; background: #fff; box-shadow: 0 1px 3px #0001; }
.chat-bubble.user { margin-left: auto; border-top-right-radius: 5px; background: var(--blue); color: #fff; }
.quick-chat-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; padding: 14px 16px; overflow-y: auto; }
.quick-chat-actions button { min-height: 40px; border: 1px solid var(--line); border-radius: 11px; background: #fff; color: var(--text); cursor: pointer; text-align: left; padding: 9px 11px; }
.quick-chat-actions button:hover { border-color: var(--blue); background: #f5f9ff; color: var(--blue); }
.quick-chat-input { display: grid; grid-template-columns: 1fr 40px; gap: 7px; padding: 10px 12px 12px; border-top: 1px solid var(--line); }
.quick-chat-input input { border: 0; background: #f2f4f6; }
.quick-chat-input button { border: 0; border-radius: 12px; background: var(--blue); color: #fff; cursor: pointer; font-size: 20px; }
body.sheet-open .quick-chat, body.lightbox-open .quick-chat { opacity: 0; pointer-events: none; }
@media (max-width: 800px) {
    .quick-chat { right: 12px; bottom: 76px; }
    .quick-chat-panel { bottom: 68px; max-height: calc(100vh - 165px); }
    .quick-chat-launcher { width: 54px; height: 54px; border-radius: 19px; }
}
