@charset "utf-8";

#container{
    padding: 120px 0 80px;
}
#container_title{
    text-align: center;
    padding: 30px 0;
    font-size: clamp(1.3rem, 3vw, 40px);
    font-weight: 800;
}
#container_title span{
    margin-bottom: 0;
}
.bbs-wrapper{
    max-width: 1200px;
}

/* 게시판 목록 */
/* table-layout: fixed — 열 너비는 <col> 또는 thead 첫 줄 th 에서 결정됨. td { width } 만으로는 같은 열이 안 맞는 경우가 많음 */
#bo_list table.bo_list_tbl {
    table-layout: fixed;
    width: 100%;
}
#bo_list .bo_list_tbl col.cw-chk { width: 30px; }
#bo_list .bo_list_tbl col.cw-num { width: 50px; }
/* 제목열: 나머지 공간 (width 생략 시 브라우저가 잔여 폭 배분) */
#bo_list .bo_list_tbl col.cw-name { width: 90px; }
#bo_list .bo_list_tbl col.cw-hit { width: 50px; }
#bo_list .bo_list_tbl col.cw-good { width: 56px; }
#bo_list .bo_list_tbl col.cw-nogood { width: 50px; }
#bo_list .bo_list_tbl col.cw-date { width: 80px; }
#bo_list .bo_list_tbl .td_subject {
    min-width: 0;
    overflow: hidden;
    word-break: break-word;
    overflow-wrap: anywhere;
}

#bo_list {position:relative;margin-bottom:20px}
#bo_list:after {display:block;visibility:hidden;clear:both;content:""}
#bo_list .td_board {width:120px;text-align:center}
#bo_list .all_chk {
    padding: 10px 5px;
}
#bo_list .td_chk {
    width:30px;
    text-align:center;
    border-top:0;
    border-bottom:0;
}
#bo_list .td_date {width:60px;text-align:center}
#bo_list .td_datetime {width:60px;text-align:center}
#bo_list .td_group {width:100px;text-align:center}
#bo_list .td_mb_id {width:100px;text-align:center}
#bo_list .td_mng {width:80px;text-align:center}
#bo_list .td_name {
    width: 90px;
    max-width: 90px;
    min-width: 0;
    text-align: center;
    padding: 10px 4px;
    vertical-align: middle;
}
#bo_list .td_name .bo_list_writer {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#bo_list .td_nick {width:100px;text-align:center}
#bo_list .td_num {width:50px;text-align:center}
#bo_list .td_num2 {width:50px;text-align:center}
#bo_list .td_numbig {width:80px;text-align:center}
#bo_list .txt_active {color:#5d910b}
#bo_list .txt_expired {color:#ccc}
#bo_list tbody tr {
    border-left:2px solid transparent;
    font-size: 0.95rem;
    font-weight: 300;
}
#bo_list tbody tr:hover {
    border-left:2px solid var(--color-blue);
}
#bo_list tbody .even td {background:#fcfcfc}

#bo_cate {margin:25px 0}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px}
#bo_cate a {display:block;line-height:28px;padding:5px 15px;border-radius:30px;border:1px solid #d6e9ff;color:#6794d3}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {text-decoration:none;background:#3a8afd;color:#fff}
#bo_cate #bo_cate_on {z-index:2;background:#3a8afd;color:#fff;font-weight:bold;border:1px solid #3a8afd;
-webkit-box-shadow:inset 0 2px 5px rgb(33, 135, 202);
-moz-box-shadow:inset 0 2px 5px rgb(33, 135, 202);
box-shadow:inset 0 2px 5px rgb(33, 135, 202)}
.td_subject img {margin-left:5px}

/* 비밀글: Google Material Symbols (lock) — .bo_tit > a 가 flex 로 아이콘·텍스트 세로 정렬 */
#bo_list .bo_tit .bo_secret_icon {
    font-family: 'Material Symbols Outlined';
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.2em;
    height: 1.2em;
    font-size: 1.1em;
    line-height: 1;
    margin: 0;
    color: var(--color-blue);
    font-weight: normal;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* 게시판 목록 공통 */
