@charset "utf-8";

/* ============================================================
   테마 변수 연결 (jjtheme.css의 :root 변수를 그대로 사용)
   - 게시판이 테마의 레이아웃/색상을 따라가도록 함
   ============================================================ */

/* 게시판이 테마 레이아웃 폭을 따르도록 */
#container {
    max-width: var(--wrap) !important;
    margin: 0 auto !important;
    float: none !important;
    width: auto !important;
}

/* 나머지는 원본 style.css를 그대로 유지 */
/* ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ */

html {overflow-y:scroll}
body {margin:0;padding:0;font-size:0.75em;font-family:'Malgun Gothic', dotum, sans-serif;background:var(--white)}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family:'Malgun Gothic', dotum, sans-serif}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul, dl,dt,dd {margin:0;padding:0;list-style:none}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle;font-size:1em}
input, button {margin:0;padding:0;font-family:'Malgun Gothic', dotum, sans-serif;font-size:1em}
input[type="submit"] {cursor:pointer}
button {cursor:pointer}

textarea, select {font-family:'Malgun Gothic', dotum, sans-serif;font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:var(--txt);text-decoration:none}

*, :after, :before {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

input[type=text],input[type=password], textarea {
-webkit-transition:all 0.30s ease-in-out;
-moz-transition:all 0.30s ease-in-out;
-ms-transition:all 0.30s ease-in-out;
-o-transition:all 0.30s ease-in-out;
outline:none;
}

input[type=text]:focus,input[type=password]:focus, textarea:focus,select:focus {
-webkit-box-shadow:0 0 5px #9ed4ff;
-moz-box-shadow:0 0 5px #9ed4ff;
box-shadow:0 0 5px #9ed4ff;
border:1px solid #558ab7 !important;
}

.placeholdersjs {color:#aaa !important}

/* 레이아웃 크기 지정 */
#hd_pop,
#hd_wrapper,
#tnb .inner,

#gnb .gnb_wrap,
#container_wr,
#ft_wr {width:1200px}

/* 상단 레이아웃 */
#hd {background:#212020}
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#tnb {border-bottom:1px solid #383838;margin:0 auto}
#tnb:after {display:block;visibility:hidden;clear:both;content:""}
#tnb .inner {margin:0 auto}

#hd_wrapper {position:relative;margin:0 auto;height:140px;zoom:1}
#hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""}

#logo {float:left;padding:30px 0 0}

.hd_sch_wr {float:left;padding:30px 0;width:445px;margin-left:65px}
#hd_sch h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#hd_sch {border-radius:30px;overflow:hidden}
#hd_sch #sch_stx {float:left;width:385px;height:45px;padding-left:10px;border-radius:30px 0 0 30px;background:#2c2c2c;border:0;border-right:0;font-size:1.25em;color:var(--white)}
#hd_sch #sch_submit {float:left;width:60px;height:45px;border:0;background:#2c2c2c;color:var(--white);border-radius:0 30px 30px 0;cursor:pointer;font-size:16px}

#hd_define {float:left}
#hd_define:after {display:block;visibility:hidden;clear:both;content:""}
#hd_define li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_define li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_define li a {display:inline-block;color:#919191}
#hd_define li.active a {color:var(--white)}

#hd_qnb {float:right;text-align:right}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_qnb li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_qnb li span {display:block;margin-top:5px;font-size:0.92em}
#hd_qnb li a {display:inline-block;color:#919191}
#hd_qnb .visit .visit-num {display:inline-block;line-height:16px;padding:0 5px;margin-left:5px;border-radius:10px;background:#da22f5;color:var(--white);font-size:10px}

.hd_login {position:absolute;right:0;top:60px}
.hd_login li {float:left;margin:0 5px;border-left:1px solid #616161;padding-left:10px;line-height:13px}
.hd_login li:first-child {border-left:0}
.hd_login a {color:var(--white)}

/* 메인메뉴 */
#gnb {position:relative;background:var(--white)}
#gnb > h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#gnb .gnb_wrap {margin:0 auto;position:relative}
#gnb .gnb_wrap:hover, #gnb .gnb_wrap:focus, #gnb .gnb_wrap:active{z-index:3}
#gnb #gnb_1dul {font-size:1.083em;padding:0;border-bottom:1px solid #e0e2e5;zoom:1}
#gnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb .gnb_1dli {float:left;line-height:55px;padding:0px;position:relative}
#gnb .gnb_1dli:hover > a {color:var(--brand);
-webkit-transition:background-color 2s ease-out;
-moz-transition:background-color 0.3s ease-out;
-o-transition:background-color 0.3s ease-out;
transition:background-color 0.3s ease-out}

.gnb_1dli .bg {position:absolute;top:24px;right:8px;display:inline-block;width:10px;height:10px;overflow:hidden;background:url('./images/gnb_bg2.gif') no-repeat 50% 50%;text-indent:-999px}
.gnb_1da {display:block;font-weight:bold;padding:0 15px;color:#080808;text-decoration:none}
.gnb_1dli.gnb_al_li_plus .gnb_1da{padding-right:25px}
.gnb_2dli:first-child {border:0}
.gnb_2dul {display:none;position:absolute;top:54px;min-width:140px;padding-top:2px}
.gnb_2dul .gnb_2dul_box {border:1px solid #e0e2e5;border-top:0;padding:0;
-webkit-box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2);
-moz-box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2);
box-shadow:0px 1px 5px rgba(97, 97, 97, 0.2)}
.gnb_2da {display:block;padding:0 10px;line-height:40px;background:var(--white);color:#080808;text-align:left;text-decoration:none}
a.gnb_2da:hover {color:var(--brand);background:#f7f7f8;
-moz-transition:all 0.3s ease-out;
-o-transition:all 0.3s ease-out;
transition:all 0.3s ease-out}

.gnb_1dli_air .gnb_2da {}
.gnb_1dli_on .gnb_2da {}
.gnb_2da:focus, .gnb_2da:hover {color:var(--white)}
.gnb_1dli_over .gnb_2dul {display:block;left:0}
.gnb_1dli_over2 .gnb_2dul {display:block;right:0}
.gnb_wrap .gnb_empty {padding:10px 0;width:100%;text-align:center;line-height:2.7em;color:#080808}
.gnb_wrap .gnb_empty a {color:var(--brand);text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a {color:#555}

#gnb .gnb_menu_btn {background:#4158d1;color:var(--white);width:50px;height:55px;border:0;vertical-align:top;font-size:18px}
#gnb .gnb_close_btn {background:var(--white);color:#b6b9bb;width:50px;height:50px;border:0;vertical-align:top;font-size:18px;position:absolute;top:0;right:0}
#gnb .gnb_mnal {float:right;padding:0}

#gnb_all {display:none;position:absolute;border:1px solid #c5d6da;width:100%;background:var(--white);z-index:1000;-webkit-box-shadow:0 2px 5px rgba(0,0,0,0.2);
-moz-box-shadow:0 2px 5px rgba(0,0,0,0.2);
box-shadow:0 2px 5px rgba(0,0,0,0.2)}
#gnb_all h2 {font-size:1.3em;padding:15px 20px;border-bottom:1px solid #e7eeef}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_ul > li:nth-child(5n+1) {border-left:0}
#gnb_all .gnb_al_li {float:left;width:20%;min-height:150px;padding:20px;border-left:1px solid #e7eeef}
#gnb_all .gnb_al_li .gnb_al_a {font-size:1.2em;display:block;position:relative;margin-bottom:10px;font-weight:bold;color:var(--brand)}
#gnb_all .gnb_al_li li {line-height:2em}
#gnb_all .gnb_al_li li a {color:#555}
#gnb_all_bg {display:none;background:rgba(0,0,0,0.1);width:100%;height:100%;position:fixed;left:0;top:0;z-index:999}

/* 중간 레이아웃 */
#wrapper {}
#container_wr:after {display:block;visibility:hidden;clear:both;content:""}
#container_wr {margin:0 auto;zoom:1}
#aside {float:right;width:235px;padding:0;height:100%;margin:20px 0 20px 20px}

#container {position:relative;min-height:500px;height:auto !important;margin:20px 0;font-size:1em;zoom:1}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container_title {font-size:1.5em;margin:0 auto;font-weight:bold}
#container_title span {margin:0 auto 10px;display:block;line-height:30px}

.lt_wr {width:32%}
.lt_wr:nth-child(3n+1) {clear:both}
.latest_wr {margin-bottom:20px}
.latest_wr:after {display:block;visibility:hidden;clear:both;content:""}
.latest_top_wr {margin:0 -10px 20px}
.latest_top_wr:after {display:block;visibility:hidden;clear:both;content:""}

/* 하단 레이아웃 */
#ft {background:#212020;margin:0 auto;text-align:center}
#ft h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#ft_wr {max-width:1240px;margin:0;padding:40px 0;position:relative;display:inline-block;text-align:left}
#ft_wr:after {display:block;visibility:hidden;clear:both;content:""}
#ft_wr .ft_cnt {width:25%;float:left;padding:0 20px}

#ft_link {text-align:left}
#ft_link a {display:block;color:var(--white);line-height:2em;font-weight:bold}
#ft_company h2 {font-size:1.2em;margin-bottom:20px}
#ft_company {font-weight:normal;color:#e3e3e3;line-height:2em}
#ft_catch {margin:20px 0 10px}
#ft_copy {text-align:center;width:1200px;margin:0 auto;padding:20px 0;color:#5b5b5b;font-size:0.92em;border-top:1px solid #383838}
#top_btn {position:fixed;bottom:20px;right:20px;width:50px;height:50px;line-height:46px;border:2px solid var(--txt);color:var(--txt);text-align:center;font-size:15px;z-index:90;background:rgba(255,255,255,0.5)}
#top_btn:hover {border-color:var(--brand);background:var(--brand);color:var(--white)}

/* 게시물 선택복사 선택이동 */
#copymove {}
#copymove .win_desc {text-align:center;display:block}
#copymove .tbl_wrap {margin:20px}
#copymove .win_btn {padding:0 20px 20px}
.copymove_current {float:right;background:#ff3061;padding:5px;color:var(--white);border-radius:3px}
.copymove_currentbg {background:#f4f4f4}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;width:0;height:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}

/* 본문 바로가기 */
#skip_to_container a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skip_to_container a:focus, #skip_to_container a:active {width:100%;height:75px;background:#21272e;color:var(--white);font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}

/* ie6 이미지 너비 지정 */
.img_fix {width:100%;height:auto}

/* ============================================================
   캡챠 통합 스타일 (원글 + 댓글 공통)
   ============================================================ */

/* 캡챠 컨테이너 공통 */
.captcha-container,
#captcha {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    border: none;
    padding: 0;
    margin: 0;
    background: transparent;
    position: relative;
}

/* PC: 한 줄로 유지 */
@media (min-width: 768px) {
    .captcha-container,
    #captcha {
        flex-wrap: nowrap !important;
    }
}

/* 캡챠 이미지 */
.captcha-container #captcha_img,
#captcha #captcha_img {
    height: 40px;
    width: auto;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    background: var(--white);
    margin: 0;
    padding: 0;
}

/* 캡챠 입력창 */
.captcha-container #captcha_key,
#captcha #captcha_key {
    height: 40px;
    padding: 0 12px;
    margin: 0;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: var(--white);
    font-size: 1rem;
    font-weight: normal;
    text-align: center;
    width: 130px;
    transition: all 0.2s ease;
}

.captcha-container #captcha_key:focus,
#captcha #captcha_key:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 2px rgba(44, 95, 138, 0.1);
    outline: none;
}

/* 캡챠 버튼 (새로고침/음성) */
.captcha-container #captcha_reload,
.captcha-container #captcha_mp3,
#captcha #captcha_reload,
#captcha #captcha_mp3 {
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: var(--white);
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    overflow: visible;
    text-indent: 0;
    position: static;
}

