#scroll-top {
	position: fixed;
	z-index: 9999;
	right: 1rem;
	bottom: 1rem;
	display: grid;
	width: 3.5rem;
	height: 3.5rem;
	place-items: center;
	padding: 0;
	color: #ffffff;
	cursor: pointer;
	pointer-events: none;
	visibility: hidden;
	background: var(--kidello-gradient-brand, #ff6685);
	border: 2px solid #ffffff;
	border-radius: 50%;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
	opacity: 0;
	transform: translateY(1rem) scale(0.85);
	transition:
		opacity 0.25s ease,
		visibility 0.25s ease,
		transform 0.25s ease;
}

#scroll-top::before {
    position: relative;
    bottom: 8px;
	width: 12px;
	height: 12px;
	content: "";
	border-top: 3px solid currentColor;
	border-left: 3px solid currentColor;
	transform: translateY(0.2rem) rotate(45deg);
}

#scroll-top::after {
	position: absolute;
	width: 4px;
	height: 22px;
	content: "";
	background: currentColor;
	border-radius: 999px;
}

#scroll-top.is-visible {
	pointer-events: auto;
	visibility: visible;
	opacity: 1;
	transform: translateY(0) scale(1);
}

#scroll-top:hover {
	transform: translateY(-3px) scale(1.05);
}

#scroll-top:active {
	transform: scale(0.95);
}

#scroll-top:focus-visible {
	outline: 3px solid rgba(115, 103, 240, 0.45);
	outline-offset: 4px;
}

@media (min-width: 768px) {
	#scroll-top {
		right: 1.5rem;
		bottom: 1.5rem;
	}
}

@media (min-width: 1024px) {
	#scroll-top {
		right: 2rem;
		bottom: 2rem;
	}
}