.tbl_head01 thead tr{
    background-color: var(--color-black);
    color: var(--color-white);
}
.tbl_head01 thead th a{
    color: var(--color-white);
}
.selec_chk {position:absolute;top:0;left:0;width:0;height:0;opacity:0;outline:0;z-index:-1;overflow:hidden}
.chk_box {position:relative}
.chk_box input[type="checkbox"] + label {position:relative;color:#676e70}
.chk_box input[type="checkbox"] + label:hover {color:#2172f8}
.chk_box input[type="checkbox"] + label span {float:left;width:15px;height:15px;display:block;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.write_div .chk_box input[type="checkbox"] + label, .bo_vc_w .chk_box input[type="checkbox"] + label {
    padding-left:20px;
}
.write_div .chk_box input[type="checkbox"] + label span, .bo_vc_w .chk_box input[type="checkbox"] + label span {position:absolute;top:2px;left:0;width:15px;height:15px;display:block;margin:0;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.chk_box input[type="checkbox"]:checked + label {color:#000}
.chk_box input[type="checkbox"]:checked + label span {background:url(./img/chk.png) no-repeat 50% 50% #3a8afd;border-color:#1471f6;border-radius:3px}


#bo_btn_top {margin:10px 0}
#bo_btn_top:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx {
    margin-top: 10px;
    margin-bottom:5px;
    float:right;
    zoom:1;
}
.bo_fx:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx ul {margin:0;padding:0;list-style:none}
/* 하단 글쓰기: 아이콘 + 텍스트 */
#bo_list .bo_fx .btn_bo_user_bottom li.btn_write_li {
    width: auto;
    margin-left: 8px;
}
#bo_list .bo_fx .btn_bo_user_bottom .btn_write_txt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 5px 18px;
    min-height: auto;
    box-sizing: border-box;
    border-radius: 8px;
    text-decoration: none;
    font-size: 0.95rem;
    border-radius: 50px;
    border: 1px solid #e0e0e0;
}
#bo_list .bo_fx .btn_bo_user_bottom .btn_write_txt:hover{
    border-color: #000;
}
#bo_list .bo_fx .btn_write_txt .btn_write_label {
    font-weight: 400;
    letter-spacing: -0.01em;
    white-space: nowrap;
    line-height: 1;
}
#bo_list .bo_fx .btn_write_txt .bo_ico_ms {
    font-size: 1.1em;
}
#bo_list_total {float:left;line-height:34px;font-size:0.92em;color:#4e546f}