.captcha-container #captcha_reload:hover,
.captcha-container #captcha_mp3:hover,
#captcha #captcha_reload:hover,
#captcha #captcha_mp3:hover {
    background: #f3f4f6;
    border-color: var(--brand);
}

/* 버튼 내부 텍스트/아이콘 처리 */
.captcha-container #captcha_reload,
#captcha #captcha_reload {
    background-image: none;
}

.captcha-container #captcha_mp3,
#captcha #captcha_mp3 {
    background-image: none;
}

/* Font Awesome 아이콘 사용 */
.captcha-container #captcha_reload::before,
#captcha #captcha_reload::before {
    content: "\f021";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 16px;
    color: #6b7280;
}

.captcha-container #captcha_mp3::before,
#captcha #captcha_mp3::before {
    content: "\f028";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 16px;
    color: #6b7280;
}

.captcha-container #captcha_reload span,
.captcha-container #captcha_mp3 span,
#captcha #captcha_reload span,
#captcha #captcha_mp3 span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* 캡챠 안내문은 스크린리더 전용 */
.captcha-container #captcha_info,
#captcha #captcha_info {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    display: block;
    font-size: 0;
}

/* 필드셋/레전드 숨김 */
.captcha-container fieldset,
.captcha-container legend,
#captcha fieldset,
#captcha legend {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* 모바일 대응 */
@media (max-width: 767px) {
    .captcha-container,
    #captcha {
        flex-wrap: wrap !important;
        gap: 6px;
    }
    
    .captcha-container #captcha_img,
    #captcha #captcha_img {
        height: 44px;
    }
    
    .captcha-container #captcha_key,
    #captcha #captcha_key {
        flex: 1;
        min-width: 120px;
        height: 44px;
        font-size: 16px;
    }
    
    .captcha-container #captcha_reload,
    .captcha-container #captcha_mp3,
    #captcha #captcha_reload,
    #captcha #captcha_mp3 {
        width: 44px;
        height: 44px;
    }
}

