/* 레이아웃 CSS */
.rows_gnb_wrap {border-top:1px solid rgba(255,255,255,0.2); padding-top: 10px; margin-top: 20px;}
.row_gnbs {position: relative;}
.row_gnbs .cbp-hrmenu > ul, .cbp-hrmenu .cbp-hrsub-inner {padding-left: 0px; padding-right: 0px;}
.row_gnbs .cbp-hrmenu > ul > li {padding-left: 0px; padding-right: 30px;}
.row_gnbs .cbp-hrmenu > ul {float:none !important; line-height: 100%;}
.gnb_wrap .row_gnbs nav {float:none;}
.row_gnbs .cbp-hrmenu .cbp-hrsub {top:40px;}

.search_top_wrap {float:left; position: relative; width: 200px;}
.search_top_wrap input {border:0px;border-radius: 40px; height:40px; width: 100%; color:#000;}
.search_top_wrap input::placeholder{font-family:'font-R',sans-serif; color:#999;}
.search_top_wrap button {position: absolute; top:10px; right:15px;}
.search_top_wrap input:focus {border:1px solid #ddd;}
.search_top_wrap_inner {position: relative;}

/* 게시판 fixed 버튼 위치조정 */
.rb_bbs_wrap .btns_gr_wrap {top:185px !important;}

.co_header0 .rows_gnb_wrap {border-top:1px solid rgba(0,0,0,0.05);}
.co_header0 .search_top_wrap input {background-color: rgba(0,0,0,0.05);}
.ser_display_none .search_top_wrap_inner {display: none;}

.cbp-hrmenu .cbp-hrsub-inner > div {min-width: 140px;}
.cbp-hrmenu .cbp-hrsub {margin-left: -30px;}
#cbp-hrmenu .cbp-hrsub .cbp-hrsub-inner > div > ul > li{position: relative; min-height:32.2px;}
#cbp-hrmenu .cbp-hropen .cbp-hrsub {padding-left: 30px; padding-right: 30px; padding-top: 20px; padding-bottom: 20px;}
.cbp-hrmenu .cbp-hrsub-inner > div i {position: absolute; top:7px; right:-5px; opacity: 0.5; transition: transform 220ms ease, opacity 220ms ease;}
#cbp-hrmenu .cbp-hrsub .cbp-hrsub-inner > div > ul > li:hover i {opacity: 0;}
.cbp-hrmenu .cbp-hrsub-inner > div a {padding-right: 20px;}

.gnb_all_menu .cbp-hrsub .cbp-hrsub-inner > div > ul > li{position: relative; min-height:auto !important}

#cbp-hrmenu .cbp-hrsub-3{
    display: block;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    position: absolute;
    left: 100%;
    top: -10px;

    background-color: #fff;
    min-width: 120px;
    padding: 15px 20px;
    border-radius: 10px;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.05);

    transform: translate3d(0, 6px, 0);
    transition: transform 220ms ease, opacity 220ms ease;
    z-index: 9
}

#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover > .cbp-hrsub-3{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate3d(0, 0, 0);
}

#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover > .cbp-hrsub-3 a {padding-top: 4px; padding-bottom: 4px; font-family: 'font-R'; font-size: 13px; padding-right: 0px;}
#cbp-hrmenu .cbp-hrsub > .cbp-hrsub-inner ul > li:hover {position: relative;}

#header {box-shadow: none; border-bottom: 1px solid #eee !important; padding-bottom: 0px;}
#header.gnb_up {top:-96px !important;}
.gnb_wrap .inner {display: flex; align-items: center; gap:30px}
.gnb_wrap .snb_wrap {float:none; margin-left: auto; display: flex; align-items: center; gap:30px;}
.gnb_wrap .logo_wrap {margin-right: 0px;}
.gnb_wrap ul {line-height: 100%;}
.gnb_wrap .snb_wrap .qm_wrap a {padding-left: 0px; padding-right: 0px; line-height: 100%; margin: 0px; float:none; width: auto;}
.gnb_wrap #ol_after_scrap {margin-top: 0px;}
.gnb_wrap .snb_wrap .qm_wrap {display: flex; align-items: center;  gap:20px;}
.gnb_wrap .snb_wrap .member_info_wrap {margin-left: 0px;}
.gnb_wrap .snb_wrap .my_btn_wrap {float:none; margin-left: 0px;}
.gnb_wrap .snb_wrap .my_btn_wrap button {background-color: #fff; border:1px solid #ddd; height:35px; color:#000;}
.gnb_wrap .snb_wrap .qm_wrap a span {left: 10px; border-radius: 20px; min-width: 18px; text-align: center; top:-4px}
.gnb_wrap .rows_gnb_wrap {margin-top: 0px; border-top:0px; padding-bottom: 10px;}
.gnb_wrap .rows_gnb_wrap .cbp-hrmenu > ul > li {padding-right: 0px;}
.gnb_wrap .rows_gnb_wrap nav {width: 100%;}
.gnb_wrap .rows_gnb_wrap nav .swiper-slide-gnb {width: auto !important;}
.swiper-container-gnb {overflow: inherit !important;}
.gnb_wrap .snb_q_wrap {display: flex; align-items: center; gap:25px; flex: 0 0 auto;}
.gnb_wrap .snb_q_wrap a {opacity: 0.6}
.gnb_wrap .rows_gnb_wrap {display: flex; align-items: center; margin: 0 auto;}
.gnb_wrap .rows_gnb_wrap .row_gnbs {width: 100%; margin:inherit; display: block; align-items: center; gap: 0px;}
.gnb_wrap nav {background-color: transparent;}
.gnb_wrap .snb_wrap .member_info_wrap a .notranslate font {opacity: 0.6;}
.gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg {background-image: url(../../../rb.img/icon/arr_down.svg);}
.gnb_wrap .snb_wrap .qm_wrap a svg {opacity: .3; margin-top: 3px;}
.gnb_wrap .snb_wrap .qm_wrap a:hover svg {opacity: 1;}

#rb_my_ovray.arr_bg.is_open{background-image: url(../../../rb.img/icon/arr_up.svg);}
.rb_my_panel{
    display: none;
    position: absolute;
    min-height: 200px;
    z-index: 999;
    min-width: 220px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.05);
    padding: 20px;
}

#rb_my_panel{position:fixed;}
#rb_my_panel[aria-hidden="true"]{display:none;}
#rb_my_panel.is_open{display:block;}

