/* Float Contact 前端样式 */
.fc-widget {
	position: fixed;
	z-index: 99999;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* 位置：右侧 / 左侧（距离由 --fc-side-offset 控制） */
.fc-right { right: var(--fc-side-offset, 18px); }
.fc-left  { left: var(--fc-side-offset, 18px); }

/* 垂直对齐（bottom / top 受 --fc-offset 控制） */
.fc-middle { top: 50%; transform: translateY(-50%); }
.fc-bottom { bottom: var(--fc-offset, 18px); }
.fc-top    { top: var(--fc-offset, 18px); }

/* 列表容器 */
.fc-list {
	list-style: none;
	margin: 0 0 12px;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
}

/* 收起状态：列表隐藏 */
.fc-widget:not(.fc-open) .fc-list {
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px) scale(0.9);
	pointer-events: none;
	transition: opacity .25s ease, transform .25s ease, visibility .25s;
}
.fc-widget.fc-open .fc-list {
	opacity: 1;
	visibility: visible;
	transform: translateY(0) scale(1);
	transition: opacity .25s ease, transform .25s ease, visibility 0s;
}

/* 单个渠道按钮（默认只显示图标） */
.fc-item {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--fc-bg, #25D366);
	color: var(--fc-icon, #fff);
	box-shadow: 0 4px 14px rgba(0, 0, 0, .25);
	text-decoration: none;
	overflow: visible;
	position: relative;
	transition: transform .2s ease, box-shadow .2s ease;
}
.fc-item:hover {
	transform: scale(1.08);
	box-shadow: 0 6px 18px rgba(0, 0, 0, .32);
}

.fc-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
}

/* 悬停浮现的内容气泡（默认隐藏，仅 hover 显示） */
.fc-label {
	display: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) scale(.95);
	background: rgba(0, 0, 0, .85);
	color: #fff;
	padding: 5px 11px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	box-shadow: 0 3px 10px rgba(0, 0, 0, .25);
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
	pointer-events: none;
	z-index: 2;
}
.fc-right .fc-item .fc-label { right: 58px; }
.fc-left  .fc-item .fc-label { left: 58px; }

/* 气泡指向图标的小三角 */
.fc-right .fc-item .fc-label::after,
.fc-left  .fc-item .fc-label::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	border: 6px solid transparent;
}
.fc-right .fc-item .fc-label::after { right: -11px; border-left-color: rgba(0, 0, 0, .85); }
.fc-left  .fc-item .fc-label::after { left: -11px;  border-right-color: rgba(0, 0, 0, .85); }

.fc-item:hover .fc-label {
	display: block;
	opacity: 1;
	visibility: visible;
	transform: translateY(-50%) scale(1);
}

/* 主切换按钮 */
.fc-toggle {
	width: 56px;
	height: 56px;
	border: none;
	border-radius: 50%;
	background: var(--fc-bg, #25D366);
	color: var(--fc-icon, #fff);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .3);
	transition: transform .25s ease;
	position: relative;
	padding: 0;
}
.fc-toggle:hover { transform: scale(1.06); }
.fc-toggle:focus-visible { outline: 3px solid rgba(0, 0, 0, .25); outline-offset: 2px; }

/* 主图标与关闭图标：绝对居中叠加，交叉淡入 + 旋转 */
.fc-toggle-icon,
.fc-close-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translate(-50%, -50%);
	transition: opacity .2s ease, transform .25s ease;
}

.fc-close-icon {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(-90deg) scale(.5);
}

.fc-widget.fc-open .fc-toggle-icon {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg) scale(.5);
}
.fc-widget.fc-open .fc-close-icon {
	opacity: 1;
	transform: translate(-50%, -50%) rotate(0) scale(1);
}

/* 复制成功提示态 */
.fc-item.fc-copied {
	background: #1a8a4a;
}

/* 无关闭按钮时：列表常驻，去掉底部留白 */
.fc-no-toggle .fc-list {
	margin-bottom: 0;
}

/* 移动端微调 */
@media (max-width: 600px) {
	.fc-item { width: 44px; height: 44px; }
	.fc-toggle { width: 50px; height: 50px; }
	/* 触屏无 hover，默认隐藏内容气泡，避免溢出遮挡 */
	.fc-item .fc-label { display: none !important; }
}
