@import "./prefixer.less";

.angular-notifications-container {
    position: relative;
    display: table-cell;
    width: 100%;
}

.angular-notifications-icon.overlay {
    position: absolute;
    z-index: 1;
}

.angular-notifications-icon {
    right: -10px;
    top: -10px;
    border-radius: 50%;
    text-align: center;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 3px;
    min-width: 25px;
    height: 25px;
    background: red;
    color: white;
    user-select: none;
    cursor: default;
}

.angular-notifications-icon.wide-icon {
    .border-radius(~"30% / 50%");
}

.angular-notifications-icon.fade {
  .animation(notification-fade-in 0.5s);
}

.angular-notifications-icon.bounce {
  .animation(notification-bounce 0.5s);
}

.angular-notifications-icon.grow {
  .animation(notification-grow 0.5s);
}

.angular-notifications-icon.shake {
  .animation(notification-shake 0.5s);
}

@-webkit-keyframes notification-fade-in {.fade-frames;}
@-moz-keyframes notification-fade-in {.fade-frames;}
@-ms-keyframes notification-fade-in {.fade-frames;}
@-o-keyframes notification-fade-in {.fade-frames;}
@keyframes notification-fade-in {.fade-frames;}
.fade-frames () {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes notification-bounce {.bounce-frames;}
@-moz-keyframes notification-bounce {.bounce-frames;}
@-ms-keyframes notification-bounce {.bounce-frames;}
@-o-keyframes notification-bounce {.bounce-frames;}
@keyframes notification-bounce {.bounce-frames;}
.bounce-frames () {
    30% {
        .translate(0, -8px);
    }

    60% {
        .translate(0, 0);
    }

    80% {
        .translate(0, -5px);
    }

    to {
        .translate(0, 0);
    }
}

@-webkit-keyframes notification-grow {.grow-frames;}
@-moz-keyframes notification-grow {.grow-frames;}
@-ms-keyframes notification-grow {.grow-frames;}
@-o-keyframes notification-grow {.grow-frames;}
@keyframes notification-grow {.grow-frames;}
.grow-frames () {
    30% {
        .scale(1.2);
    }

    60% {
        .scale(0.8);
    }

    to {
        transform: scale(1);
    }
}

@-webkit-keyframes notification-shake {.shake-frames;}
@-moz-keyframes notification-shake {.shake-frames;}
@-ms-keyframes notification-shake {.shake-frames;}
@-o-keyframes notification-shake {.shake-frames;}
@keyframes notification-shake {.shake-frames;}
.shake-frames () {
    20% {
        .rotate(20deg);
    }

    40% {
        .rotate(-20deg);
    }

    60% {
        .rotate(10deg);
    }

    80% {
        .rotate(-10deg);
    }

    to {
        .rotate(0);
    }
}