/* 모바일 전용(m_captcha) 호환 */
#captcha.m_captcha audio {
    display: block;
    margin: 0 0 5px;
    width: 100%;
    max-width: 187px;
}

#captcha.m_captcha {
    flex-direction: column;
    align-items: flex-start;
}

#captcha.m_captcha #captcha_img {
    width: auto;
    height: 44px;
    margin-bottom: 5px;
    margin-top: 0;
    display: block;
}

#captcha.m_captcha #captcha_reload {
    position: static;
    width: 44px;
    height: 44px;
}

#captcha.m_captcha #captcha_key {
    width: 150px;
    height: 44px;
    margin-left: 0;
}

#captcha.m_captcha #captcha_mp3 {
    width: 44px;
    height: 44px;
}

/* ==================== 수정 시작: 문단 vs 줄바꿈 간격 분리 ==================== */
/* 원본의 br margin 제거하고 p 간격만 유지 */
#bo_v_con p {
  margin: 0 0 1.1em;
}
#bo_v_con p:last-child {
  margin-bottom: 0;
}
#bo_v_con p:empty {
  display: none;
}
/* br에는 어떤 margin도 주지 않음 (원본에 있던 display:block, margin 제거됨) */
/* ==================== 수정 끝 ==================== */

/* 버튼 */
a.btn,.btn {line-height:35px;height:35px;padding:0 10px;text-align:center;font-weight:bold;border:0;font-size:1.4em;
-webkit-transition:background-color 0.3s ease-out;
-moz-transition:background-color 0.3s ease-out;
-o-transition:background-color 0.3s ease-out;
transition:background-color 0.3s ease-out}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:var(--txt);text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:var(--txt);text-decoration:none}
a.btn02 {display:inline-block;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:var(--white);text-decoration:none;vertical-align:middle}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:var(--white);text-decoration:none}

