/* ===== Slots Demo 页面样式 - BitStarz Casino 风格 ===== */
/* 仅提供结构和视觉样式，所有业务逻辑由插件填充 */
/* 结构参考 JILI，配色和风格延续 BitStarz casino */

.bs-page--dark {
	background: radial-gradient(circle at top, #1a1a2e 0, #0f0f1e 50%, #050509 100%);
	color: #f5f5f5;
	min-height: 100vh;
	padding: 0;
	position: relative;
}

.bs-page--dark::before {
	content: '';
	position: fixed;
	inset: 0;
	background-image: 
		radial-gradient(circle at 20% 30%, rgba(49, 225, 255, 0.08) 0, transparent 50%),
		radial-gradient(circle at 80% 70%, rgba(255, 61, 129, 0.08) 0, transparent 50%);
	pointer-events: none;
	z-index: 0;
}

/* ===== 通用容器 ===== */
.bs-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 1.5rem;
}

/* ===== 顶部导航/面包屑区域 ===== */
.bs-game-nav {
	position: relative;
	padding: 1.5rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	background: rgba(10, 10, 20, 0.4);
	backdrop-filter: blur(10px);
	z-index: 10;
}

.bs-game-nav .bs-container {
	display: grid;
	grid-template-columns: 1fr 2fr 1fr;
	align-items: center;
	gap: 1rem;
}

.bs-game-nav__left {
	display: flex;
	align-items: center;
}

.bs-game-nav__back {
	color: #9aa3c3;
	text-decoration: none;
	font-size: 0.95rem;
	transition: color 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.bs-game-nav__back:hover {
	color: #31e1ff;
}

.bs-game-nav__center {
	text-align: center;
}

.bs-game-nav__title {
	font-size: 1.5rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0;
	line-height: 1.2;
}

.bs-game-nav__right {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

/* ===== 主内容区域（游戏展示 + 数据面板） ===== */
/* 
 * 注意：以下布局样式已被新的 JILI 布局替代（.slots-game-page--jili）
 * 保留这些样式仅用于向后兼容，但新的游戏详情页应使用 slots-game-jili.css
 * 如果确认所有页面都已迁移到新布局，可以删除这些样式
 */
.bs-game-main,
.bs-game-container {
	width: 100%;
	height: auto;
	min-height: 100vh;
	position: relative;
	z-index: 1;
}

.bs-game-main {
	padding: 2.5rem 0;
}

.bs-game-main__grid {
	display: flex;
	flex-direction: row;
	gap: 24px;
	align-items: start;
}

.bs-game-main__left {
	/* 左侧游戏展示区 */
	flex: 1 1 auto;
	min-width: 0;
	display: block;
	/* 确保内部卡片可以正常撑开高度 */
}

.bs-game-main__right {
	width: 340px;
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

/* ===== 新 JILI 布局：禁用旧布局样式 ===== */
/* 当页面使用 .slots-game-page--jili 时，禁用旧的布局样式 */
.slots-game-page--jili .bs-game-main,
.slots-game-page--jili .bs-game-main__grid,
.slots-game-page--jili .bs-game-main__left,
.slots-game-page--jili .bs-game-main__right {
	/* 重置所有布局相关属性，由新的 JILI 布局控制 */
	display: none !important;
}

/* ===== 卡片样式 ===== */
.bs-card {
	background: rgba(15, 15, 25, 0.9);
	border-radius: 16px;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.8),
				0 0 0 1px rgba(49, 225, 255, 0.15);
	border: 1px solid rgba(49, 225, 255, 0.2);
	overflow: hidden;
	backdrop-filter: blur(10px);
	display: block;
	/* BitStarz 风格：外轮廓使用细亮线条（青蓝线）+ 落地软阴影 */
	/* 确保卡片可以正常撑开高度，内部元素通过 min-height 和 aspect-ratio 控制 */
}

.bs-card--glass {
	/* Glassmorphism 效果 */
	background: rgba(15, 15, 25, 0.85);
	backdrop-filter: blur(20px);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.8),
				0 0 0 1px rgba(49, 225, 255, 0.2),
				0 0 60px rgba(49, 225, 255, 0.15);
	border: 1px solid rgba(49, 225, 255, 0.25);
}

.bs-card__header {
	padding: 1.25rem 1.5rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.bs-card__title {
	font-size: 1.3rem;
	font-weight: 600;
	color: #ffffff;
	margin: 0;
}

.bs-card__meta {
	font-size: 0.9rem;
	color: #ccccd7;
	margin: 0;
}

.bs-card__body {
	padding: 1.5rem;
	display: block;
	/* 确保内部元素可以撑开高度 */
}

.bs-card__footer {
	padding: 1rem 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 0.85rem;
	color: #9aa3c3;
}

/* ===== 游戏详细信息扩展区域 ===== */
.bs-card__extra-info {
	padding: 1.25rem 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	/* 插件填充详细游戏介绍、规则、特色等 */
}

/* ===== 游戏容器（基础样式，高度由横屏/竖屏class和媒体查询控制） ===== */
/* ===== 游戏容器基础样式（全局，仅保留外观，不设置高度/比例） ===== */
/* 重构原则：全局部分仅保留外观（背景、圆角、阴影、margin等），不再定义任何高度、max-height、padding-top做比例 */
/* 高度和比例完全由PC端和移动端媒体查询分别控制 */
.bs-game-frame {
	position: relative;
	background: radial-gradient(circle at center, #191927 0, #050509 80%);
	border-radius: 16px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(49, 225, 255, 0.3);
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08) inset,
				0 0 0 2px rgba(49, 225, 255, 0.15) inset,
				0 8px 32px rgba(0, 0, 0, 0.6),
				0 0 50px rgba(49, 225, 255, 0.2),
				0 0 80px rgba(49, 225, 255, 0.1);
	overflow: hidden;
	/* BitStarz 风格：发光框架，内边框轻亮，四角略带高亮 */
	/* 全局不设置高度/比例，由PC端和移动端媒体查询分别控制 */
	/* 禁止全局设置：height、max-height、min-height、aspect-ratio、padding-top */
	height: auto;
	max-height: none;
	min-height: 0;
	aspect-ratio: auto;
}

/* ===== 游戏容器根元素 ===== */
.slots-demo-root {
	min-height: calc(100vh - 120px) !important;
}

/* ===== 游戏加载错误提示 ===== */
.bs-game-frame__error,
.slots-game-error {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	padding: 1rem 1.5rem;
	background: rgba(15, 15, 25, 0.95);
	border-bottom: 1px solid rgba(255, 200, 0, 0.3);
	backdrop-filter: blur(10px);
	color: #ffd700;
	font-size: 0.9rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.5;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
	/* 半透明暗色条 + 黄色警告，文字居中，颜色偏亮，与整体风格一致 */
}

.bs-game-frame__error::before,
.slots-game-error::before {
	content: '⚠';
	display: inline-block;
	font-size: 1.2rem;
	color: #ffd700;
	text-shadow: 0 0 10px rgba(255, 215, 0, 0.6);
	flex-shrink: 0;
	/* 黄色警告小图标 */
}

.bs-game-frame__error.hidden,
.slots-game-error.hidden {
	display: none;
	/* 只有当插件真的报告 iframe 加载失败时才显示，由插件控制 */
}

.bs-game-frame::before {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at center, rgba(255, 255, 255, 0.02) 0, transparent 70%);
	pointer-events: none;
	z-index: 1;
}

/* ===== 游戏封面图容器（底层） ===== */
.slots-game-cover {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	/* 封面图全铺，居中裁剪 */
	overflow: hidden;
}

.slots-game-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* ===== 游戏封面图压暗层 ===== */
.slots-game-cover__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 1;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

/* 当 iframe 加载后，封面图可淡出 */
.bs-game-frame.has-iframe .slots-game-cover__overlay,
.bs-game-frame.has-iframe .slots-game-cover {
	opacity: 0;
	pointer-events: none;
}

/* ===== iframe 容器（完全填充父容器，不自己控制高度） ===== */
.slots-game-iframe-wrapper {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: inherit; /* 保持卡片圆角 */
	/* 不再使用 padding-bottom hack，完全由父容器高度控制 */
}

.slots-game-iframe-wrapper iframe,
.bs-game-frame iframe,
#slots-game-iframe,
.slots-game-iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: none;
	/* iframe 完全填充父容器，不自己设置高度 */
}

/* ===== 游戏加载动画（Loading） ===== */
.slots-game-loading {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 5;
	background: rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(8px);
	transition: opacity 0.3s ease, visibility 0.3s ease;
	border-radius: inherit;
}

.slots-game-loading.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.slots-game-loading__spinner {
	width: 48px;
	height: 48px;
	border: 4px solid rgba(33, 199, 255, 0.2);
	border-top-color: #21c7ff;
	border-radius: 50%;
	animation: slots-loading-spin 1s linear infinite;
	box-shadow: 0 0 20px rgba(33, 199, 255, 0.5);
}

@keyframes slots-loading-spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