.btn_bo_user {float:right;margin:0;padding:0;list-style:none}
.btn_bo_user li {float:left;width:40px;text-align:center;background:#fff}
.btn_bo_user > li {position:relative}
/* 글쓰기·검색·리스트옵션·검색패널·글보기 상단: Google Material Symbols */
#bo_list .btn_bo_user .bo_ico_ms,
#bo_list .bo_sch .sch_btn .bo_ico_ms,
#bo_v_top .btn_bo_user .bo_ico_ms {
    font-family: 'Material Symbols Outlined';
    font-size: 20px;
    line-height: 1;
    vertical-align: middle;
    font-weight: normal;
    font-style: normal;
    display: inline-block;
    -webkit-font-smoothing: antialiased;
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
#bo_v_top .more_opt li .bo_ico_ms {
    font-size: 1.2em;
}
.btn_bo_adm {float:left}
.btn_bo_adm li {float:left;margin-right:5px}
.btn_bo_adm input {padding:0 8px;border:0;background:#d4d4d4;color:#666;text-decoration:none;vertical-align:middle}
.bo_notice{
    border-bottom:1px solid #f0f3f7;
}
.bo_notice td {
    background:#f3f7ff!important;
    border-bottom:1px solid transparent;
}
.bo_notice td a {font-weight:bold}
.bo_notice .notice_icon {
    display:inline-block;
    line-height:25px;
    border-radius:5px;
    font-weight:bold;
    color:var(--color-blue);
}

.more_opt {display:none;position:absolute;top:45px;right:0;background:#fff;border:1px solid #b8bfc4;z-index:999}
.more_opt:before {content:"";position:absolute;top:-8px;right:13px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #b8bfc4 transparent}
.more_opt:after {content:"";position:absolute;top:-6px;right:13px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
.more_opt li {
    border-bottom:1px solid #f1f1f1;
    padding:10px;
    float:inherit;
    width:90px;
    margin:0;
    color:#6b757c;
    text-align:left;
    font-size: 0.9rem;
}
.more_opt li:last-child {border-bottom:0}
.more_opt li button, .more_opt li a {
    width:100%;
    border:0;
    background:#fff;
    color:#6b757c;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.more_opt li:hover a,
.more_opt li:hover button {color:#000}
.more_opt li i,
.more_opt li .bo_ico_ms {float:right;line-height:20px}

.td_num strong {color:#000}
.bo_cate_link {float:left;display:inline-block;margin-right:10px;background:#e2eaf6;color:#3a8afd;font-weight:normal !important;height:20px;line-height:10px;padding:5px 8px;border-radius:5px;font-size:0.95em} /* 글제목줄 분류스타일 */
.bo_cate_link:hover {text-decoration:none}
.bo_tit {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 6px;
    min-width: 0;
    width: 100%;
    color: #000;
    font-weight: bold;
}
/* 제목 링크: 짧은 제목은 콘텐츠 너비만, 긴 제목만 셀 폭까지 쓰고 말줄임 */
#bo_list .bo_tit > a {
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    flex: 0 1 auto;
    width: min(max-content, 100%);
    max-width: 100%;
    min-width: 0;
    line-height: 1.45;
    min-height: 1.45em;
    overflow: hidden;
}
#bo_list .bo_tit .bo_subj_txt {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
    flex: 1 1 0%;
}
.bo_current {color:#e8180c}
#bo_list .profile_img img {border-radius:50%}

#bo_list .bo_tit .title_icon {margin-right:2px}
#bo_list .bo_tit .fa-heart {color:#ff0000}
#bo_list .bo_tit .fa-lock {display:inline-block;line-height:14px;width:16px;font-size:0.833em;color:#4f818c;background:#cbe3e8;text-align:center;border-radius:2px;font-size:12px;border:1px solid #cbe3e8;vertical-align:middle}
#bo_list .bo_tit .new_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#23db79;background:#b9ffda;text-align:center;border-radius:2px;margin-left:2px;font-weight:bold;vertical-align:middle}
#bo_list .bo_tit .hot_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#ff0000;background:#ffb9b9;text-align:center;border-radius:2px;vertical-align:middle}
#bo_list .bo_tit .fa-caret-right {color:#bbb}
#bo_list .bo_tit .fa-download {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#daae37;background:#ffefb9;text-align:center;border-radius:2px;margin-left:5px;vertical-align:middle}
#bo_list .bo_tit .fa-link {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#b451fd;background:#edd3fd;text-align:center;border-radius:2px;margin-left:5px;vertical-align:middle}

.bo_sch_wrap {
    display:none;
    width:100%;height:100%;position:fixed;top:0;left:0;z-index:999}
.bo_sch {
    position:absolute;
    top:25%;
    left:50%;
    background:#fff;
    text-align:left;
    width:330px;
    max-height:300px;
    transform: translate(-50%, 0);
    overflow-y:auto;
    border-radius:10px;
    -webkit-box-shadow:1px 1px 18px rgba(0,0,0,0.2);-moz-box-shadow:1px 1px 18px rgba(0,0,0,0.2);box-shadow:1px 1px 18px rgba(0,0,0,0.2);
    border:1px solid #dde7e9;
    background:#fff;
}
.bo_sch:after {display:block;visibility:hidden;clear:both;content:""}
.bo_sch h3 {
    padding:10px 15px;
    border-bottom:1px solid #e8e8e8;
    background-color: var(--color-blue);
    color: var(--color-white);
}
.bo_sch legend {background:red}
.bo_sch form {padding:15px;display:block}
.bo_sch select {border:0;width:100%;height:40px;border:1px solid #d0d3db;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075)}
.bo_sch .sch_bar {display:inline-block;width:100%;clear:both;margin-top:15px;border:1px solid #d0d3db;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075)}
.bo_sch .sch_input {width:250px;height:38px;border:0;padding:0;background-color:transparent;float:left}
.bo_sch .sch_btn {height:38px;float:right;color:#656565;background:none;border:0;width:40px;font-size:15px}
.bo_sch .bo_sch_cls {
    position:absolute;
    right:0;
    top:2px;
    color:var(--color-white);
    border:0;
    padding:12px 15px;
    font-size:1rem;
    background:transparent;
}
.bo_sch_bg {background:#000;background:rgba(0,0,0,0.1);width:100%;height:100%}

/* 게시판 쓰기 */
#char_count_desc {display:block;margin:0 0 5px;padding:0}
#char_count_wrap {margin:5px 0 0;text-align:right}
#char_count {font-weight:bold}

#autosave_wrapper {position:relative}
#autosave_pop {display:none;z-index:10;position:absolute !important;top:34px;right:0;width:350px;height:auto !important;height:180px;max-height:180px;border:1px solid #565656;background:#fff;
-webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2)}
#autosave_pop:before {content:"";position:absolute;top:-8px;right:45px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #000 transparent}
#autosave_pop:after {content:"";position:absolute;top:-7px;right:45px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
html.no-overflowscrolling #autosave_pop {height:auto;max-height:10000px !important} /* overflow 미지원 기기 대응 */
#autosave_pop strong {position:absolute;font-size:0;line-height:0;overflow:hidden}
#autosave_pop div {text-align:center;margin:0 !important}
#autosave_pop button {margin:0;padding:0;border:0}
#autosave_pop ul {padding:15px;border-top:1px solid #e9e9e9;list-style:none;overflow-y:scroll;height:130px;border-bottom:1px solid #e8e8e8}
#autosave_pop li {padding:8px 5px;border-bottom:1px solid #fff;background:#eee;zoom:1}
#autosave_pop li:after {display:block;visibility:hidden;clear:both;content:""}
#autosave_pop a {display:block;float:left}
#autosave_pop span {display:block;float:right;font-size:0.92em;font-style:italic;color:#999}
.autosave_close {cursor:pointer;width:100%;height:30px;background:none;color:#888;font-weight:bold;font-size:0.92em}
.autosave_close:hover {background:#f3f3f3;color:#3597d9}
.autosave_content {display:none}
.autosave_del {background:url(./img/close_btn.png) no-repeat 50% 50%;text-indent:-999px;overflow:hidden;height:20px;width:20px}

/* 게시판 읽기 */
#bo_v {
    margin-bottom:20px;
    background:#fff;
    box-sizing:border-box;
    border-top: 2px solid var(--color-black);
}

#bo_v_table {position:absolute;top:0;right:16px;margin:0;padding:0 5px;height:25px;background:#ff3061;color:#fff;font-weight:bold;line-height:2.2em}

#bo_v_title {
    padding: 15px 20px;
    text-align: center;
    border-bottom: 1px solid #e0e0e0;
}
#bo_v_title .bo_v_cate {display:inline-block;line-height:20px;background:#e2eaf6;color:#3a8afd;padding:0 10px;border-radius:3px;}
#bo_v_title .bo_v_tit {
    display:block;
    font-size:clamp(1.2rem, 2vw, 1.5rem);
    line-height: 1.4em;
    margin:5px 0 0;
    word-break:break-all;
    font-weight: 700;
}

#bo_v_info {
    margin:0;
    border-bottom:1px solid #f1f1f1;
    color:#666;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 5px;
}
#bo_v_info:after {display:none;visibility:hidden;clear:both;content:""} 
#bo_v_info h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_info .profile_info {
    margin:0;
    display:inline-block;
    float:none;
}
#bo_v_info .profile_info .profile_info_ct {
    float:left;
    padding:5px 0;
    line-height:1.5em;
    font-size: 0.95rem;
}

#bo_v_info .profile_info .profile_info_ct .m_block{
    display: none;
}

#bo_v_info strong {
    display:inline-block;
    margin:0 10px 0 0;
    font-weight:300;
    color: #999;
}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {
    font-weight:500;
    color: var(--color-black);
}
#bo_v_info .profile_img {display:none}
#bo_v_info .sv_member {color:#000}
#bo_v_info .if_date {
    margin:0;
}

#bo_v_file h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_file ul {margin:0;list-style:none}
#bo_v_file li {padding:15px;position:relative;margin:10px 0;border:1px solid #dfdfdf;border-radius:5px;
-webkit-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
-moz-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%)}
#bo_v_file li i {float:left;color:#b2b2b2;font-size:2.35em;margin-right:20px}
#bo_v_file a {float:left;display:block;text-decoration:none;word-wrap:break-word;color:#000}
#bo_v_file a:focus, #bo_v_file li:hover a, #bo_v_file a:active {text-decoration:underline;color:#3a8afd}
#bo_v_file img {float:left;margin:0 10px 0 0}
#bo_v_file .bo_v_file_cnt {color:#b2b2b2;font-size:0.92em}
#bo_v_file li:hover {border-color:#bed4f4;color:#bed4f4}
#bo_v_file li:hover i {color:#3a8afd}
#bo_v_file li:hover .bo_v_file_cnt {color:#99c2fc}


