@charset "utf-8";
/* =============================================================================
   ADPLAN 일반 게시판 스킨 (adplan_official)

   관공서 · 기관 · 금융사 공지에서 오래 쓰여 온 배치를 따른다.
   테두리를 두르지 않고 가로줄로만 행을 나눈다. 장식이 적을수록 글이 많아져도
   읽는 순서가 흐트러지지 않는다.

   테마에 기대지 않는다 — 색과 여백을 여기서 전부 정한다.
   어떤 테마에 얹어도 같은 모양이 나와야 하기 때문이다.
   변수는 .adbo 안에서만 쓰므로 다른 스킨과 섞이지 않는다.
   ========================================================================== */

.adbo{
  --adbo-ink:#1A1A1A;        /* 제목 · 본문 */
  --adbo-body:#555;          /* 설명 */
  --adbo-mute:#888;          /* 날짜 · 조회수 */
  --adbo-line:#E5E5E5;       /* 행 구분선 */
  --adbo-line-d:#333;        /* 표 위아래 굵은 선 */
  --adbo-bg-soft:#FAFAFA;    /* 공지 행 바탕 */
  --adbo-accent:#2058D8;     /* 링크 · 강조 */
  --adbo-radius:3px;
  --adbo-gut:0px;

  color:var(--adbo-body);
  font-size:14px;
  line-height:1.7;
  letter-spacing:-.02em;
}
.adbo *{ box-sizing:border-box; }
.adbo a{ color:inherit; text-decoration:none; }
.adbo a:hover{ text-decoration:underline; }

.adbo-wrap{ padding:0 var(--adbo-gut); }

/* ---------------------------------------------------------------- 머리말 */
.adbo-head{ margin:0 0 26px; }
.adbo-head__t{
  margin:0; padding:0 0 18px;
  font-size:26px; font-weight:700; letter-spacing:-.04em; color:var(--adbo-ink);
  border-bottom:1px solid var(--adbo-line);
}