.slots-game-loading__text {
	margin-top: 12px;
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.8);
	text-align: center;
	letter-spacing: 0.02em;
}

/* ===== 玻璃虚化层（突出中间按钮区域） ===== */
.bs-game-frame__glass {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80%;
	max-width: 500px;
	height: 200px;
	background: rgba(15, 15, 25, 0.65);
	backdrop-filter: blur(20px) saturate(180%);
	border-radius: 20px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4),
				0 0 0 1px rgba(49, 225, 255, 0.2) inset,
				0 0 60px rgba(49, 225, 255, 0.15);
	z-index: 2;
	pointer-events: none;
	/* 玻璃层只覆盖中间区域，突出按钮 */
}

/* ===== 游戏控制区域（按钮容器 / CTA 区域） ===== */
.bs-game-controls,
.slots-demo-actions {
	position: absolute;
	top: 65%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 4;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	width: 100%;
	max-width: 600px;
	padding: 0 1.5rem;
	/* 确保在玻璃层之上，位置在封面中间偏下 */
}

/* CTA 发光带（霓虹光晕效果） */
.bs-game-controls::before,
.slots-demo-actions::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 120%;
	max-width: 700px;
	height: 70px;
	background: linear-gradient(135deg, 
		rgba(49, 225, 255, 0.25) 0%, 
		rgba(74, 146, 255, 0.3) 30%,
		rgba(139, 92, 246, 0.25) 70%,
		rgba(49, 225, 255, 0.2) 100%);
	border-radius: 40px;
	filter: blur(30px);
	opacity: 0.8;
	z-index: -1;
	pointer-events: none;
	/* 柔和光带，形成渐变光晕，在按钮之下 */
}

/* 按钮区域容器 */
.bs-game-controls__buttons,
.slots-demo-actions__buttons {
	display: flex;
	flex-direction: row;
	gap: 1.25rem;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	position: relative;
	z-index: 1;
}

.bs-game-controls .bs-game-btn,
.slots-demo-actions .bs-game-btn,
.slots-demo-btn {
	padding: 0.875rem 1.75rem;
	border-radius: 999px;
	font-size: 0.95rem;
	font-weight: 600;
	text-align: center;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	border: none;
	text-decoration: none;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.25rem;
	white-space: nowrap;
	position: relative;
	font-family: inherit;
}

/* 真钱玩按钮（赌场促销风格，更突出） */
.bs-game-controls .bs-game-btn--primary,
.bs-game-controls .bs-game-btn--real-money,
.slots-demo-btn--real {
	background: linear-gradient(135deg, #31e1ff 0%, #4a92ff 35%, #5b7fff 70%, #8b5cf6 100%);
	color: #050509;
	font-size: 1.1rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	padding: 1.125rem 2.25rem;
	box-shadow: 0 10px 40px rgba(49, 225, 255, 0.6),
				0 0 0 1px rgba(255, 255, 255, 0.25) inset,
				0 0 50px rgba(49, 225, 255, 0.5),
				0 0 80px rgba(49, 225, 255, 0.3);
	border: 1px solid rgba(255, 255, 255, 0.35);
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
	/* BitStarz 风格：字体更大、字重更粗、glow 更强，模拟霓虹灯效果 */
}

.bs-game-controls .bs-game-btn--primary:hover,
.bs-game-controls .bs-game-btn--real-money:hover,
.slots-demo-btn--real:hover {
	transform: translateY(-4px) scale(1.03);
	box-shadow: 0 14px 56px rgba(49, 225, 255, 0.8),
				0 0 0 1px rgba(255, 255, 255, 0.4) inset,
				0 0 70px rgba(49, 225, 255, 0.7),
				0 0 100px rgba(49, 225, 255, 0.4);
	background: linear-gradient(135deg, #3ae8ff 0%, #5aa0ff 35%, #6b8fff 70%, #9b6cff 100%);
	/* hover 时轻微放大，阴影更亮 */
}

/* 真钱玩按钮副标题（奖励文案） */
.bs-game-controls .bs-game-btn--primary .bs-btn-subtitle,
.bs-game-controls .bs-game-btn--real-money .bs-btn-subtitle {
	font-size: 0.75rem;
	font-weight: 500;
	color: #f5d56a;
	text-transform: none;
	letter-spacing: 0.05em;
	margin-top: 0.125rem;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* 次按钮（Demo 试玩）：深色背景 + 亮色描边，视觉权重略低于真金按钮 */
.bs-game-controls .bs-game-btn--secondary,
.slots-demo-btn--demo {
	background: rgba(15, 15, 25, 0.9);
	color: #e4e7f0;
	border: 2px solid rgba(49, 225, 255, 0.4);
	backdrop-filter: blur(10px);
	font-size: 0.95rem;
	font-weight: 600;
	padding: 0.875rem 1.75rem;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4),
				0 0 0 1px rgba(49, 225, 255, 0.1) inset;
	transition: all 0.25s ease;
}

.bs-game-controls .bs-game-btn--secondary:hover,
.slots-demo-btn--demo:hover {
	background: rgba(25, 25, 40, 0.95);
	border-color: rgba(49, 225, 255, 0.6);
	color: #ffffff;
	transform: translateY(-2px);
	box-shadow: 0 6px 24px rgba(49, 225, 255, 0.3),
				0 0 0 1px rgba(49, 225, 255, 0.2) inset;
	/* hover 时边框和文字亮度提高 */
}

/* 活动文案（赌场优惠文案风格） */
.bs-game-controls__promo,
.slots-demo-actions__promo {
	margin-top: 0.75rem;
	font-size: 0.85rem;
	font-weight: 500;
	color: #f5d56a;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.02em;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5),
				0 0 10px rgba(245, 213, 106, 0.3);
	max-width: 100%;
	padding: 0 1rem;
	position: relative;
	z-index: 1;
	/* 放在按钮下方居中，字体颜色偏金色，营造"赌场优惠文案"的感觉 */
}

/* ===== 游戏关键数据面板（右侧） ===== */
.bs-game-stats {
	background: rgba(15, 15, 25, 0.85);
	border-radius: 16px;
	padding: 1.5rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6),
				0 0 0 1px rgba(49, 225, 255, 0.1) inset;
	backdrop-filter: blur(20px);
}

.bs-game-stats__title {
	font-size: 1.35rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 1.5rem 0;
	padding-bottom: 1rem;
	border-bottom: 2px solid rgba(49, 225, 255, 0.4);
	text-shadow: 0 0 10px rgba(49, 225, 255, 0.2);
	letter-spacing: 0.02em;
	/* 更醒目的 casinos 风格字体（粗一点），标题下方增加一条细的亮色横线 */
}

.bs-game-stats__item {
	margin-bottom: 1.25rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.bs-game-stats__item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.bs-game-stats__label {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #9aa3c3;
	margin-bottom: 0.5rem;
	text-shadow: 0 0 8px rgba(255, 255, 255, 0.05);
}

.bs-game-stats__value {
	font-size: 1.15rem;
	font-weight: 600;
	color: #ffffff;
	line-height: 1.4;
	text-shadow: 0 0 8px rgba(255, 255, 255, 0.1);
	/* value 使用更亮的字体颜色，以便一目了然 */
}

.bs-game-stats__value ul {
	list-style: none;
	padding: 0;
	margin: 0.5rem 0 0 0;
}

.bs-game-stats__value li {
	padding: 0.25rem 0;
	color: #c3c9e3;
	font-size: 0.9rem;
	font-weight: 400;
	position: relative;
	padding-left: 1rem;
}

.bs-game-stats__value li::before {
	content: '•';
	position: absolute;
	left: 0;
	color: #31e1ff;
	font-weight: bold;
}

/* ===== 下半部分：信息分组区（结构仿 JILI） ===== */
.bs-game-section {
	position: relative;
	padding: 3rem 0;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	z-index: 1;
}

.bs-game-section__title {
	font-size: 1.6rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 2rem 0;
	padding-bottom: 0.875rem;
	border-bottom: 2px solid rgba(49, 225, 255, 0.4);
	text-shadow: 0 0 15px rgba(49, 225, 255, 0.3),
				 0 2px 4px rgba(0, 0, 0, 0.5);
	letter-spacing: 0.02em;
	/* 赌场风格标题：稍大且亮，下方有细横线强调 */
}

/* Section 1: 游戏简介 */
.bs-game-section--intro {
	background: rgba(5, 7, 10, 0.3);
}

/* Section 2: 游戏特性 & 额外信息 */
.bs-game-section--features {
	background: rgba(5, 7, 10, 0.2);
}

.bs-game-features__grid {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 2rem;
	align-items: start;
}

.bs-game-features__main {
	/* 左侧：游戏特性列表 / 优势文案插槽 */
	padding: 1.5rem;
	line-height: 1.8;
}

/* ===== 游戏特性区块（BitStarz 风格卡片 + 列表） ===== */
.bs-game-features {
	/* 插件填充游戏特性列表、优势文案等 */
	color: #c3c9e3;
	line-height: 1.75;
	font-size: 0.95rem;
	background: rgba(15, 15, 25, 0.85);
	border-radius: 16px;
	padding: 1.75rem;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6),
				0 0 0 1px rgba(49, 225, 255, 0.1) inset;
	backdrop-filter: blur(20px);
	/* BitStarz 风格：背景深色，略有玻璃感，内边距适中，圆角 + 投影同右侧信息卡片 */
}

/* 特性列表容器 */
.slots-features-list,
.bs-game-features ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* 特性列表项 */
.slots-features-list__item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding: 0.75rem 12px;
	margin-bottom: 8px;
	transition: all 0.2s ease;
}

