@charset "utf-8";

/* 컨테이너 수정 */
#container {
  border: 0.2rem solid var(--mono-02);
  border-radius: 0.5rem;
}
#container_title {
  border-bottom: 0.2rem solid var(--mono-02);
  padding: 1.6rem 3rem;
}
#container_title span,
#container_title a {
  margin-bottom: 0;
  padding: 0 0.5rem;
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--main-02);
}
#container_title + p {
  border-bottom: 0.2rem solid var(--mono-02);
  padding: 1rem 3.5rem;
}

/* 게시판 목록 */
#bo_list {
  position: relative;
  padding: 0 1rem;
}
#bo_list:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: "";
}
#bo_list .th_subject {
  padding: 2rem 0.5rem;
}
#bo_list .td_board {
  width: 120px;
  text-align: center;
}
#bo_list .td_chk {
  width: 40px;
  text-align: center;
  border-top: 1px solid var(--mono-02);
  border-bottom: 1px solid var(--mono-02);
}
#bo_list .td_date {
  width: 60px;
  text-align: center;
}
#bo_list .td_datetime {
  width: 100px;
  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_good {
  color: var(--point-text-01);
}
#bo_list .td_wrid {
  text-align: center;
}
#bo_list .td_notice {
  font-weight: 600;
  text-align: center;
}
#bo_list .td_num2 {
  width: 70px;
  text-align: center;
  word-break: keep-all;
}
#bo_list .td_cate {
  width: 100px;
  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 {
}

#bo_cate {
  padding: 1rem 2rem;
  border-bottom: 0.2rem solid var(--mono-02);
}
#bo_cate h2 {
  position: absolute;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
}
#bo_cate ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
#bo_cate ul:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: "";
}
#bo_cate li {
  display: inline-block;
  padding: 2px;
  box-sizing: border-box;
}
#bo_cate a {
  display: block;
  padding: 0.8rem 1.5rem;
  font-size: 1.4rem;
  color: var(--mono-04);
}
#bo_cate a:focus,
#bo_cate a:hover,
#bo_cate a:active {
  text-decoration: none;
  color: var(--point-03);
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate #bo_cate_on {
  z-index: 2;
  color: var(--point-03);
  font-weight: 600;
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate li:nth-child(2) #bo_cate_on {
  z-index: 2;
  color: var(--point-03);
  font-weight: 600;
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate li:nth-child(3) #bo_cate_on {
  z-index: 2;
  color: var(--point-03);
  font-weight: 600;
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate li:nth-child(4) #bo_cate_on {
  z-index: 2;
  color: var(--point-03);
  font-weight: 600;
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate li:nth-child(5) #bo_cate_on {
  z-index: 2;
  color: var(--point-03);
  font-weight: 600;
  border-bottom: 0.2rem solid var(--point-03);
}
#bo_cate li:nth-child(2) a:hover,
#bo_cate li:nth-child(2) a:focus,
#bo_cate li:nth-child(2) a:active {
  text-decoration: none;
  color: var(--mono-05) !important;
  background: var(--cate-01);
  border-bottom: 0.2rem solid var(--cate-01);
}
#bo_cate li:nth-child(3) a:hover,
#bo_cate li:nth-child(3) a:focus,
#bo_cate li:nth-child(3) a:active {
  text-decoration: none;
  color: var(--mono-05) !important;
  background: var(--cate-02);
  border-bottom: 0.2rem solid var(--cate-02);
}
#bo_cate li:nth-child(4) a:hover,
#bo_cate li:nth-child(4) a:focus,
#bo_cate li:nth-child(4) a:active {
  text-decoration: none;
  color: var(--mono-05) !important;
  background: var(--cate-03);
  border-bottom: 0.2rem solid var(--cate-03);
}
#bo_cate li:nth-child(5) a:hover,
#bo_cate li:nth-child(5) a:focus,
#bo_cate li:nth-child(5) a:active {
  text-decoration: none;
  color: var(--mono-05) !important;
  background: var(--cate-04);
  border-bottom: 0.2rem solid var(--cate-04);
}
.td_subject img {
  margin-left: 5px;
}
.td_subject .bo_tit a.current {
  color: var(--point-02);
  font-weight: 600;
}

/* 게시판 목록 공통 */
.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;
  top: -7px !important;
}
.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 {
  display: flex;
  align-items: center;
  justify-content: end;
  margin: 1.3rem 1.5rem;
}
.bo_fx {
  margin: 3rem 1.5rem;
  float: right;
  zoom: 1;
}
.bo_fx:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: "";
}
.bo_fx ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.btn_bo_user {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.btn_bo_user li {
  text-align: center;
  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: var(--mono-02) !important;
  border-bottom: 1px solid var(--mono-02);
}
.bo_notice td a {
  font-weight: bold;
}
.bo_notice .notice_icon {
  display: inline-block;
  line-height: 25px;
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--mono-05);
}

.bo_best td {
  background: var(--mono-01) !important;
  border-bottom: 1px solid var(--mono-02);
}

.more_opt {
  display: none;
  position: absolute;
  top: 30px;
  right: 0;
  min-width: 80px;
  font-size: 1.1rem;
  background: var(--mono-00);
  border: 1px solid var(--mono-02);
  border-radius: 0.5rem;
  z-index: 999;
  -webkit-box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
}
.more_opt li {
  border-bottom: 1px solid var(--mono-02);
  padding: 10px;
  float: inherit;
  white-space: nowrap;
  margin: 0;
  color: #6b757c;
  text-align: left;
}
.more_opt li.more_opt--top {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
.more_opt li.more_opt--bottom {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.more_opt li:last-child {
  border-bottom: 0;
}
.more_opt li button,
.more_opt li a {
  width: 100%;
  border: 0;
  background: #fff;
  color: var(--mono-05);
}
.more_opt li:hover a,
.more_opt li:hover button {
  color: #000;
}
.more_opt li button,
.more_opt li a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
}

.td_num strong {
  color: #000;
}
.bo_cate_link {
  display: inline-block;
  color: var(--mono-05);
  font-size: 1.2rem;
  word-break: keep-all;
}
.bo_cate_link.td-cate-01 {
  background: var(--cate-01);
  width: 50px;
}
.bo_cate_link.td-cate-02 {
  background: var(--cate-02);
  width: 50px;
}
.bo_cate_link.td-cate-03 {
  background: var(--cate-03);
  width: 50px;
}
.bo_cate_link.td-cate-04 {
  background: var(--cate-04);
  width: 50px;
}
.bo_cate_link:hover {
  text-decoration: none;
}
.bo_tit {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  color: var(--mono-05);
  font-weight: 400;
}
.bo_tit a {
  color: var(--mono-05);
  text-overflow: ellipsis;
  word-break: break-all;
  white-space: nowrap;
  overflow: hidden;
  max-width: 42rem;
  display: flex;
  align-items: center;
  gap: 0.1rem;
}
.bo_tit a .best-ico {
  color: #ffc369;
}
.bo_tit iconify-icon {
  color: var(--mono-03);
}
.bo_current {
  color: #e8180c;
}
#bo_list .profile_img img {
  border-radius: 50%;
}
#bo_list .cnt_cmt {
  color: var(--point-01);
  font-size: 1.1rem;
  font-weight: 600;
  padding: 0 5px;
}

#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;
  color: var(--mono-03);
  text-align: center;
  font-size: 12px;
  vertical-align: middle;
}
#bo_list .bo_tit .new_icon {
  display: inline-block;
  width: 1.2rem;
  line-height: 1.2rem;
  font-size: 1rem;
  font-weight: 600;
  color: var(--mono-00);
  background: var(--red);
  text-align: center;
  border-radius: 2px;
  margin-left: 2px;
  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_list .tbl_head01 {
  margin: 0;
}
#bo_list .pg_wrap {
  margin: 3rem 0;
}

/* 게시판 쓰기 */
#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;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
#wr_subject {
  flex: 1;
  min-width: 0;
}
#btn_autosave {
  flex-shrink: 0;
}
#autosave_pop {
  display: none;
  z-index: 10;
  position: absolute !important;
  top: 40px;
  right: 0;
  width: 350px;
  height: auto !important;
  height: 242px;
  max-height: 242px;
  background: #fff;
  -webkit-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
}
html.no-overflowscrolling #autosave_pop {
  height: auto;
  max-height: 10000px !important;
} /* overflow 미지원 기기 대응 */
#autosave_pop .autosave_title {
  padding: 1rem;
  background: var(--point-01);
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--mono-00);
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
#autosave_pop div {
  margin: 0 !important;
}
#autosave_pop button {
  margin: 0;
  padding: 0;
  border: 0;
}
#autosave_pop ul {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  list-style: none;
  overflow-y: auto;
  height: 200px;
  padding: 0.5rem 0;
}
#autosave_pop li {
  display: flex;
  justify-content: space-between;
  padding: 0.3rem 1rem;
  zoom: 1;
}
#autosave_pop a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
#autosave_pop span {
  font-size: 1.1rem;
  color: var(--mono-05);
}
#autosave_pop span.autosave_subject {
  font-size: 1.3rem;
  font-weight: 600;
}
.autosave_content {
  display: none;
}

/* 게시판 읽기 */
#bo_v {
  margin-bottom: 20px;
  padding: 0 1rem;
  background: #fff;
  box-sizing: border-box;
}
#bo_v header.bo_title_header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.5rem 0 1rem;
}
#bo_v header .if_date {
  display: flex;
  padding-right: 2.5rem;
}

#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 {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0 2.5rem;
}
#bo_v_title .bo_v_cate {
  display: inline-block;
  padding: 0 0.5rem;
  font-size: 1.3rem;
}
#bo_v_title .bo_v_tit {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--main-02);
  word-break: break-all;
}
#bo_v_title .bo-title-bar {
  border-right: 0.1rem solid var(--mono-02);
  height: 1.4rem;
}
#bo_v_title .bo_v_cate,
#bo_v header .if_date {
  white-space: nowrap;
}

#bo_v_info {
  padding: 1rem 2.5rem;
  border-bottom: 0.1rem solid var(--mono-02);
  color: #666;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#bo_v_info h2 {
  position: absolute;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
}

#bo_v_info .profile_info {
  font-size: 1.2rem;
}
#bo_v_info .profile_info_ct {
  display: flex;
  align-items: center;
}

#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_file .view_file_download {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 74rem;
}

.filebox .btn_file {
  display: inline-block;
  position: absolute;
  right: 8px;
  top: 10px;
  border: 1px solid var(--point-01);
  border-radius: 5px;
  width: 55px;
  height: 25px;
  color: var(--mono-00);
  font-size: 1.1rem;
  line-height: 22px;
  background: var(--point-01);
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
}
.filebox .fileName {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 45px;
  padding-left: 40px;
  line-height: 30px;
  border: 1px solid var(--mono-02);
  background-color: var(--mono-00);
  color: var(--mono-04);
  font-size: 1.2rem;
  vertical-align: middle;
  border-radius: 5px;
}
.filebox input[type="file"] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.file-btn-wrap {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

#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_top .bo_info_wrap {
  display: flex;
  align-items: center;
  gap: 1rem;
}
#bo_v_top .bo_info_ct {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.1rem;
}
#bo_v_top .bo_info_ct {
  color: var(--mono-04);
}
#bo_v_top .bo_info_ct_in {
  color: var(--mono-05);
}
#bo_v_top .bo_info_ct li {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}
.bo_v_com > li {
  position: relative;
  float: left;
  margin-left: 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: 2.5rem;
  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;
  vertical-align: initial;
}

#bo_v_act {
  position: relative;
  padding: 2.5rem 0;
  display: flex;
  justify-content: center;
  gap: 2.5rem;
}
#bo_v_act .bo_v_act_gng {
  position: relative;
}
#bo_v_act_good,
#bo_v_act_nogood {
  display: none;
  position: absolute;
  top: 70px;
  left: 0;
  z-index: 9999;
  padding: 10px 0;
  width: 165px;
  background: var(--point-01);
  color: #fff;
  text-align: center;
}

#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 {
  display: none;
  position: absolute;
  z-index: 1000;
  top: 100px;
  width: 270px;
  padding: 1.2rem 2rem;
  background: #fff;
  border: 1px solid var(--mono-02);
  border-radius: 0.5rem;
  -webkit-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1),
    4px 4px 5px 0px rgba(0, 0, 0, 0.1);
}
#bo_v_share .bo_v_share_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
#bo_v_share .bo_v_share_header {
  font-size: 1.8rem;
  font-weight: 600;
  color: var(--main-02);
}
#bo_v_share .bo_v_share_body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
#bo_v_share .bo_v_share_body a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
}
#bo_v_share .bo_v_share_body a img {
  width: 4rem;
  height: auto;
}

/* 게시판 댓글 */
.cmt_btn {
  border: 0;
  background: #fff;
  margin: 1.8rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 1.4rem;
}
.cmt_btn span.total {
  position: relative;
  display: inline-block;
}
.cmt_btn span.cnt {
  color: var(--point-01);
}

#bo_vc {
}
#bo_vc h2 {
  position: absolute;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
}
#bo_vc article {
  position: relative;
  border-bottom: 0.1rem solid var(--mono-02);
}
#bo_vc article.best-article {
  border-bottom: 0.1rem solid var(--mono-03);
}
#bo_vc article .profile_img img {
  border-radius: 50%;
}
#bo_vc article .cm_wrap {
  max-width: 880px;
  width: 100%;
  padding: 0 2rem;
}
#bo_vc article .cm_best {
  background: var(--mono-02);
}
#bo_vc header {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem 0;
  width: 100%;
}
#bo_vc header .icon_reply {
  position: absolute;
  top: 15px;
  left: -20px;
}
#bo_vc header .bo_vc_info_wrap {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 1.3rem;
}
#bo_vc header .bo_vc_info_wrap .reply {
  color: var(--point-01);
}
#bo_vc article .name-wrap {
  display: flex;
  gap: 0.6rem;
}
#bo_vc .member,
#bo_vc .guest,
#bo_vc .sv_member,
#bo_vc .sv_guest {
  font-weight: bold;
  font-size: 1.3rem;
}
.bo_vc_hdinfo {
  color: #777;
}
#bo_vc .bo_reply_good_wrap {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
#bo_vc .bo_reply_good_wrap .up {
  color: var(--up-02);
}
#bo_vc .bo_reply_good_wrap .down {
  color: var(--down-01);
}
#bo_vc .bo_reply_good_wrap .up,
#bo_vc .bo_reply_good_wrap .down {
  cursor: pointer;
}
#bo_vc h1 {
  position: absolute;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
}
#bo_vc .cmt_contents {
  display: inline-block;
  padding: 1rem 0;
}
#bo_vc .cmt_contents p {
  display: inline;
}
#bo_vc .cmt_contents .mention {
  color: var(--point-01);
  font-size: 1.1rem;
  border-radius: 10px;
  padding: 0 5px;
  white-space: nowrap;
}
#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 {
}

.bo_vc_act {
  display: none;
  position: absolute;
  right: 0;
  top: 40px;
  background: var(--mono-00);
  border: 1px solid var(--mono-02);
  border-radius: 0.5rem;
  z-index: 999;
  -webkit-box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 4px 15px 0px rgba(0, 0, 0, 0.1);
}
.bo_vc_act li {
  border-bottom: 1px solid var(--mono-02);
  padding: 10px;
  float: inherit;
  width: 80px;
  margin: 0;
  color: #6b757c;
  text-align: left;
}
.bo_vc_act li.bo_vc_act--top {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
.bo_vc_act li.bo_vc_act--bottom {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.bo_vc_act li:last-child {
  border-bottom: 0;
}
.bo_vc_act li button,
.bo_vc_act li a {
  width: 100%;
  border: 0;
  background: #fff;
  color: var(--mono-05);
}
.bo_vc_act li button:hover,
.bo_vc_act li a:hover {
  color: #000;
}
.bo_vc_act li button,
.bo_vc_act li a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
}

.bo_vc_w {
  position: relative;
  margin: 2rem;
  display: block;
}
.bo_vc_w:after {
  display: block;
  visibility: hidden;
  clear: both;
  content: "";
}
#fviewcomment h2,
#cloned_fviewcomment h2 {
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  line-height: initial;
  position: initial;
}
.bo_vc_w #char_cnt {
  display: block;
  margin: 0 0 5px;
}
.bo_vc_w textarea {
  border: 0.1rem solid var(--mono-02);
  background: var(--mono-01);
  vertical-align: middle;
  border-radius: 0.5rem;
  padding: 1rem 1.5rem;
  width: 100%;
  height: 10rem;
  font-size: 1.3rem;
  resize: none;
}
.bo_vc_w .chk_box input[type="checkbox"] + label span,
#fwrite .chk_box input[type="checkbox"] + label span {
  top: 2px !important;
}
.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;
  display: flex;
  justify-content: end;
  gap: 1rem;
}
.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,
.bo_vc_w .btn_close {
  width: 8rem;
}
.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 {
  margin: 2rem 5rem;
}
#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 .bo_v_option {
  display: flex;
}
#bo_w .write_div {
  margin: 1.5rem 0;
  position: relative;
}
#bo_w .btn_confirm:after {
  display: none;
}
#bo_w .btn_confirm {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#bo_w .btn_confirm .btn {
  min-width: 8rem;
}
#bo_w .btn_submit_wrap {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

#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 {
  color: var(--mono-05);
}
#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 {
  margin-bottom: 1.5rem;
  margin-top: 0;
}
#bo_w .bo_w_flie .lb_icon {
  position: absolute;
  top: 0px;
  left: 0px;
  border-radius: 3px 0 0 3px;
  height: 48px;
  line-height: 48px;
  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;
  color: #000;
  vertical-align: middle;
  margin: 0;
}
#bo_w .bo_w_flie .frm_input {
  margin: 10px 0 0;
}
#bo_w .bo_w_flie .file_del {
  position: absolute;
  top: 14px;
  right: 70px;
  font-size: 0.92em;
  color: #7d7d7d;
}
#bo_w .bo_w_flie .file_del label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 50rem;
}
#bo_w .bo_w_select select {
  border: 1px solid var(--mono-02);
  width: 100%;
  height: 40px;
  border-radius: 5px;
  font-size: 1.3rem;
  color: var(--mono-05);
}
#bo_w .btn_submit {
  padding: 0 20px;
  font-size: 1.167em;
}
#bo_w .btn_cancel {
  border-radius: 3px;
  font-size: 1.167em;
}

.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar,
.ck.ck-editor__main > .ck-editor__editable:not(.ck-focused) {
  border-color: var(--mono-02) !important;
}

