/* Flash message styles */
/* {{{ */

/* Flash container positioning */
#flash-container {
  position: fixed;
  top: 1rem;
  z-index: 50;
}

#flash-container.flash-position-center {
  left: 50%;
  transform: translateX(-50%);
}

#flash-container.flash-position-right {
  right: 1rem;
}

/* Slide-in/out animations for right position */
@keyframes slide-in-right {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slide-out-right {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

/* Slide-in/out animations for center position */
@keyframes slide-in-down {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes slide-out-up {
  from {
    transform: translateY(0);
    opacity: 1;
  }
  to {
    transform: translateY(-100%);
    opacity: 0;
  }
}

.animate-slide-in-right {
  animation: slide-in-right 0.3s ease-out forwards;
}

.animate-slide-out-right {
  animation: slide-out-right 0.3s ease-out forwards;
}

.animate-slide-in-down {
  animation: slide-in-down 0.3s ease-out forwards;
}

.animate-slide-out-up {
  animation: slide-out-up 0.3s ease-out forwards;
}

/* }}} */