/* 분류 */
.adbo-cate-nav{ margin:0 0 20px; }
.adbo-cate-nav ul{ display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none; }
.adbo-cate-nav li a{
  display:inline-block; padding:7px 15px; border:1px solid var(--adbo-line);
  border-radius:99px; font-size:13px; color:var(--adbo-body); background:#fff;
}
.adbo-cate-nav li a:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); text-decoration:none; }
.adbo-cate-nav li a.bo_cate_on,
.adbo-cate-nav li.on a{ background:var(--adbo-ink); border-color:var(--adbo-ink); color:#fff; }

/* ---------------------------------------------------------------- 건수 · 검색 */
.adbo-bar{
  display:flex; align-items:center; justify-content:space-between;
  gap:14px 18px; flex-wrap:wrap; margin:0 0 14px;
}
.adbo-bar__info{ margin:0; font-size:13.5px; color:var(--adbo-body); }
.adbo-bar__info b{ color:var(--adbo-accent); font-weight:700; }
.adbo-bar__page{ color:var(--adbo-mute); }
.adbo-bar__page b{ color:var(--adbo-body); }
.adbo-bar__reset{
  display:inline-block; margin-left:8px; padding:2px 9px;
  border:1px solid var(--adbo-line); border-radius:99px; font-size:12px; color:var(--adbo-body);
}

.adbo-search{ display:flex; gap:0; align-items:stretch; }
.adbo-search__sel{
  height:34px; padding:0 8px; border:1px solid var(--adbo-line); border-right:0;
  border-radius:var(--adbo-radius) 0 0 var(--adbo-radius);
  background:#fff; font-size:13px; color:var(--adbo-body); font-family:inherit; max-width:110px;
}
.adbo-search__inp{
  height:34px; width:190px; max-width:44vw; padding:0 10px;
  border:1px solid var(--adbo-line); border-right:0; border-radius:0;
  background:#fff; font-size:13px; color:var(--adbo-ink); font-family:inherit;
}
.adbo-search__inp:focus,
.adbo-search__sel:focus{ outline:2px solid var(--adbo-accent); outline-offset:-2px; }
.adbo-search__btn{
  width:38px; height:34px; flex:none; cursor:pointer;
  border:1px solid var(--adbo-line); border-radius:0 var(--adbo-radius) var(--adbo-radius) 0;
  background:#fff; color:var(--adbo-ink); font-size:13px;
}
.adbo-search__btn:hover{ background:var(--adbo-ink); border-color:var(--adbo-ink); color:#fff; }

/* ---------------------------------------------------------------- 목록 표 */
.adbo-tblwrap{ overflow-x:auto; }
.adbo-tbl{
  width:100%; min-width:680px; border-collapse:collapse;
  border-top:2px solid var(--adbo-line-d);
}
.adbo-tbl caption{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.adbo-tbl th{
  padding:13px 8px; font-size:13.5px; font-weight:600; color:var(--adbo-ink);
  border-bottom:1px solid var(--adbo-line); text-align:center; white-space:nowrap;
}
.adbo-tbl td{
  padding:14px 8px; font-size:13.5px; color:var(--adbo-body);
  border-bottom:1px solid var(--adbo-line); text-align:center;
}
.adbo-tbl th a{ color:inherit; }

.adbo-c-chk{ width:42px; }
.adbo-c-no{ width:74px; }
.adbo-c-num{ width:70px; }
.adbo-c-name{ width:110px; }
.adbo-c-date{ width:104px; }
.adbo-c-hit{ width:74px; }
.adbo-c-file{ width:56px; }

.adbo-th-subject{ text-align:center; }
/* .adbo-tbl td 가 가운데 정렬을 걸어 두었으므로 같은 깊이로 눌러 준다 */
.adbo-tbl td.adbo-td-subject{ text-align:left; padding-left:14px; padding-right:14px; }
.adbo-td-subject .bo_tit{ display:inline; }
.adbo-td-subject .bo_tit > a{ color:var(--adbo-ink); font-size:14.5px; }
.adbo-td-subject .bo_tit > a:hover{ color:var(--adbo-accent); text-decoration:underline; }
.adbo-td-no{ color:var(--adbo-mute); font-size:13px; }
.adbo-td-name{ color:var(--adbo-body); }
.adbo-td-date,
.adbo-td-hit{ color:var(--adbo-mute); font-size:13px; font-variant-numeric:tabular-nums; }
.adbo-td-file img{ vertical-align:middle; }

/* 제목 아래 요약 — 좁은 화면에서만 */
.adbo-td-subject__m{ display:none; margin-top:4px; font-size:12px; color:var(--adbo-mute); }

/* 공지 행 */
.adbo-tbl tr.is-notice{ background:var(--adbo-bg-soft); }
.adbo-tbl tr.is-notice .bo_tit > a{ font-weight:700; }
.adbo-notice-tag{
  display:inline-block; padding:2px 9px; border-radius:var(--adbo-radius);
  background:var(--adbo-ink); color:#fff; font-size:11.5px; font-weight:600; letter-spacing:-.01em;
}
/* 열람 중인 글 */
.adbo-tbl tr.is-current .bo_tit > a{ color:var(--adbo-accent); font-weight:700; }
.bo_current{ font-size:12px; color:var(--adbo-accent); }

/* 새 글 · 분류 · 댓글 수 */
.adbo-new{
  display:inline-block; margin-left:6px; padding:1px 6px; border-radius:2px;
  background:var(--adbo-accent); color:#fff; font-size:10.5px; font-weight:700;
  letter-spacing:.02em; vertical-align:1px;
}
.adbo-cate{
  display:inline-block; margin-right:7px; padding:1px 8px;
  border:1px solid var(--adbo-line); border-radius:99px;
  font-size:11.5px; color:var(--adbo-mute);
}
.adbo-cmt{
  display:inline-block; margin-left:5px; font-size:12px; font-weight:700; color:var(--adbo-accent);
}
.adbo-cmt::before{ content:'['; }
.adbo-cmt::after{ content:']'; }

.adbo-empty{
  padding:70px 10px !important; text-align:center; color:var(--adbo-mute);
}
.adbo-empty b{ display:block; font-size:15px; font-weight:600; color:var(--adbo-body); }
.adbo-empty span{ display:block; margin-top:6px; font-size:13px; }

/* ---------------------------------------------------------------- 페이지 번호 */
.adbo-paging{ margin:34px 0 0; text-align:center; }
.adbo-paging .pg_wrap{ display:inline-block; }
.adbo-paging .pg{ display:inline-flex; gap:4px; align-items:center; }
.adbo-paging .pg_page,
.adbo-paging .pg_current{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:30px; height:30px; padding:0 8px; border-radius:var(--adbo-radius);
  font-size:13px; text-decoration:none;
}
.adbo-paging .pg_page{ color:var(--adbo-body); background:none; border:0; }
.adbo-paging .pg_page:hover{ color:var(--adbo-accent); text-decoration:underline; }
.adbo-paging .pg_current{
  background:none; border:0; color:var(--adbo-accent); font-weight:700; text-decoration:underline;
}

/* ---------------------------------------------------------------- 버튼 */
.adbo-foot{ margin:26px 0 0; }
.adbo-foot__act{
  display:flex; gap:7px; justify-content:flex-end; align-items:center;
  margin:0; padding:0; list-style:none; flex-wrap:wrap;
}
.adbo-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  height:38px; padding:0 20px; border-radius:var(--adbo-radius);
  font-size:13.5px; font-weight:600; cursor:pointer; font-family:inherit;
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.adbo-btn:hover{ text-decoration:none; }
.adbo-btn--line{ border:1px solid var(--adbo-line); background:#fff; color:var(--adbo-body); }
.adbo-btn--line:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); }
.adbo-btn--fill{ border:1px solid var(--adbo-ink); background:var(--adbo-ink); color:#fff; }
.adbo-btn--fill:hover{ background:#000; }

/* =============================================================================
   본문
   ========================================================================== */
.adbo-view{ width:100% !important; }
.adbo-view__board{
  margin:0 0 14px; padding:0 0 16px;
  font-size:17px; font-weight:700; color:var(--adbo-ink); letter-spacing:-.03em;
  border-bottom:2px solid var(--adbo-line-d);
}

.adbo-view__head{
  display:flex; align-items:baseline; justify-content:space-between; gap:10px 24px;
  flex-wrap:wrap; padding:16px 0 18px;
  border-top:2px solid var(--adbo-line-d); border-bottom:1px solid var(--adbo-line);
}
.adbo-view__t{
  flex:1 1 320px; min-width:0; margin:0;
  font-size:19px; font-weight:700; line-height:1.5; letter-spacing:-.035em; color:var(--adbo-ink);
}
.adbo-view__cate{
  display:inline-block; margin-right:8px; padding:2px 9px;
  border:1px solid var(--adbo-line); border-radius:99px;
  font-size:12px; font-weight:500; color:var(--adbo-mute); vertical-align:2px;
}
.adbo-view__meta{
  margin:0; font-size:12.5px; color:var(--adbo-mute); white-space:nowrap;
}
.adbo-view__meta b{ font-weight:500; color:var(--adbo-body); }
.adbo-view__meta i{ margin:0 7px; font-style:normal; color:var(--adbo-line); }

/* 본문 영역 */
.adbo-view #bo_v_info{ border:0; padding:0; margin:0; }
.adbo-view #bo_v_info > h2{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.adbo-view #bo_v_atc{ padding:34px 2px 40px; min-height:200px; }
.adbo-view #bo_v_atc_title{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.adbo-view #bo_v_con{
  font-size:15px; line-height:1.85; color:var(--adbo-body); word-break:break-word;
}
.adbo-view #bo_v_con img{ max-width:100%; height:auto; }
.adbo-view #bo_v_con a{ color:var(--adbo-accent); text-decoration:underline; }

/* 첨부 · 링크 */
.adbo-view #bo_v_file,
.adbo-view #bo_v_link{ margin:0 0 4px; padding:0; }
.adbo-view #bo_v_file h2,
.adbo-view #bo_v_link h2{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
.adbo-view #bo_v_file ul,
.adbo-view #bo_v_link ul{ margin:0; padding:0; list-style:none; }
.adbo-view #bo_v_file li,
.adbo-view #bo_v_link li{
  padding:11px 14px; border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  margin-bottom:6px; background:var(--adbo-bg-soft); font-size:13.5px;
}
.adbo-view #bo_v_file li a,
.adbo-view #bo_v_link li a{ color:var(--adbo-ink); }
.adbo-view .bo_v_file_cnt{ display:block; margin-top:3px; font-size:12px; color:var(--adbo-mute); }

/* 이전 · 다음글 */
.adbo-nb{
  margin:0; padding:0; list-style:none;
  border-top:1px solid var(--adbo-line);
}
.adbo-nb__i{
  display:grid; grid-template-columns:96px 1fr auto; gap:14px; align-items:center;
  padding:14px 6px; border-bottom:1px solid var(--adbo-line);
}
.adbo-nb__k{ font-size:13px; color:var(--adbo-mute); white-space:nowrap; }
.adbo-nb__k i{ margin-right:5px; }
.adbo-nb__a{
  min-width:0; font-size:14px; color:var(--adbo-ink);
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.adbo-nb__a:hover{ color:var(--adbo-accent); }
.adbo-nb__d{ font-size:12.5px; color:var(--adbo-mute); font-variant-numeric:tabular-nums; }

/* 목록 버튼 */
.adbo-view__foot{ margin:36px 0 0; text-align:center; }
.adbo-btn--list{
  min-width:118px; height:44px; padding:0 30px;
  border:1px solid var(--adbo-accent); border-radius:99px;
  background:#fff; color:var(--adbo-accent); font-size:14.5px; font-weight:600;
}
.adbo-btn--list:hover{ background:var(--adbo-accent); color:#fff; }

/* 상단 버튼 묶음 — 관리자에게만 보이는 것들이라 조용히 둔다 */
.adbo-view #bo_v_top{ margin:18px 0 0; }
.adbo-view #bo_v_top .btn_bo_user{
  display:flex; gap:6px; justify-content:flex-end; margin:0; padding:0; list-style:none; flex-wrap:wrap;
}
.adbo-view #bo_v_top .btn_bo_user .btn{
  display:inline-flex; align-items:center; justify-content:center; gap:5px;
  min-width:36px; height:32px; padding:0 11px;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-body); font-size:12.5px; cursor:pointer;
}
.adbo-view #bo_v_top .btn_bo_user .btn:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); text-decoration:none; }
.adbo-view #bo_v_share{ margin:14px 0 0; }

/* 추천 · 비추천 */
.adbo-view #bo_v_act{ margin:6px 0 0; text-align:center; }
.adbo-view #bo_v_act a{
  display:inline-flex; align-items:center; gap:7px; margin:0 4px;
  padding:9px 18px; border:1px solid var(--adbo-line); border-radius:99px;
  font-size:13.5px; color:var(--adbo-body); background:#fff;
}
.adbo-view #bo_v_act a:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); text-decoration:none; }

