/**
 * KBoard Custom Travel Skin Additional Styles
 * 맞춤여행 신청현황 게시판 전용 스타일
 */

/* 전체 컨테이너 */
#kboard-custom-travel-editor {
	max-width: 900px;
	margin: 0 auto;
}

.kadang-travel-form {
	background: #fff;
	padding: 20px 0;
}

/* 폼 행 기본 스타일 */
.kadang-form-row {
	margin-bottom: 20px;
}

.kadang-form-row.kadang-full-width {
	width: 100%;
}

/* 제목 필드 스타일 */
.kadang-form-row.kadang-full-width:first-child {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e5e5e5;
}

.kadang-form-row.kadang-full-width:first-child label {
	display: block;
	margin-bottom: 10px;
	font-weight: 600;
	color: #000;
	font-size: 14px;
}

.kadang-form-row.kadang-full-width:first-child input {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	transition: border-color 0.3s;
	box-sizing: border-box;
	background-color: #fff;
}

.kadang-form-row.kadang-full-width:first-child input:focus {
	outline: none;
	border-color: #007BFF;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
}

/* 2열 그리드 레이아웃 */
.kadang-form-row.kadang-two-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}

/* 필드 그룹 스타일 */
.kadang-field-group {
	margin-bottom: 20px;
}

.kadang-field-group label {
	display: block;
	margin-bottom: 8px;
	font-weight: 600;
	color: #000;
	font-size: 14px;
}

.kadang-field-group input,
.kadang-field-group select {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	transition: border-color 0.3s;
	box-sizing: border-box;
	background-color: #fff;
}

.kadang-field-group input:focus,
.kadang-field-group select:focus {
	outline: none;
	border-color: #007BFF;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
}

/* 필수 표시 */
.kadang-required {
	color: #e74c3c;
	margin-left: 2px;
}

/* placeholder 스타일 */
input::placeholder {
	color: #999;
	font-size: 13px;
}

/* 항공권 섹션 */
.kadang-form-row.kadang-full-width > label {
	display: block;
	margin-bottom: 10px;
	font-weight: 600;
	color: #000;
	font-size: 14px;
}

/* 라디오 버튼 그룹 */
.kadang-radio-group {
	display: flex;
	gap: 30px;
	align-items: center;
	margin-top: 5px;
}

.kadang-radio-label {
	display: flex;
	align-items: center;
	font-weight: normal;
	cursor: pointer;
	font-size: 14px;
	margin-bottom: 0;
	color: #333;
}

.kadang-radio-label input[type="radio"] {
	width: auto;
	margin-right: 8px;
	cursor: pointer;
}

/* 여행일정 3열 그리드 */
.kadang-form-row.kadang-schedule-row {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 20px;
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #e5e5e5;
}

.kadang-date-field label {
	display: block;
	margin-bottom: 8px;
	font-weight: 600;
	color: #000;
	font-size: 14px;
}

.kadang-date-field input {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	box-sizing: border-box;
	background-color: #fff;
}

.kadang-date-field input:focus {
	outline: none;
	border-color: #007BFF;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
}

/* readonly 필드 스타일 */
input[readonly],
#total_days[readonly] {
	background-color: #f8f9fa;
	cursor: not-allowed;
	color: #495057;
}

/* 문의사항 에디터 영역 */
.kadang-form-row.kadang-full-width:has(#kboard_content) {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #e5e5e5;
}

.kadang-form-row.kadang-full-width label[for="kboard_content"] {
	display: block;
	margin-bottom: 10px;
	font-weight: 600;
	color: #000;
	font-size: 14px;
}

textarea#kboard_content {
	width: 100%;
	min-height: 300px;
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	resize: vertical;
	box-sizing: border-box;
}

/* WordPress 에디터 스타일 조정 */
.wp-editor-wrap {
	margin-top: 0;
}

.wp-editor-container {
	border: 1px solid #ddd;
	border-radius: 4px;
}