.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.ck.ck-editor__main > .ck-editor__editable:not(.ck-focused) {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.copy-protect {
  display: flex;
  gap: 5px;
  margin-bottom: 1.5rem;
}
/* =========================================
   JOIN ME LIST - CLEAN FINAL
   현재 list.skin.php 전용
   ========================================= */

#container_title {
  display: none !important;
}

.jm-page-head,
#bo_list.jm-board-wrap {
  font-family: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif !important;
}

/* 상단 JOIN ME 헤더 */
.jm-page-head {
  position: relative !important;
  width: 100% !important;
  min-height: 112px !important;
  margin: 0 0 14px !important;
  padding: 8px 180px 16px 4px !important;
  border-bottom: 1px solid #e6edf5 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.jm-page-copy {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 9px !important;
}

.jm-page-title {
  margin: 0 !important;
  color: #0b214d !important;
  font-size: 46px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -0.045em !important;
}

.jm-page-subtitle {
  margin: 0 !important;
  color: #50617b !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

.jm-head-dust {
  position: absolute !important;
  top: 50% !important;
  right: 22px !important;
  width: 180px !important;
  height: auto !important;
  max-width: none !important;
  transform: translateY(-52%) scale(2.15) !important;
  transform-origin: right center !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

/* 사용하지 않는 예전 배너 제거 */
.jm-page-head::before,
.jm-page-head::after,
.jm-page-banner,
.jm-dust-character,
.jm-dust-wrap,
#bo_list .jm-hero,
#bo_list .jm-board-head {
  display: none !important;
  content: none !important;
}

/* 게시판 전체 박스 */
#bo_list.jm-board-wrap {
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 20px 24px 22px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15, 35, 71, 0.04) !important;
  box-sizing: border-box !important;
}

/* 상단 카테고리 + 버튼 */
#bo_list .jm-topbar {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}

#bo_list .jm-topbar-tabs {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

#bo_list #bo_cate {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#bo_list #bo_cate h2 {
  display: none !important;
}

#bo_list #bo_cate_ul,
#bo_list .jm-category-list {
  display: flex !important;
  align-items: center !important;
  gap: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  white-space: nowrap !important;
  scrollbar-width: none !important;
}

#bo_list #bo_cate_ul::-webkit-scrollbar {
  display: none !important;
}

#bo_list #bo_cate li {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* 상단 탭: 둥근 박스 없이 밑줄 */
#bo_list #bo_cate a {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 42px !important;
  padding: 0 0 11px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #55657e !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

#bo_list #bo_cate a:hover,
#bo_list #bo_cate #bo_cate_on,
#bo_list #bo_cate .bo_cate_on {
  color: #0b214d !important;
  background: transparent !important;
  border: 0 !important;
}

#bo_list #bo_cate #bo_cate_on::after,
#bo_list #bo_cate .bo_cate_on::after {
  content: "" !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: #0b214d !important;
}

/* 상단 버튼 */
#bo_list .jm-board-actions {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

#bo_list .jm-action-list {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#bo_list .jm-action-list li {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#bo_list .jm-write-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-width: 92px !important;
  height: 42px !important;
  padding: 0 17px !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: linear-gradient(180deg, #ff8524 0%, #ff6500 100%) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(255, 101, 0, 0.16) !important;
}

#bo_list .jm-admin-btn,
#bo_list .jm-more-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: #50617b !important;
}

#bo_list .jm-more-wrap {
  position: relative !important;
}

#bo_list .more_opt {
  top: 48px !important;
}

/* 테이블 */
#bo_list .jm-table-wrap {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#bo_list .jm-table {
  width: 100% !important;
  min-width: 820px !important;
  table-layout: fixed !important;
  border: 0 !important;
  border-collapse: collapse !important;
  background: #fff !important;
}

#bo_list .jm-table caption {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
}

#bo_list .jm-table thead th {
  height: 48px !important;
  padding: 0 12px !important;
  border: 0 !important;
  background: #f4f7fb !important;
  color: #61718a !important;
  text-align: center !important;
  vertical-align: middle !important;
  font-size: 12.5px !important;
  font-weight: 900 !important;
}

#bo_list .jm-table thead th:first-child {
  border-radius: 9px 0 0 9px !important;
}

#bo_list .jm-table thead th:last-child {
  border-radius: 0 9px 9px 0 !important;
}

#bo_list .jm-table thead .jm-th-title {
  text-align: left !important;
}

#bo_list .jm-table tbody td {
  height: 62px !important;
  padding: 9px 12px !important;
  border: 0 !important;
  border-bottom: 1px solid #e8edf4 !important;
  background: #fff !important;
  color: #1f304b !important;
  text-align: center !important;
  vertical-align: middle !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#bo_list .jm-table tbody tr:hover td {
  background: #fbfdff !important;
}

#bo_list .jm-table tbody tr:last-child td {
  border-bottom: 0 !important;
}

#bo_list .bo_notice td {
  background: #fffdf8 !important;
}

#bo_list .bo_best td {
  background: #fbfdff !important;
}

/* 카테고리: TD / WE / LE / TA / AP */
#bo_list .jm-category-cell {
  text-align: center !important;
}

#bo_list .jm-category-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 27px !important;
  padding: 0 !important;
  border-radius: 8px !important;
  font-size: 0 !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-sizing: border-box !important;
}

#bo_list .jm-category-pill::before {
  font-size: 11px !important;
  font-weight: 900 !important;
}

#bo_list .jm-badge-today::before {
  content: "TD" !important;
}

#bo_list .jm-badge-weekend::before {
  content: "WE" !important;
}

#bo_list .jm-badge-language::before {
  content: "LE" !important;
}

#bo_list .jm-badge-tagalong::before {
  content: "TA" !important;
}

#bo_list .jm-badge-default::before {
  content: "AP" !important;
}

#bo_list .jm-badge-today {
  border: 1px solid #ffbd95 !important;
  background: #fff5ed !important;
  color: #ff641c !important;
}

#bo_list .jm-badge-weekend {
  border: 1px solid #9fd2ff !important;
  background: #eef7ff !important;
  color: #1689f0 !important;
}

#bo_list .jm-badge-language {
  border: 1px solid #9fdfad !important;
  background: #effbf2 !important;
  color: #119f43 !important;
}

#bo_list .jm-badge-tagalong {
  border: 1px solid #c8bbff !important;
  background: #f5f1ff !important;
  color: #6b45d7 !important;
}

#bo_list .jm-badge-default {
  border: 1px solid #d5e2f1 !important;
  background: #f8fbff !important;
  color: #0b214d !important;
}

/* 제목 */
#bo_list .jm-title {
  min-width: 0 !important;
  padding-left: 14px !important;
  text-align: left !important;
}

#bo_list .jm-title-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  min-width: 0 !important;
  width: 100% !important;
}

#bo_list .jm-title-link {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  max-width: 100% !important;
  color: #0b214d !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

#bo_list .jm-title-link:hover {
  color: #ff6500 !important;
}

#bo_list .jm-subject-text {
  display: block !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#bo_list .jm-comment {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  flex: 0 0 auto !important;
  margin-left: 2px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #6b7c96 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

#bo_list .jm-new {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 5px !important;
  background: #ff3f77 !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 900 !important;
}

/* 위치 */
#bo_list .jm-location {
  text-align: left !important;
}

#bo_list .jm-location-text {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  color: #6b7c96 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#bo_list .jm-location-text iconify-icon {
  flex: 0 0 auto !important;
  color: #ff6500 !important;
}

/* 작성자 / 조회수 / 등록일 */
#bo_list .jm-author,
#bo_list .jm-hit,
#bo_list .jm-regdate {
  color: #273852 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

#bo_list .jm-empty {
  color: #a0acba !important;
}

/* 하단 */
#bo_list .jm-bottom {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 16px !important;
  margin-top: 18px !important;
}

#bo_list .jm-bottom-left {
  justify-self: start !important;
}

#bo_list .jm-page {
  justify-self: center !important;
  text-align: center !important;
}

#bo_list .jm-bottom-right {
  justify-self: end !important;
}

#bo_list .jm-per-page-select {
  min-width: 126px !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #33445f !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

#bo_list .jm-bottom-search {
  display: flex !important;
  align-items: center !important;
  width: 270px !important;
  height: 40px !important;
  overflow: hidden !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 10px !important;
  background: #fff !important;
}

#bo_list .jm-bottom-search input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 12px !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #33445f !important;
  font-size: 12px !important;
}

#bo_list .jm-bottom-search button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0b214d !important;
}

#bo_list .pg_wrap {
  margin: 0 !important;
}

#bo_list .jm-empty-table {
  height: 160px !important;
  color: #8290a4 !important;
}

/* 태블릿 */
@media (max-width: 900px) {
  .jm-page-head {
    min-height: 100px !important;
    padding-right: 135px !important;
  }

  .jm-page-title {
    font-size: 40px !important;
  }

  .jm-head-dust {
    width: 125px !important;
  }

  #bo_list.jm-board-wrap {
    padding: 17px 16px 20px !important;
  }

  #bo_list .jm-topbar {
    align-items: center !important;
  }

  #bo_list #bo_cate_ul,
  #bo_list .jm-category-list {
    gap: 22px !important;
  }

  #bo_list .jm-table {
    min-width: 760px !important;
  }
}

/* 모바일 */
@media (max-width: 640px) {
  .jm-page-head {
    min-height: 92px !important;
    padding: 8px 92px 14px 2px !important;
  }

  .jm-page-title {
    font-size: 34px !important;
  }

  .jm-page-subtitle {
    font-size: 12px !important;
  }

  .jm-head-dust {
    right: 0 !important;
    width: 88px !important;
  }

  #bo_list.jm-board-wrap {
    padding: 14px 12px 17px !important;
    border-radius: 16px !important;
  }

  #bo_list .jm-topbar {
    gap: 10px !important;
  }

  #bo_list .jm-write-btn {
    min-width: 78px !important;
    height: 39px !important;
    padding: 0 12px !important;
  }

  #bo_list .jm-admin-btn,
  #bo_list .jm-more-btn {
    width: 39px !important;
    height: 39px !important;
  }

  #bo_list .jm-bottom {
    grid-template-columns: 1fr !important;
  }

  #bo_list .jm-bottom-left,
  #bo_list .jm-page,
  #bo_list .jm-bottom-right {
    justify-self: stretch !important;
  }

  #bo_list .jm-bottom-search {
    width: 100% !important;
  }
}
#bo_list .jm-th-check,
#bo_list .jm-check {
    width: 30px !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
}

#bo_list .jm-th-category,
#bo_list .jm-category-cell {
    width: 64px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
}

#bo_list .jm-title,
#bo_list .jm-th-title {
    padding-left: 8px !important;
    text-align: left !important;
}
#bo_list .jm-th-check,
#bo_list .jm-check {
    width: 30px !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
}

#bo_list .jm-th-category,
#bo_list .jm-category-cell {
    width: 64px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
}

#bo_list .jm-title,
#bo_list .jm-th-title {
    padding-left: 8px !important;
    text-align: left !important;
}

#bo_list .jm-meettime {
    color: #61718a !important;
    text-align: left !important;
    white-space: nowrap !important;
}

#bo_list .jm-meettime-text {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#bo_list .jm-meettime-text iconify-icon {
    flex: 0 0 auto !important;
    color: #71819a !important;
}
/* =========================================
   JOIN ME COLUMN RATIO FINAL
   ========================================= */

#bo_list .jm-table {
    width: 100% !important;
    min-width: 840px !important;
    table-layout: fixed !important;
}

/* 행 높이와 위아래 간격 */
#bo_list .jm-table thead th {
    height: 44px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    vertical-align: middle !important;
}

#bo_list .jm-table tbody td {
    height: 54px !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    vertical-align: middle !important;
}

/* 체크박스 */
#bo_list .jm-th-check,
#bo_list .jm-check {
    width: 28px !important;
    padding-left: 1px !important;
    padding-right: 1px !important;
    text-align: center !important;
}

/* 카테고리 */
#bo_list .jm-th-category,
#bo_list .jm-category-cell {
    width: 60px !important;
    padding-left: 3px !important;
    padding-right: 3px !important;
    text-align: center !important;
}

/* 제목 */
#bo_list .jm-th-title,
#bo_list .jm-title {
    padding-left: 8px !important;
    padding-right: 8px !important;
    text-align: left !important;
}

#bo_list .jm-title-inner {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 5px !important;
}

#bo_list .jm-title-link {
    display: flex !important;
    align-items: center !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

#bo_list .jm-subject-text {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Location 제목과 내용 정렬 */
#bo_list .jm-th-location,
#bo_list .jm-location {
    padding-left: 18px !important;
    padding-right: 8px !important;
    text-align: left !important;
}

#bo_list .jm-location-text {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 5px !important;
    overflow: hidden !important;
}

#bo_list .jm-location-text iconify-icon {
    flex: 0 0 auto !important;
    color: #ff6500 !important;
}

#bo_list .jm-location-value {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    color: #697b96 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Date/Time 제목과 내용 정렬 */
#bo_list .jm-th-meettime,
#bo_list .jm-meettime {
    padding-left: 14px !important;
    padding-right: 6px !important;
    text-align: left !important;
}

#bo_list .jm-meettime-text {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 5px !important;
    overflow: hidden !important;
}

#bo_list .jm-meettime-text iconify-icon {
    flex: 0 0 auto !important;
    color: #71819a !important;
}

#bo_list .jm-meettime-value {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    color: #697b96 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* 작성자: 이모티콘과 아이디를 반드시 가로 배치 */
#bo_list .jm-th-author,
#bo_list .jm-author {
    padding-left: 4px !important;
    padding-right: 4px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

#bo_list .jm-author-wrap {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
}

#bo_list .jm-author-avatar {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dce6f1 !important;
    border-radius: 50% !important;
    background: #f5f8fc !important;
    vertical-align: middle !important;
}

#bo_list .jm-author-avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
}

#bo_list .jm-author-name {
    display: inline-block !important;
    margin: 0 !important;
    color: #273852 !important;
    font-size: 13px !important;
    line-height: 24px !important;
    font-weight: 800 !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

/* 조회수 */
#bo_list .jm-th-views,
#bo_list .jm-hit {
    padding-left: 2px !important;
    padding-right: 2px !important;
    text-align: center !important;
}

/* 등록일 */
#bo_list .jm-th-posted,
#bo_list .jm-regdate {
    padding-left: 2px !important;
    padding-right: 2px !important;
    text-align: center !important;
    white-space: nowrap !important;
}
/* ==================================================
   Nunchis JOIN ME 강제 정렬 수정
   실제 게시판/메인 공통 대응
================================================== */

/* 전체 테이블 기본 가운데 정렬 */
.jm-list table th,
.jm-list table td,
.jm-board table th,
.jm-board table td,
.lat table th,
.lat table td,
.bo_list table th,
.bo_list table td {
    text-align: center !important;
    vertical-align: middle !important;
}

/* 제목 관련 클래스는 무조건 왼쪽 정렬 */
.jm-title,
.jm-subject,
.jm-td-title,
.jm-title-col,
.td_subject,
.bo_tit {
    text-align: left !important;
}

/* 제목 안의 링크도 왼쪽 정렬 */
.jm-title a,
.jm-subject a,
.jm-td-title a,
.jm-title-col a,
.td_subject a,
.bo_tit a {
    display: block !important;
    text-align: left !important;
}

/* 만약 제목이 3번째 칸이면 여기서 왼쪽 정렬 */
.jm-list table th:nth-child(3),
.jm-list table td:nth-child(3),
.jm-board table th:nth-child(3),
.jm-board table td:nth-child(3),
.lat table th:nth-child(3),
.lat table td:nth-child(3),
.bo_list table th:nth-child(3),
.bo_list table td:nth-child(3) {
    text-align: left !important;
}

/* 제목 3번째 칸 안의 링크 */
.jm-list table td:nth-child(3) a,
.jm-board table td:nth-child(3) a,
.lat table td:nth-child(3) a,
.bo_list table td:nth-child(3) a {
    display: block !important;
    text-align: left !important;
}

/* 표 헤더 통일 */
.jm-list thead th,
.jm-board thead th,
.lat thead th,
.bo_list thead th {
    background: #f3f6fb !important;
    color: #52627a !important;
    font-weight: 700 !important;
    height: 44px !important;
}

/* 게시글 행 높이 */
.jm-list tbody td,
.jm-board tbody td,
.lat tbody td,
.bo_list tbody td {
    height: 52px !important;
}

/* 글쓰기 버튼 주황색 강제 */
.jm-write-btn,
.jm-btn-write,
.btn_write,
a.btn_write,
#bo_list_total .btn_bo_user a,
.bo_fx .btn_b01,
.bo_fx .btn_b02 {
    background: #ff6b1a !important;
    color: #fff !important;
    border: 0 !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
}
/* ==================================================
   NUNCHIS JOIN ME - WRITE FORM REDESIGN
   기본 글쓰기 틀 유지 + 선택한 시안처럼 정리
================================================== */

/* 전체 배경/여백 */
#bo_w,
#fwrite {
    max-width: 1080px;
    margin: 0 auto;
}

/* 전체 카드 */
#bo_w .bo_w_wrap,
#bo_w .tbl_frm01,
#fwrite fieldset,
#fwrite {
    background: #ffffff;
    border: 1px solid #d9e5f2;
    border-radius: 24px;
    padding: 28px 30px 30px;
    box-shadow: 0 10px 28px rgba(15, 43, 92, 0.05);
}

/* 상단 제목 직접 넣을 경우 */
.jm-write-head {
    margin-bottom: 22px;
}

.jm-write-head h2 {
    margin: 0 0 8px;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 800;
    color: #0f2b5c;
}

.jm-write-head p {
    margin: 0;
    font-size: 15px;
    color: #52627a;
}

/* 라벨 */
#bo_w .frm_info,
#bo_w label,
#fwrite label,
#bo_w .write_div label,
#bo_w .bo_w_tit label {
    font-weight: 800;
    color: #1e355d;
    font-size: 15px;
}

/* 입력폼 공통 */
#bo_w input[type="text"],
#bo_w input[type="password"],
#bo_w input[type="url"],
#bo_w input[type="email"],
#bo_w select,
#bo_w textarea,
#fwrite input[type="text"],
#fwrite input[type="password"],
#fwrite input[type="url"],
#fwrite input[type="email"],
#fwrite select,
#fwrite textarea {
    width: 100%;
    border: 1px solid #d8e2ef;
    border-radius: 12px;
    background: #fff;
    color: #23324d;
    font-size: 15px;
    padding: 0 14px;
    outline: none;
    box-sizing: border-box;
}

/* 일반 인풋 높이 */
#bo_w input[type="text"],
#bo_w input[type="password"],
#bo_w input[type="url"],
#bo_w input[type="email"],
#bo_w select,
#fwrite input[type="text"],
#fwrite input[type="password"],
#fwrite input[type="url"],
#fwrite input[type="email"],
#fwrite select {
    height: 48px;
}

