@charset "utf-8";

/* 寃뚯떆??紐⑸줉 */
#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 .td_chk {width:30px;text-align:center;border-top:1px solid #ecf0f1;border-bottom:1px solid #ecf0f1}
#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;text-align:left;padding:10px 0}
#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}
#bo_list tbody tr:hover {border-left:2px solid #253dbe}
#bo_list tbody .even td {background:#fbfbfb}

#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}

/* 寃뚯떆??紐⑸줉 怨듯넻 */
.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-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_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;margin-left:5px;background:#fff}
.btn_bo_user > li {position:relative}
.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 td {background:#fff6fa !important;border-bottom:1px solid #f8e6ee}
.bo_notice td a {font-weight:bold}
.bo_notice .notice_icon {display:inline-block;line-height:25px;border-radius:5px;font-weight:bold;color:#f9267f}

.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}
.more_opt li:last-child {border-bottom:0}
.more_opt li button, .more_opt li a {width:100%;border:0;background:#fff;color:#6b757c}
.more_opt li:hover a,
.more_opt li:hover button {color:#000}
.more_opt li i {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:block;color:#000;font-weight:bold}
.bo_current {color:#e8180c}
#bo_list .profile_img img {border-radius:50%}
#bo_list .cnt_cmt {background:#e9eff5;color:#3a8afd;font-size:11px;height:16px;line-height:16px;padding:0 5px;border-radius:3px;vertical-align:middle}

#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:50%;left:50%;background:#fff;text-align:left;width:330px;max-height:300px;margin-left:-125px;margin-top:-180px;overflow-y:auto;border-radius:5px;-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;border-radius:3px}
.bo_sch:after {display:block;visibility:hidden;clear:both;content:""}
.bo_sch h3 {padding:15px;border-bottom:1px solid #e8e8e8}
.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:0;color:#b5b8bb;border:0;padding:12px 15px;font-size:16px;background:#fff}
.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}

#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 {}
#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:2em;margin:5px 0 0;word-break:break-all}

#bo_v_info {margin:0;border-bottom:1px solid #f1f1f1;color:#666}
#bo_v_info:after {display:block;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:20px 0 10px;display:inline-block;float:left}
#bo_v_info .profile_info .pf_img {float:left;margin-right:10px}
#bo_v_info .profile_info .pf_img img {border-radius:50%;width:50px;height:50px}
#bo_v_info .profile_info .profile_info_ct {float:left;padding:5px 0;line-height:18px}

#bo_v_info strong {display:inline-block;margin:0 10px 0 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:#000}
#bo_v_info .if_date {margin:0;color:#888}

#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_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:20px 0;float:right}
.bo_v_com > li {position:relative;float:left;margin-left:5px}

.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:13px}
.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;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:1em;color:#3a8afd}
.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:#000}
.cmt_btn span.total:after {position:absolute;bottom:-17px;left:0;display:inline-block;background:#3a8afd;content:"";width:100%;height:2px}
#bo_vc {}
#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:#fff;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 #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:10px 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: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:#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 .file_wr {position:relative;border:1px solid #ccc;background:#fff;color:#000;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}
/* doc board write skin */
.doc-write .doc-write-card {
    border: 1px solid #cfd6e2;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}

.doc-write .doc-row {
    display: grid;
    grid-template-columns: 200px 1fr;
    border-top: 1px solid #e5e8ef;
}

.doc-write .doc-row:first-child {
    border-top: 0;
}

.doc-write .doc-row-5col {
    grid-template-columns: 160px 1fr 1fr 160px 1fr;
}

.doc-write .doc-th {
    padding: 12px 14px;
    background: #eef2fb;
    border-right: 1px solid #dde3f0;
    font-weight: 700;
    color: #2c3550;
    font-size: 14px;
}

.doc-write .doc-td {
    padding: 10px;
    border-right: 1px solid #eceff5;
    background: #fff;
}

.doc-write .doc-td:last-child,
.doc-write .doc-th:last-child {
    border-right: 0;
}

.doc-write .doc-td[data-col="2"] {
    grid-column: span 2;
}

.doc-write .doc-td[data-col="all"] {
    grid-column: 2 / -1;
}

.doc-write .doc-empty {
    background: #f8f9fc;
}

.doc-write .frm_input,
.doc-write .frm_file,
.doc-write select {
    width: 100%;
    height: 40px;
    border: 1px solid #cfd5e3;
    border-radius: 4px;
    background: #fff;
    padding: 0 10px;
    box-sizing: border-box;
}

.doc-write .doc-content-placeholder {
    min-height: 180px;
    border: 1px dashed #b4bfd4;
    border-radius: 6px;
    background: #f7f9ff;
    padding: 18px;
    color: #4a5777;
}

.doc-write .doc-content-placeholder strong {
    display: block;
    margin-bottom: 6px;
    color: #253a77;
}

.doc-write .doc-file-input-wrap {
    display: grid;
    gap: 8px;
}

.doc-write .doc-file-delete {
    margin-top: 8px;
    color: #5b6478;
    font-size: 13px;
}

.doc-write .doc-password-row {
    display: grid;
    grid-template-columns: 200px 1fr;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
}

.doc-write .doc-password-row label {
    font-weight: 700;
    color: #34405f;
}

.doc-write .doc-captcha-wrap {
    margin-top: 14px;
}

@media (max-width: 980px) {
    .doc-write .doc-row,
    .doc-write .doc-row-5col {
        grid-template-columns: 1fr;
    }

    .doc-write .doc-th,
    .doc-write .doc-td {
        border-right: 0;
        border-bottom: 1px solid #eceff5;
    }

    .doc-write .doc-td[data-col="2"],
    .doc-write .doc-td[data-col="all"] {
        grid-column: auto;
    }

    .doc-write .doc-empty {
        display: none;
    }

    .doc-write .doc-password-row {
        grid-template-columns: 1fr;
        gap: 6px;
    }
}

/* doc board write skin - bootstrap like */
.doc-write,
#bo_list,
#bo_v {
    width: 100%;
    max-width: 100%;
}

#bo_w #fwrite {
    width: 100% !important;
}

.doc-write .doc-write-card {
    border: 1px solid #d9e0ea;
    border-radius: 0;
    background: #fff;
    padding: 20px;
}

.doc-write .doc-form-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 14px;
}

.doc-write .doc-field {
    min-width: 0;
}

.doc-write .doc-divider {
    grid-column: span 12;
    border-top: 1px solid #e2e8f0;
    margin: 2px 0 4px;
}

.doc-write .doc-field.col-12 {
    grid-column: span 12;
}

.doc-write .doc-field.col-3 {
    grid-column: span 3;
}

.doc-write .doc-field.col-4 {
    grid-column: span 4;
}

.doc-write .doc-field.col-8 {
    grid-column: span 8;
}

.doc-write .doc-field.col-6 {
    grid-column: span 6;
}

.doc-write .doc-field.doc-reviewer-row {
    grid-column: span 4;
}

.doc-write .doc-field.doc-reviewer-row.first-reviewer {
    grid-column: 1 / span 4;
}

.doc-write .doc-field > label {
    display: block;
    margin: 0 0 6px;
    color: #334155;
    font-weight: 600;
    font-size: 13px;
}

.doc-write .doc-field > label.doc-content-title {
    text-align: center;
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 14px;
    padding: 30px 0 10px 0;
    color: #1f2937;
}

.doc-write .doc-import-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin: 0 0 10px;
}

.doc-write .doc-import-open,
.doc-write .doc-content-clear {
    height: 34px;
    padding: 0 14px;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    color: #1e3a66;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}

.doc-write .doc-import-open:hover,
.doc-write .doc-content-clear:hover {
    background: #f8fafc;
    border-color: #94a3b8;
}

.doc-write .doc-content-clear {
    color: #991b1b;
    border-color: #fecaca;
}

.doc-write .doc-content-clear:hover {
    background: #fff5f5;
    border-color: #fca5a5;
}

.doc-import-modal[hidden] {
    display: none;
}

.doc-import-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
}

.doc-import-dim {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, .45);
}

.doc-import-panel {
    position: relative;
    width: min(720px, calc(100vw - 32px));
    max-height: min(720px, calc(100vh - 48px));
    margin: 24px auto;
    border: 1px solid #d7dee8;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(15, 23, 42, .22);
    overflow: hidden;
}

.doc-import-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid #e2e8f0;
}

