/*
 * Software by John Liddiard (aka JohntheFish)
 * www.c5magic.co.uk
 *
 * This package contains software copyright and proprietary to John Liddiard
 *
 */

/*
 * A convenience, for any clickable related stying
 */
.snapshot-drag-drop-btn:not([disabled]) {
    cursor: pointer;
}

.form-reform-snapshot-drag-drop-repeater {
    height: auto;
    min-height:38px;
}

.form-reform-snapshot-drag-drop-repeater .form-reform-placeholder{
    font-style: italic;
}

.form-reform-snapshot-drag-drop-repeater:disabled,
.form-reform-snapshot-drag-drop-repeater[disabled],
.form-reform-snapshot-drag-drop-repeater.disabled{
    background-color: #e9ecef;
}

.form-reform-snapshot-drag-drop-repeater .snapshot-form-reform-repeater-item {
    padding: 5px;
    outline: 1px solid #aaa;
    border-radius: 3px;
    margin-right: 5px;
    width: auto;
    display: inline-block;
    position: relative;
    min-height: 70px;
}

.form-reform-snapshot-drag-drop-repeater .snapshot-form-reform-repeater-thumbnail {
    max-width: 200px;
    height: 100px;
    object-fit: contain;
}

.form-reform-snapshot-drag-drop-repeater .snapshot-remove {
    position: absolute;
    right: 7px;
    bottom: 32px;
    background-color: rgba(200, 200, 200, 0.6);
    padding: 5px;
    border-radius: 2px;
}

/* Styling for system svg thumbnails used in dropzone overlay for non-image types */
.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview:not(.dz-image-preview) .dz-details img {
    top: unset;
    left: unset;
    bottom: 20px;
    right: 0;
    opacity: 0.6;
}


/*
 * The button in the toolbar
 */
.jl-snapshot-button-drag_drop.drag-drop-killed {
    cursor: not-allowed;
    opacity: 0.4;
}

.jl-snapshot-button-drag_drop.drag-drop-killed .fa {
    transform: rotate(60deg);
}

.dragdrop-icon-transform {
    transform: scale(-1.7, 0.8) rotate(270deg);
    box-shadow: -3px 0;
}

h2 .dragdrop-icon-transform, h3 .dragdrop-icon-transform {
    margin-left: 7px;
    margin-right: 7px;
}

@keyframes c_blinker {
    50% {
        opacity: 0;
    }
}

.jl-snapshot-button-drag_drop.loading i {
    animation: c_blinker 0.6s linear infinite;
}

.jl-snapshot-button-drag_drop.ready i {
    color: #d9534f;
}

/*
 * The default dz-drag-hover is primary green
 */

.snapshot-drag-drop-wrapper .dropzone.dz-drag-hover {
    border-color: #dff0d8;
    background: #dff0d8
}

/*
 * Dropzone and preview area - fill the screen and the overlay
 */
.snapshot-drag-drop-wrapper.ccm-ui {
    position: fixed;
    width: 100vw;
    height: 100vh;
    align-items: center;
    justify-content: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(11, 11, 11, 0.9);
    z-index: 3000;
    /*overflow-y:scroll;  TODO - TEST OVERFLOW MANY IMAGES. TEST SMALL SCREEN ESC->CLOSE */
    display: none;
}

.snapshot-drag-drop-wrapper.loading {
    display: none;
}

.snapshot-drag-drop-wrapper.ready {
    display: flex;
}

.snapshot-drag-drop-wrapper.paused {
    display: none;
}


html.snapshot-drag-drop-no-overflow {
    overflow: hidden;
}

.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater {
    width: auto;
    height: auto;
    margin: auto;
}

/* TOOLBAR */
.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater .toolbar {
    display: none;
}

.snapshot-drag-drop-wrapper.ready .snapshot-drag-drop-repeater .toolbar {
    position: absolute;
    top: 50px;
    right: 10px;
    display: block;
    padding: 4px;
    border-radius: 3px;
    background-color: rgba(221, 226, 231, 0.7);
    border-color: rgba(65, 77, 89, 0.7);
}

.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater .toolbar .btn {
    border-radius: 2px;
    padding: 6px 12px;
}

.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater .toolbar .upload_files {
    display: none;
}

.snapshot-drag-drop-wrapper.queue-processing-immediate .snapshot-drag-drop-repeater .toolbar .upload_files {
    display: none;
}

.snapshot-drag-drop-wrapper.queue-processing-command .snapshot-drag-drop-repeater .toolbar .upload_files {
    display: inline-block;
}