/* 포커스 */
#bo_w input:focus,
#bo_w select:focus,
#bo_w textarea:focus,
#fwrite input:focus,
#fwrite select:focus,
#fwrite textarea:focus {
    border-color: #98b7df;
    box-shadow: 0 0 0 3px rgba(73, 127, 198, 0.08);
}

/* placeholder */
#bo_w input::placeholder,
#bo_w textarea::placeholder,
#fwrite input::placeholder,
#fwrite textarea::placeholder {
    color: #8a97aa;
}

/* 제목 input + 임시저장 버튼 줄 */
.jm-title-row {
    display: flex;
    gap: 14px;
    align-items: end;
}

.jm-title-row .jm-title-col {
    flex: 1;
}

.jm-title-row .jm-draft-col {
    flex: 0 0 auto;
}

/* 임시저장 버튼 */
.jm-draft-btn,
#btn_autosave,
.autosave_btn {
    height: 46px;
    padding: 0 20px;
    border: 0;
    border-radius: 12px;
    background: #0f2b5c;
    color: #fff !important;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

/* 행 간격 */
#bo_w .write_div,
#bo_w .bo_w_tit,
#bo_w .bo_w_link,
#bo_w .bo_w_flie,
#bo_w .bo_w_option,
#fwrite .write_div,
#fwrite .bo_w_tit,
#fwrite .bo_w_link,
#fwrite .bo_w_flie,
#fwrite .bo_w_option {
    margin-bottom: 18px;
}

/* 분류 select */
#bo_w select[name="ca_name"],
#fwrite select[name="ca_name"] {
    font-weight: 700;
    color: #1e355d;
}

/* 본문 에디터 영역 크게 */
#bo_w textarea,
#fwrite textarea {
    min-height: 420px;
    padding: 14px;
    line-height: 1.7;
    resize: vertical;
}

/* 스마트에디터 / ckeditor / summernote 류 */
#bo_w .cke,
#bo_w .se2_inputarea,
#bo_w .note-editor,
#bo_w .tox,
#fwrite .cke,
#fwrite .se2_inputarea,
#fwrite .note-editor,
#fwrite .tox {
    border-radius: 14px !important;
    overflow: hidden;
    border-color: #d8e2ef !important;
}

#bo_w iframe,
#bo_w .cke_contents,
#bo_w .se2_inputarea,
#fwrite iframe,
#fwrite .cke_contents,
#fwrite .se2_inputarea {
    min-height: 420px !important;
}

/* 링크 입력칸 */
#bo_w .bo_w_link input,
#fwrite .bo_w_link input {
    padding-left: 44px;
    background-repeat: no-repeat;
    background-position: 14px center;
    background-size: 18px;
}

/* 파일 버튼 */
#bo_w .btn_file_add,
#bo_w .btn_file_del,
#fwrite .btn_file_add,
#fwrite .btn_file_del,
#bo_w .btn_b01,
#bo_w .btn_b02,
#fwrite .btn_b01,
#fwrite .btn_b02 {
    height: 42px;
    padding: 0 16px;
    border-radius: 10px;
    font-weight: 700;
    border: 1px solid #cfdced;
    background: #fff;
    color: #1f4d94;
}

/* 추가 버튼 강조 */
#bo_w .btn_file_add,
#fwrite .btn_file_add {
    background: #0f2b5c;
    border-color: #0f2b5c;
    color: #fff;
}

/* 파일 업로드 영역 */
#bo_w .frm_file,
#bo_w .file_wr,
#fwrite .frm_file,
#fwrite .file_wr {
    border: 1px dashed #bfd3ef;
    border-radius: 16px;
    background: #fbfdff;
    padding: 18px;
}

/* 체크박스 옵션 */
#bo_w .bo_w_option,
#fwrite .bo_w_option {
    padding-top: 8px;
    color: #1e355d;
    font-size: 15px;
}

/* 하단 버튼 영역 */
#bo_w .btn_confirm,
#fwrite .btn_confirm {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 26px;
    padding-top: 20px;
    border-top: 1px solid #e5edf7;
}

/* 왼쪽/오른쪽 버튼 그룹용 */
.jm-btn-left,
.jm-btn-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* 하단 버튼 공통 */
#bo_w .btn_cancel,
#bo_w .btn_submit,
#bo_w .btn_b01,
#bo_w .btn_b02,
#fwrite .btn_cancel,
#fwrite .btn_submit,
#fwrite .btn_b01,
#fwrite .btn_b02,
#fwrite button[type="submit"],
#fwrite a.btn_cancel {
    height: 52px;
    min-width: 124px;
    border-radius: 14px;
    font-weight: 800;
    font-size: 15px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-sizing: border-box;
}

/* 취소 */
#bo_w .btn_cancel,
#fwrite .btn_cancel,
#fwrite a.btn_cancel {
    background: #ffffff;
    border: 1px solid #cfdced;
    color: #23324d;
}

/* 임시저장 */
#bo_w .btn_temp,
#fwrite .btn_temp,
.jm-save-draft {
    background: #f4f8ff;
    border: 1px solid #a9c3ea;
    color: #1f4d94;
}

/* 작성완료 */
#bo_w .btn_submit,
#fwrite .btn_submit,
#fwrite button[type="submit"] {
    background: #0f2b5c;
    border: 1px solid #0f2b5c;
    color: #fff;
}

/* 모바일 */
@media (max-width: 768px) {
    #bo_w .bo_w_wrap,
    #bo_w .tbl_frm01,
    #fwrite fieldset,
    #fwrite {
        padding: 20px 18px 22px;
        border-radius: 18px;
    }

    .jm-title-row {
        flex-direction: column;
        align-items: stretch;
    }

    #bo_w .btn_confirm,
    #fwrite .btn_confirm {
        flex-direction: column;
        align-items: stretch;
    }

    .jm-btn-left,
    .jm-btn-right {
        width: 100%;
        justify-content: stretch;
    }

    .jm-btn-left > *,
    .jm-btn-right > * {
        flex: 1;
    }

    #bo_w textarea,
    #fwrite textarea,
    #bo_w iframe,
    #bo_w .cke_contents,
    #bo_w .se2_inputarea,
    #fwrite iframe,
    #fwrite .cke_contents,
    #fwrite .se2_inputarea {
        min-height: 320px !important;
    }
}
/* ==================================================
   NUNCHIS JOIN ME - WRITE FORM FINAL FIX
================================================== */

#bo_w.jm-write-page {
    padding: 0 0 32px !important;
    background: transparent !important;
}

#bo_w > h2,
#bo_w > h2.sound_only,
#bo_w .sound_only {
    display: none !important;
}

#bo_w .jm-write-head {
    max-width: 1080px !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 2 !important;
}

#bo_w .jm-write-head h2,
#bo_w .jm-write-head p {
    display: block !important;
    position: static !important;
}

#bo_w .jm-write-head h2 {
    margin: 0 0 4px !important;
    padding: 0 !important;
    font-size: 30px !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    letter-spacing: -0.04em !important;
    color: #0f2b5c !important;
}

#bo_w .jm-write-head p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #52627a !important;
}

#bo_w #fwrite.jm-write-form {
    max-width: 1080px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#bo_w .jm-write-card {
    background: #fff !important;
    border: 1px solid #d9e5f2 !important;
    border-radius: 22px !important;
    padding: 20px 32px !important;
    box-shadow: 0 12px 32px rgba(15, 43, 92, 0.05) !important;
}

#bo_w .tbl_frm01,
#bo_w fieldset,
#bo_w .bo_w_wrap,
#bo_w .write_div {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#bo_w .jm-field {
    margin: 0 0 12px !important;
    padding: 0 !important;
}

#bo_w .jm-field label,
#bo_w .jm-copy-protect label {
    display: block !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    color: #1e355d !important;
}

#bo_w .jm-write-card input[type="text"],
#bo_w .jm-write-card input[type="password"],
#bo_w .jm-write-card input[type="url"],
#bo_w .jm-write-card input[type="email"],
#bo_w .jm-write-card input[type="datetime-local"],
#bo_w .jm-write-card select,
#bo_w .jm-write-card textarea {
    width: 100% !important;
    height: 46px !important;
    border: 1px solid #d8e2ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #23324d !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 0 15px !important;
    outline: none !important;
    box-sizing: border-box !important;
}

#bo_w .jm-write-card input:focus,
#bo_w .jm-write-card select:focus,
#bo_w .jm-write-card textarea:focus {
    border-color: #9abbe7 !important;
    box-shadow: 0 0 0 3px rgba(31, 115, 201, 0.08) !important;
}

#bo_w .jm-write-card input::placeholder,
#bo_w .jm-write-card textarea::placeholder {
    color: #8a97aa !important;
}

#bo_w #ca_name {
    font-weight: 800 !important;
    color: #0f2b5c !important;
}

#bo_w .jm-title-row {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative !important;
}

#bo_w .jm-title-row input {
    flex: 1 !important;
}

#bo_w .jm-top-draft-btn {
    flex: 0 0 auto !important;
    height: 46px !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

#bo_w #autosave_pop {
    display: none;
    position: absolute !important;
    right: 0 !important;
    top: 52px !important;
    z-index: 9999 !important;
    min-width: 280px !important;
    background: #fff !important;
    border: 1px solid #d9e5f2 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 30px rgba(15, 43, 92, 0.12) !important;
    padding: 14px !important;
}

#bo_w .autosave_title {
    font-weight: 800 !important;
    color: #0f2b5c !important;
    margin-bottom: 8px !important;
}

#bo_w .bo_v_option {
    display: flex !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#bo_w .bo_v_option li {
    font-size: 14px !important;
    color: #52627a !important;
}

#bo_w .jm-datetime-input {
    cursor: pointer !important;
    padding-right: 15px !important;
}

#bo_w .jm-datetime-input::-webkit-calendar-picker-indicator {
    cursor: pointer !important;
    opacity: 1 !important;
}

#bo_w .jm-content-field {
    margin-top: 2px !important;
}

#bo_w .wr_content {
    border-radius: 14px !important;
}

#bo_w #wr_content,
#bo_w .wr_content textarea {
    min-height: 460px !important;
    padding: 16px !important;
    line-height: 1.75 !important;
    resize: vertical !important;
}

#bo_w iframe,
#bo_w .cke_contents,
#bo_w .se2_inputarea,
#bo_w .note-editable,
#bo_w .tox-edit-area,
#bo_w .toastui-editor-contents,
#bo_w .ProseMirror {
    min-height: 460px !important;
}

#bo_w .cke,
#bo_w .note-editor,
#bo_w .tox,
#bo_w .toastui-editor-defaultUI {
    border: 1px solid #d8e2ef !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

#bo_w .cke_voice_label,
#bo_w .cke_label,
#bo_w .se2_accessibility,
#bo_w .se2_skip,
#bo_w .toastui-editor-ww-code-block-language {
    display: none !important;
}

#bo_w #char_count_desc {
    margin: 0 0 8px !important;
    color: #64748b !important;
    font-size: 13px !important;
}

#bo_w #char_count_wrap {
    margin-top: 8px !important;
    text-align: right !important;
    color: #64748b !important;
    font-size: 13px !important;
}

#bo_w .jm-file-controls {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
}

#bo_w .jm-file-add-btn,
#bo_w .jm-file-delete-btn {
    height: 40px !important;
    padding: 0 16px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

#bo_w .jm-file-add-btn {
    background: #0f2b5c !important;
    border: 1px solid #0f2b5c !important;
    color: #fff !important;
}

#bo_w .jm-file-delete-btn {
    background: #fff !important;
    border: 1px solid #d8e2ef !important;
    color: #1f4d94 !important;
}

#bo_w .jm-variable-files {
    width: 100% !important;
    margin: 0 0 14px !important;
    border-collapse: collapse !important;
}

#bo_w .jm-variable-files td {
    padding: 0 !important;
    border: 0 !important;
}

#bo_w .jm-file-row {
    margin-bottom: 8px !important;
}

#bo_w .jm-filebox {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 60px !important;
    padding: 12px !important;
    border: 1px dashed #bdd3ef !important;
    border-radius: 15px !important;
    background: #fbfdff !important;
    box-sizing: border-box !important;
}

#bo_w .jm-filebox .fileName {
    flex: 1 !important;
    height: 40px !important;
    border: 1px solid #d8e2ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #64748b !important;
    padding: 0 14px !important;
}

#bo_w .jm-file-attach-btn {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 40px !important;
    padding: 0 16px !important;
    border-radius: 11px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

#bo_w .jm-filebox .uploadBtn {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
}

#bo_w .jm-file-desc {
    margin-top: 8px !important;
}

#bo_w .jm-file-delete-old {
    margin-top: 8px !important;
    color: #64748b !important;
    font-size: 13px !important;
}

#bo_w .jm-copy-protect {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
}

#bo_w .jm-copy-protect input {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
}

#bo_w .jm-copy-protect label {
    margin: 0 !important;
    font-size: 15px !important;
    color: #1e355d !important;
}

#bo_w .jm-captcha {
    margin-top: 18px !important;
}

#bo_w .jm-write-actions {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 20px !important;
    padding-top: 18px !important;
    border-top: 1px solid #e5edf7 !important;
}

#bo_w .jm-action-left,
#bo_w .jm-action-right {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

#bo_w .jm-cancel-btn,
#bo_w .jm-bottom-draft-btn,
#bo_w .jm-submit-btn {
    min-width: 120px !important;
    height: 46px !important;
    padding: 0 22px !important;
    border-radius: 14px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

#bo_w .jm-cancel-btn {
    background: #fff !important;
    border: 1px solid #cfdced !important;
    color: #23324d !important;
}

#bo_w .jm-bottom-draft-btn {
    background: #f4f8ff !important;
    border: 1px solid #a9c3ea !important;
    color: #1f4d94 !important;
}

#bo_w .jm-submit-btn {
    background: #0f2b5c !important;
    border: 1px solid #0f2b5c !important;
    color: #fff !important;
}

#bo_w .jm-submit-btn:disabled {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

@media (max-width: 768px) {
    #bo_w .jm-write-head {
        margin-bottom: 10px !important;
    }

    #bo_w .jm-write-head h2 {
        font-size: 28px !important;
    }

    #bo_w .jm-write-card {
        padding: 20px 16px !important;
        border-radius: 18px !important;
    }

    #bo_w .jm-guest-grid {
        grid-template-columns: 1fr !important;
    }

    #bo_w .jm-title-row {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-top-draft-btn {
        width: 100% !important;
    }

    #bo_w #wr_content,
    #bo_w .wr_content textarea,
    #bo_w iframe,
    #bo_w .cke_contents,
    #bo_w .se2_inputarea,
    #bo_w .note-editable,
    #bo_w .tox-edit-area,
    #bo_w .toastui-editor-contents,
    #bo_w .ProseMirror {
        min-height: 360px !important;
    }

    #bo_w .jm-file-controls {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-filebox {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-write-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-action-left,
    #bo_w .jm-action-right {
        width: 100% !important;
    }

    #bo_w .jm-action-left > *,
    #bo_w .jm-action-right > * {
        flex: 1 !important;
    }
}
/* ==================================================
   NUNCHIS JOIN ME - WRITE FORM FINAL SAFE
================================================== */

#bo_w.jm-write-page {
    padding: 0 0 32px !important;
    background: transparent !important;
}

#bo_w > h2,
#bo_w > h2.sound_only,
#bo_w .sound_only {
    display: none !important;
}

/* title */
#bo_w .jm-write-head {
    max-width: 1080px !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 10 !important;
    display: block !important;
    clear: both !important;
}

#bo_w .jm-write-main-title {
    display: block !important;
    position: static !important;
    float: none !important;
    clear: both !important;
    margin: 0 0 4px !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    font-size: 30px !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
    letter-spacing: -0.04em !important;
    color: #0f2b5c !important;
    text-align: left !important;
    text-indent: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

#bo_w .jm-write-main-desc {
    display: block !important;
    position: static !important;
    float: none !important;
    clear: both !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    color: #52627a !important;
    text-align: left !important;
    text-indent: 0 !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* form wrapper */
#bo_w #fwrite.jm-write-form {
    max-width: 1080px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#bo_w .jm-write-card {
    background: #fff !important;
    border: 1px solid #d9e5f2 !important;
    border-radius: 22px !important;
    padding: 20px 32px !important;
    box-shadow: 0 12px 32px rgba(15, 43, 92, 0.05) !important;
}

#bo_w .tbl_frm01,
#bo_w fieldset,
#bo_w .bo_w_wrap,
#bo_w .write_div {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* fields */
#bo_w .jm-field {
    margin: 0 0 12px !important;
    padding: 0 !important;
}

/* 중요한 부분: 우리가 붙인 직접 label만 스타일 적용 */
#bo_w .jm-field > .jm-field-label,
#bo_w .jm-copy-protect > label {
    display: block !important;
    position: static !important;
    float: none !important;
    clear: none !important;
    margin: 0 0 5px !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
    color: #1e355d !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-indent: 0 !important;
    transform: none !important;
}

/* CKEditor 내부 label은 절대 건드리지 않음 + 숨김 */
#bo_w .cke_voice_label,
#bo_w span.cke_voice_label,
#bo_w .cke_screen_reader_only,
#bo_w .cke_accessibility,
#bo_w .cke_label,
#bo_w [id*="arialbl"],
#bo_w [class*="voice_label"],
#bo_w [class*="screen_reader"],
#bo_w [class*="accessibility"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    position: absolute !important;
    left: -99999px !important;
    top: -99999px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
}

/* inputs */
#bo_w .jm-write-card input[type="text"],
#bo_w .jm-write-card input[type="password"],
#bo_w .jm-write-card input[type="url"],
#bo_w .jm-write-card input[type="email"],
#bo_w .jm-write-card input[type="datetime-local"],
#bo_w .jm-write-card select,
#bo_w .jm-write-card textarea,
#bo_w .jm-date-field .jm-flatpickr-display {
    width: 100% !important;
    height: 46px !important;
    border: 1px solid #d8e2ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #23324d !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 0 15px !important;
    outline: none !important;
    box-sizing: border-box !important;
}

#bo_w .jm-write-card input:focus,
#bo_w .jm-write-card select:focus,
#bo_w .jm-write-card textarea:focus,
#bo_w .jm-date-field .jm-flatpickr-display:focus {
    border-color: #9abbe7 !important;
    box-shadow: 0 0 0 3px rgba(31, 115, 201, 0.08) !important;
}

#bo_w .jm-write-card input::placeholder,
#bo_w .jm-write-card textarea::placeholder {
    color: #8a97aa !important;
}

