
/* Core buttons fallback (when Tailwind build is stale) */
.bc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	border-radius: 0.75rem;
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
	border: 0;
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s, transform 0.2s;
}

.bc-btn-primary {
	background: rgb(51 141 255);
	color: #fff;
}

.bc-btn-primary:hover {
	background: rgb(26 111 245);
}

.bc-btn-ghost {
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid rgba(51, 141, 255, 0.18);
	color: rgb(51 65 85);
}

.dark .bc-btn-ghost {
	background: rgba(15, 23, 42, 0.55);
	color: rgb(226 232 240);
}

.bc-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	border-radius: 9999px;
	padding: 0.25rem 0.625rem;
	font-size: 0.75rem;
	font-weight: 500;
	border: 1px solid rgba(51, 141, 255, 0.18);
	background: rgba(255, 255, 255, 0.55);
	color: rgb(29 78 216);
}

.dark .bc-chip {
	background: rgba(15, 23, 42, 0.55);
	color: rgb(219 234 254);
}

/* ── Single game page ── */
.bc-single-breadcrumb {
	color: rgb(71 85 105);
}

.dark .bc-single-breadcrumb {
	color: rgb(203 213 225);
}

.bc-single-game {
	--bc-single-gap: 1.75rem;
	--bc-single-section-pad: 1.25rem;
	--bc-single-radius: 1rem;
	overflow-x: clip;
}

@media (min-width: 768px) {
	.bc-single-game {
		--bc-single-section-pad: 1.75rem;
		--bc-single-radius: 1.25rem;
	}
}

.bc-single-game > .mx-auto {
	padding-top: 1.25rem;
	padding-bottom: 2.5rem;
}

.bc-single-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--bc-single-gap);
	margin-top: var(--bc-single-gap);
}

@media (min-width: 1024px) {
	.bc-single-layout {
		grid-template-columns: minmax(0, 1fr) 300px;
		gap: 2rem;
	}
}

.bc-single-main {
	display: flex;
	flex-direction: column;
	gap: var(--bc-single-gap);
	min-width: 0;
}

.bc-single-section {
	border-radius: var(--bc-single-radius);
	padding: var(--bc-single-section-pad);
}

.bc-single-section > .bc-section-heading,
.bc-single-section > .flex.items-center.gap-3:first-child {
	margin-bottom: 1.25rem;
}

.bc-single-section .bc-section-title {
	margin: 0;
}

.bc-single-breadcrumb {
	margin-bottom: 0;
	font-size: 0.8125rem;
	color: rgb(100 116 139);
}

.bc-single-breadcrumb__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.bc-single-breadcrumb__item {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
}

/* Breadcrumb bar — below header, same glass style as menu */
.bc-single-breadcrumb-bar {
	width: 100%;
	max-width: 100%;
	margin-inline: 0;
	border-radius: 0;
	border-top: 0;
	border-inline: 0;
}

