/* Shared by the test board and four explicitly routed smg3 boards. Original board skin is unchanged. */
:is(#community-board-test, #community-board) { color:#333; font-family:'noto',sans-serif; }
:is(#community-board-test, #community-board), :is(#community-board-test, #community-board) * { box-sizing:border-box; }
:is(#community-board-test, #community-board) .st_wrap { display:flex; min-height:290px; background-image:url('../img/community/community_hub_cover_02.png') !important; background-size:cover; background-position:center; }
/* Override the optional inline layout background only for this test board. */
:is(#community-board-test, #community-board) .st_wrap:before { background:linear-gradient(to bottom,rgba(0,0,0,.55),rgba(0,0,0,.5)); }
:is(#community-board-test, #community-board) .st_box { display:block; width:100%; padding:110px 60px 32px; }
:is(#community-board-test, #community-board) .st_txt { width:100%; }
:is(#community-board-test, #community-board) .st_txt > h2 { font-size:40px; font-weight:700; line-height:1.3; letter-spacing:0; text-indent:0; }
:is(#community-board-test, #community-board) .st_txt > h3 { line-height:1.5; }
:is(#community-board-test, #community-board) .st_txt > p { margin-top:16px; font-size:16px; font-weight:400; line-height:1.7; }
:is(#community-board-test, #community-board) #content { padding:36px 40px 64px; overflow:visible; }
:is(#community-board-test, #community-board) #content > .content_container { width:100%; max-width:1200px; margin:0 auto; }
:is(#community-board-test, #community-board) .board { min-width:0; font-size:16px; line-height:1.7; }
:is(#community-board-test, #community-board) #nor > .bd_list > table { width:100%; border-collapse:collapse; box-shadow:none; border-top:2px solid #333; }
:is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th { background:#f7f7f7; }
:is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > p,
:is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > a { padding:16px 12px; font-size:14px; font-weight:700; }
:is(#community-board-test, #community-board) #nor > .bd_list > table > tbody > tr > td { padding:18px 12px; font-size:14px; border-bottom:1px solid #e5e5e5; }
:is(#community-board-test, #community-board) #nor > .bd_list > table > tbody > tr > td > a { font-size:15px; font-weight:400; }
:is(#community-board-test, #community-board) #nor td.title { overflow-wrap:anywhere; word-break:normal; }
:is(#community-board-test, #community-board) #nor td.title > a { font-size:16px; line-height:1.6; }
:is(#community-board-test, #community-board) #nor td.time { white-space:nowrap; color:#666; }
:is(#community-board-test, #community-board) .bd_ft { margin-top:24px; }
:is(#community-board-test, #community-board) .bd_sch { max-width:100%; gap:8px; }
:is(#community-board-test, #community-board) .bd_sch > select { min-height:44px; margin:0; font-size:16px; }
:is(#community-board-test, #community-board) .bd_sch > .sch_input { min-width:0; }
:is(#community-board-test, #community-board) .bd_sch > .sch_input > input[type=text] { min-height:44px; font-size:16px; padding:8px 48px 8px 12px; }
:is(#community-board-test, #community-board) .bd_sch > .sch_input > button { min-width:44px; min-height:44px; }
:is(#community-board-test, #community-board) .bd_btn, :is(#community-board-test, #community-board) .rd_btn { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
:is(#community-board-test, #community-board) .bd_btn > a, :is(#community-board-test, #community-board) .rd_btn > a,
:is(#community-board-test, #community-board) .board_write .btn, :is(#community-board-test, #community-board) .board_write .btn_insert { display:inline-flex; align-items:center; justify-content:center; min-height:44px; margin:0; padding:10px 20px; border:1px solid #ccc; border-radius:100px; background:#fff; color:#333; font-size:15px; line-height:1.5; }
:is(#community-board-test, #community-board) .bd_btn > a:hover, :is(#community-board-test, #community-board) .rd_btn > a:hover,
:is(#community-board-test, #community-board) .board_write .btn_insert { background:#ca3b3f; border-color:#ca3b3f; color:#fff; }
:is(#community-board-test, #community-board) .bd_page { padding-top:24px; }
:is(#community-board-test, #community-board) .bd_page > a, :is(#community-board-test, #community-board) .bd_page > strong { min-width:36px; min-height:44px; padding:10px 8px; line-height:24px; }
:is(#community-board-test, #community-board) .board_read { width:100%; max-width:none; margin:0 0 40px; }
:is(#community-board-test, #community-board) .read_header { margin:0 0 28px; padding:0 0 24px; }
:is(#community-board-test, #community-board) .read_header > h1 { margin:0; font-size:32px; line-height:1.4; overflow-wrap:anywhere; }
:is(#community-board-test, #community-board) .read_header > p { margin:12px 0 0; font-size:16px; line-height:1.7; }
:is(#community-board-test, #community-board) .read_body { margin:0; padding:0; overflow-wrap:anywhere; }
:is(#community-board-test, #community-board) .read_body .xe_content,
:is(#community-board-test, #community-board) .read_body .xe_content p { font-size:16px; font-weight:400; line-height:1.8; }
:is(#community-board-test, #community-board) .read_body .xe_content p { margin:0 0 16px; }
:is(#community-board-test, #community-board) .read_body img {
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    margin-left:auto;
    margin-right:auto;
}
:is(#community-board-test, #community-board) .read_body iframe, :is(#community-board-test, #community-board) .read_body video { max-width:100%; }
:is(#community-board-test, #community-board) .read_body { overflow-x:auto; }
:is(#community-board-test, #community-board) .read_footer { margin-top:32px; }
:is(#community-board-test, #community-board) .board_write { width:100%; min-width:0; }
:is(#community-board-test, #community-board) .write_header { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
:is(#community-board-test, #community-board) .write_header .iText { flex:1 1 280px; width:auto; min-width:0; min-height:44px; padding:10px 12px; font-size:16px; }
:is(#community-board-test, #community-board) .write_header select { min-height:44px; max-width:100%; font-size:16px; }
:is(#community-board-test, #community-board) .write_editor { width:100%; min-width:0; max-width:100%; margin-bottom:24px; }
:is(#community-board-test, #community-board) .write_editor > *, :is(#community-board-test, #community-board) .write_editor iframe { max-width:100%; }
:is(#community-board-test, #community-board) .board_write textarea { max-width:100%; font-size:16px; line-height:1.7; }
:is(#community-board-test, #community-board) .write_footer { margin-top:24px; }
:is(#community-board-test, #community-board) .write_option { line-height:2; margin-bottom:16px; }
:is(#community-board-test, #community-board) .write_author { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
:is(#community-board-test, #community-board) .write_author .item { max-width:100%; margin:0; }
:is(#community-board-test, #community-board) .write_author .iText { max-width:100%; min-height:44px; font-size:16px; }
:is(#community-board-test, #community-board) .exForm { max-width:100%; overflow-x:auto; }
:is(#community-board-test, #community-board) a:focus-visible, :is(#community-board-test, #community-board) button:focus-visible,
:is(#community-board-test, #community-board) input:focus-visible, :is(#community-board-test, #community-board) select:focus-visible,
:is(#community-board-test, #community-board) textarea:focus-visible { outline:2px solid #ca3b3f !important; outline-offset:3px; }
@media (max-width:1024px) {
    :is(#community-board-test, #community-board) #content { padding:40px 20px 48px; }
    :is(#community-board-test, #community-board) .st_box { padding-left:20px; padding-right:20px; }
}
@media (max-width:600px) {
    :is(#community-board-test, #community-board) .st_wrap { min-height:210px; }
    :is(#community-board-test, #community-board) .st_box { padding:90px 20px 20px; }
    :is(#community-board-test, #community-board) .st_txt > h2 { font-size:28px; line-height:1.3; }
    :is(#community-board-test, #community-board) .st_txt > h3 { font-size:16px; letter-spacing:0; text-indent:0; }
    :is(#community-board-test, #community-board) .st_txt > p { margin-top:12px; font-size:14px; line-height:1.6; }
    :is(#community-board-test, #community-board) #content { padding:24px 20px 32px; }
    /* Match actual header/body classes; keep title, date and manager checkboxes. */
    :is(#community-board-test, #community-board) #nor th.no, :is(#community-board-test, #community-board) #nor td.no,
    :is(#community-board-test, #community-board) #nor th.author, :is(#community-board-test, #community-board) #nor td.author,
    :is(#community-board-test, #community-board) #nor th.count, :is(#community-board-test, #community-board) #nor td.count,
    :is(#community-board-test, #community-board) #nor td.readNum, :is(#community-board-test, #community-board) #nor td.voteNum { display:none; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > p,
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > a { padding:12px 6px; font-size:13px; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th.bd_chk > div { padding:12px 4px; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > tbody > tr > td { padding:16px 6px; }
    :is(#community-board-test, #community-board) #nor td.title > a { font-size:16px; }
    :is(#community-board-test, #community-board) #nor td.time { font-size:12px; }
    :is(#community-board-test, #community-board) .bd_sch { float:none; width:100%; margin:0 0 16px; }
    :is(#community-board-test, #community-board) .bd_sch > select { flex:0 1 110px; min-width:0; }
    :is(#community-board-test, #community-board) .bd_sch > .sch_input { flex:1; }
    :is(#community-board-test, #community-board) .bd_btn { float:none; justify-content:flex-end; }
    :is(#community-board-test, #community-board) .bd_btn > a > span { display:inline; }
    :is(#community-board-test, #community-board) .bd_page { display:flex; flex-wrap:wrap; justify-content:center; gap:2px; }
    :is(#community-board-test, #community-board) .read_header > h1 { font-size:26px; }
    :is(#community-board-test, #community-board) .read_header { margin-bottom:24px; padding-bottom:20px; }
    :is(#community-board-test, #community-board) .write_header .iText { flex-basis:100%; width:100%; }
    :is(#community-board-test, #community-board) .write_author .item { width:100%; }
    :is(#community-board-test, #community-board) .write_footer > div:last-child { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; max-width:100%; }
}

/* Desktop list uses the available width; compact metadata leaves room for titles. */
@media (min-width:1025px) {
    :is(#community-board-test, #community-board) .board, :is(#community-board-test, #community-board) #nor, :is(#community-board-test, #community-board) #nor > .bd_list { width:100%; max-width:none; padding-left:0; padding-right:0; }
    :is(#community-board-test, #community-board) #nor th.no, :is(#community-board-test, #community-board) #nor th.author,
    :is(#community-board-test, #community-board) #nor th.time, :is(#community-board-test, #community-board) #nor th.count { width:1%; white-space:nowrap; }
    :is(#community-board-test, #community-board) #nor td.author, :is(#community-board-test, #community-board) #nor td.readNum,
    :is(#community-board-test, #community-board) #nor td.voteNum { white-space:nowrap; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th.title { width:auto; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > p,
    :is(#community-board-test, #community-board) #nor > .bd_list > table > thead > tr > th > a { padding-left:10px; padding-right:10px; }
    :is(#community-board-test, #community-board) #nor > .bd_list > table > tbody > tr > td { padding-left:10px; padding-right:10px; }
}

/* Live board variants only: keep the validated test board unchanged. */
#community-board .st_txt { text-align:center; }
#community-board .write_header .iText { flex-basis:100%; width:100%; }
#community-board .write_footer > div:last-child { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; max-width:100%; }
#community-board .bd_txt_box { overflow-wrap:anywhere; }
#community-board .bd_list > ul > li > .bd_box > .bd_txt > .bd_txt_box > h3 { font-size:24px; line-height:1.4; }
#community-board .bd_list > ul > li > .bd_box > .bd_txt > .bd_txt_box > p { font-size:14px; font-weight:400; line-height:1.7; margin-top:8px; }
#community-board .bd_list > ul > li > .bd_box > .bd_txt > .bd_txt_box > p.summary { font-size:16px; }
#community-board .bd_tmb > img { display:block; width:100%; height:auto; }
#community-board.community-board-maesilhouse #wez_a > .bd_list > ul > li { padding-bottom:32px; }
#community-board.community-board-maesilhouse #wez_a .bd_box { align-items:flex-start; }
#community-board.community-board-maesilhouse #wez_a .bd_box > .bd_tmb,
#community-board.community-board-maesilhouse #wez_a .bd_box > .no_tmb { width:38%; }
#community-board.community-board-maesilhouse #wez_a .bd_box > .bd_txt { width:62%; padding:20px 0 20px 32px; }
/* Preserve the skin's flex-column counts for album; photo gets larger two-column images. */
#community-board #wez_b > .bd_list > ul { margin:0 -16px; }
#community-board #wez_b > .bd_list > ul > li { padding:0 16px 48px; min-width:0; }
#community-board #wez_b .bd_box > .bd_txt { padding:20px 0 0; }
#community-board.community-board-photo #wez_b > .bd_list > ul > li { width:50%; }
@media (min-width:1025px) {
    #community-board #content { padding-left:60px; padding-right:60px; }
}
@media (max-width:800px) {
    #community-board.community-board-maesilhouse #wez_a .bd_box > .bd_tmb,
    #community-board.community-board-maesilhouse #wez_a .bd_box > .no_tmb,
    #community-board.community-board-maesilhouse #wez_a .bd_box > .bd_txt { width:100%; }
    #community-board.community-board-maesilhouse #wez_a .bd_box > .bd_txt { padding:20px 0 0; }
}
@media (max-width:600px) {
    #community-board #wez_b > .bd_list > ul { margin:0; }
    #community-board #wez_b > .bd_list > ul > li,
    #community-board.community-board-photo #wez_b > .bd_list > ul > li { width:100%; padding:0 0 32px; }
    #community-board .bd_list > ul > li > .bd_box > .bd_txt > .bd_txt_box > h3 { font-size:22px; }
}

/* Compact mobile webzines only; no changes to notice, cover or board controls. */
@media (max-width:600px) {
    #community-board.community-board-maesilhouse #wez_a > .bd_list > ul > li { padding-bottom:24px; }
    #community-board.community-board-album #wez_b > .bd_list > ul > li,
    #community-board.community-board-photo #wez_b > .bd_list > ul > li { padding-bottom:24px; }
    #community-board.community-board-maesilhouse #wez_a .bd_box > .bd_txt,
    #community-board.community-board-album #wez_b .bd_box > .bd_txt,
    #community-board.community-board-photo #wez_b .bd_box > .bd_txt { padding:12px 0 0; }
    /* Contain keeps the entire thumbnail visible without stretching or new cropping. */
    #community-board.community-board-maesilhouse #wez_a .bd_tmb > img,
    #community-board.community-board-album #wez_b .bd_tmb > img { width:100%; height:auto; max-height:220px; object-fit:contain; }
    #community-board.community-board-photo #wez_b .bd_tmb > img { width:100%; height:auto; max-height:260px; object-fit:contain; }
    #community-board.community-board-maesilhouse #wez_a .bd_txt_box > h3,
    #community-board.community-board-album #wez_b .bd_txt_box > h3,
    #community-board.community-board-photo #wez_b .bd_txt_box > h3 { font-size:20px; line-height:1.4; }
    #community-board.community-board-maesilhouse #wez_a .bd_txt_box > p.summary,
    #community-board.community-board-album #wez_b .bd_txt_box > p.summary,
    #community-board.community-board-photo #wez_b .bd_txt_box > p.summary {
        display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;
        font-size:15px; line-height:1.6; margin-top:8px;
    }
    #community-board.community-board-maesilhouse #wez_a .bd_txt_box > p.summary { -webkit-line-clamp:3; max-height:4.8em; }
    #community-board.community-board-album #wez_b .bd_txt_box > p.summary { -webkit-line-clamp:2; max-height:3.2em; }
    #community-board.community-board-photo #wez_b .bd_txt_box > p.summary { -webkit-line-clamp:1; max-height:1.6em; }
}

/* Fill the remaining viewport below the 290px cover on short live boards. */
@media (min-width:601px) {
    #community-board #content {
        min-height:calc(100vh - 430px);
    }

    #community-board #content:has(.board_write) {
        width:min(1200px, calc(100% - 40px));
        margin-left:auto;
        margin-right:auto;
    }

    #community-board .write_editor .cke_contents {
        height:420px !important;
    }
}