.btn_confirm {text-align:right} /* 서식단계 진행 */

.btn_submit {border:0;background:var(--brand);color:var(--white);cursor:pointer;border-radius:3px}
.btn_submit:hover {background:var(--brand-d)}
.btn_close {border:1px solid #dcdcdc;cursor:pointer;border-radius:3px;background:var(--white)}
a.btn_close {text-align:center;line-height:50px}

a.btn_cancel {display:inline-block;background:#969696;color:var(--white);text-decoration:none;vertical-align:middle}
button.btn_cancel {display:inline-block;background:#969696;color:var(--white);text-decoration:none;vertical-align:middle}
.btn_cancel:hover {background:#aaa}
a.btn_frmline, button.btn_frmline {display:inline-block;width:128px;padding:0 5px;height:40px;border:0;background:#434a54;border-radius:3px;color:var(--white);text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
a.btn_frmline {}
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;color:#bababa;text-decoration:none;vertical-align:middle;border:0;background:transparent}
.btn_b01:hover, .btn_b01:hover {color:var(--txt)}
a.btn_b02,.btn_b02 {display:inline-block;background:#253dbe;padding:0 10px;color:var(--white);text-decoration:none;border:0;vertical-align:middle}
a.btn_b02:hover, .btn_b02:hover {background:#0025eb}
a.btn_b03, .btn_b03 {display:inline-block;background:var(--white);border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {background:#ebedf6}
a.btn_b04, .btn_b04 {display:inline-block;background:var(--white);border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle}
a.btn_b04:hover, .btn_b04:hover {color:var(--txt);background:#f9f9f9}
a.btn_admin,.btn_admin {display:inline-block;color:#d13f4a;text-decoration:none;vertical-align:middle} /* 관리자 전용 버튼 */
.btn_admin:hover, a.btn_admin:hover {color:var(--brand)}

/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;background:var(--white);border-top:1px solid #ececec;border-bottom:1px solid #ececec} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th {padding:20px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ececec;height:40px}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th, .tbl_head01 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head01 tbody th {padding:8px 0;border-bottom:1px solid #e8e8e8}
.tbl_head01 td {color:var(--txt-s);padding:10px 5px;border-top:1px solid #ecf0f1;border-bottom:1px solid #ecf0f1;line-height:1.4em;height:60px;word-break:break-all}
.tbl_head01 tbody tr:hover td {background:var(--bg)}
.tbl_head01 a:hover {text-decoration:underline}

.tbl_head02 {margin:0 0 10px}
.tbl_head02 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th, .tbl_head02 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:var(--white)}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:var(--white);line-height:1.4em;word-break:break-all}
.tbl_head02 a {}

/* 폼 테이블 */
.tbl_frm01 {margin:0 0 20px}
.tbl_frm01 table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_frm01 th {width:70px;padding:7px 13px;border:1px solid #e9e9e9;border-left:0;background:#f5f8f9;text-align:left}
.tbl_frm01 td {padding:7px 10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:transparent}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {border:1px solid #d0d3db;background:var(--white);color:var(--txt);vertical-align:middle;border-radius:3px;padding:5px;
-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);
}
.tbl_frm01 textarea {padding:2px 2px 3px}
.frm_input {height:40px}

.full_input {width:100%}
.half_input {width:49.5%}
.twopart_input {width:385px;margin-right:10px}
.tbl_frm01 textarea, .write_div textarea {width:100%;height:100px}
.tbl_frm01 a {text-decoration:none}
.tbl_frm01 .frm_file {display:block;margin-bottom:5px}
.tbl_frm01 .frm_info {display:block;padding:0 0 5px;line-height:1.4em}

/*기본 리스트*/
.list_01 ul {border-top:1px solid #ececec}
.list_01 li {border-bottom:1px solid #ececec;background:var(--white);padding:10px 15px;list-style:none;position:relative}
.list_01 li:nth-child(odd) {background:#f6f6f6}
.list_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover {background:#f9f9f9}
.list_01 li.empty_li {text-align:center;padding:20px 0;color:var(--txt-s)}

/*폼 리스트*/
.form_01 h2 {font-size:1.167em}
.form_01 li {margin-bottom:10px}
.form_01 ul:after,
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input {float:left}
.form_01 .margin_input {margin-right:1%}
.form_01 textarea {height:100px;width:100%}
.form_01 .frm_label {display:inline-block;width:130px}

/* 자료 없는 목록 */
.empty_table {padding:50px 0 !important;text-align:center}
.empty_list {padding:20px 0 !important;color:var(--txt-s);text-align:center}

/* 필수입력 */
.required, textarea.required {background-image:url('../img/require.png') !important;background-repeat:no-repeat !important;background-position:right top !important}

/* 테이블 항목별 정의 */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* 검색결과 색상 */
.sch_word {color:var(--white);background:#ff005a;padding:2px 5px 3px;line-height:18px;margin:0 2px}

/* 자바스크립트 alert 대안 */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:var(--white)}

/* 사이드뷰 */
.sv_wrap {position:relative;font-weight:normal}
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;font-size:0.92em;background:#333;
-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)}
.sv_wrap .sv:before {content:"";position:absolute;top:-6px;left:15px;width:0;height:0;border-style:solid;border-width:0 6px 6px 6px;border-color:transparent transparent #333 transparent}
.sv_wrap .sv a {display:inline-block;margin:0;padding:0 10px;line-height:30px;width:100px;font-weight:normal;color:#bbb}
.sv_wrap .sv a:hover {background:#000;color:var(--white)}
.sv_member {color:var(--txt)}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* cheditor 이슈 */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before {
-webkit-box-sizing:content-box;
-moz-box-sizing:content-box;
box-sizing:content-box;
}

/* Mobile화면으로 */
#device_change {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:var(--white);color:var(--txt);font-size:2em;text-decoration:none;text-align:center}


/* ===== FA6 기준 모두 윤곽선(regular) 스타일로 통일 ===== */

/* 수정 (윤곽선 연필) */
.fa-pencil-square-o:before {
    content: "\f044" !important;   /* fa-pen (연필 아이콘) */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
}

/* 삭제 (윤곽선 휴지통) */
.fa-trash-o:before {
    content: "\f2ed" !important;        /* fa-trash-can (regular) */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
}

/* 복사 (윤곽선 복사) */
.fa-files-o:before {
    content: "\f0c5" !important;        /* fa-copy (regular) */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
}

/* 추천 (윤곽선 엄지) */
.fa-thumbs-o-up:before {
    content: "\f164" !important;        /* fa-thumbs-up (regular) */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
}

/* 비추천 (윤곽선 엄지 아래) */
.fa-thumbs-o-down:before {
    content: "\f165" !important;        /* fa-thumbs-down (regular) */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;
}

/* ===== 본문 내용 폰트 크기 조정 ===== */
#bo_v_con {
    font-size: 16px !important;
    line-height: 1.8 !important;
}

/* 모바일에서는 약간 작게 */
@media (max-width: 767px) {
    /* view: 제목 모바일에서 축소 */
    #bo_v_title .bo_v_tit { font-size: 1.6em !important; }

    /* 날짜 줄바꿈 허용 */
    #bo_v_info .if_date { white-space: normal; }

    #bo_v_con {
        font-size: 15px !important;
        line-height: 1.7 !important;
    }
}

/* ===== 댓글 영역 폰트 크기 조정 ===== */

/* 댓글 목록 */
#bo_vc .cmt_contents {
    font-size: 15px !important;
    line-height: 1.6 !important;
}

/* 댓글 작성자 이름 */
#bo_vc header .sv_member,
#bo_vc header .sv_guest,
#bo_vc header .member,
#bo_vc header .guest {
    font-size: 13px !important;
    font-weight: 500 !important;
}

/* 댓글 입력창 (textarea) */
.bo_vc_w textarea {
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* 댓글 입력창 내 이름/비밀번호 입력 필드 */
.bo_vc_w .frm_input {
    font-size: 14px !important;
    height: 38px !important;
}

/* 댓글 전체 영역 모바일 대응 */
@media (max-width: 767px) {
    #bo_vc .cmt_contents {
        font-size: 14px !important;
    }
    .bo_vc_w textarea {
        font-size: 15px !important;
    }
}

/* ===== SNS 공유 버튼 (깔끔한 정사각형 + 카카오만 길죽이) ===== */

/* 공유 영역 전체 */
#bo_v_share {
    position: relative;
    padding: 20px 0;
    border-bottom: 1px solid #e4e4e4;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}
#bo_v_share:after {
    display: none;
}

/* SNS 버튼 리스트 */
#bo_v_sns {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    margin: 0;
}
#bo_v_sns:after {
    display: none;
}
#bo_v_sns li {
    display: block;
    width: auto;
    margin: 0;
    padding: 0;
}

/* 페이스북, 트위터 버튼 (정사각형, 아이콘만) */
#bo_v_sns li a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0 !important;
    margin: 0;
    border-radius: 6px;
    transition: all 0.2s ease;
}
#bo_v_sns li a:hover {
    opacity: 0.85;
    transform: translateY(-1px);
}
#bo_v_sns li a span {
    display: none !important;
}
#bo_v_sns li a img {
    width: 28px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
}
#bo_v_sns li a i {
    font-size: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
}
#bo_v_sns li .sns_f { background: #3b5997; }
#bo_v_sns li .sns_t { background: #09aeee; }

/* 카카오톡 버튼만 옆으로 긴 직사각형 (아이콘 + 텍스트) */
#bo_v_sns li .sns_k {
    width: auto !important;
    height: 32px;
    padding: 0 12px !important;
    gap: 4px;
    background: #FEE500;
}
#bo_v_sns li .sns_k span {
    display: inline-block !important;
    font-size: 12px;
    font-weight: 500;
    color: #3C1E1E;
}
#bo_v_sns li .sns_k img {
    width: 18px !important;
    height: 18px !important;
}

