#fifty-cent-audio {
	position: fixed;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle {
	--corner-left: 24px;
	--corner-bottom: 24px;
	position: fixed;
	bottom: var(--corner-bottom);
	left: var(--corner-left);
	width: 5rem;
	height: 5rem;
	border: 2px solid gray;
	border-radius: 9999px;
	background: #01253d;
	color: #ffffff;
	display: grid;
	place-items: center;
	font: 600 13px/1 inherit;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
	z-index: 99999;
	overflow: visible;
	outline: 0.25em solid lch(0 0 0 / 0.5);
	transform: scale(1);
	transition:
		transform 260ms cubic-bezier(0.34, 1.56, 0.64, 1),
		box-shadow 220ms ease;
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle:hover,
.fifty-cent-audio-toggle.fifty-cent-music-toggle:focus-visible {
	transform: scale(1.08);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.42);
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle:focus-visible {
	outline: 0.24rem solid #ffffff;
	outline-offset: 0.25rem;
	box-shadow:
		0 0 0 0.35rem rgba(1, 37, 61, 0.85),
		0 12px 30px rgba(0, 0, 0, 0.42);
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-following-cursor {
	transform: translate(-50%, -50%) scale(2);
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-returning-to-corner {
	transform: translate(-50%, -50%) scale(1);
	transition:
		left 0.32s ease,
		top 0.32s ease,
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-cleaning-follow-return {
	transition: none !important;
}

.fifty-cent-audio-toggle .fifty-cent-music-toggle__ring {
	position: absolute;
	width: 7rem;
	height: 7rem;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0deg);
	opacity: 0;
	transition: opacity 0.2s ease;
	pointer-events: none;
	animation: fifty-cent-spin 16s linear infinite;
	animation-play-state: paused;
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-playing {
	outline: 1.5em solid lch(0 0 0 / 0.5);
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-playing
	.fifty-cent-music-toggle__ring {
	opacity: 1;
	animation-play-state: running;
}

.fifty-cent-audio-toggle .fifty-cent-music-toggle__ring-text {
	fill: white;
	font:
		700 0.87em 'Arial',
		sans-serif;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.fifty-cent-audio-toggle .fifty-cent-music-toggle__label {
	font:
		900 11px/1 'Poppins',
		sans-serif;
	letter-spacing: 0.08em;
	position: relative;
	z-index: 1;
}

.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-playing
	.fifty-cent-music-toggle__label {
	color: white;
}

.fifty-cent-audio-toggle .fifty-cent-music-toggle__sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

@keyframes fifty-cent-spin {
	from {
		transform: translate(-50%, -50%) rotate(0deg);
	}
	to {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

@media (max-width: 640px) {
	.fifty-cent-audio-toggle.fifty-cent-music-toggle {
		--corner-left: 1rem;
		--corner-bottom: 1rem;
		width: 4.5rem;
		height: 4.5rem;
	}

	.fifty-cent-audio-toggle .fifty-cent-music-toggle__ring {
		position: absolute;
		width: 6.3rem;
		height: 6.3rem;
	}

	.fifty-cent-audio-toggle .fifty-cent-music-toggle__ring-text {
		font-size: 0.725rem;
	}
}

@media (hover: none), (pointer: coarse) {
	.fifty-cent-audio-toggle.fifty-cent-music-toggle,
	.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-following-cursor {
		top: auto !important;
		left: 1rem !important;
		bottom: 1rem !important;
		transform: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fifty-cent-audio-toggle.fifty-cent-music-toggle,
	.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-returning-to-corner,
	.fifty-cent-audio-toggle.fifty-cent-music-toggle.is-cleaning-follow-return,
	.fifty-cent-audio-toggle .fifty-cent-music-toggle__ring {
		transition: none !important;
		animation: none !important;
	}
}