/* =============================================================================
   좁은 화면 — 표를 카드처럼 접는다
   ========================================================================== */
@media (max-width:760px){
  .adbo{ font-size:13.5px; }
  .adbo-head__t{ font-size:21px; padding-bottom:14px; }

  .adbo-bar{ gap:10px; }
  .adbo-search{ width:100%; }
  .adbo-search__inp{ flex:1 1 auto; width:auto; max-width:none; }

  .adbo-tblwrap{ overflow-x:visible; }
  .adbo-tbl{ min-width:0; }
  .adbo-tbl thead{ display:none; }
  .adbo-tbl,
  .adbo-tbl tbody,
  .adbo-tbl tr{ display:block; width:100%; }
  .adbo-tbl tr{ padding:14px 2px; border-bottom:1px solid var(--adbo-line); }
  .adbo-tbl td{ display:none; border:0; padding:0; text-align:left; }
  .adbo-tbl td.adbo-td-subject{ display:block; padding:0; }
  .adbo-tbl td.adbo-td-no{ display:block; margin-bottom:5px; }
  .adbo-tbl td.chk_box{ display:inline-block; margin-right:8px; vertical-align:top; }
  .adbo-td-subject__m{ display:block; }
  .adbo-tbl tr.is-notice{ padding-left:10px; padding-right:10px; }
  .adbo-empty{ display:block !important; padding:56px 10px !important; }

  .adbo-foot__act{ justify-content:center; }

  .adbo-view__head{ gap:8px; }
  .adbo-view__t{ flex:1 1 100%; font-size:17px; }
  .adbo-view__meta{ white-space:normal; }
  .adbo-nb__i{ grid-template-columns:76px 1fr; gap:8px 12px; }
  .adbo-nb__d{ grid-column:2; font-size:12px; }
  .adbo-view #bo_v_atc{ padding:26px 0 32px; }
}

