@charset "utf-8";

@font-face {
    font-family: "NotoSansKRH";
    font-style: normal;
    font-weight: 400;
    src: url("//modong.bobsida.com/font/woff/NotoSansKR-Regular-Hestia.woff") format("woff");
}

@font-face {
    font-family: "NotoSansKRH";
    font-style: normal;
    font-weight: 700;
    src: url("//modong.bobsida.com/font/woff/NotoSansKR-Bold-Hestia.woff") format("woff");
}

:root {
    --acnh-bg-sky: #edf7ef;
    --acnh-bg-mint: #dff0dc;
    --acnh-bg-cream: #fff7e8;
    --acnh-card: #fffdf8;
    --acnh-line: #dce7d5;
    --acnh-text: #374735;
    --acnh-muted: #687763;
    --acnh-accent: #6da95f;
    --acnh-accent-strong: #4f8e46;
    --acnh-accent-soft: #eff8e9;
    --acnh-sand: #f0dca9;
    --acnh-warning: #f9efe0;
    --acnh-shadow: 0 10px 24px rgba(70, 96, 69, 0.12);
}

html,
body {
    background: radial-gradient(circle at 20% 0%, #f6fff1 0%, var(--acnh-bg-sky) 46%, #e7f3ea 100%) !important;
}

body,
input,
button,
select,
textarea,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "NotoSansKRH", "NanumBarunGothic", sans-serif !important;
    color: var(--acnh-text);
}

a {
    color: #355f3a;
}

a:hover,
a:focus {
    color: #2c7333;
}

#all_wrap {
    border: 1px solid #d6e6cd;
    border-radius: 30px;
    box-shadow: 0 24px 44px rgba(67, 98, 66, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 254, 244, 0.96));
    max-height: none !important;
    overflow: hidden;
}

#all_wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: 0.45;
    background-image: radial-gradient(rgba(103, 155, 96, 0.11) 1px, transparent 1px);
    background-size: 12px 12px;
}

#wrapper,
#container,
#hd,
#ft {
    position: relative;
    z-index: 1;
}

#hd {
    background: linear-gradient(180deg, #f4fce8 0%, #edf8e8 100%) !important;
    border-bottom: 1px solid #dce8d0;
}

#logo {
    position: relative;
    border-bottom: 1px solid #dbe9d2 !important;
    background:
        radial-gradient(circle at 12% 20%, rgba(255, 255, 255, 0.45), transparent 50%),
        radial-gradient(circle at 88% 80%, rgba(162, 207, 125, 0.22), transparent 45%),
        linear-gradient(180deg, #f8ffef, #edf8e8);
}

#menu {
    border-bottom: 1px solid #dde7d5 !important;
    background: linear-gradient(180deg, #fffdf8 0%, #f7f2e6 100%);
}

#container_title {
    color: #466640 !important;
    border-bottom: 1px solid #d9e6d3 !important;
    background:
        radial-gradient(circle at top right, rgba(126, 170, 108, 0.16), transparent 40%),
        linear-gradient(180deg, #fffaf0, #f4f9eb) !important;
    letter-spacing: -0.02em;
}

#container_title a {
    color: #4a6f45;
}

#gnb {
    border: 1px solid #d8e4cf;
    background: linear-gradient(180deg, #f6fcec 0%, #f2f8e7 100%) !important;
    border-radius: 14px;
    margin-top: 6px;
    overflow: visible;
}

/* Layer menu: prevent clipping and allow full scroll on long menu lists */
#all_wrap {
    overflow: visible !important;
}

#gnb {
    position: fixed !important;
    left: 50%;
    top: 70px;
    transform: translateX(-50%);
    width: min(500px, calc(100vw - 16px));
    max-width: calc(100vw - 16px);
    max-height: calc(100dvh - 84px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    z-index: 2147483000;
}

#gnb_1dul {
    background: #fff !important;
}

.gnb_2dul,
.gnb_1dli button,
#gnb_close {
    background: transparent !important;
}

.gnb_1da {
    color: #3c5c3a !important;
    border-bottom: 1px solid #deead7 !important;
}

.gnb_2da {
    color: #577458 !important;
}

#gnb_open,
#dubo_btn,
.more_btn,
#user_menu2 [role="tab2"] {
    border-radius: 999px !important;
    font-weight: 700;
}

#gnb_open {
    background: linear-gradient(180deg, #86bf73 0%, #6da95f 100%) !important;
    border: 1px solid #54894e !important;
    color: #fff !important;
    box-shadow: 0 8px 14px rgba(90, 141, 78, 0.28);
}

#gnb_open:hover,
#gnb_open:focus {
    background: linear-gradient(180deg, #79b66b 0%, #5f9f58 100%) !important;
}

