/* 
 * Button Components - Zekt SaaS Landing Page
 * Extracted from components.css for modular architecture
 */

/* ==========================================================================
   Button Components
   ========================================================================== */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-lg);
  font-family: inherit;
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: 1px solid transparent;
  border-radius: var(--radius-lg);
  transition: all var(--transition-fast);
  outline: none;
}

.btn:focus {
  box-shadow: 0 0 0 2px var(--color-accent);
}

.btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

.btn-muted {
  opacity: 0.5;
  filter: grayscale(30%);
}

.btn-muted:hover {
  transform: none;
}

/* Button Variants */
.btn-primary {
  color: var(--color-bg-primary);
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}

.btn-primary:hover {
  background-color: #000000;
  border-color: var(--color-accent);
  color: var(--color-accent);
}

.btn-outline {
  color: var(--color-text-primary);
  background-color: transparent;
  border-color: var(--color-border);
}

.btn-outline:hover {
  color: var(--color-bg-primary);
  background-color: var(--color-text-primary);
  border-color: var(--color-text-primary);
}

.btn-secondary {
  color: var(--color-text-secondary);
  background-color: transparent;
  border-color: var(--color-border);
}

.btn-secondary:hover {
  color: var(--color-accent);
  background-color: var(--color-bg-secondary);
  border-color: var(--color-accent);
}

.btn-danger {
  color: var(--color-bg-primary);
  background-color: #ff4444;
  border-color: #ff4444;
}

.btn-danger:hover {
  background-color: #cc0000;
  border-color: #cc0000;
}

/* Button Sizes */
.btn-large {
  padding: var(--space-md) var(--space-xl);
  font-size: var(--font-size-lg);
}

.btn-small,
.btn-sm {
  padding: var(--space-xs) var(--space-md);
  font-size: var(--font-size-sm);
}

.btn-block {
  width: 100%;
}
