@media (max-width: 600px) {
	.chat-box {
		right: 0!important;
		width: 100%!important;
	}
}

@media (max-width: 767px) {
	.chat-messages {
		max-height: 60vh;
	}
}


/* ===== BOX ===== */
.chat-box {
	position: fixed;
	bottom: 0;
	right: 65px;
	box-shadow: 8px 12px 30px 2px rgba(0, 0, 0, 0.30);
	width: 350px;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	z-index: 99999;
}

/* ===== HEADER ===== */
.chat-header {
	height: 52px;
	color: #fff;
	background: #2196f3;
	padding: 15px 0 0 15px;
	border-radius: 5px 5px 0 0;
	cursor: pointer;
}

.chat-close {
	float: right;
	padding-right: 20px;
	cursor: pointer;
}


/* ===== BODY ===== */
.chat-body {
	position: relative;
	background: #fcfcfc;
	border: 1px solid #2196f3;
}

.chat-body:before {
	content: '';
	position: absolute;
	width: 100%;
	display: block;
	height: 30px;
	top: 0;
	left: 0;
	z-index: 2;
	background: linear-gradient(#fff, transparent);
}

.chat-wrapper-messages {
	position: relative;
	height: 577px;
	max-height: 60vh;
	overflow-y: scroll;
	overflow: -moz-hidden-scrollable;
	-ms-overflow-style: none;
}

.chat-wrapper-messages::-webkit-scrollbar {
	width: 0;
	height: 0;
	background: transparent;
}

/* ===== MESSAGES ===== */
.chat-messages {
	max-height: 60vh;
	height: auto !important;
	overflow-y: scroll;
	overflow: -moz-hidden-scrollable;
	-ms-overflow-style: none;
}

.chat-messages::-webkit-scrollbar {
	width: 0;
	background: transparent;
}
.chat-messages:after {
	content: '';
	display: table;
	clear: both;
}

.chat-messages {
	transition: bottom 0.15s, padding-bottom 0.15s;
	position: absolute;
	bottom: 0;
	height: auto !important;
	width: 95%;
	padding-bottom: 20px;
	margin: 8px;
	/*max-height: 71vh;*/
}

.chat-message:after {
	content: '';
	display: table;
	clear: both;
}

.chat-message {
	font-size: 0.905rem;
	color: #333;
	display: inline-block;
	padding: 10px 15px 8px;
	border-radius: 20px;
	margin: 15px 0 5px 0;
	float: right;
	clear: both;
	max-width: 65%;
	word-wrap: break-word;
}

.chat-message.admin {
	background: #e6e6e6;
	color: #676767;
	float: left;
	border-top-left-radius: 0;
}

.chat-message.off {
	display: none;
}

.chat-message.client {
	background: #06b79a;
	color: #fff;
	border-top-right-radius: 0;
}

.chat-message.end {
	height: 0;
	padding: 0;
	margin: 0;
}


/* ======= FOOTER ======= */
.chat-wrapper-footer {
	width: calc(100% - 33px);
	margin: 10px auto 15px;
	padding: 0 !important;
	position: relative;
	box-shadow: 0 0 5px 5px rgba(222, 222, 222, 0.4);
}

.chat-input {
	border-radius: 3px;
	margin: 7px 10px;
	overflow: hidden;
	overflow-wrap: break-word;
	resize: horizontal;
	height: 32px;
}

.chat-input {
	border: none;
	/*padding: 7px 10px;*/
	outline: none;
	font-size: 0.905rem;
	float: left;
	width: calc(100% - 75px);
	line-height: 1.3em;
	min-height: 1.3em;
	max-height: 8rem;
	display: block;
	max-width: 88%;
	margin-right: 2.5%;
}
button.chat-submit {
	padding: 3px;
	border: none;
	float: right;
	margin: 5px;
	color: #06c5a6;
	cursor: pointer;
	border-radius: 8px;
	font-size: 1.1rem;
	width: 36px;
	height: 35px;
	background: #fff;
	outline: none !important;
}
button.chat-submit:hover {
	background: #06b79a;
	color: #fff;
}



/* ======= LOADER: SPINNER ======= */
.spin-loader,
.spin-loader:before,
.spin-loader:after {
	background: #06c5a6 !important;
	-webkit-animation: spinLoaderChat 1s infinite ease-in-out;
	animation: spinLoaderChat 1s infinite ease-in-out;
	width: 1em;
	height: 4em;
}
.spin-loader {
	color: #06c5a6 !important;
	text-indent: -9999em;
	margin: 50% auto;
	position: relative;
	font-size: 11px;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}
.spin-loader:before,
.spin-loader:after {
	position: absolute;
	top: 0;
	content: '';
}
.spin-loader:before {
	left: -1.5em;
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}
.spin-loader:after {
	left: 1.5em;
}
@-webkit-keyframes spinLoaderChat {
	0%,
	80%,
	100% {
		box-shadow: 0 0;
		height: 4em;
	}
	40% {
		box-shadow: 0 -2em;
		height: 5em;
	}
}
@keyframes spinLoaderChat {
	0%,
	80%,
	100% {
		box-shadow: 0 0;
		height: 4em;
	}
	40% {
		box-shadow: 0 -2em;
		height: 5em;
	}
}


/* ======= ADDITIONAL ======= */
span.clear {
	display: block;
	clear: both;
}