body {
  background: linear-gradient(to right, #fdfcff, #f2fcfe);
  font-family: 'Inter', sans-serif;
  color: #222;
  min-height: 100vh;
  margin: 0;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
}

/* Navbar */
.navbar {
  background: rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 0 0 1rem 1rem;
  box-shadow: 0 8px 32px rgba(31, 38, 135, 0.15);
}

.nav-link {
  color: #000 !important;
  font-weight: 600;
  transition: all 0.3s ease;
}

.nav-link:hover {
  color: #3f51b5 !important;
  transform: scale(1.05);
}

/* Carousel section light mode */
.carousel-section {
  background-color: #F1F8E8;
  padding: 2rem 0;
  border-top: 2px solid #ddd;
  border-bottom: 2px solid #ddd;
}
.img-thumbnail {
  width: 160px !important;   /* override any Bootstrap fluid sizing */
  height: 220px !important;
  object-fit: cover;
  border-radius: 1rem;
  border: none;
  box-shadow: 0 10px 20px rgba(0,0,0,0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}


.img-thumbnail:hover {
  transform: scale(1.06);
  box-shadow: 0 12px 24px rgba(0,0,0,0.2);
}

/* Cards */
.card {
  background: linear-gradient(145deg, #ffffff, #f2f2f2);
  box-shadow: 10px 10px 30px #d1d9e6, -10px -10px 30px #ffffff;
  border-radius: 1.5rem;
  padding: 2rem;
  transition: transform 0.3s ease;
}
.card:hover {
  transform: translateY(-5px);
}

/* List group items (My Notes) */
.list-group-item {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 1rem;
  padding: 1rem;
  margin-bottom: 1rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
  transition: transform 0.2s ease, background-color 0.2s ease;
}
.list-group-item:hover {
  background-color: #f3f4f6;
  transform: translateX(4px);
}

/* My Notes bullets and remove animation */
.list-group-item.custom-note {
  position: relative;
  padding-left: 2rem;
  border: none;
  background: transparent;
  box-shadow: none;
}
.list-group-item.custom-note::before {
  content: "•";
  position: absolute;
  left: 0.75rem;
  color: #3f51b5;
  font-size: 1.2rem;
}

/* Remove fade animation on notes */
.animate-fade {
  animation: none !important;
}

/* Footer */
footer {
  border-top: 2px solid #ccc;
  padding-top: 1rem;
}