.doc-import-head strong {
    color: #0f172a;
    font-size: 17px;
    font-weight: 800;
}

.doc-import-close {
    height: 30px;
    padding: 0 10px;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.doc-import-guide {
    padding: 12px 18px;
    border-bottom: 1px solid #edf2f7;
    background: #f8fafc;
    color: #475569;
    font-size: 13px;
    line-height: 1.5;
}

.doc-import-list {
    max-height: 520px;
    overflow: auto;
    padding: 10px;
}

.doc-import-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 160px;
    gap: 12px;
    align-items: center;
    width: 100%;
    min-height: 48px;
    padding: 10px 12px;
    border: 0;
    border-bottom: 1px solid #edf2f7;
    background: #fff;
    text-align: left;
    cursor: pointer;
}

.doc-import-item:hover {
    background: #f1f6ff;
}

.doc-import-subject {
    display: block;
    color: #0f172a;
    font-size: 14px;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-import-subinfo {
    display: block;
    margin-top: 4px;
    color: #94a3b8;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.35;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-import-meta {
    color: #64748b;
    font-size: 12px;
    text-align: right;
}

.doc-import-state {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 120px;
    color: #64748b;
    font-size: 14px;
    font-weight: 700;
}
}

.doc-write .doc-regulation-wrap {
    margin: 50px 0 16px;
    border: 0;
    background: #fff;
}

.doc-write .doc-regulation-meta {
    margin: 10px 12px 4px;
    font-size: 13px;
    color: #334155;
}

.doc-write .doc-regulation-title {
    margin: 0 12px 10px;
    text-align: center;
    font-size: 20px;
    font-weight: 800;
    color: #0f172a;
}

.doc-write .doc-regulation-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.doc-write .doc-regulation-table th,
.doc-write .doc-regulation-table td {
    border: 1px solid #d7dee8;
    padding: 8px 10px;
    vertical-align: top;
    font-size: 15px;
    line-height: 1.65;
    color: #111827;
}

.doc-write .doc-regulation-table th {
    background: #eef3fb;
    text-align: center;
    font-weight: 800;
    color: #1e3a66;
}

.doc-write .doc-regulation-table td {
    background: #fff;
}

.doc-write .doc-regulation-table .doc-v-mid {
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
}

.doc-write .doc-regulation-table ul {
    margin: 6px 0 0 18px;
    padding: 0;
}

.doc-write .doc-regulation-table textarea.doc-regulation-textarea {
    width: 100%;
    min-height: 220px;
    border: 1px solid #ced5df;
    border-radius: 6px;
    background: #fff;
    padding: 10px 12px;
    resize: vertical;
    box-sizing: border-box;
    line-height: 1.5;
}

.doc-write .frm_input,
.doc-write .frm_file,
.doc-write select {
    width: 100%;
    height: 42px;
    border: 1px solid #ced5df;
    border-radius: 6px;
    background: #fff;
    padding: 0 12px;
    box-sizing: border-box;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.doc-write .frm_input:focus,
.doc-write .frm_file:focus,
.doc-write select:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.15);
    outline: 0;
}

.doc-write .doc-content-placeholder {
    min-height: 210px;
    border: 1px dashed #b8c3d6;
    border-radius: 8px;
    background: #f7f9fc;
    padding: 16px;
    color: #4b5563;
}

.doc-write .doc-content-placeholder strong {
    display: block;
    margin-bottom: 6px;
    color: #1f2937;
}

.doc-write .doc-content-table-wrap {
    border: 0;
    border-radius: 0;
    background: #fff;
    overflow: auto;
}

