

@keyframes shake {
    0% {
      transform: translateX(0);
    }
    25% {
      transform: translateX(-2px);
    }
    50% {
      transform: translateX(2px);
    }
    75% {
      transform: translateX(-2px);
    }
    100% {
      transform: translateX(0);
    }
}

#toast-container > div {
    opacity: 1 !important;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=1) !important;
    filter: alpha(opacity=1) !important;
}

.alert {
    color: white !important;
    box-shadow: none !important;
}

.alert-success {
    background-color: #1a8754 !important;
}

.alert-danger {
    background-color: #dc3545 !important;
}

.alert-info {
    background-color: #0d6dfc !important;
}

.alert-warning {
    background-color: #ffc107 !important;
    color: black !important;
}