/* GENERAL LAYOUT, WIDTHS, HEIGHTS, MARGINS */

*
{
	margin: 0;
	padding: 0;
}

html, body
{
	height: 100%;
	text-align: center;
}

iframe
{
    background-color: transparent;
    border: 0px none transparent;
    padding: 0px;
    overflow: hidden;
}

#wrapper, #footer
{
	width: 800px;
}


#wrapper
{
	position: relative;
	min-height: 100%;
	margin: auto;
	text-align: left;
}

* html #wrapper
{
	height: 100%;
}

#top, #top h1 a
{
	height: 100px;
}

#top
{
	position: relative;
}

#top h1 a, #menu
{
	width: 230px;
}

#top h1 a
{
	position: absolute;
	top: 0;
	left: 0;
}

/* make room for the footer */
#content { padding: 0 0 50px 0; }

#main
{
	display: inline;
	float: right;
	width: 500px;
	margin-right: 35px;
}

#menu
{
	display: inline;
	float: left;
}

#footer
{
	position: relative;
	margin: -2.5em auto auto auto;
	height: 2.5em;
}

/* UTILITY CLASSES */


.clearer
{
	clear: both;
	display: block;
	height: 1px;
	margin-bottom: -1px;
	font-size: 1px;
	line-height: 1px;
}


/*********** FONTS, COLORS, ETC ***********/

body
{
	color: #333;
	font-family: 'Courier New', monospace;
	font-size: 11px;
	background-color: #ccc;
	background-image: url(../gfx/bg_ridge.gif);
	background-repeat: repeat-y;
	background-position: center top;
}

#wrapper
{
	background-color: #FFF;
	background-image: url(../gfx/menu.png);
	background-repeat: repeat-y;
	background-position: -19px 0;
}


/* TOP */

#top
{
	background-image: url(/logo/ShowcaseLogo.svg);
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	text-indent: -10000px;
	border-bottom: 2px solid #000;
}

#top h1 a
{
	text-indent: -100000px;
	background-repeat: no-repeat;
	background-position: 0 bottom;
}
#top a span
{
	position: absolute;
	bottom: 10px;
	left: 0;
}
/* MAIN */

#main
{
	background-color: #FFF;
	font-size:1.3em;
}


/* MENU */
#menu
{
	margin-left: 0;
	margin-top: 30px;
	color: #fff;
	background-color: #0010bb;
}

#menu ul a, #menu ul span
{
	font-family: Verdana, sans-serif;
	font-weight: bold;
	font-size: 1.1em;
	list-style-type: none;
}
#menu ul ul ul
{
	margin-top: 0px;
	font-size: 1em;
}
#menu ul ul ul ul{ background-color: #FFF; }
#menu li
{
	display: inline;
}
#menu ul a, #menu ul span.active
{
	text-decoration: none;
	line-height: 2.3em;
	height: 30px;
	display: block;
	color: #fff;
	margin-top: -2px;
	position: relative;
	padding-left: 20px;
/*
	background-image: url(../gfx/main.gif);
*/
	background-color: #0010bb;
	background-repeat: no-repeat;
	background-position: right top;
	/*overflow: hidden; IE 5 collapses menu items completely */
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
}
#menu ul ul ul a, #menu ul ul ul span.active
{
/*
	background-image: url(../gfx/sub.gif);
*/
	background-color: #4210bb;
	padding-left: 38px;
}
#menu ul ul ul ul a, #menu ul ul ul ul span.active
{
/*
	background-image: url(../gfx/subsub.gif);
*/
	background-color: #6f75b6;
	padding-left: 56px;
}
#menu ul ul ul ul ul a, #menu ul ul ul ul ul span.active
{
	/*
	background-image: url(../gfx/subsub.gif);
*/
	background-color: #99F;
	padding-left: 74px;
}
#menu span.active, #menu ul span.active, #menu ul ul span.active, #menu ul ul ul span.active, #menu ul ul ul ul span.active
{
	background-color: #fff;
	color: #0010bb;
	border-right: 0;
}
#menu a:hover
{
	background-color: #FFF;
	color: #0010bb;
}

#menu ul span.parent, #menu ul span.parent_open
{
	width:7px;
	height:7px;
	top:12px;
	right:10px;
	position:absolute;
	text-indent: -100000px;
}

#menu ul ul span.parent
{
	background: url(../gfx/menu_arrow_inactive.gif) no-repeat 2px 0px;
}

#menu ul ul span.parent_open
{
	background: url(../gfx/menu_arrow_active.gif) no-repeat 0px 0px;
}

/************* SEARCH BOX ****************/

#search_form
{
	position: absolute;
	top: 102px;
	left: 0px;
	padding: 0px;
	margin: 0px;
	width: 228px;
	height: 28px;
	background: #fff;
}
#search_form input.text
{
	font-size: .9em;
	margin: 4px 0 0 20px;
	width: 130px;
}
#search_form input
{
	font-size: .9em;
	margin: 4px 0 0 10px;
}