.rb_my_panel_row {display: flex; align-items: center; gap:15px;}
.rb_my_panel_row .rb_my_p_ul1 {}
.rb_my_panel_row .rb_my_p_ul1 img {height:40px; border-radius: 10px;}
.rb_my_panel_row .rb_my_p_ul2 {}
.rb_my_panel_row .rb_my_p_ul2 li {float:none;}
.my_p_flex {display: flex; align-items: center; gap:5px;}
.rb_my_p_btn {flex: 1 1 0; min-width: 0; background-color: #f0f5f9 !important; border:0px !important; border-radius: 6px; text-align: center; color:#000;}
.rb_my_p_btn_w {background-color: #fff !important; border:1px solid #ddd !important;}
.rb_my_p_ul2.flex_r {margin-left: auto;}
.rb_my_panel_line {border-top:1px solid #eee; margin-top: 10px;}
.gnb_all_menu {margin-left: auto; padding-right: 20px !important;}

.shop_type_list {background-color: #f0f5f9; margin-bottom: 20px;}
.shop_type_list a {border-right: 1px solid #ddd; padding-right: 10px; margin-right: 10px;}
.shop_type_list a:last-child {padding-right: 0px; margin-right: 0px; border-right: 0px;}
.shop_type_list .inner {text-align: right; display: block; padding-bottom: 10px; padding-top: 10px;}
#header {padding-top: 0px;}

#google_notranslate_top {margin-left: 0px !important; position: relative;}
.translation-links {top:25px !important; right:-17px !important; box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.05) !important;}
.translation-links a {margin-top: 2px; margin-bottom: 2px; display: block}

.translation-links::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #fff;

}

@media all and (max-width:1024px) {

    .search_top_wrap {display: none !important;}
    .gnb_wrap .snb_wrap .qm_wrap a {width: auto; padding-left: 0px;}

    /* 1.0.1 { */
    .mobile_cb {clear: both;}
    .search_top_wrap {display: block; float:none !important; width: 100%; margin-top: 10px;}
    .gnb_wrap .snb_wrap .my_btn_wrap {display: block;}
    .gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg {padding-left: 15px; padding-right: 35px; min-width: 92px; flex-shrink: 0;}
    .gnb_wrap .snb_wrap .qm_wrap a span {right: 10px; left: auto;}
    /* } */

    /* 1.1.1 { */
    .gnb_wrap .inner {gap:10px;}
    /* } */

    .gnb_wrap .tog_wrap {margin-right: 0px;}
    .gnb_wrap .snb_wrap {gap:10px;}
    .rows_gnb_wrap .cbp-hrmenu {position:relative; width: 100%; height: auto;}
    .gnb_wrap .rows_gnb_wrap {width: 100% !important; padding-top: 0px; display: none;}
    .rows_gnb_wrap .cbp-hrmenu .cbp-hrsub {display: none !important;}
    .gnb_wrap .snb_q_wrap {display: none;}
    .gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg {background-position: center right 15px;}
    .gnb_all_menu {display: none !important;}
    .shop_type_list {background-color: #fff; margin-bottom: 5px;}
    .shop_type_list .inner {display: flex; align-items: center; gap:15px; padding-top: 15px;}
    .shop_type_list .inner a {padding-right:0px; border:0px; margin-right: 0px;}
    .shop_type_list .inner a.rb_cp_gap {margin-left: auto;}
    #header {padding-bottom: 10px;}
    #header.gnb_up {top:-35px !important;}
    #header.gnb_up .gnb_wrap .rows_gnb_wrap {padding-top: 10px; transition: all 600ms cubic-bezier(0.86, 0, 0.07, 1);}
    .gnb_wrap .snb_wrap .qm_wrap {gap:10px}
    .gnb_wrap .snb_wrap {gap:10px;}
    .gnb_wrap .snb_wrap .my_btn_wrap {display: block !important;}

}

/* 헤더 알림 */
.gnb_wrap .snb_wrap .qm_wrap {
    display:flex;
    align-items:center;
    height:40px;
}
.gnb_wrap .snb_wrap .qm_wrap > a,
.gnb_wrap .snb_wrap .qm_wrap > button {
    display:flex;
    float:none;
    align-items:center;
    justify-content:center;
    height:40px;
    margin-top:0;
}
.gnb_wrap .snb_wrap .qm_wrap > a > svg,
.gnb_wrap .snb_wrap .qm_wrap > button > svg {flex:none;}
.gnb_wrap #ol_after_scrap {margin-top:0;}
#rb_memo_top_btn svg path:first-child,
#notification_top_btn svg path:first-child {fill:none;}
#rb_memo_top_btn svg path:last-child,
#notification_top_btn svg path:last-child {fill:#09244B;}
#rb_memo_top_btn > span,
#notification_top_btn > span {top:0;}

#notification_box_wrap {
    display:none;
    position:absolute;
    top:55px;
    right:0;
    left:auto;
    z-index:10;
    width:355px;
    height:470px;
    box-sizing:border-box;
    overflow:hidden;
    border-radius:10px;
    background-color:#fff;
    box-shadow:10px 10px 20px rgba(0, 0, 0, 0.05);
    color:#25282B;
    text-align:left;
}

#notification_box_wrap button,
#notification_box_wrap a {
    float:none;
    position:relative;
    width:auto;
    margin:0;
    padding:0;
    box-sizing:border-box;
    line-height:normal;
    color:#25282B;
}
#notification_box_wrap button span,
#notification_box_wrap a span {
    position:static;
    min-width:0;
    margin:0;
    padding:0;
    border-radius:0;
    background:none;
    color:inherit;
    font-size:inherit;
    line-height:inherit;
}

#notification_box_wrap .rb_notification_tabs {
    display:flex;
    padding:0;
    border-bottom:1px solid #eee;
    background-color:#f9f9f9;
    white-space:nowrap;
}
#notification_box_wrap .rb_notification_tabs button {
    flex:1 1 0;
    height:60px;
    padding:0;
    border-bottom:2px solid transparent;
    font-size:13px;
    text-align:center;
}
#notification_box_wrap .rb_notification_tabs button.active {
    border-bottom-color:#25282B;
    font-family:'font-B';
}

