@charset "utf-8";
/* =============================================================================
   울산광역시 남구 · 남구청장실 — 게시판 목록 (Board List)
   board.css — 목록형 게시판 전용 스타일
   · .ngm-board-list-wrap 컨테이너 하위에서만 적용
   · 검색 영역(.ngm-search-*)·페이지 헤더(.ngm-sub__page-*)는 sub.css 참조
   · 로드 순서: common.css → base.css → layout.css → sub.css → board.css
   ============================================================================= */


/* ─────────────────────────────────────────────────────────
   목록 래퍼
   ───────────────────────────────────────────────────────── */
.ngm-board-list-wrap {
  /* 역할: 게시판 목록 + 페이지네이션을 묶는 컨테이너.
     명시적 스타일 없이 범위(scope) 역할만 수행. */
}

/* ─────────────────────────────────────────────────────────
   기본게시판
   ───────────────────────────────────────────────────────── */

/* 기본게시판 목록 시작 */
.normal_list{font-size:1.8rem;}
.normal_list .w_top{width:8%;}
.normal_list .w_write{width:11%;}
.normal_list .w_date{width:11%;}
.normal_list .w_file{width:5%;}
.normal_list .w_reply{width:7%;}
.normal_list tr{position:relative;}
.normal_list tr td{ transition:background 0.3s linear;}
.normal_list tr:hover td {background: #fafafa;}
.normal_list tr:hover td.w_subject > a{transition:color 0.3s linear;}
.normal_list tr:hover td.w_subject > a{color: black;}
.normal_list th, .normal_list td{padding:25px 10px; line-height: 1.45; border-bottom:1px solid #eaecf1; text-align:center; font-weight:400; vertical-align:middle;}
.normal_list thead th{position:relative; padding:17px 10px 17px 10px; background:#f9fafb; border-top:1px solid #d2d7dc; border-bottom:1px solid #d2d7dc; font-weight:600; color:#222;}
.normal_list thead th:before{
    content: "";
    width: 1px;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #d2d2d2;
    transform: translate(0, -50%);
}
.normal_list thead th:first-child:before{display:none;}
.normal_list thead tr:first-child th{border-top:2px solid black;}
.normal_list td{color:#555; word-break:break-all;}
.normal_list td.w_top{font-weight:500;}
.normal_list td.w_subject{font-size:1.9rem; text-align:left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.normal_list td.w_subject > a{display: inline-flex; width: 100%; align-items: center; color:black;}
.normal_list td.w_subject .title_in{display: inline-flex; align-items: center; max-width: 100%; gap: 4px; padding-right:20px;}
.normal_list td.w_subject .title_in .title_text{display: block; min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.normal_list td.w_subject .title_in .new_icon{line-height:1; padding-top:1px;}
.normal_list td.w_subject .title_in .new_icon > i{font-size:2.1rem; color:#F44336;}
.normal_list td.w_subject .title_in .secret_icon{position:relative; width:1.5rem; height:2.1rem; line-height:1; padding-top:1px;}
.normal_list td.w_subject .title_in .secret_icon:before{
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    font-size: 0;
    line-height: 0;
    background: url(../images/board/icon_lock.svg) no-repeat;
    background-size: contain;
}
.normal_list td.w_date{letter-spacing:-0.075rem; word-break: keep-all;}
.normal_list td.w_date .w_date_wrap{display:inline-flex; flex-wrap: wrap; justify-content: center; align-items: center;}
.normal_list td.w_write{word-break: break-word; word-break: keep-all; overflow-wrap: break-word;}
.normal_list td.w_file{line-height:1;}
.normal_list td.w_file .file_icon{display:inline-block; width:17px; height:19px; background: url(../images/board/file_exist_icon.svg) no-repeat; background-size:contain; font-size:0; line-height:0;}
.normal_list .point_color{color:#306e52; font-weight:600;}
.normal_list .cate_color1{color:#1E3A8A !important; font-weight:400 !important; font-family: 'esamanru'; margin-top:4px; white-space: nowrap;}
.normal_list .cate_color2{color:#047857 !important; font-weight:400 !important; font-family: 'esamanru'; margin-top:4px; white-space: nowrap;}
.normal_list .cate_color3{color:#B91C1C !important; font-weight:400 !important; font-family: 'esamanru'; margin-top:4px; white-space: nowrap;}
.normal_list .cate_color4{color:#4B5563 !important; font-weight:400 !important; font-family: 'esamanru'; margin-top:4px; white-space: nowrap;}

    /* 미디어쿼리 시작 */
    @media (max-width: 1280px){
		.normal_list td.w_write, .normal_list td.w_date, .normal_list td.w_reply{font-size:1.7rem;}
		.normal_list thead th{font-size: 1.7rem; padding: 15px 10px;}
		.normal_list .w_file{width:80px;}
    	.normal_list .w_reply{display:none;}
	}
	@media (max-width: 1140px){
		.normal_list .w_date{width:130px;}
	}
    @media (max-width: 1024px){
    	.normal_list{font-size:1.7rem;}
    	.normal_list .w_top{width:70px;}
    	.normal_list .w_date{width:110px;}
    	.normal_list .w_file{width:60px;}
    	.normal_list thead th{padding: 14px 10px 13px 10px;}
    	.normal_list td{padding: 22px 10px;}
        .normal_list td.w_top{letter-spacing: -0.15rem;}
        .normal_list td.w_subject{font-size:1.8rem;}
        .normal_list td.w_write{letter-spacing: -0.15rem; line-height:1.3;}
        .normal_list td.w_date{letter-spacing: -0.15rem; line-height:1.3;}
        .normal_list td.w_reply{letter-spacing: -0.15rem;}
        .normal_list td.w_subject .title_in .new_icon{padding-top:2px;}
		.normal_list td.w_subject .title_in{gap:3px;}
        .normal_list td.w_subject .title_in .new_icon > i{font-size: 1.9rem;}
        .normal_list td.w_subject .title_in .secret_icon{width:1.4rem; height:1.9rem;}
    }
	@media (max-width: 768px) {
		.normal_list{font-size:1.6rem;}
		.normal_list colgroup{display:none;}
		.normal_list thead{display:none;}
		.normal_list tr, .normal_list tbody, .normal_list td, .normal_list th{display: block; border: none; float: none;}
		.normal_list tr {border-bottom: 1px solid #ddd; padding: 18px 3% 17px 70px; overflow: hidden; clear: both; width: 100%; display: flex; flex-wrap: wrap; align-items: center;	position: relative;}
		.normal_list tr:first-child{border-top: 2px solid black;}
		.normal_list tr:hover td { background: none;}
		.normal_list td {padding: 0; font-size: 1.5rem; padding-right: 10px;}
		.normal_list td.w_top{position: absolute; top: 21px; left: 13px; width: 50px; padding-left: 0; padding-right:0; margin-bottom: 5px; width:46px; text-align:left;}
		.normal_list td.w_subject{width:100%; font-size: 1.75rem; margin-bottom: 8px; font-weight:500; padding-left:0; padding-right:0;}
		.normal_list td.w_subject .title_in{padding-right:0;}
		.normal_list td.w_write{width:auto;}
		.normal_list td.w_date, .normal_list td.w_top, .normal_list td.w_file, .normal_list td.w_write, .normal_list td.w_reply{color:#818181; letter-spacing:-0.5px; font-size:1.6rem; font-weight: 400;}
		.normal_list td.w_reply{width:auto; line-height:1.2;}
		.normal_list .w_file{width:auto;padding-right:0;}
		.normal_list td.w_file{position:relative; padding-left:12px;}
		.normal_list td.w_file .file_icon:before{
		    content: "";
		    width: 1px;
		    height: 14px;
		    position: absolute;
		    top: 10px;
		    left: 0;
		    background-color: #d2d2d2;
		    transform: translate(0, -50%);
		}
		.normal_list td.w_subject .title_in{gap:4px;}
		.normal_list td.w_subject .title_in .new_icon{padding-top:1px;}
        .normal_list td.w_subject .title_in .new_icon > i{font-size: 2.1rem;}
		.normal_list td.w_subject .title_in .secret_icon{width:1.5rem; height:2.1rem;}
	}
	@media (max-width: 500px) {
		.normal_list{margin-bottom:20px;}
		.normal_list tr{padding: 15px 10px 15px 10px;}
		.normal_list .w_subject{font-size: 1.7rem; font-weight:500; margin-bottom: 6px;}
		.normal_list .w_subject .title_in{overflow: hidden; white-space: normal; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-break: normal; line-height:1.3;}
		.normal_list .w_subject > a{align-items: end;}
		.normal_list .w_reply{width:8%;}
		.normal_list .file{margin-bottom:2px;}
		.normal_list > a {font-size: 1.5rem;}
		.normal_list td{font-size: 1.5rem;}
		.normal_list td.w_top{top: 16px; left:8px;}
		.normal_list td.w_subject{font-size:1.7rem;}
		.normal_list tr:has(td.notice_on) td.w_subject{padding-left:45px;}
		.normal_list tr:not(:has(td.notice_on)) td.w_top{display:none;}
		.normal_list td.w_subject .title_in{gap:3px;}
		.normal_list td.w_subject .title_in .new_icon{padding-top:2px;}
        .normal_list td.w_subject .title_in .new_icon > i{font-size: 1.9rem;}
        .normal_list td.w_subject .title_in .secret_icon{width:1.4rem; height:1.9rem;}
	}
	@media (max-width: 350px) {
		.normal_list td.w_top{width: 36px; font-size:1.4rem;}
		.normal_list tr:has(td.notice_on) td.w_subject{padding-left:40px;}
		.normal_list td.w_subject{margin-bottom:6px;}
		.normal_list td.w_subject .title_in .new_icon{padding-top:3px;}
		.normal_list td.w_subject .title_in{gap:2px;}
		.normal_list td.w_subject .title_in .secret_icon{padding-top:2px; width:1.3rem; height:1.8rem;}
	}
    /* 미디어쿼리 끝 */
/* 기본게시판 목록 끝 */


/* 기본게시판 보기 시작 */
.view_table_wrap {font-size:2.1rem; margin-bottom: 2em; margin-top:2em;}
.view_table_wrap .view_head{position: relative; border-top: 2px solid #111111;}
.board_view_title_topic{display: flex; align-items: center; justify-content: center; padding: 32px 20px 30px 20px; color: black; font-size: 3.5rem; font-weight: 600; text-align: center; line-height:1.4; letter-spacing: -0.5px;}
.board_view_title_list{padding: 20px 20px; background: #f9fafb; border-bottom: 1px solid #e9e9e9; border-top: 1px solid #e9e9e9;}
.board_view_title_list ul {display: flex; align-items: center; justify-content: center;}
.board_view_title_list ul li {padding: 0 10px; display: flex; align-items: center; color: #555; font-size: 1.7rem; line-height: 1.25; letter-spacing:-0.5px;}
.board_view_title_list ul li span{position: relative; padding: 0 10px 0 12px; letter-spacing: -0.025rem; color: #222;}
.board_view_title_list ul li strong{font-weight:600; padding-left:10px; color:#222; letter-spacing:-0.15rem;}
.board_view_title_list ul li span::before{
    display: block;
    content: "";
    position: absolute;
    top: calc(50% + 1px);
    left: 0;
    width: 3px;
    height: 3px;
    transform: translateY(-50%);
    background: #bbb;
	border-radius:100%;
}
.board_view_title_list ul li span::after{
    display: block;
    content: "";
    position: absolute;
    top: calc(50% + 1px);
    right: 0;
    width: 1px;
    height: 12px;
    transform: translateY(-50%);
    background: #ddd;
}
.board_view_info{padding:2em 0;}
.board_view_info > img {
	display: block;
	max-width:100%;
	margin: 0 auto;
	height: auto !important;
}
.board_view_file{display: flex; border-bottom: 1px solid #ddd; border-top: 1px solid #ddd;}
.board_view_file > strong {position: relative; width: 150px; font-weight: 600; display: flex; justify-content: center; align-items: center; background: #f9fafb; font-size:1.7rem;}
.board_view_file > div.file{display: flex; flex-wrap:wrap; width: calc(100% - 150px); align-items:center; padding:22px 20px; font-size:1.7rem;}
.board_view_file > div.file > strong{display: flex; align-items: flex-start;}
.board_view_file > div.file .chk_plus{display:inline-flex; align-items:center; position:relative; padding-left:30px; transition:0.3s; letter-spacing:-0.5px; margin:10px; min-height: 22px; line-height: 22px; word-break: break-all; transition:color .4s;}
.board_view_file > div.file .chk_plus:hover{color:#09847F;}
.board_view_file > div.file .chk_plus:hover:before{background-color:#09847F;}
.board_view_file > div.file .chk_plus strong{display:inline-block; font-size:1.6rem; font-weight:500; margin-top: 3px;}
.board_view_file > div.file .chk_plus span{color: #aaa; font-size:1.4rem;}
.board_view_file > div.file .chk_plus > i{
    position: absolute;
    top: 0;
    left: 0;
    color: white;
    font-size: 1.8rem;
    background-color: #2c2e32;
    padding: 2px;
    border-radius: 5px;
    border: 1px #232427 solid;
    transition:all .4s;
}
.board_view_file > div.file .chk_plus:hover > i{background-color: #09847F; border: 1px #06716d solid;}
.board_view_file > div.file .review{display: inline-block; margin: 5px 10px 5px -3px; border: 1px #dddddd solid; padding: 6px 9px 7px 8px; letter-spacing: -0.075rem; border-radius: 5px; font-weight: 500; color: #1e2024; box-shadow: 3px 3px 3px rgb(241 241 241); font-size: 1.6rem; font-family: 'Kakao Small Sans';}
.board_view_navigation{display:flex; border: 1px solid #e4e4e7; margin-top: 15px;}
.board_view_navigation > a {display: flex; width:50%; color: #333; font-size: 1.7rem; font-weight: 500; align-items: center;}
.board_view_navigation > a .navi_title{position: relative; width: 150px; padding: 20px 0 20px 25px; font-weight: 600; display: flex; justify-content: flex-start; align-items: center; background: #f9fafb; border-right: 1px solid #e9e9e9;}
.board_view_navigation > a .navi_title .title_in_txt{position:relative; padding-left:30px;}
.board_view_navigation > a.board_view_prev_btn:only-child{width:100%; border-right:none;}
.board_view_navigation > a.board_view_next_btn:only-child{width:100%;}
.board_view_navigation > a.board_view_prev_btn .navi_title .title_in_txt:before{
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    background: url(../images/board/expand_icon.svg) no-repeat;
    background-size: 20px;
    opacity:0.8;
}
.board_view_navigation > a.board_view_next_btn .navi_title .title_in_txt:after{
    content: "";
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
    background: url(../images/board/expand_more.svg) no-repeat;
    background-size: 20px;
    opacity:0.8;
}
.board_view_navigation > a span.post{width: calc(100% - 150px); padding: 0 25px; white-space: nowrap; overflow: hidden;text-overflow: ellipsis; transition:0.3s;}
.board_view_navigation > a span.post:hover{text-decoration: underline; color: #997a49;}
.board_view_prev_btn{border-right: 1px solid #e9e9e9;}

    /* 미디어쿼리 시작 */
    @media (max-width: 1280px){
		.view_table_wrap{font-size:2rem;}
		.board_view_title_topic{font-size: 3.2rem; padding: 29px 20px 27px 20px;}
		.board_view_navigation > a .navi_title{width: 130px; padding: 20px 0 20px 20px;}
		.board_view_navigation > a span.post{width:calc(100% - 130px);}
	}
    @media (max-width: 1024px){
		.view_table_wrap{font-size:1.9rem;}
		.board_view_title_list{padding: 15px 20px;}
		.board_view_navigation{flex-wrap:wrap;}
		.board_view_navigation > a{width:100%;}
		.board_view_navigation > a .navi_title{padding:18px 0 18px 20px;}
		.board_view_navigation > a.board_view_prev_btn{border-right:none;}
		.board_view_navigation > a.board_view_next_btn{border-top: 1px dotted #e9e9e9;}
		.board_view_navigation > a.board_view_next_btn:only-child{border-top:none;}
	}
	@media (max-width: 850px){
		.board_view_title_list ul li.m_none{display:none;}
	}
    @media (max-width: 768px){
    	.view_table_wrap {font-size:1.8rem;}
		.board_view_title_topic{padding: 22px 20px 22px 20px; font-size: 2.8rem;}
		.board_view_title_list{padding: 14px 20px 14px 20px;}
		.board_view_title_list ul li{font-size:1.6rem;}
		.board_view_title_list ul li strong{font-size:1.6rem;}
		.board_view_file > strong{width:110px; font-size:1.6rem;}
		.board_view_file > div.file{padding: 15px 20px; width: calc(100% - 110px);}
		.board_view_file > div.file .chk_plus strong{font-size:1.5rem; margin-top: 2px; line-height: 1.4;}
		.board_view_navigation > a.board_view_next_btn .navi_title .title_in_txt:after{background-size:19px;}
		.board_view_navigation > a.board_view_prev_btn .navi_title .title_in_txt:before{background-size:19px;}
		.board_view_navigation > a .navi_title{width:110px; padding:16px 0 16px 15px;}
		.board_view_navigation > a .navi_title .title_in_txt{padding-left:25px;}
		.board_view_navigation > a span.post{width:calc(100% - 110px); padding:0 20px;}
	}
    @media (max-width: 650px){
		.board_view_title_list{padding: 7px 0 0 0;}
		.board_view_title_list ul{flex-wrap:wrap;}
		.board_view_title_list ul li{width:100%; border-bottom: 1px #ddd dotted; margin-bottom: 7px; padding: 0 15px 7px 15px;}
		.board_view_title_list ul li:last-child{margin-bottom: 0; border-bottom: none;}
		.board_view_file{flex-wrap:wrap;}
		.board_view_file > strong{width:100%; padding: 9px 0 10px 0; border-bottom: 1px solid #ededed;}
		.board_view_file > div.file{width:100%; padding: 15px 5px;}
	}
	@media (max-width: 500px){
    	.view_table_wrap{font-size:1.7rem;}
		.board_view_title_topic{padding: 20px 10px 20px 10px; font-size: 2.5rem;}
		.board_view_title_list ul li span{padding:0 10px 0 10px;}
		.board_view_navigation > a .navi_title{width: 95px; padding:14px 0 14px 14px;}
		.board_view_navigation > a.board_view_prev_btn .navi_title .title_in_txt:before{width: 17px; height: 17px; background-size: 17px; left: -2px;}
		.board_view_navigation > a.board_view_next_btn .navi_title .title_in_txt:after{width: 17px; height: 17px; background-size: 17px; left: -2px;}
		.board_view_navigation > a .navi_title .title_in_txt{padding-left:20px; letter-spacing: -0.075rem;}
		.board_view_navigation > a span.post{width:calc(100% - 95px); padding: 0 15px;}
	}
	@media (max-width: 350px){
		.board_view_title_topic{padding: 18px 10px 18px 10px; font-size: 2.4rem;}
		.board_view_title_list ul li{font-size:1.5rem;}
		.board_view_title_list ul li strong{font-size:1.5rem; padding-left:8px;}
		.board_view_file > div.file{font-size:1.6rem;}
		.board_view_file > div.file .chk_plus{padding-left:28px;}
		.board_view_file > div.file .chk_plus > i{font-size:1.6rem;}
		.board_view_navigation > a .navi_title{width: 65px; padding:15px 0; justify-content: center;}
		.board_view_navigation > a.board_view_prev_btn .navi_title .title_in_txt:before{display:none;}
		.board_view_navigation > a.board_view_next_btn .navi_title .title_in_txt:after{display:none;}
		.board_view_navigation > a .navi_title .title_in_txt{padding-left:0; font-size:1.6rem;}
		.board_view_navigation > a span.post{width:calc(100% - 65px); font-size:1.6rem; padding: 0 12px;}
	}
	/* 미디어쿼리 끝 */
/* 기본게시판 보기 끝 */


/* 게시판 쓰기 시작 */
.normal_write{border-top: 2px solid black; border-bottom: 1px solid #ccc;}
.normal_write .board_item_group {position: relative;}
.normal_write input[type="text"]{height:48px; border: 1px solid #ccc;}
.normal_write input[type="password"]{height:48px; border: 1px solid #ccc;}
.normal_write select{height:48px; padding: 0 70px 0 14px;  background:url(../images/board/expand_more.svg) center no-repeat; background-size:22px; background-position:top +14px right +10px; border-radius:5px; box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);  -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%); color:#595959; font-size:1.7rem; line-height:1; font-weight:500;  border:1px #c5c9d6 solid; position:relative;}
.normal_write input[type="checkbox"]{width: 22px; height: 22px; border-radius: 3px; border: 1px #c5c9d6 solid; accent-color: #7a6842;}
.normal_write .bl_plus{border-left:1px solid #ddd;}
.normal_write .r_l{margin-right:5px;}
.normal_write .radio_input_wrap{display:flex; padding: 0 5px;}
.normal_write .radio_input_wrap .radio_one{display:flex; line-height:1; align-items:center;}
.normal_write .radio_input_wrap .radio_one:first-of-type{padding-right:30px; position:relative;}
.normal_write .radio_input_wrap .radio_one:first-of-type:before{
    display: block;
    content: "";
    position: absolute;
    top: 5px;
    right: 14px;
    width: 1px;
    height: 12px;
    background: #e5e5e5;
}
.normal_write .board_item_group dl{display: block; width: 100%; padding: 20px 0 0 0; font-size: 1.6rem;}
.normal_write .board_item_group dl:last-child{border-bottom:none;}
.normal_write .board_item_group dl > dt{display: block; width:180px; text-align: left; color: black;}
.normal_write .board_item_group dl > dd{display: block;  width:calc(100% - 180px); padding: 10px 0 0 0; color: #222; text-align: left;}
.normal_write .board_item_group dl > dd.file_padding >div{padding:0 !important; }
.normal_write .board_item_group dl.two_frame > dd{width:calc(50% - 180px);}
.normal_write .board_item_group dl.editor_here > dt{display:none;}
.normal_write .board_item_group dl.editor_here > dd{padding:0;}
.normal_write .board_item_group dl dd textarea {
  width: 100%;
  min-height: 100px;
  padding: 10px 12px;
  font-size: 1.6rem;
  border: 1px solid #ddd;
  border-radius: 4px;
  resize: vertical;
  line-height: 1.5;
}
.normal_write .board_item_group .input_box_wrap {display: block; width: 100%;}
.normal_write .is_required {display: inline-block; padding-right: 8px; position: relative;}
.normal_write .is_required::after {
    content: '';
    width: 4px;
    height: 4px;
    background-color: #FF0000;
    position: absolute;
    right: 0;
    top: 0px;
    z-index: 1;
    border-radius: 2px;
}
.normal_write .input_control[readonly] {background-color: #f5f5f5; color:#666;}
.normal_write .input_control{border-color: #ddd;}
.normal_write .hd_element{position: absolute; width: 0; height: 0; overflow: hidden; font-size: 0; line-height: 0; text-indent: -999999px;}
.normal_write .board_editor_wrap{padding:25px 0;}
.normal_write .board_editor_wrap textarea{width:100%; height:500px;}
.normal_write .board_item_group dl > dt > label{cursor: auto;}
.normal_write .board_item_group .input_box_wrap input[type="file"]{padding: 7px; background: #fff; display: flex; color: gray; font-size: 1.5rem;}
.normal_write .board_item_group .file_upload_foam > dt > label{line-height:1.5;}
.normal_write .board_item_group .file_upload_foam .choice_file_box{padding-bottom:18px; margin-bottom:18px; border-bottom:1px #cccccc dotted;}
.normal_write .board_item_group .file_upload_foam .choice_file_box:last-child{padding-bottom:0; margin-bottom:0; border-bottom:none;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box{display: flex; align-items: center; gap:0 10px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice{display:inline-flex; align-items: center; gap:0 5px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice label{position:relative; padding-right:10px; letter-spacing:-0.075rem;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice label::after{
    content: '';
    width: 1px;
    height: 15px;
    background-color: #dddddd;
    position: absolute;
    right: 0;
    top: 3px;
    z-index: 1;
}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice input[type='radio']{-webkit-appearance:none; -moz-appearance:none; appearance: none; width:18px; height:18px; border:2px solid #c1c1c1;  border-radius:50%; outline:none;  cursor:pointer; margin-top:1px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice input[type='radio']:checked{background-color:#057edf; border:3px solid #fff; box-shadow:0 0 0 2px #88c0ed;} 
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_explain_box{margin-top:8px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_explain_box input{width:100%; min-height:48px; border: 1px #e0dfec solid; font-size:1.8rem; letter-spacing: -0.075rem;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box{width:100%;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap{display: flex; align-items: center; min-height: 48px; padding: 10px 11px; font-size: 1.8rem; letter-spacing: -0.025rem; background: #fff; border: 1px #e0dfec solid; color: gray;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary{display: inline-flex; align-items: center;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label{display: inline-flex; align-items: flex-start; font-weight: 600; font-size: 1.7rem;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w{width: calc(100% - 30px); line-height: 22px; color:#1e1e1e; font-size:1.7rem; font-weight: 500; letter-spacing: -0.075rem;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w .chk_file_name{display: inline; align-items: center; position:relative; color:#666;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w .chk_file_name .chk_file_name_txt{white-space: normal; overflow-wrap: anywhere; word-break: break-word;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w .del_txt{display:inline-block; font-size:1.7rem; margin-left:1px; margin-right:5px; color:#0029ff;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w .del_txt .par1{margin-right:1px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary label .bitchk_w .del_txt .par2{margin-left:1px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary input[type=checkbox] {display:none; position: absolute; top: 0; left: 0; width: 0; height: 0; opacity: 0;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary input[type=checkbox] + label span.custom_checkbox{display: inline-block; width: 24px; height: 24px; border: 2px solid #c7c7c7; box-shadow: 2px 2px 2px rgb(0 0 0 / 5%); margin-right: 7px; box-sizing: border-box; vertical-align: middle; transition: all 0.3s cubic-bezier(0.465, 0.183, 0.153, 0.946); -webkit-transition: all 0.3s cubic-bezier(0.465, 0.183, 0.153, 0.946); border-radius: 3px;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary input[type=checkbox]:checked + label span.custom_checkbox{ border-color: #111; background: url(../images/contents/check.svg) no-repeat center center #111;}
.normal_write .board_item_group .file_upload_foam .choice_file_box .file_upload_box .del_check_box_wrap .chk_primary input[type=checkbox]:checked + label .chk_file_name::after{
    content: "* 저장 후 반영됩니다.";
    display: inline-block;
    color: #F44336;
    font-size: 1.6rem;
}
.normal_write .board_item_group .file_upload_foam .file_upload_box .input_box_wrap input{border: 1px #e0dfec solid; height: auto; padding: 7px; font-size: 1.8rem; background-color:white; letter-spacing:-0.025rem;}
.normal_write .board_item_group .file_upload_foam .file_upload_box .input_box_wrap input.is_attached{color:black;}
.normal_write .board_item_group .file_upload_foam .file_upload_box .input_box_wrap input::file-selector-button{font-family: "Kakao Big Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif; border: none; background: #057edf; padding: 5px 10px; border-radius: 3px; color: #fff; cursor: pointer; font-size:1.6rem; letter-spacing:-0.5px;margin-right:8px;}

/* CMS 첨부파일 컴포넌트 */
.normal_write .fileList { list-style:none; padding:0; margin:0; }
.normal_write .fileList li {padding:0; border-bottom:1px solid #ddd; }
.normal_write .fileList li:last-child { border-bottom:none; }
.normal_write .fileList dl { display:flex !important; flex-direction:column; gap:8px; border-bottom:none !important; min-height:auto !important; padding:8px 0 !important; table-layout:unset !important; }
.normal_write .fileList dl dt,
.normal_write .fileList dl dd { display:flex !important; align-items:center; gap:8px; width:100% !important; background:none !important; border:none !important; padding:0 !important; height:auto !important; vertical-align:unset !important; }
.normal_write .fileList dl dt input[type="file"] { flex:1; height:auto; padding:7px; font-size:1.5rem; border:1px solid #e0dfec; background:#fff; width:auto !important; }
.normal_write .fileList dl dt input[type="file"]::file-selector-button { border:none; background:#057edf; padding:5px 10px; border-radius:3px; color:#fff; cursor:pointer; font-size:1.5rem; margin-right:8px; }
.normal_write .fileList dl dd input[type="text"] { flex:1; height:42px; padding:0 12px; font-size:1.5rem; border:1px solid #e0dfec; width:auto !important; }
.normal_write .fileList .button { display:none; }
.normal_write .help-block { display:block; font-size:1.5rem; color:#888; margin-bottom:8px; font-weight:600; line-height:1.2;}
.normal_write .help-block span{word-break: break-all;}
.normal_write #addFileList .btn { padding:4px 12px; font-size:1.4rem; border:1px solid #ddd; border-radius:4px; background:#fff; cursor:pointer; }
#smart_editor2 .se2_input_area { width: 100% !important; }
#smart_editor2 { width: 100% !important; }
#smart_editor2 iframe { width: 100% !important; }


	/* 미디어쿼리 시작 */
		@media (min-width: 601px){
			.normal_write .board_item_group dl {display: table; table-layout: fixed; width: 100%; height: auto; min-height: 50px; border-bottom: 1px solid #ddd; padding: 0; font-size: 1.8rem;}
			.normal_write .board_item_group dl > dt {display: table-cell; width: 200px; background-color: #f8f8f8; padding: 8px 16px; vertical-align: middle; background-color: #f8f8f8; border-right: 1px solid #ddd; color: black; padding: 8px 20px;}
			.normal_write .board_item_group dl > dd {display: table-cell; width: auto; background: #fff; padding: 19px 0px 19px 20px; vertical-align: middle;}
			/*.normal_write .board_item_group dl.two_frame > dd:first-of-type{padding:12px 16px;}*/
			.normal_write .board_item_group .input_box_wrap input{width:320px;}
			.normal_write .board_item_group .wfull input{width:100%;}
			.normal_write .input_control{display: inline-block; width: 32px; height: 45px; padding: 12px 16px; font-size:1.8rem;}
			.normal_write .board_editor_wrap {padding: 30px 0;}
		}
	    @media (max-width: 1280px){
			.normal_write .board_editor_wrap{padding: 20px 0;}
		}
		@media (min-width: 601px) and (max-width: 1280px){
			.normal_write .board_item_group dl.two_frame.width_edit{display: flex; flex-wrap: wrap;}
			.normal_write .board_item_group dl.two_frame.width_edit > dt{display: flex; align-items: center; border-bottom: 1px solid #ddd;}
			.normal_write .board_item_group dl.two_frame.width_edit > dt.bl_plus{border-left:none;}
			.normal_write .board_item_group dl.two_frame.width_edit > dd{width:calc(100% - 200px); border-bottom: 1px solid #ddd;}
			.normal_write .board_item_group dl.two_frame.width_edit > dd:last-of-type{border-bottom:none;}
		}
		@media (max-width: 910px){
			.normal_write .board_item_group dl > dt{width:140px;}
			.normal_write .board_item_group dl > dd{width:calc(100% - 140px);}
			.normal_write .board_item_group dl.two_frame{display: flex; flex-wrap: wrap;}
			.normal_write .board_item_group dl.two_frame > dt{width:140px; display: flex; align-items: center;}
			.normal_write .board_item_group dl.two_frame > dd{width:calc(50% - 140px);}
			.normal_write .board_item_group dl.two_frame > dt:last-of-type{border-bottom:none;}
			.normal_write .board_item_group dl.two_frame > dd:last-of-type{border-bottom:none;}
			.normal_write select{width:100%; height:48px; border-radius: 3px; background-position: top 19px right 15px;}
			.normal_write .radio_input_wrap{height:48px; align-items: center;}
		}
		@media (min-width: 601px) and (max-width: 910px){
			.normal_write .board_item_group dl.two_frame.width_edit > dd{width:calc(100% - 140px);}
		}
		@media (max-width: 600px){
			.normal_write .board_item_group dl{padding:0; display:block; border-bottom:none;}
			.normal_write .board_item_group dl > dt{width: 100%; height: 50px; padding: 0 13px; background-color: #f8f8f8; display: flex; align-items: center; border-bottom: 1px solid #ddd; border-top: 1px solid #ddd; font-size: 1.6rem; color: black;}
			.normal_write .board_item_group dl:first-child > dt{border-top:none;}
			.normal_write .board_item_group dl > dd{width: 100%; padding:12px 7px 12px 7px; display:block; font-size: 1.8rem;}
			.normal_write .board_item_group dl.two_frame{display:block;}
			.normal_write .board_item_group dl.two_frame > dt{width: 100%;}
			.normal_write .board_item_group dl.two_frame > dt:first-of-type{padding-top:0;}
			.normal_write .board_item_group dl.two_frame > dd{width: 100%; border-bottom:none; padding:15px 7px 15px 7px;}
			.normal_write .board_item_group dl.two_frame > dt:last-of-type{border-bottom:1px solid #ddd; border-left:none;}
			.normal_write .board_item_group dl.editor_here > dt{display:flex;}
			.normal_write .board_item_group .input_box_wrap input{width: 100%;  height:50px; padding:3px 10px; font-size:1.8rem;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box{padding-bottom:15px; margin-bottom:15px;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box:first-of-type{margin-top:5px;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box:last-of-type{margin-bottom:5px;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice label{font-size:1.7rem;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box .file_explain_box{margin-top:5px;}
			.normal_write .board_item_group .file_upload_foam .file_upload_box .input_box_wrap input{font-size:1.7rem;}
			.normal_write .board_editor_wrap{padding: 20px 7px 20px 7px;}
			.normal_write .board_editor_wrap textarea{height:300px;}
		}
		@media (max-width: 500px){
			.normal_write .board_item_group dl > dt{font-size: 1.7rem; height:45px; padding: 0 15px;}
			.normal_write .board_item_group dl > dd{padding:15px 10px;}
			.normal_write .board_item_group dl.two_frame > dd{padding:15px 10px;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box{flex-wrap: wrap;}
			.normal_write .board_item_group .file_upload_foam .choice_file_box .file_info_box .thumbnail_img_choice{margin-bottom: 15px;}
			.normal_write .board_editor_wrap{padding: 17px 10px;}
			.normal_write .radio_input_wrap{height:35px;}
			.normal_write select{width:100%;}
		}
	/* 미디어쿼리 끝 */
/* 게시판 쓰기 끝 */

/* 게시판 하단 버튼 시작 */
.btn_wrapper{display: flex; gap:0 10px; margin-top: 30px; flex-wrap: wrap; justify-content: end;}
.btn_wrapper a{display: flex; justify-content: center; align-items: center; height:48px; padding: 0 20px; transition:0.3s; font-size:1.8rem; line-height:1; border-radius:48px;}
.btn_wrapper a.list_btn{padding: 0 23px 0 23px;}
.btn_wrapper a.list_btn span{padding-right:23px; padding-top:1px; position:relative;}
.btn_wrapper a.list_btn span:before{
    content: "";
    width: 13px;
    height: 14px;
    position: absolute;
    top: calc(50% + 1px);
    right: 0;
    transform: translate(0, -50%);
    background: url(../images/board/menu_list_btn_icon.svg) no-repeat;
    background-size: 13px;
    background-position: center;
}
.btn_black{background: #111; color: #fff; border: 1px solid #111;}
.btn_red{background: #f2413c; color: #fff; border: 1px solid #e22d2f;}
.btn_blue{background: #2c76be; color: #fff; border: 1px solid #2169af;}
.btn_gray{background: #555; color: #fff; border: 1px solid #424242;}
.btn_brown{background:#7a6842; color: #fff; border: 1px solid #52452a;}
.btn_white{background: #fff; color: #505c76; border: 1px solid #a7acbb; box-shadow: 2px 2px 0px rgb(202 202 202 / 20%);}

	/* 미디어쿼리 시작 */
    @media (max-width: 1024px){
		.btn_wrapper{margin-top:20px;}
		.btn_wrapper a.list_btn{padding: 0 13px 0 18px;}
	}
    @media (max-width: 768px){
		.btn_wrapper{margin-top:15px;}
		.btn_wrapper a.list_btn{padding: 0 11px 0 16px;}
		.btn_wrapper a.list_btn span{padding-right:22px;}
	}
    @media (max-width: 500px){
		.btn_wrapper a.list_btn{padding: 0 9px 0 14px;}
		.btn_wrapper a.list_btn span{padding-right:22px;}
	}
	/* 미디어쿼리 끝 */
/* 게시판 하단 버튼 끝 */


/* 게시판 하단(기본게시판 쓰기 커스텀) 시작 */
.btn_wrapper.write_btn_wrap{justify-content: center; margin-top:5vh;}
.btn_wrapper.write_btn_wrap a{padding: 0 40px;}
.btn_wrapper.write_btn_wrap a:first-child{margin-left:0;}

	/* 미디어쿼리 시작 */
		@media (min-width: 601px){
			.btn_wrapper.write_btn_wrap a{width:150px; height:50px; font-size:1.8rem;}
		}
		@media (max-width: 1024px){
			.btn_wrapper.write_btn_wrap{gap:0 8px;}
			.btn_wrapper.write_btn_wrap a{height:48px;}
		}
		@media (max-width: 600px){
			.btn_wrapper.write_btn_wrap{margin-top:4vh;}
			.btn_wrapper.write_btn_wrap a{padding: 0 48px 0 48px;}
		}
		@media (max-width: 350px){
			.btn_wrapper.write_btn_wrap a{padding: 0 40px 0 40px; font-size: 1.7rem;}
		}
	/* 미디어쿼리 끝 */
/* 게시판 하단(기본게시판 쓰기 커스텀) 끝 */


/* 액션 영역 시작 */
	:root{
	  --gf-line:rgba(15,30,28,0.09); --gf-line-strong:rgba(15,30,28,0.16);
	  --surface:#ffffff; --canvas:#f6f8f7;
	  --ease:cubic-bezier(.22,.7,.22,1);
	  --shadow-sm:0 1px 2px rgba(15,30,28,.04),0 1px 3px rgba(15,30,28,.05);
	  --shadow-md:0 10px 24px rgba(15,30,28,.06),0 3px 8px rgba(15,30,28,.04);
	  --shadow-lg:0 24px 50px rgba(15,30,28,.10),0 6px 16px rgba(15,30,28,.06);
    --brand: #0c8a85;
    --brand-deep: #086b67;
    --brand-mist: #f0f7f5;
    --brand-tint: #e2efed;
    --ink-900: #0e1f1c;
    --ink-800: #1c2926;
    --ink-700: #34423e;
    --ink-600: #4a5854;
    --ink-500: #6b7773;
    --ink-400: #8c9692;
    --ink-300: #b6beba;
    --ink-200: #d8ddda;
    --ink-100: #ecefed;
    --ink-50: #f6f8f7;
    --gf-line: rgba(15, 30, 28, 0.09);
    --gf-line-strong: rgba(15, 30, 28, 0.16);
    --surface: #ffffff;
    --canvas: #f6f8f7;
    --ease: cubic-bezier(.22, .7, .22, 1);
    --shadow-sm: 0 1px 2px rgba(15, 30, 28, .04), 0 1px 3px rgba(15, 30, 28, .05);
    --shadow-md: 0 10px 24px rgba(15, 30, 28, .06), 0 3px 8px rgba(15, 30, 28, .04);
    --shadow-lg: 0 24px 50px rgba(15, 30, 28, .10), 0 6px 16px rgba(15, 30, 28, .06);
	}
  .nav-row{display:flex;align-items:center;justify-content:center;gap:12px;margin-top: 0;}
  .nav-row .nav-btn{display:inline-flex; align-items:center; gap:8px; padding:15px 32px; border-radius:999px; font-weight:600; letter-spacing:-0.025rem; transition:all .22s var(--ease); cursor:pointer;}
  .nav-row .nav-btn.primary{background:var(--ink-900); color:#fff; border:1px solid var(--ink-900);}
  .nav-row .nav-btn.primary:hover{background:var(--brand); border-color:var(--brand);}
  .nav-row .nav-btn.secondary{background:#fff; color:var(--ink-700); border:1px solid var(--gf-line-strong);}
  .nav-row .nav-btn.secondary:hover{border-color:var(--ink-900); color:var(--ink-900);}
  .nav-row .nav-btn svg{width:14px; height:14px;}
  .nav-row .nav-btn.edit { background: var(--brand); color: #fff; border: 1px solid var(--brand); }
  .nav-row .nav-btn.edit:hover { background: var(--brand-deep); border-color: var(--brand-deep); }
  .nav-row .nav-btn.delete { background: #e84b43; color: #fff; border: 1px solid #e84b43; }
  .nav-row .nav-btn.delete:hover { background: #c73c35; border-color: #c73c35; } 

  .contact-info{display:flex; align-items:center; padding:18px 24px; background:var(--canvas); border-radius:12px; gap:20px; flex-wrap:wrap; margin-top:24px;}
  .contact-info .label{display:inline-flex; align-items:center; gap:8px; font-size:1.5rem; font-weight:700; color:var(--ink-900); letter-spacing:0.02em;}
  .contact-info .label::before{content:""; width:14px; height:14px; background:var(--brand); -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/></svg>") center/contain no-repeat; mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='currentColor' d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/></svg>") center/contain no-repeat;}
  .contact-info .item{display:flex; align-items:center; gap:10px; font-size:1.55rem; color:var(--ink-500);}
  .contact-info .item strong{color:var(--ink-800); font-weight:600; margin-right:2px;}
  .contact-info .item a{color:var(--brand); font-weight:700;}
  .contact-info .item + .item::before{content:""; width:1px; height:12px; background:var(--ink-200);}
  
      /* 미디어쿼리 시작 */
      @media (max-width:768px){
          .action-zone{gap:16px;}
          
          .license-row{padding:16px 18px; margin-top:16px;}
          .license-row p{font-size:1.45rem;}
          .nav-row{flex-wrap:wrap; width:100%; gap:10px;}
          .nav-row .nav-btn{flex:1; justify-content:center; padding:15px 22px; font-size:1.55rem;}
          .contact-info{padding:16px; gap:12px; flex-direction:column; align-items:flex-start; margin-top:16px;}
          .contact-info .item{font-size:1.5rem;}
          .contact-info .item + .item::before{display:none;}
      }
      @media (max-width:500px){
        .nav-row .nav-btn.secondary{flex:auto; width:100%;}
      }
      /* 미디어쿼리 끝 */
  /* 액션 영역 끝 */

/* ─────────────────────────────────────────────────────────
   언론에서 본 구청장
   ───────────────────────────────────────────────────────── */
.ngm-board-list-wrap .ngm-board__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 2px solid var(--ngm-ink);
}

.ngm-board-list-wrap .ngm-board__item {
  border-bottom: 1px solid var(--ngm-line);
}

/* 항목 전체를 감싸는 링크 */
.ngm-board-list-wrap .ngm-board__link {
  display: flex;
  gap: 32px;
  padding: 32px 0;
  text-decoration: none;
  color: inherit;
  transition: background .15s;
}
.ngm-board-list-wrap .ngm-board__link:hover {
  background: rgba(30, 95, 204, .025);
}

/* 썸네일 */
.ngm-board-list-wrap .ngm-board__thumb {
  flex: 0 0 320px;
  height: 213px;
  overflow: hidden;
  border-radius: var(--ngm-r-sm);
  background: var(--ngm-soft);
}
.ngm-board-list-wrap .ngm-board__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.ngm-board-list-wrap .ngm-board__link:hover .ngm-board__thumb img {
  transform: scale(1.05);
}

/* 콘텐츠 영역 */
.ngm-board-list-wrap .ngm-board__info {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 4px 0;
}

/* 제목 */
.ngm-board-list-wrap .ngm-board__title {
  margin: 0 0 10px;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: -0.025em;
  color: var(--ngm-ink);
  line-height: 1.35;
  text-wrap: pretty;
  transition: color .15s;
}
.ngm-board-list-wrap .ngm-board__link:hover .ngm-board__title {
  color: var(--ngm-blue);
}

/* 메타 (날짜, 조회수) */
.ngm-board-list-wrap .ngm-board__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.4rem;
  color: var(--ngm-sub);
  margin-bottom: 16px;
}
.ngm-board-list-wrap .ngm-board__meta-sep {
  display: inline-block;
  width: 1px;
  height: 11px;
  background: var(--ngm-line-strong);
}

/* 본문 발췌 */
.ngm-board-list-wrap .ngm-board__excerpt {
  font-size: 1.5rem;
  line-height: 1.85;
  color: var(--ngm-text);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-wrap: pretty;
}


/* ─────────────────────────────────────────────────────────
   페이지네이션 (독립형)
   ───────────────────────────────────────────────────────── */
.board-paging {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4px;
  margin-top: 52px;
  flex-wrap: wrap;
}

.board-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 6px;
  border-radius: 8px;
  font-size: 1.5rem;
  font-family: inherit;
  color: var(--ngm-sub);
  background: transparent;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  transition: all .15s;
}

.board-page:hover {
  background: var(--ngm-soft);
  color: var(--ngm-ink);
  border-color: var(--ngm-line);
}

.board-page.is-active {
  background: var(--ngm-blue-dark);
  color: #fff;
  border-color: var(--ngm-blue-dark);
  font-weight: 700;
}

.board-page--nav {
  border-color: var(--ngm-line);
  color: var(--ngm-text);
}

.board-page--nav:hover {
  background: var(--ngm-soft);
  border-color: var(--ngm-sub);
}

.board-page--nav svg {
  width: 14px;
  height: 14px;
  display: block;
}

/* ─────────────────────────────────────────────────────────
   반응형 (Mobile ≤767px)
   ───────────────────────────────────────────────────────── */
@media (max-width: 767px) {
  .board-paging {
    gap: 3px;
    margin-top: 36px;
  }
  .board-page {
    min-width: 34px;
    height: 34px;
    font-size: 1.4rem;
  }
}



@media (max-width: 1079px) {
  .ngm-board-list-wrap .ngm-board__thumb { flex: 0 0 260px; height: 173px; }
  .ngm-board-list-wrap .ngm-board__title { font-size: 2rem; }
  .ngm-board-list-wrap .ngm-board__link  { gap: 24px; padding: 28px 0; }
}

@media (max-width: 767px) {
  .ngm-board-list-wrap .ngm-board__link {
    flex-direction: column;
    gap: 14px;
    padding: 22px 0;
  }
  .ngm-board-list-wrap .ngm-board__thumb {
    flex: none;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
  }
  .ngm-board-list-wrap .ngm-board__title   { font-size: 1.7rem; margin-bottom: 8px; }
  .ngm-board-list-wrap .ngm-board__meta    { margin-bottom: 10px; }
  .ngm-board-list-wrap .ngm-board__excerpt { -webkit-line-clamp: 2; font-size: 1.4rem; }

  .ngm-board-list-wrap .ngm-board__paging { gap: 3px; margin-top: 36px; }
  .ngm-board-list-wrap .ngm-board__page   { min-width: 34px; height: 34px; font-size: 1.4rem; }
}
/* 기간검색 포함 검색바 변형 - 시작 */

/* 컨테이너 오버라이드 */
.ngm-search-box--date {
  padding: 0;
  gap: 0;
  align-items: stretch;
  min-height: 66px;
  overflow: hidden;
}

/* 총 게시물 영역 */
.ngm-search-box--date .ngm-search-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 18px;
  flex-shrink: 0;
  border-right: 1px solid var(--ngm-line);
}

/* 기간 검색 그룹 */
.ngm-search-date {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 16px;
  flex-shrink: 1;
  border-right: 1px solid var(--ngm-line);
}
.ngm-search-date-label {
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--ngm-sub);
  white-space: nowrap;
  letter-spacing: 0.01em;
  flex-shrink: 0;
  margin-right: 2px;
}
.ngm-search-date-input {
  height: 45px;
  width: 140px;
  min-width: 90px;
  padding: 0 10px;
  border: 1px solid var(--ngm-line-strong);
  border-radius: var(--ngm-r-sm);
  font-family: inherit;
  font-size: 1.6rem;
  color: var(--ngm-ink);
  background: #fff;
  outline: none;
  cursor: pointer;
  transition: border-color .15s, box-shadow .15s;
  flex-shrink: 0;
}
.ngm-search-date-input::-webkit-calendar-picker-indicator {
  opacity: .5;
  cursor: pointer;
}
.ngm-search-date-input:focus {
  border-color: var(--ngm-blue);
  box-shadow: 0 0 0 3px rgba(30, 95, 204, .12);
}
.ngm-search-date-sep {
  font-size: 1.4rem;
  color: var(--ngm-faint);
  flex-shrink: 0;
}

/* 검색 폼 — 남은 공간 차지 */
.ngm-search-box--date .ngm-search-form {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
}
.ngm-search-box--date .ngm-search-form.alone{flex:none;}
.ngm-search-box--date .ngm-search-form .select_two_ver_wrap{    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    max-width: 100%;}
.ngm-search-box--date .ngm-search-form .select_two_ver_wrap .ngm-search-select.two-ver{min-width: 90px;}
.ngm-search-box--date .ngm-search-form .ngm-search-input {
  flex: 1 1 auto;
  width: auto;
  min-width: 100px;
  height: 50px;
}
.ngm-search-box--date .ngm-search-form .ngm-search-select {
  flex-shrink: 0;
  height: 50px;
}

/* 검색 버튼 — 텍스트 + 아이콘 함께 */
.ngm-search-box--date .ngm-search-submit {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: auto;
  height: 50px;
  padding: 0 22px;
  font-size: 1.5rem;
  font-weight: 700;
  font-family: inherit;
  letter-spacing: -0.02em;
  flex-shrink: 0;
  border-radius: var(--ngm-r-sm);
}
.ngm-search-box--date .ngm-search-submit svg {
  display: block;
  width: 18px;
  height: 18px;
}
.ngm-search-box--date .ngm-search-submit span{margin-bottom:1px;}

	/* 미디어쿼리 시작 */
	/* 태블릿 (≤1079px): 2행 레이아웃 */
	@media (max-width: 1079px) {
		.ngm-search-box--date {
			flex-wrap: wrap;
			min-height: auto;
		}
		/* 행 1: 총 게시물 + 기간 (가로 나란히) */
		.ngm-search-box--date .ngm-search-head {
			flex-shrink: 0;
			padding: 0 18px;
			border-right: 1px solid var(--ngm-line);
			border-bottom: 1px solid var(--ngm-line);
		}
    .ngm-search-box--date .ngm-search-head.alone{border:none; padding-top:15px;}
		.ngm-search-date {
			flex: 1 1 auto;
			padding: 0 18px;
			gap: 8px;
			border-right: none;
			border-bottom: 1px solid var(--ngm-line);
			min-height: 58px;
		}
		/* 행 2: 검색 폼 (전체 너비) */
		.ngm-search-box--date .ngm-search-form {
			flex: none;
			width: 100%;
			padding: 12px 16px;
			gap: 8px;
		}
		.ngm-search-box--date .ngm-search-form .ngm-search-select { height: 45px; }
		.ngm-search-box--date .ngm-search-form .ngm-search-input  { height: 45px; width: auto; flex: 1 1 auto; min-width: 0; }
		.ngm-search-box--date .ngm-search-submit { padding: 0 22px; font-size: 1.5rem; height: 45px; }
    .ngm-search-date-input{height: 40px;}
	}

	/* 모바일 (≤767px): 3행 스택 */
	@media (max-width: 767px) {
		.ngm-search-box--date {
			flex-wrap: wrap;
			min-height: auto;
		}
		/* 행 1: 총 게시물 */
		.ngm-search-box--date .ngm-search-head {
			width: 100%;
			padding: 12px 16px;
			border-right: none;
			border-bottom: 1px solid var(--ngm-line);
		}
		/* 행 2: 검색기간 */
		.ngm-search-date {
			width: 100%;
			padding: 12px 16px;
			border-right: none;
			border-bottom: none;
			flex-wrap: wrap;
			gap: 5px;
		}
		.ngm-search-date-label { font-size: 1.5rem; width:100%; }
		.ngm-search-date-input { width: 116px; font-size: 1.5rem; }
		.ngm-search-date-sep   { font-size: 1.3rem; }
		/* 행 3: 검색어 + 버튼 */
		.ngm-search-box--date .ngm-search-form {
			flex: none;
			width: 100%;
			padding: 12px 16px;
			gap: 6px;
			flex-wrap: nowrap;
      border-top: 1px #dde0e6 solid;
		}
		.ngm-search-box--date .ngm-search-form .ngm-search-select {flex: 0 0 74px; padding-right: 20px; }
		.ngm-search-box--date .ngm-search-submit {
			padding: 0 14px;
			font-size: 1.4rem;
			gap: 4px;
		}
		.ngm-search-box--date .ngm-search-submit svg { width: 14px; height: 14px; }
    .ngm-search-box--date .ngm-search-form.two-ver{flex-wrap:wrap;}
    .ngm-search-box--date .ngm-search-form .select_two_ver_wrap{width:100%;}
	}
	@media (max-width: 400px) {
    .ngm-search-box--date .ngm-search-form{flex-wrap:wrap;}
    .ngm-search-box--date .ngm-search-form .ngm-search-select{flex: auto; width: 100%;}
  }
  @media (max-width: 350px) {
    .ngm-search-box--date .ngm-search-submit{width:100%;}
  }
	/* 미디어쿼리 끝 */
/* 기간검색 포함 검색바 변형 - 끝 */


/* 갤러리 게시판 목록 시작 */
.gallery_area{
	--g-green:#09847F;
	--g-green-d:#066b66;
	--g-grad:linear-gradient(135deg, #0ba39d 0%, #09847F 100%);
	--g-ink:#1c2b25;
	--g-text:#53625b;
	--g-muted:#8a978f;
	--g-line:rgba(9, 79, 75, 0.13);
	--g-soft:#eef5f0;
	width:100%;
	max-width:1660px;
	margin:0 auto;
	letter-spacing:-0.02rem;
}

/* ---------- 그리드 (col-* 클래스 무력화 후 CSS Grid) ---------- */
.gallery_area .lst-photo-board2{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:34px 30px;
}
.gallery_area .lst-photo-board2 > li{
	float:none; width:auto; padding:0; margin:0;
	list-style:none;
}
.gallery_area .lst-photo-board2 > li > a{
	display:block;
	height:100%;
	color:inherit;
}

/* ---------- 카드 ---------- */
.gallery_area .lst-photo-wrap{
	display:flex;
	flex-direction:column;
	background:#fff;
	border:1px solid var(--g-line);
	border-radius:20px;
	overflow:hidden;
	transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.gallery_area .lst-photo-board2 > li > a:hover .lst-photo-wrap{
	transform:translateY(-6px);
	border-color:rgba(9, 132, 127, 0.40);
	box-shadow:0 18px 40px rgba(9, 79, 75, 0.13);
}

/* ---------- 이미지 (CMS 인라인 스타일 override) ---------- */
.gallery_area .img_wrap{
	position:relative;
	overflow:hidden;
	background:var(--g-soft);
}
.gallery_area .img_wrap .img{
	height:auto !important;
	aspect-ratio:10 / 7;
	background-color:var(--g-soft);
	background-position:center center !important;
	background-size:cover !important;
	background-repeat:no-repeat !important;
	transition:transform .55s cubic-bezier(0.22, 1, 0.36, 1);
}
.gallery_area .img_wrap .img > img{width: 100% !important; height: 100% !important; object-fit: cover;}
/* 호버 시 우측 상단 '보기' 버튼 */
.gallery_area .img_wrap::before{
	content:'';
	position:absolute; top:14px; right:14px; z-index:2;
	width:40px; height:40px; border-radius:50%;
	background-color:rgba(255, 255, 255, 0.95);
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2309847F' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M9 7h8v8'/%3E%3C/svg%3E");
	background-repeat:no-repeat; background-position:center; background-size:19px;
	box-shadow:0 6px 16px rgba(9, 79, 75, 0.18);
	opacity:0; transform:translateY(-6px) scale(.85);
	transition:opacity .3s ease, transform .3s ease;
}
.gallery_area .lst-photo-board2 > li > a:hover .img_wrap::before{
	opacity:1; transform:translateY(0) scale(1);
}
/* 이미지 위 은은한 정원 톤 가림막 (호버 시 살짝) */
.gallery_area .img_wrap::after{
	content:'';
	position:absolute; inset:0;
	background:linear-gradient(180deg, rgba(9, 79, 75, 0) 55%, rgba(9, 79, 75, 0.18) 100%);
	opacity:0;
	transition:opacity .3s ease;
	pointer-events:none;
}
.gallery_area .lst-photo-board2 > li > a:hover .img_wrap::after{ opacity:1; }

/* ---------- 본문 ---------- */
.gallery_area .lst-photo-wrap .subject{
	display:block;
	padding:24px 24px 0 24px;
	font-size:1.9rem;
	font-weight:600;
	line-height:1.45;
	color:var(--g-ink);
	letter-spacing:-0.03rem;
	word-break:keep-all;
	text-wrap:pretty;
	/* 2줄 말줄임 + 2줄 높이 고정(카드 정렬용) */
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
	overflow:hidden;
	max-height:calc(24px + 2.9em);
	transition:color .25s ease;
}
.gallery_area .lst-photo-board2 > li > a:hover .subject{ color:var(--g-green-d); }

.gallery_area .lst-photo-wrap .info{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin:15px 24px 0 24px;
	padding:15px 0 22px 0;
	border-top:1px solid var(--g-line);
}
.gallery_area .lst-photo-wrap .info .writer{
	display:inline-flex;
	align-items:center;
	gap:7px;
	min-width:0;
	padding:6px 13px 6px 9px;
	background:var(--g-soft);
	border-radius:9999px;
	font-size:1.4rem;
	font-weight:600;
	color:var(--g-green-d);
	letter-spacing:-0.02rem;
	white-space:nowrap;
  max-width:130px;
}
.gallery_area .lst-photo-wrap .info .writer::before{
	content:'';
	flex:none;
	width:13px; height:13px;
	background:var(--g-grad);
	border-radius:50%;
	box-shadow:0 0 0 3px rgba(11, 163, 157, 0.18);
}
.gallery_area .lst-photo-wrap .info .writer > span{width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.gallery_area .lst-photo-wrap .info .date{
	flex:none;
	display:inline-flex;
	align-items:center;
	gap:6px;
	font-size:1.45rem;
	font-weight:500;
	color:var(--g-muted);
	letter-spacing:0;
	white-space:nowrap;
}
.gallery_area .lst-photo-wrap .info .date::before{
	content:'';
	flex:none;
	width:15px; height:15px;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a978f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E") center/contain no-repeat;
	opacity:.85;
}

/* ---------- 반응형 ---------- */
@media (max-width:1280px){
	.gallery_area .lst-photo-wrap .subject{padding: 20px 24px 0 24px;}
	.gallery_area .lst-photo-wrap .subject{ font-size:1.85rem;}
}
@media (max-width:1024px){
	.gallery_area .lst-photo-board2{ grid-template-columns:repeat(2, 1fr); gap:28px 24px; }
	.gallery_area .lst-photo-wrap .subject{ font-size:1.8rem; padding:20px 20px 0 20px; }
	.gallery_area .lst-photo-wrap .info{ margin:14px 20px 0 20px; padding:14px 0 20px 0; }
}
@media (max-width:640px){
	.gallery_area .lst-photo-board2{ grid-template-columns:1fr; gap:20px; }
	.gallery_area .lst-photo-wrap{ border-radius:16px; }
	.gallery_area .img_wrap .img{ aspect-ratio:16 / 9; }
	.gallery_area .lst-photo-wrap .subject{ font-size:1.75rem; padding:17px 18px 0 18px; }
	.gallery_area .lst-photo-wrap .info{ margin:15px 18px 0 18px; padding:13px 0 18px 0; }
	.gallery_area .lst-photo-wrap .info .writer{ font-size:1.35rem; }
	.gallery_area .lst-photo-wrap .info .date{ font-size:1.4rem; }
}

    /* ── 갤러리 타입 탭 — 세그먼트 컨트롤 ── */
    @keyframes gallery-panel-fadein {
      from { opacity: 0; transform: translateY(8px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .gallery-type-tabs {
      display: flex;
      align-items: center;
      background: rgba(20,28,46,0.065);
      border-radius: 16px;
      padding: 5px;
      gap: 4px;
      margin-bottom: 28px;
      border: 1px solid rgba(20,28,46,0.07);
    }
    .gallery-type-tab {
      flex: 1;
      height: 54px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      font-family: inherit;
      font-size: 1.7rem;
      font-weight: 700;
      letter-spacing: -0.02em;
      color: #9AA0A8;
      background: transparent;
      border: none;
      border-radius: 11px;
      cursor: pointer;
      outline: none;
      user-select: none;
      -webkit-user-select: none;
      transition: color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
      white-space: nowrap;
    }
    .gallery-type-tab:hover {
      color: #3D434C;
    }
    .gallery-type-tab.is-active {
      background: #fff;
      color: #171719;
      box-shadow: 0 2px 10px rgba(20,28,46,0.10), 0 1px 3px rgba(20,28,46,0.07);
    }
    .gallery-type-tab__icon {
      width: 18px;
      height: 18px;
      flex-shrink: 0;
    }

    /* 탭 콘텐츠 패널 */
    .gallery-type-panel {
      display: none;
      opacity: 0;
    }
    .gallery-type-panel.is-active {
      display: block;
      animation: gallery-panel-fadein 0.28s ease both;
    }

    /* 영상갤러리 그리드 */
    .gallery-video-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-bottom: 32px;
    }
    .gallery-video-item {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .gallery-video-thumb {
      position: relative;
      width: 100%;
      aspect-ratio: 16 / 9;
      background: #111;
      border-radius: 6px;
      overflow: hidden;
    }
    .gallery-video-thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
    .gallery-video-play {
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgba(0,0,0,0.30);
      transition: background 0.18s;
    }
    .gallery-video-thumb:hover .gallery-video-play {
      background: rgba(0,0,0,0.50);
    }
    .gallery-video-play svg {
      width: 48px;
      height: 48px;
      color: #fff;
      filter: drop-shadow(0 2px 6px rgba(0,0,0,0.5));
    }
    .gallery-video-title {
      font-size: 14px;
      color: #222;
      font-weight: 500;
      line-height: 1.45;
    }
    .gallery-video-meta {
      display: flex;
      gap: 10px;
      font-size: 12px;
      color: #888;
    }

    /* 반응형 */
    @media (max-width: 1023px) {
      .gallery-type-tab {
        padding: 10px 18px;
        font-size: 1.6rem;
      }
      .gallery-video-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
      }
    }
    @media (max-width: 639px) {
      .gallery-type-tab {
        flex: 1;
        justify-content: center;
        padding: 10px 8px;
        font-size: 1.5rem;
      }
      .gallery-type-tab__icon {
        width: 16px;
        height: 16px;
      }
      .gallery-video-grid {
        grid-template-columns: 1fr;
        gap: 16px;
      }
    }
/* 갤러리 게시판 목록 끝 */


/* 업무추진비 게시판 목록 시작 */
.ngm-buptui-wrap .buptui-board {
	width: 100%;
	margin-top: 8px;
}
.ngm-buptui-wrap .buptui-board__scroll {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* ── 테이블 기본 ── */
.ngm-buptui-wrap .buptui-table {
	width: 100%;
	min-width: 640px;
	border-collapse: collapse;
	border-top: 2px solid #b8c4d0;
	font-size: 1.6rem;
	color: #333;
	table-layout: fixed;
}

/* ── 헤더 ── */
.ngm-buptui-wrap .buptui-table thead tr {
	background: #eef2f7;
	border-bottom: 1px solid #c5cdd8;
}
.ngm-buptui-wrap .buptui-table thead th {
	padding: 13px 10px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 600;
	color: #2c3e50;
	white-space: nowrap;
	letter-spacing: -0.01em;
	border-right: 1px solid #c5cdd8;
  border-left: 1px solid #c5cdd8;
}
.ngm-buptui-wrap .buptui-table thead th:first-child {
	border-left: 1px solid #c5cdd8;
}
.ngm-buptui-wrap .buptui-table thead th:last-child {
	border-right: 1px solid #c5cdd8;
}

/* ── 데이터 행 ── */
.ngm-buptui-wrap .buptui-table tbody tr {
	border-bottom: 1px solid #e4e9ef;
	transition: background 0.12s ease;
}
.ngm-buptui-wrap .buptui-table tbody tr:last-child {
	border-bottom: 1px solid #b8c4d0;
}
.ngm-buptui-wrap .buptui-table tbody tr:hover {
	background: #f5f8fc;
}
.ngm-buptui-wrap .buptui-table tbody td {
	padding: 13px 10px;
	text-align: center;
	vertical-align: middle;
	color: #444;
	font-size: 1.6rem;
	border-right: 1px solid #e4e9ef;
}
.ngm-buptui-wrap .buptui-table tbody td:first-child {
	border-left: 1px solid #e4e9ef;
}
.ngm-buptui-wrap .buptui-table tbody td:last-child {
	border-right: 1px solid #e4e9ef;
}

/* ── 열 너비 ── */
.ngm-buptui-wrap .buptui-col-num    { width: 80px; }
.ngm-buptui-wrap .buptui-col-title  { width: auto; }
.ngm-buptui-wrap .buptui-col-file   { width: 160px; }
.ngm-buptui-wrap .buptui-col-author { width: 110px; }
.ngm-buptui-wrap .buptui-col-date   { width: 120px; }
.ngm-buptui-wrap .buptui-col-views  { width: 70px; }

/* ── 번호 셀 ── */
.ngm-buptui-wrap .buptui-table tbody .buptui-num {
	color: #666;
	font-size: 1.5rem;
}

/* ── 제목 셀 (링크 없음 – 파일 다운로드 구조) ── */
.ngm-buptui-wrap .buptui-table tbody .buptui-title {
	text-align: left;
	padding-left: 22px;
	padding-right: 16px;
  border-left: 1px solid #e4e9ef;
}
.ngm-buptui-wrap .buptui-title-text {
	display: block;
	font-size: 1.7rem;
	color: #222;
	font-weight: 400;
	line-height: 1.5;
	word-break: keep-all;
	text-wrap: pretty;
	cursor: default;
}

/* ── 다운로드 버튼 ── */
.ngm-buptui-wrap .buptui-dl {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 18px 8px 14px;
	border-radius: 5px;
	text-decoration: none;
	font-size: 1.4rem;
	font-weight: 600;
	color: #2c6fba;
	background: #f0f5fb;
	border: 1px solid #c4d8ef;
	transition: background 0.12s, border-color 0.12s, color 0.12s;
	cursor: pointer;
	white-space: nowrap;
	letter-spacing: 0.01em;
}
.ngm-buptui-wrap .buptui-dl:hover {
	background: #deeaf8;
	border-color: #2c6fba;
	color: #1a4d8f;
}
.ngm-buptui-wrap .buptui-dl:active {
	transform: scale(0.97);
}
/* 다운로드 아이콘 (SVG) */
.ngm-buptui-wrap .buptui-dl__icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	display: block;
}

/* ── 작성자 셀 ── */
.ngm-buptui-wrap .buptui-table tbody .buptui-author {
	color: #555;
	font-size: 1.5rem;
}

/* ── 작성일 셀 ── */
.ngm-buptui-wrap .buptui-table tbody .buptui-date {
	color: #666;
	font-size: 1.5rem;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

/* ── 조회 셀 ── */
.ngm-buptui-wrap .buptui-table tbody .buptui-views {
	color: #666;
	font-size: 1.5rem;
	font-variant-numeric: tabular-nums;
}

/* ================================================================
	반응형
================================================================ */

/* 태블릿: 번호·조회·작성자·작성일 숨김 */
@media (max-width: 768px) {
	.ngm-buptui-wrap .buptui-table {
	min-width: 0;
	}
	.ngm-buptui-wrap .buptui-col-num,
	.ngm-buptui-wrap .buptui-col-views,
	.ngm-buptui-wrap .buptui-th-num,
	.ngm-buptui-wrap .buptui-th-views,
	.ngm-buptui-wrap .buptui-table tbody .buptui-num,
	.ngm-buptui-wrap .buptui-table tbody .buptui-views,
	.ngm-buptui-wrap .buptui-col-author,
	.ngm-buptui-wrap .buptui-th-author,
	.ngm-buptui-wrap .buptui-table tbody .buptui-author,
	.ngm-buptui-wrap .buptui-col-date,
	.ngm-buptui-wrap .buptui-th-date,
	.ngm-buptui-wrap .buptui-table tbody .buptui-date {
	display: none;
	}
	.ngm-buptui-wrap .buptui-col-file { width: 140px; }
  .ngm-buptui-wrap .buptui-title-text{font-size:1.6rem;}
}

/* 모바일: 작성자·작성일 숨김, 제목 좌 패딩 축소 */
@media (max-width: 480px) {
	.ngm-buptui-wrap .buptui-col-author,
	.ngm-buptui-wrap .buptui-th-author,
	.ngm-buptui-wrap .buptui-table tbody .buptui-author,
	.ngm-buptui-wrap .buptui-col-date,
	.ngm-buptui-wrap .buptui-th-date,
	.ngm-buptui-wrap .buptui-table tbody .buptui-date {
	display: none;
	}
	.ngm-buptui-wrap .buptui-table tbody .buptui-title {
	padding-left: 14px;
	padding-right: 8px;
	}
	.ngm-buptui-wrap .buptui-title-text {
	font-size: 1.5rem;
	}
	.ngm-buptui-wrap .buptui-table thead th,
	.ngm-buptui-wrap .buptui-table tbody td {
	padding: 11px 8px;
	font-size: 1.4rem;
	}
	.ngm-buptui-wrap .buptui-col-file   { width: 130px; }
	.ngm-buptui-wrap .buptui-dl {
	font-size: 1.2rem;
	padding: 4px 8px 4px 7px;
	}
}
/* 업무추진비 게시판 목록 끝 */


/* 업무추진비 목록 버튼 추가 - 시작 */
.ngm-buptui-wrap .buptui-col-file{width:160px;}
.ngm-buptui-wrap .buptui-table tbody td.buptui-file{display:flex; flex-direction:column; align-items:stretch; gap:6px; padding:10px 12px;}
.ngm-buptui-wrap .buptui-dl{width:100%; box-sizing:border-box; justify-content:center; padding:8px 14px; line-height:1; font-size: 1.5rem;}
.ngm-buptui-wrap .buptui-dl__icon{width:15px; height:15px; flex-shrink:0; margin-top:1px;}
.ngm-buptui-wrap .buptui-file > a:not(.buptui-dl){
  display:inline-flex; align-items:center; justify-content:center; gap:5px; width:100%; box-sizing:border-box; padding:8px 14px; border-radius:5px; font-size:1.4rem; font-weight:600;
  letter-spacing:0.01em; white-space:nowrap; line-height:1; text-decoration:none; cursor:pointer; font-family:inherit; color:#1a6e3c; background:#edf7f2; border:1px solid #b6ddc8; transition:background .12s, border-color .12s;}
.ngm-buptui-wrap .buptui-file > a:not(.buptui-dl):hover{background:#d6f0e3; border-color:#1a6e3c;}
.ngm-buptui-wrap .buptui-file > a:not(.buptui-dl) img{display:none;}
.ngm-buptui-wrap .buptui-file > a:not(.buptui-dl) svg{width:15px; height:15px; flex-shrink:0;}

  /* ── 반응형 ── */
  @media (max-width: 768px) {
    .ngm-buptui-wrap .buptui-col-file{width:140px;}
    .ngm-buptui-wrap .buptui-dl,
    .ngm-buptui-wrap .buptui-file > a:not(.buptui-dl){
      font-size:1.4rem;
      padding:6px 8px;
    }
  }
@media (max-width: 480px) {
  .ngm-buptui-wrap .buptui-col-file{width:120px;}
  .ngm-buptui-wrap .buptui-dl,
  .ngm-buptui-wrap .buptui-file > a:not(.buptui-dl) {
    font-size:1.35rem;
    padding:5px 7px;
    gap:4px;
  }
}
/* 업무추진비 목록 버튼 추가 - 끝 */


/* 민생경제119 게시판 목록 시작 */
.mgs-tag {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	padding: 3px 7px 3px 7px;
	border-radius: 3px;
	font-size: 1.4rem;
	line-height: 1.4;
	white-space: nowrap;
	letter-spacing: 0;
	vertical-align: middle;
	font-family: 'esamanru';
	font-weight: 500;
	margin-top: 3px;
}
.mgs-tag--min { background: #FEE2E2; color: #B91C1C; }
.mgs-tag--sso { background: #DBEAFE; color: #1648A0; }

.mgs-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 5px 11px 6px 11px;
	border-radius: 999px;
	font-size: 1.4rem;
	font-weight: 600;
	white-space: nowrap;
	line-height: 1;
	letter-spacing: -0.01em;
}
.mgs-status svg { width: 12px; height: 12px; flex-shrink: 0; }
.mgs-status--received { background: #F3F4F6; color: #374151; }
.mgs-status--review   { background: #FEF3C7; color: #92400E; }
.mgs-status--done     { background: #D1FAE5; color: #065F46; }

.mgs-secret-text { opacity: .38; }
.mgs-lock {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  color: #9AA0A8;
  vertical-align: middle;
  margin-left: 2px;
}
.mgs-lock svg {     
	width: 18px;
    height: 18px;
    display: block;
    margin-top: 3px;
}
.auto_imp{width:auto !important;}



/* ─────────────────────────────────────────────
   게시판 안내문 박스
───────────────────────────────────────────── */
.mgs-notice {
  margin-bottom: 24px;
  padding: 28px 36px 22px;
  background: linear-gradient(140deg, #EBF3FF 0%, #EEF0FF 55%, #FFF5EE 100%);
  border: 1px solid rgba(30, 95, 204, 0.18);
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 32px;
  box-shadow: 0 2px 16px rgba(30, 95, 204, 0.08);
}
.mgs-notice__bar { display: none; }

.mgs-notice__icon-wrap {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: linear-gradient(135deg, #e70060 0%, #1E5FCC 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
  box-shadow: 0 2px 8px rgba(14,164,114,.25);
}
.mgs-notice__icon-wrap svg { width: 17px; height: 17px; display: block; }
.mgs-notice__title-row { display: flex; align-items: center; gap: 10px; }

.mgs-notice__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 13px;
  border-bottom: 1px solid rgba(20,28,46,.07);
  margin-bottom: 13px;
  background: none;
  flex-wrap: wrap;
}
.mgs-notice__heading {
	font-size: 2.1rem;
	font-weight: 600;
  font-family: 'esamanru';
  color: #1c216b;
	letter-spacing: -0.03em;
	margin: 0;
	font-family: 'esamanru';
	line-height:1.2;
}
.mgs-notice__links { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.mgs-notice__ext-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  background: #EEF4FF;
  border: 1px solid rgba(30,95,204,.22);
  border-radius: 6px;
  font-size: 1.5rem;
  font-weight: 600;
  color: #1648A0 !important;
  text-decoration: none !important;
  white-space: nowrap;
  font-family: inherit;
  transition: all .14s;
}
.mgs-notice__ext-btn svg { width: 10px; height: 10px; flex-shrink: 0; opacity: .5; }
.mgs-notice__ext-btn:hover { background: #1E5FCC; border-color: #1E5FCC; color: #fff !important; }
.mgs-notice__ext-btn:hover svg { opacity: 1; }

.mgs-notice__lead {
  font-size: 1.6rem;
  line-height: 1.85;
  letter-spacing: -0.05rem;
  color: #555C68;
  word-break: keep-all;
  text-wrap: pretty;
  margin: 0 0 14px;
  padding: 0 5px;
  border: none;
}
.mgs-notice__lead strong { color: #1648A0; font-weight: 700; }

.mgs-notice__cats {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 11px 14px;
  background: rgb(255 255 255 / 50%);
  border-radius: 8px;
}
.mgs-notice__cat {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex: unset;
  padding: 0;
}
.mgs-notice__cat--min,
.mgs-notice__cat--sso { background: transparent; box-shadow: none; border: none; }
.mgs-notice__cat-badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  border-radius: 4px;
  font-size: 1.5rem;
  font-weight: 500;
  white-space: nowrap;
  font-family: 'esamanru';
}
.mgs-notice__cat-badge--min { background: #FEE2E2; color: #B91C1C; }
.mgs-notice__cat-badge--sso { background: #DBEAFE; color: #1648A0; }
.mgs-notice__cat-text {
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing:-0.05rem;
  color: #6E747E;
  word-break: keep-all;
}


/* ─────────────────────────────────────────────
   검색박스 필터 탭
───────────────────────────────────────────── */
.ngm-search-box--date { flex-wrap: wrap; min-height: auto; }

.mgs-search-filter {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 11px 18px;
  border-bottom: 1px solid rgba(20,28,46,.10);
}
.mgs-search-filter__label {
  font-size: 1.35rem;
  font-weight: 700;
  color: #6E747E;
  white-space: nowrap;
  flex-shrink: 0;
  padding-right: 12px;
  border-right: 1px solid rgba(20,28,46,.12);
  line-height: 1.6;
}
.mgs-search-filter__tabs { display: flex; gap: 5px; flex-wrap: wrap; }
.mgs-sf-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 13px;
  border-radius: 999px;
  font-size: 1.4rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  border: 1.5px solid rgba(20,28,46,.13);
  background: transparent;
  color: #6E747E;
  transition: all .15s ease;
  letter-spacing: -0.01em;
  line-height: 1.4;
}
.mgs-sf-btn em { font-style: normal; font-size: 1.2rem; font-weight: 700; opacity: .6; }
.mgs-sf-btn:hover { border-color: #1E5FCC; color: #1E5FCC; background: rgba(30,95,204,.04); }
.mgs-sf-btn.is-active { background: #1E5FCC; border-color: #1E5FCC; color: #fff; }
.mgs-sf-btn.is-active em { opacity: .8; }
.mgs-sf-btn.is-active:hover { background: #16489C; border-color: #16489C; }

/* 처리상태 컬럼 너비 */
.normal_list th.w_write,
.normal_list td.w_write { width: 12%; }


/* ─────────────────────────────────────────────
   반응형
───────────────────────────────────────────── */
@media (max-width: 1023px) {
  .mgs-notice {padding-left: 24px; padding-right: 24px;}
}
@media (max-width: 767px) {
  .mgs-notice {padding: 20px 20px 16px;}
  .mgs-notice__top { flex-direction: column; align-items: flex-start; gap: 8px; }
  .mgs-notice__cats { padding: 10px 12px; }

  .normal_list td.w_write .mgs-status { font-size: 1.3rem; }
  .mgs-search-filter { padding: 10px 16px; gap: 10px; }
  .mgs-notice__lead{font-size:1.5rem;}
}

@media (max-width: 500px) {
	.mgs-notice__title-row{flex-wrap:wrap;}
  .mgs-notice__heading{width:100%;}
  .mgs-notice__cat-badge{font-size:1.4rem;}
  .mgs-notice__cat-text{font-size:1.5rem;}
  .mgs-notice { padding: 14px 15px 12px; }
  .mgs-sf-btn { padding: 5px 11px; font-size: 1.35rem; }
	.mgs-search-filter{align-items: flex-start;}
  .normal_list td.w_subject .title_in {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    white-space: normal !important;
    overflow: visible !important;
  }
  .normal_list td.w_subject .title_in .title_text {
    flex: 1 1 100%;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
    white-space: normal !important;
    line-height: 1.3;
  }
  .mgs-tag { margin-bottom: 3px; }
}
/* 민생경제119 게시판 목록 끝 */

/* 민생경제119 게시판 보기 시작 */
/* ─────────────────────────────────────────────
   헤더 — 분류태그 + 제목 + 상태배지
───────────────────────────────────────────── */
.view_table_wrap { margin-top: 0 !important; }

.mgs-view-head {
  border-top: 2px solid #111;
  padding: 28px 0 0;
}
.mgs-view-head__badges {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.mgs-view-head__title {
  font-size: 2.6rem;
  font-weight: 700;
  color: #1A1D21;
  text-align: center;
  line-height: 1.45;
  letter-spacing: -0.03em;
  padding: 0 20px 24px;
  word-break: keep-all;
  text-wrap: pretty;
  margin: 0;
}


/* ─────────────────────────────────────────────
   메타 정보 행
───────────────────────────────────────────── */
.mgs-view-meta {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 14px 20px;
  background: #F9FAFB;
  border-top: 1px solid #EAECF1;
  border-bottom: 1px solid #EAECF1;
}
.mgs-view-meta__item {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 18px;
  border-right: 1px solid #E2E5EB;
  font-size: 1.55rem;
  color: #6E747E;
  line-height: 1.4;
}
.mgs-view-meta__item:last-child { border-right: none; }
.mgs-view-meta__label { font-weight: 600; color: #3D434C; white-space: nowrap; }
.mgs-view-meta__value { color: #6E747E; }


/* ─────────────────────────────────────────────
   본문 콘텐츠
───────────────────────────────────────────── */
.mgs-view-body {
  padding: 0px 4px 36px 4px;
  min-height: 180px;
  font-size: 1.8rem;
  line-height: 1.9;
  color: #2D3139;
  border-bottom: 1px solid #EAECF1;
  word-break: keep-all;
}
.mgs-view-body p { margin: 0 0 1em; }
.mgs-view-body p:last-child { margin-bottom: 0; }


/* ─────────────────────────────────────────────
   첨부파일
───────────────────────────────────────────── */
.mgs-view-files {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 0;
  border-bottom: 1px solid #EAECF1;
  flex-wrap: wrap;
}
.mgs-view-files__label {
  flex-shrink: 0;
  font-size: 1.5rem;
  font-weight: 700;
  color: #3D434C;
  padding-top: 2px;
  white-space: nowrap;
}
/*.mgs-view-files__list { display: flex; flex-direction: column; gap: 6px; flex: 1 1 0; min-width: 0; }*/
.mgs-view-files__list { display: flex; gap: 6px; flex-wrap:wrap; width: calc(100% - 100px); min-width: 0; align-items:center;}
.mgs-view-files__item {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 12px;
  background: #F4F6FA;
  border: 1px solid rgba(20,28,46,.09);
  border-radius: 6px;
  font-size: 1.5rem;
  color: #1E5FCC;
  text-decoration: none;
  /*max-width: 400px;*/
  max-width: calc(100% - 100px);
  transition: background .14s;
  word-break: break-all;
  flex-wrap:wrap;
}
.mgs-view-files__item:hover { background: #E8EEFB; }
.mgs-view-files__item svg { width: 15px; height: 15px; flex-shrink: 0; opacity: .7; }
.mgs-view-files__size { margin-left: 4px; font-size: 1.3rem; color: #9AA0A8; white-space: nowrap; flex-shrink: 0; }


/* ─────────────────────────────────────────────
   담당자 답변 영역
───────────────────────────────────────────── */
.mgs-reply {
  position: relative;
  margin-top: 32px;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(140deg, #FDEAF1 0%, #EDF4FF 60%, #F0EDFF 100%);
  border: 1px solid rgba(213,20,86,.15);
  box-shadow: 0 8px 32px rgba(213,20,86,.08), 0 2px 8px rgba(30,95,204,.06), inset 0 1px 0 rgba(255,255,255,.9);
}
.mgs-reply::before {
  content: "";
  position: absolute;
  top: -40px; right: -40px;
  width: 180px; height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(213,20,86,.11) 0%, transparent 68%);
  pointer-events: none;
}
.mgs-reply::after {
  content: "";
  position: absolute;
  bottom: -30px; left: 10%;
  width: 140px; height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(99,102,241,.09) 0%, transparent 68%);
  pointer-events: none;
}
.mgs-reply__head {
  position: relative; z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 18px 22px;
  background: linear-gradient(120deg, #d51456 0%, #1E5FCC 100%);
  flex-wrap: wrap;
  box-shadow: 0 2px 12px rgba(213,20,86,.25);
}
.mgs-reply__head-left { display: flex; align-items: center; gap: 11px; }
.mgs-reply__head-icon {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.22);
  border: 1.5px solid rgba(255,255,255,.35);
  display: flex; align-items: center; justify-content: center;
  color: #fff; flex-shrink: 0;
}
.mgs-reply__head-icon svg { width: 17px; height: 17px; display: block; }
.mgs-reply__head-title { font-size: 1.6rem; font-weight: 700; color: #fff; letter-spacing: -0.025em; line-height: 1.3; text-shadow: 0 1px 3px rgba(0,0,0,.12); }
.mgs-reply__head-sub { font-size: 1.3rem; color: rgba(255,255,255,.72); margin-top: 2px; }
.mgs-reply__head-date {
  display: inline-flex; align-items: center;
  padding: 5px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,.20);
  border: 1px solid rgba(255,255,255,.30);
  font-size: 1.35rem; font-weight: 600; color: #fff;
  white-space: nowrap; flex-shrink: 0; letter-spacing: -0.01em;
}
.mgs-reply__dept {
  position: relative; z-index: 1;
  display: flex; align-items: center; gap: 7px;
  padding: 10px 22px;
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(213,20,86,.10);
  font-size: 1.45rem; color: #7A0F38; font-weight: 600; letter-spacing: -0.01em;
}
.mgs-reply__dept svg { width: 14px; height: 14px; flex-shrink: 0; opacity: .7; }
.mgs-reply__body {
  position: relative; z-index: 1;
  margin: 16px;
  padding: 20px 22px;
  border-radius: 12px;
  background: rgba(255,255,255,.72);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.9);
  box-shadow: 0 2px 12px rgba(213,20,86,.05), inset 0 1px 0 rgba(255,255,255,.8);
  font-size: 1.75rem; line-height: 1.9; color: #1A1E2C; word-break: keep-all;
}
.mgs-reply__body p { margin: 0 0 .9em; }
.mgs-reply__body p:last-child { margin: 0; }

/* 미답변 상태 */
.mgs-reply--pending { background: linear-gradient(140deg, #F6F7F9 0%, #F0F2F5 100%); border-color: rgba(107,114,128,.14); box-shadow: 0 4px 16px rgba(0,0,0,.05); }
.mgs-reply--pending::before,
.mgs-reply--pending::after { display: none; }
.mgs-reply--pending .mgs-reply__head { background: linear-gradient(120deg, #9CA3AF 0%, #6B7280 100%); box-shadow: none; }
.mgs-reply--pending .mgs-reply__dept { color: #6B7280; }
.mgs-reply--pending .mgs-reply__body { color: #9CA3AF; font-style: italic; }


/* ─────────────────────────────────────────────
   이전글 / 다음글 네비게이션
───────────────────────────────────────────── */
.mgs-view-nav { border-top: 1px solid #EAECF1; border-bottom: 1px solid #EAECF1; margin-top: 32px; }
.mgs-view-nav__item {
  display: flex; align-items: center; gap: 14px;
  padding: 15px 4px;
  text-decoration: none; color: inherit;
  transition: background .14s;
}
.mgs-view-nav__item + .mgs-view-nav__item { border-top: 1px solid #EAECF1; }
.mgs-view-nav__item:hover { background: #F4F6FA; }
.mgs-view-nav__dir {
  display: flex; align-items: center; gap: 5px;
  flex-shrink: 0; width: 72px;
  font-size: 1.4rem; font-weight: 700; color: #6E747E; white-space: nowrap;
}
.mgs-view-nav__dir svg { width: 15px; height: 15px; flex-shrink: 0; }
.mgs-view-nav__title { flex: 1; font-size: 1.7rem; color: #1A1D21; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; letter-spacing: -0.02em; }


/* ─────────────────────────────────────────────
   하단 버튼
───────────────────────────────────────────── */
.mgs-view-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 24px; flex-wrap: wrap; }
.mgs-view-actions__right { display: flex; gap: 8px; flex-wrap: wrap; }
.mgs-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 10px 22px;
  border-radius: 999px;
  font-size: 1.55rem; font-weight: 600; font-family: inherit;
  cursor: pointer; text-decoration: none;
  border: 1.5px solid transparent;
  transition: all .16s ease;
  letter-spacing: -0.02em; white-space: nowrap; line-height: 1;
}
.mgs-btn svg { width: 15px; height: 15px; flex-shrink: 0; }
.mgs-btn--outline { background: #fff; border-color: rgba(20,28,46,.16); color: #3D434C; }
.mgs-btn--outline:hover { border-color: #1E5FCC; color: #1E5FCC; background: rgba(30,95,204,.04); }
.mgs-btn--primary { background: #1E5FCC; border-color: #1E5FCC; color: #fff; }
.mgs-btn--primary:hover { background: #16489C; border-color: #16489C; }
.mgs-btn--danger { background: #fff; border-color: rgba(185,28,28,.25); color: #B91C1C; }
.mgs-btn--danger:hover { background: #FEF2F2; border-color: #B91C1C; }


/* ─────────────────────────────────────────────
   반응형
───────────────────────────────────────────── */
@media (max-width: 767px) {
  .mgs-view-head__title { font-size: 2.1rem; padding: 0 14px 20px; }
  .mgs-view-meta { padding: 12px 14px; gap: 8px 0; justify-content: flex-start; }
  .mgs-view-meta__item { padding: 4px 14px; }
  .mgs-reply__head { padding: 14px 18px; }
  .mgs-reply__body { padding: 20px 18px; }
  .mgs-reply__dept { padding: 12px 18px; }
  .mgs-view-actions { flex-direction: column; align-items: stretch; }
  .mgs-view-actions__right { justify-content: flex-end; }
  .mgs-btn { justify-content: center; }
}

@media (max-width: 500px) {
  .mgs-view-meta { flex-direction: column; align-items: flex-start; gap: 6px; padding: 14px; }
  .mgs-view-meta__item { border-right: none; padding: 0; }
  .mgs-view-nav__dir { width: 60px; }
  .mgs-view-nav__title { font-size: 1.55rem; }
}
/* 민생경제119 게시판 보기 끝 */


/* 민생경제119 게시판 쓰기 시작 */
.mgs-cat-group { display: flex; flex-wrap: wrap; gap: 10px; }
.mgs-cat-label {
  position: relative;
  display: flex; align-items: flex-start; gap: 12px;
  flex: 1 1 220px;
  padding: 14px 18px;
  border: 2px solid rgba(20,28,46,.13);
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  transition: border-color .15s, background .15s, box-shadow .15s;
  user-select: none;
}
.mgs-cat-label:hover { border-color: rgba(20,28,46,.25); background: #FAFBFC; }
.mgs-cat-label input[type="radio"] { position: absolute; opacity: 0; width: 0; height: 0; }
/* 선택됨 — 민생 */
.mgs-cat-label.is-min:has(input:checked) { border-color: #B91C1C; background: #FFF8F8; box-shadow: 0 0 0 3px rgba(185,28,28,.10); }
/* 선택됨 — 소상공인 */
.mgs-cat-label.is-sso:has(input:checked) { border-color: #1E5FCC; background: #F0F5FF; box-shadow: 0 0 0 3px rgba(30,95,204,.10); }

/* 커스텀 라디오 */
.mgs-cat-radio-circle {
  flex-shrink: 0; width: 20px; height: 20px;
  border-radius: 50%;
  border: 2px solid rgba(20,28,46,.20);
  margin-top: 1px;
  display: flex; align-items: center; justify-content: center;
  transition: border-color .15s;
}
.mgs-cat-radio-circle::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: transparent; transition: background .15s; }
.mgs-cat-label.is-min:has(input:checked) .mgs-cat-radio-circle { border-color: #B91C1C; }
.mgs-cat-label.is-min:has(input:checked) .mgs-cat-radio-circle::after { background: #B91C1C; }
.mgs-cat-label.is-sso:has(input:checked) .mgs-cat-radio-circle { border-color: #1E5FCC; }
.mgs-cat-label.is-sso:has(input:checked) .mgs-cat-radio-circle::after { background: #1E5FCC; }

.mgs-cat-info{display: flex; flex-wrap: wrap;}
.mgs-cat-badge {    
	display: inline-flex;
    align-items: center;
    padding: 6px 8px 5px 8px;
    line-height: 1;
    border-radius: 3px;
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 4px;
    white-space: nowrap;
    font-family: 'esamanru';
}
.mgs-cat-badge--min { background: #FEE2E2; color: #B91C1C; }
.mgs-cat-badge--sso { background: #DBEAFE; color: #1648A0; }
.mgs-cat-desc { display: block; width:100%; font-size: 1.5rem; line-height: 1.5; color: #6E747E; word-break: keep-all; }


/* ─────────────────────────────────────────────
   비밀글 체크박스
───────────────────────────────────────────── */
.mgs-secret-wrap { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 6px; }
.mgs-secret-chk { display: inline-flex; align-items: center; gap: 9px; cursor: pointer; user-select: none; }
.mgs-secret-chk input[type="checkbox"] { position: absolute; opacity: 0; width: 0; height: 0; }
.mgs-secret-box {
  width: 22px; height: 22px;
  border-radius: 5px;
  border: 2px solid rgba(20,28,46,.20);
  background: #fff;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  transition: border-color .15s, background .15s;
}
.mgs-secret-box svg { width: 13px; height: 13px; stroke: #fff; opacity: 0; transition: opacity .15s; }
.mgs-secret-chk:has(input:checked) .mgs-secret-box { background: #1A1D21; border-color: #1A1D21; }
.mgs-secret-chk:has(input:checked) .mgs-secret-box svg { opacity: 1; }
.mgs-secret-text { font-weight: 500; color: #1A1D21; line-height: 1.4; }
.mgs-secret-guide { display: block; margin-top: 5px; font-size: 1.4rem; color: #9AA0A8; line-height: 1.5; word-break: keep-all; }


/* ─────────────────────────────────────────────
   반응형
───────────────────────────────────────────── */
@media (max-width: 500px) {
  .mgs-cat-group { flex-direction: column; }
  .mgs-cat-label { flex: 1 1 100%; padding: 12px 14px; }
}
/* 민생경제119 게시판 쓰기 끝 */


/* 글쓰기 버튼 — 공통 시작 */
.bbs-write-wrap {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}
.bbs-write-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 4.2rem;
  padding: 0 20px;
  border-radius: 10px;
  background: linear-gradient(135deg, #e70060 0%, #1E5FCC 100%);
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  transition: background 120ms cubic-bezier(0.22, 1, 0.36, 1);
  cursor: pointer;
  border: none;
  transition: 0.3s ease;
}
.bbs-write-btn:hover {
  transform:translatey(-3px);
  box-shadow: 2px 5px 8px rgb(202 206 219);

}
/* 글쓰기 버튼 — 공통 끝 */


/* 비밀번호 찾기 페이지 - 시작 */
.mgs-pw-section {
  position: relative;
  padding: 60px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: linear-gradient(135deg,
    #eef2fb 0%,
    #f0edf8 35%,
    #e8f0fa 65%,
    #edf4f3 100%);
  border-radius: 16px;
  min-height: 420px;
}
.mgs-pw-section::before {
  content: "";
  position: absolute;
  top: -60px;
  left: -60px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(42, 116, 224, 0.13) 0%, transparent 70%);
  pointer-events: none;
}
.mgs-pw-section::after {
  content: "";
  position: absolute;
  bottom: -80px;
  right: -40px;
  width: 360px;
  height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(118, 15, 15, 0.08) 0%, transparent 70%);
  pointer-events: none;
}
.mgs-pw-card {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 480px;
  margin: 0 auto;
  padding: 48px 44px 54px;
  background: rgba(255, 255, 255, 0.70);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.80);
  border-radius: 24px;
  box-shadow:
    0 4px 24px rgba(30, 58, 130, 0.08),
    0 1px 4px rgba(30, 58, 130, 0.05),
    inset 0 1px 0 rgba(255, 255, 255, 0.90);
}
.mgs-pw-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 24px;
  border-radius: 50%;
  background: linear-gradient(135deg, #e70060 0%, #1E5FCC 100%);
  box-shadow:
    0 8px 24px rgba(26, 27, 43, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.15);
}
.mgs-pw-icon-wrap svg {
  width: 28px;
  height: 28px;
  color: #fff;
  display: block;
}
.mgs-pw-title {
  margin: 0 0 5px;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: -0.03em;
  color: #111827;
  text-align: center;
  font-family: 'esamanru';
}
.mgs-pw-desc {
  margin: 0 0 32px;
  font-size: 1.6rem;
  line-height: 1.7;
  color: #4b5563;
  text-align: center;
  letter-spacing: -0.01em;
  word-break: keep-all;
  text-wrap: pretty;
}
.mgs-pw-desc strong {
  color: #1a1b2b;
  font-weight: 600;
}
.mgs-pw-post-info {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  margin-bottom: 24px;
  background: rgba(26, 27, 43, 0.04);
  border: 1px solid rgba(26, 27, 43, 0.08);
  border-radius: 10px;
  font-size: 1.4rem;
  color: #6b7280;
  letter-spacing: -0.01em;
  line-height: 1.4;
  word-break: break-all;
}
.mgs-pw-post-info svg {
  flex-shrink: 0;
  width: 15px;
  height: 15px;
  color: #9ca3af;
}
.mgs-pw-post-info span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mgs-pw-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mgs-pw-label {
  display: block;
  font-size: 1.45rem;
  font-weight: 600;
  color: #374151;
  letter-spacing: -0.01em;
  margin-bottom: 6px;
}
.mgs-pw-input-wrap {
  position: relative;
  width: 100%;
  height: 50px;
  flex-shrink: 0;
}
input[type="password"].mgs-pw-input,
input[type="text"].mgs-pw-input,
.mgs-pw-input {
  display: block;
  width: 100%;
  height: 50px !important;
  box-sizing: border-box;
  padding: 0 48px 0 16px;
  font-size: 1.6rem;
  font-family: inherit;
  color: #111827;
  background: rgba(255, 255, 255, 0.85);
  border: 1.5px solid rgba(209, 213, 219, 0.80);
  border-radius: 10px;
  outline: none;
  letter-spacing: 0.05em;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  -webkit-appearance: none;
}
.mgs-pw-input::placeholder {
  color: #9ca3af;
  letter-spacing: 0;
}
.mgs-pw-input:focus {
  border-color: #2a74e0;
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 0 0 3px rgba(42, 116, 224, 0.14);
}
.mgs-pw-input.is-error {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12);
}
.mgs-pw-eye-btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #9ca3af;
  transition: color 0.15s;
  z-index: 1;
}
.mgs-pw-eye-btn:hover { color: #4b5563; }
.mgs-pw-eye-btn svg { width: 18px; height: 18px; display: block; }
.mgs-pw-error {
  display: none;
  align-items: center;
  gap: 5px;
  font-size: 1.35rem;
  color: #ef4444;
  letter-spacing: -0.01em;
  margin-top: 2px;
}
.mgs-pw-error.is-show { display: flex; }
.mgs-pw-error svg { width: 14px; height: 14px; flex-shrink: 0; }
.mgs-pw-btn-row {
  display: flex;
  flex-direction: row;
  gap: 10px;
  margin-top: 10px;
}
.mgs-pw-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 50px;
  padding: 0 24px;
  border-radius: 10px;
  font-size: 1.55rem;
  font-weight: 600;
  font-family: inherit;
  letter-spacing: -0.02em;
  cursor: pointer;
  border: none;
  transition: all 0.18s ease;
  flex: 1 1 auto;
  white-space: nowrap;
  text-decoration: none;
}
.mgs-pw-btn svg { width: 16px; height: 16px; display: block; flex-shrink: 0; }
.mgs-pw-btn--list {
  background: rgba(255, 255, 255, 0.70);
  color: #374151;
  border: 1.5px solid rgba(209, 213, 219, 0.90);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  flex: 0 0 auto;
  min-width: 90px;
}
.mgs-pw-btn--list:hover {
  background: rgba(255, 255, 255, 0.90);
  border-color: #9ca3af;
  color: #111827;
}
.mgs-pw-btn--submit {
  background: linear-gradient(135deg, #e70060 0%, #1E5FCC 100%);
  color: #fff;
  box-shadow: 0 4px 14px rgba(231, 0, 96, 0.28);
}
.mgs-pw-btn--submit:hover {
  background: linear-gradient(135deg, #c40052 0%, #1a52b8 100%);
  box-shadow: 0 6px 20px rgba(231, 0, 96, 0.38);
  transform: translateY(-1px);
}
.mgs-pw-btn--submit:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(42, 116, 224, 0.20);
}
.mgs-pw-footer-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-top: 20px;
  font-size: 1.3rem;
  color: #9ca3af;
  letter-spacing: -0.01em;
}
.mgs-pw-footer-note svg { width: 13px; height: 13px; flex-shrink: 0; }

  /* ── 반응형 ── */
  @media (max-width: 767px) {
  .mgs-pw-section {
    padding: 32px 0 44px;
    min-height: auto;
    border-radius: 12px;
  }
  .mgs-pw-card {
    max-width: calc(100% - 36px);
    padding: 32px 24px 38px;
  }
  .mgs-pw-icon-wrap {
    width: 52px;
    height: 52px;
    margin-bottom: 16px;
  }
  .mgs-pw-icon-wrap svg { width: 22px; height: 22px; }
  .mgs-pw-title { font-size: 2.4rem; margin-bottom: 8px; }
  .mgs-pw-desc { font-size: 1.5rem; margin-bottom: 20px; }
  .mgs-pw-post-info { font-size: 1.35rem; padding: 10px 13px; margin-bottom: 18px; }
  .mgs-pw-input { font-size: 1.5rem; } /* height는 래퍼(50px)에서 제어 */
  .mgs-pw-label { font-size: 1.5rem; }
  .mgs-pw-btn { height: 46px; font-size: 1.45rem; }
  .mgs-pw-btn--list { min-width: 80px; }
  .mgs-pw-footer-note { font-size: 1.25rem; margin-top: 16px; }
}

@media (max-width: 480px) {
  .mgs-pw-section {
    padding: 24px 0 36px;
    border-radius: 10px;
  }
  .mgs-pw-card {
    max-width: calc(100% - 24px);
    padding: 26px 18px 24px;
  }
  .mgs-pw-icon-wrap {
    width: 46px;
    height: 46px;
    margin-bottom: 14px;
  }
  .mgs-pw-icon-wrap svg { width: 20px; height: 20px; }
  .mgs-pw-title { font-size: 2.1rem; margin-bottom:4px;}
  .mgs-pw-desc{font-size:1.45rem;}
  .mgs-pw-btn-row { gap: 8px; }
  .mgs-pw-btn--submit { flex: 1 1 auto; }
  .mgs-pw-btn--list { flex: 0 0 auto; min-width: 76px; }
}

@media (max-width: 360px) {
  .mgs-pw-card { padding: 22px 14px 30px; max-width: calc(100% - 16px); }
  .mgs-pw-btn { height: 44px; font-size: 1.4rem; padding: 0 14px; }
  .mgs-pw-btn--list { min-width: 68px; }
}
/* 비밀번호 찾기 페이지 - 끝 */


/* 첨부파일란 추가 - 시작 */
.mgs-view-files {display:flex; flex-direction:column; align-items:stretch; gap:0; padding:0; border:1px solid #E2E4E8; border-radius:10px; overflow:hidden; background:#fff; margin-top:25px;}
.mgs-view-files__label{display:flex; align-items:center; gap:6px; padding:11px 14px 9px 14px; background:#F5F6F8; border-bottom:1px solid #E2E4E8; font-size:1.7rem; font-weight:500; color:#444; white-space:nowrap; letter-spacing:-0.02em; font-family:'esamanru';}
.mgs-view-files__label::before{
  content:'';
  display:inline-block;
  width:3px;
  height:16px;
  border-radius:2px;
  background:#aaa;
  flex-shrink:0;
  margin-top:-1px;
  margin-right:2px;
}
.mgs-view-files__list{display:flex; flex-direction:column; flex-wrap:nowrap; gap:0; width:100%; min-width:0; align-items:stretch; border:none; border-radius:0; overflow:visible;}
.mgs-view-files__row{display:flex; align-items:stretch; flex-wrap:nowrap; border-bottom:1px solid #F0F1F3; background:#fff; transition:background .12s; min-height:44px;}
.mgs-view-files__row:last-child{border-bottom:none;}
.mgs-view-files__row:hover{background:#F8F9FC;}
.mgs-view-files__row--last-visible{border-bottom:none;}
.mgs-view-files__row--hidden{display:none;}
.mgs-view-files__item{display:flex; align-items: flex-start; gap:7px; padding:14px 14px 12px 14px; flex:1 1 auto; min-width:0; max-width:none; text-decoration:none; color:#1E5FCC; font-size:1.7rem; background:none; border:none; border-radius:0; flex-wrap:nowrap; overflow:visible; white-space:normal; word-break:keep-all; overflow-wrap:anywhere; line-height:1.5;}
.mgs-view-files__item:hover{background:none; color:#1449a8;}
.mgs-view-files__item svg { width:18px; height:18px; flex-shrink:0; opacity:0.4; margin-top: 4px; }
.mgs-view-files__text{flex:1 1 0; min-width:0; display:inline-flex; align-items:center; flex-wrap:wrap; gap:0;}
.mgs-view-files__size{margin-left:6px; font-size:1.5rem; color:#9AA0A8; white-space:nowrap; flex-shrink:0;}
.mgs-view-files__actions{display:flex; align-items:flex-start; gap:5px; padding:10px 12px; flex-shrink:0; border-left:1px solid #EDEDEF; width:244px;}
.mgs-view-files__btn{display:inline-flex; align-items:center; justify-content:center; gap:4px; padding:8px 14px; min-height:36px; border-radius:6px; font-size:1.6rem; font-weight:700; letter-spacing:-0.02em; text-decoration:none; line-height:1; white-space:nowrap; transition:background .14s, border-color .14s; cursor:pointer; font-family:inherit; border:1px solid transparent;}
.mgs-view-files__btn svg{width:16px; height:16px; flex-shrink:0; opacity:1; margin-top:1px;}
.mgs-view-files__btn--view{color:#1E5FCC; background:#EEF3FD; border-color:#C5D5F5;}
.mgs-view-files__btn--view:hover{background:#dde8fb; border-color:#1E5FCC;}
.mgs-view-files__btn--listen{color:#fff; background:#0c4da2; border-color:#0c4da2;}
.mgs-view-files__btn--listen:hover{background:#093d81; border-color:#093d81;}
.mgs-view-files__more-btn{display:flex; align-items:center; justify-content:center; gap:6px; width:100%; box-sizing:border-box; padding:12px 14px; background:#F5F6F8; border:none; border-top:1px solid #E2E4E8; -webkit-appearance:none; appearance:none; outline:none; font-size:1.5rem; font-weight:600; color:#555; cursor:pointer; font-family:inherit; letter-spacing:-0.02em; transition:background .12s;}
.mgs-view-files__more-btn:hover{background:#ECEEF2; color:#1E5FCC;}
.ngm-wrap .mgs-view-files__more-btn:active,
.mgs-view-files__more-btn:active{transform:none; background:#E8EAF0;}
.mgs-view-files__more-btn .mgs-view-files__more-icon{width:14px; height:14px; flex-shrink:0; transition:transform .2s;}
.mgs-view-files__more-btn.is-expanded .mgs-view-files__more-icon{transform:rotate(180deg);}

  /* ── 반응형 ── */
  @media (max-width: 768px) {
    .mgs-view-files__label{font-size:1.6rem;}
    .mgs-view-files__row{flex-wrap:nowrap; align-items:stretch;}
    .mgs-view-files__item{flex:1 1 0; min-width:0; font-size:1.5rem; padding:10px 10px 10px 12px; white-space:normal; overflow:visible; word-break:keep-all; overflow-wrap:anywhere; align-items:flex-start;}
    .mgs-view-files__text{display:flex; flex-direction:column; align-items:flex-start; gap:2px;}
    .mgs-view-files__size{margin-left:0; font-size:1.35rem;}
    .mgs-view-files__actions{flex-shrink:0; flex-direction:column; align-items:stretch; gap:5px; padding:8px 10px; border-left:1px solid #EDEDEF; border-top:none; width:auto;}
    .mgs-view-files__btn{padding:6px 10px; font-size:1.4rem; min-height:32px; gap:4px; justify-content:center; white-space:nowrap;}
    .mgs-view-files__btn svg{width:14px; height:14px;}
  }
/* 첨부파일란 추가 - 끝 */