/* FOOTER */

#footer
{
	background-color: #0010bb;
	background-image: url(../gfx/footer.png);
	color: #fff;
	line-height: 2.5em;
	text-align: right;
}
#footer .copyright
{
	float: left;
	margin-left: 20px;
}
#footer a
{
	color: #FFF;
	text-decoration: none;
}

span.to_top
{
	padding-right: 16px;
}

/* HIDE */

#tab_nav, .html_validator, .css_validator, .last_modified, #menu h2
{
	display: none;
}

/* MAIN TEXT STYLING */

#main h1, #main h2, #main h3, #main h4, #main h5, #main h6
{
	clear: both;
	margin-bottom: .6em;
}

#main p, #main ul, #main ol, #main dl, #main blockquote
{
	margin-bottom: 1em;
	line-height: 1.5em;
}
#main blockquote p
{
	margin: 0px;
}

#main blockquote
{
	background:#ddd;
	padding: 15px;
}
#main h1
{
	margin-top: 10px;
}

#main h2
{
	font-size: 1.5em;
	color: #003;
}
#main h3
{
	font-size:1.2em;
}

#main dt
{
	font-weight: bold;
}
#main dd { margin-left: 10px; }
#main img.right { margin: 0px 0px 10px 10px; }
#main img.left { margin: 0px 10px 10px 0px; }
#main .code
{
	font-family: Courier, monospace;
	font-size: 16px;
	background: #ddd;
	padding: 10px;
}

/* pretty tables */
table
{
	width:100%;
	border-collapse: collapse;
}
td, th
{
	border: #ccc 1px solid;
	padding: 2px;
}
th
{
	background: #ddd;
}

/* pretty lists */
#main ul, #main ol
{
	margin-left:1.3em;
	padding-left: 0;
}
#main li
{
	margin: 0;
	padding: 0;
}
#main ol ol
{
	list-style-type: lower-alpha;
}
#main ol ol ol
{
	list-style-type: upper-roman;
}

#main acronym
{
	border-bottom: #F30;
	border-width: 0 0 1px 0;
	border-style: none none dotted none;
}

/* Hilite */
.hilite
{
	background: #ff3;
}

/* Flash plugins */
object
{
	width: 480px;
}

object.yt
{
	height: 320px;
}

object.mp3
{
	height: 20px;
}

/************* RULES FOR FORM ****************/


#main form.gen_form p
{
	margin-bottom: 2px;
	text-align: right;
	padding: 0;
	margin: 2px;
	float: left;
	width: 100%;
}
form.gen_form input, form.gen_form textarea, form.gen_form select
{
	float: left;
}
form.gen_form input.text, form.gen_form textarea
{
	width: 240px;
	background: #f2f2f2;
	vertical-align: text-top;

}
form.gen_form textarea
{
	height: 10em;
}
form.gen_form #submit
{
	width: auto;
}

form.gen_form  .fail
{
	background: #f99;
}
#main .gen_form span
{
	width: 150px;
	float: left;
	margin-right:10px;
	display: block;
	clear: left;
	height: 1.5em;
}

/************* RULES FOR 2-COLUMN ****************/

#main .two_col_left
{
	width: 49%;
	float:left;
}

#main .two_col_right
{
	width: 49%;
	float: right;
}

/************* RULES FOR COMMENT ****************/

div.comment_box
{
	background: #ddddee;
	margin-bottom: 4px;
	padding: 10px;
	overflow: hidden;
}

#comment_form label {display: block; float: left; width: 100%}
#comment_form label{ background: #ddddee; margin: 1px;}
#comment_form input, #comment_form select, #comment_form textarea{float: right; clear: right;}
#comment_form input.text, #comment_form textarea{width: 240px; vertical-align: text-top;}
#comment_form label:hover{ background: #ddd;}
#comment_form span{ float: left;}

/************* RULES FOR FEED ****************/

#main .tbb_feed
{
	padding-left: 30px;
	background-image: url(../gfx/feedicon.gif);
	background-repeat: no-repeat;
	background-position: left center;
}

/*alert*/
.alert
{
	display: block;
	border: 1px #f00 solid;
	background: #fdd url(/assets/gfx/closeIcon.gif) no-repeat right top;
	padding: 8px;
	color: #f00;
	text-align: center;
	font: normal 12px arial, sans-serif;
}

.alert .button
{
	display: inline-block;
	padding: 4px;
	margin-left: 4px;
	border: 1px solid #f33;
	background: #d99;
}

/************* RULES FOR DOWNLOADS ****************/

#main a.icon
{
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 20px;
	padding-top: .1em;
	padding-bottom: .1em;
}

/*Prevent large images from sticking out*/
#main img{
	max-width: 100%;
	height: auto;
}

/************* YOUTUBE ****************/

.video-container iframe, .video-container object, .video-container embed
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	clear: both;
}