.bc-single-breadcrumb-bar__inner {
	display: flex;
	align-items: center;
	min-height: 2.75rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.bc-single-breadcrumb-bar .bc-single-breadcrumb__link {
	color: rgb(100 116 139);
}

.bc-single-breadcrumb-bar .bc-single-breadcrumb__link:hover {
	color: rgb(29 78 216);
}

.dark .bc-single-breadcrumb-bar .bc-single-breadcrumb__link:hover {
	color: rgb(147 197 253);
}

.bc-single-breadcrumb-bar .bc-single-breadcrumb__current {
	font-weight: 600;
	color: rgb(51 65 85);
}

.dark .bc-single-breadcrumb-bar .bc-single-breadcrumb__current {
	color: rgb(226 232 240);
}

.bc-single-breadcrumb__link {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	text-decoration: none;
	color: inherit;
	transition: color 0.2s;
}

.bc-single-breadcrumb__link:hover {
	color: rgb(29 78 216);
}

.dark .bc-single-breadcrumb__link:hover {
	color: rgb(147 197 253);
}

.bc-single-breadcrumb__current {
	font-weight: 600;
	color: rgb(51 65 85);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 100%;
}

.dark .bc-single-breadcrumb__current {
	color: rgb(226 232 240);
}

.bc-category-description {
	margin-top: 2rem;
	padding: 1rem 1.25rem;
}

@media (min-width: 768px) {
	.bc-category-description {
		padding: 1.25rem 1.5rem;
	}
}

.bc-category-description__content {
	font-size: 0.875rem;
	line-height: 1.85;
	color: rgb(71 85 105);
}

.dark .bc-category-description__content {
	color: rgb(203 213 225);
}

.bc-category-description__content > *:first-child {
	margin-top: 0;
}

.bc-category-description__content > *:last-child {
	margin-bottom: 0;
}

.bc-prose {
	font-size: 0.9375rem;
	line-height: 1.95;
	color: rgb(51 65 85);
	max-width: 100%;
	overflow-wrap: break-word;
}

.bc-prose :where(img, video, iframe, embed, object, svg, table) {
	max-width: 100%;
	height: auto;
}

.bc-prose pre,
.bc-prose .wp-block-table,
.bc-prose table {
	max-width: 100%;
	overflow-x: auto;
}

.dark .bc-prose {
	color: rgb(226 232 240);
}

.bc-prose p + p {
	margin-top: 1rem;
}

.bc-prose h2,
.bc-prose h3,
.bc-prose h4,
.bc-prose h5 {
	margin-top: 1.75rem;
	margin-bottom: 0.75rem;
	font-weight: 800;
	line-height: 1.45;
	color: rgb(15 23 42);
}

.dark .bc-prose h2,
.dark .bc-prose h3,
.dark .bc-prose h4,
.dark .bc-prose h5 {
	color: #fff;
}

.bc-prose h2 {
	padding-bottom: 0.625rem;
	border-bottom: 1px solid rgba(59, 130, 246, 0.18);
	font-size: 1.375rem;
}

.bc-prose h3 {
	font-size: 1.1875rem;
	color: rgb(30 41 59);
}

.dark .bc-prose h3 {
	color: rgb(241 245 249);
}

.bc-prose h4 {
	font-size: 1.0625rem;
	color: rgb(51 65 85);
}

.dark .bc-prose h4 {
	color: rgb(226 232 240);
}

.bc-prose h5 {
	font-size: 0.9375rem;
	font-weight: 700;
	color: rgb(71 85 105);
}

.dark .bc-prose h5 {
	color: rgb(203 213 225);
}

.bc-prose h2:first-child,
.bc-prose h3:first-child,
.bc-prose h4:first-child,
.bc-prose h5:first-child {
	margin-top: 0;
}

.bc-prose ul,
.bc-prose ol,
.bc-prose .wp-block-list {
	margin: 1rem 0;
	padding: 0;
	list-style: none;
	list-style-type: none;
}

.bc-prose ul > li,
.bc-prose ol > li,
.bc-prose .wp-block-list > li {
	position: relative;
	list-style: none;
	list-style-type: none;
}

.bc-prose ul > li::marker,
.bc-prose ol > li::marker,
.bc-prose .wp-block-list > li::marker {
	content: none;
}

.bc-prose ul > li + li,
.bc-prose ol > li + li {
	margin-top: 0.625rem;
}

.bc-prose ul > li {
	padding-inline-start: 1.5rem;
}

.bc-prose ol {
	counter-reset: bc-prose-counter;
}

.bc-prose ol > li {
	counter-increment: bc-prose-counter;
	padding-inline-start: 1.875rem;
}

.bc-prose ol > li::before {
	content: counter(bc-prose-counter) ".";
	position: absolute;
	inset-inline-start: 0;
	top: 0;
	min-width: 1.25rem;
	font-size: 0.875rem;
	font-weight: 800;
	line-height: inherit;
	color: rgb(59 130 246);
	background: none;
	border-radius: 0;
	box-shadow: none;
}

.dark .bc-prose ol > li::before {
	color: rgb(96 165 250);
}

.bc-prose ul > li::before,
.bc-prose ol ul > li::before,
.bc-prose ul.wp-block-list > li::before {
	content: "";
	display: block;
	position: absolute;
	inset-inline-start: 0.375rem;
	top: 0.72em;
	width: 0.4375rem;
	height: 0.4375rem;
	min-width: 0;
	border-radius: 999px;
	background: rgb(51 141 255);
	box-shadow: 0 0 0 3px rgba(51, 141, 255, 0.14);
}

.dark .bc-prose ul > li::before,
.dark .bc-prose ol ul > li::before,
.dark .bc-prose ul.wp-block-list > li::before {
	background: rgb(89 173 255);
	box-shadow: 0 0 0 3px rgba(89, 173, 255, 0.16);
}

.bc-prose ul ul,
.bc-prose ol ol,
.bc-prose ul ol,
.bc-prose ol ul {
	margin-top: 0.625rem;
	margin-bottom: 0;
}

.bc-prose li > ul > li::before {
	width: 0.3125rem;
	height: 0.3125rem;
	background: rgb(148 163 184);
	box-shadow: none;
}

.bc-prose a {
	color: rgb(29 78 216);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: rgba(29, 78, 216, 0.35);
}

.bc-prose a:hover {
	text-decoration-color: rgba(29, 78, 216, 0.85);
}

.dark .bc-prose a {
	color: rgb(147 197 253);
	text-decoration-color: rgba(147, 197, 253, 0.35);
}

.dark .bc-prose a:hover {
	text-decoration-color: rgba(147, 197, 253, 0.85);
}

/* Tags section */
.bc-tags-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.bc-tag-link {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	padding: 0.4375rem 0.875rem;
	border: 1px solid rgba(59, 130, 246, 0.22);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.55);
	color: rgb(29 78 216);
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	transition: background-color 0.15s, border-color 0.15s, color 0.15s, transform 0.15s;
}

.bc-tag-link:hover {
	border-color: rgba(59, 130, 246, 0.42);
	background: rgba(239, 246, 255, 0.95);
	color: rgb(29 78 216);
	transform: translateY(-1px);
}

.dark .bc-tag-link {
	border-color: rgba(96, 165, 250, 0.24);
	background: rgba(15, 23, 42, 0.55);
	color: rgb(191 219 254);
}

.dark .bc-tag-link:hover {
	border-color: rgba(96, 165, 250, 0.45);
	background: rgba(30, 58, 138, 0.35);
	color: #fff;
}

.bc-sysreq-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 768px) {
	.bc-sysreq-grid {
		grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
	}
}

.bc-sysreq-card {
	border-radius: 0.75rem;
	border: 1px solid;
	padding: 1rem;
}

.bc-sysreq-card--minimum {
	border-color: rgba(251, 191, 36, 0.45);
	background: rgba(255, 251, 235, 0.65);
}

.dark .bc-sysreq-card--minimum {
	border-color: rgba(245, 158, 11, 0.28);
	background: rgba(69, 26, 3, 0.25);
}

.bc-sysreq-card--recommended {
	border-color: rgba(52, 211, 153, 0.45);
	background: rgba(236, 253, 245, 0.65);
}

