/* Floating ELI button (site-wide). Small, fixed bottom-right; sits above the theme's "Top" button on
   desktop and above its bottom bar on phones, and below the cart drawer and its overlay. Uses the
   theme's colours when present (Elementor / Lumera variables), with Electroli fallbacks. */
.eli-launcher {
	position: fixed;
	right: 24px;
	bottom: 88px;
	z-index: 9990;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	padding: 0;
	border: 2px solid var(--e-global-color-accent, #fea231);
	border-radius: 50%;
	background: var(--e-global-color-primary, #062e63);
	box-shadow: 0 6px 16px rgba(6, 46, 99, .3);
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease;
}
.eli-launcher:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(6, 46, 99, .35); }
.eli-launcher:focus-visible { outline: 2px solid var(--e-global-color-primary, #062e63); outline-offset: 3px; }
.eli-launcher .eli-launcher__mark { display: block; width: 44px; height: 44px !important; max-width: none; border-radius: 50%; background: #fff; object-fit: cover; }
.eli-launcher span.eli-launcher__mark { display: flex; align-items: center; justify-content: center; background: var(--e-global-color-accent, #fea231); color: #062e63; }
.eli-launcher span.eli-launcher__mark svg { width: 24px; height: 24px; }

/* The site's cart drawer (theme element ".et__cart") is open while it has the theme's own "active" class.
   The launcher is hidden for exactly that long; nothing in the drawer, cart icon or theme is touched. */
body:has(.et__cart.active) .eli-launcher { display: none !important; }

@media (max-width: 767px) {
	.eli-launcher { right: 12px; bottom: calc(68px + env(safe-area-inset-bottom, 0px)); width: 52px; height: 52px; }
	.eli-launcher .eli-launcher__mark { width: 40px; height: 40px !important; }
}
@media (prefers-reduced-motion: reduce) {
	.eli-launcher { transition: none; }
	.eli-launcher:hover { transform: none; }
}
@media print {
	.eli-launcher { display: none; }
}