/* =============================================================================
   댓글 — 그누보드 기본 마크업(bo_vc_*)에 옷만 입힌다
   ========================================================================== */
.adbo #bo_vc{ margin:44px 0 0; padding:26px 0 0; border-top:1px solid var(--adbo-line); }
.adbo #bo_vc h2{
  margin:0 0 16px; font-size:15px; font-weight:700; color:var(--adbo-ink); letter-spacing:-.03em;
}
.adbo #bo_vc h2 .total{ margin-left:5px; color:var(--adbo-accent); }
.adbo #bo_vc article{ padding:16px 2px; border-bottom:1px solid var(--adbo-line); }
.adbo #bo_vc header{ display:flex; align-items:center; gap:9px; margin:0 0 7px; }
.adbo #bo_vc .pf_img img{ width:28px; height:28px; border-radius:50%; }
.adbo .bo_vc_hdinfo{ font-size:13px; color:var(--adbo-mute); }
.adbo .bo_vc_hdinfo strong{ color:var(--adbo-ink); font-weight:600; margin-right:7px; }
.adbo .cmt_contents{ font-size:14px; line-height:1.75; color:var(--adbo-body); word-break:break-word; }
.adbo .cmt_contents a{ color:var(--adbo-accent); }
.adbo #bo_vc_empty{ padding:40px 0; text-align:center; color:var(--adbo-mute); font-size:13.5px; }