#notification_box_wrap .rb_notification_body {
    position:relative;
    height:369px;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:#d8dde3 transparent;
}
#notification_box_wrap .rb_notification_body::-webkit-scrollbar {width:4px;}
#notification_box_wrap .rb_notification_body::-webkit-scrollbar-track {background:transparent;}
#notification_box_wrap .rb_notification_body::-webkit-scrollbar-thumb {border-radius:4px; background:#d8dde3;}
#notification_box_wrap .rb_notification_footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    height:40px;
    padding:0 20px;
    border-top:1px solid #eee;
    color:#999;
    font-size:11px;
    text-align:left;
}
#notification_box_wrap .rb_notification_delete_all {
    flex:0 0 auto;
    height:26px;
    padding:0 9px;
    border:1px solid #e5e5e5;
    border-radius:4px;
    background:#fff;
    color:#777;
    font-size:12px;
    line-height:24px;
}
#notification_box_wrap .rb_notification_loading {
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    display:flex;
    align-items:center;
    justify-content:center;
}
#notification_box_wrap .rb_notification_loading span {
    display:block;
    width:24px;
    height:24px;
    border:2px solid #e5e5e5;
    border-top-color:#aaa;
    border-radius:50%;
    animation:rb_notification_spin .7s linear infinite;
}
@keyframes rb_notification_spin {
    to {transform:rotate(360deg);}
}
#notification_box_wrap .rb_notification_empty {
    padding:60px 20px;
    color:#999;
    text-align:center;
}
#notification_box_wrap .rb_notification_item {
    position:relative;
    border-bottom:1px solid #eee;
    background-color:#f8f9fb;
}
#notification_box_wrap .rb_notification_item.is_read {background-color:#fff;}
#notification_box_wrap .rb_notification_item_open {
    display:flex;
    align-items:center;
    gap:12px;
    width:100%;
    padding:16px 45px 16px 20px;
    text-align:left;
}
#notification_box_wrap .rb_notification_category_icon {
    display:flex;
    flex:0 0 42px;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    border:0;
    border-radius:50%;
}
#notification_box_wrap .rb_notification_category_icon svg {display:block; width:24px; height:24px;}
#notification_box_wrap .rb_notification_category_icon svg path {fill:#fff;}
#notification_box_wrap .rb_notification_category_board {background-color:#A8B8F4;}
#notification_box_wrap .rb_notification_category_shop {background-color:#F5B89A;}
#notification_box_wrap .rb_notification_category_subscribe {background-color:#9DD8BF;}
#notification_box_wrap .rb_notification_category_notice {background-color:#F2A7B8;}
#notification_box_wrap .rb_notification_category_other {background-color:#B8B5D8;}
#notification_box_wrap .rb_notification_item_text {
    display:block;
    flex:1 1 auto;
    min-width:0;
}
#notification_box_wrap .rb_notification_item_meta {
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:7px;
    color:#999;
    font-size:11px;
}
#notification_box_wrap .rb_notification_item_meta b {color:#25282B;}
#notification_box_wrap .rb_notification_item_meta em {font-style:normal;}
#notification_box_wrap .rb_notification_item_content {
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
#notification_box_wrap .rb_notification_item_content {
    color:#777;
    font-size:13px;
}
#notification_box_wrap .rb_notification_delete {
    position:absolute;
    top:50%;
    right:12px;
    z-index:1;
    width:30px;
    height:30px;
    transform:translateY(-50%);
    color:#999;
    font-size:22px;
    text-align:center;
}
#notification_box_wrap .rb_notification_delete:hover {color:#000;}

#notification_box_wrap .rb_notification_view_header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    height:44px;
    padding:0 20px;
    border-bottom:1px solid #eee;
}
#notification_box_wrap .rb_notification_back {
    font-family:'font-B';
    font-size:13px;
}
#notification_box_wrap .rb_notification_view_inner {padding:20px;}
#notification_box_wrap .rb_notification_view_date {
    color:#999;
    font-size:12px;
}
#notification_box_wrap .rb_notification_view_content {
    min-height:80px;
    color:#555;
    font-size:14px;
    line-height:1.7;
    white-space:pre-wrap;
    word-break:break-word;
}
#notification_box_wrap .rb_notification_view_links {
    display:flex;
    flex-direction:column;
    gap:8px;
    margin-top:18px;
}
#notification_box_wrap .rb_notification_view_links:empty {display:none;}
#notification_box_wrap .rb_notification_view_links a {
    display:block;
    width:100%;
    padding:12px 15px;
    border:1px solid #e5e5e5;
    border-radius:10px;
    background-color:#fff;
    color:#25282B;
    font-size:14px;
    line-height:1.4;
    text-align:center;
}

@media all and (max-width:768px) {
    #notification_box_wrap {
        position:fixed;
        top:97px;
        right:auto;
        left:0;
        width:100%;
        height:calc(100vh - 97px);
        border-radius:0;
    }
    #notification_box_wrap .rb_notification_body {height:calc(100vh - 198px);}
}

/* ========================================================================== 
   SOSODODAM SHOP HEADER v8
   - Rebuilder basic_fixed 기능/마크업은 그대로 유지
   - 사용자 화면의 공휴일(D-day) 플러그인 자리와 기존 메뉴 폭을 침범하지 않음
   - 고정 height/grid로 자식 위치를 강제하지 않고, 실제 콘텐츠 높이에 맞춰 자연스럽게 확장
   ========================================================================== */

:root {
    --sdh-bg:#ffffff;
    --sdh-soft:#fff9fb;
    --sdh-line:#f0e7ea;
    --sdh-text:#443b3e;
    --sdh-muted:#81767a;
    --sdh-point:#ff7f9d;
    --sdh-point-soft:#fff1f5;
}

#header {
    background:var(--sdh-bg) !important;
    border-bottom:1px solid var(--sdh-line) !important;
    box-shadow:0 3px 14px rgba(65,48,54,.035) !important;
    transform:translate3d(0,0,0);
    transition:transform .34s cubic-bezier(.22,.61,.36,1), box-shadow .2s ease !important;
    will-change:transform;
}
#header.gnb_up {
    top:0 !important;
    transform:translate3d(0,-101%,0) !important;
}

