/* Loaded AFTER SlotsLaunch CSS — games grid + lobby cards */

/* Meta block: stack title then provider (no absolute overlay) */
.slotsl-lobby-item .slotsl-meta,
.slotsl-grid .slotsl-meta,
.slotsl-container .slotsl-meta,
.slotsl-game .slotsl-meta,
.slotsl-meta {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	gap: 0.35rem !important;
	flex: 0 0 auto !important;
	min-height: 0 !important;
	height: auto !important;
	padding: 0.7rem 0.75rem 0.85rem !important;
	background: #151922 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
	box-sizing: border-box !important;
}

/* Kill plugin line-height:0 which clips glyphs in half */
.slotsl-lobby-item .slotsl-meta .slotsl-title,
.slotsl-lobby-item .slotsl-meta p.slotsl-title,
.slotsl-grid .slotsl-meta .slotsl-title,
.slotsl-grid .slotsl-meta p.slotsl-title,
.slotsl-container .slotsl-meta .slotsl-title,
.slotsl-container .slotsl-meta p.slotsl-title,
.slotsl-game .slotsl-meta .slotsl-title,
.slotsl-game .slotsl-meta p.slotsl-title,
.slotsl-meta .slotsl-title,
.slotsl-meta p.slotsl-title {
	position: static !important;
	flex: 0 0 auto !important;
	min-height: 0 !important;
	height: auto !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.35 !important;
	overflow: visible !important;
	display: block !important;
	-webkit-line-clamp: unset !important;
	color: #fff !important;
}

.slotsl-lobby-item .slotsl-meta .slotsl-title a,
.slotsl-lobby-item .slotsl-meta .slotsl-title span,
.slotsl-grid .slotsl-meta .slotsl-title a,
.slotsl-grid .slotsl-meta .slotsl-title span,
.slotsl-container .slotsl-meta .slotsl-title a,
.slotsl-container .slotsl-meta .slotsl-title span,
.slotsl-game .slotsl-meta .slotsl-title a,
.slotsl-game .slotsl-meta .slotsl-title span,
.slotsl-meta .slotsl-title a,
.slotsl-meta .slotsl-title span,
.slotsl-meta a.slotsl-url {
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	max-height: 2.7em !important;
	text-decoration: none !important;
	text-shadow: none !important;
}

/* Provider: flow under title — never absolute */
.slotsl-lobby-item .slotsl-meta .slotsl-provider,
.slotsl-lobby-item .slotsl-meta a.slotsl-provider,
.slotsl-lobby-item .slotsl-meta span.slotsl-provider,
.slotsl-grid .slotsl-meta .slotsl-provider,
.slotsl-grid .slotsl-meta a.slotsl-provider,
.slotsl-grid .slotsl-meta span.slotsl-provider,
.slotsl-container .slotsl-meta .slotsl-provider,
.slotsl-container .slotsl-meta a.slotsl-provider,
.slotsl-container .slotsl-meta span.slotsl-provider,
.slotsl-game .slotsl-meta .slotsl-provider,
.slotsl-game .slotsl-meta a.slotsl-provider,
.slotsl-game .slotsl-meta span.slotsl-provider,
.slotsl-meta .slotsl-provider,
.slotsl-meta a.slotsl-provider,
.slotsl-meta span.slotsl-provider {
	position: static !important;
	bottom: auto !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	color: #f0b429 !important;
	-webkit-text-fill-color: #f0b429 !important;
	font-size: 0.7rem !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	z-index: auto !important;
	text-shadow: none !important;
}

/* Card shell on games grid */
.slotsl-grid .slotsl-game,
.slotsl-container .slotsl-game {
	background: #141821 !important;
	border: 1px solid rgba(255, 255, 255, 0.07) !important;
	border-radius: 16px !important;
	overflow: hidden !important;
	height: auto !important;
	min-height: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	position: relative !important;
}

/* Never show Coming Soon / upcoming games in grids or lobby */
.slotsl-game:has(.sl-coming-soon),
.slotsl-lobby-item:has(.sl-coming-soon),
.slotsl-game:has(.slaunch-button.sl-coming-soon),
.fsp-game-card:has(.sl-coming-soon),
.slotsl-lobby-section[data-type="upcoming-games"],
.slotsl-lobby-section--upcoming-games,
.slotsl-lobby-wrapper .slotsl-lobby-section:has([href*="upcoming=true"]),
.slotsl-upcoming,
.slotsl-upcoming-games {
	display: none !important;
}

