.infinity-episode-section {
	height: 300px;
	padding: 18px 40px 24px;
	box-sizing: border-box;
	background:
		radial-gradient(circle at 18% 50%, rgba(121, 73, 218, .28), transparent 31%),
		radial-gradient(circle at 82% 44%, rgba(37, 139, 203, .22), transparent 32%),
		linear-gradient(180deg, rgba(3, 13, 34, .92), rgba(7, 18, 45, .97));
}

.infinity-episode-panel {
	position: relative;
	display: grid;
	grid-template-columns: 190px minmax(260px, 1fr) 430px;
	align-items: center;
	gap: 24px;
	width: 1120px;
	min-height: 258px;
	margin: 0 auto;
	padding: 22px 28px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 216, 111, .62);
	border-radius: 24px;
	background: linear-gradient(118deg, rgba(35, 20, 76, .97), rgba(7, 34, 70, .97));
	box-shadow: 0 20px 46px rgba(0, 0, 0, .4), inset 0 0 42px rgba(109, 79, 219, .12);
	color: #f7f9ff;
	overflow: hidden;
}

.infinity-episode-panel::before {
	content: "∞";
	position: absolute;
	right: 41%;
	top: -80px;
	color: rgba(255, 255, 255, .035);
	font-family: Georgia, serif;
	font-size: 300px;
	line-height: 1;
	pointer-events: none;
}

.infinity-episode-emblem,
.infinity-episode-copy,
.infinity-episode-countdown {
	position: relative;
	z-index: 1;
}

.infinity-episode-emblem {
	display: flex;
	width: 154px;
	height: 154px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	border: 2px solid rgba(255, 224, 139, .92);
	border-radius: 50%;
	background: radial-gradient(circle, #7545d4, #171340 72%);
	box-shadow: 0 0 0 9px rgba(119, 75, 214, .15), 0 0 30px rgba(126, 81, 223, .58);
	text-align: center;
}

.infinity-episode-emblem span,
.infinity-episode-emblem small {
	color: #d9ceff;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 1.8px;
}

.infinity-episode-emblem strong {
	display: block;
	margin: 6px 0 7px;
	color: #ffe28b;
	font-size: 43px;
	line-height: 1;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}

.infinity-episode-status {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 8px;
	color: #ffd973;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .7px;
}

.infinity-episode-status i {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #ffd66e;
	box-shadow: 0 0 12px rgba(255, 214, 110, .8);
}

.infinity-episode-copy h2 {
	margin: 0 0 5px;
	color: #fff;
	font-size: 26px;
	font-weight: 900;
	line-height: 1.2;
}

.infinity-episode-copy > p {
	margin: 0;
	color: #cbdaf3;
	font-size: 12px;
	line-height: 1.5;
}

.infinity-episode-copy > small {
	display: block;
	margin-top: 4px;
	color: #aebfe0;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .5px;
}

.infinity-episode-copy a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 34px;
	margin-top: 13px;
	padding: 0 15px;
	border: 1px solid rgba(255, 218, 118, .74);
	border-radius: 999px;
	background: linear-gradient(100deg, rgba(111, 57, 198, .92), rgba(33, 123, 192, .9));
	color: #fff !important;
	font-size: 11px;
	font-weight: 800;
	text-decoration: none !important;
	transition: filter .2s ease, transform .2s ease;
}

.infinity-episode-copy a:hover {
	filter: brightness(1.12);
	transform: translateY(-1px);
}

.infinity-episode-countdown {
	padding: 18px 20px;
	border: 1px solid rgba(126, 163, 225, .34);
	border-radius: 18px;
	background: rgba(3, 15, 39, .58);
	box-shadow: inset 0 0 24px rgba(65, 113, 207, .08);
	text-align: center;
}

.infinity-episode-countdown > span {
	display: block;
	margin-bottom: 10px;
	color: #d8e6ff;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .45px;
}

.infinity-countdown-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
}

.infinity-countdown-unit {
	min-width: 0;
	padding: 10px 5px 8px;
	border: 1px solid rgba(142, 178, 235, .3);
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(45, 41, 99, .86), rgba(9, 31, 63, .9));
}

.infinity-countdown-unit strong {
	display: block;
	color: #ffe28a;
	font-size: 27px;
	font-variant-numeric: tabular-nums;
	line-height: 1;
}

.infinity-countdown-unit small {
	display: block;
	margin-top: 6px;
	color: #aebfdd;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .35px;
}

.infinity-countdown-state {
	margin: 10px 0 0;
	color: #ffd973;
	font-size: 10px;
	font-weight: 800;
}

.infinity-episode-panel[data-countdown-state="running"] .infinity-episode-status i {
	background: #63e696;
	box-shadow: 0 0 0 0 rgba(99, 230, 150, .62);
	animation: infinityEpisodePulse 1.8s infinite;
}

.infinity-episode-panel[data-countdown-state="complete"] .infinity-countdown-unit strong,
.infinity-episode-panel[data-countdown-state="complete"] .infinity-countdown-state {
	color: #70eda3;
}

@keyframes infinityEpisodePulse {
	0% { box-shadow: 0 0 0 0 rgba(99, 230, 150, .62); }
	70% { box-shadow: 0 0 0 8px rgba(99, 230, 150, 0); }
	100% { box-shadow: 0 0 0 0 rgba(99, 230, 150, 0); }
}

@media (max-width: 900px) {
	#Table_01 .infinity-episode-section {
		height: auto !important;
		padding: 14px 12px 24px;
	}

	.infinity-episode-panel {
		grid-template-columns: 130px minmax(0, 1fr);
		gap: 18px;
		width: 100%;
		min-height: 0;
		padding: 22px;
	}

	.infinity-episode-emblem {
		width: 116px;
		height: 116px;
	}

	.infinity-episode-emblem strong {
		font-size: 34px;
	}

	.infinity-episode-countdown {
		grid-column: 1 / -1;
	}
}

@media (max-width: 560px) {
	.infinity-episode-panel {
		grid-template-columns: 1fr;
		gap: 16px;
		padding: 20px 14px;
		border-radius: 19px;
		text-align: center;
	}

	.infinity-episode-panel::before {
		right: -72px;
		top: -45px;
		font-size: 230px;
	}

	.infinity-episode-emblem {
		width: 112px;
		height: 112px;
	}

	.infinity-episode-status,
	.infinity-episode-copy a {
		justify-content: center;
	}

	.infinity-episode-copy h2 {
		font-size: 23px;
	}

	.infinity-episode-countdown {
		grid-column: auto;
		padding: 16px 10px;
	}

	.infinity-countdown-grid {
		gap: 5px;
	}

	.infinity-countdown-unit {
		padding: 9px 2px 7px;
	}

	.infinity-countdown-unit strong {
		font-size: 23px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.infinity-episode-panel[data-countdown-state="running"] .infinity-episode-status i {
		animation: none;
	}

	.infinity-episode-copy a {
		transition: none;
	}
}