.doc-write .doc-content-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    min-width: 960px;
    border: 1px solid #d7dee8;
}

.doc-write .doc-content-table th,
.doc-write .doc-content-table td {
    border: 1px solid #d7dee8;
    padding: 10px;
    vertical-align: top;
}

.doc-write .doc-content-table th {
    vertical-align: middle;
}

.doc-write .doc-content-table th {
    background: #eef3fb;
    color: #1e3a66;
    font-weight: 700;
    font-size: 13px;
    text-align: left;
}

.doc-write .doc-content-table td {
    background: #fff;
}

.doc-write .doc-content-table .frm_input {
    width: 100%;
    height: 40px;
}

.doc-write .doc-content-table textarea {
    width: 100%;
    min-height: 110px;
    border: 1px solid #ced5df;
    border-radius: 6px;
    background: #fff;
    padding: 10px 12px;
    resize: vertical;
    box-sizing: border-box;
    line-height: 1.5;
}

.doc-write .doc-text-guide {
    margin: 2px 0 8px;
    font-size: 13px;
    line-height: 1.5;
    color: #334155;
    font-weight: 600;
}

.doc-write .doc-content-table textarea + .doc-text-guide {
    margin-top: 10px;
}

.doc-write .doc-file-input-wrap {
    display: grid;
    gap: 8px;
}

.doc-write .doc-file-delete {
    margin-top: 8px;
    color: #667085;
    font-size: 13px;
}

.doc-write .doc-upload-dropzone {
    width: 100%;
}

.doc-write .doc-upload-input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.doc-write .doc-upload-box {
    display: flex;
    min-height: 98px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    border: 1px dashed #a9bdd8;
    border-radius: 8px;
    background: #f8fbff;
    color: #1f3b63;
    cursor: pointer;
    text-align: center;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease;
}

.doc-write .doc-upload-box:hover,
.doc-write .doc-upload-dropzone.is-dragover .doc-upload-box {
    border-color: #4f8fd9;
    background: #f1f7ff;
    box-shadow: 0 0 0 3px rgba(79, 143, 217, 0.12);
}

.doc-write .doc-upload-icon {
    width: 28px;
    height: 28px;
    border: 2px solid #6b9cda;
    border-radius: 50%;
    position: relative;
}

.doc-write .doc-upload-icon:before,
.doc-write .doc-upload-icon:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    background: #6b9cda;
    transform: translate(-50%, -50%);
}

.doc-write .doc-upload-icon:before {
    width: 12px;
    height: 2px;
}

.doc-write .doc-upload-icon:after {
    width: 2px;
    height: 12px;
}

.doc-write .doc-upload-title {
    font-size: 15px;
    font-weight: 700;
    color: #243b57;
}

.doc-write .doc-upload-guide {
    font-size: 12px;
    line-height: 1.4;
    color: #8a94a6;
    font-weight: 400;
}

.doc-write .doc-upload-list {
    display: grid;
    gap: 6px;
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
}

.doc-write .doc-upload-list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 34px;
    padding: 7px 10px;
    border: 1px solid #dce5f2;
    border-radius: 6px;
    background: #fff;
    color: #334155;
    font-size: 12px;
}

.doc-write .doc-upload-file-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-write .doc-upload-file-size {
    flex: 0 0 auto;
    color: #8a94a6;
}

.doc-write .doc-guest-name {
    margin: 0 0 12px;
}

.doc-write .doc-guest-name label {
    display: block;
    margin-bottom: 6px;
    font-weight: 600;
    color: #334155;
}