.dark .bc-sysreq-card--recommended {
	border-color: rgba(16, 185, 129, 0.28);
	background: rgba(6, 44, 34, 0.25);
}

.bc-sysreq-card__title {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 1rem;
	font-size: 1rem;
	font-weight: 700;
}

.bc-sysreq-card--minimum .bc-sysreq-card__title {
	color: rgb(146 64 14);
}

.dark .bc-sysreq-card--minimum .bc-sysreq-card__title {
	color: rgb(253 230 138);
}

.bc-sysreq-card--recommended .bc-sysreq-card__title {
	color: rgb(6 95 70);
}

.dark .bc-sysreq-card--recommended .bc-sysreq-card__title {
	color: rgb(167 243 208);
}

.bc-sysreq-list {
	display: grid;
	grid-template-columns: 7rem minmax(0, 1fr);
	gap: 0 0.5rem;
	margin: 0;
	font-size: 0.875rem;
}

.bc-sysreq-list dt,
.bc-sysreq-list dd {
	padding-block: 0.625rem;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.bc-sysreq-list dt:first-of-type,
.bc-sysreq-list dd:first-of-type {
	border-top: 0;
}

.dark .bc-sysreq-list dt,
.dark .bc-sysreq-list dd {
	border-top-color: rgba(255, 255, 255, 0.06);
}

.bc-sysreq-list dt {
	font-weight: 600;
	color: rgb(71 85 105);
}

.bc-sysreq-list dd {
	margin: 0;
	color: rgb(30 41 59);
}

.dark .bc-sysreq-list dt {
	color: rgb(203 213 225);
}

.dark .bc-sysreq-list dd {
	color: rgb(241 245 249);
}

.bc-gallery__stage {
	position: relative;
	overflow: visible;
	border-radius: 0.75rem;
	background: rgba(15, 23, 42, 0.04);
}

.dark .bc-gallery__stage {
	background: rgba(15, 23, 42, 0.35);
}

.bc-gallery__slides {
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 0.75rem;
}

.bc-gallery__slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity 0.3s;
	pointer-events: none;
	z-index: 0;
}

.bc-gallery__slide.is-active {
	opacity: 1;
	pointer-events: auto;
	z-index: 1;
}

.bc-gallery__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bc-gallery__nav {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 0;
	border-radius: 9999px;
	transform: translateY(-50%);
	cursor: pointer;
}

.bc-gallery__nav--prev { inset-inline-start: 0.75rem; }
.bc-gallery__nav--next { inset-inline-end: 0.75rem; }

.bc-gallery__expand {
	position: absolute;
	inset-inline-end: 0.75rem;
	bottom: 0.75rem;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border: 0;
	cursor: pointer;
	overflow: visible;
}

.bc-gallery__expand .bc-tooltip--top {
	top: auto;
	bottom: calc(100% + 0.5rem);
	transform: translateX(-50%) translateY(4px);
}

[dir='rtl'] .bc-gallery__expand .bc-tooltip--top {
	transform: translateX(50%) translateY(4px);
}

.bc-gallery__expand .bc-tooltip--top::after {
	top: 100%;
	bottom: auto;
	border-bottom-color: transparent;
	border-top-color: rgb(15 23 42);
}

.dark .bc-gallery__expand .bc-tooltip--top::after {
	border-top-color: rgb(226 232 240);
}

.bc-gallery__expand:hover .bc-tooltip--top,
.bc-gallery__expand:focus-visible .bc-tooltip--top {
	transform: translateX(-50%) translateY(0);
}

[dir='rtl'] .bc-gallery__expand:hover .bc-tooltip--top,
[dir='rtl'] .bc-gallery__expand:focus-visible .bc-tooltip--top {
	transform: translateX(50%) translateY(0);
}

.bc-gallery__thumbs-wrap {
	margin-top: 0.75rem;
}

.bc-gallery__thumbs-viewport {
	position: relative;
	overflow: hidden;
	width: 100%;
}

.bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport {
	width: min(100%, var(--bc-gallery-visible-w, 100%));
	max-width: 100%;
	margin-inline: auto;
}

.bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::before,
.bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 3rem;
	z-index: 2;
	pointer-events: none;
	opacity: 1;
	transition: opacity 0.25s;
}

.bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::before {
	inset-inline-start: 0;
	background: linear-gradient(to inline-end, rgba(255, 255, 255, 0.98) 10%, rgba(255, 255, 255, 0));
}

.bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::after {
	inset-inline-end: 0;
	background: linear-gradient(to inline-start, rgba(255, 255, 255, 0.98) 10%, rgba(255, 255, 255, 0));
}

.dark .bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::before {
	background: linear-gradient(to inline-end, rgba(15, 23, 42, 0.98) 10%, rgba(15, 23, 42, 0));
}

.dark .bc-gallery__thumbs-wrap.is-scrollable .bc-gallery__thumbs-viewport::after {
	background: linear-gradient(to inline-start, rgba(15, 23, 42, 0.98) 10%, rgba(15, 23, 42, 0));
}

.bc-gallery__thumbs-wrap.is-scrollable.is-at-start .bc-gallery__thumbs-viewport::before {
	opacity: 0.35;
}

.bc-gallery__thumbs-wrap.is-scrollable.is-at-end .bc-gallery__thumbs-viewport::after {
	opacity: 0.35;
}

.bc-gallery__thumbs {
	display: flex;
	gap: 0.5rem;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	scroll-snap-type: x proximity;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding-inline: 0;
	scroll-padding-inline: 0.5rem;
	cursor: grab;
	touch-action: pan-x;
}