@media all and (min-width:1025px) {
    /* 상단 상품 바로가기: 데모보다 조금 낮게, 글씨는 너무 작아지지 않게 */
    .shop_type_list {
        margin:0 !important;
        background:var(--sdh-soft) !important;
        border-bottom:1px solid #f7ecef;
    }
    .shop_type_list .inner {
        padding-top:5px !important;
        padding-bottom:5px !important;
        line-height:18px !important;
        min-height:28px;
        box-sizing:border-box;
    }
    .shop_type_list a {
        margin-right:10px !important;
        padding-right:10px !important;
        border-right-color:#eadfe3 !important;
        color:#756a6e !important;
        font-size:13px !important;
        line-height:18px !important;
    }
    .shop_type_list a:hover,
    .shop_type_list a.rb_cp_gap {color:var(--sdh-point) !important;}

    /*
     * 메인 헤더 행
     * 중요: grid/fixed-height 금지.
     * 공휴일 플러그인이 로고 주변에 추가돼도 잘리거나 다른 영역을 밀어 넣지 않도록
     * height:auto + flex 기준만 제공한다.
     */
    .gnb_wrap > .inner {
        display:flex !important;
        align-items:center !important;
        gap:28px !important;
        min-height:64px;
        height:auto !important;
        padding-top:8px;
        padding-bottom:8px;
        box-sizing:border-box;
        overflow:visible !important;
    }
    .gnb_wrap .tog_wrap.mobile {display:none !important;}

    /* 로고/플러그인 쪽은 충분한 폭을 보장하되 내부 높이를 강제로 자르지 않는다. */
    .gnb_wrap .logo_wrap {
        float:none !important;
        flex:0 0 250px;
        width:250px !important;
        min-width:250px;
        height:auto !important;
        margin:0 !important;
        overflow:visible !important;
        line-height:1 !important;
    }
    .gnb_wrap .logo_wrap > li,
    .gnb_wrap .logo_wrap > li > a,
    .gnb_wrap #logo_img {
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }
    .gnb_wrap #logo_img .responsive-image {
        display:block;
        width:auto !important;
        height:34px !important;
        max-width:132px;
        object-fit:contain;
        object-position:left center;
    }

    /* 검색은 데모보다 조금 작지만 정상 체급 유지 */
    .search_top_wrap {
        float:none !important;
        flex:0 1 290px;
        width:290px !important;
        min-width:230px;
        max-width:320px;
        margin:0 !important;
    }
    .search_top_wrap_inner {width:100%;}
    .search_top_wrap input {
        width:100% !important;
        height:40px !important;
        padding:0 44px 0 15px !important;
        border:1px solid #eee2e6 !important;
        border-radius:13px !important;
        background:#fffafb !important;
        color:var(--sdh-text) !important;
        font-family:'font-R',sans-serif !important;
        font-size:14px !important;
        line-height:38px !important;
        box-shadow:none !important;
    }
    .search_top_wrap input::placeholder {
        color:#a69ba0 !important;
        font-family:'font-R',sans-serif !important;
    }
    .search_top_wrap input:focus {
        border-color:#ffbac9 !important;
        background:#fff !important;
        outline:0;
    }
    .search_top_wrap button {
        top:10px !important;
        right:14px !important;
        width:20px;
        height:20px;
    }

    /* 회원/아이콘 영역: 줄이지 말고 원래 읽히는 크기 유지 */
    .gnb_wrap .snb_wrap {
        float:none !important;
        flex:1 1 auto;
        min-width:0;
        margin-left:auto !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end;
        gap:18px !important;
        white-space:nowrap;
    }
    .gnb_wrap .snb_wrap .member_info_wrap,
    .gnb_wrap .snb_wrap .member_info_wrap a {
        margin-left:0 !important;
        color:var(--sdh-muted) !important;
        font-size:14px !important;
        line-height:40px !important;
    }
    .gnb_wrap .snb_wrap .member_info_wrap .font-H {color:var(--sdh-point) !important;}

    .gnb_wrap .snb_wrap .qm_wrap {
        display:flex !important;
        align-items:center !important;
        gap:12px !important;
        height:40px !important;
    }
    .gnb_wrap .snb_wrap .qm_wrap > a,
    .gnb_wrap .snb_wrap .qm_wrap > button {
        float:none !important;
        display:flex !important;
        align-items:center;
        justify-content:center;
        width:34px !important;
        height:40px !important;
        margin:0 !important;
        padding:0 !important;
        border-radius:10px;
        transition:background-color .16s ease, transform .16s ease;
    }
    .gnb_wrap .snb_wrap .qm_wrap > a:hover,
    .gnb_wrap .snb_wrap .qm_wrap > button:hover {
        background:var(--sdh-point-soft);
        transform:translateY(-1px);
    }
    .gnb_wrap .snb_wrap .qm_wrap svg {
        width:24px !important;
        height:24px !important;
        margin-top:0 !important;
        opacity:.68 !important;
    }
    .gnb_wrap .snb_wrap .qm_wrap a:hover svg,
    .gnb_wrap .snb_wrap .qm_wrap button:hover svg {opacity:.95 !important;}

    .gnb_wrap .snb_wrap .my_btn_wrap {margin-left:0 !important;}
    .gnb_wrap .snb_wrap .my_btn_wrap button,
    .gnb_wrap .snb_wrap .my_btn_wrap .btn_round {
        min-width:78px;
        height:36px !important;
        padding:0 15px !important;
        border:1px solid #eee2e6 !important;
        border-radius:12px !important;
        background:#fff !important;
        color:var(--sdh-text) !important;
        font-family:'font-B',sans-serif !important;
        font-size:13px !important;
        line-height:34px !important;
    }

    /* 하단 메뉴: 기존 메뉴/플러그인 출력이 늘어나면 height:auto로 수용 */
    .gnb_wrap .rows_gnb_wrap {
        margin-top:0 !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        min-height:42px;
        height:auto !important;
        border-top:1px solid #f6edef !important;
        display:flex !important;
        align-items:center !important;
        overflow:visible !important;
    }
    .gnb_wrap .rows_gnb_wrap .row_gnbs,
    .gnb_wrap .rows_gnb_wrap nav,
    .rows_gnb_wrap .cbp-hrmenu > ul {
        min-height:42px;
        height:auto !important;
    }
    .rows_gnb_wrap .cbp-hrmenu > ul {
        display:flex;
        align-items:center;
    }
    .gnb_wrap .rows_gnb_wrap .cbp-hrmenu > ul > li,
    .row_gnbs .cbp-hrmenu > ul > li {
        padding-right:27px !important;
    }
    .gnb_wrap nav,
    .gnb_wrap nav a {line-height:42px !important;}
    .gnb_wrap nav a {
        color:var(--sdh-text) !important;
        font-size:14px !important;
        letter-spacing:-.1px;
    }
    .gnb_wrap nav a.font-B {font-family:'font-B',sans-serif !important;}
    .gnb_wrap nav a:hover,
    .gnb_wrap nav .dp2_active,
    .gnb_wrap nav .dp3_active {color:var(--sdh-point) !important;}
    .row_gnbs .cbp-hrmenu .cbp-hrsub {top:42px !important;}
    .gnb_all_menu {
        margin-left:auto !important;
        padding-right:0 !important;
    }
    .gnb_all_menu > a {
        color:#6f6568 !important;
    }

    /* 드롭다운/알림은 헤더와 겹치지 않게 기존 z-index 체계를 유지 */
    .rb_my_panel,
    #notification_box_wrap,
    .cbp-hrmenu .cbp-hrsub-3 {
        border:1px solid #f0e5e9;
        box-shadow:0 14px 34px rgba(74,61,64,.10) !important;
    }
    #notification_box_wrap {top:48px !important;}
}

