#baloon {
  top: 0px;
  left: 0px;
  padding: 0;
  margin: 0;
  display: none;
  position: absolute;
    z-index: 64999;
  opacity: 0.8;
}

#baloonHeader {
  background-color: #fff;
  position: relative;
  height: 2px;
  border-width: 1px 1px 0 1px;
  border-style: solid;
  border-color: #d1d1d1;
}

#baloonFooter {display: none;}

#baloonBody {
  display: block;
  padding: 10px 15px;
  font-size: 13px;
  line-height: 15px;
  background-color: #fff;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: #d1d1d1;
  box-shadow: 1px 3px 5px rgba(0,0,0,0.25);
}

#baloonHeader:before,
#baloonHeader:after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border: solid transparent;
}

#baloonHeader:before {
  z-index: 1;
  top: -16px;
  border-bottom-color: #d1d1d1;
  border-width: 8px;
  margin-left: -8px;
}

#baloonHeader:after{
  top: -15px;
  z-index: 2;
  border-bottom-color: #fff;
  border-width: 8px;
  margin-left: -8px;
}

.baloonHeaderFlip:before,
.baloonHeaderFlip:after{right: 15px;}

.baloonHeaderDirect:before,
.baloonHeaderDirect:after{left: 15px;}


.ace_editor {
        position: relative;
        overflow: hidden;
        font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'source-code-pro', monospace;
        direction: ltr;
        text-align: left;
    }

    .ace_scroller {
        position: absolute;
        overflow: hidden;
        top: 0;
        bottom: 0;
        background-color: inherit;
        -ms-user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        user-select: none;
        cursor: text;
    }

    .ace_content {
        position: absolute;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        min-width: 100%;
    }

    .ace_dragging .ace_scroller:before {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        content: '';
        background: rgba(250, 250, 250, 0.01);
        z-index: 1000;
    }

    .ace_dragging.ace_dark .ace_scroller:before {
        background: rgba(0, 0, 0, 0.01);
    }

    .ace_selecting,
    .ace_selecting * {
        cursor: text !important;
    }

    .ace_gutter {
        position: absolute;
        overflow: hidden;
        width: auto;
        top: 0;
        bottom: 0;
        left: 0;
        cursor: default;
        z-index: 4;
        -ms-user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        user-select: none;
    }

    .ace_gutter-active-line {
        position: absolute;
        left: 0;
        right: 0;
    }

    .ace_scroller.ace_scroll-left {
        box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;
    }

    .ace_gutter-cell {
        padding-left: 19px;
        padding-right: 6px;
        background-repeat: no-repeat;
    }

    .ace_gutter-cell.ace_error {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");
        background-repeat: no-repeat;
        background-position: 2px center;
    }

    .ace_gutter-cell.ace_warning {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");
        background-position: 2px center;
    }

    .ace_gutter-cell.ace_info {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");
        background-position: 2px center;
    }

    .ace_dark .ace_gutter-cell.ace_info {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");
    }

    .ace_scrollbar {
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: 6;
    }

    .ace_scrollbar-inner {
        position: absolute;
        cursor: text;
        left: 0;
        top: 0;
    }

    .ace_scrollbar-v {
        overflow-x: hidden;
        overflow-y: scroll;
        top: 0;
    }

    .ace_scrollbar-h {
        overflow-x: scroll;
        overflow-y: hidden;
        left: 0;
    }

    .ace_print-margin {
        position: absolute;
        height: 100%;
    }

    .ace_text-input {
        position: absolute;
        z-index: 0;
        width: 0.5em;
        height: 1em;
        opacity: 0;
        background: transparent;
        -moz-appearance: none;
        appearance: none;
        border: none;
        resize: none;
        outline: none;
        overflow: hidden;
        font: inherit;
        padding: 0 1px;
        margin: 0 -1px;
        text-indent: -1em;
        -ms-user-select: text;
        -moz-user-select: text;
        -webkit-user-select: text;
        user-select: text;
        white-space: pre!important;
    }

    .ace_text-input.ace_composition {
        background: inherit;
        color: inherit;
        z-index: 1000;
        opacity: 1;
        text-indent: 0;
    }

    .ace_layer {
        z-index: 1;
        position: absolute;
        overflow: hidden;
        word-wrap: normal;
        white-space: pre;
        height: 100%;
        width: 100%;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        pointer-events: none;
    }

    .ace_gutter-layer {
        position: relative;
        width: auto;
        text-align: right;
        pointer-events: auto;
    }

    .ace_text-layer {
        font: inherit !important;
    }

    .ace_cjk {
        display: inline-block;
        text-align: center;
    }

    .ace_cursor-layer {
        z-index: 4;
    }

    .ace_cursor {
        z-index: 4;
        position: absolute;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border-left: 2px solid;
        transform: translatez(0);
    }

    .ace_slim-cursors .ace_cursor {
        border-left-width: 1px;
    }

    .ace_overwrite-cursors .ace_cursor {
        border-left-width: 0;
        border-bottom: 1px solid;
    }

    .ace_hidden-cursors .ace_cursor {
        opacity: 0.2;
    }

    .ace_smooth-blinking .ace_cursor {
        -webkit-transition: opacity 0.18s;
        transition: opacity 0.18s;
    }

    .ace_editor.ace_multiselect .ace_cursor {
        border-left-width: 1px;
    }

    .ace_marker-layer .ace_step,
    .ace_marker-layer .ace_stack {
        position: absolute;
        z-index: 3;
    }

    .ace_marker-layer .ace_selection {
        position: absolute;
        z-index: 5;
    }

    .ace_marker-layer .ace_bracket {
        position: absolute;
        z-index: 6;
    }

    .ace_marker-layer .ace_active-line {
        position: absolute;
        z-index: 2;
    }

    .ace_marker-layer .ace_selected-word {
        position: absolute;
        z-index: 4;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .ace_line .ace_fold {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
        height: 11px;
        margin-top: -2px;
        vertical-align: middle;
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");
        background-repeat: no-repeat, repeat-x;
        background-position: center center, top left;
        color: transparent;
        border: 1px solid black;
        border-radius: 2px;
        cursor: pointer;
        pointer-events: auto;
    }

    .ace_dark .ace_fold {}

    .ace_fold:hover {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");
    }

    .ace_tooltip {
        background-color: #FFF;
        background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.1));
        background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.1));
        border: 1px solid gray;
        border-radius: 1px;
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
        color: black;
        max-width: 100%;
        padding: 3px 4px;
        position: fixed;
        z-index: 999999;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        cursor: default;
        white-space: pre;
        word-wrap: break-word;
        line-height: normal;
        font-style: normal;
        font-weight: normal;
        letter-spacing: normal;
        pointer-events: none;
    }

    .ace_folding-enabled > .ace_gutter-cell {
        padding-right: 13px;
    }

    .ace_fold-widget {
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0 -12px 0 1px;
        display: none;
        width: 11px;
        vertical-align: top;
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");
        background-repeat: no-repeat;
        background-position: center;
        border-radius: 3px;
        border: 1px solid transparent;
        cursor: pointer;
    }

    .ace_folding-enabled .ace_fold-widget {
        display: inline-block;
    }

    .ace_fold-widget.ace_end {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");
    }

    .ace_fold-widget.ace_closed {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");
    }

    .ace_fold-widget:hover {
        border: 1px solid rgba(0, 0, 0, 0.3);
        background-color: rgba(255, 255, 255, 0.2);
        box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
    }

    .ace_fold-widget:active {
        border: 1px solid rgba(0, 0, 0, 0.4);
        background-color: rgba(0, 0, 0, 0.05);
        box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
    }

    .ace_dark .ace_fold-widget {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");
    }

    .ace_dark .ace_fold-widget.ace_end {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");
    }

    .ace_dark .ace_fold-widget.ace_closed {
        background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");
    }

    .ace_dark .ace_fold-widget:hover {
        box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
        background-color: rgba(255, 255, 255, 0.1);
    }

    .ace_dark .ace_fold-widget:active {
        box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
    }

    .ace_fold-widget.ace_invalid {
        background-color: #FFB4B4;
        border-color: #DE5555;
    }

    .ace_fade-fold-widgets .ace_fold-widget {
        -webkit-transition: opacity 0.4s ease 0.05s;
        transition: opacity 0.4s ease 0.05s;
        opacity: 0;
    }

    .ace_fade-fold-widgets:hover .ace_fold-widget {
        -webkit-transition: opacity 0.05s ease 0.05s;
        transition: opacity 0.05s ease 0.05s;
        opacity: 1;
    }

    .ace_underline {
        text-decoration: underline;
    }

    .ace_bold {
        font-weight: bold;
    }

    .ace_nobold .ace_bold {
        font-weight: normal;
    }

    .ace_italic {
        font-style: italic;
    }

    .ace_error-marker {
        background-color: rgba(255, 0, 0, 0.2);
        position: absolute;
        z-index: 9;
    }

    .ace_highlight-marker {
        background-color: rgba(255, 255, 0, 0.2);
        position: absolute;
        z-index: 8;
    }

    .ace_br1 {
        border-top-left-radius: 3px;
    }

    .ace_br2 {
        border-top-right-radius: 3px;
    }

    .ace_br3 {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
    }

    .ace_br4 {
        border-bottom-right-radius: 3px;
    }

    .ace_br5 {
        border-top-left-radius: 3px;
        border-bottom-right-radius: 3px;
    }

    .ace_br6 {
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
    }

    .ace_br7 {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
    }

    .ace_br8 {
        border-bottom-left-radius: 3px;
    }

    .ace_br9 {
        border-top-left-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br10 {
        border-top-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br11 {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br12 {
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br13 {
        border-top-left-radius: 3px;
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br14 {
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }

    .ace_br15 {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
    }
    /*# sourceURL=ace/css/ace_editor.css */


    .ace-tm .ace_gutter {
        background: #f0f0f0;
        color: #333;
    }

    .ace-tm .ace_print-margin {
        width: 1px;
        background: #e8e8e8;
    }

    .ace-tm .ace_fold {
        background-color: #6B72E6;
    }

    .ace-tm {
        background-color: #FFFFFF;
        color: black;
    }

    .ace-tm .ace_cursor {
        color: black;
    }

    .ace-tm .ace_invisible {
        color: rgb(191, 191, 191);
    }

    .ace-tm .ace_storage,
    .ace-tm .ace_keyword {
        color: blue;
    }

    .ace-tm .ace_constant {
        color: rgb(197, 6, 11);
    }

    .ace-tm .ace_constant.ace_buildin {
        color: rgb(88, 72, 246);
    }

    .ace-tm .ace_constant.ace_language {
        color: rgb(88, 92, 246);
    }

    .ace-tm .ace_constant.ace_library {
        color: rgb(6, 150, 14);
    }

    .ace-tm .ace_invalid {
        background-color: rgba(255, 0, 0, 0.1);
        color: red;
    }

    .ace-tm .ace_support.ace_function {
        color: rgb(60, 76, 114);
    }

    .ace-tm .ace_support.ace_constant {
        color: rgb(6, 150, 14);
    }

    .ace-tm .ace_support.ace_type,
    .ace-tm .ace_support.ace_class {
        color: rgb(109, 121, 222);
    }

    .ace-tm .ace_keyword.ace_operator {
        color: rgb(104, 118, 135);
    }

    .ace-tm .ace_string {
        color: rgb(3, 106, 7);
    }

    .ace-tm .ace_comment {
        color: rgb(76, 136, 107);
    }

    .ace-tm .ace_comment.ace_doc {
        color: rgb(0, 102, 255);
    }

    .ace-tm .ace_comment.ace_doc.ace_tag {
        color: rgb(128, 159, 191);
    }

    .ace-tm .ace_constant.ace_numeric {
        color: rgb(0, 0, 205);
    }

    .ace-tm .ace_variable {
        color: rgb(49, 132, 149);
    }

    .ace-tm .ace_xml-pe {
        color: rgb(104, 104, 91);
    }

    .ace-tm .ace_entity.ace_name.ace_function {
        color: #0000A2;
    }

    .ace-tm .ace_heading {
        color: rgb(12, 7, 255);
    }

    .ace-tm .ace_list {
        color: rgb(185, 6, 144);
    }

    .ace-tm .ace_meta.ace_tag {
        color: rgb(0, 22, 142);
    }

    .ace-tm .ace_string.ace_regex {
        color: rgb(255, 0, 0)
    }

    .ace-tm .ace_marker-layer .ace_selection {
        background: rgb(181, 213, 255);
    }

    .ace-tm.ace_multiselect .ace_selection.ace_start {
        box-shadow: 0 0 3px 0px white;
    }

    .ace-tm .ace_marker-layer .ace_step {
        background: rgb(252, 255, 0);
    }

    .ace-tm .ace_marker-layer .ace_stack {
        background: rgb(164, 229, 101);
    }

    .ace-tm .ace_marker-layer .ace_bracket {
        margin: -1px 0 0 -1px;
        border: 1px solid rgb(192, 192, 192);
    }

    .ace-tm .ace_marker-layer .ace_active-line {
        background: rgba(0, 0, 0, 0.07);
    }

    .ace-tm .ace_gutter-active-line {
        background-color: #dcdcdc;
    }

    .ace-tm .ace_marker-layer .ace_selected-word {
        background: rgb(250, 250, 255);
        border: 1px solid rgb(200, 200, 250);
    }

    .ace-tm .ace_indent-guide {
        background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;
    }
    .error_widget_wrapper {
        background: inherit;
        color: inherit;
        border: none
    }

    .error_widget {
        border-top: solid 2px;
        border-bottom: solid 2px;
        margin: 5px 0;
        padding: 10px 40px;
        white-space: pre-wrap;
    }

    .error_widget.ace_error,
    .error_widget_arrow.ace_error {
        border-color: #ff5a5a
    }

    .error_widget.ace_warning,
    .error_widget_arrow.ace_warning {
        border-color: #F1D817
    }

    .error_widget.ace_info,
    .error_widget_arrow.ace_info {
        border-color: #5a5a5a
    }

    .error_widget.ace_ok,
    .error_widget_arrow.ace_ok {
        border-color: #5aaa5a
    }

    .error_widget_arrow {
        position: absolute;
        border: solid 5px;
        border-top-color: transparent!important;
        border-right-color: transparent!important;
        border-left-color: transparent!important;
        top: -5px;
    }
    .ace_snippet-marker {
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        background: rgba(194, 193, 208, 0.09);
        border: 1px dotted rgba(211, 208, 235, 0.62);
        position: absolute;
    }

/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-ms-touch-action: none;
	-ms-user-select: none;
	-moz-user-select: none;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.noUi-base {
	width: 100%;
	height: 100%;
	position: relative;
}
.noUi-origin {
	position: absolute;
	right: 0;
	top: 0;
	left: 0;
	bottom: 0;
}
.noUi-handle {
	position: relative;
	z-index: 1;
}
.noUi-stacking .noUi-handle {
	/* This class is applied to the lower origin when
	   its values is > 50%. */
	z-index: 10;
}
.noUi-stacking + .noUi-origin {
	/* Fix stacking order in IE7, which incorrectly
	   creates a new context for the origins. */
	*z-index: -1;
}
.noUi-state-tap .noUi-origin {
	-webkit-transition: left 0.3s, top 0.3s;
	transition: left 0.3s, top 0.3s;
}
.noUi-state-drag * {
	cursor: inherit !important;
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
	height: 18px;
}
.noUi-horizontal .noUi-handle {
	width: 34px;
	height: 28px;
	left: -17px;
	top: -6px;
}
.noUi-horizontal.noUi-extended {
	padding: 0 15px;
}
.noUi-horizontal.noUi-extended .noUi-origin  {
	right: -15px;
}
.noUi-vertical {
	width: 18px;
}
.noUi-vertical .noUi-handle {
	width: 28px;
	height: 34px;
	left: -6px;
	top: -17px;
}
.noUi-vertical.noUi-extended {
	padding: 15px 0;
}
.noUi-vertical.noUi-extended .noUi-origin  {
	bottom: -15px;
}

/* Styling;
 */
.noUi-background {
	background: #FAFAFA;
	box-shadow: inset 0 1px 1px #f0f0f0;
}
.noUi-connect {
	background: #3FB8AF;
	box-shadow: inset 0 0 3px rgba(51,51,51,0.45);
	-webkit-transition: background 450ms;
	transition: background 450ms;
}
.noUi-origin {
	border-radius: 2px;
}
.noUi-target {
	border-radius: 4px;
	border: 1px solid #D3D3D3;
	box-shadow: inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;
}
.noUi-target.noUi-connect {
	box-shadow: inset 0 0 3px rgba(51,51,51,0.45), 0 3px 6px -5px #BBB;
}

/* Handles and cursors;
 */
.noUi-dragable {
	cursor: w-resize;
}
.noUi-vertical .noUi-dragable {
	cursor: n-resize;
}
.noUi-handle {
	border: 1px solid #D9D9D9;
	border-radius: 3px;
	background: #FFF;
	cursor: default;
	box-shadow: inset 0 0 1px #FFF,
	inset 0 1px 7px #EBEBEB,
	0 3px 6px -3px #BBB;
}
.noUi-active {
	box-shadow: inset 0 0 1px #FFF,
	inset 0 1px 7px #DDD,
	0 3px 6px -3px #BBB;
}

/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
	content: "";
	display: block;
	position: absolute;
	height: 14px;
	width: 1px;
	background: #E8E7E6;
	left: 14px;
	top: 6px;
}
.noUi-handle:after {
	left: 17px;
}
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
	width: 14px;
	height: 1px;
	left: 6px;
	top: 14px;
}
.noUi-vertical .noUi-handle:after {
	top: 17px;
}

/* Disabled state;
 */
[disabled].noUi-connect,
[disabled] .noUi-connect {
	background: #B8B8B8;
}
[disabled] .noUi-handle {
	cursor: not-allowed;
}