/* Community and account surfaces */
#ctt,
#faq_hhtml,
#faq_thtml { width:100%; margin-inline:auto; }
#ctt h1 { margin:0 0 30px; padding-bottom:16px; border-bottom:1px solid var(--webon-line); color:var(--webon-primary-dark); font-size:var(--webon-type-page); line-height:var(--webon-leading-heading); letter-spacing:-.035em; }
#ctt_con { color:#344054; font-size:var(--webon-type-body); line-height:1.8; }
#ctt_con img,
#ctt_con iframe { max-width:100%; height:auto; }
#ctt_con table { min-width:680px; border-collapse:collapse; }
#ctt_con table th,
#ctt_con table td { padding:12px 14px; border:1px solid var(--webon-line); }
#ctt_con:has(table) { overflow-x:auto; }

#mb_login,
#mb_confirm,
#pw_confirm,
#mb_password,
#mb_reg,
#reg_result { width:min(100%, 720px); margin-inline:auto; }
#mb_confirm h1,
#mb_reg h1,
#reg_result h1 { color:var(--webon-primary-dark); font-size:var(--webon-type-page); line-height:var(--webon-leading-heading); letter-spacing:-.035em; }
#mb_login .mbskin_box,
#mb_confirm fieldset,
#mb_reg .register,
#reg_result { padding:clamp(22px,4vw,40px); border:1px solid var(--webon-line); border-radius:12px; background:#fff; box-shadow:var(--webon-shadow-sm); }
#mb_login .frm_input,
#mb_confirm .frm_input,
#fregisterform .frm_input,
#fregisterform select,
#password_lost .frm_input { width:100%; min-height:44px; border:1px solid var(--webon-line); border-radius:8px; background:#fff; }
#mb_login .btn_submit,
#mb_confirm .btn_submit,
#fregisterform .btn_submit,
#password_lost .btn_submit { min-height:44px; border-radius:8px; background:var(--webon-primary); }
#fregisterform { width:min(100%, 900px); margin-inline:auto; }
#fregisterform .register_form_inner { border-color:var(--webon-line); border-radius:12px; }

#sch_res_detail,
#sch_res_board { width:100%; min-width:0; }
#sch_res_detail form { display:grid; grid-template-columns:160px minmax(0,1fr) auto; gap:8px; padding:22px; border:1px solid var(--webon-line); border-radius:14px; background:var(--webon-bg); }
#sch_res_detail select,
#sch_res_detail input { min-width:0; height:46px; border:1px solid var(--webon-line); border-radius:9px; background:#fff; }
#sch_res_detail input { padding-inline:14px; }
#sch_res_detail button { min-width:84px; border:0; color:#fff; background:var(--webon-primary); border-radius:9px; }
.sch_res_list { padding:28px 0; border-color:var(--webon-line); }
.sch_res_list h2 { color:var(--webon-primary-dark); font-size:var(--webon-type-subheading); line-height:1.4; }
.sch_res_list p { color:var(--webon-muted); }

#faq_con { width:100%; min-width:0; }
#faq_con .faq_li { overflow:hidden; margin-bottom:10px; border:1px solid var(--webon-line); border-radius:12px; background:#fff; }
#faq_con .faq_q { display:flex; min-height:60px; align-items:center; padding:14px 54px 14px 20px; color:var(--webon-text); font-size:var(--webon-type-body); font-weight:750; line-height:1.55; }
#faq_con .faq_a { padding:20px; border-top:1px solid var(--webon-line); color:#475467; background:var(--webon-bg); line-height:1.75; }
#faq_con .faq_li_open .faq_q { color:var(--webon-primary); }

#bo_list.qa_list,
#bo_v.qa_view,
#bo_w.qa_write { width:100%; min-width:0; }
.qa_list .tbl_wrap,
#mb_point .tbl_wrap,
#mb_scrap .tbl_wrap,
#memo_list .tbl_wrap { overflow-x:auto; }
.qa_list table,
#mb_point table,
#mb_scrap table,
#memo_list table { min-width:680px; }
.qa_list th,
.qa_list td { border-color:var(--webon-line); }

.lat { position:relative; margin:0; padding:24px; border:1px solid var(--webon-line); border-radius:16px; background:#fff; }
.lat .lat_title { margin:0; padding:0 52px 18px 0; border-bottom:1px solid var(--webon-line); color:var(--webon-primary-dark); font-size:var(--webon-type-card); line-height:1.4; }
.lat ul { margin:0; padding:10px 0 0; }
.lat li { margin:0; padding:13px 0; border-bottom:1px solid #edf1f5; }
.lat .empty_li { padding:48px 0; color:var(--webon-muted); text-align:center; }
.lat .lt_more { top:22px; right:20px; width:auto; color:var(--webon-primary); font-weight:700; }

@media (max-width:768px) {
    #sch_res_detail form { grid-template-columns:1fr auto; }
    #sch_res_detail select { grid-column:1 / -1; }
    #ctt_con table { min-width:600px; }
}

@media print {
    #hd,
    #ft,
    #top_btn { display:none !important; }
    #container.webon-main { width:100% !important; padding:0 !important; }
}