.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater .drag-drop-area {
    width: 100vw;
    min-height: 100vh;
    border: 2px dashed rgba(0, 153, 255, 1.0);
}

.snapshot-drag-drop-wrapper .snapshot-drag-drop-repeater .drag-drop-area .dz-message h2 {
    color: rgba(255, 255, 255, 0.8);
    margin-left: 15%;
    margin-right: 15%;
}

@keyframes darg_drop_uploading {
    0% {
        transform: scale(1);
        opacity: 100%
    }
    50% {
        transform: scale(0.9);
        opacity: 10%
    }
    100% {
        transform: scale(1);
        opacity: 100%;
    }
}

.snapshot-drag-drop-wrapper.snapshot-uploading .snapshot-preview.dz-processing:not(.snapshot-ajax-done) {
    animation-name: darg_drop_uploading;
    animation-duration: 1000ms;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
}

/*
 * Default cursor over any preview - except on links
 */

.snapshot-drag-drop-wrapper .snapshot-preview {
    cursor: default;
}

/*
 * Make thumbnails larger so there is room for a small dialog for title and description
 and so they don't need to be cropped.
 */
.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview .dz-details {
    width: 250px;
    height: 256px;
}

.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview.dz-image-preview .dz-details img {
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: 250px;
    height: 250px;
    max-height: 250px;
    max-width: 250px;
    object-fit: scale-down;
}

.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview .dz-progress {
    top: 256px;
}

/*
 * Error message container and icon
 */
.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview .snapshot-error-message {
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 8px 10px;
    min-width: 100%;
    max-width: 100%;
    height: 250px;
    display: block;
    opacity: 0;
}

.snapshot-drag-drop-wrapper .dropzone .dz-preview.dz-error:hover .snapshot-error-message {
    opacity: 1;
}

.snapshot-drag-drop-wrapper .dropzone .dz-complete .dz-success-mark span,
.snapshot-drag-drop-wrapper .dropzone .dz-error .dz-error-mark span {
    display: block;
}

.snapshot-drag-drop-wrapper .dz-preview.dz-error:hover .dz-error-mark,
.snapshot-drag-drop-wrapper .dropzone .dz-error .dz-error-mark {
    opacity: 1;
    display: block;
}

/*
 * Success icon
 */

.snapshot-drag-drop-wrapper .dropzone .dz-complete .dz-success-mark,
.snapshot-drag-drop-wrapper .dz-preview.dz-success:hover .dz-success-mark {
    display: block;
    opacity: 1;
}

.snapshot-drag-drop-wrapper .dropzone .dz-error .dz-success-mark {
    display: none;
}

/*
 * These are used for filenames and titles. We don't want any theme bleed corrupting the case because
 * users want to see accurate representation of the names and titles or they will assume mistakes.
 */
.snapshot-drag-drop-wrapper .dz-preview h5, .snapshot-drag-drop-wrapper .dz-preview h5 {
    text-transform: none;
}

/*
 * Pending icon on/off
 */
.snapshot-drag-drop-wrapper .dz-preview .snapshot-pending-mark {
    position: absolute;
    width: 40px;
    height: 40px;
    font-size: 30px;
    text-align: center;
    right: -10px;
    top: -10px;
    color: #3f9edc;
    transition: opacity .4s ease-in-out;
}

.snapshot-drag-drop-wrapper .dz-preview.dz-processing .snapshot-pending-mark {
    display: none;
}


/*
 * Remove/cancel link. Shown before upload attempted, but hidden while
 * editing
 */
.snapshot-drag-drop-wrapper .dz-preview .snapshot-remove {
    position: absolute;
    right: 3px;
}

.snapshot-drag-drop-wrapper .dz-preview.snapshot-editing .snapshot-remove {
    display: none;
}


/*
 * Edit controls toggle and form shown
 */

.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit-controls {
    display: block;
    position: absolute;
    top: -5px;
    left: -5px;
    padding: 3px;
    border-radius: 2px;
    background-color: rgba(221, 226, 231, 0.7);
    border-color: rgba(65, 77, 89, 0.7);
}

.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit.snapshot-pre-edit-image {
    display: none;
}

.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit,
.snapshot-drag-drop-wrapper .dz-preview.type-image-jpeg .snapshot-pre-edit.snapshot-pre-edit-image,
.snapshot-drag-drop-wrapper .dz-preview.type-image-jpg .snapshot-pre-edit.snapshot-pre-edit-image,
.snapshot-drag-drop-wrapper .dz-preview.type-image-png .snapshot-pre-edit.snapshot-pre-edit-image {
    display: inline-block;
}