/* 스크랩 버튼 */
#bo_v_share .btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0 10px !important;
    margin: 0;
    height: 34px;
    line-height: 1;
    font-size: 12px;
    font-weight: normal;
    width: auto;
    border: 1px solid #d5d5d5;
    border-radius: 6px;
    background: var(--white);
    color: #555;
    flex-shrink: 0;
    white-space: nowrap;
    box-sizing: border-box;
}
#bo_v_share .btn i {
    font-size: 13px;
    margin: 0;
    color: #888;
}

/* 모바일 반응형 */
@media (max-width: 767px) {
    #bo_v_share {
        flex-wrap: nowrap;
        gap: 8px;
    }
    #bo_v_sns {
        gap: 5px;
        flex: 1;
    }
    /* 페이스북/트위터 정사각형 */
    #bo_v_sns li a {
        width: 32px;
        height: 32px;
    }
    #bo_v_sns li a img {
        width: 28px !important;
        height: 28px !important;
    }
    /* 카카오톡 길죽이 */
    #bo_v_sns li .sns_k {
        padding: 0 10px !important;
        height: 32px;
    }
    #bo_v_sns li .sns_k span {
        font-size: 11px;
    }
    /* 스크랩 버튼 */
    #bo_v_share .btn {
        padding: 0 8px !important;
        height: 34px;
        font-size: 11px;
        flex-shrink: 0;
    }
}