#bo_v_link h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_file ul {margin:0;list-style:none}
#bo_v_link li {padding:15px;position:relative;margin:10px 0;border:1px solid #dfdfdf;border-radius:5px;
-webkit-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
-moz-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%)}
#bo_v_link li i {float:left;color:#b2b2b2;font-size:2.35em;margin-right:20px}
#bo_v_link a {float:left;display:block;text-decoration:none;word-wrap:break-word;color:#000}
#bo_v_link a:focus, #bo_v_link li:hover a, #bo_v_link a:active {text-decoration:underline;color:#3a8afd}
#bo_v_link .bo_v_link_cnt {color:#b2b2b2;font-size:0.92em}
#bo_v_link li:hover {border-color:#bed4f4;color:#bed4f4}
#bo_v_link li:hover i {color:#3a8afd}
#bo_v_link li:hover .bo_v_link_cnt {color:#99c2fc}

#bo_v_top {zoom:1}
#bo_v_top:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_top h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_top ul {
    padding:0;
    list-style:none;
    word-break:break-all;
    background:#fff;
}
#bo_v_top .btn_bo_user .btn{
    line-height: 30px;
    height: 30px;
    padding: 0 5px;
}

#bo_v_bot {zoom:1}
#bo_v_bot:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_bot h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_bot ul {padding:0;list-style:none}