.slots-features-list__item:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.slots-features-list__item:hover {
	padding-left: 16px;
}

/* 特性列表项左侧圆点/图标 */
.slots-features-list__dot {
	display: inline-block;
	width: 7px;
	height: 7px;
	min-width: 7px;
	min-height: 7px;
	border-radius: 50%;
	background: linear-gradient(135deg, #21c7ff 0%, #7b5cff 100%);
	box-shadow: 0 0 8px rgba(33, 199, 255, 0.9),
				0 0 16px rgba(33, 199, 255, 0.5);
	margin-top: 0.5rem;
	flex-shrink: 0;
	/* 小圆点使用渐变色或高亮色，带一点 glow */
}

/* 特性列表项右侧文本 */
.slots-features-list__text {
	color: #e8ecf5;
	font-size: 0.95rem;
	line-height: 1.8;
	flex: 1;
	word-wrap: break-word;
	margin: 0;
	padding: 0;
	/* 文本颜色适当变亮（比普通正文略亮），行高高一点，便于移动阅读 */
}

.slots-features-list__item:hover .slots-features-list__text {
	color: #ffffff;
}

/* 兼容旧的 .bs-game-features li 结构 */
.bs-game-features li {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1rem 0;
	padding-left: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	transition: all 0.2s ease;
	color: #e4e7f0;
	font-size: 0.95rem;
	line-height: 1.7;
	position: relative;
	word-wrap: break-word;
}

.bs-game-features li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.bs-game-features li:hover {
	color: #ffffff;
	padding-left: 0.25rem;
}

.bs-game-features li::before {
	content: '✓';
	position: relative;
	left: 0;
	width: auto;
	height: auto;
	background: none;
	box-shadow: none;
	color: #31e1ff;
	font-weight: bold;
	font-size: 1.2rem;
	text-shadow: 0 0 10px rgba(49, 225, 255, 0.8);
	line-height: 1.4;
	margin-top: 0;
	flex-shrink: 0;
}

/* 空状态（暂无特性说明） */
.bs-game-features__empty,
.slots-features-list__empty {
	color: rgba(180, 180, 200, 0.5);
	font-size: 0.85rem;
	font-style: italic;
	text-align: center;
	padding: 2rem 1rem;
	/* 字号略小，颜色偏灰（提示信息，避免看起来像 bug） */
}

.bs-game-features p {
	margin-bottom: 1.25rem;
	color: #c3c9e3;
	line-height: 1.75;
}

.bs-game-features p:last-child {
	margin-bottom: 0;
}

/* ===== 游戏技术信息插槽（slots-extra-info） ===== */
.slots-extra-info {
	background: rgba(15, 15, 25, 0.9);
	border-radius: 16px;
	padding: 1.5rem;
	border: 1px solid rgba(255, 255, 255, 0.04);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(10px);
	text-align: left;
}

/* 信息列表 */
.slots-info-list {
	margin: 0 0 1.5rem 0;
	padding: 0;
	list-style: none;
}

.slots-field {
	display: flex;
	align-items: center;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.slots-field:last-child {
	border-bottom: none;
}

.slots-field-label {
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.7);
	margin-right: 0.75rem;
	flex-shrink: 0;
	min-width: 80px;
}

.slots-field-value {
	font-size: 0.95rem;
	color: #ffffff;
	font-weight: 500;
}

/* 游戏标签区域 */
.slots-tags {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.slots-tags .slots-field-label {
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.9);
	margin-bottom: 0.75rem;
	display: block;
	font-weight: 600;
}

.slots-tags-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.slots-tag-chip {
	display: inline-block;
	padding: 0.5rem 1rem;
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: 500;
	color: #21c7ff;
	background: rgba(33, 199, 255, 0.1);
	border: 1px solid rgba(33, 199, 255, 0.3);
	transition: all 0.2s ease;
}

.slots-tag-chip:hover {
	background: rgba(33, 199, 255, 0.2);
	border-color: rgba(33, 199, 255, 0.5);
	transform: translateY(-1px);
}

/* Section 3: 截图展示区 */
.bs-game-section--shots {
	background: rgba(5, 7, 10, 0.3);
}

.bs-game-shots__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.5rem;
}

.bs-game-shot-card {
	background: rgba(15, 15, 25, 0.85);
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(10px);
	transition: all 0.3s ease;
}

.bs-game-shot-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 32px rgba(49, 225, 255, 0.3),
				0 0 0 1px rgba(49, 225, 255, 0.2);
}

.bs-game-shot-card__header {
	padding: 0.875rem 1rem;
	background: rgba(255, 255, 255, 0.04);
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #e4e7f0;
	text-align: center;
}

.bs-game-shot-card__image {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 比例 */
	overflow: hidden;
	background: radial-gradient(circle at center, #191927 0, #050509 80%);
}

.bs-game-shot-card__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.3s ease;
}

.bs-game-shot-card:hover .bs-game-shot-card__image img {
	transform: scale(1.05);
}

/* 保留旧的类名以兼容（已废弃，使用 .bs-game-section 替代） */
.bs-game-details {
	position: relative;
	background: rgba(5, 7, 10, 0.4);
	padding: 3rem 0;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	z-index: 1;
}

.bs-game-details__grid {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 2rem;
	align-items: start;
}

.bs-game-details__title {
	font-size: 1.5rem;
	font-weight: 600;
	color: #ffffff;
	margin: 0 0 1.5rem 0;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid rgba(49, 225, 255, 0.3);
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.1);
}

.bs-game-details__main {
	/* 正文内容区域 */
}

.bs-game-content {
	color: #c3c9e3;
	line-height: 1.75;
	font-size: 0.95rem;
}

.bs-game-content h2,
.bs-game-content h3 {
	color: #ffffff;
	font-weight: 600;
	margin-top: 2rem;
	margin-bottom: 1rem;
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.1);
}

.bs-game-content h2 {
	font-size: 1.3rem;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 0.5rem;
	margin-top: 2rem;
}

.bs-game-content h3 {
	font-size: 1.25rem;
}

.bs-game-content p {
	margin-bottom: 1.25rem;
}

.bs-game-content ul,
.bs-game-content ol {
	margin: 1.25rem 0;
	padding-left: 1.75rem;
}

.bs-game-content li {
	margin-bottom: 0.5rem;
}

.bs-game-content a {
	color: #4a92ff;
	text-decoration: none;
	transition: color 0.2s ease;
}

.bs-game-content a:hover {
	color: #31e1ff;
	text-decoration: underline;
}

/* ===== 游戏详细信息侧边栏 ===== */
.bs-game-details__aside {
	/* 插件填充：供应商、RTP、波动等级、标签 chips 等 */
}

.bs-game-info-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.bs-game-info-item {
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.bs-game-info-item:last-child {
	border-bottom: none;
}

.bs-game-info-label {
	color: #9aa3c3;
	font-size: 0.9rem;
}

.bs-game-info-value {
	color: #ffffff;
	font-weight: 600;
	font-size: 0.95rem;
}

/* ===== 标签 chips 样式 ===== */
.bs-game-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 1rem;
}

.bs-game-tag {
	display: inline-block;
	padding: 0.375rem 0.75rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	color: #e4e7f0;
	font-size: 0.85rem;
	border: 1px solid rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(5px);
}

