.zammad-chat { color: black; position: fixed; right: 30px; bottom: 0; font-size: 12px; width: 33em; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3); border-radius: 5px 5px 0 0; will-change: bottom; display: none; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } .zammad-chat.zammad-chat-is-open { display: -webkit-flex; display: -ms-flexbox; display: flex; } .zammad-chat-icon { height: 2em; fill: currentColor; vertical-align: top; margin-right: 5px; margin-top: 4px; } .zammad-chat-header { padding: 0.5em 2.5em 0.5em 1em; background: #379ad7; color: white; line-height: 2.5em; box-shadow: 0 -1px #247fb7, 0 1px rgba(255, 255, 255, 0.3) inset, 0 -1px #247fb7 inset, 0 1px 1px rgba(0, 0, 0, 0.13); position: relative; border-radius: 5px 5px 0 0; overflow: hidden; cursor: pointer; } .zammad-chat.zammad-chat-is-open .zammad-chat-header { cursor: default; } .zammad-chat-welcome-text { font-size: 1.2em; } .zammad-chat-header-icon { position: absolute; right: 0; top: 0; height: 100%; width: 3.4em; text-align: center; line-height: 3.5em; cursor: pointer; } .zammad-chat-header-icon-open, .zammad-chat-header-icon-close { fill: currentColor; width: 1.6em; vertical-align: middle; } .zammad-chat-header-icon-close { width: 1.3em; } .zammad-chat-header-icon-close, .zammad-chat.zammad-chat-is-open .zammad-chat-header-icon-open { display: none; } .zammad-chat.zammad-chat-is-open .zammad-chat-header-icon-close { display: inline; } .zammad-chat-agent { float: left; } .zammad-chat-header-controls { float: right; } .zammad-chat-agent-avatar { border-radius: 100%; margin-right: 0.6em; float: left; width: 2.5em; } .zammad-chat-agent-name { font-weight: bold; } .zammad-chat-agent-status { margin: 0 1em; display: inline-block; line-height: 2em; padding: 0 0.7em; border-radius: 1em; background: #288ecc; box-shadow: 0 0 0 1px #2582bb; } .zammad-chat-agent-status:before { content: ""; background: #f35912; display: inline-block; height: 0.9em; width: 0.9em; border-radius: 100%; position: relative; margin-right: 0.3em; box-shadow: 0 0 0 1px #2582bb; } .zammad-chat-agent-status[data-status="online"]:before { background: #52c782; } .zammad-chat-agent-status[data-status="connecting"]:before { -webkit-animation: linear connect-fade 600ms infinite alternate; animation: linear connect-fade 600ms infinite alternate; background: #faab00; } @-webkit-keyframes connect-fade { from { opacity: .5; -webkit-transform: scale(0.6); transform: scale(0.6); } to { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } @keyframes connect-fade { from { opacity: .5; -webkit-transform: scale(0.6); transform: scale(0.6); } to { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } .zammad-chat-modal { position: absolute; left: 0; right: 0; bottom: 0; top: 3.5em; margin-top: 1px; text-align: center; background: radial-gradient(rgba(255, 255, 255, 0.75), white); z-index: 1; padding: 10px; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; } .zammad-chat-modal-text { font-size: 1.3em; line-height: 1.45; } .zammad-chat-modal-text .zammad-chat-loading-animation { font-size: 0.7em; } .zammad-chat-modal .zammad-chat-loading-animation { margin-right: 8px; vertical-align: middle; } .zammad-chat-body { padding: 0.5em 1em; height: 300px; overflow: auto; background: white; } .zammad-chat-timestamp { text-align: center; color: #999999; font-size: 0.8em; margin: 1em 0; } .zammad-chat-message { margin: 0.5em 0; } .zammad-chat-status, .zammad-chat-message-body { padding: 0.5em 1em; line-height: 1.4; border-radius: 1em; background: #f6f8f9; display: inline-block; max-width: 70%; white-space: pre-line; word-wrap: break-word; box-shadow: 0 2px rgba(255, 255, 255, 0.15) inset, 0 0 0 1px rgba(0, 0, 0, 0.08) inset, 0 1px rgba(0, 0, 0, 0.02); } .zammad-chat-status { display: inline-block; position: relative; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); margin: 1em 0; background: #eee; } .zammad-chat-message--customer { text-align: right; } .zammad-chat-message--customer + .zammad-chat-message--agent, .zammad-chat-message--agent + .zammad-chat-message--customer { margin-top: 1em; } .zammad-chat-message--customer .zammad-chat-message-body { background: #379ad7; color: white; } .zammad-chat-message--unread { font-weight: bold; } .zammad-chat-message--typing .zammad-chat-message-body { white-space: normal; } .zammad-chat-loading-animation { display: inline-block; } .zammad-chat-loading-circle { background: #c5dded; border-radius: 100%; height: 0.72em; width: 0.72em; display: inline-block; -webkit-animation: ease-in-out load-fade 600ms infinite alternate; animation: ease-in-out load-fade 600ms infinite alternate; } .zammad-chat-loading-circle + .zammad-chat-loading-circle { -webkit-animation-delay: .13s; animation-delay: .13s; } .zammad-chat-loading-circle + .zammad-chat-loading-circle + .zammad-chat-loading-circle { -webkit-animation-delay: .26s; animation-delay: .26s; } @-webkit-keyframes load-fade { from { opacity: .5; -webkit-transform: scale(0.6); transform: scale(0.6); } 67% { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } @keyframes load-fade { from { opacity: .5; -webkit-transform: scale(0.6); transform: scale(0.6); } 67% { opacity: 1; -webkit-transform: scale(1); transform: scale(1); } } .zammad-chat-controls { overflow: hidden; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; border-top: 1px solid #e3f0f7; padding: 0; line-height: 1.4em; box-shadow: 0 1px rgba(0, 0, 0, 0.01), 0 -1px rgba(0, 0, 0, 0.02); position: relative; background: white; } .zammad-chat-input { float: left; font-family: inherit; line-height: inherit; font-size: inherit; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; background: none; box-shadow: none; padding: 1em 2em; outline: none; resize: none; -webkit-flex: 1; -ms-flex: 1; flex: 1; max-height: 6em; } .zammad-chat-input::-webkit-input-placeholder { color: #bdc9d0; } .zammad-chat-send { -webkit-appearance: none; -moz-appearance: none; appearance: none; float: right; font-family: inherit; font-size: inherit; background: #379ad7; color: white; padding: 0.6em 1.2em; margin: 0.5em 1em 0.5em; cursor: pointer; border: none; border-radius: 1.5em; box-shadow: 0 2px rgba(255, 255, 255, 0.25) inset, 0 0 0 1px #247fb7 inset, 0 1px rgba(0, 0, 0, 0.1); outline: none; } .zammad-chat-is-hidden { display: none; } .zammad-chat-is-visible { display: block; } /* # Flat Design */ .zammad-chat--flat .zammad-chat-header, .zammad-chat--flat .zammad-chat-body { border: none; } .zammad-chat--flat .zammad-chat-header { box-shadow: 0 1px 1px rgba(0, 0, 0, 0.13); } .zammad-chat--flat .zammad-chat-message-body { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08) inset; } .zammad-chat--flat .zammad-chat-agent-status, .zammad-chat--flat .zammad-chat-send, .zammad-chat--flat .zammad-chat-status { box-shadow: none; } /* Mobile Design */ @media only screen and (max-width: 768px) { .zammad-chat { left: 0; right: 0; width: auto; height: 100vh; } .zammad-chat-body { height: auto; -webkit-flex: 1; -ms-flex: 1; flex: 1; } .zammad-chat, .zammad-chat-header { border-radius: 0 !important; } }