/**
 * @package    quantummanager
 * @author     Dmitry Tsymbal <cymbal@delo-design.ru>
 * @copyright  Copyright © 2019 Delo Design & NorrNext. All rights reserved.
 * @license    GNU General Public License version 3 or later; see license.txt
 * @link       https://www.norrnext.com
 */

.quantumcropperjs-module {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.quantumcropperjs-module.active {
    display: flex;
}
.quantumcropperjs-module .cropper-save {
    display: none;
    background: rgba(255,255,255,0.7);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.quantumcropperjs-module .cropper-save .loader {
    width: 480px;
}
.quantumcropperjs-module .qm-input,
.quantumcropperjs-module .qm-select {
    display: inline-block;
    height: 30px;
    line-height: 30px;
    border: none;
    padding: 0 10px;
    font-size: 13px;
    border-radius: 3px;
    vertical-align: middle;
}
.quantumcropperjs-module .qm-input {
    background: #333;
    color: #fff;
    transition: .2s ease-in-out;
    transition-property: color,background-color,border,width;
}
.quantumcropperjs-module .qm-input::-webkit-outer-spin-button,
.quantumcropperjs-module .qm-input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.quantumcropperjs-module .qm-input[type=number] {
    -moz-appearance: textfield;
}
.quantumcropperjs-module .qm-select {
    margin: 0;
    background: #2b2b2b;
    color: #ffffff;
    line-height: 30px;
    border: 1px solid #2b2b2b;
    border-left: 0;
    font-weight: normal;
}
.quantumcropperjs-module .toolbar {
    display: block;
    position: relative;
    width: 15%;
    min-width: 290px;
    height: 100%;
    background: #444;
}
.quantumcropperjs-module .toolbar .fields-list {
    max-height: 70%;
    overflow-y: auto;
    padding: 25px;
}
.quantumcropperjs-module .toolbar > div > div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.quantumcropperjs-module .toolbar > div > div:first-child .quantummanager-icon {
    margin-right: 4px;
    width: 12px;
    height: 12px;
}
.quantumcropperjs-module .toolbar .buttons-toggles .qm-input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}
.quantumcropperjs-module .toolbar .buttons-methods {
    display: flex;
    align-items: center;
}
.quantumcropperjs-module .toolbar .buttons-toggles {
    display: flex;
    align-items: center;
}
.quantumcropperjs-module .toolbar .qm-btn-group {
    display: flex;
    align-items: center;
}
.quantumcropperjs-module .toolbar .qm-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 20px;
    line-height: 0;
    height: 37px;
    font-size: 15px;
}
.quantumcropperjs-module .toolbar .buttons-methods {
    margin-right: 5px;
}
.quantumcropperjs-module .toolbar .buttons-toggles .qm-btn {
    height: 28px;
}
.quantumcropperjs-module .toolbar .buttons-methods .qm-btn {
    position: relative;
}
.quantumcropperjs-module .toolbar .quantummanager-icon {

}
.quantumcropperjs-module .qm-input-group.hide {
    display: none;
}
.quantumcropperjs-module label {
    font-size: 14px;
    line-height: 18px;
}
.quantumcropperjs-module .qm-input-group > label {
    margin-bottom: 5px;
}
.quantumcropperjs-module .qm-name-file-wrap {
    display: flex;
    align-items: center;
    justify-content: stretch;
}
.quantumcropperjs-module .qm-name-file-wrap label {
    width: 100%;
    color: #cbcbcb;
}
.quantumcropperjs-module .qm-name-file-wrap .qm-input-wrapper {
    flex: 1;
}
.quantumcropperjs-module .qm-name-file-wrap .qm-input {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.quantumcropperjs-module .qm-name-file-wrap .qm-select {
    width: 60px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.quantumcropperjs-module .qm-input-wrapper {
    position: relative;
    display: flex;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input {
    margin: 0;
    flex: 1;
    width: 100%;
    vertical-align: middle;
    display: inline-block;
    max-width: 100%;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input:focus {
    outline: none;
}
.quantumcropperjs-module .qm-input::placeholder {
    color: hsla(0, 0%, 100%, 0.6);
}
.quantumcropperjs-module .qm-input-wrapper span {
    position: absolute;
    background-color: #78abde;
    transition: transform 0.5s ease;
}
.quantumcropperjs-module .qm-input-wrapper .bottom,
.quantumcropperjs-module .qm-input-wrapper .top {
    height: 1px;
    left: 0;
    right: 0;
    transform: scaleX(0);
}
.quantumcropperjs-module .qm-input-wrapper .left,
.quantumcropperjs-module .qm-input-wrapper .right {
    width: 1px;
    top: 0;
    bottom: 0;
    transform: scaleY(0);
}
.quantumcropperjs-module .qm-input-wrapper .bottom {
    bottom: 0;
    transform-origin: bottom right;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input:focus ~ .bottom {
    transform-origin: bottom left;
    transform: scaleX(1);
}
.quantumcropperjs-module .qm-input-wrapper .right {
    right: 0;
    transform-origin: top right;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input:focus ~ .right {
    transform-origin: bottom right;
    transform: scaleY(1);
}
.quantumcropperjs-module .qm-input-wrapper .top {
    top: 0;
    transform-origin: top left;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input:focus ~ .top {
    transform-origin: top right;
    transform: scaleX(1);
}
.quantumcropperjs-module .qm-input-wrapper .left {
    left: 0;
    transform-origin: bottom left;
}
.quantumcropperjs-module .qm-input-wrapper .qm-input:focus ~ .left {
    transform-origin: top left;
    transform: scaleY(1);
}
.quantumcropperjs-module .name-file-wrap .qm-input-wrapper {
    display: flex;
    width: calc(100% - 70px);
}
.quantumcropperjs-module .name-file-wrap .qm-input-wrapper input {
    border-bottom-right-radius: 0 !important;
    border-top-right-radius: 0 !important;
}
.quantumcropperjs-module .name-file-wrap .qm-select {
    width: 70px;
    height: 30px;
}
.quantumcropperjs-module .change-ratio-wrap {
    margin-top: 20px;
}
.quantumcropperjs-module .change-ratio-wrap label {
    width: 100%;
    color: #cbcbcb;
}
.quantumcropperjs-module .change-ratio-wrap .change-ratio {
    width: 100%;
    height: 30px;
    margin: 0;
    background-color: #333;
    color: #fff;
    border: 1px solid #333;
}
.quantumcropperjs-module .qm-input-width-height-wrap {
    justify-content: space-between;
    margin-top: 25px;
}

.qm-input-width-height-wrap-bottom {
    position: absolute;
    bottom: 25px;
    padding: 0 25px;
}
.quantumcropperjs-module .qm-input-width-height-wrap > label {
    width: 100%;
    color: #cbcbcb;
}
.quantumcropperjs-module .qm-input-width-height-wrap > div {
    width: 48%;
}
.quantumcropperjs-module .qm-input-width-height-wrap > div label {
    color: #cbcbcb;
    margin: 0;
}
.quantumcropperjs-module .qm-input-width-height-wrap > div > div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.quantumcropperjs-module .qm-input-width-height-wrap input[type='text'],
.quantumcropperjs-module .qm-input-width-height-wrap input[type='number'] {
    width: calc(100% - 12px);
}
.quantumcropperjs-module .qm-input-width-height-wrap .qm-image-width-height-ratio-checkbox {
    margin-top: 13px;
    color: #cbcbcb;
    display: flex;
    align-items: center;
}
.quantumcropperjs-module .qm-input-width-height-wrap .qm-image-width-height-ratio-checkbox input {
    margin: 0;
    margin-right: 5px;
}
.qm-input-width-height-wrap-rows {
    display: flex;
    flex-wrap: wrap;
}
.qm-input-width-height-wrap-rows > div {
    display: flex;
    align-items: center;
}
.qm-input-width-height-wrap-rows > div > label {
    margin-right: 5px !important;
}
.qm-input-width-height-wrap-rows > div label {
    margin-bottom: 0 !important;
}
.quantumcropperjs-module .qm-input-range-wrap {
    margin-top: 20px;
}
.quantumcropperjs-module .qm-input-range-wrap > label {
    width: 100%;
    color: #cbcbcb;
}
.quantumcropperjs-module .qm-input-range-wrap > div {
    display: flex;
    width: 100%;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=number] {
    margin: 0;
    width: 42px;
    font-size: 15px;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range] {
    flex: 1;
    margin: auto 10px auto auto;
    outline: none;
    padding: 0;
    width: 50%;
    height: 6px;
    background-size: 50% 100%;
    background-repeat: no-repeat;
    border-radius: 10px;
    cursor: pointer;
    -webkit-appearance: none;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-webkit-slider-runnable-track {
    box-shadow: none;
    border: none;
    background: transparent;
    -webkit-appearance: none;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-moz-range-track {
    box-shadow: none;
    border: none;
    background: transparent;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-moz-focus-outer {
    border: 0;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-webkit-slider-thumb {
    width: 17px;
    height: 17px;
    border: 0;
    background: #fff;
    border-radius: 100%;
    box-shadow: 0 0 1px 0px rgba(0,0,0,0.1);
    -webkit-appearance: none;
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-moz-range-thumb {
    width: 17px;
    height: 17px;
    border: 0;
    background: #fff;
    border-radius: 100%;
    box-shadow: 0 0 1px 0px rgba(0,0,0,0.1);
}
.quantumcropperjs-module .qm-input-range-wrap > div input[type=range]::-ms-thumb {
    width: 17px;
    height: 17px;
    background: #fff;
    border-color: transparent;
    border-width: 6px 0;
    color: transparent;
}
.quantumcropperjs-module .qm-button-wrap {
    padding: 25px;
    display: flex;
    justify-content: space-between;
}
.quantumcropperjs-module .qm-button-wrap > button {
    width: 48%;
    text-align: center;
    white-space: nowrap;
}
.quantumcropperjs-module .qm-button-wrap .qm-btn-save {
    border: none;
}
.quantumcropperjs-module .qm-button-wrap .qm-btn-close {
    background: #333;
    color: #fff;
    border: none;
}
.quantumcropperjs-module .toolbar > div > div > div > label {
    margin-bottom: 5px;
}
.quantumcropperjs-module .editor {
    position: relative;
    margin: auto;
    height: 100%;
    max-width: 85%;
    flex: 1;
}
.quantumcropperjs-module .editor .cropperjs {
    position: relative;
    margin: auto;
    height: calc(100% - 40px);
    background: #eee;
}
.quantumcropperjs-module .toolbar-sizes {
    position: absolute;
    display: block !important;
    bottom: 15px;
    width: 65%;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    padding: 10px;
    border-radius: 5px;
    background: #78abde;
    color: #fff;
    opacity: 0.9;
}
.quantumcropperjs-module .toolbar-sizes > div {
    display: flex;
    width: 100%;
    justify-content: center;
    text-transform: uppercase;
    font-size: 10px;
    line-height: 12px;
}
.quantumcropperjs-module .toolbar-sizes > div span {
    display: inline-block;
    margin-right: 4px;
}
.quantumcropperjs-module .toolbar-footer {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    justify-items: center;
    align-content: center;
    align-items: center;
    height: 40px;
    background: #444;
}
.quantumcropperjs-module .toolbar-footer > div {
    display: flex;
}
.quantumcropperjs-module .toolbar-footer > div > div {
    margin-right: 5px;
}
.quantumcropperjs-module .toolbar-footer > div > div:last-child {
    margin-right: 0;
}
.quantumcropperjs-module .toolbar-footer > div .qm-btn {
    background: rgba(243, 243, 243, .85);
}

.cropper-point {
    width: 10px !important;
    height: 10px !important;
}
.cropper-point.point-nw {
    left: 0;
    top: 0;
}
.cropper-point.point-n {
    top: 0;
}
.cropper-point.point-ne {
    right: 0;
    top: 0;
}
.cropper-point.point-sw {
    bottom: 0;
    left: 0;
}
.cropper-point.point-s {
    bottom: 0;
}
.cropper-point.point-se {
    bottom: 0;
    right: 0;
}
@media screen and (max-width: 800px) {
    .quantumcropperjs-module .toolbar {
        width: 30%;
        min-width: 230px;
    }
}