@charset "utf-8";

body {background:#0a0d12;color:#d6d9de}
#hd_login_msg {display:none}
#hd, #wrapper, #ft {min-width:1280px}
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#container_title {color:#fff}
#container_title span {color:#fff}

/* 헤더 */
.jc_header_wrap {background:#000;border-bottom:1px solid #232831}
.jc_header_inner {width:1280px;margin:0 auto;display:grid;grid-template-columns:220px 1fr 260px;gap:18px;align-items:center;padding:12px 0}
.jc_logo_box img {display:block;max-width:100%;height:auto;max-height:54px}
.jc_search_box form {display:flex;align-items:stretch;height:44px;border:2px solid #4d525e;background:#090b0f}
.jc_search_box input {flex:1;border:0;background:transparent;color:#fff;padding:0 14px;font-size:15px}
.jc_search_box input::placeholder {color:#8c93a1}
.jc_search_box button {width:54px;border:0;background:#1b2330;color:#fff;font-size:24px;cursor:pointer}
.jc_header_right {display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.jc_header_right a {display:inline-block;padding:8px 12px;background:#171a20;border:1px solid #2a3039;color:#dbe1ea;font-size:12px;border-radius:3px}
.jc_header_right a:hover {background:#222834;color:#fff}

/* 퀵바 */
.jc_quickbar {background:#2b2f35;border-top:1px solid #3d434c;border-bottom:1px solid #17191d}
.jc_quickbar_inner {width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:8px 0}
.jc_login_form {display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.jc_login_form input {width:150px;height:32px;border:1px solid #4b515c;background:#101318;color:#fff;padding:0 10px}
.jc_login_form button {height:32px;padding:0 16px;border:0;background:#1a73e8;color:#fff;font-weight:700;cursor:pointer}
.jc_guest_links, .jc_member_links {display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.jc_guest_links a, .jc_member_links a {display:inline-block;padding:7px 12px;background:#3a3f47;color:#f5f7fa;border-radius:2px;font-size:12px}
.jc_guest_links a:hover, .jc_member_links a:hover {background:#4a505a}
.jc_member_summary {display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#dfe4ea;font-size:13px}
.jc_member_summary strong {color:#fff;font-size:14px}
.jc_member_summary b {color:#ffd84d}

/* 불필요한 기본 메뉴 숨김 */
#gnb, #tnb, .hd_login {display:none !important}

/* 메인 3단 레이아웃 */
.jc_portal_wrap {width:1280px;margin:16px auto 40px;display:grid;grid-template-columns:220px 1fr 260px;gap:18px;align-items:start}
.jc_left_col, .jc_center_col, .jc_right_col {min-width:0}
.jc_box {background:#0f1319;border:1px solid #272d37;box-shadow:0 0 0 1px rgba(0,0,0,.18) inset}
.jc_box_tit, .jc_box_head {display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#181d24;border-bottom:1px solid #2e3642}
.jc_box_tit, .jc_box_head h3 {font-size:20px;line-height:1.2;color:#fff;letter-spacing:-0.03em}
.jc_box_head h3 {margin:0;font-size:20px}
.jc_box_head a, .jc_box_head span {font-size:12px;color:#adb6c3}
.jc_empty {padding:18px 12px;color:#95a0af}

/* 좌측 게시판 */
.jc_sidebar_box {overflow:hidden}
.jc_board_group {border-bottom:1px solid #20262f}
.jc_board_group:last-child {border-bottom:0}
.jc_board_group > strong {display:block;padding:8px 12px;background:#0b4a00;color:#fff;font-size:15px}
.jc_board_group ul {padding:6px 0}
.jc_board_group li a {display:flex;align-items:center;justify-content:space-between;padding:7px 12px;color:#e3e7ed;font-size:14px}
.jc_board_group li a:hover {background:#1b212a}
.jc_board_group li em {font-style:normal;color:#9aa2af;font-size:11px}
.jc_board_group li span {display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:155px}
.jc_grade_box {margin-top:18px}
.jc_grade_box ul {padding:8px 12px}
.jc_grade_box li {display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px dashed #252c35;color:#d7dbe2;font-size:13px}
.jc_grade_box li:last-child {border-bottom:0}
.jc_grade_box em {font-style:normal;color:#ffd84d}

/* 중앙 영역 */
.jc_feature_grid {display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:12px}
.jc_feature_item {display:flex;flex-direction:column;justify-content:space-between;min-height:130px;padding:14px;background:linear-gradient(180deg,#242a34,#151a22);border:1px solid #2c3440;color:#fff}
.jc_feature_item:hover {border-color:#5f90f2;background:linear-gradient(180deg,#2d3440,#161c26)}
.jc_feature_badge {display:inline-block;align-self:flex-start;padding:3px 7px;background:#1a73e8;border-radius:2px;font-size:11px;color:#fff;margin-bottom:10px}
.jc_feature_item strong {display:block;font-size:16px;line-height:1.4;min-height:44px}
.jc_feature_item em {display:block;margin-top:12px;font-style:normal;font-size:12px;color:#b7c0cb}

.jc_center_split {display:grid;grid-template-columns:1fr 330px;gap:18px;margin-top:18px}
.jc_best_rank_list {padding:8px 12px 12px}
.jc_best_rank_list li {border-bottom:1px solid #20262f}
.jc_best_rank_list li:last-child {border-bottom:0}
.jc_best_rank_list li a {display:grid;grid-template-columns:34px 1fr 46px;gap:10px;align-items:center;padding:9px 0;color:#eef2f7;font-size:14px}
.jc_best_rank_list li a:hover {color:#79a8ff}
.jc_rank_no {display:flex;align-items:center;justify-content:center;height:24px;background:#2b3340;color:#fff;font-weight:700;font-size:12px}
.jc_best_rank_list li:nth-child(-n+3) .jc_rank_no {background:#1a73e8}
.jc_rank_subject {overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.jc_rank_meta {text-align:right;color:#9ca5b3;font-size:12px}

.jc_side_info {display:grid;gap:18px}
.jc_notice_box .lt, .jc_notice_box .lat {width:auto;margin:0;border:0;background:transparent}
.jc_notice_box .lt ul, .jc_notice_box .lat ul {padding:8px 12px 12px}
.jc_notice_box .lt li, .jc_notice_box .lat li {padding:8px 0;border-bottom:1px solid #20262f}
.jc_notice_box .lt li:last-child, .jc_notice_box .lat li:last-child {border-bottom:0}
.jc_notice_box .lt a, .jc_notice_box .lat a {color:#ebeff4}
.jc_notice_box .lt .lt_date, .jc_notice_box .lat .lt_date {color:#8f98a6}
.jc_notice_box .lt_more {display:none}

.jc_rank_table {width:100%;border-collapse:collapse}
.jc_rank_table th, .jc_rank_table td {padding:9px 12px;border-top:1px solid #20262f;color:#e7ebf0;font-size:13px;text-align:left}
.jc_rank_table th {background:#131922;color:#b4bdc9}
.jc_rank_table td:last-child {text-align:right;color:#ffd84d}

/* 우측 이벤트 */
.jc_event_list {padding:12px}
.jc_event_list li + li {margin-top:12px}
.jc_event_list a {display:block;background:#090d12;border:1px solid #242c36;color:#fff}
.jc_event_list img {display:block;width:100%;height:auto;background:#111}
.jc_event_list strong {display:block;padding:10px 10px 4px;font-size:15px;color:#fff}
.jc_event_list span {display:block;padding:0 10px 12px;color:#b3bcc8;font-size:12px;line-height:1.5}
.jc_event_list a:hover {border-color:#5f90f2}

/* 모바일 */
.jc_mobile_home {padding:12px;background:#0a0d12}
.jc_mobile_home .jc_panel {background:#0f1319;border:1px solid #272d37;margin-bottom:12px}
.jc_mobile_home .jc_panel_head {padding:10px 12px;background:#181d24;border-bottom:1px solid #2e3642}
.jc_mobile_home .jc_panel_head h3 {font-size:16px;color:#fff}
.jc_mobile_login {display:grid;grid-template-columns:1fr 1fr auto;gap:8px;padding:12px}
.jc_mobile_login input {height:40px;padding:0 10px;border:1px solid #4b515c;background:#101318;color:#fff}
.jc_mobile_login button {height:40px;padding:0 14px;border:0;background:#1a73e8;color:#fff}
.jc_mobile_links {display:flex;gap:8px;padding:0 12px 12px}
.jc_mobile_links a {display:inline-block;padding:8px 10px;background:#3a3f47;color:#fff;font-size:12px}
.jc_mobile_member {display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;color:#fff}
.jc_mobile_member strong {width:100%}
.jc_mobile_member span, .jc_mobile_member a {display:inline-block;padding:7px 10px;background:#1b2330;color:#fff;font-size:12px}
.jc_mobile_boards ul {display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}
.jc_mobile_boards li a {display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid #2a3039;background:#131922;color:#e8edf3;font-size:13px}
.jc_mobile_boards em {font-style:normal;color:#9ca5b3;font-size:11px}
.jc_best_list {padding:8px 12px 12px}
.jc_best_list li {border-bottom:1px solid #20262f}
.jc_best_list li:last-child {border-bottom:0}
.jc_best_list li a {display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:8px 0;color:#fff}
.jc_best_rank {display:flex;justify-content:center;align-items:center;width:24px;height:24px;background:#2b3340;color:#fff;font-size:12px;font-weight:700}
.jc_best_subject strong {display:block;color:#fff;font-size:13px;line-height:1.4}
.jc_best_subject em {display:block;color:#9ca5b3;font-size:11px;font-style:normal}

@media (max-width: 1280px) {
    #hd, #wrapper, #ft {min-width:0}
    .jc_header_inner, .jc_quickbar_inner, .jc_portal_wrap {width:auto;margin-left:10px;margin-right:10px}
    .jc_header_inner {grid-template-columns:200px 1fr 220px}
    .jc_portal_wrap {grid-template-columns:200px 1fr 240px}
}

@media (max-width: 900px) {
    .jc_portal_wrap, .jc_center_split, .jc_feature_grid, .jc_quickbar_inner, .jc_header_inner {display:block}
    .jc_header_right {margin-top:10px;justify-content:flex-start}
    .jc_search_box {margin:10px 0}
    .jc_quickbar_inner {padding:10px}
    .jc_login_form {margin-bottom:10px}
    .jc_guest_links, .jc_member_links {justify-content:flex-start;margin-top:10px}
    .jc_left_col, .jc_center_col, .jc_right_col {margin-bottom:18px}
    .jc_feature_item {min-height:100px;margin-bottom:10px}
}


/* 모바일 포털 강화 v3 */
.jc_m_hd {min-width:0 !important}
.jc_m_hd .to_content {position:absolute;left:-9999px}
.jc_m_header {padding:12px;background:#000;border-bottom:1px solid #232831}
.jc_m_logo_row {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.jc_m_logo img {display:block;max-height:34px;width:auto}
.jc_m_icon_link {display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;background:#171a20;border:1px solid #2a3039;color:#fff;font-size:18px}
.jc_m_search {display:flex;align-items:stretch;height:40px;border:1px solid #404754;background:#0d1015;margin-bottom:10px}
.jc_m_search input {flex:1;border:0;background:transparent;color:#fff;padding:0 12px;font-size:14px}
.jc_m_search input::placeholder {color:#8c93a1}
.jc_m_search button {width:46px;border:0;background:#1a73e8;color:#fff;font-size:18px}
.jc_m_member_box {display:flex;flex-wrap:wrap;gap:6px;padding:10px;border:1px solid #252c35;background:#0d1117;color:#e9edf3;margin-bottom:10px}
.jc_m_member_box strong {width:100%;font-size:15px;color:#fff}
.jc_m_member_box span {display:inline-block;padding:5px 8px;background:#18202c;font-size:12px}
.jc_m_member_box b {color:#ffd84d}
.jc_m_login_form {display:grid;grid-template-columns:1fr 1fr auto;gap:6px;margin-bottom:10px}
.jc_m_login_form input {height:38px;border:1px solid #404754;background:#0d1015;color:#fff;padding:0 10px;font-size:14px}
.jc_m_login_form button {height:38px;border:0;background:#1a73e8;color:#fff;padding:0 12px;font-weight:700}
.jc_m_quick_links {display:flex;flex-wrap:wrap;gap:6px}
.jc_m_quick_links a {display:inline-block;padding:8px 10px;background:#171a20;border:1px solid #2a3039;color:#e0e6ee;font-size:12px}
.jc_m_wrapper {min-width:0 !important}
.jc_m_sub_title {background:#181d24 !important;color:#fff !important;border-bottom:1px solid #2e3642 !important}
.jc_mobile_portal {padding:12px;background:#0a0d12}
.jc_mobile_board_grid {display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}
.jc_mobile_board_grid a {display:flex;justify-content:space-between;align-items:center;padding:11px;border:1px solid #2a3039;background:#131922;color:#e8edf3;font-size:13px}
.jc_mobile_board_grid strong {font-size:13px;font-weight:700;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:110px}
.jc_mobile_board_grid em {font-style:normal;color:#9ca5b3;font-size:11px}
.jc_mobile_notice_latest .lt, .jc_mobile_notice_latest .lat {width:auto;margin:0;border:0;background:transparent}
.jc_mobile_notice_latest .lt ul, .jc_mobile_notice_latest .lat ul {padding:8px 12px 12px}
.jc_mobile_notice_latest .lt li, .jc_mobile_notice_latest .lat li {padding:8px 0;border-bottom:1px solid #20262f}
.jc_mobile_notice_latest .lt li:last-child, .jc_mobile_notice_latest .lat li:last-child {border-bottom:0}
.jc_mobile_notice_latest .lt a, .jc_mobile_notice_latest .lat a {color:#ebeff4}
.jc_mobile_notice_latest .lt .lt_date, .jc_mobile_notice_latest .lat .lt_date {color:#8f98a6}
.jc_mobile_event_list {padding:12px}
.jc_mobile_event_list a {display:block;background:#090d12;border:1px solid #242c36;color:#fff;margin-bottom:12px}
.jc_mobile_event_list a:last-child {margin-bottom:0}
.jc_mobile_event_list img {display:block;width:100%;height:auto}
.jc_mobile_event_list strong {display:block;padding:10px 10px 4px;font-size:15px}
.jc_mobile_event_list span {display:block;padding:0 10px 12px;color:#b3bcc8;font-size:12px;line-height:1.5}
.jc_mobile_event_list a:hover {border-color:#5f90f2}
@media (max-width: 480px) {
  .jc_m_login_form {grid-template-columns:1fr 1fr;}
  .jc_m_login_form button {grid-column:1 / -1}
  .jc_mobile_board_grid {grid-template-columns:1fr 1fr}
}


/* v4 진컴 요청 수정 */
.jc_logo_box img {max-height:58px;width:auto}
.jc_header_inner {grid-template-columns:240px 1fr 210px}
.jc_header_right {align-items:center}
.jc_header_right a {white-space:nowrap}
.jc_quickbar_inner {
    width:1280px;
    margin:0 auto;
    display:grid;
    grid-template-columns:220px 1fr 260px;
    gap:18px;
    align-items:center;
    min-height:48px;
    padding:8px 0;
}
.jc_guest_login_area {
    grid-column:1 / 3;
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
}
.jc_guest_login_area .jc_login_form {
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:nowrap;
    margin:0;
}
.jc_guest_login_area .jc_login_form input {width:135px}
.jc_login_account_links {
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:nowrap;
}
.jc_login_account_links a {
    display:inline-block;
    height:32px;
    line-height:32px;
    padding:0 10px;
    background:#3a3f47;
    color:#f5f7fa;
    border-radius:2px;
    font-size:12px;
    white-space:nowrap;
}
.jc_login_account_links a:hover {background:#4a505a}
.jc_guest_support_links {
    grid-column:3;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    flex-wrap:wrap;
}
.jc_guest_support_links a {
    display:inline-block;
    height:32px;
    line-height:32px;
    padding:0 10px;
    background:#171a20;
    border:1px solid #2a3039;
    color:#e0e6ee;
    font-size:12px;
    white-space:nowrap;
}
.jc_guest_support_links a:hover {background:#252b35;color:#fff}
.jc_portal_wrap {
    width:1280px;
    margin:0 auto 40px;
    padding-top:16px;
    grid-template-columns:220px 1fr 260px;
}
.jc_center_split {
    grid-template-columns:1fr 330px;
}
.jc_side_info {display:block}
.jc_notice_box {height:100%}
.jc_rank_box {display:none !important}

/* 모바일 v4 */
.jc_m_logo img {max-height:40px;width:auto;max-width:260px}
.jc_m_login_area {
    display:grid;
    grid-template-columns:1fr auto;
    gap:6px;
    align-items:center;
    margin-bottom:10px;
}
.jc_m_login_area .jc_m_login_form {
    display:grid;
    grid-template-columns:1fr 1fr auto;
    gap:6px;
    margin:0;
}
.jc_m_account_links {
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
}
.jc_m_account_links a {
    display:block;
    height:38px;
    line-height:38px;
    padding:0 9px;
    background:#3a3f47;
    border:1px solid #4b515c;
    color:#fff;
    font-size:12px;
    text-align:center;
    white-space:nowrap;
}
.jc_m_quick_links a:first-child {background:#111827;border-color:#374151}

@media (max-width: 1280px) {
    .jc_header_inner, .jc_quickbar_inner, .jc_portal_wrap {
        width:auto;
        margin-left:10px;
        margin-right:10px;
    }
    .jc_header_inner {grid-template-columns:230px 1fr 190px}
    .jc_quickbar_inner {grid-template-columns:210px 1fr 230px}
    .jc_portal_wrap {grid-template-columns:210px 1fr 230px}
}

@media (max-width: 900px) {
    .jc_quickbar_inner {
        display:block;
        margin:0 10px;
        padding:10px 0;
    }
    .jc_guest_login_area {
        display:block;
    }
    .jc_guest_login_area .jc_login_form {
        display:grid;
        grid-template-columns:1fr 1fr auto;
        gap:6px;
        margin-bottom:6px;
    }
    .jc_guest_login_area .jc_login_form input {width:auto}
    .jc_login_account_links {
        display:grid;
        grid-template-columns:1fr 1fr;
        margin-bottom:8px;
    }
    .jc_guest_support_links {
        justify-content:flex-start;
    }
}

@media (max-width: 480px) {
    .jc_m_login_area {
        grid-template-columns:1fr;
    }
    .jc_m_login_area .jc_m_login_form {
        grid-template-columns:1fr 1fr;
    }
    .jc_m_login_area .jc_m_login_form button {
        grid-column:1 / -1;
    }
    .jc_m_account_links {
        grid-template-columns:1fr 1fr;
    }
}


/* v7 final align: 로그인 한 줄 정렬 + 게시판 시작선 맞춤 */
html, body, input, button, select, textarea {
    font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic","Trebuchet MS",sans-serif;
    letter-spacing:-0.02em;
}

/* 상단: 로고 + 검색창만 사용 */
.jc_header_inner {
    width:1280px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:240px minmax(0,1fr) !important;
    gap:18px !important;
    align-items:center !important;
}
.jc_header_right {
    display:none !important;
}
.jc_logo_box img {
    max-width:240px !important;
    max-height:60px !important;
    width:auto !important;
}
.jc_search_box {
    min-width:0 !important;
}
.jc_search_box form {
    height:48px !important;
    border-radius:14px !important;
    overflow:hidden !important;
}
.jc_search_box input {
    font-size:16px !important;
    padding:0 18px !important;
}
.jc_search_box button {
    width:62px !important;
}

/* 핵심: 로그인 줄과 메인 3단 시작선을 같은 1280px 기준으로 통일 */
.jc_quickbar_inner,
.jc_portal_wrap {
    width:1280px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

/* 로그인 영역은 절대 두 줄 grid로 만들지 않고 한 줄 flex 고정 */
.jc_quickbar_inner {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    min-height:48px !important;
    padding:8px 0 !important;
}

.jc_guest_login_area {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex:1 1 auto !important;
    min-width:0 !important;
}

.jc_guest_login_area .jc_login_form {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:6px !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    flex:0 0 auto !important;
}

.jc_guest_login_area .jc_login_form input {
    display:block !important;
    width:132px !important;
    height:34px !important;
    line-height:34px !important;
    padding:0 10px !important;
    border-radius:10px !important;
    box-sizing:border-box !important;
}

.jc_guest_login_area .jc_login_form button {
    display:block !important;
    width:72px !important;
    height:34px !important;
    line-height:34px !important;
    padding:0 !important;
    border-radius:10px !important;
    box-sizing:border-box !important;
    flex:0 0 auto !important;
}

/* 회원가입 / 아이디 비밀번호 찾기 겹침 방지 */
.jc_login_account_links {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:6px !important;
    flex:0 0 auto !important;
    min-width:max-content !important;
    margin:0 !important;
    padding:0 !important;
}

.jc_login_account_links a {
    display:block !important;
    height:34px !important;
    line-height:34px !important;
    padding:0 11px !important;
    border-radius:10px !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
}

/* FAQ / 사이트문의는 오른쪽으로 밀되 겹치지 않게 */
.jc_guest_support_links {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    margin-left:auto !important;
    flex:0 0 auto !important;
    min-width:max-content !important;
}

.jc_guest_support_links a {
    display:block !important;
    height:34px !important;
    line-height:34px !important;
    padding:0 11px !important;
    border-radius:10px !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
}

/* 메인 게시판 시작선은 로그인 ID 시작선과 동일 */
.jc_portal_wrap {
    display:grid !important;
    grid-template-columns:220px minmax(0,1fr) 260px !important;
    gap:18px !important;
    align-items:start !important;
    padding-top:16px !important;
    margin-top:0 !important;
}

.jc_left_col {
    margin-top:0 !important;
}

/* 중앙 회원안내 제거 */
.jc_rank_box {
    display:none !important;
}

/* 둥근 느낌 */
.jc_box,
.jc_panel,
.jc_feature_item,
.jc_event_list a,
.jc_mobile_event_list a,
.jc_mobile_board_grid a {
    border-radius:14px !important;
    overflow:hidden;
}

/* 모바일은 기존 구조 유지 */
.jc_m_logo img {
    max-height:40px !important;
    max-width:280px !important;
}
.jc_m_search,
.jc_m_login_form input,
.jc_m_login_form button,
.jc_m_account_links a,
.jc_m_quick_links a {
    border-radius:10px !important;
}

@media (max-width:1280px) {
    .jc_header_inner,
    .jc_quickbar_inner,
    .jc_portal_wrap {
        width:auto !important;
        margin-left:10px !important;
        margin-right:10px !important;
    }
    .jc_header_inner {
        grid-template-columns:230px minmax(0,1fr) !important;
    }
    .jc_portal_wrap {
        grid-template-columns:220px minmax(0,1fr) 240px !important;
    }
}

@media (max-width:900px) {
    .jc_header_inner {
        display:block !important;
    }
    .jc_logo_box {
        margin-bottom:10px !important;
    }
    .jc_quickbar_inner {
        display:block !important;
        min-height:0 !important;
        padding:10px 0 !important;
    }
    .jc_guest_login_area {
        display:block !important;
    }
    .jc_guest_login_area .jc_login_form {
        width:100% !important;
        display:flex !important;
    }
    .jc_guest_login_area .jc_login_form input {
        width:calc((100% - 84px) / 2) !important;
    }
    .jc_login_account_links {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        margin:8px 0 !important;
        min-width:0 !important;
    }
    .jc_guest_support_links {
        justify-content:flex-start !important;
        margin-left:0 !important;
        min-width:0 !important;
        flex-wrap:wrap !important;
    }
}


:root {
    --jc-page-width: 1220px;
    --jc-left-col: 220px;
    --jc-gap: 18px;
}

html, body, input, button, select, textarea, a {
    font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic","Trebuchet MS",Arial,sans-serif !important;
    letter-spacing:-0.025em;
}

/* 로고는 더 크게, 흰색 로고 기준 */
.jc_header_inner {
    width:var(--jc-page-width) !important;
    grid-template-columns:240px minmax(0,1fr) !important;
    gap:18px !important;
}
.jc_logo_box img {
    max-width:230px !important;
    max-height:68px !important;
    width:auto !important;
}
.jc_search_box form {
    height:48px !important;
    border-radius:13px !important;
}

/* 핵심 정렬: 로그인 줄과 아래 3단 레이아웃 시작점을 같은 컨테이너로 고정 */
.jc_quickbar_inner,
.jc_portal_wrap {
    width:var(--jc-page-width) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

.jc_quickbar_inner {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    min-height:50px !important;
    padding:8px 0 !important;
}

.jc_portal_wrap {
    display:grid !important;
    grid-template-columns:var(--jc-left-col) minmax(0,1fr) 246px !important;
    gap:var(--jc-gap) !important;
    align-items:start !important;
    padding-top:16px !important;
}

/* ID 입력칸 시작점 = 게시판 박스 시작점 */
.jc_guest_login_area {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
}

.jc_guest_login_area .jc_login_form {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:6px !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    flex:0 0 auto !important;
}

.jc_guest_login_area .jc_login_form input {
    width:132px !important;
    height:34px !important;
    line-height:34px !important;
    border-radius:9px !important;
    box-sizing:border-box !important;
}

.jc_guest_login_area .jc_login_form button {
    width:72px !important;
    height:34px !important;
    line-height:34px !important;
    border-radius:9px !important;
    flex:0 0 auto !important;
}

.jc_login_account_links,
.jc_guest_support_links {
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:6px !important;
    min-width:max-content !important;
    margin:0 !important;
    padding:0 !important;
}

.jc_login_account_links a,
.jc_guest_support_links a {
    height:34px !important;
    line-height:34px !important;
    padding:0 11px !important;
    border-radius:9px !important;
    white-space:nowrap !important;
}

.jc_guest_support_links {
    margin-left:auto !important;
    justify-content:flex-end !important;
}

/* 화면처럼 상단 버튼이 너무 튀지 않게 살짝 부드럽게 */
.jc_box,
.jc_panel {
    border-radius:12px !important;
}
.jc_box_tit,
.jc_box_head {
    border-radius:0 !important;
}
.jc_board_group > strong {
    border-radius:0 !important;
}
.jc_feature_item,
.jc_event_list a,
.jc_mobile_event_list a,
.jc_mobile_board_grid a {
    border-radius:12px !important;
}

/* 회원안내 제거 유지 */
.jc_rank_box {display:none !important}

@media (max-width:1280px) {
    .jc_header_inner,
    .jc_quickbar_inner,
    .jc_portal_wrap {
        width:auto !important;
        margin-left:16px !important;
        margin-right:16px !important;
    }
    .jc_header_inner {
        grid-template-columns:230px minmax(0,1fr) !important;
    }
    .jc_portal_wrap {
        grid-template-columns:220px minmax(0,1fr) 246px !important;
    }
}

@media (max-width:900px) {
    .jc_header_inner {
        display:block !important;
        margin-left:12px !important;
        margin-right:12px !important;
    }
    .jc_logo_box {
        margin-bottom:10px !important;
    }
    .jc_logo_box img {
        max-width:260px !important;
        max-height:64px !important;
    }
    .jc_quickbar_inner {
        display:block !important;
        margin-left:12px !important;
        margin-right:12px !important;
        min-height:0 !important;
        padding:10px 0 !important;
    }
    .jc_guest_login_area {
        display:block !important;
    }
    .jc_guest_login_area .jc_login_form {
        width:100% !important;
        display:flex !important;
    }
    .jc_guest_login_area .jc_login_form input {
        width:calc((100% - 84px) / 2) !important;
    }
    .jc_login_account_links {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        margin:8px 0 !important;
        min-width:0 !important;
    }
    .jc_guest_support_links {
        justify-content:flex-start !important;
        margin-left:0 !important;
        min-width:0 !important;
        flex-wrap:wrap !important;
    }
}


:root {
    --jc-page-max:1220px;
    --jc-page-pad:16px;
    --jc-left-col:220px;
    --jc-right-col:246px;
    --jc-gap:18px;
}

/* 모든 상단/본문 컨테이너를 같은 폭 계산식으로 통일 */
.jc_header_inner,
.jc_quickbar_inner,
.jc_portal_wrap {
    width:min(var(--jc-page-max), calc(100vw - (var(--jc-page-pad) * 2))) !important;
    max-width:var(--jc-page-max) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    box-sizing:border-box !important;
}

/* 검색줄도 같은 끝선으로 끝나게 */
.jc_header_inner {
    display:grid !important;
    grid-template-columns:240px minmax(0, 1fr) !important;
    gap:var(--jc-gap) !important;
    align-items:center !important;
}

.jc_search_box,
.jc_search_box form {
    width:100% !important;
    box-sizing:border-box !important;
}

/* 로그인줄도 컨테이너 끝선 안에서만 움직이도록 고정 */
.jc_quickbar_inner {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    min-width:0 !important;
}

.jc_guest_login_area {
    display:flex !important;
    align-items:center !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:100% !important;
}

.jc_guest_support_links {
    margin-left:auto !important;
    flex:0 0 auto !important;
}

/* 본문 3단도 같은 계산식 안에서 끝선 고정 */
.jc_portal_wrap {
    display:grid !important;
    grid-template-columns:var(--jc-left-col) minmax(0, 1fr) var(--jc-right-col) !important;
    gap:var(--jc-gap) !important;
    align-items:start !important;
}

.jc_left_col,
.jc_center_col,
.jc_right_col {
    min-width:0 !important;
}

/* 1100px 이하에서는 버튼 겹침 방지하면서도 좌우 끝선은 같은 컨테이너 기준 유지 */
@media (max-width:1100px) {
    :root {
        --jc-page-pad:14px;
        --jc-right-col:230px;
        --jc-gap:14px;
    }

    .jc_header_inner {
        grid-template-columns:220px minmax(0,1fr) !important;
    }

    .jc_portal_wrap {
        grid-template-columns:210px minmax(0,1fr) 230px !important;
    }

    .jc_guest_login_area {
        gap:6px !important;
    }

    .jc_guest_login_area .jc_login_form input {
        width:118px !important;
    }

    .jc_guest_login_area .jc_login_form button {
        width:66px !important;
    }

    .jc_login_account_links a,
    .jc_guest_support_links a {
        padding:0 9px !important;
        font-size:12px !important;
    }
}

/* 980px 이하에서는 로그인 보조메뉴만 아래로 자연스럽게 내려가게 해서 겹침 제거 */
@media (max-width:980px) {
    .jc_quickbar_inner {
        display:block !important;
    }

    .jc_guest_login_area {
        display:flex !important;
        flex-wrap:wrap !important;
        gap:8px !important;
    }

    .jc_guest_login_area .jc_login_form {
        flex:0 0 auto !important;
    }

    .jc_login_account_links {
        flex:0 0 auto !important;
    }

    .jc_guest_support_links {
        width:100% !important;
        margin-left:0 !important;
        margin-top:8px !important;
        justify-content:flex-start !important;
        flex-wrap:wrap !important;
    }

    .jc_portal_wrap {
        grid-template-columns:210px minmax(0,1fr) !important;
    }

    .jc_right_col {
        grid-column:1 / -1 !important;
    }

    .jc_event_list {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px !important;
    }

    .jc_event_list li {
        margin:0 !important;
    }
}

/* 760px 이하에서는 모바일형 1단으로 전환, 그래도 좌우 끝선은 동일 */
@media (max-width:760px) {
    :root {
        --jc-page-pad:12px;
    }

    .jc_header_inner {
        display:block !important;
    }

    .jc_logo_box {
        margin-bottom:10px !important;
    }

    .jc_portal_wrap {
        display:block !important;
        padding-top:12px !important;
    }

    .jc_left_col,
    .jc_center_col,
    .jc_right_col {
        margin-bottom:14px !important;
    }

    .jc_guest_login_area {
        display:block !important;
    }

    .jc_guest_login_area .jc_login_form {
        width:100% !important;
        display:grid !important;
        grid-template-columns:1fr 1fr 72px !important;
        gap:6px !important;
    }

    .jc_guest_login_area .jc_login_form input {
        width:100% !important;
    }

    .jc_guest_login_area .jc_login_form button {
        width:72px !important;
    }

    .jc_login_account_links {
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        margin-top:8px !important;
        min-width:0 !important;
    }

    .jc_event_list {
        display:block !important;
    }

    .jc_event_list li + li {
        margin-top:12px !important;
    }
}


.jc_center_reorder {
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) 330px !important;
    gap:18px !important;
    margin-top:18px !important;
    align-items:start !important;
}

.jc_center_reorder .jc_gallery_box {
    grid-column:1 !important;
}

.jc_center_reorder .jc_best_rank_box {
    grid-column:2 !important;
}

.jc_center_reorder .jc_notice_box {
    grid-column:1 / -1 !important;
}

/* 갤러리 최신글 스킨이 어떤 형태로 나와도 박스 안에서 깨지지 않게 보정 */
.jc_gallery_latest {
    padding:12px !important;
    min-height:180px;
}

.jc_gallery_latest .lt,
.jc_gallery_latest .lat {
    width:auto !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
}

.jc_gallery_latest ul {
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:10px !important;
    padding:0 !important;
}

.jc_gallery_latest li {
    border:1px solid #20262f !important;
    background:#111720 !important;
    border-radius:12px !important;
    overflow:hidden !important;
    min-width:0 !important;
}

.jc_gallery_latest li a {
    display:block !important;
    color:#e8edf3 !important;
}

.jc_gallery_latest img {
    width:100% !important;
    height:110px !important;
    object-fit:cover !important;
    display:block !important;
    background:#0a0d12 !important;
}

.jc_gallery_latest .lt_tit,
.jc_gallery_latest .lat_tit,
.jc_gallery_latest .lt_title,
.jc_gallery_latest .new_icon,
.jc_gallery_latest .lt_more {
    display:none !important;
}

/* 공지게시판은 아래 전체폭으로 */
.jc_center_reorder .jc_notice_box {
    margin-top:0 !important;
}

.jc_center_reorder .jc_notice_box .lt,
.jc_center_reorder .jc_notice_box .lat {
    width:auto !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
}

.jc_center_reorder .jc_notice_box .lt ul,
.jc_center_reorder .jc_notice_box .lat ul {
    padding:8px 12px 12px !important;
}

.jc_center_reorder .jc_notice_box .lt li,
.jc_center_reorder .jc_notice_box .lat li {
    padding:8px 0 !important;
    border-bottom:1px solid #20262f !important;
}

.jc_center_reorder .jc_notice_box .lt a,
.jc_center_reorder .jc_notice_box .lat a {
    color:#ebeff4 !important;
}

@media (max-width:980px) {
    .jc_center_reorder {
        grid-template-columns:1fr !important;
    }
    .jc_center_reorder .jc_gallery_box,
    .jc_center_reorder .jc_best_rank_box,
    .jc_center_reorder .jc_notice_box {
        grid-column:1 !important;
    }
    .jc_gallery_latest ul {
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:560px) {
    .jc_gallery_latest ul {
        grid-template-columns:1fr !important;
    }
    .jc_gallery_latest img {
        height:150px !important;
    }
}


.jc_center_reorder .jc_gallery_box {
    min-height:0 !important;
}

.jc_gallery_latest {
    padding:0 !important;
    min-height:0 !important;
    max-height:238px !important;
    overflow:hidden !important;
}

/* basic/latest 스킨이 들어와도 박스 안에서 짧게 보이게 */
.jc_gallery_latest .lt,
.jc_gallery_latest .lat {
    width:auto !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
    min-height:0 !important;
    max-height:238px !important;
    overflow:hidden !important;
}

.jc_gallery_latest .lt ul,
.jc_gallery_latest .lat ul,
.jc_gallery_latest ul {
    display:block !important;
    padding:8px 12px 12px !important;
    margin:0 !important;
}

.jc_gallery_latest .lt li,
.jc_gallery_latest .lat li,
.jc_gallery_latest li {
    display:block !important;
    padding:8px 0 !important;
    margin:0 !important;
    border:0 !important;
    border-bottom:1px solid #20262f !important;
    background:transparent !important;
    border-radius:0 !important;
    min-height:0 !important;
    height:auto !important;
    overflow:hidden !important;
}

.jc_gallery_latest .lt li:last-child,
.jc_gallery_latest .lat li:last-child,
.jc_gallery_latest li:last-child {
    border-bottom:0 !important;
}

.jc_gallery_latest a {
    display:block !important;
    color:#ebeff4 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:14px !important;
    line-height:1.35 !important;
}

.jc_gallery_latest img,
.jc_gallery_latest .lt_img,
.jc_gallery_latest .lat_img,
.jc_gallery_latest .lt_img img,
.jc_gallery_latest .lat_img img {
    display:none !important;
}

/* 갤러리 안의 더보기/스킨 타이틀 중복 숨김 */
.jc_gallery_latest .lt_more,
.jc_gallery_latest .lt_title,
.jc_gallery_latest .lat_title,
.jc_gallery_latest .lt_tit,
.jc_gallery_latest .lat_tit {
    display:none !important;
}

/* 갤러리와 베스트글 순위 높이를 비슷하게 */
.jc_center_reorder .jc_best_rank_box {
    max-height:280px !important;
    overflow:hidden !important;
}

.jc_center_reorder .jc_notice_box {
    margin-top:0 !important;
}

@media (max-width:980px) {
    .jc_gallery_latest,
    .jc_gallery_latest .lt,
    .jc_gallery_latest .lat {
        max-height:none !important;
    }
}


.jc_header_inner {
    grid-template-columns:300px minmax(0,1fr) !important;
}
.jc_logo_box img {
    max-width:300px !important;
    max-height:78px !important;
    width:300px !important;
    height:auto !important;
}
.jc_m_logo img {
    max-width:310px !important;
    max-height:54px !important;
}
.jc_member_summary b,
.jc_m_member_box b {
    font-weight:900 !important;
}
@media (max-width:1280px) {
    .jc_header_inner {
        grid-template-columns:290px minmax(0,1fr) !important;
    }
    .jc_logo_box img {
        max-width:290px !important;
        width:290px !important;
    }
}
@media (max-width:900px) {
    .jc_header_inner {
        display:block !important;
    }
    .jc_logo_box img {
        max-width:320px !important;
        width:320px !important;
        max-height:82px !important;
    }
}
@media (max-width:420px) {
    .jc_logo_box img,
    .jc_m_logo img {
        max-width:270px !important;
        width:270px !important;
    }
}


.jc_header_inner {
    grid-template-columns:330px minmax(0,1fr) !important;
}
.jc_logo_box img {
    width:330px !important;
    max-width:330px !important;
    max-height:84px !important;
    height:auto !important;
}
.jc_member_links a[href$="logout.php"] {
    background:#3a3f47 !important;
    color:#fff !important;
    font-weight:700 !important;
}
.jc_member_links a[href$="logout.php"]:hover {
    background:#4a505a !important;
}
.jc_m_logo img {
    width:320px !important;
    max-width:320px !important;
    max-height:58px !important;
}
@media (max-width:1280px) {
    .jc_header_inner {
        grid-template-columns:315px minmax(0,1fr) !important;
    }
    .jc_logo_box img {
        width:315px !important;
        max-width:315px !important;
    }
}
@media (max-width:900px) {
    .jc_header_inner {
        display:block !important;
    }
    .jc_logo_box img {
        width:340px !important;
        max-width:340px !important;
        max-height:86px !important;
    }
}
@media (max-width:420px) {
    .jc_logo_box img,
    .jc_m_logo img {
        width:285px !important;
        max-width:285px !important;
    }
}


.jc_home_intro {
    width:min(var(--jc-page-max, 1220px), calc(100vw - (var(--jc-page-pad, 16px) * 2))) !important;
    max-width:var(--jc-page-max, 1220px) !important;
    margin:16px auto 0 !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
    padding:22px 24px !important;
    border:1px solid #283244 !important;
    border-radius:18px !important;
    background:
        radial-gradient(circle at 12% 20%, rgba(37,99,235,.24), transparent 30%),
        radial-gradient(circle at 84% 16%, rgba(124,58,237,.24), transparent 32%),
        linear-gradient(135deg, #111827, #0b0f17) !important;
    color:#fff !important;
    overflow:hidden !important;
}
.jc_home_intro_text span,
.jc_mobile_intro > span {
    display:inline-block !important;
    margin-bottom:7px !important;
    padding:4px 9px !important;
    border:1px solid rgba(147,197,253,.45) !important;
    border-radius:999px !important;
    color:#bfdbfe !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.06em !important;
}
.jc_home_intro_text h2,
.jc_mobile_intro h2 {
    margin:0 0 6px !important;
    color:#fff !important;
    font-size:30px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
}
.jc_home_intro_text p,
.jc_mobile_intro p {
    margin:0 !important;
    color:#cbd5e1 !important;
    font-size:15px !important;
    line-height:1.6 !important;
}
.jc_home_intro_links {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    min-width:max-content !important;
}
.jc_home_intro_links a,
.jc_mobile_intro a {
    display:inline-block !important;
    padding:10px 14px !important;
    border:1px solid #344052 !important;
    border-radius:12px !important;
    background:#111827 !important;
    color:#e5e7eb !important;
    font-size:13px !important;
    font-weight:700 !important;
}
.jc_home_intro_links a:first-child,
.jc_mobile_intro a:first-child {
    border-color:#2563eb !important;
    background:#1d4ed8 !important;
    color:#fff !important;
}
.jc_home_intro_links a:hover,
.jc_mobile_intro a:hover {
    border-color:#60a5fa !important;
    color:#fff !important;
}
.jc_mobile_intro {
    padding:18px !important;
    background:
        radial-gradient(circle at 18% 12%, rgba(37,99,235,.22), transparent 34%),
        linear-gradient(135deg, #111827, #0b0f17) !important;
    border-color:#283244 !important;
}
.jc_mobile_intro div {
    display:flex !important;
    gap:8px !important;
    flex-wrap:wrap !important;
    margin-top:14px !important;
}
#ft a {color:#cbd5e1}
#ft a:hover {color:#fff}
#ft_company .ft_info {line-height:1.7}

/* FAQ가 어두운 테마에서도 깨끗하게 보이도록 보정 */
#faq_sch {
    background:#111827 !important;
    border:1px solid #273244 !important;
    border-radius:14px !important;
}
#faq_sch .frm_input {
    background:#0b0f17 !important;
    border-color:#374151 !important;
    color:#fff !important;
}
#faq_wrap li {
    background:#0f1319 !important;
    border-color:#273244 !important;
}
#faq_wrap li h3 a {
    color:#e5e7eb !important;
}
#faq_wrap li h3 .tit_bg {
    color:#93c5fd !important;
}
#faq_con .con_inner {
    color:#cbd5e1 !important;
    background:#111827 !important;
    border-top:1px solid #273244 !important;
}
.empty_list {
    background:#0f1319 !important;
    border:1px solid #273244 !important;
    border-radius:14px !important;
    color:#cbd5e1 !important;
    padding:22px !important;
}
@media (max-width:760px) {
    .jc_home_intro {
        display:block !important;
        margin-top:12px !important;
        padding:18px !important;
    }
    .jc_home_intro_links {
        justify-content:flex-start !important;
        min-width:0 !important;
        margin-top:14px !important;
    }
    .jc_home_intro_text h2,
    .jc_mobile_intro h2 {
        font-size:26px !important;
    }
}

.jc_header_wrap,
.jc_quickbar,
.jc_wrapper,
.jc_m_hd,
.jc_m_wrapper,
.jc_mobile_portal,
.jc_home_intro,
.jc_portal_wrap,
.jc_header_inner,
.jc_quickbar_inner {
    max-width:100% !important;
    box-sizing:border-box !important;
}
.jc_search_box,
.jc_search_box form,
.jc_search_box input,
.jc_m_search,
.jc_m_search input,
.jc_guest_login_area,
.jc_login_form,
.jc_m_login_area,
.jc_m_login_form,
.jc_login_account_links,
.jc_guest_support_links,
.jc_m_account_links,
.jc_m_quick_links {
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}

/* 메인 안에 들어온 최신글 스킨이 뒤늦게 로드되어도 흰 박스로 튀지 않도록 메인 컨테이너 안에서만 보정 */
.jc_gallery_latest .lat,
.jc_gallery_latest .lt,
.jc_latest_list .lat,
.jc_latest_list .lt,
.jc_mobile_notice_latest .lat,
.jc_mobile_notice_latest .lt {
    background:#0f1722 !important;
    border-color:#263449 !important;
    color:#dbe6f3 !important;
}
.jc_gallery_latest .lat ul,
.jc_gallery_latest .lt ul,
.jc_latest_list .lat ul,
.jc_latest_list .lt ul,
.jc_mobile_notice_latest .lat ul,
.jc_mobile_notice_latest .lt ul {
    background:transparent !important;
    border-color:#223149 !important;
}
.jc_gallery_latest .lat li,
.jc_gallery_latest .lt li,
.jc_latest_list .lat li,
.jc_latest_list .lt li,
.jc_mobile_notice_latest .lat li,
.jc_mobile_notice_latest .lt li {
    background:transparent !important;
    border-color:#223149 !important;
    color:#dbe6f3 !important;
}
.jc_gallery_latest .lat a,
.jc_gallery_latest .lt a,
.jc_latest_list .lat a,
.jc_latest_list .lt a,
.jc_mobile_notice_latest .lat a,
.jc_mobile_notice_latest .lt a {
    color:#eaf2ff !important;
}
.jc_gallery_latest .lat a:hover,
.jc_gallery_latest .lt a:hover,
.jc_latest_list .lat a:hover,
.jc_latest_list .lt a:hover,
.jc_mobile_notice_latest .lat a:hover,
.jc_mobile_notice_latest .lt a:hover {
    color:#93c5fd !important;
}
.jc_gallery_latest .empty_li,
.jc_latest_list .empty_li,
.jc_mobile_notice_latest .empty_li {
    background:transparent !important;
    color:#91a4ba !important;
}

@media (max-width:760px) {
    html,
    body {
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
    }
    #hd,
    #wrapper,
    #ft,
    #container_wr,
    #container,
    .jc_wrapper,
    .jc_m_wrapper {
        min-width:0 !important;
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
        box-sizing:border-box !important;
    }
    .jc_header_wrap,
    .jc_quickbar,
    .jc_m_header,
    .jc_mobile_portal {
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
        box-sizing:border-box !important;
    }
    .jc_header_inner,
    .jc_quickbar_inner,
    .jc_portal_wrap,
    .jc_home_intro {
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }
    .jc_m_logo_row {
        min-width:0 !important;
        max-width:100% !important;
    }
    .jc_m_logo {
        min-width:0 !important;
        max-width:calc(100vw - 76px) !important;
        overflow:hidden !important;
    }
    .jc_m_logo img,
    .jc_logo_box img {
        width:auto !important;
        max-width:100% !important;
        height:auto !important;
    }
    .jc_search_box form,
    .jc_m_search {
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
    }
    .jc_search_box button,
    .jc_m_search button {
        flex:0 0 46px !important;
        width:46px !important;
    }
    .jc_guest_login_area .jc_login_form {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) 72px !important;
    }
    .jc_login_account_links,
    .jc_m_account_links {
        width:100% !important;
    }
    .jc_login_account_links a,
    .jc_guest_support_links a,
    .jc_m_account_links a,
    .jc_m_quick_links a {
        min-width:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }
    .jc_m_quick_links {
        display:flex !important;
        flex-wrap:wrap !important;
    }
    .jc_m_quick_links a {
        flex:1 1 auto !important;
        text-align:center !important;
    }
    .jc_mobile_board_grid {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    }
    .jc_mobile_board_grid a {
        min-width:0 !important;
    }
    .jc_mobile_board_grid strong {
        max-width:100% !important;
    }
}

@media (max-width:420px) {
    .jc_header_inner,
    .jc_quickbar_inner,
    .jc_portal_wrap,
    .jc_home_intro {
        width:calc(100vw - 20px) !important;
        max-width:calc(100vw - 20px) !important;
    }
    .jc_guest_login_area .jc_login_form,
    .jc_m_login_area .jc_m_login_form {
        grid-template-columns:1fr !important;
    }
    .jc_guest_login_area .jc_login_form button,
    .jc_m_login_area .jc_m_login_form button {
        width:100% !important;
        grid-column:auto !important;
    }
    .jc_login_account_links,
    .jc_m_account_links {
        grid-template-columns:1fr 1fr !important;
    }
}

:root {
    --ss-v16-page: 1140px;
    --ss-v16-left: 166px;
    --ss-v16-right: 166px;
    --ss-v16-gap: 14px;
}

/* 메인: 빨간/초록/노란 영역이 같은 줄에서 시작하도록 정렬 */
.jc_portal_wrap {
    width:min(var(--ss-v16-page), calc(100vw - 32px)) !important;
    max-width:var(--ss-v16-page) !important;
    margin:16px auto 40px !important;
    display:grid !important;
    grid-template-columns:var(--ss-v16-left) minmax(0, 1fr) var(--ss-v16-right) !important;
    gap:var(--ss-v16-gap) !important;
    align-items:start !important;
    box-sizing:border-box !important;
}
.jc_left_col,
.jc_center_col,
.jc_right_col {min-width:0 !important;}
.jc_center_col .jc_home_intro {
    width:100% !important;
    max-width:100% !important;
    margin:0 0 16px !important;
}
.jc_center_col .jc_feature_box {
    margin-top:0 !important;
}
.jc_right_col .jc_event_box,
.jc_left_col .jc_sidebar_box {margin-top:0 !important;}

/* 베스트글 순위: ol 기본 1. 제거, 1~3위만 파란 배지 */
.jc_best_rank_list,
.jc_best_rank_list li {
    list-style:none !important;
}
.jc_best_rank_list li::marker {content:"" !important;}
.jc_best_rank_list li:nth-child(n+4) .jc_rank_no {
    background:#2b3340 !important;
    color:#dbe6f3 !important;
}

/* 일반 페이지: 좌측 게시판/포인트/접속자 + 중앙 본문 + 우측 이벤트 고정 */
#container_wr.ss_layout_3col {
    width:min(var(--ss-v16-page), calc(100vw - 32px)) !important;
    max-width:var(--ss-v16-page) !important;
    margin:16px auto 40px !important;
    display:grid !important;
    grid-template-columns:var(--ss-v16-left) minmax(0, 1fr) var(--ss-v16-right) !important;
    gap:var(--ss-v16-gap) !important;
    align-items:start !important;
    zoom:1 !important;
}
#container_wr.ss_layout_3col:after {display:none !important;content:none !important;}
#container_wr.ss_layout_3col > #container {
    grid-column:2 !important;
    grid-row:1 !important;
    float:none !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
}
#container_wr.ss_layout_3col > .ss_layout_left {
    grid-column:1 !important;
    grid-row:1 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
}
#container_wr.ss_layout_3col > #aside.ss_layout_right {
    grid-column:3 !important;
    grid-row:1 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
}
#container_wr.ss_layout_3col #container_title span {
    margin-top:0 !important;
}
#container_wr.ss_layout_3col .jc_event_list,
.jc_portal_wrap .jc_event_list {
    padding:10px !important;
}
#container_wr.ss_layout_3col .jc_event_list li + li,
.jc_portal_wrap .jc_event_list li + li {
    margin-top:10px !important;
}
#container_wr.ss_layout_3col .jc_event_list strong,
.jc_portal_wrap .jc_event_list strong {
    font-size:13px !important;
    line-height:1.3 !important;
}
#container_wr.ss_layout_3col .jc_event_list span,
.jc_portal_wrap .jc_event_list span {
    font-size:11px !important;
}
#container_wr.ss_no_fixed_sidebars {
    width:min(var(--ss-v16-page), calc(100vw - 32px)) !important;
    max-width:var(--ss-v16-page) !important;
    margin:16px auto 40px !important;
}
#container_wr.ss_no_fixed_sidebars > #container {
    float:none !important;
    width:100% !important;
    margin:0 !important;
}

/* footer가 왼쪽 끝으로 도망가지 않도록 다시 가운데 컨테이너로 묶음 */
#ft_wr.ss_footer_cols3 {
    width:min(var(--ss-v16-page), calc(100vw - 32px)) !important;
    max-width:var(--ss-v16-page) !important;
    margin:0 auto !important;
    display:flex !important;
    justify-content:center !important;
    gap:90px !important;
    text-align:left !important;
}
#ft_wr.ss_footer_cols3 .ft_cnt {
    width:auto !important;
    flex:0 0 auto !important;
}

@media (max-width:1100px) {
    :root {
        --ss-v16-page: calc(100vw - 24px);
        --ss-v16-left: 150px;
        --ss-v16-right: 150px;
        --ss-v16-gap: 10px;
    }
    .jc_box_tit,
    .jc_box_head h3 {font-size:16px !important;}
    .jc_board_group li a {font-size:12px !important;padding-left:9px !important;padding-right:9px !important;}
}
@media (max-width:900px) {
    .jc_portal_wrap,
    #container_wr.ss_layout_3col {
        display:block !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
    #container_wr.ss_layout_3col > .ss_layout_left,
    #container_wr.ss_layout_3col > #aside.ss_layout_right,
    .jc_left_col,
    .jc_right_col {
        margin-bottom:14px !important;
    }
    #ft_wr.ss_footer_cols3 {
        display:block !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
}

:root {
    --ss-v16-page: 1480px;
    --ss-v16-left: 190px;
    --ss-v16-right: 210px;
    --ss-v16-gap: 20px;
}

/* 메인 전체 폭 확대: 빨강/초록/노랑 3열을 더 넓게 사용 */
.jc_portal_wrap {
    width:min(var(--ss-v16-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v16-page) !important;
    grid-template-columns:var(--ss-v16-left) minmax(0, 1fr) var(--ss-v16-right) !important;
    gap:var(--ss-v16-gap) !important;
}

/* 메인배너는 중앙 컬럼 폭을 100% 사용: 줄이지 않음 */
.jc_center_col,
.jc_center_col > .jc_home_intro,
.jc_center_col > .jc_feature_box,
.jc_center_col > .jc_center_reorder {
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
}
.jc_center_col > .jc_home_intro {
    margin:0 0 18px !important;
    padding-left:28px !important;
    padding-right:28px !important;
}

/* 중앙 하단 콘텐츠도 중앙 컬럼 전체를 사용 */
.jc_center_reorder {
    grid-template-columns:minmax(0, 1fr) 360px !important;
    gap:20px !important;
    margin-top:20px !important;
}
.jc_center_reorder .jc_notice_box {
    grid-column:1 / -1 !important;
}

/* 일반 페이지도 같은 대형 3열 폭 사용 */
#container_wr.ss_layout_3col {
    width:min(var(--ss-v16-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v16-page) !important;
    grid-template-columns:var(--ss-v16-left) minmax(0, 1fr) var(--ss-v16-right) !important;
    gap:var(--ss-v16-gap) !important;
}
#container_wr.ss_layout_3col > #container {
    width:auto !important;
    max-width:none !important;
}

/* 사이드바는 배너 옆에서 너무 얇아지지 않게 유지 */
.jc_left_col,
#container_wr.ss_layout_3col > .ss_layout_left {
    width:var(--ss-v16-left) !important;
}
.jc_right_col,
#container_wr.ss_layout_3col > #aside.ss_layout_right {
    width:var(--ss-v16-right) !important;
}
.jc_right_col .jc_event_list img,
#container_wr.ss_layout_3col .jc_event_list img {
    width:100% !important;
    height:auto !important;
}

/* footer도 다시 페이지 폭 안에서 자연스럽게 중앙 정렬 */
#ft_wr.ss_footer_cols3 {
    width:min(var(--ss-v16-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v16-page) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    justify-content:center !important;
}

/* 1~3위만 파란 랭크, 4위부터 강조 제거 유지 */
.jc_best_rank_list,
.jc_best_rank_list li {list-style:none !important;}
.jc_best_rank_list li::marker {content:"" !important;}
.jc_best_rank_list li:nth-child(n+4) .jc_rank_no {
    background:#2b3340 !important;
    color:#dbe6f3 !important;
    border-color:#374151 !important;
}

@media (max-width:1400px) {
    :root {
        --ss-v16-left: 176px;
        --ss-v16-right: 190px;
        --ss-v16-gap: 16px;
    }
    .jc_center_reorder {grid-template-columns:minmax(0, 1fr) 330px !important;gap:16px !important;}
}
@media (max-width:1180px) {
    :root {
        --ss-v16-page: calc(100vw - 24px);
        --ss-v16-left: 158px;
        --ss-v16-right: 158px;
        --ss-v16-gap: 10px;
    }
    .jc_center_reorder {grid-template-columns:minmax(0, 1fr) 300px !important;gap:10px !important;}
    .jc_box_tit,
    .jc_box_head h3 {font-size:15px !important;}
}
@media (max-width:980px) {
    .jc_portal_wrap,
    #container_wr.ss_layout_3col {
        display:block !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
    .jc_left_col,
    .jc_right_col,
    #container_wr.ss_layout_3col > .ss_layout_left,
    #container_wr.ss_layout_3col > #aside.ss_layout_right {
        width:100% !important;
        margin-bottom:14px !important;
    }
    .jc_center_reorder {grid-template-columns:1fr !important;}
}

:root {
    --ss-v19-page: var(--ss-v16-page, 1480px);
    --ss-v19-left: var(--ss-v16-left, 190px);
    --ss-v19-right: var(--ss-v16-right, 210px);
    --ss-v19-gap: var(--ss-v16-gap, 20px);
}

#hd.jc_hd,
.jc_header_wrap,
.jc_quickbar,
#ft {
    min-width:0 !important;
}

/* 상단 로고/검색: 전체 폭을 메인 3열 프레임과 동일하게 맞춤 */
.jc_header_inner {
    width:min(var(--ss-v19-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v19-page) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:grid !important;
    grid-template-columns:var(--ss-v19-left) minmax(0, 1fr) !important;
    gap:var(--ss-v19-gap) !important;
    align-items:center !important;
    box-sizing:border-box !important;
}
.jc_logo_box {
    grid-column:1 !important;
    justify-self:start !important;
    width:100% !important;
    max-width:100% !important;
}
.jc_logo_link,
.jc_logo_box a {
    display:inline-flex !important;
    align-items:center !important;
}
.jc_logo_box img {
    display:block !important;
    max-width:100% !important;
    height:auto !important;
}
.jc_search_box {
    grid-column:2 !important;
    justify-self:stretch !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}
.jc_search_box form {
    width:100% !important;
    max-width:none !important;
    display:flex !important;
    align-items:stretch !important;
    box-sizing:border-box !important;
}
.jc_search_box input[type="text"],
.jc_search_box #sch_stx {
    flex:1 1 auto !important;
    width:auto !important;
    min-width:0 !important;
}
.jc_search_box button {
    flex:0 0 64px !important;
    width:64px !important;
}

/* 퀵바: 로그인 묶음은 왼쪽 사이드바 선에, 우측 버튼은 이벤트 선에 맞춤 */
.jc_quickbar_inner {
    width:min(var(--ss-v19-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v19-page) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:var(--ss-v19-gap) !important;
    box-sizing:border-box !important;
}
.jc_guest_login_area {
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    flex:0 1 auto !important;
    min-width:0 !important;
}
.jc_login_form,
.jc_login_account_links,
.jc_guest_support_links,
.jc_member_links,
.jc_member_summary {
    display:flex !important;
    align-items:center !important;
    flex-wrap:nowrap !important;
    min-width:0 !important;
}
.jc_login_form {gap:6px !important;}
.jc_login_account_links,
.jc_guest_support_links,
.jc_member_links {gap:8px !important;}
.jc_guest_support_links,
.jc_member_links {
    margin-left:auto !important;
    justify-content:flex-end !important;
    flex:0 0 auto !important;
}
.jc_guest_support_links a,
.jc_login_account_links a,
.jc_member_links a {
    white-space:nowrap !important;
}

/* 푸터: 메인 프레임 안에서 가운데 정렬, 선/간격만 정돈 */
#ft {
    margin-top:34px !important;
    padding:30px 0 24px !important;
    background:#070c12 !important;
    border-top:1px solid rgba(148,163,184,.12) !important;
    text-align:center !important;
}
#ft_wr.ss_footer_cols3 {
    width:min(var(--ss-v19-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v19-page) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:0 0 22px !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:96px !important;
    border-bottom:1px solid rgba(148,163,184,.13) !important;
    text-align:left !important;
    box-sizing:border-box !important;
}
#ft_wr.ss_footer_cols3 .ft_cnt {
    float:none !important;
    width:auto !important;
    min-width:160px !important;
    padding:0 !important;
    box-sizing:border-box !important;
}
#ft_wr.ss_footer_cols3 #ft_company {
    min-width:280px !important;
}
#ft_link a {
    display:block !important;
    line-height:1.9 !important;
    color:#cfe3ff !important;
}
#ft_company h2 {
    margin:0 0 10px !important;
    color:#f4f8ff !important;
}
#ft_company .ft_info {
    margin:0 !important;
    line-height:1.75 !important;
    color:#aebed0 !important;
}
#ft_copy {
    width:min(var(--ss-v19-page), calc(100vw - 40px)) !important;
    max-width:var(--ss-v19-page) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding:16px 0 0 !important;
    border:0 !important;
    color:#8fa0b5 !important;
    font-size:12px !important;
    text-align:center !important;
}

@media (max-width:1400px) {
    .jc_login_form input {width:138px !important;}
    .jc_guest_login_area {gap:6px !important;}
    .jc_login_account_links,
    .jc_guest_support_links,
    .jc_member_links {gap:6px !important;}
    .jc_login_account_links a,
    .jc_guest_support_links a,
    .jc_member_links a {padding-left:10px !important;padding-right:10px !important;}
}
@media (max-width:1180px) {
    .jc_header_inner,
    .jc_quickbar_inner,
    #ft_wr.ss_footer_cols3,
    #ft_copy {
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
    .jc_header_inner {
        grid-template-columns:var(--ss-v19-left) minmax(0, 1fr) !important;
    }
    .jc_login_form input {width:124px !important;}
}
@media (max-width:980px) {
    .jc_header_inner {
        display:block !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
    .jc_search_box {margin-top:10px !important;}
    .jc_quickbar_inner,
    .jc_guest_login_area,
    .jc_login_form,
    .jc_login_account_links,
    .jc_guest_support_links,
    .jc_member_links,
    .jc_member_summary {
        flex-wrap:wrap !important;
    }
    .jc_quickbar_inner {
        align-items:flex-start !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
    .jc_guest_support_links,
    .jc_member_links {margin-left:0 !important;}
    #ft_wr.ss_footer_cols3 {
        display:block !important;
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
        text-align:center !important;
        padding-bottom:14px !important;
    }
    #ft_wr.ss_footer_cols3 .ft_cnt {
        min-width:0 !important;
        margin:0 auto 18px !important;
    }
    #ft_copy {
        width:calc(100vw - 24px) !important;
        max-width:calc(100vw - 24px) !important;
    }
}

.jc_portal_wrap,
#container_wr.ss_layout_3col {
    margin-top:8px !important;
}

/* 메인 배너 때문에 중앙만 더 내려가 보이는 느낌 방지 */
.jc_center_col > .jc_home_intro {
    margin-top:0 !important;
}

/* 사이드바 첫 박스와 중앙/우측 첫 박스가 같은 선에서 시작하도록 고정 */
.jc_portal_wrap > .jc_left_col,
.jc_portal_wrap > .jc_center_col,
.jc_portal_wrap > .jc_right_col,
#container_wr.ss_layout_3col > .ss_layout_left,
#container_wr.ss_layout_3col > #container,
#container_wr.ss_layout_3col > #aside.ss_layout_right {
    align-self:start !important;
}

/* ID/PW 찾기 링크가 다른 버튼처럼 보이되 클릭은 일반 페이지 이동으로 확실히 동작 */
.jc_password_lost_link {
    cursor:pointer !important;
    pointer-events:auto !important;
}

/* footer 최종 보정: v19 기준 유지, 위아래 간격만 살짝 줄여 본문과 더 자연스럽게 연결 */
#ft {
    margin-top:28px !important;
    padding-top:26px !important;
}
#ft_wr.ss_footer_cols3 {
    padding-bottom:18px !important;
}
#ft_copy {
    padding-top:14px !important;
}
@media (max-width:980px) {
    .jc_portal_wrap,
    #container_wr.ss_layout_3col {
        margin-top:8px !important;
    }
}

:root {
    --ss-v21-topgap: 18px;
}
.jc_portal_wrap,
#container_wr.ss_layout_3col {
    margin-top:var(--ss-v21-topgap) !important;
    padding-top:0 !important;
}
.jc_center_col > .jc_home_intro {
    margin-top:0 !important;
}
.jc_logo_box,
.jc_logo_link,
.jc_logo_box a {
    overflow:visible !important;
}
.jc_logo_box img {
    width:190px !important;
    max-width:100% !important;
    max-height:54px !important;
    height:auto !important;
}
.jc_header_inner {
    min-height:66px !important;
}
.jc_password_lost_link,
.ss_direct_password_lost {
    pointer-events:auto !important;
    cursor:pointer !important;
}
@media (max-width:1400px) {
    .jc_logo_box img {
        width:176px !important;
        max-height:50px !important;
    }
}
@media (max-width:980px) {
    .jc_portal_wrap,
    #container_wr.ss_layout_3col {
        margin-top:14px !important;
    }
    .jc_logo_box img {
        width:170px !important;
    }
}

/* Mobile compact layout: hamburger drawer + short home */
@media (max-width:760px) {
    body {background:#050a10 !important;}
    .jc_m_header_compact {
        position:sticky !important;
        top:0 !important;
        z-index:1000 !important;
        padding:7px 8px !important;
        background:rgba(2,6,12,.97) !important;
        border-bottom:1px solid rgba(148,163,184,.18) !important;
        box-shadow:0 10px 24px rgba(0,0,0,.24) !important;
        overflow:visible !important;
    }
    .jc_m_topbar {
        display:grid !important;
        grid-template-columns:42px minmax(0,1fr) 42px !important;
        align-items:center !important;
        gap:7px !important;
        width:100% !important;
        max-width:100% !important;
        min-height:42px !important;
    }
    .jc_m_menu_btn,
    .jc_m_icon_link.jc_m_search_shortcut,
    .jc_m_close_btn {
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:39px !important;
        height:39px !important;
        border:1px solid rgba(148,163,184,.26) !important;
        border-radius:12px !important;
        background:#101722 !important;
        color:#eef6ff !important;
        cursor:pointer !important;
        box-sizing:border-box !important;
        text-decoration:none !important;
    }
    .jc_m_menu_btn {flex-direction:column !important; gap:5px !important;}
    .jc_m_menu_btn span {
        display:block !important;
        width:18px !important;
        height:2px !important;
        border-radius:999px !important;
        background:#eef6ff !important;
    }
    .jc_m_logo_row {display:none !important;}
    .jc_m_logo_compact {
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-width:0 !important;
        max-width:100% !important;
        overflow:hidden !important;
    }
    .jc_m_logo_compact img {
        display:block !important;
        width:auto !important;
        height:31px !important;
        max-height:31px !important;
        max-width:205px !important;
    }
    .jc_m_nav_check {
        position:absolute !important;
        left:-9999px !important;
        width:1px !important;
        height:1px !important;
        opacity:0 !important;
    }
    .jc_m_nav_overlay {
        display:none !important;
        position:fixed !important;
        inset:0 !important;
        z-index:1001 !important;
        background:rgba(0,0,0,.58) !important;
        backdrop-filter:blur(2px) !important;
    }
    .jc_m_drawer {
        position:fixed !important;
        top:0 !important;
        left:0 !important;
        z-index:1002 !important;
        width:min(84vw, 330px) !important;
        height:100vh !important;
        max-height:100vh !important;
        padding:14px !important;
        overflow-y:auto !important;
        transform:translateX(-105%) !important;
        transition:transform .22s ease !important;
        background:#07101a !important;
        border-right:1px solid rgba(148,163,184,.2) !important;
        box-shadow:18px 0 40px rgba(0,0,0,.42) !important;
        box-sizing:border-box !important;
    }
    .jc_m_nav_check:checked ~ .jc_m_nav_overlay {display:block !important;}
    .jc_m_nav_check:checked ~ .jc_m_drawer {transform:translateX(0) !important;}
    .jc_m_drawer_head {
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:10px !important;
        padding-bottom:12px !important;
        margin-bottom:12px !important;
        border-bottom:1px solid rgba(148,163,184,.16) !important;
    }
    .jc_m_drawer_logo {min-width:0 !important; overflow:hidden !important;}
    .jc_m_drawer_logo img {display:block !important; width:auto !important; height:32px !important; max-width:210px !important;}
    .jc_m_close_btn {flex:0 0 38px !important; width:38px !important; height:38px !important; font-size:24px !important; line-height:1 !important;}
    .jc_m_drawer .jc_m_search,
    .jc_m_drawer .jc_m_login_area,
    .jc_m_drawer .jc_m_member_box,
    .jc_m_drawer .jc_m_quick_links,
    .jc_m_drawer .jc_m_account_links,
    .jc_m_drawer_section {
        margin:0 0 12px !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }
    .jc_m_drawer_search {
        display:flex !important;
        height:42px !important;
        border-radius:14px !important;
        overflow:hidden !important;
        border:1px solid rgba(148,163,184,.26) !important;
        background:#0d1622 !important;
    }
    .jc_m_drawer_search input {flex:1 1 auto !important; min-width:0 !important; height:42px !important; background:#0d1622 !important; color:#e5eef9 !important; border:0 !important; padding:0 12px !important;}
    .jc_m_drawer_search button {flex:0 0 44px !important; width:44px !important; height:42px !important; border:0 !important; background:#1f6feb !important; color:#fff !important;}
    .jc_m_drawer .jc_m_login_form {display:grid !important; grid-template-columns:1fr !important; gap:8px !important; margin-bottom:8px !important;}
    .jc_m_drawer .jc_m_login_form input,
    .jc_m_drawer .jc_m_login_form button {width:100% !important; height:40px !important; border-radius:12px !important; box-sizing:border-box !important;}
    .jc_m_drawer .jc_m_account_links,
    .jc_m_drawer .jc_m_quick_links,
    .jc_m_drawer_board_list {display:grid !important; grid-template-columns:1fr 1fr !important; gap:8px !important;}
    .jc_m_drawer .jc_m_account_links a,
    .jc_m_drawer .jc_m_quick_links a,
    .jc_m_drawer_board_list a {
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        min-height:38px !important;
        padding:8px 10px !important;
        border:1px solid rgba(148,163,184,.2) !important;
        border-radius:12px !important;
        background:#101a27 !important;
        color:#dbeafe !important;
        font-size:13px !important;
        font-weight:700 !important;
        text-align:center !important;
        text-decoration:none !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
        box-sizing:border-box !important;
    }
    .jc_m_drawer_section {padding-top:4px !important;}
    .jc_m_drawer_section > strong {display:block !important; margin:0 0 8px !important; color:#f8fbff !important; font-size:13px !important;}
    .jc_m_drawer .jc_m_member_box {border-radius:14px !important; background:#0d1622 !important; padding:12px !important;}

    .jc_mobile_portal_compact {padding:10px 10px 18px !important; background:#050a10 !important;}
    .jc_mobile_portal_compact .jc_panel {
        margin:0 0 12px !important;
        border-radius:15px !important;
        border:1px solid rgba(148,163,184,.2) !important;
        background:#101722 !important;
        overflow:hidden !important;
        box-shadow:none !important;
    }
    .jc_mobile_portal_compact .jc_panel_head {
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:10px !important;
        padding:11px 12px !important;
        border-bottom:1px solid rgba(148,163,184,.16) !important;
        background:#121b27 !important;
    }
    .jc_mobile_portal_compact .jc_panel_head h3 {margin:0 !important; font-size:15px !important; color:#f8fafc !important;}
    .jc_mobile_portal_compact .jc_panel_head span,
    .jc_mobile_portal_compact .jc_panel_head a {color:#9fb2ca !important; font-size:11px !important; text-decoration:none !important; white-space:nowrap !important;}
    .jc_m_rank_list {list-style:none !important; margin:0 !important; padding:8px 10px 10px !important;}
    .jc_m_rank_list li {margin:0 !important; padding:0 !important; border:0 !important;}
    .jc_m_rank_list li:nth-child(n+7) {display:none !important;}
    .jc_m_rank_list a {
        display:grid !important;
        grid-template-columns:28px minmax(0,1fr) 42px !important;
        align-items:center !important;
        gap:8px !important;
        min-height:34px !important;
        padding:5px 0 !important;
        color:#edf4ff !important;
        text-decoration:none !important;
        border-bottom:1px solid rgba(148,163,184,.1) !important;
    }
    .jc_m_rank_list li:last-child a {border-bottom:0 !important;}
    .jc_m_rank_no {
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:26px !important;
        height:22px !important;
        border-radius:6px !important;
        background:#1f6feb !important;
        color:#fff !important;
        font-size:12px !important;
        font-weight:800 !important;
    }
    .jc_m_rank_list strong {min-width:0 !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; font-size:13px !important; color:#f8fafc !important;}
    .jc_m_rank_list em {color:#93a4ba !important; font-style:normal !important; font-size:11px !important; text-align:right !important;}
    .jc_m_best_cards {display:grid !important; grid-template-columns:1fr !important; gap:9px !important; padding:10px !important;}
    .jc_m_best_card {
        display:block !important;
        min-height:76px !important;
        padding:11px !important;
        border:1px solid rgba(148,163,184,.18) !important;
        border-radius:13px !important;
        background:#18212d !important;
        color:#eef6ff !important;
        text-decoration:none !important;
        box-sizing:border-box !important;
    }
    .jc_m_best_card:nth-child(n+4) {display:none !important;}
    .jc_m_best_card span {display:inline-flex !important; align-items:center !important; height:20px !important; padding:0 7px !important; border-radius:6px !important; background:#1f6feb !important; color:#fff !important; font-size:11px !important; font-weight:800 !important; margin-bottom:8px !important;}
    .jc_m_best_card strong {display:block !important; min-width:0 !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; font-size:14px !important; color:#fff !important; margin-bottom:9px !important;}
    .jc_m_best_card em {display:block !important; color:#9fb2ca !important; font-size:11px !important; font-style:normal !important;}
    .jc_mobile_gallery_latest .lt,
    .jc_mobile_gallery_latest .lat {width:auto !important; margin:0 !important; border:0 !important; background:transparent !important;}
    .jc_mobile_gallery_latest .lt ul,
    .jc_mobile_gallery_latest .lat ul {padding:8px 12px 12px !important;}
    .jc_mobile_gallery_latest .lt li,
    .jc_mobile_gallery_latest .lat li {padding:8px 0 !important; border-bottom:1px solid rgba(148,163,184,.11) !important;}
    .jc_mobile_gallery_latest .lt li:last-child,
    .jc_mobile_gallery_latest .lat li:last-child {border-bottom:0 !important;}
    .jc_mobile_gallery_latest .lt a,
    .jc_mobile_gallery_latest .lat a {color:#edf4ff !important;}
    #ft {margin-top:8px !important; padding-top:8px !important;}
    #ft .ft_cnt {display:none !important;}
    #ft_copy {padding:14px 10px 16px !important; font-size:11px !important; color:#7f8ca0 !important;}

    /* Fallback for narrow desktop-preview mode if the PC portal is shown before cache refresh. */
    .jc_portal_wrap {display:block !important; width:auto !important; max-width:none !important; margin:10px 10px 18px !important;}
    .jc_portal_wrap > .jc_left_col,
    .jc_portal_wrap > .jc_right_col,
    .jc_home_intro,
    .jc_notice_box {display:none !important;}
    .jc_center_col {display:block !important; width:auto !important; max-width:none !important;}
    .jc_center_reorder {display:flex !important; flex-direction:column !important; gap:12px !important;}
    .jc_best_rank_box {order:1 !important;}
    .jc_feature_box {order:2 !important; margin-bottom:12px !important;}
    .jc_gallery_box {order:3 !important;}
    .jc_center_reorder .jc_best_rank_list li:nth-child(n+7),
    .jc_feature_grid .jc_feature_item:nth-child(n+4) {display:none !important;}
}

@media (max-width:420px) {
    .jc_m_logo_compact img {height:29px !important; max-height:29px !important; max-width:178px !important;}
    .jc_m_drawer {width:86vw !important; padding:12px !important;}
    .jc_m_drawer .jc_m_account_links,
    .jc_m_drawer .jc_m_quick_links,
    .jc_m_drawer_board_list {grid-template-columns:1fr !important;}
    .jc_mobile_portal_compact {padding-left:8px !important; padding-right:8px !important;}
}

/* SomoonStory V2.4.2: mobile drawer scroll + board dark fallback */
@media (max-width:980px) {
    html, body {
        background:#050a10 !important;
        color:#e6edf7 !important;
    }

    .jc_m_drawer {
        height:100vh !important;
        height:100dvh !important;
        max-height:100vh !important;
        max-height:100dvh !important;
        overflow-y:auto !important;
        overflow-x:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        overscroll-behavior:contain !important;
        touch-action:pan-y !important;
        padding-bottom:calc(42px + env(safe-area-inset-bottom)) !important;
        scrollbar-gutter:stable !important;
    }
    .jc_m_drawer::after {
        content:"" !important;
        display:block !important;
        height:calc(26px + env(safe-area-inset-bottom)) !important;
        flex:0 0 auto !important;
    }
    .jc_m_drawer a,
    .jc_m_drawer label,
    .jc_m_drawer button,
    .jc_m_drawer input {
        touch-action:manipulation !important;
    }
    .jc_m_nav_check:checked ~ .jc_m_drawer {
        transform:translate3d(0,0,0) !important;
    }

    body,
    #wrapper,
    .jc_m_wrapper,
    #container,
    #container_wr {
        background:#050a10 !important;
        color:#e6edf7 !important;
    }

    #container_title,
    #container_title.jc_m_sub_title {
        background:#0f1722 !important;
        color:#f8fafc !important;
        border-bottom:1px solid rgba(148,163,184,.18) !important;
        box-shadow:none !important;
    }
    #container_title a,
    #container_title i {color:#cfe1ff !important;}

    #bo_list,
    #bo_gall,
    #bo_v,
    #bo_w,
    #bo_sch,
    #bo_vc,
    .bo_vc_w,
    .view_is_list,
    .bo_v_nb,
    .tbl_head01,
    .tbl_frm01 {
        background:#050a10 !important;
        color:#e6edf7 !important;
    }

    #bo_list li,
    #bo_gall .gall_box,
    #bo_gall .gall_li,
    #bo_v > header,
    #bo_v_atc,
    #bo_v_file li,
    #bo_v_link li,
    #bo_vc article .comment_inner,
    #bo_vc_empty,
    .bo_vc_w,
    #bo_sch,
    .view_is_list,
    .bo_v_nb li a {
        background:#101722 !important;
        border-color:rgba(148,163,184,.18) !important;
        color:#e6edf7 !important;
    }

    #bo_list li.bo_notice {background:#111d2b !important;}
    #bo_list_total {background:#0f1722 !important; color:#9fb2ca !important;}

    #bo_list a,
    #bo_gall a,
    #bo_v a,
    .bo_cnt,
    .bo_v_tit,
    #bo_v_con,
    #bo_v_con p,
    #bo_v_con span,
    #bo_v_con div,
    #bo_v_atc,
    .cmt_contents,
    .cmt_contents p {
        color:#f8fafc !important;
    }

    .bo_info,
    #bo_v_info,
    #bo_v_table,
    #bo_gall .gall_info,
    .bo_vc_hdinfo,
    #bo_v_file .bo_v_file_cnt,
    #bo_v_link .bo_v_link_cnt {
        color:#9fb2ca !important;
    }

    #bo_sch select,
    #bo_sch .sch_input,
    #bo_w input,
    #bo_w select,
    #bo_w textarea,
    .bo_vc_w textarea,
    .frm_input,
    input[type="text"],
    input[type="password"],
    input[type="email"],
    select,
    textarea {
        background:#0b111b !important;
        color:#eef6ff !important;
        border-color:#263142 !important;
        box-shadow:none !important;
    }

    #bo_sch .sch_btn,
    .more_opt,
    #bo_v_share,
    .bo_vc_act {
        background:#101722 !important;
        border-color:#263142 !important;
        color:#e6edf7 !important;
    }
    .more_opt li,
    .bo_vc_act li {border-color:rgba(148,163,184,.14) !important;}
    .more_opt li button,
    .more_opt li a,
    .bo_vc_act li a {background:transparent !important; color:#e6edf7 !important;}

    #bo_v_con a {color:#8ab4ff !important;}
    #bo_v_con img,
    #bo_v_img img {max-width:100% !important; height:auto !important;}
}

/* SomoonStory V2.4.3: mobile TODO cleanup - hidden scrap pin, dark forms, soft search highlight */
@media (max-width:980px) {
    /* Mobile view: scrap pin should not float in the middle of post view. */
    #bo_v_share .btn_scrap,
    .btn_top .btn_scrap,
    .btn_bo_user .btn_scrap {
        display:none !important;
    }

    /* Mobile member/pop-up pages: force dark surfaces where default GnuBoard skins leave white boxes. */
    .new_win,
    .new_win_con,
    .new_win_con2,
    .mbskin,
    #mb_confirm,
    #memo_list,
    #memo_view,
    #memo_write,
    #point,
    #fnewlist,
    #new_sch,
    #faq_wrap,
    #faq_con,
    #faq_sch,
    #qalist,
    #qaview,
    #qawrite,
    #fqalist,
    .tbl_wrap,
    .tbl_head01,
    .tbl_frm01,
    .list_01,
    .form_01,
    .form_02 {
        background:#050a10 !important;
        color:#e6edf7 !important;
        border-color:#263142 !important;
        box-shadow:none !important;
    }

    .new_win h1,
    .new_win #win_title,
    .new_win_ul,
    .win_ul,
    .win_desc,
    #mb_confirm h1,
    #mb_confirm p,
    #mb_confirm fieldset,
    .memo_list li,
    .memo_preview,
    .point_all li,
    .point_list li,
    .point_status,
    #new_sch,
    #new_sch form,
    #fnewlist li,
    #faq_wrap li,
    #faq_con li,
    #faq_con .con_inner,
    #bo_sch,
    #bo_sch form,
    #bo_cate,
    #bo_cate_ul,
    #bo_cate li,
    .list_01 li,
    .tbl_head01 table,
    .tbl_head01 tr,
    .tbl_head01 th,
    .tbl_head01 td,
    .tbl_frm01 table,
    .tbl_frm01 tr,
    .tbl_frm01 th,
    .tbl_frm01 td,
    .empty_list,
    .empty_table {
        background:#101722 !important;
        color:#dbe6f3 !important;
        border-color:rgba(148,163,184,.18) !important;
        box-shadow:none !important;
    }

    .win_ul li a,
    .new_win_ul li a,
    .memo_preview a,
    .memo_name a,
    .point_tit,
    .new_tit,
    .new_board,
    #faq_wrap a,
    #faq_con a,
    #qalist a,
    #qaview a,
    #bo_cate a,
    .list_01 a {
        color:#eef6ff !important;
    }

    .memo_datetime,
    .new_info,
    .new_date,
    .point_date1,
    .point_date,
    .win_total,
    .win_desc,
    #bo_list_total,
    .li_info,
    .bo_date {
        color:#9fb2ca !important;
    }

    /* Stronger input/select override for member confirm, memo, point, new, FAQ, QA/site inquiry. */
    input[type="text"],
    input[type="password"],
    input[type="email"],
    input[type="url"],
    input[type="number"],
    input[type="search"],
    textarea,
    select,
    .frm_input,
    .required,
    .sch_input,
    .full_input,
    #mb_confirm_pw,
    #memo_content,
    #me_memo,
    #new_sch select,
    #new_sch input,
    #faq_sch input,
    #faq_sch select,
    #bo_sch select,
    #bo_sch input,
    #bo_sch .sch_input,
    #fqalist select,
    #fqalist input,
    #qawrite select,
    #qawrite input,
    #qawrite textarea,
    #captcha_key {
        background:#0b111b !important;
        background-color:#0b111b !important;
        color:#eef6ff !important;
        -webkit-text-fill-color:#eef6ff !important;
        border:1px solid #334155 !important;
        box-shadow:none !important;
        text-shadow:none !important;
        outline:none !important;
    }

    select,
    select option,
    select optgroup {
        background:#0b111b !important;
        color:#eef6ff !important;
    }

    input::placeholder,
    textarea::placeholder {
        color:#8fa3bb !important;
        opacity:1 !important;
    }

    input:-webkit-autofill,
    input:-webkit-autofill:hover,
    input:-webkit-autofill:focus,
    textarea:-webkit-autofill,
    select:-webkit-autofill {
        -webkit-box-shadow:0 0 0 1000px #0b111b inset !important;
        -webkit-text-fill-color:#eef6ff !important;
        caret-color:#eef6ff !important;
    }

    /* FAQ and QA category/search chips. */
    #bo_cate a,
    #bo_cate #bo_cate_on,
    .bo_cate_link,
    .qa_category,
    .txt_done,
    .txt_rdy {
        background:#111d2b !important;
        color:#bfdbfe !important;
        border-color:#334155 !important;
    }

    /* Search result word highlight: visible but not neon/highlighter-like. */
    .sch_word,
    mark.sch_word,
    b.sch_word,
    #sch_result .sch_word,
    .search_board_result .sch_word,
    .sch_res_list .sch_word {
        display:inline !important;
        padding:0 3px !important;
        margin:0 1px !important;
        border-radius:4px !important;
        background:rgba(59,130,246,.18) !important;
        color:#cfe3ff !important;
        font-weight:700 !important;
        box-shadow:inset 0 -1px 0 rgba(96,165,250,.35) !important;
        line-height:inherit !important;
    }
}

/* Desktop search highlight softening too */
.sch_word,
mark.sch_word,
b.sch_word,
#sch_result .sch_word,
.search_board_result .sch_word,
.sch_res_list .sch_word {
    display:inline !important;
    padding:0 3px !important;
    margin:0 1px !important;
    border-radius:4px !important;
    background:rgba(59,130,246,.18) !important;
    color:#cfe3ff !important;
    font-weight:700 !important;
    box-shadow:inset 0 -1px 0 rgba(96,165,250,.35) !important;
    line-height:inherit !important;
}

/* SomoonStory V3.1: mobile memo window tab visibility */
@media (max-width:980px) {
    body .new_win .win_ul,
    body #memo_list .win_ul,
    body #memo_view .win_ul,
    body #memo_write .win_ul {
        display:flex !important;
        flex-wrap:wrap !important;
        align-items:center !important;
        gap:7px !important;
        margin:0 0 14px !important;
        padding:0 14px 12px !important;
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
    }

    body .new_win .win_ul:after,
    body #memo_list .win_ul:after,
    body #memo_view .win_ul:after,
    body #memo_write .win_ul:after {
        display:none !important;
        content:none !important;
    }

    body .new_win .win_ul li,
    body #memo_list .win_ul li,
    body #memo_view .win_ul li,
    body #memo_write .win_ul li {
        float:none !important;
        flex:0 0 auto !important;
        width:auto !important;
        min-width:0 !important;
        margin:0 !important;
        padding:0 !important;
        list-style:none !important;
        overflow:hidden !important;
        background:#111a26 !important;
        border:1px solid rgba(96,165,250,.32) !important;
        border-radius:999px !important;
        box-shadow:0 4px 12px rgba(0,0,0,.16) !important;
    }

    body .new_win .win_ul li a,
    body #memo_list .win_ul li a,
    body #memo_view .win_ul li a,
    body #memo_write .win_ul li a {
        display:block !important;
        min-width:0 !important;
        padding:8px 12px !important;
        background:transparent !important;
        color:#d7e9ff !important;
        font-size:13px !important;
        font-weight:700 !important;
        line-height:1.2 !important;
        text-decoration:none !important;
        white-space:nowrap !important;
    }

    body .new_win .win_ul li.selected,
    body #memo_list .win_ul li.selected,
    body #memo_view .win_ul li.selected,
    body #memo_write .win_ul li.selected {
        background:linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
        border-color:#60a5fa !important;
        box-shadow:0 6px 16px rgba(37,99,235,.28) !important;
    }

    body .new_win .win_ul li.selected a,
    body #memo_list .win_ul li.selected a,
    body #memo_view .win_ul li.selected a,
    body #memo_write .win_ul li.selected a {
        color:#ffffff !important;
    }

    body .new_win .win_ul li:not(.selected):active,
    body #memo_list .win_ul li:not(.selected):active,
    body #memo_view .win_ul li:not(.selected):active,
    body #memo_write .win_ul li:not(.selected):active {
        background:#162235 !important;
        border-color:#60a5fa !important;
    }

    #memo_list .new_win_con2,
    #memo_view .new_win_con,
    #memo_write .new_win_con {
        background:#050a10 !important;
    }

    #memo_list .win_total {
        color:#9fb4cc !important;
    }
}

/* SomoonStory V3.2: mobile point visibility + top search dropdown */
@media (max-width:980px) {
    /* Top magnifier now opens an inline search form instead of sending the user to an empty-looking search page. */
    .jc_m_search_check {
        position:absolute !important;
        left:-9999px !important;
        width:1px !important;
        height:1px !important;
        opacity:0 !important;
    }

    .jc_m_top_search {
        display:none !important;
        grid-template-columns:minmax(0,1fr) 44px !important;
        align-items:center !important;
        gap:0 !important;
        width:100% !important;
        margin:8px 0 2px !important;
        border:1px solid rgba(96,165,250,.30) !important;
        border-radius:14px !important;
        overflow:hidden !important;
        background:#0d1622 !important;
        box-shadow:0 8px 18px rgba(0,0,0,.22) !important;
    }

    .jc_m_search_check:checked ~ .jc_m_top_search {
        display:grid !important;
    }

    .jc_m_top_search input[type="text"] {
        width:100% !important;
        min-width:0 !important;
        height:42px !important;
        padding:0 12px !important;
        border:0 !important;
        border-radius:0 !important;
        background:#0d1622 !important;
        color:#eef6ff !important;
        -webkit-text-fill-color:#eef6ff !important;
        outline:none !important;
        box-shadow:none !important;
    }

    .jc_m_top_search button {
        width:44px !important;
        height:42px !important;
        border:0 !important;
        border-left:1px solid rgba(96,165,250,.22) !important;
        background:#1f6feb !important;
        color:#fff !important;
        border-radius:0 !important;
    }

    .jc_m_top_search input::placeholder {
        color:#8fa3bb !important;
        opacity:1 !important;
    }

    /* Point popup/list: owned point text was still black on mobile. */
    #point,
    #point .new_win_con2,
    #point .point_all,
    #point .point_all li,
    #point .point_list,
    #point .point_list li {
        background:#050a10 !important;
        color:#dbeafe !important;
        border-color:#263142 !important;
        box-shadow:none !important;
    }

    #point .point_all {
        margin:14px !important;
        background:#101722 !important;
        border:1px solid rgba(96,165,250,.28) !important;
        border-radius:14px !important;
        color:#dbeafe !important;
        overflow:hidden !important;
    }

    #point .point_all .full_li,
    #point .point_all li {
        width:100% !important;
        background:#101722 !important;
        color:#cfe1ff !important;
        border-color:rgba(96,165,250,.22) !important;
    }

    #point .point_all li span,
    #point .point_all .full_li span {
        color:#ffffff !important;
        -webkit-text-fill-color:#ffffff !important;
        font-weight:800 !important;
    }

    #point .point_list li {
        background:#101722 !important;
        color:#dbe6f3 !important;
        border-color:rgba(148,163,184,.18) !important;
    }

    #point .point_list .point_use {
        background:#0d1622 !important;
    }

    #point .point_tit,
    #point .point_top,
    #point .point_status {
        color:#eef6ff !important;
    }

    #point .point_date1,
    #point .point_date {
        color:#9fb2ca !important;
    }

    #point .point_status {
        background:#172133 !important;
        border:1px solid rgba(96,165,250,.22) !important;
    }
}

/* MomDadFam V1.0 pastel base theme */
:root {
    --mdf-bg:#fff8fb;
    --mdf-bg-blue:#f2f9ff;
    --mdf-surface:#ffffff;
    --mdf-surface-2:#fff3f7;
    --mdf-line:#e9ddea;
    --mdf-line-blue:#d9ecfb;
    --mdf-text:#394150;
    --mdf-muted:#6d7787;
    --mdf-pink:#f49ab7;
    --mdf-pink-strong:#e76f9d;
    --mdf-blue:#82c9f3;
    --mdf-blue-strong:#409cd5;
    --mdf-cream:#fffdf8;
    --mdf-shadow:0 10px 28px rgba(141, 159, 184, .16);
}

html, body {
    background:linear-gradient(135deg,#fff8fb 0%,#f6fbff 52%,#fffaf0 100%) !important;
    color:var(--mdf-text) !important;
}
body, input, button, textarea, select, table {
    color:var(--mdf-text) !important;
}
a { color:#426177 !important; }
a:hover { color:var(--mdf-pink-strong) !important; }

#hd.jc_hd,
.jc_header_wrap,
.jc_quickbar,
.jc_m_hd,
.jc_m_header,
.jc_m_topbar {
    background:rgba(255,255,255,.92) !important;
    border-color:var(--mdf-line) !important;
    box-shadow:0 6px 22px rgba(194,168,182,.13) !important;
    backdrop-filter:blur(10px);
}
.jc_header_wrap { border-bottom:1px solid var(--mdf-line) !important; }
.jc_quickbar { border-top:1px solid #fff !important; border-bottom:1px solid var(--mdf-line-blue) !important; }
.jc_logo_box img { max-height:70px !important; width:auto !important; }
.jc_m_logo img, .jc_m_drawer_logo img { max-height:42px !important; width:auto !important; }

.jc_search_box form,
.jc_m_search,
.jc_m_top_search,
.jc_m_drawer_search {
    background:#fff !important;
    border:1px solid var(--mdf-line-blue) !important;
    border-radius:18px !important;
    box-shadow:0 6px 16px rgba(130,201,243,.16) !important;
    overflow:hidden !important;
}
.jc_search_box input,
.jc_m_search input,
.jc_m_top_search input[type="text"],
.jc_m_drawer_search input[type="text"] {
    background:#fff !important;
    color:var(--mdf-text) !important;
    -webkit-text-fill-color:var(--mdf-text) !important;
    border:0 !important;
}
.jc_search_box input::placeholder,
.jc_m_search input::placeholder { color:#94a3b8 !important; opacity:1 !important; }
.jc_search_box button,
.jc_m_search button,
.jc_m_top_search button,
.jc_m_drawer_search button {
    background:linear-gradient(135deg,var(--mdf-pink),var(--mdf-blue)) !important;
    color:#fff !important;
    border:0 !important;
}

.jc_login_form input,
.jc_m_login_form input,
input[type="text"], input[type="password"], input[type="email"], input[type="number"], input[type="tel"], input[type="url"], textarea, select {
    background:#fff !important;
    color:var(--mdf-text) !important;
    -webkit-text-fill-color:var(--mdf-text) !important;
    border:1px solid var(--mdf-line-blue) !important;
    border-radius:12px !important;
    box-shadow:none !important;
}
.jc_login_form button,
.jc_m_login_form button,
.btn_submit,
button[type="submit"],
input[type="submit"],
.jc_home_intro_links a:first-child {
    background:linear-gradient(135deg,var(--mdf-pink),var(--mdf-blue)) !important;
    border:0 !important;
    color:#fff !important;
    border-radius:14px !important;
    box-shadow:0 8px 18px rgba(244,154,183,.22) !important;
}
.btn_b01, .btn_b02, .btn_b03,
.jc_login_account_links a,
.jc_guest_support_links a,
.jc_m_account_links a,
.jc_m_quick_links a,
.jc_home_intro_links a {
    background:#fff !important;
    color:#526173 !important;
    border:1px solid var(--mdf-line-blue) !important;
    border-radius:14px !important;
    box-shadow:0 5px 14px rgba(148,163,184,.10) !important;
}

#wrapper, .jc_wrapper, #container_wr, #container, .jc_m_wrapper {
    background:transparent !important;
    color:var(--mdf-text) !important;
}
#container_title,
#container_title span,
.jc_m_sub_title {
    color:#3f4b5c !important;
    background:transparent !important;
}

.jc_box,
.jc_panel,
.jc_home_intro,
.jc_feature_item,
.jc_m_best_card,
.jc_m_rank_list li,
.jc_gallery_latest,
.jc_latest_list,
#bo_list,
#bo_v,
#bo_w,
#bo_sch,
.bo_fx,
.tbl_head01,
.tbl_wrap,
.new_win,
.new_win_con,
.new_win_con2,
#mb_login,
.mbskin,
#register_form,
#fregister,
#memo,
#point,
#faq_wrap,
#qalist,
#qawrite {
    background:rgba(255,255,255,.92) !important;
    color:var(--mdf-text) !important;
    border-color:var(--mdf-line) !important;
    box-shadow:var(--mdf-shadow) !important;
}
.jc_box,
.jc_panel,
.jc_feature_item,
.jc_m_best_card,
.jc_m_rank_list li,
.jc_home_intro { border-radius:20px !important; }
.jc_box_tit,
.jc_box_head,
.jc_panel_head,
.bo_tit,
.new_win .win_ul,
#bo_v_title,
#bo_v_info,
#bo_w .bo_w_tit,
.tbl_head01 thead th,
.tbl_head01 caption,
#faq_wrap .faq_admin,
#faq_wrap h2 {
    background:linear-gradient(90deg,#fff1f6,#f1f9ff) !important;
    color:#445065 !important;
    border-color:var(--mdf-line) !important;
}
.jc_box_tit,
.jc_box_head h3,
.jc_panel_head h3,
#bo_v_title .bo_v_tit,
#bo_v_title,
#bo_w h2,
#faq_wrap h2,
#container_title span {
    color:#344256 !important;
    font-weight:800 !important;
}
.jc_box_head a,
.jc_box_head span,
.jc_panel_head a,
.jc_panel_head span { color:#7c8ca0 !important; }

.jc_home_intro {
    background:linear-gradient(135deg,#fff0f6 0%,#eef9ff 64%,#fff7e6 100%) !important;
    border:1px solid #f0dbe7 !important;
    position:relative !important;
    overflow:hidden !important;
}
.jc_home_intro:after {
    content:"";
    position:absolute;
    right:-42px; top:-36px;
    width:160px; height:160px;
    background:rgba(255,255,255,.45);
    border-radius:50%;
}
.jc_home_intro_text span,
.jc_feature_badge,
.jc_m_best_card span {
    background:#fff !important;
    color:var(--mdf-pink-strong) !important;
    border:1px solid #ffd5e2 !important;
    border-radius:999px !important;
}
.jc_home_intro_text h2 {
    color:#405066 !important;
    text-shadow:none !important;
}
.jc_home_intro_text p { color:#5e6d80 !important; }

.jc_sidebar_box .jc_board_group strong,
.jc_board_group strong {
    background:#ffeaf1 !important;
    color:#c94f7e !important;
    border-radius:12px !important;
}
.jc_board_group li a,
.jc_grade_box li,
.jc_visit_box li,
.jc_best_rank_list li a,
.jc_m_rank_list li a,
.bo_notice td,
.tbl_head01 td,
.tbl_head01 th,
#bo_list tbody tr,
#bo_v_con,
#bo_v_atc,
#bo_v_info,
.cmt_contents,
#bo_vc,
#bo_vc_w {
    background:#fff !important;
    color:var(--mdf-text) !important;
    border-color:#edf1f6 !important;
}
.jc_board_group li a span,
.jc_rank_subject,
.jc_m_rank_list strong,
.jc_feature_item strong,
.jc_m_best_card strong,
.td_subject a,
.bo_tit a { color:#344256 !important; }
.jc_board_group li a em,
.jc_grade_box em,
.jc_visit_box strong,
.jc_rank_no,
.jc_m_rank_no {
    background:linear-gradient(135deg,var(--mdf-pink),var(--mdf-blue)) !important;
    color:#fff !important;
    border-radius:9px !important;
}
.jc_rank_no, .jc_m_rank_no { display:inline-flex !important; align-items:center !important; justify-content:center !important; }
.jc_rank_meta,
.jc_feature_item em,
.jc_m_best_card em,
.bo_cate_link,
.td_datetime,
.td_num,
.sv_member,
.sv_guest,
#bo_v_info strong,
#bo_v_info span { color:#728197 !important; }

.jc_event_box .jc_event_list a,
.jc_event_list li a {
    background:#fff !important;
    border:1px solid var(--mdf-line-blue) !important;
    border-radius:18px !important;
    box-shadow:0 8px 20px rgba(130,201,243,.16) !important;
}
.jc_event_list strong { color:#405066 !important; }
.jc_event_list span { color:#6f7f92 !important; }

.jc_m_drawer {
    background:#fffdfd !important;
    color:var(--mdf-text) !important;
    border-color:var(--mdf-line) !important;
    box-shadow:14px 0 32px rgba(141,159,184,.22) !important;
}
.jc_m_drawer_head,
.jc_m_drawer_section strong,
.jc_m_member_box,
.jc_m_drawer_login {
    background:linear-gradient(90deg,#fff1f6,#f1f9ff) !important;
    color:#405066 !important;
    border-color:var(--mdf-line) !important;
}
.jc_m_menu_btn span { background:#65758a !important; }
.jc_m_icon_link { background:#fff !important; color:#5b6b7d !important; border:1px solid var(--mdf-line-blue) !important; }
.jc_m_drawer_board_list a {
    background:#fff !important;
    color:#405066 !important;
    border:1px solid #edf1f6 !important;
    border-radius:12px !important;
}
.jc_m_drawer_board_list a:hover { background:#fff3f8 !important; color:#d95f8c !important; }

#ft {
    background:rgba(255,255,255,.92) !important;
    color:#69778a !important;
    border-top:1px solid var(--mdf-line) !important;
    box-shadow:0 -8px 24px rgba(141,159,184,.12) !important;
}
#ft h2, #ft_copy b { color:#e76f9d !important; }
#ft a { color:#5c7896 !important; }
#top_btn,
#device_change {
    background:linear-gradient(135deg,var(--mdf-pink),var(--mdf-blue)) !important;
    color:#fff !important;
    border:0 !important;
    border-radius:14px !important;
}

/* Search highlight should be soft, not neon. */
.sch_word,
.search_keyword,
#sch_result mark,
#sch_result .sch_word,
.bo_search_highlight,
span.sch_word {
    background:#fff1c7 !important;
    color:#5a4b22 !important;
    border-radius:5px !important;
    padding:0 3px !important;
}

@media (max-width:980px) {
    body { background:linear-gradient(180deg,#fff8fb 0%,#f3fbff 100%) !important; }
    .jc_m_header_compact { padding:10px 12px !important; }
    .jc_m_topbar { border-bottom:1px solid var(--mdf-line) !important; }
    .jc_mobile_portal { padding:12px !important; background:transparent !important; }
    .jc_mobile_portal_compact .jc_panel { margin-bottom:12px !important; }
    .jc_panel_head { border-radius:18px 18px 0 0 !important; }
    .jc_m_rank_no { min-width:28px !important; height:28px !important; }
    .jc_m_best_card { padding:16px !important; }
    .jc_m_top_search { margin:10px 0 4px !important; }
    #container { background:transparent !important; }
    .jc_m_sub_title { background:#fff !important; border:1px solid var(--mdf-line) !important; border-radius:16px !important; margin:10px 12px !important; padding:11px 14px !important; }
}



/* MomDadFam V1.1 pastel cleanup: no board counts, wider point pills, soft events/footer/latest empties */
.jc_board_group li a {
    gap:8px !important;
}
.jc_board_group li a em {
    display:none !important;
}
.jc_grade_box li,
.jc_visit_box li {
    min-height:32px !important;
    gap:10px !important;
    align-items:center !important;
}
.jc_grade_box li em,
.jc_visit_box strong,
.jc_visit_box em {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:58px !important;
    height:22px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    line-height:22px !important;
    white-space:nowrap !important;
    font-size:12px !important;
    box-sizing:border-box !important;
}
.jc_visit_box,
.ss_visit_box_inline,
.visit,
#visit {
    background:#fff !important;
    color:#405066 !important;
    border-color:#f1dce7 !important;
    box-shadow:0 8px 22px rgba(141,159,184,.10) !important;
}
.jc_visit_box .jc_box_tit,
.visit h2,
#visit h2 {
    background:linear-gradient(90deg,#fff2f7,#f2f9ff) !important;
    color:#405066 !important;
    border-color:#f1dce7 !important;
}
.jc_empty,
.empty_table,
.empty_list,
.jc_gallery_latest .empty_table,
.jc_latest_list .empty_table,
.tbl_head01 .empty_table {
    background:#fffafc !important;
    color:#9aa7b7 !important;
    border-color:#edf1f6 !important;
    text-shadow:none !important;
}
.tbl_head01 table,
.tbl_head01 thead th,
.tbl_head01 tbody td,
.tbl_head01 tbody tr,
.jc_notice_box .tbl_head01 table,
.jc_notice_box .tbl_head01 thead th,
.jc_notice_box .tbl_head01 tbody td {
    background:#fff !important;
    color:#405066 !important;
    border-color:#edf1f6 !important;
}
.tbl_head01 thead th,
.jc_notice_box .tbl_head01 thead th {
    background:linear-gradient(90deg,#fff2f7,#f2f9ff) !important;
}
.jc_event_box .jc_event_list li,
.jc_event_list li {
    border-radius:20px !important;
}
.jc_event_box .jc_event_list a,
.jc_event_list li a {
    display:block !important;
    overflow:hidden !important;
    padding:10px !important;
    border-radius:20px !important;
    background:#fff !important;
    border:1px solid #e4effa !important;
    box-shadow:0 8px 22px rgba(141,159,184,.12) !important;
}
.jc_event_list img {
    display:block !important;
    width:100% !important;
    height:auto !important;
    margin:0 0 10px !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#fff4f8 !important;
}
#ft,
#ft_wr,
#ft_copy {
    background:#fff !important;
    color:#6f7f92 !important;
    border-color:#f1dce7 !important;
}
#ft {
    border-top:1px solid #f1dce7 !important;
    box-shadow:0 -8px 24px rgba(141,159,184,.08) !important;
}
#ft a,
#ft h2,
#ft strong,
#ft b {
    color:#405066 !important;
}
#ft_copy b { color:#e76f9d !important; }
.jc_home_intro_text span { letter-spacing:.04em !important; }
@media (max-width:980px) {
    .jc_grade_box li em,
    .jc_visit_box strong,
    .jc_visit_box em { min-width:54px !important; }
}


/* MomDadFam V1.2 pastel polish: visit card, logo scale, content dark residues, event fill, footer readability */
:root {
    --mdf-bg:#fff8fb;
    --mdf-surface:#ffffff;
    --mdf-soft-pink:#fff2f7;
    --mdf-soft-blue:#f2f9ff;
    --mdf-line:#f1dce7;
    --mdf-line-blue:#d9ecfb;
    --mdf-text:#405066;
    --mdf-muted:#6f7f92;
    --mdf-pink:#f49ab7;
    --mdf-blue:#82c9f3;
}

/* logo: compact SVG should visually fill the left header area more */
.jc_logo_box,
.jc_logo_box a {
    min-width:0 !important;
    overflow:visible !important;
}
.jc_logo_box img {
    width:158px !important;
    max-width:100% !important;
    height:auto !important;
    max-height:62px !important;
    display:block !important;
}
@media (min-width:1280px) {
    .jc_logo_box img { width:168px !important; max-height:66px !important; }
}
.jc_m_logo img,
.jc_m_drawer_logo img {
    width:122px !important;
    max-height:44px !important;
    height:auto !important;
}

/* visit card: match board/point pastel rounded card */
.jc_visit_box,
.ss_visit_box_inline,
.jc_visit_box #visit,
.ss_visit_box_inline #visit,
#visit.ft_cnt {
    background:#fff !important;
    border:1px solid var(--mdf-line) !important;
    border-radius:18px !important;
    color:var(--mdf-text) !important;
    overflow:hidden !important;
    box-shadow:0 8px 22px rgba(141,159,184,.10) !important;
}
.jc_visit_box #visit {
    padding:0 12px 12px !important;
}
.jc_visit_box #visit h2,
.ss_visit_box_inline #visit h2,
#visit.ft_cnt h2 {
    margin:0 -12px 10px !important;
    padding:12px 14px !important;
    background:linear-gradient(90deg,#fff2f7,#f2f9ff) !important;
    border-bottom:1px solid var(--mdf-line) !important;
    color:var(--mdf-text) !important;
    font-weight:900 !important;
}
.jc_visit_box #visit dt,
.ss_visit_box_inline #visit dt,
#visit.ft_cnt dt {
    color:#536274 !important;
    font-weight:700 !important;
    line-height:28px !important;
}
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dd,
#visit.ft_cnt dd {
    color:var(--mdf-text) !important;
    line-height:28px !important;
}
.jc_visit_box #visit dd strong,
.ss_visit_box_inline #visit dd strong,
#visit.ft_cnt dd strong,
.jc_visit_box strong,
.jc_visit_box em {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:54px !important;
    height:21px !important;
    padding:0 8px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#efadc3,#a9d6f5) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    line-height:21px !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
}
.jc_visit_box #visit dt span,
.ss_visit_box_inline #visit dt span { background:var(--mdf-blue) !important; }

/* gallery / latest / notice: remove remaining dark strips */
.jc_gallery_latest,
.jc_gallery_latest *,
.jc_latest_list,
.jc_latest_list *,
.jc_notice_box,
.jc_notice_box * {
    text-shadow:none !important;
}
.jc_gallery_latest,
.jc_gallery_latest .lat,
.jc_gallery_latest .lat ul,
.jc_gallery_latest .lat li,
.jc_gallery_latest .latest_wr,
.jc_gallery_latest .empty_li,
.jc_gallery_latest .empty_table,
.jc_gallery_latest .empty_list,
.jc_latest_list,
.jc_latest_list .lat,
.jc_latest_list .notice,
.jc_latest_list .lat ul,
.jc_latest_list .notice ul,
.jc_latest_list .lat li,
.jc_latest_list .notice li,
.jc_latest_list .empty_li,
.jc_latest_list .empty_table,
.jc_latest_list .empty_list,
.jc_notice_box .lat,
.jc_notice_box .notice,
.jc_notice_box .lat ul,
.jc_notice_box .notice ul,
.jc_notice_box .lat li,
.jc_notice_box .notice li {
    background:#fff !important;
    color:var(--mdf-text) !important;
    border-color:#edf1f6 !important;
}
.jc_gallery_latest .empty_li,
.jc_gallery_latest .empty_table,
.jc_gallery_latest .empty_list,
.jc_latest_list .empty_li,
.jc_latest_list .empty_table,
.jc_latest_list .empty_list,
.jc_notice_box .empty_li,
.jc_notice_box .empty_table,
.jc_notice_box .empty_list,
.jc_empty {
    background:#fffafc !important;
    color:#7b8798 !important;
    -webkit-text-fill-color:#7b8798 !important;
    opacity:1 !important;
    border-color:#edf1f6 !important;
}
.jc_gallery_latest a,
.jc_latest_list a,
.jc_notice_box a,
.jc_gallery_latest .lat li a,
.jc_latest_list .lat li a,
.jc_latest_list .notice li a {
    color:#344256 !important;
    -webkit-text-fill-color:#344256 !important;
}
.jc_gallery_latest .lat .lat_title,
.jc_latest_list .lat .lat_title,
.jc_latest_list .notice h2,
.jc_notice_box .lat .lat_title,
.jc_notice_box .notice h2 {
    background:linear-gradient(90deg,#fff2f7,#f2f9ff) !important;
    color:var(--mdf-text) !important;
    border-color:var(--mdf-line) !important;
}

/* event right column: 4 compact cards, no awkward empty bottom */
.jc_event_box .jc_event_list,
.jc_event_list {
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
}
.jc_event_box .jc_event_list li,
.jc_event_list li {
    margin:0 !important;
    border-radius:20px !important;
    overflow:hidden !important;
}
.jc_event_box .jc_event_list a,
.jc_event_list li a {
    min-height:0 !important;
    padding:9px !important;
    border-radius:20px !important;
    overflow:hidden !important;
}
.jc_event_list img {
    height:54px !important;
    object-fit:cover !important;
    border-radius:15px !important;
    margin:0 0 8px !important;
}
.jc_event_list strong {
    display:block !important;
    margin:0 0 5px !important;
    color:#344256 !important;
    font-size:13px !important;
    line-height:1.28 !important;
    font-weight:900 !important;
}
.jc_event_list span {
    display:block !important;
    color:#6f7f92 !important;
    font-size:11.5px !important;
    line-height:1.45 !important;
}

/* footer: remove old dark center patch */
#ft,
#ft_wr,
#ft_wr.ss_footer_cols3,
#ft_wr .ft_cnt,
#ft_company,
#ft_company *,
#ft_link,
#ft_link *,
#ft_copy {
    background:transparent !important;
    text-shadow:none !important;
}
#ft {
    background:#fff !important;
    border-top:1px solid var(--mdf-line) !important;
    box-shadow:0 -8px 24px rgba(141,159,184,.08) !important;
}
#ft_wr.ss_footer_cols3 {
    border-bottom:1px solid #edf1f6 !important;
}
#ft a,
#ft h2,
#ft strong,
#ft b {
    color:var(--mdf-text) !important;
    -webkit-text-fill-color:var(--mdf-text) !important;
}
#ft_company .ft_info,
#ft_copy {
    color:#6f7f92 !important;
    -webkit-text-fill-color:#6f7f92 !important;
}

/* grade pills slight breathing room */
.jc_grade_box li em {
    min-width:66px !important;
    padding:0 10px !important;
}


/* MomDadFam V1.3 pastel refinement: sidebar balance, softer headings, clean lines, unified hero buttons, board-list icon polish */
:root {
    --mdf-bg:#fff9fc;
    --mdf-surface:#ffffff;
    --mdf-text:#4a5568;
    --mdf-title:#465367;
    --mdf-muted:#76869a;
    --mdf-soft-pink:#fff1f6;
    --mdf-soft-blue:#f1f9ff;
    --mdf-line:#f1dce7;
    --mdf-line-blue:#d9ecfb;
    --mdf-pink:#f29ab8;
    --mdf-blue:#8bcdf2;
}

/* left sidebar: make three cards feel like one family */
.jc_left_col .jc_box,
.ss_layout_left .jc_box,
.jc_sidebar_box,
.jc_grade_box,
.jc_visit_box,
.ss_visit_box_inline {
    border-radius:18px !important;
    border:1px solid var(--mdf-line) !important;
    background:rgba(255,255,255,.94) !important;
    box-shadow:0 8px 20px rgba(141,159,184,.09) !important;
    overflow:hidden !important;
}
.jc_left_col .jc_box + .jc_box,
.ss_layout_left .jc_box + .jc_box {
    margin-top:14px !important;
}
.jc_left_col .jc_box_tit,
.ss_layout_left .jc_box_tit,
.jc_visit_box #visit h2,
.ss_visit_box_inline #visit h2,
#visit.ft_cnt h2 {
    min-height:42px !important;
    padding:10px 13px !important;
    background:linear-gradient(90deg,#fff3f8,#f3faff) !important;
    border-bottom:1px solid var(--mdf-line) !important;
    color:var(--mdf-title) !important;
    font-size:17px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    letter-spacing:-.04em !important;
}
.jc_sidebar_box .jc_board_group strong,
.jc_board_group strong {
    display:block !important;
    padding:8px 13px !important;
    border-radius:0 !important;
    background:#ffe8f0 !important;
    color:#c9537e !important;
    font-size:14px !important;
    font-weight:800 !important;
}
.jc_board_group ul { padding:7px 10px 10px !important; }
.jc_board_group li a {
    min-height:28px !important;
    padding:5px 3px !important;
    color:var(--mdf-text) !important;
    font-size:13px !important;
    line-height:1.35 !important;
    border-bottom:0 !important;
}
.jc_grade_box ul { padding:7px 11px 10px !important; }
.jc_grade_box li {
    min-height:30px !important;
    padding:4px 0 !important;
    border-bottom:1px dashed #edf1f6 !important;
    font-size:13px !important;
    color:var(--mdf-text) !important;
}
.jc_grade_box li em {
    min-width:70px !important;
    height:23px !important;
    padding:0 11px !important;
    font-size:12px !important;
    line-height:23px !important;
}
.jc_visit_box,
.ss_visit_box_inline,
.jc_visit_box #visit,
.ss_visit_box_inline #visit,
#visit.ft_cnt {
    padding:0 11px 11px !important;
}
.jc_visit_box #visit h2,
.ss_visit_box_inline #visit h2,
#visit.ft_cnt h2 {
    margin:0 -11px 9px !important;
}
.jc_visit_box #visit dl,
.ss_visit_box_inline #visit dl { padding:2px 0 1px !important; }
.jc_visit_box #visit dt,
.ss_visit_box_inline #visit dt,
#visit.ft_cnt dt {
    min-height:31px !important;
    line-height:31px !important;
    color:#5b687a !important;
    font-size:13px !important;
    font-weight:800 !important;
}
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dd,
#visit.ft_cnt dd {
    min-height:31px !important;
    line-height:31px !important;
    color:var(--mdf-title) !important;
    font-size:13px !important;
    font-weight:800 !important;
}
.jc_visit_box #visit dd strong,
.ss_visit_box_inline #visit dd strong,
#visit.ft_cnt dd strong,
.jc_visit_box strong,
.jc_visit_box em {
    min-width:58px !important;
    height:23px !important;
    padding:0 10px !important;
    line-height:23px !important;
    font-size:12px !important;
    border-radius:999px !important;
}

/* content area titles: softer, less rigid than black-bold headings */
.jc_center_col .jc_box_head,
.jc_feature_box .jc_box_head,
.jc_gallery_box .jc_box_head,
.jc_best_rank_box .jc_box_head,
.jc_notice_box .jc_box_head {
    min-height:42px !important;
    padding:10px 14px !important;
    background:linear-gradient(90deg,#fff5f9,#f4fbff) !important;
    border-bottom:1px solid var(--mdf-line) !important;
}
.jc_center_col .jc_box_head h3,
.jc_feature_box .jc_box_head h3,
.jc_gallery_box .jc_box_head h3,
.jc_best_rank_box .jc_box_head h3,
.jc_notice_box .jc_box_head h3 {
    color:#505d70 !important;
    font-size:18px !important;
    font-weight:700 !important;
    letter-spacing:-.045em !important;
    line-height:1.25 !important;
}
.jc_center_col .jc_box_head a,
.jc_center_col .jc_box_head span {
    color:#7c8aa0 !important;
    font-weight:700 !important;
    font-size:12px !important;
}

/* remove hard black residue lines in rank/latest/notice areas */
.jc_best_rank_box,
.jc_notice_box,
.jc_gallery_box,
.jc_feature_box { overflow:hidden !important; }
.jc_best_rank_list,
.jc_best_rank_list li,
.jc_best_rank_list li a,
.jc_notice_box .lat,
.jc_notice_box .notice,
.jc_notice_box ul,
.jc_notice_box li,
.jc_latest_list,
.jc_latest_list .lat,
.jc_latest_list .notice,
.jc_latest_list li,
.jc_gallery_latest,
.jc_gallery_latest .lat,
.jc_gallery_latest li,
.tbl_head01 table,
.tbl_head01 tr,
.tbl_head01 th,
.tbl_head01 td,
.empty_table,
.empty_li,
.empty_list {
    border-color:#edf1f6 !important;
    box-shadow:none !important;
}
.jc_best_rank_list li,
.jc_latest_list li,
.jc_gallery_latest li,
.jc_notice_box li {
    border-bottom:1px solid #edf1f6 !important;
}
.jc_best_rank_list li:last-child,
.jc_latest_list li:last-child,
.jc_gallery_latest li:last-child,
.jc_notice_box li:last-child { border-bottom:0 !important; }
.jc_notice_box .empty_li,
.jc_notice_box .empty_table,
.jc_notice_box .empty_list,
.jc_gallery_latest .empty_li,
.jc_gallery_latest .empty_table,
.jc_gallery_latest .empty_list,
.jc_empty {
    color:#7e8b9d !important;
    -webkit-text-fill-color:#7e8b9d !important;
    opacity:1 !important;
    background:#fffafc !important;
}

/* hero panel links: one button family, no mixed backgrounds */
.jc_home_intro_links {
    display:flex !important;
    gap:8px !important;
    align-items:center !important;
    flex-wrap:wrap !important;
}
.jc_home_intro_links a,
.jc_home_intro_links a:first-child,
.jc_home_intro_links a:nth-child(n) {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:76px !important;
    height:34px !important;
    padding:0 14px !important;
    border-radius:15px !important;
    border:1px solid #d9ecfb !important;
    background:#fff !important;
    color:#58677a !important;
    -webkit-text-fill-color:#58677a !important;
    font-size:13px !important;
    font-weight:800 !important;
    box-shadow:0 5px 13px rgba(148,163,184,.10) !important;
}
.jc_home_intro_links a:hover {
    border-color:#f1b5c9 !important;
    background:#fff7fb !important;
    color:#c9537e !important;
    -webkit-text-fill-color:#c9537e !important;
}

/* logo: remove rear heart mark, make wordmark fill header better */
.jc_logo_box img {
    width:190px !important;
    max-height:68px !important;
}
@media (min-width:1280px) {
    .jc_logo_box img { width:204px !important; max-height:72px !important; }
}
.jc_m_logo img,
.jc_m_drawer_logo img {
    width:142px !important;
    max-height:48px !important;
}

/* board list/view: soften category lines and black icon blocks */
#bo_list,
#bo_gall,
#bo_v,
#bo_w,
.bo_fx,
.tbl_head01,
.tbl_wrap {
    background:#fff !important;
    color:var(--mdf-text) !important;
    border-color:var(--mdf-line) !important;
}
#bo_list .bo_tit,
#bo_gall .bo_tit,
.bo_tit {
    background:transparent !important;
    border-left:0 !important;
    box-shadow:none !important;
    color:#465367 !important;
    font-weight:700 !important;
}
#bo_list .bo_tit a,
#bo_gall .bo_tit a,
.bo_tit a {
    color:#465367 !important;
    font-weight:700 !important;
}
#bo_list .bo_tit:before,
#bo_gall .bo_tit:before,
.bo_tit:before {
    display:none !important;
    content:none !important;
}
#bo_list .bo_tit .title_icon,
#bo_gall .bo_tit .title_icon,
#bo_list .bo_tit .fa-lock,
#bo_gall .bo_tit .fa-lock,
#bo_list .bo_tit .new_icon,
#bo_gall .bo_tit .new_icon,
#bo_list .bo_tit .hot_icon,
#bo_gall .bo_tit .hot_icon,
#bo_list .bo_tit .fa-download,
#bo_gall .bo_tit .fa-download,
#bo_list .bo_tit .fa-link,
#bo_gall .bo_tit .fa-link,
#bo_list .bo_tit .fa-caret-right,
#bo_gall .bo_tit .fa-caret-right,
#bo_list .bo_tit i,
#bo_gall .bo_tit i {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:16px !important;
    height:16px !important;
    padding:0 4px !important;
    margin:0 2px !important;
    border-radius:999px !important;
    border:1px solid #d9ecfb !important;
    background:#f3faff !important;
    color:#5c9fcf !important;
    font-size:10px !important;
    line-height:16px !important;
    vertical-align:middle !important;
}
#bo_list .bo_tit .new_icon,
#bo_gall .bo_tit .new_icon { background:#e7f6ff !important; color:#4c9dd2 !important; border-color:#cae9fb !important; }
#bo_list .bo_tit .hot_icon,
#bo_gall .bo_tit .hot_icon { background:#fff0f6 !important; color:#d66b93 !important; border-color:#ffd3e0 !important; }
#bo_list .bo_tit .fa-lock,
#bo_gall .bo_tit .fa-lock { background:#f8f5ff !important; color:#8b78bc !important; border-color:#e4daf8 !important; }
#bo_list tbody tr,
#bo_gall .gall_box,
.tbl_head01 tbody tr,
.tbl_head01 tbody td {
    background:#fff !important;
    border-color:#edf1f6 !important;
}
#bo_list .bo_cate_link,
#bo_gall .bo_cate_link,
.bo_cate_link {
    background:#fff5f9 !important;
    border:1px solid #ffd8e5 !important;
    color:#c9537e !important;
    border-radius:999px !important;
    font-weight:700 !important;
}
.bo_fx .btn,
.btn_b01,
.btn_b02,
.btn_b03,
.btn_admin,
.btn_bo_sch,
.btn_more_opt {
    background:#fff !important;
    color:#5a687b !important;
    -webkit-text-fill-color:#5a687b !important;
    border:1px solid #d9ecfb !important;
    box-shadow:0 5px 13px rgba(148,163,184,.10) !important;
}
.bo_fx .btn i,
.btn_b01 i,
.btn_b02 i,
.btn_b03 i,
.btn_admin i,
.btn_bo_sch i,
.btn_more_opt i { color:#6aaed8 !important; }


/* MomDadFam V1.4: logo size, visit card cleanup, notice/board icon polish */
:root {
    --mdf-v14-title:#566274;
    --mdf-v14-text:#4f5e72;
    --mdf-v14-muted:#718196;
    --mdf-v14-line:#eef2f7;
    --mdf-v14-pink-line:#f4d8e4;
    --mdf-v14-blue:#8bcdf2;
    --mdf-v14-pink:#f29ab8;
}

/* Header logo should visually fill the left header space and sit closer to the search field. */
.jc_header_inner {
    grid-template-columns:164px minmax(0, 1fr) !important;
    gap:8px !important;
    align-items:center !important;
}
.jc_logo_box {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    overflow:visible !important;
}
.jc_logo_box img {
    width:auto !important;
    height:50px !important;
    max-height:50px !important;
    max-width:none !important;
    display:block !important;
}
@media (min-width:1280px) {
    .jc_header_inner { grid-template-columns:168px minmax(0, 1fr) !important; gap:8px !important; }
    .jc_logo_box img { height:52px !important; max-height:52px !important; }
}
@media (max-width:980px) {
    .jc_header_inner { grid-template-columns:1fr !important; gap:0 !important; }
    .jc_logo_box img { height:auto !important; max-height:42px !important; width:132px !important; max-width:132px !important; }
}
.jc_m_logo img,
.jc_m_drawer_logo img {
    width:148px !important;
    max-height:48px !important;
}

/* Visit counter: remove stray admin/blank square and make it consistent with other side cards. */
.jc_visit_box #visit .btn_admin,
.ss_visit_box_inline #visit .btn_admin,
#visit.ft_cnt .btn_admin {
    display:none !important;
}
.jc_visit_box,
.ss_visit_box_inline {
    background:#fff !important;
    border:1px solid var(--mdf-v14-pink-line) !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-shadow:0 8px 20px rgba(141,159,184,.08) !important;
}
.jc_visit_box #visit,
.ss_visit_box_inline #visit {
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:0 12px 12px !important;
    overflow:hidden !important;
}
.jc_visit_box #visit h2,
.ss_visit_box_inline #visit h2 {
    margin:0 -12px 10px !important;
    min-height:42px !important;
    padding:10px 14px !important;
    background:linear-gradient(90deg,#fff3f8,#f3faff) !important;
    border-bottom:1px solid var(--mdf-v14-pink-line) !important;
    color:#3f4d61 !important;
    font-size:17px !important;
    font-weight:850 !important;
    letter-spacing:-.04em !important;
}
.jc_visit_box #visit dl,
.ss_visit_box_inline #visit dl {
    display:grid !important;
    grid-template-columns:1fr auto !important;
    align-items:center !important;
    gap:0 8px !important;
    padding:1px 0 !important;
}
.jc_visit_box #visit dt,
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dt,
.ss_visit_box_inline #visit dd {
    float:none !important;
    width:auto !important;
    min-height:30px !important;
    line-height:30px !important;
    padding:1px 0 !important;
    border-bottom:0 !important;
}
.jc_visit_box #visit dt,
.ss_visit_box_inline #visit dt {
    color:#59697e !important;
    font-size:13px !important;
    font-weight:800 !important;
    text-align:left !important;
}
.jc_visit_box #visit dt span,
.ss_visit_box_inline #visit dt span {
    width:5px !important;
    height:5px !important;
    margin-right:8px !important;
    background:#8bcdf2 !important;
    opacity:.9 !important;
}
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dd {
    text-align:right !important;
}
.jc_visit_box #visit dd strong,
.ss_visit_box_inline #visit dd strong {
    min-width:58px !important;
    height:23px !important;
    padding:0 11px !important;
    line-height:23px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#efadc3,#a9d6f5) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:12px !important;
    font-weight:900 !important;
    box-shadow:none !important;
}

/* Remove black residual lines under notice/rank/list empty areas. */
.jc_notice_box,
.jc_notice_box *,
.jc_best_rank_box,
.jc_best_rank_box *,
.jc_gallery_box,
.jc_gallery_box * {
    border-color:var(--mdf-v14-line) !important;
    box-shadow:none !important;
}
.jc_notice_box:before,
.jc_notice_box:after,
.jc_notice_box .lat:before,
.jc_notice_box .lat:after,
.jc_notice_box ul:before,
.jc_notice_box ul:after,
.jc_notice_box li:before,
.jc_notice_box li:after,
.jc_best_rank_box:before,
.jc_best_rank_box:after,
.jc_best_rank_list:before,
.jc_best_rank_list:after {
    display:none !important;
    content:none !important;
    border:0 !important;
    background:transparent !important;
}
.jc_notice_box .empty_li,
.jc_notice_box .empty_table,
.jc_notice_box .empty_list,
.jc_notice_box .lt_empty,
.jc_gallery_latest .empty_li,
.jc_gallery_latest .empty_table,
.jc_gallery_latest .empty_list,
.jc_gallery_latest .lt_empty {
    color:#76869a !important;
    -webkit-text-fill-color:#76869a !important;
    opacity:1 !important;
    background:#fff !important;
    border-top:1px solid var(--mdf-v14-line) !important;
    border-bottom:0 !important;
}

/* Board list buttons/icons: replace remaining black square buttons with pastel buttons. */
#bo_list .btn_bo_sch,
#bo_gall .btn_bo_sch,
#bo_v .btn_bo_sch,
.bo_fx .btn_bo_sch,
#bo_btn_top .btn_bo_sch,
.btn_bo_sch,
.btn_bo_user .btn,
.btn_bo_user button,
.btn_bo_user a,
.bo_fx .btn_b01,
.bo_fx .btn_b02,
.bo_fx .btn_admin,
.bo_fx button,
#bo_list .btn_admin,
#bo_gall .btn_admin,
#bo_list .btn_b01,
#bo_list .btn_b02,
#bo_gall .btn_b01,
#bo_gall .btn_b02,
#bo_list_total + ul .btn,
#bo_list_total + ul button,
#bo_cate_on,
#bo_list .td_mng a,
#bo_list .td_mng button {
    background:#fff !important;
    color:#5e6e83 !important;
    -webkit-text-fill-color:#5e6e83 !important;
    border:1px solid #d9ecfb !important;
    border-radius:12px !important;
    box-shadow:0 5px 13px rgba(148,163,184,.10) !important;
}
#bo_list .btn_bo_sch i,
#bo_gall .btn_bo_sch i,
#bo_v .btn_bo_sch i,
.bo_fx .btn_bo_sch i,
#bo_btn_top .btn_bo_sch i,
.btn_bo_sch i,
.btn_bo_user .btn i,
.btn_bo_user button i,
.btn_bo_user a i,
.bo_fx .btn_b01 i,
.bo_fx .btn_b02 i,
.bo_fx .btn_admin i,
.bo_fx button i,
#bo_list .btn_admin i,
#bo_gall .btn_admin i,
#bo_list .btn_b01 i,
#bo_list .btn_b02 i,
#bo_gall .btn_b01 i,
#bo_gall .btn_b02 i {
    color:#6aaed8 !important;
    -webkit-text-fill-color:#6aaed8 !important;
}
#bo_list .btn_b02,
#bo_gall .btn_b02,
.bo_fx .btn_b02,
.btn_bo_user .btn_b02,
.btn_bo_user a.btn_b02,
.btn_bo_user button.btn_b02 {
    background:linear-gradient(135deg,#fff3f8,#f1f9ff) !important;
    border-color:#f4d8e4 !important;
    color:#c9537e !important;
    -webkit-text-fill-color:#c9537e !important;
}
#bo_sch,
#bo_sch form,
.bo_sch_wrap,
.bo_sch_wrap form {
    background:#fff !important;
    border-color:#f1dce7 !important;
    color:#4f5e72 !important;
}
#bo_sch .btn_submit,
.bo_sch_wrap .btn_submit,
#bo_sch button,
.bo_sch_wrap button {
    background:linear-gradient(135deg,#f29ab8,#8bcdf2) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    border:0 !important;
    border-radius:12px !important;
}
#bo_sch .btn_submit i,
.bo_sch_wrap .btn_submit i,
#bo_sch button i,
.bo_sch_wrap button i {
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
}

/* List row/new icon residue: no black icon backgrounds in titles. */
#bo_list .bo_tit i,
#bo_gall .bo_tit i,
#bo_list .bo_tit .new_icon,
#bo_gall .bo_tit .new_icon,
#bo_list .bo_tit .hot_icon,
#bo_gall .bo_tit .hot_icon,
#bo_list .bo_tit .fa,
#bo_gall .bo_tit .fa {
    background:#f3faff !important;
    color:#5c9fcf !important;
    -webkit-text-fill-color:#5c9fcf !important;
    border:1px solid #d9ecfb !important;
    border-radius:999px !important;
    box-shadow:none !important;
}


/* MomDadFam V1.5: visit/notice/board cleanup after live review */
:root {
    --mdf-v15-text:#3f4d61;
    --mdf-v15-muted:#718096;
    --mdf-v15-line:#edf1f7;
    --mdf-v15-pink-line:#f6dce7;
    --mdf-v15-blue-line:#dceefa;
    --mdf-v15-soft:#fff8fb;
}

/* Visit counter: no admin ghost square, consistent pastel card. */
.jc_visit_box,
.ss_visit_box_inline {
    background:#fff !important;
    border:1px solid var(--mdf-v15-pink-line) !important;
    border-radius:18px !important;
    box-shadow:0 8px 20px rgba(141,159,184,.07) !important;
    overflow:hidden !important;
}
.jc_visit_box #visit,
.ss_visit_box_inline #visit,
#visit.ft_cnt {
    position:relative !important;
    background:#fff !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    padding:0 12px 13px !important;
    color:var(--mdf-v15-text) !important;
}
.jc_visit_box #visit .btn_admin,
.ss_visit_box_inline #visit .btn_admin,
#visit.ft_cnt .btn_admin,
#visit .btn_admin {
    display:none !important;
    visibility:hidden !important;
    width:0 !important;
    height:0 !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    overflow:hidden !important;
}
.jc_visit_box #visit h2,
.ss_visit_box_inline #visit h2,
#visit.ft_cnt h2 {
    display:block !important;
    margin:0 -12px 10px !important;
    padding:10px 14px !important;
    min-height:42px !important;
    line-height:22px !important;
    background:linear-gradient(90deg,#fff3f8,#f4fbff) !important;
    border:0 !important;
    border-bottom:1px solid var(--mdf-v15-pink-line) !important;
    color:var(--mdf-v15-text) !important;
    -webkit-text-fill-color:var(--mdf-v15-text) !important;
    font-size:16px !important;
    font-weight:800 !important;
    letter-spacing:-.04em !important;
}
.jc_visit_box #visit dl,
.ss_visit_box_inline #visit dl,
#visit.ft_cnt dl {
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:0 10px !important;
    margin:0 !important;
    padding:0 !important;
}
.jc_visit_box #visit dl:after,
.ss_visit_box_inline #visit dl:after,
#visit.ft_cnt dl:after {display:none !important;content:none !important;}
.jc_visit_box #visit dt,
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dt,
.ss_visit_box_inline #visit dd,
#visit.ft_cnt dt,
#visit.ft_cnt dd {
    float:none !important;
    width:auto !important;
    min-height:28px !important;
    line-height:28px !important;
    margin:0 !important;
    padding:1px 0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.jc_visit_box #visit dt,
.ss_visit_box_inline #visit dt,
#visit.ft_cnt dt {
    color:#58687d !important;
    -webkit-text-fill-color:#58687d !important;
    font-size:13px !important;
    font-weight:750 !important;
    text-align:left !important;
}
.jc_visit_box #visit dt span,
.ss_visit_box_inline #visit dt span,
#visit.ft_cnt dt span {
    display:inline-block !important;
    width:5px !important;
    height:5px !important;
    margin-right:8px !important;
    border-radius:50% !important;
    background:#8bcdf2 !important;
    vertical-align:middle !important;
}
.jc_visit_box #visit dd,
.ss_visit_box_inline #visit dd,
#visit.ft_cnt dd { text-align:right !important; }
.jc_visit_box #visit dd strong,
.ss_visit_box_inline #visit dd strong,
#visit.ft_cnt dd strong {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:48px !important;
    height:22px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#e9a8c0,#a9d6f5) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    font-size:12px !important;
    font-weight:850 !important;
    white-space:nowrap !important;
}

/* Latest/notice/card residue: remove hard black lines. */
.jc_notice_box,
.jc_notice_box .lat,
.jc_notice_box .notice,
.jc_notice_box ul,
.jc_notice_box li,
.jc_notice_box table,
.jc_notice_box tbody,
.jc_notice_box tr,
.jc_notice_box td,
.jc_best_rank_box,
.jc_best_rank_box ul,
.jc_best_rank_box li,
.jc_best_rank_list,
.jc_gallery_box,
.jc_gallery_box ul,
.jc_gallery_box li {
    border-color:var(--mdf-v15-line) !important;
    box-shadow:none !important;
}
.jc_notice_box:before,
.jc_notice_box:after,
.jc_notice_box .lat:before,
.jc_notice_box .lat:after,
.jc_notice_box .notice:before,
.jc_notice_box .notice:after,
.jc_notice_box ul:before,
.jc_notice_box ul:after,
.jc_notice_box li:before,
.jc_notice_box li:after,
.jc_best_rank_box:before,
.jc_best_rank_box:after,
.jc_best_rank_list:before,
.jc_best_rank_list:after {
    display:none !important;
    content:none !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.jc_notice_box .empty_li,
.jc_notice_box .empty_table,
.jc_notice_box .empty_list,
.jc_notice_box .lt_empty,
.jc_gallery_latest .empty_li,
.jc_gallery_latest .empty_table,
.jc_gallery_latest .empty_list,
.jc_gallery_latest .lt_empty {
    border:0 !important;
    border-top:1px solid var(--mdf-v15-line) !important;
    border-bottom:0 !important;
    outline:0 !important;
    box-shadow:none !important;
    background:#fff !important;
    color:#79889a !important;
    -webkit-text-fill-color:#79889a !important;
    opacity:1 !important;
}

/* Board list table: no column-by-column gradients. */
#bo_list table,
#bo_list .tbl_head01,
#bo_list .tbl_head01 table,
#bo_gall table,
#bo_gall .tbl_head01,
#bo_gall .tbl_head01 table {
    background:#fff !important;
    border:0 !important;
    box-shadow:none !important;
}
#bo_list thead,
#bo_list thead tr,
#bo_list thead th,
#bo_list .tbl_head01 thead th,
#bo_gall thead,
#bo_gall thead tr,
#bo_gall thead th,
#bo_gall .tbl_head01 thead th {
    background:#fff8fb !important;
    background-image:none !important;
    color:#5f6d80 !important;
    -webkit-text-fill-color:#5f6d80 !important;
    border:0 !important;
    border-top:1px solid #f5dce8 !important;
    border-bottom:1px solid #edf1f7 !important;
    box-shadow:none !important;
    font-weight:700 !important;
}
#bo_list tbody tr,
#bo_list tbody td,
#bo_list .tbl_head01 tbody td,
#bo_gall tbody tr,
#bo_gall tbody td,
#bo_gall .tbl_head01 tbody td {
    background:#fff !important;
    background-image:none !important;
    color:#4b596a !important;
    -webkit-text-fill-color:#4b596a !important;
    border-color:#edf1f7 !important;
    box-shadow:none !important;
}
#bo_list tbody tr:hover,
#bo_gall tbody tr:hover { background:#fffafd !important; }

/* Board toolbar buttons: kill remaining black square skin styles. */
#bo_list .btn_bo_user li,
#bo_gall .btn_bo_user li,
#bo_v_top .btn_bo_user li,
#bo_v_bot .btn_bo_user li,
.bo_fx .btn_bo_user li {
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
}
#bo_list .btn_bo_sch,
#bo_gall .btn_bo_sch,
#bo_v .btn_bo_sch,
#bo_btn_top .btn_bo_sch,
#bo_list .btn_bo_user .btn,
#bo_gall .btn_bo_user .btn,
#bo_v_top .btn_bo_user .btn,
#bo_v_bot .btn_bo_user .btn,
.bo_fx .btn_bo_user .btn,
#bo_list .btn_bo_user a,
#bo_gall .btn_bo_user a,
#bo_v_top .btn_bo_user a,
#bo_v_bot .btn_bo_user a,
.bo_fx .btn_bo_user a,
#bo_list .btn_b01,
#bo_list .btn_b02,
#bo_gall .btn_b01,
#bo_gall .btn_b02,
#bo_v_top .btn,
#bo_v_bot .btn,
.btn_top .write_btn,
.fix_btn.write_btn,
a.write_btn,
a.btn_b01,
a.btn_b02,
button.btn_b01,
button.btn_b02,
.view_is_list,
.somoon-login-required,
#bo_list .td_mng a,
#bo_list .td_mng button {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:38px !important;
    min-height:34px !important;
    padding:0 12px !important;
    background:#fff !important;
    background-image:none !important;
    border:1px solid #d9ecfb !important;
    border-radius:12px !important;
    color:#5e6e83 !important;
    -webkit-text-fill-color:#5e6e83 !important;
    box-shadow:0 5px 13px rgba(148,163,184,.10) !important;
    text-shadow:none !important;
}
#bo_list .btn_b02,
#bo_gall .btn_b02,
#bo_v_top .btn_b02,
#bo_v_bot .btn_b02,
.btn_top .write_btn,
.fix_btn.write_btn,
a.write_btn,
a.btn_b02,
button.btn_b02 {
    background:linear-gradient(135deg,#fff3f8,#f1f9ff) !important;
    border-color:#f4d8e4 !important;
    color:#c9537e !important;
    -webkit-text-fill-color:#c9537e !important;
}
#bo_list .btn_bo_sch i,
#bo_gall .btn_bo_sch i,
#bo_v .btn_bo_sch i,
#bo_btn_top .btn_bo_sch i,
#bo_list .btn_bo_user .btn i,
#bo_gall .btn_bo_user .btn i,
#bo_v_top .btn_bo_user .btn i,
#bo_v_bot .btn_bo_user .btn i,
.bo_fx .btn_bo_user .btn i,
.btn_top .write_btn i,
.fix_btn.write_btn i,
a.write_btn i,
a.btn_b01 i,
a.btn_b02 i,
button.btn_b01 i,
button.btn_b02 i {
    background:transparent !important;
    color:inherit !important;
    -webkit-text-fill-color:inherit !important;
    border:0 !important;
    box-shadow:none !important;
}
