button.dc-scroll-top {
	position: fixed;
	z-index: 9999;
	right: 1.25rem;
	bottom: 1.25rem;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--dc-stt-size, 48px);
	height: var(--dc-stt-size, 48px);
	padding: 0;
	border: 0;
	border-radius: var(--dc-stt-radius, 999px);
	background: var(--dc-stt-bg, #1a56f5);
	color: var(--dc-stt-icon, #fff);
	box-shadow: 0 8px 24px rgba(18, 24, 32, 0.18);
	cursor: pointer;
	line-height: 1;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(12px);
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease, background-color 0.2s ease;
	-webkit-appearance: none;
	appearance: none;
}

button.dc-scroll-top--left {
	right: auto;
	left: 1.25rem;
}

button.dc-scroll-top--no-animation {
	transform: none;
	transition: opacity 0.15s ease, visibility 0.15s ease, background-color 0.2s ease;
}

button.dc-scroll-top.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
}

button.dc-scroll-top:hover,
button.dc-scroll-top:focus-visible {
	background: var(--dc-stt-hover, #0d3ec4);
}

button.dc-scroll-top:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

button.dc-scroll-top svg {
	display: block;
	width: 46%;
	height: 46%;
}

@media (max-width: 767px) {
	button.dc-scroll-top[data-show-mobile="0"] {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	button.dc-scroll-top {
		transition: none;
	}
}

@media print {
	button.dc-scroll-top {
		display: none;
	}
}