.doc-write .doc-area-convert {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.doc-write .doc-area-input {
    display: flex;
    align-items: center;
    gap: 6px;
}

.doc-write .doc-area-input .frm_input {
    width: 180px;
}

.doc-write .doc-area-input span,
.doc-write .doc-area-eq {
    font-weight: 600;
    color: #334155;
}

.doc-write .doc-radio-inline {
    display: flex;
    align-items: center;
    gap: 20px;
    min-height: 40px;
}

.doc-write .doc-radio-inline label {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    cursor: pointer;
}

.doc-write .doc-radio-inline input[type="radio"] {
    margin-right: 6px;
}

.doc-write .doc-contact-grid {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.doc-write .doc-contact-row {
    display: grid;
    grid-template-columns: 140px repeat(4, minmax(0, 1fr));
    gap: 8px;
    align-items: center;
}

.doc-write .doc-contact-row strong {
    color: #1e3a66;
    font-size: 13px;
    font-weight: 700;
}

.doc-write .doc-capacity-row {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    min-height: 40px;
}

.doc-write .doc-capacity-row label {
    margin: 0;
    color: #374151;
    font-size: 14px;
    font-weight: 600;
}

.doc-write .doc-capacity-row input[type="checkbox"] {
    margin-right: 5px;
}

.doc-write .doc-capacity-kw {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.doc-write .doc-capacity-kw .frm_input {
    width: 160px;
}

.doc-write .doc-capacity-kw span {
    color: #334155;
    font-weight: 700;
}

.doc-write .doc-inline-textarea {
    margin-top: 8px;
}

.doc-write .doc-guest-message {
    width: 100%;
    min-height: 96px;
    resize: vertical;
    line-height: 1.5;
}

.doc-write .doc-image-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.doc-write .doc-mini-btn {
    border: 1px solid #cfd5df;
    border-radius: 6px;
    background: #fff;
    color: #1f2937;
    height: 34px;
    padding: 0 12px;
    font-size: 13px;
    font-weight: 600;
}

.doc-write .doc-mini-btn:hover {
    border-color: #86b7fe;
    color: #1d4ed8;
}

.doc-write .doc-image-help {
    font-size: 12px;
    color: #64748b;
}

.doc-write .doc-image-slots {
    display: grid;
    gap: 8px;
}

.doc-write .doc-image-slot {
    display: none;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 8px;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    background: #f8fafc;
}

.doc-write .doc-image-slot.is-active {
    display: flex;
}

.doc-write .doc-image-slot .doc-image-input {
    flex: 0 0 250px;
    width: 250px;
    max-width: 250px;
    height: 32px;
    font-size: 11px;
    line-height: 32px;
}

.doc-write .doc-image-slot .doc-image-name {
    flex: 1 1 auto;
    min-width: 0;
    color: #475569;
    font-size: 11px;
    line-height: 32px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-write .doc-image-actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
}

.doc-write .doc-slot-btn {
    border: 1px solid #cfd5df;
    border-radius: 5px;
    background: #fff;
    color: #334155;
    height: 30px;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 600;
}

.doc-write .doc-slot-btn:hover {
    border-color: #86b7fe;
    color: #1d4ed8;
}

@media (max-width: 1200px) {
    .doc-write .doc-field.col-4 {
        grid-column: span 6;
    }

    .doc-write .doc-field.col-8 {
        grid-column: span 12;
    }

    .doc-write .doc-field.col-6 {
        grid-column: span 12;
    }

    .doc-write .doc-image-slot {
        flex-direction: column;
        align-items: flex-start;
    }

    .doc-write .doc-image-slot .doc-image-input {
        flex: 1 1 auto;
        max-width: 100%;
        width: 100%;
    }

    .doc-write .doc-image-actions {
        margin-left: 0;
    }
}

@media (max-width: 768px) {
    .doc-write .doc-write-card {
        padding: 14px;
    }

    .doc-write .doc-field.col-4,
    .doc-write .doc-field.col-6,
    .doc-write .doc-field.col-8,
    .doc-write .doc-field.col-12 {
        grid-column: span 12;
    }
}

/* doc board view */
.doc-view {
    width: 100%;
}

.doc-view#bo_v {
    background: transparent;
    border: 0;
}

.doc-view .doc-view-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.doc-view .doc-view-head h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 800;
    color: #0f172a;
}

.doc-view .doc-view-btns {
    display: flex;
    gap: 6px;
}

.doc-view .doc-view-bottom-bar {
    margin-top: 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}

.doc-view .doc-view-downloads {
    display: flex;
    gap: 8px;
}

.doc-view .doc-view-downloads .btn,
.doc-view .doc-view-btns-bottom .btn {
    min-width: 74px;
    height: 36px;
    line-height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid #cbd5e1;
    background: #fff;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0;
    transition: all .15s ease;
}

.doc-view .doc-view-downloads .btn:hover,
.doc-view .doc-view-btns-bottom .btn:hover {
    border-color: #2563eb;
    color: #1d4ed8;
    box-shadow: 0 6px 14px rgba(37, 99, 235, 0.16);
}

.doc-view .doc-view-downloads .btn.btn-excel {
    border: 0;
    background: #1f8f46;
    color: #fff;
}

.doc-view .doc-view-downloads .btn.btn-excel:hover {
    border: 0;
    background: #18733a;
    color: #fff;
}

.doc-view .doc-view-downloads .btn.btn-pdf {
    border: 0;
    background: #9f1f27;
    color: #fff;
}

.doc-view .doc-view-downloads .btn.btn-pdf:hover {
    border: 0;
    background: #801820;
    color: #fff;
}

.doc-view .doc-view-btns-bottom {
    justify-content: flex-end;
    margin-top: 0;
    padding: 5px 2px 0;
    background: transparent;
}

.doc-view .doc-view-btns-bottom .btn {
    min-width: 74px;
    height: 36px;
    line-height: 34px;
    padding: 0 14px;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    background: #fff;
    color: #334155;
    font-weight: 700;
    text-align: center;
    transition: all .15s ease;
}

.doc-view .doc-view-btns-bottom .btn:hover {
    border-color: #2563eb;
    color: #1d4ed8;
    box-shadow: 0 6px 14px rgba(37, 99, 235, 0.16);
}

.doc-view .doc-view-btns-bottom a:last-child {
    border-color: #fecaca;
    color: #b91c1c;
}

.doc-view .doc-view-btns-bottom a:last-child:hover {
    border-color: #ef4444;
    color: #991b1b;
    background: #fef2f2;
    box-shadow: 0 6px 14px rgba(239, 68, 68, 0.16);
}

.doc-view .bo_v_nb {
    display: none;
}

.doc-view .doc-company-info {
    margin: 0 0 8px;
    color: #334155;
    font-size: 12px;
    line-height: 1.4;
    text-align: right;
}

.doc-view .doc-meta-table-wrap {
    overflow-x: auto;
    margin-bottom: 22px;
}

.doc-view .doc-meta-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    min-width: 760px;
}

.doc-view .doc-meta-table th,
.doc-view .doc-meta-table td {
    border: 1px solid #d7dee8;
    padding: 10px 12px;
    font-size: 14px;
    line-height: 1.5;
    vertical-align: middle;
}

.doc-view .doc-meta-table th {
    background: #eef3fb;
    color: #1e3a66;
    text-align: left;
    font-weight: 700;
}

.doc-view .doc-meta-table td {
    background: #fff;
    color: #111827;
}

.doc-view .doc-content-block .doc-content-title {
    display: block;
    text-align: center;
    font-size: 42px;
    font-weight: 800;
    margin: 16px 0 26px;
    color: #1f2937;
    line-height: 1.2;
}

.doc-view .doc-content-block {
    border: 1px solid #d7dee8;
    padding: 15px;
    background: #fff;
    margin-top: 24px;
}

.doc-view .doc-write-card {
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
}

.doc-view .doc-form-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 14px;
}

.doc-view .doc-field {
    min-width: 0;
}

.doc-view .doc-divider {
    grid-column: span 12;
    border-top: 1px solid #e2e8f0;
    margin: 2px 0 4px;
}

.doc-view .doc-field.col-12 {
    grid-column: span 12;
}

.doc-view .doc-field.col-4 {
    grid-column: span 4;
}

.doc-view .doc-field.col-8 {
    grid-column: span 8;
}

.doc-view .doc-field.col-6 {
    grid-column: span 6;
}

.doc-view .doc-field.doc-reviewer-row {
    grid-column: span 4;
}