.bc-gallery__thumbs.is-dragging {
	cursor: grabbing;
	scroll-behavior: auto;
	scroll-snap-type: none;
	user-select: none;
}

.bc-gallery__thumbs::-webkit-scrollbar {
	display: none;
}

.bc-gallery__thumb {
	flex: 0 0 auto;
	width: 7rem;
	height: 4rem;
	overflow: hidden;
	border: 2px solid transparent;
	border-radius: 0.5rem;
	opacity: 0.7;
	cursor: pointer;
	padding: 0;
	background: none;
	transition: opacity 0.2s, border-color 0.2s;
	scroll-snap-align: center;
}

.bc-gallery__thumb.is-active {
	border-color: rgb(51 141 255);
	opacity: 1;
}

.bc-gallery__thumb:focus-visible {
	outline: 2px solid rgb(51 141 255);
	outline-offset: 2px;
}

.bc-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.bc-gallery-lightbox {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	margin: 0;
	padding: 0;
}

.bc-gallery-lightbox[hidden] {
	display: none;
}

.bc-gallery-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.92);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.bc-gallery-lightbox__dialog {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	padding: 3.5rem 4rem 2.5rem;
}

.bc-gallery-lightbox__close {
	position: fixed;
	top: 1rem;
	inset-inline-end: 1rem;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border: 0;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	cursor: pointer;
	transition: background 0.2s;
}

.bc-gallery-lightbox__close:hover {
	background: rgba(255, 255, 255, 0.22);
}

.bc-gallery-lightbox__nav {
	position: fixed;
	top: 50%;
	z-index: 2;
	transform: translateY(-50%);
}

.bc-gallery-lightbox__nav--prev {
	inset-inline-start: 1rem;
}

.bc-gallery-lightbox__nav--next {
	inset-inline-end: 1rem;
}

@media (min-width: 640px) {
	.bc-gallery-lightbox__nav--prev {
		inset-inline-start: 1.5rem;
	}

	.bc-gallery-lightbox__nav--next {
		inset-inline-end: 1.5rem;
	}

	.bc-gallery-lightbox__close {
		top: 1.25rem;
		inset-inline-end: 1.25rem;
	}
}

.bc-gallery-lightbox__figure {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	margin: 0;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
}

.bc-gallery-lightbox__img {
	display: block;
	max-width: min(100%, calc(100vw - 8rem));
	max-height: calc(100dvh - 5.5rem);
	width: auto;
	height: auto;
	border-radius: 0.5rem;
	object-fit: contain;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

.bc-gallery-lightbox__counter {
	font-size: 0.875rem;
	font-weight: 600;
	color: rgba(255, 255, 255, 0.82);
}

.bc-video-embed iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	object-fit: contain;
	background: #000;
}

.bc-download__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgba(51, 141, 255, 0.12);
}

.bc-download__tab {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	border: 1px solid rgba(51, 141, 255, 0.14);
	border-radius: 0.75rem;
	padding: 0.5rem 1rem;
	font-size: 0.875rem;
	font-weight: 600;
	color: rgb(71 85 105);
	background: rgba(51, 141, 255, 0.07);
	cursor: pointer;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s, box-shadow 0.2s;
}

.dark .bc-download__tab {
	color: rgb(203 213 225);
	background: rgba(89, 173, 255, 0.08);
	border-color: rgba(89, 173, 255, 0.16);
}

.bc-download__tab:not(.is-active):hover {
	background: rgba(51, 141, 255, 0.12);
	border-color: rgba(51, 141, 255, 0.24);
}

.dark .bc-download__tab:not(.is-active):hover {
	background: rgba(89, 173, 255, 0.14);
}

.bc-download__tab-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 0.5rem;
	background: rgba(51, 141, 255, 0.12);
	color: rgb(29 78 216);
	flex-shrink: 0;
}

.dark .bc-download__tab-icon {
	background: rgba(89, 173, 255, 0.16);
	color: rgb(147 197 253);
}

.bc-download__tab.is-active .bc-download__tab-icon {
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
}

.bc-download__tab-label {
	line-height: 1.3;
}

.bc-download__tab.is-active {
	background: rgb(51 141 255);
	color: #fff;
	border-color: rgb(51 141 255);
	box-shadow: 0 4px 14px rgba(51, 141, 255, 0.28);
}

.dark .bc-download__tab.is-active {
	background: rgb(89 173 255);
	color: rgb(15 23 42);
}

.bc-download__note {
	margin-bottom: 0.75rem;
	font-size: 0.875rem;
	color: rgb(71 85 105);
}

.bc-download__parts {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bc-download__parts li + li {
	margin-top: 0.5rem;
}

.bc-download__part {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
	border: 1px solid rgba(51, 141, 255, 0.12);
	border-radius: 0.75rem;
	text-decoration: none;
	color: inherit;
	transition: border-color 0.2s, background-color 0.2s;
}

.bc-download__part:hover {
	border-color: rgba(51, 141, 255, 0.35);
	background: rgba(51, 141, 255, 0.06);
}

.bc-download__part-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 0.75rem;
	background: rgba(51, 141, 255, 0.1);
	color: rgb(29 78 216);
	flex-shrink: 0;
}

.bc-download__part-body {
	flex: 1;
	min-width: 0;
}

.bc-download__part-label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
}

.bc-download__part-size {
	display: block;
	font-size: 0.75rem;
	color: rgb(100 116 139);
}

.bc-comments-list {
	margin-top: 0.75rem;
}

