.wac-widget,
.wac-widget *,
.wac-list,
.wac-list * {
	box-sizing: border-box;
	font-family: inherit;
	text-rendering: optimizeLegibility;
}

.wac-widget {
	--wac-color: #25d366;
	--wac-header-bg: #25d366;
	--wac-title-color: #fff;
	--wac-intro-color: #d9ebc6;
	bottom: 24px;
	position: fixed;
	z-index: 999999;
}

.wac-widget.wac-right { right: 24px; }
.wac-widget.wac-left { left: 24px; }

.wac-launcher-row {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

.wac-help {
	background: #f5f6f7;
	border-radius: 4px;
	color: #202124;
	display: block;
	font-size: 12px;
	line-height: 18px;
	max-width: 156px;
	opacity: 1;
	padding: 9px 12px;
	transform: translateX(0);
	transition: opacity .3s ease, transform .4s ease, visibility 0s linear 0s;
	visibility: visible;
}

.wac-help strong { font-weight: 400; }

.wac-launcher {
	align-items: center !important;
	appearance: none !important;
	background: var(--wac-color) !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: 0 5px 12px rgba(0, 0, 0, .23) !important;
	color: #fff !important;
	cursor: pointer;
	display: flex !important;
	height: 56px !important;
	justify-content: center !important;
	margin: 0 !important;
	min-height: 56px !important;
	min-width: 56px !important;
	padding: 0 !important;
	position: relative;
	transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease !important;
	width: 56px !important;
}

.wac-launcher:hover,
.wac-launcher:focus {
	background: var(--wac-color) !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.wac-launcher svg {
	display: block;
	height: 32px;
	width: 32px;
}

.wac-open-icon,
.wac-close-icon {
	align-items: center;
	display: flex;
	inset: 0;
	justify-content: center;
	position: absolute;
	transition: opacity .3s ease, transform .4s ease;
}

.wac-open-icon {
	opacity: 1;
	transform: rotate(0deg) scale(1);
}

.wac-close-icon {
	opacity: 0;
	font-size: 36px;
	font-weight: 400;
	line-height: 1;
	padding: 0;
	transform: translateY(2px) rotate(-90deg) scale(.65);
}

.wac-widget.is-open .wac-help {
	opacity: 0;
	transform: translateX(10px);
	transition-delay: 0s, 0s, .2s;
	visibility: hidden;
}

.wac-widget.is-open .wac-open-icon {
	opacity: 0;
	transform: rotate(90deg) scale(.65);
}

.wac-widget.is-open .wac-close-icon {
	opacity: 1;
	transform: translateY(2px) rotate(0deg) scale(1);
}

.wac-panel {
	background: #fff;
	border: 0;
	border-radius: 5px;
	bottom: 72px;
	box-shadow: 0 10px 18px rgba(0, 0, 0, .3);
	display: block;
	max-height: min(520px, 70vh);
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	transition: opacity .3s ease, visibility 0s linear .3s;
	visibility: hidden;
	width: min(352px, calc(100vw - 32px));
}

.wac-right .wac-panel { right: 0; }
.wac-left .wac-panel { left: 0; }
.wac-panel.is-open {
	opacity: 1;
	pointer-events: auto;
	transition-delay: 0s;
	visibility: visible;
}

.wac-heading {
	align-items: flex-start;
	background: var(--wac-header-bg);
	color: #fff;
	display: flex;
	gap: 15px;
	padding: 18px 20px 17px;
}

.wac-heading-icon { flex: 0 0 34px; }
.wac-heading-icon svg {
	display: block;
	height: 34px;
	width: 34px;
}

.wac-heading-copy {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.wac-heading-copy strong {
	color: var(--wac-title-color);
	font-size: 18px;
	font-weight: 700;
	line-height: 23px;
}

.wac-heading-copy > span {
	color: var(--wac-intro-color);
	font-size: 13px;
	font-weight: 400;
	line-height: 20px;
	margin-top: 2px;
}

.wac-panel-body {
	background: #fff;
	max-height: 330px;
	overflow: auto;
	padding: 0 18px 20px;
}

.wac-notice {
	color: #a0a8b5;
	font-size: 13px;
	font-weight: 400;
	line-height: 19px;
	margin: 0;
	padding: 14px 3px 12px;
}

.wac-empty {
	background: #f4f6f8;
	border-left: 2px solid var(--wac-color);
	border-radius: 2px;
	color: #646970;
	font-size: 13px;
	line-height: 20px;
	margin: 0;
	padding: 16px;
}

.wac-list { padding: 0; }

.wac-attendant {
	align-items: center;
	background: #f4f6f8 !important;
	border: 0 !important;
	border-left: 2px solid var(--wac-color) !important;
	border-radius: 2px;
	color: #4d535d !important;
	display: flex;
	gap: 12px;
	min-height: 72px;
	padding: 10px 13px !important;
	text-decoration: none !important;
	transition: background .15s ease;
}

.wac-attendant + .wac-attendant { margin-top: 14px; }
.wac-attendant:hover,
.wac-attendant:focus {
	background: #eef1f3 !important;
	color: #4d535d !important;
}

.wac-avatar {
	align-items: center;
	background: #e5e7ea;
	border-radius: 50%;
	display: flex;
	flex: 0 0 48px;
	height: 48px;
	justify-content: center;
	overflow: hidden;
	width: 48px;
}

.wac-avatar:empty::before { content: '\1F464'; }
.wac-avatar img {
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
	width: 100% !important;
}

.wac-person {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
}

.wac-person strong {
	color: #4d535d;
	font-size: 14px;
	font-weight: 600;
	line-height: 18px;
}

.wac-person small {
	color: #969da8;
	font-size: 12px;
	line-height: 18px;
}

.wac-person em {
	color: #138a36;
	font-size: 10px;
	font-style: normal;
	line-height: 14px;
	margin-top: 2px;
}

.wac-attendant-icon {
	color: var(--wac-color);
	flex: 0 0 22px;
}

.wac-attendant-icon svg {
	display: block;
	height: 22px;
	width: 22px;
}

.wac-attendant.is-offline { opacity: .62; }
.wac-attendant.is-offline .wac-person em { color: #646970; }
.wac-woo-button {
	background: var(--wac-color) !important;
	border-color: var(--wac-color) !important;
	color: #fff !important;
	font-family: inherit !important;
}
.wac-woo-wrap { clear: both; margin: 14px 0; }

@media (max-width: 480px) {
	.wac-widget { bottom: 16px; }
	.wac-widget.wac-right { right: 16px; }
	.wac-widget.wac-left { left: 16px; }
	.wac-panel { bottom: 68px; }
	.wac-help { max-width: 150px; }
}

@media (prefers-reduced-motion: reduce) {
	.wac-help,
	.wac-launcher,
	.wac-open-icon,
	.wac-close-icon,
	.wac-panel {
		transition-duration: .01ms !important;
	}
}
