.challenge-page{ 
}

.challenge-hero{
	margin:20px 0 40px;
}

.challenge-hero img{
	width:100%;
	display:block;
	border-radius:8px;
}

.challenge-intro{
	text-align:center;
}

.challenge-day{
	display:block;
	font-size:2.5rem;
	font-weight:700;
	color:#0d6b5d;
	margin-bottom:10px;
}

.challenge-book{
	font-size:1.4rem;
	font-weight:700; 
	margin-bottom:10px;
}

.challenge-desc{ 
	word-break:keep-all;
	color: #777;
}

.challenge-copy{
	margin:40px 0 15px;
	font-size:1.8rem;
	font-weight:650; 
	line-height: 1.3;
}

.challenge-sub-desc{ 
}

.challenge-section{
	margin-top:60px;
}

.challenge-step{
	padding:24px;
	background:#f5f5f5;
	margin-bottom:12px;
	border-radius:14px;
}
.challenge-step img{
	margin:20px auto;
	display:block;
}

.challenge-step-head{
	color:var(--primary);
	font-size:1rem;
	font-weight:700;
	margin-bottom:12px;
}

.challenge-step h4{
	font-size:1.3rem;
	font-weight:650; 
	margin-bottom:10px;
}

.challenge-step p{ 
	color:#666;
}
 
.challenge-apply{
	margin-top:60px;
}

.challenge-form-title{
	font-size:1.25rem;
	font-weight:700;
	margin-bottom:10px;
}

.challenge-notice{
	margin-top:10px;
	color:#666; 
	font-size: 14px;
	word-break:keep-all;
}

.challenge-grid{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:20px 14px;

	margin-top:30px;
}

.challenge-day-item{
	text-align:center;
}

.challenge-day-thumb{
	position:relative;

	width:72px;
	height:72px;

	margin:0 auto 8px;

	border-radius:50%;

	display:flex;
	align-items:center;
	justify-content:center;

	background:#e4e4e4; 
}

.challenge-day-thumb img{
	width:100%;
	height:100%;
	object-fit:cover;
	overflow:hidden;
	border-radius:50%;
}

.challenge-day-item span{
	display:block;
	font-size:.95rem;
}

.challenge-day-item.completed .challenge-day-thumb{
	background:#ddd;
}

.challenge-day-item.locked .challenge-day-thumb{
	background:#f5f5f5;
}

.challenge-day-item.locked i{
	font-size:30px;
	color:#777;
}

.challenge-day-item.upload .challenge-day-thumb{
	background:#f5f5f5;
	border:2px dashed #ccc;
}

.challenge-day-item.upload i{
	font-size:26px;
	color:#666;
}

.challenge-delete{
	position:absolute;
	top:2px;
	right:-2px;

	width:24px;
	height:24px;

	border:1px solid #111;
	border-radius:50%;

	background:#fff;

	display:flex;
	align-items:center;
	justify-content:center;

	font-size:12px;
}
.challenge-delete:before{
	content:'✕';
} 
		