.bc-comment-list {
	list-style: none;
	margin: 1rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bc-comment-list > li {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bc-comment-list .children,
.bc-comment-list .bc-comment-list {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-inline-start: 1rem;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.dark .bc-comment-list .children,
.dark .bc-comment-list .bc-comment-list {
	border-inline-start: 0;
}

.bc-comment__inner {
	border: 1px solid rgba(51, 141, 255, 0.12);
	border-radius: 0.75rem;
	padding: 1rem;
	background: rgba(255, 255, 255, 0.35);
}

.bc-comment__inner--reply {
	border-color: rgba(96, 165, 250, 0.18);
	background: rgba(239, 246, 255, 0.55);
}

.dark .bc-comment__inner {
	background: rgba(15, 23, 42, 0.25);
}

.dark .bc-comment__inner--reply {
	border-color: rgba(96, 165, 250, 0.28);
	background: rgba(30, 58, 138, 0.22);
}

.bc-comment__header {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.bc-comment__avatar {
	flex-shrink: 0;
}

.bc-comment__meta {
	min-width: 0;
}

.bc-comment__avatar-img {
	display: block;
	width: 2.75rem;
	height: 2.75rem;
	border-radius: 9999px;
	object-fit: cover;
}

.bc-comment__author {
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	font-style: normal;
}

.bc-comment__author-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
}

.bc-comment__admin-badge {
	display: inline-flex;
	align-items: center;
	padding: 0.125rem 0.5rem;
	border-radius: 999px;
	border: 1px solid rgba(51, 141, 255, 0.28);
	background: rgba(51, 141, 255, 0.12);
	font-size: 0.625rem;
	font-weight: 700;
	line-height: 1.4;
	color: rgb(29 78 216);
	white-space: nowrap;
}

.dark .bc-comment__admin-badge {
	border-color: rgba(96, 165, 250, 0.32);
	background: rgba(59, 130, 246, 0.18);
	color: rgb(147 197 253);
}

.bc-comment__date {
	display: block;
	font-size: 0.75rem;
	color: rgb(100 116 139);
}

.bc-comment__body {
	margin-top: 0.75rem;
	font-size: 0.875rem;
	line-height: 1.7;
	color: rgb(51 65 85);
}

.bc-comment__body p {
	margin: 0;
}

.bc-comment__body p + p {
	margin-top: 0.625rem;
}

.dark .bc-comment__body {
	color: rgb(226 232 240);
}

.bc-comment__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px solid rgba(51, 141, 255, 0.1);
}

.dark .bc-comment__footer {
	border-top-color: rgba(255, 255, 255, 0.06);
}

.bc-comment__reply,
.bc-comment__reply a,
.bc-comment__reply-link {
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(29 78 216);
	text-decoration: none;
}

.bc-comment__reply a:hover,
.bc-comment__reply-link:hover {
	text-decoration: underline;
}

.dark .bc-comment__reply,
.dark .bc-comment__reply a,
.dark .bc-comment__reply-link {
	color: rgb(147 197 253);
}

.bc-comment__like {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	border: 0;
	border-radius: 0.5rem;
	padding: 0.25rem 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(71 85 105);
	background: transparent;
	cursor: pointer;
}

.bc-comment__like:hover,
.bc-comment__like.is-liked {
	color: rgb(225 29 72);
	background: rgba(244, 63, 94, 0.08);
}

.bc-comment-form {
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

.bc-comment-form-section {
	padding: 1.25rem;
}

.bc-comments-stack {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.bc-comments-section__head {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 0;
}

.bc-comments-section__title {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.375rem;
	margin: 0;
}

.bc-comments-section__label {
	font-size: inherit;
	font-weight: inherit;
}

.bc-comments-section__count {
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.4;
	color: rgb(96 165 250);
	white-space: nowrap;
}

.dark .bc-comments-section__count {
	color: rgb(147 197 253);
}

.bc-comment-reply-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 1rem;
	padding: 0.75rem 0.875rem;
	border: 1px solid rgba(59, 130, 246, 0.22);
	border-radius: 0.875rem;
	background: rgba(239, 246, 255, 0.85);
}

.bc-comment-reply-banner[hidden] {
	display: none !important;
}

.dark .bc-comment-reply-banner {
	border-color: rgba(96, 165, 250, 0.28);
	background: rgba(30, 58, 138, 0.28);
}

.bc-comment-reply-banner__content {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.375rem;
	min-width: 0;
}

.bc-comment-reply-banner__label {
	font-size: 0.8125rem;
	color: rgb(71 85 105);
}

.dark .bc-comment-reply-banner__label {
	color: rgb(203 213 225);
}

.bc-comment-reply-banner__author {
	font-size: 0.875rem;
	font-weight: 700;
	color: rgb(29 78 216);
}

.dark .bc-comment-reply-banner__author {
	color: rgb(147 197 253);
}

.bc-comment-reply-banner__cancel {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.375rem;
	flex-shrink: 0;
	border: 1px solid rgba(51, 141, 255, 0.18);
	border-radius: 999px;
	padding: 0.375rem 0.75rem;
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(51 65 85);
	background: rgba(255, 255, 255, 0.85);
	cursor: pointer;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.bc-comment-reply-banner__cancel:hover {
	color: rgb(29 78 216);
	border-color: rgba(59, 130, 246, 0.35);
	background: #fff;
}

.dark .bc-comment-reply-banner__cancel {
	color: rgb(226 232 240);
	border-color: rgba(89, 173, 255, 0.24);
	background: rgba(15, 23, 42, 0.55);
}

.dark .bc-comment-reply-banner__cancel:hover {
	color: rgb(147 197 253);
	border-color: rgba(96, 165, 250, 0.4);
	background: rgba(30, 58, 138, 0.35);
}

.bc-comment-form-section.is-reply-mode {
	border-color: rgba(59, 130, 246, 0.32);
	box-shadow: 0 0 0 1px rgba(59, 130, 246, 0.08);
}

.dark .bc-comment-form-section.is-reply-mode {
	border-color: rgba(96, 165, 250, 0.35);
}

.bc-comment-respond > .comment-reply-title,
.bc-comment-respond > h3 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.625rem;
	margin: 0 0 1.25rem;
	font-size: 1rem;
	font-weight: 700;
	color: rgb(15 23 42);
}

.dark .bc-comment-respond > .comment-reply-title,
.dark .bc-comment-respond > h3 {
	color: #fff;
}

.bc-comment-reply-title__text {
	flex: 1 1 auto;
	min-width: 0;
}

@media (min-width: 768px) {
	.bc-comment-form-section {
		padding: 1.5rem;
	}
}

@media (min-width: 640px) {
	.bc-comment-form {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
	}

	.bc-comment-form .comment-form-comment,
	.bc-comment-form .form-submit,
	.bc-comment-form .comment-notes,
	.bc-comment-form .logged-in-as {
		grid-column: 1 / -1;
	}
}

.bc-comment-form label {
	display: block;
	margin-bottom: 0.375rem;
	font-size: 0.875rem;
	font-weight: 600;
}

.bc-comment-form p {
	margin-bottom: 1rem;
}

.bc-comment-form .form-submit {
	margin-bottom: 0;
}

.bc-comment-form input[type='text'],
.bc-comment-form input[type='email'],
.bc-comment-form textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	border: 1px solid rgba(51, 141, 255, 0.2);
	border-radius: 0.75rem;
	padding: 0.625rem 0.75rem;
	font-size: 0.875rem;
	font-family: inherit;
	background: rgba(255, 255, 255, 0.55);
}

.dark .bc-comment-form input[type='text'],
.dark .bc-comment-form input[type='email'],
.dark .bc-comment-form textarea {
	background: rgba(15, 23, 42, 0.45);
}

.bc-comment-form textarea {
	min-height: 7.5rem;
	resize: vertical;
}

.bc-comment-form__notice {
	margin: 0 0 1rem;
	padding: 0.75rem 0.875rem;
	border-radius: 0.75rem;
	border: 1px solid rgba(34, 197, 94, 0.25);
	background: rgba(240, 253, 244, 0.9);
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(21 128 61);
}

.bc-comment-form__notice[hidden] {
	display: none !important;
}

.dark .bc-comment-form__notice {
	border-color: rgba(74, 222, 128, 0.22);
	background: rgba(20, 83, 45, 0.28);
	color: rgb(134 239 172);
}

.bc-comments-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	min-height: 9rem;
	margin: 0;
	padding: 2rem 1.5rem;
	border: 1px dashed rgba(51, 141, 255, 0.22);
	border-radius: 0.875rem;
	background: rgba(255, 255, 255, 0.28);
	text-align: center;
}

.dark .bc-comments-empty {
	border-color: rgba(89, 173, 255, 0.2);
	background: rgba(15, 23, 42, 0.28);
}

.bc-comments-empty__icon {
	display: inline-flex;
	color: rgb(96 165 250);
	opacity: 0.85;
}

.bc-comments-empty__text {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.6;
	color: rgb(100 116 139);
}

.dark .bc-comments-empty__text {
	color: rgb(148 163 184);
}

.bc-comments-load-more-wrap {
	display: flex;
	justify-content: center;
	margin-top: 1.25rem;
	padding-top: 0.25rem;
}

.bc-comments-load-more {
	min-width: 11rem;
}

.bc-comments-load-more.is-loading .bc-comments-load-more__label,
.bc-comments-load-more__loading[hidden] {
	display: none;
}

.bc-comments-load-more__loading:not([hidden]) {
	display: inline;
}

.bc-comment-navigation,
.comment-navigation {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 1rem 0;
}

.bc-comment-navigation a,
.comment-navigation a {
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(29 78 216);
	text-decoration: none;
}

.bc-comment-navigation a:hover,
.comment-navigation a:hover {
	text-decoration: underline;
}

.bc-aside-card + .bc-aside-card,
.bc-aside-card + section {
	margin-top: 1rem;
}

.bc-aside-card__title {
	margin-bottom: 0.75rem;
	font-size: 0.875rem;
	font-weight: 700;
}

.bc-aside-tools {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bc-aside-tools__link {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	padding: 0.5rem;
	border-radius: 0.75rem;
	font-size: 0.875rem;
	text-decoration: none;
	color: inherit;
}

.bc-aside-tools__link:hover {
	background: rgba(51, 141, 255, 0.08);
}

.bc-single-aside__inner > section {
	margin-top: 1rem;
}

.bc-comments__count {
	display: none;
}

.bc-comments-section__head {
	margin-bottom: 0;
}

.bc-comments-section__count {
	margin-inline-start: 0;
}

.bc-comments-closed {
	font-size: 0.875rem;
	color: rgb(100 116 139);
}

.bc-comment__moderation {
	margin-top: 0.5rem;
	font-size: 0.75rem;
	color: rgb(217 119 6);
}

.bc-download-box {
	scroll-margin-top: 6rem;
}

.scroll-mt-24 {
	scroll-margin-top: 6rem;
}

.bc-sysreq-grid,
.bc-gallery,
.bc-video-embed,
.bc-video-placeholder,
.bc-gallery-placeholder,
.bc-download {
	margin-top: 0;
}

/* Gallery / video placeholders */
.bc-gallery-placeholder {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
}

@media (max-width: 640px) {
	.bc-gallery-placeholder {
		grid-template-columns: 1fr;
	}
}

.bc-gallery-placeholder__item {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 16 / 9;
	border-radius: 0.75rem;
	color: rgba(255, 255, 255, 0.45);
}

.bc-video-placeholder {
	border-radius: 0.75rem;
	overflow: hidden;
}

.bc-video-placeholder__inner {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	aspect-ratio: 16 / 9;
	color: rgba(255, 255, 255, 0.85);
}

.bc-video-placeholder__play {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 4.5rem;
	height: 4.5rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(6px);
	box-shadow: 0 0 30px rgba(51, 141, 255, 0.35);
}

.bc-video-placeholder__label {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
}

.bc-section-note {
	margin: 0.75rem 0 0;
	font-size: 0.8125rem;
	color: rgb(100 116 139);
	text-align: center;
}

/* Download header row */
.bc-download-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.25rem;
}

.bc-download__note {
	display: flex;
	align-items: center;
	gap: 0.375rem;
}

.bc-download__part.bc-card {
	padding: 0.75rem 1rem;
	text-decoration: none;
	color: inherit;
}

.bc-download__part.bc-card:hover {
	transform: translateY(-2px);
}

.bc-download__panel-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.75rem;
	flex-wrap: wrap;
}