.wp-editor-container textarea {
	border: none;
}

/* 첨부파일 영역 */
.kadang-attach-field {
	margin-bottom: 10px;
	font-size: 14px;
}

.kadang-attach-field input[type="file"] {
	border: none;
	padding: 5px 0;
}

.kadang-attach-field a {
	color: #e74c3c;
	text-decoration: none;
	margin-left: 10px;
	font-size: 13px;
}

.kadang-attach-field a:hover {
	text-decoration: underline;
}

/* 버튼 영역 재정의 */
#kboard-custom-travel-editor .kadang-control {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #e5e5e5;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#kboard-custom-travel-editor .kadang-control .left,
#kboard-custom-travel-editor .kadang-control .right {
	display: flex;
	gap: 10px;
}

/* 버튼 스타일 재정의 */
.kadang-travel-button-large {
	background-color: #007BFF;
	color: white;
	padding: 14px 50px;
	border: none;
	border-radius: 4px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s;
	text-decoration: none;
	display: inline-block;
}

.kadang-travel-button-large:hover {
	background-color: #0056b3;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.3);
}

.kadang-travel-button-small {
	background-color: #f8f9fa;
	color: #495057;
	padding: 8px 20px;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	font-size: 14px;
	font-weight: normal;
	cursor: pointer;
	transition: all 0.3s;
	text-decoration: none;
	display: inline-block;
}

.kadang-travel-button-small:hover {
	background-color: #e9ecef;
	border-color: #adb5bd;
}

/* 태블릿 반응형 (768px ~ 1024px) */
@media (max-width: 1024px) {
	#kboard-custom-travel-editor {
		max-width: 100%;
	}

	.kadang-travel-form {
		padding: 15px;
	}

	.kadang-form-row.kadang-two-columns {
		gap: 25px;
	}
}

/* 모바일 반응형 (768px 이하) */
@media (max-width: 768px) {
	.kadang-travel-form {
		padding: 15px;
	}

	/* 2열을 1열로 변경 */
	.kadang-form-row.kadang-two-columns {
		grid-template-columns: 1fr;
		gap: 0;
	}

	/* 여행일정 3열을 1열로 변경 */
	.kadang-form-row.kadang-schedule-row {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.kadang-date-field {
		margin-bottom: 20px;
	}

	.kadang-date-field:last-child {
		margin-bottom: 0;
	}

	/* 라디오 그룹 세로 정렬 */
	.kadang-radio-group {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	/* 입력 필드 크기 조정 (iOS 줌 방지) */
	.kadang-field-group input,
	.kadang-field-group select,
	.form-control,
	.kadang-date-field input,
	textarea {
		font-size: 16px;
	}

	/* 버튼 영역 */
	#kboard-custom-travel-editor .kadang-control {
		flex-direction: column;
		gap: 15px;
	}

	#kboard-custom-travel-editor .kadang-control .left,
	#kboard-custom-travel-editor .kadang-control .right {
		width: 100%;
		flex-direction: column;
	}

	/* 버튼 전체 너비 */
	.kadang-travel-button-large,
	.kadang-travel-button-small {
		width: 100%;
		padding: 15px;
		text-align: center;
	}
}

/* 소형 모바일 (375px 이하) */
@media (max-width: 375px) {
	.kadang-travel-form {
		padding: 10px;
	}

	.kadang-field-group label,
	.kadang-form-row label {
		font-size: 12px;
	}

	.kadang-field-group input,
	.kadang-field-group select,
	.kadang-date-field input {
		padding: 8px 10px;
	}
}

/* Powered by 숨기기 또는 스타일 */
.kadang-travel-poweredby {
	text-align: center;
	margin-top: 30px;
	padding-top: 20px;
	border-top: 1px solid #f0f0f0;
	font-size: 11px;
}

.kadang-travel-poweredby a {
	color: #aaa;
	text-decoration: none;
}