/* 게시판 목록 공통 */
.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:var(--brand)}
.chk_box input[type="checkbox"] + label span {float:left;width:15px;height:15px;display:block;background:var(--white);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:var(--white);border:1px solid #d0d4df;border-radius:3px}
.chk_box input[type="checkbox"]:checked + label {color:var(--txt)}
.chk_box input[type="checkbox"]:checked + label span {background:url(./img/chk.png) no-repeat 50% 50% var(--brand);border-color:#1471f6;border-radius:3px}

/* more_opt 드롭다운 — list/view 공통 */
.more_opt {display:none;position:absolute;top:42px;right:0;background:var(--white);border:1px solid var(--border);border-radius:4px;z-index:999;box-shadow:0 4px 12px rgba(0,0,0,0.08);min-width:75px}
.more_opt::before {content:"";position:absolute;top:-6px;right:10px;width:10px;height:10px;background:var(--white);border-top:1px solid var(--border);border-left:1px solid var(--border);transform:rotate(45deg)}
.more_opt li {border-bottom:1px solid #f0f0f0;padding:9px 14px;float:none;width:auto;margin:0;color:#555;text-align:left;font-size:13px}
.more_opt li:last-child {border-bottom:0}
.more_opt li button, .more_opt li a {width:100%;border:0;background:transparent;color:#555;font-size:13px;text-align:left;padding:0;cursor:pointer}
.more_opt li:hover button, .more_opt li:hover a {color:var(--txt)}
.more_opt li i {margin-right:6px;float:none;line-height:1}

/* 게시판 쓰기 */
#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:var(--white);
-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 var(--white) 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 var(--white);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:var(--white);box-sizing:border-box;width:100%}

#bo_v_table {position:absolute;top:0;right:16px;margin:0;padding:0 5px;height:25px;background:var(--accent);color:var(--white);font-weight:bold;line-height:2.2em}

/* 헤더: 버튼 + 제목 */
#bo_v_header { position: relative; margin-bottom: 0; }

/* 하단 버튼 바 — 댓글 아래, 우측 정렬, 드롭업 */
#bo_v_bottom {
    display: flex;
    justify-content: flex-end;
    margin-top: 6px;
    padding-top: 0;
    border-top: none;
}
#bo_v_bottom .btn_bo_user { position: relative; }
/* 드롭업: 위로 열림 */
#bo_v_bottom .more_opt {
    top: auto;
    bottom: 42px;
}
#bo_v_bottom .more_opt::before {
    top: auto;
    bottom: -6px;
    transform: rotate(225deg);
}
/* 드롭메뉴 아이템: 텍스트 좌측, 아이콘 우측 flex 배치 */
#bo_v_bottom .more_opt li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    width: 100%;
}
#bo_v_bottom .more_opt li i {
    float: none;
    margin: 0;
    flex-shrink: 0;
    color: #999;
    font-size: 13px;
}

