/* Bootstrap 5 Theme Enhancements */
:root {
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
}

/* Custom utility classes */
.min-vh-75 {
  min-height: 75vh;
}

/* Hover effects for cards */
.hover-lift {
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.hover-lift:hover {
  transform: translateY(-5px);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Enhanced input group styling */
.input-group .form-control:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}

.input-group .input-group-text {
  border-color: #dee2e6;
}

/* Card enhancements */
.card {
  border-radius: 0.75rem;
  overflow: hidden;
}

.card-body {
  padding: 1.5rem;
}

/* Icon styling */
.bi {
  line-height: 1;
}

/* Button enhancements */
.btn {
  border-radius: 0.5rem;
  font-weight: 500;
  transition: all 0.2s ease-in-out;
}

.btn:hover {
  transform: translateY(-1px);
}

/* Background utilities */
.bg-primary {
  background: linear-gradient(135deg, var(--bs-primary) 0%, #0056b3 100%) !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

/* Shadow utilities */
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .min-vh-75 {
    min-height: 60vh;
  }
  
  .display-4 {
    font-size: 2.5rem;
  }
  
  .display-6 {
    font-size: 2rem;
  }
}

@media (max-width: 576px) {
  .card-body {
    padding: 1rem;
  }
  
  .input-group-lg .form-control,
  .input-group-lg .input-group-text,
  .input-group-lg .btn {
    font-size: 1rem;
    padding: 0.75rem 1rem;
  }
}