#bo_w #ca_name {
    font-weight: 800 !important;
    color: #0f2b5c !important;
}

/* title row */
#bo_w .jm-title-row {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative !important;
}

#bo_w .jm-title-row input {
    flex: 1 !important;
}

#bo_w .jm-top-draft-btn {
    flex: 0 0 auto !important;
    height: 46px !important;
    padding: 0 20px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

/* autosave popup */
#bo_w #autosave_pop {
    display: none;
    position: absolute !important;
    right: 0 !important;
    top: 52px !important;
    z-index: 9999 !important;
    min-width: 280px !important;
    background: #fff !important;
    border: 1px solid #d9e5f2 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 30px rgba(15, 43, 92, 0.12) !important;
    padding: 14px !important;
}

#bo_w .autosave_title {
    font-weight: 800 !important;
    color: #0f2b5c !important;
    margin-bottom: 8px !important;
}

/* datetime */
#bo_w .jm-date-field {
    position: relative !important;
}

#bo_w .jm-date-field .jm-flatpickr-display {
    cursor: pointer !important;
    padding-right: 15px !important;
}

#bo_w .jm-date-field input[name="wr_2"] {
    display: none !important;
}

/* content editor */
#bo_w .jm-content-field {
    margin-top: 2px !important;
}

#bo_w .wr_content {
    border-radius: 14px !important;
}

#bo_w #wr_content,
#bo_w .wr_content textarea {
    min-height: 460px !important;
    padding: 16px !important;
    line-height: 1.75 !important;
    resize: vertical !important;
}

#bo_w iframe,
#bo_w .cke_contents,
#bo_w .se2_inputarea,
#bo_w .note-editable,
#bo_w .tox-edit-area,
#bo_w .toastui-editor-contents,
#bo_w .ProseMirror {
    min-height: 460px !important;
}

#bo_w .cke,
#bo_w .note-editor,
#bo_w .tox,
#bo_w .toastui-editor-defaultUI {
    border: 1px solid #d8e2ef !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

/* links */
#bo_w .jm-link-field {
    position: static !important;
}

#bo_w .jm-link-field label {
    position: static !important;
    float: none !important;
    transform: none !important;
}

/* files */
#bo_w .jm-file-controls {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 10px !important;
}

#bo_w .jm-file-add-btn,
#bo_w .jm-file-delete-btn {
    height: 40px !important;
    padding: 0 16px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

#bo_w .jm-file-add-btn {
    background: #0f2b5c !important;
    border: 1px solid #0f2b5c !important;
    color: #fff !important;
}

#bo_w .jm-file-delete-btn {
    background: #fff !important;
    border: 1px solid #d8e2ef !important;
    color: #1f4d94 !important;
}

#bo_w .jm-variable-files {
    width: 100% !important;
    margin: 0 0 14px !important;
    border-collapse: collapse !important;
}

#bo_w .jm-variable-files td {
    padding: 0 !important;
    border: 0 !important;
}

#bo_w .jm-file-row {
    margin-bottom: 8px !important;
}

#bo_w .jm-filebox {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 60px !important;
    padding: 12px !important;
    border: 1px dashed #bdd3ef !important;
    border-radius: 15px !important;
    background: #fbfdff !important;
    box-sizing: border-box !important;
}

#bo_w .jm-filebox .fileName {
    flex: 1 !important;
    height: 40px !important;
    border: 1px solid #d8e2ef !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #64748b !important;
    padding: 0 14px !important;
}

#bo_w .jm-file-attach-btn {
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 40px !important;
    padding: 0 16px !important;
    border-radius: 11px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

#bo_w .jm-filebox .uploadBtn {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
}

#bo_w .jm-file-desc {
    margin-top: 8px !important;
}

#bo_w .jm-file-delete-old {
    margin-top: 8px !important;
    color: #64748b !important;
    font-size: 13px !important;
}

/* copy protect */
#bo_w .jm-copy-protect {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
}

#bo_w .jm-copy-protect input {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
}

/* actions */
#bo_w .jm-write-actions {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 14px !important;
    margin-top: 20px !important;
    padding-top: 18px !important;
    border-top: 1px solid #e5edf7 !important;
}

#bo_w .jm-action-left,
#bo_w .jm-action-right {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

#bo_w .jm-cancel-btn,
#bo_w .jm-bottom-draft-btn,
#bo_w .jm-submit-btn {
    min-width: 120px !important;
    height: 46px !important;
    padding: 0 22px !important;
    border-radius: 14px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

#bo_w .jm-cancel-btn {
    background: #fff !important;
    border: 1px solid #cfdced !important;
    color: #23324d !important;
}

#bo_w .jm-bottom-draft-btn {
    background: #f4f8ff !important;
    border: 1px solid #a9c3ea !important;
    color: #1f4d94 !important;
}

#bo_w .jm-submit-btn {
    background: #0f2b5c !important;
    border: 1px solid #0f2b5c !important;
    color: #fff !important;
}

/* Flatpickr */
.flatpickr-calendar {
    font-family: Arial, "Helvetica Neue", sans-serif !important;
    border-radius: 14px !important;
    box-shadow: 0 12px 32px rgba(15, 43, 92, 0.18) !important;
}

.flatpickr-day.selected {
    background: #0f2b5c !important;
    border-color: #0f2b5c !important;
}

.flatpickr-confirm {
    height: 34px !important;
    line-height: 34px !important;
    padding: 0 !important;
    margin: 6px 8px 8px !important;
    border-radius: 10px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-align: center !important;
    cursor: pointer !important;
}

.flatpickr-confirm:hover {
    background: #173b77 !important;
}

@media (max-width: 768px) {
    #bo_w .jm-write-card {
        padding: 20px 16px !important;
        border-radius: 18px !important;
    }

    #bo_w .jm-title-row {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-top-draft-btn {
        width: 100% !important;
    }

    #bo_w #wr_content,
    #bo_w .wr_content textarea,
    #bo_w iframe,
    #bo_w .cke_contents,
    #bo_w .se2_inputarea,
    #bo_w .note-editable,
    #bo_w .tox-edit-area,
    #bo_w .toastui-editor-contents,
    #bo_w .ProseMirror {
        min-height: 360px !important;
    }

    #bo_w .jm-file-controls,
    #bo_w .jm-filebox,
    #bo_w .jm-write-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #bo_w .jm-action-left,
    #bo_w .jm-action-right {
        width: 100% !important;
    }

    #bo_w .jm-action-left > *,
    #bo_w .jm-action-right > * {
        flex: 1 !important;
    }
}
/* ==================================================
   JOIN ME LIST - CLEAN FINAL OVERRIDE
   중복 글자 / 주황 긴 선 / 뱃지 깨짐 해결
================================================== */

/* 긴 주황색 선 제거 */
#bo_list .jm-topbar::after,
#bo_list .jm-category-bar::before,
#bo_list .jm-category-bar::after,
#bo_list #bo_cate::before,
#bo_list #bo_cate::after,
#bo_list #bo_cate_ul::before,
#bo_list #bo_cate_ul::after {
    display: none !important;
    content: none !important;
}

/* 탭 기본 정리 */
#bo_list .jm-category-list {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border: 0 !important;
}

#bo_list .jm-category-list li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* 탭은 색만 은은하게 */
#bo_list .jm-category-list a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 36px !important;
    padding: 0 8px !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #52627a !important;
    transition: color .2s ease !important;
}

/* 탭에 붙은 가짜 글자/선 제거 */
#bo_list .jm-category-list a::before,
#bo_list .jm-category-list a::after {
    display: none !important;
    content: none !important;
}

/* 탭별 글자 색상 */
#bo_list .jm-category-list a.jm-tab-all,
#bo_list .jm-category-list li:first-child a {
    color: #0f2b5c !important;
}

#bo_list .jm-category-list a.jm-tab-today,
#bo_list .jm-category-list a[href*="TODAY"] {
    color: #ff6a00 !important;
}

#bo_list .jm-category-list a.jm-tab-weekend,
#bo_list .jm-category-list a[href*="WEEKEND"] {
    color: #2483ff !important;
}

#bo_list .jm-category-list a.jm-tab-language,
#bo_list .jm-category-list a[href*="LANGUAGE"] {
    color: #20a75a !important;
}

#bo_list .jm-category-list a.jm-tab-tagalong,
#bo_list .jm-category-list a[href*="TAG"] {
    color: #7356e8 !important;
}

/* 선택된 탭은 짧은 밑줄만 */
#bo_list .jm-category-list a.bo_cate_on {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #0f2b5c !important;
}

#bo_list .jm-category-list a.bo_cate_on::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    bottom: -8px !important;
    transform: translateX(-50%) !important;
    width: 20px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: #0f2b5c !important;
}

/* 뱃지 중복 글자 제거 */
#bo_list .jm-category-pill::before,
#bo_list .jm-category-pill::after,
#bo_list .jm-badge-default::before,
#bo_list .jm-badge-default::after,
#bo_list .jm-badge-general::before,
#bo_list .jm-badge-general::after,
#bo_list .jm-badge-today::before,
#bo_list .jm-badge-today::after,
#bo_list .jm-badge-weekend::before,
#bo_list .jm-badge-weekend::after,
#bo_list .jm-badge-language::before,
#bo_list .jm-badge-language::after,
#bo_list .jm-badge-tagalong::before,
#bo_list .jm-badge-tagalong::after,
#bo_list .jm-badge-td::before,
#bo_list .jm-badge-td::after,
#bo_list .jm-badge-we::before,
#bo_list .jm-badge-we::after,
#bo_list .jm-badge-le::before,
#bo_list .jm-badge-le::after,
#bo_list .jm-badge-ta::before,
#bo_list .jm-badge-ta::after {
    display: none !important;
    content: none !important;
}

/* 뱃지는 텍스트 하나만 중앙 표시 */
#bo_list .jm-category-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    height: 28px !important;
    padding: 0 10px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-indent: 0 !important;
    text-transform: none !important;
    box-sizing: border-box !important;
}

/* 기본/GENERAL 뱃지 */
#bo_list .jm-badge-default,
#bo_list .jm-badge-general {
    color: #64748b !important;
    background: #f4f7fb !important;
    border: 1px solid #dbe5f0 !important;
}

/* TODAY */
#bo_list .jm-badge-today,
#bo_list .jm-badge-td {
    color: #ff6a00 !important;
    background: #fff4ec !important;
    border: 1px solid #ffbf92 !important;
}

/* WEEKEND */
#bo_list .jm-badge-weekend,
#bo_list .jm-badge-we {
    color: #2483ff !important;
    background: #edf5ff !important;
    border: 1px solid #abd0ff !important;
}

/* LANGUAGE */
#bo_list .jm-badge-language,
#bo_list .jm-badge-le {
    color: #20a75a !important;
    background: #edfbf2 !important;
    border: 1px solid #a9e0bb !important;
}

/* TAG ALONG */
#bo_list .jm-badge-tagalong,
#bo_list .jm-badge-ta {
    color: #7356e8 !important;
    background: #f3efff !important;
    border: 1px solid #cdbfff !important;
}

/* Date/Time 너무 길게 보이는 것 방지 */
#bo_list .jm-meettime-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    max-width: 100% !important;
    color: #5b6d87 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

#bo_list .jm-meettime-value {
    display: inline-block !important;
    max-width: 118px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#bo_list .jm-meettime-text iconify-icon {
    flex: 0 0 auto !important;
    color: #416b9f !important;
}
/* =========================================
   JOIN ME - LOCATION CENTER + MENU BAR FIX
========================================= */

/* 1) Location 헤더 / 내용 가운데 정렬 */
#bo_list .jm-th-location,
#bo_list .jm-location {
    text-align: center !important;
}

#bo_list .jm-location-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 100% !important;
    text-align: center !important;
    color: #5b6d87 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

#bo_list .jm-location-value {
    display: inline-block !important;
    max-width: 140px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* 2) 상단 탭 바 전체 라인 */
#bo_list .jm-topbar {
    border-bottom: 0 !important;
    padding-bottom: 10px !important;
}

#bo_list .jm-topbar-tabs {
    width: 100% !important;
}

#bo_list .jm-category {
    width: 100% !important;
}

#bo_list .jm-category-list {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 !important;
    padding: 0 0 14px 0 !important;
    list-style: none !important;
    border-bottom: 2px solid #dfe8f4 !important; /* 길게 보이는 전체 바 */
    position: relative !important;
}

/* 기존 짧은 선 제거 */
#bo_list .jm-category-list::before,
#bo_list .jm-category-list::after,
#bo_list .jm-topbar::before,
#bo_list .jm-topbar::after {
    display: none !important;
    content: none !important;
}

/* 탭 기본 */
#bo_list .jm-category-list a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 36px !important;
    padding: 0 12px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    border: 1px solid transparent !important;
    transition: all .2s ease !important;
    background: transparent !important;
}

/* 탭 색상 */
#bo_list .jm-category-list a.jm-tab-all,
#bo_list .jm-category-list li:first-child a {
    color: #0f2b5c !important;
    background: #eef4ff !important;
    border-color: #d7e2f3 !important;
}

#bo_list .jm-category-list a.jm-tab-today {
    color: #ff6a00 !important;
    background: #fff4ec !important;
    border-color: #ffd0ad !important;
}

#bo_list .jm-category-list a.jm-tab-weekend {
    color: #2483ff !important;
    background: #eef6ff !important;
    border-color: #c8ddff !important;
}

#bo_list .jm-category-list a.jm-tab-language {
    color: #1ea85c !important;
    background: #eefcf3 !important;
    border-color: #bfe9cd !important;
}

#bo_list .jm-category-list a.jm-tab-tagalong {
    color: #7356e8 !important;
    background: #f4f0ff !important;
    border-color: #d8ccff !important;
}

/* hover */
#bo_list .jm-category-list a:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 14px rgba(15, 43, 92, 0.08) !important;
}

/* 활성 탭 */
#bo_list .jm-category-list a.bo_cate_on {
    font-weight: 900 !important;
    box-shadow: 0 6px 14px rgba(15, 43, 92, 0.08) !important;
}

/* 활성 탭 밑줄 - 지금보다 길게 */
#bo_list .jm-category-list a.bo_cate_on::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: -16px !important;
    transform: translateX(-50%) !important;
    width: 44px !important;   /* 길게 */
    height: 4px !important;
    border-radius: 999px !important;
    background: #ff7a1a !important; /* 주황 포인트 */
}

/* 활성 탭마다 글자색 조금 유지 */
#bo_list .jm-category-list a.jm-tab-all.bo_cate_on,
#bo_list .jm-category-list li:first-child a.bo_cate_on {
    color: #0f2b5c !important;
}

#bo_list .jm-category-list a.jm-tab-today.bo_cate_on {
    color: #ff6a00 !important;
}

#bo_list .jm-category-list a.jm-tab-weekend.bo_cate_on {
    color: #2483ff !important;
}

#bo_list .jm-category-list a.jm-tab-language.bo_cate_on {
    color: #1ea85c !important;
}

#bo_list .jm-category-list a.jm-tab-tagalong.bo_cate_on {
    color: #7356e8 !important;
}
/* =========================================
   JOIN ME TAB LINE FINAL FIX
========================================= */

/* 기존 이상한 선 제거 */
#bo_list .jm-topbar::before,
#bo_list .jm-topbar::after,
#bo_list .jm-category-list::before,
#bo_list .jm-category-list::after,
#bo_list #bo_cate::before,
#bo_list #bo_cate::after {
    display: none !important;
    content: none !important;
}

/* 탭 전체 영역 */
#bo_list .jm-topbar {
    align-items: center !important;
    border-bottom: 0 !important;
    padding: 14px 0 0 !important;
    margin-bottom: 12px !important;
}

#bo_list .jm-topbar-tabs {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

#bo_list .jm-category {
    width: 100% !important;
}

/* 회색 기준 라인 */
#bo_list .jm-category-list {
    display: flex !important;
    align-items: stretch !important;
    gap: 28px !important;
    height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border-bottom: 2px solid #dfe8f4 !important;
    position: relative !important;
}

#bo_list .jm-category-list li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* 탭 글자 */
#bo_list .jm-category-list a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 50px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #52627a !important;
    white-space: nowrap !important;
}

/* 기존 탭 가짜 밑줄 제거 */
#bo_list .jm-category-list a::before,
#bo_list .jm-category-list a::after {
    display: none !important;
    content: none !important;
}

/* 탭별 색상 */
#bo_list .jm-category-list a.jm-tab-all,
#bo_list .jm-category-list li:first-child a {
    color: #0f2b5c !important;
}

#bo_list .jm-category-list a.jm-tab-today,
#bo_list .jm-category-list a[href*="TODAY"] {
    color: #ff6a00 !important;
}

#bo_list .jm-category-list a.jm-tab-weekend,
#bo_list .jm-category-list a[href*="WEEKEND"] {
    color: #2483ff !important;
}

#bo_list .jm-category-list a.jm-tab-language,
#bo_list .jm-category-list a[href*="LANGUAGE"] {
    color: #20a75a !important;
}

#bo_list .jm-category-list a.jm-tab-tagalong,
#bo_list .jm-category-list a[href*="TAG"] {
    color: #7356e8 !important;
}

/* 선택된 탭 밑줄: 회색 라인에 딱 붙음 */
#bo_list .jm-category-list a.bo_cate_on::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: -2px !important;
    height: 3px !important;
    border-radius: 999px !important;
    background: currentColor !important;
}

/* 버튼 영역 높이 맞춤 */
#bo_list .jm-board-actions {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    height: 50px !important;
}

/* =========================================
   NOTICE BADGE
========================================= */

#bo_list .jm-badge-notice {
    color: #0f2b5c !important;
    background: #eef4ff !important;
    border: 1px solid #b9ccef !important;
}

#bo_list tr.bo_notice,
#bo_list tr.jm-row.bo_notice {
    background: #fbfdff !important;
}
/* =========================================
   NOTICE ROW STYLE
   - 공지사항 은은한 음영
========================================= */

#bo_list tr.bo_notice,
#bo_list tr.jm-row.bo_notice {
    background: #f7fbff !important;
    box-shadow: inset 4px 0 0 #0f2b5c !important;
}

#bo_list tr.bo_notice td,
#bo_list tr.jm-row.bo_notice td {
    background: transparent !important;
}

#bo_list .jm-badge-notice {
    color: #0f2b5c !important;
    background: #eaf2ff !important;
    border: 1px solid #b9ccef !important;
    font-weight: 900 !important;
}

/* 공지 제목 조금 강조 */
#bo_list tr.bo_notice .jm-title-link,
#bo_list tr.jm-row.bo_notice .jm-title-link {
    color: #0f2b5c !important;
    font-weight: 900 !important;
}
/* ==================================================
   JOIN ME TAB LINE RESTORE + NOTICE SOFT FIX
   탭 라인 복구 / 옆 검정색 완화
================================================== */