/* 중간 폭에서는 기능을 삭제하지 않고 공간만 줄인다. */
@media all and (min-width:1025px) and (max-width:1320px) {
    .gnb_wrap > .inner {gap:18px !important;}
    .gnb_wrap .logo_wrap {
        flex-basis:220px;
        width:220px !important;
        min-width:220px;
    }
    .search_top_wrap {
        flex-basis:240px;
        width:240px !important;
        min-width:200px;
    }
    .gnb_wrap .snb_wrap {gap:11px !important;}
    .gnb_wrap .snb_wrap .qm_wrap {gap:7px !important;}
    .gnb_wrap .snb_wrap .member_info_wrap,
    .gnb_wrap .snb_wrap .member_info_wrap a {font-size:13px !important;}
    .gnb_wrap .rows_gnb_wrap .cbp-hrmenu > ul > li,
    .row_gnbs .cbp-hrmenu > ul > li {padding-right:21px !important;}
}

@media (prefers-reduced-motion:reduce) {
    #header {transition:none !important;}
}

/* =========================================================
   SOSODODAM SHOP HEADER v9 - desktop layout correction
   로고/플러그인, 검색, 회원영역을 서로 독립된 3개 영역으로 배치
   ========================================================= */
@media all and (min-width:1025px) {
    /* 메인 행은 좌/중앙/우 영역의 기준점만 제공 */
    .gnb_wrap > .inner {
        position:relative !important;
        display:flex !important;
        align-items:center !important;
        gap:0 !important;
        min-height:78px;
        overflow:visible !important;
    }

    /* 왼쪽: 로고 + 외부 플러그인 영역. 검색과 폭을 공유하지 않는다. */
    .gnb_wrap .logo_wrap {
        flex:0 0 260px !important;
        width:260px !important;
        min-width:260px !important;
        margin:0 !important;
        z-index:2;
    }

    /* 중앙: 검색을 문서 흐름에서 분리해 헤더 정중앙에 독립 배치 */
    .gnb_wrap .search_top_wrap {
        position:absolute !important;
        float:none !important;
        left:50% !important;
        top:50% !important;
        transform:translate(-50%, -50%) !important;
        width:400px !important;
        min-width:400px !important;
        max-width:400px !important;
        margin:0 !important;
        z-index:3;
    }
    .gnb_wrap .search_top_wrap input {
        height:42px !important;
        padding-left:17px !important;
        padding-right:48px !important;
        border-radius:14px !important;
        font-size:14px !important;
    }
    .gnb_wrap .search_top_wrap button {
        top:11px !important;
        right:15px !important;
    }

    /* 오른쪽: 회원/아이콘은 오른쪽 끝에 독립 */
    .gnb_wrap .snb_wrap {
        flex:0 0 auto !important;
        width:auto !important;
        max-width:410px;
        margin-left:auto !important;
        padding-left:0 !important;
        z-index:4;
    }
}

/* 1200px대에서도 검색을 로고 옆으로 밀지 않고 중앙을 유지 */
@media all and (min-width:1025px) and (max-width:1320px) {
    .gnb_wrap .logo_wrap {
        flex-basis:230px !important;
        width:230px !important;
        min-width:230px !important;
    }
    .gnb_wrap .search_top_wrap {
        width:340px !important;
        min-width:340px !important;
        max-width:340px !important;
    }
    .gnb_wrap .snb_wrap {
        max-width:370px;
    }
}

/* v10: 헤더 퀵아이콘 컬러 이모지 - v9 레이아웃은 그대로 유지 */
.gnb_wrap .snb_wrap .qm_wrap .rb-color-emoji,
.search_top_wrap .rb-color-emoji {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
    font-style:normal;
    font-weight:400;
    line-height:1;
    text-rendering:auto;
    -webkit-font-smoothing:auto;
}
.gnb_wrap .snb_wrap .qm_wrap .rb-color-emoji {
    width:25px;
    height:25px;
    font-size:22px;
}
.search_top_wrap .rb-color-emoji-search {
    width:22px;
    height:22px;
    font-size:19px;
}


/* v11: 헤더 내부에 남아 있던 단색 아이콘도 컬러 이모지로 통일 */
#header .rb-color-emoji {
    font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif !important;
    font-style:normal !important;
    font-weight:400 !important;
    line-height:1 !important;
    text-rendering:auto;
    -webkit-font-smoothing:auto;
}
#tog_gnb_mobile .rb-color-emoji-mobile-menu {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:24px;
    height:24px;
    font-size:20px;
}
#rb_my_ovray {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:6px;
}
#rb_my_ovray .rb-color-emoji-my {font-size:16px;}
.rb_my_panel .rb-panel-label {
    display:inline-flex;
    align-items:center;
    gap:6px;
}
.rb_my_panel .rb-panel-label .rb-color-emoji {font-size:14px;}
#notification_box_wrap .rb_notification_category_icon {
    font-size:22px !important;
    line-height:1 !important;
    background:transparent !important;
}
#notification_box_wrap .rb_notification_category_icon svg {display:none !important;}
#cbp-hrmenu .rb-color-emoji-submenu {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    top:5px !important;
    right:-7px !important;
    width:18px;
    height:18px;
    font-size:13px;
    opacity:.75;
}
#cbp-hrmenu li:hover > .rb-color-emoji-submenu {opacity:1;}
.gnb_all_menu > a {
    display:inline-flex !important;
    align-items:center;
    gap:6px;
}
.gnb_all_menu .rb-color-emoji-all {font-size:15px;}


