/*!
 RichText: WYSIWYG editor developed as jQuery plugin

 @name RichText
 @author https://github.com/webfashionist - Bob Schockweiler - richtext@webfashion.eu

 Copyright (C) 2020 Bob Schockweiler ( richtext@webfashion.eu )

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU Affero General Public License as published
 by the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU Affero General Public License for more details.

 You should have received a copy of the GNU Affero General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/ 
.richText {
    z-index: 1;
    position: relative;
    background-color: #fafafa;
    border: #efefef solid 1px;
    color: #333;
    width: 100%
}
.richText .richText-form {
    font-family: Calibri, Verdana, Helvetica, sans-serif
}
.richText .richText-form label {
    display: block;
    padding: 10px 15px
}
.richText .richText-form input[type=text], .richText .richText-form input[type=file], .richText .richText-form input[type=number], .richText .richText-form select {
    padding: 10px 15px;
    border: #999 solid 1px;
    min-width: 200px;
    width: 100%
}
.richText .richText-form select {
    cursor: pointer
}
.richText .richText-form button {
    margin: 10px 0;
    padding: 10px 15px;
    background-color: #3498db;
    border: none;
    color: #fafafa;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px
}
.richText .richText-toolbar {
    position: sticky;
    top: 0;
    min-height: 20px;
    background-color: inherit;
    border-bottom: #efefef solid 1px;
    z-index: 1
}
.richText .richText-toolbar .richText-length {
    font-family: Verdana, Helvetica, sans-serif;
    font-size: 13px;
    vertical-align: middle;
    line-height: 34px
}
.richText .richText-toolbar .richText-length .black {
    color: #000
}
.richText .richText-toolbar .richText-length .orange {
    color: orange
}
.richText .richText-toolbar .richText-length .red {
    color: red
}
.richText .richText-toolbar ul {
    padding-left: 0;
    padding-right: 0;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 0;
    background:white;
}
.richText .richText-toolbar ul li {
    float: left;
    display: block;
    list-style: none
}
.richText .richText-toolbar ul li a {
    display: block;
    padding: 10px 13px;
    border-right: #efefef solid 1px;
    cursor: pointer;
    -webkit-transition: background-color .4s;
    -moz-transition: background-color .4s;
    transition: background-color .4s
}
.richText .richText-toolbar ul li a .fa, .richText .richText-toolbar ul li a .fas, .richText .richText-toolbar ul li a .far, .richText .richText-toolbar ul li a svg {
    pointer-events: none
}
.richText .richText-toolbar ul li a .richText-dropdown-outer {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .3);
    cursor: default
}
.richText .richText-toolbar ul li a .richText-dropdown-outer > .richText-dropdown-close {
    position: absolute;
    top: 1px;
    right: 1px;
    background: red;
    color: white;
    cursor: pointer;
    font-size: 20px;
    text-align: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='m256-200-56-56 224-224-224-224 56-56 224 224 224-224 56 56-224 224 224 224-56 56-224-224-224 224Z'/%3E%3C/svg%3E");
    width: 24px;
    background-size: 16px;
    background-position: center;
    background-repeat: no-repeat;
    
}
.richText .richText-toolbar ul li a .richText-dropdown-outer .richText-dropdown {
    position: relative;
    display: block;
    margin: 3% auto 0 auto;
    background-color: #fafafa;
    border: #efefef solid 1px;
    border-radius: 4px;
    min-width: 100px;
    width: 300px;
    max-width: 90%;
    -webkit-box-shadow: rgba(149, 157, 165, .2) 0 8px 24px;
    -moz-box-shadow: rgba(149, 157, 165, .2) 0 8px 24px;
    box-shadow: rgba(149, 157, 165, .2) 0 8px 24px;
    max-height: 300px;
    overflow-y: auto;
    overflow-x: hidden
}
.richText .richText-toolbar ul li a .richText-dropdown-outer .richText-dropdown .richText-dropdown-close {
    position: absolute;
    top: 0;
    right: -23px;
    background: #fff;
    color: #333;
    cursor: pointer;
    font-size: 20px;
    text-align: center;
    width: 20px
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown {
    list-style: none
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li {
    display: block;
    float: none;
    font-family: Calibri, Verdana, Helvetica, sans-serif
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li a {
    display: block;
    padding: 10px 15px;
    border-bottom: #efefef solid 1px
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li a:hover {
    background-color: #fff
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li.inline {
    margin: 10px 6px;
    float: left
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li.inline a {
    display: block;
    padding: 0;
    margin: 0;
    border: none;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 10px 0 #999;
    -moz-box-shadow: 0 0 10px 0 #999;
    box-shadow: 0 0 10px 0 #999
}
.richText .richText-toolbar ul li a .richText-dropdown-outer ul.richText-dropdown li.inline a span {
    display: block;
    height: 30px;
    width: 30px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%
}
.richText .richText-toolbar ul li a .richText-dropdown-outer div.richText-dropdown {
    padding: 10px 15px
}
.richText .richText-toolbar ul li a:hover {
    background-color: #fff
}
.richText .richText-toolbar ul li[data-disable=true] {
    opacity: .1
}
.richText .richText-toolbar ul li[data-disable=true] a {
    cursor: default
}
.richText .richText-toolbar ul li:not([data-disable=true]).is-selected .richText-dropdown-outer {
    display: block
}
.richText .richText-toolbar ul:after {
    display: block;
    content: "";
    clear: both
}
.richText .richText-toolbar:last-child {
    font-size: 12px;
    z-index: -1
}
.richText .richText-toolbar:after {
    display: block;
    clear: both;
    content: ""
}
.richText .richText-editor {
    padding: 20px;
    background-color: #fff;
    border-left: #fff solid 2px;
    font-family: Calibri, Verdana, Helvetica, sans-serif;
    height: 500px;
    outline: none;
    overflow-y: scroll;
    overflow-x: auto
}
.richText .richText-editor[placeholder]:before {
    content: attr(placeholder);
    color: #555
}
.richText .richText-editor ul, .richText .richText-editor ol {
    margin: 10px 25px
}
.richText .richText-editor table {
    margin: 10px 0;
    border-spacing: 0;
    width: 100%
}
.richText .richText-editor table td, .richText .richText-editor table th {
    padding: 10px;
    border: #efefef solid 1px
}
.richText .richText-editor:focus {
    border-left: #3498db solid 2px
}
.richText .richText-initial {
       margin-bottom: -4px;
    padding: 10px;
    background-color: #282828;
    border: none;
    color: #3f3;
    font-family: Monospace, Calibri, Verdana, Helvetica, sans-serif;
    max-width: 100%;
    min-width: 100%;
    width: 100%;
    min-height: 400px;
    height: 400px;
    text-align: left !important;
    font-size: 12px !important;
    line-height: 1.4;
}
.richText .richText-help {
    display: none !important;
}
.richText .richText-undo, .richText .richText-redo {
    float: left;
    display: block;
    padding: 10px 15px;
    border-right: #efefef solid 1px;
    cursor: pointer
}
.richText .richText-undo.is-disabled, .richText .richText-redo.is-disabled {
    opacity: .4
}
.richText .richText-help-popup a {
    color: #3498db;
    text-decoration: underline
}
.richText .richText-help-popup hr {
    margin: 10px auto 5px auto;
    border: none;
    border-top: #efefef solid 1px
}
.richText .richText-list.list-rightclick {
    position: absolute;
    background-color: #fafafa;
    border-right: #efefef solid 1px;
    border-bottom: #efefef solid 1px
}
.richText .richText-list.list-rightclick li {
    padding: 5px 7px;
    cursor: pointer;
    list-style: none
} 



.richText .richText-toolbar ul li a { 
    padding: 1px 1px;
    box-sizing: border-box;
}
.richText .richText-toolbar ul li a span.fa { 
    
    display: flex;
    min-width: 24px;
    min-height: 24px;
    box-sizing: border-box;
    padding: 0px 0px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 18px;
    opacity: 0.5;

        
}
.richText .richText-toolbar ul li:hover a span.fa { 
    
    background-size: 20px;
    opacity: 0.9;

}
.richText .richText-toolbar ul li a span.fa.fa-bold { 
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M272-200v-560h221q65 0 120 40t55 111q0 51-23 78.5T602-491q25 11 55.5 41t30.5 90q0 89-65 124.5T501-200H272Zm121-112h104q48 0 58.5-24.5T566-372q0-11-10.5-35.5T494-432H393v120Zm0-228h93q33 0 48-17t15-38q0-24-17-39t-44-15h-95v109Z'/%3E%3C/svg%3E");    
}

.richText .richText-toolbar ul li a span.fa.fa-italic { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M200-200v-100h160l120-360H320v-100h400v100H580L460-300h140v100H200Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-underline { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M200-120v-80h560v80H200Zm280-160q-101 0-157-63t-56-167v-330h103v336q0 56 28 91t82 35q54 0 82-35t28-91v-336h103v330q0 104-56 167t-157 63Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-align-left { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-120v-80h720v80H120Zm0-160v-80h480v80H120Zm0-160v-80h720v80H120Zm0-160v-80h480v80H120Zm0-160v-80h720v80H120Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-align-center { 
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-120v-80h720v80H120Zm160-160v-80h400v80H280ZM120-440v-80h720v80H120Zm160-160v-80h400v80H280ZM120-760v-80h720v80H120Z'/%3E%3C/svg%3E");
}
.richText .richText-toolbar ul li a span.fa.fa-align-right { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-760v-80h720v80H120Zm240 160v-80h480v80H360ZM120-440v-80h720v80H120Zm240 160v-80h480v80H360ZM120-120v-80h720v80H120Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-align-justify { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-120v-80h720v80H120Zm0-160v-80h720v80H120Zm0-160v-80h720v80H120Zm0-160v-80h720v80H120Zm0-160v-80h720v80H120Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-list-ol { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-80v-60h100v-30h-60v-60h60v-30H120v-60h120q17 0 28.5 11.5T280-280v40q0 17-11.5 28.5T240-200q17 0 28.5 11.5T280-160v40q0 17-11.5 28.5T240-80H120Zm0-280v-110q0-17 11.5-28.5T160-510h60v-30H120v-60h120q17 0 28.5 11.5T280-560v70q0 17-11.5 28.5T240-450h-60v30h100v60H120Zm60-280v-180h-60v-60h120v240h-60Zm180 440v-80h480v80H360Zm0-240v-80h480v80H360Zm0-240v-80h480v80H360Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-list { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M360-200v-80h480v80H360Zm0-240v-80h480v80H360Zm0-240v-80h480v80H360ZM200-160q-33 0-56.5-23.5T120-240q0-33 23.5-56.5T200-320q33 0 56.5 23.5T280-240q0 33-23.5 56.5T200-160Zm0-240q-33 0-56.5-23.5T120-480q0-33 23.5-56.5T200-560q33 0 56.5 23.5T280-480q0 33-23.5 56.5T200-400Zm0-240q-33 0-56.5-23.5T120-720q0-33 23.5-56.5T200-800q33 0 56.5 23.5T280-720q0 33-23.5 56.5T200-640Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-font { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M256-240h84l44-122h192l44 122h84L522-720h-84L256-240Zm152-192 70-198h4l70 198H408ZM160-80q-33 0-56.5-23.5T80-160v-640q0-33 23.5-56.5T160-880h640q33 0 56.5 23.5T880-800v640q0 33-23.5 56.5T800-80H160Zm0-80h640v-640H160v640Zm0-640v640-640Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-text-height { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M280-160v-520H80v-120h520v120H400v520H280Zm360 0v-320H520v-120h360v120H760v320H640Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-heading { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M200-280v-400h80v160h160v-160h80v400h-80v-160H280v160h-80Zm480 0v-320h-80v-80h160v400h-80Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-pencil { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-paint-brush { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M240-120q-45 0-89-22t-71-58q26 0 53-20.5t27-59.5q0-50 35-85t85-35q50 0 85 35t35 85q0 66-47 113t-113 47Zm0-80q33 0 56.5-23.5T320-280q0-17-11.5-28.5T280-320q-17 0-28.5 11.5T240-280q0 23-5.5 42T220-202q5 2 10 2h10Zm230-160L360-470l358-358q11-11 27.5-11.5T774-828l54 54q12 12 12 28t-12 28L470-360Zm-190 80Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-image { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm40-80h480L570-480 450-320l-90-120-120 160Zm-40 80v-560 560Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-file-alt { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M320-240h320v-80H320v80Zm0-160h320v-80H320v80ZM240-80q-33 0-56.5-23.5T160-160v-640q0-33 23.5-56.5T240-880h320l240 240v480q0 33-23.5 56.5T720-80H240Zm280-520v-200H240v640h480v-440H520ZM240-800v200-200 640-640Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-video { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='m380-300 280-180-280-180v360ZM160-160q-33 0-56.5-23.5T80-240v-480q0-33 23.5-56.5T160-800h640q33 0 56.5 23.5T880-720v480q0 33-23.5 56.5T800-160H160Zm0-80h640v-480H160v480Zm0 0v-480 480Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-link { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M440-280H280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h160v80H280q-50 0-85 35t-35 85q0 50 35 85t85 35h160v80ZM320-440v-80h320v80H320Zm200 160v-80h160q50 0 85-35t35-85q0-50-35-85t-85-35H520v-80h160q83 0 141.5 58.5T880-480q0 83-58.5 141.5T680-280H520Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-table { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200q-33 0-56.5-23.5T120-200Zm80-400h560v-160H200v160Zm213 200h134v-120H413v120Zm0 200h134v-120H413v120ZM200-400h133v-120H200v120Zm427 0h133v-120H627v120ZM200-200h133v-120H200v120Zm427 0h133v-120H627v120Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-recycle { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='m368-592 89-147-59-98q-12-20-34.5-20T329-837l-98 163 137 82Zm387 272-89-148 139-80 64 107q11 17 12 38t-9 39q-10 20-29.5 32T800-320h-45ZM640-40 480-200l160-160v80h190l-58 116q-11 20-30 32t-42 12h-60v80Zm-387-80q-20 0-36.5-10.5T192-158q-8-16-7.5-33.5T194-224l34-56h172v160H253Zm-99-114L89-364q-9-18-8.5-38.5T92-441l16-27-68-41 219-55 55 220-69-42-91 152Zm540-342-219-55 69-41-125-208h141q21 0 39.5 10.5T629-841l52 87 68-42-55 220Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-code { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M320-240 80-480l240-240 57 57-184 184 183 183-56 56Zm320 0-57-57 184-184-183-183 56-56 240 240-240 240Z'/%3E%3C/svg%3E"); }

.richText .richText-toolbar ul li a span.fa.fa-save {background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' fill='white' width='24'%3E%3Cpath d='M840-680v480q0 33-23.5 56.5T760-120H200q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h480l160 160Zm-80 34L646-760H200v560h560v-446ZM480-240q50 0 85-35t35-85q0-50-35-85t-85-35q-50 0-85 35t-35 85q0 50 35 85t85 35ZM240-560h360v-160H240v160Zm-40-86v446-560 114Z'/%3E%3C/svg%3E"); background-color:green; min-width: 90px; border-radius: 3px; }



.richText .richText-undo, .richText .richText-redo { 
    
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px;
    
} 

.richText .richText-undo { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M280-200v-80h284q63 0 109.5-40T720-420q0-60-46.5-100T564-560H312l104 104-56 56-200-200 200-200 56 56-104 104h252q97 0 166.5 63T800-420q0 94-69.5 157T564-200H280Z'/%3E%3C/svg%3E"); }

.richText .richText-redo { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M396-200q-97 0-166.5-63T160-420q0-94 69.5-157T396-640h252L544-744l56-56 200 200-200 200-56-56 104-104H396q-63 0-109.5 40T240-420q0 60 46.5 100T396-280h284v80H396Z'/%3E%3C/svg%3E"); }

div.richText-editor p { 
    display: block !important; 
    width: 100% !important; 
    line-height: 1.25; 
    font-size: 0.9rem; 
    margin: 0px 0px; 
    margin-bottom: 5px;
} 