/* ===== 侧边栏 ===== */
.bs-layout__sidebar {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bs-sidebar-section {
	background: rgba(15, 15, 25, 0.9);
	border-radius: 16px;
	padding: 1.25rem 1.5rem;
	border: 1px solid rgba(255, 255, 255, 0.04);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(10px);
}

.bs-sidebar-section__title {
	font-size: 1.1rem;
	font-weight: 600;
	margin: 0 0 0.75rem 0;
	color: #ffffff;
}

.bs-sidebar-section__content {
	/* 插件填充内容区域 */
}

/* ===== 广告位：夸张 CTA 卡片 ===== */
.bs-sidebar-section--ads {
	margin-top: 24px;
	/* 广告位容器 */
}

.bs-sidebar-ad {
	position: relative;
	border-radius: 18px;
	padding: 18px 16px;
	margin-bottom: 16px;
	background: radial-gradient(circle at top, rgba(33, 199, 255, 0.25), transparent 55%),
				rgba(9, 11, 24, 0.98);
	border: 1px solid rgba(33, 199, 255, 0.6);
	box-shadow: 0 0 28px rgba(33, 199, 255, 0.45);
	transition: all 0.3s ease;
	overflow: hidden;
}

.bs-sidebar-ad:last-child {
	margin-bottom: 0;
}

.bs-sidebar-ad::before {
	content: '';
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: radial-gradient(circle, rgba(33, 199, 255, 0.1) 0%, transparent 70%);
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.bs-sidebar-ad:hover {
	transform: translateY(-4px);
	border-color: rgba(33, 199, 255, 0.9);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.9),
				0 0 0 1px rgba(123, 92, 255, 0.5) inset,
				0 0 60px rgba(33, 199, 255, 0.6);
}

.bs-sidebar-ad:hover::before {
	opacity: 1;
}

.bs-sidebar-ad__badge {
	display: inline-block;
	padding: 2px 8px;
	font-size: 11px;
	border-radius: 999px;
	background: rgba(0, 0, 0, 0.6);
	color: #21c7ff;
	margin-bottom: 8px;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.bs-sidebar-ad__title {
	font-size: 17px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 6px 0;
	line-height: 1.3;
}

.bs-sidebar-ad__subtitle {
	font-size: 13px;
	color: rgba(255, 255, 255, 0.75);
	margin: 0 0 12px 0;
	line-height: 1.5;
}

.bs-sidebar-ad__description {
	font-size: 0.95rem;
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.6;
	margin: 0 0 1.25rem 0;
}

.bs-sidebar-ad__cta {
	display: inline-block;
	margin-top: 4px;
	padding: 9px 16px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	background: linear-gradient(135deg, #21c7ff, #00f0ff);
	color: #041019;
	box-shadow: 0 0 18px rgba(33, 199, 255, 0.7);
	border: none;
	cursor: pointer;
	transition: all 0.3s ease;
	width: 100%;
	text-align: center;
}

.bs-sidebar-ad__cta:hover {
	transform: translateY(-2px) scale(1.02);
	box-shadow: 0 0 30px rgba(33, 199, 255, 0.9),
				0 6px 16px rgba(0, 0, 0, 0.4);
	background: linear-gradient(135deg, #3ae8ff, #20f0ff);
}

.bs-sidebar-ad__cta:active {
	transform: translateY(0) scale(0.98);
}

/* ===== 游戏横幅广告（上下结构：图片在上，文案在下） ===== */
.bs-game-banner {
	margin-top: 24px;
	border-radius: 18px;
	background: radial-gradient(circle at top, rgba(33, 199, 255, 0.2), transparent 60%),
				rgba(9, 11, 24, 0.98);
	border: 1px solid rgba(33, 199, 255, 0.5);
	box-shadow: 0 0 28px rgba(33, 199, 255, 0.35);
	backdrop-filter: blur(20px);
	overflow: hidden;
	transition: all 0.3s ease;
}

.bs-game-banner:hover {
	border-color: rgba(33, 199, 255, 0.7);
	box-shadow: 0 0 40px rgba(33, 199, 255, 0.5);
}

.bs-game-banner__inner {
	display: flex;
	flex-direction: column;
	padding: 16px 18px 18px;
	gap: 14px;
}

.bs-game-banner__media {
	width: 100%;
}

.bs-game-banner__media img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 12px;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.bs-game-banner:hover .bs-game-banner__media img {
	transform: scale(1.02);
}

.bs-game-banner__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
}

.bs-game-banner__title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	line-height: 1.3;
}

.bs-game-banner__subtitle {
	margin: 0;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.8);
	line-height: 1.5;
}

.bs-game-banner__cta {
	margin-top: 10px;
	display: inline-block;
	padding: 10px 22px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	background: linear-gradient(135deg, #21c7ff, #00f0ff);
	color: #041019;
	box-shadow: 0 0 18px rgba(33, 199, 255, 0.7);
	border: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.bs-game-banner__cta:hover {
	transform: translateY(-2px) scale(1.02);
	box-shadow: 0 0 30px rgba(33, 199, 255, 0.9);
	background: linear-gradient(135deg, #3ae8ff, #20f0ff);
}

.bs-game-banner__cta:active {
	transform: translateY(0) scale(0.98);
}

/* ===== 相关游戏推荐 ===== */
.bs-related-games {
	margin-top: 32px;
	position: relative;
	padding: 3rem 0;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	background: rgba(5, 7, 10, 0.3);
	z-index: 1;
}

.bs-related-games__header {
	margin-bottom: 12px;
}

.bs-related-games__title {
	font-size: 18px;
	font-weight: 600;
	color: #fff;
	margin: 0 0 4px 0;
	padding: 0;
	border: none;
	text-shadow: none;
	letter-spacing: 0;
	position: relative;
}

.bs-related-games__title::after {
	content: "";
	display: block;
	width: 64px;
	height: 2px;
	border-radius: 999px;
	margin-top: 4px;
	background: linear-gradient(90deg, #21c7ff, #7b5cff);
}

.bs-related-games__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
	/* PC端：固定 4 列布局，数量由插件控制 */
}

.bs-related-game-card {
	border-radius: 16px;
	overflow: hidden;
	background: rgba(10, 12, 26, 0.96);
	border: 1px solid rgba(255, 255, 255, 0.06);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.8);
	transition: all 0.3s ease;
	cursor: pointer;
	text-decoration: none;
	color: inherit;
	display: block;
}

.bs-related-game-card__link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.bs-related-game-card__thumb {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 */
	overflow: hidden;
	background: radial-gradient(circle at center, #191927 0, #050509 80%);
}

.bs-related-game-card__thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	transition: transform 0.3s ease;
}

.bs-related-game-card:hover {
	transform: translateY(-6px) scale(1.02);
	box-shadow: 0 16px 48px rgba(49, 225, 255, 0.3),
				0 0 0 1px rgba(49, 225, 255, 0.3),
				0 0 60px rgba(49, 225, 255, 0.2);
	border-color: rgba(49, 225, 255, 0.4);
}

/* 兼容旧的 .bs-related-game-card__image 类名（已废弃，使用 __thumb） */
.bs-related-game-card__image {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 */
	overflow: hidden;
	background: radial-gradient(circle at center, #191927 0, #050509 80%);
}

.bs-related-game-card__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.3s ease;
}

.bs-related-game-card:hover .bs-related-game-card__thumb img,
.bs-related-game-card:hover .bs-related-game-card__image img {
	transform: scale(1.1);
}

.bs-related-game-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 16px 48px rgba(49, 225, 255, 0.3),
				0 0 0 1px rgba(49, 225, 255, 0.3),
				0 0 60px rgba(49, 225, 255, 0.2);
	border-color: rgba(49, 225, 255, 0.4);
}

.bs-related-game-card__info {
	padding: 10px 12px 12px;
}

.bs-related-game-card__name {
	font-size: 14px;
	font-weight: 600;
	margin: 0;
	color: #fff;
	line-height: 1.4;
}

.bs-related-game-card__meta {
	font-size: 0.85rem;
	color: rgba(255, 255, 255, 0.6);
	line-height: 1.5;
	margin: 0;
}

/* ===== 弹窗和提示根节点 ===== */
.bs-modal-root,
.bs-toast-root {
	position: fixed;
	z-index: 9999;
	pointer-events: none;
}

.bs-modal-root {
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.bs-toast-root {
	top: 1rem;
	right: 1rem;
	left: auto;
	bottom: auto;
}

/* ===== 注册/登录弹窗样式（BitStarz 玻璃风 - 重构版） ===== */
#slots-auth-modal {
	position: fixed;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 9999;
	transition: opacity 0.2s ease, visibility 0.2s ease;
}

#slots-auth-modal.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* 背景蒙层 */
.slots-auth-modal__backdrop {
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at top, rgba(33, 199, 255, 0.24), transparent 55%),
				rgba(0, 0, 0, 0.78);
	backdrop-filter: blur(4px);
}

/* 对话框 */
.slots-auth-modal__dialog {
	position: relative;
	z-index: 1;
	width: 90%;
	max-width: 420px;
	padding: 24px 24px 20px;
	border-radius: 18px;
	background: radial-gradient(circle at top, rgba(33, 199, 255, 0.15), transparent 60%),
				rgba(8, 10, 22, 0.96);
	border: 1px solid rgba(33, 199, 255, 0.55);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.85),
				0 0 24px rgba(33, 199, 255, 0.4);
}

/* 关闭按钮 */
.slots-auth-modal__close {
	position: absolute;
	top: 10px;
	right: 12px;
	border: none;
	background: transparent;
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	opacity: 0.7;
	transition: opacity 0.2s ease;
	padding: 4px;
	line-height: 1;
}

.slots-auth-modal__close:hover {
	opacity: 1;
}

/* Tab 区 */
.slots-auth-modal__tabs {
	display: flex;
	justify-content: center;
	gap: 18px;
	margin-bottom: 18px;
}

.slots-auth-modal__tabs button {
	background: transparent;
	border: none;
	padding: 6px 0;
	font-size: 15px;
	color: rgba(255, 255, 255, 0.55);
	cursor: pointer;
	position: relative;
	transition: color 0.2s ease;
	font-family: inherit;
}