.adbo .bo_vc_act,
.adbo .bo_vc_act ul{ margin:0; padding:0; list-style:none; }
.adbo .bo_vc_act{ display:flex; justify-content:flex-end; gap:5px; margin-top:8px; }
.adbo .bo_vc_act .btn,
.adbo .btn_cm_opt{
  display:inline-flex; align-items:center; gap:4px; height:27px; padding:0 10px;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-mute); font-size:12px; cursor:pointer;
}
.adbo .bo_vc_act .btn:hover,
.adbo .btn_cm_opt:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); text-decoration:none; }

/* 댓글 쓰기 */
.adbo #bo_vc_w{ margin:22px 0 0; }
.adbo #bo_vc_w h2{ margin:0 0 10px; font-size:14px; }
.adbo .bo_vc_w_wr textarea,
.adbo textarea.frm_input{
  width:100%; min-height:96px; padding:12px 14px; resize:vertical;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; font-size:14px; line-height:1.7; font-family:inherit; color:var(--adbo-ink);
}
.adbo .bo_vc_w_info{
  display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:9px;
}
.adbo .bo_vc_w_info .frm_input{
  height:38px; padding:0 12px; border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; font-size:13.5px; font-family:inherit; color:var(--adbo-ink); max-width:170px;
}
.adbo .frm_input:focus,
.adbo textarea:focus{ outline:2px solid var(--adbo-accent); outline-offset:-2px; }
.adbo .bo_vc_w_info .btn_confirm{ margin-left:auto; }
.adbo #bo_vc_w .btn_submit{
  height:38px; padding:0 22px; border:1px solid var(--adbo-ink); border-radius:var(--adbo-radius);
  background:var(--adbo-ink); color:#fff; font-size:13.5px; font-weight:600; cursor:pointer;
  font-family:inherit;
}
.adbo #bo_vc_w .btn_submit:hover{ background:#000; }
.adbo #char_cnt{ font-size:12px; color:var(--adbo-mute); }
.adbo .secret_cm{ font-size:13px; color:var(--adbo-mute); }
.adbo .cmt_more{ margin-top:16px; text-align:center; }

