.style-sidebar .depth-2 .depth-2-link-colse {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 24px;
    z-index: 30;
}

.depth-2-link .depth-2-link-colse{
    display: none;
}

.depth-2-link.active .depth-2-link-colse{
    display: block;
}


.depth-3-link .depth-3-link-colse{
    display: none;
}

.depth-3-link.active .depth-3-link-colse{
    display: block;
}

/* ckeditor 교정 */
figure { margin:0 0 !important;padding:0;width:100% !important;}

figure img { min-width:100% }

/* 별점 관련 */
.review-ratingBox .review-rating svg.dark path {
    fill: #E3E3E3;
}

/* 리스트 좋아요 하트 */
.style-itemList-shop button.on svg path{
    stroke: #EA333E !important;
    fill: #EA333E !important;
}

.page-item,.first_pagenation { display:none;}


/*.layout-header {
    position: relative;
    width: 100%;
    display: flex;
    z-index: 1000 !important;
    box-sizing: border-box;
    flex-shrink: 0;
    flex-direction: column;
    height: var(--layout-header-height);
}*/

.style-detail-optionList a.option_link {
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 4px;
    padding: 12px 10px;
    min-width: 70px;
    display: block !important;
    text-align: center;
    align-items: baseline;
    cursor:pointer;
    user-select: none;
    -webkit-user-drag: none;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

.style-detail-optionList a.option_link.active {
    border: 1px solid var(--color-mainColor);
    color: var(--color-gray-900);
    /*background: #FCF8FF;*/
}


.category-tabContent {
    overflow-x: hidden;
    overflow-y: auto;
    padding-bottom:70px;
}


.style-itemList-shop a {
}

.btn_list_like {
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    cursor:pointer;
}

/* 터치 영역 확대용 */
.btn_list_like::before {
    content: "";
    position: absolute;
    top: -12px;
    left: -12px;
    right: -12px;
    bottom: -12px;
}

.style-itemList-shop a svg {
    fill: none;
    width: 20px;
    height: 20px;
    display: inline-block;
    font-size: 2.4rem;
    transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
    flex-shrink: 0;
    user-select: none;
}
.style-itemList-shop a.like svg path {
    fill: #EA333E;
    stroke: #EA333E;
}

.style-itemList-inner {
    padding-bottom: 0 !important;
}

#recommended {
    padding-bottom:70px;
}

.style-folding-instruction{
    padding-bottom:60px;
}

#product_list{
    padding-bottom:60px !important;
}

.style-mypageOrders{
    padding-bottom:60px;
}

.mypageCsList{
    padding-bottom:70px;
}

.style-notice{
    padding-bottom:70px;
}

#lay_loading {
    margin-top:-35px !important;
    margin-bottom:100px;
}

.style-category-menuList-chips a {
    border: 0;
    background: none;
    color: var(--color-gray-650);
    padding: 0 5px;
}
.style-category-menuList-chips a.button-active {
    font-weight: 700;
    color: var(--color-gray-900);
}

.inner_review_slide {
    min-height: calc(100vh - 50px);
}

.style-toast.d-none {
    display: none !important;
}
/*
.style-mypageOrders-article{
    padding-bottom:60px;
}

 */

.mainReview-profile .mainReview-photo{
    min-width: 44px;
}



.style-login .style-login-normal {
    width: 100%;
    display: flex;
    justify-content: center;
    background: #FFF;
    color: #000;
    border-color: #EDECEE;
}
.style-login .style-login-normal a {
    display: inline-flex;
    align-items: center;
    gap: 4px;

    font-weight: 500;
    font-size: 14px;
    text-decoration: underline;
}
.style-login .style-login-normal a img {
    width: auto;
    height: 14px;
}


.style-login {
    margin-top:40px;
}

.style-login-naverButton a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: inherit; /* 필요에 따라 조정 */
    padding-top: 11px;
    color: inherit;
    text-decoration: none;
}

.style-login-naverButton img {
    width: auto;
    height: 18px;
    padding-right:1px;
    margin-top:-2px;
}

.style-login .style-login-logo {
    margin:0 auto 55px;
}


/* 상단 프로그레시브 바 */
#top_loading_bar {
    position: fixed;
    width: 600px;
    height: 2px;
    background: rgba(0, 0, 0, 0.1);
    z-index: 9999;
}