/* 탭 영역 정리 */
#bo_list .jm-topbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: 0 !important;
}

#bo_list .jm-topbar-tabs {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

#bo_list #bo_cate,
#bo_list .jm-category {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

/* 전체 회색 라인 복구 */
#bo_list #bo_cate_ul,
#bo_list .jm-category-list {
    position: relative !important;
    display: flex !important;
    align-items: stretch !important;
    gap: 28px !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    white-space: nowrap !important;
    border-bottom: 2px solid #dfe8f4 !important;
}

/* ul 자체의 가짜 선은 끔 */
#bo_list #bo_cate_ul::before,
#bo_list #bo_cate_ul::after,
#bo_list .jm-category-list::before,
#bo_list .jm-category-list::after,
#bo_list .jm-topbar::before,
#bo_list .jm-topbar::after {
    display: none !important;
    content: none !important;
}

/* li 높이 */
#bo_list #bo_cate li,
#bo_list .jm-category-list li {
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* 탭 기본 */
#bo_list #bo_cate a,
#bo_list .jm-category-list a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 52px !important;
    margin: 0 0 -2px 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-decoration: none !important;
    font-size: 13px !important;
    line-height: 52px !important;
    font-weight: 900 !important;
    color: #55657e !important;
    white-space: nowrap !important;
}

/* a::after로 만든 기존 짧은 검정선 제거 */
#bo_list #bo_cate a::before,
#bo_list #bo_cate a::after,
#bo_list .jm-category-list a::before,
#bo_list .jm-category-list a::after {
    display: none !important;
    content: none !important;
}

/* 탭별 색 */
#bo_list .jm-category-list a.jm-tab-all,
#bo_list .jm-category-list li:first-child a,
#bo_list #bo_cate li:first-child a {
    color: #0f2b5c !important;
}

#bo_list .jm-category-list a.jm-tab-today,
#bo_list .jm-category-list a[href*="TODAY"] {
    color: #ff6a00 !important;
}

#bo_list .jm-category-list a.jm-tab-weekend,
#bo_list .jm-category-list a[href*="WEEKEND"] {
    color: #2483ff !important;
}

#bo_list .jm-category-list a.jm-tab-language,
#bo_list .jm-category-list a[href*="LANGUAGE"] {
    color: #20a75a !important;
}

#bo_list .jm-category-list a.jm-tab-tagalong,
#bo_list .jm-category-list a[href*="TAG"] {
    color: #7356e8 !important;
}

/* 선택된 탭 밑줄: 회색 라인에 붙게 */
#bo_list #bo_cate .bo_cate_on,
#bo_list #bo_cate #bo_cate_on,
#bo_list .jm-category-list a.bo_cate_on {
    border-bottom-color: currentColor !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* 버튼 높이 맞춤 */
#bo_list .jm-board-actions {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 공지사항 옆 검정색 제거/완화 */
#bo_list tr.bo_notice,
#bo_list tr.jm-row.bo_notice {
    box-shadow: none !important;
}

#bo_list tr.bo_notice td,
#bo_list tr.jm-row.bo_notice td {
    background: #f7fbff !important;
}

/* 공지 카테고리 뱃지 */
#bo_list .jm-badge-notice {
    color: #0f2b5c !important;
    background: #eaf2ff !important;
    border: 1px solid #b9ccef !important;
}
/* ==================================================
   NUNCHIS POST VIEW - REDDIT LIKE CLEAN STYLE
================================================== */

#bo_v.jm-reddit-view {
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto 40px !important;
    padding: 0 !important;
    background: transparent !important;
}

#bo_v.jm-reddit-view .jm-post-card {
    width: 100% !important;
    padding: 34px 36px 30px !important;
    background: #fff !important;
    border: 1px solid #dfe8f4 !important;
    border-radius: 20px !important;
    box-shadow: 0 18px 42px rgba(15, 35, 71, 0.055) !important;
    box-sizing: border-box !important;
}

#bo_v.jm-reddit-view .jm-post-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 30px !important;
}

#bo_v.jm-reddit-view .jm-post-back {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #435471 !important;
    font-size: 16px !important;
    font-weight: 750 !important;
    text-decoration: none !important;
}

#bo_v.jm-reddit-view .jm-post-back:hover {
    color: #ff6500 !important;
}

#bo_v.jm-reddit-view .jm-post-more-wrap {
    position: relative !important;
}

#bo_v.jm-reddit-view .jm-post-more-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    border: 0 !important;
    background: transparent !important;
    color: #7d899a !important;
    cursor: pointer !important;
}

#bo_v.jm-reddit-view .jm-post-more-menu {
    position: absolute !important;
    top: 38px !important;
    right: 0 !important;
    z-index: 50 !important;
    display: none;
    min-width: 138px !important;
    padding: 8px !important;
    margin: 0 !important;
    border: 1px solid #dfe8f4 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(15,35,71,.12) !important;
    list-style: none !important;
}

#bo_v.jm-reddit-view .jm-post-more-menu li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#bo_v.jm-reddit-view .jm-post-more-menu a,
#bo_v.jm-reddit-view .jm-post-more-menu button {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 9px 10px !important;
    border: 0 !important;
    background: transparent !important;
    color: #26364f !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

#bo_v.jm-reddit-view .jm-post-head {
    margin: 0 !important;
    padding: 0 !important;
}

#bo_v.jm-reddit-view .jm-post-category {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    padding: 0 14px !important;
    margin: 0 0 18px !important;
    border: 1.5px solid #ff6500 !important;
    border-radius: 11px !important;
    color: #ff6500 !important;
    background: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#bo_v.jm-reddit-view .jm-post-title {
    margin: 0 0 20px !important;
    color: #071a3d !important;
    font-size: 30px !important;
    line-height: 1.28 !important;
    font-weight: 850 !important;
    letter-spacing: -0.035em !important;
}

#bo_v.jm-reddit-view .jm-post-meta {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 20px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid #e3eaf3 !important;
}

#bo_v.jm-reddit-view .jm-post-meta-left,
#bo_v.jm-reddit-view .jm-post-meta-right {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
    flex-wrap: wrap !important;
}

#bo_v.jm-reddit-view .jm-post-author,
#bo_v.jm-reddit-view .jm-post-meta-item,
#bo_v.jm-reddit-view .jm-post-meta-right span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #47556e !important;
    font-size: 16px !important;
    font-weight: 650 !important;
    white-space: nowrap !important;
}

#bo_v.jm-reddit-view .jm-post-author strong {
    color: #1a2a47 !important;
    font-weight: 800 !important;
}

#bo_v.jm-reddit-view .jm-mini-profile {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #ff6500 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: -0.04em !important;
    box-shadow: 0 6px 14px rgba(255,101,0,.18) !important;
}

#bo_v.jm-reddit-view .jm-post-body {
    margin: 0 !important;
    padding: 0 !important;
}

#bo_v.jm-reddit-view #bo_v_atc_title {
    display: none !important;
}

#bo_v.jm-reddit-view .jm-post-content {
    min-height: 360px !important;
    margin: 0 !important;
    padding: 34px 0 28px !important;
    color: #15233d !important;
    font-size: 18px !important;
    line-height: 2.05 !important;
    font-weight: 500 !important;
}

#bo_v.jm-reddit-view .jm-post-content p {
    margin: 0 0 22px !important;
}

#bo_v.jm-reddit-view .jm-post-content img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 14px !important;
}

#bo_v.jm-reddit-view .jm-post-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 28px !important;
    margin: 0 0 28px !important;
    padding: 0 !important;
    border: 0 !important;
}

#bo_v.jm-reddit-view .jm-action-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    height: 42px !important;
    padding: 0 2px !important;
    border: 0 !important;
    background: transparent !important;
    color: #1d2f54 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

#bo_v.jm-reddit-view .jm-action-like {
    padding: 0 18px !important;
    border: 1px solid #ffe0d0 !important;
    border-radius: 12px !important;
    color: #ff6500 !important;
    background: #fff !important;
}

#bo_v.jm-reddit-view .jm-action-btn:hover {
    color: #ff6500 !important;
}

#bo_v.jm-reddit-view #bo_v_share {
    position: absolute !important;
    z-index: 80 !important;
}

/* file/link */
#bo_v.jm-reddit-view .jm-post-file,
#bo_v.jm-reddit-view .jm-post-link {
    margin: 22px 0 !important;
    padding: 18px !important;
    border: 1px solid #e3eaf3 !important;
    border-radius: 14px !important;
    background: #fbfdff !important;
}

#bo_v.jm-reddit-view .jm-post-file h2,
#bo_v.jm-reddit-view .jm-post-link h2 {
    margin: 0 0 10px !important;
    color: #071a3d !important;
    font-size: 16px !important;
    font-weight: 900 !important;
}

/* 댓글 영역 */
#bo_v.jm-reddit-view .jm-comment-area {
    margin-top: 0 !important;
    padding-top: 28px !important;
    border-top: 1px solid #e3eaf3 !important;
}

/* 그누보드 댓글 스킨 강제 정리 */
#bo_v.jm-reddit-view #bo_vc,
#bo_v.jm-reddit-view #bo_vc_w {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#bo_v.jm-reddit-view #bo_vc {
    margin-top: 0 !important;
}

#bo_v.jm-reddit-view #bo_vc h2,
#bo_v.jm-reddit-view #bo_vc_w h2,
#bo_v.jm-reddit-view #bo_vc_title,
#bo_v.jm-reddit-view #bo_vc_w_title {
    color: #071a3d !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

#bo_v.jm-reddit-view #bo_vc_empty,
#bo_v.jm-reddit-view #bo_vc .empty,
#bo_v.jm-reddit-view .empty_li {
    min-height: 110px !important;
    padding: 34px 0 !important;
    color: #6d7a90 !important;
    font-size: 15px !important;
    text-align: center !important;
}

/* 댓글 입력 폼 */
#bo_v.jm-reddit-view #bo_vc_w {
    margin-top: 20px !important;
    padding: 18px !important;
    border: 1px solid #e3eaf3 !important;
    border-radius: 18px !important;
    background: #fff !important;
}

#bo_v.jm-reddit-view #bo_vc_w textarea,
#bo_v.jm-reddit-view #wr_content {
    width: 100% !important;
    min-height: 118px !important;
    height: 118px !important;
    padding: 16px 18px !important;
    border: 1px solid #dfe8f4 !important;
    border-radius: 14px !important;
    color: #15233d !important;
    background: #fff !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    box-sizing: border-box !important;
}

#bo_v.jm-reddit-view #bo_vc_w .btn_submit,
#bo_v.jm-reddit-view #bo_vc_w input[type="submit"],
#bo_v.jm-reddit-view #bo_vc_w button[type="submit"] {
    height: 40px !important;
    min-width: 78px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #0f2b5c !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 850 !important;
}

#bo_v.jm-reddit-view #bo_vc_w input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
}

/* 기존 view 스타일 숨김 충돌 방지 */
#bo_v.jm-reddit-view .bo_title_header,
#bo_v.jm-reddit-view #bo_v_info,
#bo_v.jm-reddit-view .jm-view-extra-info,
#bo_v.jm-reddit-view .jm-create-room-box {
    display: none !important;
}

@media (max-width: 768px) {
    #bo_v.jm-reddit-view .jm-post-card {
        padding: 24px 18px !important;
        border-radius: 16px !important;
    }

    #bo_v.jm-reddit-view .jm-post-title {
        font-size: 24px !important;
    }

    #bo_v.jm-reddit-view .jm-post-meta {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    #bo_v.jm-reddit-view .jm-post-meta-left,
    #bo_v.jm-reddit-view .jm-post-meta-right {
        gap: 14px !important;
    }

    #bo_v.jm-reddit-view .jm-post-content {
        font-size: 16px !important;
        min-height: 260px !important;
    }

    #bo_v.jm-reddit-view .jm-post-actions {
        gap: 18px !important;
        flex-wrap: wrap !important;
    }
}
/* 제목 너무 두꺼운 것 수정 */
#bo_v.jm-reddit-view .jm-post-title {
    font-size: 26px !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    line-height: 1.35 !important;
    color: #10213f !important;
    margin-bottom: 18px !important;
}

/* 카테고리와 제목 간격 조금 줄이기 */
#bo_v.jm-reddit-view .jm-post-category {
    margin-bottom: 16px !important;
}

/* 작성자/위치/날짜 줄을 조금 더 자연스럽게 */
#bo_v.jm-reddit-view .jm-post-meta {
    padding-bottom: 20px !important;
    border-bottom: 1px solid #e3eaf3 !important;
}

#bo_v.jm-reddit-view .jm-post-meta-left,
#bo_v.jm-reddit-view .jm-post-meta-right {
    gap: 18px !important;
}

#bo_v.jm-reddit-view .jm-post-author,
#bo_v.jm-reddit-view .jm-post-meta-item,
#bo_v.jm-reddit-view .jm-post-meta-right span {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #526178 !important;
}

/* 본문 너무 넓고 허전한 부분 줄이기 */
#bo_v.jm-reddit-view .jm-post-content {
    min-height: 260px !important;
    padding: 28px 0 24px !important;
    font-size: 16px !important;
    line-height: 1.9 !important;
    font-weight: 500 !important;
}

/* 댓글 영역 위 여백 줄이기 */
#bo_v.jm-reddit-view .jm-comment-area {
    padding-top: 22px !important;
}

/* 댓글 입력 박스 조금 더 이미지처럼 */
#bo_v.jm-reddit-view #bo_vc_w {
    margin-top: 18px !important;
    padding: 18px !important;
    border: 1px solid #dfe8f4 !important;
    border-radius: 16px !important;
    background: #fff !important;
}

#bo_v.jm-reddit-view #bo_vc_w textarea,
#bo_v.jm-reddit-view #wr_content {
    min-height: 105px !important;
    height: 105px !important;
    border-radius: 12px !important;
}
/* =====================================================
   NUNCHIS VIEW - English Community Style
===================================================== */

#bo_v.n-view-wrap {
    max-width: 1120px;
    margin: 28px auto 70px;
    padding: 0 18px;
    color: #10213f;
}

.n-view-card {
    background: #ffffff;
    border: 1px solid #dbe5f2;
    border-radius: 24px;
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.07);
    overflow: hidden;
}

/* top */

.n-view-top {
    height: 76px;
    padding: 0 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.n-back-btn {
    width: 36px;
    height: 36px;
    border-radius: 999px;
    color: #142848;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
}

.n-back-btn:hover {
    background: #f3f6fb;
}

.n-more-menu {
    position: relative;
}

.n-more-btn {
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
    color: #142848;
    font-size: 22px;
    cursor: pointer;
}

.n-more-dropdown {
    display: none;
    position: absolute;
    right: 0;
    top: 38px;
    width: 140px;
    padding: 7px;
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid #e3e9f2;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.13);
    z-index: 20;
}

.n-more-menu:hover .n-more-dropdown,
.n-more-menu:focus-within .n-more-dropdown {
    display: block;
}

.n-more-dropdown a {
    display: block;
    padding: 10px 11px;
    border-radius: 10px;
    color: #263957;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
}

.n-more-dropdown a:hover {
    background: #f3f6fb;
}

/* post head */

.n-post-head {
    padding: 0 74px 24px;
}

.n-view-category {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 13px;
}

.n-cat-code {
    height: 26px;
    min-width: 34px;
    padding: 0 10px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.n-cat-label {
    color: #ff5a1f;
    font-size: 13px;
    font-weight: 850;
}

.n-cat-code.cat-le {
    background: #fff3e9;
    border: 1px solid #ffd3b2;
    color: #ff5a1f;
}

.n-cat-code.cat-td {
    background: #fff4eb;
    border: 1px solid #ffcfb4;
    color: #f06423;
}

.n-cat-code.cat-we {
    background: #eef6ff;
    border: 1px solid #bddbff;
    color: #2f75d6;
}

.n-cat-code.cat-ta {
    background: #f1f8f4;
    border: 1px solid #bfe5cb;
    color: #2f9252;
}

.n-cat-code.cat-notice {
    background: #fff5ec;
    border: 1px solid #ffb98e;
    color: #ff5a1f;
}

.n-cat-code.cat-default {
    background: #f3f6fb;
    border: 1px solid #dce5f0;
    color: #53637d;
}

/* title */

.n-view-title {
    margin: 0 0 22px;
    color: #10213f;
    font-size: 34px;
    font-weight: 500;
    letter-spacing: -0.9px;
    line-height: 1.32;
}

/* meta */

.n-post-meta-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    color: #66758e;
    font-size: 14px;
    font-weight: 640;
}

.n-author-box {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.n-author-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(135deg, #ff782c 0%, #ff4f16 100%);
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 950;
    box-shadow: 0 7px 16px rgba(255, 90, 31, 0.2);
    flex: 0 0 42px;
}

.n-author-avatar img,
.n-author-avatar .profile_img,
.n-author-avatar .profile_img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}

.n-author-name {
    color: #10213f;
    font-size: 15px;
    font-weight: 850;
    white-space: nowrap;
}

.n-meta-dot {
    color: #a9b4c4;
}

.n-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #66758e;
    white-space: nowrap;
}

.n-meta-item i {
    color: #52657f;
    font-size: 16px;
}

/* content */

.n-view-content {
    padding: 24px 74px 28px;
    color: #1f334f;
    font-size: 17px;
    font-weight: 430;
    line-height: 1.86;
    word-break: break-word;
}

.n-view-content p {
    margin: 0 0 17px;
}

.n-view-content img {
    max-width: 100%;
    height: auto;
    border-radius: 16px;
}

/* actions */

.n-view-actions {
    padding: 0 74px 28px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 28px;
}

.n-action-link,
.n-action-pill {
    color: #344963;
    border: 0;
    background: transparent;
    font-size: 14px;
    font-weight: 720;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.n-action-link i,
.n-action-pill i {
    font-size: 19px;
}

.n-action-pill {
    min-height: 40px;
    padding: 0 18px;
    border-radius: 999px;
    border: 1px solid #dbe5f2;
    background: #ffffff;
}

.n-action-pill b {
    color: #ff5a1f;
    font-weight: 900;
}

.n-action-link:hover,
.n-action-pill:hover {
    color: #071a44;
}

/* comments */

.n-comments-shell {
    border-top: 1px solid #edf1f6;
    background: #ffffff;
    padding: 24px 74px 34px;
}

.n-comments-title-row {
    margin-bottom: 18px;
}

.n-comments-title {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #10213f;
}

.n-comments-title i {
    font-size: 20px;
}

.n-comments-title strong {
    font-size: 20px;
    font-weight: 900;
}

.n-comments-title span {
    min-width: 25px;
    height: 25px;
    padding: 0 8px;
    border-radius: 999px;
    background: #edf3fb;
    color: #52657f;
    font-size: 13px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* 기존 댓글 스킨 보정 */

#bo_vc {
    margin: 0 !important;
    padding: 0 !important;
}

#bo_vc h2,
#bo_vc_empty {
    display: none !important;
}

