.yc-cart-filters {
  position: relative;
  margin-bottom: 24px;
  padding: 26px 28px;
  border: 1px solid #dce9fb;
  border-radius: 22px;
  background: radial-gradient(ellipse at 100% 0, rgba(118, 192, 255, .18), transparent 55%), linear-gradient(120deg, #fff 30%, #f3f8ff);
  box-shadow: 0 12px 32px rgba(40, 95, 167, .06);
}

.yc-cart-filters .firstgroup_box,
.yc-cart-filters .secondgroup_box {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.yc-cart-filters .secondgroup_box {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid #e1ebf8;
}

.yc-cart-filters .yc-filter-label {
  display: flex;
  flex: 0 0 82px;
  align-items: center;
  gap: 9px;
  min-height: 52px;
  margin: 0;
  color: #49617e;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

.yc-cart-filters .yc-filter-label svg {
  flex-shrink: 0;
  width: 19px;
  height: 19px;
  color: #3684e9;
}

.yc-cart-filters .secondgroup_box .yc-filter-label { min-height: 44px; }

.yc-cart-filters .firstgroup_box_group,
.yc-cart-filters .secondgroup_box_group {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: 12px;
  min-width: 0;
}

.yc-cart-filters .firstgroup_item,
.yc-cart-filters .secondgroup_item {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 126px;
  min-height: 52px;
  overflow: hidden;
  padding: 13px 26px;
  border: 1px solid #dce8f8;
  border-radius: 999px;
  color: #47617e;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 3px 8px rgba(35, 84, 153, .03);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, color .22s ease, background .22s ease;
}

.yc-cart-filters .secondgroup_item {
  min-width: 100px;
  min-height: 44px;
  padding: 10px 22px;
  font-size: 13px;
  font-weight: 500;
}

.yc-cart-filters .firstgroup_item span,
.yc-cart-filters .secondgroup_item span {
  position: relative;
  z-index: 1;
  overflow-wrap: anywhere;
}

.yc-cart-filters .firstgroup_item::after,
.yc-cart-filters .secondgroup_item::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, .28) 50%, transparent 75%);
  transform: translateX(-110%);
  transition: transform .5s ease;
  pointer-events: none;
}

.yc-cart-filters .firstgroup_item:hover,
.yc-cart-filters .secondgroup_item:hover {
  border-color: #a7ceff;
  color: #1262ce;
  background: #edf6ff;
  box-shadow: 0 7px 16px rgba(32, 111, 220, .1);
  transform: translateY(-3px);
}

.yc-cart-filters .firstgroup_item.active,
.yc-cart-filters .secondgroup_item.active {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(120deg, #1261dd, #2686f5 62%, #48a7ff);
  box-shadow: 0 7px 18px rgba(29, 115, 231, .24), inset 0 1px 0 rgba(255, 255, 255, .25);
}

.yc-cart-filters .firstgroup_item.active::before,
.yc-cart-filters .secondgroup_item.active::before {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 255, 255, .17);
  content: "";
}

.yc-cart-filters a:hover::after { transform: translateX(110%); }
.yc-cart-filters a:focus-visible { outline: 3px solid #8cbeff; outline-offset: 4px; }

@media (max-width: 767px) {
  .yc-cart-filters { padding: 22px 20px; }
  .yc-cart-filters .firstgroup_box,
  .yc-cart-filters .secondgroup_box { flex-direction: column; gap: 12px; }
  .yc-cart-filters .yc-filter-label,
  .yc-cart-filters .secondgroup_box .yc-filter-label { flex-basis: auto; min-height: 0; }
  .yc-cart-filters .firstgroup_box_group,
  .yc-cart-filters .secondgroup_box_group { width: 100%; gap: 10px; }
  .yc-cart-filters .secondgroup_box { margin-top: 20px; padding-top: 20px; }
}

@media (max-width: 480px) {
  .yc-cart-filters { padding: 20px 16px; border-radius: 18px; }
  .yc-cart-filters .firstgroup_item { flex: 1 1 calc(50% - 10px); min-width: 0; padding: 12px 15px; font-size: 14px; }
  .yc-cart-filters .secondgroup_item { min-width: 0; padding: 10px 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .yc-cart-filters a,
  .yc-cart-filters a::after { transition: none; transform: none; }
}
