/* AG Creative Labs – Back to top (hardened against theme/button overrides) */
html body .agcl-btt,
html .agcl-btt {
	--agcl-btt-bg: #1D5CE0;
	position: fixed !important; bottom: 24px; top: auto !important; z-index: 2147483000 !important;
	width: 52px !important; height: 52px !important; min-width: 0 !important; min-height: 0 !important;
	padding: 0 !important; margin: 0 !important;
	display: grid !important; place-items: center; float: none !important;
	border: 0 !important; border-radius: 50%; cursor: pointer;
	color: #fff !important; font-size: 0 !important; line-height: 0 !important; text-indent: 0 !important;
	background: var(--agcl-btt-bg) !important;
	background-image: linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,0)) !important;
	box-shadow: 0 12px 28px -8px rgba(10,22,40,.45), 0 0 0 4px rgba(255,255,255,.9) !important;
	opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(20px) scale(.85);
	transition: opacity .3s ease, transform .35s cubic-bezier(.2,.8,.2,1), visibility .3s, box-shadow .3s;
	-webkit-tap-highlight-color: transparent;
	-webkit-appearance: none; appearance: none;
}
html body .agcl-btt--left, html .agcl-btt--left { left: 24px !important; right: auto !important; }
html body .agcl-btt--right, html .agcl-btt--right { right: 24px !important; left: auto !important; }
html body .agcl-btt--rounded, html .agcl-btt--rounded { border-radius: 16px !important; }
html body .agcl-btt.is-visible, html .agcl-btt.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
html body .agcl-btt:hover, html body .agcl-btt:focus { background: var(--agcl-btt-bg) !important; background-image: linear-gradient(135deg, rgba(255,255,255,.28), rgba(255,255,255,0)) !important; color: #fff !important; box-shadow: 0 18px 34px -10px rgba(10,22,40,.55), 0 0 0 4px rgba(255,255,255,.95) !important; }
html body .agcl-btt:focus-visible { outline: 3px solid #0EA5FF; outline-offset: 4px; }
.agcl-btt .agcl-btt__icon { display: block; width: 22px !important; height: 22px !important; position: relative; z-index: 1; color: #fff; transition: transform .3s; }
.agcl-btt:hover .agcl-btt__icon { animation: agcl-btt-bounce .9s ease infinite; }
@keyframes agcl-btt-bounce { 50% { transform: translateY(-4px); } }
.agcl-btt .agcl-btt__ring { position: absolute; inset: -2px; width: calc(100% + 4px) !important; height: calc(100% + 4px) !important; transform: rotate(-90deg); pointer-events: none; }
.agcl-btt__ring circle { fill: none; stroke: rgba(255,255,255,.95); stroke-width: 3; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: var(--agcl-p, 100); transition: stroke-dashoffset .1s linear; }
.agcl-btt--rounded .agcl-btt__ring { display: none; }

@media (max-width: 600px) {
	html body .agcl-btt, html .agcl-btt { width: 46px !important; height: 46px !important; bottom: calc(18px + env(safe-area-inset-bottom, 0px)); }
	html body .agcl-btt--left, html .agcl-btt--left { left: 16px !important; }
	html body .agcl-btt--right, html .agcl-btt--right { right: 16px !important; }
	html body .agcl-btt--no-mobile { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
	.agcl-btt, .agcl-btt__icon { transition: none !important; animation: none !important; }
}
@media print { .agcl-btt { display: none !important; } }
