/* BASIC css start */
/* BASIC css start */
/* BASIC css start */
/* BASIC css start */
/* BASIC css start */
/* BASIC css start */
/* BASIC css start */
/* BASIC css start */

.category-title img { max-width: 100%; }
.list_shoppingWrap .mainTitle {
    margin: 64px auto 40px;
}

.list_shoppingWrap .mainTitle h3 {
    font-size: 44px;
    font-weight: 700;
    color: #000;
}

.category-section {
    position: sticky;
    z-index: 2;
    background-color: #fff;}

.category-header {
    margin-top: 48px;
    margin-bottom: 32px;
}
.newContainer .category-section:first-child .category-header{ margin-top: 64px; } 

.category-header .title {
    font-size: 32px;
    font-weight: 600;
    color: #000;
    display: flex;
    gap: 12px;
    align-items: baseline;
}

.category-header .count {
    font-size: 18px;
    color: #AAAAAA;
    font-weight: 600;
}

.category-container {
    display: flex;
    margin-top: 144px;
    flex-direction: column;
}

.category-list {
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow-y: hidden;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    
    
    


    /* --- 스크롤바 스타일링 시작 --- */

    /* 스크롤바 전체 영역 */
    &::-webkit-scrollbar {
        height: 3px;
        /* 스크롤바의 높이 */
    }

    /* 스크롤바 막대 */
    &::-webkit-scrollbar-thumb {
        background-color: #888;
        /* 스크롤바 막대의 색상 */
        border-radius: 4px;
        /* 스크롤바 막대의 모서리 둥글게 */
    }

    /* 스크롤바 막대에 마우스를 올렸을 때 */
    &::-webkit-scrollbar-thumb:hover {
        background-color: #555;
        /* 호버 시 색상 변경 */
    }

    /* 스크롤바 트랙(경로) */
    &::-webkit-scrollbar-track {
        background-color: #f1f1f1;
        /* 스크롤바 트랙의 색상 */
        border-radius: 5px;
    }

    /* --- 스크롤바 스타일링 끝 --- */
}

.category-list li {
    position: relative;
    display: flex;
    align-items: center;
    /* padding: 31px 0 31px 73px; */
    scroll-snap-align: center;
}

.category-list li a {
    font-size: 22px;
    color: #000000;
    text-decoration: none;
    font-weight: 600;
    padding: 31px  73px;
}

.category-list li.active::before {
    content: "";
    background: var(--main-color);
    width: 100%;
    height: 4px;
    bottom: 0;
    left: 0;
    position: absolute;
}

.category-list li.active a {
    color: var(--main-color);
    font-weight: 700;
}

/* 리스트 사이의 점(dot) 구분선 */
.category-list li::after {
    content: '';
    display: inline-block;
    width: 1px;
    height: 13px;
    background-color: transparent;
    border-radius: 50%;
    /* margin-left: 73px; */
}
.category-list li:not(:last-child)::after {
    background-color: #DBDBDB;
}
.category-list li:first-child:nth-last-child(2),
.category-list li:first-child:nth-last-child(2) ~ li {
    flex: 0 0 50%;
    justify-content: center;
    padding-left: 0;
}
.category-list li:first-child:nth-last-child(2)::after,
.category-list li:first-child:nth-last-child(2) ~ li::after {
    position: absolute;
    right: 0; 
    margin-left: 0;
}
.category-list li:first-child:nth-last-child(2) a, .category-list li:first-child:nth-last-child(2) ~ li a {
    width: 100%;
    text-align: center;
}
.category-nav {
    /* border-top: 1px solid #DBDBDB; */
    border-bottom: 1px solid #DBDBDB;
}

.sort-box {
    display: flex;
    justify-content: flex-end;
    padding: 0;
}

.sort-box #MS_select_sort.select-box {
    outline: 0;
    background: #fff url(/design/cbtis/images/select_bg1.svg) no-repeat center right;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    padding: 0 10px;
    font-size: 16px;
    font-weight: 500;
    border: 0;
    height: 59px;
    min-width: 98px;
    color: #000;
}




@media (max-width: 1024px) {
    .list_shoppingWrap .mainTitle {
        margin: 32px auto 24px;
    }

    .list_shoppingWrap .mainTitle h3 {
        font-size: 19px;
    }

    .category-header {
        margin-top: 20px;
        MARGIN-BOTTOM: 12PX;
    }

.newContainer .category-section:first-child .category-header{ margin-top: 32px; } 

    .category-header .title {
        font-size: 16px;
        gap: 6px;
    }

    .category-header .count {
        color: #bbb;
        font-size: 12px;
    }

    .category-container {
        margin-top: 24px;
    }

    .category-list {
        /* gap: 14px; */
    }

    .category-list li {
        /* padding: 18px 0 18px 12px; */
    }

.category-list li.active::before {content: "";height: 3px;}
    .category-list li::after {
        /* margin-left: 13px; */
        height: 9px;
    }

    .category-list li a {
        font-size: 13px;
        padding: 18px 12px;
    }

    .sort-box #MS_select_sort.select-box {
        height: 40px;
        background-size: 12px;
        font-size: 13px;
        min-width: 55px;
    }
}

/* 모바일 반응형 (768px 이하) */
@media (max-width: 768px) {
    .category-container {
        flex-direction: column; 
        align-items: flex-start;
    }

    .category-nav {
        width: 100%;
        overflow-x: auto;
        /* 좌우 스크롤 활성화 */
        -webkit-overflow-scrolling: touch;
        /* iOS 부드러운 스크롤 */
        /* margin-bottom: 15px; */
    }

    /* 스크롤바 숨기기 */
    .category-nav::-webkit-scrollbar {
        display: none;
    }

    .category-nav {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }


    .sort-box {
        align-self: flex-end;
        /* 셀렉트 박스만 오른쪽 정렬 */
    }
}



/* 마우스 등 정밀한 포인터 기기(주로 PC)에서만 적용 */
@media (pointer: fine) {
    .category-list {
        /* 스크롤바를 다시 보이게 설정 */
        scrollbar-width: auto;
        -ms-overflow-style: auto;
    }
}
/* BASIC css end */


/* BASIC css end */


/* BASIC css end */


/* BASIC css end */


/* BASIC css end */


/* BASIC css end */


/* BASIC css end */


/* BASIC css end */

