/* 공통 초기화 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: 'Noto Sans KR', sans-serif;
  color: #333;
  background: #fff;
}
a {
  text-decoration: none;
  color: #111;
  font-size: 14px;
}

/* center-box 설정 */
.center-box {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
}

/* 제목 */
h2.text-center {
  text-align: center;
  font-size: 20px;
  margin-bottom: 20px;
}

/* 검색창 */
.input-group {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}
.input-group input[type="text"] {
  width: 240px;
  height: 32px;
  border: 1px solid #ccc;
  padding: 0 10px;
  font-size: 14px;
}
.input-group button {
  height: 32px;
  padding: 0 16px;
  margin-left: 6px;
  background: #333;
  color: white;
  font-size: 14px;
  border: none;
}

/* 게시판 테이블 */
table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #aaa;
}
table thead th {
  background-color: #f1f1f1; /* 연한 회색 헤더 */
  color: #111;
  font-weight: normal;
  padding: 12px 10px;
  border-bottom: 1px solid #ddd;
}
th, td {
  font-size: 14px;
  padding: 12px 10px;
  border-bottom: 1px solid #ddd;
  text-align: center;
}

/* No 열 */
th:first-child,
td:first-child {
  width: 60px;
}

/* 제목 정렬 */
th:nth-child(2),
td:nth-child(2) {
  text-align: left;
  padding-left: 16px;
  white-space: nowrap;
}

/* 작성자, 날짜 */
th:nth-child(3), th:nth-child(4),
td:nth-child(3), td:nth-child(4),
th:nth-child(5), td:nth-child(5) {
  text-align: center;
  width: 120px;
}

/* 댓글 수 강조 */
.text-danger {
  color: red;
  font-size: 12px;
  margin-left: 4px;
}

/* hover 효과 제거 */
table tbody tr:hover {
  background: none;
}

/* 페이지네이션 회색 스타일 */
ul.flex {
  display: flex;
  justify-content: center;
  margin: 20px 0;
  gap: 6px;
  padding-left: 0;
}
.page-item a {
  padding: 6px 12px;
  font-size: 14px;
  border: 1px solid #ccc;
  background: #f2f2f2;
  color: #444;
  border-radius: 4px;
  text-decoration: none;
}
.page-item.active a {
  background-color: #888;
  color: #fff;
  border-color: #888;
}
.page-item.disabled a {
  background-color: #eee;
  color: #aaa;
  pointer-events: none;
}

/* 글쓰기 버튼 */
.more-btn {
  display: flex;
  justify-content: flex-end;
  margin-top: 10px;
  margin-bottom: 0;
  align-items: center;
}
.more-btn a {
  display: inline-block;
  background: #222;
  color: #fff;
  padding: 8px 16px;
  font-size: 14px;
  border: none;
  border-radius: 10px;
}
/* 제목과 댓글 수 수직 정렬 */
.title-cell a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.title-cell .ellipsis {
  vertical-align: middle;
}

.title-cell span {
  vertical-align: middle;
  font-size: 13px;
  color: #222;
  font-weight: bold;
}
/* 말줄임 처리 */
.ellipsis {
  display: inline-block;
  max-width: 350px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* 페이징 버튼 회색 스타일 */
ul.flex {
  display: flex;
  justify-content: center;
  margin: 20px 0;
  gap: 6px;
}
.page-item a {
  padding: 6px 12px;
  font-size: 14px;
  border: 1px solid #ccc;
  background: #f2f2f2;
  color: #444;
  border-radius: 4px;
  text-decoration: none;
}
.page-item.active a {
  background-color: #888;
  color: #fff;
  border-color: #888;
}
.page-item.disabled a {
  background-color: #eee;
  color: #aaa;
  pointer-events: none;
}