#dubo_btn,
.more_btn {
    background: #fff6df !important;
    border: 1px solid #e7cf96 !important;
    color: #7e5b2c !important;
}

#dubo_btn:hover,
#dubo_btn:focus,
.more_btn:hover,
.more_btn:focus {
    background: #ffefc8 !important;
}

.pic_tab_heading,
#tab_top {
    border-bottom: 1px solid #dce8d3 !important;
    background: linear-gradient(180deg, #fffdf6, #f5f9ed) !important;
}

[role="tab"],
[role="tab2"],
[role="tab3"],
.myd_sort_btn {
    border-radius: 999px !important;
    margin: 8px 6px 8px 0 !important;
    border: 1px solid #d7e6ce !important;
    background: #ffffff !important;
    color: #486548 !important;
    font-weight: 700 !important;
    line-height: 1.15;
    transition: transform 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

[role="tab"]:hover,
[role="tab2"]:hover,
[role="tab3"]:hover,
.myd_sort_btn:hover,
[role="tab"]:focus,
[role="tab2"]:focus,
[role="tab3"]:focus,
.myd_sort_btn:focus {
    color: #2f6e3d !important;
    background: #f2f9ed !important;
    box-shadow: 0 4px 10px rgba(112, 163, 98, 0.2);
    transform: translateY(-1px);
}

[role="tab"][aria-selected="true"],
[role="tab2"][aria-selected="true"],
[role="tab3"][aria-selected="true"],
.myd_sort_btn.is_on {
    border-color: #b9d9ad !important;
    background: linear-gradient(180deg, #edf8e8, #ddf0d5) !important;
    color: #2f6c37 !important;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
}

[role="tab"][aria-selected="true"]:not(:focus):not(:hover)::before,
[role="tab2"][aria-selected="true"]:not(:focus):not(:hover)::before,
[role="tab3"][aria-selected="true"]:not(:focus):not(:hover)::before {
    border-left: 0 !important;
}

/* 메인 상단 4버튼(꿈번지/MY디자인/인기주민/커뮤니티) 줄바꿈 방지 */
.pic_tab_heading[role="tablist"] {
    display: flex !important;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 6px;
    padding: 8px 8px 10px !important;
}

.pic_tab_heading[role="tablist"] > [role="tab"] {
    float: none !important;
    width: calc((100% - 18px) / 4) !important;
    margin: 0 !important;
    padding: 10px 4px !important;
    font-size: 0.92em !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#user_menu,
#user_menu2 {
    background: linear-gradient(180deg, #f2f8eb 0%, #ecf5e4 100%) !important;
    border-top: 1px solid #d4e3cd !important;
}

#ft_sch {
    background: transparent !important;
}

#ft_sch #sch_stx,
#bo_sch,
#bo_sch .sch_input,
#bo_sch select,
.form_01 textarea,
.form_01 .frm_input,
#bo_w .tbl_frm01 textarea,
#bo_w .tbl_frm01 .frm_input,
#wr_subject,
#wr_name,
#wr_password,
#wr_8,
#wr_9 {
    border-color: #d4e2cc !important;
    border-radius: 12px !important;
    background: #fffef9 !important;
    color: #365136 !important;
}

#bo_sch {
    background: #fffef9 !important;
    box-shadow: 0 6px 14px rgba(86, 120, 81, 0.08);
}

#ft_sch #sch_submit,
#bo_sch .sch_btn {
    border-radius: 10px !important;
    background: linear-gradient(180deg, #79b26c, #5f9d56) !important;
    color: #fff !important;
}

.btn_submit,
#bo_w .btn_submit,
.bo_vc_w .btn_submit,
#contact_from .btn_submit,
a.btn_b01,
.btn_b01,
a.btn_b02,
.btn_b02,
.btn_bo_adm button,
.fix_btn,
#bo_v_act .bo_v_good,
#bo_v_act .bo_v_nogood {
    border-color: #528b4c !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, #7fba70 0%, #5f9f58 100%) !important;
    color: #fff !important;
    box-shadow: 0 6px 14px rgba(89, 135, 80, 0.25);
}

.btn_submit:hover,
#bo_w .btn_submit:hover,
.bo_vc_w .btn_submit:hover,
a.btn_b01:hover,
.btn_b01:hover,
a.btn_b02:hover,
.btn_b02:hover,
.btn_bo_adm button:hover,
.fix_btn:hover,
#bo_v_act .bo_v_good:hover,
#bo_v_act .bo_v_nogood:hover {
    background: linear-gradient(180deg, #70b067 0%, #508f4b 100%) !important;
}

