.firstgroup_box,
.secondgroup_box {
  min-height: 30px;
  padding: 10px 20px;
  background-color: #fff;
  box-shadow: 0 4px 15px 1px rgba(6, 75, 179, 0.06);
  display: flex;
  align-items: center;
}

.firstgroup_box .firstgroup_box_prov,
.secondgroup_box .secondgroup_box_area {
  color: #0e62ff;
  display: inline-block;
  min-width: 60px;
}

.firstgroup_box .firstgroup_box_group,
.secondgroup_box .secondgroup_box_group {
  width: 100%;
  /* display: grid;
    grid-template-columns: repeat(auto-fit, 110px);
    gap: 10px 0; */
}

.firstgroup_box .firstgroup_item,
.secondgroup_box .secondgroup_item,
.pro_box .pro_item {
  height: 28px;
  box-shadow: 0px 4px 15px 1px rgba(6, 75, 179, 0.06);
  border-radius: 1px;
  border: solid 1px #ced1e2;
  margin-left: -1px;
  float: left;
  margin-bottom: 3px;
}

.firstgroup_box .firstgroup_item.active,
.firstgroup_box .firstgroup_item:hover,
.secondgroup_box .secondgroup_item.active,
.secondgroup_box .secondgroup_item:hover,
.pro_box .pro_item.active,
.pro_box .pro_item:hover {
  background-color: #0e62ff;
  border-color: #0e62ff;
  box-shadow: 0 4px 15px 1px rgba(6, 75, 179, 0.06);
  border-radius: 1px;
  color: #fff;
}
.firstgroup_box a,
.secondgroup_box a,
.pro_box a,
.firstgroup_box .firstgroup_item,
.secondgroup_box .secondgroup_item,
.pro_box .pro_item {
  color: #495057;
  min-width: 120px;
  padding: 0 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
}
.firstgroup_box a:hover,
.secondgroup_box a:hover,
.pro_box a:hover,
.firstgroup_box .firstgroup_item:hover a,
.secondgroup_box .secondgroup_item:hover a,
.pro_box .pro_item:hover a {
  color: #fff;
}

/* ===== 左侧分类栏 + 右侧商品区 ===== */
.zhi-layout {
  display: flex;
  align-items: flex-start;
}

.zhi-side {
  flex: 0 0 200px;
  width: 200px;
  margin-right: 16px;
  /* 不跟着容器拉高，否则没有可滑动余量，sticky 不会生效 */
  align-self: flex-start;
  position: -webkit-sticky;
  position: sticky;
  top: 16px;
  z-index: 2;
  /* 分类过多时侧栏内部自己滚，不顶出视口 */
  max-height: calc(100vh - 32px);
  overflow-y: auto;
}

.zhi-main {
  flex: 1 1 auto;
  min-width: 0;
}

/* sticky 会被任何祖先的 overflow 裁剪，确保自己这几层不裁 */
.zhi-layout,
.zhi-main,
.zhi-main .product-wrap {
  overflow: visible;
}

/* 侧边栏里的分组盒子改为纵向排列 */
.zhi-side .firstgroup_box,
.zhi-side .secondgroup_box {
  display: block;
  padding: 14px 12px;
  border-radius: 4px;
}

.zhi-side .firstgroup_box_prov,
.zhi-side .secondgroup_box_area {
  display: block;
  min-width: 0;
  margin: 0 0 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid #eef0f6;
  font-size: 13px;
  font-weight: 600;
}

.zhi-side .firstgroup_box_group,
.zhi-side .secondgroup_box_group {
  overflow: hidden;
}

.zhi-side .firstgroup_item,
.zhi-side .secondgroup_item {
  float: none;
  width: 100%;
  height: auto;
  margin: 0 0 6px;
  border-radius: 3px;
}

.zhi-side .firstgroup_item:last-child,
.zhi-side .secondgroup_item:last-child {
  margin-bottom: 0;
}

.zhi-side .firstgroup_item a,
.zhi-side .secondgroup_item a {
  width: 100%;
  min-width: 0;
  padding: 7px 10px;
  justify-content: flex-start;
  font-size: 13px;
}

/* 窄屏回退成上下堆叠，分类项两列平铺 */
@media (max-width: 991px) {
  .zhi-layout {
    display: block;
  }

  .zhi-side {
    width: auto;
    margin-right: 0;
    position: static;
    max-height: none;
    overflow: visible;
  }

  .zhi-side .firstgroup_item,
  .zhi-side .secondgroup_item {
    float: left;
    width: 50%;
  }
}