/* v11.1: 남아 있던 단색 화살표 이미지도 제거 */
.gnb_wrap .snb_wrap .my_btn_wrap .btn_round.arr_bg,
#rb_my_ovray.arr_bg.is_open {
    background-image:none !important;
    padding-right:15px !important;
}
#rb_my_ovray::after {
    content:"🔽";
    display:inline-block;
    margin-left:1px;
    font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
    font-size:10px;
    line-height:1;
}
#rb_my_ovray.is_open::after {content:"🔼";}
.gnb_all_menu > a {
    background-image:none !important;
}
.gnb_all_menu > a::after {
    content:"🔽";
    display:inline-block;
    margin-left:2px;
    font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
    font-size:9px;
    line-height:1;
}

/* ========================================================================== 
   SOSODODAM SHOP HEADER v12 - mobile full audit
   - PC(v9 기준) 배치는 건드리지 않음
   - 모바일 헤더 / 전체메뉴 / 프로필 / 검색 / 알림 / 터치영역을 함께 정리
   ========================================================================== */
@media all and (max-width:1024px) {
    :root {
        --sdh-mobile-gutter:16px;
        --sdh-mobile-control:40px;
        --sdh-mobile-line:#f1e8eb;
    }

    /* 헤더 자체: 기존 20px 강제 패딩과 요소 충돌 제거 */
    #header {
        padding:0 !important;
        overflow:visible !important;
    }
    #header.moves {
        transform:none !important;
    }

    /* 히트/추천/신규/인기/할인/쿠폰/후기: 삭제하지 않고 한 줄 가로 스크롤 */
    #header .shop_type_list {
        margin:0 !important;
        background:#fff9fb !important;
        border-bottom:1px solid var(--sdh-mobile-line);
        overflow:hidden;
    }
    #header .shop_type_list .inner {
        display:flex !important;
        align-items:center;
        gap:14px !important;
        width:100% !important;
        padding:7px var(--sdh-mobile-gutter) !important;
        overflow-x:auto;
        overflow-y:hidden;
        white-space:nowrap;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        box-sizing:border-box;
    }
    #header .shop_type_list .inner::-webkit-scrollbar {display:none;}
    #header .shop_type_list .inner a {
        flex:0 0 auto;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        font-size:12px !important;
        line-height:20px !important;
        color:#756a6e !important;
    }
    #header .shop_type_list .inner a.rb_cp_gap {
        margin-left:0 !important;
        color:var(--sdh-point) !important;
    }

    /* 메인 행: 햄버거 / 로고 / 퀵아이콘 + 검색을 다음 줄로 자연스럽게 분리 */
    #header .gnb_wrap > .inner {
        display:flex !important;
        flex-wrap:wrap !important;
        align-items:center !important;
        width:100% !important;
        min-height:0 !important;
        height:auto !important;
        gap:0 !important;
        padding:9px var(--sdh-mobile-gutter) 11px !important;
        box-sizing:border-box;
        overflow:visible !important;
    }
    #header .gnb_wrap .tog_wrap.mobile {
        display:block !important;
        flex:0 0 var(--sdh-mobile-control);
        width:var(--sdh-mobile-control) !important;
        margin:0 8px 0 0 !important;
    }
    #tog_gnb_mobile {
        display:flex !important;
        align-items:center;
        justify-content:center;
        width:var(--sdh-mobile-control) !important;
        height:var(--sdh-mobile-control) !important;
        margin:0 !important;
        padding:0 !important;
        border:1px solid #f0e5e9 !important;
        border-radius:12px;
        background:#fff !important;
    }
    #tog_gnb_mobile .rb-color-emoji-mobile-menu {
        width:auto !important;
        height:auto !important;
        font-size:20px !important;
    }

    /* 로고/플러그인 영역: 잘라내지 않고 남은 폭을 사용 */
    #header .gnb_wrap .logo_wrap {
        float:none !important;
        flex:1 1 auto !important;
        min-width:0 !important;
        width:auto !important;
        height:auto !important;
        margin:0 8px 0 0 !important;
        overflow:visible !important;
        line-height:1 !important;
    }
    #header .gnb_wrap .logo_wrap > li,
    #header .gnb_wrap .logo_wrap > li > a,
    #header .gnb_wrap #logo_img {
        display:block;
        width:auto !important;
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }
    #header .gnb_wrap #logo_img .responsive-image {
        display:block;
        width:auto !important;
        max-width:118px !important;
        height:30px !important;
        object-fit:contain;
        object-position:left center;
    }

    /* 회원명/내정보는 모바일 전체메뉴에 있으므로 헤더에서 중복 노출하지 않음 */
    #header .gnb_wrap .snb_wrap {
        float:none !important;
        flex:0 0 auto !important;
        width:auto !important;
        max-width:none !important;
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
        gap:0 !important;
    }
    #header .gnb_wrap .snb_wrap .member_info_wrap,
    #header .gnb_wrap .snb_wrap .my_btn_wrap {
        display:none !important;
    }
    #header .gnb_wrap .snb_wrap .qm_wrap {
        display:flex !important;
        align-items:center !important;
        gap:3px !important;
        height:var(--sdh-mobile-control) !important;
    }
    #header .gnb_wrap .snb_wrap .qm_wrap > a,
    #header .gnb_wrap .snb_wrap .qm_wrap > button {
        position:relative;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        width:36px !important;
        min-width:36px !important;
        height:var(--sdh-mobile-control) !important;
        margin:0 !important;
        padding:0 !important;
        border-radius:10px;
        line-height:1 !important;
    }
    #header .gnb_wrap .snb_wrap .qm_wrap .rb-color-emoji {
        width:auto !important;
        height:auto !important;
        font-size:20px !important;
    }
    #header .gnb_wrap .snb_wrap .qm_wrap > a > span,
    #header .gnb_wrap .snb_wrap .qm_wrap > button > span {
        top:-2px !important;
        right:-1px !important;
        left:auto !important;
        min-width:17px !important;
        height:17px !important;
        padding:0 4px !important;
        line-height:17px !important;
        font-size:10px !important;
        box-sizing:border-box;
    }

    /* 모바일 검색은 별도 2행. 부모 폭과 싸우지 않도록 100% 행으로 분리 */
    #header .gnb_wrap .search_top_wrap {
        order:10;
        position:relative !important;
        left:auto !important;
        top:auto !important;
        transform:none !important;
        float:none !important;
        display:block !important;
        flex:1 0 100% !important;
        width:100% !important;
        min-width:0 !important;
        max-width:none !important;
        margin:9px 0 0 !important;
    }
    #header .search_top_wrap_inner {width:100% !important;}
    #header .search_top_wrap input {
        width:100% !important;
        height:42px !important;
        padding:0 46px 0 15px !important;
        border:1px solid #eee2e6 !important;
        border-radius:13px !important;
        background:#fffafb !important;
        color:#443b3e !important;
        font-family:'font-R',sans-serif !important;
        font-size:14px !important;
        line-height:40px !important;
        box-sizing:border-box;
    }
    #header .search_top_wrap button {
        top:9px !important;
        right:12px !important;
        width:24px !important;
        height:24px !important;
        padding:0 !important;
    }
    #header .search_top_wrap .rb-color-emoji-search {
        width:auto !important;
        height:auto !important;
        font-size:19px !important;
    }

    /* PC 메뉴행은 모바일 전체메뉴가 담당 */
    #header .gnb_wrap .rows_gnb_wrap {display:none !important;}

    /* 동적 헤더가 모바일 메뉴 전환과 충돌하지 않게 */
    #header.gnb_up {transform:translate3d(0,-101%,0) !important;}

    /* ===== 모바일 전체메뉴 ===== */
    #cbp-hrmenu-btm {
        width:100% !important;
        height:100dvh !important;
        min-height:100vh;
        padding-bottom:calc(96px + env(safe-area-inset-bottom)) !important;
        background:#fff !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        overscroll-behavior:contain;
        box-sizing:border-box;
    }

    /* 상단 닫기/검색: 아이콘은 컬러 이모지로 통일, 터치영역 44px 이상 */
    #cbp-hrmenu-btm #m_gnb_close_btn,
    #cbp-hrmenu-btm .rb_btm_search_btn {
        top:8px !important;
        width:44px !important;
        height:44px !important;
        padding:0 !important;
        border:0 !important;
        border-radius:12px;
        background:#fff !important;
        display:flex;
        align-items:center;
        justify-content:center;
    }
    #cbp-hrmenu-btm #m_gnb_close_btn {right:10px !important;}
    #cbp-hrmenu-btm .rb_btm_search_btn {left:10px !important;}
    #cbp-hrmenu-btm #m_gnb_close_btn img,
    #cbp-hrmenu-btm .rb_btm_search_btn svg {display:none !important;}
    #cbp-hrmenu-btm #m_gnb_close_btn::before,
    #cbp-hrmenu-btm .rb_btm_search_btn::before,
    #cbp-hrmenu-btm .rb_bs_back_btn::before,
    #cbp-hrmenu-btm .rb_bs_se_btn::before {
        font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
        font-style:normal;
        line-height:1;
    }
    #cbp-hrmenu-btm #m_gnb_close_btn::before {content:"❌"; font-size:19px;}
    #cbp-hrmenu-btm .rb_btm_search_btn::before {content:"🔎"; font-size:20px;}

    /* 프로필: 음수 마진/자동폭 때문에 반쪽처럼 보이던 구조 제거 */
    #cbp-hrmenu-btm .user_prof_bg {
        width:100% !important;
        margin:0 !important;
        padding:68px 20px 18px !important;
        background:#fff9fb !important;
        border-bottom:1px solid var(--sdh-mobile-line);
        box-sizing:border-box;
        overflow:visible !important;
    }
    #cbp-hrmenu-btm .user_prof_bg_info {
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        text-align:center !important;
        text-indent:0 !important;
        font-size:22px !important;
        line-height:1.35 !important;
    }
    #cbp-hrmenu-btm .user_prof_bg_info + .user_prof_bg_info {margin-top:7px !important;}
    #cbp-hrmenu-btm .user_prof_bg_info span {
        font-size:11px !important;
        line-height:20px !important;
        padding:0 8px !important;
        border-radius:7px !important;
        background:#fff !important;
        border:1px solid #f0e5e9;
    }
    #cbp-hrmenu-btm .user_prof {
        position:relative;
        z-index:2;
        width:82px !important;
        height:82px !important;
        margin:14px auto 0 !important;
        padding:0 !important;
        text-align:center !important;
        overflow:visible !important;
    }
    #cbp-hrmenu-btm .user_prof > a,
    #cbp-hrmenu-btm .user_prof .profile_img {
        display:block !important;
        width:82px !important;
        height:82px !important;
        margin:0 !important;
        padding:0 !important;
        border-radius:22px !important;
        overflow:hidden !important;
        line-height:0 !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .user_prof img {
        display:block !important;
        width:82px !important;
        min-width:82px !important;
        max-width:82px !important;
        height:82px !important;
        min-height:82px !important;
        max-height:82px !important;
        margin:0 !important;
        padding:0 !important;
        border-radius:22px !important;
        object-fit:cover !important;
        object-position:center center !important;
    }

    #cbp-hrmenu-btm .user_prof_btns {
        width:100% !important;
        max-width:320px;
        margin:14px auto 22px !important;
        padding:0 20px;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .user_prof_btns > li {
        display:flex !important;
        gap:8px;
        width:100%;
        margin:0 !important;
        padding:0 !important;
        list-style:none;
    }
    #cbp-hrmenu-btm .user_prof_btns .btn_round {
        flex:1 1 0;
        min-width:0;
        height:42px !important;
        padding:0 13px !important;
        border-radius:11px !important;
        font-size:13px !important;
    }

    /* 1차 메뉴: 한 줄 52px, 텍스트와 버튼 영역을 분리 */
    #cbp-hrmenu-btm > ul {
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
    }
    #cbp-hrmenu-btm > ul > li {
        position:relative;
        width:100%;
        margin:0 !important;
        padding:0 !important;
        border-bottom:1px solid #f1edef !important;
        background-image:none !important;
        text-indent:0 !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm > ul > li > a {
        display:flex !important;
        align-items:center;
        width:100% !important;
        min-height:52px;
        padding:0 58px 0 20px !important;
        box-sizing:border-box;
        color:#443b3e !important;
        font-size:15px !important;
        line-height:1.35 !important;
        text-indent:0 !important;
    }
    #cbp-hrmenu-btm > ul > li > .add_arr_btn {
        position:absolute !important;
        top:4px !important;
        right:8px !important;
        width:44px !important;
        height:44px !important;
        padding:0 !important;
        border:0 !important;
        background:none !important;
    }
    #cbp-hrmenu-btm > ul > li > .add_arr_btn::before {
        content:"🔽";
        font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
        font-size:12px;
        line-height:1;
    }
    #cbp-hrmenu-btm > ul > li.cbp-hropen > .add_arr_btn::before {content:"🔼";}

    /* 2차/3차: 들여쓰기와 터치영역 정상화 */
    #cbp-hrmenu-btm .cbp-hropen .cbp-hrsub {
        width:100% !important;
        margin:0 !important;
        padding:8px 0 12px !important;
        border-radius:0 !important;
        background:#fffafb !important;
        box-shadow:none !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .cbp-hrsub-inner,
    #cbp-hrmenu-btm .cbp-hrsub-inner > div,
    #cbp-hrmenu-btm .cbp-hrsub-inner > div > ul {
        width:100% !important;
        margin:0 !important;
        padding:0 !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .cbp-hrsub-inner > div > h4 {
        padding:10px 20px 6px !important;
        font-size:14px !important;
        line-height:1.4 !important;
    }
    #cbp-hrmenu-btm .cbp-hrsub-inner > div > ul > li.rb-btm-2d {
        position:relative;
        width:100%;
        min-height:46px;
        padding:0 !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .cbp-hrsub-inner > div > ul > li.rb-btm-2d > a {
        display:flex !important;
        align-items:center;
        min-height:46px;
        padding:0 58px 0 28px !important;
        font-size:14px !important;
        line-height:1.35 !important;
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .rb-btm-3d-toggle {
        position:absolute !important;
        top:1px !important;
        right:8px !important;
        width:44px !important;
        height:44px !important;
        padding:0 !important;
        border:0 !important;
        background:none !important;
    }
    #cbp-hrmenu-btm .rb-btm-3d-toggle::before {
        content:"📂";
        font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
        font-size:14px;
        line-height:1;
    }
    #cbp-hrmenu-btm .rb-3d-open > .rb-btm-3d-toggle::before {content:"📂";}
    #cbp-hrmenu-btm .cbp-hrsub-3 {
        margin:0 !important;
        padding:8px 0 10px !important;
        background:#fff !important;
    }
    #cbp-hrmenu-btm .cbp-hrsub-3 > li > a {
        display:block !important;
        min-height:40px;
        padding:10px 28px 10px 40px !important;
        font-size:13px !important;
        line-height:20px !important;
        box-sizing:border-box;
    }

    /* 전체메뉴 검색 오버레이: 100dvh + 안전영역, 단색 SVG는 이모지로 대체 */
    #cbp-hrmenu-btm .rb_btm_search_pn {
        width:100% !important;
        height:100dvh !important;
        min-height:100vh;
        padding-bottom:env(safe-area-inset-bottom);
        box-sizing:border-box;
    }
    #cbp-hrmenu-btm .fixed_rb_btm_s {height:60px; background:#fff; z-index:1;}
    #cbp-hrmenu-btm .rb_btm_search_pn_li1 button,
    #cbp-hrmenu-btm .rb_btm_search_pn_li3 button {
        display:flex;
        align-items:center;
        justify-content:center;
    }
    #cbp-hrmenu-btm .rb_btm_search_pn_li1 button svg,
    #cbp-hrmenu-btm .rb_btm_search_pn_li3 button svg {display:none !important;}
    #cbp-hrmenu-btm .rb_bs_back_btn::before {content:"⬅️"; font-size:18px;}
    #cbp-hrmenu-btm .rb_bs_se_btn::before {content:"🔎"; font-size:19px;}

    /* 모바일 알림: 실제 헤더 높이를 JS CSS 변수로 받아 고정 97px 버그 제거 */
    #notification_box_wrap {
        z-index:108 !important;
    }
}

