/* ===========================================
   Tabs Component - Refined Design
   =========================================== */

.tabs {
  display: flex;
  background: transparent;
  margin-bottom: var(--spacing-xl);
  border-bottom: 1px solid var(--color-border);
  position: relative;
}

.tabs__list {
  display: flex;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.tabs__item {
  margin: 0;
}

.tabs__link {
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  padding: var(--spacing-md) var(--spacing-lg);
  color: var(--color-text-subtle);
  text-decoration: none;
  font-weight: var(--font-medium);
  font-size: var(--text-sm);
  border-bottom: 2px solid transparent;
  position: relative;
  white-space: nowrap;
  transition:
    color var(--duration-fast) var(--ease-out),
    background-color var(--duration-fast) var(--ease-out),
    border-color var(--duration-fast) var(--ease-out);
}

.tabs__link:hover {
  color: var(--color-text);
  background: var(--color-surface-hover);
}

.tabs__link--active {
  color: var(--color-primary);
  border-bottom-color: var(--color-primary);
  background: transparent;
}

/* Gradient accent for active tab */
.tabs__link--active::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--gradient-primary);
}

.tabs__link--active:hover {
  background: transparent;
}

/* Tab icon */
.tabs__icon {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
  flex-shrink: 0;
}

/* Tab count badge */
.tabs__count {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  padding: 2px var(--spacing-sm);
  border-radius: var(--radius-full);
  background: var(--color-surface-raised);
  color: var(--color-text-muted);
  font-family: var(--font-mono);
}

.tabs__link--active .tabs__count {
  background: var(--color-primary-surface);
  color: var(--color-primary);
}

/* ===========================================
   Responsive
   =========================================== */

@media (max-width: 640px) {
  .tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .tabs::-webkit-scrollbar {
    display: none;
  }

  .tabs__link {
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--text-xs);
  }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .tabs__link {
    transition: none;
  }
}