.progress {
    height: 100%;
    width: 0%;
    background: #A647E3;
    animation: loadingBar 2s infinite;
}

@keyframes loadingBar {
    0%   { width: 0%; }
    20%  { width: 30%; }
    50%  { width: 60%; }
    70%  { width: 95%; }
    100% { width: 100%; }
}

/* 비번폼 */
input[type="password"] {
    font-size: 14px;
}

/* 결제 버튼 */
#btn_pay_start span {
    font-weight: 700;
}

/* 카테고리 상단 라인 */
.style-category-list-chips {
    top:50px;
}

/*장바구니 품절 표기 */
.style-itemList-soldout.incart {
    position: relative;
    top:-100%;
}

.style-itemList-badge{
    z-index:5;
}

.style-itemList-badge-icon {
    position: absolute;
    top: 5px;
    left: 2px;
    color: #fff;
    height: 22px;
    display: inline-flex;
    padding: 0px 8px;
    overflow: hidden;
    font-size: 1.1rem;
    align-items: center;
    flex-shrink: 0;
    font-weight: 700;
    line-height: 1;
    border-radius: 6px;
    letter-spacing: -0.02em;
    justify-content: center;
    z-index: 3;
}

.accordion-details-button.disabled span.text{
    color: var(--color-gray-500);
}

.mainBrand-bigthumbnail .brand-info .brand-title {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 150%;
}

.mainBrand-bigthumbnail .brand-info .brand-like {
    font-size: 1.25rem;
    font-weight: 400;
    text-shadow: 0 0 1px rgba(0,0,0,0.2);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}



/* 시작: 컨텐츠 > subNavMenu - 스와이프 아닌것 */
.style-subNavMenu {
    padding: 13px 0;
    width: 100%;
    z-index: 1000;
    position: sticky;
    background-color: #fff;
    top: 43px;
}
#subNavMenu {
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch; /* 부드러운 스크롤 */
    scrollbar-width: none; /* Firefox */

    /* 추가로 시각적으로 스크롤바 영역 없애기 */
    -ms-overflow-style: none; /* IE/Edge */
}
#subNavMenu::-webkit-scrollbar {
    display: none;
}

#subNavMenu .item {
    width: auto;
    margin: 0 3px;
}
#subNavMenu .item:first-child {
    margin-left: 16px;
}
#subNavMenu .item:last-child {
    margin-right: 16px;
}
#subNavMenu .item a {
    color: #454545;
    height: 36px;
    display: inline-flex;
    opacity: 0.7;
    padding: 0 16px;
    font-size: 1.4rem;
    font-weight: 500;
    border-radius: 20px;
    background-color: #F6F6F6;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}
#subNavMenu .item a.on {
    color: #fff;
    opacity: 1;
    font-weight: 700;
    background-color: #6A1CA1;
}

#subNavMenu.dragging {
    user-select: none;
}

#subNavMenu.oop_tab {
    -webkit-user-drag: none;
    user-select: none;
}

.style-subNav.outline .item a{
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    background-color: #fff !important;
    border: 1px solid #f0f0f0 !important;
    color: var(--color-gray-900) !important;
    opacity: 1 !important;
}
.style-subNav.outline .item a.on {
    color: #6A1CA1 !important;
    border-color: #6A1CA1 !important;
}
/* 종료: 컨텐츠 > subNav */

.style-detail-price .price-btext{
    padding: 8px 0 0 4px;
}


.module_bottom_area {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding:0 16px;
}

.module_bottom_area .more_button {
    width: 100%;
    height: 33px;
    padding: 8px 0;
    border: none;
    border-radius: 9999px;
    background-color: #000000;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s ease;
}


.module_bottom_area .more_button_white {
    width: 100%;
    height: 39px;
    padding: 8px 0;
    border: 1px solid #D6DBDA;
    border-radius: 9999px;
    background-color: #FFF;
    color: #000;
    font-size: 14px;
    font-weight: 400;
    cursor: pointer;
    transition: background 0.2s ease;
}



/* 상세 에니메이션 */
.style-detail-bottom-badge {
    width:100%;
    height: 30px;
    overflow: visible;
}