/* 댓글 목록 */
#bo_vc article,
#bo_vc .cmt_item {
    border: 0 !important;
    border-bottom: 1px solid #edf1f6 !important;
    border-radius: 0 !important;
    padding: 17px 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
}

/* 댓글 작성 */
#bo_vc_w {
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

#bo_vc_w h2 {
    display: block !important;
    margin: 0 0 9px !important;
    color: #10213f !important;
    font-size: 15px !important;
    font-weight: 850 !important;
}

#bo_vc_w textarea,
#wr_content {
    width: 100% !important;
    min-height: 86px !important;
    border: 1px solid #dbe5f2 !important;
    border-radius: 11px !important;
    padding: 14px 16px !important;
    color: #263957 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    outline: none !important;
    resize: vertical !important;
    background: #ffffff !important;
}

#bo_vc_w textarea:focus,
#wr_content:focus {
    border-color: #b7c7db !important;
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.035) !important;
}

#bo_vc_w .btn_submit,
#bo_vc_w button[type="submit"] {
    height: 42px !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #071a44 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}

#bo_vc_w .btn_confirm,
#bo_vc_w .cmt_btn {
    text-align: right !important;
}

#bo_vc_w input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
}

/* 한글 문구가 남는 경우 최대한 숨김 */
#bo_vc_w label[for="wr_secret"] {
    color: #52657f !important;
}

/* mobile */

@media (max-width: 768px) {
    #bo_v.n-view-wrap {
        margin: 16px auto 44px;
        padding: 0 12px;
    }

    .n-view-card {
        border-radius: 20px;
    }

    .n-view-top {
        height: 58px;
        padding: 0 20px;
    }

    .n-post-head,
    .n-view-content,
    .n-view-actions,
    .n-comments-shell {
        padding-left: 22px;
        padding-right: 22px;
    }

    .n-view-title {
        font-size: 25px;
        line-height: 1.4;
    }

    .n-post-meta-line {
        gap: 9px;
        font-size: 13px;
    }

    .n-view-content {
        font-size: 15px;
        line-height: 1.78;
    }

    .n-view-actions {
        justify-content: flex-start;
        gap: 16px;
        flex-wrap: wrap;
    }

    .n-action-pill {
        min-height: 36px;
        padding: 0 14px;
    }
}
/* ==============================
   JOIN ME VIEW - FINAL BALANCE
============================== */

.jm-view-page {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 0 48px;
    color: #10244a;
    font-family: inherit;
}

/* 기존 JOIN ME 상단 고정 */
.jm-fixed-head {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 24px 4px 28px;
    margin-bottom: 24px;
    border-bottom: 1px solid #dbe5f1;
}

.jm-fixed-head h1 {
    margin: 0;
    font-size: 48px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -1.8px;
    color: #0e244d;
}

.jm-fixed-head p {
    margin: 13px 0 0;
    font-size: 16px;
    font-weight: 500;
    color: #51637f;
}

.jm-fixed-mascot {
    width: 92px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.jm-fixed-mascot img {
    max-width: 82px;
    height: auto;
    display: block;
}

/* 게시글 보기 카드 */
.jm-view-card {
    width: 100%;
    background: #fff;
    border: 1px solid #d7e3f1;
    border-radius: 18px;
    box-shadow: 0 12px 32px rgba(17, 39, 72, 0.06);
    padding: 28px 34px 26px;
    box-sizing: border-box;
}

.jm-view-top {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid #dbe5f1;
}

.jm-view-title-area {
    min-width: 0;
    flex: 1;
}

.jm-view-title-area h2 {
    margin: 0 0 18px;
    font-size: 24px;
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: -0.4px;
    color: #10244a;
}

.jm-view-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 14px;
    color: #60718c;
}

.jm-author-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #edf4ff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}

.jm-author-name {
    font-weight: 500;
    color: #10244a;
}

.jm-location-pill {
    height: 25px;
    padding: 0 10px;
    border-radius: 8px;
    background: #eaf2ff;
    color: #245da8;
    display: inline-flex;
    align-items: center;
    font-size: 13px;
    font-weight: 500;
}

.jm-date-text {
    color: #60718c;
}

.jm-view-stat {
    display: flex;
    align-items: center;
    gap: 18px;
    white-space: nowrap;
    font-size: 14px;
    color: #243957;
}

.jm-view-stat i {
    margin-right: 5px;
    color: #0e244d;
}

.jm-view-stat button {
    border: 0;
    background: transparent;
    color: #10244a;
    cursor: pointer;
    font-size: 16px;
}

/* 본문 */
.jm-view-content {
    min-height: 160px;
    padding: 24px 0 30px;
    border-bottom: 1px solid #dbe5f1;
    font-size: 15px;
    line-height: 1.85;
    font-weight: 400;
    color: #223653;
}

.jm-view-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
}

.jm-view-content p {
    margin: 0 0 14px;
}

.jm-view-link a {
    color: #216bdc;
    text-decoration: underline;
}

/* 버튼 */
.jm-view-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    padding: 24px 0;
}

.jm-action-btn {
    min-width: 124px;
    height: 42px;
    border: 1px solid #d4e1f0;
    border-radius: 9px;
    background: #fff;
    color: #10244a;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    box-sizing: border-box;
}

.jm-action-btn:hover {
    background: #f7fbff;
    border-color: #9fbbe1;
}

.jm-action-btn.report {
    color: #ff5b1a;
    border-color: #ffd5c4;
}

.jm-action-btn.report:hover {
    background: #fff6f1;
}

/* 댓글 */
.jm-comment-box {
    border: 1px solid #d7e3f1;
    border-radius: 14px;
    padding: 20px;
    background: #fff;
}

.jm-comment-title {
    margin-bottom: 14px;
    font-size: 16px;
    font-weight: 500;
    color: #10244a;
}

.jm-comment-title span {
    margin-left: 6px;
    color: #647692;
    font-weight: 400;
}

/* 그누보드 댓글 기본 스타일 보정 */
.jm-comment-box #bo_vc,
.jm-comment-box #bo_vc_w {
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.jm-comment-box textarea,
.jm-comment-box input[type="text"] {
    border: 1px solid #d7e3f1 !important;
    border-radius: 10px !important;
}

.jm-comment-box .btn_submit,
.jm-comment-box input[type="submit"] {
    background: #0e244d !important;
    border-color: #0e244d !important;
    color: #fff !important;
    border-radius: 9px !important;
}

/* All Posts */
.jm-all-posts {
    width: 100%;
    margin-top: 28px;
}

.jm-all-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px 12px;
}

.jm-all-top h3 {
    margin: 0;
    font-size: 19px;
    font-weight: 600;
    color: #10244a;
}

.jm-write-small {
    height: 40px;
    padding: 0 18px;
    border-radius: 11px;
    background: #ff651f;
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 8px 18px rgba(255, 101, 31, 0.22);
}

.jm-list-card {
    width: 100%;
    background: #fff;
    border: 1px solid #d7e3f1;
    border-radius: 18px;
    box-shadow: 0 12px 32px rgba(17, 39, 72, 0.06);
    padding: 14px 26px 22px;
    box-sizing: border-box;
    overflow: hidden;
}

/* 테이블 */
.jm-view-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    font-size: 14px;
    color: #10244a;
}

.jm-view-table th {
    height: 48px;
    background: #f3f7fc;
    color: #5b6d86;
    font-size: 13px;
    font-weight: 600;
    text-align: left;
    border-bottom: 1px solid #dbe5f1;
}

.jm-view-table th:first-child {
    border-radius: 10px 0 0 10px;
}

.jm-view-table th:last-child {
    border-radius: 0 10px 10px 0;
}

.jm-view-table td {
    height: 56px;
    border-bottom: 1px solid #dbe5f1;
    vertical-align: middle;
    font-size: 14px;
    font-weight: 500;
}

.jm-view-table tr.active td {
    background: #eef6ff;
    border-top: 1px solid #bcd8ff;
    border-bottom: 1px solid #bcd8ff;
}

.jm-view-table tr.active td:first-child {
    border-left: 1px solid #bcd8ff;
    border-radius: 9px 0 0 9px;
}

.jm-view-table tr.active td:last-child {
    border-right: 1px solid #bcd8ff;
    border-radius: 0 9px 9px 0;
}

.jm-view-table input[type="checkbox"] {
    width: 16px;
    height: 16px;
}

.jm-view-table .check,
.jm-view-table .num,
.jm-view-table .cat,
.jm-view-table .hit,
.jm-view-table .posted {
    text-align: center;
}

.jm-view-table .subject a {
    display: block;
    color: #10244a;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.jm-view-table .subject a:hover {
    color: #1e66d0;
}

.jm-view-table .loc,
.jm-view-table .time {
    color: #60718c;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.jm-view-table .loc i {
    color: #ff5b1a;
    margin-right: 6px;
}

.jm-view-table .time i {
    color: #2b68ad;
    margin-right: 6px;
}

.jm-view-table .writer {
    white-space: nowrap;
}

.jm-mini-face {
    display: inline-flex;
    width: 24px;
    height: 24px;
    margin-right: 6px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #eef4fb;
    font-size: 13px;
    vertical-align: middle;
}

/* 카테고리 뱃지 */
.jm-cat {
    min-width: 46px;
    height: 30px;
    padding: 0 10px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 600;
    box-sizing: border-box;
}

.jm-cat.empty {
    color: #60718c;
    background: #f4f8fc;
    border: 1px solid #d7e3f1;
}

.jm-cat.notice {
    color: #174c99;
    background: #eef6ff;
    border: 1px solid #a9caff;
}

.jm-cat.today {
    color: #ff5b1a;
    background: #fff7f2;
    border: 1px solid #ffb994;
}

.jm-cat.weekend {
    color: #1f72e8;
    background: #f0f7ff;
    border: 1px solid #a9ceff;
}

.jm-cat.language {
    color: #7656d8;
    background: #f6f2ff;
    border: 1px solid #c8b8ff;
}

.jm-cat.tagalong {
    color: #168a5b;
    background: #eefaf4;
    border: 1px solid #9bdcbc;
}

.jm-empty {
    height: 120px !important;
    text-align: center;
    color: #7b8aa0;
}

/* 하단 */
.jm-list-bottom {
    display: grid;
    grid-template-columns: 170px 1fr 320px;
    align-items: center;
    gap: 16px;
    padding-top: 22px;
}

.jm-page-select {
    height: 46px;
    padding: 0 16px;
    border: 1px solid #d7e3f1;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    color: #334764;
    font-size: 14px;
    font-weight: 500;
}

.jm-view-page-nav {
    text-align: center;
}

.jm-view-page-nav a {
    width: 30px;
    height: 30px;
    margin: 0 3px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f3f6fa;
    color: #334764;
    font-size: 13px;
    text-decoration: none;
}

.jm-view-page-nav a.on {
    background: #172942;
    color: #fff;
}

.jm-bottom-search {
    height: 46px;
    border: 1px solid #d7e3f1;
    border-radius: 12px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #fff;
}

.jm-bottom-search input {
    flex: 1;
    height: 100%;
    border: 0;
    padding: 0 14px;
    outline: none;
    font-size: 14px;
    color: #10244a;
}

.jm-bottom-search button {
    width: 48px;
    height: 100%;
    border: 0;
    background: #fff;
    color: #0e244d;
    font-size: 18px;
    cursor: pointer;
}

/* 모바일 */
@media (max-width: 900px) {
    .jm-fixed-head h1 {
        font-size: 38px;
    }

    .jm-fixed-mascot {
        width: 70px;
    }

    .jm-fixed-mascot img {
        max-width: 64px;
    }

    .jm-view-card,
    .jm-list-card {
        padding: 22px 18px;
    }

    .jm-view-top {
        flex-direction: column;
    }

    .jm-view-stat {
        justify-content: flex-start;
    }

    .jm-view-actions {
        flex-wrap: wrap;
    }

    .jm-action-btn {
        flex: 1 1 42%;
    }

    .jm-list-card {
        overflow-x: auto;
    }

    .jm-view-table {
        min-width: 900px;
    }

    .jm-list-bottom {
        grid-template-columns: 1fr;
    }
}
/* =========================================
   JOIN ME VIEW PAGE - MATCH CURRENT LIST
   view.skin.php 전용
========================================= */

/* 기본 그누보드 제목 숨김 */
#container_title {
    display: none !important;
}

/* view 전체 폭: list.skin.php의 width 기준 그대로 */
#bo_v.jm-view-wrap {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 50px !important;
    background: transparent !important;
    box-sizing: border-box !important;
    font-family: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif !important;
    color: #0b214d !important;
}

/* 상세 카드 */
.jm-view-card-final {
    width: 100% !important;
    margin: 0 0 28px !important;
    padding: 28px 34px 26px !important;
    background: #fff !important;
    border: 1px solid #dce6f1 !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 28px rgba(15, 35, 71, 0.04) !important;
    box-sizing: border-box !important;
}

/* 상세 상단 */
.jm-view-card-head {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 24px !important;
    padding: 0 0 22px !important;
    border-bottom: 1px solid #e5edf7 !important;
}

.jm-view-title-box {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

.jm-view-title {
    margin: 0 0 18px !important;
    color: #0b214d !important;
    font-size: 24px !important;
    line-height: 1.35 !important;
    font-weight: 600 !important;
    letter-spacing: -0.02em !important;
    word-break: break-word !important;
}

.jm-view-meta-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    color: #5b6d87 !important;
    font-size: 13px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

.jm-view-avatar {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    flex: 0 0 28px !important;
    overflow: hidden !important;
    border: 1px solid #dce6f1 !important;
    border-radius: 50% !important;
    background: #f5f8fc !important;
}

.jm-view-avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}

.jm-view-author {
    color: #263753 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
}

.jm-view-cate-pill {
    min-width: 46px !important;
    height: 28px !important;
    padding: 0 10px !important;
    border-radius: 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
}

.jm-view-cate-pill.jm-badge-general {
    color: #64758d !important;
    background: #f4f8fc !important;
    border: 1px solid #dce6f1 !important;
}

.jm-view-cate-pill.jm-badge-notice {
    color: #174c99 !important;
    background: #eef6ff !important;
    border: 1px solid #a9caff !important;
}

.jm-view-cate-pill.jm-badge-today {
    color: #ff5b1a !important;
    background: #fff7f2 !important;
    border: 1px solid #ffb994 !important;
}

.jm-view-cate-pill.jm-badge-weekend {
    color: #1f72e8 !important;
    background: #f0f7ff !important;
    border: 1px solid #a9ceff !important;
}

.jm-view-cate-pill.jm-badge-language {
    color: #7656d8 !important;
    background: #f6f2ff !important;
    border: 1px solid #c8b8ff !important;
}

.jm-view-cate-pill.jm-badge-tagalong {
    color: #168a5b !important;
    background: #eefaf4 !important;
    border: 1px solid #9bdcbc !important;
}

.jm-view-location,
.jm-view-meettime {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #64758d !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.jm-view-location iconify-icon {
    color: #ff6500 !important;
}

.jm-view-meettime iconify-icon {
    color: #416b9f !important;
}

/* 오른쪽 조회 / 댓글 */
.jm-view-side-info {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 16px !important;
    color: #0b214d !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.jm-view-side-info > span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}

.jm-view-more-wrap {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
}

.jm-view-more-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 30px !important;
    height: 30px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #0b214d !important;
    cursor: pointer !important;
}

.jm-view-more-menu {
    display: none !important;
    position: absolute !important;
    top: 34px !important;
    right: 0 !important;
    min-width: 92px !important;
    padding: 6px !important;
    border: 1px solid #dce6f1 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 10px 26px rgba(15, 35, 71, 0.12) !important;
    z-index: 20 !important;
}

.jm-view-more-wrap.open .jm-view-more-menu {
    display: block !important;
}

.jm-view-more-menu a {
    display: block !important;
    padding: 9px 10px !important;
    color: #273852 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    border-radius: 7px !important;
}

.jm-view-more-menu a:hover {
    background: #f4f8fc !important;
    color: #ff6500 !important;
}

/* 본문 */
.jm-view-content-final {
    min-height: 175px !important;
    padding: 26px 0 32px !important;
    border-bottom: 1px solid #e5edf7 !important;
    color: #233551 !important;
    font-size: 15px !important;
    line-height: 1.85 !important;
    font-weight: 400 !important;
    word-break: break-word !important;
    box-sizing: border-box !important;
}

.jm-view-content-final p {
    margin: 0 0 14px !important;
}

.jm-view-content-final img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
}

.jm-view-content-final a,
.jm-view-link a {
    color: #1f66d1 !important;
    text-decoration: underline !important;
}

/* 첨부 파일 */
.jm-view-files {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 18px 0 0 !important;
}

.jm-view-file-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    width: fit-content !important;
    max-width: 100% !important;
    color: #32435f !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.jm-view-file-item:hover {
    color: #ff6500 !important;
}

/* 액션 버튼 */
.jm-view-action-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    padding: 24px 0 !important;
}

