/* 모델 신청 폼 스타일 */
.model-form-container {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px;
	background-color: #f5f5f5;
	border-radius: 8px;
}

.write_table {
	width: 100%;
	border-collapse: collapse;
	background-color: #ffffff;
}

.write_table colgroup col:first-child {
	width: 25%;
}

.write_table colgroup col:last-child {
	width: 75%;
}

.write_table th {
	padding: 20px 15px;
	text-align: left;
	vertical-align: top;
	background: #f8f9fa;
	border-bottom: 1px solid #e0e0e0;
}

.write_table td {
	padding: 20px 15px;
	border-bottom: 1px solid #e0e0e0;
	background-color: #ffffff;
}

.write_table .required {
	color: red;
}

/* 입력 필드 공통 스타일 */
.form-input,
.write_table input[type="text"],
.write_table input[type="password"],
.write_table textarea {
	padding: 12px;
	box-sizing: border-box;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
}

.form-input-full {
	width: 100%;
}

.form-input-short {
	width: 150px;
}

.form-input-medium {
	width: 250px;
}

.form-input-phone {
	width: 80px;
	text-align: center;
}

.form-input-number {
	width: 100px;
	text-align: center;
}

/* 셀렉트 박스 */
.form-select,
.write_table select {
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	margin-left: 10px;
}

/* Textarea */
.write_table textarea {
	width: 100%;
	line-height: 1.6;
	resize: vertical;
}

/* 파일 입력 */
.write_table input[type="file"] {
	font-size: 14px;
}

/* 도움말 텍스트 */
.help-text {
	font-size: 12px;
	color: #666;
	margin-top: 8px;
	line-height: 1.5;
}

/* 라디오/체크박스 레이블 */
.form-radio-label {
	margin-right: 30px;
	font-size: 14px;
}

.form-checkbox-label {
	display: inline-block;
	margin-right: 20px;
	font-size: 14px;
}

.write_table input[type="radio"],
.write_table input[type="checkbox"] {
	margin-right: 5px;
}

/* 체크박스 줄바꿈 */
.checkbox-list {
	line-height: 2;
}

/* 개인정보 동의 박스 */
.privacy-box {
	margin-top: 15px;
	padding: 15px;
	background: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 4px;
	max-height: 150px;
	overflow-y: auto;
	font-size: 12px;
	line-height: 1.8;
}

.privacy-box p {
	margin-bottom: 10px;
}

.privacy-box p:last-child {
	margin-bottom: 0;
}

.privacy-box p:not(:first-child) {
	margin-bottom: 8px;
}

/* 리캡챠 */
.recaptcha-container {
	transform: scale(1);
	-webkit-transform: scale(1);
	transform-origin: 0 0;
	-webkit-transform-origin: 0 0;
}

/* 버튼 영역 */
.form-button-area {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 40px;
}

.btn-submit {
	padding: 15px 60px;
	font-size: 16px;
	font-weight: bold;
	background: #0066cc;
	color: white;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	margin-right: 10px;
}

.btn-submit:hover {
	background: #0052a3;
}

.btn-cancel {
	padding: 15px 60px;
	font-size: 16px;
	font-weight: bold;
	background: #999;
	color: white;
	border: none;
	border-radius: 4px;
	cursor: pointer;
}

.btn-cancel:hover {
	background: #777;
}

/* 로딩 오버레이 */
#loading-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
}

#loading-overlay .loading-box {
	background: white;
	padding: 20px;
	border-radius: 10px;
	text-align: center;
}

#loading-overlay .spinner {
	width: 40px;
	height: 40px;
	border: 4px solid #f3f3f3;
	border-top: 4px solid #3498db;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	margin: 0 auto;
}

#loading-overlay .loading-text {
	margin-top: 10px;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
