/* THE LAB KOREA — tablet/mobile category drawer v2 */
@media (max-width:960px){
  body.tlk-cat-open{ overflow:hidden !important; }
  body.tlk-cat-open #layout_header.tlk-header .tlkh-nav{
    display:block !important; position:fixed !important; inset:0 !important; z-index:10019 !important;
    background:#fff !important;
  }
  body.tlk-cat-open #layout_header.tlk-header .tlkh-nav > .tlkh-inner,
  body.tlk-cat-open #layout_header.tlk-header .designCategoryNavigation,
  body.tlk-cat-open #layout_header.tlk-header .respCategoryList,
  body.tlk-cat-open #layout_header.tlk-header .nav_category_all{
    display:block !important; width:100% !important; height:100% !important; margin:0 !important; padding:0 !important;
  }
  body.tlk-cat-open #layout_header.tlk-header .categoryAllSub{ display:block !important; }
  #layout_header.tlk-header .categoryAllSub{
    position:fixed !important; inset:0 !important; z-index:10020 !important;
    width:100% !important; height:100dvh !important; max-height:none !important;
    padding:0 18px 28px !important; overflow-y:auto !important;
    background:#fff !important; box-shadow:none !important; border:0 !important;
  }
  #layout_header.tlk-header .categoryAllSub > ul{
    display:block !important; width:100% !important; margin:0 !important; padding:0 !important;
  }
  #layout_header.tlk-header .tlk-cat-drawer-head{
    position:sticky; top:0; z-index:3; display:grid; grid-template-columns:1fr 44px;
    align-items:center; gap:10px; padding:18px 0 14px; background:#fff;
    border-bottom:1px solid #e8e8ef;
  }
  #layout_header.tlk-header .tlk-cat-drawer-head strong{ font-size:18px; letter-spacing:-.02em; }
  #layout_header.tlk-header .tlk-cat-close{
    width:44px; height:44px; border:0; border-radius:50%; background:#f5f5f8;
    font-size:26px; line-height:1; color:#24242e; cursor:pointer;
  }
  #layout_header.tlk-header .tlk-cat-search{
    grid-column:1/-1; width:100%; height:44px; padding:0 15px; border:1px solid #dedee7;
    border-radius:10px; background:#fafafd; font-size:14px; outline:0;
  }
  #layout_header.tlk-header .tlk-cat-search:focus{ border-color:#4c46dc; background:#fff; }
  #layout_header.tlk-header .categoryAllSub .categoryDepth1{
    display:block !important; position:relative !important; width:100% !important;
    margin:0 !important; padding:0 !important; border-bottom:1px solid #f0f0f4 !important;
  }
  #layout_header.tlk-header .categoryAllSub .categoryDepth1 > .categoryDepthLink{
    display:flex !important; align-items:center; justify-content:space-between;
    min-height:54px !important; padding:0 42px 0 2px !important;
    font-size:15px !important; font-weight:650 !important; color:#20202a !important;
  }
  #layout_header.tlk-header .categoryAllSub .categoryDepth1:has(.categorySub) > .categoryDepthLink:after{
    content:'+' !important; display:block !important; position:absolute; right:5px; top:13px;
    font-size:21px; font-weight:300; color:#8e8e9a;
  }
  #layout_header.tlk-header .categoryAllSub .categoryDepth1.tlk-mobile-open > .categoryDepthLink:after{ content:'−' !important; color:#4c46dc; }
  #layout_header.tlk-header .categoryAllSub .categorySub{
    display:none !important; position:static !important; width:100% !important; height:auto !important;
    min-height:0 !important; padding:0 0 16px !important; overflow:visible !important;
    border:0 !important; box-shadow:none !important; background:#fff !important;
  }
  #layout_header.tlk-header .categoryAllSub .categoryDepth1.tlk-mobile-open .categorySub{ display:block !important; }
  #layout_header.tlk-header .categoryAllSub .categorySubWrap{ padding:0 !important; }
  #layout_header.tlk-header .categoryAllSub ul.categoryDepth2,
  #layout_header.tlk-header .categoryAllSub ul.categoryDepth2.grouped{
    display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important; margin:0 !important; padding:0 !important;
  }
  #layout_header.tlk-header .categoryAllSub .categorySubDepth > a{
    display:flex !important; min-height:38px; align-items:center; padding:8px 10px !important;
    border:1px solid #e7e7ee !important; border-radius:8px !important;
    background:#fafafd !important; font-size:12.5px !important; line-height:1.3 !important;
  }
  #layout_header.tlk-header .categoryAllSub .cat-group{ grid-column:1/-1; }
  #layout_header.tlk-header .categoryAllSub .cat-group-items{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  #layout_header.tlk-header .categoryAllSub .cat-group-head{ margin:10px 0 6px !important; padding:0 !important; border:0 !important; }
  #layout_header.tlk-header .categoryAllSub .tlk-cat-hidden{ display:none !important; }
}
@media (max-width:420px){
  #layout_header.tlk-header .categoryAllSub{ padding-left:14px !important; padding-right:14px !important; }
}

/* 상품 목록 구매 버튼: 텍스트를 버튼 박스의 수직·수평 정중앙에 고정 */
#tlkCatalog .tlk-btn{
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1 !important;
}

/* 대분류 상단의 세부 카테고리를 상품 목록과 분리된 탐색 패널로 정돈 */
#tlkCatalog .tlk-subcats{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:16px 0 28px !important;
  padding:16px !important;
  border:1px solid #e3e6ee !important;
  border-radius:12px !important;
  background:#f7f8fb !important;
}
#tlkCatalog .tlk-subcats::before{
  content:"세부 카테고리";
  flex:0 0 100%;
  margin:0 0 3px;
  color:#777d8c;
  font-size:11px;
  font-weight:700;
  letter-spacing:.02em;
}
#tlkCatalog .tlk-subcat{
  justify-content:space-between !important;
  gap:10px !important;
  min-height:34px;
  padding:8px 12px !important;
  border:1px solid #dfe3eb !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:0 1px 2px rgba(24,31,49,.025);
}
#tlkCatalog .tlk-subcat:hover{
  border-color:#a9a2ff !important;
  color:#4338ca !important;
  background:#f5f3ff !important;
  box-shadow:0 2px 6px rgba(79,70,229,.08);
}
#tlkCatalog .tlk-subcat em{
  padding-left:8px;
  border-left:1px solid #edf0f5;
  color:#9298a7 !important;
}