.jm-view-action-btn {
    min-width: 124px !important;
    height: 42px !important;
    padding: 0 18px !important;
    border: 1px solid #d4e1f0 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #0b214d !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

.jm-view-action-btn:hover {
    background: #f7fbff !important;
    border-color: #a9c3ea !important;
    color: #0b214d !important;
}

.jm-view-action-btn.report {
    color: #ff5b1a !important;
    border-color: #ffd5c4 !important;
}

.jm-view-action-btn.report:hover {
    background: #fff6f1 !important;
}

/* 댓글 박스 */
.jm-view-comments {
    border: 1px solid #dce6f1 !important;
    border-radius: 16px !important;
    background: #fff !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

.jm-view-comments-head {
    margin: 0 0 14px !important;
    color: #0b214d !important;
    font-size: 16px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

.jm-view-comments-head span {
    margin-left: 7px !important;
    color: #64758d !important;
    font-weight: 500 !important;
}

/* 기존 그누보드 댓글 스타일 보정 */
.jm-view-comments-body #bo_vc,
.jm-view-comments-body #bo_vc_w,
.jm-view-comments-body .bo_vc_w {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.jm-view-comments-body .cmt_btn {
    display: none !important;
}

.jm-view-comments-body #bo_vc_empty {
    margin: 0 !important;
    padding: 46px 0 !important;
    border: 1px solid #e5edf7 !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #8290a4 !important;
    font-size: 13px !important;
    text-align: center !important;
}

.jm-view-comments-body textarea {
    width: 100% !important;
    min-height: 82px !important;
    border: 1px solid #dce6f1 !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: #33445f !important;
    font-size: 13px !important;
    resize: vertical !important;
}

.jm-view-comments-body input[type="text"],
.jm-view-comments-body input[type="password"] {
    border: 1px solid #dce6f1 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #33445f !important;
}

.jm-view-comments-body .btn_submit,
.jm-view-comments-body input[type="submit"] {
    min-width: 92px !important;
    height: 40px !important;
    border: 1px solid #0b214d !important;
    border-radius: 10px !important;
    background: #0b214d !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

/* All Posts 영역 */
.jm-view-all-posts {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.jm-view-all-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 0 0 12px !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;
}

.jm-view-all-head h2 {
    margin: 0 !important;
    color: #0b214d !important;
    font-size: 19px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
}

.jm-view-write-btn {
    margin: 0 !important;
}

/* view 안의 All Posts는 상단 카테고리 메뉴 없이 바로 테이블 */
#bo_v #bo_list.jm-view-board-wrap {
    margin: 0 !important;
    padding: 16px 24px 22px !important;
}

/* 현재 보고 있는 글 강조 */
#bo_v #bo_list .jm-row.current-view-post td {
    background: #eef6ff !important;
    border-top: 1px solid #bcd8ff !important;
    border-bottom: 1px solid #bcd8ff !important;
}

#bo_v #bo_list .jm-row.current-view-post td:first-child {
    border-left: 1px solid #bcd8ff !important;
    border-radius: 9px 0 0 9px !important;
}

#bo_v #bo_list .jm-row.current-view-post td:last-child {
    border-right: 1px solid #bcd8ff !important;
    border-radius: 0 9px 9px 0 !important;
}

#bo_v #bo_list .jm-title-link.current {
    color: #0b5fd7 !important;
}

/* view 안의 All Posts 하단 페이지 */
#bo_v #bo_list .jm-page .pg_current,
#bo_v #bo_list .jm-page strong {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 28px !important;
    height: 28px !important;
    margin: 0 3px !important;
    padding: 0 8px !important;
    border-radius: 8px !important;
    background: #172942 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

#bo_v #bo_list .jm-page .pg_page,
#bo_v #bo_list .jm-page a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 28px !important;
    height: 28px !important;
    margin: 0 3px !important;
    padding: 0 8px !important;
    border-radius: 8px !important;
    background: #f3f6fa !important;
    color: #33445f !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

#bo_v #bo_list .jm-page a:hover {
    background: #e8f0fb !important;
    color: #0b214d !important;
}

/* view 화면에서는 중복 여백 최소화 */
#bo_v #bo_list .jm-table-wrap {
    margin: 0 !important;
}

#bo_v #bo_list .jm-bottom {
    margin-top: 18px !important;
}

/* 반응형 */
@media (max-width: 900px) {
    .jm-view-card-final {
        padding: 22px 18px 22px !important;
        border-radius: 18px !important;
    }

    .jm-view-card-head {
        flex-direction: column !important;
        gap: 14px !important;
    }

    .jm-view-side-info {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }

    .jm-view-action-row {
        gap: 10px !important;
    }

    .jm-view-action-btn {
        flex: 1 1 42% !important;
        min-width: 0 !important;
    }

    #bo_v #bo_list.jm-view-board-wrap {
        padding: 15px 16px 20px !important;
        overflow-x: auto !important;
    }

    #bo_v #bo_list .jm-table {
        min-width: 760px !important;
    }
}

@media (max-width: 640px) {
    .jm-view-title {
        font-size: 21px !important;
    }

    .jm-view-card-final {
        padding: 18px 14px !important;
        border-radius: 16px !important;
    }

    .jm-view-content-final {
        min-height: 130px !important;
        font-size: 14px !important;
    }

    .jm-view-comments {
        padding: 15px !important;
    }

    .jm-view-all-head {
        padding: 0 4px 10px !important;
    }

    .jm-view-all-head h2 {
        font-size: 18px !important;
    }

    .jm-view-write-btn {
        min-width: 78px !important;
        height: 39px !important;
        padding: 0 12px !important;
    }
}
/* ==================================================
   JOIN ME VIEW PAGE - REFINED FINAL
   view.skin.php 전용
================================================== */

/* 기본 view 영역 */
#bo_v.jm-view-wrap {
  width: 100% !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
  font-family: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif !important;
}

/* 게시글 보기 카드 */
.jm-view-card {
  width: 100% !important;
  margin: 0 !important;
  padding: 30px 38px 28px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15, 35, 71, 0.04) !important;
  box-sizing: border-box !important;
}

/* 게시글 상단 */
.jm-view-card-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 26px !important;
  padding: 0 0 24px !important;
  border-bottom: 1px solid #e1e9f3 !important;
}

.jm-view-main-info {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.jm-view-subject {
  margin: 0 0 20px !important;
  color: #0b214d !important;
  font-size: 25px !important;
  line-height: 1.38 !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  word-break: break-word !important;
}

/* 메타 정보 */
.jm-view-meta {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 11px !important;
  color: #60718c !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

.jm-view-avatar {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  flex: 0 0 30px !important;
  overflow: hidden !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 50% !important;
  background: #f5f8fc !important;
}

.jm-view-avatar img,
.jm-view-avatar .profile_img,
.jm-view-avatar .profile_img img {
  width: 100% !important;
  height: 100% !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.jm-view-author {
  color: #0b214d !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

/* 공지 네모 제거: 글자만 */
.jm-view-category-text {
  display: inline-flex !important;
  align-items: center !important;
  color: #1f72e8 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

.jm-view-meta-item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  color: #60718c !important;
  white-space: nowrap !important;
}

.jm-view-meta-location iconify-icon {
  color: #ff5b1a !important;
}

.jm-view-meta-date iconify-icon {
  color: #2b68ad !important;
}

/* 우측 조회/댓글 */
.jm-view-side-info {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 18px !important;
  padding-top: 47px !important;
  color: #243957 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
}

.jm-view-side-info span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.jm-view-side-info iconify-icon {
  color: #0b214d !important;
}

.jm-view-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  background: transparent !important;
  color: #0b214d !important;
  cursor: pointer !important;
}

/* 본문 영역 넓게 */
.jm-view-content-wrap {
  min-height: 260px !important;
  height: auto !important;
  padding: 30px 0 34px !important;
  margin: 0 !important;
  border-bottom: 1px solid #e1e9f3 !important;
  color: #223653 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  font-weight: 400 !important;
  word-break: break-word !important;
  box-sizing: border-box !important;
}

.jm-view-content-inner {
  width: 100% !important;
  max-width: none !important;
  min-height: 200px !important;
}

.jm-view-content-wrap p {
  margin: 0 0 15px !important;
}

.jm-view-content-wrap img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 12px !important;
}

.jm-view-link {
  margin: 18px 0 0 !important;
}

.jm-view-link a {
  color: #216bdc !important;
  text-decoration: underline !important;
}

/* 액션 버튼 */
.jm-view-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  padding: 26px 0 !important;
}

.jm-view-action-btn {
  min-width: 126px !important;
  height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid #d4e1f0 !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: #0b214d !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: all 0.15s ease !important;
}

.jm-view-action-btn:hover {
  background: #f7fbff !important;
  border-color: #9fbbe1 !important;
  text-decoration: none !important;
}

.jm-report-btn {
  color: #ff5b1a !important;
  border-color: #ffd5c4 !important;
}

.jm-report-btn:hover {
  background: #fff6f1 !important;
}

/* 댓글 영역 외국인 스타일 */
.jm-view-comments {
  padding: 20px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

.jm-view-comments-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 16px !important;
}

.jm-view-comments-title {
  margin: 0 !important;
  color: #0b214d !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
}

.jm-view-comments-title span {
  margin-left: 7px !important;
  color: #647692 !important;
  font-weight: 400 !important;
}

.jm-view-comments-sort {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: #61728d !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.jm-comment-empty-state {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 118px !important;
  margin-bottom: 16px !important;
  border: 1px solid #e1e9f3 !important;
  border-radius: 13px !important;
  background: #fbfdff !important;
  color: #8492a8 !important;
  text-align: center !important;
}

.jm-comment-empty-state iconify-icon {
  margin-bottom: 7px !important;
  color: #9aa8bc !important;
}

.jm-comment-empty-state p {
  margin: 0 0 4px !important;
  color: #647692 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.jm-comment-empty-state span {
  color: #8b99ad !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

/* 기존 댓글 스킨 강제 보정 */
.jm-view-comments-body {
  width: 100% !important;
}

.jm-view-comments-body #bo_vc,
.jm-view-comments-body #bo_vc_w,
.jm-view-comments-body .bo_vc_w {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.jm-view-comments-body #bo_vc_empty {
  display: none !important;
}

.jm-view-comments-body #fviewcomment,
.jm-view-comments-body #cloned_fviewcomment {
  margin: 0 !important;
  padding: 0 !important;
}

.jm-view-comments-body #fviewcomment h2,
.jm-view-comments-body #cloned_fviewcomment h2 {
  display: none !important;
}

.jm-view-comments-body .bo_vc_w {
  position: relative !important;
  margin: 0 !important;
}

.jm-view-comments-body textarea,
.jm-view-comments-body #wr_content {
  width: 100% !important;
  min-height: 88px !important;
  height: 88px !important;
  padding: 15px 16px !important;
  border: 1px solid #d7e3f1 !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #10244a !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  resize: vertical !important;
  box-sizing: border-box !important;
}

.jm-view-comments-body textarea::placeholder {
  color: #9aa8bc !important;
}

.jm-view-comments-body .btn_confirm,
.jm-view-comments-body .bo_vc_w .btn_confirm {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-top: 12px !important;
}

.jm-view-comments-body .secret_cm,
.jm-view-comments-body .secret_cm label {
  color: #647692 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.jm-view-comments-body .btn_submit,
.jm-view-comments-body input[type="submit"],
.jm-view-comments-body button[type="submit"] {
  min-width: 124px !important;
  height: 42px !important;
  padding: 0 18px !important;
  background: #0b214d !important;
  border: 1px solid #0b214d !important;
  border-radius: 10px !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 16px rgba(11, 33, 77, 0.12) !important;
}

.jm-view-comments-body .btn_close {
  min-width: 90px !important;
  height: 42px !important;
  border-radius: 10px !important;
}

/* All Posts */
.jm-view-all-section {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  font-family: "Pretendard", "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif !important;
}

.jm-view-all-title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 0 12px !important;
  padding: 0 12px !important;
  box-sizing: border-box !important;
}

.jm-view-all-title h3 {
  margin: 0 !important;
  color: #0b214d !important;
  font-size: 20px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
}

.jm-view-write-btn {
  height: 38px !important;
  padding: 0 16px !important;
  border-radius: 11px !important;
  font-size: 14px !important;
}

/* view 안의 All Posts 카드 */
#bo_list.jm-view-all-posts {
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 24px 22px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 20px !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(15, 35, 71, 0.04) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#bo_list.jm-view-all-posts .jm-table-wrap {
  width: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
}

/* All Posts 표 글자 굵기 조정 */
#bo_list.jm-view-all-posts .jm-table th {
  font-weight: 600 !important;
}

#bo_list.jm-view-all-posts .jm-table td {
  font-weight: 500 !important;
}

#bo_list.jm-view-all-posts .jm-title-link,
#bo_list.jm-view-all-posts .jm-subject-text {
  font-weight: 500 !important;
}

#bo_list.jm-view-all-posts .jm-title-link.current,
#bo_list.jm-view-all-posts .jm-row.jm-current-row .jm-title-link,
#bo_list.jm-view-all-posts .jm-row.jm-current-row .jm-subject-text {
  color: #0b4fd8 !important;
  font-weight: 500 !important;
}

/* All Posts 공지: 네모 약하게 또는 글자 중심 */
#bo_list.jm-view-all-posts .jm-category-pill.jm-badge-notice {
  min-width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #1f72e8 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

/* 현재 보고 있는 글 row 강조 */
#bo_list.jm-view-all-posts .jm-row.jm-current-row td {
  background: #eef6ff !important;
  border-top: 1px solid #bcd8ff !important;
  border-bottom: 1px solid #bcd8ff !important;
}

#bo_list.jm-view-all-posts .jm-row.jm-current-row td:first-child {
  border-left: 1px solid #bcd8ff !important;
  border-radius: 9px 0 0 9px !important;
}

#bo_list.jm-view-all-posts .jm-row.jm-current-row td:last-child {
  border-right: 1px solid #bcd8ff !important;
  border-radius: 0 9px 9px 0 !important;
}

/* 하단 pagination */
#bo_list.jm-view-all-posts .jm-view-page-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
}

#bo_list.jm-view-all-posts .jm-view-page-nav a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 7px !important;
  background: #f3f6fb !important;
  color: #34465f !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

#bo_list.jm-view-all-posts .jm-view-page-nav a.pg_current {
  background: #172942 !important;
  color: #fff !important;
}

/* 모바일 */
@media (max-width: 900px) {
  .jm-view-card {
    padding: 24px 20px 22px !important;
  }

  .jm-view-card-head {
    flex-direction: column !important;
    gap: 14px !important;
  }

  .jm-view-side-info {
    padding-top: 0 !important;
    justify-content: flex-start !important;
  }

  .jm-view-subject {
    font-size: 22px !important;
  }

  .jm-view-content-wrap {
    min-height: 220px !important;
  }

  .jm-view-action-btn {
    flex: 1 1 42% !important;
    min-width: 0 !important;
  }

  .jm-view-all-title {
    padding: 0 8px 12px !important;
  }

  #bo_list.jm-view-all-posts {
    padding: 16px 18px 20px !important;
    overflow-x: auto !important;
  }

  #bo_list.jm-view-all-posts .jm-table {
    min-width: 900px !important;
  }
}

@media (max-width: 640px) {
  .jm-view-card {
    border-radius: 16px !important;
    padding: 20px 15px 18px !important;
  }

  .jm-view-subject {
    font-size: 20px !important;
  }

  .jm-view-meta {
    gap: 8px !important;
    font-size: 13px !important;
  }

  .jm-view-side-info {
    gap: 12px !important;
    font-size: 13px !important;
  }

  .jm-view-content-wrap {
    min-height: 180px !important;
    padding: 24px 0 28px !important;
    font-size: 14px !important;
  }

  .jm-view-comments {
    padding: 16px !important;
  }

  .jm-comment-empty-state {
    min-height: 100px !important;
  }
}
/* ==================================================
   JOIN ME COMMENT FINAL - FOREIGN STYLE SAFE
================================================== */

.jm-view-comments {
  margin-top: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

.jm-view-comments-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 18px !important;
}

.jm-view-comments-title {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #0b214d !important;
  font-size: 21px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
}

.jm-view-comments-title em {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 28px !important;
  height: 28px !important;
  padding: 0 9px !important;
  border-radius: 999px !important;
  background: #eef3fa !important;
  color: #51647e !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 600 !important;
}

.jm-comment-write-area {
  display: block !important;
  width: 100% !important;
}

.jm-comment-write-area #bo_vc,
.jm-comment-write-area #bo_vc_w {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

/* 기존 댓글 저장용 textarea는 절대 화면에 보이지 않게 */
.jm-cmt-save,
textarea.jm-cmt-save,
#bo_vc textarea.jm-cmt-save {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
}

