.color0   { background-color: rgba(184,216,240,1); }
.color1   { background-color: rgba(184,216,240,1); }
.color2   { background-color: rgba(192,225,133,1); }
.color3   { background-color: rgba(228,145,196,1); }
.color4   { background-color: rgba(225,192,218,1); }
.color5   { background-color: rgba(236,196,161,1); }
.color6   { background-color: rgba(146,182,181,1); }
.color7   { background-color: rgba(198,181,250,1); }
.color8   { background-color: rgba(228,172,179,1); }
.color9   { background-color: rgba(135,144,154,1); }
.color10  { background-color: rgba(198,202,178,1); }
.color11  { background-color: rgba(192,206,230,1); }
.color12  { background-color: rgba(162,202,182,1); }
.color13  { background-color: rgba(146,232,143,1); }
.color14  { background-color: rgba(178,254,174,1); }
.color15  { background-color: rgba(183,167,170,1); }
.color16  { background-color: rgba(142,130,193,1); }
.color17  { background-color: rgba(230,238,234,1); }
.color18  { background-color: rgba(130,222,174,1); }
.color19  { background-color: rgba(127,136,204,1); }
.color20  { background-color: rgba(135,175,173,1); }
.color21  { background-color: rgba(180,216,214,1); }
.color22  { background-color: rgba(147,189,177,1); }
.color23  { background-color: rgba(234,222,172,1); }
.color24  { background-color: rgba(139,154,180,1); }
.color25  { background-color: rgba(177,232,242,1); }
.color26  { background-color: rgba(176,159,153,1); }
.color27  { background-color: rgba(211,196,205,1); }
.color28  { background-color: rgba(131,252,169,1); }
.color29  { background-color: rgba(218,164,194,1); }
.color30  { background-color: rgba(209,192,240,1); }
.color31  { background-color: rgba(145,152,200,1); }
.color32  { background-color: rgba(190,205,160,1); }
.color33  { background-color: rgba(172,217,238,1); }
.color34  { background-color: rgba(163,196,136,1); }
.color35  { background-color: rgba(131,136,242,1); }
.color36  { background-color: rgba(182,191,198,1); }
.color37  { background-color: rgba(202,162,133,1); }
.color38  { background-color: rgba(211,210,201,1); }
.color39  { background-color: rgba(160,222,235,1); }
.color40  { background-color: rgba(158,186,216,1); }
.color41  { background-color: rgba(245,237,254,1); }
.color42  { background-color: rgba(175,138,240,1); }
.color43  { background-color: rgba(253,249,213,1); }
.color44  { background-color: rgba(136,158,197,1); }
.color45  { background-color: rgba(215,217,147,1); }
.color46  { background-color: rgba(247,183,216,1); }
.color47  { background-color: rgba(130,160,243,1); }
.color48  { background-color: rgba(194,206,206,1); }
.color49  { background-color: rgba(241,146,201,1); }
.color50  { background-color: rgba(161,164,199,1); }
.color51  { background-color: rgba(253,183,158,1); }
.color52  { background-color: rgba(157,182,185,1); }
.color53  { background-color: rgba(207,188,231,1); }
.color54  { background-color: rgba(176,159,229,1); }
.color55  { background-color: rgba(150,206,160,1); }
.color56  { background-color: rgba(254,228,231,1); }
.color57  { background-color: rgba(251,163,226,1); }
.color58  { background-color: rgba(149,211,227,1); }
.color59  { background-color: rgba(223,230,238,1); }
.color60  { background-color: rgba(244,223,153,1); }
.color61  { background-color: rgba(172,220,144,1); }
.color62  { background-color: rgba(139,153,159,1); }
.color63  { background-color: rgba(192,130,145,1); }
.color64  { background-color: rgba(222,188,183,1); }
.color65  { background-color: rgba(138,162,250,1); }
.color66  { background-color: rgba(190,175,253,1); }
.color67  { background-color: rgba(139,175,169,1); }
.color68  { background-color: rgba(237,145,169,1); }
.color69  { background-color: rgba(145,250,188,1); }
.color70  { background-color: rgba(167,201,215,1); }
.color71  { background-color: rgba(209,244,156,1); }
.color72  { background-color: rgba(134,165,191,1); }
.color73  { background-color: rgba(202,212,134,1); }
.color74  { background-color: rgba(176,175,228,1); }
.color75  { background-color: rgba(203,182,176,1); }
.color76  { background-color: rgba(200,215,241,1); }
.color77  { background-color: rgba(137,242,152,1); }
.color78  { background-color: rgba(219,255,156,1); }
.color79  { background-color: rgba(246,145,210,1); }
.color80  { background-color: rgba(251,214,242,1); }
.color81  { background-color: rgba(214,204,198,1); }
.color82  { background-color: rgba(207,169,250,1); }
.color83  { background-color: rgba(243,156,236,1); }
.color84  { background-color: rgba(161,155,180,1); }
.color85  { background-color: rgba(131,234,241,1); }
.color86  { background-color: rgba(151,198,232,1); }
.color87  { background-color: rgba(198,253,210,1); }
.color88  { background-color: rgba(201,156,203,1); }
.color89  { background-color: rgba(187,209,163,1); }
.color90  { background-color: rgba(128,141,218,1); }
.color91  { background-color: rgba(200,217,244,1); }
.color92  { background-color: rgba(246,187,137,1); }
.color93  { background-color: rgba(150,253,209,1); }
.color94  { background-color: rgba(243,190,242,1); }
.color95  { background-color: rgba(195,237,183,1); }
.color96  { background-color: rgba(180,223,237,1); }
.color97  { background-color: rgba(140,153,153,1); }
.color98  { background-color: rgba(168,242,156,1); }
.color99  { background-color: rgba(174,196,132,1); }
.color100 { background-color: rgba(178,223,134,1); }
.color101 { background-color: rgba(187,184,171,1); }
.color102 { background-color: rgba(215,160,138,1); }
.color103 { background-color: rgba(253,165,145,1); }
.color104 { background-color: rgba(174,196,192,1); }
.color105 { background-color: rgba(131,252,151,1); }
.color106 { background-color: rgba(230,167,188,1); }
.color107 { background-color: rgba(202,169,228,1); }
.color108 { background-color: rgba(199,239,173,1); }
.color109 { background-color: rgba(197,130,247,1); }
.color110 { background-color: rgba(206,130,136,1); }
.color111 { background-color: rgba(184,193,187,1); }
.color112 { background-color: rgba(208,192,225,1); }
.color113 { background-color: rgba(209,217,127,1); }
.color114 { background-color: rgba(182,141,214,1); }
.lm_root{position:relative}.lm_row>.lm_item{float:left}.lm_content{overflow:hidden;position:relative}.lm_dragging,.lm_dragging *{cursor:move !important;user-select:none}.lm_maximised{position:absolute;top:0;left:0;z-index:40}.lm_maximise_placeholder{display:none}.lm_splitter{position:relative;z-index:20}.lm_splitter:hover,.lm_splitter.lm_dragging{background:orange}.lm_splitter.lm_vertical .lm_drag_handle{width:100%;height:15px;position:absolute;top:-5px;cursor:ns-resize}.lm_splitter.lm_horizontal{float:left;height:100%}.lm_splitter.lm_horizontal .lm_drag_handle{width:15px;height:100%;position:absolute;left:-5px;cursor:ew-resize}.lm_header{overflow:visible;position:relative;z-index:1}.lm_header [class^=lm_]{box-sizing:content-box !important}.lm_header .lm_controls{position:absolute;right:3px}.lm_header .lm_controls>li{cursor:pointer;float:left;width:18px;height:18px;text-align:center}.lm_header ul{margin:0;padding:0;list-style-type:none}.lm_header .lm_tabs{position:absolute}.lm_header .lm_tab{cursor:pointer;float:left;height:14px;margin-top:1px;padding:0 10px 5px;padding-right:25px;position:relative}.lm_header .lm_tab i{width:2px;height:19px;position:absolute}.lm_header .lm_tab i.lm_left{top:0;left:-2px}.lm_header .lm_tab i.lm_right{top:0;right:-2px}.lm_header .lm_tab .lm_title{display:inline-block;overflow:hidden;text-overflow:ellipsis}.lm_header .lm_tab .lm_close_tab{width:14px;height:14px;position:absolute;top:0;right:0;text-align:center}.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{height:100%}.lm_dragProxy.lm_left .lm_header,.lm_dragProxy.lm_right .lm_header,.lm_stack.lm_left .lm_header,.lm_stack.lm_right .lm_header{width:20px;float:left;vertical-align:top}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform-origin:left top;top:0;width:1000px}.lm_dragProxy.lm_left .lm_header .lm_controls,.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_left .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{bottom:0}.lm_dragProxy.lm_left .lm_items,.lm_dragProxy.lm_right .lm_items,.lm_stack.lm_left .lm_items,.lm_stack.lm_right .lm_items{float:left}.lm_dragProxy.lm_left .lm_header .lm_tabs,.lm_stack.lm_left .lm_header .lm_tabs{transform:rotate(-90deg) scaleX(-1);left:0}.lm_dragProxy.lm_left .lm_header .lm_tabs .lm_tab,.lm_stack.lm_left .lm_header .lm_tabs .lm_tab{transform:scaleX(-1);margin-top:1px}.lm_dragProxy.lm_left .lm_header .lm_tabdropdown_list,.lm_stack.lm_left .lm_header .lm_tabdropdown_list{top:initial;right:initial;left:20px}.lm_dragProxy.lm_right .lm_content{float:left}.lm_dragProxy.lm_right .lm_header .lm_tabs,.lm_stack.lm_right .lm_header .lm_tabs{transform:rotate(90deg) scaleX(1);left:100%;margin-left:0}.lm_dragProxy.lm_right .lm_header .lm_controls,.lm_stack.lm_right .lm_header .lm_controls{left:3px}.lm_dragProxy.lm_right .lm_header .lm_tabdropdown_list,.lm_stack.lm_right .lm_header .lm_tabdropdown_list{top:initial;right:20px}.lm_dragProxy.lm_bottom .lm_header .lm_tab,.lm_stack.lm_bottom .lm_header .lm_tab{margin-top:0;border-top:none}.lm_dragProxy.lm_bottom .lm_header .lm_controls,.lm_stack.lm_bottom .lm_header .lm_controls{top:3px}.lm_dragProxy.lm_bottom .lm_header .lm_tabdropdown_list,.lm_stack.lm_bottom .lm_header .lm_tabdropdown_list{top:initial;bottom:20px}.lm_drop_tab_placeholder{float:left;width:100px;height:10px;visibility:hidden}.lm_header .lm_controls .lm_tabdropdown:before{content:'';width:0;height:0;vertical-align:middle;display:inline-block;border-top:5px dashed;border-right:5px solid transparent;border-left:5px solid transparent;color:white}.lm_header .lm_tabdropdown_list{position:absolute;top:20px;right:0;z-index:5;overflow:hidden}.lm_header .lm_tabdropdown_list .lm_tab{clear:both;padding-right:10px;margin:0}.lm_header .lm_tabdropdown_list .lm_tab .lm_title{width:100px}.lm_header .lm_tabdropdown_list .lm_close_tab{display:none !important}.lm_dragProxy{position:absolute;top:0;left:0;z-index:30}.lm_dragProxy .lm_header{background:transparent}.lm_dragProxy .lm_content{border-top:none;overflow:hidden}.lm_dropTargetIndicator{display:none;position:absolute;z-index:20}.lm_dropTargetIndicator .lm_inner{width:100%;height:100%;position:relative;top:0;left:0}.lm_transition_indicator{display:none;width:20px;height:20px;position:absolute;top:0;left:0;z-index:20}.lm_popin{width:20px;height:20px;position:absolute;bottom:0;right:0;z-index:9999}.lm_popin>*{width:100%;height:100%;position:absolute;top:0;left:0}.lm_popin>.lm_bg{z-index:10}.lm_popin>.lm_icon{z-index:20}.lm_goldenlayout{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAMAAAAp4XiDAAAAGFBMVEX29vb19fXw8PDy8vL09PTz8/Pv7+/x8fGKuegbAAAAyUlEQVR42pXRQQ7CMBRDwST9pfe/MahEmgURbt7WmpVb6+vG0dd9REnn66xRy/qXiCgmEIIJhGACIZhACCYQgvlDCDFIEAwSBIMEwSBBMEgQDBIEgwTBIEEwCJEMQiSDENFMQmQzCZEbNyGemd6KeGZ6u4hnXe2qbdLHFjhf1XqNLXHev4wdMd9nspiEiWISJgqECQJhgkCYIBAmCIQJAmGCQJggECYJhAkCEUMEwhCBMEQgDJEIQ2RSg0iEIRJhiB/S+rrjqvXQ3paIJUgPBXxiAAAAAElFTkSuQmCC)}.lm_content{background:#e1e1e1;border:1px solid #cccccc}.lm_dragProxy .lm_content{box-shadow:2px 2px 4px rgba(0,0,0,0.2);box-sizing:border-box}.lm_dropTargetIndicator{box-shadow:inset 0 0 30px rgba(0,0,0,0.4);outline:1px dashed #cccccc;margin:1px;transition:all 200ms ease}.lm_dropTargetIndicator .lm_inner{background:#000000;opacity:.1}.lm_splitter{background:#999999;opacity:.001;transition:opacity 200ms ease}.lm_splitter:hover,.lm_splitter.lm_dragging{background:#bbbbbb;opacity:1}.lm_header{height:20px}.lm_header.lm_selectable{cursor:pointer}.lm_header .lm_tab{font-family:Arial,sans-serif;font-size:12px;color:#888888;background:#fafafa;margin-right:2px;padding-bottom:4px;border:1px solid #cccccc;border-bottom:none}.lm_header .lm_tab .lm_title{padding-top:1px}.lm_header .lm_tab .lm_close_tab{width:11px;height:11px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAIklEQVR4nGNgYGD4z4Ad/Mdg4ODDBXCZRFgCp5EEHQMXBwAQAgz0SVCcggAAAABJRU5ErkJggg==);background-position:center center;background-repeat:no-repeat;right:6px;top:4px;opacity:.4}.lm_header .lm_tab .lm_close_tab:hover{opacity:1}.lm_header .lm_tab.lm_active{border-bottom:none;box-shadow:2px -2px 2px -2px rgba(0,0,0,0.2);padding-bottom:5px}.lm_header .lm_tab.lm_active .lm_close_tab{opacity:1}.lm_dragProxy.lm_bottom .lm_header .lm_tab.lm_active,.lm_stack.lm_bottom .lm_header .lm_tab.lm_active{box-shadow:2px 2px 2px -2px rgba(0,0,0,0.2)}.lm_selected .lm_header{background-color:#452500}.lm_tab:hover,.lm_tab.lm_active{background:#e1e1e1;color:#777777}.lm_header .lm_controls .lm_tabdropdown:before{color:#000000}.lm_controls>li{position:relative;background-position:center center;background-repeat:no-repeat;opacity:.4;transition:opacity 300ms ease}.lm_controls>li:hover{opacity:1}.lm_controls .lm_popout{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAANUlEQVR4nI2QMQoAMAwCz5L/f9mOzZIaN0E9UDyZhaaQz6atgBHgambEJ5wBKoS0WaIvfT+6K2MIECN19MAAAAAASUVORK5CYII=)}.lm_controls .lm_maximise{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAIklEQVR4nGNkYGD4z0AAMBFSAAOETPpPlEmDUREjAxHhBABPvAQLFv3qngAAAABJRU5ErkJggg==)}.lm_controls .lm_close{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAKUlEQVR4nGNgYGD4z4Af/Mdg4FKASwCnDf8JKSBoAtEmEXQTQd8RDCcA6+4Q8OvIgasAAAAASUVORK5CYII=)}.lm_maximised .lm_header{background-color:#ffffff}.lm_maximised .lm_controls .lm_maximise{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAJklEQVR4nGP8//8/AyHARFDFUFbEwsDAwMDIyIgzHP7//89IlEkApSkHEScJTKoAAAAASUVORK5CYII=)}.lm_transition_indicator{background-color:#000000;border:1px dashed #555555}.lm_popin{cursor:pointer}.lm_popin .lm_bg{background:#000000;opacity:.7}.lm_popin .lm_icon{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA0AAAAJCAYAAADpeqZqAAAAWklEQVR4nJWOyw3AIAxDHcQC7L8jbwT3AlJBfNp3SiI7dtRaLSlKKeoA1oEsKSQZCEluexw8Tm3ohk+E7bnOUHUGcNh+HwbBygw4AZ7FN/Lt84p0l+yTflV8AKQyLdcCRJi/AAAAAElFTkSuQmCC);background-position:center center;background-repeat:no-repeat;opacity:.7}.lm_popin:hover .lm_icon{opacity:1}/* BASICS */

.CodeMirror {
  /* Set height, width, borders, and global font properties here */
  font-family: monospace;
  height: 300px;
  color: black;
}

/* PADDING */

.CodeMirror-lines {
  padding: 4px 0; /* Vertical padding around content */
}
.CodeMirror pre {
  padding: 0 4px; /* Horizontal padding of content */
}

.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
  background-color: white; /* The little square between H and V scrollbars */
}

