.page-qna .tc2c-wrap {
	max-width: 1280px;
	padding-left: 16px;
	padding-right: 16px;
}
.qna-page,
.qna-write-page,
.qna-detail { width: 100%; padding: 28px 0 48px; box-sizing: border-box; }
.qna-title {
	margin: 0 0 0.5rem;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid #ddd;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.4;
	color: #222;
}
.qna-subtitle { margin: 0 0 0.75rem; font-size: 0.9375rem; color: #555; }
.qna-msg { margin: 0 0 1rem; padding: 0.75rem; border-radius: 6px; font-size: 0.9375rem; }
.qna-msg--ok { background: #faf8f6; border: 1px solid #6b5344; color: #6b5344; }
.qna-msg--err { background: #fff5f5; border: 1px solid #c62828; color: #c62828; }
.qna-toolbar { display: flex; justify-content: flex-end; margin-bottom: 20px; }
.qna-search { display: flex; align-items: center; flex-wrap: wrap; gap: 0.5rem; }
.qna-search select,
.qna-search input[type="text"] {
	height: 38px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
	font-size: 0.875rem;
	box-sizing: border-box;
}
.qna-search select { width: 160px; padding: 0 0.5rem; }
.qna-search-row { display: flex; align-items: center; gap: 0.5rem; }
.qna-search input[type="text"] { width: 200px; padding: 0 0.75rem; }
.qna-btn-search {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #f0f0f0;
	color: #333;
	cursor: pointer;
}
.qna-search-msg { flex: 0 0 100%; margin: 0; font-size: 0.8125rem; color: #c62828; }
.qna-table { width: 100%; border-collapse: collapse; }
.qna-table th,
.qna-table td { padding: 0.75rem 1rem; font-size: 0.875rem; text-align: left; }
.qna-table thead { background: #f8f9fa; }
.qna-table th { font-weight: 600; color: #333; }
.qna-table th:nth-child(1),
.qna-table td:nth-child(1) { width: 70px; text-align: center; }
.qna-table th:nth-child(2),
.qna-table td:nth-child(2) { width: 180px; white-space: nowrap; text-align: center; }
.qna-table th:nth-child(4),
.qna-table td:nth-child(4) { width: 100px; text-align: center; }
.qna-table th:nth-child(5),
.qna-table td:nth-child(5) { width: 130px; text-align: center; }
.qna-table th:nth-child(6),
.qna-table td:nth-child(6) { width: 80px; text-align: center; }
.qna-table td:nth-child(1),
.qna-table td:nth-child(2),
.qna-table td:nth-child(4),
.qna-table td:nth-child(5),
.qna-table td:nth-child(6) { color: #666; }
.qna-table tbody tr { border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.qna-table tbody tr:hover { background: #fafafa; }
.qna-title-cell { display: flex; align-items: center; gap: 0.25rem; }
.qna-title-link { color: #333; text-decoration: none; }
.qna-title-link:hover { color: #6b5344; text-decoration: underline; }
.qna-table .bi-lock-fill { color: #888; font-size: 0.9rem; }
.qna-status.is-done { color: #6b5344; font-weight: 500; }
.qna-status.is-accept { color: #666; }
.qna-keyword { color: #6b5344; font-weight: 700; }
.qna-empty { padding: 2rem; text-align: center; color: #666; }
.qna-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 0.5rem; margin-top: 1.25rem; }
.qna-pagination a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	padding: 0 0.5rem;
	border: 1px solid #ddd;
	border-radius: 6px;
	color: #333;
	text-decoration: none;
	font-size: 0.875rem;
}
.qna-pagination a:hover { border-color: #6b5344; background: #faf8f6; color: #6b5344; }
.qna-pagination a.is-on { border-color: #6b5344; background: #6b5344; color: #fff; }
.qna-write-wrap { margin-top: 1.5rem; text-align: right; }
.qna-write-btn,
.qna-btn--primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem 1.25rem;
	border: 1px solid #6b5344;
	border-radius: 6px;
	background: #6b5344;
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 500;
	text-decoration: none;
	cursor: pointer;
}
.qna-write-btn:hover,
.qna-btn--primary:hover { background: #574437; border-color: #574437; color: #fff; }
.qna-field { margin-bottom: 1rem; }
.qna-field label { display: block; margin-bottom: 0.35rem; font-size: 0.875rem; font-weight: 600; color: #333; }
.qna-field--chk { display: flex; align-items: center; gap: 0.5rem; }
.qna-field--chk label { margin: 0; }
.qna-field select,
.qna-field input[type="text"],
.qna-field textarea {
	border: 1px solid #ccc;
	border-radius: 6px;
	font-size: 0.875rem;
	box-sizing: border-box;
}
.qna-field select { height: 40px; max-width: 200px; padding: 0 0.75rem; }
.qna-field input[type="text"] { width: 66.666%; height: 40px; padding: 0 0.75rem; }
.qna-field textarea { width: 100%; min-height: 180px; padding: 0.75rem; resize: vertical; }
.qna-req { color: #c62828; }
.qna-hint { margin: 6px 0 0; color: #666; font-size: 0.875rem; }
.qna-field.is-invalid select,
.qna-field.is-invalid input,
.qna-field.is-invalid textarea { border-color: #c62828; }
.qna-actions { display: flex; align-items: center; justify-content: flex-end; gap: 0.75rem; margin-top: 1.5rem; flex-wrap: wrap; }
.qna-actions__main { display: flex; gap: 0.5rem; }
.qna-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 0.5rem 1.25rem;
	border-radius: 6px;
	font-size: 0.875rem;
	text-decoration: none;
	box-sizing: border-box;
}
.qna-btn--ghost { border: 1px solid #999; background: #fff; color: #555; }
.qna-btn--ghost:hover { background: #f5f5f5; color: #333; }
.qna-form-msg { margin-top: 0.5rem; padding: 0.5rem 0.75rem; border: 1px solid #c62828; border-radius: 6px; background: #fff5f5; color: #c62828; font-size: 0.875rem; }
.qna-confirm {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.4);
}
.qna-confirm[hidden] { display: none; }
.qna-confirm__box { width: 90%; max-width: 360px; padding: 1.5rem; border-radius: 10px; background: #fff; box-shadow: 0 4px 20px rgba(0,0,0,0.15); }
.qna-confirm__box p { margin: 0 0 1.25rem; font-size: 0.9375rem; line-height: 1.5; color: #333; }
.qna-confirm__btns { display: flex; justify-content: center; gap: 0.75rem; }
.qna-confirm__btns button { padding: 0.5rem 1.25rem; border: 1px solid #999; border-radius: 6px; background: #fff; color: #555; cursor: pointer; }
.qna-confirm__btns button.is-yes { border-color: #6b5344; background: #6b5344; color: #fff; }
.qna-detail__board { margin: 0 0 1rem; font-size: 1.25rem; font-weight: 700; color: #222; }
.qna-detail__title { display: flex; align-items: center; flex-wrap: wrap; gap: 0.35rem; margin: 0 0 0.5rem; font-size: 1.5rem; font-weight: 700; color: #222; }
.qna-detail__meta { margin: 0 0 1rem; font-size: 0.875rem; color: #666; }
.qna-sep { margin: 0 0.35rem; color: #ccc; }
.qna-line { margin: 1rem 0; border-bottom: 2px solid #e0e0e0; }
.qna-detail__body { font-size: 0.9375rem; line-height: 1.7; color: #333; }
.qna-detail__repl { margin-top: 1.5rem; padding: 1rem; border: 1px solid #e0e0e0; border-radius: 8px; background: #faf8f6; }
.qna-detail__repl h3 { margin: 0 0 0.5rem; font-size: 1rem; color: #6b5344; }
.qna-detail__actions { display: flex; justify-content: flex-end; }
.qna-detail__actions a { display: inline-block; padding: 0.5rem 1rem; border: 1px solid #ddd; border-radius: 6px; background: #f5f5f5; color: #333; font-size: 0.875rem; text-decoration: none; }
.qna-detail__actions a:hover { border-color: #6b5344; color: #6b5344; }
@media (max-width: 1024px) {
	.qna-search { width: 100%; }
	.qna-search-row { flex: 1; min-width: 0; }
	.qna-search input[type="text"] { width: auto; flex: 1; min-width: 0; }
	.qna-table thead { position: absolute; left: -9999px; }
	.qna-table,
	.qna-table tbody,
	.qna-table tr,
	.qna-table td { display: block; width: 100%; }
	.qna-table tbody tr { display: flex; flex-wrap: wrap; gap: 0 0.75rem; padding: 0.75rem 0; }
	.qna-table td { padding: 0; border: 0; text-align: left; }
	.qna-table td:nth-child(1),
	.qna-table td:nth-child(2) { width: auto; line-height: 30px; }
	.qna-table td:nth-child(1)::after,
	.qna-table td:nth-child(4)::after,
	.qna-table td:nth-child(5)::after { content: ' ·'; color: #ccc; }
	.qna-table td:nth-child(3) { flex: 0 0 100%; padding: 0.4rem 0; }
	.qna-table td:nth-child(4),
	.qna-table td:nth-child(5),
	.qna-table td:nth-child(6) { width: auto; line-height: 30px; font-size: 12px; }
	.qna-empty { text-align: center; }
}
@media (max-width: 640px) {
	.qna-title { font-size: 1.375rem; }
	.qna-field input[type="text"],
	.qna-field select { width: 100%; max-width: none; }
	.qna-search select,
	.qna-search input[type="text"],
	.qna-btn-search { height: 44px; font-size: 16px; }
	.qna-write-wrap { text-align: stretch; }
	.qna-write-btn { width: 100%; }
	.qna-detail__actions a { display: block; text-align: center; }
}
