.home-search {
  display: flex;
  align-items: center;
  margin: 10px var(--space-md) var(--space-md);
  min-height: 48px;
  padding: 0 var(--space-lg);
  background: var(--color-bg-white);
  border-radius: var(--radius-round);
  color: var(--color-text-placeholder);
  font-size: var(--font-size-lg);
  gap: var(--space-sm);
}

.home-search-icon {
  width: 20px;
  height: 20px;
  opacity: 0.55;
}

.home-banner {
  margin: 0 var(--space-md);
}

.home-categories {
  display: flex;
  overflow-x: auto;
  padding: 12px var(--space-md) 10px;
  gap: 12px;
  -webkit-overflow-scrolling: touch;
}

.home-category-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 58px;
}

.home-category-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 6px;
  background: var(--category-bg);
  color: var(--category-color);
}

.home-category-icon svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.85;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.home-category-name {
  font-size: var(--font-size-sm);
  font-weight: 600;
  color: var(--color-text-body);
  white-space: nowrap;
}

.home-tabs {
  display: flex;
  padding: 0 var(--space-md);
  gap: 28px;
  border-bottom: 1px solid var(--color-divider);
  background: var(--color-bg-white);
  position: sticky;
  top: 0;
  z-index: var(--z-sticky);
}

.home-tab {
  min-height: 44px;
  padding: 11px 0;
  font-size: var(--font-size-lg);
  color: var(--color-text-secondary);
  position: relative;
  white-space: nowrap;
}

.home-tab.active {
  color: var(--color-text-title);
  font-weight: 600;
}

.home-tab.active::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 3px;
  background: var(--color-primary);
  border-radius: 2px;
}

.home-products {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  padding: 10px var(--space-md);
}

.home-load-more {
  text-align: center;
  padding: var(--space-lg);
  color: var(--color-text-secondary);
  font-size: var(--font-size-base);
}
