.widgets-manager-floating-contact-menu {
	--wfm-inline-offset: 24px;
	--wfm-block-offset: 24px;
	--wfm-launcher-size: 56px;
	--wfm-launcher-icon-size: 22px;
	--wfm-launcher-background: #7c5ac7;
	--wfm-launcher-color: #ffffff;
	--wfm-launcher-hover-background: #6846b6;
	--wfm-launcher-hover-color: #ffffff;
	--wfm-launcher-focus-background: #6846b6;
	--wfm-launcher-focus-color: #ffffff;
	--wfm-launcher-open-background: #6846b6;
	--wfm-launcher-open-color: #ffffff;
	--wfm-launcher-hover-scale: 1.06;
	--wfm-item-size: 48px;
	--wfm-item-icon-size: 20px;
	--wfm-item-background: #7c5ac7;
	--wfm-item-icon-color: #ffffff;
	--wfm-item-hover-background: #6846b6;
	--wfm-item-hover-icon-color: #ffffff;
	--wfm-item-focus-background: #6846b6;
	--wfm-item-focus-icon-color: #ffffff;
	--wfm-list-gap: 10px;
	--wfm-label-gap: 10px;
	--wfm-label-color: #1f2937;
	--wfm-label-background: #ffffff;
	--wfm-label-hover-color: #111827;
	--wfm-label-hover-background: #ffffff;
	--wfm-label-focus-color: #111827;
	--wfm-label-focus-background: #ffffff;
	--wfm-label-display: inline-flex;
	--wfm-label-idle-opacity: 0;
	--wfm-label-idle-visibility: hidden;
	--wfm-label-inline-start: auto;
	--wfm-label-inline-end: calc(100% + var(--wfm-label-gap));
	--wfm-duration: 280ms;
	--wfm-stagger: 45ms;
	--wfm-label-duration: 180ms;
	--wfm-easing: cubic-bezier(0.22, 1, 0.36, 1);
	--wfm-list-direction: column;
	--wfm-list-block-start: auto;
	--wfm-list-block-end: calc(100% + var(--wfm-list-gap));
	--wfm-list-inline-start: auto;
	--wfm-list-inline-end: calc((var(--wfm-launcher-size) - var(--wfm-item-size)) / 2);
	--wfm-motion-x: 0;
	--wfm-motion-y: 18px;

	position: fixed;
	z-index: 9999;
	inset-block-start: auto;
	inset-block-end: var(--wfm-block-offset);
	inset-inline-start: auto;
	inset-inline-end: var(--wfm-inline-offset);
	inline-size: var(--wfm-launcher-size);
	block-size: var(--wfm-launcher-size);
	isolation: isolate;
}