.bo_v_com {
    margin:0;
    float:none;
}
.bo_v_com > li {
    position:relative;
    float:left;
    margin-left:0;
}

.bo_v_nb {position:relative;margin:20px 0;clear:both;text-align:left}
.bo_v_nb:after {display:block;visibility:hidden;clear:both;content:""}
.bo_v_nb li {
    border-top:1px solid #f1f1f1;
    padding:12px;
    font-size: 0.9rem;
}
.bo_v_nb li:last-child {border-bottom:1px solid #f1f1f1}
.bo_v_nb li:hover {background:#f6f6f6}
.bo_v_nb li i {font-size:13px;color:#b3b3b3}
.bo_v_nb li .nb_tit {display:inline-block;padding-right:20px;color:#b3b3b3}
.bo_v_nb li .nb_date {float:right;color:#b3b3b3}

#bo_v_atc {min-height:200px;height:auto !important;height:200px}
#bo_v_atc_title {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_img {width:100%;overflow:hidden;zoom:1}
#bo_v_img:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_img a.view_image {display:block}
#bo_v_img img {margin-bottom:20px;max-width:100%;height:auto}

#bo_v_con {
    margin:10px 0 30px;
    padding: 0 10px;
    width:100%;
    line-height:1.7em;
    min-height:200px;
    word-break:break-all;
    overflow:hidden;
}
#bo_v_con a {color:#000;text-decoration:underline}
#bo_v_con img {max-width:100%;height:auto}

#bo_v_act {margin-bottom:30px;text-align:center}
#bo_v_act .bo_v_act_gng {position:relative}
#bo_v_act a {margin-right:5px;vertical-align:middle;color:#4a5158}
#bo_v_act a:hover {background-color:#fff;color:#ff484f;border-color:#ff484f}
#bo_v_act i {font-size:1.4em;margin-right:5px}
#bo_v_act_good, #bo_v_act_nogood {display:none;position:absolute;top:30px;left:0;z-index:9999;padding:10px 0;width:165px;background:#ff3061;color:#fff;text-align:center}
#bo_v_act .bo_v_good {display:inline-block;border:1px solid #dedede;width:70px;line-height:46px;border-radius:30px}
#bo_v_act .bo_v_nogood {display:inline-block;border:1px solid #dedede;width:70px;line-height:46px;border-radius:30px}

#bo_v_sns {padding:0;list-style:none;zoom:1;float:left;display:inline-block}
#bo_v_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_sns li {float:left;width:135px;margin-right:5px;text-align:left}
#bo_v_sns li a {height:35px;line-height:35px;text-align:center;border-radius:5px;color:#fff;font-size:0.95em}
#bo_v_sns li img {vertical-align:middle;margin-right:5px}
#bo_v_sns li .sns_f {display:block;background:#3b5997}
#bo_v_sns li .sns_t {display:block;background:#09aeee}
#bo_v_sns li .sns_g {display:block;background:#ea4026}
#bo_v_sns li .sns_k {display:block;background:#fbe300}

#bo_v_share {position:relative;padding:20px 0}
#bo_v_share:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_share .btn {padding:0 10px;color:#555;font-weight:normal;font-size:1em;width:80px;line-height:35px;height:35px;border-color:#d5d5d5;border-radius:5px}
#bo_v_share .btn:hover {background:#fff}
#bo_v_share .btn i {margin-right:5px;color:#4b5259;vertical-align:middle}

/* 게시판 댓글 */
.cmt_btn {width:100%;text-align:left;border:0;border-bottom:1px solid #f0f0f0;background:#fff;font-weight:bold;margin:30px 0 0px;padding:0 0 15px}
.cmt_btn span.total {
    position:relative;
    display:inline-block;
    margin-right:5px;
    font-size:0.9rem;
    color:var(--color-deepblue);
}
.cmt_btn span.cmt_more {float:right;display:inline-block;width:15px;height:10px;background:url(./img/btn_cmt.png) no-repeat right 2px;margin-top:5px}
.cmt_btn_op span.cmt_more {background-position:right -8px}
.cmt_btn b {
    font-size:1.1em;
    color:#000;
    font-weight: 700;
}
.cmt_btn span.total:after {
    position:absolute;
    bottom:-17px;
    left:0;
    display:inline-block;
    background:var(--color-deepblue);
    content:"";
    width:100%;
    height:2px;
}
#bo_vc {
    padding: 20px 10px;
    background-color: #fafafa;
}
#bo_vc h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc article {
    position:relative;
    border-bottom:1px solid #f0f0f0;
    margin-bottom: 5px;
    background-color: #fff;
    border-radius: 5px;
}
#bo_vc article:last-child {
    margin-bottom: 0;
}
#bo_vc article:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc article .profile_img img {border-radius:50%}
#bo_vc article .cm_wrap {
    float:none;
    max-width:100%;
    width:100%;
    padding: 10px;
}
#bo_vc header {
    position:relative;
    width:100%;
    margin-bottom: 5px;
}
#bo_vc header:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc header .profile_img {display:none}
#bo_vc header .icon_reply {position:absolute;top:15px;left:-20px}
#bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest {
    font-weight:bold;
    margin-right: 5px;
    color: var(--color-deepblue);
}
.bo_vc_hdinfo {
    color:#999;
    font-size: 0.9rem;
    font-weight: 300;
}
#bo_vc h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc .cmt_contents {
    line-height:1.5em;
    padding-bottom: 10px;
}
#bo_vc p a {text-decoration:underline}
#bo_vc p a.s_cmt {text-decoration:underline;color:#ed6479}
#bo_vc_empty {margin:0;padding:80px 0 !important;color:#777;text-align:center}
#bo_vc #bo_vc_winfo {float:left}
#bo_vc .bo_vl_opt {
    position:absolute;
    top:0;
    right:0;
}
#bo_vc .bo_vl_opt .btn{
    line-height: 30px;
    height: 30px;
}
#bo_vc .bo_vl_opt .btn i{
    font-size: 1rem;
}

