.application-toast-container {
  z-index: 1090;
}

.notification-popup-root {
  position: relative;
  min-height: 0;
}

.notification-popup {
  width: min(380px, calc(100vw - 2rem));
  border: 0;
  border-left: 4px solid #397353;
  border-radius: 0.75rem;
  box-shadow: 0 0.75rem 2rem rgba(28, 54, 39, 0.2);
  overflow: hidden;
  position: absolute;
  bottom: 0;
  right: 0;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.45s ease, opacity 0.45s ease, box-shadow 0.45s ease;
}

/* Stacked cards: each one behind is shifted up and scaled slightly */
.notification-popup--stack-0 {
  opacity: 1;
  pointer-events: auto;
  position: relative;
  transform: translateY(0) scale(1);
  z-index: 3;
  box-shadow: 0 0.75rem 2rem rgba(28, 54, 39, 0.2);
}

.notification-popup--stack-1 {
  opacity: 0.7;
  pointer-events: none;
  transform: translateY(-0.5rem) scale(0.96);
  z-index: 2;
  box-shadow: 0 0.5rem 1.25rem rgba(28, 54, 39, 0.12);
}

.notification-popup--stack-2 {
  opacity: 0.45;
  pointer-events: none;
  transform: translateY(-0.9rem) scale(0.92);
  z-index: 1;
  box-shadow: 0 0.25rem 0.75rem rgba(28, 54, 39, 0.08);
}

.notification-popup--exit {
  opacity: 0 !important;
  transform: translateX(2rem) !important;
  pointer-events: none !important;
}

.notification-popup .toast-header {
  background-color: #f2f7f3;
  border-bottom-color: #dce9df;
  color: #244b35;
}

.notification-popup-icon {
  align-items: center;
  background-color: #397353;
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  height: 1.75rem;
  justify-content: center;
  margin-right: 0.625rem;
  width: 1.75rem;
}

.notification-popup-body {
  color: #2e3731;
  display: block;
  line-height: 1.45;
  text-decoration: none;
}

.notification-popup-body:hover {
  background-color: #f8faf8;
  color: #244b35;
}

.notification-popup-action {
  color: #397353;
  display: block;
  font-weight: 600;
  margin-top: 0.625rem;
}

@media (max-width: 575.98px) {
  .application-toast-container {
    padding: 0.75rem !important;
  }

  .notification-popup {
    width: calc(100vw - 1.5rem);
  }
}