.widgets-manager-floating-contact-menu,
.widgets-manager-floating-contact-menu * {
	box-sizing: border-box;
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__launcher {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	inline-size: var(--wfm-launcher-size);
	block-size: var(--wfm-launcher-size);
	min-inline-size: var(--wfm-launcher-size);
	min-block-size: var(--wfm-launcher-size);
	margin: 0;
	padding: 0;
	appearance: none;
	border: 0;
	border-radius: 999px;
	background: var(--wfm-launcher-background);
	color: var(--wfm-launcher-color);
	cursor: pointer;
	touch-action: manipulation;
	-webkit-tap-highlight-color: transparent;
	transition:
		background-color var(--wfm-duration) var(--wfm-easing),
		color var(--wfm-duration) var(--wfm-easing),
		border-color var(--wfm-duration) var(--wfm-easing),
		box-shadow var(--wfm-duration) var(--wfm-easing),
		transform var(--wfm-duration) var(--wfm-easing);
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__launcher:hover {
	background: var(--wfm-launcher-hover-background);
	color: var(--wfm-launcher-hover-color);
	transform: scale(var(--wfm-launcher-hover-scale));
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__launcher:focus-visible {
	outline: 0;
	background: var(--wfm-launcher-focus-background);
	color: var(--wfm-launcher-focus-color);
	transform: scale(var(--wfm-launcher-hover-scale));
}

.widgets-manager-floating-contact-menu[data-state="open"] .widgets-manager-floating-contact-menu__launcher {
	background: var(--wfm-launcher-open-background);
	color: var(--wfm-launcher-open-color);
}

.widgets-manager-floating-contact-menu[data-state="open"] .widgets-manager-floating-contact-menu__launcher:focus-visible {
	background: var(--wfm-launcher-focus-background);
	color: var(--wfm-launcher-focus-color);
}

.widgets-manager-floating-contact-menu__launcher-icon {
	position: absolute;
	inset: 50% auto auto 50%;
	display: grid;
	place-items: center;
	inline-size: var(--wfm-launcher-icon-size);
	block-size: var(--wfm-launcher-icon-size);
	font-size: var(--wfm-launcher-icon-size);
	line-height: 1;
	transform: translate(-50%, -50%);
	transition:
		opacity var(--wfm-duration) var(--wfm-easing),
		transform var(--wfm-duration) var(--wfm-easing);
}

.widgets-manager-floating-contact-menu__launcher-icon :is(i, svg),
.widgets-manager-floating-contact-menu__contact-icon :is(i, svg) {
	display: block;
	inline-size: 1em;
	block-size: 1em;
	fill: currentColor;
}

.widgets-manager-floating-contact-menu__launcher-icon--close {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(-90deg) scale(0.72);
}

.widgets-manager-floating-contact-menu[data-state="open"] .widgets-manager-floating-contact-menu__launcher-icon--open {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg) scale(0.72);
}

.widgets-manager-floating-contact-menu[data-state="open"] .widgets-manager-floating-contact-menu__launcher-icon--close {
	opacity: 1;
	transform: translate(-50%, -50%) rotate(0) scale(1);
}

.widgets-manager-floating-contact-menu__contacts {
	position: absolute;
	z-index: 1;
	inset-block-start: var(--wfm-list-block-start);
	inset-block-end: var(--wfm-list-block-end);
	inset-inline-start: var(--wfm-list-inline-start);
	inset-inline-end: var(--wfm-list-inline-end);
	display: flex;
	flex-direction: var(--wfm-list-direction);
	align-items: center;
	gap: var(--wfm-list-gap);
	inline-size: max-content;
	margin: 0;
	padding: 0;
	list-style: none;
}

.widgets-manager-floating-contact-menu__item {
	position: relative;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	opacity: 1;
	visibility: visible;
	transform: translate(0, 0) scale(1);
	transform-origin: center;
	transition:
		opacity var(--wfm-duration) var(--wfm-easing),
		transform var(--wfm-duration) var(--wfm-easing),
		visibility 0s linear;
	transition-delay:
		calc(var(--wfm-item-index) * var(--wfm-stagger)),
		calc(var(--wfm-item-index) * var(--wfm-stagger)),
		0s;
}

.widgets-manager-floating-contact-menu[data-wfm-initialized="true"][data-state="closed"] .widgets-manager-floating-contact-menu__contacts {
	pointer-events: none;
}

.widgets-manager-floating-contact-menu[data-wfm-initialized="true"][data-state="closed"] .widgets-manager-floating-contact-menu__item {
	opacity: 0;
	visibility: hidden;
	transform: translate(var(--wfm-motion-x), var(--wfm-motion-y)) scale(0.72);
	transition-delay:
		calc(var(--wfm-item-reverse-index) * var(--wfm-stagger)),
		calc(var(--wfm-item-reverse-index) * var(--wfm-stagger)),
		calc((var(--wfm-item-reverse-index) * var(--wfm-stagger)) + var(--wfm-duration));
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__action {
	position: relative;
	display: grid;
	place-items: center;
	inline-size: var(--wfm-item-size);
	block-size: var(--wfm-item-size);
	min-inline-size: var(--wfm-item-size);
	min-block-size: var(--wfm-item-size);
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: var(--wfm-item-background);
	color: var(--wfm-item-icon-color);
	text-decoration: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition:
		background-color var(--wfm-duration) var(--wfm-easing),
		color var(--wfm-duration) var(--wfm-easing),
		border-color var(--wfm-duration) var(--wfm-easing),
		box-shadow var(--wfm-duration) var(--wfm-easing);
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__action:hover {
	background: var(--wfm-item-hover-background);
	color: var(--wfm-item-hover-icon-color);
	text-decoration: none;
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__action:focus-visible {
	outline: 0;
	background: var(--wfm-item-focus-background);
	color: var(--wfm-item-focus-icon-color);
	text-decoration: none;
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__action--inactive {
	cursor: default;
	opacity: 0.72;
}

.widgets-manager-floating-contact-menu .widgets-manager-floating-contact-menu__action--inactive:hover {
	background: var(--wfm-item-background);
	color: var(--wfm-item-icon-color);
}

.widgets-manager-floating-contact-menu__contact-icon {
	display: grid;
	place-items: center;
	inline-size: var(--wfm-item-icon-size);
	block-size: var(--wfm-item-icon-size);
	font-size: var(--wfm-item-icon-size);
	line-height: 1;
	transition: transform var(--wfm-duration) var(--wfm-easing);
}

.widgets-manager-floating-contact-menu__action:hover .widgets-manager-floating-contact-menu__contact-icon,
.widgets-manager-floating-contact-menu__action:focus-visible .widgets-manager-floating-contact-menu__contact-icon {
	transform: scale(1.06);
}

.widgets-manager-floating-contact-menu__action--inactive:hover .widgets-manager-floating-contact-menu__contact-icon {
	transform: none;
}

.widgets-manager-floating-contact-menu__label {
	position: absolute;
	inset-block-start: 50%;
	inset-inline-start: var(--wfm-label-inline-start);
	inset-inline-end: var(--wfm-label-inline-end);
	display: var(--wfm-label-display);
	align-items: center;
	inline-size: max-content;
	max-inline-size: min(280px, 70vw);
	padding: 8px 12px;
	border-radius: 8px;
	background: var(--wfm-label-background);
	color: var(--wfm-label-color);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-align: start;
	white-space: nowrap;
	opacity: var(--wfm-label-idle-opacity);
	visibility: var(--wfm-label-idle-visibility);
	transform: translateY(-50%);
	pointer-events: none;
	transition:
		opacity var(--wfm-label-duration) ease,
		visibility var(--wfm-label-duration) ease,
		background-color var(--wfm-label-duration) ease,
		color var(--wfm-label-duration) ease;
}

.widgets-manager-floating-contact-menu__action:hover .widgets-manager-floating-contact-menu__label {
	background: var(--wfm-label-hover-background);
	color: var(--wfm-label-hover-color);
	opacity: 1;
	visibility: visible;
}

.widgets-manager-floating-contact-menu__action:focus-visible .widgets-manager-floating-contact-menu__label {
	background: var(--wfm-label-focus-background);
	color: var(--wfm-label-focus-color);
	opacity: 1;
	visibility: visible;
}

.widgets-manager-floating-contact-menu__screen-reader-text {
	position: absolute !important;
	inline-size: 1px !important;
	block-size: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

@media (prefers-reduced-motion: reduce) {
	.widgets-manager-floating-contact-menu,
	.widgets-manager-floating-contact-menu * {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		transition-delay: 0ms !important;
	}

	.widgets-manager-floating-contact-menu[data-wfm-initialized="true"][data-state="closed"] .widgets-manager-floating-contact-menu__item {
		transform: none;
	}
}
