.zemit-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.zm-nowrap {
    white-space: nowrap;
}
.zm-hidden {
    display: none !important;
}
.zm-shadow-down {
    box-shadow: 0 0.5rem 1rem -0.5rem rgba(0, 0, 0, 0.15);
}
li.zm-sep {
    border-top: #ccc solid 1px;
    margin: 10px 0;
}

.zm-pull-right {
    float: right !important;
}
.zm-gradient-primary {
    background: rgb(255, 255, 255);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 1)), color-stop(100%, rgba(242, 242, 242, 1)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(242, 242, 242, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2', GradientType=0);
}
.zm-cursor-drag {
    cursor: move;
}
.zm-cursor-drag-default,
.zm-cursor-drag-default * {
    cursor: default !important;
}
.zm-cursor-drag-move,
.zm-cursor-drag-move * {
    cursor: move !important;
}
.zm-cursor-drag-copy,
.zm-cursor-drag-copy * {
    cursor: copy !important;
}
.zm-cursor-resize-horizontal {
    cursor: ew-resize;
}
.zm-cursor-resize-col-resize-all,
.zm-cursor-resize-col-resize-all * {
    cursor: col-resize !important;
}

.zm-draggable {
    position: relative;
}


/**
 * Vertical align
 */
.zm-vertical-align-middle {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

/**
 * Flex containers
 */
.zm-flex-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}
.zm-flex-container-column {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}
.zm-flex-nowrap {
    flex-wrap: nowrap;
}
.zm-flex-container-center {
    align-items: center;
}
.zm-flex-container-column > *,
.zm-flex-container > * {
    flex-grow: 1;
    flex-basis: 0;
}
.zm-flex-container-column.zm-flex-container-gap > *:not(:first-child),
.zm-flex-container.zm-flex-container-gap > *:not(:first-child) {
    margin-left: 0.5rem;
}
.zm-flex-minimal {
    flex: 0;
    flex-grow: initial;
}

/**
 * Zoom-in
 */
.zoom-container {
    -webkit-perspective: 600px;
    -msie-perspective: 600px;
    -moz-perspective: 600px;
    -o-perspective: 600px;
    perspective: 600px;
}
.zoom-container > .zoom-item {

    transition-duration: .15s;
    transition-property: opacity, transform;
    transition-timing-function: ease-out;

    -webkit-transform: scale(0.85);
    -moz-transform: scale(0.85);
    -msie-transform: scale(0.85);
    -o-transform: scale(0.85);
    transform: scale(0.85);
    opacity: 0;
}
.zoom-container.zm-visible > .zoom-item {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -msie-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}
.zoom-container.zm-visible.zm-transform-completed > .zoom-item {
    /*transform: none;*/
    opacity: 1;
}

/**
 * DI: File
 */
.zm-file-drop-activate .zm-widget-inner {
    background-color: #75a9f9;
}
.zm-file-drop-activate .zm-widget-inner * {
    opacity: 0.5;
}

/**
 * Quick actions
 */
.zm-quick-actions {
    text-align: center;
    padding: 0.5rem;
    border-top: #ccc solid 1px;
    background-color: white;
    box-shadow: 0 -0.5rem 1rem -0.5rem rgba(0, 0, 0, 0.15);
    z-index: 1;
}
.zm-quick-actions .zm-btn {
    text-align: center;
}

/**
 * Pointers
 */
.zm-pointer:before {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    border: 0.5rem solid transparent;
}
.zm-pointer.zm-pointer-left:before {
    top: calc(50% - 0.5rem);
    left: -0.5rem;
    border-right-color: #75a9f9;
    border-left: 0;
}
.zm-pointer.zm-pointer-right:before {
    top: calc(50% - 0.5rem);
    right: -0.5rem;
    border-left-color: #75a9f9;
    border-right: 0;
}

/**
 * Background colors
 */
.zm-bg-warning:not([disabled]) {
    background: #ffa66a; /* Old browsers */
    background: -moz-linear-gradient(top, #ffa66a 0%, #ff9047 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #ffa66a 0%,#ff9047 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #ffa66a 0%,#ff9047 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffa66a', endColorstr='#ff9047',GradientType=0 ); /* IE6-9 */
    color: white;
    border-color: #DD833E;
}
.zm-bg-warning:hover:not([disabled]) {
    border-color: #962D00;
}
.zm-bg-info:not([disabled]) {
    background: #00e5ff; /* Old browsers */
    background: -moz-linear-gradient(top, #00e5ff 0%, #00b7ef 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #00e5ff 0%,#00b7ef 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #00e5ff 0%,#00b7ef 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00e5ff', endColorstr='#00b7ef',GradientType=0 ); /* IE6-9 */
    border-color: #0096E8;
    color: white;
}
.zm-bg-info:hover:not([disabled]) {
    border-color: #0047AA;
}

/**
 * Mobile
 */
@media all and (max-width: 767px) {
    .zm-hide-mobile {
        display: none !important;
    }
}