#bo_w .btn_cancel,
.btn_close,
a.btn_close,
a.btn_cancel,
button.btn_cancel {
    border-radius: 12px !important;
    border: 1px solid #d5e3cf !important;
    background: #ffffff !important;
    color: #4e674a !important;
}

#bo_v,
#bo_list li,
#bo_gall .gall_li_wr,
.lt,
#bo_v_file li,
#bo_v_link li,
#bo_vc article .comment_inner,
#bo_vc .empty_list,
#bo_list_total,
#bo_list_ft,
.view_is_list,
#bo_w,
#bo_v_atc,
.bo_v_nb,
.more_opt,
.bo_vc_act {
    border: 1px solid #dce8d5 !important;
    border-radius: 16px !important;
    background: var(--acnh-card) !important;
    box-shadow: 0 8px 20px rgba(86, 115, 84, 0.08);
}

#bo_v,
#bo_w,
#bo_list,
#bo_gall,
.lt,
.list_01,
.tbl_wrap {
    background: transparent !important;
}

#bo_list li,
#bo_gall .gall_li_wr,
.pic_main_onecol .pic_ul li,
.pic_ul li {
    overflow: hidden;
}

#bo_list li.bo_notice,
#bo_gall .gall_notice,
.notice_icon {
    background: #fff7e5 !important;
    color: #876528 !important;
}

#bo_v > header,
#bo_cate ul,
#bo_cate,
#bo_gall #bo_cate_ul,
#bo_list .all_chk,
#gall_allchk {
    background: #fbfff6 !important;
    border-color: #dce8d5 !important;
}

#bo_cate a,
#bo_cate #bo_cate_on,
#bo_cate #bo_cate_on:after,
#bo_cate .cate_on,
#bo_cate .cate_on:after {
    color: #39713d !important;
}

#bo_cate #bo_cate_on:after,
#bo_cate .cate_on:after {
    background: #72b464 !important;
    height: 3px !important;
}

.bo_cate_link,
#bo_gall .bo_cate_link,
.bo_v_cate,
.bo_v_cate2,
.bo_v_cate3,
.bo_cate_ico a {
    border-radius: 999px !important;
    border: 1px solid #d2e5c9 !important;
    background: #eff8e9 !important;
    color: #3b6f38 !important;
    padding: 1px 9px !important;
}

#bo_gall .bo_cate_link2 {
    background: #f9f2dd !important;
    border-color: #ead9ae !important;
    color: #805f2d !important;
}

#bo_gall .bo_cate_link3 {
    background: #fceee0 !important;
    border-color: #efd2b3 !important;
    color: #905f2e !important;
}

#bo_v_title,
.bo_v_tit,
#bo_gall .gall_li_tit,
.bo_subject,
.bo_cnt,
.lt .lt_tit,
.pic_cnt {
    color: #2f4f32 !important;
}

#bo_v_info,
.bo_info,
#bo_gall .gall_info,
#bo_v_file .bo_v_file_cnt,
#bo_v_link .bo_v_link_cnt,
.lt .lt_info,
.lt .lt_date,
.ticker_lat .lt_date,
.ftext {
    color: #677665 !important;
}

#bo_v_file a:focus,
#bo_v_file li:hover a,
#bo_v_file a:active,
#bo_v_link a:focus,
#bo_v_link li:hover a,
#bo_v_link a:active,
#bo_vc_act li a:hover,
#bo_list li:hover .bo_subject,
#bo_gall .gall_text_href:hover .gall_li_tit,
.lt ul li:hover a.lt_tit {
    color: #2f6d39 !important;
}

#bo_v_file li:hover,
#bo_v_link li:hover {
    border-color: #bfdab2 !important;
    background: #f7ffef !important;
}

#bo_v_file li:hover i,
#bo_v_link li:hover i {
    color: #639f58 !important;
}

#bo_v_act a {
    color: #3a7540 !important;
    border-color: #8fbe86 !important;
}

#bo_v_act a:hover {
    color: #2c6a35 !important;
    border-color: #6da95f !important;
    background: #f0f9eb !important;
}

#bo_v_act_good,
#bo_v_act_nogood {
    background: linear-gradient(180deg, #71ad65, #5c9752) !important;
    color: #fff !important;
}

.chk_box input[type="checkbox"]:checked + label span,
.chk_box input[type="radio"]:checked + label span:before {
    background-color: #6dad60 !important;
    border-color: #5a984f !important;
}

.chk_box input[type="radio"]:checked + label {
    color: #3f6f40 !important;
}

.filebox .btn_file {
    border-color: #6cab60 !important;
    color: #41763d !important;
    background: #f2f9ec !important;
    border-radius: 10px !important;
}

.filebox .fileName {
    color: #4f664f !important;
}

