/* define styls for fx toast alerts  */

.fx {
    font-family: 'Nunito', sans-serif;
}

.fx.toast{
    width: 330px;
    background:#fdfdfe;
    border-radius: 8px;
    padding:15px;
    box-shadow: 2px 2px 25px 2px rgba(100, 99, 99, 0.082);
    display: flex;
    margin: 15px; /*temporary class */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: fixed;
    z-index: 10000000000;
}

.fx.toast.fix_relative{
    position: relative;
    margin:0 !important;
    width: auto !important;
    top:auto !important;
}
.fx.toast .content{
    padding:0 15px;
    display: grid;
    width: 100%;
}
.fx.toast .fx_msg {
    font-size:.85em;
    font-weight: 600;
    color: #6b6b6b;
	text-align:left !important;
}

.fx.toast .fx_title{
    display: block;
    font-size:1em;
    font-weight: 700;
    color:#38393b;
	text-align:left !important;
}

.fx.toast .ifa{
    border-radius: 50%;
    padding: 5px;
}

.fx.toast.success .ifa{
    background:rgb(227, 255, 184);
    color:rgb(32, 160, 32)
}
.fx.toast.info .ifa{
    background:#d8f1fa;
    color:#30B2ED
}
.fx.toast.warning .ifa{
    background:#ffee9a;
    color:#b98800
}
.fx.toast.error .ifa{
    background:#fddbde;
    color:#ff0000
}

/* dark mode styling  */

.fx.toast.dark {
    background:#102A43
}

.fx.toast.dark .fx_msg{
    color:rgb(212, 212, 212);
} 
.fx.toast.dark .fx_title{
    color:rgb(233, 233, 233);
}

.fx.toast .fa-close{
    color:rgb(107, 107, 107);
    cursor: pointer;
    opacity: .8;
}

.fx.toast .fa-close:hover{
    opacity: 1;
}
.fx.toast.dark .fa-close{
    color:rgb(214, 214, 214)
}

/* button styling  */
.fx.toast btn{
    display: block;
    margin:10px 0 0 0 ;
    border-radius: 5px;
    background: #f5f5f5;
    padding: 8px  15px;
    text-align: center;
    cursor: pointer;
}

.fx.toast btn:hover{
    box-shadow: 2px 2px 4px 2px #e0e0e04f;
}

.fx.toast.success btn{
    background:rgb(227, 255, 184);
    color:rgb(32, 160, 32)
}
.fx.toast.info btn{
    background:#d8f1fa;
    color:#30B2ED
}
.fx.toast.warning btn{
    background:#ffee9a;
    color:#b88700
}
.fx.toast.error btn{
    background:#fddbde;
    color:#ff0000
}

/* toast positioning  */
.fx.toast.place_top_center{
    margin: 40px auto;
    top:0;
    left: 0;
    right: 0;
}

.fx.toast.place_bottom_center{
    margin: 40px auto;
    left: 0;
    right: 0;
    bottom:0
}
.fx.toast.place_top_left{
    margin: 40px;
    top:0;
    left:0
}

.fx.toast.place_bottom_left{
    margin: 40px;
    bottom:0;
    left:0
}
.fx.toast.place_top_right{
    top:0;
    margin: 40px;
    right:0
}

.fx.toast.place_bottom_right{
    margin: 40px;
    right: 0;
    bottom:0
}

.fx.toast.place_center{
top: calc(50% - 100px);
margin: auto;
left: 0;
right: 0;
}


/* responsive for mobile devices  */
@media(max-width:750px){
    .fx.toast{
      margin:20px auto !important;
      left: 0;
      right: 0;
    }
    .fx.toast.fx.toast.fix_relative {
      width: auto;
    }
}

@-webkit-keyframes fade-in-bottom {
    0% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
  }
  @keyframes fade-in-bottom {
    0% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
  }

  @-webkit-keyframes fade-out-bottom {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
  }
  @keyframes fade-out-bottom {
    0% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateY(50px);
              transform: translateY(50px);
      opacity: 0;
    }
  }
  
  
@-webkit-keyframes slide-in-right {
    0% {
      -webkit-transform: translateX(1000px);
              transform: translateX(1000px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes slide-in-right {
    0% {
      -webkit-transform: translateX(1000px);
              transform: translateX(1000px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
  }

  @-webkit-keyframes slide-out-right {
    0% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateX(1000px);
              transform: translateX(1000px);
      opacity: 0;
    }
  }
  @keyframes slide-out-right {
    0% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateX(1000px);
              transform: translateX(1000px);
      opacity: 0;
    }
  }
  
  

  .fx_animate_swing {
	-webkit-animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
	        animation: swing-in-top-fwd 1s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
}

.fx_animate_slideInRight {
	-webkit-animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: slide-in-right 0.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

.fx_animate_slideOutRight {
	-webkit-animation: slide-out-right 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
	        animation: slide-out-right 0.5s cubic-bezier(0.550, 0.085, 0.680, 0.530) both;
}

.fx_animate_fadeInBottom {
	-webkit-animation: fade-in-bottom 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-bottom 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}
.fx_animate_fadeOutBottom {
    -webkit-animation: fade-out-bottom 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: fade-out-bottom 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