.slots-auth-modal__tabs button:hover {
	color: rgba(255, 255, 255, 0.8);
}

.slots-auth-modal__tabs button.is-active {
	color: #fff;
}

.slots-auth-modal__tabs button.is-active::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -4px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, #21c7ff, #7b5cff);
}

/* 表单字段 */
.slots-auth-form__field {
	margin-bottom: 14px;
}

.slots-auth-form__field label {
	display: block;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.7);
	margin-bottom: 4px;
}

.slots-auth-form__field input {
	width: 100%;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: rgba(7, 9, 20, 0.9);
	padding: 8px 14px;
	color: #fff;
	font-size: 14px;
	font-family: inherit;
	transition: all 0.2s ease;
	outline: none;
	box-sizing: border-box;
}

.slots-auth-form__field input::placeholder {
	color: rgba(255, 255, 255, 0.4);
}

.slots-auth-form__field input:focus {
	outline: none;
	border-color: #21c7ff;
	box-shadow: 0 0 0 1px rgba(33, 199, 255, 0.4);
}

/* 提交按钮：沿用真钱玩按钮风格 */
.slots-auth-form__submit {
	width: 100%;
	margin-top: 6px;
	border-radius: 999px;
	border: none;
	padding: 10px 0;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	background: linear-gradient(135deg, #21c7ff, #00f0ff);
	color: #041019;
	box-shadow: 0 0 18px rgba(33, 199, 255, 0.7);
	transition: all 0.2s ease;
	font-family: inherit;
}

.slots-auth-form__submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 0 24px rgba(33, 199, 255, 0.9);
}

.slots-auth-form__submit:active {
	transform: translateY(0);
}

/* 验证码插槽占位 */
.slots-auth-form__captcha {
	margin: 10px 0 4px;
	padding: 8px;
	border-radius: 12px;
	background: rgba(0, 0, 0, 0.35);
	min-height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* 错误提示 */
.slots-auth-form__error {
	margin-top: 6px;
	font-size: 12px;
	color: #ff6b6b;
	text-align: center;
}

/* ===== PC端（≥769px）：恢复高度自适应，不被移动端规则影响 ===== */
/* 确保PC端不受移动端样式影响，使用 .slots-game-page 标记确保只影响游戏详情页 */
@media (min-width: 769px) {
	/* PC端游戏容器：高度自适应，由内容决定，只设置上限 */
	.slots-game-page .bs-game-frame {
		width: 100%;
		height: auto; /* 高度自适应，不写死 */
		max-height: 85vh; /* 只设置上限，不强制高度 */
		min-height: 500px; /* 最小高度兜底 */
		/* 不设置 aspect-ratio，让内容自适应 */
	}
	
	/* 横屏游戏（16:9）：宽度占满内容区域，高度按比例，限制最大高度 */
	.slots-game-page .slots-game--landscape .bs-game-frame,
	.slots-game-page .bs-game-main__left .slots-game--landscape .bs-game-frame,
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--landscape {
		width: 100%;
		max-width: 100%;
		aspect-ratio: 16 / 9;
		max-height: calc(100vh - 200px); /* 视口高度减去顶部导航等空间 */
		min-height: 500px; /* 最小高度兜底 */
	}
	
	/* 竖屏游戏：PC端恢复高度自适应，由 iframe 自己决定比例 */
	/* 使用与移动端相同的选择器，确保正确覆盖移动端规则 */
	.slots-game-page .slots-game--portrait .bs-game-frame,
	.slots-game-page .bs-game-main__left .slots-game--portrait .bs-game-frame,
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--portrait,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--portrait,
	.slots-game-page .bs-game-main__left .slots-game--portrait.bs-game-frame {
		width: 65% !important; /* 内容区域的65%，居中显示 */
		max-width: 500px !important;
		margin: 0 auto !important;
		/* PC端：高度自适应，由 iframe 内容决定 */
		height: auto !important;
		max-height: none !important; /* 不限制最大高度 */
		min-height: 600px !important; /* 最小高度兜底 */
		aspect-ratio: auto !important; /* 显式取消 aspect-ratio，不受移动端影响 */
		/* 恢复PC端的视觉效果 */
		border-radius: 16px !important;
		background: radial-gradient(circle at center, #191927 0, #050509 80%) !important;
		box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08) inset,
					0 0 0 2px rgba(49, 225, 255, 0.15) inset,
					0 8px 32px rgba(0, 0, 0, 0.6),
					0 0 50px rgba(49, 225, 255, 0.2),
					0 0 80px rgba(49, 225, 255, 0.1) !important;
		border: 1px solid rgba(49, 225, 255, 0.3) !important;
	}
	
	/* 如果没有横屏/竖屏class，默认使用横屏样式（兼容旧代码） */
	.bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait),
	.bs-game-main__left .bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait) {
		aspect-ratio: 16 / 9;
		max-height: calc(100vh - 200px);
		min-height: 500px;
	}
	
	/* PC端 iframe：完全填充容器 */
	.slots-game-iframe,
	.slots-game-iframe-wrapper iframe,
	.bs-game-frame iframe {
		width: 100% !important;
		height: 100% !important;
		border: 0 !important;
	}
	
	/* PC端iframe：完全填充容器 */
	.slots-game--landscape .slots-game-iframe-wrapper,
	.slots-game--portrait .slots-game-iframe-wrapper,
	.bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait) .slots-game-iframe-wrapper {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}
	
	.slots-game--landscape .slots-game-iframe-wrapper iframe,
	.slots-game--portrait .slots-game-iframe-wrapper iframe,
	.slots-game--landscape .bs-game-frame iframe,
	.slots-game--portrait .bs-game-frame iframe,
	.bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait) iframe {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		border: none;
	}
}