#bo_v_title { margin: 0 0 5px; text-align: center; }
#bo_v_title .bo_v_cate {display:inline-block;line-height:20px;background:var(--brand-light);color:var(--brand);padding:0 10px;border-radius:3px;}
#bo_v_title .bo_v_tit {display:block;font-size:1.8em;margin:5px 0 0;word-break:break-all}

/* 작성자/댓글/조회/시각 — 구분선 아래 우측 정렬 */
#bo_v_info {
    border-top: 0px solid #e4e4e4;
    margin: 0px;
    color: var(--txt-s);
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
#bo_v_info:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_info .profile_info {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 0px 5px 0px 0px;
    margin: 0;
    float: none;
}

/* 프로필 아이콘: 2줄 텍스트 높이에 맞춤 */
#bo_v_info .profile_info .pf_img {float:none;margin-right:0;flex-shrink:0}
#bo_v_info .profile_info .pf_img img {border-radius:50%;width:44px;height:44px;display:block}

/* 텍스트 블록: 작성자 위, 날짜+시각 아래 — 세로 2줄 */
#bo_v_info .profile_info .profile_info_ct {
    float: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    font-size: 13px;
    line-height: 1.5;
}
#bo_v_info .v_name {
    display: block;
    font-weight: bold;
    color: var(--txt);
    margin: 0;
}
#bo_v_info .if_date {
    display: block;
    margin: 0;
    color: #888;
    font-size: 12px;
    white-space: nowrap;
}
#bo_v_info strong {display:block;margin:0;font-weight:normal}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {font-weight:bold}
#bo_v_info .profile_img {display:none}
#bo_v_info .sv_member {color:var(--txt)}

#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:var(--txt)}
#bo_v_file a:focus, #bo_v_file li:hover a, #bo_v_file a:active {text-decoration:underline;color:var(--brand)}
#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:var(--brand)}
#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:var(--txt)}
#bo_v_link a:focus, #bo_v_link li:hover a, #bo_v_link a:active {text-decoration:underline;color:var(--brand)}
#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:var(--brand)}
#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:var(--white)}

#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:0px 0;float:right}
.bo_v_com > li {position:relative;float:left;margin-left:5px}

