@charset "utf-8";

/* ============================================================
   리뉴얼 게시판 공통 스타일
   - 커뮤니티(공지/이벤트/후기/자료공유/우리들이야기 등)에서 공통 사용
   - smart-tab-menu / planEdu_tabwrap / 게시판 테이블 보정
   ============================================================ */

/* 본문 래퍼 */
.notice_wrap { width:1024px; margin:0 auto; padding-top:30px; position:relative; }
.notice_wrap .sub_nav { float:right; font-size:13px; color:#777; margin-top:-30px; }
.notice_wrap .sub_nav img { vertical-align:middle; margin-right:4px; }

/* 페이지 타이틀 (smart-tab-menu 아래, 가운데 정렬) */
.notice_wrap .notice_pagetitle {
	text-align:center;
	font-size:28px; font-weight:bold; color:#333;
	letter-spacing:-0.5px;
	margin:0 0 70px;
	position:relative;
}

/* 상단 커뮤니티 메뉴와 본문 사이 간격 + 구분선 톤다운 */
.smart-tab-menu { margin-bottom:25px; border-bottom:1px solid #ddd; }
/* 메뉴 폭 고정 + 항목 균등 분할 → 가운데 메뉴 중앙이 페이지 타이틀과 정렬 */
.smart-tab-menu ul { width:640px; margin:0 auto; }
/* 탭 개수에 따른 폭 (modifier) */
.smart-tab-menu.tab-3 ul { width:440px; }
.smart-tab-menu.tab-4 ul { width:540px; }
.smart-tab-menu li {
	flex:1;
	margin:0;
	padding:12px 12px;
	text-align:center;
	box-sizing:border-box;
}

/* 커뮤니티 메뉴(상단 가로 탭)의 new 뱃지 정렬 */
.smart-tab-menu li a img.new-badge {
	width:15px;
	margin-left:5px;
	margin-bottom:1px;
	vertical-align:middle;
}

/* 검색/버튼 영역 */
.notice_actionbar { display:flex; align-items:center; justify-content:space-between; margin:20px 0 10px; }
.notice_actionbar .left_btns { display:flex; gap:6px; }
.notice_actionbar .left_btns a {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:100px; height:30px; padding:0 14px;
	font-size:13px; font-weight:500; text-decoration:none;
	border-radius:4px; box-sizing:border-box;
}
.notice_actionbar .left_btns .btn_write { background:var(--color-point); color:#fff; }
.notice_actionbar .left_btns .btn_guide { background:var(--color-primary); color:#333; }

.notice_search { display:flex; align-items:center; gap:6px; }
.notice_search select,
.notice_search input[type=text] {
	height:30px; padding:0 10px; box-sizing:border-box;
	border:1px solid #c7c7c7; border-radius:4px; font-size:13px;
	background:#fff;
}
.notice_search input[type=text] { width:180px; }
.notice_search .btn_write,
.notice_search .btn_guide {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:100px; height:30px; padding:0 14px;
	font-size:13px; font-weight:500; text-decoration:none;
	border-radius:4px; box-sizing:border-box;
}
.notice_search .btn_write { background:var(--color-point); color:#fff; }
.notice_search .btn_guide { background:var(--color-primary); color:#333; }
.notice_search .btn_search {
	display:inline-flex; align-items:center; justify-content:center;
	height:30px; padding:0 16px;
	background:var(--color-point); color:#fff; font-size:13px; font-weight:500;
	border:1px solid var(--color-point); border-radius:4px;
	box-sizing:border-box; cursor:pointer; text-decoration:none;
}

/* 공지 테이블 */
.notice_table { width:100%; border-collapse:collapse; border-top:2px solid #3E5FAC; table-layout:fixed; }

/* planEdu 탭바가 이미 하단 파란 라인을 가지고 있으므로,
   탭 뒤에 오는 테이블은 상단 라인 중복 제거 */
.notice_wrap .planEdu_tabwrap ~ .notice_table { border-top:0; }
.notice_table thead th {
	height:44px; background:#f7f7f7; border-bottom:1px solid #ddd;
	font-size:14px; font-weight:bold; color:#333;
}
.notice_table tbody th,
.notice_table tbody td {
	height:42px; border-bottom:1px solid #eee;
	font-size:14px; color:#444; text-align:center;
}
.notice_table tbody td.tit,
.notice_table tbody td.TNONE {
	text-align:left; padding-left:12px;
	overflow:hidden;
}
.notice_table tbody td.TNONE a { color:#333; text-decoration:none; }
.notice_table tbody td.TNONE a:hover { color:var(--color-point); text-decoration:underline; }
.notice_table tbody td.tit a {
	display:flex; align-items:center; gap:4px;
	color:#333; text-decoration:none;
}
.notice_table tbody td.tit a .tit_text {
	flex:0 1 auto; min-width:0;       /* 콘텐츠 크기만큼만, 부족하면 줄어들면서 잘림 */
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.notice_table tbody td.tit a .tit_reply {
	flex:0 0 auto;                    /* 절대 줄어들지 않음 → 제목 바로 뒤에 붙음 */
	color:#888; font-size:13px;
}

/* 글쓴이 컬럼도 길면 말줄임 처리 */
.notice_table tbody td .btnMemInfo {
	display:block;
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.notice_table tbody td.tit a:hover { color:var(--color-point); text-decoration:underline; }
.notice_table tbody tr:hover { background:#fafafa; }

/* 공지/BEST 강조 행(.ent)은 hover 같은 톤의 배경을 기본으로 적용 */
.notice_table tbody tr.ent { background:#fafafa; }
.notice_table tbody tr.ent:hover { background:#f0f0f0; }

/* 공지/BEST 행의 제목 강조 (Bold) */
.notice_table tbody tr.ent td.tit a { font-weight:700; }
/* [공지] 등 Fontred 라벨도 Bold */
.notice_table tbody tr.ent td.Fontred { font-weight:700; }
.notice_table .empty { padding:60px 0; color:#888; }

/* 페이지네이션 영역 */
.notice_wrap .paging { margin-top:24px; text-align:center; }

/* 페이지네이션 (PHP Pagination.class가 출력하는 .comm_Listnumberwrap)
   기존 community_layout.css 스타일(800px, 회색)을 리뉴얼 톤으로 교체 */
.notice_wrap .comm_Listnumberwrap {
	width:1024px;
	text-align:center;
	margin-top:30px;
	clear:both;
}
.notice_wrap .comm_Listnumberwrap a {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:15px; height:32px;
	margin:0 3px; padding:0 5px;
	background-color:#fff;
	color:#444;
	border:1px solid #ddd;
	border-radius:4px;
	font-size:13px; line-height:1;
	text-decoration:none;
	transition:all 0.15s;
}
.notice_wrap .comm_Listnumberwrap a img {
	margin:0; vertical-align:middle;
}
.notice_wrap .comm_Listnumberwrap a.On {
	background-color:var(--color-point);
	color:#fff;
	border-color:var(--color-point);
	font-weight:bold;
}
.notice_wrap .comm_Listnumberwrap a:hover {
	background-color:#f7f7f7;
	color:var(--color-point);
	border-color:var(--color-point);
}
.notice_wrap .comm_Listnumberwrap a.On:hover {
	background-color:var(--color-point);
	color:#fff;
}

/* Edupre Pagination::init 형태 (.pg_nav / .pg_nav_sel) */
.notice_wrap .paging a { text-decoration:none; }
.notice_wrap .paging .pg_nav,
.notice_wrap .paging .pg_nav_sel {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:15px; height:32px;
	margin:0 3px; padding:0 8px;
	background-color:#fff;
	color:#444;
	border:1px solid #ddd;
	border-radius:4px;
	font-size:13px; line-height:1;
	box-sizing:border-box;
	transition:all 0.15s;
}
.notice_wrap .paging .pg_nav:hover {
	background-color:#f7f7f7;
	color:var(--color-point);
	border-color:var(--color-point);
}
.notice_wrap .paging .pg_nav_sel {
	background-color:var(--color-point);
	color:#fff;
	border-color:var(--color-point);
	font-weight:bold;
}

/* 이전/다음/맨처음/맨끝 화살표 버튼은 연한 회색 배경으로 숫자와 구분 */
.notice_wrap .comm_Listnumberwrap a:has(> i.fa-solid) {
	background-color:#f5f5f5;
	color:#555;
}
.notice_wrap .comm_Listnumberwrap a:has(> i.fa-solid):hover {
	background-color:#ececec;
	color:var(--color-point);
	border-color:var(--color-point);
}

/* planEdu 스타일 탭 (참고: new_plan.css) — notice 폭에 맞춰 보정 */
.notice_wrap .planEdu_tabwrap { width:100%; height:38px; border-bottom:2px solid #3E5FAC; position:relative; }
.notice_wrap .planEdu_tabbox { list-style:none; padding:0; margin:0; }
.notice_wrap .planEdu_tabbox li {
	float:left; width:160px; height:38px;
	border-top:1px solid #c7c7c7; border-right:1px solid #c7c7c7; border-left:none;
	text-align:center; padding:0; box-sizing:border-box;
}
.notice_wrap .planEdu_tabbox li.planEdu_tabFirst { border-left:1px solid #c7c7c7; }
.notice_wrap .planEdu_tabbox li a {
	display:block; width:100%; height:100%;
	line-height:36px;
	color:#555; text-decoration:none; font-size:14px;
}
.notice_wrap .planEdu_tabbox li.planEdu_tabOn { background-color:#3E5FAC; color:#fff; font-weight:bold; border:none; height:38px; padding:0; }
.notice_wrap .planEdu_tabbox li.planEdu_tabOn a { color:#fff; text-decoration:none; line-height:38px; }
.notice_wrap .planEdu_tabwrap::after { content:""; display:block; clear:both; }

/* 탭바 우측에 정렬되는 검색 영역 */
.notice_wrap .planEdu_tabwrap .notice_search {
	position:absolute; right:0; top:0;
}

/* 검색 영역이 탭바로 올라간 경우 액션바는 좌측 버튼만 남김 */
.notice_actionbar.left-only { justify-content:flex-start; }

/* 액션바를 우측 정렬 (검색 박스가 별도일 때) */
.notice_actionbar.right-only { justify-content:flex-end; }

/* 검색박스 안에 둔 우측 액션바: 검색박스 바로 위에 absolute로 띄움
   → 검색박스와 같이 움직이고, 본문 높이를 차지하지 않음 */
.notice_wrap .notice_searchbox .notice_actionbar.right-only {
	position:absolute;
	top:auto; bottom:100%; right:0;
	margin:0 0 8px;
}

/* 검색박스 없이 notice_wrap 직속에 둔 우측 액션바: 페이지 타이틀 라인 우측에 absolute */
.notice_wrap > .notice_actionbar.right-only {
	position:absolute;
	top:30px; right:0;
	margin:0;
}

/* notice_form 안에 둔 우측 액션바: 폼(표) 바로 위에 absolute로 띄움 */
.notice_wrap .notice_form { position:relative; }
.notice_wrap .notice_form > .notice_actionbar.right-only {
	position:absolute;
	top:auto; bottom:100%; right:0;
	margin:0 0 8px;
}

/* ============================================================
   필터 / 키워드 박스 (자료공유, 이벤트, 후기 등 공통)
   ============================================================ */

/* 인기 검색어 박스 */
.notice_wrap .notice_keyword {
	background:#f7f7f7; border:1px solid #e5e5e5; border-radius:4px;
	padding:10px 14px; font-size:13px; color:#666; margin-bottom:10px;
}
.notice_wrap .notice_keyword strong { color:#333; margin-right:8px; }
.notice_wrap .notice_keyword a { color:#444; text-decoration:none; }
.notice_wrap .notice_keyword a:hover { color:var(--color-point); }

/* 필터 줄 (주제/영역/정렬 select 등) */
.notice_wrap .notice_filter {
	display:flex; align-items:center; justify-content:space-between;
	margin:14px 0 10px; flex-wrap:wrap; gap:8px;
}
.notice_wrap .notice_filter .left,
.notice_wrap .notice_filter .right {
	display:flex; align-items:center; gap:6px; font-size:13px; color:#444;
}
.notice_wrap .notice_filter label { color:#444; font-size:13px; }
.notice_wrap .notice_filter select {
	height:30px; padding:0 10px; box-sizing:border-box;
	border:1px solid #c7c7c7; border-radius:4px; font-size:13px; background:#fff;
}

/* ============================================================
   검색 박스 (인기검색어 + 필터 + 검색을 한 박스에 통합)
   ============================================================ */
.notice_wrap .notice_searchbox {
	position:relative;
	background:#f7f7f7; border:1px solid #e5e5e5; border-radius:6px;
	padding:14px 16px; margin-bottom:14px;
}

/* "내 자료만 보기" 체크박스 */
.notice_wrap .notice_searchbox .mypost_check {
	margin-left:10px;
	display:inline-flex; align-items:center; gap:4px;
	font-size:13px; font-weight:bold; color:#444; cursor:pointer;
}
.notice_wrap .notice_searchbox .mypost_check input[type=checkbox] {
	width:15px; height:15px;
	margin:0; cursor:pointer;
	accent-color:var(--color-point);
}

/* 토글 필터 버튼 (도와주세요, 내 자료만 보기 등) */
.notice_wrap .notice_searchbox .filter_btn {
	display:inline-flex; align-items:center; gap:5px;
	height:30px; padding:0 12px;
	background-color:#fff;
	color:#444;
	border:1px solid #c7c7c7;
	border-radius:4px;
	font-size:13px; font-weight:500;
	text-decoration:none;
	cursor:pointer;
	transition:all 0.15s;
	box-sizing:border-box;
}
.notice_wrap .notice_searchbox .filter_btn:hover {
	border-color:var(--color-point);
	color:var(--color-point);
}
.notice_wrap .notice_searchbox .filter_btn.active {
	background-color:var(--color-point);
	border-color:var(--color-point);
	color:#fff;
}
.notice_wrap .notice_searchbox .filter_btn.active:hover {
	background-color:var(--color-point);
	color:#fff;
}
.notice_wrap .notice_searchbox .filter_btn .fa-check {
	font-size:11px;
}
.notice_wrap .notice_searchbox .keyword_row {
	font-size:13px; color:#666;
	padding-bottom:10px; margin-bottom:10px;
	border-bottom:1px dashed #ddd;
}
.notice_wrap .notice_searchbox .keyword_row strong { color:#333; margin-right:8px; }
.notice_wrap .notice_searchbox .keyword_row a { color:#444; text-decoration:none; }
.notice_wrap .notice_searchbox .keyword_row a:hover { color:var(--color-point); }

.notice_wrap .notice_searchbox .filter_row {
	display:flex; align-items:center; justify-content:space-between;
	gap:10px; flex-wrap:wrap;
}
.notice_wrap .notice_searchbox .filter_row .left,
.notice_wrap .notice_searchbox .filter_row .right {
	display:flex; align-items:center; gap:6px; font-size:13px; color:#444;
}
.notice_wrap .notice_searchbox label { color:#444; font-size:13px; margin-right:2px; }
.notice_wrap .notice_searchbox select {
	height:30px; padding:0 10px; box-sizing:border-box;
	border:1px solid #c7c7c7; border-radius:4px; font-size:13px; background:#fff;
}
.notice_wrap .notice_searchbox input[type=text] {
	height:30px; padding:0 10px; box-sizing:border-box;
	border:1px solid #c7c7c7; border-radius:4px; font-size:13px; background:#fff;
	width:180px;
}
.notice_wrap .notice_searchbox .btn_search {
	display:inline-flex; align-items:center; justify-content:center;
	height:30px; padding:0 16px;
	background:var(--color-point); color:#fff; font-size:13px; font-weight:500;
	border:1px solid var(--color-point); border-radius:4px;
	box-sizing:border-box; cursor:pointer; text-decoration:none;
}

/* ============================================================
   이벤트 카드 그리드 (event/index.htm)
   ============================================================ */
.notice_wrap .event_listwrap { position:relative; }
.notice_wrap .event_listwrap > .notice_actionbar.right-only {
	position:absolute;
	top:auto; bottom:100%; right:0;
	margin:0 0 8px;
}

.notice_wrap .event_grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:18px;
	padding:0; margin:0 0 40px;
	list-style:none;
}
.notice_wrap .event_card {
	position:relative;
	background:#fff;
	border:1px solid #e5e5e5;
	border-radius:8px;
	overflow:hidden;
	transition:transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.notice_wrap .event_card:hover {
	transform:translateY(-3px);
	box-shadow:0 6px 16px rgba(0,0,0,0.08);
	border-color:#ddd;
}
.notice_wrap .event_card > a {
	display:block;
	text-decoration:none; color:inherit;
}

.notice_wrap .event_card .event_thumb {
	width:100%;
	aspect-ratio: 252/172;
	overflow:hidden;
	background:#f4f4f4;
}
.notice_wrap .event_card .event_thumb img {
	width:100%; height:100%;
	object-fit:cover; object-position:top;
	display:block;
}

.notice_wrap .event_card .event_body {
	position:relative;
	padding:14px 16px 16px;
}
.notice_wrap .event_card .event_title {
	font-size:15px; font-weight:bold; color:#222;
	margin:0 0 6px;
	padding-right:28px;
	overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.notice_wrap .event_card .event_period {
	font-size:13px; color:#888;
	margin:0;
}

/* 좌측 상단 라벨 묶음 (종료/대기중/사용중지) */
.notice_wrap .event_card .event_labels {
	position:absolute;
	top:10px; left:10px;
	z-index:2;
	display:flex; gap:6px;
}
.notice_wrap .event_card .event_label {
	padding:4px 10px;
	font-size:12px; font-weight:bold;
	border-radius:4px;
	color:#fff;
	line-height:1.4;
}
.notice_wrap .event_card .event_label.ended    { background:rgba(0,0,0,0.65); }
.notice_wrap .event_card .event_label.pending  { background:#f0ad4e; }
.notice_wrap .event_card .event_label.disabled { background:#d9534f; }

/* 본문 영역 우측 상단 NEW 뱃지 (제목 라인 옆) */
.notice_wrap .event_card .event_new {
	position:absolute;
	top:16px; right:16px;
	z-index:2;
	width:17px; height:auto;
}

/* 관리자용 상세보기 버튼 */
.notice_wrap .event_card .event_detail_btn {
	display:flex; align-items:center; justify-content:center;
	width:100%; height:36px;
	background:#f7f7f7;
	border-top:1px solid #e5e5e5;
	color:#444; font-size:13px;
	text-decoration:none;
	transition:background 0.15s;
}
.notice_wrap .event_card .event_detail_btn:hover {
	background:#ececec;
	color:var(--color-point);
}

/* 빈 이벤트 안내 */
.notice_wrap .event_empty {
	text-align:center;
	color:#888; font-size:15px;
	padding:80px 0;
}

/* ============================================================
   후기 카드 (review/index.htm) — event_card 재사용 + 태그/라벨 추가
   ============================================================ */
/* 후기 태그 (생활주제/저자/키워드) */
.notice_wrap .event_card .review_tags {
	display:flex; flex-wrap:wrap; gap:4px;
	margin-bottom:8px;
}
.notice_wrap .event_card .review_tags .tag {
	display:inline-flex; align-items:center;
	padding:2px 8px;
	font-size:12px; font-weight:bold;
	border-radius:3px;
	line-height:1.5;
}
.notice_wrap .event_card .review_tags .tag.category { background:#c0dff8; color:#1c3d5e; border:1px solid #c0dff8; }
.notice_wrap .event_card .review_tags .tag.outline  { background:#fff; color:#3E5FAC; border:1px solid #3E5FAC; }

/* 승인 라벨 (event_labels 재사용) */
.notice_wrap .event_card .event_label.waiting  { background:#f0ad4e; }
.notice_wrap .event_card .event_label.rejected { background:#d9534f; }

/* BEST 뱃지 (좌측 상단) */
.notice_wrap .event_card .review_best {
	position:absolute;
	top:0; left:0;
	z-index:2;
}

/* ============================================================
   작성 폼 (notice_form) — 글쓰기/수정 페이지 공통
   ============================================================ */
.notice_wrap .notice_form {
	width:100%;
	border-top:2px solid #3E5FAC;
	border-bottom:1px solid #ddd;
	margin-bottom:20px;
}
.notice_wrap .notice_form .form_row {
	display:flex;
	border-bottom:1px solid #eee;
	min-height:54px;
}
.notice_wrap .notice_form .form_row:last-child {
	border-bottom:none;
}
.notice_wrap .notice_form .form_label {
	flex:0 0 130px;
	background:#fafafa;
	padding:14px 16px;
	font-size:14px; font-weight:600; color:#333;
	display:flex; align-items:center;
	border-right:1px solid #eee;
	box-sizing:border-box;
}
.notice_wrap .notice_form .form_label .req {
	color:#ff2e1f; margin-right:4px; font-weight:bold;
}
.notice_wrap .notice_form .form_field {
	flex:1 1 auto; min-width:0;
	padding:10px 16px;
	display:flex; align-items:center; flex-wrap:wrap; gap:10px;
	box-sizing:border-box;
}
.notice_wrap .notice_form .form_field input[type=text],
.notice_wrap .notice_form .form_field input[type=password],
.notice_wrap .notice_form .form_field input[type=email],
.notice_wrap .notice_form .form_field input[type=number],
.notice_wrap .notice_form .form_field input[type=tel] {
	flex:1 1 auto; min-width:100px; max-width:600px;
	height:34px; padding:0 12px;
	border:1px solid #c7c7c7; border-radius:4px;
	font-size:14px; background:#fff;
	box-sizing:border-box;
}
.notice_wrap .notice_form .form_field select {
	height:34px; padding:0 12px;
	border:1px solid #c7c7c7; border-radius:4px;
	font-size:14px; background:#fff;
	box-sizing:border-box;
}
.notice_wrap .notice_form .form_field input[type=file] {
	font-size:13px;
}

/* 라디오 그룹 */
.notice_wrap .notice_form .radio_group {
	display:flex; align-items:center; gap:18px;
}
.notice_wrap .notice_form .radio_group label {
	display:inline-flex; align-items:center; gap:5px;
	font-size:14px; color:#333; cursor:pointer;
	margin:0;
}
.notice_wrap .notice_form .radio_group input[type=radio] {
	width:16px; height:16px;
	margin:0; cursor:pointer;
	accent-color:var(--color-point);
}

/* 동의 안내 박스 */
.notice_wrap .notice_form .agree_box,
.notice_wrap .agree_box {
	margin-top:0;
	padding:0 20px 20px;
	background:#fff;
	font-size:13px;
	color:#3E5FAC;
	line-height:1.6;
	box-sizing:border-box;
}
.notice_wrap .notice_form .agree_box p { margin:0; }
.notice_wrap .notice_form .agree_box .agree_check,
.notice_wrap .agree_box .agree_check {
	margin-top:16px; padding:12px 14px;
	background:#f7f9fc;
	border:1px solid #e2e8f0;
	border-radius:6px;
	display:flex; align-items:center; gap:8px;
	color:#222; font-size:14px; font-weight:600;
}
.notice_wrap .agree_box .agree_check input[type=checkbox] {
	width:18px; height:18px;
	margin:0; cursor:pointer;
	accent-color:var(--color-point);
}
.notice_wrap .agree_box .agree_check label {
	cursor:pointer;
}
.notice_wrap .notice_form .agree_box .agree_check input[type=checkbox] {
	width:17px; height:17px;
	margin:0; cursor:pointer;
	accent-color:var(--color-point);
}
.notice_wrap .notice_form .agree_box .agree_check label {
	font-weight:500; cursor:pointer;
}

/* 에디터 영역 */
.notice_wrap .notice_form .editor_row {
	display:block;
	padding:20px;
}
.notice_wrap .notice_form .editor_row .editor_help {
	font-size:13px; color:#444; margin-bottom:10px;
}

/* 내가 사용한 자료 (clip 선택) */
.notice_wrap .notice_form .clip-select-wrap {
	display:flex; align-items:flex-start; gap:10px; width:100%; flex-wrap:wrap;
}
.notice_wrap .notice_form .default-button {
	flex:0 0 auto;
	height:34px; padding:0 16px;
	background:#fff;
	color:#444;
	border:1px solid #c7c7c7; border-radius:4px;
	font-size:13px;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .notice_form .default-button:hover {
	border-color:var(--color-point);
	color:var(--color-point);
}
.notice_wrap .notice_form .selectedClips {
	flex:1 1 auto;
	display:flex; flex-wrap:wrap; gap:6px;
	align-items:baseline;
}
.notice_wrap .notice_form .selected-clip-item {
	display:inline-flex; align-items:center; gap:4px;
	padding:4px 4px 4px 10px;
	background:#f0f0f0;
	border-radius:4px;
	font-size:13px;
}
.notice_wrap .notice_form .selected-clip-item a {
	color:#444; text-decoration:none;
}
.notice_wrap .notice_form .selected-clip-item a:hover {
	color:var(--color-point);
}
.notice_wrap .notice_form .selected-clip-item .btn-remove-clip {
	width:20px; height:20px;
	background:none; border:none;
	color:#666;
	font-size:15px; line-height:1;
	cursor:pointer;
}
.notice_wrap .notice_form .selected-clip-item .btn-remove-clip:hover {
	color:#d9534f;
}

/* 폼 액션 버튼 */
.notice_wrap .form_actions {
	display:flex; justify-content:center; gap:8px;
	margin:24px 0 50px;
}
.notice_wrap .form_actions .btn_submit,
.notice_wrap .form_actions .btn_cancel {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:120px; height:42px;
	padding:0 24px;
	font-size:15px; font-weight:500;
	border-radius:4px;
	cursor:pointer;
	text-decoration:none;
	box-sizing:border-box;
}
.notice_wrap .form_actions .btn_submit {
	background:var(--color-point);
	color:#fff;
	border:1px solid var(--color-point);
}
.notice_wrap .form_actions .btn_submit:hover {
	opacity:0.9;
}
.notice_wrap .form_actions .btn_cancel {
	background:#fff;
	color:#444;
	border:1px solid #c7c7c7;
}
.notice_wrap .form_actions .btn_cancel:hover {
	border-color:#999;
	background:#f7f7f7;
}

/* ============================================================
   상세보기 (view.htm) — 게시글 헤더 + 본문 + 좋아요 + 액션
   ============================================================ */
.notice_wrap .notice_detail { margin-bottom:20px; }

.notice_wrap .notice_detail .detail_header {
	padding:22px 24px;
	border-top:2px solid #3E5FAC;
	border-bottom:1px solid #ddd;
	background:#fff;
}
.notice_wrap .notice_detail .detail_title {
	display:flex; align-items:center; flex-wrap:wrap; gap:10px;
	font-size:22px; font-weight:bold; color:#222;
	margin:0 0 14px;
}
.notice_wrap .notice_detail .detail_title .best_tag {
	display:inline-flex; align-items:center;
	padding:3px 8px;
	background:var(--color-point); color:#fff;
	border:1px solid var(--color-point); border-radius:4px;
	font-size:12px; font-weight:bold;
}

.notice_wrap .notice_detail .detail_meta {
	display:flex; flex-wrap:wrap; gap:8px 22px;
	font-size:13px; color:#555;
}
.notice_wrap .notice_detail .detail_meta .meta_item {
	display:inline-flex; align-items:center; gap:6px;
}
.notice_wrap .notice_detail .detail_meta .meta_label {
	color:#888; font-weight:500;
}
.notice_wrap .notice_detail .detail_meta .meta_value {
	color:#222; font-weight:600;
}
.notice_wrap .notice_detail .detail_meta .author_link {
	color:#3E5FAC; text-decoration:none; font-weight:600;
}
.notice_wrap .notice_detail .detail_meta .author_link:hover {
	text-decoration:underline;
}
.notice_wrap .notice_detail .detail_meta .note_btn {
	display:inline-flex; align-items:center; gap:3px;
	margin-left:4px;
	padding:2px 6px;
	border:1px solid #eb0000;
	color:#eb0000;
	font-size:11px;
	text-decoration:none;
	border-radius:3px;
}
.notice_wrap .notice_detail .detail_meta .note_btn:hover {
	background:#eb0000; color:#fff;
}

.notice_wrap .notice_detail .detail_content {
	padding:30px 24px;
	border-bottom:1px solid #ddd;
	font-size:15px; line-height:1.7; color:#222;
	background:#fff;
	min-height:200px;
}
.notice_wrap .notice_detail .detail_content img {
	max-width:100%; height:auto;
}

/* 가운데 정렬이 필요한 본문 (이벤트/공지사항 등 큰 안내 이미지가 본문에 들어가는 경우) */
.notice_wrap .notice_detail .detail_content.centered,
.notice_wrap .notice_detail .detail_content.event_view_content {
	text-align:center;
	line-height:25px;
}
.notice_wrap .notice_detail .detail_content.centered img,
.notice_wrap .notice_detail .detail_content.event_view_content img {
	display:block;
	margin:0 auto;
}
/* 가운데 정렬 본문은 좌우 padding 제거 (큰 이미지가 컨테이너 폭 그대로 보이게) */
.notice_wrap .notice_detail .detail_content.centered,
.notice_wrap .notice_detail .detail_content.event_view_content {
	padding:30px 0;
}
.notice_wrap .notice_detail .detail_like {
	text-align:center;
	padding:30px 0 10px;
}
.notice_wrap .notice_detail .detail_like .btn-like-img {
	width:96px;
	cursor:pointer;
	transition:transform 0.2s ease;
}
.notice_wrap .notice_detail .detail_like .btn-like-img.off:hover {
	transform:translateY(-8px);
}

/* 상세보기 액션 버튼 (재승인/수정/삭제/목록) */
.notice_wrap .detail_actions {
	display:flex; justify-content:flex-end; gap:8px;
	margin:0 0 20px;
}
.notice_wrap .detail_actions a,
.notice_wrap .detail_actions button {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:80px; height:36px;
	padding:0 16px;
	font-size:14px; font-weight:500;
	border-radius:4px;
	text-decoration:none;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .detail_actions .btn_default {
	background:#fff;
	color:#444;
	border:1px solid #c7c7c7;
}
.notice_wrap .detail_actions .btn_default:hover {
	border-color:#999;
	background:#f7f7f7;
}
.notice_wrap .detail_actions .btn_primary {
	background:var(--color-point);
	color:#fff;
	border:1px solid var(--color-point);
}
.notice_wrap .detail_actions .btn_primary:hover {
	opacity:0.9;
}
.notice_wrap .detail_actions .btn_danger {
	background:#fff;
	color:#d9534f;
	border:1px solid #d9534f;
}
.notice_wrap .detail_actions .btn_danger:hover {
	background:#d9534f;
	color:#fff;
}

/* 연결된 자료 섹션 */
.notice_wrap .ref-section { margin:30px 0 20px; }
.notice_wrap .ref-section h3 {
	font-size:16px; font-weight:bold; color:#333;
	margin:0 0 12px;
}
.notice_wrap .ref-section .ref-list {
	display:flex; flex-wrap:wrap; gap:12px;
}
.notice_wrap .ref-section .ref-item {
	width:114px;
	background:#fff; border:1px solid #e5e5e5;
	border-radius:8px;
	padding:10px;
	transition:all 0.15s;
}
.notice_wrap .ref-section .ref-item:hover {
	border-color:var(--color-point);
	box-shadow:0 2px 8px rgba(0,0,0,0.06);
}
.notice_wrap .ref-section .ref-thumb {
	width:100%; aspect-ratio:1; overflow:hidden;
	background:#f4f4f4; border-radius:4px;
	margin-bottom:8px;
}
.notice_wrap .ref-section .ref-thumb a { display:block; height:100%; }
.notice_wrap .ref-section .ref-thumb img {
	width:100%; height:100%; object-fit:cover;
}
.notice_wrap .ref-section .ref-cate a {
	color:#3E5FAC; font-size:12px; font-weight:500;
	text-decoration:none;
}
.notice_wrap .ref-section .ref-name a {
	color:#222; font-size:13px; font-weight:500;
	text-decoration:none;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden; text-overflow:ellipsis;
	margin-top:2px;
	line-height:1.4;
	min-height:2.8em;
	word-break:break-all;
}

/* 관리자: 베스트 선정 버튼 (조회 옆 inline) */
.notice_wrap .notice_detail .detail_meta .btn_post_best {
	display:inline-flex; align-items:center;
	height:24px;
	padding:0 10px;
	color:#fff;
	font-size:12px; font-weight:600;
	text-decoration:none;
	border-radius:4px;
	cursor:pointer;
	border:none;
}
.notice_wrap .notice_detail .detail_meta .btn_post_best.cancel { background:#d9534f; }
.notice_wrap .notice_detail .detail_meta .btn_post_best.select { background:#337ab7; }
.notice_wrap .notice_detail .detail_meta .btn_post_best:hover { opacity:0.9; }

/* ============================================================
   댓글 영역 (PHP Reply.class 출력 마크업 오버라이드)
   ============================================================ */
.notice_wrap .commentwrap_new {
	width:1024px !important; box-sizing:border-box;
	padding:30px;
	border:1px solid #e5e5e5 !important; border-radius:10px;
	background:#fff !important;
	margin:36px 0 0;
}

/* 댓글 타이틀 (댓글 남기기 (N건) [정책]) — 회색박스 위 */
.notice_wrap .commenttitle {
	width:auto !important;
	margin:0 0 12px;
	padding:0;
	display:flex; align-items:center; gap:8px;
	font-size:15px; font-weight:bold; color:#222;
}
.notice_wrap .commenttitle br { display:none; }
.notice_wrap .commenttitle span,
.notice_wrap .commenttitle .FontC_orange {
	display:inline-block;
	font-size:13px; color:var(--color-point); font-weight:600;
}

/* 댓글정책 버튼 — 작성자명 input 옆 CSS 버튼 */
.notice_wrap .commentbox_new .commentwrite > div .policy_btn {
	position:relative;
	display:inline-flex; align-items:center; gap:4px;
	height:30px;
	padding:0 12px;
	margin-left:6px;
	background:#c0dff8;
	color:#1c3d5e; font-size:12px; font-weight:700;
	border:1px solid #c0dff8; border-radius:6px;
	text-decoration:none;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .commentbox_new .commentwrite > div .policy_btn:hover {
	background:#a8d0f0;
	border-color:#a8d0f0;
	color:#1c3d5e;
}
/* 정책 툴팁 (hover 시 오른쪽으로 표시, 버튼 top과 동일 시작) */
.notice_wrap .commentbox_new .commentwrite > div .policy_btn .policy_tip {
	display:none;
	position:absolute;
	left:calc(100% + 8px); top:0;
	z-index:10;
	min-width:240px;
	padding:10px 14px;
	background:#fff;
	color:#444;
	font-size:12px; font-weight:normal; line-height:1.6;
	border:1px solid #ddd;
	border-radius:6px;
	box-shadow:0 4px 12px rgba(0,0,0,0.08);
	white-space:normal;
}
.notice_wrap .commentbox_new .commentwrite > div .policy_btn:hover .policy_tip {
	display:block;
}

/* 댓글 작성 영역 */
.notice_wrap .commentbox_new {
	position:relative;
	width:100% !important; height:auto !important;
	margin:0 0 24px;
	padding:20px;
	background:#f7f7f7; border-radius:8px;
	box-sizing:border-box;
}
.notice_wrap .commentbox_new .commentwrite,
.notice_wrap .commentwrite_new {
	position:static !important; left:auto !important; top:auto !important;
	width:100% !important;
	display:flex; flex-wrap:wrap; gap:4px; align-items:stretch;
}

/* 작성자명 입력 행 — 라벨 + input 한 줄 */
.notice_wrap .commentbox_new .commentwrite > div {
	flex:0 0 100%;
	display:flex; align-items:center; gap:8px;
	margin:0;
	color:#444; font-size:13px;
}
.notice_wrap .commentbox_new .commentwrite > div input[type=textbox],
.notice_wrap .commentbox_new .commentwrite > div input[type=text] {
	height:32px;
	width:240px;
	padding:0 12px;
	border:1px solid #e0e0e0; border-radius:6px;
	background:#fff;
	font-size:13px; color:#222;
	box-sizing:border-box;
}
.notice_wrap .commentbox_new .commentwrite > div input[type=textbox]:focus,
.notice_wrap .commentbox_new .commentwrite > div input[type=text]:focus {
	outline:none;
	border-color:var(--color-point);
}

/* 댓글 본문 textarea — 작성자명 input 시작점부터 시작 (라벨 폭만큼 들여쓰기) */
.notice_wrap .formtextarea_new {
	flex:1 1 auto; min-width:0;
	width:auto !important; height:60px !important;
	padding:10px 14px;
	border:1px solid #e0e0e0; border-radius:6px;
	background:#fff;
	font-size:14px; line-height:1.5; color:#222;
	font-family:inherit;
	resize:vertical;
	box-sizing:border-box;
}
.notice_wrap .commentbox_new .commentwrite > textarea.formtextarea_new {
	margin-left:59px;        /* "작성자명 : " 라벨 폭만큼 들여쓰기 */
}
.notice_wrap .formtextarea_new:focus {
	outline:none;
	border-color:var(--color-point);
}
/* 댓글쓰기 a 태그 안의 이미지 → CSS 버튼 (commentbox/commentwrite/list 모두 통합) */
.notice_wrap .commentwrap_new a > img[alt="댓글쓰기"] {
	display:none !important;
}
.notice_wrap .commentwrap_new a:has(> img[alt="댓글쓰기"]) {
	display:inline-flex !important; align-items:center; justify-content:center;
	height:36px;
	padding:0 22px;
	margin-left:6px;
	background:var(--color-point); color:#fff;
	border:1px solid var(--color-point); border-radius:6px;
	font-size:14px; font-weight:500;
	text-decoration:none !important;
	vertical-align:middle;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .commentwrap_new a:has(> img[alt="댓글쓰기"])::before {
	content:"등록";
}
.notice_wrap .commentwrap_new a:has(> img[alt="댓글쓰기"]):hover {
	opacity:0.9;
}

/* 상위 댓글 작성 박스의 등록 버튼은 더 크게 (textarea 옆 풀 높이) */
.notice_wrap .commentbox_new .commentwrite > a:has(> img[alt="댓글쓰기"]) {
	flex:0 0 auto;
	align-self:stretch;
	height:auto;
	min-width:110px;
	padding:0 28px;
	margin-left:0;
	font-size:15px; font-weight:600;
	float:none !important;     /* panelReply가 .FR 붙여서 float 적용되는 거 차단 */
}

/* 댓글 정책 (p.FR) — 작성자명 input 오른쪽에 absolute 배치 (a.FR는 제외 — 등록 버튼) */
.notice_wrap .commentbox_new p.FR,
.notice_wrap .commentlist_new li p.FR {
	float:none !important;
	position:absolute;
	top:20px; right:20px;
	z-index:1;
	margin:0;
}
.notice_wrap .commentlist_new li p.FR {
	position:static !important;
	display:inline-flex; gap:4px;
	margin-left:auto;
}
.notice_wrap .commentbox_new p.FR a.tip {
	display:inline-block;
}
.notice_wrap .commentbox_new p.FR img {
	max-height:24px;
}

/* 댓글 목록 - 카드 형태 */
.notice_wrap .commentlist_new {
	width:100% !important;
	margin:0 !important; padding:0 !important;
	background:none !important;
	list-style:none !important;
}
.notice_wrap .commentlist_new li {
	width:100% !important; box-sizing:border-box;
	padding:16px 0 !important;
	margin:0 !important;
	background:transparent !important;
	border:none !important;
	border-bottom:1px solid #eee !important;
	border-radius:0 !important;
	list-style:none;
	overflow:visible !important;
}
.notice_wrap .commentlist_new li:last-child,
.notice_wrap .commentlist_new li.Last {
	margin-bottom:0 !important;
}
.notice_wrap .commentlist_new li strong {
	display:inline-block;
	color:#222 !important; font-weight:600 !important; font-size:14px;
	font-family:inherit !important;
}
/* 날짜 영역(strong 다음 텍스트) 톤다운 */
.notice_wrap .commentlist_new li {
	color:#999; font-size:12px;
}
.notice_wrap .commentlist_new li p {
	font-size:14px !important; line-height:1.6 !important; color:#333;
	margin:10px 0 12px !important;
	font-family:inherit !important;
	white-space:pre-wrap; word-break:break-word;
}

/* 댓글 헤더 영역 (작성자/날짜 옆 액션) */
.notice_wrap .commentlist_new li > span.marL10 {
	margin-left:8px !important;
	display:inline-flex; gap:4px;
	vertical-align:middle;
}
.notice_wrap .commentlist_new li > .FR {
	float:none !important;
	display:inline-flex; gap:4px;
	margin-top:8px;
}

/* 댓글 액션 버튼 공통 베이스 (삭제/신고/답글/공감/비공감) — 베스트는 별도 */
.notice_wrap .commentlist_new .btn_reply,
.notice_wrap .commentlist_new .btn_reply_on,
.notice_wrap .commentlist_new .btn_reply_delete,
.notice_wrap .commentlist_new .btn_reply_declare,
.notice_wrap .commentlist_new .btn_reply_recomm,
.notice_wrap .commentlist_new .btn_reply_unrecomm {
	display:inline-flex !important; align-items:center; gap:3px;
	height:26px;
	padding:0 10px !important;
	font-size:12px !important; font-weight:500;
	background:#fff !important;
	border:1px solid #e0e0e0 !important; border-radius:4px;
	text-decoration:none !important;
	cursor:pointer;
	box-sizing:border-box;
	line-height:1;
}

/* 카테고리별 색 매칭 (글자 + 보더 같은 톤 → 통일감 있는 구분) */
.notice_wrap .commentlist_new .btn_reply {
	color:#444 !important;
	border-color:#ccc !important;
}
/* 답글 있는 경우 — 강조 (파란 배경 + 진한 글자) */
.notice_wrap .commentlist_new .btn_reply_on {
	color:#1c3d5e !important;
	background:#c0dff8 !important;
	border-color:#c0dff8 !important;
	font-weight:600;
}
.notice_wrap .commentlist_new .btn_reply_on em {
	color:#3E5FAC !important;
}
.notice_wrap .commentlist_new .btn_reply_recomm {
	color:#2d8a4f !important;
	border-color:#b8d9c4 !important;
}
.notice_wrap .commentlist_new .btn_reply_unrecomm {
	color:#777 !important;
	border-color:#d6d6d6 !important;
}
.notice_wrap .commentlist_new .btn_reply_delete {
	color:#d9534f !important;
	border-color:#f0c1bf !important;
}
.notice_wrap .commentlist_new .btn_reply_declare {
	color:#d97a3a !important;
	border-color:#f4cfa8 !important;
}

/* 댓글 베스트 선정/취소 — 게시글 btn_post_best 스타일과 동일 */
.notice_wrap .commentlist_new .btn_reply_best {
	display:inline-flex !important; align-items:center;
	height:24px !important;
	padding:0 10px !important;
	margin-left:6px;
	color:#fff !important;
	font-size:12px !important; font-weight:600;
	text-decoration:none !important;
	border:none !important; border-radius:4px !important;
	line-height:1;
	box-sizing:border-box;
	cursor:pointer;
	/* background는 PHP 인라인 style(#337ab7 선정 / #d9534f 취소) 사용 */
}
.notice_wrap .commentlist_new .btn_reply_best span {
	color:#fff !important;
}
.notice_wrap .commentlist_new .btn_reply_best:hover {
	opacity:0.9;
}
.notice_wrap .commentlist_new .btn_reply em,
.notice_wrap .commentlist_new .btn_reply_on em,
.notice_wrap .commentlist_new .btn_reply_recomm em,
.notice_wrap .commentlist_new .btn_reply_unrecomm em {
	color:inherit !important; font-weight:700; font-style:normal;
	margin-left:3px;
}
/* basic.css의 흰색 글자 오버라이드 — span/em에 강제 컬러 */
.notice_wrap .commentlist_new .btn_reply_recomm span,
.notice_wrap .commentlist_new .btn_reply_unrecomm span,
.notice_wrap .commentlist_new .btn_reply_best span,
.notice_wrap .commentlist_new .btn_reply span,
.notice_wrap .commentlist_new .btn_reply_on span,
.notice_wrap .commentlist_new .btn_reply_delete span,
.notice_wrap .commentlist_new .btn_reply_declare span {
	color:inherit !important;
}
/* hover — 옅은 카테고리 배경으로 더 명확히 (보더는 진해짐) */
.notice_wrap .commentlist_new .btn_reply:hover,
.notice_wrap .commentlist_new .btn_reply_on:hover {
	background:#f4f4f4 !important; border-color:#999 !important;
}
.notice_wrap .commentlist_new .btn_reply_recomm:hover {
	background:#e8f5ec !important; border-color:#2d8a4f !important;
}
.notice_wrap .commentlist_new .btn_reply_unrecomm:hover {
	background:#f0f0f0 !important; border-color:#888 !important;
}
.notice_wrap .commentlist_new .btn_reply_delete:hover {
	background:#fcecec !important; border-color:#d9534f !important;
}
.notice_wrap .commentlist_new .btn_reply_declare:hover {
	background:#fdf3e8 !important; border-color:#d97a3a !important;
}
.notice_wrap .commentlist_new .btn_reply_best:hover { border-color:#b8862a !important; }

/* 닉네임/비번 input (모던 스타일) */
.notice_wrap .commentlist_new .formInput,
.notice_wrap .commentbox_new .formInput {
	height:32px !important;
	width:120px !important;
	padding:0 12px !important;
	border:1px solid #c7c7c7 !important; border-radius:6px;
	background:#fff;
	font-size:13px; color:#222;
	box-sizing:border-box;
	margin-right:6px !important;
	vertical-align:middle;
}
.notice_wrap .commentlist_new .formInput:focus,
.notice_wrap .commentbox_new .formInput:focus {
	outline:none;
	border-color:var(--color-point);
}

/* 답글 등록 버튼 (이미지 → CSS 버튼) */
.notice_wrap .commentlist_new a > img[alt="댓글쓰기"] {
	display:none !important;
}
.notice_wrap .commentlist_new a:has(> img[alt="댓글쓰기"]) {
	display:inline-flex !important; align-items:center; justify-content:center;
	width:110px;
	height:32px;
	padding:0;
	margin-left:6px;
	background:var(--color-point); color:#fff;
	border:1px solid var(--color-point); border-radius:6px;
	font-size:15px; font-weight:500;
	text-decoration:none !important;
	vertical-align:middle;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .commentlist_new a:has(> img[alt="댓글쓰기"])::before {
	content:"등록";
}
.notice_wrap .commentlist_new a:has(> img[alt="댓글쓰기"]):hover {
	opacity:0.9;
}

/* 답글 영역 textarea */
.notice_wrap .commentlist_new textarea.formtextarea_new {
	width:100% !important;
	font-size:13px;
	margin-top:10px;
}

/* 답글 목록 wrapper (sub_reply...의 첫 번째 div) — 입력된 답글들 들여쓰기 */
.notice_wrap .commentlist_new li [id^="sub_reply"] > div:first-child {
	margin-left:75px !important;
}

/* 댓글 정렬 영역 (vcReplySort 들어있는 .marB15) — 화면에서만 숨김 (JS 동작은 유지) */
.notice_wrap .commentwrap_new .marB15:has(select[name="vcReplySort"]),
.notice_wrap .commentwrap_new .marB15:has(select#vcReplySort),
.notice_wrap .commentwrap_new .marB15:has(.sort_tabs) {
	display:none !important;
}

/* 댓글 정렬 셀렉트박스 (vcReplySort) 관련 모든 커스텀 — 보류 (원복) */
/*
.notice_wrap .commentwrap_new .marB15 {
	display:flex !important;
	align-items:center;
	justify-content:flex-start;
	gap:10px;
	margin:0 0 14px !important;
}
.notice_wrap .commentwrap_new .marB15::before {
	content:"정렬";
	font-size:13px; color:#888;
	margin-right:2px;
}
.notice_wrap .commentwrap_new .marB15 select[name="vcReplySort"] {
	height:32px;
	padding:0 32px 0 12px;
	border:1px solid #ddd; border-radius:6px;
	background:#fff;
	font-size:13px; color:#444;
	cursor:pointer;
	box-sizing:border-box;
	appearance:none;
	-webkit-appearance:none;
	-moz-appearance:none;
	background-image:
		linear-gradient(45deg, transparent 50%, #888 50%),
		linear-gradient(135deg, #888 50%, transparent 50%);
	background-position:
		calc(100% - 14px) center,
		calc(100% - 9px) center;
	background-size:5px 5px;
	background-repeat:no-repeat;
}
.notice_wrap .commentwrap_new .marB15 select[name="vcReplySort"]:hover {
	border-color:#999;
}
.notice_wrap .commentwrap_new .marB15 select[name="vcReplySort"]:focus {
	outline:none;
	border-color:var(--color-point);
}

.notice_wrap .commentwrap_new .marB15 .sort_tabs {
	display:flex; align-items:center; gap:0;
}
.notice_wrap .commentwrap_new .marB15 .sort_tab {
	position:relative;
	padding:4px 12px;
	color:#888; font-size:13px;
	text-decoration:none;
	cursor:pointer;
}
.notice_wrap .commentwrap_new .marB15 .sort_tab + .sort_tab::before {
	content:"";
	position:absolute;
	left:-1px; top:50%;
	width:1px; height:11px;
	background:#ddd;
	transform:translateY(-50%);
}
.notice_wrap .commentwrap_new .marB15 .sort_tab.active {
	color:#222; font-weight:600;
}
.notice_wrap .commentwrap_new .marB15 .sort_tab:hover {
	color:var(--color-point);
}
*/

/* 답글 입력 wrapper (sub_reply...) — textarea + 등록 버튼 한 줄 flex
   상위 댓글 작성 영역(.commentbox_new)과 동일한 padding 적용해 textarea 폭 맞춤 */
.notice_wrap .commentlist_new li [id^="sub_reply"] > div:last-child {
	display:flex !important;
	gap:4px;
	align-items:stretch;
	padding:0 20px;
	box-sizing:border-box;
}
.notice_wrap .commentlist_new li [id^="sub_reply"] > div:last-child > textarea.formtextarea_new {
	flex:1 1 auto !important; min-width:0;
	width:auto !important;
	height:60px;
	margin-top:0;
	margin-left:59px;
}
.notice_wrap .commentlist_new li [id^="sub_reply"] > div:last-child > a:has(> img[alt="댓글쓰기"]) {
	flex:0 0 auto;
	align-self:stretch;
	height:auto;
	margin-left:0 !important;
}

/* panelReply 답글 영역 (.dom_sub_reply) — review/Reply.class와 동일한 모양으로
   !important 없음: 인라인 display:none이 우선 → 답글 버튼 토글 정상 동작 */
.notice_wrap .commentlist_new li .dom_sub_reply {
	display:flex; flex-wrap:wrap; gap:4px;
	padding:0 20px;
	box-sizing:border-box;
}
.notice_wrap .commentlist_new li .dom_sub_reply > div {
	flex:0 0 100%;
}
.notice_wrap .commentlist_new li .dom_sub_reply > div.marL10 {
	margin-left:75px !important;
}
.notice_wrap .commentlist_new li .dom_sub_reply > textarea.formtextarea_new {
	flex:1 1 auto !important; min-width:0;
	width:auto !important;
	height:60px !important;
	margin-top:0;
	margin-left:59px;
}
.notice_wrap .commentlist_new li .dom_sub_reply > a:has(> img[alt="댓글쓰기"]) {
	flex:0 0 auto; align-self:stretch;
	height:auto;
	width:110px;
	margin-left:0;
	float:none !important;
}

/* BEST 댓글 강조 */
.notice_wrap .commentlist_new[style*="eee"] {
	background:none !important;
	width:100% !important;
	padding:0 !important;
}
.notice_wrap .commentlist_new[style*="eee"] li {
	background:#fff8f5 !important;
	border-color:#ffd9c4 !important;
}


/* ============================================================
   평생교육원 강좌 리스트(.lecturewrap > .lectureTable)
   - notice_wrap 안에서 폭 100% + 모던 스타일 override
   ============================================================ */

/* notice_actionbar 좌측 메타(전체 N건 + 정렬) */
.notice_actionbar .left_meta { display:flex; align-items:center; gap:10px; }
.notice_actionbar .left_meta .total_count { font-weight:600; color:#333; font-size:14px; }
.notice_actionbar .left_meta .total_count .num { color:var(--color-point); }
.notice_actionbar .left_meta select {
	height:30px; padding:0 10px;
	border:1px solid #c7c7c7; border-radius:4px; font-size:13px;
	background:#fff;
}

/* lecturewrap이 게시판 컨테이너 안에서 폭 가득 차도록 */
.notice_wrap .lecturewrap { width:100%; }
.notice_wrap .lecturewrap .lecture_listwrap { width:100%; }

/* 강사소개 카드 (showTeacherPanel) */
.notice_wrap .lecturewrap .lecture_view .teacher_cards {
	display:flex; flex-direction:column; gap:16px;
	margin:14px 0 24px;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card {
	display:flex; gap:24px;
	padding:20px 24px;
	background:#fff;
	border:1px solid #e5e7eb; border-radius:12px;
	box-shadow:0 1px 4px rgba(0,0,0,0.03);
	transition:box-shadow 0.15s, border-color 0.15s;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card:hover {
	box-shadow:0 4px 12px rgba(0,0,0,0.06);
	border-color:#dde2eb;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_thumb {
	flex:0 0 120px;
	display:flex; flex-direction:column; align-items:center; gap:10px;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_thumb img {
	width:120px; height:160px;
	object-fit:cover; object-position:top;
	border-radius:8px; display:block;
	background:#f5f7fb;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_name {
	margin:0; font-size:15px; font-weight:700; color:#222;
	text-align:center;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_info {
	flex:1; min-width:0;
	display:flex; flex-direction:column; gap:12px;
	text-align:left;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_meta_row {
	display:flex; align-items:flex-start; gap:14px;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_label {
	flex:0 0 50px;
	padding:0;
	background:none;
	color:#888;
	font-size:13px; font-weight:600;
	text-align:left;
	margin-top:0;
}
.notice_wrap .lecturewrap .lecture_view .teacher_card .teacher_value {
	flex:1; min-width:0;
	font-size:14px; color:#444; line-height:1.6;
}

/* 수료증/자격증 안내 리스트 — 모던 카드 */
.notice_wrap .lecturewrap .lecture_view .cert_guide_list {
	list-style:none; padding:18px 22px; margin:14px 0 24px;
	background:#f7f9fc;
	border:1px solid #e2e8f0; border-radius:10px;
	display:flex; flex-direction:column; gap:8px;
}
.notice_wrap .lecturewrap .lecture_view .cert_guide_list li {
	display:flex; align-items:flex-start; gap:10px;
	margin:0; padding:0;
	font-size:14px; color:#333; line-height:1.5;
	text-align:left;
}
.notice_wrap .lecturewrap .lecture_view .cert_guide_list li i.fa-circle-check {
	color:var(--color-point);
	font-size:16px;
	margin-top:2px;
	flex:0 0 auto;
}
.notice_wrap .lecturewrap .lecture_view .cert_guide_list li span {
	flex:1; min-width:0;
}
.notice_wrap .lecturewrap .lecture_view .cert_guide_list li strong {
	color:var(--color-point); font-weight:700;
}

/* 안내 박스 (모던 info notice) */
.notice_wrap .lecture_notice_box {
	display:flex; align-items:flex-start; gap:12px;
	margin:10px 0 20px;
	padding:14px 18px;
	background:#f0f6ff;
	border-radius:6px;
	color:#333; font-size:13px; line-height:1.6;
}
.notice_wrap .lecture_notice_box i.fa-circle-info {
	color:var(--color-point);
	font-size:18px;
	margin-top:2px;
	flex:0 0 auto;
}
.notice_wrap .lecture_notice_box .lecture_notice_text { flex:1; min-width:0; }
.notice_wrap .lecture_notice_box .lecture_notice_text p {
	margin:0; padding:0;
}
.notice_wrap .lecture_notice_box .lecture_notice_text p + p { margin-top:4px; }
.notice_wrap .lecture_notice_box strong { color:var(--color-point); font-weight:700; }

/* 추천강의 영역(.lecture_recomwrap) — 모던 카드 그리드 */
.notice_wrap .lecture_recomwrap {
	width:100% !important;
	display:block !important;
	box-sizing:border-box;
	margin:10px 0 30px;
}
.notice_wrap .lecture_recomwrap .lecture_recom_title {
	font-size:20px; font-weight:700; color:#333; letter-spacing:-0.3px;
	margin:0 0 16px; padding:0 4px;
}
.notice_wrap .lecture_recomwrap .lecture_recom_title span {
	color:var(--color-point);
}
.notice_wrap .lecture_recomwrap ul.lecture_recombox {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:15px;
	list-style:none; padding:0; margin:0;
	width:100% !important;
	border-top:none !important;
}
.notice_wrap .lecture_recomwrap ul.lecture_recombox li {
	width:auto !important; height:auto !important;
	margin:0 !important; padding:0;
	float:none !important;
	list-style:none;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom {
	display:flex; flex-direction:column;
	width:auto !important; height:auto !important; min-height:0;
	margin:0; padding:0;
	background:#fff;
	border:1px solid #ececec !important; border-radius:14px;
	overflow:hidden;
	transition:transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom:hover {
	transform:translateY(-3px);
	box-shadow:0 8px 20px rgba(0,0,0,0.08);
	border-color:var(--color-point);
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dt {
	flex:0 0 auto; margin:0; padding:0; border:none;
	width:auto !important; height:auto !important;
	position:relative;
	background:#f5f7fb;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dt a {
	display:block; overflow:hidden;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dt img {
	width:100% !important; height:auto !important;
	aspect-ratio:170/133;
	object-fit:cover; display:block;
	transition:transform 0.3s ease;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom:hover dt img {
	transform:scale(1.04);
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd {
	flex:1 1 auto;
	margin:0; padding:12px 14px 14px;
	display:flex; flex-direction:column; gap:6px;
	width:auto !important; height:auto !important;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_iconbox {
	margin:0;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_tit {
	margin:0 !important;
	font-size:15px; font-weight:600; color:#222; line-height:1.4;
	width:auto !important; height:auto !important;
	min-height:42px; overflow:visible !important;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_tit a {
	color:#222; text-decoration:none;
	display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
	overflow:hidden;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_tit a:hover {
	color:var(--color-point);
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_txt {
	display:flex; align-items:center; gap:8px;
	margin:0; padding:0;
	width:auto !important;
	font-size:13px; color:#555; line-height:1.4;
	overflow:visible !important;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_div {
	display:inline-flex !important; align-items:center; justify-content:center;
	flex:0 0 auto;
	width:auto !important; min-width:56px;
	padding:2px 8px;
	background:#f3f5f9; color:#666;
	font-size:11px; font-weight:500;
	border-radius:4px; text-align:center;
}
.notice_wrap .lecture_recomwrap dl.lecture_recom dd .lecture_recom_txt .FontC_redB {
	font-size:14px;
}

/* 강좌 리스트 테이블 */
.notice_wrap .lecturewrap table.lectureTable {
	width:100%;
	border-top:2px solid var(--color-point);
}
.notice_wrap .lecturewrap table.lectureTable tbody tr.TLine { border-top:0; }
.notice_wrap .lecturewrap table.lectureTable tbody tr th,
.notice_wrap .lecturewrap table.lectureTable tbody tr td {
	padding:15px; vertical-align:top;
}
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC { vertical-align:middle; }
.notice_wrap .lecturewrap table.lectureTable tbody tr td .lecture_iconbox { margin-top:0; }

/* 썸네일 이미지 — 영역 가득, 원본 비율 유지하며 잘림 */
.notice_wrap .lecturewrap table.lectureTable tbody tr th img {
	width:100%; height:auto;
	aspect-ratio:102/78;
	object-fit:cover; object-position:center;
	display:block; border-radius:4px;
}

/* 강좌 제목 */
.notice_wrap .lecturewrap table.lectureTable tbody tr td .lecture_tit { font-size:14px; }

/* 신청하기/찜하기 버튼 — data_sharing의 자료등록/저작권 공지 톤 */
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btn,
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btnL {
	display:flex; align-items:center; justify-content:center;
	width:100px; height:32px; margin:0 auto;
	padding:0 14px; font-size:13px; font-weight:500;
	border-radius:4px; box-sizing:border-box;
	text-decoration:none; line-height:1;
}
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btn.ASK {
	background:var(--color-point); color:#fff;
	border:1px solid var(--color-point);
}
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btn.ASK:hover { opacity:0.9; }
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btnL.BMU {
	background:#fff; color:#444;
	border:1px solid #c7c7c7;
}
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btnL.BMU:hover {
	border-color:var(--color-point); color:var(--color-point);
}
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a + a { margin-top:5px !important; }
.notice_wrap .lecturewrap table.lectureTable tbody tr td.taC a.lecture_btnL.BMU.is_interested i.fa-check {
	margin-right:4px; color:var(--color-point);
}


/* ============================================================
   평생교육원 강좌 상세보기(.lecturewrap > .lecture_topbox)
   ============================================================ */

/* 상단 강좌 카드 — lecture.css의 width:760/inline-block/float 모두 override */
.notice_wrap .lecturewrap dl.lecture_topbox {
	display:flex !important; gap:24px; padding:20px 24px; margin:0 0 24px;
	width:auto !important; box-sizing:border-box;
	align-items:center;
	background:#fff;
	border:1px solid #e5e7eb !important; border-radius:12px;
	box-shadow:0 2px 8px rgba(0,0,0,0.04);
	position:relative;
}
.notice_wrap .lecturewrap dl.lecture_topbox dt {
	flex:0 0 188px;
	width:auto !important; height:auto !important;
	max-width:188px; max-height:147px;
	margin:0 !important; padding:0;
	float:none !important; border:none !important;
	overflow:hidden;
}
.notice_wrap .lecturewrap dl.lecture_topbox dt img {
	width:100% !important; height:auto !important;
	max-height:147px;
	object-fit:contain; border-radius:8px; display:block;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd {
	flex:1; min-width:0;
	width:auto !important; height:auto !important;
	margin:0 !important; padding:0;
	float:none !important;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd .lecture_iconbox {
	margin:0 0 10px;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd > p.fontW {
	margin:0 0 15px; font-size:18px !important; font-weight:700; color:#222; line-height:1.3;
}
/* new_online/view.htm: 강좌 제목 .fontW.fonTS18 — 마진 제거 */
.notice_wrap .lecturewrap dl.lecture_topbox dd > p.fontW.fonTS18 { margin:0 !important; }
/* new_online/view.htm: 수강시간/강의구성 ul — 위쪽 여백 */
.notice_wrap .lecturewrap dl.lecture_topbox dd > ul { margin-top:10px !important; }
.notice_wrap .lecturewrap dl.lecture_topbox dd .lecture_top_notice {
	margin:0 0 8px; padding:5px;
	background:#fff8f3; border-radius:6px;
	font-size:12px;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd .lecture_top_notice.VH { display:none; }
.notice_wrap .lecturewrap dl.lecture_topbox dd ul {
	list-style:none; padding:0; margin:0;
	display:flex; flex-direction:column; gap:4px;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li {
	display:flex; align-items:center; gap:8px;
	font-size:13px; color:#444; line-height:1.4;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li .lecture_top_div {
	flex:0 0 60px; color:#888; font-size:12px; font-weight:500;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li .lecture_top_div img { display:none; }
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li strong { color:#333; font-weight:500; }
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li a { color:var(--color-point); text-decoration:none; }
.notice_wrap .lecturewrap dl.lecture_topbox dd ul li a:hover { text-decoration:underline; }

/* dl.lecture_topbox 자식 order 정렬 — dt(썸넬) → dd(정보) → 액션버튼 영역 */
.notice_wrap .lecturewrap dl.lecture_topbox > dt { order:1; }
.notice_wrap .lecturewrap dl.lecture_topbox > dd:not(.lecture_action_dd) { order:2; }
.notice_wrap .lecturewrap dl.lecture_topbox > dd.lecture_action_dd,
.notice_wrap .lecturewrap dl.lecture_topbox > p.lecture_top_btnbox { order:3; }

/* 신청/찜하기 버튼 영역 — 카드 우측 별도 컨테이너(dd.lecture_action_dd 또는 p.lecture_top_btnbox), 세로 중앙정렬 */
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox {
	flex:0 0 auto;
	display:flex !important; flex-direction:column; gap:5px;
	justify-content:center; align-items:center;
	align-self:stretch;
	width:auto !important; height:auto !important;
	margin:0 !important; padding:0 4px 0 16px;
	border-left:1px solid #eee;
	position:static !important;
	right:auto !important; bottom:auto !important; top:auto !important; left:auto !important;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btn,
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btnL,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btn,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnL,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnV {
	display:flex !important; align-items:center; justify-content:center;
	width:120px !important; min-width:120px; height:32px !important; margin:0 !important;
	padding:0 12px !important;
	font-size:13px; font-weight:500; line-height:1 !important;
	border-radius:4px; box-sizing:border-box;
	text-decoration:none;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btn.ASK,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btn.ASK {
	background:var(--color-point) !important; color:#fff !important;
	border:1px solid var(--color-point) !important;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btn.ASK:hover,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btn.ASK:hover { opacity:0.9; }
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btnL.BMU,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnL.BMU {
	background:#fff !important; color:#444 !important;
	border:1px solid #c7c7c7 !important;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btnL.BMU:hover,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnL.BMU:hover {
	border-color:var(--color-point) !important; color:var(--color-point) !important;
}
.notice_wrap .lecturewrap dl.lecture_topbox dd.lecture_action_dd a.lecture_btnL.BMU.is_interested i.fa-check,
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnL.BMU.is_interested i.fa-check {
	margin-right:4px; color:var(--color-point);
}
/* LCSP(수료증) 버튼은 ASK와 동일 톤 */
.notice_wrap .lecturewrap dl.lecture_topbox p.lecture_top_btnbox a.lecture_btnV.LCSP {
	background:var(--color-point) !important; color:#fff !important;
	border:1px solid var(--color-point) !important;
}

/* 탭 메뉴 — community/notice의 planEdu_tabwrap 스타일과 동일 톤 (좌측 정렬) */
.notice_wrap ul.lecture_tabbox {
	display:flex !important; justify-content:flex-start;
	list-style:none; padding:0;
	width:100% !important; height:38px !important;
	margin:30px 0 24px !important;
	border-bottom:2px solid #3E5FAC;
	background:none !important;
	position:relative;
}
.notice_wrap ul.lecture_tabbox::after { content:""; display:block; clear:both; }
.notice_wrap ul.lecture_tabbox li {
	float:none !important;
	flex:0 0 auto;
	width:160px !important; height:38px !important;
	margin:0 !important; padding:0 !important;
	border-top:1px solid #c7c7c7;
	border-right:1px solid #c7c7c7;
	border-left:none;
	border-bottom:none !important;
	background:transparent !important;
	text-align:center;
	box-sizing:border-box;
	line-height:1 !important;
	font-weight:normal;
}
.notice_wrap ul.lecture_tabbox li.First {
	border-left:1px solid #c7c7c7;
}
.notice_wrap ul.lecture_tabbox li a {
	display:block !important; padding:0;
	width:100% !important; height:100% !important;
	color:#555 !important; font-size:14px; font-weight:normal; line-height:36px !important;
	text-decoration:none;
	background:none !important; border:none !important;
}
.notice_wrap ul.lecture_tabbox li.Choice {
	background-color:#3E5FAC !important;
	border:none !important;
	height:38px !important;
	padding:0 !important;
	font-weight:bold;
}
.notice_wrap ul.lecture_tabbox li.Choice a {
	color:#fff !important; line-height:38px !important; font-weight:bold;
}

/* lectureViewTable 안 버튼 — 미리보기/교안다운로드/수강하기/수강완료 모던 톤 통일 */
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btn,
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL {
	display:inline-flex !important; align-items:center; justify-content:center;
	width:auto !important; min-width:80px; height:30px !important;
	padding:0 14px !important; margin:0;
	font-size:13px; font-weight:500; line-height:1 !important;
	border-radius:4px; box-sizing:border-box;
	text-decoration:none;
}
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btn.ASK {
	background:var(--color-point) !important; color:#fff !important;
	border:1px solid var(--color-point) !important;
}
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btn.ASK:hover { opacity:0.9; }
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL.PRV {
	background:#fff !important; color:#444 !important;
	border:1px solid #c7c7c7 !important;
}
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL.PRV:hover {
	border-color:var(--color-point) !important; color:var(--color-point) !important;
}
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL.RGST {
	background:var(--color-point) !important; color:#fff !important;
	border:1px solid var(--color-point) !important;
}
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL.RGST:hover { opacity:0.9; }
.notice_wrap .lecturewrap .lectureViewTable a.lecture_btnL.ORANGE {
	background:#fafafa !important; color:#888 !important;
	border:1px solid #e0e0e0 !important;
	cursor:default;
}

/* 본문 영역 — lecture.css의 width:800/inline-block/border-bottom override (에디터 작성 그대로) */
.notice_wrap .lecturewrap .lecture_viewbox {
	display:block !important;
	width:100% !important;
	padding:10px 0 30px; line-height:1.7; color:#333; font-size:14px;
	min-height:200px;
	box-sizing:border-box;
	border-bottom:none !important;
	overflow:hidden;
}
.notice_wrap .lecturewrap .lecture_viewbox::after { content:""; display:block; clear:both; }
.notice_wrap .lecturewrap .lecture_viewbox img { max-width:100%; height:auto; }
/* 각 섹션(.lecture_view)이 이전 섹션과 겹치지 않도록 clear */
.notice_wrap .lecturewrap .lecture_viewbox > .lecture_view {
	clear:both;
	position:relative; z-index:1;
}

/* 본문 안 신청하기 박스(span.btn_apply 감싼 div)에 아래 여백 */
.notice_wrap .lecturewrap .lecture_viewbox > div:has(span.btn_apply),
.notice_wrap .lecturewrap .lecture_viewbox > div:has(a.btn_apply) {
	margin-bottom:50px !important;
}

/* 섹션 헤더(.lecture_putbox) — planEdu_tabwrap 스타일로 통일 */
.notice_wrap .lecturewrap .lecture_putbox {
	width:100% !important; height:38px !important;
	margin:30px 0 24px !important; padding:0 !important;
	border-bottom:2px solid #3E5FAC;
	position:relative;
	overflow:visible;
}
.notice_wrap .lecturewrap .lecture_putbox::after { content:""; display:block; clear:both; }
.notice_wrap .lecturewrap .lecture_putbox .lecture_put {
	float:left;
	display:block !important;
	width:160px !important; height:38px !important;
	margin:0 !important; padding:0 !important;
	background-color:#3E5FAC !important;
	color:#fff !important; font-weight:bold;
	font-size:14px; line-height:38px !important;
	text-align:center;
	border:none !important;
	box-sizing:border-box;
}

/* lecture_view 섹션 — 패딩 제거 + 위쪽 여백 + 가운데 정렬 */
.notice_wrap .lecturewrap .lecture_view { padding:0 !important; margin-top:40px; text-align:center; }

/* 강좌안내 본문(txContents)은 사용자가 작성한 HTML이라
   안에 .lecture_view / .lecture_view01 / .lecture_putbox 같은 시스템 클래스가 박혀있어
   외부 모던 스타일이 적용되면 깨짐. 본문 wrapper 안에서는 모두 무력화. */
.notice_wrap .lecturewrap .lecture_intro_content { text-align:left; }
.notice_wrap .lecturewrap .lecture_intro_content .lecture_view,
.notice_wrap .lecturewrap .lecture_intro_content .lecture_view01,
.notice_wrap .lecturewrap .lecture_intro_content .lecture_putbox {
	all:revert;
	margin:0 !important; padding:0 !important;
	background:none !important; border:none !important;
	position:static !important;
	display:block !important;
	width:auto !important; height:auto !important;
	box-shadow:none !important; border-radius:0 !important;
	overflow:visible !important;
	z-index:auto !important;
}
.notice_wrap .lecturewrap .lecture_intro_content .lecture_putbox::before,
.notice_wrap .lecturewrap .lecture_intro_content .lecture_putbox::after { content:none !important; }
.notice_wrap .lecturewrap .lecture_intro_content ul.lecture_tabbox { display:none !important; }
.notice_wrap .lecturewrap .lecture_intro_content img { max-width:100%; height:auto; }

/* 카카오 지도 컨테이너 — inline width:780px override */
.notice_wrap .lecturewrap .lecture_view [id^="lecture_map_"] {
	width:100% !important;
	box-sizing:border-box;
}

/* lecture_putbox 안에 lecture_tabbox(탭)가 들어간 경우, 자체 보더 제거하고 탭이 보더를 그림 */
.notice_wrap .lecturewrap .lecture_putbox:has(.lecture_tabbox) {
	height:auto !important;
	border-bottom:none !important;
	margin:30px 0 0 !important;
}
.notice_wrap .lecturewrap .lecture_putbox:has(.lecture_tabbox) .lecture_tabbox {
	margin:0 !important;
}
/* 탭 바로 뒤의 테이블은 상단 라인 중복 제거 + 간격 제거 */
.notice_wrap .lecturewrap .lecture_putbox:has(.lecture_tabbox) + .basicTable_sub,
.notice_wrap .lecturewrap .lecture_putbox + table.basicTable_sub {
	border-top:0 !important;
	margin-top:0 !important;
}

/* lecture_putbox 우측 액션 버튼(수강후기 작성 등) — sticky 탭 위에 위치하도록 z-index 강제 */
.notice_wrap .lecturewrap .lecture_putbox .lecture_btnV {
	position:absolute !important;
	right:0; top:50%;
	transform:translateY(-50%);
	display:inline-flex !important; align-items:center; justify-content:center;
	height:30px !important; width:auto !important;
	padding:0 14px !important;
	background:var(--color-point) !important; color:#fff !important;
	font-size:13px; font-weight:500; line-height:1 !important;
	border-radius:4px; border:none !important;
	text-decoration:none;
	z-index:20;
	pointer-events:auto;
}
.notice_wrap .lecturewrap .lecture_putbox .lecture_btnV:hover { opacity:0.9; }

/* 수강후기 등 섹션 내부 테이블(.basicTable_sub)을 notice_table 톤으로 */
.notice_wrap .lecturewrap .lecture_view .basicTable_sub {
	width:100% !important;
	border-collapse:collapse;
	border-top:2px solid #3E5FAC;
	table-layout:fixed;
}
.notice_wrap .lecturewrap .lecture_view .basicTable_sub thead th {
	height:44px; background:#f7f7f7; border-bottom:1px solid #ddd;
	font-size:14px; font-weight:bold; color:#333;
}
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody th,
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody td {
	height:42px; border-bottom:1px solid #eee;
	font-size:14px; color:#444; text-align:center;
	padding:0 8px;
}
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody td a {
	color:#333; text-decoration:none;
}
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody td a:hover {
	color:var(--color-point); text-decoration:underline;
}
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody tr:hover { background:#fafafa; }
/* 신청자보기 테이블은 컬럼이 좁아서 패딩 축소 */
.notice_wrap .lecturewrap #lecture_apply .basicTable_sub tbody th,
.notice_wrap .lecturewrap #lecture_apply .basicTable_sub tbody td {
	padding:5px 3px !important;
	line-height:18px !important;
	height:auto !important;
	font-size:12px !important;
}
/* 빈 상태 메시지("등록된 수강후기가 없습니다.") */
.notice_wrap .lecturewrap .lecture_view .basicTable_sub tbody td[colspan] {
	font-size:13px;
	padding:50px 0;
	color:#888;
	height:auto;
}

/* 강좌 상세 하단 목록 버튼 */
.notice_wrap .lecturewrap > .detail_actions {
	margin:40px 0 30px !important;
}

/* "수강후기 더 보기" 버튼 — 우측 정렬 + 화살표 아이콘 */
.notice_wrap .lecturewrap .lecture_view .review_more_wrap {
	display:flex; justify-content:center;
	margin:20px 0 0;
}
.notice_wrap .lecturewrap .lecture_view .review_more {
	display:inline-flex; align-items:center; gap:6px;
	height:34px; padding:0 16px;
	border:1px solid #c7c7c7; border-radius:6px;
	color:#444; font-size:13px; font-weight:500;
	text-decoration:none;
	transition:all 0.15s;
}
.notice_wrap .lecturewrap .lecture_view .review_more:hover {
	border-color:var(--color-point); color:var(--color-point);
	background:#f7f9fc;
}
.notice_wrap .lecturewrap .lecture_view .review_more i { font-size:12px; }

/* lecture_tabbox 탭 클릭 시 부드러운 스크롤 + 페이지 스크롤 시 탭바 sticky */
.notice_wrap ul.lecture_tabbox {
	position:sticky;
	top:0; z-index:10;
	background:#fff;
}
html { scroll-behavior:smooth; }


/* ============================================================
   고객센터 정책/약관 페이지 (privacy.htm, service.htm)
   ============================================================ */

.notice_wrap .privacy_wrap,
.notice_wrap .terms_wrap { margin:10px 0 60px; }

/* 큰 챕터 헤더 (service.htm) */
.notice_wrap .terms_chapter {
	margin:30px 0 14px;
	padding:0 0 8px;
	font-size:20px; font-weight:700; color:#333;
	letter-spacing:-0.3px;
}
.notice_wrap .terms_chapter:first-child { margin-top:0; }

/* 조/조항 섹션 공통 */
.notice_wrap .privacy_section,
.notice_wrap .terms_section { margin:0 0 28px; }

.notice_wrap .privacy_title,
.notice_wrap .terms_title {
	display:flex; align-items:center; gap:10px;
	margin:0 0 14px; padding:0 0 12px;
	font-size:18px; font-weight:700; color:#222;
	border-bottom:1px solid #e2e8f0;
}
.notice_wrap .terms_title { font-size:16px; margin:0 0 12px; padding:0 0 10px; }
.notice_wrap .privacy_title::before,
.notice_wrap .terms_title::before {
	content:""; display:inline-block;
	width:4px; height:18px;
	background:var(--color-point); border-radius:2px;
}
.notice_wrap .terms_title::before { height:16px; }

/* 본문 공통 */
.notice_wrap .privacy_body,
.notice_wrap .terms_body {
	padding:0 4px;
	font-size:14px; color:#444; line-height:1.8;
}
.notice_wrap .privacy_body > p,
.notice_wrap .terms_body > p { margin:0 0 10px; }
.notice_wrap .privacy_body a,
.notice_wrap .terms_body a { color:var(--color-point); text-decoration:none; }
.notice_wrap .privacy_body a:hover,
.notice_wrap .terms_body a:hover { text-decoration:underline; }

/* privacy.htm 리스트 */
.notice_wrap .privacy_body > ul,
.notice_wrap .privacy_body > ol { padding-left:18px; margin:0; }
.notice_wrap .privacy_body > ul > li,
.notice_wrap .privacy_body > ol > li { margin:0 0 10px; padding:0; list-style:disc; }
.notice_wrap .privacy_body > ul > li ul { padding-left:18px; margin:8px 0 0; }
.notice_wrap .privacy_body > ul > li ul li { list-style:none; color:#555; font-size:13px; margin:0 0 4px; }

/* privacy.htm 서브 블록 (쿠키 사용 목적 등) */
.notice_wrap .privacy_body .privacy_subblock {
	margin:10px 0 0; padding:14px 18px;
	background:#f7f9fc; border:1px solid #e2e8f0; border-radius:6px;
}
.notice_wrap .privacy_body .privacy_subblock p:first-child {
	font-size:14px; font-weight:600; color:var(--color-point);
	margin:0 0 6px;
}
.notice_wrap .privacy_body .privacy_subblock p { font-size:13px; color:#444; margin:0; line-height:1.7; }

/* privacy.htm 민원서비스 테이블 */
.notice_wrap .privacy_contact_table {
	width:100%; border-collapse:collapse;
	border-top:2px solid var(--color-point);
	margin:14px 0;
}
.notice_wrap .privacy_contact_table th {
	background:#f7f9fc;
	padding:12px 8px; height:44px;
	font-size:14px; font-weight:600; color:#333;
	border-bottom:1px solid #e2e8f0;
	text-align:center;
}
.notice_wrap .privacy_contact_table td {
	padding:12px 8px;
	font-size:14px; color:#444;
	border-bottom:1px solid #eee;
	text-align:center;
}

/* service.htm 리스트 */
.notice_wrap .terms_body > ol { padding:0; margin:0; list-style:none; counter-reset:tm; }
.notice_wrap .terms_body > ol > li {
	position:relative; padding:0 0 0 26px; margin:0 0 8px;
}
.notice_wrap .terms_body > ol > li ol,
.notice_wrap .terms_body > ol > li ul {
	margin:8px 0 0; padding-left:18px; list-style:none;
}
.notice_wrap .terms_body > ol > li ol li,
.notice_wrap .terms_body > ol > li ul li {
	margin:0 0 4px; color:#555; font-size:13px;
}

/* service.htm 부조항 라벨 (1. 약관의 효력 / 2. 약관의 변경 등) */
.notice_wrap .terms_subtitle {
	margin:20px 0 10px;
	font-size:14px; font-weight:700; color:var(--color-point);
}


/* ============================================================
   회사소개 페이지 (aboutus/index.htm)
   ============================================================ */
.notice_wrap .aboutus_intro {
	margin:10px 0 60px;
	font-family:'Pretendard','Noto Sans KR','Nanum Gothic',sans-serif;
}
.notice_wrap .aboutus_logo {
	text-align:center;
	margin:0 0 50px;
}
.notice_wrap .aboutus_logo img { max-width:100%; height:auto; }
.notice_wrap .aboutus_section {
	margin:0 auto 28px;
	padding:24px 28px;
	background:#fff;
	border:1px solid #ececec;
	border-radius:12px;
	box-shadow:0 1px 4px rgba(0,0,0,0.03);
	line-height:1.8; color:#444; font-size:15px;
}
.notice_wrap .aboutus_section:first-of-type {
	background:linear-gradient(135deg, #f0f6ff 0%, #fafbfc 100%);
	border-color:#dde7f5;
}
.notice_wrap .aboutus_brand {
	font-size:22px; font-weight:800; color:var(--color-point);
	display:inline-block; margin-right:6px;
}
.notice_wrap .aboutus_section p { margin:0 0 6px; }
.notice_wrap .aboutus_section p:last-child { margin-bottom:0; }

/* ============================================================
   연혁 페이지 (aboutus/history.htm)
   ============================================================ */
.notice_wrap .history_tabs {
	display:flex !important; justify-content:flex-start;
	list-style:none; padding:0;
	width:100%; height:38px;
	margin:40px 0 24px;
	border-bottom:2px solid var(--color-point);
	background:none;
	position:relative;
}
.notice_wrap .history_tabs li {
	float:none;
	flex:0 0 auto;
	width:160px; height:28px;
	margin:0; padding:10px 0 0;
	border-top:1px solid #c7c7c7;
	border-right:1px solid #c7c7c7;
	border-left:none;
	border-bottom:none;
	background:transparent;
	text-align:center;
	box-sizing:content-box;
	line-height:1;
	cursor:pointer;
	color:#555; font-size:14px; font-weight:normal;
}
.notice_wrap .history_tabs li:first-child { border-left:1px solid #c7c7c7; }
.notice_wrap .history_tabs li:hover { color:#222; }
.notice_wrap .history_tabs li.On {
	background-color:var(--color-point);
	color:#fff; font-weight:bold;
	border:none;
	height:38px;
	padding:0;
	line-height:38px;
}

.notice_wrap .history_table {
	width:100%; border-collapse:collapse;
	margin:0 0 50px;
	position:relative;
}
.notice_wrap .history_table::before {
	content:""; position:absolute;
	left:90px; top:8px; bottom:8px;
	width:2px;
	background:#e2e8f0;
}
.notice_wrap .history_table tr { vertical-align:top; }
.notice_wrap .history_table th {
	width:130px; padding:14px 0 14px 8px;
	font-size:22px; font-weight:800; color:var(--color-point);
	text-align:left;
	position:relative;
}
.notice_wrap .history_table th::after {
	content:""; position:absolute;
	left:85px; top:24px;
	width:12px; height:12px;
	background:#fff;
	border:3px solid var(--color-point);
	border-radius:50%;
	box-sizing:border-box;
	z-index:1;
}
.notice_wrap .history_table td {
	padding:14px 0 14px 50px;
	font-size:14px; color:#444; line-height:1.7;
}
.notice_wrap .history_table td p { margin:0 0 4px; }
.notice_wrap .history_table td p:last-child { margin-bottom:0; }
.notice_wrap .history_table td p .fontW { color:var(--color-point); font-weight:700; margin-right:4px; }

/* ============================================================
   찾아오시는 길 페이지 (aboutus/location.htm)
   ============================================================ */
.notice_wrap .location_wrap { margin:10px 0 60px; }

.notice_wrap .location_map {
	width:100%;
	border:1px solid #ececec; border-radius:12px;
	overflow:hidden;
	box-shadow:0 1px 4px rgba(0,0,0,0.04);
	margin:0 0 40px;
	background:#f5f7fb;
}
.notice_wrap .location_map .root_daum_roughmap {
	width:100% !important;
	border:none !important;
}

.notice_wrap .contact_card {
	padding:28px 32px;
	background:#fff;
	border:1px solid #ececec; border-radius:12px;
	box-shadow:0 1px 4px rgba(0,0,0,0.04);
}
.notice_wrap .contact_title {
	display:flex; align-items:center; gap:8px;
	margin:0 0 22px;
	font-size:22px; font-weight:800; color:var(--color-point);
	letter-spacing:-0.3px;
}
.notice_wrap .contact_title i { font-size:20px; }

.notice_wrap .contact_list {
	display:flex; flex-direction:column; gap:14px;
	margin:0; padding:0; list-style:none;
}
.notice_wrap .contact_item {
	display:flex; align-items:flex-start; gap:16px;
	padding:14px 0;
	border-bottom:1px dashed #ececec;
	font-size:15px; color:#333; line-height:1.6;
}
.notice_wrap .contact_item:last-child { border-bottom:none; }
.notice_wrap .contact_label {
	flex:0 0 110px;
	display:flex; align-items:center; gap:8px;
	color:#666; font-weight:600;
}
.notice_wrap .contact_label i {
	width:28px; height:28px;
	display:inline-flex; align-items:center; justify-content:center;
	background:var(--color-primary); color:var(--color-point);
	border-radius:50%;
	font-size:13px;
}
.notice_wrap .contact_value { flex:1; color:#222; }


/* ============================================================
   FAQ / 수강후기 아코디언 (faq_list)
   - customer/faq, lecture/review/index 공통
   ============================================================ */

/* FAQ 검색 박스 */
.notice_wrap .faq_search {
	display:flex; align-items:center; gap:8px;
	margin:10px 0 30px; padding:14px 18px;
	background:#f7f9fc; border:1px solid #e2e8f0; border-radius:8px;
}
.notice_wrap .faq_search select {
	width:90px; height:36px; padding:0 10px;
	border:1px solid #d0d5dd; border-radius:6px;
	font-size:13px; background:#fff;
}
.notice_wrap .faq_search input[type=text] {
	flex:1; height:36px; padding:0 12px;
	border:1px solid #d0d5dd; border-radius:6px;
	font-size:14px; background:#fff;
}
.notice_wrap .faq_search input[type=submit] {
	height:36px; padding:0 22px;
	background:var(--color-point); color:#fff;
	border:1px solid var(--color-point); border-radius:6px;
	font-size:14px; font-weight:500; cursor:pointer;
}
.notice_wrap .faq_search input[type=submit]:hover { opacity:0.9; }

/* FAQ 카테고리 탭 (알약형) */
.notice_wrap .faq_categories {
	display:flex; flex-wrap:wrap; gap:8px;
	margin:0 0 20px;
}
.notice_wrap .faq_categories a {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:80px; height:36px; padding:0 16px;
	background:#fff; color:#555;
	border:1px solid #d0d5dd; border-radius:18px;
	font-size:13px; font-weight:500;
	text-decoration:none;
	transition:all 0.15s;
}
.notice_wrap .faq_categories a:hover {
	border-color:var(--color-point); color:var(--color-point);
}
.notice_wrap .faq_categories a.active {
	background:var(--color-point); color:#fff;
	border-color:var(--color-point);
}

/* FAQ 아코디언 리스트 */
.notice_wrap .faq_list {
	border-top:2px solid var(--color-point);
	margin-bottom:20px;
}
.notice_wrap .faq_item {
	border-bottom:1px solid #e5e7eb;
	background:#fff;
}
.notice_wrap .faq_question {
	display:flex; align-items:center; gap:12px;
	padding:16px 20px;
	font-size:14px; color:#333; line-height:1.5;
	cursor:pointer;
	transition:background 0.15s;
}
.notice_wrap .faq_question:hover { background:#fafbfc; }
.notice_wrap .faq_q_icon {
	flex:0 0 28px;
	display:inline-flex; align-items:center; justify-content:center;
	width:28px; height:28px;
	background:var(--color-primary); color:var(--color-point);
	border-radius:50%;
	font-size:13px; font-weight:700;
}
.notice_wrap .faq_category_tag {
	flex:0 0 auto; padding:3px 10px;
	background:#f0f4fb; color:var(--color-point);
	border-radius:4px;
	font-size:12px; font-weight:600;
}
.notice_wrap .faq_question_text { flex:1; min-width:0; }
.notice_wrap .faq_toggle {
	flex:0 0 auto; color:#999; font-size:13px;
	transition:transform 0.2s, color 0.15s;
}
.notice_wrap .faq_item.open .faq_toggle {
	transform:rotate(180deg); color:var(--color-point);
}
.notice_wrap .faq_item.open .faq_question { background:#f7f9fc; }
.notice_wrap .faq_answer {
	display:none;
	padding:18px 20px 22px 64px;
	background:#fafbfc;
	border-top:1px dashed #e5e7eb;
	font-size:14px; color:#444; line-height:1.7;
}
.notice_wrap .faq_item.open .faq_answer { display:block; }
.notice_wrap .faq_empty {
	padding:60px 0; text-align:center;
	color:#888; font-size:14px;
}

/* 수강후기 — faq_question 우측 메타(글쓴이/날짜) */
.notice_wrap .faq_question .review_meta {
	flex:0 0 auto;
	display:flex; align-items:center; gap:14px;
	color:#888; font-size:13px;
}
.notice_wrap .faq_question .review_meta .meta_name { font-weight:500; color:#666; }
.notice_wrap .faq_question .review_meta .meta_date { color:#999; }


/* ============================================================
   수강후기 리스트 테이블 아코디언 (lecture/review/index.htm)
   ============================================================ */
.notice_wrap .review_table tbody tr.review_row { cursor:pointer; }
.notice_wrap .review_table tbody tr.review_row:hover { background:#fafbfc; }
.notice_wrap .review_table tbody tr.review_row.open { background:#f7f9fc; }
.notice_wrap .review_table tbody tr.review_row td.tit { position:relative; padding-right:30px; }
.notice_wrap .review_table tbody tr.review_row td.tit .review_toggle {
	position:absolute; right:12px; top:50%; transform:translateY(-50%);
	color:#bbb; font-size:12px;
	transition:transform 0.2s, color 0.15s;
}
.notice_wrap .review_table tbody tr.review_row.open td.tit .review_toggle {
	transform:translateY(-50%) rotate(180deg);
	color:var(--color-point);
}
.notice_wrap .review_table tbody tr.review_answer_row td.review_answer {
	padding:20px 24px 20px 71px;
	background:#fafbfc;
	border-bottom:1px solid #e5e7eb;
	font-size:14px; color:#444; line-height:1.7;
	text-align:left;
	white-space:normal;
	height:auto;
}
.notice_wrap .review_table tbody tr.review_answer_row td.review_answer img { max-width:100%; height:auto; }
.notice_wrap .review_table tbody tr.review_answer_row td.review_answer .detail_lecture {
	display:inline-block;
	margin:0 0 10px;
	padding:0;
	background:none;
	color:var(--color-point);
	font-size:12px; font-weight:600;
	border-radius:0;
}
.notice_wrap .review_table tbody tr.review_answer_row td.review_answer .review_content {
	margin:0;
}


/* ============================================================
   페이지 공통 유틸 (community 페이지)
   ============================================================ */
.notice_wrap .btnMemInfo { cursor:pointer; }
.notice_wrap .memA {
	display:inline-block;
	padding:0 5px;
	font-size:7px;
	background-color:#cc3300;
	color:#fff;
	border-radius:2px;
	margin-right:4px;
	vertical-align:middle;
}
.notice_wrap .notice_searchbox .filter_row + .filter_row { margin-top:10px; }

/* ============================================================
   자료공유 상세 — 자료 미리보기 썸네일 페이저 (data_sharing_view.htm)
   ============================================================ */
.notice_wrap .thumb_wrap {
	position:relative;
	background:#fafafa;
	border:1px solid #eee;
	border-radius:12px;
	width:fit-content;
	max-width:100%;
	margin:30px auto 0;
	padding:20px 56px;
	text-align:center;
	overflow:hidden;
	box-sizing:border-box;
}
.notice_wrap .thumb_wrap ul {
	display:flex; justify-content:center; gap:10px;
	list-style:none; margin:0; padding:0;
}
.notice_wrap .thumb_wrap ul li {
	float:none; width:100px; margin:0;
	flex:0 0 100px;
}
.notice_wrap .thumb_wrap ul li a {
	position:relative; display:block;
	width:100%;
	aspect-ratio:3/4;
	border:2px solid #e5e5e5; border-radius:6px;
	overflow:hidden; background:#fff;
	transition:all 0.15s;
}
.notice_wrap .thumb_wrap ul li a:hover {
	border-color:var(--color-point);
	transform:translateY(-2px);
	box-shadow:0 4px 10px rgba(0,0,0,0.06);
}
.notice_wrap .thumb_wrap ul li a.active {
	border-color:var(--color-point);
	box-shadow:0 0 0 3px rgba(62,95,172,0.15);
}
.notice_wrap .thumb_wrap ul li img {
	width:100%; height:100%;
	object-fit:cover; object-position:top;
	display:block;
}
.notice_wrap .thumb_wrap ul li img.no-img {
	position:absolute;
	top:50%; left:50%;
	transform:translate(-50%, -50%);
	width:auto; height:auto;
	max-width:100%; max-height:100%;
	object-fit:contain;
	background:transparent;
}
.notice_wrap .thumb_wrap ul li a .thumb_pager {
	position:absolute; left:0; bottom:0;
	background:rgba(34,34,34,0.7);
	padding:4px 0;
	text-align:center; color:#fff;
	width:100%; font-size:12px;
}
.notice_wrap .thumb_wrap a.thumbnavi {
	position:absolute !important; top:50% !important;
	width:32px !important; height:32px !important;
	margin:0 !important;
	transform:translateY(-50%);
	border-radius:50%;
	background:#fff;
	border:1px solid #ddd;
	display:flex !important; align-items:center; justify-content:center;
	cursor:pointer;
	transition:border-color 0.15s, background 0.15s;
	box-shadow:0 2px 6px rgba(0,0,0,0.06);
	padding:0;
	z-index:2;
	text-decoration:none;
}
.notice_wrap .thumb_wrap a.thumbnavi:hover {
	border-color:var(--color-point);
	background:#f5f9ff;
}
.notice_wrap .thumb_wrap a.thumbnavi.prev { left:12px; }
.notice_wrap .thumb_wrap a.thumbnavi.next { right:12px; }
.notice_wrap .thumb_wrap a.thumbnavi > img {
	display:none !important;
	width:0 !important; height:0 !important;
	visibility:hidden;
}
.notice_wrap .thumb_wrap a.thumbnavi::before {
	content:"";
	display:block;
	width:7px; height:7px;
	border-top:2px solid #444;
	border-right:2px solid #444;
	transition:border-color 0.15s;
}
.notice_wrap .thumb_wrap a.thumbnavi.prev::before {
	transform:rotate(-135deg); margin-left:3px;
}
.notice_wrap .thumb_wrap a.thumbnavi.next::before {
	transform:rotate(45deg); margin-right:3px;
}
.notice_wrap .thumb_wrap a.thumbnavi:hover::before { border-color:var(--color-point); }

/* ============================================================
   무료강의 및 세미나 — 리스트 td 세로 가운데 정렬 (seminar/index.htm)
   ============================================================ */
.notice_wrap .lecturewrap table.lectureTable.seminar_list tbody tr td { vertical-align:middle !important; }

/* ============================================================
   광고문의 — 문의전화 박스 (customer/question/index.htm)
   ============================================================ */
.notice_wrap .question_callbox {
	display:flex; align-items:center; gap:14px;
	margin:0 0 20px; padding:18px 22px;
	background:linear-gradient(135deg, var(--color-primary) 0%, #d9ecfb 100%);
	border-radius:10px;
	color:var(--color-point);
}
.notice_wrap .question_callbox i.fa-headset { font-size:28px; }
.notice_wrap .question_callbox .question_call_text { font-size:14px; font-weight:500; }
.notice_wrap .question_callbox .question_call_number { font-size:22px; font-weight:800; letter-spacing:0.5px; }
