@charset "utf-8";

.header-top-logo img {width:138px;}

/*  최상단 라인 메뉴 */
.header-top-line {width:100%;height:40px;background:#121212;font-size:13px;}
.header-top-line .inner {width:100%;margin:0 auto;display:flex;align-items: center;justify-content: space-between;box-sizing: border-box;max-width:1280px;padding:0px !important;}
.header-top-line .inner .header-top-menu {align-items: center;display:flex;height:40px;justify-content: center;gap:20px;}
.header-top-line .inner .header-top-menu li a {color:#ddd;}
.header-top-line .inner .header-top-account li a {color:#ddd;}
.header-top-line .inner .header-top-account {align-items: center;display:flex;height:40px;justify-content: center;gap:20px;}
@media screen and (max-width: 1300px) {.header-top-line .inner {padding:0 15px !important;}}
/*  상단 메뉴 */
.header-top {width: 100%;background: #fff;}
.header-top a {text-decoration: none;color: inherit;}
.header-top ul {list-style: none;margin: 0;padding: 0;}
.header-top button {border: none;background: none;cursor: pointer;padding: 0;}
.header-top-inner {margin: 0 auto;padding-top:20px;padding-bottom:20px;display: flex;align-items: center;gap: 30px;}
/* Logo */
.header-top-logo a {display: flex;flex-direction: column;gap: 2px;}
.header-top-logo .logo-main {font-size: 28px;font-weight:800;color: #333;}
.header-top-logo .logo-mall {color: #4B99FF;font-weight:800;}
.header-top-logo .logo-sub {font-size: 13px;color: #676767;letter-spacing: -0.3px;}
/* Search */
.header-top-search {flex: 1;max-width: 500px;position: relative;}
.header-top-search input {width: 100%;height: 48px;padding: 0 50px 0 20px;border-radius: 24px;font-size: 14px;outline: none;background:#f9f9f9;border:solid 1px #f7f7f7;cursor: pointer;}
.header-top-search input::placeholder {color: #999;}
.header-top-search .search-btn {position: absolute;right: 10px;top: 50%;transform: translateY(-50%);width: 36px;height: 36px;display: flex;align-items: center;justify-content: center;color: #666;font-size: 18px;z-index: 2;}
/* Search Popup */
.search-popup {position: absolute;top:80%;left:200px;z-index: 10000;display: none;width:620px;}
.search-popup.active {display: block;overflow-y:auto;}
.search-popup .close-popup {position:absolute;right:20px;top:12px;font-size:30px;}
.search-popup-content {background: #fff;border-radius: 16px;padding: 30px 30px 80px 30px;overflow: visible;border: 1px solid #e5e5e5;position: relative;display: flex;flex-direction: column;}
.search-popup-header {display: none;align-items: center;gap: 12px;padding-bottom: 20px;margin-bottom: 20px;border-bottom: 1px solid #e5e5e5;}
.search-popup-header .back-btn,.search-popup-header .cart-btn {width: 40px;height: 40px;display: flex;align-items: center;justify-content: center;background: none;border: none;color: #333;font-size: 20px;cursor: pointer;flex-shrink: 0;}
.search-popup-header .back-btn:hover,.search-popup-header .cart-btn:hover {color: #4B99FF;}
.search-popup-header .popup-search-input {flex: 1;position: relative;}
.search-popup-header .popup-search-input input {width: 100%;height: 44px;padding: 0 45px 0 16px;border-radius: 22px;font-size: 14px;outline: none;background: #f9f9f9;border: solid 1px #e5e5e5;}
.search-popup-header .popup-search-input input::placeholder {color: #999;}
.search-popup-header .popup-search-btn {position: absolute;right: 8px;top: 50%;transform: translateY(-50%);width: 32px;height: 32px;display: flex;align-items: center;justify-content: center;background: none;border: none;color: #666;font-size: 16px;cursor: pointer;}
.search-section {margin-bottom: 20px;flex-shrink: 0;}
.section-header {display: flex;align-items: center;justify-content: space-between;flex-wrap:nowrap;gap:10px;}
.section-title {font-size: 16px;font-weight: 700;color: #333;margin: 0 0 8px 0;white-space:nowrap;flex-shrink:0;}
.update-time {font-size: 13px;color: #999;white-space:nowrap;flex-shrink:0;}
.update-time i {margin-right:3px;}
.period-info {font-size: 13px;color: #999;white-space:nowrap;flex-shrink:0;}
.period-info i {margin-right:3px;}
.search-tags {display: flex;gap: 8px;flex-wrap:wrap;padding-bottom: 5px;}
/* 스크롤바 스타일 수정 */
.search-tags::-webkit-scrollbar {
    height: 2px !important;
}

.search-tags::-webkit-scrollbar-track {
    background: transparent !important;
    border-radius: 1px !important;
}

.search-tags::-webkit-scrollbar-thumb {
    background: #e0e0e0 !important;
    border-radius: 1px !important;
}

.search-tags::-webkit-scrollbar-thumb:hover {
    background: #ccc !important;
}
.tag-item {padding: 8px 16px;background: #f5f5f5;border-radius: 20px;font-size: 14px;color: #666;text-decoration: none;transition: all 0.2s;flex-shrink: 0;}
.tag-item:hover {background: #4B99FF;color: #fff;}
.clear-all {font-size: 13px;color: #999;background: none;border: none;cursor: pointer;padding: 0;}
.clear-all i {margin-right:3px;}
.clear-all:hover {color: #333;}
.recent-keywords {display: flex;gap: 8px;flex-wrap:wrap;padding-bottom: 5px;}
.recent-keywords::-webkit-scrollbar {
    height: 2px !important;
}

.recent-keywords::-webkit-scrollbar-track {
    background: transparent !important;
    border-radius: 1px !important;
}

.recent-keywords::-webkit-scrollbar-thumb {
    background: #e0e0e0 !important;
    border-radius: 1px !important;
}

.recent-keywords::-webkit-scrollbar-thumb:hover {
    background: #ccc !important;
}

.keyword-tag {display: flex;align-items: center;gap: 6px;padding: 8px 12px;background: #fff;border: 1px solid #e5e5e5;border-radius: 20px;font-size: 14px;color: #333;flex-shrink: 0;}
.keyword-tag .remove-btn {background: none;border: none;color: #999;font-size: 18px;cursor: pointer;padding: 0;line-height: 1;}
.keyword-tag .remove-btn:hover {color: #333;}
.realtime-keywords {display: flex;flex-direction: column;gap:8px;}
.keyword-row {display: grid;grid-template-columns: repeat(2, 1fr);gap: 20px;}
.keyword-item {display: flex;align-items: center;gap: 10px;padding:2px 0;min-width:0;overflow:hidden;}
.keyword-item .rank {font-size: 14px;font-weight:700;min-width: 20px;color:#111;flex-shrink:0;}
.keyword-item a {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1;}
.keyword-item .text {font-size: 14px;color: #333;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.keyword-item i {margin-left:auto;flex-shrink:0;}
.rank-up {color: #ff4444;font-size: 12px;}
.rank-down {color: #4444ff;font-size: 12px;}
.rank-same {color: #aaa;font-size: 12px;margin-left:auto;flex-shrink:0;}
.best-products {display: grid;grid-template-columns: repeat(2, 1fr);gap:0px 20px;}
.product-item {display: flex;align-items: center;gap: 10px;padding: 6px 0;min-width:0;overflow:hidden;}
.product-item .rank {font-size: 14px;font-weight:700;color: #111;min-width: 20px;flex-shrink: 0;}
.product-item .text {font-size: 13px;color: #666;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;flex: 1;min-width:0;}
.product-item .text a {color: #666;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.search-footer {display: flex;align-items: center;justify-content: space-between;padding: 15px 30px;border-top: 1px solid #e5e5e5;background: #fff;position: absolute;bottom: 0;left: 0;right: 0;border-radius: 0 0 16px 16px;}
.toggle-label {display: flex;align-items: center;gap: 10px;font-size: 14px;color: #666;cursor: pointer;}
.toggle-label input[type="checkbox"] {display: none;}
.toggle-switch {width: 44px;height: 24px;background: #ddd;border-radius: 12px;position: relative;transition: background 0.3s;}
.toggle-switch::after {content: '';position: absolute;width: 20px;height: 20px;background: #fff;border-radius: 50%;top: 2px;left: 2px;transition: left 0.3s;}
.toggle-label input[type="checkbox"]:checked + .toggle-switch {background: #FF6B35;}
.toggle-label input[type="checkbox"]:checked + .toggle-switch::after {left: 22px;}
.close-popup {padding: 8px 20px;background: #f5f5f5;border: none;border-radius: 20px;font-size: 14px;color: #666;cursor: pointer;transition: all 0.2s;}
.close-popup:hover {color: #111;}
.search-tags::-webkit-scrollbar,.recent-keywords::-webkit-scrollbar {height: 2px;}
.search-tags::-webkit-scrollbar-track,.recent-keywords::-webkit-scrollbar-track {background: transparent;border-radius: 1px;}
.search-tags::-webkit-scrollbar-thumb,.recent-keywords::-webkit-scrollbar-thumb {background: #e0e0e0;border-radius: 1px;}
.search-tags::-webkit-scrollbar-thumb:hover,.recent-keywords::-webkit-scrollbar-thumb:hover {background: #ccc;}
/* Ranking */
.header-top-ranking {display: flex;align-items: center;gap: 10px;padding: 8px 12px;background: #fff;border-radius: 20px;min-width: 160px;height: 48px;}
.header-top-ranking .ranking-number {font-size: 13px;font-weight: 700;color: #232323;flex-shrink: 0;min-width: 24px;text-align: center;line-height:26px;height:26px;}
.header-top-ranking .ranking-keyword {flex: 1;overflow: hidden;position: relative;height: 26px;line-height:23px;}
.header-top-ranking .keyword-item {position: absolute;left: 0;top: 0;width: 100%;display: flex;align-items: center;gap: 6px;opacity: 0;transform: translateY(30px);transition: all 0.5s ease;text-decoration: none;color: inherit;width:120px;}
.header-top-ranking .keyword-item.active {opacity: 1;transform: translateY(0);}
.header-top-ranking .keyword-item:hover .keyword-text {color: #4B99FF;}
.header-top-ranking .keyword-text {font-size: 14px;color: #333;font-weight: 500;transition: color 0.2s;}
.header-top-ranking .rank-arrow {font-size: 10px;flex-shrink: 0;}
.header-top-ranking .rank-arrow.up {color: #c33636;margin-left:auto;}
.header-top-ranking .rank-arrow.down {color: #3b3bdd;margin-left:auto;}
.header-top-ranking .rank-arrow.same {color: #aaa;margin-left:auto;}
/* Icons */
.header-top-icons {display: flex;align-items: center;gap: 12px;margin-left: auto;}
.header-top-icons .icon-link {width: 40px;height: 40px;display: flex;align-items: center;justify-content: center;color: #3A3A3A;transition: color 0.2s;font-size: 28px;}
.header-top-icons .icon-link:hover {color: #4B99FF;}
.header-top-icons .cart-link {position: relative;}
.header-top-icons .cart-badge {position: absolute;top: -2px;right: -2px;background: #4B99FF;color: #fff;font-size: 11px;font-weight: 700;width: 18px;height: 18px;border-radius: 50%;display: flex;align-items: center;justify-content: center;}
/* Navigation */
.header-top-nav {width: 100%;background: #fff;transition: all 0.3s ease;z-index:100;}
.header-top-nav .nav-inner {margin: 0 auto;display: flex;align-items: center;gap: 0;height: 60px;}
.header-top-nav .nav-hamburger {width: 40px;height: 40px;border-radius: 50%;background: #4B99FF;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 5px;padding: 0;flex-shrink: 0;transition: background 0.2s;margin-right: 20px;cursor:pointer;}
.header-top-nav .nav-hamburger:hover {background: #1d70dd;}
.header-top-nav .nav-hamburger span {width: 20px;height: 2px;background: #fff;border-radius: 2px;transition: all 0.3s;}
.header-top-nav .menu-toggle {width: 32px;height: 32px;display: none;flex-direction: column;justify-content: center;gap: 6px;padding: 4px;}
.header-top-nav .menu-toggle span {width: 100%;height: 2px;background: #333;border-radius: 2px;}
.header-top-nav .nav-menu {display: flex;align-items: center;gap: 40px;}
.header-top-nav .nav-menu-right {display: flex;align-items: center;gap: 30px;margin-left: auto;}
.header-top-nav .nav-menu li,.header-top-nav .nav-menu-right li {position: relative;}
.header-top-nav .nav-menu a,.header-top-nav .nav-menu-right a {font-size: 16px;font-weight:700;color: #131313;padding: 12px 0;display: block;transition: color 0.2s;}
.header-top-nav .nav-menu a:hover,.header-top-nav .nav-menu-right a:hover {color: #4B99FF;}
.header-top-nav .nav-menu a.active {color: #4B99FF;font-weight: 700;}
.header-top-nav .nav-menu a.active::after {content: '';position: absolute;bottom: 0;left: 0;right: 0;height: 3px;background: #4B99FF;border-radius: 2px 2px 0 0;}

/* mobile category 고정 스타일 */
.mobile_category {
    transition: all 0.3s ease;
    z-index: 999;
}

.mobile_category.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    animation: slideDown 0.3s ease;
    margin-top:0px;
    z-index:99;
}

.header-top-nav.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: #f9f9f9; /* 원래 배경색 */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    animation: slideDown 0.3s ease;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

body.has-fixed-header {
    padding-top: 60px; /* header-top-nav 높이만큼 */
}


/* Responsive */
@media screen and (max-width: 1200px) {
    .header-top-inner {padding: 15px 20px;gap: 20px;}
    .header-top-nav .nav-inner {padding: 0 20px;}
    .header-top-nav .nav-menu {gap: 30px;}
    .header-top-nav .nav-menu-right {gap: 20px;}
    .header-top-ranking {min-width: 150px;}
}
@media screen and (max-width: 992px) {
    .header-top-search {max-width: 350px;}
    .header-top-ranking {display: none;}
    .header-top-nav .nav-menu {gap: 20px;}
    .header-top-nav .nav-menu a,.header-top-nav .nav-menu-right a {font-size: 15px;}
}

@media screen and (max-width: 700px) {
    .header-top-inner {flex-wrap: wrap;}
    .header-top-search {order: 3;flex: 1 1 100%;max-width: 100%;margin-top: 10px;}
    .header-top-nav .menu-toggle {display: flex;}
    .header-top-nav .nav-menu,.header-top-nav .nav-menu-right {display: none;}
    .header-top-nav .nav-menu a,.header-top-nav .nav-menu-right a {font-size: 14px;}

    .search-popup {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin-top: 0 !important;
        max-width: 100% !important;
        z-index: 99999 !important;
    }

    .search-popup.active {
        display: block;
        overflow-y: hidden !important;
        overflow-x: hidden !important;
    }

    .search-popup-content {
        border-radius: 0 !important;
        padding: 15px 15px 100px 15px !important;
        height: 100vh !important;
        max-height: 100vh !important;
        min-height: 100vh !important;
        border: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        box-shadow: none !important;
    }

    .best-products {
        padding-bottom: 20px !important;
        display:grid !important;
        grid-template-columns: 1fr !important;
        gap:0px !important;
    }

    .search-popup-header {
        display: flex !important;
        /* position: sticky 제거 */
        /* top: 0 제거 */
        background: #fff;
        /* z-index: 10 제거 */
        padding-bottom: 15px;
        margin-bottom: 15px;
    }

    .search-footer {
        border-radius: 0 !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 100 !important;
        padding: 20px 15px !important;
    }

    .search-section {
        margin-bottom: 20px;
    }

    .search-tags {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
    }

    .recent-keywords {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        white-space: nowrap !important;
    }

    .search-tags::-webkit-scrollbar {
        height: 2px !important;
    }

    .recent-keywords::-webkit-scrollbar {
        height: 2px !important;
    }

    .search-popup .close-popup {display:none;}
}

@media screen and (max-width: 480px) {
    .header-top-logo .logo-main {font-size: 24px;}
    .header-top-logo img {width:110px;}
    .header-top-icons {gap: 8px;}
    .header-top-icons .icon-link {width: 36px;height: 36px;font-size: 20px;}
}

/* 모바일 가로모드 (landscape) - 높이 500px 이하 + 가로방향 */
@media screen and (max-height: 500px) and (orientation: landscape) {
    .header-top-inner {flex-wrap: wrap;padding-top: 8px !important;padding-bottom: 8px !important;}
    .header-top-search {order: 3;flex: 1 1 100%;max-width: 100%;margin-top: 6px;}
    .header-top-ranking {display: none;}
    .header-top-nav .menu-toggle {display: flex;}
    .header-top-nav .nav-menu,.header-top-nav .nav-menu-right {display: none;}
    .header-top-nav .nav-inner {height: 44px;}
    .header-top-logo img {width: 110px;}

    .search-popup {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        margin-top: 0 !important;
        max-width: 100% !important;
        z-index: 99999 !important;
    }
    .search-popup.active {
        display: block;
        overflow-y: hidden !important;
        overflow-x: hidden !important;
    }
    .search-popup-content {
        border-radius: 0 !important;
        padding: 10px 15px 80px 15px !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        min-height: 0 !important;
        border: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        box-shadow: none !important;
    }
    .search-popup-header {
        display: flex !important;
        background: #fff;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    .search-popup .close-popup {display: none;}
    .best-products {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
    .search-footer {
        border-radius: 0 !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 100 !important;
        padding: 12px 15px !important;
    }
    body.has-fixed-header {padding-top: 44px;}
    .header-top-line {height: 30px;}
    .header-top-line .inner .header-top-menu,
    .header-top-line .inner .header-top-account {height: 30px;}
}

/* 모바일 팝업 열릴 때 body 스크롤 방지 */
body.no-scroll {overflow: hidden;position: fixed;width: 100%;height: 100%;}

/* 양쪽 메뉴 */
/* 왼쪽 고정 배너 스타일 */
.fixed_left_banner {
    position: fixed;
    left:50%;
    margin-left:-790px;
    top: 240px; /* 또는 원하는 픽셀 값 */
    z-index:100;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 110px;
}

.if_main .fixed_left_banner {top:780px;}

.fixed_left_banner.is_fixed {
    position: fixed;
    top: 20px; /* 고정될 때의 상단 여백 */
}

.fixed_left_banner.is_bottom {
    position: absolute;
    top: auto;
    bottom: 0; /* 푸터 도달 시 */
}


.fixed_left_banner .banner_item {
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background: #fff;
}

.fixed_left_banner .banner_item:hover {
    transform: translateX(-5px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.fixed_left_banner .banner_item a {
    display: block;
    text-decoration: none;
}

.fixed_left_banner .banner_item img {
    width: 100%;
    height: auto;
    display: block;
}

.fixed_right_menu {
    position: fixed;
    top:780px;
    left:50%;
    margin-left:750px;
    z-index: 900;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 110px;
}

.fixed_right_menu.is_fixed {
    position: fixed;
    top: 20px; /* 고정될 때의 상단 여백 */
}

.fixed_right_menu.is_bottom {
    position: absolute;
    top: auto;
    bottom: 0; /* 푸터 도달 시 */
}

.fixed_right_menu .quick_menu_item {
    width: 64px;
    height: 64px;
    transition: all 0.3s ease;
}

.fixed_right_menu .line {
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.fixed_right_menu .quick_menu_item:hover {

    border-color: #ff6b35;
}

.fixed_right_menu .quick_menu_item a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #333;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
    padding: 8px 4px;
}

.fixed_right_menu .quick_menu_item .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
    color: #666;
}

.fixed_right_menu .quick_menu_item:hover .icon {
    color: #ff6b35;
}

.fixed_right_menu .quick_menu_item span {
    font-size: 11px;
    font-weight: 500;
    color: #333;
}

/* TOP 버튼 특별 스타일 */
.fixed_right_menu .quick_menu_item.top_btn {
    background: #ff6b35;
    border-color: #ff6b35;
}

.fixed_right_menu .quick_menu_item.top_btn a {
    color: #fff;
}

.fixed_right_menu .quick_menu_item.top_btn span {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}

.fixed_right_menu .quick_menu_item.top_btn:hover {
    background: #ff5722;
    border-color: #ff5722;
}

/* AI 챗봇 특별 스타일 */
.fixed_right_menu .quick_menu_item.ai_chatbot {
    background: linear-gradient(135deg, #ff6b6b 0%, #ff5252 100%);
    border-color: #ff5252;
}

.fixed_right_menu .quick_menu_item.ai_chatbot a {
    color: #fff;
}

.fixed_right_menu .quick_menu_item.ai_chatbot .icon {
    color: #fff;
}

.fixed_right_menu .quick_menu_item.ai_chatbot span {
    color: #fff;
}

.fixed_right_menu .quick_menu_item.ai_chatbot:hover {
    background: linear-gradient(135deg, #ff5252 0%, #e64545 100%);
}

/* 반응형 - 화면이 작을 때 숨김 */
@media screen and (max-width: 1280px) {
    .fixed_left_banner,
    .fixed_right_menu {
        display: none;
    }
}

/* 스크롤에 따른 효과 (선택사항) */
@media screen and (min-width: 1401px) {
    .fixed_left_banner {
        animation: fadeInLeft 0.5s ease;
    }

    .fixed_right_menu {
        animation: fadeInRight 0.5s ease;
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        transform: translate(calc(-50vw - 20px), -50%);
    }
    to {
        opacity: 1;
        transform: translate(calc(-50vw + 20px), -50%);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translate(calc(50vw + 20px), -50%);
    }
    to {
        opacity: 1;
        transform: translate(calc(50vw - 20px), -50%);
    }
}


/* Swiper 로딩 공통 스타일 */
.swiper-container-wrapper {
    position: relative;
    min-height: 300px;
}

.swiper-loading {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center;
}

.swiper-loading.hide {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* 스피너 스타일 */
.spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin: 0 auto;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.swiper-target {
    opacity: 0 !important;
    transition: opacity 0.3s ease;
}

.swiper-target.swiper-initialized {
    opacity: 1 !important;
}


/* Swiper 초기 숨김 */
.swiper-with-loading {
    opacity: 0;
    transition: opacity 0.8s ease;
}

.swiper-with-loading.swiper-initialized {
    opacity: 1;
}

/* ========================================
   슬라이드 메뉴 리뉴얼
   ======================================== */

/* 슬라이드 패널 */
.p_Slide .slide_in {
    background: #fff !important;
    max-width: 400px !important;
    box-shadow: 4px 0 20px rgba(0,0,0,0.08);
}
.p_Slide .slide_layout {
    padding: 0 24px !important;
}

/* 반투명 배경 */
.p_Slide .slide_bg {
    background: rgba(0,0,0,0.4) !important;
}

/* --- 상단 사용자 정보 --- */
.p_Slide .my_info .top_box {
    padding: 20px 0 16px 0 !important;
}
.p_Slide .my_info .who {
    font-size: 15px !important;
    color: #666 !important;
}
.p_Slide .my_info .who .name {
    font-size: 17px !important;
    color: #222 !important;
    font-weight: 600 !important;
}
.p_Slide .my_info .btn_close {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50%;
    background-color: #f5f5f5 !important;
    background-size: 12px !important;
    transition: background-color 0.2s;
}
.p_Slide .my_info .btn_close:hover {
    background-color: #eee !important;
}

/* --- 바로가기 메뉴 (마이쇼핑/장바구니/주문배송/찜한상품) --- */
.p_Slide .my_info .go_mypage {
    background: #f8f9fb;
    border-radius: 12px;
    padding: 16px 8px !important;
    margin-bottom: 16px !important;
}
.p_Slide .my_info .go_mypage .btn .tx {
    font-size: 12px !important;
    color: #555 !important;
    font-weight: 500 !important;
}

/* --- 로그인/회원가입 버튼 --- */
.p_Slide .my_info .member_link {
    gap: 0 8px !important;
    margin-bottom: 8px;
}
.p_Slide .my_info .member_link .btn {
    border-radius: 8px !important;
    height: 44px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    transition: all 0.2s;
}
.p_Slide .my_info .member_link li:first-child .btn {
    background: #4B99FF !important;
    border-color: #4B99FF !important;
    color: #fff !important;
}
.p_Slide .my_info .member_link li:first-child .btn:hover {
    background: #3a88ee !important;
    border-color: #3a88ee !important;
}
.p_Slide .my_info .member_link li:last-child .btn {
    background: #fff !important;
    border: 1px solid #ddd !important;
    color: #333 !important;
}
.p_Slide .my_info .member_link li:last-child .btn:hover {
    border-color: #4B99FF !important;
    color: #4B99FF !important;
}

/* 적립금/쿠폰 (로그인 후) */
.p_Slide .my_info .member_link .btn {
    border-radius: 8px !important;
}

/* 비회원 주문조회 / 로그아웃 */
.p_Slide .my_info .member_tx {
    margin-top: 8px !important;
    font-size: 13px !important;
}
.p_Slide .my_info .member_tx .btn .tx {
    color: #888 !important;
    border-bottom-color: #ccc !important;
    font-weight: 500 !important;
}

/* --- 카테고리 섹션 --- */
.p_Slide .category {
    border-top: 1px solid #f0f0f0 !important;
    padding-top: 12px !important;
    margin-top: 12px !important;
}
.p_Slide .category .first_ctg {
    border-bottom: none !important;
}
.p_Slide .category .first_ctg .ctg_name {
    font-size: 15px !important;
    color: #333 !important;
    font-weight: 500 !important;
    height: 46px !important;
    transition: color 0.2s;
}
.p_Slide .category .first_ctg .ctg_name:hover {
    color: #4B99FF !important;
}
.p_Slide .category .btn_open .ic {
    opacity: 0.3 !important;
    background-size: 10px !important;
}
.p_Slide .category .li + .li .first_ctg {
    border-top: 1px solid #f5f5f5;
}

/* 활성 카테고리 */
.p_Slide .category .li.if_open_sd_cate .first_ctg .ctg_name {
    color: #4B99FF !important;
    font-weight: 600 !important;
}
.p_Slide .category .li.if_open_sd_cate .btn_open .ic {
    opacity: 0.7 !important;
}

/* 2차 카테고리 */
.p_Slide .category .second_ctg {
    background: #fafbfc !important;
    border-radius: 8px;
    margin: 0 0 4px 0;
}
.p_Slide .category .li.if_open_sd_cate .second_ctg {
    border-bottom: none !important;
}
.p_Slide .category .second_ctg .ctg_name {
    font-size: 13px !important;
    color: #666 !important;
    height: 32px !important;
    padding: 0 16px !important;
    font-weight: 400 !important;
}
.p_Slide .category .second_ctg .ctg_name:hover {
    color: #4B99FF !important;
}
.p_Slide .category .li.if_open_sd_cate .second_ctg li {
    height: 32px !important;
}

/* --- 타입별 상품 메뉴 --- */
.p_Slide .type_menu {
    margin-top: 12px !important;
}
.p_Slide .type_menu ul {
    border: 1px solid #eee !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}
.p_Slide .type_menu .type_name {
    font-size: 13px !important;
    color: #666 !important;
    height: 42px !important;
    font-weight: 500 !important;
    transition: color 0.2s;
}
.p_Slide .type_menu .type_name:hover {
    color: #4B99FF !important;
}

/* --- 통합 바로가기 메뉴 (type_menu_wrap) --- */
.p_Slide .type_menu_wrap {
    padding-top: 12px;
    margin-top: 0;
}
.p_Slide .type_menu_wrap .type_menu .type_name strong {
    color: #4B99FF !important;
    font-weight: 600 !important;
    font-size: 11px !important;
    background: #EBF3FF;
    padding: 1px 5px;
    border-radius: 8px;
    margin-left: 4px;
}

/* --- 게시판 메뉴 (SERVICE / COMMUNITY 탭) --- */
.p_Slide .board_menu {
    border-top: 1px solid #f0f0f0 !important;
    padding-top: 16px !important;
    margin-top: 16px !important;
}
.p_Slide .board_menu .tab_tit .tab {
    font-size: 14px !important;
    color: #bbb !important;
    font-weight: 600 !important;
    height: 40px !important;
    border-bottom: 2px solid #eee !important;
    transition: all 0.2s;
}
.p_Slide .board_menu .tab_tit .tab.hit {
    color: #4B99FF !important;
    border-color: #4B99FF !important;
}
.p_Slide .board_menu .tab_cont {
    margin-top: 12px !important;
}
.p_Slide .board_menu .tab_cont .menu {
    font-size: 13px !important;
    color: #555 !important;
    padding: 8px 0 !important;
    transition: color 0.2s;
}
.p_Slide .board_menu .tab_cont .menu:hover {
    color: #4B99FF !important;
}

/* --- CS 정보 --- */
.p_Slide .cs_info {
    border-top: 1px solid #f0f0f0 !important;
    padding-top: 20px !important;
    margin-top: 16px !important;
    padding-bottom: 20px;
}
.p_Slide .cs_info .cs_in .tel {
    font-size: 24px !important;
    color: #222 !important;
    font-weight: 700 !important;
}
.p_Slide .cs_info .cs_in .open_time {
    font-size: 12px !important;
    color: #999 !important;
    margin-top: 6px !important;
    line-height: 1.5 !important;
}
.p_Slide .cs_info .go_page {
    margin-top: 12px !important;
    gap: 8px !important;
}
.p_Slide .cs_info .go_page .btn {
    background: #f8f9fb !important;
    height: 40px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    color: #555 !important;
    font-weight: 500;
    transition: all 0.2s;
}
.p_Slide .cs_info .go_page .btn:hover {
    background: #EBF3FF !important;
    color: #4B99FF !important;
}

/* ========================================
   검색 결과 페이지 리뉴얼
   ======================================== */

/* --- 필터 사이드바 --- */
.c_comb .filter_box {
    width: 220px !important;
    border-right: 1px solid #f0f0f0;
    padding-right: 24px;
}

/* 검색 + 초기화 버튼 row */
.c_comb .filter_search_row {
    display: flex;
    align-items: center;
    gap: 8px;
}
.c_comb .filter_search_row .filter_search_form {
    flex: 1;
}
.c_comb .filter_box .btn_filter_reset {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: #fff;
    color: #bbb;
    font-size: 12px;
    transition: all 0.2s;
    text-decoration: none;
    flex-shrink: 0;
    border: 1px solid #e5e5e5;
}
.c_comb .filter_box .btn_filter_reset:hover {
    background: #EBF3FF;
    color: #4B99FF;
    border-color: #4B99FF;
}

/* 결과 내 재검색 */
.c_comb .filter_search {
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f0f0f0;
}
.c_comb .filter_search.category {padding-bottom:16px;}
.c_comb .filter_keyword_box {
    display: flex;
    flex: 1;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    transition: border-color 0.2s;
    min-width: 0;
}
.c_comb .filter_keyword_box:focus-within {
    border-color: #4B99FF;
}
.c_comb .filter_search_head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}
.c_comb .filter_search_label {
    font-size: 14px;
    font-weight: 600;
    color: #222;
}
/* 모바일 닫기 버튼 - PC에서 숨김 */
.c_comb .btn_filter_close {
    display: none;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    color: #999;
    font-size: 18px;
    text-decoration: none;
    transition: color 0.2s;
}
.c_comb .btn_filter_close:hover {
    color: #333;
}
.c_comb .filter_search_form {
    display: flex;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    transition: border-color 0.2s;
    min-width: 0;
}
.c_comb .filter_search_form:focus-within {
    border-color: #4B99FF;
}
.c_comb .filter_search_input {
    flex: 1;
    min-width: 0;
    border: none !important;
    height: 38px;
    padding: 0 12px !important;
    font-size: 13px;
    color: #333;
    outline: none;
    background: #fff;
    box-sizing: border-box;
}
.c_comb .filter_search_input::placeholder {
    color: #bbb;
}
.c_comb .filter_search_btn {
    width: 38px;
    height: 38px;
    background: #fff;
    border: none;
    color: #999;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
    flex-shrink: 0;
}
.c_comb .filter_search_btn:hover {
    color: #4B99FF;
}

/* 필터 dl/dt/dd */
.c_comb .filter_box dl {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
}
.c_comb .filter_box dl ~ dl {
    border-top: 1px solid #f0f0f0 !important;
    padding-top: 16px !important;
    margin-top: 16px !important;
}
.c_comb .filter_box dt {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #222 !important;
    margin-bottom: 10px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}
.c_comb .filter_box dt::after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='%23bbb' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center;
    background-size: 12px 12px;
    flex-shrink: 0;
    transition: transform 0.2s;
}
.c_comb .filter_box dt.collapsed::after {
    transform: rotate(-90deg);
}
.c_comb .filter_box dd {
    margin-bottom: 4px;
}

/* 체크박스/라디오 공통 스타일 - 미체크 시 border만 */
.c_comb .filter_box .c_label .icon {
    background-color: #fff !important;
    background-image: none !important;
    border: 1px solid #ddd !important;
}
/* 체크박스: 라운드 네모 */
.c_comb .filter_box .c_label input[type=checkbox] + .tx .icon {
    border-radius: 5px !important;
}
/* 라디오: 동그라미 */
.c_comb .filter_box .c_label input[type=radio] + .tx .icon {
    border-radius: 50% !important;
}
/* 체크 시 */
.c_comb .filter_box .c_label input:checked + .tx .icon {
    background-color: #4B99FF !important;
    border-color: #4B99FF !important;
    background-image: url('../images/c_img/c_check.svg') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 10px !important;
}
/* 라디오 체크 시 - 내부 원 표시 */
.c_comb .filter_box .c_label input[type=radio]:checked + .tx .icon {
    background-image: none !important;
}
.c_comb .filter_box .c_label input[type=radio]:checked + .tx .icon:before {
    background: #fff !important;
}
.c_comb .filter_box .c_label .tx {
    font-size: 13px !important;
    font-weight: 300 !important;
    color: #454545 !important;
}

/* 카테고리 select */
.c_comb .filter_box .c_select select {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
    font-size: 13px !important;
    height: 36px !important;
    padding: 0 10px !important;
}

/* --- 상품 리스트 컨트롤 바 --- */
.c_comb .p_List_ctrl .inner {
    border-bottom: 1px solid #eee !important;
    padding-bottom: 12px !important;
}
.c_comb .p_List_ctrl .total {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #222 !important;
}
.c_comb .p_List_ctrl .total em {
    color: #4B99FF !important;
    font-weight: 700 !important;
}
.c_comb .p_List_ctrl .total .search_keyword {
    color: #4B99FF;
    font-weight: 700;
    margin-right: 4px;
}

/* 정렬 드롭다운 */
.c_comb .p_List_ctrl .range_box .btn_ctrl {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
    height: 36px !important;
}
.c_comb .p_List_ctrl .range_open ul {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.c_comb .p_List_ctrl .range_open .hit .opt {
    color: #4B99FF !important;
    font-weight: 600 !important;
}

/* 뷰 모드 전환 */
.c_comb .p_List_ctrl .type_box .btn {
    border-radius: 6px !important;
    border-color: #e5e5e5 !important;
    width: 36px !important;
    height: 36px !important;
}
.c_comb .p_List_ctrl .type_box .btn.this_box {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-right-width: 0 !important;
}
.c_comb .p_List_ctrl .type_box .btn.this_list {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-left-width: 0 !important;
}
.c_comb .p_List_ctrl .type_box .btn.hit {
    border-color: #4B99FF !important;
    background: #EBF3FF !important;
}
.c_comb .p_List_ctrl .type_box .btn.this_box.hit {
    border-right-width: 0 !important;
}
.c_comb .p_List_ctrl .type_box .btn.this_list.hit {
    border-left-width: 0 !important;
}
.c_comb .p_List_ctrl .type_box .btn.hit .ic {
    opacity: 1 !important;
}
.c_comb .p_List_ctrl .type_box .btn.hit:before {
    background: #4B99FF !important;
}

/* 필터 버튼 (모바일) */
.c_comb .p_List_ctrl .btn_filter {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
}

/* --- 검색결과 텍스트 --- */
.c_comb .result_word {
    color: #333 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-align: left !important;
    margin: 0 0 12px 0 !important;
}
.c_comb .result_word strong {
    color: #4B99FF !important;
    font-weight: 600 !important;
}

/* --- 페이지네이션 --- */
.c_pagi .number .hit {
    background: #4B99FF !important;
    border-color: #4B99FF !important;
    color: #fff !important;
}
.c_pagi .num {
    border-radius: 8px !important;
    border-color: #eee !important;
    font-size: 13px !important;
    min-width: 36px !important;
    height: 36px !important;
    transition: all 0.2s;
}
.c_pagi .num:hover {
    border-color: #4B99FF !important;
    color: #4B99FF !important;
}
.c_pagi .nextprev .btn .icon {
    width: 28px !important;
    height: 28px !important;
}

/* --- 검색 결과 없을 때 --- */
.c_comb .c_none .gtxt {
    font-size: 15px !important;
    color: #888 !important;
    line-height: 1.6 !important;
}
.c_comb .other_recommend .tit {
    font-size: 20px !important;
    color: #222 !important;
    font-weight: 700 !important;
}

/* --- 브랜드 필터 --- */
.c_comb .brand_filter_wrap .brand_search_box {
    position: relative;
    margin-bottom: 10px;
}
.c_comb .brand_filter_wrap .brand_search_input {
    width: 100%;
    height: 34px;
    padding: 0 30px 0 10px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    font-size: 12px;
    color: #333;
    background: #fff;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s;
}
.c_comb .brand_filter_wrap .brand_search_input:focus {
    border-color: #4B99FF;
}
.c_comb .brand_filter_wrap .brand_search_input::placeholder {
    color: #bbb;
}
.c_comb .brand_filter_wrap .brand_search_icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #bbb;
    pointer-events: none;
}
.c_comb .brand_filter_wrap .brand_item.brand_hidden {
    display: none;
}
.c_comb .brand_filter_wrap .brand_no_result {
    font-size: 12px;
    color: #999;
    text-align: center;
    padding: 10px 0;
}
.c_comb .brand_filter_wrap .btn_brand_more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    margin-top: 8px;
    padding: 8px 0;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    background: #fff;
    font-size: 12px;
    color: #666;
    cursor: pointer;
    transition: all 0.2s;
}
.c_comb .brand_filter_wrap .btn_brand_more:hover {
    border-color: #4B99FF;
    color: #4B99FF;
}
.c_comb .brand_filter_wrap .btn_brand_more i {
    font-size: 10px;
}

/* --- 카테고리 필터 --- */
.c_comb .cate_filter_wrap .cate_search_box {
    position: relative;
    margin-bottom: 10px;
}
.c_comb .cate_filter_wrap .cate_search_input {
    width: 100%;
    height: 34px;
    padding: 0 30px 0 10px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    font-size: 12px;
    color: #333;
    background: #fff;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s;
}
.c_comb .cate_filter_wrap .cate_search_input:focus {
    border-color: #4B99FF;
}
.c_comb .cate_filter_wrap .cate_search_input::placeholder {
    color: #bbb;
}
.c_comb .cate_filter_wrap .cate_search_icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #bbb;
    pointer-events: none;
}
.c_comb .cate_filter_wrap .cate_item.cate_hidden {
    display: none;
}
.c_comb .cate_filter_wrap .cate_no_result {
    font-size: 12px;
    color: #999;
    text-align: center;
    padding: 10px 0;
}
.c_comb .cate_filter_wrap .btn_cate_more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    margin-top: 8px;
    padding: 8px 0;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    background: #fff;
    font-size: 12px;
    color: #666;
    cursor: pointer;
    transition: all 0.2s;
}
.c_comb .cate_filter_wrap .btn_cate_more:hover {
    border-color: #4B99FF;
    color: #4B99FF;
}
.c_comb .cate_filter_wrap .btn_cate_more i {
    font-size: 10px;
}
/* 하위 카테고리 */
.c_comb .cate_filter_wrap .cate_sub_area {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px dashed #eee;
}
.c_comb .cate_filter_wrap .cate_sub_label {
    font-size: 12px;
    font-weight: 600;
    color: #888;
    margin-bottom: 8px;
}

/* --- 가격 범위 필터 --- */
.c_comb .price_filter_wrap .price_range_box {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed #eee;
    overflow: hidden;
}
.c_comb .price_filter_wrap .price_range_inputs {
    display: flex;
    align-items: center;
    gap: 8px;
}
.c_comb .price_filter_wrap .price_range_input {
    flex: 1;
    min-width: 0;
    width: 0;
    height: 34px;
    padding: 0 8px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    font-size: 12px;
    color: #333;
    background: #fff;
    box-sizing: border-box;
    outline: none;
    text-align: center;
    transition: border-color 0.2s;
    -moz-appearance: textfield;
}
.c_comb .price_filter_wrap .price_range_input::-webkit-outer-spin-button,
.c_comb .price_filter_wrap .price_range_input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.c_comb .price_filter_wrap .price_range_input:focus {
    border-color: #4B99FF;
}
.c_comb .price_filter_wrap .price_range_sep {
    font-size: 13px;
    color: #999;
    flex-shrink: 0;
}
.c_comb .price_filter_wrap .btn_price_apply {
    display: block;
    width: 100%;
    margin-top: 8px;
    padding: 8px 0;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    background: #fff;
    font-size: 12px;
    color: #666;
    cursor: pointer;
    transition: all 0.2s;
    text-align: center;
}
.c_comb .price_filter_wrap .btn_price_apply:hover {
    border-color: #4B99FF;
    color: #4B99FF;
    background: #EBF3FF;
}

/* --- AJAX 로딩 --- */
.area_item {
    transition: opacity 0.2s;
}

/* --- 검색결과 영역 간격 조정 --- */
.c_comb .result_item {
    margin-top: 20px !important;
    gap: 0 30px;
}

/* --- 타입별 상품 탭 (베스트, 신규상품 등) 파란 라운드 스타일 --- */
.p_Category.type_other_list .ctg2_box .ctg2 {
    background: #fff !important;
    border: 1.5px solid #ddd !important;
    border-radius: 100px !important;
    color: #555 !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    height: 38px !important;
    padding: 0 20px !important;
}
.p_Category.type_other_list .ctg2_box .hit .ctg2 {
    background: #4B7BF5 !important;
    border-color: #4B7BF5 !important;
    color: #fff !important;
    font-weight: 600 !important;
}

/* --- product.list 컨트롤바 스타일 (검색/카테고리와 동일하게) --- */
.p_List_ctrl .inner {
    border-bottom: 1px solid #eee !important;
    padding-bottom: 12px !important;
}
.p_List_ctrl .total {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #222 !important;
}
.p_List_ctrl .total em {
    color: #4B99FF !important;
    font-weight: 700 !important;
}
.p_List_ctrl .range_box .btn_ctrl {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
    height: 36px !important;
}
.p_List_ctrl .range_open ul {
    border-radius: 8px !important;
    border-color: #e5e5e5 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.p_List_ctrl .range_open .hit .opt {
    color: #4B99FF !important;
    font-weight: 600 !important;
}
.p_List_ctrl .type_box .btn {
    border-radius: 6px !important;
    border-color: #e5e5e5 !important;
    width: 36px !important;
    height: 36px !important;
}
.p_List_ctrl .type_box .btn.this_box {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-right-width: 0 !important;
}
.p_List_ctrl .type_box .btn.this_list {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-left-width: 0 !important;
}
.p_List_ctrl .type_box .btn.hit {
    border-color: #4B99FF !important;
    background: #EBF3FF !important;
}
.p_List_ctrl .type_box .btn.this_box.hit {
    border-right-width: 0 !important;
}
.p_List_ctrl .type_box .btn.this_list.hit {
    border-left-width: 0 !important;
}
.p_List_ctrl .type_box .btn.hit .ic {
    opacity: 1 !important;
}
.p_List_ctrl .type_box .btn.hit:before {
    background: #4B99FF !important;
}

/* --- 상품 카드 부가정보 (무료배송, 적립금, 판매량) --- */
.item_box .item_meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    margin-top: 10px;
    line-height: 1;
}
.item_box .meta_badge {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: 4px;
    line-height: 1;
    letter-spacing: -0.2px;
}
.item_box .meta_free_delivery {
    background: #EFF8FF;
    color: #1A73E8;
    border: none;
}
.item_box .meta_point {
    font-size: 11px;
    color: #E07B1A;
    font-weight: 600;
    background: #FFF8F0;
    padding: 4px 8px;
    border-radius: 4px;
}
.item_box .meta_point_badge {
    background: #FFF8F0;
    color: #E07B1A;
    border: none;
}
.item_box .meta_promotion {
    background: #E8F5E9;
    color: #2E7D32;
    border: none;
}
.item_box .meta_member_benefit {
    background: #F5F5F5;
    color: #888;
    border: none;
}
.item_box .meta_salecnt {
    font-size: 11px;
    color: #888;
    font-weight: 400;
}
.item_box .meta_salecnt::before {
    content: '';
    display: inline-block;
    width: 1px;
    height: 10px;
    background: #ddd;
    margin-right: 8px;
    vertical-align: middle;
}

/* --- 모바일 상단 검색바 (PC 숨김) --- */
.p_List_ctrl .mo_keyword_bar { display: none; }

/* --- 모바일 필터 오버라이드 --- */
@media screen and (max-width: 999px) {
    .c_comb .filter_box {
        width: 100% !important;
        max-width: 310px !important;
        padding-right: 0 !important;
    }
    .c_comb .filter_box .filter_search {
        margin: 0 15px 16px 15px;
        padding-top: 16px;
    }
    .c_comb .btn_filter_close {
        display: flex;
    }

    /* 모바일 상단 검색바 */
    .p_List_ctrl .mo_keyword_bar {
        display: block;
        padding: 0 0px 10px;
    }
    .p_List_ctrl .mo_keyword_inner {
        display: flex;
        border: 1px solid #e5e5e5;
        border-radius: 8px;
        overflow: hidden;
        background: #fff;
        transition: border-color 0.2s;
    }
    .p_List_ctrl .mo_keyword_inner:focus-within {
        border-color: #4B99FF;
    }
    .p_List_ctrl .mo_keyword_input {
        flex: 1;
        border: none;
        padding: 12px 12px;
        font-size: 14px;
        outline: none;
        background: transparent;
        min-width: 0;
    }
    .p_List_ctrl .mo_keyword_input::placeholder { color: #aaa; }
    .p_List_ctrl .mo_keyword_btn {
        border: none;
        background: none;
        padding: 0 14px;
        color: #888;
        font-size: 16px;
        cursor: pointer;
    }
    .p_List_ctrl .mo_keyword_btn:active { color: #4B99FF; }
}