/* 프린트 스타일 */
@media print {
	.kadang-control,
	.kadang-travel-poweredby {
		display: none;
	}

	.kadang-travel-form {
		padding: 0;
	}
}

/* ======================================
   게시글 상세보기 (Document) 스타일
   ====================================== */

/* 전체 컨테이너 */
#kboard-custom-travel-document {
	max-width: 900px;
	margin: 0 auto;
	background: #fff;
}

/* 제목 영역 */
#kboard-custom-travel-document .kboard-title {
	padding: 20px 0;
	border-bottom: 2px solid #333;
	margin-bottom: 30px;
}

#kboard-custom-travel-document .kboard-title h1 {
	font-size: 24px;
	font-weight: 600;
	color: #333;
	margin: 0;
	line-height: 1.4;
}

/* 섹션 공통 스타일 */
.kadang-travel-info-section,
.kadang-travel-inquiry-section {
	margin-bottom: 30px;
}

.kadang-section-title {
	font-size: 18px;
	font-weight: 600;
	color: #333;
	margin-bottom: 15px;
	padding-bottom: 10px;
	border-bottom: 2px solid #f0f0f0;
}

/* 여행문의 정보 테이블 */
.kadang-travel-info-table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ddd;
	margin-bottom: 20px;
}

.kadang-travel-info-table th {
	background-color: #f5f5f5;
	padding: 12px 15px;
	text-align: left;
	font-weight: 600;
	color: #333;
	border: 1px solid #ddd;
	width: 15%;
	font-size: 14px;
}

.kadang-travel-info-table td {
	padding: 12px 15px;
	border: 1px solid #ddd;
	color: #666;
	font-size: 14px;
}

.kadang-travel-info-table tr:hover {
	background-color: #fafafa;
}

/* 문의내용 영역 */
.kadang-travel-inquiry-section .kadang-kboard-content {
	background: #fafafa;
	padding: 20px;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	min-height: 200px;
}

.kadang-travel-inquiry-section .kadang-content-view {
	font-size: 14px;
	line-height: 1.8;
	color: #333;
}

.kadang-travel-inquiry-section .content-view p {
	margin: 0 0 15px 0;
}

.kadang-travel-inquiry-section .content-view p:last-child {
	margin-bottom: 0;
}

/* 첨부파일 영역 */
#kboard-custom-travel-document .kadang-kboard-attach {
	margin: 20px 0;
	padding: 15px;
	background: #f8f9fa;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
}

#kboard-custom-travel-document .kadang-kboard-attach h3 {
	font-size: 14px;
	font-weight: 600;
	color: #333;
	margin: 0 0 10px 0;
}

#kboard-custom-travel-document .kadang-kboard-attach .kadang-button-download {
	background-color: #fff;
	color: #495057;
	padding: 8px 15px;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	font-size: 13px;
	cursor: pointer;
	margin-right: 8px;
	margin-bottom: 8px;
	transition: all 0.3s;
}

#kboard-custom-travel-document .kadang-kboard-attach .kadang-button-download:hover {
	background-color: #e9ecef;
	border-color: #adb5bd;
}

/* 액션 버튼 영역 */
#kboard-custom-travel-document .kadang-document-action {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px 0;
	border-top: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
	margin: 20px 0;
}

#kboard-custom-travel-document .kadang-document-action .left,
#kboard-custom-travel-document .kadang-document-action .right {
	display: flex;
	gap: 10px;
}

#kboard-custom-travel-document .kadang-button-action {
	background-color: #f8f9fa;
	color: #495057;
	padding: 8px 15px;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	font-size: 13px;
	cursor: pointer;
	transition: all 0.3s;
}

#kboard-custom-travel-document .kadang-button-action:hover {
	background-color: #e9ecef;
	border-color: #adb5bd;
}

#kboard-custom-travel-document .kadang-button-like {
	color: #28a745;
	border-color: #28a745;
}

