@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.tab-7 ul { width:870px; }
.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:96px; 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; }

/* ============================================================
   원운영 home_view (가정통신문 / 부모교육 상세)
   ============================================================ */

/* 상세 메타 박스 (community/review의 detail_header 패딩과 동일) */
.notice_wrap .view_metabox {
	position:relative;
	border-top:2px solid var(--color-point);
	border-bottom:1px solid #e5e7eb;
	padding:22px 24px;
}
.notice_wrap .view_metabox .view_title {
	font-size:20px; font-weight:700; color:#222;
	margin:0 0 12px;
}
.notice_wrap .view_metabox .view_meta {
	display:flex; flex-wrap:wrap; gap:18px;
	font-size:13px; color:#666;
}
.notice_wrap .view_metabox .view_meta span strong { color:#222; margin-left:4px; }

/* 첨부 파일 박스 */
.notice_wrap .view_files {
	margin:10px 0 0; padding:12px 16px;
	background:#f7f9fc; border:1px solid #e2e8f0; border-radius:6px;
	font-size:13px;
	text-align:right;
}
.notice_wrap .view_files div + div { margin-top:6px; }
.notice_wrap .view_files .btnDown {
	cursor:pointer;
	color:#3E5FAC; font-weight:600;
}
.notice_wrap .view_files .btnDown img { vertical-align:middle; }

/* 본문 */
.notice_wrap .view_content {
	padding:24px 4px; min-height:200px;
	line-height:1.8; color:#222; font-size:15px;
}
.notice_wrap .view_content img { max-width:100%; height:auto; }

/* 본문 하단 썸네일 */
.notice_wrap .view_thumb { text-align:center; margin:20px 0; }
.notice_wrap .view_thumb img { width:400px; max-width:100%; }

/* 좋아요 (community detail_like 스타일과 동일) */
.notice_wrap .detail_like {
	text-align:center;
	padding:30px 0 10px;
}
.notice_wrap .detail_like .btn-like-img {
	width:96px;
	cursor:pointer;
	transition:transform 0.2s ease;
}
.notice_wrap .detail_like .btn-like-img.off:hover {
	transform:translateY(-8px);
}

/* 출처 */
/* 출처 — 박스 없이 라벨 chip + 본문 텍스트 */
.notice_wrap .view_source {
	margin-top:20px; padding:0;
	background:none; border:none; border-radius:0;
	display:inline-flex; align-items:center; gap:8px;
	font-size:13px; color:#555;
	line-height:1.5;
}
.notice_wrap .view_source strong {
	display:inline-flex; align-items:center;
	height:22px;
	padding:0 10px;
	margin:0;
	background:rgba(62, 95, 172, 0.08);
	color:var(--color-point);
	font-size:12px; font-weight:700;
	letter-spacing:0.2px;
	border-radius:4px;
}

/* view_metabox 안 관리자 수정 버튼 — view_meta 높이에 영향 안 주도록 absolute */
.notice_wrap .view_metabox .meta_admin_edit {
	position:absolute; top:14px; right:0;
}
.notice_wrap .view_metabox .meta_admin_edit .btn_write {
	display:inline-flex; align-items:center; height:28px;
	padding:0 12px; border-radius:5px;
	background:var(--color-point); color:#fff;
	font-size:12px; font-weight:500; text-decoration:none;
	line-height:1;
}
.notice_wrap .view_metabox .meta_admin_edit .btn_write:hover { opacity:0.9; }

/* 원운영 답글 영역 (won_subreply) — community/review .dom_sub_reply 와 다른 구조 */
.notice_wrap .commentlist_new li .won_subreply {
	border-top:1px dashed #cfcfcf;
	margin-bottom:10px;
}
.notice_wrap .commentlist_new li .won_subreply > div:first-child {
	margin-left:75px;
	padding:0 0 15px 0;
}
.notice_wrap .commentlist_new li .won_subreply .sub_reply_contents {
	padding:5px 0; width:100%;
}
.notice_wrap .commentlist_new li .won_subreply .sub_reply_contents > p {
	padding-left:18px;
}


/* ============================================================
   원운영 home (가정통신문 / 부모교육 목록) — 이달의 자료
   ============================================================ */

/* 영아/유아 라벨 */
.notice_wrap .wrapAgeTop {
	display:inline-block; padding:4px 14px;
	border-radius:13px; color:#fff;
	font-size:13px; font-weight:bold;
}
.notice_wrap .wrapAgeTop-L { background-color:#ff72d0; }
.notice_wrap .wrapAgeTop-H { background-color:#43a4ff; }

/* 이달의 자료 카드 그리드 */
.notice_wrap .today_section {
	position:relative;
	margin:0 0 30px;
	padding:20px;
	background:#f8fafc; border:1px solid #e5e7eb; border-radius:10px;
}
.notice_wrap .today_section .today_col {
	display:flex; flex-wrap:wrap; gap:15px 25px; justify-content:center;
}
.notice_wrap .today_section .today_col + .today_col { margin-top:18px; }

/* sub=03 (부모교육) — 영아/유아 today_col 한 줄로 나란히 */
.notice_wrap .today_section.today_section-split {
	display:flex; gap:0;
	justify-content:center; align-items:flex-start;
}
.notice_wrap .today_section.today_section-split .today_col {
	flex:0 0 auto; min-width:0;
}
.notice_wrap .today_section.today_section-split .today_col + .today_col {
	margin-top:0;
}
.notice_wrap .today_section .today_age_label {
	width:100%; text-align:center;
}
.notice_wrap .today_section .today_item { width:150px; }
.notice_wrap .today_section .today_item a {
	display:block; position:relative;
	border-radius:8px; overflow:hidden;
	border:1px solid #e3e3e3; text-decoration:none;
	transition:transform .2s ease, box-shadow .2s ease;
}
.notice_wrap .today_section .today_item a:hover {
	transform:translateY(-4px);
	box-shadow:0 10px 20px rgba(62,95,172,0.18);
}
.notice_wrap .today_section .today_item img {
	width:100%; height:212px; object-fit:cover; display:block;
}
.notice_wrap .today_section .today_item .today_label {
	position:absolute; left:0; right:0; bottom:0;
	background:rgba(0,0,0,0.6); color:#fff;
	text-align:center; padding:8px 4px; font-size:12px;
	line-height:1.4;
}

/* AI 버튼 — today_section 밖 위 우측, 높이 차지 안 함 */
.notice_wrap .ai-newsletter-btn {
	position:relative; z-index:2;
	top:-60px;
	margin:0 0 -54px;
}

/* 부모교육 연간 계획안 버튼 — actionbar 안 셀렉트 옆 */
.notice_wrap .notice_actionbar .btn_year_plan {
	display:inline-flex; align-items:center;
	height:30px;
	margin-left:10px; padding:0 14px;
	background:var(--color-point); border:1px solid var(--color-point);
	color:#fff;
	border-radius:4px; text-decoration:none; font-size:13px;
	cursor:pointer;
	box-sizing:border-box;
	transition:transform 0.15s ease, box-shadow 0.15s ease;
}
.notice_wrap .notice_actionbar .btn_year_plan:hover {
	transform:translateY(-2px);
	box-shadow:0 4px 10px rgba(0,0,0,0.18);
}
/* ============================================================
   원운영 note (알림장 도우미) — 카테고리 그리드
   ============================================================ */
.notice_wrap .contents-lists {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:1.8rem;
	margin:0; padding:0;
	list-style:none;
}
.notice_wrap .contents-lists > li {
	position:relative;
	margin:0;
	background:none;
}
.notice_wrap .contents-lists > li.best::after {
	content:""; display:block;
	background:url('/images/renewal/edudata_iconbest.png') no-repeat;
	background-size:contain;
	width:38px; height:38px;
	position:absolute; top:-3px; left:-3px;
	z-index:1;
}
.notice_wrap .contents-lists > li > a {
	display:block;
	width:100%;
	aspect-ratio: 63 / 43;
	cursor:pointer;
	border:1px solid #e3e3e3; border-radius:8px;
	overflow:hidden;
	background:#fff;
	transition:transform .2s ease, box-shadow .2s ease;
}
.notice_wrap .contents-lists > li > a:hover {
	transform:translateY(-4px);
	box-shadow:0 10px 20px rgba(62,95,172,0.18);
}
.notice_wrap .contents-lists > li > a img {
	width:100%; height:100%;
	object-fit:contain;
	display:block;
}
.notice_wrap .contents-lists > li.no-result {
	grid-column: 1 / -1;
	text-align:center; padding:4rem 0;
	color:#888; font-size:1.1rem;
}

/* 알림장 매달 추가 안내문 */
.notice_wrap .note_expl {
	margin:10px 0 14px;
	color:#d9534f; font-size:13px; font-weight:500;
	text-align:right;
}

/* note 카테고리 탭 — 모든 li 125px 고정 */
.notice_wrap .planEdu_tabbox.note-tap > li {
	flex:0 0 125px; width:125px;
}
/* note 페이지 한정: notice_search 수직 보정 (absolute 유지하고 top만 2px) */
.notice_wrap .planEdu_tabwrap:has(.note-tap) > .notice_search {
	top:2px;
}
/* ============================================================
   원운영 problem (문제행동 대처방법) — 목록
   ============================================================ */

/* 안내 팝업 트리거 버튼 (액션바 안) */
.notice_wrap .notice_actionbar .btnAbout {
	display:inline-flex; align-items:center;
	height:32px;
	padding:0 14px;
	border:1px solid #FAE0D4; color:#555;
	background:#fff;
	font-size:13px; font-weight:bold;
	border-radius:4px;
	cursor:pointer;
	box-sizing:border-box;
}
.notice_wrap .notice_actionbar .btnAbout:hover { background:#fff5ee; }

/* 목록 카드 — 썸네일 좌측 + 텍스트 우측 가로형 */
.notice_wrap .problem_list {
	list-style:none;
	margin:0; padding:0;
	border-top:1px solid #cccac8;
}
.notice_wrap .problem_list > li {
	display:flex; gap:20px;
	padding:18px 10px;
	border-bottom:1px solid #cccac8;
}
.notice_wrap .problem_list .problem_thumb {
	flex:0 0 240px;
	height:140px;
	background:#f7f9fc;
	border-radius:8px;
	display:flex; align-items:center; justify-content:center;
	overflow:hidden;
}
.notice_wrap .problem_list .problem_thumb img {
	max-width:100%; max-height:100%;
	object-fit:contain;
}
.notice_wrap .problem_list .problem_body {
	flex:1 1 0; min-width:0;
	display:flex; flex-direction:column; justify-content:center;
}
.notice_wrap .problem_list .problem_title {
	font-size:18px; font-weight:bold; color:#222;
	margin:0 0 10px;
}
.notice_wrap .problem_list .problem_title a { color:inherit; text-decoration:none; }
.notice_wrap .problem_list .problem_title a:hover { color:var(--color-point); }
.notice_wrap .problem_list .problem_excerpt {
	font-size:14px; line-height:1.6; color:#555;
	margin:0;
}
.notice_wrap .problem_list .problem_excerpt a { color:inherit; text-decoration:none; }


/* ============================================================
   원운영 problem_view (문제행동 대처방법) — 상세
   ============================================================ */

/* 섹션 박스 (궁금해요 / 특징 / 원인 / 개입 등) */
.notice_wrap .problem_section {
	margin:20px 0;
	border:1px solid #e5e7eb;
	border-radius:8px;
	overflow:hidden;
	background:#fff;
}
.notice_wrap .problem_section .problem_section_title {
	margin:0;
	padding:14px 18px;
	background:#f8fafc; border-bottom:1px solid #e5e7eb;
	font-size:16px; font-weight:bold; color:#222;
}
.notice_wrap .problem_section .problem_section_body {
	padding:18px;
	font-size:14px; line-height:1.7; color:#333;
}

/* 궁금해요 — 썸네일 좌측 + 텍스트 우측 가로 */
.notice_wrap .problem_qna {
	display:flex; gap:20px;
	align-items:center;
}
.notice_wrap .problem_qna .qna_thumb {
	flex:0 0 240px;
	background:#fff;
}
.notice_wrap .problem_qna .qna_thumb img {
	width:100%; max-height:140px;
	object-fit:contain;
	border-radius:8px;
	display:block;
}
.notice_wrap .problem_qna .qna_text {
	flex:1 1 0; min-width:0;
	font-size:15px; line-height:1.7;
}

/* 원인/개입 — 항목 리스트 */
.notice_wrap .problem_section .problem_item {
	margin:0 0 14px;
}
.notice_wrap .problem_section .problem_item:last-child { margin-bottom:0; }
.notice_wrap .problem_section .problem_item .problem_item_title {
	font-weight:bold; color:#222;
	margin:0 0 6px;
}
.notice_wrap .problem_section .problem_item .problem_item_body {
	margin-left:10px;
}

/* 출처 */
.notice_wrap .problem_section .problem_credit > div { margin-bottom:6px; }
.notice_wrap .problem_section .problem_credit strong { color:#222; margin-right:4px; }

/* 활동자료/관련상품 슬라이더 — notice_wrap 안 폭 조정 */
.notice_wrap .problem_section .program_referbox {
	position:relative;
	width:100%;
	padding:0 30px;
	box-sizing:border-box;
}
.notice_wrap .problem_section .program_referbox .arrboxF,
.notice_wrap .problem_section .program_referbox .arrboxB {
	position:absolute; top:50%;
	transform:translateY(-50%);
	margin:0; cursor:pointer;
}
.notice_wrap .problem_section .program_referbox .arrboxF { left:0; }
.notice_wrap .problem_section .program_referbox .arrboxB { right:0; }
.notice_wrap .problem_section .program_refer_thum {
	list-style:none;
	overflow:hidden;
	margin:0; padding:0;
	width:100%;
}
.notice_wrap .problem_section .program_refer_thum > div {
	display:flex; gap:4px;
}
.notice_wrap .problem_section .program_refer_thum > div > li {
	flex:0 0 183px;
	list-style:none;
}
.notice_wrap .problem_section .refer_thumb {
	display:block; width:183px; height:180px;
	border:1px solid #E2E2E2;
	display:flex; align-items:center; justify-content:center;
	background:#fff;
}
.notice_wrap .problem_section .refer_thumb img {
	max-width:173px; max-height:170px;
	object-fit:contain;
}
.notice_wrap .problem_section .refer_caption {
	margin:10px 0 0;
	text-align:center;
	font-size:13px; line-height:1.5;
}
.notice_wrap .problem_section .refer_caption a { color:#222; text-decoration:none; }
.notice_wrap .problem_section .refer_caption .refer_cate { font-weight:bold; color:#cc0000; margin-right:4px; }
.notice_wrap .problem_section .refer_price {
	margin:6px 0 0;
	text-align:center;
	font-size:13px; font-weight:bold; color:#cc0000;
}

/* problem-tap — 모든 li 130px 고정 */
.notice_wrap .planEdu_tabbox.problem-tap > li {
	flex:0 0 130px; width:130px;
}

/* problem.htm 안내 팝업 (.wrapAbout) — 페이지 전용 layout */
.wrapAbout {
	display:none;
	position:fixed;
	z-index:99998;
	padding:10px;
	width:1236px;
	height:822px;
}
.wrapAbout .closePopAbout_wrap {
	position:absolute;
	cursor:pointer;
	margin-left:1224px;
	margin-top:-28px;
}

/* note 페이지 한정: layer_popup.css override (note 페이지 BodyBox에 .page-wonnote 부여) */
.page-wonnote .--layer-popup-wrap { z-index:9999999999 !important; }
.page-wonnote .blur { backdrop-filter:blur(10px) !important; }
.page-wonnote .--layer-popup-bg { background-color:inherit !important; }
.page-wonnote .--layer-popup-main {
	flex-direction:column; box-sizing:border-box;
	padding:4.5rem !important; gap:1.5rem;
	border:1px solid #000; border-radius:10px;
	box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
.page-wonnote .--layer-popup-main > div { display:flex; font-size:1.25rem; box-sizing:border-box; }
.page-wonnote .--layer-popup-main > div a.copy-text {
	text-decoration:none; cursor:pointer;
	padding:.5rem 2rem;
	background-color:#3b90ea; color:#fff;
}


/* ============================================================
   원운영 note (알림장) — popup 모던 스타일
   layer_popup container에 .won-note-popup modifier가 붙으면 적용
   ============================================================ */
.--layer-popup-container.won-note-popup {
	border-radius:16px !important;
	box-shadow:0 24px 60px rgba(0, 0, 0, 0.2), 0 8px 16px rgba(0, 0, 0, 0.08) !important;
	background:#fff !important;
	overflow:hidden;
	max-width:90vw;
}
.--layer-popup-container.won-note-popup .--layer-popup-main {
	display:block !important;
	padding:0 !important;
	width:100%;
	height:auto;
}

/* 본문 그리드 (썸네일 좌 + 텍스트/액션 우) */
.won-note-popup-body {
	display:flex; gap:24px;
	padding:32px 36px;
}
.won-note-popup-thumb {
	flex:0 0 240px;
	background:linear-gradient(135deg, #f8fafc 0%, #eef2f7 100%);
	border-radius:12px;
	padding:20px;
	display:flex; align-items:center; justify-content:center;
	min-height:240px;
}
.won-note-popup-thumb img {
	max-width:100%; max-height:220px;
	object-fit:contain;
	display:block;
}
.won-note-popup-content {
	flex:1 1 0; min-width:0;
	display:flex; flex-direction:column;
	gap:20px;
	padding-right:15px;
}
.won-note-popup-text {
	flex:1 1 auto;
	margin:0;
	font-size:15px; line-height:1.75; color:#333;
	letter-spacing:0;
	word-break:keep-all;
}

/* 하단 액션 — 복사하기 버튼 */
.won-note-popup-actions {
	display:flex; justify-content:flex-end;
	padding-top:16px;
	border-top:1px solid #f0f0f0;
}
.won-note-popup-copy {
	display:inline-flex; align-items:center; gap:8px;
	height:40px;
	padding:0 22px;
	background:var(--color-point);
	color:#fff !important;
	border:none; border-radius:8px;
	font-size:14px; font-weight:600;
	text-decoration:none !important;
	cursor:pointer;
	transition:opacity 0.15s ease, transform 0.15s ease;
}
.won-note-popup-copy img { width:16px; height:auto; }
.won-note-popup-copy:hover {
	opacity:0.92;
	transform:translateY(-1px);
}

/* 우상단 닫기 버튼 (원형) */
.won-note-popup-close {
	position:absolute;
	top:15px; right:15px;
	width:36px; height:36px;
	display:flex; align-items:center; justify-content:center;
	background:rgba(0, 0, 0, 0.05);
	border:none; border-radius:50%;
	cursor:pointer;
	color:#444; font-size:18px;
	z-index:2;
	transition:background 0.15s ease, transform 0.15s ease;
}
.won-note-popup-close:hover {
	background:rgba(0, 0, 0, 0.1);
	transform:scale(1.05);
}

/* 복사완료 토스트 — popup 가운데 띄움 */
.won-note-popup-copied {
	position:fixed;
	top:50%; left:50%;
	transform:translate(-50%, -50%);
	padding:12px 24px;
	background:rgba(0, 0, 0, 0.85);
	color:#fff;
	border-radius:8px;
	font-size:14px; font-weight:600;
	z-index:9999999999;
	display:none;
	pointer-events:none;
}

/* 좁은 화면 대응 */
@media (max-width: 720px) {
	.won-note-popup-body { flex-direction:column; padding:24px; gap:20px; }
	.won-note-popup-thumb { flex:0 0 auto; min-height:200px; }
}

/* ============================================================
   problem_view 활동자료 / 관련상품 슬라이더 — month.htm 풍 카드
   기존 program_referbox 룰을 덮어씀
   ============================================================ */

/* 슬라이더 컨테이너 — 화살표와 카드 사이 여유 */
.notice_wrap .problem_section .program_referbox {
	padding:8px 48px;
	margin:0;
}

/* 좌우 화살표 — 모던 원형 버튼 */
.notice_wrap .problem_section .program_referbox .arrboxF,
.notice_wrap .problem_section .program_referbox .arrboxB {
	width:36px; height:36px;
	display:flex; align-items:center; justify-content:center;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:50%;
	box-shadow:0 2px 8px rgba(0,0,0,0.06);
	transition:background 0.2s ease, border-color 0.2s ease;
}
.notice_wrap .problem_section .program_referbox .arrboxF { left:4px; }
.notice_wrap .problem_section .program_referbox .arrboxB { right:4px; }
.notice_wrap .problem_section .program_referbox .arrboxF img,
.notice_wrap .problem_section .program_referbox .arrboxB img {
	width:14px; height:auto;
}
.notice_wrap .problem_section .program_referbox .arrboxF:hover,
.notice_wrap .problem_section .program_referbox .arrboxB:hover {
	background:var(--color-point);
	border-color:var(--color-point);
}
.notice_wrap .problem_section .program_referbox .arrboxF:hover img,
.notice_wrap .problem_section .program_referbox .arrboxB:hover img {
	filter:brightness(0) invert(1);
}

/* 카드 컨테이너 padding — hover transform 잘림 방지 */
.notice_wrap .problem_section .program_refer_thum {
	padding:8px 0;
}

/* 카드 — 책표지 비율 + 라운드 + 호버 효과 */
.notice_wrap .problem_section .refer_thumb {
	display:flex; align-items:center; justify-content:center;
	width:183px; height:200px;
	padding:14px;
	background:linear-gradient(180deg, #ffffff 0%, #f9fafc 100%);
	border:1px solid #e8ecf2;
	border-radius:12px;
	box-sizing:border-box;
	transition:transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
	overflow:hidden;
}
.notice_wrap .problem_section .refer_thumb:hover {
	transform:translateY(-4px);
	box-shadow:0 12px 24px rgba(62, 95, 172, 0.15);
	border-color:var(--color-point);
}
.notice_wrap .problem_section .refer_thumb img {
	max-width:100%;
	max-height:100%;
	object-fit:contain;
	transition:transform 0.25s ease;
}
.notice_wrap .problem_section .refer_thumb:hover img {
	transform:scale(1.04);
}

/* 캡션 — 카테고리 칩 + 2줄 ellipsis */
.notice_wrap .problem_section .refer_caption {
	margin:12px 0 0;
	padding:0 4px;
	text-align:left;
	font-size:13px; line-height:1.5; color:#333;
	min-height:42px;
}
.notice_wrap .problem_section .refer_caption a {
	display:block;
	color:#333;
	text-decoration:none;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
}
.notice_wrap .problem_section .refer_caption a:hover { color:var(--color-point); }
.notice_wrap .problem_section .refer_caption .refer_cate {
	display:inline-block;
	padding:2px 8px;
	margin:0 4px 4px 0;
	background:#fef2f2;
	color:#dc2626;
	border-radius:4px;
	font-size:11px; font-weight:700;
	line-height:1.4;
}

/* 가격 — 강조 라벨 */
.notice_wrap .problem_section .refer_price {
	margin:6px 0 0;
	padding:0 4px;
	text-align:left;
	font-size:15px; font-weight:700; color:#dc2626;
	letter-spacing:-0.2px;
}
/* ============================================================
   newplan_filewrap — 슬라이드 필요없을 때(5개 이하) 가운데 정렬
   ============================================================ */
/* .newplan_filewrap.newplan_filewrap-static 으로 specificity 강화 — 100% 폭 룰이 .newplan_filewrap .newplan_filebox{width:auto}에 안 덮이게 */
.notice_wrap .newplan_filewrap.newplan_filewrap-static .newplan_file_content {
	padding-left:0; padding-right:0;
}
.notice_wrap .newplan_filewrap.newplan_filewrap-static .newplan_filebox {
	text-align:center;
	width:100% !important;
}
.notice_wrap .newplan_filewrap.newplan_filewrap-static .newplan_filebox > div {
	display:inline-block;
	width:auto !important;
	margin:0 auto;
	font-size:0;
}
.notice_wrap .newplan_filewrap.newplan_filewrap-static .newplan_filebox li {
	float:none !important;
	display:inline-block;
	vertical-align:top;
	font-size:14px;
}
/* ============================================================
   newplan_filewrap — notice_wrap(1024) 안에서 폭 100%, 썸네일 비율 유지
   ============================================================ */
.notice_wrap .newplan_filewrap {
	width:100% !important;
	box-sizing:border-box;
}
.notice_wrap .newplan_filewrap .newplan_file_top {
	width:auto !important;
	box-sizing:border-box;
}
.notice_wrap .newplan_filewrap .newplan_file_content {
	box-sizing:border-box;
}
.notice_wrap .newplan_filewrap .newplan_filebox {
	width:auto !important;
	max-width:100%;
	box-sizing:border-box;
}
/* 화살표 위치는 컨테이너 폭과 무관하게 좌우 끝 고정 */
.notice_wrap .newplan_filewrap .newplan_file_arrL { left:8px; }
.notice_wrap .newplan_filewrap .newplan_file_arrR { right:8px; }

/* 썸네일 이미지 비율 유지 (강제 정사각형 늘림 방지) */
.notice_wrap .newplan_filewrap .newplan_filelist dt {
	display:flex; align-items:center; justify-content:center;
	overflow:hidden;
	background:#fff;
	box-sizing:border-box;
}
.notice_wrap .newplan_filewrap .newplan_filelist dt img {
	width:auto !important; height:auto !important;
	max-width:100%; max-height:100%;
	object-fit:contain;
}
/* problem_view — 슬라이더/섹션 다음 목록 버튼 위 여백 */
.notice_wrap .newplan_filewrap + .detail_actions,
.notice_wrap .problem_section + .detail_actions {
	margin-top:30px;
}
/* ============================================================
   원운영 teacher (교사교육) — 카드 그리드 (3열, 세로 카드)
   ============================================================ */
.notice_wrap .teacher_grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:20px;
	list-style:none;
	margin:20px 0 0; padding:0;
}
.notice_wrap .teacher_grid > li {
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:10px;
	overflow:hidden;
	transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.notice_wrap .teacher_grid > li:hover {
	transform:translateY(-4px);
	box-shadow:0 12px 24px rgba(62, 95, 172, 0.12);
	border-color:var(--color-point);
}
.notice_wrap .teacher_grid .teacher_thumb {
	display:block;
	position:relative;
	width:100%;
	aspect-ratio:4 / 3;
	background:#f7f9fc;
	overflow:hidden;
}
.notice_wrap .teacher_grid .teacher_thumb img {
	width:100%; height:100%;
	object-fit:cover;
	display:block;
	transition:transform 0.25s ease;
}
.notice_wrap .teacher_grid > li:hover .teacher_thumb img {
	transform:scale(1.04);
}
.notice_wrap .teacher_grid .teacher_body {
	padding:14px 16px 16px;
}
.notice_wrap .teacher_grid .teacher_title {
	display:flex; align-items:center; gap:6px;
	margin:0 0 8px;
	font-size:15px; font-weight:600; color:#222;
	line-height:1.4;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
}
.notice_wrap .teacher_grid .teacher_title a {
	color:inherit;
	text-decoration:none;
}
.notice_wrap .teacher_grid .teacher_title a:hover { color:var(--color-point); }
.notice_wrap .teacher_grid .teacher_title img { vertical-align:middle; flex-shrink:0; }
.notice_wrap .teacher_grid .teacher_meta {
	display:flex; gap:12px;
	font-size:12px; color:#888;
}
.notice_wrap .teacher_grid .teacher_meta strong {
	color:#555; font-weight:500;
	margin-right:2px;
}

/* teacher-tap (planEdu_tabbox 안 5개 균등) */
.notice_wrap .planEdu_tabbox.teacher-tap > li {
	flex:0 0 125px; width:125px;
}
/* ============================================================
   teacher_view — 관련 자료(view_morebox)를 newplan_filewrap-static 스타일로
   ============================================================ */
.notice_wrap .view_morebox_wrap .view_morebox {
	position:relative;
	width:100% !important;
	height:auto !important;
	margin:0 !important;
	border:1px solid #ddd;
	border-top:none;
	padding:25px;
	text-align:center;
	box-sizing:border-box;
}
/* 좌우 화살표 — 슬라이드(좌우 4개 페이징) 위해 보이게 + 카드 영역 가운데에 위치 */
.notice_wrap .view_morebox_wrap .view_morebox .arrboxF,
.notice_wrap .view_morebox_wrap .view_morebox .arrboxB {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	margin:0;
	z-index:2;
	cursor:pointer;
}
.notice_wrap .view_morebox_wrap .view_morebox .arrboxF { left:10px; right:auto; }
.notice_wrap .view_morebox_wrap .view_morebox .arrboxB { right:10px; left:auto; }
/* 자료 카드 가운데 가로 정렬 */
.notice_wrap .view_morebox_wrap .view_morebox_thumbox {
	display:inline-flex;
	flex-wrap:wrap;
	gap:16px;
	justify-content:center;
	list-style:none;
	margin:0; padding:0;
	max-width:100%;
}
.notice_wrap .view_morebox_wrap .view_morebox_thumbox > li {
	width:152px;
	float:none;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum {
	margin:0;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum a {
	color:#222; text-decoration:none;
	display:block;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum a:hover { color:var(--color-point); }
.notice_wrap .view_morebox_wrap .view_morebox_thum dt {
	width:150px; height:150px;
	border:1px solid #c7c7c7;
	box-sizing:border-box;
	overflow:hidden;
	background:#fff;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum dt table {
	width:150px !important; height:150px !important;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum dt img {
	width:150px !important; height:150px !important;
	object-fit:contain;
}
.notice_wrap .view_morebox_wrap .view_morebox_thum dd {
	width:150px;
	padding:8px 0;
	text-align:center;
	font-size:13px;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

/* teacher_view — detail_like / view_source 다음 detail_actions 위 여백 */
.notice_wrap .detail_like + .detail_actions,
.notice_wrap .view_source + .detail_actions {
	margin-top:20px;
}
/* won_extra_wrap (teacher_view 관련 자료) — 5개 li 가운데 정렬 (flex로 강제) */
.notice_wrap .won_extra_wrap .newplan_filebox {
	display:flex !important;
	justify-content:center;
	flex-wrap:nowrap;
	gap:2px;
	width:100% !important;
	height:auto !important;
	overflow:visible;
	padding:0;
}
.notice_wrap .won_extra_wrap .newplan_filebox > li {
	float:none !important;
	display:block;
	flex:0 0 auto;
}
/* 페이지 토글로 display:none 처리된 li는 flex에서도 빠지도록 */
.notice_wrap .won_extra_wrap .newplan_filebox > li[style*="display: none"],
.notice_wrap .won_extra_wrap .newplan_filebox > li[style*="display:none"] {
	display:none !important;
}
/* won_extra_wrap (teacher_view 관련 자료) — 썸네일 박스 꽉 채움 + 제목 2줄 ellipsis */
.notice_wrap .won_extra_wrap .newplan_filelist dt {
	display:block !important;
	width:150px; height:150px;
	overflow:hidden;
	box-sizing:border-box;
}
.notice_wrap .won_extra_wrap .newplan_filelist dt img {
	width:100% !important;
	height:100% !important;
	object-fit:cover;
	display:block;
}
.notice_wrap .won_extra_wrap .newplan_filelist dd {
	width:150px;
	height:auto !important;
	padding:8px 0;
	overflow:visible;
}
.notice_wrap .won_extra_wrap .newplan_filelist dd a {
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	text-overflow:ellipsis;
	width:150px;
	font-size:13px; line-height:1.4;
	color:#222; text-decoration:none;
	word-break:keep-all;
	max-height:2.8em;
}
.notice_wrap .won_extra_wrap .newplan_filelist dd a:hover { color:var(--color-point); }
/* won_extra_wrap — 좌우 화살표 위치 안쪽으로 (left/right 20) */
.notice_wrap .won_extra_wrap .newplan_file_arrL { left:20px !important; }
.notice_wrap .won_extra_wrap .newplan_file_arrR { right:20px !important; }
/* teacher_view — view_source(출처)와 detail_actions(목록 버튼)를 한 줄에 양 끝 정렬 */
.notice_wrap .view_footer {
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:16px;
	margin-top:20px;
}
.notice_wrap .view_footer .view_source {
	margin:0 !important;
	flex:1 1 auto;
	min-width:0;
}
.notice_wrap .view_footer .detail_actions {
	margin:0 !important;
	flex:0 0 auto;
}
/* adapt 페이지 — won.css의 .won-sub-title{width:800px} override */
.notice_wrap .won-sub-title {
	width:100%;
	box-sizing:border-box;
}
/* ============================================================
   appraisal2024/index.htm — 지표 알기 페이지
   ============================================================ */

/* 좌측 메뉴 — "평가제 가이드" 옆 new 뱃지 (left_menubox 패턴을 다시 쓸 경우 대비 유지) */
.left_menubox .left_menu_new {
	width:16px;
	margin-left:5px;
	vertical-align:middle;
}

/* 지표 테이블 (.tblist) — 기존 인라인 <style>에서 이관 */
.notice_wrap .tblist { font-size:1.15rem; }
.notice_wrap .tblist th {
	background-color:#eee;
	padding:1rem;
}
.notice_wrap .tblist td {
	padding:10px 6px;
	line-height:2rem;
}
.notice_wrap .tblist td.tblist__area { text-align:left; font-weight:bold; }
.notice_wrap .tblist td.tblist__area a { font-weight:bold; }
.notice_wrap .tblist td.tblist__items { text-align:left; }

/* 평가 방법 아이콘 칩 (관찰/면담/기록) */
.notice_wrap .tblist td.icon-wrap {
	padding-left:0;
	padding-right:0;
}
.notice_wrap .tblist td.icon-wrap > div {
	display:flex; gap:.25rem;
	justify-content:center;
}
.notice_wrap .tblist td.icon-wrap > div > span {
	display:flex; flex-direction:column;
	width:20%;
	padding:.35rem;
	border-radius:10px;
	justify-content:center;
}
.notice_wrap .tblist td.icon-wrap > div > span > span:first-child {
	display:flex; align-items:center; justify-content:center;
	padding:.75rem .25rem;
	margin-bottom:.5rem;
	border-radius:10px;
}
/* ============================================================
   appraisal2024/detail.htm — 지표 상세 페이지
   ============================================================ */

/* 폰트 크기 — detail은 index보다 작음 (인라인 <style>에서 이관) */
.notice_wrap .new-container-tap ~ .tblist { font-size:13px; }
.notice_wrap .new-container-tap ~ .tblist th {
	padding:1rem;
	font-size:1.35rem;
}
.notice_wrap .new-container-tap ~ .tblist td {
	padding:10px 6px;
	border-bottom:1px solid #ccc;
	text-align:left;
}

/* 아코디언 (예시 살펴보기) */
.notice_wrap .ac { border:none !important; }
.notice_wrap .ac .ac-header { border:1px solid #333; }
.notice_wrap .ac .ac-trigger {
	padding-left:32px;
	text-align:center;
}
.notice_wrap .ac .ac-trigger:focus { color:inherit; }
.notice_wrap .ac .ac-trigger.area1 { background-color:var(--area1-color); }
.notice_wrap .ac .ac-trigger.area2 { background-color:var(--area2-color); }
.notice_wrap .ac .ac-trigger.area3 { background-color:var(--area3-color); }
.notice_wrap .ac .ac-trigger.area4 { background-color:var(--area4-color); }
.notice_wrap .ac .ac-trigger.area5 { background-color:var(--area5-color); }
.notice_wrap .ac .ac-trigger.area6 { background-color:var(--area6-color); }
.notice_wrap .ac .ac-panel {
	display:flex;
	flex-direction:column;
	gap:1rem;
	padding-top:1rem;
}
.notice_wrap .ac .ac-panel div {
	line-height:22px;
	padding:1rem;
	border:1px solid #333;
}

/* 아이콘 범례 (관찰/기록/면담) */
.notice_wrap .detail-icon-wrap {
	display:flex;
	justify-content:flex-end;
	margin-bottom:.5rem;
}
.notice_wrap .detail-icon-wrap dl {
	display:flex;
	align-items:center;
	gap:.25rem;
	font-size:1.25rem;
	font-weight:bold;
}
.notice_wrap .detail-icon-wrap dl dt img { width:18px; }
.notice_wrap .detail-icon-wrap dl dd {
	display:flex;
	align-items:center;
	justify-content:center;
	height:100%;
	margin-right:.5rem;
}
.notice_wrap .detail-icon-wrap dl dd:last-child { margin-right:0; }

/* 부적절/적절 비교 테이블 */
.notice_wrap .appropriate-table {
	border-spacing:3px;
	border-collapse:separate;
}
.notice_wrap .appropriate-table td {
	line-height:24px;
	font-size:1.15rem;
	text-align:left;
}

/* 특수교사 안내문 */
.notice_wrap .appropriate-note {
	margin:.5rem 0;
	color:#FF3232;
	font-style:italic;
}
/* ============================================================
   appraisal2024/index.htm — 영역별 지표 카드 (세로 1열, 가로 좌우 분할)
   ============================================================ */
.notice_wrap .indicator_grid {
	display:flex;
	flex-direction:column;
	gap:16px;
	list-style:none;
	margin:24px 0 0;
	padding:0;
}
.notice_wrap .indicator_card {
	display:flex; flex-direction:column;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
	overflow:hidden;
	transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.notice_wrap .indicator_card:hover {
	transform:translateY(-3px);
	box-shadow:0 12px 24px rgba(0, 0, 0, 0.08);
}
/* 영역별 카드 hover 시 보더 컬러 — 동적 컬러 변수 활용 */
.notice_wrap .indicator_card.area1:hover { border-color:var(--area1-color); }
.notice_wrap .indicator_card.area2:hover { border-color:var(--area2-color); }
.notice_wrap .indicator_card.area3:hover { border-color:var(--area3-color); }
.notice_wrap .indicator_card.area4:hover { border-color:var(--area4-color); }
.notice_wrap .indicator_card.area5:hover { border-color:var(--area5-color); }
.notice_wrap .indicator_card.area6:hover { border-color:var(--area6-color); }

/* 카드 헤더 — 영역 컬러 + 영역 N + 영역 이름 */
.notice_wrap .indicator_header {
	display:flex; align-items:center; gap:12px;
	padding:18px 20px;
	color:#1a202c;
	text-decoration:none;
	border-bottom:1px solid #f0f0f0;
}
.notice_wrap .indicator_header:hover { background:rgba(0, 0, 0, 0.02); }
.notice_wrap .indicator_card.area1 .indicator_header { background:linear-gradient(135deg, var(--area1-color) 0%, transparent 100%); }
.notice_wrap .indicator_card.area2 .indicator_header { background:linear-gradient(135deg, var(--area2-color) 0%, transparent 100%); }
.notice_wrap .indicator_card.area3 .indicator_header { background:linear-gradient(135deg, var(--area3-color) 0%, transparent 100%); }
.notice_wrap .indicator_card.area4 .indicator_header { background:linear-gradient(135deg, var(--area4-color) 0%, transparent 100%); }
.notice_wrap .indicator_card.area5 .indicator_header { background:linear-gradient(135deg, var(--area5-color) 0%, transparent 100%); }
.notice_wrap .indicator_card.area6 .indicator_header { background:linear-gradient(135deg, var(--area6-color) 0%, transparent 100%); }
.notice_wrap .indicator_area {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	min-width:64px;
	height:30px;
	padding:0 12px;
	background:rgba(255, 255, 255, 0.85);
	border-radius:15px;
	font-size:13px; font-weight:600; color:#1a202c;
}
.notice_wrap .indicator_title {
	font-size:18px; font-weight:700; color:#1a202c;
	line-height:1.3;
}

/* 평가 항목 리스트 */
.notice_wrap .indicator_items {
	list-style:none;
	margin:0; padding:8px 0;
	flex:1 1 auto;
}
.notice_wrap .indicator_items > li > a {
	display:flex; align-items:center; gap:10px;
	padding:10px 20px;
	color:#444;
	font-size:14px; line-height:1.5;
	text-decoration:none;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .indicator_items > li > a:hover {
	background:#f7f9fc;
	color:var(--color-point);
}
.notice_wrap .indicator_seq {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	min-width:34px; height:22px;
	padding:0 8px;
	background:#f0f4fa;
	color:#3E5FAC;
	font-size:11px; font-weight:700;
	border-radius:4px;
}
.notice_wrap .indicator_items > li > a:hover .indicator_seq {
	background:var(--color-point);
	color:#fff;
}
.notice_wrap .indicator_text {
	flex:1 1 0; min-width:0;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

/* 평가 방법 칩 (카드 하단) */
.notice_wrap .indicator_chips {
	display:flex; flex-wrap:wrap; gap:6px;
	padding:14px 20px 18px;
	border-top:1px dashed #e5e7eb;
}
.notice_wrap .indicator_chips .chip {
	display:inline-flex; align-items:center; gap:5px;
	height:26px;
	padding:0 10px;
	border-radius:13px;
	font-size:12px; font-weight:600;
	color:#fff;
}
.notice_wrap .indicator_chips .chip img {
	width:14px; height:14px;
	filter:brightness(0) invert(1);
}
.notice_wrap .indicator_chips .chip.chip-A { background:var(--area1-color); color:#1a202c; }
.notice_wrap .indicator_chips .chip.chip-B { background:var(--area6-color); color:#1a202c; }
.notice_wrap .indicator_chips .chip.chip-C { background:var(--area2-color); color:#1a202c; }
.notice_wrap .indicator_chips .chip img { filter:none; }
/* ============================================================
   appraisal2024/index.htm — area-wrap (상단 영역 카드) 모던 리뉴얼
   (style.css 글로벌 룰 덮어쓰기)
   ============================================================ */
/* 가로 한 줄 배치 + 각 카드에 영역 컬러 강조 — 카드 개수에 맞춰 자동 균등 분할 */
.notice_wrap .new-container .area-wrap {
	display:flex !important;
	gap:10px;
	width:100% !important;
	margin:0;
	padding:0;
	list-style:none;
	justify-content:initial !important;
	flex-wrap:nowrap;
}
.notice_wrap .new-container .area-wrap > li {
	flex:1 1 0;
	min-width:0;
}
.notice_wrap .new-container .area-wrap > li {
	width:auto !important;
	margin:0 !important;
	border:2px solid #e5e7eb;
	border-radius:10px !important;
	overflow:hidden;
	display:block !important;
	transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
/* 각 영역 카드 — 옅은 영역 컬러 배경 + 영역 컬러 보더 */
.notice_wrap .new-container .area-wrap > li.area1 { background:color-mix(in srgb, var(--area1-color) 25%, #fff) !important; border-color:var(--area1-color); }
.notice_wrap .new-container .area-wrap > li.area2 { background:color-mix(in srgb, var(--area2-color) 25%, #fff) !important; border-color:var(--area2-color); }
.notice_wrap .new-container .area-wrap > li.area3 { background:color-mix(in srgb, var(--area3-color) 25%, #fff) !important; border-color:var(--area3-color); }
.notice_wrap .new-container .area-wrap > li.area4 { background:color-mix(in srgb, var(--area4-color) 25%, #fff) !important; border-color:var(--area4-color); }
.notice_wrap .new-container .area-wrap > li.area5 { background:color-mix(in srgb, var(--area5-color) 25%, #fff) !important; border-color:var(--area5-color); }
.notice_wrap .new-container .area-wrap > li.area6 { background:color-mix(in srgb, var(--area6-color) 25%, #fff) !important; border-color:var(--area6-color); }
.notice_wrap .new-container .area-wrap > li.area999,
.notice_wrap .new-container .area-wrap > li.area7 { background:#f4f6f9 !important; border-color:#cbd5e0; }

.notice_wrap .new-container .area-wrap > li:hover {
	transform:translateY(-2px);
	box-shadow:0 6px 18px rgba(0, 0, 0, 0.12);
}
.notice_wrap .new-container .area-wrap > li.active {
	box-shadow:0 4px 16px rgba(0, 0, 0, 0.15);
}
.notice_wrap .new-container .area-wrap > li.area1.active { background:var(--area1-color) !important; }
.notice_wrap .new-container .area-wrap > li.area2.active { background:var(--area2-color) !important; }
.notice_wrap .new-container .area-wrap > li.area3.active { background:var(--area3-color) !important; }
.notice_wrap .new-container .area-wrap > li.area4.active { background:var(--area4-color) !important; }
.notice_wrap .new-container .area-wrap > li.area5.active { background:var(--area5-color) !important; }
.notice_wrap .new-container .area-wrap > li.area6.active { background:var(--area6-color) !important; }
/* 카드 a 영역 — 세로 2단(영역 N + 영역 이름) 컴팩트 레이아웃 */
.notice_wrap .new-container .area-wrap > li > a {
	display:flex !important; flex-direction:column !important;
	align-items:flex-start !important;
	gap:3px !important;
	padding:14px 14px !important;
	width:100% !important;
	min-width:0 !important;
	box-sizing:border-box !important;
	overflow:hidden;
	text-align:left !important;
	color:#1a202c !important;
	text-decoration:none;
	height:auto !important;
}

/* 영역 N 라벨 — 흰색 반투명 chip */
.notice_wrap .new-container .area-wrap > li > a > span {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	height:22px;
	padding:0 10px;
	background:rgba(255, 255, 255, 0.7);
	color:#1a202c;
	font-size:11px !important; font-weight:700 !important;
	border-radius:11px;
	letter-spacing:0.3px;
}

/* 영역 이름 — 남은 공간 차지 + 세로 중앙 정렬 */
.notice_wrap .new-container .area-wrap > li > a > div {
	flex:1 1 auto;
	display:flex;
	align-items:center;
	padding:0 !important;
	font-size:15px !important; font-weight:700 !important;
	color:#1a202c;
	line-height:1.5 !important;
	white-space:normal !important;
	overflow:visible !important;
	text-overflow:clip !important;
	width:100%;
	max-width:100%;
	min-width:0;
	word-break:keep-all;
	overflow-wrap:break-word;
	box-sizing:border-box;
}

/* active 라벨 — 더 진한 흰색 */
.notice_wrap .new-container .area-wrap > li.active > a > span {
	background:rgba(255, 255, 255, 0.95);
}
.notice_wrap .new-container .area-wrap > li > a > div {
	flex:1 1 auto;
	font-size:15px; font-weight:600; color:#1a202c;
	line-height:1.4;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}

/* ============================================================
   indicator_grid — 그라데이션 헤더 제거하고 좌측 컬러 바로 심플하게
   ============================================================ */
.notice_wrap .indicator_card .indicator_header {
	position:relative;
	padding:16px 18px 16px 24px;
	background:#fff !important;
	border-bottom:1px solid #f0f0f0;
}
.notice_wrap .indicator_card .indicator_header::before {
	content:"";
	position:absolute;
	left:0; top:0; bottom:0;
	width:4px;
}
.notice_wrap .indicator_card.area1 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area2 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area3 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area4 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area5 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area6 .indicator_header { background:#fff !important; }
.notice_wrap .indicator_card.area1 .indicator_header::before { background:var(--area1-color); }
.notice_wrap .indicator_card.area2 .indicator_header::before { background:var(--area2-color); }
.notice_wrap .indicator_card.area3 .indicator_header::before { background:var(--area3-color); }
.notice_wrap .indicator_card.area4 .indicator_header::before { background:var(--area4-color); }
.notice_wrap .indicator_card.area5 .indicator_header::before { background:var(--area5-color); }
.notice_wrap .indicator_card.area6 .indicator_header::before { background:var(--area6-color); }
.notice_wrap .indicator_card .indicator_area {
	min-width:54px;
	height:26px;
	padding:0 10px;
	background:#f4f6f9;
	color:#4a5568;
	font-size:12px; font-weight:700;
	border-radius:13px;
}
.notice_wrap .indicator_card .indicator_title {
	font-size:16px;
}

/* 평가 항목 — 점선 없이 옅은 보더로 구분 */
.notice_wrap .indicator_items > li > a {
	padding:9px 18px;
	font-size:13px;
}
.notice_wrap .indicator_chips {
	padding:12px 18px 16px;
	border-top:1px solid #f0f0f0;
}
.notice_wrap .indicator_chips .chip {
	height:24px;
	padding:0 9px;
	font-size:11px;
	border-radius:12px;
}
/* indicator_card — 좌측(헤더+칩) 우측(평가 항목 그리드) 분할
   카드 폭을 콘텐츠에 맞춰 우측 빈 공간 제거 + 가운데 정렬 */
.notice_wrap .indicator_card {
	display:grid !important;
	grid-template-columns:240px minmax(360px, 520px);
	grid-template-areas:
		"header items"
		"chips items";
	width:max-content;
	max-width:100%;
	margin:0 auto;
}
.notice_wrap .indicator_card .indicator_header {
	grid-area:header;
	flex-direction:column !important;
	align-items:flex-start !important;
	gap:10px !important;
	padding:20px 22px 14px 28px !important;
	background:#fafbfc !important;
	border-right:1px solid #f0f0f0;
	border-bottom:none !important;
}
.notice_wrap .indicator_card .indicator_header::before {
	width:6px !important;
}
.notice_wrap .indicator_card .indicator_title {
	font-size:17px !important;
	white-space:normal !important;
	line-height:1.35;
}
.notice_wrap .indicator_card .indicator_items {
	grid-area:items;
	display:block;
	padding:8px;
}
.notice_wrap .indicator_card .indicator_items > li > a {
	padding:10px 14px !important;
	border-radius:6px;
	font-size:13px !important;
}
.notice_wrap .indicator_card .indicator_chips {
	grid-area:chips;
	background:#fafbfc;
	border-right:1px solid #f0f0f0;
	border-top:none !important;
	padding:0 22px 18px 28px !important;
}
/* ============================================================
   appraisal2024/index.htm — tblist--modern (모던 테이블 스타일)
   기존 표 구조 유지하면서 디자인만 모던하게
   ============================================================ */
.notice_wrap .tblist--modern {
	width:100%;
	border:none !important;
	border-collapse:separate;
	border-spacing:0;
	margin:24px 0 0;
	background:transparent;
	border-radius:0;
	overflow:visible;
	box-shadow:none;
}

/* 헤더 — 맨 위 포인트 컬러 라인 */
.notice_wrap .tblist--modern thead th {
	background:#f7f9fc !important;
	color:#1a202c;
	font-size:13px; font-weight:700;
	padding:14px 18px !important;
	text-align:center;
	border-top:2px solid var(--color-point);
	border-bottom:1px solid #e5e7eb;
}

/* 본문 row 공통 */
.notice_wrap .tblist--modern tbody tr {
	border-bottom:1px solid #f0f0f0;
	transition:background 0.15s ease;
}
.notice_wrap .tblist--modern tbody tr:last-child td { border-bottom:none; }
.notice_wrap .tblist--modern tbody tr td {
	padding:18px 16px !important;
	border:none !important;
	border-bottom:1px solid #f0f0f0 !important;
	vertical-align:middle;
	font-size:14px;
}

/* 번호 셀 */
.notice_wrap .tblist--modern .tblist__seq {
	text-align:center;
	font-size:13px; font-weight:700; color:#4a5568;
	width:80px;
	white-space:nowrap;
}

/* 번호 셀 안 알약 라벨 (영역 N) — 영역 컬러 배경 */
.notice_wrap .tblist--modern .tblist__seq .area-label {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:54px;
	height:25px;
	padding:0 12px;
	border-radius:13px;
	font-size:13px; font-weight:700;
	color:#1a202c;
	letter-spacing:0.2px;
	white-space:nowrap;
}
.notice_wrap .tblist--modern tbody tr.area1 .area-label { background:var(--area1-color); }
.notice_wrap .tblist--modern tbody tr.area2 .area-label { background:var(--area2-color); }
.notice_wrap .tblist--modern tbody tr.area3 .area-label { background:var(--area3-color); }
.notice_wrap .tblist--modern tbody tr.area4 .area-label { background:var(--area4-color); }
.notice_wrap .tblist--modern tbody tr.area5 .area-label { background:var(--area5-color); }
.notice_wrap .tblist--modern tbody tr.area6 .area-label { background:var(--area6-color); }

/* 영역 셀 — 좌측 라인 제거, 일반 정렬 */
.notice_wrap .tblist--modern .tblist__area {
	padding-left:16px !important;
	text-align:left;
}
.notice_wrap .tblist--modern .tblist__area a {
	display:inline-block;
	font-size:15px; font-weight:700; color:#1a202c;
	text-decoration:none;
	line-height:1.4;
}
.notice_wrap .tblist--modern .tblist__area a:hover { color:var(--color-point); }

/* 평가 항목 셀 — 세로로 쌓이는 항목 리스트 */
.notice_wrap .tblist--modern .tblist__items {
	text-align:left;
	padding:14px 16px !important;
}
.notice_wrap .tblist--modern .tblist__items > a {
	display:flex; align-items:center; gap:10px;
	padding:8px 10px;
	margin:2px 0;
	color:#444;
	font-size:13.5px;
	text-decoration:none;
	border-radius:6px;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .tblist--modern .tblist__items > a:hover {
	background:#f7f9fc;
	color:var(--color-point);
}
.notice_wrap .tblist--modern .tblist__items_seq {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	min-width:34px; height:22px;
	padding:0 8px;
	background:#f0f4fa;
	color:#3E5FAC;
	font-size:11px; font-weight:700;
	border-radius:4px;
}
.notice_wrap .tblist--modern .tblist__items > a:hover .tblist__items_seq {
	background:var(--color-point);
	color:#fff;
}
.notice_wrap .tblist--modern .tblist__items_text {
	flex:1 1 0; min-width:0;
	font-size:14px;
}

/* row 전체를 영역 링크로 — JS로 클릭 처리 */
.notice_wrap .tblist--modern .tblist__row {
	cursor:default;
}
.notice_wrap .tblist--modern .tblist__row .tblist__seq,
.notice_wrap .tblist--modern .tblist__row .tblist__area {
	cursor:pointer;
}
.notice_wrap .tblist--modern .tblist__row:hover {
	background:#f7f9fc;
}
.notice_wrap .tblist--modern .tblist__row:hover .tblist__area a {
	color:var(--color-point);
}

/* 평가 방법 칩 (관찰/면담/기록) */
.notice_wrap .tblist--modern .tblist__methods {
	text-align:center;
	padding:14px 12px !important;
}
.notice_wrap .tblist__chip {
	display:inline-flex; align-items:center; gap:5px;
	height:26px;
	padding:0 10px;
	margin:3px 2px;
	background:#f4f6f9;
	border-radius:13px;
	font-size:12px; font-weight:600;
	color:#4a5568;
}
.notice_wrap .tblist__chip img {
	width:14px; height:14px;
}
/* ============================================================
   appraisal2024/detail.htm — 본문 영역 모던 리뉴얼
   (index.htm tblist--modern과 동일 톤)
   ============================================================ */

/* 1. new-container-tap (mid 탭) — chip 형태 */
.notice_wrap .new-container-tap {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	list-style:none;
	margin:24px 0 16px;
	padding:0;
}
.notice_wrap .new-container-tap > li {
	flex:1 1 0;
	width:auto !important;
	min-width:140px;
	background:#f4f6f9;
	border-radius:10px;
	transition:background 0.2s ease;
	overflow:hidden;
}
.notice_wrap .new-container-tap > li:hover { background:#e5e7eb; }
.notice_wrap .new-container-tap > li > a {
	display:block;
	padding:14px 16px;
	color:#4a5568;
	text-decoration:none;
	font-size:13.5px; font-weight:600;
	text-align:center;
	line-height:1.4;
}
.notice_wrap .new-container-tap > li.active.area1 { background:var(--area1-color); }
.notice_wrap .new-container-tap > li.active.area2 { background:var(--area2-color); }
.notice_wrap .new-container-tap > li.active.area3 { background:var(--area3-color); }
.notice_wrap .new-container-tap > li.active.area4 { background:var(--area4-color); }
.notice_wrap .new-container-tap > li.active.area5 { background:var(--area5-color); }
.notice_wrap .new-container-tap > li.active.area6 { background:var(--area6-color); }
.notice_wrap .new-container-tap > li.active > a {
	color:#1a202c;
	font-weight:700;
}

/* 2. detail-icon-wrap (평가 방법 범례) — 우측 작은 chip 그룹 */
.notice_wrap .detail-icon-wrap {
	display:flex;
	justify-content:flex-end;
	margin:8px 0 12px;
}
.notice_wrap .detail-icon-wrap dl {
	display:inline-flex;
	align-items:center;
	gap:10px;
	padding:6px 14px;
	background:#f7f9fc;
	border-radius:20px;
	font-size:12px;
	font-weight:600;
}
.notice_wrap .detail-icon-wrap dl dt {
	display:inline-flex; align-items:center;
}
.notice_wrap .detail-icon-wrap dl dt img {
	width:16px !important;
	height:16px;
}
.notice_wrap .detail-icon-wrap dl dd {
	display:inline-flex; align-items:center;
	margin:0;
	font-size:12px !important; font-weight:600;
	color:#4a5568;
	height:auto;
}

/* 3. appropriate-table (부적절/적절 비교 테이블) — 모던 톤 */
.notice_wrap .appropriate-table {
	border-collapse:collapse !important;
	border-spacing:0 !important;
	width:100%;
	margin:16px 0;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 2px 8px rgba(0, 0, 0, 0.04);
}
.notice_wrap .appropriate-table th {
	padding:14px !important;
	font-size:14px !important;
	font-weight:700;
	color:#1a202c;
	background:#f7f9fc !important;
	border-bottom:1px solid #e5e7eb !important;
	border-right:1px solid #e5e7eb;
	text-align:center;
}
.notice_wrap .appropriate-table th:last-child { border-right:none; }
.notice_wrap .appropriate-table td {
	padding:16px 18px !important;
	font-size:14px !important;
	line-height:1.7 !important;
	color:#444 !important;
	text-align:left !important;
	border-bottom:1px solid #f0f0f0 !important;
	border-right:1px solid #f0f0f0;
	vertical-align:middle;
}
.notice_wrap .appropriate-table td:last-child { border-right:none; }
.notice_wrap .appropriate-table tr:last-child td { border-bottom:none !important; }

/* 4. 특수교사 안내문 — 옅은 빨강 박스 */
.notice_wrap .appropriate-note {
	margin:14px 0 !important;
	padding:12px 16px;
	background:#fef5f4;
	border-left:3px solid #e53e3e;
	border-radius:6px;
	color:#c53030 !important;
	font-style:normal !important;
	font-size:13px;
	font-weight:500;
}

/* 5. accordion (예시 살펴보기) — 모던 톤 */
.notice_wrap .accordion-container {
	margin-top:20px;
}
.notice_wrap .ac .ac-header {
	border:none !important;
	border-radius:10px;
	overflow:hidden;
}
.notice_wrap .ac .ac-trigger {
	width:100%;
	padding:14px 24px !important;
	background:#fff !important;
	border:1.5px solid #e5e7eb;
	border-radius:10px;
	color:#1a202c !important;
	font-size:14px; font-weight:700;
	text-align:center !important;
	cursor:pointer;
	transition:background 0.15s ease, border-color 0.15s ease;
}
.notice_wrap .ac .ac-trigger:hover {
	background:#f7f9fc !important;
}
.notice_wrap .ac .ac-trigger.area1 { border-color:var(--area1-color); }
.notice_wrap .ac .ac-trigger.area2 { border-color:var(--area2-color); }
.notice_wrap .ac .ac-trigger.area3 { border-color:var(--area3-color); }
.notice_wrap .ac .ac-trigger.area4 { border-color:var(--area4-color); }
.notice_wrap .ac .ac-trigger.area5 { border-color:var(--area5-color); }
.notice_wrap .ac .ac-trigger.area6 { border-color:var(--area6-color); }
.notice_wrap .ac .ac-trigger.area1:hover { background:color-mix(in srgb, var(--area1-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-trigger.area2:hover { background:color-mix(in srgb, var(--area2-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-trigger.area3:hover { background:color-mix(in srgb, var(--area3-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-trigger.area4:hover { background:color-mix(in srgb, var(--area4-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-trigger.area5:hover { background:color-mix(in srgb, var(--area5-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-trigger.area6:hover { background:color-mix(in srgb, var(--area6-color) 15%, #fff) !important; }
.notice_wrap .ac .ac-panel {
	display:flex !important;
	flex-direction:column !important;
	gap:8px;
	padding:14px 0 0 !important;
}
.notice_wrap .ac .ac-panel > div {
	padding:14px 18px !important;
	background:#fafbfc;
	border:1px solid #e5e7eb !important;
	border-radius:8px;
	font-size:14px;
	line-height:1.65 !important;
	color:#444;
}
/* detail.htm — appropriate-table 셀 안 텍스트/아이콘 좌우 분할
   td는 table-cell 유지(50%/50% 컬럼 유지), 안 wrap div(.appropriate-cell)에 flex 적용 */
.notice_wrap .appropriate-table td .appropriate-cell {
	display:flex;
	align-items:center;
	gap:14px;
}
.notice_wrap .appropriate-table td .appropriate-text {
	flex:1 1 0;
	min-width:0;
}
.notice_wrap .appropriate-table td .appropriate-icons {
	flex:0 0 auto;
	display:flex; flex-direction:column;
	align-items:flex-end;
	gap:4px;
	padding:2px 0 0;
}
/* chip 안 img는 chip 룰을 그대로 따름 (별도 강제 안 함) */
.notice_wrap .appropriate-table td .appropriate-icons .tblist__chip {
	margin:0;
}
/* ============================================================
   appraisal2024/faq.htm — Q&A 카드 형태로 모던 리뉴얼
   ============================================================ */

/* FAQ 안내 노트 — 박스/배경 없이 단순 텍스트, faq_list 바로 위에 붙음 */
.notice_wrap .faq_intro {
	margin:20px 0 0;
	padding:0 0 0 4px;
	background:none;
	border:none;
	border-radius:0;
	color:#c53030;
	font-size:13px;
	font-weight:500;
}

/* FAQ 카드 컨테이너 (2440 라인의 기존 .faq_list 보더 룰 override) */
.notice_wrap .faq_list {
	display:flex;
	flex-direction:column;
	gap:14px;
	margin:0;
	border-top:none !important;
	border-bottom:none !important;
}

.notice_wrap .faq_card {
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:12px;
	overflow:hidden;
	box-shadow:0 2px 8px rgba(0, 0, 0, 0.04);
	transition:box-shadow 0.2s ease;
}
.notice_wrap .faq_card:hover {
	box-shadow:0 4px 14px rgba(0, 0, 0, 0.08);
}

/* Q row */
.notice_wrap .faq_question {
	display:flex; align-items:flex-start; gap:14px;
	padding:18px 22px;
}
.notice_wrap .faq_chip {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	width:34px; height:34px;
	border-radius:50%;
	font-size:15px; font-weight:800;
	letter-spacing:0;
}
.notice_wrap .faq_chip--q {
	background:#fef2f2;
	color:#c53030;
}
.notice_wrap .faq_chip--a {
	background:#eef2ff;
	color:var(--color-point);
}
.notice_wrap .faq_seq {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	min-width:38px; height:24px;
	padding:0 8px;
	margin-top:5px;
	background:#f0f4fa;
	color:#3E5FAC;
	font-size:12px; font-weight:700;
	border-radius:4px;
}
.notice_wrap .faq_question_text {
	flex:1 1 0; min-width:0;
	padding-top:5px;
	font-size:15px; font-weight:700;
	line-height:1.55;
	color:#1a202c;
}
.notice_wrap .faq_question_text .faq_hit {
	margin-left:6px;
	font-size:12px; font-weight:500;
	color:#888;
}

/* A row — .faq_card 범위로 한정 (customer/faq의 .faq_item과 충돌 방지) */
.notice_wrap .faq_card .faq_answer {
	display:flex; align-items:flex-start; gap:14px;
	padding:18px 22px;
	background:#fafbfc;
	border-top:1px dashed #e5e7eb;
}
.notice_wrap .faq_card .faq_answer_body {
	flex:1 1 0; min-width:0;
	padding-top:0;
	cursor:pointer;
}
.notice_wrap .faq_card .faq_answer_body .wrapAnswer {
	cursor:default;
}

/* 답변보기 토글 버튼 — faq_seq와 동일 톤 (옅은 파랑 + 포인트 컬러 텍스트) */
.notice_wrap .faq_card .faq_toggle {
	display:inline-flex; align-items:center; gap:6px;
	padding:7px 14px;
	background:#f0f4fa;
	border:none;
	border-radius:6px;
	color:var(--color-point);
	font-size:13px; font-weight:600;
	cursor:pointer;
	transition:background 0.15s ease;
}
.notice_wrap .faq_card .faq_toggle:hover {
	background:#e1ebf7;
}

/* 답변 내용 */
.notice_wrap .faq_card .faq_answer_content {
	display:none;
	margin-top:0;
	font-size:14px; line-height:1.8;
	color:#333;
}
.notice_wrap .faq_card .faq_answer_content.is-open {
	display:block;
}
.notice_wrap .faq_close_wrap {
	display:flex; justify-content:flex-end;
	margin-top:12px;
}
.notice_wrap .faq_close {
	display:inline-flex; align-items:center; gap:6px;
	padding:6px 14px;
	background:#f4f6f9;
	border:none; border-radius:5px;
	color:#4a5568;
	font-size:12px; font-weight:600;
	cursor:pointer;
	transition:background 0.15s ease;
}
.notice_wrap .faq_close:hover {
	background:#e5e7eb;
}
/* ============================================================
   appraisal2024/guide.htm — 페이지 전용 보강
   ============================================================ */

/* 가이드 안내문 + 다운로드 버튼 한 줄 — 다운로드 버튼은 우상단 absolute로 띄움 */
.notice_wrap .faq_intro_wrap {
	position:relative;
	margin-top:40px;
	min-height:32px;
}
.notice_wrap .faq_intro_wrap .faq_intro {
	margin:0;
	padding:6px 200px 0 4px;
}
.notice_wrap .faq_intro_wrap .guide_actions {
	position:absolute;
	top:-10px;
	right:0;
	margin:0;
}
/* 기본(외부) guide_actions 룰 — wrap 밖에서 쓰일 때 폴백 */
.notice_wrap .guide_actions {
	display:flex;
	justify-content:flex-end;
	margin:12px 0 0;
}
.notice_wrap .guide_actions .btn-link {
	display:inline-flex; align-items:center; gap:6px;
	padding:8px 18px;
	background:#e1effa;
	border-radius:8px;
	color:#1a202c;
	font-size:14px; font-weight:600;
	text-decoration:none;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .guide_actions .btn-link i {
	color:var(--color-point);
	transition:color 0.15s ease;
}
.notice_wrap .guide_actions .btn-link:hover {
	background:var(--color-point);
	color:#fff;
	text-decoration:none;
}
.notice_wrap .guide_actions .btn-link:hover i { color:#fff; }

/* 본문 복사 방지 */
.notice_wrap .no-copy {
	user-select:none;
	-webkit-user-select:none;
	-ms-user-select:none;
	-webkit-touch-callout:none;
}

/* guide.htm: 기타 영역(7번 이상) — 위 area-wrap과 동일한 카드 디자인, 페이지 전체 폭 */
.notice_wrap .new-container .area-wrap.area-wrap-extra {
	flex-wrap:wrap !important;
	margin-top:10px;
}
/* 기타 카드 — 페이지 전체 폭 차지 (flex:1 1 0 기본 동작) */
.notice_wrap .new-container .area-wrap.area-wrap-extra > li {
	flex:1 1 100% !important;
	max-width:100%;
}
/* 기타 카드 — 다른 카드와 동일한 세로 2단(chip 위, 영역명 아래) 레이아웃 */
.notice_wrap .new-container .area-wrap.area-wrap-extra > li > a {
	flex-direction:column !important;
	align-items:flex-start !important;
	gap:3px !important;
}
/* "+ 기타" 라벨 chip — 영역 라벨과 동일한 스타일 (회색 톤) */
.notice_wrap .new-container .area-wrap.area-wrap-extra > li > a > span {
	background:rgba(255, 255, 255, 0.85);
	color:#4a5568;
}
.notice_wrap .new-container .area-wrap.area-wrap-extra > li.active > a > span {
	background:var(--color-point);
	color:#fff;
}
.notice_wrap .new-container .area-wrap.area-wrap-extra > li.active {
	background:#dbe4f5 !important;
	border-color:var(--color-point) !important;
}

/* 가이드 FAQ: mid 시퀀스 (Q chip 없이 시퀀스만) */
.notice_wrap .faq_card_guide .faq_question {
	gap:10px;
}
/* FAQ 카드 제목 — 클릭 토글 (guide / faq 공통) */
.notice_wrap .faq_card .faq_question.btn_open {
	display:flex;
	align-items:center;
	gap:10px;
	cursor:pointer;
	transition:background 0.15s ease;
}
.notice_wrap .faq_card .faq_question.btn_open:hover,
.notice_wrap .faq_card.open .faq_question {
	background:#f7f9fc;
}
/* 우측 chevron 화살표 */
.notice_wrap .faq_card .faq_arrow {
	margin-left:auto;
	color:#999;
	font-size:14px;
	transition:transform 0.2s ease, color 0.15s ease;
}
.notice_wrap .faq_card.open .faq_arrow {
	transform:rotate(180deg);
	color:var(--color-point);
}

/* 답변 영역 — 기본 숨김, .open 시 펼침 */
.notice_wrap .faq_card .faq_answer {
	display:none;
}
.notice_wrap .faq_card.open .faq_answer {
	display:flex;
}

/* 답변 본문 표시 (다른 .faq_card .faq_answer_content { display:none } 룰 override) */
.notice_wrap .faq_card .faq_answer_content {
	display:block;
}
/* 가이드 페이지 한정: 답변 본문 줄간격 */
.notice_wrap .faq_card_guide .faq_answer_content {
	line-height:2;
}

/* ============================================================
   appraisal2024/doc.htm — 평가제 문서 페이지
   ============================================================ */

/* 카테고리 카드 헤더 (운영 / 보육 / 교직원) */
.notice_wrap .doc-header {
	display:flex;
	gap:14px;
	margin-bottom:20px;
}
.notice_wrap .doc-card {
	flex:1 1 0;
	min-width:0;
	border:1px solid #e5e7eb;
	border-radius:10px;
	overflow:hidden;
	background:#fff;
}
.notice_wrap .doc-card-title {
	padding:14px 18px;
	font-size:18px; font-weight:700;
	color:#fff;
	text-align:center;
	letter-spacing:0.5px;
}
.notice_wrap .doc-card.area1 .doc-card-title { background:var(--area1-color); }
.notice_wrap .doc-card.area3 .doc-card-title { background:var(--area3-color); }
.notice_wrap .doc-card.area6 .doc-card-title { background:var(--area6-color); }
.notice_wrap .doc-card.area1 { border-color:var(--area1-color); }
.notice_wrap .doc-card.area3 { border-color:var(--area3-color); }
.notice_wrap .doc-card.area6 { border-color:var(--area6-color); }
.notice_wrap .doc-card-list {
	margin:0; padding:14px 16px;
	list-style:none;
	display:flex; flex-direction:column; gap:8px;
}
.notice_wrap .doc-card-list > li {
	padding:10px 14px;
	background:#f7f9fc;
	border-radius:6px;
	font-size:13px; font-weight:600;
	color:#1a202c;
	text-align:center;
	line-height:1.4;
}
.notice_wrap .doc-card.area1 .doc-card-list > li { background:color-mix(in srgb, var(--area1-color) 18%, #fff); }
.notice_wrap .doc-card.area3 .doc-card-list > li { background:color-mix(in srgb, var(--area3-color) 18%, #fff); }
.notice_wrap .doc-card.area6 .doc-card-list > li { background:color-mix(in srgb, var(--area6-color) 18%, #fff); }
/* 마우스오버 효과 완전 차단 — 카드 헤더는 시각적 헤더일 뿐, hover 이벤트 자체를 무시 */
.notice_wrap .doc-header,
.notice_wrap .doc-header * {
	pointer-events:none !important;
	transition:none !important;
	animation:none !important;
}

/* 안내문 — guide.htm의 faq_intro와 동일한 톤, 아래 테이블에 딱 붙음 */
.notice_wrap .doc-desc {
	margin:14px 0 0;
	padding:0 0 6px 4px;
	background:none;
	border:none;
	border-radius:0;
	color:#c53030;
	font-size:13px;
	font-weight:500;
}
.notice_wrap .able-m {
	display:inline-flex; align-items:center; justify-content:center;
	width:44px; height:23px;
	background:#ff98dd;
	border-radius:4px;
	color:#fff;
	font-size:11px; font-weight:600;
	line-height:1;
}
.notice_wrap .able-s {
	display:inline-flex; align-items:center; justify-content:center;
	width:44px; height:23px;
	background:#824dff;
	border-radius:4px;
	color:#fff;
	font-size:11px; font-weight:600;
	line-height:1;
}

/* 문서 리스트 테이블 — 모서리 각진 형태, doc-desc에 딱 붙음 */
.notice_wrap .doc-table {
	width:100% !important;
	border-collapse:separate;
	border-spacing:0;
	margin:0;
	border-radius:0;
	box-shadow:none;
	overflow:visible;
	background:transparent;
	table-layout:fixed;
}
.notice_wrap .doc-table thead th {
	padding:14px 8px;
	background:#f7f9fc;
	border-top:2px solid var(--color-point);
	border-bottom:1px solid #e5e7eb;
	font-size:13px; font-weight:700;
	color:#1a202c;
	text-align:center;
}
.notice_wrap .doc-table tbody td {
	padding:14px 8px;
	border-bottom:1px solid #f0f2f5;
	font-size:13px; color:#333;
	text-align:center;
	vertical-align:middle;
}
.notice_wrap .doc-table tbody tr:hover td {
	background:#fafbfc;
}

/* 구분 셀 — 옅은 area 컬러 배경 + 좌측 진한 컬러 라인, hover 영향 없음 */
.notice_wrap .doc-table .doc-ctgr {
	font-weight:700;
	border-left:3px solid #e5e7eb;
	transition:none !important;
}
.notice_wrap .doc-table .doc-ctgr.area1,
.notice_wrap .doc-table tbody tr:hover .doc-ctgr.area1 {
	background:color-mix(in srgb, var(--area1-color) 18%, #fff) !important;
	border-left-color:var(--area1-color) !important;
}
.notice_wrap .doc-table .doc-ctgr.area3,
.notice_wrap .doc-table tbody tr:hover .doc-ctgr.area3 {
	background:color-mix(in srgb, var(--area3-color) 18%, #fff) !important;
	border-left-color:var(--area3-color) !important;
}
.notice_wrap .doc-table .doc-ctgr.area6,
.notice_wrap .doc-table tbody tr:hover .doc-ctgr.area6 {
	background:color-mix(in srgb, var(--area6-color) 18%, #fff) !important;
	border-left-color:var(--area6-color) !important;
}
.notice_wrap .doc-table .doc-ctgr-label {
	display:inline-block;
	font-size:14px;
	color:#1a202c;
}

/* 등급 셀 (스마트 / 멀티 라벨) */
.notice_wrap .doc-table .doc-grade {
	text-align:center;
}

/* 문서명 셀 */
.notice_wrap .doc-table .doc-title-cell {
	text-align:left !important;
	padding-left:14px;
}
.notice_wrap .doc-table .sTitle {
	display:inline-flex; align-items:center;
	gap:8px;
	cursor:default;
	color:#1a202c;
	text-decoration:none;
	transition:none;
}
.notice_wrap .doc-table .sTitle:hover {
	color:#1a202c;
	text-decoration:none;
}
.notice_wrap .doc-table .doc-title-text {
	font-size:14px; font-weight:500;
}
.notice_wrap .doc-table .btnPreview {
	width:16px; height:16px;
	cursor:pointer;
	opacity:0.7;
	transition:opacity 0.15s ease;
}
.notice_wrap .doc-table .btnPreview:hover {
	opacity:1;
}

/* 예문 O 마크 */
.notice_wrap .doc-table .doc-example-mark {
	display:inline-flex; align-items:center; justify-content:center;
	width:22px; height:22px;
	background:#eef2ff;
	border-radius:50%;
	color:var(--color-point);
	font-size:13px; font-weight:700;
}

/* 다운로드 버튼 */
.notice_wrap .doc-table .btnDown {
	display:inline-flex; align-items:center; justify-content:center;
	width:32px; height:32px;
	background:#f0f4fa;
	border:none;
	border-radius:6px;
	color:var(--color-point);
	font-size:14px;
	cursor:pointer;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .doc-table .btnDown:hover {
	background:var(--color-point);
	color:#fff;
}

/* 선택 체크박스 */
.notice_wrap .doc-table .chkClip,
.notice_wrap .doc-table #checkALL {
	width:16px; height:16px;
	cursor:pointer;
	accent-color:var(--color-point);
}

/* 일괄 다운로드 버튼 */
.notice_wrap .doc-batch-wrap {
	display:flex; justify-content:flex-end;
	margin-top:18px;
}
.notice_wrap .btnDownBatch {
	display:inline-flex; align-items:center; gap:8px;
	padding:10px 22px;
	background:var(--color-point);
	border:none;
	border-radius:8px;
	color:#fff;
	font-size:14px; font-weight:600;
	cursor:pointer;
	transition:background 0.15s ease, transform 0.15s ease;
}
.notice_wrap .btnDownBatch:hover {
	background:#2e4a8c;
	transform:translateY(-1px);
}

/* 미리보기 hover 박스 — viewport 기준 fixed로 부모 컨테이너 offset 영향 없음 */
.notice_wrap #oPreview {
	position:fixed;
	z-index:99;
	display:none;
	width:240px;
	padding:10px;
	background:#fff;
	border:2px solid var(--color-point);
	border-radius:8px;
	box-shadow:0 8px 24px rgba(0, 0, 0, 0.15);
	pointer-events:none;
}
.notice_wrap #oPreview .prevTitle {
	margin-bottom:8px;
	padding-bottom:6px;
	border-bottom:1px dashed #e5e7eb;
	font-size:13px; font-weight:600;
	color:#1a202c;
	text-align:center;
}
.notice_wrap #oPreview .prevImgWrap {
	display:flex; justify-content:center; align-items:center;
	height:220px;
}
.notice_wrap #oPreview .prevImg {
	max-width:100%; max-height:100%;
	border:1px solid #333;
}

/* ============================================================
   appraisal2024/story.htm, data.htm — 평가제 이야기 / 자료공유
   ============================================================ */

/* 안내문 (베스트/포인트 안내) */
.notice_wrap .notice_intro {
	margin:14px 0 10px;
	padding:0 0 0 4px;
	color:#c53030;
	font-size:13px;
	font-weight:500;
}

/* 삭제된 게시물 — 제목(td.deleted)에만 취소선 적용 */
.notice_wrap .notice_table tbody td.deleted,
.notice_wrap .notice_table tbody td.deleted a,
.notice_wrap .notice_table tbody td.deleted .tit_text,
.notice_wrap .notice_table tbody td.deleted .tit_reply {
	text-decoration:line-through !important;
	color:#999;
}

/* 테이블 안 첫 행 안내문 (community/our_story 패턴) — 번호 칸 빈 셀 + 제목 칸부터 안내문 */
.notice_wrap .notice_table tbody tr.row_intro,
.notice_wrap .notice_table tbody tr.row_intro:hover {
	background:#fff;
}
.notice_wrap .notice_table tbody tr.row_intro td {
	color:#ff2e1f;
	font-weight:700;
	text-align:left;
	font-size:13px;
}

/* 제목 셀 아이콘 (도움글 / 파일 타입) */
.notice_wrap .notice_table tbody td.tit a {
	display:inline-flex; align-items:center;
	gap:6px;
}
.notice_wrap .notice_table tbody td.tit .tit_icon {
	flex:0 0 auto;
	width:16px; height:16px;
	vertical-align:middle;
}

/* 베스트 행 — 옅은 포인트 배경 + 진한 제목 */
.notice_wrap .notice_table tbody tr.row_best {
	background:#f4f7fd;
}
.notice_wrap .notice_table tbody tr.row_best:hover {
	background:#e9eef9;
}
.notice_wrap .notice_table tbody tr.row_best td.tit a .tit_text {
	font-weight:700;
	color:#1a202c;
}

/* BEST 라벨 — 번호 셀에서 사용 */
.notice_wrap .notice_table .best_badge {
	display:inline-flex; align-items:center; justify-content:center;
	min-width:42px; height:22px;
	padding:0 8px;
	background:var(--color-point);
	border-radius:11px;
	color:#fff;
	font-size:11px; font-weight:700;
	letter-spacing:0.3px;
}

/* ============================================================
   doc/all.htm — 필수문서 총괄표
   ============================================================ */

/* 안내 박스 + 주기별 필터 버튼 한 줄 */
.notice_wrap .doc-topbar {
	display:flex;
	align-items:stretch;
	justify-content:space-between;
	gap:14px;
	margin:18px 0 10px;
}
.notice_wrap .doc-topbar .lecture_notice_box {
	flex:0 0 840px;
	width:840px;
	max-width:840px;
	margin:0;
}

/* 안내 박스 — 노란 배경 + 좌측 빨간 강조선 + 아이콘 */
.notice_wrap .doc-intro-box {
	flex:1 1 0;
	display:flex;
	align-items:center;
	gap:16px;
	padding:14px 20px;
	background:#fff8e1;
	border-left:4px solid #e53935;
	border-radius:8px;
}
.notice_wrap .doc-intro-box__icon {
	flex:0 0 44px;
	width:44px; height:44px;
	display:inline-flex; align-items:center; justify-content:center;
	background:#fff;
	border:2px solid #e53935;
	border-radius:8px;
	color:#e53935;
	font-size:20px;
}
.notice_wrap .doc-intro-box__body {
	flex:1 1 0;
	min-width:0;
}
.notice_wrap .doc-intro-box__title {
	margin:0 0 4px;
	color:#e53935;
	font-size:15px; font-weight:700;
}
.notice_wrap .doc-intro-box__desc {
	margin:0;
	color:#1a202c;
	font-size:13px;
	line-height:1.55;
}
.notice_wrap .doc-intro-box__desc strong {
	color:#e53935;
	font-weight:700;
}
.notice_wrap .doc-wf-btn {
	align-self:flex-end;
	display:inline-flex; align-items:center; gap:6px;
	height:32px;
	padding:0 14px;
	background:#f0f4fa;
	border:none;
	border-radius:6px;
	color:var(--color-point);
	font-size:13px; font-weight:600;
	cursor:pointer;
	transition:background 0.15s ease;
	white-space:nowrap;
}
.notice_wrap .doc-wf-btn:hover {
	background:var(--color-point);
	color:#fff;
}

/* 미리보기 hover 박스 */
.notice_wrap #oPreview {
	position:fixed;
	z-index:99;
	display:none;
	width:420px;
	padding:14px;
	background:#fff;
	border:2px solid var(--color-point);
	border-radius:8px;
	box-shadow:0 8px 24px rgba(0, 0, 0, 0.15);
	pointer-events:none;
}
.notice_wrap #oPreview .prevTitle {
	margin-bottom:10px;
	padding-bottom:8px;
	border-bottom:1px dashed #e5e7eb;
	font-size:16px; font-weight:700;
	color:#1a202c;
}
.notice_wrap #oPreview .prev-body {
	display:flex;
	gap:14px;
}
.notice_wrap #oPreview .prev-img-wrap {
	flex:0 0 150px;
}
.notice_wrap #oPreview .prevImg {
	width:150px; height:200px;
	object-fit:cover;
	border:1px solid #333;
}
.notice_wrap #oPreview .prev-info {
	flex:1 1 0;
	border-collapse:separate;
	border-spacing:0 4px;
	font-size:12px;
}
.notice_wrap #oPreview .prev-info th {
	width:60px;
	padding:4px 6px;
	background:#f0f4fa;
	color:#1a202c;
	text-align:center;
	font-weight:600;
}
.notice_wrap #oPreview .prev-info td {
	padding:4px 8px;
	color:#333;
}
.notice_wrap #oPreview .prevCmt {
	margin-top:10px;
	padding-top:10px;
	border-top:1px solid #e5e7eb;
	font-size:12px;
	color:#666;
	line-height:1.5;
}

/* 주기별 필터 팝업 */
.notice_wrap #oWTFilter {
	position:fixed;
	z-index:99;
	display:none;
	width:320px;
	padding:14px;
	background:#fff;
	border:2px solid var(--color-point);
	border-radius:8px;
	box-shadow:0 8px 24px rgba(0, 0, 0, 0.15);
}
.notice_wrap #oWTFilter .wtf-head {
	display:flex; align-items:center; justify-content:space-between;
	margin-bottom:10px;
	padding-bottom:8px;
	border-bottom:1px dashed #e5e7eb;
}
.notice_wrap #oWTFilter .wtf-title {
	font-size:15px; font-weight:700; color:#1a202c;
}
.notice_wrap #oWTFilter .wtf-close {
	background:none; border:none;
	font-size:20px; line-height:1;
	color:#999;
	cursor:pointer;
}
.notice_wrap #oWTFilter .wtf-close:hover { color:#333; }
.notice_wrap #oWTFilter .wtf-items {
	display:flex; flex-wrap:wrap;
	gap:6px 0;
}
.notice_wrap #oWTFilter .wtf-item {
	display:inline-flex; align-items:center;
	gap:4px;
	width:50%;
	font-size:12px; color:#333;
	cursor:pointer;
}
.notice_wrap #oWTFilter .wtf-item input { accent-color:var(--color-point); }
.notice_wrap #oWTFilter .wtf-actions {
	display:flex; justify-content:center;
	margin-top:14px;
}
.notice_wrap #oWTFilter .wtf-apply {
	padding:8px 18px;
	background:var(--color-point);
	border:none;
	border-radius:6px;
	color:#fff;
	font-size:13px; font-weight:600;
	cursor:pointer;
}
.notice_wrap #oWTFilter .wtf-apply:hover { background:#2e4a8c; }

/* 필수문서 총괄표 */
.notice_wrap .doc-all-table {
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	margin-top:0;
	font-size:12px;
}
.notice_wrap .doc-all-table thead th {
	padding:12px 6px;
	background:#f7f9fc;
	border-top:2px solid var(--color-point);
	border-bottom:1px solid #cbd5e0;
	color:#1a202c;
	font-size:12px; font-weight:700;
	text-align:center;
}
.notice_wrap .doc-all-table thead .bullet1-th { color:#ed6c1e; }
.notice_wrap .doc-all-table thead .bullet2-th { color:#9866e8; }
.notice_wrap .doc-all-table thead .bullet3-th { color:#e35a96; }
.notice_wrap .doc-all-table thead .bullet4-th { color:#3ab080; }
.notice_wrap .doc-all-table tbody td {
	padding:10px 6px;
	border-bottom:1px solid #f0f0f0;
	vertical-align:middle;
	color:#333;
	text-align:center;
	word-break:keep-all;
}
.notice_wrap .doc-all-table tbody tr.hovered td { background:#fafbfc; }

/* 구분 셀 */
.notice_wrap .doc-all-table .doc-ctgr-cell {
	background:#f7f9fc;
	border-right:1px solid #e5e7eb;
	font-weight:700;
	vertical-align:top;
	padding-top:14px;
}
.notice_wrap .doc-all-table .doc-ctgr-cell .objCate1 {
	display:inline-block;
	font-weight:700;
	color:#1a202c;
}
.notice_wrap .doc-all-table .doc-subctgr {
	background:#fafbfc;
	font-weight:600;
	color:#4a5568;
}
.notice_wrap .doc-all-table .doc-no { color:#666; }

/* 문서명 셀 */
.notice_wrap .doc-all-table .doc-title-cell {
	text-align:left;
	padding-left:12px;
}
.notice_wrap .doc-all-table .sTitle {
	cursor:pointer;
	color:#1a202c;
	font-size:13px;
	transition:color 0.15s ease;
}
.notice_wrap .doc-all-table .sTitle:hover { color:var(--color-point); }

/* 용도 컬러 도트 */
.notice_wrap .doc-all-table .bullet {
	display:inline-block;
	font-size:16px;
	font-weight:700;
	cursor:pointer;
}
.notice_wrap .doc-all-table .bullet-1 { color:#f8c69e; }
.notice_wrap .doc-all-table .bullet-2 { color:#CAB0DC; }
.notice_wrap .doc-all-table .bullet-3 { color:#F1B5C6; }
.notice_wrap .doc-all-table .bullet-4 { color:#b8e0c8; }
.notice_wrap .doc-all-table .doc-usage-1 { border-left:1px solid #e5e7eb; }
.notice_wrap .doc-all-table .doc-usage-4 { border-right:1px solid #e5e7eb; }

/* 작성주기 / 비고 / 관련상품 */
.notice_wrap .doc-all-table .doc-wt { color:#4a5568; }
.notice_wrap .doc-all-table .doc-cmt {
	text-align:left;
	color:#666;
	font-size:12px;
	line-height:1.5;
}
.notice_wrap .doc-all-table .doc-cmt span { cursor:pointer; }
.notice_wrap .doc-all-table .doc-related-link {
	color:var(--color-point);
	text-decoration:underline;
}

/* 비스마트회원 안내 */
.notice_wrap .doc-locked {
	position:relative;
	margin-top:18px;
}
.notice_wrap .doc-locked img#doc_all {
	width:100%;
	cursor:pointer;
	filter:blur(2px);
	opacity:0.6;
}
.notice_wrap .doc-locked-msg {
	position:absolute;
	top:200px; left:50%;
	transform:translateX(-50%);
	padding:36px 44px;
	background:#fff;
	border:1px solid #cbd5e0;
	border-radius:10px;
	box-shadow:0 12px 36px rgba(0, 0, 0, 0.15);
	text-align:center;
}
.notice_wrap .doc-locked-msg p {
	margin:0 0 18px;
	font-size:16px; color:#1a202c;
	line-height:1.6;
}
.notice_wrap .doc-locked-actions {
	display:flex; justify-content:center;
	gap:10px;
}
.notice_wrap .doc-locked-confirm,
.notice_wrap .doc-locked-cancel {
	display:inline-flex; align-items:center; justify-content:center;
	padding:10px 26px;
	border-radius:6px;
	font-size:14px; font-weight:600;
	text-decoration:none;
}
.notice_wrap .doc-locked-confirm {
	background:var(--color-point); color:#fff;
}
.notice_wrap .doc-locked-confirm:hover { background:#2e4a8c; }
.notice_wrap .doc-locked-cancel {
	background:#f4f6f9; color:#4a5568;
}
.notice_wrap .doc-locked-cancel:hover { background:#e5e7eb; }

/* 맨 위로 버튼 */
.notice_wrap .btnTop {
	position:fixed;
	right:30px;
	bottom:30px;
	display:inline-flex; align-items:center; gap:6px;
	padding:10px 16px;
	background:var(--color-point);
	border:none;
	border-radius:24px;
	color:#fff;
	font-size:13px; font-weight:600;
	box-shadow:0 6px 16px rgba(62, 95, 172, 0.35);
	cursor:pointer;
	z-index:50;
	transition:transform 0.15s ease, box-shadow 0.15s ease;
}
.notice_wrap .btnTop:hover {
	transform:translateY(-2px);
	box-shadow:0 10px 24px rgba(62, 95, 172, 0.45);
}

/* ============================================================
   doc/index.htm — 문서도우미 메인 (3개 카테고리 카드)
   ============================================================ */

.notice_wrap .doc-intro {
	margin-top:18px;
}

/* 상단 메인 배너 — 원본 크기 유지, 중앙 정렬만 */
.notice_wrap .doc-intro-banner {
	display:block;
	margin-bottom:30px;
	text-align:center;
	transition:transform 0.2s ease;
}
.notice_wrap .doc-intro-banner:hover {
	transform:translateY(-2px);
}
.notice_wrap .doc-intro-banner img {
	display:inline-block;
	max-width:100%;
	height:auto;
	border-radius:10px;
}

/* 카테고리 카드 3개 */
.notice_wrap .doc-intro-cards {
	display:flex;
	flex-direction:column;
	gap:14px;
}
.notice_wrap .doc-intro-card {
	display:flex;
	align-items:center;
	gap:20px;
	padding:22px 24px;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:10px;
	text-decoration:none;
	color:inherit;
	transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.notice_wrap .doc-intro-card:hover {
	transform:translateY(-2px);
	box-shadow:0 8px 20px rgba(0, 0, 0, 0.08);
	border-color:var(--color-point);
	text-decoration:none;
}
.notice_wrap .doc-intro-card__icon {
	flex:0 0 60px;
	width:60px; height:60px;
	display:inline-flex; align-items:center; justify-content:center;
	border-radius:50%;
	font-size:24px;
	color:#fff;
}
.notice_wrap .doc-intro-card__icon--all   { background:linear-gradient(135deg, #3E5FAC 0%, #5b7dd0 100%); }
.notice_wrap .doc-intro-card__icon--usage { background:linear-gradient(135deg, #f8c69e 0%, #ff9244 100%); }
.notice_wrap .doc-intro-card__icon--cate  { background:linear-gradient(135deg, #b8e0c8 0%, #4cc4b3 100%); }
.notice_wrap .doc-intro-card__body {
	flex:1 1 0;
	min-width:0;
}
.notice_wrap .doc-intro-card__body h3 {
	margin:0 0 6px;
	font-size:17px; font-weight:700;
	color:#1a202c;
}
.notice_wrap .doc-intro-card__body p {
	margin:0;
	font-size:13px; color:#666;
	line-height:1.5;
}
.notice_wrap .doc-intro-card__arrow {
	flex:0 0 auto;
	display:inline-flex; align-items:center; justify-content:center;
	width:32px; height:32px;
	background:#f4f6f9;
	border-radius:50%;
	color:#999;
	font-size:13px;
	transition:background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.notice_wrap .doc-intro-card:hover .doc-intro-card__arrow {
	background:var(--color-point);
	color:#fff;
	transform:translateX(4px);
}

/* ============================================================
   doc/usage.htm — 용도별 문서모음
   ============================================================ */

/* 베스트 자료 carousel — 박스 컨테이너 + 양쪽 chevron 버튼 (배경 없음, 높이 40%) */
.notice_wrap .doc-best {
	position:relative;
	margin-top:18px;
	padding:20px 50px;
	background:#fafbfc;
	border:1px solid #e5e7eb;
	border-radius:10px;
}
.notice_wrap .doc-best-btn {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	width:36px;
	height:40%;
	background:none;
	border:none;
	color:#666;
	font-size:20px;
	cursor:pointer;
	z-index:2;
	transition:color 0.15s ease, transform 0.15s ease;
}
.notice_wrap .doc-best-btn:hover {
	color:var(--color-point);
}
.notice_wrap .doc-best-btn--prev { left:6px; }
.notice_wrap .doc-best-btn--next { right:6px; }
.notice_wrap .doc-best-btn--prev:hover { transform:translateY(-50%) translateX(-2px); }
.notice_wrap .doc-best-btn--next:hover { transform:translateY(-50%) translateX(2px); }
.notice_wrap .doc-best-wrap {
	overflow:hidden;
}
.notice_wrap .doc-best-list {
	display:flex;
	gap:0;
	margin:0; padding:0;
	list-style:none;
	transition:transform 0.3s ease;
}
.notice_wrap .doc-best-item {
	flex:0 0 186px;
	padding:0 8px;
	box-sizing:border-box;
}
.notice_wrap .doc-best-item a {
	display:block;
	color:inherit;
	text-decoration:none;
}
.notice_wrap .doc-best-cate {
	margin:0 0 4px;
	font-size:11px;
	color:#666;
}
.notice_wrap .doc-best-thumb {
	height:150px;
	display:flex; align-items:center; justify-content:center;
	background:#fafbfc;
	border:1px solid #e5e7eb;
}
.notice_wrap .doc-best-thumb img {
	max-width:100%; max-height:150px;
}
.notice_wrap .doc-best-info {
	padding:6px 0;
	min-height:50px;
	font-size:12px;
	line-height:1.4;
}
.notice_wrap .doc-best-usage {
	display:block;
	color:var(--color-point);
	font-size:11px;
	font-weight:600;
}
.notice_wrap .doc-best-name {
	display:block;
	color:#1a202c;
}

/* 용도 카드 (area-wrap 패턴 차용, 4개 균등) */
.notice_wrap .new-container .area-wrap.doc-usage-area,
.notice_wrap .area-wrap.doc-usage-area {
	display:flex !important;
	gap:10px;
	width:100%;
	margin:20px 0 0;
	padding:0;
	list-style:none;
	flex-wrap:nowrap;
}
.notice_wrap .area-wrap.doc-usage-area > li {
	flex:1 1 0;
	min-width:0;
	width:auto !important;
	margin:0 !important;
	border:2px solid #e5e7eb;
	border-radius:10px !important;
	overflow:hidden;
	display:block !important;
	background:#fff;
	transition:transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.notice_wrap .area-wrap.doc-usage-area > li:hover {
	transform:translateY(-2px);
	box-shadow:0 6px 18px rgba(0, 0, 0, 0.12);
}
.notice_wrap .area-wrap.doc-usage-area > li > a {
	display:flex !important; flex-direction:column !important;
	align-items:flex-start !important;
	gap:6px !important;
	padding:14px 18px !important;
	width:100% !important;
	box-sizing:border-box;
	text-align:left !important;
	color:#1a202c !important;
	text-decoration:none;
}
.notice_wrap .area-wrap.doc-usage-area > li > a > span {
	display:inline-flex; align-items:center; justify-content:center;
	height:22px;
	padding:0 10px;
	background:rgba(255, 255, 255, 0.7);
	color:#1a202c;
	font-size:11px !important; font-weight:700 !important;
	border-radius:11px;
	letter-spacing:0.3px;
}
.notice_wrap .area-wrap.doc-usage-area > li > a > div {
	font-size:16px !important; font-weight:700 !important;
	color:#1a202c;
	line-height:1.4;
}

/* 4개 용도 카드 — 기본 네이비 하나로 통일 */
.notice_wrap .area-wrap.doc-usage-area > li {
	background:#fff;
	border-color:#e5e7eb;
}
.notice_wrap .area-wrap.doc-usage-area > li.active {
	background:color-mix(in srgb, var(--color-point) 12%, #fff);
	border-color:var(--color-point);
}
.notice_wrap .area-wrap.doc-usage-area > li > a > span {
	color:var(--color-point);
	background:color-mix(in srgb, var(--color-point) 10%, #fff);
}
.notice_wrap .area-wrap.doc-usage-area > li.active > a > span {
	background:var(--color-point);
	color:#fff;
}
/* cate.htm 표 bullet — 현재 cate 컬러로 (body class 기준) */
body.doc_cate_1 .notice_wrap .doc-usage-table .doc-usage-mark .bullet { color:#f8c69e; }
body.doc_cate_2 .notice_wrap .doc-usage-table .doc-usage-mark .bullet { color:#CAB0DC; }
body.doc_cate_3 .notice_wrap .doc-usage-table .doc-usage-mark .bullet { color:#F1B5C6; }
body.doc_cate_4 .notice_wrap .doc-usage-table .doc-usage-mark .bullet { color:#b8e0c8; }
body.doc_cate_5 .notice_wrap .doc-usage-table .doc-usage-mark .bullet { color:#96BDEB; }

.notice_wrap .area-wrap.doc-usage-area > li.active {
	box-shadow:0 4px 16px rgba(0, 0, 0, 0.15);
}

/* 표 위 toolbar — view toggle / 분류 / 매뉴얼 / 검색 한 줄 */
.notice_wrap .doc-usage-toolbar {
	display:flex;
	align-items:center;
	gap:10px;
	margin:20px 0 7px;
	flex-wrap:wrap;
}
.notice_wrap .doc-usage-toolbar .doc-toolbar-search {
	margin-left:auto;
}

/* 컨트롤 컴포넌트 (toolbar/tabwrap 안에서 재사용) */
.notice_wrap .doc-view-toggle {
	display:inline-flex;
	gap:4px;
}
.notice_wrap .doc-view-toggle a {
	display:inline-flex; align-items:center; justify-content:center;
	width:34px; height:34px;
	background:#f4f6f9;
	border:1px solid #e5e7eb;
	border-radius:6px;
	color:#666;
	text-decoration:none;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .doc-view-toggle a:hover { background:#e5e7eb; }
.notice_wrap .doc-view-toggle a.active {
	background:var(--color-point);
	border-color:var(--color-point);
	color:#fff;
}
.notice_wrap .doc-cate-select {
	height:34px;
	padding:0 12px;
	border:1px solid #cbd5e0;
	border-radius:6px;
	font-size:13px;
	color:#333;
	background:#fff;
}
.notice_wrap .btn-manual {
	display:inline-flex; align-items:center; gap:6px;
	height:34px;
	padding:0 14px;
	background:var(--color-point);
	border-radius:6px;
	color:#fff;
	font-size:13px; font-weight:600;
	text-decoration:none;
	transition:filter 0.15s ease;
}
.notice_wrap .btn-manual:hover { filter:brightness(0.9); color:#fff; text-decoration:none; }

/* 페이지별 매뉴얼 버튼 컬러 (용도 카드 컬러와 동일) */
body.doc_usage_1 .notice_wrap .btn-manual { background:#f08a4d; }
body.doc_usage_2 .notice_wrap .btn-manual { background:#a586dc; }
body.doc_usage_3 .notice_wrap .btn-manual { background:#e885ad; }
body.doc_usage_4 .notice_wrap .btn-manual { background:#5cb892; }

.notice_wrap .doc-search-box {
	display:inline-flex; align-items:center;
	height:34px;
	border:1px solid #cbd5e0;
	border-radius:6px;
	overflow:hidden;
	background:#fff;
}
.notice_wrap .doc-search-box input {
	height:32px;
	padding:0 12px;
	border:none;
	background:transparent;
	font-size:13px;
	outline:none;
	width:180px;
}
.notice_wrap .doc-search-box .btn-search-submit {
	width:36px; height:32px;
	background:var(--color-point);
	border:none;
	color:#fff;
	font-size:13px;
	cursor:pointer;
}
.notice_wrap .doc-search-box .btn-search-submit:hover { background:#2e4a8c; }

/* 목록형 테이블 */
.notice_wrap .doc-usage-table {
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	margin:0;
	font-size:13px;
}
.notice_wrap .doc-usage-table thead th {
	padding:12px 8px;
	background:#f7f9fc;
	border-bottom:1px solid #cbd5e0;
	color:#1a202c;
	font-size:13px; font-weight:700;
	text-align:center;
}
.notice_wrap .doc-usage-table thead th { border-top:2px solid var(--color-point); }
.notice_wrap .doc-usage-table tbody td {
	padding:12px 8px;
	border-bottom:1px solid #f0f0f0;
	vertical-align:middle;
	color:#333;
	text-align:center;
}
.notice_wrap .doc-usage-table .doc-ctgr {
	background:#fafbfc;
	font-weight:600;
}
.notice_wrap .doc-usage-table .doc-title-cell {
	text-align:left;
	padding-left:14px;
}
.notice_wrap .doc-usage-table .sTitle {
	cursor:pointer;
	color:#1a202c;
	transition:color 0.15s ease;
}
.notice_wrap .doc-usage-table .sTitle:hover { color:var(--color-point); }
.notice_wrap .doc-usage-table .doc-usage-mark .bullet {
	font-size:16px;
	font-weight:700;
}
.notice_wrap .doc-usage-table--u1 .doc-usage-mark .bullet { color:#f8c69e; }
.notice_wrap .doc-usage-table--u2 .doc-usage-mark .bullet { color:#CAB0DC; }
.notice_wrap .doc-usage-table--u3 .doc-usage-mark .bullet { color:#F1B5C6; }
.notice_wrap .doc-usage-table--u4 .doc-usage-mark .bullet { color:#b8e0c8; }
.notice_wrap .doc-usage-table .doc-cmt {
	text-align:left;
	color:#666;
	font-size:12px;
	line-height:1.5;
}
.notice_wrap .doc-usage-table .doc-cmt span { cursor:pointer; }
.notice_wrap .doc-usage-table .btnDown {
	display:inline-flex; align-items:center; justify-content:center;
	width:32px; height:32px;
	background:#f0f4fa;
	border:none;
	border-radius:6px;
	color:var(--color-point);
	cursor:pointer;
	transition:background 0.15s ease, color 0.15s ease;
}
.notice_wrap .doc-usage-table .btnDown:hover { background:var(--color-point); color:#fff; }
.notice_wrap .doc-usage-table .chkClip,
.notice_wrap .doc-usage-table #chkAll {
	width:16px; height:16px;
	accent-color:var(--color-point);
}
.notice_wrap .doc-usage-table .doc-related-link {
	color:var(--color-point);
	text-decoration:underline;
}

/* 썸네일 그리드 — 한 줄 6개 */
.notice_wrap .doc-thumb-grid {
	display:grid;
	grid-template-columns:repeat(6, 1fr);
	gap:14px;
	margin:0;
	padding:0;
	list-style:none;
}
.notice_wrap .doc-thumb-item {
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:8px;
	padding:12px;
	transition:transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}
.notice_wrap .doc-thumb-item:hover {
	transform:translateY(-2px);
	box-shadow:0 6px 18px rgba(0, 0, 0, 0.08);
	border-color:var(--color-point);
}
.notice_wrap .doc-thumb-top {
	display:flex; justify-content:space-between; align-items:center;
	margin-bottom:8px;
	height:24px;
}
.notice_wrap .doc-thumb-top .chkClip { accent-color:var(--color-point); }
.notice_wrap .doc-thumb-link {
	display:block;
	position:relative;
}

/* 회원 등급 nametag (edu_list 패턴) — 썸네일 우상단 코너에 딱 */
.notice_wrap .doc-thumb-link .edudata_nametag {
	display:block;
	position:absolute;
	top:0; right:-2px;
	z-index:10;
	width:32px; height:25px;
	padding:0;
	margin:0;
	background-repeat:no-repeat;
	background-position:0 0;
	background-size:32px 25px;
	font-size:0;
}
.notice_wrap .doc-thumb-link .nametag_levels { background-image:url("/images/renewal/nametag_icon_smart.png"); }
.notice_wrap .doc-thumb-link .nametag_levelm { background-image:url("/images/renewal/nametag_icon_multi.png"); }
.notice_wrap .doc-thumb-link .nametag_levelf { background-image:url("/images/renewal/nametag_icon_free.png"); }
.notice_wrap .doc-thumb-img {
	width:100%;
	aspect-ratio:1 / 1;
	object-fit:cover;
	border:1px solid #f0f0f0;
}
.notice_wrap .doc-thumb-info {
	display:flex; align-items:center; gap:6px;
	margin-top:10px;
}
.notice_wrap .doc-thumb-title {
	flex:1 1 0;
	font-size:13px;
	font-weight:600;
	color:#1a202c;
	text-decoration:none;
	line-height:1.4;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
}
.notice_wrap .doc-thumb-title:hover { color:var(--color-point); }
.notice_wrap .doc-thumb-down {
	flex:0 0 28px;
	width:28px; height:28px;
	display:inline-flex; align-items:center; justify-content:center;
	background:#f0f4fa;
	border:none;
	border-radius:5px;
	color:var(--color-point);
	cursor:pointer;
}
.notice_wrap .doc-thumb-down:hover { background:var(--color-point); color:#fff; }

/* 일괄 다운로드 버튼 */
.notice_wrap .doc-batch-wrap {
	display:flex; justify-content:flex-end;
	margin-top:18px;
}
.notice_wrap .btnDownBatch {
	display:inline-flex; align-items:center; gap:8px;
	padding:10px 22px;
	background:var(--color-point);
	border:none;
	border-radius:8px;
	color:#fff;
	font-size:14px; font-weight:600;
	cursor:pointer;
	transition:background 0.15s ease, transform 0.15s ease;
}
.notice_wrap .btnDownBatch:hover {
	background:#2e4a8c;
	transform:translateY(-1px);
}

/* ============================================================
   doc/view.htm — 문서 상세보기 (notice_view 패턴 사용)
   ============================================================ */

/* 제목 + 메타 통합 카드 */
.notice_wrap .notice_detail .doc-view-card {
	margin:20px 0 24px;
	background:#fff;
	border:1px solid #e5e7eb;
	border-top:2px solid var(--color-point);
}

/* 카드 헤더 — 제목 영역 */
.notice_wrap .notice_detail .doc-view-card-head {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	padding:20px 24px;
	background:#fafbfc;
	border-bottom:1px solid #e5e7eb;
}
.notice_wrap .notice_detail .doc-view-card-title {
	margin:0;
	font-size:20px; font-weight:700;
	color:#1a202c;
	line-height:1.4;
}
.notice_wrap .notice_detail .doc-view-card-id {
	flex:0 0 auto;
	padding:4px 10px;
	background:#fff;
	border:1px solid #e5e7eb;
	border-radius:4px;
	color:#666;
	font-size:12px; font-weight:500;
}

/* 메타 정보 표 — 카드 내부 */
.notice_wrap .notice_detail .doc-view-meta {
	width:100%;
	border-collapse:separate;
	border-spacing:0;
	margin:0;
	font-size:14px;
}
.notice_wrap .notice_detail .doc-view-meta th,
.notice_wrap .notice_detail .doc-view-meta td {
	padding:12px 16px;
	border-bottom:1px solid #f0f0f0;
	vertical-align:middle;
	color:#333;
	line-height:1.6;
}
.notice_wrap .notice_detail .doc-view-meta th { text-align:center; }
.notice_wrap .notice_detail .doc-view-meta td { text-align:left; }
.notice_wrap .notice_detail .doc-view-meta tr:last-child th,
.notice_wrap .notice_detail .doc-view-meta tr:last-child td { border-bottom:none; }
.notice_wrap .notice_detail .doc-view-meta th {
	background:#fafbfc;
	color:#4a5568;
	font-weight:600;
	font-size:13px;
	border-right:1px solid #f0f0f0;
}
.notice_wrap .notice_detail .doc-view-meta td {
	color:#1a202c;
}
.notice_wrap .notice_detail .doc-view-meta td + th {
	border-left:1px solid #f0f0f0;
}
.notice_wrap .notice_detail .doc-view-related-link {
	color:var(--color-point);
	text-decoration:underline;
}

/* 다운로드 버튼 */
.notice_wrap .notice_detail .doc-view-down-wrap {
	margin:0 0 14px;
	text-align:center;
}
.notice_wrap .notice_detail .doc-view-down-btn {
	display:inline-flex; align-items:center; gap:8px;
	padding:12px 28px;
	background:var(--color-point);
	border:none;
	border-radius:8px;
	color:#fff;
	font-size:15px; font-weight:600;
	text-decoration:none;
	cursor:pointer;
	transition:background 0.15s ease, transform 0.15s ease;
}
.notice_wrap .notice_detail .doc-view-down-btn:hover {
	background:#2e4a8c;
	color:#fff;
	text-decoration:none;
	transform:translateY(-1px);
}
/* 다운로드 아이콘 — background 이미지 */
.notice_wrap .notice_detail .doc-view-down-icon {
	display:inline-block;
	width:18px; height:18px;
	background:url(/images/plan/edudata_icondown.png) no-repeat 0 0;
	background-size:contain;
	vertical-align:middle;
}
.notice_wrap .notice_detail .doc-view-nodown {
	margin:20px auto;
	padding:14px 20px;
	max-width:520px;
	background:#fff5f5;
	border:1px solid #fed7d7;
	border-radius:6px;
	color:#c53030;
	font-size:13px;
	text-align:center;
}

/* 미리보기 이미지 */
.notice_wrap .notice_detail .doc-view-image {
	margin-top:14px;
}
.notice_wrap .notice_detail .doc-view-image img {
	max-width:100%;
	border:1px solid #e5e7eb;
	border-radius:4px;
	box-shadow:0 4px 16px rgba(0, 0, 0, 0.08);
}