/* Progress label: text only. Width and bar position remain controlled by Lottery for WooCommerce. */
.lty-lottery-progress-bar .fd-lty-left-label,
.lty-lottery-progress-bar-loop .fd-lty-left-label {
	min-width: max-content !important;
	font-weight: 800 !important;
	font-size: 12px !important;
	line-height: 1 !important;
	padding: 7px 10px !important;
	border-radius: 999px !important;
	background: #ffc400 !important;
	color: #111 !important;
	box-shadow: 0 8px 20px rgba(0,0,0,.12) !important;
	white-space: nowrap !important;
	z-index: 5 !important;
}

.lty-lottery-progress-bar .lty-progress-bar-start,
.lty-lottery-progress-bar .lty-progress-bar-end,
.lty-lottery-progress-bar-loop .lty-progress-bar-start,
.lty-lottery-progress-bar-loop .lty-progress-bar-end {
	font-weight: 600;
	color: #555;
}

/* Slick predefined ticket buttons */
.lty-lottery-predefined-buttons-container.fd-lty-slick-buttons,
.lty-lottery-single-product-predefined-buttons-container.fd-lty-slick-buttons {
	width: 100% !important;
	margin: 18px 0 24px !important;
	clear: both !important;
}

.lty-lottery-predefined-buttons-container.fd-lty-slick-buttons h3,
.lty-lottery-single-product-predefined-buttons-container.fd-lty-slick-buttons h3 {
	margin: 0 0 12px !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	letter-spacing: -.01em !important;
}

.fd-lty-slick-buttons ul.lty-predefined-buttons,
.fd-lty-slick-buttons ul.lty-single-product-predefined-buttons,
ul.fd-lty-slick-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 14px !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

.fd-lty-slick-buttons .lty-predefined-button,
.fd-lty-slick-buttons li.lty-predefined-button,
ul.fd-lty-slick-grid > li.lty-predefined-button {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 62px !important;
	padding: 16px 18px !important;
	border: 1px solid rgba(0,0,0,.10) !important;
	border-radius: 16px !important;
	background: linear-gradient(180deg,#ffffff 0%,#f7f7f7 100%) !important;
	box-shadow: 0 10px 22px rgba(0,0,0,.10) !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	color: #161616 !important;
	text-align: center !important;
	cursor: pointer !important;
	transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease !important;
	overflow: visible !important;
}

.fd-lty-slick-buttons .lty-predefined-button::before {
	content: attr(data-fd-ticket-qty) " tickets";
	position: absolute !important;
	top: -10px !important;
	left: 14px !important;
	padding: 4px 9px !important;
	border-radius: 999px !important;
	background: #111 !important;
	color: #fff !important;
	font-size: 10px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	letter-spacing: .03em !important;
	text-transform: uppercase !important;
	box-shadow: 0 6px 14px rgba(0,0,0,.18) !important;
}

.fd-lty-slick-buttons .lty-predefined-button:hover,
.fd-lty-slick-buttons .lty-predefined-button.lty-selected,
.fd-lty-slick-buttons .lty-predefined-button.active,
.fd-lty-slick-buttons .lty-predefined-button.selected {
	transform: translateY(-2px) !important;
	border-color: #ffc400 !important;
	background: linear-gradient(180deg,#fffdf2 0%,#ffffff 100%) !important;
	box-shadow: 0 15px 34px rgba(0,0,0,.15), 0 0 0 3px rgba(255,196,0,.22) !important;
}

.fd-lty-slick-buttons .lty-predefined-button-badge,
.fd-lty-slick-buttons .lty-single-product-predefined-button-badge {
	position: absolute !important;
	top: -11px !important;
	right: 10px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 22px !important;
	padding: 4px 9px !important;
	border-radius: 999px !important;
	background: #ffc400 !important;
	color: #111 !important;
	font-size: 11px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	box-shadow: 0 7px 16px rgba(0,0,0,.14) !important;
	z-index: 2 !important;
}

@media (max-width: 520px) {
	.fd-lty-slick-buttons ul.lty-predefined-buttons,
	.fd-lty-slick-buttons ul.lty-single-product-predefined-buttons,
	ul.fd-lty-slick-grid {
		grid-template-columns: 1fr !important;
	}
	.fd-lty-slick-buttons .lty-predefined-button,
	.fd-lty-slick-buttons li.lty-predefined-button {
		min-height: 56px !important;
	}
}
