.page-total {border-bottom:none;}
.board-search {padding: 1.75rem; border-radius: 1rem; background: #F8F8F8; margin-bottom: 3.2rem;}
.board-search form {    display: flex; gap: 1rem;}
.board-search form  select{width: 12.5rem; height: 2.75rem; border-radius: 0.5rem; background: #fff url(../images/content/sel-icon.svg) no-repeat center right +1rem; padding: 0 1rem; color: #888; font-size: 0.8rem; font-weight: 400; letter-spacing: -0.004rem; border: 1px solid #ddd;}
.board-search form  select:focus{border:1px solid #222}

.board-search form  input[type="text"] {    height: 2.75rem; border-radius: 0.5rem; border: 1px solid #ddd; padding: 0 1rem; color: #333;}
.board-search form button {    height: 2.75rem; width: 4.85rem; border-radius: 0.5rem; background: #3C3C3C; color: #FFF; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem; display: flex; gap: 0.55rem; padding: 0 1rem; font-family: 'Pretendard Variable'; align-items: center;}

.board-search form input[type="text"]::placeholder{color: #888; font-size: 0.8rem; font-weight: 400; letter-spacing: -0.004rem;}
.board-search form input[type="text"]:focus{border:1px solid #222}

.board-search .detaile-search {width:12.5rem;height: 2.75rem;border-radius: 0.5rem; border: 1px solid #E7004C; color: #E7004C; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem;display:flex;align-items: center;padding:0 1rem; background:#fff;position:relative;}
.board-search .detaile-search:after{content:'';position:absolute;width:1rem;height:1rem;background:url(../images/content/detaile-icon.svg)no-repeat center center;background-size:cover;right:1rem;top:50%;transform:translateY(-50%);}
.board-search .detaile-search:hover{border-radius: 0.5rem;
background: linear-gradient(90deg, #E7004C 0%, #7A303F 100%);color:#fff;border:none}
.board-search .detaile-search:hover:after{content:'';position:absolute;width:1rem;height:1rem;background:url(../images/content/detaile-icon-on.svg)no-repeat center center;background-size:cover;right:1rem;top:50%;transform:translateY(-50%);}


.boardList-default table{}
.boardList-default table th {padding:0.8rem 1rem;color: #222; font-size: 0.9rem; font-weight: 600; letter-spacing: -0.0045rem;border-top:2px solid #222;border-bottom:1px solid #222;}
.boardList-default table td {padding:0.8rem 1.5rem;border-bottom:1px solid #ddd;color: #555; font-size: 0.9rem; font-weight: 400; line-height: 1.4rem; letter-spacing: -0.0045rem;text-align:center;}
.boardList-default table td.title{text-align:left;}
.boardList-default table td.title a {color: #222; font-size: 0.9rem; font-weight: 600; letter-spacing: -0.0045rem;overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; word-wrap: break-word;line-height:1.75rem; }
.boardList-default table td.num .key{padding:0.4rem 0.75rem;border-radius: 0.25rem; background: #E7004C;color: #FFF; font-size: 0.8rem; font-weight: 600; line-height: 0.8rem; letter-spacing: -0.004rem;}
.boardList-default table tr:hover td {background:#FFF3F6;}
.boardList-default table tr:hover td.title a { text-decoration : underline;
  text-underline-position : under;
 }

@media (max-width: 767px) {
.boardList-default tbody tr:hover{background:#FFF3F6}
.boardList-default table, .boardList-default thead, .boardList-default tbody, .boardList-default th, .boardList-default td, .boardList-default tr { display: block; width: 100%; }

  .boardList-default thead { display: none; }

  .boardList-default tbody tr{ border: 1px solid #eee; border-radius: 10px; padding: 0.75rem; margin-bottom: 0.75rem; background:#fff; }

  .boardList-default tbody td{ position: relative; padding: 0.5rem 0.5rem 0.5rem 7.5rem; /* 라벨 자리 */ border: none; border-bottom: 1px solid #f5f5f5; text-align:left;min-height:37px;}

  .boardList-default tbody td:last-child { border-bottom: none; }

  .boardList-default tbody td::before{ content: attr(data-label);     /* 헤더 라벨 표시 */ position: absolute; left: 0.75rem; top: 0.5rem; width: 6.5rem;                 /* 라벨 폭 */ font-weight: 600; color: #666; }

  /* 제목은 두 줄까지만 보이고 말줄임 */
  .boardList-default td.title a{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; white-space:normal; }
}
@media (max-width: 767px) {
	.board-search{padding:1rem;}
}

@media (max-width: 500px) {
	.boardList-default tbody td{padding-left:5rem;}
	.board-search form select{width:100%;}
	.board-search form{flex-wrap:wrap;}
	.board-search form button{width:100%;justify-content: center;}

}


/*게시물 뷰페이지*/
.boardView .view-tit{color: #222; font-size: 1.75rem; font-weight: 700; letter-spacing: -0.00875rem;}
.boardView .boardViewInfo {display:flex;flex-wrap:wrap;border-top: 2px solid #222;margin-top:2.5rem;}
.boardView .boardViewInfo > li {width:calc(100% / 3); display:flex;border-bottom:1px solid #ddd;}
.boardView .boardViewInfo > li > div.bg{width:50%; padding: 0.8rem 1rem;background: #F8F8F8;color: #222; font-size: 0.9rem; font-weight: 600;  letter-spacing: -0.0045rem; text-align:center;align-items: center;
    justify-content: center;
    display: flex;}
.boardView .boardViewInfo > li > div.txt{padding: 0.8rem 1rem;color: #555; font-size: 0.9rem; font-weight: 400; letter-spacing: -0.0045rem;flex:1;}
.boardView .boardViewInfo > li > div.txt a  {display:flex;align-items:center;gap:0.25rem;}
.boardView .boardViewInfo > li > div.txt a img {width:1.2rem}


.boardView .boardViewInfo > li:last-child {width:100%;}
.boardView .boardViewInfo > li:last-child .bg {width:calc(100% / 6);}

.boardView .boardViewInfo02 > li {width:calc(100% / 2);}
.boardView .boardViewInfo02 > li:last-child .bg{width:calc(100% / 4);}



.boardView .view-cont {min-height:14.15rem;border-bottom:1px solid #ddd;padding:4rem 0;/*text-align:center;*/}
.boardView .view-cont  img {max-width:100%;}
.boardView .view-cont .view-cont-btn{text-align:center;margin-top:4rem;border-top:1px solid #ddd;padding-top:2.5rem;}
.boardView .view-cont .view-cont-btn .app-btn{margin:0 auto;}

/* CKEditor로 이미지 첨부 시 상세페이지 깨지는 오류가 생겨 추가 */
.boardView .view-cont::after {content:"";display:block;clear:both;}

.boardView .boardPrev {display:flex;border-bottom:1px solid #ddd;}
.boardView .boardPrev > span,
.boardView .boardPrev > a{padding: 0.8rem 1rem;}
.boardView .boardPrev > span{width:7.5rem;background:#F8F8F8;color: #222; font-size: 0.9rem; font-weight: 600; line-height: 0.9rem; letter-spacing: -0.0045rem;text-align:center;}
.boardView .boardPrev > a {flex:1;color: #222; font-size: 0.9rem; font-weight: 400; letter-spacing: -0.0045rem;}
.boardView .boardNext{display:flex;border-bottom:1px solid #ddd;}
.boardView .boardNext > span,
.boardView .boardNext > a{padding: 0.8rem 1rem;}
.boardView .boardNext > span{width:7.5rem;background:#F8F8F8;color: #222; font-size: 0.9rem; font-weight: 600; line-height: 0.9rem; letter-spacing: -0.0045rem;text-align:center;}
.boardView .boardNext > a {flex:1;color: #222; font-size: 0.9rem; font-weight: 400; letter-spacing: -0.0045rem;}

@media (max-width: 767px) {
	.boardView .boardViewInfo > li{    width: 100%;}
	.boardView .boardViewInfo > li > div.bg{width: calc(100% / 6);}
	.boardView .boardViewInfo02 > li:last-child .bg{width:calc(100% / 6);}
}	

@media (max-width: 500px) {
	.boardView .boardViewInfo > li > div.bg{width: calc(100% / 5);}
	.boardView .boardViewInfo > li:last-child .bg{width: calc(100% / 5);}
	.boardView .boardPrev > span {width: calc(100% / 5);}
	.boardView .boardNext > span{width: calc(100% / 5);}
}

/*갤러리 게시판*/
.gallery-list ul {display:flex;gap:2.5rem 2rem;flex-wrap:wrap;}
.gallery-list ul > li {width:calc((100% - (2rem * 2)) / 3);border:1px solid #ddd;border-radius:1rem;overflow:hidden; }
.gallery-list ul > li .img-zone {aspect-ratio: 1.57 / 1;position:relative;overflow:hidden; }
.gallery-list ul > li .img-zone img {position:absolute;width:100%;height:100%;left:0;top:0;transition-duration: 0.5s;}
.gallery-list ul > li .txt-zone {padding:2rem;}
.gallery-list ul > li .txt-zone .tit {color: #222; font-size: 1rem; font-weight: 600;}
.gallery-list ul > li .txt-zone .txt {color: #555; font-size: 0.9rem; font-weight: 400; line-height: 1.4rem;margin-top:1.25rem;}
.gallery-list ul > li .txt-zone .date-box {display:flex;margin-top:1.5rem;justify-content:space-between;align-items:center;}
.gallery-list ul > li .txt-zone .date-box .date{color: #888; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem;position:relative;padding-left:1.4rem;height:1rem;line-height:1rem;}
.gallery-list ul > li .txt-zone .date-box .date:before{content:'';position:absolute;width:1rem;height:1rem;background:url(../images/content/time-icon.svg)no-repeat center center;background-size:cover;left:0;top:0;}
.gallery-list ul > li .txt-zone .date-box .hit {color: #888; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem;display:flex;gap:0.4rem;}
.gallery-list ul > li .txt-zone .date-box .hit .line {width: 0.05rem;
height: 0.6rem;background:#ddd;display:inline-block;}
.gallery-list ul > li:hover{box-shadow: 0 8px 20px 0 rgba(231, 0, 76, 0.08);border:1px solid #E7004C}
.gallery-list ul > li:hover .img-zone img {scale:1.05;transition-duration: 0.5s;}

@media (max-width: 1400px) {
	.gallery-list ul > li .txt-zone {padding:1rem;}
}
@media (max-width: 1030px) {
	.gallery-list ul {gap:1.5rem;}
	.gallery-list ul > li {width:calc((100% - (1.5rem * 1)) / 2);}
}
@media (max-width: 500px) {
	.gallery-list ul > li {width:100%;}
}

/*버튼 있는 게시판 리스트*/
.boardList .g-topbox {align-items:center;margin-bottom:4rem;}
.detaile-pop {position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1000;background:#fff;padding:1.4rem 1.5rem 1rem 1.5rem;width:40rem;border-radius:0.75rem;height:90%;overflow-y:scroll;display:none;}
.detaile-pop .pop-tit {color: #222; font-size: 1.15rem; font-weight: 600; letter-spacing: -0.00575rem;padding-bottom:3.9rem;}
.detaile-pop .detaile-pop-list > div:not(:last-child) {margin-bottom:2.5rem;}
.detaile-pop .detaile-pop-list > div .list-tit{color: #222; font-size: 0.9rem; font-weight: 600; letter-spacing: -0.0045rem;}
.detaile-pop .detaile-pop-list > div .list-tit span{color:#E7004C; font-size: 0.8rem; font-weight: 500; letter-spacing: -0.004rem;}
.detaile-pop .detaile-pop-list > div .select-list {gap:0.75rem 1.05rem;display:flex;flex-wrap:wrap;margin-top:0.75rem;}
.detaile-pop .detaile-pop-list > div .select-list > li {width:calc((100% - (1.05rem * 4)) / 5);}

.detaile-pop .detaile-pop-list > div .select-list > li input[type="checkbox"] { display: none; /* 기본 라디오 숨김 */ }

.detaile-pop .detaile-pop-list > div .select-list > li label span { display: inline-block; border: 1px solid #ccc; padding: 0.7rem 1rem; border-radius:10px; color: #555; text-align: center; font-size: 0.8rem; font-style: normal; font-weight: 400; line-height: 0.8rem;width:100%;}
.detaile-pop .detaile-pop-list > div .select-list > li label span:hover{background:#FFF3F6;border:1px solid #E7004C;color:#E7004C}
.detaile-pop .detaile-pop-list > div:last-child {padding-bottom:2.5rem;border-bottom:1px solid #ddd;margin-bottom:1rem;}


/* 체크됐을 때 스타일 */
.detaile-pop .detaile-pop-list > div .select-list > li input[type="checkbox"]:checked + span {background:#FFF3F6;border:1px solid #E7004C;color:#E7004C ;}

.detaile-pop .detaile-pop-btn {display:flex;gap:0.5rem;justify-content: flex-end;}
.detaile-pop .detaile-pop-btn a,
.detaile-pop .detaile-pop-btn button {width:5.25rem;height:2.75rem;border-radius: 0.25rem;}
.detaile-pop .detaile-pop-btn a{color: #3C3C3C; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem;border: 1px solid #3C3C3C;display:flex;justify-content:center;align-items:center;}
.detaile-pop .detaile-pop-btn a:hover{background:#3C3C3C;color:#fff;}
.detaile-pop .detaile-pop-btn button {color: #FFF; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem;background:#E7004C}
.detaile-pop .detaile-pop-btn button:hover{background:#BD003E ;}

@media (max-width: 1030px) {
.g-topbox .txt-box {text-align:center;}




}
@media (max-width: 767px) {
	.detaile-pop{width:90%;}
	.detaile-pop .detaile-pop-list > div .select-list > li {width:calc((100% - (1.05rem * 3)) / 4);}
	.detaile-pop .pop-tit{padding-bottom:1.5rem;}
	.boardList .g-topbox{margin-bottom:2.5rem;}
}
@media (max-width: 500px) {
	.detaile-pop .detaile-pop-list > div .select-list > li {width:calc((100% - (1.05rem * 2)) / 3);}
	.board-search .detaile-search{width:100%;}
}

.board-btn{margin-top:0.75rem;}
.board-btn .btn-write{display: flex; width: 6.5rem; height: 2rem; padding: 0.55rem 0.75rem;border-radius: 0.25rem; border: 1px solid #000; background: #000;color: #FFF; text-align: center; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem;justify-content:center;align-items:center;gap:0.25rem;margin-left:auto;}
.board-btn .btn-write:before{content:'';display:inline-block;width:0.9rem;height:0.9rem;background:url(../images/content/btn-write-icon.svg)no-repeat center center;background-size:cover;}

.board-btn.view-board-btn{display:flex;justify-content:flex-end;gap:0.5rem;}
.board-btn.view-board-btn a{width:4.5rem;height:2rem;display:flex;justify-content:center;align-items:center;color: #222; text-align: center; font-size: 0.8rem; font-weight: 400; line-height: 0.8rem; letter-spacing: -0.004rem;border-radius: 0.25rem; border: 1px solid #222; background: #FFF;}
.board-btn.view-board-btn a:hover{background:#EAEAEA;}

/* 2026-04-15 추가 */
/* ── 첨부파일 영역 초기화 ── */
.boardView .boardViewInfo > li > div.txt {width: 50%;}
#fileupload .fileupload-buttonbar,
#fileupload .fileupload-progress { display: none; }

#fileupload .table { border: none; margin: 0; border-collapse: separate; border-spacing: 0; }
#fileupload .table tbody { display: flex; flex-direction: column; gap: 0.5rem; }

#fileupload .table tr.template-download {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.65rem 0.85rem;
	border-radius: 0.5rem;
	background: #F8F8F8;
	border: 1px solid #eee;
	transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}
#fileupload .table tr.template-download:hover {
	background: #FFF3F6;
	border-color: #E7004C;
	box-shadow: 0 2px 8px rgba(231, 0, 76, 0.07);
}

/* preview 칸 숨김 */
#fileupload .table td:first-child { display: none; }

/* 파일명 */
#fileupload .table td:nth-child(2) {
	flex: 1;
	min-width: 0;
	padding: 0;
	border: none;
	position: relative;
	padding-left: 1.7rem;
}
#fileupload .table td:nth-child(2)::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1.15rem;
	height: 1.15rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E7004C' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3C/svg%3E") no-repeat center / contain;
}
#fileupload .table p.name {
	margin: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
#fileupload .table p.name a {
	color: #333;
	font-size: 0.85rem;
	font-weight: 500;
	text-decoration: none;
	letter-spacing: -0.01rem;
	transition: color 0.2s;
}
#fileupload .table tr.template-download:hover p.name a { color: #E7004C; }

/* 파일 크기 */
#fileupload .table td:nth-child(3) {
	padding: 0;
	border: none;
	flex-shrink: 0;
}
#fileupload .table span.size {
	color: #999;
	font-size: 0.75rem;
	font-weight: 400;
	white-space: nowrap;
}

/* 저장 버튼 */
#fileupload .table td:nth-child(4) {
	padding: 0;
	border: none;
	flex-shrink: 0;
}
#fileupload .table .btn.btn-primary {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	padding: 0.35rem 0.75rem;
	border-radius: 0.35rem;
	background: #3C3C3C;
	border: 1px solid #3C3C3C;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 500;
	text-decoration: none;
	transition: background 0.2s, border-color 0.2s;
	font-family: 'Pretendard Variable', sans-serif;
	line-height: 1;
}
#fileupload .table .btn.btn-primary:hover {
	background: #E7004C;
	border-color: #E7004C;
}
#fileupload .table .btn.btn-primary .glyphicon { display: none; }

#fileupload .table .btn.btn-primary span::before {
	content: '';
	display: inline-block;
	width: 0.8rem;
	height: 0.8rem;
	margin-right: 0.2rem;
	vertical-align: -0.12rem;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* 반응형 */
@media (max-width: 600px) {
	#fileupload .table p.name {
		white-space: normal;
	}
	#fileupload .table tr.template-download {
		flex-wrap: wrap;
		padding: 0.6rem 0.7rem;
		gap: 0.35rem;
	}
	#fileupload .table td:nth-child(2) { width: 100%; flex: unset; }
	#fileupload .table td:nth-child(3) { order: 1; }
	#fileupload .table td:nth-child(4) { order: 2; margin-left: auto; }
}
