/* Responsabilidad: acciones, botones y grupos de CTA reutilizables del portal interno. */

.ui-button {
  --ui-button-bg: var(--wm-azul-oscuro);
  --ui-button-border: var(--wm-azul-oscuro);
  --ui-button-color: #fff;
  min-height: var(--control-h-sm);
  padding: 0 var(--space-4);
  border: 1px solid var(--ui-button-border);
  border-radius: var(--r-pill);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  background: var(--ui-button-bg);
  color: var(--ui-button-color);
  font: 500 13px/1.2 var(--font-sans);
  letter-spacing: -0.005em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.ui-button:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: #1f2541;
  --ui-button-border: #1f2541;
  color: var(--ui-button-color);
}

.ui-button--primary {
  --ui-button-bg: var(--wm-rojo);
  --ui-button-border: var(--wm-rojo);
  box-shadow: 0 6px 14px -8px rgba(204, 45, 59, 0.65);
}

.ui-button--primary:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: var(--wm-rojo-700);
  --ui-button-border: var(--wm-rojo-700);
}

.ui-button--secondary {
  --ui-button-bg: var(--wm-azul-oscuro);
  --ui-button-border: var(--wm-azul-oscuro);
}

.ui-button--outline {
  --ui-button-bg: transparent;
  --ui-button-border: var(--line);
  --ui-button-color: var(--fg-muted);
}

.ui-button--outline:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: transparent;
  --ui-button-border: var(--fg-muted);
  --ui-button-color: var(--fg);
}

.ui-button--ghost {
  --ui-button-bg: transparent;
  --ui-button-border: transparent;
  --ui-button-color: var(--fg-muted);
}

.ui-button--ghost:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: var(--info-bg);
  --ui-button-border: transparent;
  --ui-button-color: var(--fg);
}

.ui-button--danger {
  --ui-button-bg: var(--alert-fg);
  --ui-button-border: var(--alert-fg);
  --ui-button-color: #fff;
}

.ui-button--danger:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: color-mix(in srgb, var(--alert-fg) 86%, #000);
  --ui-button-border: color-mix(in srgb, var(--alert-fg) 86%, #000);
}

.ui-button--danger-ghost {
  --ui-button-bg: transparent;
  --ui-button-border: transparent;
  --ui-button-color: var(--alert-fg);
}

.ui-button--danger-ghost:hover:not(:disabled, [aria-disabled='true']) {
  --ui-button-bg: var(--alert-bg);
  --ui-button-border: transparent;
  --ui-button-color: var(--alert-fg);
}

.ui-button--sm {
  min-height: 32px;
  padding-inline: var(--space-3);
  font-size: 12px;
}

.ui-button--lg {
  min-height: var(--control-h-lg);
  padding-inline: var(--space-6);
  font-size: 15px;
}

.ui-button:disabled,
.ui-button[aria-disabled='true'] {
  opacity: 0.48;
  box-shadow: none;
  cursor: not-allowed;
}

.ui-button svg {
  flex: 0 0 auto;
}