.doc-view .doc-field.doc-reviewer-row.first-reviewer {
    grid-column: 1 / span 4;
}

.doc-view .doc-field label {
    display: block;
    margin: 0 0 6px;
    color: #334155;
    font-weight: 600;
    font-size: 13px;
}

.doc-view .doc-field label.doc-content-title {
    text-align: center;
    font-size: 42px;
    font-weight: 800;
    margin: 14px 0 24px;
    color: #1f2937;
    line-height: 1.2;
}

.doc-view .doc-view-value {
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 4px 2px;
    line-height: 1.5;
    white-space: normal;
    word-break: break-word;
}

.doc-view .doc-view-block {
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 4px 2px;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
}

.doc-view .doc-view-contact-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.doc-view .doc-view-contact-line {
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
}

.doc-view .doc-view-contact-line strong {
    color: #1e3a66;
    font-weight: 700;
}

.doc-view .doc-view-contact-line span {
    color: #111827;
}

.doc-view .doc-view-radio {
    margin-bottom: 8px;
}

.doc-view .doc-area-convert {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.doc-view .doc-area-input {
    display: flex;
    align-items: center;
    gap: 6px;
}

.doc-view .doc-area-input .doc-view-value {
    width: 180px;
}

.doc-view .doc-area-input span,
.doc-view .doc-area-eq {
    font-weight: 600;
    color: #334155;
}

.doc-view .doc-content-table-wrap {
    border: 0;
    border-radius: 0;
    background: #fff;
    overflow: auto;
}

.doc-view .doc-content-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    min-width: 960px;
    border: 1px solid #d7dee8;
}

.doc-view .doc-content-table th,
.doc-view .doc-content-table td {
    border: 1px solid #d7dee8;
    padding: 10px;
    vertical-align: top;
}

.doc-view .doc-content-table th {
    vertical-align: middle;
    background: #eef3fb;
    color: #1e3a66;
    font-weight: 700;
    font-size: 13px;
    text-align: left;
}

.doc-view .doc-content-table td {
    background: #fff;
}

.doc-view .doc-text-guide {
    margin: 2px 0 8px;
    font-size: 13px;
    line-height: 1.5;
    color: #334155;
    font-weight: 600;
}

.doc-view .doc-view-yn {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 8px;
}

.doc-view .doc-view-yn span {
    border: 0;
    border-radius: 0;
    padding: 0;
    font-weight: 700;
    color: #334155;
    background: transparent;
}

.doc-view .doc-view-yn span.is-on {
    border: 0;
    background: transparent;
    color: #1e40af;
    text-decoration: underline;
}

.doc-view .doc-regulation-wrap {
    margin: 50px 0 16px;
    border: 0;
    background: #fff;
}

.doc-view .doc-regulation-meta {
    margin: 10px 12px 4px;
    font-size: 13px;
    color: #334155;
}

.doc-view .doc-regulation-title {
    margin: 0 12px 10px;
    text-align: center;
    font-size: 20px;
    font-weight: 800;
    color: #0f172a;
}

.doc-view .doc-regulation-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.doc-view .doc-regulation-table th,
.doc-view .doc-regulation-table td {
    border: 1px solid #d7dee8;
    padding: 8px 10px;
    vertical-align: top;
    font-size: 15px;
    line-height: 1.65;
    color: #111827;
}

.doc-view .doc-regulation-table th {
    background: #eef3fb;
    text-align: center;
    font-weight: 800;
    color: #1e3a66;
}

.doc-view .doc-regulation-table td {
    background: #fff;
}

.doc-view .doc-regulation-table .doc-v-mid {
    vertical-align: middle;
    text-align: center;
    font-weight: 700;
}

.doc-view .doc-view-file-wrap {
    width: 100%;
    margin-top: 10px;
    border: 1px solid #d7dee8;
    background: #fff;
    border-radius: 6px;
    padding: 10px;
    box-sizing: border-box;
}

.doc-view .doc-view-file-wrap strong {
    display: block;
    margin-bottom: 8px;
    color: #1f2937;
}

.doc-view .doc-view-file-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.doc-view .doc-view-file-list li + li {
    margin-top: 6px;
}

.doc-view .doc-view-file-list a {
    color: #1d4ed8;
    text-decoration: underline;
}

.doc-view .doc-view-file-empty {
    color: #64748b;
}

.doc-view .doc-view-image-list {
    margin-top: 10px;
}

.doc-view .doc-view-image-item + .doc-view-image-item {
    margin-top: 20px;
}

.doc-view .doc-view-image-item img {
    display: block;
    width: 100%;
    height: auto;
}

.doc-view .doc-guest-gallery {
    margin-top: 24px;
}

.doc-view .doc-guest-gallery-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}

.doc-view .doc-guest-gallery-head strong {
    color: #1f2937;
    font-size: 14px;
    font-weight: 800;
}

.doc-view .doc-guest-gallery-head span {
    color: #64748b;
    font-size: 12px;
}

.doc-view .doc-guest-gallery-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
}

.doc-view .doc-guest-gallery-item {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    padding: 0;
    border: 1px solid #d7dee8;
    border-radius: 6px;
    background: #f8fafc;
    overflow: hidden;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.doc-view .doc-guest-gallery-item:hover,
.doc-view .doc-guest-gallery-item:focus {
    border-color: #4f8fd9;
    box-shadow: 0 8px 18px rgba(37, 99, 235, 0.16);
    outline: 0;
    transform: translateY(-1px);
}

.doc-view .doc-guest-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.doc-image-modal-open {
    overflow: hidden;
}

.doc-image-modal[hidden] {
    display: none;
}

.doc-image-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
}

.doc-image-modal-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgba(15, 23, 42, 0.78);
    cursor: pointer;
}

.doc-image-modal-panel {
    position: relative;
    z-index: 1;
    width: min(1100px, 100%);
    max-height: calc(100vh - 56px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.35);
}

.doc-image-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 46px;
    padding: 10px 14px;
    border-bottom: 1px solid #e2e8f0;
}

