/* Fix for modal flickering issues */
.modal {
  --bs-modal-zindex: 1055;
}

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
}

/* Prevent checkbox flickering */
.feature-checkbox {
  display: flex;
  align-items: center;
  padding: 12px;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  margin-bottom: 8px;
  transition: all 0.2s ease;
  cursor: pointer;
  user-select: none;
}

.feature-checkbox:hover {
  border-color: var(--primary-purple);
  background: rgba(139, 92, 246, 0.05);
}

.feature-checkbox input[type="checkbox"] {
  margin-right: 12px;
  transform: scale(1.2);
  pointer-events: auto;
}

.feature-checkbox.checked {
  border-color: var(--primary-purple);
  background: rgba(139, 92, 246, 0.1);
}

.feature-icon {
  font-size: 1.2rem;
  margin-right: 8px;
  pointer-events: none;
}

/* Enhanced form select styling */
.form-select[multiple] {
  min-height: 120px;
  background-image: none;
}

.form-select[multiple] option {
  padding: 8px 12px;
  border-radius: 6px;
  margin: 2px;
}

.form-select[multiple] option:checked {
  background: linear-gradient(135deg, var(--primary-purple), var(--secondary-purple));
  color: white;
}

/* Smooth transitions */
* {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
}

/* Prevent layout shifts */
.modal-dialog {
  transform: none !important;
}

.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}

.modal.show .modal-dialog {
  transform: none;
}
