@charset "utf-8";

/* 탭 */
.custom_tab_menu_wrap{display:flex;flex-wrap:wrap;gap:8px 12px;margin:16px 0 12px}
.custom_tab_menu{display:flex;flex-wrap:wrap;gap:8px 8px;width:100%}
.custom_tab_menu a{padding:8px 18px;background:#f6f8fc;border-radius:20px;color:#222;font-size:1.04em;text-decoration:none;border:1.5px solid #e3e7ec;font-weight:500;min-width:110px;margin-bottom:4px;box-sizing:border-box;text-align:center;white-space:nowrap;transition:background .17s,color .17s,border-color .17s}
.custom_tab_menu a.active,.custom_tab_menu a.selected{background:#1764be;color:#fff;font-weight:700;border-color:#1764be}

/* IndoWeb 모바일형 리스트 (2행) */
.iw_list ul{margin:0;padding:0}
.iw_item{list-style:none;border-bottom:1.5px solid #eef1f5;background:#fff}
.iw_link{display:block;padding:15px 14px 13px 14px;text-decoration:none;color:inherit}

/* 1행: 카테고리 + 제목 */
.iw_top{display:flex;align-items:center;gap:10px}
.iw_cat{
  background:#e5f2ff;color:#1780d6;font-size:.92em;font-weight:700;
  border-radius:4px;padding:2px 8px;line-height:20px;height:22px;
  display:inline-block;max-width:36vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.iw_subject{
  flex:1 1 auto;min-width:0;
  font-size:1.06em;font-weight:700;color:#24292f;line-height:1.35;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}

/* 2행: 작성자(좌) + 날짜/조회(우) */
.iw_bottom{display:flex;align-items:center;gap:10px;margin-top:6px}
.iw_author{font-size:.95em;color:#657489;line-height:1.2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.iw_meta_right{margin-left:auto;display:flex;align-items:center;gap:10px;color:#8a94a6;font-size:.92em}
.iw_date{min-width:66px;text-align:right}
.iw_view{min-width:46px;text-align:right}
.iw_view i{margin-right:4px}

/* 공지 강조 */
.bo_notice .iw_cat{background:#ffe8ef;color:#ff4f7c}
.bo_notice .iw_subject{color:#c90046}
.bo_notice .iw_item,.bo_notice{background:#fffbe6!important}

/* 빈 리스트 */
.empty_table{padding:12px 0;text-align:center;color:#bcbcbc}

/* 통합 페이징·합계 */
.iw_paging{margin:14px 0}
.iw_total{margin:4px 0 18px;color:#222}

/* 글쓰기 버튼(FAB) */
.iw_write_fab{
  position:fixed;right:16px;bottom:96px;z-index:9999;
  width:54px;height:54px;border-radius:50%;
  background:#1764be;color:#fff;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 16px rgba(0,0,0,.18);font-size:22px;text-decoration:none;
}
.iw_write_fab:active{transform:translateY(1px)}

/* 반응형 */
@media (max-width:600px){
  .iw_link{padding:14px 12px}
  .iw_subject{font-size:1.02em}
  .iw_meta_right{gap:8px;font-size:.9em}
}
/* 에디터 삽입 팝업 모바일 사이즈 제한 */
@media (max-width: 768px){
  .cheditor_modal,
  .cheditor-dialog,
  .ui-widget.ui-dialog{
    max-width:96vw !important;
    width:96vw !important;
    left:2vw !important;
  }
  .cheditor-dialog .ui-dialog-content{
    max-height:80vh !important;
    overflow:auto !important;
  }
}

/* ─────────────────────────────────────────
   본문/댓글/에디터 내 이미지·미디어가 넘치지 않도록
   ───────────────────────────────────────── */
#bo_v_atc img,
#bo_v_con img,
.bo_v_con img,
.bo_vc .cmt_contents img,
.view-img img,
.note-editor .note-editable img,
#wr_content img {
  max-width:100% !important;
  height:auto !important;
}

/* figure, table, iframe, video */
#bo_v_atc figure,
#bo_v_con figure,
.bo_v_con figure,
#bo_v_atc table,
#bo_v_con table,
.bo_v_con table {
  max-width:100%;
  overflow:auto;
}
#bo_v_atc iframe,
#bo_v_con iframe,
.bo_v_con iframe,
#bo_v_atc video,
#bo_v_con video,
.bo_v_con video {
  max-width:100% !important;
  width:100% !important;
  height:auto !important;
}

/* 인라인 width를 무력화 */
img[style*="width"],
img[width] {
  height:auto !important;
  max-width:100% !important;
}

/* 줄바꿈 정책 */
#bo_v_con,
.bo_v_con,
#wr_content,
.note-editor .note-editable,
.bo_vc .cmt_contents {
  word-break: normal;
  overflow-wrap: break-word;
}
#bo_v_atc,
#bo_v_con,
.bo_v_con,
.bo_vc .cmt_contents,
#bo_v_atc *,
#bo_v_con *,
.bo_v_con *,
.bo_vc .cmt_contents * {
  word-break: normal !important;
  overflow-wrap: break-word !important;
  word-wrap: break-word !important;
  white-space: normal !important;
}

/* 코드/미리서식 자동 줄바꿈 */
#bo_v_atc pre,
#bo_v_con pre,
.bo_v_con pre,
.bo_vc .cmt_contents pre {
  white-space: pre-wrap !important;
  word-break: break-word !important;
}

/* Summernote 모달 z-index */
.note-modal-backdrop{ z-index:2147483646 !important; }
.note-modal{ z-index:2147483647 !important; }
body.note-modal-open .note-toolbar{
  position: static !important;
  z-index: 1 !important;
  overflow: visible !important;
}
body.note-modal-open .note-editor{ z-index: 1 !important; }
body.note-modal-open .note-dropdown-menu{ z-index: 2 !important; }

/* ─────────────────────────────────────────
   ✅ FIX: PC 글쓰기 에디터(#bo_w)에서 이미지가 튀어나가는 문제
   ───────────────────────────────────────── */

/* 글쓰기 폼 래퍼와 편집영역 폭 고정 */
#bo_w .note-editor{ width:100% !important; max-width:100% !important; }
#bo_w .note-editor .note-editable,
#bo_w #wr_content{
  width:100% !important; max-width:100% !important;
  overflow-x:hidden !important;
  box-sizing:border-box !important;
}

/* 편집영역 내부 모든 요소는 부모폭 초과 금지 */
#bo_w .note-editor .note-editable *,
#bo_w #wr_content *{
  box-sizing:border-box !important;
  max-width:100% !important;
}

/* 이미지 강제 제한 */
#bo_w .note-editor .note-editable img,
#bo_w #wr_content img,
.write_div img{
  display:block !important;
  max-width:100% !important;
  height:auto !important;
}

/* figure/table/iframe/video 도 제한 */
#bo_w .note-editor .note-editable figure,
#bo_w #wr_content figure,
#bo_w .note-editor .note-editable table,
#bo_w #wr_content table{
  max-width:100% !important;
  overflow:auto !important;
}
#bo_w .note-editor .note-editable iframe,
#bo_w #wr_content iframe,
#bo_w .note-editor .note-editable video,
#bo_w #wr_content video{
  max-width:100% !important;
  width:100% !important;
  height:auto !important;
}

/* 컨테이너도 넘치지 않도록 */
#bo_w .write_div,
#bo_w .tbl_frm01{
  overflow:visible !important;
  max-width:100% !important;
}
