.product-list-page { width: 100%; }
.top-banner { width: 100%; }
.banner-content { width: 100%; height: 240px; }
.banner-content img { width: 100%; height: 100%; object-fit: cover; object-position: left; }
.section-title { padding: 30px 0; text-align: center; }
.section-title h1 { font-size: 28px; font-weight: 600; line-height: 1; letter-spacing: -0.75px; color: #333; }

.product-list-page .quick-nav.market-sub-menu{padding: 30px 0;}
.product-list-page .market-sub-menu .quick_item.active .quick_img{border: 2px solid #23b16c; border-radius: 10px;}
.product-list-page .market-sub-menu .quick_item.active .quick_txt span{color: #23b16c; font-weight: 700;}

/* 데스크탑용 기존 탭 메뉴 */
.tab-menu { padding: 10px; }
.tab-menu .wraper .tab-list { display: grid; grid-template-columns: repeat(4, 180px); gap: 16px 83px; overflow: hidden; margin-top: 28px; padding: 30px 40px; border: 1px solid rgb(226, 226, 226); line-height: 20px; }
.tab-menu .wraper .tab-list .tab-item { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tab-menu .tab-link { color: #000000; text-decoration: none; transition: all 0.3s ease; font-size: 14px; line-height: 1; letter-spacing: -0.75px; font-weight: 400; }
.tab-menu .tab-link:hover,
.tab-menu .tab-link.active { color: #23B16C; font-weight: 600; }

/* 모바일 스타일 탭 메뉴 */
.mobile-tab-menu { display: none; background: #fff; border-bottom: 1px solid #eee; padding: 20px 10px 30px; }

/* 모바일 제품 리스트 기본 숨김 (미디어쿼리에서 재정의됨) */
.mobile-product-list { display: none; }
.mobile-tab-menu .tab-swiper { overflow: hidden; }
.mobile-tab-menu .tab-swiper .swiper-wrapper { display: flex; gap: 15px; }
.mobile-tab-menu .tab-swiper .swiper-slide { flex-shrink: 0; width: auto; }
.mobile-tab-menu .tab-link { text-decoration: none; color: #333; transition: all 0.3s ease; }
.mobile-tab-menu .tab-link.active .link-wrap p { color: #23B16C; font-weight: 700; }
.mobile-tab-menu .link-wrap { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.mobile-tab-menu .link-wrap .box { width: 65px; height: 65px; background-color: #F8F8F8; border-radius: 10px; display: flex; flex-direction: row; align-items: center; justify-content: center; transition: all 0.3s ease; }
.mobile-tab-menu .link-wrap .box:hover { background-color: #e9f5ee; }
.mobile-tab-menu .link-wrap p { font-size: 14px; font-weight: 500; color: #333; letter-spacing: -0.75px; text-align: center; transition: all 0.3s ease; }
.mobile-tab-menu .tab-link:hover .link-wrap p { color: #23B16C; font-weight: 600; }

/* 반응형 표시/숨김 클래스 */
.desktop-only { display: block; }
.mobile-only { display: none; }

/* 모바일 필터 섹션 스타일 */
.mobile-filter-section { display: none; }
/*.content-wrapper { display: grid; grid-template-columns: 100%; gap: 20px; padding: 0 10px; } */
.content-wrapper { width:100% }
.filter-item input[type="checkbox"]+label { gap: 10px; }
.filter-sidebar .filter-item .text { display: flex; flex-direction: row; align-items: center; gap: 5px; }
.side-filter-bar { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; position: sticky; width: 220px; flex-shrink: 0; height: 100%; max-height: calc(-120px + 100vh); top: 80px; margin-right: 10px; overflow: hidden scroll; scrollbar-width: none; }
.side-filter-bar .title { width: 100%; height: 52px; padding: 20px 0; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #eeee; }
.side-filter-bar .title h3 { font-size: 18px; font-weight: 700; color: #333; }
.side-filter-bar .title .reset-btn { display: flex; flex-direction: row; align-items: center; gap: 5px; padding: 0; background: none; border-radius: 0; }
.side-filter-bar .title .reset-btn .return-ico { min-width: 16px; height: 16px; background: url(../../images/icon/return-icon.svg) 50% 50% no-repeat; background-size: contain; }
.side-filter-bar .title .reset-btn p { color: #666; font-size: 15px; letter-spacing: -0.75px; line-height: 1; }
.side-filter-bar .filter-inner { width: 100%; }
.side-filter-bar .filter-inner .inner { width: 100%; display: flex; flex-direction: column; }
.filter-section-wrap { width: 100%; display: flex; flex-direction: column; }
.filter-section { width: 100%; display: flex; flex-direction: column; align-items: flex-start; border-bottom: 1px solid #eee; }
.filter-toggle { width: 100%; height: 50px; display: flex; flex-direction: row; justify-content: space-between; align-items: center; }
.filter-toggle .filter-header p { font-size: 16px; font-weight: 500; letter-spacing: -0.5px; color: #000; line-height: 1; }

.filter-toggle .arrow-icon { min-width: 16px; height: 16px; background: url(../../images/icon/arrow-up-icon.svg) 50% 50% no-repeat; background-size: contain; transition: transform 0.3s ease; }

.side-filter-bar .filter-inner .subscription-filter { display: flex; width: 100%; height: 50px; flex-direction: row; align-items: center; border-bottom: 1px solid #eeeeee; }
.side-filter-bar .filter-inner .subscription-filter .filter-item .text { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 5px; }
.side-filter-bar .filter-inner .subscription-filter .filter-item .text p { color: #23B16C; font-size: 15px; letter-spacing: -0.75px; font-weight: 500; }
.side-filter-bar .filter-inner .subscription-filter .filter-item .text span { color: #DADADA; }
.filter-content { width: 100%; display: flex; flex-direction: column; gap: 10px; padding: 0 0 10px; overflow: hidden; visibility: visible; transition: all 0.3s ease; max-height: 1000px; opacity: 1; transition: all 0.3s; }

.filter-content.closed { max-height: 0; opacity: 0; visibility: hidden; padding-bottom: 0; }
.filter-list { width: 100%; display: flex; flex-direction: column; gap: 16px; }
.filter-list .item .row { width: 100%; display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 10px; }
.filter-list .item .row .text { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 5px; }
.filter-list .item .row .text p { font-size: 15px; line-height: 1; letter-spacing: -0.75px; color: #4A4A4A; }
.filter-list .item .row .text .count { font-size: 14px; font-weight: 500; line-height: 1; color: #DADADA; }

.more-btn { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 5px; }
.more-btn p { font-size: 15px; letter-spacing: -.75px; color: #7D7D7D; font-weight: 500; }

.more-btn i { min-width: 16px; height: 16px; background: url(../../images/icon/arrow-next-icon.svg) 50% 50% no-repeat; background-size: contain; }

.sort-wrap { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.sort-wrap .sort-options { width: 100%; display: flex; flex-direction: row; justify-content: flex-start; align-items: center; gap: 10px; }
.sort-wrap .sort-options .sort-btn { font-size: 15px; letter-spacing: -0.75px; font-weight: 500; line-height: 1; color: #333; transition: all 0.3s; }
.sort-wrap .sort-options .sort-btn.active { color: #23B16C; font-weight: 600; }


.alphabet-filter { display: flex; flex-wrap: wrap; margin-bottom: 12px; gap: 4px 2.5px; }
.alphabet-filter li .alphabet-btn { display: flex; padding: 5px 7px; border-radius: 2px; font-size: 13px; background-color: rgb(247, 247, 247); font-weight: 400; line-height: 1; color: rgb(181, 181, 181); transition: all 0.3s; flex-direction: row; align-items: center; justify-content: center; }
.alphabet-filter li .alphabet-btn.active { background-color: #000000; color: #ffffff; font-weight: 500; }

/* 제품리스트 */
.product-grid-section { width: 100%; display: flex; flex-direction: column; gap: 10px; }
.product-grid-section .no-product { padding: 100px 0; text-align: center; width: 100%; }
.product-grid-section .no-product p { font-size: 16px; color: #888; font-weight: 500; }
.title-wrap { display: flex; flex-direction: row; justify-content: space-between; align-items: center; margin-top: 24px; }
.title-wrap .titl p { font-size: 14px; font-weight: 400; letter-spacing: -0.75px; color: #333; line-height: 1; }
.title-wrap .sort-section { display: flex; flex-direction: row; justify-content: flex-end; align-items: center; }
.title-wrap .sort-section .sort-options { display: flex; flex-direction: row; align-items: center; gap: 10px; }
.title-wrap .sort-section .sort-options .sort-btn { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 10px; font-size: 14px; letter-spacing: -0.75px; line-height: 1; color: #B5B5B6; }
.title-wrap .sort-section .sort-options .sort-btn { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 10px; font-size: 14px; letter-spacing: -0.75px; line-height: 1; color: #B5B5B6; transition: all 0.3s; }
.title-wrap .sort-section .sort-options .sort-btn.active { color: #000; font-weight: 600; }
.title-wrap .sort-section .sort-options .sort-btn+.sort-btn::before { content: ''; width: 1px; height: 14px; background-color: #B5B5B6; display: block; }

.product-grid { display: flex; flex-wrap: wrap; gap: 40px; width: 100%; } 
.product-grid .thumb { max-width: 380px; width: 100%; max-height: 250px; border-radius: 5px; position: relative; overflow: hidden; }
.top-pin-badge { position: absolute; top: 6px; right: 6px; width: 28px; height: 28px; z-index: 10; }
.top-pin-badge img { width: 100%; height: 100%; object-fit: contain; }
.product-grid .thumb img { width: 100%; height: 100%; object-fit: cover; } 
.product-card .product-card-link { display: flex; flex-direction: column; gap: 12px; } 
.product-card .product-card-link .info { width: 100%; display: flex; flex-direction: column; gap: 8px; } 
.product-card .product-card-link .info h3 { font-size: 17px;font-weight: 400; word-break: break-word; letter-spacing: -0.75px; color: #333333; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;  line-clamp: 2;  overflow: hidden; text-overflow: ellipsis; word-break: break-word;}
.product-card .product-card-link .price { font-size: 16px; color: #333333; font-weight: 700; line-height: 1; } 
.product-card .product-card-link .price-box { width: 100%; display: flex; flex-direction: column; align-items: flex-start; }
.product-card .product-card-link .price-box p { line-height: 1; }
.product-card .product-card-link .price-box .price-origin,
.product-card .product-card-link .price-box .original-price { font-size: 13px; font-weight: 400; color: #909090; text-decoration: line-through; margin-bottom: 2px; }
.product-rating-wrap { display: flex; flex-direction: row; gap: 5px; align-items: center; } 
.product-rating-wrap .rating-icon { display: flex; align-items: center; gap: 2px; }
.product-rating-wrap .rating-icon i { color: #23B16C; font-size: 16px; } 
.product-rating-wrap .rating-score { font-size: 13px; color: #666666; font-weight: 500; } 
.product-rating-wrap .review-count { font-size: 13px; color: #666666; font-weight: 500; } 
.filter-bottom-sheet { display:none; position:fixed; top:0; left:0; right:0; bottom:0; z-index:9999; opacity:0; visibility:hidden; transition:all .3s ease } 


.bottom-sheet-overlay { position:absolute; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,.5) }
.bottom-sheet-content { position:absolute; bottom:0; left:0; right:0; background:#fff; border-radius:20px 20px 0 0; max-height:80vh; transform:translateY(100%); transition:transform .3s ease; display:flex; flex-direction:column }
.filter-bottom-sheet.active { display:block!important; opacity:1; visibility:visible }
.filter-bottom-sheet.active .bottom-sheet-content { transform:translateY(0); height:100% }
.bottom-sheet-header { display:flex; align-items:center; justify-content:space-between; padding:16px 20px; position:relative }
.handle-bar { position:absolute; top:8px; left:50%; transform:translateX(-50%); width:40px; height:4px; background:#ddd; border-radius:2px }
.bottom-sheet-title { font-size:18px; font-weight:600; color:#333; margin:0 }
.close-btn { background:none; border:none; font-size:20px; color:#666; cursor:pointer; padding:4px }

/* 필터 탭 */
.filter-tabs-swiper { border-bottom:1px solid #f0f0f0 }
.filter-tabs-swiper-container { overflow:visible }
.filter-tabs-swiper-container .swiper-wrapper { display:flex; padding:0 20px; gap:0 }
.filter-tabs-swiper-container .swiper-slide { flex-shrink:0; width:auto }
.filter-tabs-swiper-container .swiper-wrapper .swiper-slide { width:fit-content }
.filter-tab { padding:16px 12px; font-size:16px; letter-spacing: -0.75px; color:#666; cursor:pointer; border-bottom:2px solid transparent; white-space:nowrap; transition:all .3s ease }
.filter-tab.active { color:#23B16C; border-bottom-color:#23B16C; font-weight:600 }
.filter-content { flex:1; overflow-y:auto }
.filter-panel { display:none }
.filter-panel.active { display:block }
.filter-list { list-style:none; margin:0; width:100%; display:flex; flex-direction:column; gap:16px }
.filter-list .item .row { width:100%; display:flex; flex-direction:row; justify-content:flex-start; align-items:center; gap:10px }
.filter-list .item .row .text { display:flex; flex-direction:row; justify-content:flex-start; align-items:center; gap:5px }
.filter-list .item .row .text p { font-size:14px; line-height:1; letter-spacing:-0.75px; color:#4a4a4a }
.filter-list .item .row .text .count { font-size:13px; font-weight:500; line-height:1; color:#dadada }
.checkcircle .text { display:flex; align-items:center; justify-content:space-between; width:100% }
.checkcircle .text p { font-size:14px; color:#333; margin:0 }
.checkcircle .text .count { font-size:12px; color:#999 }
.sort-options { display:flex; gap:8px }
.sort-btn { color:#666; font-size:14px; letter-spacing:-0.75px; cursor:pointer; transition:all .3s ease }
.sort-btn.active { color:#23b16c; font-weight:700 }
.alphabet-index-swiper { margin:16px 0 }
.alphabet-swiper { overflow:hidden; padding:0 20px }
.alphabet-swiper .swiper-wrapper { display:flex;}
.alphabet-swiper .swiper-slide { flex-shrink:0; width:auto; display:flex; justify-content:center; align-items:center }
.index-btn { width:32px; height:32px; border:1px solid #ddd; background:#fff; color:#666; font-size:12px; border-radius:50%; cursor:pointer; transition:all .3s ease; display:flex; align-items:center; justify-content:center }
.index-btn:hover { background:#f8f8f8; border-color:#000 }
.index-btn.active { background:#000; color:#fff; border-color:#000 }
.bottom-sheet-footer { padding:20px; border-top:1px solid #f0f0f0; background:#fff }
.applied-filters-swiper { margin-bottom:16px }
.applied-filters-swiper-container { overflow:visible }
.applied-filters-swiper-container .swiper-wrapper { display:flex; gap:8px }
.applied-filters-swiper-container .swiper-slide { flex-shrink:0; width:auto }
.filter-tag { display:flex; align-items:center; gap:5px }
.filter-tag span { color:#23b16c; font-size:13px; letter-spacing:-0.75px; line-height:1 }
.remove-filter { background:none; border:0; cursor:pointer; padding:0; display:flex; align-items:center; justify-content:center }
.remove-filter i { font-size:16px; font-weight:400; color:#909090 }
.footer-actions { display:flex; gap:12px; align-items:center }
.reset-btn { height:50px; display:flex; align-items:center; gap:6px; padding:12px 16px; background:#f8f8f8; border:none; border-radius:8px; color:#666; font-size:14px; cursor:pointer }
.apply-btn { height:50px; flex:1; padding:12px 20px; background:#23b16c; color:#fff; border:none; border-radius:8px; font-size:14px; font-weight:600; cursor:pointer }

/* 모바일 제품 리스트 스타일 */
.mobile-product-item .product-link { display:flex; gap:15px; text-decoration:none; color:inherit; flex-direction:row; align-items:center }
.mobile-product-item .product-image { position:relative; max-width:195px; width:100%; height:195px; flex-shrink:0; border-radius:8px; overflow:hidden; background:#f5f5f5 }
.mobile-product-item .product-image img { width:100%; height:100%; object-fit:cover }
.mobile-product-item .product-info { flex:1; display:flex; flex-direction:column; justify-content:space-between; min-width:0; gap:8px }
.mobile-product-item .product-name { font-size:14px; font-weight:400; color:#333; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; line-clamp:2; -webkit-box-orient:vertical; overflow:hidden }
.mobile-product-item .product-price { font-size:16px; font-weight:700; color:#333;  }
.mobile-product-item .product-rating { display:flex; align-items:center; gap:4px }
.mobile-product-item .rating-icon { display:flex; align-items:center; gap:2px }
.mobile-product-item .rating-icon i { color:#23B16C; font-size:12px }
.mobile-product-item .rating-score { font-size:12px; color:#666; font-weight:500 }
.mobile-product-item .review-count { font-size:12px; color:#999 }

/* 라디오 버튼 스타일 */
.radiocircle { display:flex; align-items:center; cursor:pointer; width:100% }
.radiocircle .text { display:flex; align-items:center; justify-content:space-between; width:100% }
.radiocircle .text p { font-size:14px; color:#333; margin:0 }
.radiocircle .text .count { font-size:12px; color:#999 }
input[type="radio"]+label.radiocircle::before { min-width:18px; max-width:18px; height:18px }
input[type="radio"]:checked+label.radiocircle::before { filter:brightness(1.25); min-width:18px; max-width:18px; height:18px }

/* 바텀시트 열릴 때 body 스크롤 방지 */
body.filter-bottom-sheet-open { overflow: hidden !important; position: fixed; width: 100%; }


@media only screen and (max-width: 1050px) {
 .banner-content img { object-fit: cover; object-position: left; }
 /* 컨텐츠 래퍼를 세로 배치로 변경 */
 .content-wrapper { grid-template-columns: 1fr; gap: 20px; padding: 0; }

 /* 필터 사이드바 숨김 */
 .side-filter-bar { display: none; }

 /* 제품 그리드 반응형 조정 */
 .product-grid {  gap: 20px; }
 .product-grid .product-card{width: calc((100% / 4) - 15px);}
 /* 제품 카드 썸네일 크기 조정 */
 .product-grid .thumb { max-width: 100%; height: 200px; }

 /* 탭 메뉴 반응형 조정 */
 .tab-menu .wraper .tab-list { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 10px; padding: 20px; }
 .tab-menu .wraper .tab-list .tab-item { margin: 0 auto; }
 .product-grid-section{padding: 0 10px;}
}



/* 웹사이즈에서는 바텀시트를 아예 표시하지 않음 (우선순위 높임) */
@media only screen and (max-width: 768px) {
 .main-content { padding: 0 0 100px; }
 .product-list-page .main-content{padding-left: 10px; padding-right: 10px;}
 .desktop-only { display: none; }
 .mobile-only { display: block; }
 /* 모바일 상품목록페이지 전체 스타일 */
 .mobile-product-list-page { width: 100%; display: flex; flex-direction: column; padding: 30px 0 100px; /* 하단 네비게이션 공간 확보 */ }
 /* 상단 배너 */
 .mobile-banner { width: 100%; height: 120px; overflow: hidden; }
 .mobile-banner .banner-content { width: 100%; height: 100%; }
 .mobile-banner .banner-content img { width: 100%; height: 100%; object-fit: cover; }

 /* 섹션 타이틀 */
 .mobile-section-title { padding: 20px 16px; text-align: center; background: #fff; }
 .mobile-section-title h1 { font-size: 20px; font-weight: 600; color: #333; line-height: 1.2; }

 /* 모바일 탭 메뉴 (퀵 메뉴 스타일 사용) */
 .mobile-only .quick-nav { display:block; background:#fff; border-bottom:1px solid #eee; padding:20px 0 }
 .mobile-only .quick-nav .quick_list { padding-left:10px }
 /* 카테고리 모드에서는 active 상태 없음 */
 .mobile-only .quick-nav .quick_list .quick_item .clickable.tab-link.active .quick_img { transform:scale(1.1) }


 /* 카테고리 모드에서 퀵메뉴 스타일 - 탭이 아닌 일반 퀵메뉴로 표시 */
 .mobile-only .quick-nav .quick_list .quick_item .clickable:not(.tab-link) .quick_img { transition: transform 0.3s ease; }
 .product-list-page .quick-nav.mobile-only { padding-top:12px }
 .product-list-page .quick-nav.mobile-only .quick_list .swiper .swiper-wrapper { width: 100%; display: flex; flex-direction: row; align-items: flex-start; justify-content: flex-start; gap: 20px; }

 .product-list-page .quick-nav.mobile-only .quick_list .swiper .swiper-wrapper .swiper-slide { display: flex; max-width: 125px; width: 100%; min-width: 0; }
 .product-list-page .quick-nav.mobile-only .quick_list .quick_item .clickable { flex-direction: column; display: flex; }
 .product-list-page .quick-nav.mobile-only .quick_list .quick_item .quick_img { max-width: 125px; min-width: 55px; width: 100%; max-height: 125px; min-height: 55px; height: 100%; transition: all 0.3s; }
 .product-list-page .quick-nav.mobile-only .quick_list .quick_item .quick_img img { width: 100%; height: 100%; border-radius: 10px; }
 .product-list-page .quick-nav.mobile-only .quick_list .quick_item .quick_txt { padding-top: 10px; display: flex; flex-direction: row; align-items: center; justify-content: center; }
 .product-list-page .quick-nav.mobile-only .quick_list .quick_item .quick_txt span { font-size: 0.81rem; letter-spacing: -.75px; font-weight: 500; text-align: center; color: #333; transition: .3s; }

 /* 모바일에서 제품 리스트 표시 */
 .mobile-product-list { display: flex; flex-direction: column; gap: 20px; padding: 0 20px; }

 /* 모바일에서 데스크탑 제품 그리드를 모바일 리스트로 변경 */
 .product-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
 }

 /*.product-grid .product-card {*/
 /*    border-bottom: 1px solid #f0f0f0;*/
 /*}*/
 .product-grid .product-card{ display: flex;  flex-direction: column;  align-items: flex-start;   flex: 1;  width: 100%;  gap: 15px;   max-width: none; }

 .product-grid .product-card .product-card-link {
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
  padding: 15px 0;
 }

 .product-grid .product-card .thumb {
  width: 100px;
  height: 100px;
  max-width: 100px;
  flex-shrink: 0;
 }

 .product-grid .product-card .info {
  flex: 1;
  gap: 8px;
  padding-top: 5px;
 }

 /* 모바일 필터 섹션 */
 .mobile-filter-section { display:block; background:#fff; border-bottom: 1px solid #eee; }
 .mobile-filter-section .filter-row { display:flex; justify-content:space-between; align-items:center; padding:20px; }
 .mobile-filter-section .product-count { font-size:14px; color:#333; font-weight:500 }

 /* 필터 버튼들 스타일 개선 */
 .filter-buttons-swiper { padding-bottom: 15px; }
 .sort-section { position:relative; cursor:pointer; display:flex; flex-direction:row; align-items:center; gap:5px }
 .sort-section .sort-text { font-size:14px; letter-spacing:-0.75px; line-height:1; color:#333 }
 .sort-section .sort-arrow { transition:transform .3s ease; color:#333; font-size:14px }
 .sort-section.active .sort-arrow { transform:rotate(180deg) }
 .mobile-filter-section .sort-dropdown { position:absolute; top:150%; right:0; background:#fff; border-radius:8px; box-shadow:0 4px 12px rgba(0,0,0,.15); z-index:1000; min-width:100px; opacity:0; visibility:hidden; transform:translateY(-10px); transition:all .3s ease; display:none; }
 .mobile-filter-section .sort-section.active .sort-dropdown,
 .mobile-filter-section .sort-dropdown.show { opacity:1; visibility:visible; transform:translateY(0); display:block; }
 .sort-wrap{padding: 0 20px;}
 .sort-option { display:flex; align-items:center; justify-content:space-between; padding:10px; cursor:pointer; transition:background-color .2s ease }
 .sort-option span { font-size:14px; letter-spacing:-0.75px; line-height:1 }
 .sort-option:hover { background:#f8f8f8 }
 .sort-option.active { color:#23B16C; font-weight:600 }
 .alphabet-index-swiper{padding-left: 20px;}
 .filter-buttons-swiper { overflow:hidden }
 .filter-swiper { overflow:hidden }
 .filter-swiper .swiper-wrapper { display:flex; gap:8px; padding:0 20px }
 .filter-swiper .swiper-slide { flex-shrink:0; width:auto; display:flex; justify-content:center; align-items:center; margin-right: 0!important }
 .mobile-filter-section .filter-btn { padding:8px 12px; border:1px solid #ddd; border-radius:100px; background:#fff; color:#666; font-size:14px; cursor:pointer; transition:all .3s ease; display:flex; flex-direction:row; align-items:center; justify-content:center; gap:10px; height:36px; letter-spacing:-0.75px; font-weight:500 }
 .mobile-filter-section .filter-btn i { font-size:14px }
 .mobile-filter-section .filter-btn:hover { border-color:#23B16C; color:#23B16C }
 .filter-content{padding: 20px 0;}
 .filter-panel.active .filter-item { width: 100%; display: flex; flex-direction: row; justify-content: flex-start; align-items: center; }
 .checkcircle .text { gap: 10px; }
 .subscription-filter,.filter-list{padding: 0 20px;}
 /* 필터 바텀시트 */
 .filter-bottom-sheet { display:block!important; position:fixed; top:0; left:0; right:0; bottom:0; z-index:9999; opacity:0; visibility:hidden; transition:all .3s ease }
 .filter-bottom-sheet.active { display:block!important; opacity:1; visibility:visible }

 .index-btn.active{background: #000; border-color: #000;}
 .product-grid-section{padding: 0;}
}


/* 바텀시트 */
@media only screen and (min-width: 768px) {
 .filter-bottom-sheet,
 .filter-bottom-sheet.active {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
 }

 /* 웹사이즈에서는 body 스크롤 방지 해제 */
 body.filter-bottom-sheet-open { overflow: auto !important; position: static; }

 /* CSS 로딩 테스트 - 웹사이즈에서 body에 배경색 추가 (임시) */
 body.css-test-loaded {
  border-top: 3px solid #22b573 !important;
 }
}



/* 추가 반응형 조정 */
@media only screen and (max-width: 480px) {
 .mobile-product-item .product-image { width:70px; height:70px; }
 .mobile-product-item .product-name { font-size:13px; }
 .mobile-product-item .product-price { font-size:15px; }

 /* 모바일 퀵메뉴 반응형 */
 .mobile-only .quick-nav .quick_list .quick_item .quick_txt span { font-size:0.81rem; }
 .mobile-only .quick-nav .quick_list .swiper .swiper-wrapper .swiper-slide { flex:1 1 33.3333%; max-width:33.3333%; width:33.3333%; min-width:0; }
}
@media only screen and (max-width: 360px) {
 .mobile-only .quick-nav .quick_list .quick_item .quick_txt span { font-size:0.7rem; }
 .mobile-only .quick-nav .quick_list .swiper .swiper-wrapper .swiper-slide { flex:1 1 50%; max-width:none; width:50%; min-width:0; }
}
