/* 2026-10-23: responsive board layout shared with Szia. */
:root { --kr-line:var(--portal-border,var(--c-border,#e3e8e5)); --kr-accent:var(--portal-primary,var(--c-accent,#23694d)); }
#bsk_list_wrap, #bsk_gall_wrap, #bsk_webzine_wrap, #bsk_view_wrap, #bo_list, #bo_gall, #bo_v, #mk_wrap, #mk_view, #biz_view { min-width:0; max-width:100%; box-sizing:border-box; }
.bsk_toolbar, .mk_toolbar { flex-wrap:wrap; gap:10px; }
.bsk_cate_nav a, #bo_cate a { min-height:44px; box-sizing:border-box; display:inline-flex; align-items:center; }
.kb_view_top .kb_toplinks { flex-shrink:0; }
.bsk_view_tit, #bo_v_title .bo_v_tit { overflow-wrap:anywhere; word-break:keep-all; }
.bsk_view_content, #bo_v_con { min-width:0; overflow-wrap:anywhere; word-break:normal; }
.bsk_view_content img, #bo_v_con img { max-width:100%; height:auto; }
.bsk_view_content iframe, #bo_v_con iframe, .bsk_view_content video, #bo_v_con video { max-width:100%; }
.bsk_view_content table, #bo_v_con table { display:block; max-width:100%; overflow-x:auto; }
.bsk_view_content pre, #bo_v_con pre { max-width:100%; overflow-x:auto; }
.bsk_search_box, .bo_sch { box-sizing:border-box; max-width:calc(100vw - 32px); }
@media (max-width:1023px) {
    /* A zero flex basis lets the 100% metadata sibling take the title's space. */
    #bsk_list_wrap .bsk_list_header { display:none; }
    #bsk_list_wrap .bsk_list_item { display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px; padding:16px 4px; }
    #bsk_list_wrap .bsk_list_col_num { display:none; }
    #bsk_list_wrap .bsk_list_col_chk { flex:0 0 24px; }
    #bsk_list_wrap .bsk_list_col_subj { flex:1 0 calc(100% - 40px); width:auto; min-width:0; max-width:100%; padding:0; flex-wrap:wrap; gap:6px; }
    #bsk_list_wrap .bsk_list_col_subj > .bsk_list_tit { flex:1 0 100%; width:100%; max-width:100%; white-space:normal; overflow-wrap:anywhere; line-height:1.6; font-size:15px; }
    #bsk_list_wrap .bsk_list_col_subj > .bsk_badge_cate { font-size:11px; }
    #bsk_list_wrap .bsk_list_item .bsk_list_col_meta { display:flex; flex:0 0 100%; width:100%; gap:12px; flex-wrap:wrap; line-height:1.5; font-size:12px; }
    #bsk_list_wrap .bsk_list_item .bsk_list_col_author,
    #bsk_list_wrap .bsk_list_item .bsk_list_col_date,
    #bsk_list_wrap .bsk_list_item .bsk_list_col_hit { display:block; flex:0 1 auto; text-align:left; }
    #bsk_list_wrap .bsk_list_col_author .sv_member { max-width:160px; }
    #bsk_list_wrap .bsk_list_col_hit::before { content:"조회 "; }
    #bo_list .tbl_head01 .bo_tit { flex-wrap:wrap; gap:6px; }
    #bo_list .tbl_head01 .bo_tit > a:not(.bo_cate_link):not(.qa_topic_badge) { flex:1 0 100%; width:100%; white-space:normal; display:block; overflow-wrap:anywhere; line-height:1.6; }
    #bo_list .tbl_head01 tr { margin-bottom:10px; padding:16px; }
    #bo_list .tbl_head01 td.td_subject { margin-bottom:8px; }
    #bo_list #bo_list_total { margin:0; padding:0; }
    #bo_list #bo_btn_top { margin-bottom:16px; text-align:left; }
}
@media (max-width:640px) {
    #bsk_list_wrap { padding:8px 14px 20px; }
    .kb_view_top { padding:12px 14px; gap:8px; }
    .kb_view_top .kb_btn { padding:0 12px; font-size:12px; }
    .kb_view_tools { padding:18px 12px; }
    .kb_actions, .kb_group { gap:8px; }
    #bo_v_title .bo_v_tit, .bsk_view_tit { font-size:22px; line-height:1.5; }
    .bsk_view_info, #bo_v_info { display:flex; flex-wrap:wrap; gap:6px 10px; }
    .bsk_view_info > *, #bo_v_info > * { max-width:100%; }
    #bo_w input[type=text], #bo_w input[type=date], #bo_w select, #bo_w textarea,
    .bsk_form input[type=text], .bsk_form select, .bsk_form textarea { max-width:100%; box-sizing:border-box; }
}