/* GUTTER */

.CodeMirror-gutters {
  border-right: 1px solid #ddd;
  background-color: #f7f7f7;
  white-space: nowrap;
}
.CodeMirror-linenumbers {}
.CodeMirror-linenumber {
  padding: 0 3px 0 5px;
  min-width: 20px;
  text-align: right;
  color: #999;
  white-space: nowrap;
}

.CodeMirror-guttermarker { color: black; }
.CodeMirror-guttermarker-subtle { color: #999; }

/* CURSOR */

.CodeMirror-cursor {
  border-left: 1px solid black;
  border-right: none;
  width: 0;
}
/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
  border-left: 1px solid silver;
}
.cm-fat-cursor .CodeMirror-cursor {
  width: auto;
  border: 0 !important;
  background: #7e7;
}
.cm-fat-cursor div.CodeMirror-cursors {
  z-index: 1;
}

.cm-animate-fat-cursor {
  width: auto;
  border: 0;
  -webkit-animation: blink 1.06s steps(1) infinite;
  -moz-animation: blink 1.06s steps(1) infinite;
  animation: blink 1.06s steps(1) infinite;
  background-color: #7e7;
}
@-moz-keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}
@-webkit-keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}
@keyframes blink {
  0% {}
  50% { background-color: transparent; }
  100% {}
}

