@import "constants.less";

@notification_opacity: rgba(0,0,0,0.5);
@defaultTrasition : @easeOutSine;
@keyframe: 200ms;

@modal_opacity: rgba(0,0,0,0.8);
@modal_size: 104px;
    @modal_size_middle: 52px;

.notification {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 3;
    background: none;
    display: none;

    &.modal { background-color: @notification_opacity; }

    & .window {
        position: relative;
        opacity: 0;
        .transition(all @keyframe @defaultTrasition);

        &.show {
            opacity: 1;
            .transition-delay(@keyframe);
        }

        & strong, small {
            display: block;
        }

        & small {
            font-size: 0.7em;
        }

        &:not(.special) {
            left: 50%;
            top: 50%;
            width: @modal_size;
            margin: -@modal_size_middle auto auto -@modal_size_middle;
            padding: 8px;
            background-color: @modal_opacity;
            text-align: center;
            .transform(scale(0.8));

            &.show {
                .transform(scale(1.0));
            }

            & .icon {
                display: block;
                font-size: 4.0em;
                &.loading {
                    margin-top: 24px;
                    margin-bottom: 20px;
                }
            }

            & small {
                overflow: hidden;
                white-space: nowrap;
                text-overflow: ellipsis;
            }
        }

        &.confirm, &.notify {
            top: 0;
            font-size: 1.1em !important;
            .transform(translate3d(0, -100%, 0));

            &.show { .transform(translate3d(0, 0%, 0)); }

            & .icon {
                float: left;
                font-size: 2.0em;
                margin: -3px 10px 0 0;
            }
        }

        &.confirm {
            opacity: 1;
            padding: 10px 12px;

            & p { height: 44px;}

            & .button {
               width: 42%;
               &:last-child {float: right;}
            }
        }

        &.notify {
            padding: 8px;
            top:  0;
        }

        &.url {
            left: 0;
            top: 0;
            width: 280px;
            height: auto;
            margin: 64px auto 0px;
            padding: 0px;

            & .close {
                position: absolute;
                top: -14px;
                right: -14px;

                font-size: 14px;
                line-height: 24px;
                font-weight: normal;
                width: 24px;
                height: 24px;
                border-radius: 14px;
            }
        }
    }
}

.notification .window.working span{
    -webkit-animation: notification-working 1s infinite;
}

@-webkit-keyframes notification-working {
    0% {opacity: 1;}
    50% {opacity: 0;}
    100% {opacity: 1;}
}
