/* 검색 영역 */
.class_search_sect {
    padding: 70px 0 20px;
    background: linear-gradient(180deg, #F5F7FD -2.6%, rgba(255, 255, 255, 0) 123.86%);
}

.class_search_sect .title_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 32px;
}

.class_search_sect .title_area .title {
    font-size: 28px;
    font-weight: 700;
}

.class_search_sect .btn_reset {
    background-color: #fff;
    border: 1px solid #BBBBBB;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 700;
    color: #BBBBBB;
}

.class_search_sect .btn_reset.active {
    color: #5E5E5E;
    border-color: #5E5E5E;
}

.class_search_sect .btn_reset .icon_wrap {
    width: 18px;
    aspect-ratio: 1/1;
    display: flex;
}

.class_search_sect .btn_reset .icon_wrap .active,
.class_search_sect .btn_reset.active .icon_wrap .default {
    display: none;
}

.class_search_sect .btn_reset.active .icon_wrap .active {
    display: block;
}

.class_search_sect .search_wrap {
    display: flex;
    align-items: center;
    gap: 30px;
}

.class_search_sect .search_wrap .input_flex_area {
    align-items: center;
    gap: 8px 16px;
    width: calc((100% - 60px)/3);
}

.class_search_sect .search_select_box {
    flex-grow: 1;
}

.search_select_box .SumoSelect {
    width: 100%;
}

.search_select_box .SumoSelect>.CaptionCont {
    border-color: #BBBBBB;
    border-radius: 6px;
    padding: 14px 16px;
}

.search_select_box .SumoSelect>.optWrapper {
    border-color: #BBBBBB;
    border-radius: 6px;
    padding: 4px 0;
    color: #222;
}

.search_select_box .SumoSelect.open>.optWrapper {
    top: 56px;
}

.search_select_box .SumoSelect>.CaptionCont>span.placeholder {
    color: #222;
    font-style: initial;
}

.search_select_box .SumoSelect>.CaptionCont>label {
    width: 48px;
}

.search_select_box .SumoSelect>.optWrapper>.options {
    max-height: 300px;
}

.search_select_box .SumoSelect>.optWrapper>.options li.group>label {
    padding: 14px 16px;
}

.search_select_box .SumoSelect>.optWrapper>.options li.opt {
    border: none;
    padding: 14px 24px;
    color: #5E5E5E;
}

.search_select_box .SumoSelect>.optWrapper>.options li.opt:hover {
    background-color: #F8F8F8;
}

.search_select_box .SumoSelect>.optWrapper.multiple>.options li ul li.opt {
    padding-left: 24px;
    padding-right: 50px;
}


.search_select_box .SumoSelect>.optWrapper.multiple>.options li.opt span {
    display: none;
}

.search_select_box .SumoSelect>.optWrapper>.options li.opt.selected {
    font-weight: 600;
    color: var(--sub-color);
}

.search_select_box .SumoSelect>.optWrapper.multiple>.options li.opt.selected::after {
    content: "";
    display: flex;
    width: 22px;
    aspect-ratio: 1/1;
    position: absolute;
    right: 24px;
    top: 15px;
    background: url("/static/app_www/base/img/icon_check_orange.png") left top / cover no-repeat;
}

/* 검색 필터  */
.class_filter_sect {
    padding: 16px 0 20px;
    border-top: 1px solid #EBEBEB;
}

.class_filter_sect .filter_list {
    display: flex;
    gap: 16px;
    align-items: center;
}

.class_filter_sect .filter_list .filter_item {
    padding: 10px 16px;
    display: flex;
    gap: 12px;
    align-items: center;
    font-size: 16px;
    /* font-weight: 500; */
    border: 1px solid #BBBBBB;
    border-radius: 50px;
    background-color: #fff;
    color: #5E5E5E;
}

.class_filter_sect .filter_list .filter_item .icon_wrap {
    display: flex;
    width: 16px;
    aspect-ratio: 1/1;
}

