@import url(../node_modules/perfect-scrollbar/css/perfect-scrollbar.css);

.ms-editor {
    position: relative;
    z-index: 20;
    color: #1A9FFF;
    font-family: sans-serif;
}

.ms-editor canvas,
.ms-editor svg {
    z-index: 15;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.ms-editor canvas.ms-rendering-canvas {
    z-index: 10;
    pointer-events: none;
    background-image: linear-gradient(to right, #F5F6F7 1px, transparent 1px),
    linear-gradient(to bottom, #F5F6F7 1px, transparent 1px);
    background-size: 18px 18px;
}

.ms-editor svg {
    z-index: 10;
    pointer-events: none;
}
.ms-editor svg[data-layer="BACKGROUND"] {
    z-index: 9;
}

.ms-editor .loader {
    z-index: 30;
    position: absolute;
    width: 120px;
    height: 120px;
    top: calc(50% - 60px);
    left: calc(50% - 60px);
    border: 16px solid #F5F6F7;
    border-radius: 50%;
    border-top-color: #1A9FFF;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}

.ms-editor .error-msg {
    z-index: 25;
    position: absolute;
    width: 200px;
    height: 200px;
    top: calc(50% - 100px);
    left: calc(50% - 100px);
    font-size: 16px;
    text-align: center;
    word-wrap: break-word;
}

.ms-editor .error-msg::before {
    content: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCA3Ni41IDYxMiA0NTkiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaW5ZTWluIG1lZXQiPgogICAgPHBhdGggZmlsbD0iIzFBOUZGRiIgZD0iTTQ5NC43LDIyOS41Yy0xNy44NTEtODYuNy05NC4zNTEtMTUzLTE4OC43LTE1M2MtMzguMjUsMC03My45NSwxMC4yLTEwMiwzMC42bDM4LjI1LDM4LjI1IGMxNy44NS0xMi43NSw0MC44LTE3Ljg1LDYzLjc1LTE3Ljg1Yzc2LjUsMCwxNDAuMjUsNjMuNzUsMTQwLjI1LDE0MC4yNXYxMi43NWgzOC4yNWM0My4zNSwwLDc2LjUsMzMuMTUsNzYuNSw3Ni41IGMwLDI4LjA1LTE1LjMsNTMuNTUtNDAuOCw2Ni4zbDM4LjI1LDM4LjI1QzU5MS42LDQzOC42LDYxMiw0MDAuMzUsNjEyLDM1N0M2MTIsMjkwLjcsNTU4LjQ1LDIzNC42LDQ5NC43LDIyOS41eiBNNzYuNSwxMDkuNjUgbDcxLjQsNjguODVDNjYuMywxODMuNiwwLDI0OS45LDAsMzMxLjVjMCw4NC4xNSw2OC44NSwxNTMsMTUzLDE1M2gyOTguMzVsNTEsNTFsMzMuMTUtMzMuMTVMMTA5LjY1LDc2LjVMNzYuNSwxMDkuNjV6IE0xOTYuMzUsMjI5LjVsMjA0LDIwNEgxNTNjLTU2LjEsMC0xMDItNDUuOS0xMDItMTAyYzAtNTYuMSw0NS45LTEwMiwxMDItMTAySDE5Ni4zNXoiIC8+Cjwvc3ZnPgo=);
}

.smartguide {
    position: absolute;
    z-index: 40;
    font-size: 16px;
}

.smartguide-in {
    visibility: visible !important;
    transition: opacity 0.5s;
    opacity: 1;
}

.smartguide-out {
    transition: opacity 1s, visibility 1s;
    visibility: hidden !important;
    opacity: 0;
}

.prompter-text-container {
    background-color: rgba(255, 255, 255, 0.9);
    height: 48px;
    line-height: 48px;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    text-align: left;
    border-bottom: 1px solid #959DA6;
    position: absolute;
    z-index: 30;
    color: #bfbfbf;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.prompter-text-container > div > span {
    cursor: pointer;
    display: inline-block;
}

.prompter-text {
    margin-left: 12px;
}

.added-word {
    animation: 0.1s linear word-added,
    3s ease-in-out color-input;
}

.modified-word {
    animation: 0.1s linear word-modified,
    3s ease-in-out color-input;
}

@keyframes color-input {
    0% {
        color: black;
    }
    100% {
        color: #bfbfbf;
    }
}

@keyframes word-added {
    0% {
        transform: translate(5px, 0);
    }
    100% {
        transform: none;
    }
}

@keyframes word-modified {
    0% {
        transform: translate(0, 5px);
    }
    100% {
        transform: none;
    }
}

.candidates {
    color: black;
    flex-direction: column;
    text-align: center;
    line-height: 30px;
    border-radius: 3px;
    position: absolute;
    box-shadow: 2px 2px 12px #BDBDBD, -2px 2px 12px #BDBDBD;
    background-color: #F5F5F5;
    z-index: 100;
    -webkit-tap-highlight-color: transparent;
}

.candidates > span {
    cursor: pointer;
    padding: 2px 20px;
}

.candidates > span:hover {
    background-color: #EEEEEE;
}

.candidates > span:active {
    background-color: #E0E0E0;
}

.selected-word {
    font-weight: bold;
    background-color: #E0E0E0;
}

.tag-icon {
    padding: 0 18px;
    border: 1px solid #959DA6;
    font-weight: bold;
    font-size: large;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    position: absolute;
    z-index: 31;
    height: 48px;
    line-height: 48px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #959DA6;
}

.ellipsis {
    cursor: pointer;
    border-bottom: 1px solid #959DA6;
    position: absolute;
    z-index: 31;
    height: 48px;
    line-height: 38px;
    padding: 0 8px;
    font-weight: bold;
    font-size: x-large;
    background-color: rgba(255, 255, 255, 0.9);
    color: #959DA6;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.ellipsis:active {
    background-color: #e0e0e0;
}

.more-menu {
    flex-direction: column;
    margin-right: 12px;
    line-height: 30px;
    border-radius: 3px;
    position: absolute;
    z-index: 100;
    box-shadow: 2px 2px 12px #BDBDBD;
    background-color: #F5F5F5;
}

.options-label-button {
    color: black;
    font-size: 16px;
    cursor: pointer;
    box-sizing: border-box;
    background: transparent;
    border: none;
    padding: 0 24px;
    margin: 0;
    height: 40px;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}

.options-label-button:hover {
    background-color: #EEEEEE;
}

.options-label-button:active {
    background-color: #E0E0E0;
}

.ps__rail-x {
    top: 32px !important;
}

/** Stroke **/

.removed-stroke {
    opacity: 0;
    transition: opacity 0.1s ease-in-out;
}

.added-stroke {
    animation: 0.2s opacity-appear;
}

@keyframes opacity-appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity : 1;
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes rotate-plan {
    0% {
        transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    }
    25% {
        transform: perspective(120px) rotateX(0deg) rotateY(-180deg);
    }
    50% {
        transform: perspective(120px) rotateX(-180deg) rotateY(-180deg);
    }
    75% {
        transform: perspective(120px) rotateX(-180deg) rotateY(0deg);
    }
    100% {
        transform: perspective(120px) rotateX(0deg) rotateY(0deg);
    }
}

@-webkit-keyframes rotate-plan {
    0% {
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg)
    }
    25% {
        -webkit-transform: perspective(120px) rotateX(180deg) rotateY(0deg)
    }
    50% {
        -webkit-transform: perspective(120px) rotateX(180deg) rotateY(180deg)
    }
    75% {
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(180deg)
    }
    100% {
        -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg)
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
    }
}
