@charset "utf-8";

/* ==========================================================================
   1. 기본 레이아웃 및 팝업/체크박스 세팅
   ========================================================================== */
.market_box, .label-wrap { padding: 0 !important; }
.market_box div { padding: 0 !important; }
.market_box { display: flex; gap: 12px; }
.market_chk { display: flex; gap: 8px; align-items: center; }
.agree label, .chk_wrap { display: flex; align-items: center; gap: 2px; }
.confirm_text { font-size: 24px; line-height: 40px; margin-bottom: 30px; }
.chk { width: 13px; height: 13px; vertical-align: middle; }

/* ==========================================================================
   2. 상단 탭 스킨 (sche_tab)
   ========================================================================== */
.sche_tab { margin-bottom: 80px; }
.sche_tab::after { content: ""; display: block; clear: both; }
.sche_tab li { width: 50%; float: left; position: relative; }
.sche_tab li a { display: block; width: 100%; text-align: center; font-size: 20px; color: #b7a34c; background: #fff; border: 1px solid #b7a34c; line-height: 60px; }
.sche_tab li.on a { background-color: #b7a34c; border: 1px solid #b7a34c; color: #fff; }
.sche_tab li a:hover { font-weight: 700; }

/* ==========================================================================
   3. 그누보드 순정 리스트 & 카테고리 (유지용)
   ========================================================================== */
#bo_list .td_board { width: 120px; text-align: center; }
#bo_list .td_chk { width: 30px; text-align: center; }
#bo_list .td_date { width: 60px; text-align: center; }
#bo_list .td_datetime { width: 110px; text-align: center; }
#bo_list .td_group, #bo_list .td_mb_id, #bo_list .td_name, #bo_list .td_nick { width: 100px; text-align: center; }
#bo_list .td_mng { width: 80px; text-align: center; }
#bo_list .td_num { width: 50px; text-align: center; }
#bo_list .td_numbig { width: 80px; text-align: center; }
#bo_list .txt_active { color: #5d910b; }
#bo_list .txt_expired { color: #ccc; }
#bo_cate h2 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#bo_cate ul { margin-bottom: 10px; padding-left: 1px; width: 728px; zoom: 1; }
#bo_cate ul:after { display: block; visibility: hidden; clear: both; content: ""; }
#bo_cate li { float: left; margin-bottom: -1px; }
#bo_cate a { display: block; position: relative; margin-left: -1px; padding: 6px 0 5px; width: 90px; border: 1px solid #ddd; background: #f7f7f7; color: #888; text-align: center; letter-spacing: -0.1em; line-height: 1.2em; cursor: pointer; }
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active { text-decoration: none; }
#bo_cate #bo_cate_on { z-index: 2; border: 1px solid #565e60; background: #fff; color: #565e60; font-weight: bold; }
.td_subject img { margin-left: 3px; }
.bo_fx { margin-bottom: 5px; zoom: 1; }
.bo_fx:after { display: block; visibility: hidden; clear: both; content: ""; }
.bo_fx ul { margin: 0; padding: 0; list-style: none; }
#bo_list_total { float: left; padding-top: 5px; }
.btn_bo_user { float: right; margin: 0; padding: 0; list-style: none; }
.btn_bo_user li { float: left; margin-left: 5px; }
.btn_bo_adm { float: left; }
.btn_bo_adm li { float: left; margin-right: 5px; font-size: 12px; }
.btn_bo_adm input { padding: 8px; border: 0; background: #e8180c; color: #fff; text-decoration: none; vertical-align: middle; }
.bo_notice td { background: #f5f6fa; }
.bo_notice td a { font-weight: bold; }
.td_num strong { color: #000; }
.bo_cate_link { display: inline-block; margin: 0 3px 0 0; padding: 0 6px 0 0; border-right: 1px solid #e7f1ed; color: #999 !important; font-weight: bold; text-decoration: none; }
.bo_current { color: #e8180c; }
#bo_list .cnt_cmt { display: inline-block; margin: 0 0 0 3px; font-weight: bold; }
#bo_sch { margin-bottom: 15px; padding: 10px; text-align: center; border: 1px solid #f1f1f1; background: #f8f9fa; }
#bo_sch legend { position: absolute; margin: 0; padding: 0; font-size: 0; line-height: 0; text-indent: -9999em; overflow: hidden; }
#bo_sch select { font-size: 14px; height: 35px; border: 1px solid #f1f1f1; }
#bo_sch .sch_input { font-size: 14px; height: 35px; border: 1px solid #f1f1f1; padding: 0 10px; }
#bo_sch .sch_btn { background-color: #333; color: #fff; height: 35px; font-size: 14px; width: 80px; }

/* ==========================================================================
   4. 게시판 코어 라이브러리 (자동저장/뷰어/댓글)
   ========================================================================== */
#char_count_desc { display: block; margin: 0 0 5px; padding: 0; }
#char_count_wrap { margin: 5px 0 0; text-align: right; }
#char_count { font-weight: bold; }
#autosave_wrapper { position: relative; }
#autosave_pop { display: none; z-index: 10; position: absolute; top: 24px; right: 117px; padding: 8px; width: 350px; height: 180px; max-height: 180px; border: 1px solid #565656; background: #fff; overflow-y: scroll; }
html.no-overflowscrolling #autosave_pop { height: auto; max-height: 10000px !important; }
#autosave_pop strong { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#autosave_pop div { text-align: right; }
#autosave_pop button { margin: 0; padding: 0; border: 0; background: transparent; }
#autosave_pop ul { margin: 10px 0; padding: 0; border-top: 1px solid #e9e9e9; list-style: none; }
#autosave_pop li { padding: 8px 5px; border-bottom: 1px solid #e9e9e9; zoom: 1; }
#autosave_pop li:after { display: block; visibility: hidden; clear: both; content: ""; }
#autosave_pop a { display: block; float: left; }
#autosave_pop span { display: block; float: right; }
.autosave_close { cursor: pointer; }
.autosave_content { display: none; }
#bo_v { margin-bottom: 20px; padding-bottom: 20px; }
#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 { padding: 10px 0; font-size: 1.2em; }
#bo_v_info { padding: 0 0 10px; border-bottom: 1px solid #ddd; }
#bo_v_info h2 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#bo_v_info strong { display: inline-block; margin: 0 15px 0 5px; font-weight: normal; }
#bo_v_info .sv_member, #bo_v_info .sv_guest, #bo_v_info .member, #bo_v_info .guest { font-weight: bold; }
#bo_v_file h2, #bo_v_link h2, #bo_v_top h2, #bo_v_bot h2, #bo_v_atc_title { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#bo_v_file ul, #bo_v_link ul, #bo_v_top ul, #bo_v_bot ul { margin: 0; padding: 0; list-style: none; }
#bo_v_file li, #bo_v_link li { padding: 0 10px; border-bottom: 1px solid #eee; background: #f5f6fa; }
#bo_v_file a, #bo_v_link a { display: inline-block; padding: 8px 0 7px; width: 100%; color: #000; word-wrap: break-word; }
#bo_v_file a:focus, #bo_v_file a:hover, #bo_v_file a:active, #bo_v_link a:focus, #bo_v_link a:hover, #bo_v_link a:active { text-decoration: none; }
#bo_v_file img { float: left; margin: 0 10px 0 0; }
.bo_v_file_cnt, .bo_v_link_cnt { display: inline-block; margin: 0 0 3px 16px; }
#bo_v_top, #bo_v_bot { padding: 10px 0; zoom: 1; }
#bo_v_top:after, #bo_v_bot:after { display: block; visibility: hidden; clear: both; content: ""; }
.bo_v_nb { float: left; }
.bo_v_nb li { float: left; margin-right: 5px; }
.bo_v_com { float: right; }
.bo_v_com li { float: left; margin-left: 5px; }
#bo_v_atc { min-height: 200px; height: auto !important; height: 200px; }
#bo_v_img { margin: 0 0 10px; width: 100%; overflow: hidden; zoom: 1; }
#bo_v_img:after { display: block; visibility: hidden; clear: both; content: ""; }
#bo_v_img img { margin-bottom: 20px; max-width: 100%; height: auto; }
#bo_v_con { margin-bottom: 30px; width: 100%; line-height: 1.7em; word-break: break-all; overflow: hidden; }
#bo_v_con a { color: #000; text-decoration: underline; }
#bo_v_con img { max-width: 100%; height: auto; }
#bo_v_act { margin-bottom: 30px; text-align: center; }
#bo_v_act .bo_v_act_gng { position: relative; }
#bo_v_act a { margin-right: 5px; vertical-align: middle; }
#bo_v_act strong { color: #ff3061; }
#bo_v_act_good, #bo_v_act_nogood { display: none; position: absolute; top: 30px; left: 0; padding: 10px 0; width: 165px; background: #ff3061; color: #fff; text-align: center; }
#bo_v_sns { margin: 0 0 20px; padding: 0; list-style: none; zoom: 1; }
#bo_v_sns:after { display: block; visibility: hidden; clear: both; content: ""; }
#bo_v_sns li { float: left; margin: 0 5px 0 0; }
#bo_vc { margin: 0 0 20px; padding: 20px 20px 10px; border: 1px solid #e5e8ec; background: #f5f8f9; }
#bo_vc h2 { margin-bottom: 10px; }
#bo_vc article { padding: 0 0 10px; border-top: 1px dotted #ccc; }
#bo_vc header { position: relative; padding: 15px 0 5px; }
#bo_vc header .icon_reply { position: absolute; top: 15px; left: -20px; }
#bo_vc .sv_wrap { margin-right: 15px; }
#bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest { font-weight: bold; }
.bo_vc_hdinfo { display: inline-block; margin: 0 15px 0 5px; }
#bo_vc h1 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#bo_vc a { color: #000; text-decoration: none; }
#bo_vc p { padding: 0 0 5px; line-height: 1.8em; }
#bo_vc p a { text-decoration: underline; }
#bo_vc p a.s_cmt { text-decoration: none; }
#bo_vc_empty { margin: 0; padding: 20px !important; text-align: center; }
#bo_vc #bo_vc_winfo { float: left; }
#bo_vc footer { zoom: 1; }
#bo_vc footer:after { display: block; visibility: hidden; clear: both; content: ""; }
.bo_vc_act { float: right; margin: 0; list-style: none; zoom: 1; }
.bo_vc_act:after { display: block; visibility: hidden; clear: both; content: ""; }
.bo_vc_act li { float: left; margin-left: 5px; }
#bo_vc_w { position: relative; margin: 0 0 10px; padding: 0 0 20px; border-bottom: 1px solid #cfded8; }
#bo_vc_w h2 { position: absolute; font-size: 0; line-height: 0; overflow: hidden; }
#bo_vc_w #char_cnt { display: block; margin: 0 0 5px; }
#bo_vc_sns { 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 20px 0 0; }
#bo_vc_sns input { margin: 0 0 0 5px; }

/* ==========================================================================
   5. 관심고객등록 쓰기 폼 커스텀 (Core)
   ========================================================================== */
#hnn_order { max-width: 1408px; margin: 0 auto; padding: 0; }
#boardwrite, #boardwrite input { width: 100%; }
#boardwrite select, #boardwrite input[type="text"] { background-color: #dfdfdf; height: 45px; width: 100%; border: none; font-size: 16px; padding: 0px 20px; outline: none; text-align: left; -webkit-appearance: none; appearance: none; }
#boardwrite .boardwrite_table { width: 100%; border-top: 2px solid #7a6e66; }
#boardwrite .boardwrite_table th { font-size: 16px; font-weight: 400; color: #333; padding: 25px 0 25px 20px; text-align: left; border-bottom: 1px solid #e5e5e5; line-height: 1.3em; }
#boardwrite .boardwrite_table td { color: #666; padding: 15px 10px; border-bottom: 1px solid #dedede; text-align: left; height: 30px; background: #fff; font-size: 16px; }
#boardwrite .boardwrite_table td textarea { width: 100%; height: 300px; border: 1px solid #ddd; }
#boardwrite .boardwrite_table td table td { border: 0 none; padding: 1px 0; }
#boardwrite .boardwrite_table td p:first-child { padding-top: 0; }
#boardwrite .boardwrite_table td p { padding-top: 4px; }
#boardwrite .col1 { width: 20%; }

/* 우편번호 및 파일 업로드 */
#boardwrite .zip { display: flex; gap: 0 10px; }
#boardwrite .zip ~ .zip { margin-top: 10px; }
#boardwrite .zip .read { max-width: 360px; }
#boardwrite .zip .sc_btn { border: none; background: none; width: 90px; background-color: #222; color: #fff; display: flex; align-items: center; justify-content: center; }
#boardwrite .zip input[type="file"] { display: none; }
#boardwrite .ori { margin-top: 20px; font-size: 14px; line-height: 1.3em; }
.bowrite_in { padding: 8px 5px; border: 1px solid #dedede; background: #f9f9f9; }

/* 라디오 & 섹션 내부 플렉스 정렬 */
.boardwrite_table .bowrite_radio ~ .bowrite_radio { margin-left: 15px; }
.boardwrite_table .bowrite_radio input, .boardwrite_table .bowrite_radio span { vertical-align: middle; }
.boardwrite_table .bowrite_radio span { font-size: 0.875rem; color: #222; padding-left: 5px; }
#boardwrite .hp-section { display: flex; gap: 0px; align-items: center; }
#boardwrite .hp-section span { display: block; width: 20px; text-align: center; }
#boardwrite .hp-section select, #boardwrite .hp-section input { max-width: 220px; width: 100%; }
#boardwrite .location-section { display: flex; gap: 20px; flex-wrap: nowrap; }
.location-section select { max-width: 220px; }
.wr_name { max-width: 460px; width: 100% !important; }
#boardwrite input { accent-color: #231916; }
#boardwrite input[type="radio"], #boardwrite input[type="checkbox"] { width: 12px; height: 12px; }
.check-section { display: flex; align-items: center; gap: 16px; }
.check-section label { display: flex; align-items: center; gap: 6px; font-size: 16px; letter-spacing: -0.025em; }

/* 약관 동의 및 문서 안내 테이블 */
.agree_box { margin-top: 40px; }
.agree { color: #666; line-height: 140%; background-color: #f5f5f5; padding: 20px; overflow: hidden; }
.agree ~ .agree { margin-top: 20px; }
.agree * { font-size: 14px; font-weight: 400; }
.agree h5 { display: inline-block; font-size: 14px; color: #333; }
.agree table { float: right; }
.agree td { color: #666; padding-right: 10px; }
.agree div { background-color: #f5f5f5; padding: 20px; }
.terms { letter-spacing: -0.05em; line-height: 1.4; font-size: 0.75rem; margin-top: 60px; }
.terms dl { padding: 20px 30px; overflow-y: scroll; font-size: 14px; border: 1px solid #dedede; line-height: 1.5em; height: 170px; margin-bottom: 60px; margin-top: 15px; }
.privacy { letter-spacing: -0.05em; margin-top: 60px; }
.notice-wrap { margin-top: 10px; }
.notice-wrap p { font-size: 12px; }
.notice-wrap p~p { margin-top: 8px; }
.document h2, .terms h2 { font-size: 16px; font-weight: 700; }
.document { color: #292929; font-size: 14px; line-height: 20px; width: 100%; }
.document table { border-top: 2px solid #453f3f; width: 100%; margin-top: 15px; margin-bottom: 20px; }
.document tr { border-bottom: 1px solid #ddd; }
.document td { padding: 10px 5px; text-align: center; vertical-align: middle; }
.document td.b_r { border-right: 1px solid #ddd; }
.document2 td { border-right: 1px solid #ddd; text-align: center; }
.document2 td:last-child { border-right: none; }
.document .bg_clr { background-color: #f0f0f0; }

/* 하단 버튼 셋 */
.board_btn { margin-top: 30px; }
.board_btn .bobtn_center { text-align: center; }
.board_btn .bobtn_center li { display: inline-block; text-align: center; margin: 0 5px; }
.board_btn .bobtn_center li a, .btn_regist { font-size: 18px; width: 180px; height: 50px; line-height: 50px; display: block; }
.board_btn .bobtn_center li .btn_regist { color: #fff; background-color: #353535; border: 1px solid #353535; }
.board_btn .bobtn_center li .btn_regist:hover { background-color: #4d685f; border: 1px solid #4d685f; box-sizing: border-box; }
.board_btn .bobtn_center li:nth-child(2) a { background-color: #fff; color: #353535; border: 1px solid #353535; }
.board_btn .bobtn_center li:nth-child(2) a:hover { background-color: #f1f1f1; font-weight: 700; }


/* ==========================================================================
   6. [통합 반응형 무대] @media 1080px (기존 1300, 1064, 1024 조건 정규화 보정)
   ========================================================================== */
@media all and (max-width: 1080px) {
    #boardwrite .col1 { width: 30%; }
    .market_box { gap: 4px; }
    .market_chk { gap: 4px; }
    .agree label, .chk_wrap { gap: 2px; }
    .sche_tab { margin-bottom: 30px; }
    .sche_tab li a { height: 50px; line-height: 50px; font-size: 16px; }
    .agree { padding: 10px; }
    .agree h5 { font-size: 14px; }
    .agree table { float: none; margin-top: 10px; }
    .notice-wrap { margin-top: 10px; }
    .notice-wrap p { font-size: 0.75rem; line-height: 1.4; text-indent: -1em; padding-left: 1em; }
    .notice-wrap p~p { margin-top: 8px; }
    #boardwrite .hp-section { display: flex; gap: 5px; align-items: center; flex-wrap: nowrap !important; }
    .hp-section select, .hp-section input[type="text"] { padding: 0 10px !important; }
    #boardwrite select, #boardwrite input[type="text"] { height: 35px; }
    #boardwrite .boardwrite_table th { padding: 20px 0 20px 0px; white-space: nowrap; }
    #boardwrite .boardwrite_table tr td { padding: 10px; }
    #boardwrite .boardwrite_table tr td > div { display: flex; flex-wrap: wrap; }
    .boardwrite_table .bowrite_radio { width: 33%; word-break: keep-all; }
    .boardwrite_table .bowrite_radio ~ .bowrite_radio { margin-left: 0; }
    .boardwrite_table .bowrite_radio:nth-child(n+4) { margin-top: 5px; }
    #boardwrite .location-section { gap: 5px 6px; }
    .location-section #wr_2, .location-section #wr_3 { width: calc(50% - 3px); }
    .location-section #wr_4 { width: 100%; max-width: 100%; }
    .document h2, .terms h2 { color: #231916; font-size: 16px; }
    .terms dl { padding: 15px; height: 100px; margin-bottom: 30px; }
    .terms, .privacy { margin-top: 30px; }
    .board_btn .bobtn_center { display: flex; }
    .board_btn .bobtn_center li { width: 50%; }
    .board_btn .bobtn_center li a, .btn_regist { width: 100%; }
    #boardwrite .ori { margin-top: 15px; font-size: 11px; }
    #boardwrite .zip { gap: 0 5px; flex-wrap: nowrap !important; }
    #boardwrite .zip ~ .zip { margin-top: 5px; }
    #boardwrite .zip .sc_btn { width: 85px; flex-shrink: 0; }
    #boardwrite .zip .read { max-width: 370px; }
    .confirm_text {font-size: 20px; line-height: 30px;}
}

@media all and (max-width: 767px) {
    #boardwrite .boardwrite_table br.m { display: block; }
    #boardwrite .zip .sc_btn { width: 75px; }
    #boardwrite .zip .read { max-width: 380px; }
}