/* Status: semantic state indicators. */
.ds-status {
  --ds-status-fg: var(--ds-status-neutral);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-1);
  width: fit-content;
  min-height: 26px;
  padding: 0 10px;
  border: 1px solid color-mix(in srgb, var(--ds-status-fg) 30%, transparent);
  border-radius: var(--radius-pill);
  background: color-mix(in srgb, var(--ds-status-fg) 13%, transparent);
  color: var(--ds-status-fg);
  font-size: 0.72rem;
  font-weight: var(--font-weight-semibold);
  line-height: 1;
  white-space: nowrap;
}

.ds-status svg.lucide {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
}

.ds-status--neutral {
  --ds-status-fg: var(--ds-status-neutral);
}
.ds-status--muted {
  --ds-status-fg: var(--ds-status-muted);
}
.ds-status--info {
  --ds-status-fg: var(--ds-status-info);
}
.ds-status--success {
  --ds-status-fg: var(--ds-status-success);
}
.ds-status--warning {
  --ds-status-fg: var(--ds-status-warning);
}
.ds-status--danger {
  --ds-status-fg: var(--ds-status-danger);
}
.ds-status--brand {
  --ds-status-fg: var(--ds-status-brand);
}

body.admin-dashboard.admin-dark,
html:not([data-empresas-theme]) body.view-empresas,
html[data-empresas-theme="dark"] body.view-empresas {
  --ds-status-neutral: var(--admin-text-soft, var(--emp-soft, #b8bfd1));
  --ds-status-muted: var(--admin-text-secondary, var(--emp-muted, #939db8));
  --ds-status-info: var(
    --admin-primary-light,
    var(--emp-primary-light, #7c87f7)
  );
  --ds-status-success: var(--admin-success, var(--emp-success, #64c28d));
  --ds-status-warning: var(--admin-warning, var(--emp-warning, #ec9070));
  --ds-status-danger: var(--admin-danger, var(--emp-danger, #e0687d));
  --ds-status-brand: var(--ds-status-info);
}

.ds-status--pulse {
  animation: dsStatusPulse 1.3s ease-out 1;
}

@keyframes dsStatusPulse {
  0% {
    box-shadow: 0 0 0 0 color-mix(in srgb, var(--ds-status-fg) 45%, transparent);
    transform: scale(1);
  }
  18% {
    transform: scale(1.14);
  }
  100% {
    box-shadow: 0 0 0 12px transparent;
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ds-status--pulse {
    animation: none;
  }
}