@media (max-width:760px){
  .adbo .bo_vc_w_info .frm_input{ max-width:none; flex:1 1 130px; }
  .adbo .bo_vc_w_info .btn_confirm{ margin-left:0; width:100%; }
  .adbo #bo_vc_w .btn_submit{ width:100%; }
}

/* =============================================================================
   글쓰기 · 수정 폼
   그누보드 기본 마크업(frm_input · btn_submit · frm_file …)에 옷만 입힌다.
   파일 선택과 캡차 버튼은 브라우저 기본 모양이 그대로 나오던 자리라
   ::file-selector-button 까지 잡아 준다.
   ========================================================================== */
.adbo-write{ margin:0; }
.adbo-write fieldset{ margin:0; padding:0; border:0; }

/* 한 줄짜리 입력칸 */
.adbo .frm_input,
.adbo input[type=text],
.adbo input[type=password],
.adbo input[type=email],
.adbo input[type=url],
.adbo input[type=number],
.adbo select{
  height:44px; padding:0 14px;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-ink);
  font-size:14.5px; font-family:inherit; line-height:normal;
  transition:border-color .15s ease;
}
.adbo select{ padding-right:30px; }
.adbo .frm_input:hover,
.adbo textarea:hover{ border-color:#C9C9C9; }
.adbo .frm_input:focus,
.adbo textarea:focus,
.adbo select:focus{ outline:2px solid var(--adbo-accent); outline-offset:-2px; border-color:transparent; }
.adbo .full_input{ width:100%; }
.adbo .half_input{ width:calc(50% - 5px); }

/* 필수 표시 — 별표만 있으면 무엇이 필수인지 안 읽힌다 */
.adbo .frm_input.required,
.adbo textarea.required{ background:#FFFDF7; }
.adbo .frm_input.required:focus,
.adbo textarea.required:focus{ background:#fff; }

/* 줄 배치 */
.adbo .bo_w_info,
.adbo .bo_w_tit,
.adbo .bo_w_link,
.adbo .bo_w_flie,
.adbo .bo_v_option,
.adbo .write_div{ margin:0 0 10px; }
.adbo .bo_w_info{ display:flex; flex-wrap:wrap; gap:10px; }
.adbo .bo_w_info > *{ flex:1 1 220px; min-width:0; }
.adbo .bo_w_info .half_input{ width:100%; }

/* 본문 */
.adbo textarea,
.adbo .wr_content textarea{
  width:100%; min-height:260px; padding:14px;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-ink);
  font-size:15px; line-height:1.8; font-family:inherit; resize:vertical;
}

/* 체크박스 줄 (html · 비밀글 · 공지) */
.adbo .bo_v_option{
  display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center;
  padding:12px 14px; border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:var(--adbo-bg-soft); font-size:13.5px; color:var(--adbo-body);
}
.adbo .bo_v_option label{ display:inline-flex; align-items:center; gap:6px; cursor:pointer; }
.adbo input[type=checkbox],
.adbo input[type=radio]{ width:16px; height:16px; accent-color:var(--adbo-accent); margin:0; }

/* 링크 · 파일 줄 — 아이콘과 입력칸을 한 줄로 */
.adbo .bo_w_link,
.adbo .bo_w_flie{ display:flex; align-items:center; gap:10px; }
.adbo .bo_w_link .frm_input,
.adbo .bo_w_flie .frm_input{ flex:1 1 auto; min-width:0; }
.adbo .lb_icon{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:44px; flex:none;
  color:var(--adbo-mute); font-size:15px;
}

/* 파일 선택 — 브라우저 기본 단추가 그대로 보이던 자리 */
.adbo .frm_file,
.adbo input[type=file]{
  flex:1 1 auto; min-width:0; height:44px; padding:0; cursor:pointer;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; font-size:13.5px; font-family:inherit; color:var(--adbo-body);
}
.adbo input[type=file]::file-selector-button{
  height:42px; margin:0 12px 0 0; padding:0 18px; cursor:pointer;
  border:0; border-right:1px solid var(--adbo-line); border-radius:var(--adbo-radius) 0 0 var(--adbo-radius);
  background:var(--adbo-bg-soft); color:var(--adbo-ink);
  font-size:13.5px; font-weight:600; font-family:inherit;
  transition:background-color .15s ease;
}
.adbo input[type=file]::file-selector-button:hover{ background:#EFEFEF; }

/* 붙여넣기 안내 */
.adbo .bf_paste_help{
  margin:0 0 10px; padding:12px 14px; border-radius:var(--adbo-radius);
  background:var(--adbo-bg-soft); border:1px dashed var(--adbo-line);
  font-size:13px; line-height:1.7; color:var(--adbo-mute);
}
.adbo .bf_paste_help b{ color:var(--adbo-ink); }
.adbo .bf_preview{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 10px; }
.adbo .bf_preview_thumb{ border:1px solid var(--adbo-line); border-radius:var(--adbo-radius); }
.adbo .bf_preview_info{ font-size:12.5px; color:var(--adbo-mute); }
.adbo .bf_preview .bf_preview_del,
.adbo .bf_preview_del{
  height:26px; padding:0 9px; cursor:pointer;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-mute); font-size:12px; font-family:inherit;
}
.adbo .bf_preview .bf_preview_del:hover,
.adbo .bf_preview_del:hover{ border-color:#C53030; color:#C53030; }

/* 자동등록방지 */
.adbo .captcha,
.adbo #captcha{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  margin:14px 0 0;
}
.adbo #captcha_key{
  height:44px; width:120px; padding:0 14px;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  font-size:14.5px; font-family:inherit; color:var(--adbo-ink);
}
.adbo #captcha img,
.adbo .captcha_box img{
  height:44px; border:1px solid var(--adbo-line); border-radius:var(--adbo-radius); vertical-align:middle;
}
/* 코어가 이 단추의 아이콘을 background-image(captcha2.png)로 넣는다.
   background 단축 속성으로 덮으면 아이콘이 사라지므로 색만 건드린다. */
.adbo #captcha #captcha_mp3,
.adbo #captcha #captcha_reload,
.adbo #captcha_mp3,
.adbo #captcha_reload,
.adbo .captcha button{
  width:44px; height:44px; flex:none; cursor:pointer;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background-color:#fff; color:var(--adbo-body); font-size:14px; font-family:inherit;
}
.adbo #captcha #captcha_mp3:hover,
.adbo #captcha #captcha_reload:hover,
.adbo #captcha_mp3:hover,
.adbo #captcha_reload:hover,
.adbo .captcha button:hover{ border-color:var(--adbo-ink); background-color:var(--adbo-bg-soft); }
.adbo #captcha_info,
.adbo .captcha_info{ display:block; margin-top:7px; font-size:12.5px; color:var(--adbo-mute); }

/* 보내기 · 취소 */
.adbo .btn_confirm{
  display:flex; justify-content:flex-end; align-items:center; gap:8px;
  margin:26px 0 0; padding:20px 0 0; border-top:1px solid var(--adbo-line);
}
.adbo .btn_confirm .btn_submit,
.adbo .btn_submit{
  display:inline-flex; align-items:center; justify-content:center;
  height:46px; padding:0 34px; cursor:pointer;
  border:1px solid var(--adbo-ink); border-radius:var(--adbo-radius);
  background:var(--adbo-ink); color:#fff;
  font-size:15px; font-weight:700; font-family:inherit; letter-spacing:-.02em;
  transition:background-color .15s ease;
}
.adbo .btn_confirm .btn_submit:hover,
.adbo .btn_submit:hover{ background:#000; text-decoration:none; }
.adbo .btn_cancel,
.adbo .btn_confirm .btn_cancel{
  display:inline-flex; align-items:center; justify-content:center;
  height:46px; padding:0 26px; cursor:pointer;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  background:#fff; color:var(--adbo-body);
  font-size:15px; font-weight:600; font-family:inherit;
}
.adbo .btn_cancel:hover{ border-color:var(--adbo-ink); color:var(--adbo-ink); text-decoration:none; }

@media (max-width:760px){
  .adbo .bo_w_info{ gap:8px; }
  .adbo .bo_w_info > *{ flex:1 1 100%; }
  .adbo .btn_confirm{ flex-direction:column-reverse; gap:8px; }
  .adbo .btn_confirm .btn_submit,
  .adbo .btn_confirm .btn_cancel{ width:100%; }
  .adbo .lb_icon{ display:none; }
}

/* 첨부 이미지 자동 축소 안내 — 파일 입력칸 옆에 결과를 알려 준다 */
.adbo .wa-shrink-note{
  display:block; margin-top:5px; font-size:12.5px; line-height:1.55;
}
.adbo .wa-shrink-note:empty{ display:none; }
.adbo .wa-shrink-note[data-tone="ok"]{ color:#0C6B51; }
.adbo .wa-shrink-note[data-tone="wait"]{ color:var(--adbo-mute); }
.adbo .wa-shrink-note[data-tone="bad"]{ color:#B32B2B; }

/* ---------------------------------------------------------------- 첨부 이미지 · 답변 차수 */
/* 폰으로 찍은 사진을 원본 그대로 두면 화면을 가득 채워 글을 읽을 수 없다.
   줄여서 늘어놓고 누르면 원본을 새 창에서 본다. */
#bo_v_img{ display:flex; flex-wrap:wrap; gap:12px; margin:0 0 22px; }
.adbo-shot{
  display:block; width:210px; max-width:100%; text-decoration:none;
  border:1px solid var(--adbo-line); border-radius:var(--adbo-radius);
  overflow:hidden; background:#fff;
  transition:border-color .15s ease, transform .15s ease;
}
.adbo-shot:hover{ border-color:var(--adbo-accent); transform:translateY(-2px); text-decoration:none; }
.adbo-shot img{
  display:block; width:100%; height:150px; object-fit:cover; object-position:top center;
  background:var(--adbo-bg-soft);
}
.adbo-shot > span{
  display:block; padding:7px 10px; font-size:12px; color:var(--adbo-mute);
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

/* 답변 차수 — 여러 차례 오가는 요청에서 몇 번째 답인지 바로 보이게 */
.adbo-round{
  display:inline-block; margin-left:7px; padding:2px 9px; border-radius:99px;
  background:var(--adbo-accent); color:#fff;
  font-size:11.5px; font-weight:700; letter-spacing:-.01em; vertical-align:1px;
}

@media (max-width:560px){
  .adbo-shot{ width:calc(50% - 6px); }
  .adbo-shot img{ height:110px; }
}

/* 처리 상태 — 분류를 색으로 구분해 목록에서 한눈에 보이게 한다.
   색만으로 구분하지 않도록 글자(진행중 · 보류중 …)는 그대로 둔다. */
.adbo-cate.is-go{   background:#EAF2FF; border-color:#BBD3FF; color:#1A63E0; font-weight:600; }
.adbo-cate.is-hold{ background:#F3F4F6; border-color:#DDE1E6; color:#6B7280; font-weight:600; }
.adbo-cate.is-done{ background:#E8F6F1; border-color:#BFE3D6; color:#0C6B51; font-weight:600; }
.adbo-cate.is-redo{ background:#FDF0E3; border-color:#F4D6B0; color:#A15C07; font-weight:600; }