.bottom-badge {
    position: absolute;
    width: auto;
    display: flex;
    align-items: center;
    gap: 8px; /* 아이콘과 텍스트 간격 */
    opacity: 0;
    transform: translateY(100%);
}

/* 첫 번째 뱃지 애니메이션 */
.bottom-badge:first-child {
    animation: slideUpFade 1.4s forwards;
}

/* 두 번째 뱃지 애니메이션 */
.bottom-badge:last-child {
    animation: slideUpFade 2s forwards;
    animation-delay: 1.2s; /* 첫 번째 뱃지가 올라올 시간 */

}

/* 키프레임 정의 */
@keyframes slideUpFade {
    0% {
        opacity: 0;
        transform: translateY(100%);
    }
    20% {
        opacity: 1;
        transform: translateY(0%);
    }
    80% {
        opacity: 1;
        transform: translateY(0%);
    }
    100% {
        opacity: 0;
        transform: translateY(-100%);
    }
}


@keyframes slideUpAppear {
    0% {
        opacity: 0;
        transform: translateY(100%);
    }
    100% {
        opacity: 1;
        transform: translateY(0%);
    }
}

.bottom-badge:first-child .icon_animate rect {
    transform-origin: 50% 10%; /* X: 중앙, Y: 위쪽 손잡이 위치 */
    animation: jingle 0.3s ease-in-out 2 forwards; /* 3번 반복, 딱 끝나게 */
}

.bottom-badge:last-child .icon_animate rect {
    transform-origin: 50% 10%; /* X: 중앙, Y: 위쪽 손잡이 위치 */
    animation: jingle 0.3s ease-in-out infinite; /* 0.4초 반복 */
    animation-iteration-count: 2; /* 2~3번 반복 */
    animation-delay: 1.2s; /* 첫 번째 뱃지가 올라올 시간 */
}


@keyframes jingle {
    0% { transform: rotate(0deg); }
    25% { transform: rotate(10deg); }
    50% { transform: rotate(-10deg); }
    75% { transform: rotate(10deg); }
    100% { transform: rotate(0deg); }
}


.style-offcanvas-bottom.offcanvas-bottom {
    border: 0;
    width: 100%;
    max-width: var(--layout-max-width);
    height: auto;
    max-height: calc(100vh - 180px);
    left: 50%;
    right: unset;
    transform: translate(-50%, 100%);
    border-radius: 16px 16px 0 0;
    /* padding-bottom: env(safe-area-inset-bottom, 0.5vh); */
    padding-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 20px));
    /*padding-bottom: 20px;*/
}
.style-detail-inquire {
    height: 100% !important;
    max-height: 100% !important;
    border-radius: 0 !important;
}
.style-offcanvas-bottom.offcanvas-bottom.style-offcanvas-bottom-noRadius {
    border-radius: 0;
}
.style-offcanvas-bottom.offcanvas-bottom.show {
    transform: translate(-50%, 0%);
}
.style-offcanvas-bottom.offcanvas-bottom.showing {
    transform: translate(-50%, 0%);
}
.style-offcanvas-bottom.offcanvas-bottom.hiding {
    transform: translate(-50%, 100%);
}
.style-offcanvas-bottom .style-offcanvas-body {
    padding: 0;
    /* padding-bottom: calc(0px + env(safe-area-inset-bottom, 0.5vh)); */
    padding-bottom: 0;
}
.style-offcanvas-bottom .style-offcanvas-header {
    width: 100%;
    height: 62px;
}
.style-offcanvas-bottom .style-offcanvas-header-content {
    width: 100%;
    height: 62px;
    padding: 20px 20px 14px;
    position: absolute;
    left: 0;
    top: 0;
    background-color: var(--color-common-white);
    border-radius: 16px 16px 0 0;
}
.style-offcanvas-bottom .style-offcanvas-header-content h2 {
    font-size: 20px;
    font-weight: 700;
    padding-right: 30px;
}
.style-offcanvas-bottom .style-offcanvas-header-button {
    position: absolute;
    right: 20px;
    top: 22px;
}
.style-offcanvas-bottom .style-offcanvas-header-button svg {
    width: auto;
    height: 24px;
}
.style-counsel-close {
    position: absolute;
    top: 18px;
    right: 16px;
    z-index: 10;
}
.style-counsel-close button {
    padding: 0;
}


