/**
 * @file
 * Tabs/local tasks styles for Invertir Pro theme.
 */

/* ========================================
 * TABS CONTAINER
 * ======================================== */

.tabs-wrapper {
  margin-bottom: var(--space-xl);
}

/* ========================================
 * PRIMARY TABS
 * ======================================== */

.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2xs);
  list-style: none;
  margin: 0;
  padding: 0;
  border-bottom: 2px solid var(--color-border-light);
}

.tabs__tab {
  margin-bottom: -2px;
}

.tabs__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-sm) var(--space-lg);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-secondary);
  text-decoration: none;
  background-color: transparent;
  border: 2px solid transparent;
  border-bottom: none;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  transition: all var(--transition-fast);
}

.tabs__link:hover {
  color: var(--color-text-primary);
  background-color: var(--color-bg-light);
}

.tabs__link.is-active,
.tabs__tab--active .tabs__link {
  color: var(--color-text-primary);
  background-color: var(--color-white);
  border-color: var(--color-border-light);
}

.tabs__link.is-active::after,
.tabs__tab--active .tabs__link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  height: 2px;
  background-color: var(--color-white);
}

/* ========================================
 * SECONDARY TABS
 * ======================================== */

.tabs--secondary {
  border-bottom: none;
  background-color: var(--color-bg-light);
  padding: var(--space-xs);
  border-radius: var(--radius-md);
}

.tabs--secondary .tabs__link {
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--radius-sm);
}

.tabs--secondary .tabs__link.is-active,
.tabs--secondary .tabs__tab--active .tabs__link {
  background-color: var(--color-white);
  border-color: transparent;
  box-shadow: var(--shadow-sm);
}

/* ========================================
 * VERTICAL TABS
 * ======================================== */

.tabs--vertical {
  flex-direction: column;
  border-bottom: none;
  border-right: 2px solid var(--color-border-light);
  padding-right: var(--space-md);
}

.tabs--vertical .tabs__tab {
  margin-bottom: 0;
  margin-right: -2px;
}

.tabs--vertical .tabs__link {
  border-radius: var(--radius-md) 0 0 var(--radius-md);
  border: 2px solid transparent;
  border-right: none;
}

.tabs--vertical .tabs__link.is-active,
.tabs--vertical .tabs__tab--active .tabs__link {
  border-color: var(--color-border-light);
}

/* ========================================
 * ADMIN TABS (DRUPAL)
 * ======================================== */

nav.tabs {
  margin-bottom: var(--space-lg);
}

.primary-tabs,
.secondary-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2xs);
  list-style: none;
  margin: 0 0 var(--space-lg);
  padding: 0;
  border-bottom: 2px solid var(--color-border-light);
}

.primary-tabs__item,
.secondary-tabs__item {
  margin-bottom: -2px;
}

.primary-tabs__link,
.secondary-tabs__link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-sm) var(--space-lg);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-secondary);
  text-decoration: none;
  background-color: transparent;
  border: 2px solid transparent;
  border-bottom: none;
  border-radius: var(--radius-md) var(--radius-md) 0 0;
  transition: all var(--transition-fast);
}

.primary-tabs__link:hover,
.secondary-tabs__link:hover {
  color: var(--color-text-primary);
  background-color: var(--color-bg-light);
}

.primary-tabs__link.is-active,
.secondary-tabs__link.is-active {
  color: var(--color-text-primary);
  background-color: var(--color-white);
  border-color: var(--color-border-light);
}

/* ========================================
 * LOCAL TASKS BLOCK - BUTTON STYLE
 * ======================================== */

#block-invertir-pro-primary-local-tasks {
  margin-bottom: var(--space-lg);
}

#block-invertir-pro-primary-local-tasks .tabs,
#block-invertir-pro-primary-local-tasks nav {
  border-bottom: none;
}

#block-invertir-pro-primary-local-tasks ul,
#block-invertir-pro-primary-local-tasks .primary-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  list-style: none;
  margin: 0;
  padding: 0;
  border-bottom: none;
}

#block-invertir-pro-primary-local-tasks li,
#block-invertir-pro-primary-local-tasks .primary-tabs__item {
  margin: 0;
}

#block-invertir-pro-primary-local-tasks a,
#block-invertir-pro-primary-local-tasks .primary-tabs__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-xs);
  padding: var(--space-sm) var(--space-xl);
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  background-color: transparent;
  color: var(--color-black);
  border: 2px solid var(--color-black);
  border-radius: var(--radius-full);
  transition: all var(--transition-normal) var(--ease-out-expo);
}

#block-invertir-pro-primary-local-tasks a:hover,
#block-invertir-pro-primary-local-tasks .primary-tabs__link:hover {
  background-color: var(--color-black);
  color: var(--color-white);
  transform: translateY(-2px);
  box-shadow: var(--shadow-md);
}

#block-invertir-pro-primary-local-tasks a:active,
#block-invertir-pro-primary-local-tasks .primary-tabs__link:active {
  transform: translateY(0);
  box-shadow: none;
}

#block-invertir-pro-primary-local-tasks a.is-active,
#block-invertir-pro-primary-local-tasks .primary-tabs__link.is-active {
  background-color: var(--color-peach);
  color: var(--color-black);
  border-color: var(--color-peach);
}

#block-invertir-pro-primary-local-tasks a.is-active:hover,
#block-invertir-pro-primary-local-tasks .primary-tabs__link.is-active:hover {
  background-color: var(--color-peach-dark);
  border-color: var(--color-peach-dark);
}

#block-invertir-pro-primary-local-tasks a:focus-visible,
#block-invertir-pro-primary-local-tasks .primary-tabs__link:focus-visible {
  outline: 2px solid var(--color-black);
  outline-offset: 2px;
}