.bo_vc_act {
    display:none;
    position:absolute;
    right:0;
    top:40px;
    width:58px;
    text-align:right;
    border:1px solid #b8bfc4;
    margin:0;
    list-style:none;
    background:#fff;
    zoom:1;
    z-index:9999;
    font-size: 0.85rem;
}
.bo_vc_act:before {content:"";position:absolute;top:-8px;right:5px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #b8bfc4 transparent}
.bo_vc_act:after {content:"";position:absolute;top:-6px;right:5px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
.bo_vc_act li {border-bottom:1px solid #f0f0f0}
.bo_vc_act li:last-child {border-bottom:0}
.bo_vc_act li a {
    display:inline-block;
    padding:5px 15px;
}
.bo_vc_act li a:hover {color:#3a8afd}

.bo_vc_w {position:relative;margin:10px 0;display:block}
.bo_vc_w:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.bo_vc_w #char_cnt {display:block;margin:0 0 5px}
.bo_vc_w textarea {
    border:1px solid #ccc;
    background:#fff;
    color:#000;
    vertical-align:middle;
    border-radius:3px;
    padding:10px;
    width:100%;
    height:120px;
-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);
-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);
box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);
font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}
#wr_secret {}
.bo_vc_w_info {margin:10px 0;float:left}
.bo_vc_w_info:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w_info .frm_input {float:left;margin-right:5px}
.bo_vc_w_info #captcha {padding-top:10px;display:block;clear:both}
.bo_vc_w .btn_confirm {
    clear:both;
    margin-top:0;
}
.bo_vc_w .btn_confirm label {display:inline-block;margin-right:10px;border-radius:3px;font-size:1.5em;text-align:center}
.bo_vc_w .btn_submit {
    height:35px;
    padding:0 20px;
    border-radius:5px;
    font-weight:bold;
    font-size:14px;
}
.bo_vc_w .btn_confirm .secret_cm label {
    font-size:0.9rem !important;
    display: flex;
    align-items: center;
    gap: 5px;
    padding-left: 0 !important;
}
.bo_vc_w .btn_confirm .secret_cm label span{
    position: initial !important;
}
.bo_vc_w_wr:after {display:block;visibility:hidden;clear:both;content:""}
.secret_cm {display:inline-block;float:left}

#bo_vc_send_sns {display:inline-block;float:left}
#bo_vc_sns {display:inline-block;margin:0;padding:0;list-style:none;zoom:1}
#bo_vc_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc_sns li {float:left;margin:0 5px 0 0}
#bo_vc_sns .sns_li_f {border-radius:3px;background:#3a589b;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_t {border-radius:3px;background:#00aced;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_off {background:#bbb}
#bo_vc_sns a {display:inline-block;padding:0 15px 0 5px}
#bo_vc_sns input {margin:0 5px 0 0}

/*글쓰기*/
#bo_w .bo_v_option li {display:inline-block;float:left;text-align:left;margin:0 5px 0 0}
#bo_w .bo_v_option li label {vertical-align:baseline}
#bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {margin-left:0;margin-right:5px}
#bo_w .write_div {margin:10px 0;position:relative}
#bo_w .write_div:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info .frm_input {float:left;margin-bottom:1%}
#bo_w #wr_password, #bo_w #wr_homepage {margin-left:1%}
#bo_w .wr_content.smarteditor2 iframe {background:#fff}
#bo_w .bo_w_tit {position:relative}
#bo_w .bo_w_tit .frm_input {padding-right:120px}
#bo_w .bo_w_tit #btn_autosave {position:absolute;top:5px;right:5px;line-height:30px;height:30px}
#bo_w .bo_w_link label {position:absolute;top:1px;left:1px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_link .frm_input {padding-left:50px}
#bo_w .bo_w_flie .lb_icon {position:absolute;top:0px;left:0px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_flie .frm_file {
    padding-left:50px;
    margin-top:3px;
}
#bo_w .bo_w_flie input[type=file]::file-selector-button {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 3px;
    font-size: 0.9rem;
    color: #777;
}
#bo_w .bo_w_flie .file_wr {
    position:relative;
    border:1px solid #ccc;
    background:#fff;
    color:#000;
    vertical-align:middle;
    border-radius:8px;
    padding:5px;
    height:40px;
    margin:0;
}
#bo_w .bo_w_flie .frm_input {margin:10px 0 0}
#bo_w .bo_w_flie .file_del {position:absolute;top:10px;right:10px;font-size:0.92em;color:#7d7d7d}
#bo_w .bo_w_select select {border:1px solid #d0d3db;width:100%;height:40px;border-radius:3px}
#bo_w .btn_confirm {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    text-align: center;
    padding-top: 10px;
}
#bo_w .btn_submit {
    padding:0 20px;
    font-size:1rem;
    border-radius: 50px;
}
#bo_w .btn_cancel {
    border-radius:3px;
    font-size:1rem;
    background-color: transparent;
    color: var(--color-blue);
    border: 1px solid var(--color-blue);
    border-radius: 50px;
    padding: 0 20px;
}
@media (hover: hover) and (pointer: fine) {
    /* 호버 효과는 마우스 포인터가 있는 기기(예: PC)에서만 적용됨 */
    #bo_list tbody tr:hover{
        border-left: 2px solid var(--color-blue);
    }
    .tbl_head01 tbody tr:hover td{
        background: #fafafa;
    }
    /* 필요에 따라 다른 호버 효과가 있다면 여기에 추가 */
}