/* 시작: 공통 > select 메뉴 */
.style-selectMenus {
    display: flex;
    flex-direction: column;
}
.style-selectMenus > li:not(:first-of-type) {
    border-top: 1px solid var(--color-gray-100);
}
.style-selectMenus .style-selectMenus-button {
    width: 100%;
    height: 58px;
    font-weight:400;
    font-size: 16px;
}
.style-selectMenus .style-selectMenus-button.style-selectMenus-button-red {
    color: var(--color-primary-600);
}
/* 종료: 공통 > select 메뉴 */


.layout-header .style-form-input {
    padding-top:13px;
    padding-bottom:14px;
}

.layout-header .style-form-searchBtn {
    padding: 7px 8px;
}

.products-quantity-price .price {
    color:#000 !important;
}

.style-detail-imageArea .style-detail-imageArea-freeGift {
    opacity: 1;
    transform-origin: top center;
    transform: rotate(0deg);
    pointer-events: none;
}

.style-detail-imageArea .style-detail-imageArea-freeGift.is-show {
    opacity: 1;
    animation: freeGiftSwingIn 1s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.style-detail-imageArea .style-detail-imageArea-freeGift.is-show_static {
    opacity: 1;
    /*animation: freeGiftSwingIn 1s cubic-bezier(0.25, 0.8, 0.25, 1);*/
}

@keyframes freeGiftSwingIn {
    0% {
        transform: rotate(0deg);
    }
    12% {
        transform: rotate(5deg);
    }
    28% {
        transform: rotate(-4deg);
    }
    44% {
        transform: rotate(3deg);
    }
    60% {
        transform: rotate(-2deg);
    }
    75% {
        transform: rotate(1.2deg);
    }
    88% {
        transform: rotate(-0.6deg);
    }
    100% {
        transform: rotate(0deg);
    }
}

.style-detail-imageArea .style-detail-imageArea-freeGift.is-hide {
    animation: freeGiftSwingOut 0.3s ease-in forwards;
}

@keyframes freeGiftSwingOut {
    from {
        opacity: 1;
        transform: rotate(0deg);
    }
    to {
        opacity: 0;
        transform: rotate(-6deg) translateY(-4px);
    }
}

.style-gift-list-noselect {
    position: absolute;
    inset: 0;                 /* top:0 right:0 bottom:0 left:0 */
    display: flex;
    align-items: center;
    justify-content: center;
    color:#8D8D8D;
    border:1px solid #E3E3E3;
    font-weight: 400;
    font-size:16px;
    line-height: 1.4;
    background: #FFF;
    text-align: center;
    z-index: 2;
    pointer-events: none;     /* 클릭 방해 안 하게 */
}

.style-gift-list-noselect.active{
    color:#A647E3;
    font-weight: 700;
}

/* 새글 댓글/답글 보여주기  */
.comment_main_list li {
    background-color: #FFF; /* 기본 색 */
    transition: background-color 1s ease; /* 색 변환 애니메이션 */
}

.comment_main_list li.new-highlight {
    background-color: #eeddff; /* 새글 하이라이트 색 */
}



.view-comment-list li {
    background-color: #FFF; /* 기본 색 */
    transition: background-color 1s ease; /* 색 변환 애니메이션 */
}

.view-comment-list li.new-highlight {
    background-color: #eeddff; /* 새글 하이라이트 색 */
}


.comment_sub_list li {
    background-color: #FFF; /* 기본 색 */
    transition: background-color 1s ease; /* 색 변환 애니메이션 */
}

.comment_sub_list li.new-highlight {
    background-color: #eeddff; /* 새글 하이라이트 색 */
}




.page-write-button {
    position: fixed;
    bottom: calc(80px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)));
    right: 16px;
    z-index: 1500;

    height: 47px;
    padding: 0 16px;
    gap: 4px;

    display: flex;
    align-items: center;
    border-radius: 47px;
    overflow: hidden;

    background: #67696B;
    color: #fff;

    /*transition:
            width 0.35s cubic-bezier(.4,0,.2,1),
            padding 0.35s cubic-bezier(.4,0,.2,1);
    */
    will-change: width;
    transform: translateZ(0);     /* GPU 강제 */
}
@media (min-width: 600px) {
    .page-write-button{
        right: 50%;
        margin-right: -287px;
    }
}