@media all and (max-width:768px) {
    #notification_box_wrap {
        top:var(--sdh-header-height, 126px) !important;
        right:0 !important;
        left:0 !important;
        width:100% !important;
        height:calc(100dvh - var(--sdh-header-height, 126px)) !important;
        border-radius:0 !important;
    }
    #notification_box_wrap .rb_notification_tabs button {
        height:50px !important;
        font-size:12px !important;
    }
    #notification_box_wrap .rb_notification_body {
        height:calc(100dvh - var(--sdh-header-height, 126px) - 91px) !important;
    }
    #notification_box_wrap .rb_notification_footer {
        height:41px !important;
        padding:0 14px !important;
    }
    #notification_box_wrap .rb_notification_item_open {
        gap:10px !important;
        padding:13px 43px 13px 14px !important;
    }
    #notification_box_wrap .rb_notification_category_icon {
        flex-basis:36px !important;
        width:36px !important;
        height:36px !important;
        font-size:19px !important;
    }
}

@media all and (max-width:480px) {
    #header .gnb_wrap > .inner {padding-left:12px !important; padding-right:12px !important;}
    #header .shop_type_list .inner {padding-left:12px !important; padding-right:12px !important;}
    #header .gnb_wrap .tog_wrap.mobile {margin-right:5px !important;}
    #header .gnb_wrap .logo_wrap {margin-right:4px !important;}
    #header .gnb_wrap #logo_img .responsive-image {max-width:105px !important; height:28px !important;}
    #header .gnb_wrap .snb_wrap .qm_wrap {gap:1px !important;}
    #header .gnb_wrap .snb_wrap .qm_wrap > a,
    #header .gnb_wrap .snb_wrap .qm_wrap > button {width:33px !important; min-width:33px !important;}
    #header .gnb_wrap .snb_wrap .qm_wrap .rb-color-emoji {font-size:19px !important;}
}
/* ==========================================================================
   SOSODODAM SHOP HEADER - 전체분류보기 글자/간격 보정
   - 기존 드롭다운 폭/배치 방식은 그대로 유지
   - 카테고리 열 사이 간격만 소폭 축소
   ========================================================================== */
@media all and (min-width:1025px) {

    /* 전체분류보기 버튼 / 그룹 제목 */
    .gnb_wrap .gnb_all_menu > a,
    .gnb_all_menu .cbp-hrsub-inner > div > h4,
    .gnb_all_menu .cbp-hrsub-inner > div > h4 > a {
        font-size:16px !important;
        line-height:1.4 !important;
    }

    /* 각 카테고리 열
       기본 140px → 132px로만 살짝 축소 */
    .gnb_all_menu .cbp-hrsub-inner > div {
        min-width:132px !important;
    }

    /* 2차 카테고리 */
    .gnb_all_menu .cbp-hrsub-inner > div > ul > li > a {
        font-size:15px !important;
        line-height:1.45 !important;
        padding-right:14px !important;
    }

    /* 3차 카테고리 */
    .gnb_all_menu .cbp-hrsub-3 a {
        font-size:11px !important;
        line-height:1.45 !important;
    }
}