/* ==========================================================================
   মডিউল: Floating Contact — ডান কোণের ভাসমান যোগাযোগ বাটন
   মোবাইলে নিচের ট্যাব বারের উপরে বসে (--arianerptheme-bottom-offset)
   ========================================================================== */

.arianerptheme-fab {
	position: fixed;
	right: 16px;
	bottom: calc(16px + var(--arianerptheme-bottom-offset) + env(safe-area-inset-bottom, 0px));
	z-index: var(--arianerptheme-z-floating);
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
	transition: bottom .25s ease;
}

@media (min-width: 861px) {
	.arianerptheme-fab {
		right: 24px;
		bottom: 24px;
	}
}

/* ── মূল বাটন ── */
.arianerptheme-fab__trigger {
	position: relative;
	display: inline-grid;
	place-items: center;
	width: 54px;
	height: 54px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--arianerptheme-primary);
	color: var(--arianerptheme-primary-ink);
	box-shadow: 0 8px 22px color-mix(in srgb, var(--arianerptheme-primary) 45%, transparent);
	cursor: pointer;
}

.arianerptheme-fab__trigger .arianerptheme-icon {
	position: relative;
	z-index: 1;
	width: 24px;
	height: 24px;
}

.arianerptheme-fab__close {
	display: none;
}

.arianerptheme-fab.is-open .arianerptheme-fab__open {
	display: none;
}

.arianerptheme-fab.is-open .arianerptheme-fab__close {
	display: inline;
}

/* পালস রিং — খোলা থাকলে থামে */
.arianerptheme-fab__rings span {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: var(--arianerptheme-primary);
	opacity: .5;
	animation: arianerptheme-fab-ring 2.4s ease-out infinite;
}

.arianerptheme-fab__rings span:nth-child(2) {
	animation-delay: 1.2s;
}

.arianerptheme-fab.is-open .arianerptheme-fab__rings {
	display: none;
}

@keyframes arianerptheme-fab-ring {
	from { transform: scale(1); opacity: .45; }
	to { transform: scale(1.8); opacity: 0; }
}

/* ── মেনু ── */
.arianerptheme-fab__menu {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.arianerptheme-fab.is-open .arianerptheme-fab__menu li {
	animation: arianerptheme-fab-in .2s ease both;
}

.arianerptheme-fab.is-open .arianerptheme-fab__menu li:nth-last-child(2) { animation-delay: .04s; }
.arianerptheme-fab.is-open .arianerptheme-fab__menu li:nth-last-child(3) { animation-delay: .08s; }
.arianerptheme-fab.is-open .arianerptheme-fab__menu li:nth-last-child(4) { animation-delay: .12s; }
.arianerptheme-fab.is-open .arianerptheme-fab__menu li:nth-last-child(5) { animation-delay: .16s; }

@keyframes arianerptheme-fab-in {
	from { opacity: 0; transform: translateY(8px) scale(.96); }
	to { opacity: 1; transform: none; }
}

.arianerptheme-fab__item {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--arianerptheme-text);
	text-decoration: none;
}

.arianerptheme-fab__item:hover {
	text-decoration: none;
}

.arianerptheme-fab__label {
	padding: 6px 12px;
	border-radius: 999px;
	background: var(--arianerptheme-surface);
	box-shadow: var(--arianerptheme-shadow);
	font-size: .88rem;
	font-weight: 600;
	white-space: nowrap;
}

.arianerptheme-fab__icon {
	display: inline-grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--arianerptheme-surface);
	color: var(--arianerptheme-text);
	box-shadow: var(--arianerptheme-shadow);
}

.arianerptheme-fab__item--phone .arianerptheme-fab__icon { background: #2563eb; color: #fff; }
.arianerptheme-fab__item--whatsapp .arianerptheme-fab__icon { background: var(--arianerptheme-whatsapp); color: #fff; }
.arianerptheme-fab__item--email .arianerptheme-fab__icon { background: #ea580c; color: #fff; }
.arianerptheme-fab__item--facebook .arianerptheme-fab__icon { background: #1877f2; color: #fff; }
.arianerptheme-fab__item--youtube .arianerptheme-fab__icon { background: #ff0000; color: #fff; }
