.notification {
    --bs-toast-spacing: 1rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.40);
    --notification-icon-color: var(--bs-toast-color);
    --notification-icon-bg: inherit;
}

@keyframes slideInVertical {
  from {
    transform: translateY(20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes slideInHorizontal {
  from {
    transform: translateX(200px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

.toast-container[data-animation="slideInVertical"] .notification {
  animation: slideInVertical 0.5s ease-out;
}

.toast-container[data-animation="slideInHorizontal"] .notification {
  animation: slideInHorizontal 0.5s ease-out;
}

.notification a,
.notification a:hover {
    color: var(--bs-toast-color);
    font-weight: bold;
    text-decoration: underline;
}

.notification i {
    color: var(--notification-icon-color);
    background-color: var(--notification-icon-bg);
}

.toast-container[data-style="alert"] .notification-danger,
.toast-container:not([data-style]) .notification-danger {
    --bs-toast-bg: var(--bs-danger-bg-subtle);
    --bs-toast-color: var(--bs-danger-text-emphasis);
    --bs-toast-border-color: var(--bs-danger-border-subtle);
}

.toast-container[data-style="alert"] .notification-success,
.toast-container:not([data-style]) .notification-success {
    --bs-toast-bg: var(--bs-success-bg-subtle);
    --bs-toast-color: var(--bs-success-text-emphasis);
    --bs-toast-border-color: var(--bs-success-border-subtle);
}

.toast-container[data-style="alert"] .notification-warning,
.toast-container:not([data-style]) .notification-warning {
    --bs-toast-bg: var(--bs-warning-bg-subtle);
    --bs-toast-color: var(--bs-warning-text-emphasis);
    --bs-toast-border-color: var(--bs-warning-border-subtle);
}

.toast-container[data-style="alert"] .notification-info,
.toast-container:not([data-style]) .notification-info {
    --bs-toast-bg: #d1ecf1;
    --bs-toast-color: #0c5460;
    --bs-toast-border-color: #bee5eb;
}

.toast-container[data-style="classic"] .notification {
    --bs-toast-bg: white;
    --bs-toast-color: black;
    --bs-toast-border-color: white;
    --bs-toast-border-width: 0;
    --notification-border-width: 15px;
}

.toast-container[data-style="classic"] .notification-danger {
    --notification-icon-color: var(--bs-danger);
    border-left: var(--notification-border-width) solid var(--bs-danger);
}

.toast-container[data-style="classic"] .notification-success {
    --notification-icon-color: var(--dinf-vert);
    border-left: var(--notification-border-width) solid var(--dinf-vert);
}

.toast-container[data-style="classic"] .notification-warning {
    --notification-icon-color: var(--bs-warning);
    border-left: var(--notification-border-width) solid var(--bs-warning);
}

.toast-container[data-style="classic"] .notification-info {
    --notification-icon-color: #0c5460;
    border-left: var(--notification-border-width) solid #bee5eb;
}


.toast-container[data-style="modern"] .notification {
    --bs-toast-bg: white;
    --bs-toast-color: black;
    --bs-toast-border-color: white;
    --bs-toast-border-width: 0;
    --notification-border-width: 8px;
}

.toast-container[data-style="modern"] .notification-danger {
    --notification-icon-color: var(--bs-danger);
    border-top: var(--notification-border-width) solid var(--bs-danger);
}

.toast-container[data-style="modern"] .notification-success {
    --notification-icon-color: var(--dinf-vert);
    border-top: var(--notification-border-width) solid var(--dinf-vert);
}

.toast-container[data-style="modern"] .notification-warning {
    --notification-icon-color: var(--bs-warning);
    border-top: var(--notification-border-width) solid var(--bs-warning);
}

.toast-container[data-style="modern"] .notification-info {
    --notification-icon-color: #0c5460;
    border-top: var(--notification-border-width) solid #bee5eb;
}
