/* BASIC css start */
html.no-scroll,
body.no-scroll { overflow: hidden !important; /*height: 100%;*/ }
.sticky { position: sticky; top: 0; z-index: 100; background-color: var(--cw-color-white); }
.top-bar { display: flex; align-items: center; justify-content: center; height: 40px; background-color: var(--cw-point-color-pri); }
.top-bar a { text-decoration: none; color: var(--cw-color-white); font-size: .875rem; font-weight: 700; line-height: 20px; }
#topbanner .topSlider li.txt a { font-family: var(--bs-body-font-family); }
.header-container { margin: 0 auto; padding: 16px 100px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--cw-color-30); }
.header-logo { flex-shrink: 0; line-height: 0; }
.header-logo a { font-size: 2.25rem; font-weight: 800; color: var(--cw-heading-color); line-height: normal; text-decoration: none; }
.header-nav { order: 2; display: flex; gap: 32px; flex: 0 0 100%; justify-content: flex-start; margin-top: 16px; overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; flex-wrap: nowrap; min-width: 0; scrollbar-width: none; scrollbar-color: transparent transparent; -webkit-user-select: none; user-select: none; }
.header-nav::-webkit-scrollbar { display: none; }
.header-nav:active { cursor: grabbing; }
.header-nav a { white-space: nowrap; color: var(--cw-heading-color); text-decoration: none; font-size: 1rem; font-weight: 700; line-height: 24px; -webkit-user-drag: none; user-drag: none; }
.header-icons { display: flex; gap: 16px; flex-shrink: 0; font-size: 1.125rem; }
.header-icons a { text-decoration: none; position: relative; }
.header-icons a .notification { position: absolute; top: 3px; right: -3px; background-color: var(--cw-point-color); color: #fff; border-radius: 100%; padding: 0 5px; line-height: 16px; font-size: .75rem; font-weight: 700; }
.header-logo,
.header-icons { order: 1; }
.header-container--md { display: none; }
.side-menu-wrap { position: fixed; top: 0; right: -100%; width: 360px; height: 100vh; padding: 18px 24px 60px; overflow-y: auto; -webkit-overflow-scrolling: touch; z-index: 100; transition: right 0.3s ease; background: var(--cw-color-white); }
.side-menu-wrap.active { display: block; right: 0; }
.side-menu-wrap a { text-decoration: none; color: var(--cw-heading-color); }
.menu-header { position: relative; padding: 18px 0 20px; }
.side-menu-close { position: absolute; right: 0; top: 0; width: 24px; height: 24px; border: none; outline: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 18L18 6M6 6L18 18' stroke='%23999999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat; }
.menu-util { display: flex; align-items: center; justify-content: flex-end; gap: 14px; padding: 20px 0; }
.menu-util a { font-size: .875rem; }
.menu-util a:not(:first-child)::before { display: inline-block; margin-right: 14px; width: 1px; height: 12px; vertical-align: middle; background: var(--cw-color-30); content: ''; }
.menu-search { position: relative;}
.menu-search .search-input { width: 100%; }
.menu-search .search-btn { position: absolute; top: 7px; right: 12px; width: 24px; height: 24px; border: none; outline: none; font-size: 0; background: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_search.svg") no-repeat right center / 24px 24px; }
.side-menu-list ul { display: flex; flex-direction: column; gap: 20px; }
.side-menu-list ul li a { display: block; font-weight: 500; }
.side-menu-list .has-sub { position: relative; }
.side-menu-list .has-sub .ico-toggle { position: absolute; right: 0; top: 3px; display: block; width: 16px; height: 16px; cursor: pointer; }
.side-menu-list .has-sub .ico-minus { background: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/bullet_minus.svg") no-repeat; }
.side-menu-list .has-sub .ico-plus { background: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/bullet_plus.svg") no-repeat; }
.side-menu-list .has-sub .submenu { display: none; padding: 20px 10px 10px; }
.side-menu-list .has-sub .submenu li a { color: var(--cw-color-60); font-size: .875rem; font-weight: 400; }
.side-menu-list .board { margin-top: 30px; padding-top: 30px; border-top: 1px solid #f0f0f0; }
.side-overlay { position: fixed; left: 0; top: 0; width: 100%; height: 100vh; opacity: 0; visibility: hidden; transition: opacity 0.3s ease; background: rgba(0, 0, 0, 0.7); z-index: 98; }
.side-overlay.active { opacity: 1; visibility: visible; }
.fixed-menu--md { display: none; z-index: 99; }

/* 고정 버튼 */
.floating-wrap { position: fixed; bottom: 60px; right: 2%; display: flex; flex-direction: column; z-index: 99; }
.floating-btns.toggle-show.show { opacity: 1; visibility: visible; }
.floating-btns.always-show { opacity: 1; visibility: visible; }
.floating-btns { opacity: 0; visibility: hidden; transition: opacity 0.3s ease; }
.floating-btns .floating-btn { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--cw-color-20); background: var(--cw-color-white); }
.floating-btns .btn-smart-finder { background: #fff url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_smart_finder.svg") no-repeat center center / 16px 16px; }
.floating-btns .btn-go-top { background: #fff url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_arrow_expand.svg") no-repeat center center / 14px 14px; }

/* 다찾다 검색 파인더 - 레이어 */
.side-sfinder-overlay { z-index: 100; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; opacity: 0; visibility: hidden; transition: opacity 0.3s ease; background: rgba(0, 0, 0, 0.7); }
.side-sfinder-overlay.active { opacity: 1; visibility: visible; }
.side-sfinder-wrap { z-index: 101; position: fixed; top: 0; right: -100%; width: var(--cw-size-360); max-width:100%; height: 100vh; padding-bottom: var(--cw-size-48); overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; transition: right 0.3s ease; background: var(--cw-color-white); }
.side-sfinder-wrap.active { display: block; right: 0; }
.sfinder-header { z-index: 1; position: sticky; top: 0; display: flex; align-items: center; justify-content: space-between; padding: var(--cw-size-17) var(--cw-size-24); border-bottom: 1px solid var(--cw-color-30); background-color: var(--cw-color-white); }
.sfinder-header .sfider-title { font-size: var(--cw-size-18); font-weight: 700; line-height: var(--cw-size-26); }
.sfinder-header .side-sfinder-close { width: var(--cw-size-24); height: var(--cw-size-24); border: none; outline: none; background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_x.svg') no-repeat center center; filter: invert(59%) sepia(0%) saturate(413%) hue-rotate(281deg) brightness(115%) contrast(55%); }
.side-sfinder-list .option li { border-bottom: 1px solid var(--cw-color-30); }
.side-sfinder-list .option li .option-title { position: relative; padding: var(--cw-size-12) var(--cw-size-24); border-bottom: 1px solid var(--cw-color-20); font-size: var(--cw-size-16); font-weight: 700; line-height: var(--cw-size-24); cursor: pointer; }
.side-sfinder-list .option li .option-title::after { content: ""; display: block; position: absolute; top: 0; right: 0; transform: translate(calc(var(--cw-size-24) * -1), var(--cw-size-16)); width: var(--cw-size-16); height: var(--cw-size-16); background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_arrow_cheveron-down.svg') no-repeat center center; }
.side-sfinder-list .option li .option-title.on::after { background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_arrow_cheveron-up.svg') no-repeat center center; }
.side-sfinder-list .option li .option-title.on + .finder-subs { display: block; }
.side-sfinder-list .option li .finder-subs .class-none { display: flex; flex-wrap: wrap; gap: 4px; }
.side-sfinder-list .option li .finder-subs { display: none; padding: var(--cw-size-16) var(--cw-size-24); background-color: var(--cw-color-10); }
.side-sfinder-list .option li .finder-subs .form-check-label { display: grid; }
.side-sfinder-list .option li .finder-subs :where(.finder-category, .finder-size) { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--cw-size-4); }
.side-sfinder-list .option li .finder-subs :where(.finder-price) { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--cw-size-4); }
.side-sfinder-list .option li .finder-subs :where(.finder-color) { display: flex; flex-wrap: wrap; gap: var(--cw-size-8); }
.side-sfinder-list .option li .finder-subs .finder-options:not(.color-picker) { display: flex; align-items: center; justify-content: center; padding: var(--cw-size-8) var(--cw-size-16); border: 1px solid var(--cw-color-30); border-radius: var(--cw-size-24); font-size: var(--cw-size-12); line-height: var(--cw-size-16); word-break: break-all; background-color: var(--cw-color-white); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.side-sfinder-list .option li .finder-subs .finder-options:not(.color-picker).on { border-color: var(--cw-heading-color); font-weight: 700; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.25); }
.side-sfinder-list .option li .finder-subs .finder-option-color.color-picker { display: inline-flex; width: var(--cw-size-32); height: var(--cw-size-32); border-radius: var(--cw-size-50); text-indent: -9999px; }
.side-sfinder-list .option li .finder-subs .finder-option-color.color-picker.on::after { content: ""; display: inline-flex; width: 100%; height: 100%; background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_check.svg') no-repeat center;  background-size: var(--cw-size-20); }
.side-sfinder-list .option li .finder-subs .finder-option-color.color-picker:not(.finder-option-color-white).on::after { filter: invert(1) brightness(2); }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-black { background-color: #000; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-white { background-color: #FFF; border: 1px solid var(--cw-color-30); }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-gray { background-color: #808080; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-beige { background-color: #e5d0b2; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-brown { background-color: #aa6810; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-navy { background-color: #425583; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-blue { background-color: #0000ff; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-light-blue { background-color: #62acff; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-red { background-color: #ff0000; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-orange { background-color: #ffa500; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-yellow { background-color: #ffff00; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-pink { background-color: #ffc0cb; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-purple { background-color: #800080; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-jaju { background-color: #a63f7f; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-khaki { background-color: #2f5e2f; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-green { background-color: #008000; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-light-green { background-color: #72dd95; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-silver { background-color: #dfdfdf; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-gold { background-color: #cfbc4e; }
.side-sfinder-list .option li .finder-subs .finder-option-color.finder-option-color-apricot { background-color: #fbceb1; }
.side-sfinder-list .option li .finder-subs .finder-price .finder-price-input { position: relative; grid-column: 1 / 3; display: flex; align-items: center; column-gap: var(--cw-size-4); padding-top: var(--cw-size-30); }
.side-sfinder-list .option li .finder-subs .finder-price .finder-price-input::before { content: "직접입력"; position: absolute; top: var(--cw-size-4); left: 0; display: block; font-size: var(--cw-size-14); font-weight: 700; line-height: var(--cw-size-20); }
.side-sfinder-list .option li .finder-subs .finder-price .finder-price-input label { display: flex; align-items: center; height: var(--cw-size-40); padding: 0 var(--cw-size-12); border: 1px solid var(--cw-color-30); border-radius: var(--cw-border-radius); font-size: var(--cw-size-14); background: var(--cw-color-white); }
.side-sfinder-list .option li .finder-subs .finder-price .finder-price-input label .cw-textfield { width: 100%; padding: 0; border: 0; text-align: right; }
.side-sfinder-list .option li .finder-subs .finder-search * { width: 100%; }
.side-sfinder-btns { z-index: 1; position: fixed; bottom: 0; display: grid; grid-template-columns: var(--cw-size-120) var(--cw-size-240); }
.side-sfinder-btns :where(.btn) { padding: 0; border-radius: 0; }
.side-sfinder-btns .btn-gray { border: 0; border-top: 1px solid var(--cw-color-30); }
.side-sfinder-btns .finder-count { color: var(--cw-point-color); }

/* 태블릿 */
@media (min-width: 768px) and (max-width: 991.98px) {
    /*.top-bar { display: none !important; }
    .header-container { display: none; padding: 15px 30px; }
    .header-nav { display: none; }*/
    #topbanner { display: none; }
    .header-container { display: none; flex-wrap: wrap; padding: 16px; }
    .header-logo,
    .header-icons { order: 1; }
    .header-logo a { font-size: 1.5rem; }
    .header-icons a:not(.basket) { display: none; }
    .header-icons img { width: 24px; height: 24px; }
    .header-icons a .notification { top: 5px; right: -5px }
    .header-nav { order: 2; flex: 0 0 100%; justify-content: flex-start; gap: 5px 16px; }
    .header-nav::-webkit-scrollbar { display: none; }
    .header-nav a { font-size: .813rem; font-weight: 600; }
    .header-container--md { position: relative; display: flex; justify-content: space-between; align-items: center; padding: 13px 16px; border-bottom: 1px solid var(--cw-color-20); }
    .header-container--md .navi-btns { display: flex; gap: 12px; }
    .header-container--md .navi-btns a { position: relative; display: inline-block; }
    .header-container--md .navi-btns a:not(.basket) { display: none; }
    .header-container--md .navi-btns img { width: 24px; height: 24px; }
    .header-container--md .navi-btns .notification { position: absolute; top: 2px; right: -5px; background-color: var(--cw-point-color); color: #fff; border-radius: 100%; padding: 0 5px; line-height: 16px; font-size: .75rem; font-weight: 700; }
    .header-container--md .navi-title { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
    .header-container--md .navi-title span { display: -webkit-box; line-clamp: 1; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; font-weight: 700; font-size: 1rem; color: var(--cw-heading-color); }
    .fixed-menu--md { position: fixed; bottom: 0; width: 100%; display: block; padding: 6px 24px; border-top: 1px solid var(--cw-color-10); background: var(--cw-color-white); }
    .fixed-menu--md .navi-btns { display: flex; justify-content: space-between; align-items: center; }
    .fixed-menu--md .navi-btns a { position: relative; display: inline-block; text-align: center; font-size: .688rem; color: var(--cw-color-60); text-decoration: none; min-width: 42px; }
    .fixed-menu--md .navi-btns img { width: 1.5rem; height: 1.5rem; }
    .floating-btns { bottom: 7%; }
}

/* 모바일 */
@media (max-width: 767.98px) {
    /*.top-bar { display: none !important; }
    .header-container { display: none; }
    .header-nav { display: none; }*/
    #topbanner { display: none; }
    .header-container { display: none; flex-wrap: wrap; padding: 16px; }
    .header-logo,
    .header-icons { order: 1; }
    .header-logo a { font-size: 1.5rem; }
    .header-icons { margin-top: -7px; }
    .header-icons a:not(.basket) { display: none; }
    .header-icons img { width: 24px; height: 24px; }
    .header-icons a .notification { top: 5px; right: -5px }
    .header-nav { order: 2; flex: 0 0 100%; justify-content: flex-start; gap: 5px 16px; flex-wrap: nowrap; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; cursor: grab; scroll-behavior: smooth; scrollbar-width: none; }
    .header-nav::-webkit-scrollbar { display: none; }
    .header-nav:active { cursor: grabbing; }
    .header-nav a { font-size: .813rem; font-weight: 600; white-space: nowrap; }
    .header-container--md { position: relative; display: flex; justify-content: space-between; align-items: center; padding: 13px 16px; border-bottom: 1px solid var(--cw-color-20); }
    .header-container--md .back-btn img { width: 24px; height: 24px; }
    .header-container--md .navi-btns { display: flex; gap: 12px; }
    .header-container--md .navi-btns a { position: relative; display: inline-block; }
    .header-container--md .navi-btns a:not(.basket) { display: none; }
    .header-container--md .navi-btns img { width: 24px; height: 24px; }
    .header-container--md .navi-btns .notification { position: absolute; top: 2px; right: -5px; background-color: var(--cw-point-color); color: #fff; border-radius: 100%; padding: 0 5px; line-height: 16px; font-size: .75rem; font-weight: 700; }
    .header-container--md .navi-title { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
    .header-container--md .navi-title span { display: -webkit-box; line-clamp: 1; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; font-weight: 700; font-size: 1rem; color: var(--cw-heading-color); }
    .side-menu-wrap { width: 100%; }
    .fixed-menu--md { position: fixed; bottom: 0; width: 100%; display: block; padding: 6px 24px; border-top: 1px solid var(--cw-color-10); background: var(--cw-color-white); }
    .fixed-menu--md .navi-btns { display: flex; justify-content: space-between; align-items: center; }
    .fixed-menu--md .navi-btns a { position: relative; display: inline-block; text-align: center; font-size: .688rem; color: var(--cw-color-60); text-decoration: none; min-width: 42px; }
    .fixed-menu--md .navi-btns img { width: 1.5rem; height: 1.5rem; }
    .floating-btns { bottom: 7%; }
}
/* BASIC css end */

