body
{
	font-size: 12pt;
	font-family: Arial, sans-serif;
}

.fl { float:left;  }
.fr { float:right; }








/* TYPE */

h1 { font-size: 50pt; }
h2 { font-size: 40pt; }
h3 { font-size: 30pt; }
h4 { font-size: 20pt; }
h5 { font-size: 16pt; }
h6 { font-size: 12pt; }

cite { font-size: 9pt; }
pre, .mono { font-family: monospace; }

h6 span
{
	font-size: 10pt;
	padding-left:1em;
}

p
{
	font-size: 10pt;
	padding-bottom: 1em;
	line-height: 1.1em;
}







/* COLOR */

.bk-red { background-color:rgb(176,0,46); }
.red,   {            color:rgb(176,0,46); }

/* the "exe" class, denoting the currently running line */
pre.exe      { background-color:rgb(176,0,46) !important; }
pre.exe span { background-color:rgb(176,0,46) !important; }

.div { border-top:1px solid rgb(130,0,30); }
.dim, h6 span, p, a { color:rgb(80,0,20); }
a:hover             { color:rgb(50, 0,0 ); }

.scale
{
	background: #ffff8c; /* Old browsers */
	background: -moz-linear-gradient(left,  #ffff8c 0%, #ffff4c 25%, #ff9123 50%, #ff0000 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffff8c), color-stop(25%,#ffff4c), color-stop(50%,#ff9123), color-stop(100%,#ff0000)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  #ffff8c 0%,#ffff4c 25%,#ff9123 50%,#ff0000 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  #ffff8c 0%,#ffff4c 25%,#ff9123 50%,#ff0000 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  #ffff8c 0%,#ffff4c 25%,#ff9123 50%,#ff0000 100%); /* IE10+ */
	background: linear-gradient(to right,  #ffff8c 0%,#ffff4c 25%,#ff9123 50%,#ff0000 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffff8c', endColorstr='#ff0000',GradientType=1 ); /* IE6-9 */
}









section
{
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;         /* Opera/IE 8+ */
}


/*
	the four main panels
*/

#main
{
	width:30%;
	height:100%;
	position: fixed;
	left:0px;
	color:white;
	z-index:1;
}

#entry
{
	width:60%;
	height:100%;
	position: fixed;
	left:30%;
	background-color: rgb(245,245,245);
	padding:20px;
}

#tiny
{
	width:10%;
	height:100%;
	position: fixed;
	right:0px;
	background-color: white;
	border-left:1px solid rgb(215,215,215);
	z-index:1;

	/* disable text selection */
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    cursor:default;
}

#code
{
	width:60%;
	overflow: hidden;
	position: relative;
	left:30%;
	display: none;
}










/*
	the main bar
*/

header
{
	text-align: center;
	padding-top:20px;
	padding-bottom:40px;
}

header * { display: inline; }
header cite { display:block; }


#tools
{
	display:none;
	padding: 0px 20px;
}
#tools > *
{
	margin:10px 0px;
	overflow:hidden;
}
#tools .div
{
	margin:20px 0px;
}


/* align the command bar */
#run { margin-bottom:20px; }
#run input  { width:100%;  }
#run button { float:right; }
#run span
{
	display:block;
	overflow:hidden;
	padding-right:10px;
}


/* align the progress bar */
#progress
{
	-webkit-transition:opacity 0.2s;
    transition:opacity 0.2s;
}
#progress button { float:right; }
#progress .container { width:100%; }
#progress span
{
	display:block;
	overflow:hidden;
	padding-right:4px;
}



#progress .container *
{
	background-color: white;
}

#progress .container .top
{
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	width:100%;
	height:6px;
}

#progress .container .value
{
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	height:16px;
	width:0%;
}


#scale canvas { margin-top:10px; }
#scale canvas, #scale .axis { display:block; }
#scale .axis { overflow: hidden; }
#scale .axis * { padding:3px; }









/*
	the entry bar
*/

#entry > *
{
	overflow: hidden;
	margin-bottom: 20px;
}

#entry textarea
{
	display: block;
	width:100%;
	padding:0px;
	margin-top:20px;
	resize:none;
}

#entry #error { display:none; }

#entry #libs
{
	border-top:1px solid rgb(215,215,215);
	padding-top: 20px;
}

#entry #libs h5 { margin-bottom: 20px; }
#entry #libs button
{
	margin-bottom: 5px;
	vertical-align: top;
}








/*
	the code display
*/

pre
{
	font-size: 11px;
	width:100%;
	height: 11px; /* empty lines still consume height */
	line-height: 11px;
	background-color: white;

	/*
	-webkit-transition:background-color 0.1s;
	transition:background-color 0.1s;
	*/
}

pre > span
{
	display: inline-block;
	height: inherit;
	line-height: inherit;
	width:2.5em;
	padding-right:5px;
	margin-right: 5px;
	text-align: right;
	font-family: sans-serif;
	color:rgb(128,128,128);
	background-color: rgb(230,230,230);
}


#tiny #scroll
{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	overflow: hidden; /* needed for scrolling to work */
}

#tiny pre
{
	font-size:1px;
	height:1px;
	line-height:1px;
}

#tiny #frame
{
	display:none; /* initially */
	position: absolute;
	top:0px;
	left:0px;
	width:100%;
	height:80px;
	background-color: black;
	opacity: 0.15;
}








/*
	Misc
*/

button
{
	color:white;
	background-color: rgb(176,0,46);
	border:none;
	border-radius: 2px;
	padding:2px 10px 2px 10px;
	cursor: pointer;
}

button.big
{
	width:10em;
}

button:hover { background-color: rgb(220,0,40); }
button:active { padding:3px 9px 1px 11px; }

#main button
{
	color:black;
	background-color: white;
}