/* 댓글 리스트 */
.jm-cmt-list-wrap {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.jm-cmt-list {
  display: flex !important;
  flex-direction: column !important;
}

.jm-cmt-item {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 18px !important;
  padding: 0 0 18px !important;
  margin: 0 0 18px !important;
  border-bottom: 1px solid #e2e9f2 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

.jm-cmt-avatar,
.jm-cmt-write-avatar {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  overflow: hidden !important;
  border-radius: 50% !important;
  background: #f2f6fb !important;
  color: #0b214d !important;
}

.jm-cmt-avatar img,
.jm-cmt-write-avatar img,
.jm-cmt-avatar .profile_img img,
.jm-cmt-write-avatar .profile_img img {
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.jm-cmt-avatar iconify-icon,
.jm-cmt-write-avatar iconify-icon {
  color: #0b214d !important;
}

.jm-cmt-body {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.jm-cmt-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  width: 100% !important;
}

.jm-cmt-name-line {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
}

.jm-cmt-name,
.jm-cmt-name a {
  color: #10244a !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.jm-cmt-dot,
.jm-cmt-time {
  color: #76879f !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

.jm-cmt-menu-wrap {
  position: relative !important;
  flex: 0 0 auto !important;
}

.jm-cmt-more {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  background: transparent !important;
  color: #4d5d73 !important;
  cursor: pointer !important;
}

.jm-cmt-menu {
  display: none !important;
  position: absolute !important;
  top: 30px !important;
  right: 0 !important;
  min-width: 98px !important;
  padding: 6px !important;
  border: 1px solid #dce6f1 !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(15, 35, 71, 0.12) !important;
  z-index: 20 !important;
}

.jm-cmt-menu.is-open {
  display: block !important;
}

.jm-cmt-menu a,
.jm-cmt-menu button {
  display: block !important;
  width: 100% !important;
  padding: 8px 9px !important;
  border: 0 !important;
  background: transparent !important;
  color: #33445f !important;
  font-size: 13px !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.jm-cmt-menu a:hover,
.jm-cmt-menu button:hover {
  background: #f4f7fb !important;
  border-radius: 7px !important;
}

.jm-cmt-content {
  margin: 0 0 7px !important;
  color: #223653 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

.jm-cmt-content p {
  margin: 0 !important;
}

.jm-cmt-reply-btn {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #0b214d !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

.jm-cmt-form-slot {
  margin-top: 14px !important;
}

/* 댓글 없을 때 */
.jm-cmt-empty {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 112px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 1px solid #e1e9f3 !important;
  border-radius: 13px !important;
  background: #fbfdff !important;
  color: #8492a8 !important;
  text-align: center !important;
}

.jm-cmt-empty iconify-icon {
  margin-bottom: 7px !important;
  color: #9aa8bc !important;
}

.jm-cmt-empty p {
  margin: 0 0 5px !important;
  color: #647692 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.jm-cmt-empty span {
  color: #8b99ad !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

/* 댓글 작성 */
.jm-cmt-default-slot {
  margin-top: 0 !important;
}

.jm-cmt-write {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.jm-cmt-write-head {
  display: flex !important;
  align-items: flex-start !important;
  gap: 18px !important;
  width: 100% !important;
}

.jm-cmt-write-main {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.jm-cmt-write-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #273852 !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

.jm-cmt-guest-info {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 10px !important;
}

.jm-cmt-guest-info .frm_input {
  height: 38px !important;
  padding: 0 12px !important;
  border: 1px solid #d7e3f1 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #10244a !important;
  font-size: 13px !important;
}

.jm-cmt-textbox {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid #cfd9e8 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

.jm-cmt-textbox textarea#wr_content {
  display: block !important;
  width: 100% !important;
  height: 76px !important;
  min-height: 76px !important;
  padding: 15px 18px !important;
  border: 0 !important;
  outline: 0 !important;
  resize: vertical !important;
  background: transparent !important;
  color: #10244a !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  box-sizing: border-box !important;
}

.jm-cmt-textbox textarea#wr_content::placeholder {
  color: #8f9db0 !important;
}

.jm-cmt-textbox-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  padding: 0 12px 10px !important;
}

.jm-cmt-emoji,
.jm-cmt-cancel {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 34px !important;
  border: 0 !important;
  background: transparent !important;
  color: #60718c !important;
  font-size: 13px !important;
  cursor: pointer !important;
}

.jm-cmt-emoji {
  width: 34px !important;
}

.jm-cmt-submit {
  min-width: 126px !important;
  height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid #0b214d !important;
  border-radius: 8px !important;
  background: #0b214d !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 16px rgba(11, 33, 77, 0.12) !important;
}

.jm-cmt-submit:hover {
  background: #102a60 !important;
}

.jm-cmt-write-option {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin-top: 10px !important;
}

.jm-cmt-secret-check {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  color: #647692 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.jm-cmt-captcha {
  margin-left: auto !important;
}

/* 혹시 기존 한국어 placeholder가 남아도 보이지 않게 */
.jm-cmt-textbox textarea#wr_content::placeholder {
  content: "Write a reply..." !important;
}

@media (max-width: 640px) {
  .jm-cmt-item {
    gap: 12px !important;
  }

  .jm-cmt-write-head {
    gap: 12px !important;
  }

  .jm-cmt-guest-info {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .jm-cmt-textbox-bottom {
    flex-wrap: wrap !important;
  }

  .jm-cmt-submit {
    width: 100% !important;
  }
}
/* ==================================================
   JOIN ME FINAL PATCH - NOTICE / MENU / COMMENT
================================================== */

/* Notice: 배지 제거, 제목 앞 작은 텍스트 */
.jm-view-title-line {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  margin: 0 0 20px !important;
}

.jm-view-notice-text {
  display: inline-flex !important;
  align-items: center !important;
  color: #1f72e8 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.jm-view-subject {
  margin: 0 !important;
}

/* 기존 notice badge 숨김 */
.jm-view-top-labels,
.jm-view-post-label {
  display: none !important;
}

/* 글 상단 점3개 메뉴 - 흰 박스 버튼 제거 */
.jm-view-menu-wrap {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
}

.jm-view-menu {
  display: none !important;
  position: absolute !important;
  top: 28px !important;
  right: 0 !important;
  min-width: 86px !important;
  padding: 4px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: 30 !important;
}

.jm-view-menu.is-open {
  display: block !important;
}

.jm-view-menu a,
.jm-view-menu button {
  display: block !important;
  width: auto !important;
  min-width: 74px !important;
  height: auto !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #33445f !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.jm-view-menu a:hover,
.jm-view-menu button:hover {
  color: #0b214d !important;
  background: transparent !important;
  text-decoration: underline !important;
}

/* 댓글 메뉴 - 흰 박스 버튼 제거 */
.jm-cmt-menu {
  display: none !important;
  position: absolute !important;
  top: 24px !important;
  right: 0 !important;
  min-width: 76px !important;
  padding: 4px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: 40 !important;
}

.jm-cmt-menu.is-open {
  display: block !important;
}

.jm-cmt-menu a,
.jm-cmt-menu button,
.jm-cmt-menu-empty {
  display: block !important;
  width: auto !important;
  min-width: 72px !important;
  height: auto !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #33445f !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

.jm-cmt-menu a:hover,
.jm-cmt-menu button:hover {
  color: #0b214d !important;
  background: transparent !important;
  text-decoration: underline !important;
}

/* Comment 제목 */
.jm-cmt-write-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #0b214d !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.jm-comment-write-area #bo_vc_w h2,
.jm-comment-write-area .bo_vc_w h2 {
  color: transparent !important;
  font-size: 0 !important;
  height: auto !important;
  margin: 0 0 8px !important;
}

.jm-comment-write-area #bo_vc_w h2::before,
.jm-comment-write-area .bo_vc_w h2::before {
  content: "Comment" !important;
  display: block !important;
  color: #0b214d !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

/* textarea */
.jm-cmt-textbox textarea#wr_content,
.jm-comment-write-area textarea[name="wr_content"],
.jm-comment-write-area textarea#wr_content {
  display: block !important;
  width: 100% !important;
  min-height: 92px !important;
  padding: 15px 18px !important;
  border: 0 !important;
  outline: 0 !important;
  resize: vertical !important;
  background: transparent !important;
  color: #10244a !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  box-sizing: border-box !important;
}

.jm-cmt-textbox textarea#wr_content::placeholder,
.jm-comment-write-area textarea[name="wr_content"]::placeholder,
.jm-comment-write-area textarea#wr_content::placeholder {
  color: #8f9db0 !important;
}

/* 저장용 textarea 숨김 */
.jm-cmt-save,
textarea.jm-cmt-save,
#bo_vc textarea.jm-cmt-save {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -99999px !important;
}

/* 버튼 */
.jm-cmt-submit,
.jm-comment-write-area .btn_submit,
.jm-comment-write-area input[type="submit"],
.jm-comment-write-area button[type="submit"] {
  min-width: 126px !important;
  height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid #0b214d !important;
  border-radius: 8px !important;
  background: #0b214d !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 16px rgba(11, 33, 77, 0.12) !important;
}

.jm-cmt-submit:hover,
.jm-comment-write-area .btn_submit:hover,
.jm-comment-write-area input[type="submit"]:hover,
.jm-comment-write-area button[type="submit"]:hover {
  background: #102a60 !important;
}

/* toast */
.jm-toast-message {
  position: fixed !important;
  left: 50% !important;
  bottom: 34px !important;
  transform: translateX(-50%) translateY(16px) !important;
  z-index: 99999 !important;
  min-width: 180px !important;
  max-width: 320px !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  background: #0b214d !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  box-shadow: 0 12px 28px rgba(11, 33, 77, 0.2) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .22s ease, transform .22s ease !important;
}

.jm-toast-message.is-show {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
}
/* ==================================================
   JOIN ME TOTAL FINAL PATCH
   - Put this block at the very bottom of style.css
   - Fixes Notice position, dot menus, Meetup/Report, comment icon, comment form
================================================== */

/* Notice: badge 제거, 제목 앞 작은 텍스트 */
.jm-view-title-line {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  margin: 0 0 20px !important;
}

.jm-view-notice-text {
  display: inline-flex !important;
  align-items: center !important;
  color: #1f72e8 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.jm-view-subject {
  margin: 0 !important;
}

.jm-view-top-labels,
.jm-view-post-label,
.jm-view-meta .jm-view-category-text {
  display: none !important;
}

/* 하단 Meetup 버튼 */
.jm-view-actions-clean .jm-meetup-btn {
  color: #0b214d !important;
  border-color: #d4e1f0 !important;
  background: #fff !important;
}

.jm-view-actions-clean .jm-meetup-btn:hover {
  background: #f7fbff !important;
  border-color: #9fbbe1 !important;
  text-decoration: none !important;
}

/* 게시글 점3개 메뉴 */
.jm-view-menu-wrap {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
}

.jm-view-menu {
  display: none !important;
  position: absolute !important;
  top: 26px !important;
  right: 0 !important;
  min-width: 78px !important;
  padding: 4px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: 80 !important;
}

.jm-view-menu.is-open {
  display: block !important;
}

/* 댓글 점3개 메뉴 */
.jm-cmt-menu-wrap {
  position: relative !important;
}

.jm-cmt-menu {
  display: none !important;
  position: absolute !important;
  top: 24px !important;
  right: 0 !important;
  min-width: 78px !important;
  padding: 4px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  z-index: 90 !important;
}

.jm-cmt-menu.is-open {
  display: block !important;
}

/* 메뉴 안쪽 버튼/링크 흰 배경 제거 */
.jm-view-menu a,
.jm-view-menu button,
.jm-cmt-menu a,
.jm-cmt-menu button {
  display: block !important;
  width: auto !important;
  min-width: 72px !important;
  height: auto !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #33445f !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.jm-view-menu a:hover,
.jm-view-menu button:hover,
.jm-cmt-menu a:hover,
.jm-cmt-menu button:hover {
  color: #0b214d !important;
  background: transparent !important;
  text-decoration: underline !important;
}

/* 댓글 이름 앞 아이콘 */
.jm-cmt-name {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}

.jm-cmt-name-emoji {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #0b214d !important;
}

/* Comment 입력 제목 */
.jm-cmt-write-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #0b214d !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.jm-comment-write-area #bo_vc_w h2,
.jm-comment-write-area .bo_vc_w h2 {
  color: transparent !important;
  font-size: 0 !important;
  height: auto !important;
  margin: 0 0 8px !important;
}

.jm-comment-write-area #bo_vc_w h2::before,
.jm-comment-write-area .bo_vc_w h2::before {
  content: "Comment" !important;
  display: block !important;
  color: #0b214d !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

/* textarea */
.jm-cmt-textbox textarea#wr_content,
.jm-comment-write-area textarea[name="wr_content"],
.jm-comment-write-area textarea#wr_content {
  display: block !important;
  width: 100% !important;
  min-height: 92px !important;
  padding: 15px 18px !important;
  border: 0 !important;
  outline: 0 !important;
  resize: vertical !important;
  background: transparent !important;
  color: #10244a !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  box-sizing: border-box !important;
}

.jm-cmt-textbox textarea#wr_content::placeholder,
.jm-comment-write-area textarea[name="wr_content"]::placeholder,
.jm-comment-write-area textarea#wr_content::placeholder {
  color: #8f9db0 !important;
}

/* 저장용 textarea 숨김 */
.jm-cmt-save,
textarea.jm-cmt-save,
#bo_vc textarea.jm-cmt-save {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  left: -99999px !important;
}

/* 댓글 submit 버튼 */
.jm-cmt-submit,
.jm-comment-write-area .btn_submit,
.jm-comment-write-area input[type="submit"],
.jm-comment-write-area button[type="submit"] {
  min-width: 126px !important;
  height: 42px !important;
  padding: 0 18px !important;
  border: 1px solid #0b214d !important;
  border-radius: 8px !important;
  background: #0b214d !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 16px rgba(11, 33, 77, 0.12) !important;
}

.jm-cmt-submit:hover,
.jm-comment-write-area .btn_submit:hover,
.jm-comment-write-area input[type="submit"]:hover,
.jm-comment-write-area button[type="submit"]:hover {
  background: #102a60 !important;
}

/* Toast */
.jm-toast-message {
  position: fixed !important;
  left: 50% !important;
  bottom: 34px !important;
  transform: translateX(-50%) translateY(16px) !important;
  z-index: 99999 !important;
  min-width: 180px !important;
  max-width: 320px !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  background: #0b214d !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  box-shadow: 0 12px 28px rgba(11, 33, 77, 0.2) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .22s ease, transform .22s ease !important;
}

.jm-toast-message.is-show {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
}
/* =========================================================
   JOIN ME LIST — SIMPLE CATEGORY AND META
   하트 제거 / 댓글 숫자만 표시 / 카테고리 박스 제거
========================================================= */

/* 그누보드 인기글 하트 아이콘 완전 제거 */
#bo_list .jm-title-inner .fa-heart,
#bo_list .jm-title-inner .hot_icon,
#bo_list .jm-title-inner [class*="heart"] {
    display: none !important;
}

/* 댓글 아이콘 제거 */
#bo_list .jm-comment iconify-icon,
#bo_list .jm-comment svg,
#bo_list .jm-comment i {
    display: none !important;
}

/* 댓글 숫자만 자연스럽게 표시 */
#bo_list .jm-comment {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;

    min-width: 0 !important;
    width: auto !important;
    height: auto !important;

    margin: 0 0 0 5px !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    color: #657386 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

/* 카테고리 칸 정렬 */
#bo_list .jm-category-cell {
    padding-right: 8px !important;
    padding-left: 8px !important;
    text-align: center !important;
}

/* 카테고리 네모 박스 제거 */
#bo_list .jm-category-pill,
#bo_list .jm-badge-default,
#bo_list .jm-badge-general,
#bo_list .jm-badge-notice,
#bo_list .jm-badge-today,
#bo_list .jm-badge-weekend,
#bo_list .jm-badge-language,
#bo_list .jm-badge-tagalong {
    display: inline !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;

    background: transparent !important;
    box-shadow: none !important;

    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
    text-indent: 0 !important;
    white-space: nowrap !important;
}

/* 이전 CSS에서 만든 가상 글자와 장식 제거 */
#bo_list .jm-category-pill::before,
#bo_list .jm-category-pill::after,
#bo_list .jm-badge-default::before,
#bo_list .jm-badge-default::after,
#bo_list .jm-badge-general::before,
#bo_list .jm-badge-general::after,
#bo_list .jm-badge-notice::before,
#bo_list .jm-badge-notice::after,
#bo_list .jm-badge-today::before,
#bo_list .jm-badge-today::after,
#bo_list .jm-badge-weekend::before,
#bo_list .jm-badge-weekend::after,
#bo_list .jm-badge-language::before,
#bo_list .jm-badge-language::after,
#bo_list .jm-badge-tagalong::before,
#bo_list .jm-badge-tagalong::after {
    display: none !important;
    content: none !important;
}

/* 종류별 글자색만 유지 */
#bo_list .jm-badge-default,
#bo_list .jm-badge-general {
    color: #7b8796 !important;
}

#bo_list .jm-badge-notice {
    color: #263b5e !important;
}

#bo_list .jm-badge-today {
    color: #f05a1a !important;
}

#bo_list .jm-badge-weekend {
    color: #287fd8 !important;
}

#bo_list .jm-badge-language {
    color: #239557 !important;
}

#bo_list .jm-badge-tagalong {
    color: #6b58bf !important;
}
/* =========================================================
   JOIN ME HEADER — KOREA VIBES STYLE
========================================================= */

.jm-page-head {
    display: grid !important;
    grid-template-columns:
        66px
        minmax(220px, 1fr)
        minmax(340px, 480px) !important;
    align-items: center !important;
    gap: 18px !important;

    position: relative !important;
    width: 100% !important;
    min-height: 104px !important;

    margin: 0 0 2px !important;
    padding: 10px 8px !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* 기존 캐릭터 이미지 제거 */
.jm-page-head .jm-head-dust,
.jm-head-dust,
.jm-dust-character,
.jm-dust-wrap {
    display: none !important;
}

/* 헤더 가상 장식 제거 */
.jm-page-head::before,
.jm-page-head::after {
    display: none !important;
    content: none !important;
}

/* 왼쪽 말풍선 아이콘 */
.jm-page-head .jm-head-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 66px !important;
    height: 66px !important;

    color: #111111 !important;
    text-decoration: none !important;

    border: 1px solid #d9e2ed !important;
    border-radius: 15px !important;
    background: #ffffff !important;
    box-shadow:
        0 8px 22px
        rgba(17, 28, 50, 0.05) !important;
}

.jm-page-head .jm-head-icon:hover {
    color: #ff5a1f !important;
    border-color: #ffb697 !important;
}

/* 제목 영역 */
.jm-page-head .jm-page-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 6px !important;

    min-width: 0 !important;
    padding: 0 !important;
}

/* 제목 */
.jm-page-head .jm-page-title {
    margin: 0 !important;
    padding: 0 !important;

    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px !important;
}

.jm-page-head .jm-page-title a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;

    color: #171b22 !important;
    text-decoration: none !important;
}

.jm-page-head .jm-page-title a:hover {
    color: #ff5a1f !important;
}

.jm-page-head .jm-title-spark {
    color: #ffb020 !important;
    font-size: 22px !important;
    font-weight: 400 !important;
}

/* 설명 */
.jm-page-head .jm-page-subtitle {
    margin: 0 !important;
    padding: 0 !important;

    color: #5f6977 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* 상단 검색창 */
.jm-page-head .jm-head-search {
    display: flex !important;
    align-items: center !important;

    width: 100% !important;
    height: 46px !important;
    overflow: hidden !important;

    border: 1px solid #d7e0ea !important;
    border-radius: 11px !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.jm-page-head .jm-head-search input[type="text"] {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 16px !important;

    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    color: #202833 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}

.jm-page-head .jm-head-search input[type="text"]::placeholder {
    color: #8a96a6 !important;
    opacity: 1 !important;
}

.jm-page-head .jm-head-search button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 48px !important;

    width: 48px !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    color: #111827 !important;
    cursor: pointer !important;
}

.jm-page-head .jm-head-search button:hover {
    color: #ff5a1f !important;
}

/* 하단 검색창은 혹시 코드가 남아 있어도 숨김 */
#bo_list .jm-bottom-right,
#bo_list .jm-bottom-search {
    display: none !important;
}

/* 하단 페이지 수와 페이지 번호 정렬 */
#bo_list .jm-bottom {
    display: grid !important;
    grid-template-columns:
        1fr
        auto
        1fr !important;
    align-items: center !important;
}

#bo_list .jm-bottom-left {
    grid-column: 1 !important;
    justify-self: start !important;
}

#bo_list .jm-page {
    grid-column: 2 !important;
    justify-self: center !important;
}

/* 태블릿 */
@media (max-width: 900px) {
    .jm-page-head {
        grid-template-columns:
            58px
            minmax(0, 1fr) !important;
        gap: 14px !important;
    }

    .jm-page-head .jm-head-icon {
        width: 58px !important;
        height: 58px !important;
    }

    .jm-page-head .jm-head-search {
        grid-column: 1 / -1 !important;
        width: 100% !important;
    }
}

/* 모바일 */
@media (max-width: 600px) {
    .jm-page-head {
        grid-template-columns:
            50px
            minmax(0, 1fr) !important;
        gap: 11px !important;
        padding-right: 4px !important;
        padding-left: 4px !important;
    }

    .jm-page-head .jm-head-icon {
        width: 50px !important;
        height: 50px !important;
        border-radius: 13px !important;
    }

    .jm-page-head .jm-head-icon svg {
        width: 24px !important;
        height: 24px !important;
    }

    .jm-page-head .jm-page-title {
        font-size: 24px !important;
    }

    .jm-page-head .jm-title-spark {
        font-size: 18px !important;
    }

    .jm-page-head .jm-page-subtitle {
        overflow: hidden !important;
        font-size: 12px !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .jm-page-head .jm-head-search {
        height: 44px !important;
    }
}