/* ======================================================
 * wz.board.intro 플러그인 전용 스타일
 * ====================================================== */

/* ------------------------------------------
 * 갤러리 수정 모드 - 기존 이미지 항목 레이아웃
 * ------------------------------------------ */

/* 기존 이미지 행 - 썸네일 + 파일명 + 삭제 버튼이 한 줄에 정렬 */
.img_file_group>ul>li[data-gallery-id] {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 6px 0;
	border-bottom: 1px solid #eee;
}

.img_file_group>ul>li[data-gallery-id]:last-of-type {
	border-bottom: none;
}

/* 기존 이미지 input_area: 썸네일 + 파일명 가로 정렬 */
.img_file_group .input_area.current_gallery_item {
	display: flex;
	align-items: center;
	gap: 10px;
	max-width: none;
	flex: 1;
	justify-content: flex-start;
}

/* 썸네일 이미지 - 크기 고정 */
.img_file_group .gallery_thumb {
	width: 80px;
	height: 60px;
	object-fit: cover;
	border-radius: 4px;
	border: 1px solid #d0d0d0;
	flex-shrink: 0;
}

/* 파일명 텍스트 - 넘치면 말줄임 */
.img_file_group .gallery_file_name {
	font-size: 13px;
	color: #555;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 300px;
}

/* 기존 이미지 삭제 버튼 - 신규 항목의 minus 버튼과 동일한 아이콘 스타일 사용 */

/* 기존 이미지 삭제 버튼이 있는 controls 영역 - 너비 자동 */
.img_file_group>ul>li[data-gallery-id]>.controls {
	width: auto;
	display: flex;
	align-items: center;
}

#gallery_file_list li {
	padding: 7px 0
}

.current_img_area {
	margin-bottom: 7px
}

.center-toast {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999;

	max-width: min(90vw, 640px);
	width: max-content;
	padding: 14px 18px;

	background-color: #58585a;
	color: #fff;
	line-height: 1.4;
	text-align: center;
	word-break: keep-all;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25);

	display: none;
	/* 처음엔 숨김 */
}

.sign_pad_wrap {
	position: relative;
	border-radius: 4px;
	border: 1px solid #c6c6c6;
	background: #ffffff;
	width: 100%;
	height: 120px;
}

.sign_pad_wrap #signature_pad {
	width: 100%;
	height: 100%;
}

.sign_pad_wrap #signText {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	font-size: 16px;
	font-weight: 400;
	color: #b6b6b6;
}

.sign_pad_wrap #signText.disabled {
	opacity: 0;
	visibility: hidden;
}

.req_error {
	border-color: #e53935 !important;
	box-shadow: 0 0 0 2px rgba(229, 57, 53, 0.15) !important;
}

.chk_row.req_error {
	outline: 2px solid #e53935;
	outline-offset: 2px;
	border-radius: 4px;
}

.required {
	background-image: url('') !important;
}

.apply_member_count {
	padding-top: 10px;
	margin-bottom: 20px
}