.bo_v_nb {position:relative;margin:0px 0;clear:both;text-align:left}
.bo_v_nb:after {display:block;visibility:hidden;clear:both;content:""}
.bo_v_nb li {display:flex;align-items:center;border-top:1px solid #f1f1f1;padding:13px;overflow:hidden}
.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;padding-right:5px;}
.bo_v_nb li .nb_tit {display:inline-block;flex-shrink:0;padding-right:12px;color:#b3b3b3;white-space:nowrap}
.bo_v_nb li a {flex:1;overflow:hidden;font-size:13px;white-space:nowrap;text-overflow:ellipsis;min-width:0;color:#444}
.bo_v_nb li .nb_date {flex-shrink:0;padding-left:12px;color:#b3b3b3;white-space:nowrap;font-size:12.5px}

#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:0px 0 30px;width:100%;font-size:15px;line-height:1.7em;min-height:200px;word-break:break-all;overflow:hidden}
#bo_v_con a {color:var(--txt);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:var(--white);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:var(--white);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}

/* 게시판 댓글 */
.cmt_btn {width:100%;text-align:left;border:0;border-bottom:1px solid #f0f0f0;background:var(--white);font-weight:bold;margin:10px 0 0;padding:0 0 15px}
.cmt_btn span.total {position:relative;display:inline-block;margin-right:5px;font-size:1em;color:var(--brand)}
.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.2em;color:var(--txt)}
.cmt_btn span.total:after {position:absolute;bottom:-17px;left:0;display:inline-block;background:var(--brand);content:"";width:100%;height:2px}
#bo_vc { /* 댓글 없으면 JS로 숨김 처리 */}
#bo_vc h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc article {margin:20px 0;position:relative;border-bottom:1px solid #f0f0f0}
#bo_vc article:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc article .profile_img img {border-radius:50%}
#bo_vc article .pf_img {float:left;margin-right:10px}
#bo_vc article .pf_img img {border-radius:50%;width:50px;height:50px}
#bo_vc article .cm_wrap {float:left;max-width:870px;width:90%}
#bo_vc header {position:relative;width:100%}
#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}
.bo_vc_hdinfo {color:#777}
#bo_vc h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc .cmt_contents {line-height:1.8em;padding:0 0 20px}
#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_act {display:none;position:absolute;right:0;top:40px;width:58px;text-align:right;border:1px solid #b8bfc4;margin:0;list-style:none;background:var(--white);zoom:1;z-index:9999}
.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 var(--white) 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:10px 15px}
.bo_vc_act li a:hover {color:var(--brand)}

.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:var(--white);color:var(--txt);vertical-align:middle;border-radius:3px;padding:5px;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)}
#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:10px}
.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:45px;padding:0 20px;border-radius:3px;font-weight:bold;font-size:1.083em}
.bo_vc_w .btn_confirm .secret_cm label {font-size:1em !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:var(--white)}
#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 .file_wr {position:relative;border:1px solid #ccc;background:var(--white);color:var(--txt);vertical-align:middle;border-radius:3px;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_submit {padding:0 20px;font-size:1.167em}
#bo_w .btn_cancel {border-radius:3px;font-size:1.167em}

/* 뷰 화면 유튜브 영상 강제 반응형 */
#bo_v_con div[style*="padding-bottom"] {
  position: relative !important;
  width: 100% !important;
  padding-bottom: 56.25% !important;
  height: 0 !important;
  overflow: hidden;
}

#bo_v_con div[style*="padding-bottom"] iframe {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* ===== 댓글 작성 영역 정리 ===== */
.bo_vc_w {
    margin-top: 20px;
    border-top: 1px solid #eef2f6;
    padding-top: 20px;
}

.bo_vc_w_info {
    margin-bottom: 15px;
}

/* 비회원 이름/비밀번호 필드 깔끔하게 */
.guest-fields {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.guest-fields .frm_input {
    flex: 1;
    min-width: 120px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    padding: 0 12px;
    height: 42px;
    transition: all 0.2s ease;
}

.guest-fields .frm_input:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 2px rgba(44, 95, 138, 0.1);
    outline: none;
}

/* 댓글 등록 버튼 */
.bo_vc_w .btn_confirm {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    margin-top: 10px;
}

.bo_vc_w .btn_submit {
    padding: 0 24px;
    height: 42px;
    border-radius: 6px;
    font-weight: 500;
    background: var(--brand);
    color: var(--white);
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.bo_vc_w .btn_submit:hover {
    background: var(--brand-d);
    transform: translateY(-1px);
}

/* 비밀글 체크박스 */
.secret_cm {
    margin-right: auto;
}

.secret_cm label {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    color: #4b5563;
}