#kboard-custom-travel-document .kadang-button-like:hover {
	background-color: #28a745;
	color: white;
}

#kboard-custom-travel-document .kadang-button-unlike {
	color: #dc3545;
	border-color: #dc3545;
}

#kboard-custom-travel-document .kadang-button-unlike:hover {
	background-color: #dc3545;
	color: white;
}

/* 댓글 영역 */
#kboard-custom-travel-document .kboard-comments-area {
	margin: 30px 0;
	padding: 20px;
	background: #fafafa;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
}

/* 이전/다음 글 네비게이션 */
#kboard-custom-travel-document .kboard-document-navi {
	display: flex;
	justify-content: space-between;
	margin: 20px 0;
	gap: 20px;
}

#kboard-custom-travel-document .kboard-prev-document,
#kboard-custom-travel-document .kboard-next-document {
	flex: 1;
	max-width: 50%;
}

#kboard-custom-travel-document .kboard-document-navi a {
	display: flex;
	align-items: center;
	padding: 12px 15px;
	background: #f8f9fa;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	text-decoration: none;
	color: #495057;
	font-size: 14px;
	transition: all 0.3s;
}

#kboard-custom-travel-document .kboard-document-navi a:hover {
	background: #e9ecef;
	border-color: #adb5bd;
}

#kboard-custom-travel-document .navi-arrow {
	font-weight: bold;
	margin: 0 8px;
}

#kboard-custom-travel-document .navi-document-title {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#kboard-custom-travel-document .kboard-next-document a {
	justify-content: flex-end;
}

/* 컨트롤 버튼 */
#kboard-custom-travel-document .kadang-control {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	border-top: 1px solid #e5e5e5;
	margin-top: 30px;
}

#kboard-custom-travel-document .kadang-control .left,
#kboard-custom-travel-document .kadang-control .right {
	display: flex;
	gap: 10px;
}

/* 태블릿 반응형 (768px ~ 1024px) */
@media (max-width: 1024px) {
	#kboard-custom-travel-document {
		max-width: 100%;
		padding: 0 15px;
	}

	.kadang-travel-info-table th,
	.kadang-travel-info-table td {
		padding: 10px 12px;
		font-size: 13px;
	}
}

/* 모바일 반응형 (768px 이하) */
@media (max-width: 768px) {
	#kboard-custom-travel-document {
		padding: 0 10px;
	}

	#kboard-custom-travel-document .kboard-title h1 {
		font-size: 20px;
	}

	.kadang-section-title {
		font-size: 16px;
	}

	/* 테이블을 세로 레이아웃으로 변경 */
	.kadang-travel-info-table {
		border: none;
	}

	.kadang-travel-info-table tbody {
		display: block;
	}

	.kadang-travel-info-table tr {
		display: grid;
		grid-template-columns: 1fr 2fr;
		margin-bottom: 0;
		border: 1px solid #ddd;
		border-bottom: none;
	}

	.kadang-travel-info-table tr:last-child {
		border-bottom: 1px solid #ddd;
	}

	.kadang-travel-info-table th,
	.kadang-travel-info-table td {
		display: block;
		width: 100%;
		padding: 10px;
		border: none;
		border-right: 1px solid #ddd;
	}

	.kadang-travel-info-table td {
		border-right: none;
	}

	.kadang-travel-info-table th {
		font-size: 13px;
	}

	.kadang-travel-info-table td {
		font-size: 13px;
	}

	/* 네비게이션 */
	#kboard-custom-travel-document .kboard-document-navi {
		flex-direction: column;
		gap: 10px;
	}

	#kboard-custom-travel-document .kboard-prev-document,
	#kboard-custom-travel-document .kboard-next-document {
		max-width: 100%;
	}

	/* 컨트롤 버튼 */
	#kboard-custom-travel-document .kadang-control {
		flex-direction: column;
		gap: 15px;
	}

	#kboard-custom-travel-document .kadang-control .left,
	#kboard-custom-travel-document .kadang-control .right {
		width: 100%;
		flex-direction: column;
	}

	.kadang-travel-button-small {
		width: 100%;
		text-align: center;
	}

	/* 액션 버튼 */
	#kboard-custom-travel-document .kadang-document-action {
		flex-direction: column;
		gap: 10px;
	}

	#kboard-custom-travel-document .kadang-document-action .left,
	#kboard-custom-travel-document .kadang-document-action .right {
		width: 100%;
	}

	#kboard-custom-travel-document .kadang-button-action {
		flex: 1;
	}
}

