.eh-float-social{
	position:fixed;
	right:16px;
	bottom:16px;
	z-index:999999;
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	gap:10px;
}
.eh-float-social__btn{
	width:48px;
	height:48px;
	border-radius:50%;
	background:#fff;
	box-shadow:0 6px 18px rgba(0,0,0,.2);
	display:flex;
	align-items:center;
	justify-content:center;
	text-decoration:none;
	position:relative;
	transition:transform .15s ease-in-out, box-shadow .15s ease-in-out;
}
.eh-float-social__btn:hover{
	transform:translateY(-2px);
	box-shadow:0 10px 24px rgba(0,0,0,.25);
}
.eh-float-social img{
	display:block;
	width:26px;
	height:26px;
}

/* Accent per button type */
.eh-float-social__zalo{
	--eh-social-accent: rgba(37,211,102,.55);
}
.eh-float-social__messenger{
	--eh-social-accent: rgba(24,119,242,.55);
}

/* Wave ring (expanding outline) */
.eh-float-social__btn::after{
	content:'';
	position:absolute;
	left:50%;
	top:50%;
	width:100%;
	height:100%;
	border-radius:50%;
	border:2px solid var(--eh-social-accent);
	transform:translate(-50%,-50%) scale(0.85);
	opacity:0;
	pointer-events:none;
	animation: eh-float-social-ripple 2.4s infinite ease-out;
}

/* Rung / ring shake on the icon (avoid transform conflict with hover button) */
.eh-float-social__btn img{
	animation: eh-float-social-shake 1.9s infinite ease-in-out;
	transform-origin:center;
}

.eh-float-social__btn:hover img{
	animation-duration:1.2s;
}

.eh-float-social__btn:nth-child(1)::after{ animation-delay:0s; }
.eh-float-social__btn:nth-child(2)::after{ animation-delay:.35s; }
.eh-float-social__btn:nth-child(3)::after{ animation-delay:.7s; }
.eh-float-social__btn:nth-child(4)::after{ animation-delay:1.05s; }

.eh-float-social__btn:nth-child(1) img{ animation-delay:0s; }
.eh-float-social__btn:nth-child(2) img{ animation-delay:.35s; }
.eh-float-social__btn:nth-child(3) img{ animation-delay:.7s; }
.eh-float-social__btn:nth-child(4) img{ animation-delay:1.05s; }

@keyframes eh-float-social-ripple{
	0%{ transform:translate(-50%,-50%) scale(.85); opacity:0; }
	10%{ opacity:.9; }
	70%{ opacity:.25; }
	100%{ transform:translate(-50%,-50%) scale(1.55); opacity:0; }
}

@keyframes eh-float-social-shake{
	0%,100%{ transform:rotate(0deg) translateY(0); }
	15%{ transform:rotate(-4deg) translateY(-1px); }
	30%{ transform:rotate(3deg) translateY(0); }
	45%{ transform:rotate(-2deg) translateY(-1px); }
	60%{ transform:rotate(2deg) translateY(0); }
}

@media (prefers-reduced-motion: reduce){
	.eh-float-social__btn::after,
	.eh-float-social__btn img{
		animation:none !important;
	}
}
@media(max-width:576px){
	.eh-float-social{
		right:12px;
		bottom:12px;
		gap:8px;
	}
	.eh-float-social__btn{
		width:44px;
		height:44px;
	}
	.eh-float-social img{
		width:24px;
		height:24px;
	}
}

