/* BASIC css start */
#mask { display:none; position:fixed; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:rgba(0,0,0,0.6); z-index:200 }
#topbanner {
    z-index: 3;
}
/* 다찾다 자동완성*/
.search-auto-complete-list { display:none; z-index:1; position:absolute; top:40px; left:0; border:1px solid #ddd; border-top:1px solid #000; line-height:14px; background:#fff; }
.search-auto-complete-list ul { width:202px; padding:4px 0 6px; border-bottom:1px solid #ddd; }
.search-auto-complete-list ul li { text-align:left; }
.search-auto-complete-list ul li.on { background:#f3f3f3; }
.search-auto-complete-list ul li a { display:block; padding:8px 14px 7px; color:#000; background:none; font-family:'dotum'; font-size:12px; letter-spacing:-1px; }
.search-auto-complete-list ul li a strong { color:#ab3e41; }
.search-auto-complete-list ul li a:hover { background:#f2f2f2; }
.search-auto-complete-list ul li a:hover span { border-bottom:1px solid #000; }
.search-auto-complete-list .search-list-close { display:block; padding:10px 11px; text-align:right; color:#999; font-size:11px; }


/* 다찾다 검색 파인더 */
#allfinder-layer { z-index: 9999; position: fixed; top: 50px; right: 110px; width: 1000px; zoom: 1; overflow: hidden; }
#allfinder-layer .finder-body { display:none; z-index:1; position: relative; width: 998px; *width:918px; padding:35px 40px 5px; max-height: 800px; overflow-x: hidden; overflow-y: auto; box-sizing: border-box; border:1px solid #666; background:#fff; }
#allfinder-layer .finder-body .finder-close { position: absolute; top: 15px; right: 10px; font-size:24px; color:#000; *width:19px; *height:24px; *background:url('/images/common/btn_h11_close.gif') no-repeat center center; *background-size:19px 24px; }
#allfinder-ctr { z-index: 10000; position: fixed; top: 50px; right: -200px; width: 103px; height:86px; }
#allfinder-ctr a { display:block; width:100%; height:100%; background:url('/images/common/allfinder_ctrl_pc.png') no-repeat right top; border:none; outline:none; font-size:0; }


.all-finder-layer .finder-body .finder-tbl table { border:1px solid #ccc; border-top:1px solid #000; }
.all-finder-layer .finder-body .finder-tbl th, 
.all-finder-layer .finder-body .finder-tbl td { height: 40px; border-top: 1px solid #e5e5e5; font-size: 13px; font-family:'Malgun Gothic'; color: #000; }
.all-finder-layer .finder-body .finder-tbl tr:first-child th,
.all-finder-layer .finder-body .finder-tbl tr:first-child td { border-top:none; }
.all-finder-layer .finder-body .finder-tbl th { padding: 5px 0; background: #f4f4f4; text-align: left; vertical-align:top; }
.all-finder-layer .finder-body .finder-tbl th .txt-l { position:relative; height:34px; line-height:34px; padding: 0 20px; margin:3px 0; }
.all-finder-layer .finder-body .finder-tbl th .txt-l .fa { position:absolute; top:50%; right:15px; margin-top:-6px; }
.all-finder-layer .finder-body .finder-tbl th .txt-l .finder-tooltip-btn { display:inline-block; width:20px; height:20px; line-height:22px; border:1px solid #cecece; border-radius:20px; color:#666; font-size:11px; background:#fff; text-align:center; outline:none; }
.all-finder-layer .finder-body .finder-tbl th .txt-l .finder-comm-layer { display:none; position:absolute; top:33px; left:52px; width:270px; padding:0 20px 18px; border:1px solid #000; background:#fff; text-align:left; font-weight:normal; color:#000; z-index:1}
.all-finder-layer .finder-body .finder-tbl th .txt-l .finder-comm-layer .finder-btn-close { display:inline-block; position:absolute; top:14px; right:20px; margin:0; font-size:21px; color:#000; outline:none; *width:19px; *height:22px; *background:url('/images/common/btn_h11_close.gif') no-repeat center center; }
.all-finder-layer .finder-body .finder-tbl th .txt-l .finder-comm-layer .finder-layer-tit { padding:18px 0; border-bottom:1px solid #e5e5e5; font-size:15px; font-weight:bold; line-height:15px; }
.all-finder-layer .finder-body .finder-tbl th .txt-l .finder-comm-layer .finder-layer-cnt { padding-top:16px; line-height:1.5; font-size:13px; }
.all-finder-layer .finder-body .finder-tbl td { padding: 5px 10px; }
.all-finder-layer .finder-body .txt-input { height: 21px; line-height: 21px; padding: 0 5px; font-size: 13px; font-family:'Malgun Gothic'; }
.all-finder-layer .finder-body .finder-category { height:40px; overflow:hidden; }
.all-finder-layer .finder-body .finder-category.open { height:100%; overflow:visible; }
.all-finder-layer .finder-body tr.finder-child-category {display:none;}
.all-finder-layer .finder-body tr.finder-child-category th,
.all-finder-layer .finder-body tr.finder-child-category td { border-top:none; }
.all-finder-layer .finder-body tr.finder-child-category td { background:#fbfbfb; }
.all-finder-layer .finder-body tr.finder-child-category td .finder-category2 .finder-cate2 { display:inline-block; margin:3px 5px 3px 0; padding: 5px 10px; cursor:pointer; line-height:22px; vertical-align:top; word-break:break-all; color:#9a9a9a; }
.all-finder-layer .finder-body tr.finder-child-category td .finder-category2 .finder-cate2 .fa-check { display:none; }
.all-finder-layer .finder-body tr.finder-child-category td .finder-category2 .finder-cate2.on { font-weight:bold; color:#000; border:0; border-radius:0; box-shadow: unset; }
.all-finder-layer .finder-body tr.finder-child-category td .finder-category2 .finder-cate2.on .fa-check { display:inline-block; margin-right:3px; }

.all-finder-layer .finder-body .finder-color { padding-left:10px; }
.all-finder-layer .finder-body .finder-price .finder-price-input { display: inline-block; padding-top:5px}
.all-finder-layer .finder-body .finder-price .finder-price-input label { display: inline-block; width: 110px; padding: 0 10px; border: 1px solid #ccc; border-radius:3px; color: #666; }
.all-finder-layer .finder-body .finder-price .finder-price-input label .txt-input { display: inline-block; width: 90px; height: 29px; line-height: 29px; padding: 0; border: none; background: none; color: #333; text-align: right; }
.all-finder-layer .finder-body .finder-search { position:relative; padding-left:5px; }
.all-finder-layer .finder-body .finder-search label { display: inline-block; width: 320px; padding: 0 10px; border: 1px solid #ccc; border-radius:3px; }
.all-finder-layer .finder-body .finder-search label .txt-input { display: block; width:100%; height: 29px; line-height: 29px; padding: 0; border: none; background: none; color: #333; text-align: left; }
.all-finder-layer .finder-body .finder-btn-c { padding: 30px 0; text-align: center; }
.all-finder-layer .finder-body .finder-btn-c a.reset { display: inline-block; width: 140px; height: 60px; line-height: 57px; border:none; border-radius:3px; background: #999; color: #fff; font-size: 18px; font-weight: bold; letter-spacing: 1px; font-family:'Malgun Gothic'; margin-right:15px; }
.all-finder-layer .finder-body .finder-btn-c button { display: inline-block; height: 60px; line-height: 57px; padding:0 30px; *padding:0; border:none; border-radius:3px; background: #000; color: #fff; font-size: 18px; font-weight: bold; letter-spacing: -0.5px; font-family:'Malgun Gothic'; cursor:pointer; }
.all-finder-layer .finder-body .finder-btn-c button span.ico-search { visibility:visible; display:inline-block; width:16px; height:15px; margin-right:10px; margin-top:-4px; *margin-top:0; vertical-align:middle; background:url('/images/common/btn_h15_search.png') no-repeat 0 0; }
.all-finder-layer .finder-body .finder-btn-c button span.finder-count { visibility:visible; display:inline-block; height:60px; color:#ffd800; font-size:23px; *vertical-align:middle; }
.all-finder-layer .finder-body .finder-btn-c button span.finder-count-toggle { visibility:visible; display:none; }


.all-finder-layer .finder-body .finder-options { display:inline-block; margin:3px 5px 3px 0; padding: 5px 10px; cursor:pointer; line-height:22px; border: 1px solid #fff; vertical-align:top; word-break:break-all; }
.all-finder-layer .finder-body .finder-options.on { font-weight: bold; border: 1px solid #000; border-radius: 20px; box-shadow:2px 2px 3px #d2d2d2; }
.all-finder-layer .finder-body .finder-option-color em { display: inline-block; width: 22px; height: 22px; border-radius:20px; font-size:0; vertical-align:top; }
.all-finder-layer .finder-body .finder-option-color.color-picker { width:22px; height:22px; padding: 0; border: none; } 
.all-finder-layer .finder-body .finder-option-color.color-picker.on { border: none; }
.all-finder-layer .finder-body .finder-option-color.color-picker .fa-check { display:none; width:22px; height:22px; margin-top:-17px; color:#fff; text-align:center; }
.all-finder-layer .finder-body .finder-option-color.color-picker.on .fa-check { display:block; }
.all-finder-layer .finder-body .finder-option-color.color-picker.on.finder-option-color-white .fa-check { color:#000; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-black em { background-color: #000; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-white em { background-color: #FFF; width: 20px; height: 20px; border: 1px solid #e5e5e5; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-gray em { background-color: #808080; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-beige em { background-color: #e5d0b2; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-brown em { background-color: #aa6810; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-navy em { background-color: #425583; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-blue em { background-color: #0000ff; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-light-blue em { background-color: #62acff; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-red em { background-color: #ff0000; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-orange em { background-color: #ffa500; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-yellow em { background-color: #ffff00; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-pink em { background-color: #ffc0cb; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-purple em { background-color: #800080; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-jaju em { background-color: #a63f7f; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-khaki em { background-color: #2f5e2f; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-green em { background-color: #008000; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-light-green em { background-color: #72dd95; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-silver em { background-color: #dfdfdf; }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-gold em { background-color: #cfbc4e;  }
.all-finder-layer .finder-body .finder-option-color.finder-option-color-apricot em { background-color: #fbceb1;  }

.all-finder-layer .finder-body .search-auto-complete-list { display:none; z-index:1; position:absolute; top:30px; left:5px; border:1px solid #ddd; line-height:14px; background:#fff; }
.all-finder-layer .finder-body .search-auto-complete-list ul { width:340px; padding:4px 0 6px; border-bottom:1px solid #ddd; }
.all-finder-layer .finder-body .search-auto-complete-list ul li { text-align:left; }
.all-finder-layer .finder-body .search-auto-complete-list ul li.on { background:#f3f3f3; }
.all-finder-layer .finder-body .search-auto-complete-list ul li a{ display:block; padding:8px 14px 7px; color:#000; background:none; font-family:'dotum'; font-size:12px; letter-spacing:-1px; }
.all-finder-layer .finder-body .search-auto-complete-list ul li a strong { color:#ab3e41; }
.all-finder-layer .finder-body .search-auto-complete-list ul li a:hover { background:#f2f2f2; }
.all-finder-layer .finder-body .search-auto-complete-list ul li a:hover span { border-bottom:1px solid #000; }
.all-finder-layer .finder-body .search-auto-complete-list .search-list-close { display:block; padding:10px 11px; text-align:right; color:#999; font-size:11px; }

.all-finder-layer .finder-body .finder-search-data .finder-options { border: 1px solid #e5e5e5; box-shadow:none; }
.all-finder-layer .finder-body .finder-search-data .finder-options .fa-close { margin-left:10px; color: #999; }



/* renewal */ 
/* ----------------------- */
/* 1. 공통 및 유틸리티 */
/* ----------------------- */

.icon-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative; */
}

.icon-btn svg {
  width: 24px;
  height: 24px;
  stroke: #000;
  stroke-width: 2;
  fill: none;
}
#search-overlay .icon-btn svg,
#menu-overlay .icon-btn svg {
    stroke: #000;
}

.user_basket_quantity {
  position: absolute;
  top: -4px;
  right: -6px;
  background-color: var(--main1); 
  color: white;
  font-size: 11px;
  font-weight: bold;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}


/* ----------------------- */
/* 2. 헤더 (Header) 스타일 */
/* ----------------------- */
.header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  z-index: 100;
}

/* 로고 */
.header .logo {
  font-size: 24px;
  font-weight: 800;
  color: #000;
  letter-spacing: -0.5px;
  cursor: pointer;
}
.header .logo img {width:187px;}

/* 우측 아이콘 그룹 */
.header .icon-group {
  display: flex;
  align-items: center;
  gap: 20px;
}


/* ----------------------- */
/* 3. 검색 레이어 (Overlay) */
/* ----------------------- */
#search-overlay {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  max-width: 815px;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: 2000;
  overflow-y: auto;
}

#search-overlay .search-header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 60px;
  padding: 0 20px;
  gap: 20px;
}

#search-overlay .search-content {
  max-width: 80%;
  margin: 40px auto;
  padding: 0 20px;
}

#search-overlay .search-input-box {
  position: relative;
  border-bottom: 2px solid #000;
  padding-bottom: 10px;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
}

#search-overlay .search-input-box svg {
  width: 24px;
  height: 24px;
  stroke: #000;
  stroke-width: 2;
  fill: none;
  margin-right: 10px;
}

#search-overlay .search-input-box input {
  width: 100%;
  border: none;
  font-size: 18px;
  outline: none;
  color: #333;
}

#search-overlay .search-input-box input::placeholder {
  color: #ccc;
}

/* 추천 검색어 */
#search-overlay .recommend-section {
  margin-bottom: 50px;
}

#search-overlay .recommend-section h3 {
  font-size: 17px;
  color: #333;
  margin-bottom: 10px;
  font-weight: bold;
}

#search-overlay .recommend-tags {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#search-overlay .recommend-tags a {
  text-decoration: none;
  color: #888;
  font-size: 17px;
}

#search-overlay .recommend-tags a:hover {
  color: #000;
  text-decoration: underline;
}

#search-overlay .best-product-section h3 {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 20px;
}

#search-overlay .product-list {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding-bottom: 20px;
}

#search-overlay .product-item {
  width: 200px;
  flex: 0 0 auto;
  text-align: left;
  cursor: pointer;
}

#search-overlay .img-box {
  width: 100%;
  aspect-ratio: 1/1;
  background-color: #f0f0f0;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #aaa;
}

#search-overlay .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#search-overlay .prod-name {
  font-size: 13px;
  color: #333;
  line-height: 1.4;
}


/* ----------------------- */
/* 4. 메뉴 레이어 (Overlay) */
/* ----------------------- */
#menu-overlay {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  max-width: 815px;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: 2000;
  overflow-y: auto;
}
#menu-overlay .menu-header-bar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 60px;
  padding: 0 20px;
  gap: 15px;
}

#menu-overlay .menu-inner {
  padding: 20px 0 60px;
  max-width: 80%;
  margin: 0 auto;
}

#menu-overlay .auth-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
  margin-bottom: 40px;
  color: #555;
}

#menu-overlay .auth-left a {
  margin-right: 15px;
  font-size: 17px;
}

#menu-overlay .auth-left a + a {
  color: var(--main1);
}

#menu-overlay .auth-right a {
  cursor: pointer;
  font-size: 17px;
}

#menu-overlay .nav-list > li {
  margin-bottom: 25px;
}

#menu-overlay .nav-list > li > a {
  font-size: 22px;
  color: #111;
  display: block;
  font-weight: 400;
  line-height: 1.2;
}

#menu-overlay .nav-list > li > a.active {
  color: var(--main1);
}

#menu-overlay .nav-list > li.highlight a {
  color: var(--main1);
}

#menu-overlay .nav-list > li.gray a {
  color: #808080;
}

#menu-overlay .toggle-item {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#menu-overlay .sub-menu {
  display: none;
  padding: 15px 0 10px 10px;
  margin-top: 10px;
}

#menu-overlay .sub-menu li {
  margin-bottom: 12px;
}

#menu-overlay .sub-menu li a {
  font-size: 22px;
  color: #808080;
}
#menu-overlay .sub-menu li a .hot {
    color: var(--main1);
    border: 1px solid var(--main1);
    font-size: 12px;
    border-radius: 15px;
    height: 22px;
    display: inline-flex;
    padding: 0 6px;
    align-items: center;
    justify-content: center;
    line-height: 1;
    position: relative;
    top: -3px;
    margin-left: 5px;
}
#menu-overlay .menu-footer {
  margin-top: 60px;
  padding-top: 30px;
  border-top: 1px solid #eee;
  display: none;
  gap: 20px;
  align-items: center;
}

#menu-overlay .lang-btn {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  color: #aaa;
  cursor: pointer;
}

#menu-overlay .icon-insta {
  width: 20px;
  height: 20px;
  stroke: #aaa;
}


.kakao-fixed-btn {
    position: fixed;
    bottom: 25px;
    right: 25px; 
    z-index: 100;
     display: flex;
    width: 60px; 
    height: 60px;
    border-radius: 50%; 
    overflow: hidden; 
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.15); 
    background-color: #FEE500; 
    transition: transform 0.3s ease; 
    align-items: center;
    justify-content: center;
}
.kakao-fixed-btn img {
    width: 40px;
    height: 40px;
    object-fit: cover; 
    display: block; 
}
 

/* BASIC css end */