/* 클래스 리스트 영역 */
.class_list_sect {
    padding: 30px 0 70px;
}

.list_count {
    font-size: 18px;
    margin-bottom: 32px;
}

.list_count .color {
    color: var(--main-color);
}

.class_list {
    display: flex;
    gap: 30px 20px;
    flex-wrap: wrap;
}

.class_list>li {
    width: calc((100% - 60px)/4);
}

.class_item {
    color: #222222;
}

.class_item .img_wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 1/0.649;
    overflow: hidden;
    border-radius: 6px;
    margin-bottom: 10px;
    /* 임시값 */
    background-color: #E2E2E2;
}

.class_item .btn_favorite {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 28px;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 100px;
    box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.06);
}

.class_item .btn_favorite img {
    width: 20px;
    aspect-ratio: 1/1;
}

.class_item .btn_favorite .active,
.class_item .btn_favorite.active .default {
    display: none;
}

.class_item .btn_favorite.active .active,
.class_item .btn_favorite .default {
    display: block;
}

.class_item .title {
    margin-bottom: 4px;
    font-size: 16px;
    font-weight: 500;
}

.class_item .info_flex,
.class_item .class_tutor,
.class_item .price {
    display: flex;
    gap: 6px;
    align-items: center;
}

.class_item .info_flex.meta {
    font-size: 13px;
    margin-bottom: 6px;
    font-weight: 400;
}

.class_item .info_flex.details {
    font-size: 16px;
    font-weight: 500;
}

.class_item .review {
    display: flex;
    gap: 2px;
    align-items: center;
    font-weight: 500;
}

.class_item .review .icon_wrap {
    width: 16px;
    display: flex;
    aspect-ratio: 1/1;
    overflow: hidden;
}

.class_item .review .count {
    font-size: 12px;
    color: #5E5E5E;
}

.class_item .class_tutor::before {
    content: "";
    display: block;
    width: 2px;
    aspect-ratio: 1/1;
    background-color: #BBBBBB;
    border-radius: 50px;
}

.class_item .price {
    font-weight: 600;
}

.class_item .price::after {
    content: "";
    display: block;
    height: 10px;
    border-left: 1px solid #BBBBBB;
}

/* 클래스 아이템 - 횡 */
.class_item.flex {
    display: flex;
    gap: 16px;
    align-items: center;
}

.class_item.flex .img_wrap {
    flex-shrink: 0;
    width: 140px;
    margin-bottom: 0;
}

.class_item.flex .btn_favorite {
    top: 6px;
    right: 6px;
    width: 20px;
}

.class_item.flex .btn_favorite img {
    width: 14px;
}

.class_item.flex .info_flex.meta {
    font-size: 14px;
}

.class_item.flex .review .icon_wrap {
    width: 20px;
}

.class_item.flex .review .count {
    font-size: inherit;
}

@media screen and (max-width:1023px) {
    .class_search_sect {
        padding: 30px 0;
    }

    .class_search_sect .title_area {
        margin-bottom: 30px;
    }

    .class_search_sect .search_wrap {
        flex-wrap: wrap;
        gap: 20px;
    }

    .class_search_sect .search_wrap .input_flex_area {
        width: 100%;
    }

    .class_search_sect .search_select_box {
        width: 100%;
    }

    .class_list>li {
        width: calc((100% - 20px)/2);
    }
}

@media screen and (max-width:767px) {
    .class_search_sect .title_area .title {
        font-size: 20px;
    }

    .class_search_sect .btn_reset {
        padding: 8px 16px;
        font-size: 13px;
    }

    .class_search_sect .btn_reset .icon_wrap {
        width: 16px;
    }

    .class_list {
        gap: 24px;
    }

    .class_list>li {
        width: 100%;
    }

    .class_item .img_wrap {
        aspect-ratio: 1/0.56;
    }
}