/**
 * alertify cover prevents interaction with the content while a dialog is open
 *
 * 1 - IE doesn't prevent click if an element is empty
 */
.alertify-cover {
    position: fixed;
    z-index: 99999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: white; /* 1 */
    filter:alpha( opacity = 0 ); /* 1 */
    opacity: 0;
}

/**
 * alertify is the parent container for all dialog messages.
 *
 * 1 - Set to half the width to center align
 */
.alertify {
    display: block;
    position: fixed;
    z-index: 99999;
    top: 50px;
    left: 50%;
    width: 550px;
    margin-left: -275px; /* 1 */
}

    /**
     * Adding this class closes the alertify container
     *
     * 1 - IE6-8 require a display none since they don't support opacity
     */
    .alertify-close {
        pointer-events: none;
        opacity: 0;
        display: none; /* 1 */

        -webkit-transform: translate( 0, -150px );
           -moz-transform: translate( 0, -150px );
            -ms-transform: translate( 0, -150px );
             -o-transform: translate( 0, -150px );
                transform: translate( 0, -150px );
    }

    /**
     * 1 - overwrite display: none; for everything except IE6-8
     */
    :root * > .alertify-close {
        display: block; /* 1 */
        visibility: hidden;
    }

    /**
     * alertify dialog content wrapper
     */
    .alertify-body {
    }

        /**
         * alertify dialog title element
         */
        .alertify-dialog-title {
            margin: 0;
        }

        .alertify-input {
            -webkit-appearance: none;
        }

        .alertify-buttons {
            display: block;
        }

            /**
             * alertify dialog buttons
             *
             * 1 - ensure correct line-height and font-size for input type button
             */
            .alertify-button,
            .alertify-button:hover,
            .alertify-button:active,
            .alertify-button:visited {
                background: none;
                text-decoration: none;
                border: none;
                line-height: 1.5; /* 1 */
                font-size: 100%; /* 1 */
                display: inline-block;
                cursor: pointer;
                margin: 0;
            }

        /**
         * Hide visually but have it available for screenreaders: h5bp.com/v
         */
        .alertify-focus-reset {
            border: 0;
            clip: rect(0 0 0 0);
            height: 1px;
            margin: -1px;
            overflow: hidden;
            padding: 0;
            position: absolute;
            width: 1px;
        }

/* ========================================================================== */
/* Transitions */
.alertify {
    -webkit-transition: all 500ms cubic-bezier( 0.175, 0.885, 0.320, 1.275 );
       -moz-transition: all 500ms cubic-bezier( 0.175, 0.885, 0.320, 1.275 );
        -ms-transition: all 500ms cubic-bezier( 0.175, 0.885, 0.320, 1.275 );
         -o-transition: all 500ms cubic-bezier( 0.175, 0.885, 0.320, 1.275 );
            transition: all 500ms cubic-bezier( 0.175, 0.885, 0.320, 1.275 );
}

.alertify-close {
    -webkit-transition: all 250ms cubic-bezier( 0.600, -0.280, 0.735, 0.045 );
       -moz-transition: all 250ms cubic-bezier( 0.600, -0.280, 0.735, 0.045 );
        -ms-transition: all 250ms cubic-bezier( 0.600, -0.280, 0.735, 0.045 );
         -o-transition: all 250ms cubic-bezier( 0.600, -0.280, 0.735, 0.045 );
            transition: all 250ms cubic-bezier( 0.600, -0.280, 0.735, 0.045 );
}

/* ========================================================================== */
/* States */
.alertify--alert .alertify-button-cancel,
.alertify--alert .alertify-input,
.alertify--confirm .alertify-input {
    display: none;
}

.alertify-hidden {
    display: none;
}

/* ========================================================================== */
/* Responsive */
@media only screen and ( max-width: 680px ) {
    .alertify {
        width: 90%;
        left: 5%;
        margin: 0;
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
                box-sizing: border-box;
    }
}