.bc-download__panel-meta {
	flex: 1;
	min-width: 0;
}

.bc-download__panel-actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.375rem;
	margin-inline-start: auto;
	flex-shrink: 0;
}

.bc-download__version-info {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.5rem 0.75rem;
	margin-bottom: 0.5rem;
	padding: 0.625rem 0.875rem;
	border-radius: 0.75rem;
	background: rgba(51, 141, 255, 0.06);
	border: 1px solid rgba(51, 141, 255, 0.12);
}

.dark .bc-download__version-info {
	background: rgba(89, 173, 255, 0.08);
	border-color: rgba(89, 173, 255, 0.16);
}

.bc-download__version-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.625rem;
	background: linear-gradient(135deg, rgba(51, 141, 255, 0.18), rgba(37, 99, 235, 0.08));
	color: rgb(29 78 216);
	flex-shrink: 0;
}

.dark .bc-download__version-icon {
	background: linear-gradient(135deg, rgba(89, 173, 255, 0.22), rgba(37, 99, 235, 0.1));
	color: rgb(147 197 253);
}

.bc-download__version-title {
	font-size: 0.9375rem;
	font-weight: 700;
	color: rgb(15 23 42);
}

.dark .bc-download__version-title {
	color: rgb(241 245 249);
}

.bc-download__version-size {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.625rem;
	border-radius: 999px;
	background: rgba(51, 141, 255, 0.12);
	font-size: 0.75rem;
	font-weight: 600;
	color: rgb(30 64 175);
}

