:root {
	--chat-color-white: #fff;
	--chat-color-dark-white: #f5f5f5;
	--chat-color-black: #131313;
	--chat-color-gray: #8f8f8f;
	--chat-color-blue: #7ba5df;
	--chat-color-gray-hover: #7d7d7d;
	--chat-color-light-gray: #f1f1f1;
	--chat-color-light-gray-hover: #eaeaea;
	--chat-font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"
}

.chat-launcher {
	position: fixed;
	bottom: 32px;
	z-index: 2247483646;
	right: 20px;
	width: 150px;
	height: 150px;
	border-radius: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	box-shadow: 0 4px 8px #0003;
	transition: background .3s;
	border: 2px solid var(--chat-color-light-gray);
	opacity: 0;
	transform: translateY(-150px) translate(-100px);
	transition: opacity .4s ease,transform .4s ease;
	pointer-events: none
}

.chat-launcher.open {
	opacity: 1;
	transform: translateY(0);
	pointer-events: all
}

.chat-launcher #chat-avatar-launcher-minimized {
	display: none
}

.chat-launcher-icon {
	width: 150px;
	height: 150px;
	font-size: 2.5rem;
	color: var(--chat-color-white);
	border-radius: 17px
}

.chat-launcher-icon img,.chat-launcher-icon video {
	width: 150px;
	height: 150px;
	border-radius: 17px;
	background: linear-gradient(.1turn,#d88661,#eca585)
}

#chat-avatar-launcher {
	display: none
}

.chat-launcher.minimize .chat-launcher-icon {
	width: 40px;
	height: 40px
}

.chat-launcher.minimize .chat-launcher-icon video {
	display: none
}

.chat-launcher.minimize {
	opacity: 1;
	transform: translateY(0);
	pointer-events: all;
	width: 40px;
	height: 40px;
	background: linear-gradient(.1turn,#d88661,#eca585)
}

.chat-launcher.minimize #chat-avatar-launcher-minimized {
	display: flex
}

.chat-container {
	position: fixed;
	z-index: 2247483646;
	top: 0;
	right: 0;
	width: 100vw;
	bottom: 32px;
	min-height: 100vh;
	background: var(--chat-color-dark-white);
	border-radius: 30px;
	box-shadow: 0 4px 20px #0000001a;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	opacity: 0;
	transform: translateY(50px);
	transition: opacity .4s ease,transform .4s ease;
	pointer-events: none;
	color: var(--chat-color-black);
	font-family: var(--chat-font-family);
	font-style: normal;
	font-weight: 400
}

@media (min-width: 768px) {
	.chat-container {
		max-height:80vh;
		min-height: 450px;
		width: 375px;
		right: 20px;
		top: auto;
		bottom: 22px
	}
}

.chat-container.open {
	opacity: 1;
	transform: translateY(0);
	pointer-events: all
}

.chat-header {
	color: #777;
	padding: 10px 4px;
	display: flex;
	align-items: center;
	position: relative
}

