/* YES Funnel — shared button system.
   One source of truth for every button in the app. Loaded after each
   page's stylesheet so these rules win over any older per-page styles. */

.btn,
.btn-primary,
.btn-secondary,
.btn-danger,
.btn-purple {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 500;
  font-family: inherit;
  padding: 10px 20px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.1s ease;
}

/* Primary (blue) — canonical class + legacy alias */
.btn-primary,
.btn-blue {
  background: #2563eb;
  color: #ffffff;
  border: none;
}

.btn-primary:hover,
.btn-blue:hover {
  background: #1d4ed8;
}

.btn-primary:active,
.btn-blue:active {
  transform: scale(0.98);
}

.btn-primary:disabled,
.btn-blue:disabled,
.btn:disabled {
  background: #93c5fd;
  color: #ffffff;
  cursor: not-allowed;
  transform: none;
}

/* Secondary (white with border) — canonical class + legacy aliases */
.btn-secondary,
.btn-gray,
.btn-outline {
  background: #ffffff;
  color: #374151;
  border: 1px solid #e5e7eb;
}

.btn-secondary:hover,
.btn-gray:hover,
.btn-outline:hover {
  background: #f9fafb;
  border-color: #d1d5db;
}

/* Danger (white with red border) — canonical class + legacy alias */
.btn-danger,
.btn-red {
  background: #ffffff;
  color: #dc2626;
  border: 1px solid #fca5a5;
}

.btn-danger:hover,
.btn-red:hover {
  background: #fee2e2;
  border-color: #ef4444;
}

/* Purple (AI actions) */
.btn-purple {
  background: #7c3aed;
  color: #ffffff;
  border: none;
}

.btn-purple:hover {
  background: #6d28d9;
}
