@keyframes toast-in {
  from {
    opacity: 0;
    transform: translateX(calc(100% + 2rem));
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

#toast-container {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  left: 2rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: end;
}

.toast {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding-inline: 1rem;
  padding-block: 0.875rem;
  font-size: var(--font-size-body);
  line-height: var(--line-height-body);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  animation: toast-in 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  overflow: hidden;

  svg {
    flex-shrink: 0;
  }

  &.toast-success {
    background-color: oklch(52.7% 0.154 150.069);
    color: white;
  }

  &.toast-error {
    background-color: oklch(50.5% 0.213 27.518);
    color: white;
  }
}
