.zammad-chat { color: black; position: fixed; right: 30px; bottom: 0; font-size: 12px; width: 33em; height: 30em; 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; z-index: 999; } .zammad-chat.is-fullscreen { right: 0; width: 100%; height: 100vh; border-radius: 0 !important; } @media only screen and (max-width: 768px) { .zammad-chat { right: 0; width: 100%; height: 100%; border-radius: 0 !important; font-size: 16px; } } .zammad-chat.zammad-chat-is-loaded { display: -webkit-flex; display: -ms-flexbox; display: flex; opacity: 0; } .zammad-chat.zammad-chat-is-shown { opacity: 1; } .zammad-chat-icon { height: 2em; width: 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 rgba(0, 0, 0, 0.1), 0 1px rgba(255, 255, 255, 0.3) inset, 0 -1px rgba(0, 0, 0, 0.1) inset, 0 1px 1px rgba(0, 0, 0, 0.13); position: relative; border-radius: 5px 5px 0 0; overflow: hidden; cursor: pointer; } @media only screen and (max-width: 768px) { .zammad-chat-header { border-radius: 0 !important; } } .zammad-chat.is-fullscreen .zammad-chat-header { border-radius: 0 !important; } .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; height: auto; 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 .7em; border-radius: 1em; background: rgba(0, 0, 0, 0.1); box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.04) inset; } .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; vertical-align: middle; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.04) inset; } .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: white; z-index: 1; padding: 20px; 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:empty { display: none; } .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-text .zammad-chat-button { margin-top: 1em; font-size: 0.8em; } .zammad-chat-modal .zammad-chat-loading-animation { margin-right: 8px; vertical-align: middle; } .zammad-chat-body { padding: 0.5em 1em; overflow: auto; background: white; -webkit-flex: 1; -ms-flex: 1; flex: 1; -webkit-overflow-scrolling: touch; } @media only screen and (max-width: 768px) { .zammad-chat-body { height: auto; -webkit-flex: 1; -ms-flex: 1; flex: 1; } } .zammad-chat-timestamp { text-align: center; color: #999999; font-size: 0.9em; margin: 1em 0; } .zammad-chat-status { margin: 1em 0; text-align: center; } .zammad-chat-message { margin: 0.5em 0; } .zammad-chat-message-body { white-space: pre-line; word-wrap: break-word; border-radius: 1em; } .zammad-chat-status-inner, .zammad-chat-message-body { padding: 0.5em 1em; line-height: 1.4; background: #ededed; display: inline-block; max-width: 70%; 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-inner { background: #eee; border-radius: .5em; } .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: #d9d9d9; 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 #ededed; padding: 0; margin: 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 { margin: 0; padding: 1em 2em; float: left; width: auto; height: auto; min-height: 1.4em !important; max-height: 6em; font-family: inherit; line-height: inherit; font-size: inherit; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none !important; background: none; box-shadow: none !important; outline: none; resize: none; -webkit-flex: 1; -ms-flex: 1; flex: 1; } .zammad-chat-input::-webkit-input-placeholder { color: #d9d9d9; } .zammad-chat-button { -webkit-appearance: none; -moz-appearance: none; appearance: none; font-family: inherit; font-size: inherit; line-height: initial; background: #379ad7; color: white; padding: 0.5em 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 rgba(0, 0, 0, 0.1) inset, 0 1px rgba(0, 0, 0, 0.1); outline: none; display: inline-block; } .zammad-chat-send { float: right; } .zammad-chat-button:disabled, .zammad-chat-input:disabled { opacity: 0.3; } .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: none; } .zammad-chat--flat .zammad-chat-message-body { box-shadow: none; } .zammad-chat--flat .zammad-chat-agent-status, .zammad-chat--flat .zammad-chat-button, .zammad-chat--flat .zammad-chat-status { box-shadow: none; }