/* ===== 响应式设计 ===== */
@media (max-width: 992px) {
	.bs-game-main__grid {
		flex-direction: column;
	}

	.bs-game-main__left,
	.bs-game-main__right {
		width: 100%;
	}

	.bs-game-main__right {
		margin-top: 16px;
	}

	.bs-sidebar-section--ads {
		margin-top: 20px;
	}

	.bs-sidebar-ad {
		margin-left: 0;
		margin-right: 0;
	}

	.bs-related-games__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.bs-related-games__list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 1024px) {
	.bs-game-nav .bs-container {
		grid-template-columns: 1fr;
		gap: 1rem;
		text-align: center;
	}

	.bs-game-nav__left,
	.bs-game-nav__right {
		justify-content: center;
	}

	.bs-game-main__grid {
		flex-direction: column;
		gap: 1.5rem;
	}

	.bs-game-main__right {
		order: -1;
		width: 100%;
		margin-top: 0;
		flex: none;
	}

	.bs-game-main__left {
		width: 100%;
		flex: none;
	}

	/* 新 section 结构响应式 */
	.bs-game-section {
		padding: 2rem 0;
	}

	.bs-game-section__title {
		font-size: 1.4rem;
		margin-bottom: 1.5rem;
	}

	.bs-game-features__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.bs-game-features__main {
		width: 100%;
		padding: 0;
		margin: 0;
	}

	.slots-extra-info {
		order: 1;
		width: 100%;
		margin: 0;
		padding: 1.5rem;
		text-align: left;
	}

	.bs-game-shots__grid {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.bs-game-details__grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.bs-game-details__aside {
		order: -1;
	}
}

@media (max-width: 768px) {
	.bs-container {
		padding: 0 1rem;
	}

	.bs-game-nav {
		padding: 1rem 0;
	}

	.bs-game-nav__title {
		font-size: 1.2rem;
	}

	/* ===== 移动端：模仿 JILI 首屏效果 ===== */
	/* 页面级别：确保可以滚动，没有限制 */
	.slots-game-page#slots-demo-page.bs-page--dark {
		overflow-x: hidden; /* 防止水平滚动 */
		overflow-y: auto; /* 允许垂直滚动 */
		min-height: 100vh;
		width: 100vw !important;
		max-width: 100vw !important;
	}
	
	/* 全局容器：一列纵向排版，上方预留顶部导航，下方可滚动 */
	.slots-game-page .bs-game-main {
		padding: 0 !important; /* 强制移除上下padding */
		display: block !important;
		overflow: visible !important;
		margin: 0 !important;
		position: relative;
		width: 100vw !important;
		max-width: 100vw !important;
	}

	/* 游戏主区域的容器：完全移除限制，让游戏容器真正撑满 */
	.slots-game-page .bs-game-main .bs-container {
		padding: 0 !important; /* 强制移除所有padding */
		max-width: 100vw !important; /* 强制移除最大宽度限制，撑满视口 */
		margin: 0 !important;
		width: 100vw !important; /* 撑满视口宽度 */
	}

	.slots-game-page .bs-game-main__grid {
		display: block !important; /* 强制改为单列布局 */
		flex-direction: column;
		gap: 0 !important;
		margin: 0;
		padding: 0;
		width: 100vw !important;
		max-width: 100vw !important;
	}

	/* 左侧游戏区域：撑满首屏，模仿 JILI 效果 */
	.slots-game-page .bs-game-main__left {
		width: 100vw !important; /* 撑满视口宽度 */
		max-width: 100vw !important;
		margin: 0 !important;
		padding: 0 !important; /* 强制移除所有padding */
		box-sizing: border-box;
		position: relative;
		flex: none !important;
		/* 作为首屏游戏容器所在区域，紧贴顶部内容下方 */
		/* 确保游戏容器可以贴边显示，没有左右margin */
	}

	/* 卡片容器：完全移除所有样式，让游戏容器直接撑满 */
	.slots-game-page .bs-game-main__left .bs-card {
		margin: 0 !important;
		padding: 0 !important;
		border-radius: 0 !important; /* 移除圆角 */
		background: transparent !important; /* 移除背景 */
		box-shadow: none !important; /* 移除阴影 */
		border: none !important; /* 移除边框 */
		backdrop-filter: none !important;
		overflow: visible !important;
		display: block;
		width: 100vw !important;
		max-width: 100vw !important;
	}

	.slots-game-page .bs-game-main__left .bs-card__body {
		padding: 0 !important; /* 强制移除所有内边距 */
		margin: 0 !important;
		max-width: 100vw !important; /* 撑满视口宽度 */
		overflow: visible !important;
		min-height: 0 !important;
		display: block !important;
		width: 100vw !important; /* 撑满视口宽度 */
		height: auto !important;
	}

	.slots-game-page .bs-game-main__left .bs-card__footer {
		display: none !important; /* 移动端隐藏footer */
	}

	/* ===== 移动端（≤768px）：重构竖屏游戏为 9:16 首屏大卡片 ===== */
	/* 
	 * 设计原则：
	 * 1. 竖屏游戏：9:16 比例大卡片，宽度撑满屏幕，带圆角/阴影，撑满首屏
	 * 2. 横屏游戏：保持原有逻辑，不受影响
	 * 3. PC 布局：保持原有逻辑，不受影响（由 @media (min-width: 769px) 控制）
	 * 
	 * 顶部导航高度计算（移动端）：
	 * - .bs-game-nav { padding: 1rem 0; } = 32px
	 * - .bs-game-nav__title { font-size: 1.2rem; } ≈ 19.2px
	 * - .bs-game-nav__back + gap ≈ 32px
	 * - border-bottom: 1px
	 * - 总计约 100-120px，使用 120px 作为安全值（确保首屏只露出标题 + 游戏容器）
	 */
	
	/* ===== 移动端竖屏游戏（9:16）：首屏大卡片（严格按照 JILI 效果） ===== */
	/* 参考：https://jiligames.com/PlusIntro/421?showGame=true 的移动端效果 */
	/* JILI 逻辑：游戏容器占据首屏，9:16竖屏比例，宽度撑满，高度由宽度和比例决定 */
	/* 选择器组合：页面容器(.slots-game-page) + 方向标记(.slots-game--portrait) + 游戏容器(.bs-game-frame) */
	.slots-game-page .slots-game--portrait .bs-game-frame,
	.slots-game-page .slots-game--portrait#slots-demo-root,
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--portrait,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--portrait,
	.slots-game-page .bs-game-main__left .slots-game--portrait.bs-game-frame,
	.slots-game-page #slots-demo-root.slots-game--portrait,
	.slots-game-page .bs-game-frame.slots-game--portrait {
		/* 位置和布局：重置所有可能影响尺寸的属性 */
		position: relative !important;
		display: block !important;
		flex: none !important;
		align-items: unset !important;
		justify-content: unset !important;
		
		/* 宽度：接近视口宽度，左右预留一点安全边距（参考 JILI） */
		width: calc(100vw - 16px) !important; /* 左右各留8px安全边距 */
		max-width: calc(100vw - 16px) !important;
		margin: 0 auto !important; /* 居中 */
		padding: 0 !important;
		
		/* 9:16 比例：使用固定纵横比，让高度自动跟宽度走（参考 JILI：竖屏游戏容器，不是方形） */
		/* 9:16 意味着 height = width * 16/9 */
		/* 例如：374px 宽度（390-16） → 665px 高度（9:16比例） */
		aspect-ratio: 9 / 16 !important;
		
		/* 高度策略：优先使用 aspect-ratio 计算的高度，确保占据首屏大部分空间 */
		/* 顶部导航高度 ≈ 120px（实际测量 JILI 页面：导航+标题+面包屑） */
		/* 游戏容器高度必须大于当前黑底高度，目测接近全屏的70%-80% */
		/* 如果计算出的高度超过可用空间，aspect-ratio 会自动调整，但优先保证宽度 */
		max-height: calc(100vh - 120px) !important;
		min-height: 0 !important;
		height: auto !important; /* 让 aspect-ratio 控制高度 */
		
		/* 溢出控制 */
		overflow: hidden !important;
		
		/* 视觉效果：带一点圆角和阴影（参考 JILI：圆角卡片效果） */
		border-radius: 16px !important;
		background: #000 !important;
		box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4),
					0 0 0 1px rgba(255, 255, 255, 0.05) inset !important;
		border: none !important;
	}
	
	/* 竖屏游戏内部容器：确保iframe可以填满（参考 JILI：iframe 完全填充容器） */
	/* 将 iframe 外的那一层作为"比例盒子"母容器（就像 JILI 的 #GameDiv 那样） */
	.slots-game-page .slots-game--portrait .bs-game-frame-inner,
	.slots-game-page .slots-game--portrait .slots-iframe-container,
	.slots-game-page .bs-game-main__left .slots-game--portrait .bs-game-frame-inner,
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--portrait .bs-game-frame-inner,
	.slots-game-page .bs-game-main__left .slots-game--portrait .slots-iframe-container {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: 100% !important;
		/* 确保内部容器完全填充父容器，iframe 才能正确显示 */
		/* 就像 JILI 的 #GameDiv 那样，高度 100% */
	}
	
	/* 覆盖基础样式的伪元素（竖屏游戏） */
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--portrait::before,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--portrait::before {
		display: none !important; /* 移除装饰性伪元素 */
	}
	
	/* ===== 横屏游戏（16:9）：自动居中 + letterbox（仅在移动端生效） ===== */
	.slots-game-page .slots-game--landscape .bs-game-frame,
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--landscape,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--landscape,
	.slots-game-page .bs-game-main__left .slots-game--landscape.bs-game-frame {
		/* 位置和布局 */
		position: relative !important;
		display: block !important;
		flex: none !important;
		
		/* 宽度：撑满屏幕 */
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important; /* 居中 */
		padding: 0 !important;
		
		/* 高度：16:9比例，以宽度为基准计算高度 */
		/* 16:9 = 0.5625 */
		height: calc(100vw * 0.5625) !important;
		max-height: 60vh !important;
		min-height: 0 !important;
		
		/* 溢出控制 */
		overflow: hidden !important;
		
		/* 视觉效果 */
		border-radius: 0 !important;
		background: #000 !important;
		box-shadow: none !important;
		border: none !important;
	}
	
	/* ===== 默认样式（无方向class）：按竖屏处理（仅在移动端生效） ===== */
	/* 如果插件没有添加方向class，默认按竖屏处理，使用首屏大卡片 */
	.slots-game-page .bs-game-main__left .bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait),
	.slots-game-page .bs-game-main__left #slots-demo-root:not(.slots-game--landscape):not(.slots-game--portrait) {
		/* 位置和布局 */
		position: relative !important;
		display: block !important;
		flex: none !important;
		align-items: unset !important;
		justify-content: unset !important;
		
		/* 宽度：撑满屏幕（参考 JILI） */
		width: calc(100vw - 0px) !important;
		max-width: 100vw !important;
		margin: 0 !important;
		padding: 0 !important;
		
		/* 9:16 比例：宽度决定高度（参考 JILI：竖屏游戏容器） */
		aspect-ratio: 9 / 16 !important;
		
		/* 高度限制：确保不超过首屏可用空间 */
		max-height: calc(100vh - 120px) !important;
		min-height: 0 !important;
		height: auto !important; /* 让 aspect-ratio 控制高度 */
		
		/* 溢出控制 */
		overflow: hidden !important;
		
		/* 视觉效果 */
		border-radius: 16px !important;
		background: #000 !important;
		box-shadow: 0 4px 24px rgba(0, 0, 0, 0.4),
					0 0 0 1px rgba(255, 255, 255, 0.05) inset !important;
		border: none !important;
	}
	
	/* 覆盖基础样式的伪元素（默认样式） */
	.slots-game-page .bs-game-main__left .bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait)::before,
	.slots-game-page .bs-game-main__left #slots-demo-root:not(.slots-game--landscape):not(.slots-game--portrait)::before {
		display: none !important;
	}

	/* ===== iframe wrapper 和 iframe：完全填充父容器（移动端） ===== */
	/* 竖屏游戏：保持圆角 */
	.slots-game--portrait .slots-game-iframe-wrapper,
	.bs-game-main__left .slots-game--portrait .slots-game-iframe-wrapper,
	.bs-game-main__left .bs-game-frame.slots-game--portrait .slots-game-iframe-wrapper {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		overflow: hidden !important;
		border-radius: 16px !important; /* 保持圆角 */
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* 横屏游戏：无圆角 */
	.slots-game--landscape .slots-game-iframe-wrapper,
	.bs-game-main__left .slots-game--landscape .slots-game-iframe-wrapper,
	.bs-game-main__left .bs-game-frame.slots-game--landscape .slots-game-iframe-wrapper {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		overflow: hidden !important;
		border-radius: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	
	/* 默认样式：保持圆角 */
	.bs-game-main__left .bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait) .slots-game-iframe-wrapper {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		overflow: hidden !important;
		border-radius: 16px !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	/* iframe：完全填充容器，确保内容完整显示（移动端） */
	/* 重要：iframe 高度必须跟父容器走（父 100% / 子 100%），不能再写固定 px */
	/* 参考 JILI：iframe 自身用 width: 100%; height: 100%; 填满容器 */
	.slots-game-page .slots-game--portrait .slots-game-iframe,
	.slots-game-page .slots-game--portrait .bs-game-frame iframe,
	.slots-game-page .slots-game--portrait .slots-game-iframe-wrapper iframe,
	.slots-game-page .slots-game--portrait .slots-iframe-container iframe,
	.slots-game-page .bs-game-main__left .slots-game--portrait .slots-game-iframe,
	.slots-game-page .bs-game-main__left .slots-game--portrait .bs-game-frame iframe,
	.slots-game-page .bs-game-main__left .slots-game--portrait .slots-game-iframe-wrapper iframe,
	.slots-game-page .bs-game-main__left .slots-game-iframe-wrapper iframe,
	.slots-game-page .bs-game-main__left .bs-game-frame iframe,
	.slots-game-page .bs-game-main__left #slots-game-iframe,
	.slots-game-page .bs-game-main__left .slots-game-iframe {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 100% !important;
		height: 100% !important; /* 高度跟父容器走，不写死 */
		border: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		transform: none !important; /* 防止插件 JS 强行 rotate */
		/* iframe 完全由父容器高度控制，不自己设置高度 */
		/* 所有高度逻辑统一在 .bs-game-frame 层处理 */
	}
	
	/* 横屏游戏 iframe */
	.slots-game--landscape .slots-game-iframe,
	.slots-game--landscape .bs-game-frame iframe,
	.slots-game--landscape .slots-game-iframe-wrapper iframe,
	.bs-game-main__left .slots-game--landscape .slots-game-iframe,
	.bs-game-main__left .slots-game--landscape .bs-game-frame iframe,
	.bs-game-main__left .slots-game--landscape .slots-game-iframe-wrapper iframe {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important; /* 高度跟父容器走，不写死 */
		border: 0 !important;
		transform: none !important;
	}

	/* 移动端：玻璃层调整 */
	.bs-game-frame__glass {
		width: 90%;
		height: 180px;
		border-radius: 16px;
	}

	/* 移动端：按钮竖向排列 */
	/* 移动端：CTA 区域调整 */
	.bs-game-controls,
	.slots-demo-actions {
		top: 60%;
		padding: 0 1rem;
		gap: 0.625rem;
		max-width: 100%;
	}

	.bs-game-controls::before,
	.slots-demo-actions::before {
		width: 110%;
		height: 60px;
		filter: blur(25px);
		opacity: 0.7;
	}

	.bs-game-controls__buttons,
	.slots-demo-actions__buttons {
		flex-direction: column;
		width: 100%;
		gap: 0.75rem;
	}

	.bs-game-controls .bs-game-btn,
	.slots-demo-actions .bs-game-btn,
	.slots-demo-btn {
		width: 100%;
		max-width: 320px;
	}

	.bs-game-controls .bs-game-btn--primary,
	.bs-game-controls .bs-game-btn--real-money,
	.slots-demo-btn--real {
		padding: 0.875rem 1.5rem;
		font-size: 1rem;
	}

	.bs-game-controls .bs-game-btn--secondary,
	.slots-demo-btn--demo {
		padding: 0.75rem 1.5rem;
		font-size: 0.9rem;
	}

	.bs-game-controls__promo,
	.slots-demo-actions__promo {
		font-size: 0.8rem;
		margin-top: 0.5rem;
		padding: 0 0.75rem;
		line-height: 1.4;
		/* 移动端：文案行数可能增加，保证不超过封面下边缘，适当缩小字号 */
	}

	/* 移动端：右侧游戏信息面板移到下方（滚动后可见） */
	.bs-game-main__right {
		order: 2;
		margin-top: 0; /* 移除margin，让信息面板紧贴游戏容器下方 */
		padding: 1.5rem 1rem; /* 添加内边距，让内容有呼吸空间 */
		width: 100%;
		flex: none;
		/* 确保可以向下滚动看到 */
	}

	.bs-game-stats {
		padding: 1.25rem 1rem;
		width: 100%;
		box-sizing: border-box;
	}

	.bs-game-stats__item {
		padding: 0.875rem 0;
		line-height: 1.6;
	}

	/* WAP端：游戏横幅广告自适应 */
	.bs-game-banner {
		margin-top: 16px;
		border-radius: 16px;
		width: 100%;
	}

	.bs-game-banner__inner {
		padding: 14px 14px 16px;
		gap: 12px;
	}

	.bs-game-banner__title {
		font-size: 18px;
	}

	.bs-game-banner__subtitle {
		font-size: 13px;
	}

	.bs-game-banner__cta {
		width: 100%;
		text-align: center;
	}

	/* WAP端：相关游戏推荐横向滚动 */
	.bs-related-games {
		margin-top: 24px;
		padding: 2rem 0;
	}

	.bs-related-games__header {
		padding-left: 16px;
		padding-right: 16px;
	}

	.bs-related-games__title {
		font-size: 1.3rem;
		margin-bottom: 1.5rem;
	}

	.bs-related-games__list {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none; /* Firefox */
		padding-left: 16px;
		padding-right: 16px;
		gap: 0;
		/* 横向滚动布局 */
	}

	.bs-related-games__list::-webkit-scrollbar {
		display: none; /* WebKit */
	}

	.bs-related-game-card {
		flex: 0 0 auto;
		width: 75vw;
		max-width: 240px;
		margin-right: 12px;
		border-radius: 14px;
	}

	.bs-related-game-card:last-child {
		margin-right: 0;
		padding-right: 0;
	}

	.bs-related-game-card__thumb {
		position: relative;
		width: 100%;
		padding-bottom: 56.25%; /* 16:9 */
		overflow: hidden;
		background: radial-gradient(circle at center, #191927 0, #050509 80%);
	}

	.bs-related-game-card__thumb img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
		display: block;
		transition: transform 0.3s ease;
	}

	.bs-related-game-card:hover .bs-related-game-card__thumb img {
		transform: scale(1.1);
	}

	.bs-related-game-card__info {
		padding: 10px 12px 12px;
	}

	.bs-related-game-card__name {
		font-size: 14px;
		line-height: 1.4;
	}

	.bs-related-game-card__meta {
		font-size: 0.75rem;
		line-height: 1.4;
	}

	.bs-game-stats__title {
		font-size: 1.1rem;
	}

	.bs-game-stats__value {
		font-size: 1rem;
	}

	/* 新 section 结构响应式 */
	.bs-game-section {
		padding: 2rem 0;
	}

	.bs-game-section__title {
		font-size: 1.3rem;
		margin-bottom: 1.5rem;
	}

	.bs-game-features__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.bs-game-features__main {
		width: 100%;
		padding: 0;
		margin: 0;
	}

	.slots-extra-info {
		order: 1;
		width: 100%;
		margin: 0;
		padding: 1.5rem;
		text-align: left;
	}

	/* 弹窗响应式（768px） */
	.slots-auth-modal__dialog {
		max-width: 360px;
		width: calc(100% - 32px);
		padding: 20px 18px 16px;
	}

	/* 游戏加载错误提示响应式 */
	.bs-game-frame__error,
	.slots-game-error {
		padding: 0.875rem 1.25rem;
		font-size: 0.85rem;
	}

	/* 游戏特性响应式（768px） */
	.bs-game-features {
		padding: 1.5rem;
		border-radius: 14px;
	}

	.bs-game-features__main {
		padding: 1.25rem;
	}

	.slots-features-list__item,
	.bs-game-features li {
		padding: 0.625rem 10px;
		margin-bottom: 6px;
		gap: 0.625rem;
	}

	.slots-features-list__text,
	.bs-game-features li {
		font-size: 0.9rem;
		line-height: 1.75;
	}

	.bs-game-shots {
		padding: 2rem 0;
	}

	.bs-game-shots__title {
		font-size: 1.3rem;
	}

	/* 移动端：截图卡片单列 */
	.bs-game-shots__grid {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.bs-game-details {
		padding: 2rem 0;
	}

	.bs-game-details__title {
		font-size: 1.3rem;
	}

	.bs-game-details__grid {
		grid-template-columns: 1fr;
	}

	.bs-game-details__aside {
		order: -1;
		margin-bottom: 1.5rem;
	}

	.bs-game-content h2 {
		font-size: 1.2rem;
	}

	.bs-game-content h3 {
		font-size: 1.1rem;
	}
}

@media (max-width: 480px) {
	.bs-game-nav__title {
		font-size: 1.1rem;
	}

	.bs-game-nav__back {
		font-size: 0.85rem;
	}

	.bs-card__body {
		padding: 0.75rem;
	}

	/* 小屏（≤480px）：进一步优化，确保撑满首屏 */
	.slots-game-page .bs-game-main__left {
		padding: 0 !important; /* 完全移除padding */
	}
	
	.slots-game-page .bs-card__body {
		padding: 0 !important; /* 完全移除内边距 */
	}
	
	/* 小屏（≤480px）：竖屏游戏调整（参考 JILI） */
	/* 小屏幕顶部导航可能更紧凑，使用 110px 作为安全值 */
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--portrait,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--portrait {
		width: calc(100vw - 12px) !important; /* 小屏幕左右各留6px安全边距 */
		max-width: calc(100vw - 12px) !important;
		/* 保持 9:16 比例 */
		aspect-ratio: 9 / 16 !important;
		max-height: calc(100vh - 110px) !important; /* 小屏幕顶部导航更紧凑 */
		min-height: 0 !important;
		height: auto !important; /* 让 aspect-ratio 控制高度 */
		/* 保持圆角和阴影 */
		border-radius: 16px !important;
	}
	
	/* 小屏：横屏游戏调整（保持原有逻辑） */
	.slots-game-page .bs-game-main__left .bs-game-frame.slots-game--landscape,
	.slots-game-page .bs-game-main__left #slots-demo-root.slots-game--landscape {
		max-height: calc(100vh - 110px) !important; /* 小屏幕减少预留空间 */
		/* 保持 aspect-ratio，不强制铺满 */
	}
	
	/* 小屏：默认样式调整（竖屏，9:16 大卡片） */
	.slots-game-page .bs-game-main__left .bs-game-frame:not(.slots-game--landscape):not(.slots-game--portrait),
	.slots-game-page .bs-game-main__left #slots-demo-root:not(.slots-game--landscape):not(.slots-game--portrait) {
		width: calc(100vw - 12px) !important;
		max-width: calc(100vw - 12px) !important;
		aspect-ratio: 9 / 16 !important;
		max-height: calc(100vh - 110px) !important;
		min-height: 0 !important;
		height: auto !important; /* 让 aspect-ratio 控制高度 */
		border-radius: 16px !important;
	}

	.bs-game-frame__glass {
		width: 95%;
		height: 160px;
		border-radius: 14px;
	}

	/* 小屏：CTA 区域进一步优化 */
	.bs-game-controls,
	.slots-demo-actions {
		top: 58%;
		padding: 0 0.75rem;
		gap: 0.5rem;
	}

	.bs-game-controls::before,
	.slots-demo-actions::before {
		width: 105%;
		height: 55px;
		filter: blur(20px);
		opacity: 0.6;
	}

	.bs-game-controls__buttons,
	.slots-demo-actions__buttons {
		gap: 0.625rem;
	}

	.bs-game-controls .bs-game-btn,
	.slots-demo-actions .bs-game-btn,
	.slots-demo-btn {
		max-width: 100%;
	}

	.bs-game-controls .bs-game-btn--primary,
	.bs-game-controls .bs-game-btn--real-money,
	.slots-demo-btn--real {
		padding: 0.75rem 1.25rem;
		font-size: 0.95rem;
	}

	.bs-game-controls .bs-game-btn--primary .bs-btn-subtitle,
	.bs-game-controls .bs-game-btn--real-money .bs-btn-subtitle {
		font-size: 0.7rem;
	}

	.bs-game-controls .bs-game-btn--secondary,
	.slots-demo-btn--demo {
		padding: 0.625rem 1.25rem;
		font-size: 0.85rem;
	}

	.bs-game-controls__promo,
	.slots-demo-actions__promo {
		font-size: 0.75rem;
		margin-top: 0.375rem;
		padding: 0 0.5rem;
		line-height: 1.3;
	}

	.bs-game-stats {
		padding: 1rem;
	}

	.bs-game-stats__label {
		font-size: 0.7rem;
	}

	.bs-game-stats__value {
		font-size: 0.95rem;
	}

	/* 新 section 结构响应式 */
	.bs-game-section {
		padding: 1.5rem 0;
	}

	.bs-game-section__title {
		font-size: 1.2rem;
		margin-bottom: 1.25rem;
		padding-bottom: 0.625rem;
	}

	.bs-game-features__grid {
		gap: 1.25rem;
	}

	.bs-game-features__main {
		width: 100%;
		padding: 0;
		margin: 0;
	}

	.slots-extra-info {
		width: 100%;
		margin: 0;
		padding: 1.25rem;
		text-align: left;
	}

	.slots-field {
		padding: 0.625rem 0;
	}

	.slots-field-label {
		font-size: 0.85rem;
		min-width: 70px;
	}

	.slots-field-value {
		font-size: 0.9rem;
	}

	.slots-tags {
		margin-top: 1.25rem;
		padding-top: 1.25rem;
	}

	.slots-tag-chip {
		padding: 0.4rem 0.875rem;
		font-size: 0.8rem;
	}


	/* 弹窗响应式（480px） */
	.slots-auth-modal__dialog {
		max-width: calc(100% - 32px);
		width: calc(100% - 32px);
		padding: 18px 16px 14px;
	}

	.slots-auth-modal__tabs {
		gap: 12px;
		margin-bottom: 16px;
	}

	.slots-auth-modal__tabs button {
		font-size: 14px;
		padding: 5px 0;
	}

	.slots-auth-form__field {
		margin-bottom: 12px;
	}

	.slots-auth-form__field label {
		font-size: 12px;
	}

	.slots-auth-form__field input {
		padding: 7px 12px;
		font-size: 13px;
	}

	.slots-auth-form__submit {
		padding: 9px 0;
		font-size: 14px;
	}

	.slots-auth-form__error {
		font-size: 11px;
	}

	.slots-auth-form__captcha {
		min-height: 55px;
		padding: 6px;
	}

	/* 游戏加载错误提示响应式（小屏） */
	.bs-game-frame__error,
	.slots-game-error {
		padding: 0.75rem 1rem;
		font-size: 0.8rem;
		gap: 0.5rem;
	}

	.bs-game-frame__error::before,
	.slots-game-error::before {
		font-size: 1rem;
	}

	/* 游戏特性响应式（480px） */
	.bs-game-features {
		padding: 1.25rem;
		border-radius: 12px;
	}

	.bs-game-features__main {
		padding: 1rem;
	}

	.slots-features-list__item,
	.bs-game-features li {
		padding: 0.5rem 8px;
		margin-bottom: 4px;
		gap: 0.5rem;
		flex-direction: row;
	}

	.slots-features-list__dot {
		width: 6px;
		height: 6px;
		min-width: 6px;
		min-height: 6px;
		margin-top: 0.4rem;
	}

	.slots-features-list__text,
	.bs-game-features li {
		font-size: 0.875rem;
		line-height: 1.7;
	}

	.slots-game-loading__spinner {
		width: 40px;
		height: 40px;
		border-width: 3px;
	}

	.slots-game-loading__text {
		font-size: 0.85rem;
		margin-top: 10px;
	}

	/* 广告位移动端适配（480px） */
	.bs-sidebar-ad {
		padding: 1.25rem 1rem;
		border-radius: 16px;
	}

	.bs-sidebar-ad__badge {
		font-size: 0.7rem;
		padding: 0.3rem 0.75rem;
	}

	.bs-sidebar-ad__title {
		font-size: 1.1rem;
	}

	.bs-sidebar-ad__description {
		font-size: 0.85rem;
	}

	.bs-sidebar-ad__cta {
		padding: 0.7rem 1.25rem;
		font-size: 0.85rem;
	}

	/* 相关游戏推荐移动端适配（480px） */
	.bs-related-games {
		margin-top: 20px;
		padding: 1.5rem 0;
	}

	.bs-related-games__title {
		font-size: 1.2rem;
		margin-bottom: 1.25rem;
	}

	.bs-related-games__list {
		grid-template-columns: 1fr;
		gap: 0.875rem;
		/* 小屏幕：单列布局 */
	}

	.bs-related-game-card__info {
		padding: 0.875rem;
	}

	.bs-related-game-card__name {
		font-size: 0.95rem;
	}

	.bs-related-game-card__meta {
		font-size: 0.75rem;
	}

	.bs-game-shots__title {
		font-size: 1.2rem;
		margin-bottom: 1.5rem;
	}

	.bs-game-details {
		padding: 1.5rem 0;
	}

	.bs-game-details__title {
		font-size: 1.2rem;
	}

	.bs-game-content {
		font-size: 0.9rem;
	}

	.bs-game-content h2 {
		font-size: 1.1rem;
	}

	.bs-game-content h3 {
		font-size: 1rem;
	}
}