.dark .bc-download__version-size {
	background: rgba(89, 173, 255, 0.16);
	color: rgb(147 197 253);
}

.bc-download__note--size {
	font-weight: 600;
	color: rgb(30 64 175);
}

.dark .bc-download__note--size {
	color: rgb(147 197 253);
}

.bc-download__copy {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 0;
	padding: 0.5rem 0.875rem;
	border: 1px solid rgba(51, 141, 255, 0.2);
	border-radius: 0.75rem;
	background: rgba(51, 141, 255, 0.06);
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(30 64 175);
	cursor: pointer;
	transition: background-color 0.2s, border-color 0.2s;
	white-space: nowrap;
}

.bc-download__copy:hover:not(.is-disabled) {
	border-color: rgba(51, 141, 255, 0.4);
	background: rgba(51, 141, 255, 0.12);
}

.bc-download__copy.is-disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.bc-download__install-guide-btn {
	margin-inline-start: auto;
}

.bc-download__copy-status {
	display: block;
	font-size: 0.75rem;
	color: rgb(22 163 74);
	text-align: start;
}

.bc-download__copy-status[hidden] {
	display: none;
}

.bc-download__tab.is-disabled {
	opacity: 1;
	background: rgba(148, 163, 184, 0.14);
	border-color: rgba(148, 163, 184, 0.28);
	color: rgb(100 116 139);
}

.dark .bc-download__tab.is-disabled {
	background: rgba(100, 116, 139, 0.18);
	border-color: rgba(148, 163, 184, 0.24);
	color: rgb(148 163 184);
}

.bc-download__tab.is-disabled .bc-download__tab-icon {
	background: rgba(148, 163, 184, 0.18);
	color: rgb(100 116 139);
}

.bc-download__tab-badge {
	display: inline-block;
	margin-inline-start: 0.375rem;
	padding: 0.125rem 0.375rem;
	border-radius: 999px;
	background: rgba(239, 68, 68, 0.15);
	color: rgb(185 28 28);
	font-size: 0.6875rem;
	font-weight: 700;
	vertical-align: middle;
}

.bc-download__tab.is-active .bc-download__tab-badge {
	background: rgba(255, 255, 255, 0.2);
	color: #fff;
}

.bc-download__panel.is-disabled .bc-download__version-info {
	background: rgba(148, 163, 184, 0.12);
	border-color: rgba(148, 163, 184, 0.22);
}

.bc-download__panel.is-disabled .bc-download__version-icon {
	background: rgba(148, 163, 184, 0.16);
	color: rgb(100 116 139);
}

.bc-download__panel.is-disabled .bc-download__version-size {
	background: rgba(148, 163, 184, 0.16);
	color: rgb(100 116 139);
}

