/* PictoryPilot — Custom Styles */

.btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: #7c3aed;
  color: #fff;
  font-weight: 600;
  border-radius: 0.625rem;
  transition: background 0.15s, transform 0.1s, box-shadow 0.15s;
  cursor: pointer;
  border: none;
  text-decoration: none;
}
.btn-primary:hover {
  background: #6d28d9;
  box-shadow: 0 4px 18px rgba(109,40,217,.4);
}
.btn-primary:active { transform: scale(.97); }

.btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  background: #fff;
  color: #374151;
  font-weight: 600;
  border-radius: 0.625rem;
  border: 1.5px solid #e5e7eb;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
  cursor: pointer;
  text-decoration: none;
}
.btn-secondary:hover {
  border-color: #7c3aed;
  background: #f5f3ff;
  color: #7c3aed;
}

.card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.06);
}

/* FAQ details arrow */
details summary::-webkit-details-marker { display: none; }
details[open] summary span { transform: rotate(45deg); }

/* Animations */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}
.fade-in { animation: fadeIn 0.35s ease forwards; }

/* Mobile */
@media (max-width: 640px) {
  .btn-primary, .btn-secondary { width: 100%; justify-content: center; }
}
