.toast {
  display: flex;
  position: fixed;
  align-items: center;
  left: 5px;
  bottom: -60px;
  z-index: 11000;
  background: #333;
  color: #eee;
  padding: 10px 12px;
  border-radius: 3px;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
  will-change: transform;
  transition: all 300ms ease-out;
  font-size: 16px;
  max-width: 15em;
}
.toast.open {
  transform: translateY(-65px);
}
.toast.success {
  background: #4CAF50;
}
.toast.error {
  background: #F44336;
}
.toast.warn {
  background: #FFC107;
  color: #000;
}
.toast .text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.toast .icon {
  margin: 0 0.25em 0 0;
}

@media screen and (max-width: 320px) {
  .toast {
    font-size: 18px;
    left: 0px;
    border-radius: 0px;
    width: 100vw;
    box-sizing: border-box;
    max-width: none;
  }
  .toast.open {
    transform: translateY(-60px);
  }
}