#bo_gall .gall_li .gall_img .no_img,
#bo_gall .gall_li .gall_notice {
    background: linear-gradient(180deg, #f3fbef, #e6f3df) !important;
    color: #89a68a !important;
}

#bo_gall .gall_li .gall_img img,
.pic_ul li .lt_img img,
.pic_main_onecol .pic_ul li .lt_img img {
    border-bottom: 1px solid #e0ebd9;
}

#bo_gall .gall_li .gall_img,
.pic_ul li .lt_img,
.pic_main_onecol .pic_ul li .lt_img {
    display: block;
    height: auto !important;
    max-height: none !important;
}

#bo_gall .gall_li .gall_img img,
.pic_ul li .lt_img img,
.pic_main_onecol .pic_ul li .lt_img img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: unset !important;
}

.pic_ul li .pic_cnt,
.pic_main_onecol .pic_ul li .pic_cnt,
.pic_main_onecol .pic_ul li:hover .pic_cnt {
    background: linear-gradient(180deg, #fffcf4, #f6f7ec) !important;
    color: #41583f !important;
}

.pic_ul li .fa-lock,
#bo_list .bo_subject .fa-lock,
.lt li .fa-lock,
.ticker_lat li .fa-lock,
.notice li .lock_icon {
    background: #edf7e7 !important;
    border-color: #b8d4b0 !important;
    color: #4f7d50 !important;
}

#bo_list .bo_subject .new_icon,
.lt li .new_icon,
.notice li .new_icon,
.ticker_lat li .new_icon {
    background: #ddf4d2 !important;
    color: #3b6c39 !important;
}

.pg_page,
.pg_current,
.pg_start,
.pg_prev,
.pg_next,
.pg_end {
    border-radius: 10px !important;
}

.pg_page,
.pg_start,
.pg_prev,
.pg_next,
.pg_end {
    border-color: #d5e3cf !important;
    background: #ffffff !important;
    color: #5d725a !important;
}

.pg_current {
    border-color: #77b869 !important;
    background: linear-gradient(180deg, #7cbf6e 0%, #629f59 100%) !important;
    color: #fff !important;
}

.pg_start,
.pg_prev,
.pg_next,
.pg_end {
    text-indent: 0 !important;
    overflow: visible !important;
    background-image: none !important;
    min-width: 52px !important;
    width: auto !important;
    padding: 0 10px !important;
    line-height: 30px !important;
    text-align: center !important;
}

#ft {
    border-top: 1px solid #d9e5d2;
    background: linear-gradient(180deg, #fdfdf6 0%, #f1f7e8 100%);
}

#ft:before {
    background: linear-gradient(90deg, rgba(131, 176, 108, 0.45), rgba(255, 244, 215, 0.65), rgba(131, 176, 108, 0.45)) !important;
    height: 8px !important;
}

.gram_fix_btn .gf_btn {
    border-right: 1px solid #e3eddb;
    background-color: rgba(255, 255, 255, 0.88) !important;
}

.gram_fix_btn li:last-child .gf_btn {
    border-right: 0;
}

.fixed2 {
    background: rgba(239, 247, 234, 0.98) !important;
    border-top: 1px solid #d6e4ce !important;
}

#hd_login_msg {
    display: none !important;
}

@keyframes acnh-rise {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#bo_list li,
#bo_gall .gall_li,
.pic_ul li,
.lt ul li,
#bo_vc article,
#bo_v_file li,
#bo_v_link li {
    animation: acnh-rise 0.42s ease both;
}

#bo_list li:nth-child(2),
#bo_gall .gall_li:nth-child(2),
.pic_ul li:nth-child(2),
.lt ul li:nth-child(2) { animation-delay: 0.03s; }
#bo_list li:nth-child(3),
#bo_gall .gall_li:nth-child(3),
.pic_ul li:nth-child(3),
.lt ul li:nth-child(3) { animation-delay: 0.06s; }
#bo_list li:nth-child(4),
#bo_gall .gall_li:nth-child(4),
.pic_ul li:nth-child(4),
.lt ul li:nth-child(4) { animation-delay: 0.09s; }

@media (max-width: 500px) {
    #all_wrap {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
    }

    [role="tab"],
    [role="tab2"],
    [role="tab3"],
    .myd_sort_btn {
        margin: 6px 4px 6px 0 !important;
        padding: 10px 11px !important;
        font-size: 0.95em !important;
    }

    .pic_tab_heading[role="tablist"] {
        gap: 4px;
        padding: 7px 7px 9px !important;
    }

    .pic_tab_heading[role="tablist"] > [role="tab"] {
        width: calc((100% - 12px) / 4) !important;
        margin: 0 !important;
        padding: 9px 2px !important;
        font-size: 0.86em !important;
    }

    #bo_gall .gall_li {
        padding: 4px;
    }
}