/* 프린트 스타일 (Document) */
@media print {
	#kboard-custom-travel-document .kadang-document-action,
	#kboard-custom-travel-document .kadang-control,
	#kboard-custom-travel-document .kboard-document-navi,
	#kboard-custom-travel-document .kboard-comments-area {
		display: none;
	}

	.kadang-travel-info-table th {
		background-color: #f5f5f5;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
}
/* ========================================
   비밀번호 확인 페이지 스타일 (ref/2.png)
   ======================================== */

#kboard-custom-travel-confirm {
	max-width: 600px;
	margin: 60px auto;
	padding: 20px;
}

.kadang-confirm-wrapper {
	background: #fff;
}

.kadang-confirm-container {
	text-align: center;
	padding: 40px 20px;
}

/* 제목 */
.kadang-confirm-title {
	font-size: 24px;
	font-weight: 600;
	color: #000;
	margin-bottom: 30px;
	line-height: 1.4;
}

/* 설명 텍스트 */
.kadang-confirm-description {
	margin-bottom: 40px;
}

.kadang-primary-text {
	font-size: 16px;
	color: #007BFF;
	font-weight: 500;
	margin-bottom: 8px;
}

.kadang-secondary-text {
	font-size: 14px;
	color: #666;
	margin-bottom: 4px;
}

.kadang-instruction-text {
	font-size: 13px;
	color: #999;
	margin-top: 15px;
}

/* 비밀번호 입력 폼 */
.kadang-confirm-form {
	max-width: 400px;
	margin: 0 auto;
}

.kadang-password-field {
	margin-bottom: 20px;
}

.kadang-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.kadang-password-input {
	width: 100%;
	padding: 12px 15px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 14px;
	text-align: center;
	box-sizing: border-box;
	transition: border-color 0.3s;
}

.kadang-password-input:focus {
	outline: none;
	border-color: #007BFF;
	box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
}

.kadang-password-input::placeholder {
	color: #999;
}

/* 에러 메시지 */
.kadang-error-message {
	color: #e74c3c;
	font-size: 13px;
	margin-top: 8px;
	text-align: center;
}

/* 확인 버튼 */
.kadang-confirm-buttons {
	margin-bottom: 20px;
}

.kadang-confirm-button {
	background-color: #007BFF;
	color: white;
	padding: 12px 40px;
	border: none;
	border-radius: 4px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.3s;
	min-width: 120px;
}

.kadang-confirm-button:hover {
	background-color: #0056b3;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 123, 255, 0.3);
}

.kadang-confirm-button:active {
	transform: translateY(0);
}

/* 하단 링크 */
.kadang-confirm-links {
	margin-top: 30px;
}

.kadang-back-link {
	color: #666;
	text-decoration: none;
	font-size: 14px;
	transition: color 0.3s;
}

.kadang-back-link:hover {
	color: #007BFF;
	text-decoration: underline;
}

/* 반응형 */
@media (max-width: 768px) {
	#kboard-custom-travel-confirm {
		margin: 30px auto;
	}

	.kadang-confirm-container {
		padding: 30px 15px;
	}

	.kadang-confirm-title {
		font-size: 20px;
	}

	.kadang-password-input {
		font-size: 16px;
	}
}