/* ==========================================================================
   Single game — kill red SlotsLaunch chrome, match casino.guru dark + lime
   ========================================================================== */
body.fsp-slot-single .sl-game-attributes,
body.single-slotsl .sl-game-attributes,
body.single-slotslaunch .sl-game-attributes {
	display: none !important;
}

body.fsp-slot-single .sl-single-game-container,
body.single-slotsl .sl-single-game-container,
body.single-slotslaunch .sl-single-game-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.85rem !important;
	width: 100% !important;
	max-width: 100% !important;
	container-type: normal !important;
}

body.fsp-slot-single .sl-container,
body.fsp-slot-single .sl-basis-9\/12,
body.fsp-slot-single .sl-basis-3\/12,
body.single-slotsl .sl-container,
body.single-slotsl .sl-basis-9\/12,
body.single-slotsl .sl-basis-3\/12 {
	flex-basis: 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}

body.fsp-slot-single .sl-slots,
body.single-slotsl .sl-slots,
body.single-slotslaunch .sl-slots {
	background: #0a0c10 !important;
	border-radius: 0 0 8px 8px !important;
	overflow: hidden !important;
	border: 0 !important;
}

body.fsp-slot-single .slotls-header,
body.single-slotsl .slotls-header,
body.single-slotslaunch .slotls-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 0.65rem !important;
	flex-wrap: wrap !important;
	padding: 0.55rem 0.75rem !important;
	background: #161b22 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-bottom: 0 !important;
	border-radius: 8px 8px 0 0 !important;
	color: #c5ccd6 !important;
}

body.fsp-slot-single .slotls-header a,
body.fsp-slot-single .slotls-header svg,
body.fsp-slot-single .sl-rating_text,
body.fsp-slot-single .sl-rating-container {
	color: #c5ccd6 !important;
	fill: #f0a202 !important;
}

body.fsp-slot-single .sl-responsive-iframe,
body.fsp-slot-single iframe.sl-responsive-iframe {
	background: #000 !important;
	min-height: min(62vh, 640px) !important;
	width: 100% !important;
	border: 0 !important;
}

/* Featured games → compact guru posters (not giant tiles) */
body.fsp-slot-single .sl-featured-widget,
body.single-slotsl .sl-featured-widget,
body.single-slotslaunch .sl-featured-widget {
	width: 100% !important;
	max-width: 520px !important;
	margin: 0.75rem auto 0 !important;
	padding: 0 !important;
	display: block !important;
}

body.fsp-slot-single .sl-featured-widget-container,
body.single-slotsl .sl-featured-widget-container,
body.single-slotslaunch .sl-featured-widget-container {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.65rem !important;
	width: 100% !important;
	padding: 0.75rem 0.8rem 0.85rem !important;
	border-radius: 10px !important;
	background: #1a1f26 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: none !important;
}

body.fsp-slot-single .sl-featured-title,
body.single-slotsl .sl-featured-title,
body.single-slotslaunch .sl-featured-title {
	margin: 0 !important;
	padding: 0 !important;
	color: #f0a202 !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	text-align: left !important;
}

