p,div,h1,h2,body,a,label,textarea,input,img,span,table,td,th,select {
	margin: 0;
	padding: 0;
}

body,p,h1,h2,h3,h4,h5,h6,a,td,th,table,ul,li,input {
	font-family: verdana;
	font-size: 11px;
	color: black;
}

body {
	margin: 0;
	padding: 0;
	background: white;

	-webkit-user-select: none;  
	-moz-user-select: none;    
	-ms-user-select: none;      
	user-select: none;

	overflow: hidden;
}

a {
	color: #3495b9;
	text-decoration: none;
	cursor: hand;
}

p {
	padding-bottom: 8px;
}

th {
	background: #ccc;
}

th, td {
	padding: 3px 0;
}

label {
	display: block;
	padding: 10px 0 3px 0;
}

label.inline {
	display: inline;
	padding: 0;
	margin: 0;
}

textarea {
	font: 13px Consolas, monospace;
	border: 1px solid rgba(255,255,255,0.2);
	padding: 3px;
}

input, textarea, select {
	border: 1px solid #999;
	border-radius: 4px;
	margin: 2px;
}

input, select {
	height: 23px;
	color: black;
}


input {
	padding: 3px;
}

input[type="button"], input[type="submit"] {
	padding: 3px 6px;
	background-image: -webkit-gradient(
		linear,
		left bottom,
		left top,
		color-stop(0, #bbb),
		color-stop(1, #f5f5f5)
	);
	background-image: -moz-linear-gradient(
		center bottom,
		#ccc 0%,
		#f5f5f5 100%
	);
}

input[type="button"]:active, input[type="submit"]:active {
	padding: 3px 6px;
	background-image: -webkit-gradient(
		linear,
		left bottom,
		left top,
		color-stop(0, #f5f5f5),
		color-stop(1, #ccc)
	);
	background-image: -moz-linear-gradient(
		center bottom,
		#f5f5f5 0%,
		#ccc 100%,
	);
}

input[type="checkbox"] {
	padding: 0;
	text-align: top;
	height: auto;
}

input[type="file"] {
	border: none;
}

table ul {
	padding-left: 20px;
}

/* ------------- GAME ------------- */

.game {
	overflow: auto;
}

#canvas {
}

.gameOverlay {
	position: absolute;
	z-index: 2;
	visibility: hidden;
	top: 0;
	left: 0;
}


/* ------------- WINDOW ------------- */

.window {
	max-width: 500px;
	min-width: 100px;

	position: absolute;
	z-index: 2;
	top: 10px;

	visibility: hidden;

	background: #eee;

	border: 1px solid #ccc;
	border-radius: 5px;

	-moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
	-webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
	box-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

.window > span {
	cursor: move;
	display: block;
	padding: 5px;

	font-weight: bold;
	text-shadow: 0 -1px 0 #fff;
}

.window > span a {
	float: right;
}

.window > div {
	margin: 2px;
	padding: 3px;
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 3px;
}

.btnRow {
	padding-top: 10px;
	text-align: right;
}

.errorMsg {
	color: white;
	background: red;
	line-height: 23px;
	text-align: center;
	border-radius: 3px;
	margin-bottom: 5px;
}

.sideBySide {
	overflow: auto;
}

.sideBySide > div {
	float: left;
	margin-left: 5px;
}

.longText {
	max-height: 250px;
	overflow: auto;
}

.tabs > ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: block;
	overflow: auto;
}

.tabs > ul li {
	float: left;
	display: inline-block;
	border: 1px solid #ddd;
	border-bottom: none;
	padding: 3px 6px;
	padding-top: 0px;
	margin-left: 3px;
	margin-top: 3px;
	cursor: hand;
}

.tabs > ul li:hover {
	border: 1px solid #aaa;
	border-bottom: none;
	background: #f9f9f9;
}

.tabs > ul .selected {
	padding: 3px 6px;
	margin-top: 0;
	border: 1px solid #aaa;
	border-bottom: none;
	background: #eee;
}

.tabs > div {
	border: 1px solid #aaa;
	padding: 5px;
	display: none;
}

/* ------------- LOAD / GRID PROPERTIES ------------- */
#load_local_grids span, #grid_properties_dependencies span {
	padding: 0 5px;
}

#load_local_grids a, #load_example_grids a, #grid_properties_dependencies a {
	cursor: pointer;
}

/* ------------- PROPERTIES ------------- */
#gate_properties_window table {
	background: #ccc;
}

#gate_properties_window td {
	background: white;
	padding: 0 3px;
}

#gate_properties_window td input {
	border: 0;
	padding: 0 3px;
	margin: 0;
}

/* ------------- FLEX ------------- */
.uppercase, .uppercase span, .uppercase p {
	text-transform: uppercase;
	font: 13px Consolas, monospace;
}

.uppercase span {
	width: 30px;
	display: inline-block;
}

#flex_memory_ir {
	width: 200px;
}

#flex_memory_table {
	padding-bottom: 8px;
}

#flex_memory_table tr {
}

#flex_memory_table th {
	font-weight: normal;
	background: transparent;
	font: 13px Consolas, monospace;
	text-transform: uppercase;
}

#flex_memory_table td {
	height: 16px;
	width: 16px;
	font: 13px Consolas, monospace;
	line-height: 10px;
	text-transform: uppercase;
}

#flex_memory_window .instructionRegister {
	color: brown;
}

#flex_memory_window .programCounter {
	color: red;
}

#flex_memory_window .stackPointer {
	color: green;
}

#flex_memory_window .indexPointer {
	color: blue;
}

#flex_program_window {
	resize: both;
	max-width: none;
}

/* ----------- CODE MIRROR ------------ */
.CodeMirror {
	overflow: auto;
	height: 300px;
	line-height: 1em;
	font-family: monospace;
	_position: relative; /* IE6 hack */

	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	font: 13px Consolas, monospace;

	width: 450px;
}

.CodeMirror-gutter {
	position: absolute; left: 0; top: 0;
	background-color: #f7f7f7;
	border-right: 1px solid #eee;
	min-width: 2em;
	height: 100%;
}

.CodeMirror-gutter-text {
	color: #aaa;
	text-align: right;
	padding: .4em .2em .4em .4em;
}

.CodeMirror-lines {
	padding: .4em;
}

.CodeMirror pre {
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
	border-width: 0; margin: 0; padding: 0; background: transparent;
	font-family: inherit;
}

.CodeMirror-cursor {
	z-index: 10;
	position: absolute;
	visibility: hidden;
	border-left: 1px solid black !important;
}

.CodeMirror-focused .CodeMirror-cursor {
	visibility: visible;
}

span.CodeMirror-selected {
	background: #ccc !important;
	color: HighlightText !important;
}
.CodeMirror-focused span.CodeMirror-selected {
	background: Highlight !important;
}

.CodeMirror-matchingbracket {color: #0f0 !important;}
.CodeMirror-nonmatchingbracket {color: #f22 !important;}

span.asm-comment {color: green;}
span.asm-symbol {color: #C0C;}
span.asm-data {color: #D16117;}
span.asm-address {color: #C00;}
span.asm-operation {color: #00C;}
span.asm-directive {color: #777;}
span.asm-operand {color: blue;}
span.asm-text {color: black;}
span.asm-string {color: red;}