.doc-image-modal-head strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #1f2937;
    font-size: 13px;
}

.doc-image-modal-close {
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border: 1px solid #d7dee8;
    border-radius: 6px;
    background: #fff;
    color: #334155;
    font-size: 22px;
    line-height: 28px;
    cursor: pointer;
}

.doc-image-modal-close:hover,
.doc-image-modal-close:focus {
    border-color: #94a3b8;
    background: #f8fafc;
    outline: 0;
}

.doc-image-modal-body {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 240px;
    padding: 16px;
    background: #0f172a;
}

.doc-image-modal-body img {
    display: block;
    max-width: 100%;
    max-height: calc(100vh - 150px);
    object-fit: contain;
}

@media (max-width: 1200px) {
    .doc-view .doc-field.col-4 {
        grid-column: span 6;
    }

    .doc-view .doc-field.col-8 {
        grid-column: span 12;
    }

    .doc-view .doc-field.col-6 {
        grid-column: span 12;
    }

    .doc-view .doc-guest-gallery-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .doc-write .doc-contact-row {
        grid-template-columns: 1fr;
    }

    .doc-write .doc-capacity-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .doc-view .doc-view-contact-line {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    .doc-view .doc-write-card {
        padding: 14px;
    }

    .doc-view .doc-field.col-4,
    .doc-write .doc-field.col-3,
    .doc-view .doc-field.col-6,
    .doc-view .doc-field.col-8,
    .doc-view .doc-field.col-12 {
        grid-column: span 12;
    }

    .doc-view .doc-view-bottom-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .doc-view .doc-view-downloads,
    .doc-view .doc-view-btns-bottom {
        justify-content: flex-end;
    }

    .doc-view .doc-guest-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .doc-image-modal {
        padding: 14px;
    }

    .doc-image-modal-panel {
        max-height: calc(100vh - 28px);
    }

    .doc-image-modal-body img {
        max-height: calc(100vh - 124px);
    }
}

/* doc board view font normalize */
.doc-view {
    font-size: 12px;
}

.doc-view .doc-view-head h2,
.doc-view .doc-content-block .doc-content-title,
.doc-view .doc-regulation-title {
    line-height: 1.4;
}

.doc-view .doc-content-block .doc-content-title {
    font-size: 26px;
    line-height: 1.35;
    margin: 16px 0 32px;
}

.doc-view .doc-view-head h2,
.doc-view .doc-regulation-title {
    font-size: 16px;
}

.doc-view .doc-meta-table th,
.doc-view .doc-meta-table td,
.doc-view .doc-content-table th,
.doc-view .doc-content-table td,
.doc-view .doc-regulation-meta,
.doc-view .doc-regulation-table th,
.doc-view .doc-regulation-table td,
.doc-view .doc-text-guide,
.doc-view .doc-view-value,
.doc-view .doc-view-block,
.doc-view .doc-view-yn span,
.doc-view .doc-view-btns a {
    font-size: 12px;
}

/* doc board list */
.doc-list-wrap {
    width: 100%;
}

.doc-list-wrap .doc-list-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}

.doc-list-wrap .doc-list-total {
    font-size: 12px;
    color: #334155;
    font-weight: 600;
}

.doc-list-wrap .doc-list-actions {
    display: flex;
    gap: 6px;
}

.doc-list-wrap .doc-list-actions .btn,
.doc-list-wrap .doc-list-actions button {
    height: 34px;
    padding: 0 14px;
    border: 1px solid #c9d5e9;
    border-radius: 999px;
    background: linear-gradient(180deg, #ffffff 0%, #f1f6ff 100%);
    color: #1f3b67;
    font-size: 12px;
    font-weight: 700;
    line-height: 32px;
    box-shadow: 0 2px 6px rgba(30, 58, 102, 0.08);
    transition: all .15s ease;
}

.doc-list-wrap .doc-list-actions .btn:hover,
.doc-list-wrap .doc-list-actions button:hover {
    border-color: #4e77bf;
    color: #16325d;
    box-shadow: 0 4px 12px rgba(63, 111, 191, 0.2);
}

.doc-list-wrap .doc-list-actions a.btn {
    text-decoration: none;
}

.doc-list-wrap .doc-list-table-wrap {
    overflow-x: auto;
    border: 1px solid #d7dee8;
    background: #fff;
}

.doc-list-wrap .doc-list-table {
    width: 100%;
    min-width: 1100px;
    border-collapse: collapse;
    table-layout: fixed;
}

.doc-list-wrap .doc-list-table th,
.doc-list-wrap .doc-list-table td {
    border: 1px solid #d7dee8;
    padding: 6px 8px;
    font-size: 12px;
    color: #0f172a;
    vertical-align: middle;
    line-height: 1.35;
}

.doc-list-wrap .doc-list-table thead th {
    background: #3f6fbf;
    color: #fff;
    font-weight: 700;
    text-align: left;
    vertical-align: middle;
}

.doc-list-wrap .doc-list-table tbody tr.is-even td {
    background: #f5f8ff;
}

.doc-list-wrap .doc-list-num {
    text-align: center;
}

.doc-list-wrap .doc-list-subject .doc-list-link {
    color: #0f2f66;
    font-weight: 700;
    text-decoration: none;
}

.doc-list-wrap .doc-list-subject .doc-list-link:hover {
    text-decoration: underline;
}

.doc-list-wrap .doc-list-meta {
    margin-top: 1px;
    color: #1e293b;
}

.doc-list-wrap .pg_wrap {
    margin: 14px 0 2px;
    text-align: center;
}

.doc-list-wrap .pg_page,
.doc-list-wrap .pg_current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    margin: 0 2px;
    border: 1px solid #c9d5e9;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}

.doc-list-wrap .pg_page {
    background: #fff;
    color: #334155;
}

.doc-list-wrap .pg_page:hover {
    border-color: #4e77bf;
    color: #1e3a66;
}

.doc-list-wrap .pg_current {
    border-color: #3f6fbf;
    background: #3f6fbf;
    color: #fff;
}

.doc-list-wrap .pg_start .fa,
.doc-list-wrap .pg_prev .fa,
.doc-list-wrap .pg_next .fa,
.doc-list-wrap .pg_end .fa {
    color: #2563eb;
    font-size: 14px;
    line-height: 1;
}

.doc-list-wrap .pg_start,
.doc-list-wrap .pg_prev,
.doc-list-wrap .pg_next,
.doc-list-wrap .pg_end {
    text-indent: 0 !important;
    overflow: visible !important;
    background-image: none !important;
    padding: 0 !important;
}

.doc-list-wrap {
    max-width: 1200px !important;
    padding: 8px 14px 30px;
}

body:has(#bo_list.doc-list-wrap) {
    background: #f6f7fb;
}

.doc-list-wrap .doc-list-table-wrap {
    display: none;
}

.doc-draft-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.doc-draft-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    gap: 16px;
    min-height: 86px;
    padding: 17px 20px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.doc-draft-card:nth-child(even) {
    border-color: #bdd0ff;
    background: #eef3ff;
}

.doc-draft-card:hover {
    border-color: #9bb8ff;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.12);
}

.doc-draft-left {
    min-width: 0;
}

.doc-draft-badge {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 10px;
    margin-right: 10px;
    border-radius: 999px;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 500;
    vertical-align: middle;
}

.doc-draft-title {
    display: inline;
    color: #111827;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
    text-decoration: none;
    vertical-align: middle;
}

.doc-draft-title:hover {
    color: #2563eb;
    text-decoration: none;
}

.doc-draft-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    margin-top: 10px;
    color: #4b5563;
    font-size: 13px;
    line-height: 1.4;
}

