.CodeMirror,
.CodeMirror textarea,
.CodeMirror pre {
	font-family: Menlo, Consolas, "Vera Mono", monospace;
	font-size: 12px;
}

.CodeMirror {
	overflow: auto;
	height: 100%;
}

.CodeMirror-gutter {
	position: absolute;
	left: 0;
	top: 0;
	min-width: 30px;
	height: 100%;
	background-color: #f4f4f4;
	border-right: 1px solid #999;
}

.CodeMirror-gutter-text {
	color: #aaa;
	text-align: right;
	padding: 2px 8px 2px 8px; /* 2px required for CodeMirror-selected */
}

.CodeMirror-gutter-text pre {
	font-size: 10px;
}

.CodeMirror-lines {
	background: #ffffff;
	padding: 2px 0 2px 8px; /* 2px required for CodeMirror-selected */
}

.CodeMirror-lines pre.highlight {
	background-color: #edf5fc;
}

/*
.CodeMirror-lines pre:hover {
	background-color: #edf5fc;
}

.CodeMirror-lines pre.highlight:hover {
	background-color: #ffffff;
}
*/

.CodeMirror pre {
	line-height: 16px;
	margin: 0;
	padding: 0;
	background: transparent;
	font-family: inherit;
}

.CodeMirror-cursor {
	z-index: 10;
	position: absolute;
	visibility: hidden;
	border-left: 1px solid #7c7c7c !important;
	height: 16px;
}

.CodeMirror-focused .CodeMirror-cursor {
	visibility: visible;
}

span.CodeMirror-selected {
	background: #ccc !important;
	color: HighlightText !important;
	padding: 2px 0 2px 0;
}

.CodeMirror-focused span.CodeMirror-selected {
	background: Highlight !important;
}

.CodeMirror-matchingbracket {
	background: #e3fc8d !important;
}

.CodeMirror-nonmatchingbracket {
	color: #d62a28 !important;
}

/* JavaScript */

span.cm-keyword {
	color: #ff7800;
}
span.cm-number,
span.cm-atom {
	color: #3b5bb5;
}
span.cm-string {
	color: #409b1c;
}
span.cm-comment {
	color: #8c868f;
}
span.cm-property {
	color: #000;
}
span.cm-variable {
	color: #000;
}
span.cm-def,
span.cm-variable-2,
span.cm-variable-3 {
	color: #3a4a64;
}