.chat-avatar,.chat-avatar-still {
	width: 150px;
	height: 150px;
	border-radius: 20px;
	margin: 0 12px 0 5px;
	border: 2px solid var(--chat-color-light-gray);
	background: linear-gradient(.1turn,#d88661,#eca585);
	flex-shrink: 0
}

.chat-avatar {
	display: none
}

.chat-head {
	flex: 1;
	flex-direction: column
}

.chat-title {
	font-weight: 700;
	font-size: 1.3rem
}

.chat-subtitle {
	font-weight: 500;
	font-size: 1.1rem
}

.chat-close-btn,.chat-hide-btn {
	align-items: center;
	background: none;
	border-radius: 50%;
	border: none;
	color: #777;
	cursor: pointer;
	display: flex;
	font-size: 1.2rem;
	height: 40px;
	justify-content: center;
	min-width: auto;
	padding: 0;
	position: absolute;
	right: 10px;
	top: 10px;
	transition: background .3s ease;
	width: 40px
}

.chat-hide-btn {
	right: 50px
}

.chat-close-btn:hover,.chat-hide-btn:hover {
	color: var(--chat-color-gray-hover);
	background-color: var(--chat-color-light-gray-hover)
}

.chat-content {
	flex: 1;
	overflow-y: auto;
	padding: 10px 8px
}

.chat-message {
	display: flex;
	margin-bottom: 10px;
	margin-left: 6px;
	margin-right: 6px
}

.chat-message.chat-assistant-message {
	justify-content: flex-start
}

.chat-message.chat-system-message {
	justify-content: center
}

.chat-message.chat-user-message {
	justify-content: flex-end
}

.chat-bubble {
	max-width: 75%;
	padding: 10px 16px;
	border-radius: 10px;
	font-size: .9rem;
	line-height: 100%
}

.chat-bubble img {
	border: none;
	width: 100%;
	margin: 10px auto
}

.chat-assistant-message .chat-bubble {
	background: #e0e0e0;
	color: #333;
	border-bottom-left-radius: 0
}

.chat-system-message .chat-bubble {
	color: #5e5e5e;
	padding: 1px 12px;
	border: none;
	background: none;
	text-align: center;
	font-size: .8rem
}

.chat-user-message .chat-bubble {
	background: #4285f4;
	background: var(--chat-color-blue);
	color: var(--chat-color-white);
	border-bottom-right-radius: 0
}

.chat-footer {
	display: flex;
	align-items: center;
	flex-direction: column;
	background: var(--chat-color-dark-white);
	padding: 5px 10px 2px
}

.chat-search-bar {
	display: flex;
	align-items: center;
	background: var(--chat-color-dark-white);
	border: 1px solid #ddd;
	border-radius: 30px;
	padding: 5px 10px;
	box-shadow: 1px 1px 2px #0000000d;
	width: 92%;
	max-width: 600px;
	margin: 10px auto
}

.chat-disclaimer {
	font-size: .8rem;
	padding: 3px 6px 9px;
	color: var(--chat-color-gray-hover)
}

.chat-privacy-link,.chat-privacy-link:link,.chat-privacy-link:active,.chat-privacy-link:hover,.chat-privacy-link:visited {
	color: var(--chat-color-gray-hover);
	text-decoration: underline
}

.chat-input {
	flex: 1;
	padding: 8px;
	font-size: 1rem;
	font-size: 16px;
	border: none;
	outline: none;
	background-color: transparent;
	margin-right: 10px
}

.chat-file-upload-btn,.chat-start-btn,.chat-loading-btn,.chat-pause-btn,.chat-submit-btn {
	align-items: center;
	background-color: transparent;
	border-radius: 50%;
	border: none;
	color: var(--chat-color-gray);
	cursor: pointer;
	display: flex;
	font-size: 1rem;
	height: 30px;
	justify-content: center;
	min-width: 0;
	padding: 0;
	width: 30px
}

.chat-submit-btn {
	margin-left: 10px
}

.chat-file-upload,.chat-file-upload-btn.hidden,.chat-submit-btn.hidden,.chat-loading-btn.hidden,.chat-start-btn.hidden,.chat-pause-btn.hidden {
	display: none
}

.chat-file-upload-btn:hover,.chat-start-btn:hover,.chat-pause-btn:hover,.chat-loading-btn.hidden,.chat-submit-btn:hover {
	color: var(--chat-color-gray-hover);
	background-color: var(--chat-color-light-gray-hover)
}

.chat-content::-webkit-scrollbar {
	width: 5px
}

.chat-content::-webkit-scrollbar-track {
	background: #f1f1f1
}

.chat-content::-webkit-scrollbar-thumb {
	background: #aaa;
	border-radius: 2px
}

.chat-volume-container {
	position: relative;
	display: inline-flex;
	align-items: center
}

.chat-volume-btn,.chat-volume-close {
	background: none;
	color: var(--chat-color-gray);
	min-width: 0;
	padding: 0;
	border: none;
	width: 40px;
	height: 40px;
	font-size: 1.5rem;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: background .3s ease;
	margin-left: -7px
}

.chat-volume-btn .unmute,.chat-volume-btn .muted {
	transition: opacity .3s ease
}

.chat-volume-btn .muted {
	opacity: 0
}

.chat-volume-btn .muted.visible {
	opacity: 1
}

.chat-volume-btn .unmute.hidden {
	opacity: 0
}

.chat-volume-btn:hover {
	color: #535353
}

.chat-volume-slider {
	display: none;
	margin-left: 1px;
	width: 80px;
	height: 2px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #6b6b6b;
	border-radius: 5px;
	outline: none;
	transition: opacity .3s ease
}

.chat-volume-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 12px;
	height: 12px;
	background: #4285f4;
	border-radius: 50%;
	cursor: pointer
}

.chat-volume-close {
	display: none
}

.chat-pdf {
	display: flex;
	text-decoration: none;
	flex-direction: column;
	margin: 4px -12px
}

.chat-pdf svg {
	color: #e8730b;
	width: 65px;
	height: 65px
}