@media (max-width: 768px) {
    #container{
        padding: 60px 0;
    }
    #container_title{
        padding-bottom: 20px;
    }
    .tbl_head01 thead tr{
        font-size: 0.95rem;
    }
    #bo_list .bo_list_tbl col.cw-chk{
        width: 25px;
    }
    #bo_list .bo_list_tbl col.cw-num,
    #bo_list .bo_list_tbl col.cw-hit{
        width: 45px;
    }
    .chk_box input[type="checkbox"] + label span{
        width: 13px;
        height: 13px;
    }
    .btn_bo_user li{
        width: 30px;
    }

    #bo_w .bo_w_flie .frm_file{
        padding-left: 35px;
    }
    #bo_w .bo_w_link label,
    #bo_w .bo_w_flie .lb_icon{
        font-size: 1rem;
    }
}


@media (max-width: 500px) {
    /* colgroup <col> 너비·768px 구간 보정까지 무력화 — flex 행에서는 열 고정 폭 불필요 */
    #bo_list table.bo_list_tbl {
        table-layout: auto;
    }
    #bo_list .bo_list_tbl colgroup col,
    #bo_list .bo_list_tbl col {
        width: auto !important;
        min-width: 0;
    }
    #bo_list .tbl_head01 thead {
        display: none;
    }
    .tbl_wrap table{
        border-radius: 0;
        border-top: 2px solid var(--color-deepblue);
    }
    #bo_list tbody tr{
        display: flex;
        flex-wrap: wrap;
        border-bottom: 1px solid #e9e9e9;
    }
    #bo_list table.bo_list_tbl td{
        height: auto;
        border-top: 0;
        border-bottom: 0;
        padding: 6px 5px;
    }
    #bo_list .td_chk{
        width: 100%;
        height: auto;
    }
    #bo_list .td_num2{
        width: 40px;
    }
    .bo_notice .notice_icon{
        line-height: 1;
    }
    #bo_list .bo_list_tbl .td_subject{
        width: calc(100% - 40px);
        vertical-align: middle;
    }
    #bo_list .td_name,
    #bo_list .td_datetime{
        width: fit-content;
    }
    #bo_list .td_num{
        display: none;
    }
    .bo_notice{
        background-color: #f3f7ff;
    }
    .bo_notice td{
        background: transparent !important;
    }
    #bo_list tbody .even td{
        background-color: transparent;
    }
    .empty_table{
        width: 100%;
    }
    
    #bo_v{
        position: relative;
    }
    #bo_v_top{
        position: absolute;
        top: -35px;
        right: 0;
    }
    .btn_bo_user li{
        background: transparent;
    }
    #bo_v_top .btn_bo_user .btn{
        line-height: 24px;
        height: 24px;
    }
    #bo_list .btn_bo_user .bo_ico_ms, 
    #bo_list .bo_sch .sch_btn .bo_ico_ms, 
    #bo_v_top .btn_bo_user .bo_ico_ms{
        font-size: 16px;
    }
    #bo_v_title{
        padding: 10px 15px;
    }
    #bo_v_info{
        padding: 8px 5px;
    }
    #bo_v_info .profile_info .profile_info_ct{
        line-height: 1;
    }
}