/* Status and prize badges on tournament cards (slider, archive, single). */
.project-card3,
.gc-card {
	position: relative;
}

.gc-badges {
	position: absolute;
	top: 16px;
	left: 16px;
	right: 16px;
	z-index: 3;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	pointer-events: none;
}

.gc-badge {
	display: inline-block;
	min-width: 0;
	max-width: 100%;
	padding: 5px 10px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #05080a;
	background: var(--tg-theme-primary, #f9cd36);
	overflow-wrap: break-word;
	box-sizing: border-box;
}

.gc-badge--soon {
	color: #fff;
	background: #3a3f46;
}

.gc-badge--closed {
	color: #fff;
	background: #8a2c2c;
}

.gc-badge--finished {
	color: #c9c9c9;
	background: rgba(0, 0, 0, 0.7);
}

.gc-badge--prize {
	color: #fff;
	background: rgba(0, 0, 0, 0.75);
	border: 1px solid var(--tg-theme-primary, #f9cd36);
}

/* Uniform 4:5 cards; posters of other ratios are letterboxed, never cropped. */
.gc-tournament-slider .project-thumb .thumb {
	display: block;
	aspect-ratio: 4 / 5;
	background: #05080a;
}

.gc-tournament-slider .project-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* In the slider, badges sit in a strip under the poster so they never cover poster text. */
.gc-tournament-slider .gc-badges {
	position: static;
	padding: 10px 0 0;
}

/* Inset the slider from the viewport edges and separate the cards. */
.gc-tournament-slider .project-slider3 {
	margin: 0 16px;
}

.gc-tournament-slider .swiper-slide {
	padding: 0 8px;
}

/* Event countdown: four yellow number tiles, a label and the ticket button. */
.gc-countdown {
	display: inline-flex;
	flex-direction: column;
	align-items: stretch;
	gap: 18px;
	padding: 28px;
	background: rgba(12, 14, 18, 0.85);
	border: 1px solid rgba(249, 205, 54, 0.35);
	box-shadow: 0 30px 80px rgba(249, 205, 54, 0.08);
}

.gc-countdown__label {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.75);
}

.gc-countdown__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(72px, 1fr));
	gap: 10px;
}

.gc-countdown__unit {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 14px 8px 10px;
	background: #05080a;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.gc-countdown__num {
	font-family: var(--tg-heading-font-family, 'Anton', sans-serif);
	font-size: 52px;
	line-height: 1;
	color: var(--tg-theme-primary, #f9cd36);
	font-variant-numeric: tabular-nums;
}

.gc-countdown__caption {
	margin-top: 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.6);
}

.gc-countdown__btn {
	justify-content: center;
	width: 100%;
}

.gc-countdown.is-done .gc-countdown__grid {
	display: none;
}

@media (max-width: 575.98px) {
	.gc-countdown {
		padding: 18px;
	}

	.gc-countdown__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
	}

	.gc-countdown__num {
		font-size: 36px;
	}
}