.bc-download__panel.is-disabled .bc-download__note:not(.bc-download__note--size) {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	padding: 0.875rem 1rem;
	border-radius: 0.75rem;
	background: rgba(239, 68, 68, 0.08);
	border: 1px solid rgba(239, 68, 68, 0.2);
	color: rgb(185 28 28);
	line-height: 1.6;
}

.dark .bc-download__panel.is-disabled .bc-download__note:not(.bc-download__note--size) {
	background: rgba(239, 68, 68, 0.12);
	color: rgb(252 165 165);
}

.bc-download__part--disabled {
	opacity: 0.55;
	cursor: not-allowed;
}

.bc-download__part-note {
	margin: 0.5rem 0 0.25rem;
	list-style: none;
}

.bc-download__part-note-text {
	margin: 0;
	padding: 0.5rem 0.75rem;
	border-radius: 0.5rem;
	font-size: 0.8125rem;
	line-height: 1.6;
	font-weight: 500;
	color: rgb(71 85 105);
	background: rgba(148, 163, 184, 0.12);
}

.dark .bc-download__part-note-text {
	color: rgb(203 213 225);
	background: rgba(148, 163, 184, 0.1);
}

.bc-modal-open {
	overflow: hidden;
}

/* Sticky sidebar desktop */
@media (min-width: 1024px) {
	.bc-single-aside__inner {
		position: sticky;
		top: 5.5rem;
	}

	.bc-single-aside {
		align-self: start;
	}
}

.bc-aside-card__meta {
	display: flex;
	align-items: center;
	gap: 0.375rem;
	margin-bottom: 0.75rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: rgb(71 85 105);
}

.dark .bc-aside-card__meta {
	color: rgb(203 213 225);
}

.bc-aside-card .bc-btn.w-full {
	width: 100%;
	justify-content: center;
}

.bc-aside-steam__link {
	gap: 0.5rem;
	font-weight: 600;
}

.bc-aside-steam__link svg {
	flex-shrink: 0;
}

/* Game badges on single (from main.css fallback) */
.bc-game-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	border-radius: 9999px;
	border: 1px solid rgba(51, 141, 255, 0.28);
	background: rgba(51, 141, 255, 0.08);
	padding: 0.25rem 0.75rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: rgb(29 78 216);
}

.dark .bc-game-badge {
	color: rgb(191 219 254);
}

.bc-game-badge--platform {
	border-color: rgba(34, 211, 238, 0.35);
	background: rgba(34, 211, 238, 0.08);
	color: rgb(14 116 144);
}

.dark .bc-game-badge--platform {
	color: rgb(165 243 252);
}

.bc-poster-frame {
	box-shadow:
		0 10px 30px rgba(51, 141, 255, 0.15),
		0 0 0 1px rgba(51, 141, 255, 0.12);
}

.bc-poster-nav {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border: 0;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.85);
	color: rgb(51 65 85);
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.12);
}

.dark .bc-poster-nav {
	background: rgba(15, 23, 42, 0.75);
	color: rgb(226 232 240);
}


/* ── Game card carousel (related / suggested) ── */
.bc-card-carousel__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.bc-card-carousel__header .bc-section-heading,
.bc-card-carousel__header .flex.items-center.gap-3 {
	margin-bottom: 0;
}

.bc-card-carousel__controls {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex-shrink: 0;
}

.bc-card-carousel__viewport {
	position: relative;
	min-height: 0;
}

.bc-card-carousel__slide {
	animation: bc-carousel-in 0.28s ease;
}

@keyframes bc-carousel-in {
	from {
		opacity: 0;
		transform: translateX(8px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.bc-card-carousel__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 640px) {
	.bc-card-carousel__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bc-card-carousel__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bc-card-carousel__grid .bc-card {
	height: 100%;
}

.bc-card-carousel__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin-top: 1.25rem;
}

.bc-poster-dot {
	width: 0.5rem;
	height: 0.5rem;
	padding: 0;
	border: 0;
	border-radius: 9999px;
	background: rgba(51, 141, 255, 0.28);
	cursor: pointer;
	transition: width 0.25s, background-color 0.25s;
}

.bc-poster-dot.is-active {
	width: 1.75rem;
	background: rgb(51 141 255);
}

.dark .bc-poster-dot {
	background: rgba(89, 173, 255, 0.35);
}

.dark .bc-poster-dot.is-active {
	background: rgb(89 173 255);
}

/* Section rhythm */
.bc-download-header {
	margin-bottom: 1rem;
}

.bc-download__tabs {
	margin-top: 0;
}

@media (max-width: 640px) {
	.bc-download__panel-actions {
		width: 100%;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
}

.bc-single-aside__inner {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.bc-comments-section .bc-section-heading,
.bc-comments-section > .flex.items-center.gap-3:first-child,
.bc-comments-section__head {
	margin-bottom: 0;
}

.bc-single-section + .bc-single-section {
	/* gap handled by flex parent */
}

.bc-glass,
.bc-glass-strong {
	background: var(--bc-glass-bg, rgba(255, 255, 255, 0.55));
	border: 1px solid var(--bc-glass-border, rgba(51, 141, 255, 0.18));
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.dark .bc-glass,
.dark .bc-glass-strong {
	background: var(--bc-glass-bg, rgba(15, 23, 42, 0.65));
	border-color: var(--bc-glass-border, rgba(89, 173, 255, 0.22));
}

.bc-section-title {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.3;
	color: rgb(15 23 42);
}

.dark .bc-section-title {
	color: #fff;
}

@media (min-width: 768px) {
	.bc-section-title {
		font-size: 1.25rem;
	}
}
