/* 기존 wholesale.css 위에 덮어쓰는 카테고리 전용 보완 CSS */
.category-sidebar { overflow: visible; }
.category-sidebar nav { position: relative; }
.category-sidebar nav .category-nav-list { list-style: none; padding: 0; margin: 0; }
.category-sidebar nav .category-nav-item { position: relative; }
.category-sidebar nav .category-nav-link { padding-right: 36px; }
.category-sidebar nav .category-nav-link span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.category-sidebar nav .category-nav-item.is-current > .category-nav-link { color: var(--blue); font-weight: 750; background: #eef2ff; }
.category-sidebar .category-empty { margin: 8px 10px; font-size: 12px; color: #8290a1; }
.category-sidebar nav .category-expand { position: absolute; top: 3px; right: 6px; width: 27px; height: 27px; border: 0; background: transparent; color: #9aa5b6; cursor: pointer; z-index: 1; display: grid; place-items: center; border-radius: 6px; }
.category-sidebar nav .category-expand .icon { height: 14px; width: 14px; }
.category-sidebar nav .category-expand:hover, .category-sidebar nav .category-expand:focus-visible { color: var(--blue); background: #eef2ff; }
.category-sidebar nav .category-flyout { display: none; position: absolute; top: -8px; left: 100%; min-width: 228px; max-width: 265px; background: white; border: 1px solid #e5e9f0; border-radius: 10px; box-shadow: 0 12px 32px rgba(20,38,65,.14); z-index: 40; padding: 8px; }
.category-sidebar nav .category-nav-item:hover > .category-flyout,
.category-sidebar nav .category-nav-item:focus-within > .category-flyout,
.category-sidebar nav .category-nav-item.is-expanded > .category-flyout { display: block; }
.category-sidebar nav .category-flyout .category-view-all { font-weight: 750; color: var(--blue); background: #f2f5ff; margin-bottom: 5px; }
.category-sidebar nav .category-flyout .category-nav-link { height: 35px; padding-right: 34px; }
.category-sidebar nav .category-flyout .category-nav-link span { white-space: normal; }
.category-sidebar .sidebar-bottom { border-radius: 0 0 11px 11px; }

/* 11개 이상의 카테고리도 기존 카드 디자인으로 자연스럽게 표시 */
.category-shortcuts { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.category-shortcuts > .category-empty { grid-column: 1 / -1; color: #8290a1; }

.category-detail-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 24px; align-items: start; }
.category-detail-main { min-width: 0; }
.category-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; margin: 4px 0 22px; color: #718096; font-size: 12px; }
.category-breadcrumb a:hover { color: var(--blue); }
.category-breadcrumb strong { color: #26354b; }
.category-detail-heading { background: linear-gradient(120deg, #f2f6ff, #fbfdff); border: 1px solid #e9effa; padding: 35px; border-radius: 14px; }
.category-detail-heading h1 { margin: 8px 0; font-size: 29px; letter-spacing: -1px; }
.category-detail-heading p { margin: 0; color: #708096; font-size: 13px; }
.category-child-section { margin-top: 32px; }
.category-child-section h2 { margin: 0 0 17px; font-size: 19px; }
.category-child-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 13px; }
.category-child-card { background: white; border: 1px solid #e7ebf2; border-radius: 12px; padding: 18px; }
.category-child-card .category-child-title { display: flex; align-items: center; justify-content: space-between; color: #26354b; font-size: 14px; font-weight: 750; }
.category-child-card .category-child-title:hover { color: var(--blue); }
.category-child-card ul { padding: 9px 0 0 14px; margin: 9px 0 0; border-top: 1px solid #eef0f4; }
.category-child-card li { margin: 7px 0; font-size: 12px; color: #718096; }
.category-child-card li a:hover { color: var(--blue); }
.category-product-placeholder { text-align: center; margin-top: 30px; padding: 60px 24px; border: 1px dashed #dce4f1; border-radius: 14px; background: #fafcff; }
.category-product-placeholder > .icon { height: 31px; width: 31px; color: #8194bc; }
.category-product-placeholder h2 { font-size: 19px; margin: 17px 0 8px; }
.category-product-placeholder p { font-size: 12px; line-height: 1.8; color: #748298; }
.category-product-placeholder a { display: inline-block; margin-top: 10px; color: var(--blue); font-weight: 700; font-size: 12px; }

@media (max-width: 1120px) {
    .category-detail-layout { grid-template-columns: 215px minmax(0, 1fr); }
    .category-child-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 850px) {
    .category-shortcuts { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .category-detail-layout { display: block; position: relative; }
    .category-detail-layout .category-sidebar { position: absolute; top: 0; left: 0; }
    .category-sidebar.is-open { max-height: min(70vh, 640px); overflow-y: auto; overflow-x: hidden; }
    .category-sidebar nav .category-flyout { position: static; box-shadow: none; max-width: none; min-width: 0; border: 0; border-left: 2px solid #e4e9f6; border-radius: 0; margin: 2px 0 5px 17px; padding: 3px 0 3px 7px; }
    .category-sidebar nav .category-nav-item:hover > .category-flyout,
    .category-sidebar nav .category-nav-item:focus-within > .category-flyout { display: none; }
    .category-sidebar nav .category-nav-item.is-expanded > .category-flyout { display: block; }
    .category-sidebar nav .category-flyout .category-view-all { background: none; }
    .category-detail-heading { padding: 26px; }
}
@media (max-width: 620px) {
    .category-shortcuts { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .category-child-grid { grid-template-columns: 1fr; }
    .category-detail-heading h1 { font-size: 25px; }
}