.doc-draft-pair {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.doc-draft-meta .doc-draft-pair > span {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: 2px 7px;
    border-radius: 999px;
    background: #f1f3f5;
    color: #6b7280;
    font-size: 11px;
    font-weight: 400;
    line-height: 1;
}

.doc-draft-meta .doc-draft-pair > strong {
    color: #374151;
    font-weight: 400;
}

.doc-draft-empty {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 86px;
    padding: 18px 20px;
    border: 1px solid #e3e7ef;
    border-radius: 8px;
    background: #fff;
    color: #111827;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08);
}

@media (max-width: 720px) {
    .doc-draft-card {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 16px;
    }

    .doc-draft-title {
        display: block;
        margin-top: 8px;
        font-size: 16px;
    }
}

.doc-list-wrap .doc-list-top {
    margin-bottom: 12px;
}

.doc-list-wrap .doc-list-table-wrap {
    overflow: visible;
    border: 0;
    background: transparent;
}

.doc-list-wrap .doc-list-table {
    display: block;
    min-width: 0;
    width: 100%;
    border-collapse: separate;
}

.doc-list-wrap .doc-list-table colgroup,
.doc-list-wrap .doc-list-table thead {
    display: none;
}

.doc-list-wrap .doc-list-table tbody {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.doc-list-wrap .doc-list-table tbody tr,
.doc-list-wrap .doc-list-table tbody tr.is-even {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) auto;
    grid-template-areas:
        "check subject num"
        "check meta num"
        "check detail num";
    align-items: center;
    gap: 4px 12px;
    min-height: 92px;
    padding: 18px 20px;
    border: 1px solid #e1e5ef;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}

.doc-list-wrap .doc-list-table tbody tr.is-even {
    border-color: #b9cbff;
    background: #eef4ff;
}

.doc-list-wrap .doc-list-table tbody tr:hover {
    border-left: 1px solid #86a8ff;
    border-color: #86a8ff;
    box-shadow: 0 5px 16px rgba(37, 99, 235, 0.18);
    transform: translateY(-1px);
}

.doc-list-wrap .doc-list-table th,
.doc-list-wrap .doc-list-table td {
    display: block;
    padding: 0;
    border: 0;
    background: transparent !important;
    color: #111827;
    line-height: 1.45;
}

.doc-list-wrap .doc-list-table .td_chk {
    grid-area: check;
    align-self: center;
    width: 30px;
}

.doc-list-wrap .doc-list-table .doc-list-num {
    grid-area: num;
    justify-self: end;
    align-self: center;
    min-width: 90px;
    color: #4f46e5;
    font-size: 18px;
    font-weight: 800;
    text-align: right;
}

.doc-list-wrap .doc-list-table .doc-list-num:before {
    content: "#~";
}

.doc-list-wrap .doc-list-table .doc-list-subject {
    grid-area: subject;
    min-width: 0;
}

.doc-list-wrap .doc-list-subject .doc-list-link {
    display: inline;
    color: #030712;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.3;
}

.doc-list-wrap .doc-list-subject .doc-list-link:hover {
    color: #2563eb;
    text-decoration: none;
}

.doc-list-wrap .doc-list-meta {
    display: inline;
    margin: 0 12px 0 0;
    color: #4b5563;
    font-size: 13px;
    font-weight: 600;
}

.doc-list-wrap .doc-list-meta:before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    margin-right: 6px;
    border-radius: 50%;
    background: #e5e7eb;
    vertical-align: -6px;
}

.doc-list-wrap .doc-list-table .doc-list-subject ~ td {
    grid-column: 2;
    color: #374151;
    font-size: 13px;
    font-weight: 600;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td {
    grid-area: meta;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td:before {
    content: "\f017";
    font-family: FontAwesome;
    color: #6b7280;
    font-weight: normal;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td + td,
.doc-list-wrap .doc-list-table .doc-list-subject + td + td + td,
.doc-list-wrap .doc-list-table .doc-list-subject + td + td + td + td {
    grid-area: detail;
    display: inline-block;
    margin-right: 12px;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td + td:empty {
    display: none;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td + td + td {
    width: fit-content;
    padding: 2px 9px;
    border-radius: 999px;
    background: #dcfce7 !important;
    color: #047857;
    font-size: 12px;
    font-weight: 800;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td + td + td + td {
    color: #1f2937;
}

.doc-list-wrap .doc-list-table .doc-list-subject + td + td + td + td + td {
    grid-area: meta;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: 84px;
    color: #6b7280;
}

.doc-list-wrap .empty_table {
    grid-column: 1 / -1;
    padding: 36px 20px !important;
    text-align: center;
    border: 1px solid #e5e7eb !important;
    border-radius: 8px;
    background: #fff !important;
}

@media (max-width: 720px) {
    .doc-list-wrap .doc-list-table tbody tr,
    .doc-list-wrap .doc-list-table tbody tr.is-even {
        grid-template-columns: 26px minmax(0, 1fr);
        grid-template-areas:
            "check subject"
            "check num"
            "check meta"
            "check detail";
        padding: 16px;
    }

    .doc-list-wrap .doc-list-table .doc-list-num {
        justify-self: start;
        min-width: 0;
        font-size: 14px;
    }

    .doc-list-wrap .doc-list-subject .doc-list-link {
        font-size: 16px;
    }

    .doc-list-wrap .doc-list-table .doc-list-subject + td + td + td + td + td {
        margin-left: 0;
    }
}

/* doc write bottom buttons */
.doc-write .btn_confirm {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.doc-write .btn_confirm .btn_cancel,
.doc-write .btn_confirm .btn_submit {
    height: 36px;
    min-width: 74px;
    padding: 0 14px;
    border: 1px solid #c9d5e9;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    line-height: 34px;
    text-align: center;
    box-shadow: 0 2px 6px rgba(30, 58, 102, 0.08);
    transition: all .15s ease;
}

.doc-write .btn_confirm .btn_cancel {
    background: #fff !important;
    color: #334155 !important;
}

.doc-write .btn_confirm .btn_cancel:hover {
    border-color: #4e77bf;
    color: #1e3a66;
}

.doc-write .btn_confirm .btn_submit {
    border-color: #3f6fbf !important;
    background: #3f6fbf !important;
    color: #fff !important;
}

.doc-write .btn_confirm .btn_submit:hover {
    border-color: #2f5aa8;
    background: #2f5aa8;
}

.doc-write .btn_confirm .btn_cancel,
.doc-write .btn_confirm .btn_submit,
.doc-write .btn_confirm .btn_cancel i,
.doc-write .btn_confirm .btn_submit i {
    background-image: none !important;
}

@media (max-width: 768px) {
    .doc-list-wrap .doc-list-top {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* doc list search modal */
.doc-search-modal[hidden] {
    display: none;
}

.doc-search-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
}

.doc-search-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
}

.doc-search-dialog {
    position: relative;
    width: min(1080px, calc(100% - 24px));
    max-height: calc(100vh - 40px);
    margin: 20px auto;
    background: #fff;
    border: 1px solid #d7dee8;
    border-radius: 10px;
    overflow: auto;
    box-shadow: 0 20px 45px rgba(15, 23, 42, 0.22);
}

.doc-search-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border-bottom: 1px solid #e3e9f2;
    background: #f5f8ff;
}

.doc-search-head strong {
    font-size: 14px;
    color: #1e3a66;
}

.doc-search-close {
    border: 1px solid #c9d5e9;
    border-radius: 999px;
    background: #fff;
    color: #334155;
    font-size: 12px;
    font-weight: 700;
    padding: 0 12px;
    height: 30px;
}

.doc-search-form {
    padding: 14px;
}

.doc-search-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 12px;
}

.doc-search-grid label {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #1f3b67;
}

.doc-search-grid input,
.doc-search-grid select {
    margin-top: 6px;
    width: 100%;
    height: 36px;
    border: 1px solid #c9d5e9;
    border-radius: 7px;
    background: #fff;
    padding: 0 10px;
    font-size: 12px;
    box-sizing: border-box;
}

.doc-search-foot {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #e3e9f2;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.doc-search-foot .btn {
    height: 34px;
    line-height: 32px;
    border-radius: 999px;
    border: 1px solid #c9d5e9;
    padding: 0 14px;
    font-size: 12px;
    font-weight: 700;
    background: #fff;
    color: #334155;
}

.doc-search-foot button.btn {
    border-color: #3f6fbf;
    background: #3f6fbf;
    color: #fff;
}

body.doc-modal-open {
    overflow: hidden;
}

@media (max-width: 900px) {
    .doc-search-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .doc-search-grid {
        grid-template-columns: 1fr;
    }
}

/* final override: write action buttons unify */
#bo_w.doc-write .btn_confirm .btn_cancel.btn,
#bo_w.doc-write .btn_confirm .btn_submit.btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 74px !important;
    height: 36px !important;
    padding: 0 14px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 34px !important;
    box-shadow: 0 2px 6px rgba(30, 58, 102, 0.08) !important;
    background-image: none !important;
}

#bo_w.doc-write .btn_confirm .btn_cancel.btn {
    border: 1px solid #c9d5e9 !important;
    background: #fff !important;
    color: #334155 !important;
}

#bo_w.doc-write .btn_confirm .btn_submit.btn {
    border: 1px solid #3f6fbf !important;
    background: #3f6fbf !important;
    color: #fff !important;
}

/* Hide CKEditor powered-by badge in the doc write screen. */
#bo_w.doc-write .ck-powered-by,
#bo_w.doc-write .ck.ck-powered-by,
#bo_w.doc-write .ck-powered-by-balloon,
#bo_w.doc-write [class*="ck-powered-by"],
#bo_w.doc-write .ck a[href*="ckeditor.com"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.doc-guest-complete-message {
    margin-top: 10px;
    padding: 22px 16px;
    border: 1px solid #d7e0ee;
    border-radius: 8px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}

.doc-guest-receipt-date {
    margin-top: 24px;
    color: #334155;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

@media (max-width: 640px) {
    .doc-guest-receipt-date {
        font-size: 13px;
    }

    .doc-guest-complete-message {
        padding: 18px 12px;
        font-size: 15px;
    }
}

