/* Grădinariu – Buton „Sus”
   Variabilele --gbt-* sunt injectate din setările pluginului. */

.gbt {
	--gbt-size: 44px;
	--gbt-right: 26px;
	--gbt-bottom: 88px;
	--gbt-accent: #24264b;
	--gbt-radius: 50%;

	position: fixed;
	right: var(--gbt-right);
	bottom: var(--gbt-bottom);
	z-index: 99998; /* imediat sub lansatorul de chat (99999) */

	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--gbt-size);
	height: var(--gbt-size);
	padding: 0;
	margin: 0;

	border: 0;
	border-radius: var(--gbt-radius);
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	line-height: 0;

	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity .22s ease, transform .22s ease, visibility .22s,
		background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.gbt[hidden] {
	display: none;
}

.gbt.is-visible {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.gbt__icon {
	width: 20px;
	height: 20px;
	pointer-events: none;
}

/* Varianta discretă: alb, contur fin, iconiță în culoarea accentului. */
.gbt--light {
	background-color: #fff;
	color: var(--gbt-accent);
	box-shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 6px 16px rgba(16, 24, 40, .10);
	border: 1px solid rgba(0, 0, 0, .07);
}

.gbt--light:hover,
.gbt--light:focus-visible {
	background-color: var(--gbt-accent);
	border-color: var(--gbt-accent);
	color: #fff;
}

/* Varianta plină. */
.gbt--solid {
	background-color: var(--gbt-accent);
	color: #fff;
	box-shadow: 0 2px 4px rgba(16, 24, 40, .08), 0 8px 20px rgba(16, 24, 40, .16);
}

.gbt--solid:hover,
.gbt--solid:focus-visible {
	filter: brightness(1.12);
}

.gbt:hover {
	transform: translateY(-2px);
}

.gbt:active {
	transform: translateY(0);
}

.gbt:focus {
	outline: none;
}

.gbt:focus-visible {
	outline: 2px solid var(--gbt-accent);
	outline-offset: 3px;
}

/* Inel opțional de progres al derulării. */
.gbt--ring {
	--gbt-progress: 0deg;
}

.gbt--ring::before {
	content: "";
	position: absolute;
	inset: -5px;
	border-radius: inherit;
	background: conic-gradient(var(--gbt-accent) var(--gbt-progress), rgba(0, 0, 0, .10) 0);
	-webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px));
	mask: radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px));
	pointer-events: none;
}

@media (max-width: 767px) {
	.gbt--desktop-only {
		display: none;
	}

	.gbt {
		--gbt-size: 40px;
	}
}

@media print {
	.gbt {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gbt {
		transition: opacity .01ms, visibility .01ms;
		transform: none;
	}

	.gbt:hover,
	.gbt.is-visible {
		transform: none;
	}
}
