/*
 * BRACU EUREKA - Global Custom CSS
 * Custom styles to be loaded into the application
 */

/* Fix for missing background images */
.hero-background {
  background-image: linear-gradient(135deg, #3f51b5 0%, #2196f3 100%) !important;
}

.auth-background {
  background: linear-gradient(135deg, rgba(25, 118, 210, 0.9), rgba(123, 31, 162, 0.9)) !important;
}

/* Enhanced Card Animations */
.service-card, 
.feature-card, 
.item-card,
.card {
  transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out !important;
}

.service-card:hover, 
.feature-card:hover, 
.item-card:hover,
.card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.15) !important;
}

/* Better Button Styles */
.MuiButton-contained {
  text-transform: none !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.MuiButton-contained:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15) !important;
}

/* Gradient Backgrounds */
.gradient-primary {
  background: linear-gradient(135deg, #1976d2, #1565c0) !important;
  color: white !important;
}

.gradient-secondary {
  background: linear-gradient(135deg, #7b1fa2, #6a1b9a) !important;
  color: white !important;
}

.gradient-success {
  background: linear-gradient(135deg, #4caf50, #388e3c) !important;
  color: white !important;
}

.gradient-error {
  background: linear-gradient(135deg, #f44336, #d32f2f) !important;
  color: white !important;
}

/* Improved Form Fields */
.MuiOutlinedInput-root {
  border-radius: 8px !important;
  transition: all 0.3s !important;
}

.MuiOutlinedInput-root:hover {
  box-shadow: 0 0 0 4px rgba(25, 118, 210, 0.1) !important;
}

.MuiOutlinedInput-root.Mui-focused {
  box-shadow: 0 0 0 4px rgba(25, 118, 210, 0.2) !important;
}

/* Custom Card Styles */
.custom-card {
  border-radius: 16px !important;
  overflow: hidden !important;
  background-color: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(10px) !important;
  border: 1px solid rgba(255, 255, 255, 0.5) !important;
}

/* Responsive Typography */
@media (max-width: 600px) {
  h1.MuiTypography-h1 {
    font-size: 2.5rem !important;
  }
  
  h2.MuiTypography-h2 {
    font-size: 2rem !important;
  }
  
  h3.MuiTypography-h3 {
    font-size: 1.75rem !important;
  }
}

/* Animation Classes */
.fade-in {
  animation: fadeIn 0.5s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

.slide-up {
  animation: slideUp 0.5s ease-in-out;
}

@keyframes slideUp {
  from { transform: translateY(20px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
} 