/* Can style cursor different in overwrite (non-insert) mode */
.CodeMirror-overwrite .CodeMirror-cursor {}

.cm-tab { display: inline-block; text-decoration: inherit; }

.CodeMirror-rulers {
  position: absolute;
  left: 0; right: 0; top: -50px; bottom: -20px;
  overflow: hidden;
}
.CodeMirror-ruler {
  border-left: 1px solid #ccc;
  top: 0; bottom: 0;
  position: absolute;
}

/* DEFAULT THEME */

.cm-s-default .cm-header {color: blue;}
.cm-s-default .cm-quote {color: #090;}
.cm-negative {color: #d44;}
.cm-positive {color: #292;}
.cm-header, .cm-strong {font-weight: bold;}
.cm-em {font-style: italic;}
.cm-link {text-decoration: underline;}
.cm-strikethrough {text-decoration: line-through;}

.cm-s-default .cm-keyword {color: #708;}
.cm-s-default .cm-atom {color: #219;}
.cm-s-default .cm-number {color: #164;}
.cm-s-default .cm-def {color: #00f;}
.cm-s-default .cm-variable,
.cm-s-default .cm-punctuation,
.cm-s-default .cm-property,
.cm-s-default .cm-operator {}
.cm-s-default .cm-variable-2 {color: #05a;}
.cm-s-default .cm-variable-3 {color: #085;}
.cm-s-default .cm-comment {color: #a50;}
.cm-s-default .cm-string {color: #a11;}
.cm-s-default .cm-string-2 {color: #f50;}
.cm-s-default .cm-meta {color: #555;}
.cm-s-default .cm-qualifier {color: #555;}
.cm-s-default .cm-builtin {color: #30a;}
.cm-s-default .cm-bracket {color: #997;}
.cm-s-default .cm-tag {color: #170;}
.cm-s-default .cm-attribute {color: #00c;}
.cm-s-default .cm-hr {color: #999;}
.cm-s-default .cm-link {color: #00c;}

.cm-s-default .cm-error {color: #f00;}
.cm-invalidchar {color: #f00;}

.CodeMirror-composing { border-bottom: 2px solid; }

/* Default styles for common addons */

div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
.CodeMirror-activeline-background {background: #e8f2ff;}

/* STOP */

/* The rest of this file contains styles related to the mechanics of
   the editor. You probably shouldn't touch them. */

.CodeMirror {
  position: relative;
  overflow: hidden;
  background: white;
}

.CodeMirror-scroll {
  overflow: scroll !important; /* Things will break if this is overridden */
  /* 30px is the magic margin used to hide the element's real scrollbars */
  /* See overflow: hidden in .CodeMirror */
  margin-bottom: -30px; margin-right: -30px;
  padding-bottom: 30px;
  height: 100%;
  outline: none; /* Prevent dragging from highlighting the element */
  position: relative;
}
.CodeMirror-sizer {
  position: relative;
  border-right: 30px solid transparent;
}

/* The fake, visible scrollbars. Used to force redraw during scrolling
   before actual scrolling happens, thus preventing shaking and
   flickering artifacts. */
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
  position: absolute;
  z-index: 6;
  display: none;
}
.CodeMirror-vscrollbar {
  right: 0; top: 0;
  overflow-x: hidden;
  overflow-y: scroll;
}
.CodeMirror-hscrollbar {
  bottom: 0; left: 0;
  overflow-y: hidden;
  overflow-x: scroll;
}
.CodeMirror-scrollbar-filler {
  right: 0; bottom: 0;
}
.CodeMirror-gutter-filler {
  left: 0; bottom: 0;
}

.CodeMirror-gutters {
  position: absolute; left: 0; top: 0;
  min-height: 100%;
  z-index: 3;
}
.CodeMirror-gutter {
  white-space: normal;
  height: 100%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: -30px;
}
.CodeMirror-gutter-wrapper {
  position: absolute;
  z-index: 4;
  background: none !important;
  border: none !important;
}
.CodeMirror-gutter-background {
  position: absolute;
  top: 0; bottom: 0;
  z-index: 4;
}
.CodeMirror-gutter-elt {
  position: absolute;
  cursor: default;
  z-index: 4;
}
.CodeMirror-gutter-wrapper ::selection { background-color: transparent }
.CodeMirror-gutter-wrapper ::-moz-selection { background-color: transparent }

.CodeMirror-lines {
  cursor: text;
  min-height: 1px; /* prevents collapsing before first draw */
}
.CodeMirror pre {
  /* Reset some styles that the rest of the page might have set */
  -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
  border-width: 0;
  background: transparent;
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  white-space: pre;
  word-wrap: normal;
  line-height: inherit;
  color: inherit;
  z-index: 2;
  position: relative;
  overflow: visible;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-variant-ligatures: contextual;
  font-variant-ligatures: contextual;
}
.CodeMirror-wrap pre {
  word-wrap: break-word;
  white-space: pre-wrap;
  word-break: normal;
}

.CodeMirror-linebackground {
  position: absolute;
  left: 0; right: 0; top: 0; bottom: 0;
  z-index: 0;
}

.CodeMirror-linewidget {
  position: relative;
  z-index: 2;
  overflow: auto;
}

.CodeMirror-widget {}

.CodeMirror-rtl pre { direction: rtl; }

.CodeMirror-code {
  outline: none;
}

/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.CodeMirror-measure {
  position: absolute;
  width: 100%;
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.CodeMirror-cursor {
  position: absolute;
  pointer-events: none;
}
.CodeMirror-measure pre { position: static; }

div.CodeMirror-cursors {
  visibility: hidden;
  position: relative;
  z-index: 3;
}
div.CodeMirror-dragcursors {
  visibility: visible;
}

.CodeMirror-focused div.CodeMirror-cursors {
  visibility: visible;
}

.CodeMirror-selected { background: #d9d9d9; }
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
.CodeMirror-crosshair { cursor: crosshair; }
.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }
.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }

.cm-searching {
  background: #ffa;
  background: rgba(255, 255, 0, .4);
}

/* Used to force a border model for a node */
.cm-force-border { padding-right: .1px; }

@media print {
  /* Hide the cursor when printing */
  .CodeMirror div.CodeMirror-cursors {
    visibility: hidden;
  }
}

/* See issue #2901 */
.cm-tab-wrap-hack:after { content: ''; }

/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext { background: none; }
html, body {
  margin: 0;
  padding: 0;
  font-family: 'DejaVu Sans',Arial,Helvetica,sans-serif;
  font-size: 0;
  height: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  background-color: #FFFFFF;
  height: 100%;
  overflow: hidden;
}

input[type="radio"] {
  vertical-align: top;
  margin: 0;
  margin-right: 5px;
}

/*
input[type="checkbox"] {
  vertical-align: top;
  margin: 0;
  margin-right: 7px;
}
*/

.wait, .wait * { cursor: wait !important; }

#views {
  /* golden layout does not work with flex */
  top: 24px; /* header size */
  position: absolute;
  width: 100%;
  height: calc(100% - 24px); /* minus page header height */
}

/* Scrollable overlay panel */
.x-scrollable {
  height: 100%;
  width: 100%;
  max-width: 100%;
  white-space: nowrap;
  overflow-x: auto;
  overflow-y: visible;
  -ms-overflow-style: none;
  -webkit-overflow-scrolling: touch;
  position: absolute;
}

.x-scrollable::-webkit-scrollbar {
  display: none;
}

.x-fill {
  width: 100%;
}

#header {
  height: 24px;
  width: 100%;
  background-color: #5f5f5f;
}

.menu {
  color: white;/* #f1f1f1;*/
  background-color: #5f5f5f;
  list-style-type: none;
  margin: 0;
  padding: 0;
  font-size: 0; /* this ensures that space between items is zero */
  /*width: min-content;*/
  float: left;
  transition: transform .2s ease-in-out;
}

.menu-no-transition {
  transition: none;
}

.menu input[type=checkbox]:focus {
  outline: none;
}

.menu input[type=radio]:focus {
  outline: none;
}

.menu input[type=checkbox] {
  -ms-appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  pointer-events: none;
  width: 1em;
  height: 1em;
  vertical-align: top;
  margin: 0;
  margin-right: 7px;
}

.menu input[type=checkbox]:not(:checked) {
  border: 1px solid #afafaf;
}

.menu input[type=checkbox]:checked::after {
  content: '\2714';
  font-weight: bold;
  color: white;
  font-family: Arial,Helvetica,sans-serif;
  font-size: 12px;
}

.menu input[type=radio] {
  -ms-appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  pointer-events: none;
  width: 1em;
  height: 1em;
  vertical-align: top;
  margin: 0;
  margin-right: 7px;
}

.menu input[type=radio]:not(:checked) {
  border-radius: 10px;
  border: 1px solid #afafaf;
}

.menu input[type=radio]:checked::after {
  content: '\2714';
  font-weight: bold;
  color: white;
  font-family: Arial,Helvetica,sans-serif;
  font-size: 12px;
}

.menu-item.disabled input:checked::after {
  color: #afafaf;
}

.menu > li {
  display: inline-block;
  font-size: 12px;
}

.menu-icon {
  vertical-align: middle;
  padding: 4px;
  padding-top: 3px;
}

.menu-item {
  background-color: #5f5f5f;
  color: white;/* #f1f1f1;*/
  padding: 5px 10px;
  text-decoration: none;
  font-size: 12px;
}

.menu-scroll {
  background: transparent;
  padding: 0;
  border: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  cursor: pointer;
  opacity: 0;
}

#menu-scroll-left {
  left: 0;
}

#menu-scroll-right {
  right: 0;
}

[data-overflowing="both"] ~ .menu-scroll {
  opacity: 1;
}

[data-overflowing="left"] ~ #menu-scroll-left {
  opacity: 1;
}

[data-overflowing="right"] ~ #menu-scroll-right {
  opacity: 1;
}

.menu-scroll-icon {
  width: 20px;
  height: 24px;
  fill: white;
  transform: scale(0.9);
}

.btn {
  text-decoration: none;
  cursor: pointer;
  /* text selection */
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */ 
}

.btn.clicked {
  box-shadow: inset 2px 10px 5px rgba(0,0,0,.3);
  color: #d1d1d1;
  border-radius: 5px;
}

.dropdown > .btn:active {
  transform: scale(0.95);
}

.dropdown > .btn.disabled:active {
  transform: unset;
}

.active:active {
  transform: scale(0.95);
}

.active.disabled:active {
  transform: unset;
}

.btn.disabled {
  color: #aaaaaa !important;
  cursor: auto;
}

.btn:hover {
  background-color: #7f7f7f;
}

.btn.disabled:hover {
  background-color: #5f5f5f;
}

.btn:focus {
  outline: none;
}

.border-right {
  border-right: 1px solid #f1f1f1;
}

.menu-section {
  cursor: auto;
  margin: 5px;
  color: #cfcfcf;
  font-weight: bold;
  border-bottom: 1px solid #7f7f7f;
  padding-bottom: 5px;
}

.border-top {
  padding-top: 4px;
  border-top: 1px solid #7f7f7f;
}

.right {
  float: right;
}

.contain-subitems {
  position: relative; /* move subitems in x-axis */
}

/* make content arrow */
.contain-subitems::after {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;
}

.contain-subitems:empty::after {
  margin-left: 0;
}

.contain-subitems:hover > .dropdown {
  display: inline-block;
}

.contain-subitems-no-arrow:hover {
  position: relative;
}

.contain-subitems-no-arrow:hover > .dropdown {
  display: inline-block;
}

.dropdown {
  background-color: #5f5f5f;
  display: none;
  position: absolute;
  z-index: 50; /* Codemirror goes until 10, GoldenLayout until 40 */
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.5);
  max-height: calc(100vh - 100px); /* guarantees that it does not overflow */
  overflow-x: hidden;
  overflow-y: auto;
  top: 24px;
  margin: 0;
}

.dropdown > hr {
  display: block;
  border: 0;
  height: 1px;
  margin: 0;
  color: #fff;
  background-color: #fff;
}

.dropdown-left {
  left: 0;
}

.dropdown-right {
  right: 0;
}

#share input {
  border: 0;
  padding: 0;
  margin: 2px;
  margin-right: 8px;
}

#sharebtn:after {
  position: relative;
  top: 2px;
  left: -3px;
  content:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAdtJREFUOBGdlE0oBGEYx2fW5uKjkBQXByUROSguxGGjKEeKyxYlNye5SPnK1dIWtz0o4iDKTT4vVilJkaR2D1siB98f4/esMWZnZ6Zd//r1vu/zPO9/nnnfZhRN0zJhEiJg1TuBJchSUpSXulEYhhW4BrM8LPKgFVbNCae5ytOjJPdUVe2yFpFrIOaHUkvug/U6BNmnmXPSYTFYO1Mwk6424B5uwCyVxSxUUzeI6ZeRJCCaMgL6hNghnILt+RFfA1EIMn73yxk5qZzEPk9/dCiI6fEeRsPUzVCemnA+FuO/11SUbnJBOlXlDP+rBTZKQ0IB+CH8b0OO4gSDAYiL7s6YtLm9sl6aPLC5CXZgGaQ70Sd40zbEoJCN/TAGERgCQ2kZYlbHzhkIwzbIV3QLhlI2xMzHLvk8DyAfAlAC82BILkXe3dUYs0Zq5FanoUwnl7GTy3llNCRGcjs+NuUY0eSJfEm9EII7kNdtx+yJMUFiOAJVEMX0Sqc5oUpR5KvogCBkYzQHb5aa+NJDYpNZPSzCsc4Do/ko+lg/wxFMgJ2kOfkL2YtOd+Ec5KxcRU0lvMC4/IZsRbKFxBZIZ5e2RT9BudgKkLOtcTSUWkxrGfxQJGsHyQ/kAgIcX+wbhtLg1dVYfqAAAAAASUVORK5CYII=");
}

#sharebtn:active {
  transform: scale(0.90);
}

/**** Tab content ****/


.tab-content {
  font-size: 12px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.tab-compiler a {
  display: block;
  text-decoration: none;
  padding: 2px 9px;
  color: white;/* #f1f1f1;*/
  background-color: #5f5f5f;
}

.tab-compiler a:hover {
  background-color: #7f7f7f;
}
/*********** Panes ************/

.view {
  height: 100%;
}

.editor {
  font-size: 13px !important;
}

.CodeMirror {
  height: 100%;
  border: 1px solid #eee;
}

.tab-compiler {
  height: 100%;
}

.pane .tab-compiler .CodeMirror {
  height: 100%;
}

.CodeMirror-placeholder {
  color: #888;
}

.cm-std {
  cursor: pointer;
  color: #555;
}

.grabbing {
  cursor: crosshair;
}

code {
    font-family: monospace;
}

/*
.tooltip {
  transform: none;
  margin: 0px;
}

.tooltip-text {
  display: block;
  position: relative;
  z-index: 10;
  overflow: visible;
  padding: 5px 8px;
  margin-top: 10px;
  line-height: 11px;
  font-size: 11px;
  border-radius: 4px;
  text-align: left;
  color: #fff;
  background-color: #5f5f5f;
  pointer-events: none;
  -o-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}
.tooltip-text h3 {
  margin: 6px;
}

.tooltip-text ul {
  margin: 0;
}
*/

.tooltip {
  border: 1px solid silver;
  border-radius: 3px;
  color: #444;
  padding: 2px 5px;
  font-size: 12px;
  font-family: monospace;
  background-color: white;
  white-space: pre-wrap;

  overflow: scroll;

  max-width: 40em;
  max-height: 60em;
  position: absolute;
  z-index: 50;
  -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
  -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
  box-shadow: 2px 3px 5px rgba(0,0,0,.2);

  transition: opacity 1s;
  -moz-transition: opacity 1s;
  -webkit-transition: opacity 1s;
  -o-transition: opacity 1s;
  -ms-transition: opacity 1s;
}

.std {
  margin: auto;
  width: 90%;
}

.std hr {
  margin-top:10px;
}

.page {
  background-color:white;
  height: 100%;
  overflow: auto;
  flex: 1 0 0;
  padding: 15px;
}

.page #TOC {
  border: 1px solid darkgray;
  background: whitesmoke;
  float: right;
  font-size: 0.9em;
  margin-bottom: 1em;
}

.page h2 {
  margin-bottom: 0;
}

.page input {
  margin-right: 1em;
}

.page p {
  margin: 8px 0 8px 0;
}

.page table {
  border-collapse: collapse;
  width: 100%;
}

.page th, .page td {
  padding: 3px;
  text-align: left;
}

.padding {
  background-color: #f2f2f2;
}

.page th {
  border-bottom: 1px solid #ddd;
}

.page tr:not(:last-child) {
  border-bottom: 1px solid #ddd;
}

.page tr:hover {background-color:#f5f5f5;}

/*********** Graphs ************/

.toolbar {
  background-color: #5f5f5f;
  height: 27px;
  display: inline-block;
  width: 100%;
  overflow: visible;
  white-space: nowrap;
}

.adjust-height {
  height: 26px;
}

.graph {
  height: calc(100% - 28px);
  width: 100%;
  margin: 0px auto;
}

.graph a {
  cursor: pointer;
}

.flex {
  display: flex;
  overflow: visible;
}

.grow {
  flex-grow: 1;
}

.inline {
  display: inline-block;
}

.range {
  border: 0;
  padding: 0;
  vertical-align: middle;
  width: calc(100% - 5px);
}

/* ast-dump style */

.cm-declarator {
  font-weight: bold;
  color: #00802b;
}

.cm-definition {
  color: #3366ff;
}

.cm-line {
  color: #999900;
}

.cm-type {
  color: #00802b;
}

.cm-ast-constructor {
  font-weight: bold;
  color: #708;
}

.title {
  padding: 5px 10px;
  color: white;
}

.syntax-error {
  color: red;
  padding-left: 0.3em;
}

.invisible {
  display: none !important;
}

.widget {
  font-size: 12px;

  left: 40px;
  top: 40px;

  height: 80%;

  border: 1px solid silver;
  border-radius: 3px;
  color: #444;
  /* padding: 2px 5px; */
  background-color: white;

  overflow: hidden;

  max-width: 40em;
  max-height: 60em;

  position: absolute;
  z-index: 100;
  -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
  -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
  box-shadow: 2px 3px 5px rgba(0,0,0,.2);

  transition: opacity 1s;
  -moz-transition: opacity 1s;
  -webkit-transition: opacity 1s;
  -o-transition: opacity 1s;
  -ms-transition: opacity 1s;
}

.widget div {
  min-width: 85%;
}

.widget_body {
  height: calc(100% - 32px);
  overflow: scroll;
  padding: 0 12px;
}

.widget .questions {
  line-height: 1.3;
}

.widget a {color:#0000FF;}
.widget a:visited {color:#0000FF;}
.widget a:hover {color:#0000FF;}
.widget a:active {color:#0000FF;} 

.widget .tests {
  padding-left: 20px;
  font-family: monospace;
}