/* 글자 */
.page-write-button span {
    white-space: nowrap;
    transition:
            opacity 0.2s ease,
            transform 0.35s cubic-bezier(.4,0,.2,1);
}

/* 아이콘용 레이어 */
.page-write-button::after {
    content: "";
    position: absolute;
    inset: 0;

    background-color: #67696B;
    background-image: url("../img/icon/ic_plus.svg");
    background-repeat: no-repeat;
    background-position: center;

    transform: translateX(-100%);
    transition: transform 0.35s cubic-bezier(.4,0,.2,1);

    will-change: transform;       /* ← 중요 */
}

/* 스크롤 후 */
.page-write-button.scroll {
    width: 47px;
    padding: 0;
}

/* 글자는 오른쪽으로 밀리며 사라짐 */
.page-write-button.scroll span {
    opacity: 0;
    transform: translateX(20px);
}

/* 아이콘이 왼쪽 → 오른쪽으로 슬라이드 인 */

.page-write-button.scroll::after {
    transform: translateX(0);
}

/* 최저가 도전 */
.style-itemList-badge-bottom-main-left {
    position: absolute;
    bottom: 10px;
    left: 10px;
    width: 54px;
    height: 54px;
    z-index: 5;
}
.style-itemList-badge-bottom-main-left img {
    width:100%;
    height:100%;
}

/* 선착순 한정수량 */
.style-itemList-info.limit_mode {
    display: flex;
    width: 100%;
    align-items: flex-start;
    justify-content: flex-start;
    margin-top: 8px;
    padding: 0 2px 0;
    flex-direction: column;
    /*justify-content: center;*/
    min-height: 90px;
}

.style-itemList-info.limit_mode .style-itemList-progressBox {
    margin-top:auto;
}

.mainChipItem-info .price span {
    color: #EA333E;
    font-size: 1.5rem;
    font-family: Pretendard,sans-serif;
    font-weight: 700;
    margin-right: 1px;
}
.mainChipItem-info strong {
    font-size: 1.5rem;
    font-weight: 700;
    margin-right: 1px;
}
.mainChipItem-info strong .won{
    font-weight: 600;
    font-size: 1.5rem;
    color:#212124;
}
.mainChipItem-info s {
    color: #999999;
    font-size: 1.3rem;
    font-family: Pretendard,sans-serif;
}

.view-comment-input-write .write-button.active svg path{
    fill:#3E5FFF;
}

.mainChipItem-info .style-itemList-counts span {
    padding-top:1px;
}

/* 리스트 마지막줄 라인 제거 */
.view-comment-list > ul > li:last-child {
    border-bottom: 0;
}

.style-button-top-submit {
    height: 30px;
    font-size: 16px;
    font-weight: 500;
    color:#000;
}

.offcanvas-save-cash .cash strong {
    margin-top:1px;
}

/* 푸시로 온글 표시 */
.highlight-flash {
    background: #fff3cd !important;
    animation: flash-bg 1s ease 2;
}

@keyframes flash-bg {
    0% { background: #fff3cd; }
    50% { background: #ffffff; }
    100% { background: #fff3cd; }
}


.style-home-brand {
    padding: 20px 16px 18px;
    background: #fff;
    border-bottom: 8px solid #f5f5f5;
}

.home-brand-title {
    margin: 0 0 14px;
    font-size: 18px;
    font-weight: 700;
    color: #111;
}

#homeBrandSwiper swiper-slide {
    width: 106px;
}

.brand-item {
    display: block;
    text-align: center;
}

.brand-thumb {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 106px;
    height: 106px;
    border: 1px solid #eee;
    border-radius: 50%;
    background: #fff;
    overflow: hidden;
}

.brand-thumb img {
    max-width: 80px;
    max-height: 80px;
    object-fit: contain;
}

.brand-name {
    display: block;
    margin-top: 10px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    color: #666;
    white-space: nowrap;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.style-home-brand .brand-item.active .brand-thumb {
    border: 1px solid #9523DC;
}
.style-home-brand .brand-item.active .brand-name {
    color: #9523DC ;
}