.snapshot-drag-drop-wrapper .snapshot_control {
    padding: 2px;
    border-radius: 2px;
    background-color: rgba(255, 255, 255, 0.7);
}


.snapshot-drag-drop-wrapper .dz-preview.dz-processing .snapshot-pre-edit,
.snapshot-drag-drop-wrapper .dz-preview.snapshot-editing .snapshot-pre-edit {
    display: none;
}

.snapshot-drag-drop-wrapper .snapshot-pre-edit-info {
    margin-right: 3px;
}

.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit-close,
.snapshot-drag-drop-wrapper .dz-preview.dz-processing.snapshot-editing .snapshot-pre-edit-close {
    display: none;
}


.snapshot-drag-drop-wrapper .dz-preview.snapshot-editing .snapshot-pre-edit-close {
    display: inline-block;
}


.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit-form {
    display: none;
    opacity: 0.5;
}

.snapshot-drag-drop-wrapper .dz-preview.snapshot-editing .snapshot-pre-edit-form {
    display: block;
}

.snapshot-drag-drop-wrapper .dz-preview.snapshot-editing .snapshot-pre-edit-form:hover {
    opacity: 0.9;
}

.snapshot-drag-drop-wrapper .dropzone .snapshot-preview.dz-preview.snapshot-editing .snapshot-error-message {
    display: none;
}

.snapshot-drag-drop-wrapper .dz-preview .snapshot-pre-edit-form textarea {
    height: 160px;
    resize: none;
}


/*
 * IMAGE EDITOR
 */

.snapshot-drag-drop-wrapper .image-edit-container {
    display: none;
}

/*
 * None of the standard buttons
 */
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-header .tui-image-editor-header-logo,
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-header .tui-image-editor-download-btn,
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-header .tui-image-editor-load-btn,
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-header div:first-child {
    display: none;
}

.snapshot-drag-drop-wrapper.image_editing .image-edit-container {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
}


.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-controls li.snapshot-editor-cancel,
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-controls li.snapshot-editor-done {
    padding-top: 0;
    vertical-align: middle;
}

.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-controls .btn.snapshot-editor-done,
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-controls .btn.snapshot-editor-cancel {
    border-radius: 2px;
    padding: 6px 12px;
}

/*
 * Now need top space for help menu bar
 */
.snapshot-drag-drop-wrapper .image-edit-container .tui-image-editor-main {
    top: 45px;
}

.snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-help-menu {
    background-color: #151515;
}

.snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-help-menu.top {
    top: 0;
}

/*
 * Not that relevant as most small mobiles don't support
 * drag-drops!
 *
 * A little bit of usability improvement for the image editor
 * on small screens.
 * Get the toolbars to wrap
 * Have a larger window with scroll to enable users to find
 * off-screen buttons
 */

@media screen and (max-width: 768px) {
    .snapshot-drag-drop-wrapper .tui-image-editor-container {
        overflow-x: scroll;
        overflow-y: scroll;
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-controls ul.tui-image-editor-menu {
        white-space: normal;
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-controls ul.tui-image-editor-menu li:after {
        content: "\200B";
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-menu > .tui-image-editor-item {
        padding: 7px 2px 3px;
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-main-container ul.tui-image-editor-submenu-item {
        white-space: normal;
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-main-container ul.tui-image-editor-submenu-item li {
        display: inline-flex;
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-main-container ul.tui-image-editor-submenu-item li:after {
        content: "\200B";
    }

    .snapshot-drag-drop-wrapper .tui-image-editor-container .tui-image-editor-main-container .tui-image-editor-button:after {
        content: "\200B";
    }
}


/*
 * To enable v8 styling to continue working with v9 code
 */
.snapshot-drag-drop-wrapper .badge {
    display: inline;
    padding: .2em .6em .3em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: .25em;
}

.snapshot-drag-drop-wrapper .badge.label-success {
    background-color: #5cb85c;
}

.snapshot-drag-drop-wrapper .badge.label-warning {
    background-color: #f0ad4e;
}

.snapshot-drag-drop-wrapper .badge.label-danger {
    background-color: #d9534f;
}

.snapshot-drag-drop-wrapper .badge.label-info {
    background-color: #5bc0de;
}

.snapshot-drag-drop-wrapper .badge.label-default { /* default === secondary */
    background-color: #6c757d;
}

.snapshot-drag-drop-wrapper.badge.label-primary {
    background-color: #3f9edc;
}