body.fsp-slot-single .sl-widget-games,
body.single-slotsl .sl-widget-games,
body.single-slotslaunch .sl-widget-games {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	gap: 0.65rem !important;
	width: 100% !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-game,
body.single-slotsl .sl-featured-widget .slotsl-game,
body.single-slotslaunch .sl-featured-widget .slotsl-game {
	flex: 1 1 0 !important;
	width: auto !important;
	max-width: 160px !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 8px !important;
	background: #12161d !important;
	border: 1px solid rgba(255, 255, 255, 0.07) !important;
	overflow: hidden !important;
	height: auto !important;
	min-height: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-thumb,
body.fsp-slot-single .sl-featured-widget .slotsl-thumb-url,
body.fsp-slot-single .sl-featured-widget .slotsl-demo-container,
body.single-slotsl .sl-featured-widget .slotsl-thumb,
body.single-slotsl .sl-featured-widget .slotsl-thumb-url,
body.single-slotsl .sl-featured-widget .slotsl-demo-container {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	aspect-ratio: 3 / 4 !important;
	height: auto !important;
	max-height: 170px !important;
	border-radius: 0 !important;
	overflow: hidden !important;
	position: relative !important;
	background: #0e1116 !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-thumb img,
body.fsp-slot-single .sl-featured-widget .slotsl-demo-container img,
body.single-slotsl .sl-featured-widget .slotsl-thumb img,
body.single-slotsl .sl-featured-widget .slotsl-demo-container img {
	width: 100% !important;
	height: 100% !important;
	max-height: 170px !important;
	object-fit: cover !important;
	object-position: center top !important;
	display: block !important;
	border-radius: 0 !important;
}

/* Hide buy-feature / play overlays on featured thumbs */
body.fsp-slot-single .sl-featured-widget .slaunch-button,
body.fsp-slot-single .sl-featured-widget .sl-buy-feature,
body.fsp-slot-single .sl-featured-widget .slotsl-hover,
body.fsp-slot-single .sl-featured-widget .slotsl-overlay,
body.fsp-slot-single .sl-featured-widget .slotsl-play,
body.single-slotsl .sl-featured-widget .slaunch-button,
body.single-slotsl .sl-featured-widget [class*="buy"],
body.single-slotsl .sl-featured-widget .slotsl-hover {
	display: none !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-meta,
body.single-slotsl .sl-featured-widget .slotsl-meta {
	background: #151922 !important;
	padding: 0.45rem 0.5rem 0.55rem !important;
	gap: 0.2rem !important;
	min-height: 0 !important;
	flex: 0 0 auto !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-title,
body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-title a,
body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-title span,
body.single-slotsl .sl-featured-widget .slotsl-meta .slotsl-title a,
body.single-slotsl .sl-featured-widget .slotsl-meta .slotsl-title span {
	font-size: 0.72rem !important;
	line-height: 1.25 !important;
	-webkit-line-clamp: 2 !important;
	max-height: 2.5em !important;
}

body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-provider,
body.fsp-slot-single .sl-featured-widget .slotsl-meta a.slotsl-provider,
body.single-slotsl .sl-featured-widget .slotsl-meta .slotsl-provider,
body.single-slotsl .sl-featured-widget .slotsl-meta a.slotsl-provider {
	color: #f0a202 !important;
	-webkit-text-fill-color: #f0a202 !important;
	font-size: 0.62rem !important;
}

/* Kill plugin inline red color injection */
body.fsp-slot-single .sl-container[style],
body.fsp-slot-single .sl-slots[style],
body.fsp-slot-single .sl-featured-widget-container[style],
body.fsp-slot-single .slotls-header[style] {
	background-color: #161b22 !important;
	background: #161b22 !important;
	border-color: rgba(255, 255, 255, 0.08) !important;
}
body.fsp-slot-single .sl-slots[style] {
	background: #0a0c10 !important;
	background-color: #0a0c10 !important;
}
body.fsp-slot-single .sl-featured-widget-container[style] {
	background: #1a1f26 !important;
	background-color: #1a1f26 !important;
}

@media (max-width: 640px) {
	body.fsp-slot-single .sl-featured-widget,
	body.single-slotsl .sl-featured-widget {
		max-width: 100% !important;
		margin: 0.55rem 0 0 !important;
	}
	body.fsp-slot-single .sl-featured-widget-container {
		padding: 0.65rem 0.6rem 0.7rem !important;
	}
	body.fsp-slot-single .sl-featured-title {
		font-size: 0.72rem !important;
	}
	body.fsp-slot-single .sl-featured-widget .slotsl-game {
		max-width: none !important;
	}
	body.fsp-slot-single .sl-featured-widget .slotsl-thumb,
	body.fsp-slot-single .sl-featured-widget .slotsl-thumb-url,
	body.fsp-slot-single .sl-featured-widget .slotsl-demo-container,
	body.fsp-slot-single .sl-featured-widget .slotsl-thumb img,
	body.fsp-slot-single .sl-featured-widget .slotsl-demo-container img {
		max-height: 140px !important;
	}
	body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-title a,
	body.fsp-slot-single .sl-featured-widget .slotsl-meta .slotsl-title span {
		font-size: 0.66rem !important;
	}
	body.fsp-slot-single .sl-responsive-iframe,
	body.fsp-slot-single iframe.sl-responsive-iframe {
		min-height: 52vh !important;
	}
	body.fsp-slot-single .slotls-header {
		padding: 0.45rem 0.55rem !important;
	}
}

@media (max-width: 420px) {
	body.fsp-slot-single .sl-widget-games {
		overflow-x: auto !important;
		scroll-snap-type: x mandatory !important;
		-webkit-overflow-scrolling: touch !important;
		padding-bottom: 0.2rem !important;
	}
	body.fsp-slot-single .sl-featured-widget .slotsl-game {
		flex: 0 0 112px !important;
		max-width: 112px !important;
		scroll-snap-align: start !important;
	}
}


