.cl-chat{position:fixed;z-index:20;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));font-size:14px}
.cl-chat [hidden]{display:none}
.chat-launch{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 16px;background:#ad1026;color:#fff;border:0;border-radius:40px;box-shadow:0 5px 18px #0003;font-weight:800}
.chat-launch:hover,.chat-form button:hover{background:#881222}
.chat-panel{position:absolute;right:0;bottom:0;width:min(370px,calc(100vw - 32px));height:min(480px,calc(100dvh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;overflow:hidden;border:1px solid #dfd9dc;border-radius:14px;background:#fff;box-shadow:0 10px 38px #25111935;color:#18171a}
.chat-head{display:flex;align-items:center;gap:9px;background:#ad1026;color:#fff;padding:10px 12px}
.chat-head img{border-radius:4px;object-fit:contain}.chat-head h2{font-size:17px;line-height:1.1;letter-spacing:0;margin:0}.chat-head p{font-size:12px;margin:3px 0 0}
.chat-head button{margin-left:auto;width:40px;height:40px;border:1px solid #ffffff80;border-radius:7px;background:transparent;color:#fff;font-size:24px;line-height:1}
.chat-log{overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:10px;background:#f8f7f8;padding:13px;overflow-wrap:anywhere}
.chat-message{align-self:flex-start;background:#fff;border:1px solid #e7e2e5;border-radius:10px 10px 10px 3px;padding:8px 10px;max-width:92%;white-space:pre-wrap;font-size:14px;line-height:1.38}
.chat-message.chat-user{align-self:flex-end;border-radius:10px 10px 3px 10px;background:#f9e2e7;border-color:#f2c8d0}
.chat-suggestions,.chat-cars{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px}
.chat-suggestions button,.chat-cars button{border:1px solid #dfc4c8;border-radius:7px;background:#fff;color:#891429;padding:5px 8px;text-align:left;font-size:13px}
.chat-suggestions button:hover,.chat-cars button:hover{background:#fae7ec}
.cl-chat .chat-form{width:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px;border:0;border-radius:0;border-top:1px solid #e7e2e5;background:#fff;margin:0}
.chat-form input{margin:0;font-size:16px}.chat-form button{border:0;border-radius:7px;min-height:42px;background:#ad1026;color:#fff;padding:0 10px;font-weight:750}.chat-form button:disabled{opacity:.55;cursor:wait}
.chat-contact{display:block;text-align:center;padding:8px;border-top:1px solid #e7e2e5;color:#891429;font-size:13px;font-weight:750}
.chat-contact:hover{text-decoration:underline}

@media (prefers-reduced-motion: no-preference) {
  .chat-panel {
    opacity: 1;
    transform: translateY(0) scale(1);
    transform-origin: bottom right;
    transition: opacity 200ms ease, transform 200ms ease, display 200ms allow-discrete;
  }

  .chat-panel[hidden] {
    opacity: 0;
    transform: translateY(12px) scale(.97);
    pointer-events: none;
  }

  @starting-style {
    .chat-panel:not([hidden]) {
      opacity: 0;
      transform: translateY(12px) scale(.97);
    }
  }
}
